@mongodb-js/compass-electron-menu 0.1.6 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -3,24 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.RendererDefinedMenuState = void 0;
|
|
4
4
|
const types_1 = require("./types");
|
|
5
5
|
class RendererDefinedMenuState {
|
|
6
|
+
roleListeners = [];
|
|
7
|
+
additionalMenus = [];
|
|
8
|
+
ipcMain;
|
|
6
9
|
constructor(ipcMain) {
|
|
7
|
-
this.roleListeners = [];
|
|
8
|
-
this.additionalMenus = [];
|
|
9
|
-
this.modifyApplicationMenuHandler = ({ id, menu, role, }) => {
|
|
10
|
-
if (menu) {
|
|
11
|
-
this.additionalMenus.push({ id, menu });
|
|
12
|
-
}
|
|
13
|
-
else {
|
|
14
|
-
this.additionalMenus = this.additionalMenus.filter((m) => m.id !== id);
|
|
15
|
-
}
|
|
16
|
-
if (role) {
|
|
17
|
-
this.roleListeners.push([role, id]);
|
|
18
|
-
}
|
|
19
|
-
else {
|
|
20
|
-
this.roleListeners = this.roleListeners.filter(([, listenerId]) => listenerId !== id);
|
|
21
|
-
}
|
|
22
|
-
return this;
|
|
23
|
-
};
|
|
24
10
|
if (!ipcMain) {
|
|
25
11
|
throw new Error('ipcMain is required for RendererDefinedMenuState');
|
|
26
12
|
}
|
|
@@ -58,7 +44,22 @@ class RendererDefinedMenuState {
|
|
|
58
44
|
});
|
|
59
45
|
});
|
|
60
46
|
}
|
|
47
|
+
modifyApplicationMenuHandler = ({ id, menu, role, }) => {
|
|
48
|
+
if (menu) {
|
|
49
|
+
this.additionalMenus.push({ id, menu });
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
this.additionalMenus = this.additionalMenus.filter((m) => m.id !== id);
|
|
53
|
+
}
|
|
54
|
+
if (role) {
|
|
55
|
+
this.roleListeners.push([role, id]);
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
this.roleListeners = this.roleListeners.filter(([, listenerId]) => listenerId !== id);
|
|
59
|
+
}
|
|
60
|
+
return this;
|
|
61
|
+
};
|
|
62
|
+
static modifyApplicationMenuIpcEvent = 'application-menu:modify-application-menu';
|
|
61
63
|
}
|
|
62
64
|
exports.RendererDefinedMenuState = RendererDefinedMenuState;
|
|
63
|
-
RendererDefinedMenuState.modifyApplicationMenuIpcEvent = 'application-menu:modify-application-menu';
|
|
64
65
|
//# sourceMappingURL=ipc-provider-main.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ipc-provider-main.js","sourceRoot":"","sources":["../src/ipc-provider-main.ts"],"names":[],"mappings":";;;AACA,mCAKiB;AASjB,MAAa,wBAAwB;
|
|
1
|
+
{"version":3,"file":"ipc-provider-main.js","sourceRoot":"","sources":["../src/ipc-provider-main.ts"],"names":[],"mappings":";;;AACA,mCAKiB;AASjB,MAAa,wBAAwB;IAC3B,aAAa,GAAmD,EAAE,CAAC;IACnE,eAAe,GACrB,EAAE,CAAC;IAEG,OAAO,CAAgB;IAE/B,YAAY,OAAkC;QAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACtE,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,KAAK;QACH,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAC7B,CAAC,EAAE,IAAI,EAAE,EAAkB,EAAE,CAC3B,IAAA,wBAAgB,EAAC,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE;YAC9B,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;YACtB,IAAI,CAAC,EAAE;gBAAE,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;YAC9C,OAAO;gBACL,GAAG,IAAI;gBACP,KAAK,EAAE,GAAG,EAAE,CACV,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,iCAAiC,EAAE;oBAC/D,EAAE;iBACH,CAAC;aACL,CAAC;QACJ,CAAC,CAAC,CACL,CAAC;IACJ,CAAC;IAED,cAAc,CAAC,KAAuB;QACpC,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAkB,EAAE;YACxC,OAAO,IAAA,wBAAgB,EAAC,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE;gBACrC,IAAI,CAAC,IAAI,CAAC,IAAI;oBAAE,OAAO,IAAI,CAAC;gBAE5B,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CACtC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAC/B,CAAC;gBACF,IAAI,CAAC,QAAQ;oBAAE,OAAO,IAAI,CAAC;gBAC3B,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACvB,OAAO;oBACL,GAAG,IAAI;oBACP,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,GAAG,EAAE,CACV,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,iCAAiC,EAAE;wBAC/D,EAAE;qBACH,CAAC;iBACL,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,4BAA4B,GAAG,CAAC,EAC9B,EAAE,EACF,IAAI,EACJ,IAAI,GACwB,EAAQ,EAAE;QACtC,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAC5C,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,UAAU,KAAK,EAAE,CACtC,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,MAAM,CAAU,6BAA6B,GAC3C,0CAA6E,CAAC;;AA1ElF,4DA2EC"}
|
|
@@ -20,42 +20,9 @@ function translateCallsToHandlerIds(menu) {
|
|
|
20
20
|
return [transformedMenu, handlerIds];
|
|
21
21
|
}
|
|
22
22
|
class ApplicationMenu {
|
|
23
|
+
handlers = new Map();
|
|
24
|
+
ipcRenderer;
|
|
23
25
|
constructor(ipcRenderer) {
|
|
24
|
-
this.handlers = new Map();
|
|
25
|
-
this.showApplicationMenu = (menu) => {
|
|
26
|
-
const id = (0, util_1.uuid)();
|
|
27
|
-
const [translatedMenu, handlers] = translateCallsToHandlerIds(menu);
|
|
28
|
-
for (const [handlerId, handler] of handlers.entries()) {
|
|
29
|
-
this.handlers.set(handlerId, handler);
|
|
30
|
-
}
|
|
31
|
-
void this.ipcRenderer?.call('application-menu:modify-application-menu', {
|
|
32
|
-
id,
|
|
33
|
-
menu: translatedMenu,
|
|
34
|
-
});
|
|
35
|
-
return () => {
|
|
36
|
-
void this.ipcRenderer?.call('application-menu:modify-application-menu', {
|
|
37
|
-
id,
|
|
38
|
-
menu: undefined,
|
|
39
|
-
});
|
|
40
|
-
for (const handlerId of handlers.keys()) {
|
|
41
|
-
this.handlers.delete(handlerId);
|
|
42
|
-
}
|
|
43
|
-
};
|
|
44
|
-
};
|
|
45
|
-
this.handleMenuRole = (role, handler) => {
|
|
46
|
-
const id = (0, util_1.uuid)();
|
|
47
|
-
this.handlers.set(id, handler);
|
|
48
|
-
void this.ipcRenderer?.call('application-menu:modify-application-menu', {
|
|
49
|
-
id,
|
|
50
|
-
role,
|
|
51
|
-
});
|
|
52
|
-
return () => {
|
|
53
|
-
void this.ipcRenderer?.call('application-menu:modify-application-menu', {
|
|
54
|
-
id,
|
|
55
|
-
});
|
|
56
|
-
this.handlers.delete(id);
|
|
57
|
-
};
|
|
58
|
-
};
|
|
59
26
|
this.ipcRenderer = ipcRenderer;
|
|
60
27
|
this.ipcRenderer?.on('application-menu:invoke-handler', (event, { id }) => {
|
|
61
28
|
const handler = this.handlers.get(id);
|
|
@@ -64,6 +31,40 @@ class ApplicationMenu {
|
|
|
64
31
|
handler?.();
|
|
65
32
|
});
|
|
66
33
|
}
|
|
34
|
+
showApplicationMenu = (menu) => {
|
|
35
|
+
const id = (0, util_1.uuid)();
|
|
36
|
+
const [translatedMenu, handlers] = translateCallsToHandlerIds(menu);
|
|
37
|
+
for (const [handlerId, handler] of handlers.entries()) {
|
|
38
|
+
this.handlers.set(handlerId, handler);
|
|
39
|
+
}
|
|
40
|
+
void this.ipcRenderer?.call('application-menu:modify-application-menu', {
|
|
41
|
+
id,
|
|
42
|
+
menu: translatedMenu,
|
|
43
|
+
});
|
|
44
|
+
return () => {
|
|
45
|
+
void this.ipcRenderer?.call('application-menu:modify-application-menu', {
|
|
46
|
+
id,
|
|
47
|
+
menu: undefined,
|
|
48
|
+
});
|
|
49
|
+
for (const handlerId of handlers.keys()) {
|
|
50
|
+
this.handlers.delete(handlerId);
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
};
|
|
54
|
+
handleMenuRole = (role, handler) => {
|
|
55
|
+
const id = (0, util_1.uuid)();
|
|
56
|
+
this.handlers.set(id, handler);
|
|
57
|
+
void this.ipcRenderer?.call('application-menu:modify-application-menu', {
|
|
58
|
+
id,
|
|
59
|
+
role,
|
|
60
|
+
});
|
|
61
|
+
return () => {
|
|
62
|
+
void this.ipcRenderer?.call('application-menu:modify-application-menu', {
|
|
63
|
+
id,
|
|
64
|
+
});
|
|
65
|
+
this.handlers.delete(id);
|
|
66
|
+
};
|
|
67
|
+
};
|
|
67
68
|
}
|
|
68
69
|
exports.ApplicationMenu = ApplicationMenu;
|
|
69
70
|
//# sourceMappingURL=ipc-provider-renderer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ipc-provider-renderer.js","sourceRoot":"","sources":["../src/ipc-provider-renderer.ts"],"names":[],"mappings":";;;;;;AAMA,mCAA2C;AAC3C,iCAA8B;AAC9B,kDAAgC;AAChC,MAAM,KAAK,GAAG,IAAA,eAAW,EAAC,6CAA6C,CAAC,CAAC;AAYzE,SAAS,0BAA0B,CACjC,IAAoB;IAEpB,MAAM,UAAU,GAAG,IAAI,GAAG,EAAsB,CAAC;IACjD,MAAM,eAAe,GAAG,IAAA,wBAAgB,EAAC,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE;QACtD,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QACtD,MAAM,EAAE,GAAG,IAAA,WAAI,GAAE,CAAC;QAClB,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAChC,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;AACvC,CAAC;AAED,MAAa,eAAe;
|
|
1
|
+
{"version":3,"file":"ipc-provider-renderer.js","sourceRoot":"","sources":["../src/ipc-provider-renderer.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"email": "compass@mongodb.com"
|
|
14
14
|
},
|
|
15
15
|
"homepage": "https://github.com/mongodb-js/compass",
|
|
16
|
-
"version": "0.
|
|
16
|
+
"version": "0.2.0",
|
|
17
17
|
"repository": {
|
|
18
18
|
"type": "git",
|
|
19
19
|
"url": "https://github.com/mongodb-js/compass.git"
|
|
@@ -53,17 +53,17 @@
|
|
|
53
53
|
"reformat": "npm run eslint . -- --fix && npm run prettier -- --write ."
|
|
54
54
|
},
|
|
55
55
|
"dependencies": {
|
|
56
|
-
"bson": "^
|
|
56
|
+
"bson": "^7.2.0",
|
|
57
57
|
"debug": "^4.3.4",
|
|
58
58
|
"electron": "^37.10.3",
|
|
59
59
|
"react": "^17.0.2"
|
|
60
60
|
},
|
|
61
61
|
"devDependencies": {
|
|
62
|
-
"@mongodb-js/eslint-config-compass": "^1.4.
|
|
62
|
+
"@mongodb-js/eslint-config-compass": "^1.4.17",
|
|
63
63
|
"@mongodb-js/mocha-config-compass": "^1.7.5",
|
|
64
64
|
"@mongodb-js/prettier-config-compass": "^1.2.9",
|
|
65
|
-
"@mongodb-js/testing-library-compass": "^1.
|
|
66
|
-
"@mongodb-js/tsconfig-compass": "^1.2.
|
|
65
|
+
"@mongodb-js/testing-library-compass": "^1.5.0",
|
|
66
|
+
"@mongodb-js/tsconfig-compass": "^1.2.14",
|
|
67
67
|
"@types/chai": "^4.2.21",
|
|
68
68
|
"@types/chai-dom": "^0.0.10",
|
|
69
69
|
"@types/mocha": "^9.0.0",
|
|
@@ -78,5 +78,5 @@
|
|
|
78
78
|
"sinon": "^17.0.1",
|
|
79
79
|
"typescript": "^5.9.3"
|
|
80
80
|
},
|
|
81
|
-
"gitHead": "
|
|
81
|
+
"gitHead": "3473b2aeed26412f25423caf7f1f7ca848665e34"
|
|
82
82
|
}
|