osra 0.0.9 → 0.0.11
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.
- package/build/index.d.ts +1 -0
- package/build/index.js +169 -115
- package/build/utils.d.ts +4 -0
- package/build/webextension.d.ts +137 -0
- package/package.json +10 -6
- package/build/iterator.d.ts +0 -0
- package/build/promise.d.ts +0 -0
- package/build/pull.d.ts +0 -0
- package/build/send.d.ts +0 -0
- package/build/tsconfig.tsbuildinfo +0 -1
package/build/index.d.ts
CHANGED
|
@@ -2,3 +2,4 @@ import type { ApiMessageData, ApiResolverOptions, Resolvers, StructuredCloneTran
|
|
|
2
2
|
export type { ApiMessageData, ApiResolverOptions, Resolvers, StructuredCloneTransferableObject, StructuredCloneTransferableType, StructuredCloneObject, StructuredCloneType, Target, TransferableObject };
|
|
3
3
|
export * from './register';
|
|
4
4
|
export * from './call';
|
|
5
|
+
export * from './webextension';
|
package/build/index.js
CHANGED
|
@@ -1,127 +1,181 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
resolvers,
|
|
8
|
-
filter,
|
|
9
|
-
map,
|
|
10
|
-
key = MESSAGE_SOURCE_KEY
|
|
1
|
+
const g = "osra-message", l = ({
|
|
2
|
+
target: e,
|
|
3
|
+
resolvers: t,
|
|
4
|
+
filter: r,
|
|
5
|
+
map: n,
|
|
6
|
+
key: a = g
|
|
11
7
|
}) => {
|
|
12
|
-
const
|
|
13
|
-
if (!
|
|
8
|
+
const o = (s) => {
|
|
9
|
+
if (!s.data || typeof s.data != "object" || s.data?.source !== a || r && !r(s))
|
|
14
10
|
return;
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
const { type, data, port } = event.data;
|
|
20
|
-
const resolver = resolvers[type];
|
|
21
|
-
if (!resolver)
|
|
22
|
-
throw new Error(`Osra received a message of type "${String(type)}" but no resolver was found for type.`);
|
|
23
|
-
if (map)
|
|
24
|
-
resolver(...map(data, { event, type, port }));
|
|
25
|
-
else
|
|
26
|
-
resolver(data, { event, type, port });
|
|
11
|
+
const { type: c, data: i, port: d } = s.data, m = t[c];
|
|
12
|
+
if (!m)
|
|
13
|
+
throw new Error(`Osra received a message of type "${String(c)}" but no resolver was found for type.`);
|
|
14
|
+
n ? m(...n(i, { event: s, type: c, port: d })) : m(i, { event: s, type: c, port: d });
|
|
27
15
|
};
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
resolvers
|
|
16
|
+
return e.addEventListener("message", o), {
|
|
17
|
+
listener: o,
|
|
18
|
+
resolvers: t
|
|
32
19
|
};
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
const transferables = [];
|
|
40
|
-
const recurse = (value2) => isClonable(value2) ? void 0 : isTransferable(value2) ? transferables.push(value2) : Array.isArray(value2) ? value2.map(recurse) : value2 && typeof value2 === "object" ? Object.values(value2).map(recurse) : void 0;
|
|
41
|
-
recurse(value);
|
|
42
|
-
return transferables;
|
|
43
|
-
};
|
|
44
|
-
var PROXY_FUNCTION_PROPERTY = "__proxyFunctionPort__";
|
|
45
|
-
var makeProxyFunction = (func) => {
|
|
46
|
-
const { port1, port2 } = new MessageChannel();
|
|
47
|
-
port1.addEventListener("message", async (ev) => {
|
|
20
|
+
}, b = (e) => !!(globalThis.SharedArrayBuffer && e instanceof globalThis.SharedArrayBuffer), y = (e) => globalThis.ArrayBuffer && e instanceof globalThis.ArrayBuffer || globalThis.MessagePort && e instanceof globalThis.MessagePort || globalThis.ReadableStream && e instanceof globalThis.ReadableStream || globalThis.WritableStream && e instanceof globalThis.WritableStream || globalThis.TransformStream && e instanceof globalThis.TransformStream ? !0 : !!(globalThis.ImageBitmap && e instanceof globalThis.ImageBitmap), h = (e) => {
|
|
21
|
+
const t = [], r = (n) => b(n) ? void 0 : y(n) ? t.push(n) : Array.isArray(n) ? n.map(r) : n && typeof n == "object" ? Object.values(n).map(r) : void 0;
|
|
22
|
+
return r(e), t;
|
|
23
|
+
}, p = "__proxyFunctionPort__", M = "__proxyMessageChannelPort__", j = (e) => {
|
|
24
|
+
const { port1: t, port2: r } = new MessageChannel();
|
|
25
|
+
return t.addEventListener("message", async (n) => {
|
|
48
26
|
try {
|
|
49
|
-
const
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
} catch (err) {
|
|
54
|
-
port1.postMessage({ error: err });
|
|
27
|
+
const a = await e(...n.data), o = f(a), s = h(o);
|
|
28
|
+
t.postMessage({ result: o }, { transfer: s });
|
|
29
|
+
} catch (a) {
|
|
30
|
+
t.postMessage({ error: a });
|
|
55
31
|
}
|
|
56
|
-
});
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
32
|
+
}), t.start(), r;
|
|
33
|
+
}, f = (e) => b(e) || y(e) ? e : typeof e == "function" ? { [p]: j(e) } : Array.isArray(e) ? e.map(f) : e && typeof e == "object" ? Object.fromEntries(
|
|
34
|
+
Object.entries(e).map(([t, r]) => [
|
|
35
|
+
t,
|
|
36
|
+
f(r)
|
|
37
|
+
])
|
|
38
|
+
) : e, x = (e) => (...t) => new Promise((r, n) => {
|
|
39
|
+
const a = f(t), o = h(a), s = (c) => {
|
|
40
|
+
c.data.error ? n(c.data.error) : r(E(c.data.result)), e.removeEventListener("message", s);
|
|
41
|
+
};
|
|
42
|
+
e.addEventListener("message", s), e.start(), e.postMessage(a, { transfer: o });
|
|
43
|
+
}), E = (e) => b(e) || y(e) ? e : e && typeof e == "object" && e[p] ? x(e[p]) : Array.isArray(e) ? e.map(f) : e && typeof e == "object" ? Object.fromEntries(
|
|
44
|
+
Object.entries(e).map(([t, r]) => [
|
|
45
|
+
t,
|
|
46
|
+
E(r)
|
|
47
|
+
])
|
|
48
|
+
) : e, A = (e, { key: t = g } = { key: g }) => (r, n) => new Promise((a, o) => {
|
|
49
|
+
const { port1: s, port2: c } = new MessageChannel();
|
|
50
|
+
s.addEventListener(
|
|
51
|
+
"message",
|
|
52
|
+
({ data: m }) => {
|
|
53
|
+
if (m.error)
|
|
54
|
+
o(m.error);
|
|
55
|
+
else {
|
|
56
|
+
const L = E(m.result);
|
|
57
|
+
a(L);
|
|
58
|
+
}
|
|
59
|
+
s.close(), c.close();
|
|
60
|
+
},
|
|
61
|
+
{ once: !0 }
|
|
62
|
+
), s.start();
|
|
63
|
+
const i = f(n), d = h(i);
|
|
64
|
+
e.postMessage(
|
|
65
|
+
{
|
|
66
|
+
source: t,
|
|
67
|
+
type: r,
|
|
68
|
+
data: i,
|
|
69
|
+
port: c
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
targetOrigin: "*",
|
|
73
|
+
transfer: [c, ...d ?? []]
|
|
90
74
|
}
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
port1.start();
|
|
95
|
-
const proxiedData = proxyObjectFunctions(data);
|
|
96
|
-
const transferables = getTransferableObjects(proxiedData);
|
|
97
|
-
target.postMessage({
|
|
98
|
-
source: key,
|
|
99
|
-
type,
|
|
100
|
-
data: proxiedData,
|
|
101
|
-
port: port2
|
|
102
|
-
}, {
|
|
103
|
-
targetOrigin: "*",
|
|
104
|
-
transfer: [port2, ...transferables ?? []]
|
|
105
|
-
});
|
|
106
|
-
});
|
|
107
|
-
var makeCallListener = (func) => async (data, extra) => {
|
|
108
|
-
const { port } = extra;
|
|
109
|
-
const proxiedData = makeObjectProxiedFunctions(data);
|
|
75
|
+
);
|
|
76
|
+
}), _ = (e) => async (t, r) => {
|
|
77
|
+
const { port: n } = r, a = E(t);
|
|
110
78
|
try {
|
|
111
|
-
const
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
port.close();
|
|
116
|
-
return result;
|
|
117
|
-
} catch (error) {
|
|
118
|
-
port.postMessage({ error });
|
|
119
|
-
port.close();
|
|
120
|
-
throw error;
|
|
79
|
+
const o = await e(a, r), s = f(o), c = h(s);
|
|
80
|
+
return n.postMessage({ result: s }, { transfer: c }), n.close(), o;
|
|
81
|
+
} catch (o) {
|
|
82
|
+
throw n.postMessage({ error: o }), n.close(), o;
|
|
121
83
|
}
|
|
84
|
+
}, w = ({ key: e = g }) => {
|
|
85
|
+
const t = /* @__PURE__ */ new Map(), r = async (a) => t.get(a) ?? new Promise((o, s) => {
|
|
86
|
+
let c = !1;
|
|
87
|
+
setTimeout(() => {
|
|
88
|
+
c || s(new Error(`Osra getPort for "${a}" timed out`));
|
|
89
|
+
}, 1e3), chrome.runtime.onConnect.addListener((i) => {
|
|
90
|
+
i.name === `${e}:${a}` && (t.set(a, i), o(i), c = !0);
|
|
91
|
+
});
|
|
92
|
+
}), n = {
|
|
93
|
+
addPort: (a, o) => t.set(a, o),
|
|
94
|
+
proxyPort: (a) => {
|
|
95
|
+
const o = self.crypto.randomUUID(), s = chrome.runtime.connect({ name: `${e}:${o}` });
|
|
96
|
+
return t.set(o, s), s.onDisconnect.addListener(() => {
|
|
97
|
+
t.delete(o);
|
|
98
|
+
}), s.onMessage.addListener((c) => {
|
|
99
|
+
a.postMessage(c);
|
|
100
|
+
}), a.addEventListener("message", async (c) => {
|
|
101
|
+
s.postMessage(c.data);
|
|
102
|
+
}), a.addEventListener("close", () => {
|
|
103
|
+
s.disconnect();
|
|
104
|
+
}), {
|
|
105
|
+
[M]: o
|
|
106
|
+
};
|
|
107
|
+
},
|
|
108
|
+
proxiedPort: async ({ [M]: a }) => {
|
|
109
|
+
const { port1: o, port2: s } = new MessageChannel(), c = await r(a);
|
|
110
|
+
c.onMessage.addListener((d) => {
|
|
111
|
+
o.postMessage(d);
|
|
112
|
+
}), c.onDisconnect.addListener(() => {
|
|
113
|
+
o.close();
|
|
114
|
+
}), o.addEventListener("close", () => {
|
|
115
|
+
c.disconnect();
|
|
116
|
+
}), o.addEventListener("message", async (d) => {
|
|
117
|
+
c.postMessage(d.data);
|
|
118
|
+
}), o.start(), s.addEventListener("message", async (d) => {
|
|
119
|
+
c.postMessage(d.data);
|
|
120
|
+
}), s.start();
|
|
121
|
+
const i = O(n, s);
|
|
122
|
+
return i.uuid = a, i;
|
|
123
|
+
}
|
|
124
|
+
};
|
|
125
|
+
return n;
|
|
126
|
+
}, P = (e, t) => t instanceof MessagePort ? e.proxyPort(t) : b(t) || y(t) ? t : typeof t == "object" && p in t ? { [p]: e.proxyPort(t[p]) } : Array.isArray(t) ? t.map((r) => P(e, r)) : t && typeof t == "object" ? Object.fromEntries(
|
|
127
|
+
Object.entries(t).map(([r, n]) => [
|
|
128
|
+
r,
|
|
129
|
+
P(e, n)
|
|
130
|
+
])
|
|
131
|
+
) : t, T = async (e, t) => b(t) || y(t) ? t : typeof t == "object" && M in t ? await e.proxiedPort(t) : typeof t == "object" && p in t ? { [p]: await e.proxiedPort(t[p]) } : Array.isArray(t) ? await Promise.all(t.map((r) => T(e, r))) : t && typeof t == "object" ? Object.fromEntries(
|
|
132
|
+
await Promise.all(
|
|
133
|
+
Object.entries(t).map(async ([r, n]) => [
|
|
134
|
+
r,
|
|
135
|
+
await T(e, n)
|
|
136
|
+
])
|
|
137
|
+
)
|
|
138
|
+
) : t, O = (e, t) => {
|
|
139
|
+
const r = t.postMessage;
|
|
140
|
+
return t.postMessage = (n) => {
|
|
141
|
+
r.apply(t, [P(e, n)]);
|
|
142
|
+
}, t;
|
|
143
|
+
}, S = ({
|
|
144
|
+
target: e,
|
|
145
|
+
key: t = g
|
|
146
|
+
}) => {
|
|
147
|
+
const r = w({ key: t });
|
|
148
|
+
return {
|
|
149
|
+
...e,
|
|
150
|
+
postMessage: (n) => {
|
|
151
|
+
e.runtime.sendMessage(P(r, n));
|
|
152
|
+
}
|
|
153
|
+
};
|
|
154
|
+
}, C = ({
|
|
155
|
+
target: e,
|
|
156
|
+
key: t = g
|
|
157
|
+
}) => {
|
|
158
|
+
const r = w({ key: t });
|
|
159
|
+
return {
|
|
160
|
+
...e,
|
|
161
|
+
addEventListener: (n, a, o) => {
|
|
162
|
+
if (n !== "message")
|
|
163
|
+
return e.addEventListener(n, a, o);
|
|
164
|
+
chrome.runtime.onMessage.addListener((s, c, i) => {
|
|
165
|
+
T(r, s).then((d) => a({ data: d }));
|
|
166
|
+
}), chrome.runtime.onConnect.addListener((s) => {
|
|
167
|
+
s.name.startsWith(`${t}:`) && r.addPort(s.name.split(":")[1], s);
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
};
|
|
122
171
|
};
|
|
123
172
|
export {
|
|
124
|
-
call,
|
|
125
|
-
makeCallListener,
|
|
126
|
-
registerListener
|
|
173
|
+
A as call,
|
|
174
|
+
_ as makeCallListener,
|
|
175
|
+
l as registerListener,
|
|
176
|
+
T as replaceProxied,
|
|
177
|
+
P as replaceProxies,
|
|
178
|
+
S as wrapExtensionTarget,
|
|
179
|
+
C as wrapListenerExtensionTarget,
|
|
180
|
+
O as wrapPort
|
|
127
181
|
};
|
package/build/utils.d.ts
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import { TransferableObject } from './types';
|
|
2
|
+
export declare const isClonable: (value: any) => boolean;
|
|
3
|
+
export declare const isTransferable: (value: any) => boolean;
|
|
2
4
|
export declare const getTransferableObjects: (value: any) => TransferableObject[];
|
|
5
|
+
export declare const PROXY_FUNCTION_PROPERTY = "__proxyFunctionPort__";
|
|
6
|
+
export declare const PROXY_MESSAGE_CHANNEL_PROPERTY = "__proxyMessageChannelPort__";
|
|
3
7
|
export declare const makeProxyFunction: (func: any) => MessagePort;
|
|
4
8
|
export declare const proxyObjectFunctions: (value: any) => any;
|
|
5
9
|
export declare const makeProxiedFunction: (port: MessagePort) => (...args: any[]) => Promise<unknown>;
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import type browser from 'webextension-polyfill';
|
|
2
|
+
import { PROXY_MESSAGE_CHANNEL_PROPERTY } from './utils';
|
|
3
|
+
type PortManager = ReturnType<typeof makePortManager>;
|
|
4
|
+
declare const makePortManager: ({ key }: {
|
|
5
|
+
key?: string | undefined;
|
|
6
|
+
}) => {
|
|
7
|
+
addPort: (name: string, port: browser.Runtime.Port) => Map<string, browser.Runtime.Port>;
|
|
8
|
+
proxyPort: (messagePort: MessagePort) => {
|
|
9
|
+
__proxyMessageChannelPort__: string;
|
|
10
|
+
};
|
|
11
|
+
proxiedPort: ({ [PROXY_MESSAGE_CHANNEL_PROPERTY]: uuid }: {
|
|
12
|
+
[PROXY_MESSAGE_CHANNEL_PROPERTY]: string;
|
|
13
|
+
}) => Promise<MessagePort>;
|
|
14
|
+
};
|
|
15
|
+
export declare const replaceProxies: (portManager: PortManager, value: any) => any;
|
|
16
|
+
export declare const replaceProxied: (portManager: PortManager, value: any) => any;
|
|
17
|
+
export declare const wrapPort: (portManager: any, port: MessagePort) => MessagePort;
|
|
18
|
+
export declare const wrapExtensionTarget: ({ target, key }: {
|
|
19
|
+
target: browser.Browser;
|
|
20
|
+
key?: string | undefined;
|
|
21
|
+
}) => {
|
|
22
|
+
postMessage: (message: any) => void;
|
|
23
|
+
activityLog: browser.ActivityLog.Static;
|
|
24
|
+
alarms: browser.Alarms.Static;
|
|
25
|
+
bookmarks: browser.Bookmarks.Static;
|
|
26
|
+
action: browser.Action.Static;
|
|
27
|
+
browserAction: browser.BrowserAction.Static;
|
|
28
|
+
browserSettings: browser.BrowserSettings.Static;
|
|
29
|
+
browsingData: browser.BrowsingData.Static;
|
|
30
|
+
captivePortal: browser.CaptivePortal.Static;
|
|
31
|
+
clipboard: browser.Clipboard.Static;
|
|
32
|
+
commands: browser.Commands.Static;
|
|
33
|
+
contentScripts: browser.ContentScripts.Static;
|
|
34
|
+
contextualIdentities: browser.ContextualIdentities.Static;
|
|
35
|
+
cookies: browser.Cookies.Static;
|
|
36
|
+
declarativeNetRequest: browser.DeclarativeNetRequest.Static;
|
|
37
|
+
devtools: browser.Devtools.Static;
|
|
38
|
+
dns: browser.Dns.Static;
|
|
39
|
+
downloads: browser.Downloads.Static;
|
|
40
|
+
events: browser.Events.Static;
|
|
41
|
+
experiments: browser.Experiments.Static;
|
|
42
|
+
extension: browser.Extension.Static;
|
|
43
|
+
extensionTypes: browser.ExtensionTypes.Static;
|
|
44
|
+
find: browser.Find.Static;
|
|
45
|
+
geckoProfiler: browser.GeckoProfiler.Static;
|
|
46
|
+
history: browser.History.Static;
|
|
47
|
+
i18n: browser.I18n.Static;
|
|
48
|
+
identity: browser.Identity.Static;
|
|
49
|
+
idle: browser.Idle.Static;
|
|
50
|
+
management: browser.Management.Static;
|
|
51
|
+
manifest: browser.Manifest.Static;
|
|
52
|
+
contextMenus: browser.ContextMenus.Static;
|
|
53
|
+
menus: browser.Menus.Static;
|
|
54
|
+
networkStatus: browser.NetworkStatus.Static;
|
|
55
|
+
normandyAddonStudy: browser.NormandyAddonStudy.Static;
|
|
56
|
+
notifications: browser.Notifications.Static;
|
|
57
|
+
omnibox: browser.Omnibox.Static;
|
|
58
|
+
pageAction: browser.PageAction.Static;
|
|
59
|
+
permissions: browser.Permissions.Static;
|
|
60
|
+
pkcs11: browser.Pkcs11.Static;
|
|
61
|
+
privacy: browser.Privacy.Static;
|
|
62
|
+
proxy: browser.Proxy.Static;
|
|
63
|
+
runtime: browser.Runtime.Static;
|
|
64
|
+
scripting: browser.Scripting.Static;
|
|
65
|
+
search: browser.Search.Static;
|
|
66
|
+
sessions: browser.Sessions.Static;
|
|
67
|
+
sidebarAction: browser.SidebarAction.Static;
|
|
68
|
+
storage: browser.Storage.Static;
|
|
69
|
+
tabs: browser.Tabs.Static;
|
|
70
|
+
theme: browser.Theme.Static;
|
|
71
|
+
topSites: browser.TopSites.Static;
|
|
72
|
+
types: browser.Types.Static;
|
|
73
|
+
urlbar: browser.Urlbar.Static;
|
|
74
|
+
userScripts: browser.UserScripts.Static;
|
|
75
|
+
webNavigation: browser.WebNavigation.Static;
|
|
76
|
+
webRequest: browser.WebRequest.Static;
|
|
77
|
+
windows: browser.Windows.Static;
|
|
78
|
+
};
|
|
79
|
+
export declare const wrapListenerExtensionTarget: ({ target, key }: {
|
|
80
|
+
target: WindowEventHandlers | ServiceWorkerContainer | Worker | SharedWorker;
|
|
81
|
+
key?: string | undefined;
|
|
82
|
+
}) => {
|
|
83
|
+
addEventListener: (type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions) => void;
|
|
84
|
+
onafterprint: ((this: WindowEventHandlers, ev: Event) => any) | null;
|
|
85
|
+
onbeforeprint: ((this: WindowEventHandlers, ev: Event) => any) | null;
|
|
86
|
+
onbeforeunload: ((this: WindowEventHandlers, ev: BeforeUnloadEvent) => any) | null;
|
|
87
|
+
ongamepadconnected: ((this: WindowEventHandlers, ev: GamepadEvent) => any) | null;
|
|
88
|
+
ongamepaddisconnected: ((this: WindowEventHandlers, ev: GamepadEvent) => any) | null;
|
|
89
|
+
onhashchange: ((this: WindowEventHandlers, ev: HashChangeEvent) => any) | null;
|
|
90
|
+
onlanguagechange: ((this: WindowEventHandlers, ev: Event) => any) | null;
|
|
91
|
+
onmessage: ((this: WindowEventHandlers, ev: MessageEvent<any>) => any) | null;
|
|
92
|
+
onmessageerror: ((this: WindowEventHandlers, ev: MessageEvent<any>) => any) | null;
|
|
93
|
+
onoffline: ((this: WindowEventHandlers, ev: Event) => any) | null;
|
|
94
|
+
ononline: ((this: WindowEventHandlers, ev: Event) => any) | null;
|
|
95
|
+
onpagehide: ((this: WindowEventHandlers, ev: PageTransitionEvent) => any) | null;
|
|
96
|
+
onpageshow: ((this: WindowEventHandlers, ev: PageTransitionEvent) => any) | null;
|
|
97
|
+
onpopstate: ((this: WindowEventHandlers, ev: PopStateEvent) => any) | null;
|
|
98
|
+
onrejectionhandled: ((this: WindowEventHandlers, ev: PromiseRejectionEvent) => any) | null;
|
|
99
|
+
onstorage: ((this: WindowEventHandlers, ev: StorageEvent) => any) | null;
|
|
100
|
+
onunhandledrejection: ((this: WindowEventHandlers, ev: PromiseRejectionEvent) => any) | null;
|
|
101
|
+
onunload: ((this: WindowEventHandlers, ev: Event) => any) | null;
|
|
102
|
+
removeEventListener<K extends keyof WindowEventHandlersEventMap>(type: K, listener: (this: WindowEventHandlers, ev: WindowEventHandlersEventMap[K]) => any, options?: boolean | EventListenerOptions | undefined): void;
|
|
103
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions | undefined): void;
|
|
104
|
+
} | {
|
|
105
|
+
addEventListener: (type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions) => void;
|
|
106
|
+
controller: ServiceWorker | null;
|
|
107
|
+
oncontrollerchange: ((this: ServiceWorkerContainer, ev: Event) => any) | null;
|
|
108
|
+
onmessage: ((this: ServiceWorkerContainer, ev: MessageEvent<any>) => any) | null;
|
|
109
|
+
onmessageerror: ((this: ServiceWorkerContainer, ev: MessageEvent<any>) => any) | null;
|
|
110
|
+
ready: Promise<ServiceWorkerRegistration>;
|
|
111
|
+
getRegistration(clientURL?: string | URL | undefined): Promise<ServiceWorkerRegistration | undefined>;
|
|
112
|
+
getRegistrations(): Promise<readonly ServiceWorkerRegistration[]>;
|
|
113
|
+
register(scriptURL: string | URL, options?: RegistrationOptions | undefined): Promise<ServiceWorkerRegistration>;
|
|
114
|
+
startMessages(): void;
|
|
115
|
+
removeEventListener<K_1 extends keyof ServiceWorkerContainerEventMap>(type: K_1, listener: (this: ServiceWorkerContainer, ev: ServiceWorkerContainerEventMap[K_1]) => any, options?: boolean | EventListenerOptions | undefined): void;
|
|
116
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions | undefined): void;
|
|
117
|
+
dispatchEvent(event: Event): boolean;
|
|
118
|
+
} | {
|
|
119
|
+
addEventListener: (type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions) => void;
|
|
120
|
+
port: MessagePort;
|
|
121
|
+
removeEventListener<K_2 extends "error">(type: K_2, listener: (this: SharedWorker, ev: AbstractWorkerEventMap[K_2]) => any, options?: boolean | EventListenerOptions | undefined): void;
|
|
122
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions | undefined): void;
|
|
123
|
+
dispatchEvent(event: Event): boolean;
|
|
124
|
+
onerror: ((this: AbstractWorker, ev: ErrorEvent) => any) | null;
|
|
125
|
+
} | {
|
|
126
|
+
addEventListener: (type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions) => void;
|
|
127
|
+
onmessage: ((this: Worker, ev: MessageEvent<any>) => any) | null;
|
|
128
|
+
onmessageerror: ((this: Worker, ev: MessageEvent<any>) => any) | null;
|
|
129
|
+
postMessage(message: any, transfer: Transferable[]): void;
|
|
130
|
+
postMessage(message: any, options?: StructuredSerializeOptions | undefined): void;
|
|
131
|
+
terminate(): void;
|
|
132
|
+
removeEventListener<K_3 extends keyof WorkerEventMap>(type: K_3, listener: (this: Worker, ev: WorkerEventMap[K_3]) => any, options?: boolean | EventListenerOptions | undefined): void;
|
|
133
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions | undefined): void;
|
|
134
|
+
dispatchEvent(event: Event): boolean;
|
|
135
|
+
onerror: ((this: AbstractWorker, ev: ErrorEvent) => any) | null;
|
|
136
|
+
};
|
|
137
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "osra",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.11",
|
|
4
4
|
"description": "Easy communication between workers",
|
|
5
5
|
"files": [
|
|
6
6
|
"build"
|
|
7
7
|
],
|
|
8
8
|
"main": "build/index.js",
|
|
9
|
+
"type": "module",
|
|
9
10
|
"scripts": {
|
|
10
|
-
"type-check": "tsc
|
|
11
|
-
"type-check-watch": "tsc --watch
|
|
12
|
-
"build": "
|
|
11
|
+
"type-check": "tsc",
|
|
12
|
+
"type-check-watch": "tsc --watch",
|
|
13
|
+
"build": "vite build && npm run type-check",
|
|
13
14
|
"build-watch": "esbuild --watch ./src/index.ts --format=esm --bundle --outfile=build/index.js",
|
|
14
15
|
"dev": "concurrently \"npm run build-watch\" \"npm run type-check-watch\"",
|
|
15
16
|
"copy-tests-html": "copyfiles -u 1 ./tests/*/index.html tests/build",
|
|
@@ -30,14 +31,17 @@
|
|
|
30
31
|
"homepage": "https://github.com/Banou26/osra#readme",
|
|
31
32
|
"devDependencies": {
|
|
32
33
|
"@types/chai-as-promised": "^7.1.5",
|
|
34
|
+
"@types/chrome": "^0.0.237",
|
|
33
35
|
"@types/node": "^18.11.18",
|
|
36
|
+
"@types/webextension-polyfill": "^0.10.0",
|
|
34
37
|
"chai": "^4.3.6",
|
|
35
38
|
"chai-as-promised": "^7.1.1",
|
|
36
39
|
"concurrently": "^7.0.0",
|
|
37
40
|
"copyfiles": "^2.4.1",
|
|
38
41
|
"epk": "^0.16.0",
|
|
39
|
-
"esbuild": "^0.14.28",
|
|
40
42
|
"mime": "^3.0.0",
|
|
41
|
-
"typescript": "^4.9.4"
|
|
43
|
+
"typescript": "^4.9.4",
|
|
44
|
+
"vite": "^4.0.4",
|
|
45
|
+
"webextension-polyfill": "^0.10.0"
|
|
42
46
|
}
|
|
43
47
|
}
|
package/build/iterator.d.ts
DELETED
|
File without changes
|
package/build/promise.d.ts
DELETED
|
File without changes
|
package/build/pull.d.ts
DELETED
|
File without changes
|
package/build/send.d.ts
DELETED
|
File without changes
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.es2021.d.ts","../node_modules/typescript/lib/lib.es2022.d.ts","../node_modules/typescript/lib/lib.esnext.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.dom.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.es2021.promise.d.ts","../node_modules/typescript/lib/lib.es2021.string.d.ts","../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../node_modules/typescript/lib/lib.es2021.intl.d.ts","../node_modules/typescript/lib/lib.es2022.array.d.ts","../node_modules/typescript/lib/lib.es2022.error.d.ts","../node_modules/typescript/lib/lib.es2022.intl.d.ts","../node_modules/typescript/lib/lib.es2022.object.d.ts","../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2022.string.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../src/types.ts","../src/shared.ts","../src/utils.ts","../src/call.ts","../src/event-target.ts","../src/events.ts","../src/register.ts","../src/index.ts","../src/iterator.ts","../src/promise.ts","../src/pull.ts","../src/send.ts","../node_modules/@types/chai/index.d.ts","../node_modules/@types/chai-as-promised/index.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@types/yoga-layout/index.d.ts"],"fileInfos":[{"version":"8730f4bf322026ff5229336391a18bcaa1f94d4f82416c8b2f3954e2ccaae2ba","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","4b421cbfb3a38a27c279dec1e9112c3d1da296f77a1a85ddadf7e7a425d45d18","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9","746d62152361558ea6d6115cf0da4dd10ede041d14882ede3568bce5dc4b4f1f","d11a03592451da2d1065e09e61f4e2a9bf68f780f4f6623c18b57816a9679d17","aea179452def8a6152f98f63b191b84e7cbd69b0e248c91e61fb2e52328abe8c",{"version":"3aafcb693fe5b5c3bd277bd4c3a617b53db474fe498fc5df067c5603b1eebde7","affectsGlobalScope":true},{"version":"f3d4da15233e593eacb3965cde7960f3fddf5878528d882bcedd5cbaba0193c7","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"5f406584aef28a331c36523df688ca3650288d14f39c5d2e555c95f0d2ff8f6f","affectsGlobalScope":true},{"version":"22f230e544b35349cfb3bd9110b6ef37b41c6d6c43c3314a31bd0d9652fcec72","affectsGlobalScope":true},{"version":"7ea0b55f6b315cf9ac2ad622b0a7813315bb6e97bf4bb3fbf8f8affbca7dc695","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"eb26de841c52236d8222f87e9e6a235332e0788af8c87a71e9e210314300410a","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"5e5e095c4470c8bab227dbbc61374878ecead104c74ab9960d3adcccfee23205","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"2768ef564cfc0689a1b76106c421a2909bdff0acbe87da010785adab80efdd5c","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"6c55633c733c8378db65ac3da7a767c3cf2cf3057f0565a9124a16a3a2019e87","affectsGlobalScope":true},{"version":"fb4416144c1bf0323ccbc9afb0ab289c07312214e8820ad17d709498c865a3fe","affectsGlobalScope":true},{"version":"5b0ca94ec819d68d33da516306c15297acec88efeb0ae9e2b39f71dbd9685ef7","affectsGlobalScope":true},{"version":"34c839eaaa6d78c8674ae2c37af2236dee6831b13db7b4ef4df3ec889a04d4f2","affectsGlobalScope":true},{"version":"34478567f8a80171f88f2f30808beb7da15eac0538ae91282dd33dce928d98ed","affectsGlobalScope":true},{"version":"ab7d58e6161a550ff92e5aff755dc37fe896245348332cd5f1e1203479fe0ed1","affectsGlobalScope":true},{"version":"6bda95ea27a59a276e46043b7065b55bd4b316c25e70e29b572958fa77565d43","affectsGlobalScope":true},{"version":"aedb8de1abb2ff1095c153854a6df7deae4a5709c37297f9d6e9948b6806fa66","affectsGlobalScope":true},{"version":"a4da0551fd39b90ca7ce5f68fb55d4dc0c1396d589b612e1902f68ee090aaada","affectsGlobalScope":true},{"version":"11ffe3c281f375fff9ffdde8bbec7669b4dd671905509079f866f2354a788064","affectsGlobalScope":true},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true},{"version":"1bb9d7b01191dc46cf7c960f77c76ca885a6791a4cb4b7c7d091c6a7cb621c80","signature":"999eb232c28b0161f0e5a35bddfc904d9127a6e472a0d662117229adab2ed16b"},{"version":"05937501605ada7f9817ccf33f105ee25f49184975d9e6d72f7f79d060ece585","signature":"91196572ac171e385c355366d8c95f41584259576e8f2553fae310712fa2e7a2"},{"version":"95e9044ba1e404dec0ebf802aed928abf1028a6393dab1baf3f3e5dfd7f56375","signature":"f224fce8893370dc397dac71391abacdd5e7f53b7c872cd0d04c651353a9b46f"},{"version":"7b75249514169a6c542b34b6a1a5082f5744e5656585f3a6fbecebf815defda3","signature":"0dc0f3ee840a15bd7ba0d022d938fb14992ccb30933d4fb9b25293dcb63d6c42"},{"version":"471a9874ad00882e700297c1941d262ddbbb38eec1d8b33d4c274cc90147f639","signature":"1d75deb0420956855c83394733e35c44fd1c478d70269f85c5b40a9864cfe68d"},{"version":"99a5f708f77c622ca352fd11001c4b41e49dae8fb7cb9eccc235d3db2aa6dbb1","signature":"f7c69f81d580fe173a2007da69c9ea008e9a1a996761329afc51e3c518df023e"},{"version":"8d1ff770ee61d790a1f7f3704ad42963d270ed26af16430f4d8b06cda9091486","signature":"f88d74499704e1361322b03e6d17da1f06f9c01c0c42ad0ebf0aaa108a8eadbe"},{"version":"4d69b267810fc417b0a717e73d498d44a2d6496087e700ab12f928c604a67338","signature":"72351ab1482e174e045b22d78760665da306ed7663909af835d78ce6bd621c07"},{"version":"0af48ab96fcd4372caa919fab979abc41bbb090b6c2f3390245388bcd5e1afd9","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"a865def279ea542d3025ee9dece6bb7484acee979758aa1314bac4f17207f200","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"ce4b42df217bb63f0f788ebb195b26abb35e4df5194f6efd8aaf27a29dbf0683","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"2fab913ef715208c4337bdcaf6e84acc484f02be7cdb64920d2af7d36cf2ac00","signature":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},{"version":"3a15910b7f45dfc393f010ee8f913580b08d65752800fc48147ea13445acd5f7","affectsGlobalScope":true},{"version":"63e2182615c513e89bb8a3e749d08f7c379e86490fcdbf6d35f2c14b3507a6e8","affectsGlobalScope":true},"7e771891adaa85b690266bc37bd6eb43bc57eecc4b54693ead36467e7369952a","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"ca72190df0eb9b09d4b600821c8c7b6c9747b75a1c700c4d57dc0bb72abc074c","affectsGlobalScope":true},"21a167fec8f933752fb8157f06d28fab6817af3ad9b0bdb1908a10762391eab9",{"version":"bb65c6267c5d6676be61acbf6604cf0a4555ac4b505df58ac15c831fcbff4e3e","affectsGlobalScope":true},"374ca798f244e464346f14301dc2a8b4b111af1a83b49fffef5906c338a1f922","5a94487653355b56018122d92392beb2e5f4a6c63ba5cef83bbe1c99775ef713",{"version":"d5135ad93b33adcce80b18f8065087934cdc1730d63db58562edcf017e1aad9b","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","dab86d9604fe40854ef3c0a6f9e8948873dc3509213418e5e457f410fd11200f","bb9c4ffa5e6290c6980b63c815cdd1625876dadb2efaf77edbe82984be93e55e","489532ff54b714f0e0939947a1c560e516d3ae93d51d639ab02e907a0e950114","f30bb836526d930a74593f7b0f5c1c46d10856415a8f69e5e2fc3db80371e362","14b5aa23c5d0ae1907bc696ac7b6915d88f7d85799cc0dc2dcf98fbce2c5a67c","5c439dafdc09abe4d6c260a96b822fa0ba5be7203c71a63ab1f1423cd9e838ea",{"version":"6b526a5ec4a401ca7c26cfe6a48e641d8f30af76673bad3b06a1b4504594a960","affectsGlobalScope":true},{"version":"816ad2e607a96de5bcac7d437f843f5afd8957f1fa5eefa6bba8e4ed7ca8fd84","affectsGlobalScope":true},"cec36af22f514322f870e81d30675c78df82ae8bf4863f5fd4e4424c040c678d","d903fafe96674bc0b2ac38a5be4a8fc07b14c2548d1cdb165a80ea24c44c0c54","5eec82ac21f84d83586c59a16b9b8502d34505d1393393556682fe7e7fde9ef2","04eb6578a588d6a46f50299b55f30e3a04ef27d0c5a46c57d8fcc211cd530faa","8d3c583a07e0c37e876908c2d5da575019f689df8d9fa4c081d99119d53dba22","2c828a5405191d006115ab34e191b8474bc6c86ffdc401d1a9864b1b6e088a58",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"d076fede3cb042e7b13fc29442aaa03a57806bc51e2b26a67a01fbc66a7c0c12","7c013aa892414a7fdcfd861ae524a668eaa3ede8c7c0acafaf611948122c8d93","b0973c3cbcdc59b37bf477731d468696ecaf442593ec51bab497a613a580fe30",{"version":"4989e92ba5b69b182d2caaea6295af52b7dc73a4f7a2e336a676722884e7139d","affectsGlobalScope":true},{"version":"b3624aed92dab6da8484280d3cb3e2f4130ec3f4ef3f8201c95144ae9e898bb6","affectsGlobalScope":true},"5153a2fd150e46ce57bb3f8db1318d33f6ad3261ed70ceeff92281c0608c74a3","210d54cd652ec0fec8c8916e4af59bb341065576ecda039842f9ffb2e908507c","36b03690b628eab08703d63f04eaa89c5df202e5f1edf3989f13ad389cd2c091","0effadd232a20498b11308058e334d3339cc5bf8c4c858393e38d9d4c0013dcf","25846d43937c672bab7e8195f3d881f93495df712ee901860effc109918938cc","fd93cee2621ff42dabe57b7be402783fd1aa69ece755bcba1e0290547ae60513","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff","69ee23dd0d215b09907ad30d23f88b7790c93329d1faf31d7835552a10cf7cbf","44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","23b89798789dffbd437c0c423f5d02d11f9736aea73d6abf16db4f812ff36eda","223c37f62ce09a3d99e77498acdee7b2705a4ae14552fbdb4093600cd9164f3f",{"version":"970a90f76d4d219ad60819d61f5994514087ba94c985647a3474a5a3d12714ed","affectsGlobalScope":true},"e10177274a35a9d07c825615340b2fcde2f610f53f3fb40269fd196b4288dda6","4c8525f256873c7ba3135338c647eaf0ca7115a1a2805ae2d0056629461186ce","3c13ef48634e7b5012fcf7e8fce7496352c2d779a7201389ca96a2a81ee4314d","5d0a25ec910fa36595f85a67ac992d7a53dd4064a1ba6aea1c9f14ab73a023f2",{"version":"f0900cd5d00fe1263ff41201fb8073dbeb984397e4af3b8002a5c207a30bdc33","affectsGlobalScope":true},{"version":"4c50342e1b65d3bee2ed4ab18f84842d5724ad11083bd666d8705dc7a6079d80","affectsGlobalScope":true},"06d7c42d256f0ce6afe1b2b6cfbc97ab391f29dadb00dd0ae8e8f23f5bc916c3","ec4bd1b200670fb567920db572d6701ed42a9641d09c4ff6869768c8f81b404c","e59a892d87e72733e2a9ca21611b9beb52977be2696c7ba4b216cbbb9a48f5aa",{"version":"da26af7362f53d122283bc69fed862b9a9fe27e01bc6a69d1d682e0e5a4df3e6","affectsGlobalScope":true},"8a300fa9b698845a1f9c41ecbe2c5966634582a8e2020d51abcace9b55aa959e",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"8dbe725f8d237e70310977afcfa011629804d101ebaa0266cafda6b61ad72236","7693b0547e3b004443fa1f4327b61617e7317757a3e947ccc200c91111c77eca"],"options":{"composite":false,"declaration":true,"emitDeclarationOnly":true,"module":99,"noImplicitAny":false,"noUncheckedIndexedAccess":true,"outDir":"./","sourceMap":true,"strict":true,"strictNullChecks":true,"target":99},"fileIdsList":[[69,117],[117],[71,117],[74,117],[75,80,108,117],[76,87,88,95,105,116,117],[76,77,87,95,117],[78,117],[79,80,88,96,117],[80,105,113,117],[81,83,87,95,117],[82,117],[83,84,117],[87,117],[85,87,117],[87,88,89,105,116,117],[87,88,89,102,105,108,117],[117,121],[83,90,95,105,116,117],[87,88,90,91,95,105,113,116,117],[90,92,105,113,116,117],[71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123],[87,93,117],[94,116,117],[83,87,95,105,117],[96,117],[97,117],[74,98,117],[99,115,117,121],[100,117],[101,117],[87,102,103,117],[102,104,117,119],[75,87,105,106,107,108,117],[75,105,107,117],[105,106,117],[108,117],[109,117],[87,111,112,117],[111,112,117],[80,95,105,113,117],[114,117],[95,115,117],[75,90,101,116,117],[80,117],[105,117,118],[117,119],[117,120],[75,80,87,89,98,105,116,117,119,121],[105,117,122],[57,58,59,117],[61,117],[57,60,63,117],[57,58,60,117],[57,117],[57],[57,60,63]],"referencedMap":[[70,1],[69,2],[71,3],[72,3],[74,4],[75,5],[76,6],[77,7],[78,8],[79,9],[80,10],[81,11],[82,12],[83,13],[84,13],[86,14],[85,15],[87,14],[88,16],[89,17],[73,18],[123,2],[90,19],[91,20],[92,21],[124,22],[93,23],[94,24],[95,25],[96,26],[97,27],[98,28],[99,29],[100,30],[101,31],[102,32],[103,32],[104,33],[105,34],[107,35],[106,36],[108,37],[109,38],[110,2],[111,39],[112,40],[113,41],[114,42],[115,43],[116,44],[117,45],[118,46],[119,47],[120,48],[121,49],[122,50],[125,2],[11,2],[12,2],[14,2],[13,2],[2,2],[15,2],[16,2],[17,2],[18,2],[19,2],[20,2],[21,2],[22,2],[3,2],[4,2],[26,2],[23,2],[24,2],[25,2],[27,2],[28,2],[29,2],[5,2],[30,2],[31,2],[32,2],[33,2],[6,2],[37,2],[34,2],[35,2],[36,2],[38,2],[7,2],[39,2],[44,2],[45,2],[40,2],[41,2],[42,2],[43,2],[8,2],[49,2],[46,2],[47,2],[48,2],[50,2],[9,2],[51,2],[52,2],[53,2],[54,2],[55,2],[1,2],[10,2],[56,2],[60,51],[61,2],[62,52],[64,53],[65,2],[66,2],[67,2],[63,54],[68,2],[58,2],[57,2],[59,55]],"exportedModulesMap":[[70,1],[69,2],[71,3],[72,3],[74,4],[75,5],[76,6],[77,7],[78,8],[79,9],[80,10],[81,11],[82,12],[83,13],[84,13],[86,14],[85,15],[87,14],[88,16],[89,17],[73,18],[123,2],[90,19],[91,20],[92,21],[124,22],[93,23],[94,24],[95,25],[96,26],[97,27],[98,28],[99,29],[100,30],[101,31],[102,32],[103,32],[104,33],[105,34],[107,35],[106,36],[108,37],[109,38],[110,2],[111,39],[112,40],[113,41],[114,42],[115,43],[116,44],[117,45],[118,46],[119,47],[120,48],[121,49],[122,50],[125,2],[11,2],[12,2],[14,2],[13,2],[2,2],[15,2],[16,2],[17,2],[18,2],[19,2],[20,2],[21,2],[22,2],[3,2],[4,2],[26,2],[23,2],[24,2],[25,2],[27,2],[28,2],[29,2],[5,2],[30,2],[31,2],[32,2],[33,2],[6,2],[37,2],[34,2],[35,2],[36,2],[38,2],[7,2],[39,2],[44,2],[45,2],[40,2],[41,2],[42,2],[43,2],[8,2],[49,2],[46,2],[47,2],[48,2],[50,2],[9,2],[51,2],[52,2],[53,2],[54,2],[55,2],[1,2],[10,2],[56,2],[60,56],[64,57],[63,56],[59,56]],"semanticDiagnosticsPerFile":[70,69,71,72,74,75,76,77,78,79,80,81,82,83,84,86,85,87,88,89,73,123,90,91,92,124,93,94,95,96,97,98,99,100,101,102,103,104,105,107,106,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,125,11,12,14,13,2,15,16,17,18,19,20,21,22,3,4,26,23,24,25,27,28,29,5,30,31,32,33,6,37,34,35,36,38,7,39,44,45,40,41,42,43,8,49,46,47,48,50,9,51,52,53,54,55,1,10,56,60,61,62,64,65,66,67,63,68,58,57,59]},"version":"4.9.4"}
|