osra 0.0.10 → 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 +155 -63
- package/build/utils.d.ts +4 -0
- package/build/webextension.d.ts +137 -0
- package/package.json +5 -2
- 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/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,89 +1,181 @@
|
|
|
1
|
-
const
|
|
2
|
-
target:
|
|
3
|
-
resolvers:
|
|
4
|
-
filter:
|
|
5
|
-
map:
|
|
6
|
-
key:
|
|
1
|
+
const g = "osra-message", l = ({
|
|
2
|
+
target: e,
|
|
3
|
+
resolvers: t,
|
|
4
|
+
filter: r,
|
|
5
|
+
map: n,
|
|
6
|
+
key: a = g
|
|
7
7
|
}) => {
|
|
8
|
-
const
|
|
9
|
-
if (!
|
|
8
|
+
const o = (s) => {
|
|
9
|
+
if (!s.data || typeof s.data != "object" || s.data?.source !== a || r && !r(s))
|
|
10
10
|
return;
|
|
11
|
-
const { type: c, data:
|
|
12
|
-
if (!
|
|
11
|
+
const { type: c, data: i, port: d } = s.data, m = t[c];
|
|
12
|
+
if (!m)
|
|
13
13
|
throw new Error(`Osra received a message of type "${String(c)}" but no resolver was found for type.`);
|
|
14
|
-
|
|
14
|
+
n ? m(...n(i, { event: s, type: c, port: d })) : m(i, { event: s, type: c, port: d });
|
|
15
15
|
};
|
|
16
|
-
return
|
|
17
|
-
listener:
|
|
18
|
-
resolvers:
|
|
16
|
+
return e.addEventListener("message", o), {
|
|
17
|
+
listener: o,
|
|
18
|
+
resolvers: t
|
|
19
19
|
};
|
|
20
|
-
},
|
|
21
|
-
const
|
|
22
|
-
return
|
|
23
|
-
},
|
|
24
|
-
const { port1:
|
|
25
|
-
return
|
|
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) => {
|
|
26
26
|
try {
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
} catch (
|
|
30
|
-
|
|
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 });
|
|
31
31
|
}
|
|
32
|
-
}),
|
|
33
|
-
}, f = (
|
|
34
|
-
Object.entries(
|
|
35
|
-
|
|
36
|
-
f(
|
|
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
37
|
])
|
|
38
|
-
) :
|
|
39
|
-
const
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
}),
|
|
44
|
-
Object.entries(
|
|
45
|
-
|
|
46
|
-
|
|
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
47
|
])
|
|
48
|
-
) :
|
|
49
|
-
const { port1:
|
|
50
|
-
|
|
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
51
|
"message",
|
|
52
|
-
({ data:
|
|
53
|
-
if (
|
|
54
|
-
|
|
52
|
+
({ data: m }) => {
|
|
53
|
+
if (m.error)
|
|
54
|
+
o(m.error);
|
|
55
55
|
else {
|
|
56
|
-
const
|
|
57
|
-
|
|
56
|
+
const L = E(m.result);
|
|
57
|
+
a(L);
|
|
58
58
|
}
|
|
59
|
-
|
|
59
|
+
s.close(), c.close();
|
|
60
60
|
},
|
|
61
61
|
{ once: !0 }
|
|
62
|
-
),
|
|
63
|
-
const
|
|
64
|
-
|
|
62
|
+
), s.start();
|
|
63
|
+
const i = f(n), d = h(i);
|
|
64
|
+
e.postMessage(
|
|
65
65
|
{
|
|
66
|
-
source:
|
|
67
|
-
type:
|
|
68
|
-
data:
|
|
66
|
+
source: t,
|
|
67
|
+
type: r,
|
|
68
|
+
data: i,
|
|
69
69
|
port: c
|
|
70
70
|
},
|
|
71
71
|
{
|
|
72
72
|
targetOrigin: "*",
|
|
73
|
-
transfer: [c, ...
|
|
73
|
+
transfer: [c, ...d ?? []]
|
|
74
74
|
}
|
|
75
75
|
);
|
|
76
|
-
}),
|
|
77
|
-
const { port:
|
|
76
|
+
}), _ = (e) => async (t, r) => {
|
|
77
|
+
const { port: n } = r, a = E(t);
|
|
78
78
|
try {
|
|
79
|
-
const
|
|
80
|
-
return
|
|
81
|
-
} catch (
|
|
82
|
-
throw
|
|
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;
|
|
83
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
|
+
};
|
|
84
171
|
};
|
|
85
172
|
export {
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
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
|
|
89
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,6 +1,6 @@
|
|
|
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"
|
|
@@ -31,7 +31,9 @@
|
|
|
31
31
|
"homepage": "https://github.com/Banou26/osra#readme",
|
|
32
32
|
"devDependencies": {
|
|
33
33
|
"@types/chai-as-promised": "^7.1.5",
|
|
34
|
+
"@types/chrome": "^0.0.237",
|
|
34
35
|
"@types/node": "^18.11.18",
|
|
36
|
+
"@types/webextension-polyfill": "^0.10.0",
|
|
35
37
|
"chai": "^4.3.6",
|
|
36
38
|
"chai-as-promised": "^7.1.1",
|
|
37
39
|
"concurrently": "^7.0.0",
|
|
@@ -39,6 +41,7 @@
|
|
|
39
41
|
"epk": "^0.16.0",
|
|
40
42
|
"mime": "^3.0.0",
|
|
41
43
|
"typescript": "^4.9.4",
|
|
42
|
-
"vite": "^4.0.4"
|
|
44
|
+
"vite": "^4.0.4",
|
|
45
|
+
"webextension-polyfill": "^0.10.0"
|
|
43
46
|
}
|
|
44
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
|