bitwarden-desktop/src/entry.ts

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

36 lines
992 B
TypeScript
Raw Normal View History

2020-12-29 20:53:29 +01:00
import { NativeMessagingProxy } from "./proxy/native-messaging-proxy";
2020-12-29 21:01:47 +01:00
// We need to import the other dependencies using `require` since `import` will
2020-12-29 20:53:29 +01:00
// generate `Error: Cannot find module 'electron'`. The cause of this error is
// due to native messaging setting the ELECTRON_RUN_AS_NODE env flag on windows
// which removes the electron module. This flag is needed for stdin/out to work
// properly on Windows.
if (
process.argv.some((arg) => arg.indexOf("chrome-extension://") !== -1 || arg.indexOf("{") !== -1)
) {
if (process.platform === "darwin") {
2022-02-24 20:50:19 +01:00
// eslint-disable-next-line
2020-12-29 20:53:29 +01:00
const app = require("electron").app;
2021-02-03 19:21:22 +01:00
app.on("ready", () => {
2020-12-29 20:53:29 +01:00
app.dock.hide();
});
2021-12-20 15:47:17 +01:00
}
2020-12-29 20:53:29 +01:00
2021-02-03 19:21:22 +01:00
process.stdout.on("error", (e) => {
2020-12-29 20:53:29 +01:00
if (e.code === "EPIPE") {
process.exit(0);
2021-12-20 15:47:17 +01:00
}
});
2020-12-29 20:53:29 +01:00
const proxy = new NativeMessagingProxy();
proxy.run();
} else {
2022-02-24 20:50:19 +01:00
// eslint-disable-next-line
2020-12-29 20:53:29 +01:00
const Main = require("./main").Main;
const main = new Main();
main.bootstrap();
}