@jsenv/plugin-toolbar 1.4.11 → 1.4.13
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.
|
@@ -8,6 +8,23 @@ const injectToolbar = async ({
|
|
|
8
8
|
animationsEnabled,
|
|
9
9
|
notificationsEnabled
|
|
10
10
|
}) => {
|
|
11
|
+
let iframe;
|
|
12
|
+
let resolveToolbarReadyPromise;
|
|
13
|
+
const toolbarReadyPromise = new Promise(resolve => {
|
|
14
|
+
resolveToolbarReadyPromise = resolve;
|
|
15
|
+
});
|
|
16
|
+
const openToolbar = async () => {
|
|
17
|
+
await toolbarReadyPromise;
|
|
18
|
+
sendCommandToToolbar(iframe, "openToolbar");
|
|
19
|
+
};
|
|
20
|
+
const closeToolbar = async () => {
|
|
21
|
+
await toolbarReadyPromise;
|
|
22
|
+
sendCommandToToolbar(iframe, "closeToolbar");
|
|
23
|
+
};
|
|
24
|
+
window.__jsenv_toolbar__ = {
|
|
25
|
+
open: openToolbar,
|
|
26
|
+
close: closeToolbar
|
|
27
|
+
};
|
|
11
28
|
if (document.readyState !== "complete") {
|
|
12
29
|
await new Promise(resolve => {
|
|
13
30
|
window.addEventListener("load", resolve);
|
|
@@ -23,7 +40,7 @@ const injectToolbar = async ({
|
|
|
23
40
|
}
|
|
24
41
|
});
|
|
25
42
|
const jsenvToolbar = document.createElement("jsenv-toolbar");
|
|
26
|
-
|
|
43
|
+
iframe = createIframeNode();
|
|
27
44
|
const toolbarTriggerNode = createToolbarTriggerNode();
|
|
28
45
|
jsenvToolbar.appendChild(iframe);
|
|
29
46
|
jsenvToolbar.appendChild(toolbarTriggerNode);
|
|
@@ -65,7 +82,7 @@ const injectToolbar = async ({
|
|
|
65
82
|
collapseToolbarTrigger();
|
|
66
83
|
};
|
|
67
84
|
toolbarTriggerNode.onclick = () => {
|
|
68
|
-
|
|
85
|
+
openToolbar();
|
|
69
86
|
};
|
|
70
87
|
const showToolbarTrigger = () => {
|
|
71
88
|
toolbarTriggerNode.style.display = "block";
|
|
@@ -109,6 +126,7 @@ const injectToolbar = async ({
|
|
|
109
126
|
});
|
|
110
127
|
});
|
|
111
128
|
await iframeLoadedPromise;
|
|
129
|
+
resolveToolbarReadyPromise();
|
|
112
130
|
iframe.removeAttribute("tabindex");
|
|
113
131
|
return iframe;
|
|
114
132
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jsenv/plugin-toolbar",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.13",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"/src/"
|
|
27
27
|
],
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@jsenv/ast": "6.2.
|
|
29
|
+
"@jsenv/ast": "6.2.13",
|
|
30
30
|
"@preact/signals": "1.3.0"
|
|
31
31
|
},
|
|
32
32
|
"scripts": {
|
|
@@ -9,6 +9,24 @@ export const injectToolbar = async ({
|
|
|
9
9
|
animationsEnabled,
|
|
10
10
|
notificationsEnabled,
|
|
11
11
|
}) => {
|
|
12
|
+
let iframe;
|
|
13
|
+
let resolveToolbarReadyPromise;
|
|
14
|
+
const toolbarReadyPromise = new Promise((resolve) => {
|
|
15
|
+
resolveToolbarReadyPromise = resolve;
|
|
16
|
+
});
|
|
17
|
+
const openToolbar = async () => {
|
|
18
|
+
await toolbarReadyPromise;
|
|
19
|
+
sendCommandToToolbar(iframe, "openToolbar");
|
|
20
|
+
};
|
|
21
|
+
const closeToolbar = async () => {
|
|
22
|
+
await toolbarReadyPromise;
|
|
23
|
+
sendCommandToToolbar(iframe, "closeToolbar");
|
|
24
|
+
};
|
|
25
|
+
window.__jsenv_toolbar__ = {
|
|
26
|
+
open: openToolbar,
|
|
27
|
+
close: closeToolbar,
|
|
28
|
+
};
|
|
29
|
+
|
|
12
30
|
if (document.readyState !== "complete") {
|
|
13
31
|
await new Promise((resolve) => {
|
|
14
32
|
window.addEventListener("load", resolve);
|
|
@@ -22,7 +40,7 @@ export const injectToolbar = async ({
|
|
|
22
40
|
}
|
|
23
41
|
});
|
|
24
42
|
const jsenvToolbar = document.createElement("jsenv-toolbar");
|
|
25
|
-
|
|
43
|
+
iframe = createIframeNode();
|
|
26
44
|
const toolbarTriggerNode = createToolbarTriggerNode();
|
|
27
45
|
jsenvToolbar.appendChild(iframe);
|
|
28
46
|
jsenvToolbar.appendChild(toolbarTriggerNode);
|
|
@@ -65,7 +83,7 @@ export const injectToolbar = async ({
|
|
|
65
83
|
collapseToolbarTrigger();
|
|
66
84
|
};
|
|
67
85
|
toolbarTriggerNode.onclick = () => {
|
|
68
|
-
|
|
86
|
+
openToolbar();
|
|
69
87
|
};
|
|
70
88
|
|
|
71
89
|
const showToolbarTrigger = () => {
|
|
@@ -118,6 +136,7 @@ export const injectToolbar = async ({
|
|
|
118
136
|
);
|
|
119
137
|
|
|
120
138
|
await iframeLoadedPromise;
|
|
139
|
+
resolveToolbarReadyPromise();
|
|
121
140
|
iframe.removeAttribute("tabindex");
|
|
122
141
|
|
|
123
142
|
return iframe;
|