@fkn/lib 0.9.19 → 0.9.21

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.
Files changed (86) hide show
  1. package/account.cjs +1 -1
  2. package/account.js +24 -17
  3. package/{api-DnO1DsJC.d.ts → api-B0qRPCcX.d.ts} +36 -37
  4. package/api-BqRjtWm_.js +311 -0
  5. package/api-CKO3Hw-O.cjs +3 -0
  6. package/busy-Bp1E3JPT.js +24 -0
  7. package/busy-Dv8wzE5M.cjs +1 -0
  8. package/cloud/dgram.cjs +1 -1
  9. package/cloud/dgram.js +1 -1
  10. package/cloud/fetch.cjs +1 -1
  11. package/cloud/fetch.d.ts +1 -1
  12. package/cloud/fetch.js +1 -1
  13. package/cloud/fs.cjs +1 -1
  14. package/cloud/fs.js +2 -2
  15. package/cloud/net.cjs +1 -1
  16. package/cloud/net.d.ts +1 -1
  17. package/cloud/net.js +1 -1
  18. package/cloud-BCQTex58.cjs +1 -0
  19. package/{cloud-uE4g-WqI.d.ts → cloud-BTpJn4jy.d.ts} +3 -3
  20. package/cloud-BlR1He17.js +212 -0
  21. package/cloud.cjs +1 -1
  22. package/cloud.d.ts +3 -3
  23. package/cloud.js +4 -4
  24. package/dgram-9hn582qO.cjs +1 -0
  25. package/{dgram-DlGl_ho1.js → dgram-TB03kqMr.js} +55 -49
  26. package/dgram.cjs +1 -1
  27. package/dgram.d.ts +2 -1
  28. package/dgram.js +1 -1
  29. package/dns.cjs +1 -1
  30. package/dns.js +1 -1
  31. package/extension-BI2NxGtC.js +78 -0
  32. package/{extension-CN9oFZ0Q.d.ts → extension-CMPZjuaV.d.ts} +1 -1
  33. package/extension-rFQQpEqJ.cjs +1 -0
  34. package/extension.cjs +1 -1
  35. package/extension.d.ts +2 -2
  36. package/extension.js +3 -3
  37. package/fs/promises.cjs +1 -1
  38. package/fs/promises.js +1 -1
  39. package/fs-BUcpl9k4.cjs +1 -0
  40. package/fs-bpb3Ysdd.js +347 -0
  41. package/fs.cjs +1 -1
  42. package/fs.js +1 -1
  43. package/http.cjs +1 -1
  44. package/http.d.ts +1 -1
  45. package/http.js +1 -1
  46. package/{index-DLaonjpx.d.ts → index-DY8WjklJ.d.ts} +82 -0
  47. package/index.cjs +1 -1
  48. package/index.d.ts +12 -18
  49. package/index.js +92 -39
  50. package/lib-DbiVHPXE.cjs +53 -0
  51. package/{lib-CegQxwDI.js → lib-k3lstfa4.js} +178 -131
  52. package/net-C2fIMWFr.cjs +1 -0
  53. package/{net-l7JVHsIR.d.ts → net-CnYxw_sB.d.ts} +3 -1
  54. package/{net-BbmQeMpt.js → net-Ct8ywVAk.js} +52 -41
  55. package/net.cjs +1 -1
  56. package/net.d.ts +1 -1
  57. package/net.js +1 -1
  58. package/node-fs-BZCQUmeE.js +404 -0
  59. package/node-fs-DZPGCYWg.cjs +1 -0
  60. package/opfs.cjs +1 -1
  61. package/opfs.js +1 -1
  62. package/package.json +1 -1
  63. package/{packages-vX-1yfRK.d.ts → packages-Cn8S-Hkn.d.ts} +20 -20
  64. package/packages.cjs +1 -1
  65. package/packages.d.ts +1 -1
  66. package/packages.js +165 -149
  67. package/proxy--aljNHvG.js +69 -0
  68. package/{proxy-7ib45Uo-.d.ts → proxy-CuXtzxSQ.d.ts} +1 -1
  69. package/proxy-oHfEx1cn.cjs +1 -0
  70. package/{storage-C8hBot2f.js → storage-C1nW5Tvh.js} +1 -1
  71. package/{storage-BW-jDLUL.cjs → storage-rXHvV2FU.cjs} +1 -1
  72. package/api-DQ-V4Lls.js +0 -220
  73. package/api-kHMHDGar.cjs +0 -3
  74. package/cloud-BQoppUw4.cjs +0 -1
  75. package/cloud-C8CeqUht.js +0 -130
  76. package/dgram-D2Or5f2e.cjs +0 -1
  77. package/extension-4BM5hKrn.cjs +0 -1
  78. package/extension-DVO10P3i.js +0 -78
  79. package/fs-BW5mVMmu.js +0 -340
  80. package/fs-DJm0bhjg.cjs +0 -1
  81. package/lib-ulyxIbTr.cjs +0 -53
  82. package/net-COzDDBnS.cjs +0 -1
  83. package/node-fs-BMR2yCEt.cjs +0 -1
  84. package/node-fs-DKfokOlh.js +0 -401
  85. package/proxy-B0gNjT8-.cjs +0 -1
  86. package/proxy-BpqvCJmA.js +0 -43
package/fs-BW5mVMmu.js DELETED
@@ -1,340 +0,0 @@
1
- import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
- import { t } from "./node-fs-DKfokOlh.js";
3
- import { c as n, f as r, l as i, o as a, r as o } from "./storage-C8hBot2f.js";
4
- import { a as s, i as c, n as l, o as u, t as d } from "./opfs-BibrNGF0.js";
5
- //#region src/lib/fs/hybrid.ts
6
- var ee = /* @__PURE__ */ e({
7
- adopt: () => V,
8
- adoptable: () => H,
9
- available: () => te,
10
- list: () => oe,
11
- onConflict: () => z,
12
- pending: () => O,
13
- pendingDeletes: () => k,
14
- pull: () => ue,
15
- readFile: () => se,
16
- remove: () => le,
17
- replicating: () => re,
18
- writeFile: () => ce
19
- }), f, p = async () => await (f ??= d().catch(() => !1)) ? !0 : (f = void 0, !1), m = () => o().catch(() => "unknown"), h = async () => await m() === "connected", te = async () => await p() || await h(), g = "fkn:fs:pending", _ = "fkn:fs:pending-delete", v = "fkn:fs:adopt-declined", y = !0, b = /* @__PURE__ */ new Map(), x = (e) => {
20
- try {
21
- let t = localStorage.getItem(e);
22
- if (!t) return {};
23
- let n = JSON.parse(t);
24
- return Array.isArray(n) ? Object.fromEntries(n.filter((e) => typeof e == "string").map((e) => [e, null])) : n && typeof n == "object" ? n : {};
25
- } catch {
26
- return {};
27
- }
28
- }, S = (e, t) => {
29
- try {
30
- Object.keys(t).length ? localStorage.setItem(e, JSON.stringify(t)) : localStorage.removeItem(e);
31
- } catch {}
32
- }, C = () => x(g), w = (e, t) => {
33
- let n = C();
34
- e in n || (n[e] = t === void 0 ? b.get(e) ?? null : t, S(g, n));
35
- }, T = (e) => {
36
- let t = C();
37
- e in t && (delete t[e], S(g, t), j() || (N = M));
38
- }, E = () => x(_), ne = (e) => {
39
- let t = E();
40
- e in t || (t[e] = b.get(e) ?? null, S(_, t));
41
- }, D = (e) => {
42
- let t = E();
43
- e in t && (delete t[e], S(_, t), j() || (N = M));
44
- }, O = () => Object.keys(C()), k = () => Object.keys(E()), re = () => y, A = null, j = () => Object.keys(C()).length > 0 || Object.keys(E()).length > 0, M = 6e4, ie = 10 * 6e4, N = M, P = null, F = () => {
45
- P || typeof window > "u" || !j() || (P = setTimeout(() => {
46
- P = null, I();
47
- }, N), N = Math.min(N * 2, ie));
48
- }, I = () => {
49
- A || !j() || (A = B(!1).then((e) => {
50
- if (!j()) {
51
- N = M;
52
- return;
53
- }
54
- e.failed.length && F();
55
- }).catch(() => {
56
- F();
57
- }).finally(() => {
58
- A = null;
59
- }));
60
- }, ae = null, L = () => ae ??= import("./api-DQ-V4Lls.js").then((e) => e.n).then((e) => e.apiPromise), oe = async () => {
61
- G();
62
- let e = await m(), t = e === "connected", [n, r] = await Promise.all([p().then((e) => e ? l() : []).catch(() => []), t ? a().then((e) => ({
63
- ok: !0,
64
- entries: e
65
- })).catch(() => ({
66
- ok: !1,
67
- entries: []
68
- })) : Promise.resolve({
69
- ok: e === "disconnected",
70
- entries: []
71
- })]);
72
- e !== "unknown" && (y = r.ok), r.ok && e !== "unknown" && (b = new Map(r.entries.map((e) => [e.path, e.updatedAt])));
73
- let i = /* @__PURE__ */ new Map(), o = (e) => {
74
- let t = Date.parse(e.updatedAt ?? "");
75
- return Number.isFinite(t) ? t : 0;
76
- }, s = (e) => {
77
- let t = i.get(e.path);
78
- (!t || o(e) >= o(t)) && i.set(e.path, e);
79
- };
80
- for (let e of n) s(e);
81
- for (let e of r.entries) s(e);
82
- return r.ok && t && (he(n, r.entries).catch(() => {}), j() ? I() : W({
83
- local: n,
84
- remote: r.entries
85
- }).catch(() => {})), [...i.values()];
86
- }, se = async (e) => {
87
- if (await p()) try {
88
- return await c(e);
89
- } catch (e) {
90
- if (e?.name !== "NotFoundError") throw e;
91
- }
92
- let t = await n(e);
93
- return await p() && u(e, t).catch(() => {}), t;
94
- }, ce = async (e, t, n) => {
95
- let i = t instanceof Blob ? t : new Blob([t], n?.contentType ? { type: n.contentType } : void 0);
96
- if (await p()) {
97
- await u(e, i, n), G();
98
- let t = b.get(e) ?? null, a = await m();
99
- if (a === "disconnected") return;
100
- if (a === "unknown" || !y) {
101
- w(e, t), F();
102
- return;
103
- }
104
- r(e, i, n).then(() => T(e)).catch((n) => {
105
- w(e, t), F(), console.warn("fs: cloud replicate failed, queued for adopt()", n);
106
- });
107
- return;
108
- }
109
- let a = await m();
110
- if (a === "connected") return r(e, i, n);
111
- throw Error(a === "unknown" ? "fs: cloud unreachable" : "fs: no storage backend available");
112
- }, le = async (e) => {
113
- G();
114
- let t = [];
115
- await p() && t.push(s(e).catch(() => {}));
116
- let n = await m();
117
- if (n === "connected" ? t.push(i(e).then(() => D(e)).catch((t) => {
118
- ne(e), F(), console.warn("fs: cloud delete failed, queued for retry", t);
119
- })) : n === "unknown" && t.length && b.has(e) && (ne(e), F()), !t.length) throw Error(n === "unknown" ? "fs: cloud unreachable" : "fs: no storage backend available");
120
- T(e), await Promise.all(t);
121
- }, ue = async (e) => {
122
- let t = await n(e);
123
- return await p() && await u(e, t), t;
124
- }, R = null, z = (e) => (R = e, () => {
125
- R === e && (R = null);
126
- }), de = async (e) => (await L()).cloud.fs.promptConflict({
127
- path: e.path,
128
- local: e.local,
129
- cloud: e.cloud
130
- }).catch(() => null), fe = async (e) => {
131
- if (R) try {
132
- return await R(e);
133
- } catch {
134
- return null;
135
- }
136
- return de(e);
137
- }, B = async (e) => {
138
- let t = {
139
- uploaded: [],
140
- kept: [],
141
- resolved: [],
142
- unresolved: [],
143
- deleted: [],
144
- failed: []
145
- }, o = await m();
146
- if (o === "unknown") throw Error("fs: cloud unreachable");
147
- if (o !== "connected") throw Error("fs: this needs a signed-in account");
148
- let s = await p(), [d, ee] = await Promise.all([s ? l() : Promise.resolve([]), a()]), f = new Map(ee.map((e) => [e.path, e])), h = C();
149
- if (s) for (let e of Object.keys(h)) d.some((t) => t.path === e) || T(e);
150
- for (let [e, n] of Object.entries(E())) {
151
- let r = f.get(e);
152
- if (!r) {
153
- D(e);
154
- continue;
155
- }
156
- if (d.some((t) => t.path === e)) {
157
- D(e);
158
- continue;
159
- }
160
- if (r.updatedAt !== n) {
161
- D(e);
162
- continue;
163
- }
164
- try {
165
- await i(e), D(e), t.deleted.push(e);
166
- } catch (n) {
167
- t.failed.push({
168
- path: e,
169
- error: n instanceof Error ? n.message : String(n)
170
- });
171
- }
172
- }
173
- for (let i of d) {
174
- let a = f.get(i.path), o = i.path in h;
175
- if (!o && (a || !e)) {
176
- a && t.kept.push(i.path);
177
- continue;
178
- }
179
- if (o && a && a.updatedAt !== h[i.path]) {
180
- let e = await fe({
181
- path: i.path,
182
- local: {
183
- size: i.size,
184
- updatedAt: i.updatedAt
185
- },
186
- cloud: {
187
- size: a.size,
188
- updatedAt: a.updatedAt
189
- },
190
- readLocal: () => c(i.path),
191
- readCloud: () => n(i.path)
192
- });
193
- if (!e) {
194
- t.unresolved.push(i.path);
195
- continue;
196
- }
197
- try {
198
- if (e === "cloud") await u(i.path, await n(i.path));
199
- else {
200
- let t = e === "local" ? await c(i.path) : e.merged;
201
- await r(i.path, t, i.contentType ? { contentType: i.contentType } : void 0), e !== "local" && await u(i.path, t);
202
- }
203
- T(i.path), t.resolved.push({
204
- path: i.path,
205
- choice: e === "local" || e === "cloud" ? e : "merged"
206
- });
207
- } catch (e) {
208
- if (e?.code === "FKN_E2E_LOCKED") throw e;
209
- t.failed.push({
210
- path: i.path,
211
- error: e instanceof Error ? e.message : String(e)
212
- });
213
- }
214
- continue;
215
- }
216
- try {
217
- let e = await c(i.path);
218
- await r(i.path, e, i.contentType ? { contentType: i.contentType } : void 0), T(i.path), t.uploaded.push(i.path);
219
- } catch (e) {
220
- if (w(i.path), e?.code === "FKN_E2E_LOCKED") throw e;
221
- t.failed.push({
222
- path: i.path,
223
- error: e instanceof Error ? e.message : String(e)
224
- });
225
- }
226
- }
227
- return t;
228
- }, V = async () => {
229
- for (; A;) await A;
230
- let e = B(!0);
231
- A = e.then(() => {}, () => {});
232
- try {
233
- return await e;
234
- } finally {
235
- A = null;
236
- }
237
- }, H = async () => {
238
- if (!await h() || !await p()) return {
239
- paths: [],
240
- bytes: 0
241
- };
242
- let [e, t] = await Promise.all([l(), a()]), n = new Set(t.map((e) => e.path)), r = e.filter((e) => !n.has(e.path));
243
- return {
244
- paths: r.map((e) => e.path),
245
- bytes: r.reduce((e, t) => e + t.size, 0)
246
- };
247
- }, pe = () => new Set(Object.keys(x(v))), me = (e) => {
248
- let t = x(v);
249
- for (let n of e) t[n] = null;
250
- S(v, t);
251
- }, U = null, W = (e) => U || (U = (async () => {
252
- if (!await h()) return;
253
- let t = e ?? (await p() ? {
254
- local: await l(),
255
- remote: await a()
256
- } : null);
257
- if (!t) return;
258
- let n = new Set(t.remote.map((e) => e.path)), r = pe(), i = t.local.filter((e) => !n.has(e.path) && !r.has(e.path));
259
- if (!i.length) return;
260
- let o = await L(), s = i.reduce((e, t) => e + t.size, 0);
261
- if (!await o.cloud.fs.promptAdopt({
262
- files: i.length,
263
- bytes: s
264
- }).catch(() => !1)) {
265
- me(i.map((e) => e.path));
266
- return;
267
- }
268
- await V();
269
- })().catch(() => {}).finally(() => {
270
- U = null;
271
- }), U), he = async (e, t) => {
272
- let n = new Set(t.map((e) => e.path)), r = e.filter((e) => !n.has(e.path)), i = await L(), a = async () => {
273
- await V().catch(() => {});
274
- let e = await H().catch(() => ({
275
- paths: [],
276
- bytes: 0
277
- }));
278
- await i.cloud.fs.setAdoptSource({
279
- files: e.paths.length,
280
- bytes: e.bytes
281
- }, a).catch(() => {});
282
- };
283
- await i.cloud.fs.setAdoptSource({
284
- files: r.length,
285
- bytes: r.reduce((e, t) => e + t.size, 0)
286
- }, a);
287
- }, ge = !1, G = () => {
288
- ge || typeof window > "u" || (ge = !0, window.addEventListener("online", () => {
289
- I();
290
- }), import("./account.js").then((e) => e.onChange(() => {
291
- W().catch(() => {}), I();
292
- })).catch(() => {}));
293
- }, _e = /* @__PURE__ */ e({
294
- adopt: () => J,
295
- adoptable: () => Y,
296
- appendFile: () => Pe,
297
- appendFileSync: () => Se,
298
- available: () => ye,
299
- default: () => Ge,
300
- exists: () => Ve,
301
- existsSync: () => Ce,
302
- flush: () => Ue,
303
- lstatSync: () => Te,
304
- mkdir: () => Le,
305
- mkdirSync: () => De,
306
- mount: () => He,
307
- onConflict: () => $,
308
- pending: () => X,
309
- pendingDeletes: () => Z,
310
- promises: () => K,
311
- pull: () => q,
312
- readFile: () => Me,
313
- readFileSync: () => be,
314
- readdir: () => Ie,
315
- readdirSync: () => Ee,
316
- remount: () => We,
317
- rename: () => Be,
318
- renameSync: () => je,
319
- replicating: () => Q,
320
- rm: () => Re,
321
- rmSync: () => Oe,
322
- rmdirSync: () => ke,
323
- stat: () => Fe,
324
- statSync: () => we,
325
- unlink: () => ze,
326
- unlinkSync: () => Ae,
327
- writeFile: () => Ne,
328
- writeFileSync: () => xe
329
- }), ve = t(ee, { memfs: !0 }), { available: ye, readFileSync: be, writeFileSync: xe, appendFileSync: Se, existsSync: Ce, statSync: we, lstatSync: Te, readdirSync: Ee, mkdirSync: De, rmSync: Oe, rmdirSync: ke, unlinkSync: Ae, renameSync: je, readFile: Me, writeFile: Ne, appendFile: Pe, stat: Fe, readdir: Ie, mkdir: Le, rm: Re, unlink: ze, rename: Be, exists: Ve, promises: K, mount: He, flush: Ue, remount: We } = ve, q = ue, J = V, Y = H, X = O, Z = k, Q = re, $ = z, Ge = {
330
- ...ve,
331
- pull: q,
332
- adopt: J,
333
- adoptable: Y,
334
- pending: X,
335
- pendingDeletes: Z,
336
- replicating: Q,
337
- onConflict: $
338
- };
339
- //#endregion
340
- export { ke as A, Ee as C, Q as D, je as E, Ne as F, xe as I, we as M, ze as N, Re as O, Ae as P, Ie as S, Be as T, Z as _, ye as a, Me as b, Ue as c, Te as d, Le as f, X as g, $ as h, Se as i, Fe as j, Oe as k, Ge as l, He as m, Y as n, Ve as o, De as p, Pe as r, Ce as s, J as t, _e as u, K as v, We as w, be as x, q as y };
package/fs-DJm0bhjg.cjs DELETED
@@ -1 +0,0 @@
1
- const e=require("./rolldown-runtime-BIInC43l.cjs"),t=require("./node-fs-BMR2yCEt.cjs"),n=require("./storage-BW-jDLUL.cjs"),r=require("./opfs-CXMESVLc.cjs");var i=e.t({adopt:()=>F,adoptable:()=>I,available:()=>l,list:()=>re,onConflict:()=>ce,pending:()=>C,pendingDeletes:()=>w,pull:()=>se,readFile:()=>ie,remove:()=>oe,replicating:()=>ee,writeFile:()=>ae}),a,o=async()=>await(a??=r.t().catch(()=>!1))?!0:(a=void 0,!1),s=()=>n.r().catch(()=>`unknown`),c=async()=>await s()===`connected`,l=async()=>await o()||await c(),u=`fkn:fs:pending`,d=`fkn:fs:pending-delete`,f=`fkn:fs:adopt-declined`,p=!0,m=new Map,h=e=>{try{let t=localStorage.getItem(e);if(!t)return{};let n=JSON.parse(t);return Array.isArray(n)?Object.fromEntries(n.filter(e=>typeof e==`string`).map(e=>[e,null])):n&&typeof n==`object`?n:{}}catch{return{}}},g=(e,t)=>{try{Object.keys(t).length?localStorage.setItem(e,JSON.stringify(t)):localStorage.removeItem(e)}catch{}},_=()=>h(u),v=(e,t)=>{let n=_();e in n||(n[e]=t===void 0?m.get(e)??null:t,g(u,n))},y=e=>{let t=_();e in t&&(delete t[e],g(u,t),E()||(O=D))},b=()=>h(d),x=e=>{let t=b();e in t||(t[e]=m.get(e)??null,g(d,t))},S=e=>{let t=b();e in t&&(delete t[e],g(d,t),E()||(O=D))},C=()=>Object.keys(_()),w=()=>Object.keys(b()),ee=()=>p,T=null,E=()=>Object.keys(_()).length>0||Object.keys(b()).length>0,D=6e4,te=10*6e4,O=D,k=null,A=()=>{k||typeof window>`u`||!E()||(k=setTimeout(()=>{k=null,j()},O),O=Math.min(O*2,te))},j=()=>{T||!E()||(T=P(!1).then(e=>{if(!E()){O=D;return}e.failed.length&&A()}).catch(()=>{A()}).finally(()=>{T=null}))},ne=null,M=()=>ne??=Promise.resolve().then(()=>require("./api-kHMHDGar.cjs")).then(e=>e.n).then(e=>e.apiPromise),re=async()=>{B();let e=await s(),t=e===`connected`,[i,a]=await Promise.all([o().then(e=>e?r.n():[]).catch(()=>[]),t?n.o().then(e=>({ok:!0,entries:e})).catch(()=>({ok:!1,entries:[]})):Promise.resolve({ok:e===`disconnected`,entries:[]})]);e!==`unknown`&&(p=a.ok),a.ok&&e!==`unknown`&&(m=new Map(a.entries.map(e=>[e.path,e.updatedAt])));let c=new Map,l=e=>{let t=Date.parse(e.updatedAt??``);return Number.isFinite(t)?t:0},u=e=>{let t=c.get(e.path);(!t||l(e)>=l(t))&&c.set(e.path,e)};for(let e of i)u(e);for(let e of a.entries)u(e);return a.ok&&t&&(pe(i,a.entries).catch(()=>{}),E()?j():R({local:i,remote:a.entries}).catch(()=>{})),[...c.values()]},ie=async e=>{if(await o())try{return await r.i(e)}catch(e){if(e?.name!==`NotFoundError`)throw e}let t=await n.c(e);return await o()&&r.o(e,t).catch(()=>{}),t},ae=async(e,t,i)=>{let a=t instanceof Blob?t:new Blob([t],i?.contentType?{type:i.contentType}:void 0);if(await o()){await r.o(e,a,i),B();let t=m.get(e)??null,o=await s();if(o===`disconnected`)return;if(o===`unknown`||!p){v(e,t),A();return}n.f(e,a,i).then(()=>y(e)).catch(n=>{v(e,t),A(),console.warn(`fs: cloud replicate failed, queued for adopt()`,n)});return}let c=await s();if(c===`connected`)return n.f(e,a,i);throw Error(c===`unknown`?`fs: cloud unreachable`:`fs: no storage backend available`)},oe=async e=>{B();let t=[];await o()&&t.push(r.a(e).catch(()=>{}));let i=await s();if(i===`connected`?t.push(n.l(e).then(()=>S(e)).catch(t=>{x(e),A(),console.warn(`fs: cloud delete failed, queued for retry`,t)})):i===`unknown`&&t.length&&m.has(e)&&(x(e),A()),!t.length)throw Error(i===`unknown`?`fs: cloud unreachable`:`fs: no storage backend available`);y(e),await Promise.all(t)},se=async e=>{let t=await n.c(e);return await o()&&await r.o(e,t),t},N=null,ce=e=>(N=e,()=>{N===e&&(N=null)}),le=async e=>(await M()).cloud.fs.promptConflict({path:e.path,local:e.local,cloud:e.cloud}).catch(()=>null),ue=async e=>{if(N)try{return await N(e)}catch{return null}return le(e)},P=async e=>{let t={uploaded:[],kept:[],resolved:[],unresolved:[],deleted:[],failed:[]},i=await s();if(i===`unknown`)throw Error(`fs: cloud unreachable`);if(i!==`connected`)throw Error(`fs: this needs a signed-in account`);let a=await o(),[c,l]=await Promise.all([a?r.n():Promise.resolve([]),n.o()]),u=new Map(l.map(e=>[e.path,e])),d=_();if(a)for(let e of Object.keys(d))c.some(t=>t.path===e)||y(e);for(let[e,r]of Object.entries(b())){let i=u.get(e);if(!i){S(e);continue}if(c.some(t=>t.path===e)){S(e);continue}if(i.updatedAt!==r){S(e);continue}try{await n.l(e),S(e),t.deleted.push(e)}catch(n){t.failed.push({path:e,error:n instanceof Error?n.message:String(n)})}}for(let i of c){let a=u.get(i.path),o=i.path in d;if(!o&&(a||!e)){a&&t.kept.push(i.path);continue}if(o&&a&&a.updatedAt!==d[i.path]){let e=await ue({path:i.path,local:{size:i.size,updatedAt:i.updatedAt},cloud:{size:a.size,updatedAt:a.updatedAt},readLocal:()=>r.i(i.path),readCloud:()=>n.c(i.path)});if(!e){t.unresolved.push(i.path);continue}try{if(e===`cloud`)await r.o(i.path,await n.c(i.path));else{let t=e===`local`?await r.i(i.path):e.merged;await n.f(i.path,t,i.contentType?{contentType:i.contentType}:void 0),e!==`local`&&await r.o(i.path,t)}y(i.path),t.resolved.push({path:i.path,choice:e===`local`||e===`cloud`?e:`merged`})}catch(e){if(e?.code===`FKN_E2E_LOCKED`)throw e;t.failed.push({path:i.path,error:e instanceof Error?e.message:String(e)})}continue}try{let e=await r.i(i.path);await n.f(i.path,e,i.contentType?{contentType:i.contentType}:void 0),y(i.path),t.uploaded.push(i.path)}catch(e){if(v(i.path),e?.code===`FKN_E2E_LOCKED`)throw e;t.failed.push({path:i.path,error:e instanceof Error?e.message:String(e)})}}return t},F=async()=>{for(;T;)await T;let e=P(!0);T=e.then(()=>{},()=>{});try{return await e}finally{T=null}},I=async()=>{if(!await c()||!await o())return{paths:[],bytes:0};let[e,t]=await Promise.all([r.n(),n.o()]),i=new Set(t.map(e=>e.path)),a=e.filter(e=>!i.has(e.path));return{paths:a.map(e=>e.path),bytes:a.reduce((e,t)=>e+t.size,0)}},de=()=>new Set(Object.keys(h(f))),fe=e=>{let t=h(f);for(let n of e)t[n]=null;g(f,t)},L=null,R=e=>L||(L=(async()=>{if(!await c())return;let t=e??(await o()?{local:await r.n(),remote:await n.o()}:null);if(!t)return;let i=new Set(t.remote.map(e=>e.path)),a=de(),s=t.local.filter(e=>!i.has(e.path)&&!a.has(e.path));if(!s.length)return;let l=await M(),u=s.reduce((e,t)=>e+t.size,0);if(!await l.cloud.fs.promptAdopt({files:s.length,bytes:u}).catch(()=>!1)){fe(s.map(e=>e.path));return}await F()})().catch(()=>{}).finally(()=>{L=null}),L),pe=async(e,t)=>{let n=new Set(t.map(e=>e.path)),r=e.filter(e=>!n.has(e.path)),i=await M(),a=async()=>{await F().catch(()=>{});let e=await I().catch(()=>({paths:[],bytes:0}));await i.cloud.fs.setAdoptSource({files:e.paths.length,bytes:e.bytes},a).catch(()=>{})};await i.cloud.fs.setAdoptSource({files:r.length,bytes:r.reduce((e,t)=>e+t.size,0)},a)},z=!1,B=()=>{z||typeof window>`u`||(z=!0,window.addEventListener(`online`,()=>{j()}),Promise.resolve().then(()=>require("./account.cjs")).then(e=>e.onChange(()=>{R().catch(()=>{}),j()})).catch(()=>{}))},me=e.t({adopt:()=>J,adoptable:()=>Y,appendFile:()=>Ee,appendFileSync:()=>G,available:()=>H,default:()=>Le,exists:()=>Ne,existsSync:()=>he,flush:()=>Fe,lstatSync:()=>_e,mkdir:()=>ke,mkdirSync:()=>ye,mount:()=>K,onConflict:()=>$,pending:()=>X,pendingDeletes:()=>Z,promises:()=>Pe,pull:()=>q,readFile:()=>we,readFileSync:()=>U,readdir:()=>Oe,readdirSync:()=>ve,remount:()=>Ie,rename:()=>Me,renameSync:()=>Ce,replicating:()=>Q,rm:()=>Ae,rmSync:()=>be,rmdirSync:()=>xe,stat:()=>De,statSync:()=>ge,unlink:()=>je,unlinkSync:()=>Se,writeFile:()=>Te,writeFileSync:()=>W}),V=t.t(i,{memfs:!0}),{available:H,readFileSync:U,writeFileSync:W,appendFileSync:G,existsSync:he,statSync:ge,lstatSync:_e,readdirSync:ve,mkdirSync:ye,rmSync:be,rmdirSync:xe,unlinkSync:Se,renameSync:Ce,readFile:we,writeFile:Te,appendFile:Ee,stat:De,readdir:Oe,mkdir:ke,rm:Ae,unlink:je,rename:Me,exists:Ne,promises:Pe,mount:K,flush:Fe,remount:Ie}=V,q=se,J=F,Y=I,X=C,Z=w,Q=ee,$=ce,Le={...V,pull:q,adopt:J,adoptable:Y,pending:X,pendingDeletes:Z,replicating:Q,onConflict:$};Object.defineProperty(exports,"A",{enumerable:!0,get:function(){return xe}}),Object.defineProperty(exports,"C",{enumerable:!0,get:function(){return ve}}),Object.defineProperty(exports,"D",{enumerable:!0,get:function(){return Q}}),Object.defineProperty(exports,"E",{enumerable:!0,get:function(){return Ce}}),Object.defineProperty(exports,"F",{enumerable:!0,get:function(){return Te}}),Object.defineProperty(exports,"I",{enumerable:!0,get:function(){return W}}),Object.defineProperty(exports,"M",{enumerable:!0,get:function(){return ge}}),Object.defineProperty(exports,"N",{enumerable:!0,get:function(){return je}}),Object.defineProperty(exports,"O",{enumerable:!0,get:function(){return Ae}}),Object.defineProperty(exports,"P",{enumerable:!0,get:function(){return Se}}),Object.defineProperty(exports,"S",{enumerable:!0,get:function(){return Oe}}),Object.defineProperty(exports,"T",{enumerable:!0,get:function(){return Me}}),Object.defineProperty(exports,"_",{enumerable:!0,get:function(){return Z}}),Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return H}}),Object.defineProperty(exports,"b",{enumerable:!0,get:function(){return we}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return Fe}}),Object.defineProperty(exports,"d",{enumerable:!0,get:function(){return _e}}),Object.defineProperty(exports,"f",{enumerable:!0,get:function(){return ke}}),Object.defineProperty(exports,"g",{enumerable:!0,get:function(){return X}}),Object.defineProperty(exports,"h",{enumerable:!0,get:function(){return $}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return G}}),Object.defineProperty(exports,"j",{enumerable:!0,get:function(){return De}}),Object.defineProperty(exports,"k",{enumerable:!0,get:function(){return be}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return Le}}),Object.defineProperty(exports,"m",{enumerable:!0,get:function(){return K}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return Y}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return Ne}}),Object.defineProperty(exports,"p",{enumerable:!0,get:function(){return ye}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return Ee}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return he}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return J}}),Object.defineProperty(exports,"u",{enumerable:!0,get:function(){return me}}),Object.defineProperty(exports,"v",{enumerable:!0,get:function(){return Pe}}),Object.defineProperty(exports,"w",{enumerable:!0,get:function(){return Ie}}),Object.defineProperty(exports,"x",{enumerable:!0,get:function(){return U}}),Object.defineProperty(exports,"y",{enumerable:!0,get:function(){return q}});
package/lib-ulyxIbTr.cjs DELETED
@@ -1,53 +0,0 @@
1
- const e=require("./rolldown-runtime-BIInC43l.cjs");let t=require("osra");var n=(e,t)=>{let n=new EventTarget,r=new Map,i=EventTarget.prototype.addEventListener.bind(n),a=EventTarget.prototype.removeEventListener.bind(n);return Object.defineProperty(n,"addEventListener",{configurable:!0,value:(a,o,s)=>{if(o!==null){if(!r.has(a)){let i=r=>{n.dispatchEvent(new CustomEvent(a,{detail:t(r,e),bubbles:r.bubbles,cancelable:r.cancelable,composed:r.composed}))};e.addEventListener(a,i),r.set(a,i)}i(a,o,s)}}}),Object.defineProperty(n,"removeEventListener",{configurable:!0,value:(t,n,i)=>{if(n===null)return;a(t,n,i);let o=r.get(t);o&&(e.removeEventListener(t,o),r.delete(t))}}),n},r=e=>typeof e==`boolean`?+!!e:+!!e?.capture,i=e=>{let t=new WeakMap;return{addEventListener:(n,i,a)=>{if(i===null)return;let o=`${n}|${r(a)}`,s=t.get(i);if(s||(s=new Map,t.set(i,s)),s.has(o))return;let c=typeof a==`object`&&!!a&&!!a.once,l=t=>{c&&s.delete(o);let r=e.unenrich(t,n);typeof i==`function`?i.call(e.target,r):i.handleEvent(r)};s.set(o,l),e.remoteEvents.addEventListener(n,l,a)},removeEventListener:(n,i,a)=>{if(i===null)return;let o=`${n}|${r(a)}`,s=t.get(i),c=s?.get(o);c&&(e.remoteEvents.removeEventListener(n,c,a),s.delete(o))},dispatchEvent:t=>e.remoteEvents.dispatchEvent(t)}},a=e.t({box:()=>S,createVideoElementHandle:()=>b,isType:()=>x,revive:()=>C,type:()=>o}),o=`videoElement`,s=[`currentTime`,`volume`,`muted`,`playbackRate`,`src`,`loop`,`autoplay`,`preload`,`poster`,`disableRemotePlayback`],c=[`duration`,`paused`,`ended`,`seeking`,`readyState`,`currentSrc`],l=[`buffered`,`seekable`],u=Symbol.for(`fkn.remoteVideoElement`),d=Symbol.for(`fkn.remoteVideoElement.state`),f=Symbol.for(`fkn.remoteVideoElement.controller`),p=e=>e?Array.from({length:e.length},(t,n)=>[e.start(n),e.end(n)]):[],m=e=>{let t={};for(let n of[...s,...c])t[n]=e[n];for(let n of l)t[n]=p(e[n]);return t.error=e.error?{code:e.error.code,message:e.error.message}:null,t},ee=e=>{let t=t=>{if(!Number.isInteger(t)||t<0||t>=e.length)throw new DOMException(`Index or size is negative or greater than the allowed amount`,`IndexSizeError`)};return{get length(){return e.length},start(n){return t(n),e[n][0]},end(n){return t(n),e[n][1]}}},h=e=>e?{code:e.code,message:e.message,MEDIA_ERR_ABORTED:1,MEDIA_ERR_NETWORK:2,MEDIA_ERR_DECODE:3,MEDIA_ERR_SRC_NOT_SUPPORTED:4}:null,g=e=>n(e,(e,t)=>({originalDetail:e instanceof CustomEvent?e.detail:null,snapshot:m(t)})),_=async(e,t)=>{switch(t){case`play`:return await e.play(),null;case`pause`:return e.pause(),null;case`load`:return e.load(),null;case`requestPictureInPicture`:if(typeof e.requestPictureInPicture!=`function`)throw Error(`requestPictureInPicture is not supported in this environment`);return await e.requestPictureInPicture(),null;case`exitPictureInPicture`:{let t=e.ownerDocument;if(typeof t?.exitPictureInPicture!=`function`)throw Error(`exitPictureInPicture is not supported in this environment`);return await t.exitPictureInPicture(),null}default:throw Error(`videoElement: unknown method "${t}"`)}},v=e=>({call:async t=>_(e,t),set:async(t,n)=>{try{e[t]=n}catch{}return m(e)},events:g(e)}),y=(e,t)=>{let n=new EventTarget;Object.defineProperty(n,u,{value:!0}),Object.defineProperty(n,d,{value:e}),Object.defineProperty(n,f,{value:t});let r=i({target:n,remoteEvents:t.events,unenrich:(t,n)=>{if(!(t instanceof CustomEvent))return t;let r=t.detail;if(!r||!(`snapshot`in r))return t;Object.assign(e,r.snapshot);let i={bubbles:t.bubbles,cancelable:t.cancelable,composed:t.composed};return r.originalDetail===null?new Event(n,i):new CustomEvent(n,{...i,detail:r.originalDetail})}}),a={addEventListener:{configurable:!0,value:r.addEventListener},removeEventListener:{configurable:!0,value:r.removeEventListener},dispatchEvent:{configurable:!0,value:r.dispatchEvent},error:{configurable:!0,enumerable:!0,get(){return h(e.error)}},play:{configurable:!0,value:()=>t.call(`play`,[])},pause:{configurable:!0,value:()=>{t.call(`pause`,[]).catch(()=>{})}},load:{configurable:!0,value:()=>{t.call(`load`,[]).catch(()=>{})}},requestPictureInPicture:{configurable:!0,value:()=>t.call(`requestPictureInPicture`,[])},exitPictureInPicture:{configurable:!0,value:()=>t.call(`exitPictureInPicture`,[])},HAVE_FUTURE_DATA:{enumerable:!0,value:3},HAVE_ENOUGH_DATA:{enumerable:!0,value:4}};for(let n of s)a[n]={configurable:!0,enumerable:!0,get(){return e[n]},set(r){e[n]=r,t.set(n,r).then(t=>{Object.assign(e,t)},()=>{})}};for(let t of c)a[t]={configurable:!0,enumerable:!0,get(){return e[t]}};for(let t of l)a[t]={configurable:!0,enumerable:!0,get(){return ee(e[t])}};return Object.defineProperties(n,a),n},b=e=>y(m(e),v(e)),x=e=>typeof e==`object`&&!!e&&e[u]===!0,S=(e,n)=>{let r=e;return{...t.BoxBase,type:o,initialState:r[d],controller:(0,t.recursiveBox)(r[f],n)}},C=(e,n)=>{let r=(0,t.recursiveRevive)(e.controller,n);return y({...e.initialState},r)},w=e=>[a,...e],T=`FKN_WEB_EXTENSION_MAIN_WORLD_CONTENT_SCRIPT_ENABLED_EVENT_KEY`,te=`fknExtension`,E=(0,t.createTypedEventTarget)();typeof document<`u`&&document.addEventListener(T,()=>{E.dispatchEvent(new CustomEvent(`statuschange`,{detail:{enabled:D()}}))});var D=()=>typeof document>`u`?!1:document.documentElement.dataset[te]===`true`,O=null,ne=e=>{O=e},re=150,k=(e=1e3)=>new Promise((t,n)=>{if(D())return t();let r,i=e=>{clearTimeout(r),s.disconnect(),document.removeEventListener(`readystatechange`,c),e()},a=()=>i(async()=>{if(O&&(await O().catch(()=>{}),D()))return t();n(Error(`The FKN WebExtension is not installed, enabled or not exposed on this page.`))}),o=()=>{clearTimeout(r),r=setTimeout(()=>D()?i(t):a(),re)},s=new MutationObserver(()=>{D()&&i(t)}),c=()=>{document.readyState===`complete`&&!D()&&o()};if(r=setTimeout(a,e),s.observe(document.documentElement,{attributes:!0,attributeFilter:[`data-fkn-extension`]}),document.addEventListener(`readystatechange`,c),document.readyState===`complete`)return o();D()&&i(t)}),A,j=new Proxy({},{get:(e,n)=>async(...e)=>{await k(),A??=(0,t.expose)({},{transport:window,revivableModules:w});let r=(await A)[n];return r(...e)}}),M=[`origin`,`referer`,`cookie`],ie=(e,t)=>(e??[]).some(([e,n])=>e.trim().toLowerCase()===t&&n!==``),ae=e=>ie(e,`cookie`),oe=(e,t)=>{if(t===`include`&&ae(e))throw Error(`fetch: a forged Cookie header and credentials:'include' are different identities - send one or the other`)},se=e=>{let t=[...new Set((e??[]).map(([e])=>e.trim().toLowerCase()).filter(e=>!M.includes(e)))];if(t.length)throw Error(`fetch: refusing to forge request header(s): ${t.join(`, `)}`)},ce={scope:`network.fetch`,category:`network`,severity:0,title:`Fetch data from other sites`,description:`Lets the app download public data from other websites directly, past the usual cross-origin limits.`},le={scope:`network.fetchCredentialed`,category:`network`,severity:3,unsafe:!0,title:`Fetch from other sites, signed in as you`,description:`Lets the app fetch other sites using your logged-in session cookies, so it can read data only you should see.`},ue={scope:`network.fetchLocal`,category:`network`,severity:3,unsafe:!0,title:`Access devices on your local network`,description:`Lets the app reach devices and services on your home or work network, which websites normally cannot touch.`},de=e=>{let t=e.match(/^(\d+)\.(\d+)\.\d+\.\d+$/);if(!t)return!1;let[n,r]=[Number(t[1]),Number(t[2])];return n===10||n===127||n===0||n===169&&r===254||n===172&&r>=16&&r<=31||n===192&&r===168},fe=e=>{let t;try{t=new URL(e)}catch{return!1}let n=t.hostname.replace(/^\[|\]$/g,``).toLowerCase().replace(/\.$/,``);return n===`localhost`||n.endsWith(`.localhost`)||n.endsWith(`.local`)||n.endsWith(`.internal`)||n.endsWith(`.home.arpa`)?!0:n.includes(`:`)?n===`::`||n===`::1`||n.startsWith(`fc`)||n.startsWith(`fd`)||/^fe[89ab]/.test(n)||n.startsWith(`::ffff:`):de(n)},pe=[`fkn.app`,`fkn.dev`],me=e=>{let t;try{t=new URL(e)}catch{return!1}if(t.protocol===`chrome-extension:`||t.protocol===`moz-extension:`)return!0;let n=t.hostname;return pe.some(e=>n===e||n.endsWith(`.${e}`))},he=e=>{if(me(e))throw Error(`fetch: refusing to target the extension's own pages or FKN platform domains`)},ge=e=>{if(!e?.headers)return;let t=new Headers(e.headers),n=M.map(e=>{let n=t.get(e);return n===null||n===``?void 0:[e,n]}).filter(e=>e!==void 0);return n.length?n:void 0},_e=async(e,t)=>{let n=new Request(e,t);he(n.url);let r=n.body?await n.arrayBuffer():null;return j.proxyFetch({url:n.url,method:n.method,headers:[...n.headers],body:r,credentials:t?.credentials===`include`?`include`:`omit`,redirect:n.redirect,unsafeHeaders:ge(t),reason:t?.reason,signal:t?.signal??void 0})},ve={scope:`network.readCookie`,category:`network`,severity:3,unsafe:!0,title:`Read a site’s cookie`,description:`Lets the app read a named cookie from another site, which can include the login token only that site should see.`},ye={get:e=>j.getCookie(e)},be={scope:`network.modifyRequestHeaders`,category:`network`,severity:2,unsafe:!0,title:`Rewrite request headers to other sites`,description:`Lets the app set or remove headers (like Origin and Referer) on this page’s own requests to the listed sites.`},xe=e=>j.setRequestHeaderRule(e),Se=e=>j.removeRequestHeaderRule({ruleId:e}),Ce=class extends Error{reason;filename;line;column;source;constructor(e,t,n,r,i){super(`${e}:${n}:${r}: ${t}`),this.reason=t,this.filename=e,this.line=n,this.column=r,this.source=i}},we=class{start;end;source;constructor(e,t,n){this.start=e,this.end=t,this.source=n}},N;(function(e){e.stylesheet=`stylesheet`,e.rule=`rule`,e.declaration=`declaration`,e.comment=`comment`,e.atRule=`at-rule`,e.container=`container`,e.charset=`charset`,e.counterStyle=`counter-style`,e.document=`document`,e.customMedia=`custom-media`,e.fontFace=`font-face`,e.fontFeatureValues=`font-feature-values`,e.host=`host`,e.import=`import`,e.keyframes=`keyframes`,e.keyframe=`keyframe`,e.layer=`layer`,e.media=`media`,e.namespace=`namespace`,e.page=`page`,e.pageMarginBox=`page-margin-box`,e.positionTry=`position-try`,e.property=`property`,e.scope=`scope`,e.startingStyle=`starting-style`,e.supports=`supports`,e.viewTransition=`view-transition`})(N||={});var P=(e,t,n)=>{let r=n,i=1e4;do{let n=t.map(t=>e.indexOf(t,r));n.push(e.indexOf(`\\`,r));let a=n.filter(e=>e!==-1);if(a.length===0)return-1;let o=Math.min(...a);if(e[o]!==`\\`)return o;r=o+2,i--}while(i>0);throw Error(`Too many escaping`)},F=(e,t,n)=>{let r=n,i=1e4;do{let n=t.map(t=>e.indexOf(t,r));n.push(e.indexOf(`(`,r)),n.push(e.indexOf(`"`,r)),n.push(e.indexOf(`'`,r)),n.push(e.indexOf(`\\`,r));let a=n.filter(e=>e!==-1);if(a.length===0)return-1;let o=Math.min(...a);switch(e[o]){case`\\`:r=o+2;break;case`(`:{let t=F(e,[`)`],o+1);if(t===-1)return-1;r=t+1}break;case`"`:{let t=P(e,[`"`],o+1);if(t===-1)return-1;r=t+1}break;case`'`:{let t=P(e,[`'`],o+1);if(t===-1)return-1;r=t+1}break;default:return o}i--}while(i>0);throw Error(`Too many escaping`)},I=/\/\*[^]*?(?:\*\/|$)/g;function L(e){return e?e.trim():``}function R(e,t){let n=e&&typeof e.type==`string`,r=n?e:t;for(let t in e){let n=e[t];Array.isArray(n)?n.forEach(e=>{R(e,r)}):n&&typeof n==`object`&&R(n,r)}return n&&Object.defineProperty(e,"parent",{configurable:!0,writable:!0,enumerable:!1,value:t||null}),e}var Te=class{level=0;indentation=` `;compress=!1;constructor(e){typeof e?.indent==`string`&&(this.indentation=e?.indent),e?.compress&&(this.compress=!0)}emit(e,t){return e}indent(e){return this.level=this.level||1,e?(this.level+=e,``):Array(this.level).join(this.indentation)}visit(e){switch(e.type){case N.stylesheet:return this.stylesheet(e);case N.rule:return this.rule(e);case N.declaration:return this.declaration(e);case N.comment:return this.comment(e);case N.container:return this.container(e);case N.charset:return this.charset(e);case N.counterStyle:return this.counterStyle(e);case N.document:return this.document(e);case N.customMedia:return this.customMedia(e);case N.fontFace:return this.fontFace(e);case N.fontFeatureValues:return this.fontFeatureValues(e);case N.host:return this.host(e);case N.import:return this.import(e);case N.keyframes:return this.keyframes(e);case N.keyframe:return this.keyframe(e);case N.layer:return this.layer(e);case N.media:return this.media(e);case N.namespace:return this.namespace(e);case N.page:return this.page(e);case N.pageMarginBox:return this.pageMarginBox(e);case N.positionTry:return this.positionTry(e);case N.property:return this.property(e);case N.scope:return this.scope(e);case N.startingStyle:return this.startingStyle(e);case N.supports:return this.supports(e);case N.viewTransition:return this.viewTransition(e);case N.atRule:return this.genericAtRule(e)}}mapVisit(e,t){let n=``;t||=``;for(let r=0,i=e.length;r<i;r++)n+=this.visit(e[r]),t&&r<i-1&&(n+=this.emit(t));return n}compile(e){return this.compress?e.stylesheet.rules.map(this.visit,this).join(``):this.stylesheet(e)}stylesheet(e){return this.mapVisit(e.stylesheet.rules,`
2
-
3
- `)}comment(e){return this.compress?this.emit(``,e.position):this.emit(`${this.indent()}/*${e.comment}*/`,e.position)}container(e){return this.compress?this.emit(`@container ${e.container}`,e.position)+this.emit(`{`)+this.mapVisit(e.rules)+this.emit(`}`):this.emit(`${this.indent()}@container ${e.container}`,e.position)+this.emit(` {\n${this.indent(1)}`)+this.mapVisit(e.rules,`
4
-
5
- `)+this.emit(`\n${this.indent(-1)}${this.indent()}}`)}layer(e){return this.compress?this.emit(`@layer ${e.layer}`,e.position)+(e.rules?this.emit(`{`)+this.mapVisit(e.rules)+this.emit(`}`):`;`):this.emit(`${this.indent()}@layer ${e.layer}`,e.position)+(e.rules?this.emit(` {\n${this.indent(1)}`)+this.mapVisit(e.rules,`
6
-
7
- `)+this.emit(`\n${this.indent(-1)}${this.indent()}}`):`;`)}import(e){return this.emit(`@import ${e.import};`,e.position)}media(e){return this.compress?this.emit(`@media ${e.media}`,e.position)+this.emit(`{`)+this.mapVisit(e.rules)+this.emit(`}`):this.emit(`${this.indent()}@media ${e.media}`,e.position)+this.emit(` {\n${this.indent(1)}`)+this.mapVisit(e.rules,`
8
-
9
- `)+this.emit(`\n${this.indent(-1)}${this.indent()}}`)}document(e){let t=`@${e.vendor||``}document ${e.document}`;return this.compress?this.emit(t,e.position)+this.emit(`{`)+this.mapVisit(e.rules)+this.emit(`}`):this.emit(t,e.position)+this.emit(` {\n${this.indent(1)}`)+this.mapVisit(e.rules,`
10
-
11
- `)+this.emit(`${this.indent(-1)}\n}`)}charset(e){return this.emit(`@charset ${e.charset};`,e.position)}namespace(e){return this.emit(`@namespace ${e.namespace};`,e.position)}startingStyle(e){return this.compress?this.emit(`@starting-style`,e.position)+this.emit(`{`)+this.mapVisit(e.rules)+this.emit(`}`):this.emit(`${this.indent()}@starting-style`,e.position)+this.emit(` {\n${this.indent(1)}`)+this.mapVisit(e.rules,`
12
-
13
- `)+this.emit(`\n${this.indent(-1)}${this.indent()}}`)}supports(e){return this.compress?this.emit(`@supports ${e.supports}`,e.position)+this.emit(`{`)+this.mapVisit(e.rules)+this.emit(`}`):this.emit(`${this.indent()}@supports ${e.supports}`,e.position)+this.emit(` {\n${this.indent(1)}`)+this.mapVisit(e.rules,`
14
-
15
- `)+this.emit(`\n${this.indent(-1)}${this.indent()}}`)}keyframes(e){return this.compress?this.emit(`@${e.vendor||``}keyframes ${e.name}`,e.position)+this.emit(`{`)+this.mapVisit(e.keyframes)+this.emit(`}`):this.emit(`@${e.vendor||``}keyframes ${e.name}`,e.position)+this.emit(` {\n${this.indent(1)}`)+this.mapVisit(e.keyframes,`
16
- `)+this.emit(`${this.indent(-1)}}`)}keyframe(e){let t=e.declarations;return this.compress?this.emit(e.values.join(`,`),e.position)+this.emit(`{`)+this.mapVisit(t)+this.emit(`}`):this.emit(this.indent())+this.emit(e.values.join(`, `),e.position)+this.emit(` {\n${this.indent(1)}`)+this.mapVisit(t,`
17
- `)+this.emit(`${this.indent(-1)}\n${this.indent()}}\n`)}page(e){if(this.compress){let t=e.selectors.length?e.selectors.join(`, `):``;return this.emit(`@page ${t}`,e.position)+this.emit(`{`)+this.mapVisit(e.declarations)+this.emit(`}`)}let t=e.selectors.length?`${e.selectors.join(`, `)} `:``;return this.emit(`@page ${t}`,e.position)+this.emit(`{
18
- `)+this.emit(this.indent(1))+this.mapVisit(e.declarations,`
19
- `)+this.emit(this.indent(-1))+this.emit(`
20
- }`)}pageMarginBox(e){return this.compress?this.emit(`@${e.name}`,e.position)+this.emit(`{`)+this.mapVisit(e.declarations)+this.emit(`}`):this.emit(`${this.indent()}@${e.name} `,e.position)+this.emit(`{
21
- `)+this.emit(this.indent(1))+this.mapVisit(e.declarations,`
22
- `)+this.emit(this.indent(-1))+this.emit(`\n${this.indent()}}`)}fontFace(e){return this.compress?this.emit(`@font-face`,e.position)+this.emit(`{`)+this.mapVisit(e.declarations)+this.emit(`}`):this.emit(`@font-face `,e.position)+this.emit(`{
23
- `)+this.emit(this.indent(1))+this.mapVisit(e.declarations,`
24
- `)+this.emit(this.indent(-1))+this.emit(`
25
- }`)}host(e){return this.compress?this.emit(`@host`,e.position)+this.emit(`{`)+this.mapVisit(e.rules)+this.emit(`}`):this.emit(`@host`,e.position)+this.emit(` {\n${this.indent(1)}`)+this.mapVisit(e.rules,`
26
-
27
- `)+this.emit(`${this.indent(-1)}\n}`)}customMedia(e){return this.emit(`@custom-media ${e.name} ${e.media};`,e.position)}property(e){return this.compress?this.emit(`@property ${e.name}`,e.position)+this.emit(`{`)+this.mapVisit(e.declarations)+this.emit(`}`):this.emit(`@property ${e.name} `,e.position)+this.emit(`{
28
- `)+this.emit(this.indent(1))+this.mapVisit(e.declarations,`
29
- `)+this.emit(this.indent(-1))+this.emit(`
30
- }`)}counterStyle(e){return this.compress?this.emit(`@counter-style ${e.name}`,e.position)+this.emit(`{`)+this.mapVisit(e.declarations)+this.emit(`}`):this.emit(`@counter-style ${e.name} `,e.position)+this.emit(`{
31
- `)+this.emit(this.indent(1))+this.mapVisit(e.declarations,`
32
- `)+this.emit(this.indent(-1))+this.emit(`
33
- }`)}fontFeatureValues(e){return this.compress?this.emit(`@font-feature-values ${e.fontFamily}`,e.position)+this.emit(`{`)+this.mapVisit(e.rules)+this.emit(`}`):this.emit(`${this.indent()}@font-feature-values ${e.fontFamily}`,e.position)+this.emit(` {\n${this.indent(1)}`)+this.mapVisit(e.rules,`
34
-
35
- `)+this.emit(`\n${this.indent(-1)}${this.indent()}}`)}scope(e){let t=e.scope?` ${e.scope}`:``;return this.compress?this.emit(`@scope${t}`,e.position)+this.emit(`{`)+this.mapVisit(e.rules)+this.emit(`}`):this.emit(`${this.indent()}@scope${t}`,e.position)+this.emit(` {\n${this.indent(1)}`)+this.mapVisit(e.rules,`
36
-
37
- `)+this.emit(`\n${this.indent(-1)}${this.indent()}}`)}viewTransition(e){return this.compress?this.emit(`@view-transition`,e.position)+this.emit(`{`)+this.mapVisit(e.declarations)+this.emit(`}`):this.emit(`@view-transition `,e.position)+this.emit(`{
38
- `)+this.emit(this.indent(1))+this.mapVisit(e.declarations,`
39
- `)+this.emit(this.indent(-1))+this.emit(`
40
- }`)}positionTry(e){return this.compress?this.emit(`@position-try ${e.name}`,e.position)+this.emit(`{`)+this.mapVisit(e.declarations)+this.emit(`}`):this.emit(`@position-try ${e.name} `,e.position)+this.emit(`{
41
- `)+this.emit(this.indent(1))+this.mapVisit(e.declarations,`
42
- `)+this.emit(this.indent(-1))+this.emit(`
43
- }`)}genericAtRule(e){let t=e.prelude?` ${e.prelude}`:``;if(this.compress)return this.emit(`@${e.name}${t}`,e.position)+(e.rules?this.emit(`{`)+this.mapVisit(e.rules)+this.emit(`}`):`;`);if(!e.rules)return this.emit(`${this.indent()}@${e.name}${t};`,e.position);let n=e.rules.some(e=>e.type!==N.declaration&&e.type!==N.comment),r=n?`
44
-
45
- `:`
46
- `;return this.emit(`${this.indent()}@${e.name}${t}`,e.position)+this.emit(n?` {\n${this.indent(1)}`:` {
47
- `)+this.emit(n?``:this.indent(1))+this.mapVisit(e.rules,r)+this.emit(n?`\n${this.indent(-1)}${this.indent()}}`:`${this.indent(-1)}\n${this.indent()}}`)}rule(e){let t=e.declarations;if(!t.length)return``;if(this.compress)return this.emit(e.selectors.join(`,`),e.position)+this.emit(`{`)+this.mapVisit(t)+this.emit(`}`);let n=this.indent();return this.emit(e.selectors.map(e=>n+e).join(`,
48
- `),e.position)+this.emit(` {
49
- `)+this.emit(this.indent(1))+this.mapVisit(t,`
50
- `)+this.emit(this.indent(-1))+this.emit(`\n${this.indent()}}`)}declaration(e){return this.compress?this.emit(`${e.property}:${e.value}`,e.position)+this.emit(`;`):e.property===`grid-template-areas`?this.emit(this.indent())+this.emit(e.property+`: `+e.value.split(`
51
- `).join(`
52
- `.padEnd(22)+this.indent()),e.position)+this.emit(`;`):this.emit(this.indent())+this.emit(`${e.property}: ${e.value}`,e.position)+this.emit(`;`)}},Ee=(e,t)=>{t||={};let n=1,r=1;function i(){let e={line:n,column:r};return i=>(i.position=new we(e,{line:n,column:r},t?.source||``),u(),i)}let a=[];function o(i){let o=new Ce(t?.source||``,i,n,r,e);if(!t?.silent)throw o;a.push(o)}function s(){let t=/^{\s*/.exec(e);return!!t&&(l(t),!0)}function c(){let t=/^}/.exec(e);return!!t&&(l(t),!0)}function l(t){let i=t[0];return function(e){let t=e.match(/\n/g);t&&(n+=t.length);let i=e.lastIndexOf(`
53
- `);r=~i?e.length-i:r+e.length}(i),e=e.slice(i.length),t}function u(){let t=/^\s*/.exec(e);t&&l(t)}function d(e){e||=[];let t=f();for(;t;)e.push(t),t=f();return e}function f(){let t=i();if(e.charAt(0)!==`/`||e.charAt(1)!==`*`)return;let n=/^\/\*[^]*?\*\//.exec(e);return n?(l(n),t({type:N.comment,comment:n[0].slice(2,-2)})):o(`End of comment missing`)}function p(){let t=F(e,[`{`]);if(t===-1||t===0)return;let n=e.substring(0,t);return l([n]),((e,t)=>{let n=[],r=0;for(;r<e.length;){let i=F(e,t,r);if(i===-1)return n.push(e.substring(r)),n;n.push(e.substring(r,i)),r=i+1}return n})(L(n).replace(I,``),[`,`]).map(e=>L(e))}function m(){let t=i(),n=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/.exec(e);if(!n)return;l(n);let r=L(n[0]),a=/^:\s*/.exec(e);if(!a)return o(`property missing ':'`);l(a);let s=``,c=F(e,[`;`,`}`]);c!==-1&&(s=e.substring(0,c),l([s]),s=L(s).replace(I,``));let u=t({type:N.declaration,property:r.replace(I,``),value:s}),d=/^[;\s]*/.exec(e);return d&&l(d),u}function ee(){let n=[];if(!s())return o(`missing '{'`);d(n);let r=m();for(;r;)n.push(r),d(n),r=m();for(;t?.silent&&e.length&&e.charAt(0)!==`}`;){let t=e.indexOf(`;`),i=e.indexOf(`}`);if(t===-1||!(i===-1||t<i))break;for(l([e.substring(0,t+1)]),u(),d(n),r=m();r;)n.push(r),d(n),r=m()}return c()?n:o(`missing '}'`)}function h(){let t=F(e,[`{`]);if(t===-1)return!1;let n=F(e,[`;`]),r=F(e,[`}`]);return!(n!==-1&&n<t)&&!(r!==-1&&r<t)}function g(){let n=[];if(!s())return o(`missing '{'`);for(d(n);e.length&&e.charAt(0)!==`}`;){if(e.charAt(0)===`@`){let e=w();if(e){n.push(e),d(n);continue}}if(h()){let e=T();if(e){n.push(e),d(n);continue}}let r=m();if(!r){if(t?.silent){let t=e.indexOf(`;`),r=e.indexOf(`}`);if(t!==-1&&(r===-1||t<r)){l([e.substring(0,t+1)]),u(),d(n);continue}}break}n.push(r),d(n)}return c()?n:o(`missing '}'`)}function _(){let n=[];for(u(),d(n);e.length&&e.charAt(0)!==`}`;){if(e.charAt(0)===`@`){let e=w();if(e){n.push(e),d(n);continue}}if(h()){let e=T();if(e){n.push(e),d(n);continue}}let r=m();if(!r){if(t?.silent){let t=e.indexOf(`;`),r=e.indexOf(`}`);if(t!==-1&&(r===-1||t<r)){l([e.substring(0,t+1)]),u(),d(n);continue}}break}n.push(r),d(n)}return n}function v(){let t=[],n=i(),r=/^((\d+\.\d+|\.\d+|\d+)%?|[a-z]+)\s*/.exec(e);for(;r;){let n=l(r);t.push(n[1]);let i=/^,\s*/.exec(e);i&&l(i),r=/^((\d+\.\d+|\.\d+|\d+)%?|[a-z]+)\s*/.exec(e)}if(t.length)return n({type:N.keyframe,values:t,declarations:ee()||[]})}let y=RegExp(`^@(${[`top-left-corner`,`top-left`,`top-center`,`top-right`,`top-right-corner`,`bottom-left-corner`,`bottom-left`,`bottom-center`,`bottom-right`,`bottom-right-corner`,`left-top`,`left-middle`,`left-bottom`,`right-top`,`right-middle`,`right-bottom`].join(`|`)})(?![\\w-])\\s*`),b=C(`import`),x=C(`charset`),S=C(`namespace`);function C(t){let n=RegExp(`^@`+t+`\\s*((?::?[^;'"]|"(?:\\\\"|[^"])*?"|'(?:\\\\'|[^'])*?')+)(?:;|$)`);return()=>{let r=i(),a=n.exec(e);if(!a)return;let o=l(a),s={type:t};return s[t]=o[1].trim(),r(s)}}function w(){if(e[0]===`@`)return function(){let t=i(),n=/^@([-\w]+)?keyframes\s*/.exec(e);if(!n)return;let r=l(n)[1],a=/^([-\w]+)\s*/.exec(e);if(!a)return o(`@keyframes missing name`);let u=l(a)[1];if(!s())return o(`@keyframes missing '{'`);let f=d(),p=v();for(;p;)f.push(p),f=f.concat(d()),p=v();return c()?t({type:N.keyframes,name:u,vendor:r,keyframes:f}):o(`@keyframes missing '}'`)}()||function(){let t=i(),n=/^@media *([^{]+)/.exec(e);if(!n)return;let r=L(l(n)[1]);if(!s())return o(`@media missing '{'`);let a=_();return c()?t({type:N.media,media:r,rules:a}):o(`@media missing '}'`)}()||function(){let t=i(),n=/^@custom-media\s+(--\S+)\s+([^{;\s][^{;]*);/.exec(e);if(!n)return;let r=l(n);return t({type:N.customMedia,name:L(r[1]),media:L(r[2])})}()||function(){let t=i(),n=/^@supports *([^{]+)/.exec(e);if(!n)return;let r=L(l(n)[1]);if(!s())return o(`@supports missing '{'`);let a=_();return c()?t({type:N.supports,supports:r,rules:a}):o(`@supports missing '}'`)}()||b()||x()||S()||function(){let t=i(),n=/^@([-\w]+)?document *([^{]+)/.exec(e);if(!n)return;let r=l(n),a=L(r[1]),u=L(r[2]);if(!s())return o(`@document missing '{'`);let d=_();return c()?t({type:N.document,document:u,vendor:a,rules:d}):o(`@document missing '}'`)}()||function(){let t=i(),n=/^@page */.exec(e);if(!n)return;l(n);let r=p()||[];if(!s())return o(`@page missing '{'`);let a=[];for(d(a);e.length&&e.charAt(0)!==`}`;){if(e.charAt(0)===`@`){let e=w();if(e){a.push(e),d(a);continue}}let t=m();if(!t)break;a.push(t),d(a)}return c()?t({type:N.page,selectors:r,declarations:a}):o(`@page missing '}'`)}()||function(){let t=i(),n=/^@host\s*/.exec(e);if(!n)return;if(l(n),!s())return o(`@host missing '{'`);let r=_();return c()?t({type:N.host,rules:r}):o(`@host missing '}'`)}()||function(){let t=i(),n=/^@font-face\s*/.exec(e);if(!n)return;if(l(n),!s())return o(`@font-face missing '{'`);let r=d(),a=m();for(;a;)r.push(a),r=r.concat(d()),a=m();return c()?t({type:N.fontFace,declarations:r}):o(`@font-face missing '}'`)}()||function(){let t=i(),n=/^@font-feature-values\s+([^{]+)/.exec(e);if(!n)return;let r=L(l(n)[1]);if(!s())return o(`@font-feature-values missing '{'`);let a=_();return c()?t({type:N.fontFeatureValues,fontFamily:r,rules:a}):o(`@font-feature-values missing '}'`)}()||function(){let t=i(),n=/^@container *([^{]+)/.exec(e);if(!n)return;let r=L(l(n)[1]);if(!s())return o(`@container missing '{'`);let a=_();return c()?t({type:N.container,container:r,rules:a}):o(`@container missing '}'`)}()||function(){let t=i(),n=/^@starting-style\s*/.exec(e);if(!n)return;if(l(n),!s())return o(`@starting-style missing '{'`);let r=_();return c()?t({type:N.startingStyle,rules:r}):o(`@starting-style missing '}'`)}()||function(){let t=i(),n=/^@layer *([^{;@]+)/.exec(e);if(!n)return;let r=L(l(n)[1]);if(!s()){let n=/^[;\s]*/.exec(e);return n&&l(n),t({type:N.layer,layer:r})}let a=_();return c()?t({type:N.layer,layer:r,rules:a}):o(`@layer missing '}'`)}()||function(){let t=i(),n=/^@property\s+(--[-\w]+)\s*/.exec(e);if(!n)return;let r=l(n)[1];if(!s())return o(`@property missing '{'`);let a=d(),u=m();for(;u;)a.push(u),a=a.concat(d()),u=m();return c()?t({type:N.property,name:r,declarations:a}):o(`@property missing '}'`)}()||function(){let t=i(),n=/^@counter-style\s+([-\w]+)\s*/.exec(e);if(!n)return;let r=l(n)[1];if(!s())return o(`@counter-style missing '{'`);let a=d(),u=m();for(;u;)a.push(u),a=a.concat(d()),u=m();return c()?t({type:N.counterStyle,name:r,declarations:a}):o(`@counter-style missing '}'`)}()||function(){let t=i(),n=/^@scope\s*([^{]*)/.exec(e);if(!n)return;let r=L(l(n)[1]);if(!s())return o(`@scope missing '{'`);let a=_();return c()?t({type:N.scope,scope:r,rules:a}):o(`@scope missing '}'`)}()||function(){let t=i(),n=/^@view-transition\s*/.exec(e);if(!n)return;if(l(n),!s())return o(`@view-transition missing '{'`);let r=d(),a=m();for(;a;)r.push(a),r=r.concat(d()),a=m();return c()?t({type:N.viewTransition,declarations:r}):o(`@view-transition missing '}'`)}()||function(){let t=i(),n=/^@position-try\s+(--[-\w]+)\s*/.exec(e);if(!n)return;let r=l(n)[1];if(!s())return o(`@position-try missing '{'`);let a=d(),u=m();for(;u;)a.push(u),a=a.concat(d()),u=m();return c()?t({type:N.positionTry,name:r,declarations:a}):o(`@position-try missing '}'`)}()||function(){let t=i(),n=y.exec(e);if(!n)return;let r=l(n)[1];if(!s())return o(`@${r} missing '{'`);let a=d(),u=m();for(;u;)a.push(u),a=a.concat(d()),u=m();return c()?t({type:N.pageMarginBox,name:r,declarations:a}):o(`@${r} missing '}'`)}()||function(){let t=i(),n=/^@([-\w]+)\s*/.exec(e);if(!n)return;let r=l(n)[1],a=``,u=F(e,[`{`,`;`]);if(u!==-1&&u>0&&(a=L(e.substring(0,u)),l([e.substring(0,u)])),s()){let e=_();return c()?t({type:N.atRule,name:r,prelude:a,rules:e}):o(`@${r} missing '}'`)}let d=/^[;\s]*/.exec(e);return d&&l(d),t({type:N.atRule,name:r,prelude:a})}()}function T(){let e=i(),t=p();return t?(d(),e({type:N.rule,selectors:t,declarations:g()||[]})):o(`selector missing`)}return R(function(){let n=function(){let n,r=[];for(u(),d(r);e.length;){if(e.charAt(0)===`}`){if(t?.silent){o(`extra '}'`),l([`}`]),u(),d(r);continue}break}if(n=w()||T(),!n){if(t?.silent){l([e.charAt(0)]),u(),d(r);continue}break}r.push(n),d(r)}return r}();return{type:N.stylesheet,stylesheet:{source:t?.source,rules:n,parsingErrors:a}}}())},De=(e,t)=>new Te(t||{}).compile(e),Oe=`LocatorError`,z=`LocatorUnsupportedError`,ke=`LocatorDeniedError`,Ae=e=>typeof e==`object`&&e?e.name:void 0,B=e=>Object.assign(Error(e),{name:Oe}),je=(e,t=``,n)=>Object.assign(Error(e),{name:z,operation:t,backend:n}),Me=(e,t)=>je(`Locator operation not supported${t?` on the ${t} backend`:``}: ${e}`,e,t),V=e=>Ae(e)===z,H=e=>Ae(e)===ke,U=e=>H(e)||V(e),W=e=>{let t=(e.ownerDocument??e).defaultView;if(!t)throw B(`the resolved element belongs to a document with no window`);return t},G=(e,t)=>{let n=e?.[t];return typeof n==`function`?n:null},K=(e,t)=>{if(typeof e!=`object`||!e)return null;let n=(()=>{try{return G(W(e),t)}catch{return null}})();if(n&&e instanceof n)return n;let r=G(globalThis,t);return r&&e instanceof r?r:null},q=(e,t)=>K(e,t)!==null,J=e=>{if(e.length===0)throw B(`No elements found`);if(e.length>1)throw B(`Strict mode violation: locator resolved to ${e.length} elements`);return e[0]},Ne=(e,t)=>{if(!q(e,t))throw B(`Strict mode violation: expected ${t}, got <${e.tagName.toLowerCase()}>`);return e},Pe=e=>e.tagName.toLowerCase(),Fe=new Set,Ie=e=>{Fe.add(e)},Le=/(?:^|[^\w-])(?:url|image|image-set|cross-fade|paint|element|expression)\s*\(/i,Re=e=>e.replace(/\\([0-9a-fA-F]{1,6})\s?/g,(e,t)=>String.fromCodePoint(Number.parseInt(t,16))).replace(/\\(.)/g,`$1`),ze=e=>!Le.test(Re(e.value)),Be=new Set([N.import,N.fontFace,N.namespace,N.charset,N.document,N.comment]),Ve=e=>{if(Be.has(e.type))return null;if(e.type===N.declaration)return ze(e)?e:null;let t=e,n={...t};for(let e of[`declarations`,`rules`,`keyframes`]){let r=t[e];Array.isArray(r)&&(n[e]=He(r))}return n},He=e=>e.map(e=>Ve(e)).filter(e=>e!==null),Ue=e=>{let t;try{t=Ee(e,{silent:!0})}catch{return``}return t.stylesheet.rules=He(t.stylesheet.rules),De(t)},We=(e,t)=>{let n=()=>{t.parentNode||(e.head??e.documentElement).appendChild(t)};if(n(),e.readyState===`complete`)return;let r=new MutationObserver(e=>{for(let r of e)for(let e of r.removedNodes)if(e===t||e.contains?.(t)){n();return}});r.observe(e.documentElement,{childList:!0,subtree:!0});let i=()=>r.disconnect(),a=e.defaultView;a?a.addEventListener(`load`,i,{once:!0}):setTimeout(i,3e4)},Ge={resolve:(e,t)=>{let n=e.document.createElement(`style`);n.textContent=t.noSanitize?t.content:Ue(t.content);try{We(e.document,n)}catch(e){console.error(e)}Ie(n)}},Ke=(e,t)=>{let n=e.getBoundingClientRect();return{clientX:n.left+n.width*(t?.x??.5),clientY:n.top+n.height*(t?.y??.5)}},qe={resolve:(e,t={})=>{let n=J(e.elements),r=W(n),i={bubbles:!0,cancelable:!0,composed:!0,...Ke(n,t.position),button:0},a={...i,pointerType:`mouse`,pointerId:1,isPrimary:!0};n.dispatchEvent(new r.PointerEvent(`pointerdown`,{...a,buttons:1})),n.dispatchEvent(new r.MouseEvent(`mousedown`,{...i,buttons:1})),n.dispatchEvent(new r.PointerEvent(`pointerup`,{...a,buttons:0})),n.dispatchEvent(new r.MouseEvent(`mouseup`,{...i,buttons:0})),n.dispatchEvent(new r.MouseEvent(`click`,{...i,buttons:0}))}},Je={resolve:(e,t={})=>{let n=J(e.elements),r=W(n),i={bubbles:!0,cancelable:!0,composed:!0,...Ke(n,t.position)},a={...i,pointerType:`mouse`,pointerId:1,isPrimary:!0};n.dispatchEvent(new r.PointerEvent(`pointerover`,a)),n.dispatchEvent(new r.PointerEvent(`pointerenter`,{...a,bubbles:!1})),n.dispatchEvent(new r.MouseEvent(`mouseenter`,{...i,bubbles:!1})),n.dispatchEvent(new r.MouseEvent(`mouseover`,i)),n.dispatchEvent(new r.PointerEvent(`pointermove`,a)),n.dispatchEvent(new r.MouseEvent(`mousemove`,i))}},Ye=(e,t)=>{e._valueTracker?.setValue(``);let n=(K(e,`HTMLTextAreaElement`)??K(e,`HTMLInputElement`))?.prototype,r=n&&Object.getOwnPropertyDescriptor(n,`value`)?.set;r?r.call(e,t):e.value=t},Xe=(e,t)=>{if(e.type!==`range`)return null;let n=Number(e.min||0),r=Number(e.max||100);if(!Number.isFinite(n)||!Number.isFinite(r)||r<=n)return null;let i=Number(t);if(!Number.isFinite(i))return null;let a=Math.max(0,Math.min(1,(i-n)/(r-n))),o=e.getBoundingClientRect(),s={bubbles:!0,cancelable:!0,composed:!0,clientX:o.left+o.width*a,clientY:o.top+o.height/2,button:0},c={...s,pointerType:`mouse`,pointerId:1,isPrimary:!0};return{pointerDown:{...c,buttons:1},pointerUp:{...c,buttons:0},mouseDown:{...s,buttons:1},mouseUp:{...s,buttons:0}}},Ze={resolve:(e,t,n={})=>{let r=J(e.elements),i=W(r),a=q(r,`HTMLInputElement`);if(a||q(r,`HTMLTextAreaElement`)){let e=r,n=a?Xe(e,t):null;n&&(r.dispatchEvent(new i.PointerEvent(`pointerdown`,n.pointerDown)),r.dispatchEvent(new i.MouseEvent(`mousedown`,n.mouseDown))),Ye(e,t),r.dispatchEvent(new i.Event(`input`,{bubbles:!0})),n&&(r.dispatchEvent(new i.PointerEvent(`pointerup`,n.pointerUp)),r.dispatchEvent(new i.MouseEvent(`mouseup`,n.mouseUp))),r.dispatchEvent(new i.Event(`change`,{bubbles:!0}));return}if(q(r,`HTMLElement`)&&r.isContentEditable){r.textContent=t,r.dispatchEvent(new i.Event(`input`,{bubbles:!0}));return}throw Error(`fill: element <${Pe(r)}> is not fillable`)}},Qe={resolve:(e,t={})=>J(e.elements).textContent},$e={resolve:(e,t,n={})=>J(e.elements).getAttribute(t)},et={resolve:(e,t={})=>{let n=J(e.elements);if(!q(n,`HTMLElement`))return!0;let r=W(n).getComputedStyle(n);if(r?.display===`none`||r?.visibility===`hidden`)return!1;let i=n.getBoundingClientRect();return i.width>0&&i.height>0}},tt={resolve:(e,t={})=>e.elements.length},nt={resolve:(e,t={})=>e.elements.length>0},Y=Object.freeze(Object.defineProperty({__proto__:null,click:qe,count:tt,exists:nt,fill:Ze,getAttribute:$e,hover:Je,isVisible:et,textContent:Qe},Symbol.toStringTag,{value:`Module`})),X=(e,t)=>e.elements.flatMap(e=>[...e.querySelectorAll(t)]),Z=e=>e.replaceAll(`"`,`\\"`),rt={to:`element`,css:!0,resolve:(e,t)=>X(e,t),render:e=>({fragment:typeof e==`string`?e:`?`,separator:`descend`})},it={to:`frame`,css:!0,barrier:`down`,resolve:(e,t)=>X(e,t),render:e=>({fragment:typeof e==`string`?e:`?`,separator:`down`})},at={element:{selectors:{locator:rt,frameLocator:it,getByRole:{to:`element`,resolve:(e,t)=>X(e,`[role="${CSS.escape(t)}"]`),render:e=>({fragment:typeof e==`string`?`[role="${Z(e)}"]`:`[role]`})},getByText:{to:`element`,resolve:(e,t)=>e.elements.flatMap(e=>[e,...e.querySelectorAll(`*`)]).filter(e=>e.textContent?.includes(t)),render:e=>({fragment:typeof e==`string`?`:has-text("${Z(e)}")`:`:has-text(...)`})},getByTestId:{to:`element`,resolve:(e,t)=>X(e,`[data-testid="${CSS.escape(t)}"]`),render:e=>({fragment:typeof e==`string`?`[data-testid="${Z(e)}"]`:`[data-testid]`})},first:{to:`element`,resolve:e=>e.elements.slice(0,1),render:()=>({fragment:`:first`})},nth:{to:`element`,resolve:(e,t)=>{let n=e.elements.at(t);return n?[n]:[]},render:e=>({fragment:typeof e==`number`?`:nth(${e})`:`:nth(?)`})}},operations:{click:qe,fill:Ze,hover:Je,textContent:Qe,getAttribute:$e,isVisible:et,count:tt,exists:nt}},frame:{selectors:{locator:rt,frameLocator:it,owner:{to:`frame`,barrier:`up`,resolve:e=>{throw Error(`owner: must be processed by the executor as an upward pivot`)},render:()=>({fragment:``,separator:`up`})}},operations:{addStyleTag:Ge}}},ot=(e,t=at)=>({element:{selectors:{...t.element.selectors,...e.element?.selectors},operations:{...t.element.operations,...e.element?.operations}},frame:{selectors:{...t.frame.selectors,...e.frame?.selectors},operations:{...t.frame.operations,...e.frame?.operations}}}),st=3e4,ct=50,lt=e=>{let t=e[e.length-1];return typeof t==`object`&&t?t:void 0},ut=e=>{let t=lt(e)?.timeout;return typeof t==`number`?t:st},dt=({executor:e,parts:t})=>({highlight:n=>e.highlight(t,n).then(()=>{},()=>{})}),ft=async e=>{let t={parts:e.parts,operation:e.operation,args:e.args,phase:`ensure`};await e.gate?.(t,dt(e))},pt=async e=>{let{executor:t,gate:n,parts:r,operation:i,args:a}=e;n&&await n({parts:r,operation:i,args:a,phase:`execute`},dt(e));let o=ut(a),s=Date.now()+o,c=Error(`Locator timeout (${o}ms): ${i}`),{promise:l,reject:u}=Promise.withResolvers();l.catch(()=>{});let d=setTimeout(()=>u(c),o),f=c;try{for(;Date.now()<s;)try{return await Promise.race([t.execute(r,i,a),l])}catch(e){if(e===c)break;if(U(e))throw e;f=e;let t=s-Date.now();if(t<=0)break;await new Promise(e=>setTimeout(e,Math.min(ct,t)))}}finally{clearTimeout(d)}throw f},mt=(e,t,n,r)=>{let i={};for(let[a,o]of Object.entries(t[n].selectors))i[a]=(...i)=>mt(e,t,o.to,[...r,{kind:n,name:a,args:i}]);for(let a of Object.keys(t[n].operations))i[a]=(...t)=>pt({...e,parts:r,operation:a,args:t});return i.ensure=(t,n={})=>ft({...e,parts:r,operation:t,args:[n]}),i},ht=e=>mt(e,e.modules??at,`frame`,[]),gt=ot({element:{operations:{click:{resolve:(e,t={})=>Y.click.resolve(e,t)},hover:{resolve:(e,t={})=>Y.hover.resolve(e,t)},fill:{resolve:(e,t,n={})=>Y.fill.resolve(e,t,n)},textContent:{resolve:(e,t={})=>Y.textContent.resolve(e)},getAttribute:{resolve:(e,t,n={})=>Y.getAttribute.resolve(e,t)},isVisible:{resolve:(e,t={})=>Y.isVisible.resolve(e)},count:{resolve:(e,t={})=>Y.count.resolve(e)},exists:{resolve:(e,t={})=>Y.exists.resolve(e)},videoElement:{resolve:(e,t={})=>b(Ne(J(e.elements),`HTMLVideoElement`))}}},frame:{operations:{addStyleTag:{resolve:(e,t)=>Ge.resolve(e,t)}}}}),Q=e=>{if(!e||e===`about:blank`)return!1;let t;try{t=new URL(e,location.href)}catch{return!1}if(t.protocol===`chrome-extension:`||t.protocol===`moz-extension:`)return!0;if(t.protocol===`about:`)return!1;let n=t.hostname,r=e=>n===e||n.endsWith(`.${e}`);return r(`fkn.app`)||r(`fkn.dev`)||r(`sdbx.app`)},$=e=>{if(Q(e))throw Error(`attachFrame: refusing to target the extension's own pages or an FKN platform origin`)},_t=({src:e,domains:t,lockdown:n})=>{if(!(!n||t.length)&&e&&e!==`about:blank`)throw Error(`attachFrame: lockdown needs domains when the frame already has a src; pass domains or load it via goto`)},vt={scope:`embed.iframe`,category:`embed`,severity:0,title:`Load another website inside this app`,description:`Lets the app embed external pages directly inside its own view.`},yt={scope:`embed.open`,category:`embed`,severity:0,title:`Open a website inside this app`,description:`Lets the app navigate to another site without leaving its window.`},bt=e=>{let t=ht({executor:e.executor,modules:gt,gate:e.gate}),n=(t,n={})=>($(t),e.goto(t,n)),r=()=>e.url();return{...t,goto:n,url:r}},xt=`FKN_WEB_EXTENSION_ATTACH_FRAME_EVENT_KEY`,St=async({iframe:e,domains:t=[],syncCookies:n=!0,lockdown:r=!1})=>{let i=crypto.randomUUID();if($(e.src),_t({src:e.src,domains:t,lockdown:r}),await k(),!e.isConnected)throw Error(`attachFrame: the iframe must be connected to the document before attaching`);e.dispatchEvent(new CustomEvent(xt,{detail:i}));let{executeLocator:a,highlightLocator:o,ensureLocatorPermission:s,goto:c}=await j.attachFrame({marker:i,domains:t,syncCookies:n,lockdown:r});return bt({executor:{execute:a,highlight:o},gate:e=>s(e.parts,e.operation,e.args),goto:(e,t={})=>c({url:e,...t}),url:()=>e.src})},Ct={request:e=>j.requestPermissions(e.map(e=>({key:e.key,scope:e.scope??``,reason:e.reason})))};Object.defineProperty(exports,"A",{enumerable:!0,get:function(){return se}}),Object.defineProperty(exports,"B",{enumerable:!0,get:function(){return x}}),Object.defineProperty(exports,"C",{enumerable:!0,get:function(){return _e}}),Object.defineProperty(exports,"D",{enumerable:!0,get:function(){return me}}),Object.defineProperty(exports,"E",{enumerable:!0,get:function(){return ce}}),Object.defineProperty(exports,"F",{enumerable:!0,get:function(){return ne}}),Object.defineProperty(exports,"H",{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,"I",{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,"L",{enumerable:!0,get:function(){return w}}),Object.defineProperty(exports,"M",{enumerable:!0,get:function(){return ae}}),Object.defineProperty(exports,"N",{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,"O",{enumerable:!0,get:function(){return fe}}),Object.defineProperty(exports,"P",{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,"R",{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,"S",{enumerable:!0,get:function(){return he}}),Object.defineProperty(exports,"T",{enumerable:!0,get:function(){return ue}}),Object.defineProperty(exports,"V",{enumerable:!0,get:function(){return C}}),Object.defineProperty(exports,"_",{enumerable:!0,get:function(){return be}}),Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return bt}}),Object.defineProperty(exports,"b",{enumerable:!0,get:function(){return ye}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return _t}}),Object.defineProperty(exports,"d",{enumerable:!0,get:function(){return H}}),Object.defineProperty(exports,"f",{enumerable:!0,get:function(){return Me}}),Object.defineProperty(exports,"g",{enumerable:!0,get:function(){return ke}}),Object.defineProperty(exports,"h",{enumerable:!0,get:function(){return z}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return vt}}),Object.defineProperty(exports,"j",{enumerable:!0,get:function(){return oe}}),Object.defineProperty(exports,"k",{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return Q}}),Object.defineProperty(exports,"m",{enumerable:!0,get:function(){return V}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return xt}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return yt}}),Object.defineProperty(exports,"p",{enumerable:!0,get:function(){return U}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return St}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return $}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return Ct}}),Object.defineProperty(exports,"u",{enumerable:!0,get:function(){return Oe}}),Object.defineProperty(exports,"v",{enumerable:!0,get:function(){return Se}}),Object.defineProperty(exports,"w",{enumerable:!0,get:function(){return le}}),Object.defineProperty(exports,"x",{enumerable:!0,get:function(){return ve}}),Object.defineProperty(exports,"y",{enumerable:!0,get:function(){return xe}}),Object.defineProperty(exports,"z",{enumerable:!0,get:function(){return b}});
package/net-COzDDBnS.cjs DELETED
@@ -1 +0,0 @@
1
- const e=require("./rolldown-runtime-BIInC43l.cjs"),t=require("./api-kHMHDGar.cjs"),n=require("./utils-QfNXtEhb.cjs");let r=require("stream"),i=require("events");var a=e.t({Server:()=>s,Socket:()=>o,_default:()=>d,connect:()=>c,createConnection:()=>l,createServer:()=>u,default:()=>d,isIP:()=>n.r,isIPv4:()=>n.i,isIPv6:()=>n.a}),o=class extends r.Stream.Duplex{_localAddress;_remoteAddress;_webVPNTcpSocketPromise;constructor(e){if(e?.fd!==void 0)throw Error(`FKN WebVPN does not support file descriptors`);super(e),e?.connection&&this.__webvpn_tcp_socket_init__(e.connection)}__webvpn_tcp_socket_init__(e,t){if(t&&(this._localAddress={address:t.localAddress,family:t.localFamily,port:t.localPort},this._remoteAddress={address:t.remoteAddress,family:t.remoteFamily,port:t.remotePort}),this._webVPNTcpSocketPromise=e.then(e=>{let t=e.dataReadableStream.getReader(),n=e.dataWritableStream.getWriter();return this._localAddress={address:e.localAddress,family:e.localFamily,port:e.localPort},this._remoteAddress={address:e.remoteAddress,family:e.remoteFamily,port:e.remotePort},{...e,reader:t,writer:n}}).catch(e=>{this.emit(`error`,e)}),!this._webVPNTcpSocketPromise)throw Error(`Socket not connected`);return this._webVPNTcpSocketPromise.then(e=>{e&&this.emit(`connect`)}),this._webVPNTcpSocketPromise}_read(e){if(!this._webVPNTcpSocketPromise)throw Error(`Socket not connected`);this._webVPNTcpSocketPromise.then(e=>{if(!e){this.push(null);return}e.reader.read().then(({value:e,done:t})=>{if(t){this.push(null);return}this._restartTimeoutTimer(),this.push(e)}).catch(e=>{this.destroy(e)})})}_write(e,t,n){if(!this._webVPNTcpSocketPromise){n(Error(`Socket not connected`));return}this._webVPNTcpSocketPromise.then(async t=>{if(!t)throw Error(`Socket not connected`);await t.writer.ready,await t.writer.write(e),this._restartTimeoutTimer(),n()}).catch(n)}connect(...e){let r=n.c(...e),i=this.__webvpn_tcp_socket_init__(t.t.then(e=>e.cloud.webvpn.tcpSocket({remoteAddress:r.host??`localhost`,remotePort:r.port})));return r.callback&&i.then(e=>{e&&r.callback.call(this)}),this}_final(e){if(!this._webVPNTcpSocketPromise){e();return}this._webVPNTcpSocketPromise.then(async e=>{e&&await e.writer.close()}).then(()=>e(),t=>e(t))}_destroy(e,t){if(this._timeoutTimer&&clearTimeout(this._timeoutTimer),!this._webVPNTcpSocketPromise){t(e);return}this._webVPNTcpSocketPromise.then(async e=>{e&&await(this._resetRequested?e.resetAndDestroy():e.destroy())}).then(()=>t(e),()=>t(e))}destroySoon(){if(this.writableFinished){this.destroy();return}this.once(`finish`,()=>this.destroy()),this.end()}_resetRequested=!1;resetAndDestroy(){return this._resetRequested=!0,this.destroy(),this}_timeoutMs;_timeoutTimer;_restartTimeoutTimer(){this._timeoutTimer&&clearTimeout(this._timeoutTimer),this._timeoutMs&&(this._timeoutTimer=setTimeout(()=>this.emit(`timeout`),this._timeoutMs))}setTimeout(e,t){return t&&this.on(`timeout`,t),this._timeoutMs=e,this._restartTimeoutTimer(),this}setNoDelay(e){let t=e??!0;return this._setTcpOption({type:0,value:t}),this}setKeepAlive(e,t){let n=e??!1,r=t!==void 0&&t>0?Math.max(1,Math.round(t/1e3)):0;return this._setTcpOption({type:2,enabled:n,initialDelaySeconds:r}),this}setSendBufferSize(e){return this._setTcpOption({type:3,value:e}),this}setRecvBufferSize(e){return this._setTcpOption({type:4,value:e}),this}_typeOfService;getTypeOfService(){return this._typeOfService??0}setTypeOfService(e){return this._typeOfService=e,this}_setTcpOption(e){if(!this._webVPNTcpSocketPromise){this.emit(`error`,Error(`Cannot set socket option before connect`));return}this._webVPNTcpSocketPromise.then(async t=>{if(t)try{await t.setOption(e)}catch(e){this.emit(`error`,e)}})}write(e,t,...n){return super.write(e,t,...n)}address(){return this._localAddress??{}}unref(){return this}ref(){return this}autoSelectFamilyAttemptedAddresses;bufferSize;bytesRead;bytesWritten;connecting;pending;get localAddress(){if(!this._localAddress)throw Error(`Socket is not connected`);return this._localAddress.address}get localPort(){if(!this._localAddress)throw Error(`Socket is not connected`);return this._localAddress.port}get localFamily(){if(!this._localAddress)throw Error(`Socket is not connected`);return this._localAddress.family}readyState;get remoteAddress(){if(!this._remoteAddress)throw Error(`Socket is not connected`);return this._remoteAddress.address}get remotePort(){if(!this._remoteAddress)throw Error(`Socket is not connected`);return this._remoteAddress.port}get remoteFamily(){if(!this._remoteAddress)throw Error(`Socket is not connected`);return this._remoteAddress.family}timeout},s=class extends i.EventEmitter{_localAddress;_webVPNTcpSocketListenerPromise;constructor(e,t){super(e),t&&this.on(`connection`,t),e?.connection&&this.__webvpn_tcp_socket_listener_init__(e.connection)}__webvpn_tcp_socket_listener_init__(e){return this._webVPNTcpSocketListenerPromise=e.then(e=>(this._localAddress={address:e.localAddress,family:e.localFamily,port:e.localPort},e)).catch(e=>{this.emit(`error`,e)}),this._webVPNTcpSocketListenerPromise.then(e=>{e&&this.emit(`listening`)}),this._webVPNTcpSocketListenerPromise}listen(...e){let r=n.c(...e);this._closeEmitted=!1;let i=e=>{let t=new o;t.__webvpn_tcp_socket_init__(Promise.resolve(e),e),this.emit(`connection`,t)},a=e=>{this._localAddress=void 0;try{e&&this.listenerCount(`error`)>0&&this.emit(`error`,e)}finally{this._emitClose()}},s=e=>t.t.then(t=>t.cloud.webvpn.tcpSocketListener({localAddress:e,localPort:r.port,onConnection:i,onClose:a})),c=r.host?s(r.host):s(`::`).catch(()=>s(`0.0.0.0`)),l=this.__webvpn_tcp_socket_listener_init__(c);return r.callback&&l.then(e=>{e&&r.callback.call(this)}),this}_closeEmitted=!1;_emitClose(){this._closeEmitted||(this._closeEmitted=!0,this.emit(`close`))}close(e){return this._webVPNTcpSocketListenerPromise&&this._webVPNTcpSocketListenerPromise.then(async t=>{if(t)try{await t.close(),this._localAddress=void 0,this._emitClose(),e&&e()}catch(t){this._localAddress=void 0,this._emitClose(),e&&e(t)}}),this}address(){return this._localAddress??null}getConnections(e){throw Error(`Method not implemented.`)}ref(){return this}unref(){return this}maxConnections;connections;listening;async[Symbol.asyncDispose](){}},c=(e,t)=>new o().connect(e,t),l=(e,t)=>new o().connect(e,t),u=(e,t)=>{typeof e==`function`&&(t=e,e=void 0);let n=new s(e);return t&&n.on(`connection`,t),n},d={Socket:o,Server:s,connect:c,createConnection:l,createServer:u,isIP:n.r,isIPv4:n.i,isIPv6:n.a};Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return s}});
@@ -1 +0,0 @@
1
- let e=require("buffer");var t={json:`application/json`,txt:`text/plain`,html:`text/html`,htm:`text/html`,css:`text/css`,js:`text/javascript`,mjs:`text/javascript`,xml:`application/xml`,csv:`text/csv`,md:`text/markdown`,svg:`image/svg+xml`,png:`image/png`,jpg:`image/jpeg`,jpeg:`image/jpeg`,gif:`image/gif`,webp:`image/webp`,pdf:`application/pdf`,wasm:`application/wasm`},n=(e,n)=>{if(n)return n;let r=e.split(`/`).pop()??``,i=r.lastIndexOf(`.`);if(!(i<=0))return t[r.slice(i+1).toLowerCase()]},r=(e,t)=>({size:e,mtimeMs:t,mtime:new Date(t),atimeMs:t,ctimeMs:t,mode:420,isFile:()=>!0,isDirectory:()=>!1,isSymbolicLink:()=>!1}),i=(e=0)=>({size:0,mtimeMs:e,mtime:new Date(e),atimeMs:e,ctimeMs:e,mode:493,isFile:()=>!1,isDirectory:()=>!0,isSymbolicLink:()=>!1}),a=(e,t,n)=>{let r=Error(`${e}: ${{ENOENT:`no such file or directory`,EEXIST:`file already exists`,ENOTDIR:`not a directory`,EISDIR:`illegal operation on a directory`,ENOTEMPTY:`directory not empty`,ERR_FS_EISDIR:`is a directory`}[e]??e}, ${n} '${t}'`);return r.code=e,r.path=t,r.syscall=n,r},o=e=>{let t=[];for(let n of e.split(`/`))if(!(!n||n===`.`)){if(n===`..`){t.pop();continue}t.push(n)}return t.join(`/`)},s=e=>e.split(`/`).slice(0,-1).join(`/`),c=e=>typeof e==`string`?e:e instanceof URL?decodeURIComponent(e.pathname):e.toString(),l=e=>typeof e==`string`?e:e?.encoding??void 0,u=e=>typeof e==`object`?e?.contentType:void 0,d=e=>typeof e==`object`&&!!e?.recursive,f=(t,n)=>{let r=l(n);return r?e.Buffer.from(t).toString(r):e.Buffer.from(t)},p=(t,n)=>{if(typeof t==`string`)return new Uint8Array(e.Buffer.from(t,l(n)??`utf8`));if(t instanceof Uint8Array)return t.slice();if(t instanceof ArrayBuffer)return new Uint8Array(t).slice();if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength).slice();throw TypeError(`The "data" argument must be of type string, Buffer, TypedArray, or DataView`)},m=e=>{let t=new Map([[``,{kind:`dir`,mtimeMs:0}]]),c=new Set,l=new Set,u=new Set,d=()=>Date.now(),f=e=>{if(!e)return;let n=e.split(`/`),r=``;for(let e of n){r=r?`${r}/${e}`:e;let n=t.get(r);if(!n)t.set(r,{kind:`dir`,mtimeMs:d()});else if(n.kind===`file`)throw a(`ENOTDIR`,r,`mkdir`)}},p,m=0,h=async()=>{let n=await e.list().catch(()=>[]),r=new Set,i=!1;for(let a of n){let n=o(a.path);if(r.add(n),!l.has(n)&&!(c.has(n)&&!u.has(n)))try{let r=await(await e.readFile(a.path)).arrayBuffer();if(l.has(n)||c.has(n)&&!u.has(n))continue;f(s(n));let i=Date.parse(a.updatedAt??``);t.set(n,{kind:`file`,data:new Uint8Array(r),mtimeMs:Number.isFinite(i)?i:d(),contentType:a.contentType??void 0}),u.delete(n),c.delete(n)}catch{i=!0,u.add(n)}}for(let e of u)r.has(e)||u.delete(e);m=i?Date.now():0},g=()=>(p&&(m===0||Date.now()-m<5e3)||(p=h()),p),_=async()=>{p=void 0,m=0,await g()},v=async()=>{let r=[...c].map(async r=>{if(u.has(r))return;let i=t.get(r);if(i?.kind!==`file`){c.delete(r);return}let a=i.data,o=n(r,i.contentType);try{await e.writeFile(r,a,o?{contentType:o}:void 0);let n=t.get(r);n?.kind===`file`&&n.data===a&&c.delete(r)}catch{}}),i=[...l].map(async t=>{try{await e.remove(t),l.delete(t)}catch{}});await Promise.all([...r,...i])},y,b=()=>{y||=setTimeout(()=>{y=void 0,v().catch(()=>{})},250)};typeof addEventListener<`u`&&(addEventListener(`pagehide`,()=>{v().catch(()=>{})}),addEventListener(`visibilitychange`,()=>{typeof document<`u`&&document.visibilityState===`hidden`&&v().catch(()=>{})}));let x=e=>e.kind===`file`?r(e.data.byteLength,e.mtimeMs):i(e.mtimeMs),S=e=>Object.assign(Error(`storage: ${e} exists but could not be read, retry once its scope is available`),{code:`FKN_E2E_LOCKED`}),C=e=>{let n=o(e);return t.has(n)||u.has(n)},w=e=>{let n=o(e),r=t.get(n);if(!r)throw u.has(n)?S(e):a(`ENOENT`,e,`stat`);return x(r)},T=e=>{let n=o(e),r=t.get(n);if(!r)throw u.has(n)?S(e):a(`ENOENT`,e,`open`);if(r.kind===`dir`)throw a(`EISDIR`,e,`read`);return r.data},E=(e,t)=>{let n=new Uint8Array(e.byteLength+t.byteLength);return n.set(e,0),n.set(t,e.byteLength),n},D=(e,n,r,i)=>{let p=o(e);if(!p)throw a(`EISDIR`,e,`open`);if(u.has(p))throw S(e);let m=t.get(p);if(m?.kind===`dir`)throw a(`EISDIR`,e,`open`);f(s(p));let h=r&&m?.kind===`file`?E(m.data,n):n;t.set(p,{kind:`file`,data:h,mtimeMs:d(),contentType:i??(m?.kind===`file`?m.contentType:void 0)}),c.add(p),l.delete(p),b()},O=(e,n)=>{let r=o(e);if(r){if(t.has(r)){if(n)return;throw a(`EEXIST`,e,`mkdir`)}if(!n&&!t.has(s(r)))throw a(`ENOENT`,e,`mkdir`);f(r)}},k=e=>{let n=o(e),r=t.get(n);if(!r)throw a(`ENOENT`,e,`scandir`);if(r.kind===`file`)throw a(`ENOTDIR`,e,`scandir`);let i=n?`${n}/`:``,s=new Set;for(let e of[...t.keys(),...u]){if(!e||!e.startsWith(i))continue;let t=e.slice(i.length);t&&s.add(t.split(`/`)[0])}return[...s]},A=(e,{op:n,recursive:r,force:i})=>{let s=o(e),d=t.get(s);if(!d&&u.has(s)){if(n===`rmdir`)throw a(`ENOTDIR`,e,`rmdir`);u.delete(s),c.delete(s),l.add(s),b();return}if(!d){if(i||n===`rmdir`&&r)return;throw a(`ENOENT`,e,n===`rmdir`?`rmdir`:`unlink`)}if(n===`unlink`&&d.kind===`dir`)throw a(`EISDIR`,e,`unlink`);if(n===`rmdir`&&d.kind===`file`)throw a(`ENOTDIR`,e,`rmdir`);if(n===`rm`&&d.kind===`dir`&&!r)throw a(`ERR_FS_EISDIR`,e,`rm`);let f=`${s}/`,p=[...t.keys()].filter(e=>e.startsWith(f));if(p.length&&!r)throw a(`ENOTEMPTY`,e,`rmdir`);for(let e of[s,...p]){let n=t.get(e);t.delete(e),n?.kind===`file`&&(c.delete(e),l.add(e))}b()};return{mount:g,remount:_,flush:v,exists:C,stat:w,readFile:T,writeFile:D,mkdir:O,readdir:k,remove:A,rename:(e,n)=>{let r=o(e),i=o(n);if(!r)throw a(`EBUSY`,e,`rename`);if(i===r||i.startsWith(`${r}/`))throw a(`EINVAL`,e,`rename`);if(u.has(r))throw S(e);if(u.has(i))throw S(n);let d=t.get(r);if(!d)throw a(`ENOENT`,e,`rename`);let p=t.get(i);if(p){if(p.kind!==d.kind)throw a(d.kind===`dir`?`ENOTDIR`:`EISDIR`,n,`rename`);A(i,{op:`rm`,recursive:!0,force:!0})}f(s(i));let m=`${r}/`,h=[r,...[...t.keys()].filter(e=>e.startsWith(m))];for(let e of h){let n=i+e.slice(r.length),a=t.get(e);t.set(n,a),t.delete(e),a.kind===`file`&&(c.add(n),l.delete(n),c.delete(e),l.add(e))}b()}}},h=(e,t)=>typeof e==`function`?e:t,g=e=>typeof e==`function`?void 0:e,_=(e,t)=>{e.then(e=>t(null,e),e=>t(e))},v=e=>{let t=m(e),n=(e,n)=>f(t.readFile(c(e)),n),r=(e,n,r)=>t.writeFile(c(e),p(n,r),!1,u(r)),i=(e,n,r)=>t.writeFile(c(e),p(n,r),!0,u(r)),o=e=>t.exists(c(e)),s=e=>t.stat(c(e)),l=e=>t.readdir(c(e)),_=(e,n)=>t.mkdir(c(e),d(n)),v=(e,n)=>t.remove(c(e),{op:`rm`,...n}),y=(e,n)=>t.remove(c(e),{op:`rmdir`,...n}),b=e=>t.remove(c(e),{op:`unlink`}),x=(e,n)=>t.rename(c(e),c(n)),S=(e,n)=>{t.mount().finally(()=>{let t;try{t=e()}catch(e){n(e);return}n(null,t)})},C=e=>t.mount().then(()=>e());return{available:e.available,readFileSync:n,writeFileSync:r,appendFileSync:i,existsSync:o,statSync:s,lstatSync:s,readdirSync:l,mkdirSync:_,rmSync:v,rmdirSync:y,unlinkSync:b,renameSync:x,readFile:(e,n,r)=>S(()=>f(t.readFile(c(e)),g(n)),h(n,r)),writeFile:(e,n,r,i)=>S(()=>t.writeFile(c(e),p(n,g(r)),!1,u(g(r))),h(r,i)),appendFile:(e,n,r,i)=>S(()=>t.writeFile(c(e),p(n,g(r)),!0,u(g(r))),h(r,i)),stat:(e,n)=>S(()=>t.stat(c(e)),n),readdir:(e,n,r)=>S(()=>t.readdir(c(e)),h(n,r)),mkdir:(e,n,r)=>S(()=>t.mkdir(c(e),d(g(n))),h(n,r)),rm:(e,n,r)=>S(()=>t.remove(c(e),{op:`rm`,...g(n)}),h(n,r)),unlink:(e,n)=>S(()=>t.remove(c(e),{op:`unlink`}),n),rename:(e,n,r)=>S(()=>t.rename(c(e),c(n)),r),exists:(e,n)=>{t.mount().finally(()=>n(t.exists(c(e))))},promises:{readFile:(e,n)=>C(()=>f(t.readFile(c(e)),n)),writeFile:(e,n,r)=>C(()=>t.writeFile(c(e),p(n,r),!1,u(r))),appendFile:(e,n,r)=>C(()=>t.writeFile(c(e),p(n,r),!0,u(r))),stat:e=>C(()=>t.stat(c(e))),lstat:e=>C(()=>t.stat(c(e))),readdir:e=>C(()=>t.readdir(c(e))),mkdir:(e,n)=>C(()=>t.mkdir(c(e),d(n))),rm:(e,n)=>C(()=>t.remove(c(e),{op:`rm`,...n})),rmdir:(e,n)=>C(()=>t.remove(c(e),{op:`rmdir`,...n})),unlink:e=>C(()=>t.remove(c(e),{op:`unlink`})),rename:(e,n)=>C(()=>t.rename(c(e),c(n))),access:e=>C(()=>{if(!t.exists(c(e)))throw a(`ENOENT`,c(e),`access`)})},mount:t.mount,flush:t.flush,remount:t.remount}},y=e=>{let t=async(t,n)=>{let r=await e.readFile(c(t));return f(new Uint8Array(await r.arrayBuffer()),n)},s=async(t,r,i)=>{let a=c(t),o=n(a,u(i));await e.writeFile(a,p(r,i),o?{contentType:o}:void 0)},l=t=>e.remove(c(t)),d=async(t,n)=>{let r=o(c(t)),i=o(c(n));if(r===i)return;let a=await e.readFile(r);await e.writeFile(i,a),await e.remove(r)},m=async t=>{let n=o(c(t)),r=n?`${n}/`:``,i=new Set;for(let t of await e.list()){let e=o(t.path);if(r&&!e.startsWith(r))continue;let n=e.slice(r.length);n&&i.add(n.split(`/`)[0])}return[...i]},v=async(e,t)=>{},y=async(t,n)=>{let r=o(c(t));if(!n?.recursive){await e.remove(c(t));return}let i=`${r}/`,a=await e.list();await Promise.all(a.filter(e=>{let t=o(e.path);return t===r||t.startsWith(i)}).map(t=>e.remove(t.path).catch(()=>{})))},b=async t=>{let n=o(c(t)),s=await e.list(),l=s.find(e=>o(e.path)===n);if(l){let e=Date.parse(l.updatedAt??``);return r(l.size,Number.isFinite(e)?e:0)}if(s.some(e=>o(e.path).startsWith(`${n}/`)))return i();throw a(`ENOENT`,c(t),`stat`)},x={readFile:t,writeFile:s,unlink:l,rename:d,readdir:m,mkdir:v,rm:y,rmdir:y,stat:b,lstat:b,access:async e=>{await b(e)}};return{available:e.available,promises:x,readFile:(e,n,r)=>_(t(e,g(n)),h(n,r)),writeFile:(e,t,n,r)=>_(s(e,t,g(n)),h(n,r)),unlink:(e,t)=>_(l(e),t),rename:(e,t,n)=>_(d(e,t),n),readdir:(e,t,n)=>_(m(e),h(t,n)),mkdir:(e,t,n)=>_(v(),h(t,n)),rm:(e,t,n)=>_(y(e,g(t)),h(t,n)),stat:(e,t)=>_(b(e),t)}};function b(e,t){return t.memfs?v(e):y(e)}Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return b}});