@fkn/lib 0.9.39 → 0.9.41
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/account-generation-CSnZiN18.cjs +1 -0
- package/account-generation-D7TpIoKt.js +28 -0
- package/account.cjs +1 -1
- package/account.d.ts +11 -0
- package/account.js +5 -17
- package/{api-BxXnHxbd.d.ts → api-Cbty0JUM.d.ts} +15 -13
- package/api.d.ts +2 -2
- package/cloud/dns.d.ts +1 -1
- package/cloud/fetch.d.ts +1 -1
- package/cloud/fs/promises.d.ts +1 -1
- package/cloud/fs.cjs +1 -1
- package/cloud/fs.d.ts +4 -4
- package/cloud/fs.js +31 -24
- package/cloud/net.d.ts +1 -1
- package/{cloud-B8QYSmW3.d.ts → cloud-4t1WoEZn.d.ts} +3 -3
- package/{cloud-oMACx7NL.js → cloud-BLv19j-W.js} +200 -196
- package/cloud-D7aQY4GH.cjs +1 -0
- package/cloud.cjs +1 -1
- package/cloud.d.ts +4 -4
- package/cloud.js +1 -1
- package/{contract-sDmsw-9f.d.ts → contract-BRc2ptdC.d.ts} +33 -10
- package/contract.d.ts +2 -2
- package/dgram.d.ts +2 -2
- package/dns.d.ts +1 -1
- package/extension-B9v933cT.js +89 -0
- package/extension-D2zMdc2f.cjs +1 -0
- package/extension.cjs +1 -1
- package/extension.js +3 -3
- package/fs/promises.cjs +1 -1
- package/fs/promises.d.ts +1 -1
- package/fs/promises.js +1 -1
- package/fs-BTyRnUPI.cjs +1 -0
- package/{fs--NhtUyYa.d.ts → fs-D0MMRnHC.d.ts} +8 -4
- package/fs-q7Kg51hq.js +513 -0
- package/fs.cjs +1 -1
- package/fs.d.ts +4 -3
- package/fs.js +4 -2
- package/http.d.ts +1 -1
- package/{index-kuPqkS_-.d.ts → index-D2lvaQDs.d.ts} +28 -38
- package/index.cjs +1 -1
- package/index.d.ts +3 -3
- package/index.js +13 -13
- package/{lib-tQKlXzhv.cjs → lib-BfAg9mHD.cjs} +1 -1
- package/{lib-BlyFPeSv.js → lib-C4Eeg9eM.js} +2 -2
- package/{messages-C66ghz_A.d.ts → messages-CRcziTuC.d.ts} +17 -1
- package/messages.cjs +1 -1
- package/messages.d.ts +2 -2
- package/messages.js +2 -2
- package/{net-Qmt9L_7t.d.ts → net-CcEZP6Bb.d.ts} +2 -2
- package/net.d.ts +1 -1
- package/{node-fs-BZy9bzKd.js → node-fs-CK2wWIYS.js} +140 -137
- package/node-fs-nfX7wisL.cjs +1 -0
- package/opfs.cjs +1 -1
- package/opfs.js +1 -1
- package/package.json +1 -1
- package/packages.d.ts +1 -1
- package/{proxy-CxRQLGNG.d.ts → proxy-D6YtsO1g.d.ts} +2 -2
- package/rooms.d.ts +1 -1
- package/storage-BS5WMO4f.cjs +1 -0
- package/storage-BVr2Rb-d.d.ts +167 -0
- package/storage-BWmGrO6a.js +123 -0
- package/cloud-BZIJFvPF.cjs +0 -1
- package/extension-Bl5ZNj0d.cjs +0 -1
- package/extension-ChZyZgAL.js +0 -89
- package/fs-CaQFRiIT.cjs +0 -1
- package/fs-D3IsGdnN.js +0 -360
- package/node-fs-BNTPsX5c.cjs +0 -1
- package/storage-BJd-mWHE.cjs +0 -1
- package/storage-DSvL-t80.js +0 -67
- package/storage-ZrY4Y4L5.d.ts +0 -88
|
@@ -77,9 +77,9 @@ var n = {
|
|
|
77
77
|
let n = /* @__PURE__ */ new Map([["", {
|
|
78
78
|
kind: "dir",
|
|
79
79
|
mtimeMs: 0
|
|
80
|
-
}]]), l = /* @__PURE__ */ new
|
|
80
|
+
}]]), l = /* @__PURE__ */ new Map(), u = /* @__PURE__ */ new Map(), d = () => t.captureAccount ? { pin: t.captureAccount() } : {};
|
|
81
81
|
e("unsaved files", () => l.size > 0 || u.size > 0);
|
|
82
|
-
let
|
|
82
|
+
let f = /* @__PURE__ */ new Set(), p = () => Date.now(), m = (e) => {
|
|
83
83
|
if (!e) return;
|
|
84
84
|
let t = e.split("/"), r = "";
|
|
85
85
|
for (let e of t) {
|
|
@@ -87,93 +87,96 @@ var n = {
|
|
|
87
87
|
let t = n.get(r);
|
|
88
88
|
if (!t) n.set(r, {
|
|
89
89
|
kind: "dir",
|
|
90
|
-
mtimeMs:
|
|
90
|
+
mtimeMs: p()
|
|
91
91
|
});
|
|
92
92
|
else if (t.kind === "file") throw o("ENOTDIR", r, "mkdir");
|
|
93
93
|
}
|
|
94
|
-
},
|
|
95
|
-
let e = await t.list().catch(() => []),
|
|
96
|
-
for (let
|
|
97
|
-
let
|
|
98
|
-
if (
|
|
99
|
-
let
|
|
100
|
-
if (u.has(
|
|
101
|
-
|
|
102
|
-
let
|
|
103
|
-
n.set(
|
|
94
|
+
}, h, g = 0, _ = async () => {
|
|
95
|
+
let e = d(), r = await t.list(e).catch(() => []), i = /* @__PURE__ */ new Set(), a = !1;
|
|
96
|
+
for (let o of r) {
|
|
97
|
+
let r = s(o.path);
|
|
98
|
+
if (i.add(r), !u.has(r) && (!l.has(r) || f.has(r))) try {
|
|
99
|
+
let i = await (await t.readFile(o.path, e)).arrayBuffer();
|
|
100
|
+
if (u.has(r) || l.has(r) && !f.has(r)) continue;
|
|
101
|
+
m(c(r));
|
|
102
|
+
let a = Date.parse(o.updatedAt ?? "");
|
|
103
|
+
n.set(r, {
|
|
104
104
|
kind: "file",
|
|
105
|
-
data: new Uint8Array(
|
|
106
|
-
mtimeMs: Number.isFinite(
|
|
107
|
-
contentType:
|
|
108
|
-
}),
|
|
105
|
+
data: new Uint8Array(i),
|
|
106
|
+
mtimeMs: Number.isFinite(a) ? a : p(),
|
|
107
|
+
contentType: o.contentType ?? void 0
|
|
108
|
+
}), f.delete(r), l.delete(r);
|
|
109
109
|
} catch {
|
|
110
|
-
|
|
110
|
+
a = !0, f.add(r);
|
|
111
111
|
}
|
|
112
112
|
}
|
|
113
|
-
for (let e of
|
|
114
|
-
|
|
115
|
-
},
|
|
116
|
-
|
|
117
|
-
},
|
|
118
|
-
let e = [...l].map(async (e) => {
|
|
119
|
-
if (
|
|
120
|
-
let
|
|
121
|
-
if (
|
|
113
|
+
for (let e of f) i.has(e) || f.delete(e);
|
|
114
|
+
g = a ? Date.now() : 0;
|
|
115
|
+
}, v = () => (h && (g === 0 || Date.now() - g < 5e3) || (h = _()), h), y = async () => {
|
|
116
|
+
h = void 0, g = 0, await v();
|
|
117
|
+
}, b = async () => {
|
|
118
|
+
let e = [...l].map(async ([e, i]) => {
|
|
119
|
+
if (f.has(e)) return;
|
|
120
|
+
let a = n.get(e);
|
|
121
|
+
if (a?.kind !== "file") {
|
|
122
122
|
l.delete(e);
|
|
123
123
|
return;
|
|
124
124
|
}
|
|
125
|
-
let
|
|
125
|
+
let o = a.data, s = r(e, a.contentType);
|
|
126
126
|
try {
|
|
127
|
-
await t.writeFile(e,
|
|
127
|
+
await t.writeFile(e, o, s ? {
|
|
128
|
+
contentType: s,
|
|
129
|
+
...i
|
|
130
|
+
} : i);
|
|
128
131
|
let r = n.get(e);
|
|
129
|
-
r?.kind === "file" && r.data ===
|
|
132
|
+
r?.kind === "file" && r.data === o && l.delete(e);
|
|
130
133
|
} catch {}
|
|
131
|
-
}), i = [...u].map(async (e) => {
|
|
134
|
+
}), i = [...u].map(async ([e, n]) => {
|
|
132
135
|
try {
|
|
133
|
-
await t.remove(e), u.delete(e);
|
|
136
|
+
await t.remove(e, n), u.get(e) === n && u.delete(e);
|
|
134
137
|
} catch {}
|
|
135
138
|
});
|
|
136
139
|
await Promise.all([...e, ...i]);
|
|
137
|
-
},
|
|
138
|
-
|
|
139
|
-
|
|
140
|
+
}, x, S = () => {
|
|
141
|
+
x ||= setTimeout(() => {
|
|
142
|
+
x = void 0, b().catch(() => {});
|
|
140
143
|
}, 250);
|
|
141
144
|
};
|
|
142
145
|
typeof addEventListener < "u" && (addEventListener("pagehide", () => {
|
|
143
|
-
|
|
146
|
+
b().catch(() => {});
|
|
144
147
|
}), addEventListener("visibilitychange", () => {
|
|
145
|
-
typeof document < "u" && document.visibilityState === "hidden" &&
|
|
148
|
+
typeof document < "u" && document.visibilityState === "hidden" && b().catch(() => {});
|
|
146
149
|
}));
|
|
147
|
-
let
|
|
150
|
+
let C = (e) => e.kind === "file" ? i(e.data.byteLength, e.mtimeMs) : a(e.mtimeMs), w = (e) => Object.assign(/* @__PURE__ */ Error(`storage: ${e} exists but could not be read, retry once its scope is available`), { code: "FKN_E2E_LOCKED" }), T = (e) => {
|
|
148
151
|
let t = s(e);
|
|
149
|
-
return n.has(t) ||
|
|
150
|
-
}, T = (e) => {
|
|
151
|
-
let t = s(e), r = n.get(t);
|
|
152
|
-
if (!r) throw d.has(t) ? C(e) : o("ENOENT", e, "stat");
|
|
153
|
-
return S(r);
|
|
152
|
+
return n.has(t) || f.has(t);
|
|
154
153
|
}, E = (e) => {
|
|
155
154
|
let t = s(e), r = n.get(t);
|
|
156
|
-
if (!r) throw
|
|
155
|
+
if (!r) throw f.has(t) ? w(e) : o("ENOENT", e, "stat");
|
|
156
|
+
return C(r);
|
|
157
|
+
}, D = (e) => {
|
|
158
|
+
let t = s(e), r = n.get(t);
|
|
159
|
+
if (!r) throw f.has(t) ? w(e) : o("ENOENT", e, "open");
|
|
157
160
|
if (r.kind === "dir") throw o("EISDIR", e, "read");
|
|
158
161
|
return r.data;
|
|
159
|
-
},
|
|
162
|
+
}, O = (e, t) => {
|
|
160
163
|
let n = new Uint8Array(e.byteLength + t.byteLength);
|
|
161
164
|
return n.set(e, 0), n.set(t, e.byteLength), n;
|
|
162
|
-
},
|
|
165
|
+
}, k = (e, t, r, i) => {
|
|
163
166
|
let a = s(e);
|
|
164
167
|
if (!a) throw o("EISDIR", e, "open");
|
|
165
|
-
if (
|
|
166
|
-
let
|
|
167
|
-
if (
|
|
168
|
-
|
|
169
|
-
let
|
|
168
|
+
if (f.has(a)) throw w(e);
|
|
169
|
+
let h = n.get(a);
|
|
170
|
+
if (h?.kind === "dir") throw o("EISDIR", e, "open");
|
|
171
|
+
m(c(a));
|
|
172
|
+
let g = r && h?.kind === "file" ? O(h.data, t) : t;
|
|
170
173
|
n.set(a, {
|
|
171
174
|
kind: "file",
|
|
172
|
-
data:
|
|
173
|
-
mtimeMs:
|
|
174
|
-
contentType: i ?? (
|
|
175
|
-
}), l.
|
|
176
|
-
},
|
|
175
|
+
data: g,
|
|
176
|
+
mtimeMs: p(),
|
|
177
|
+
contentType: i ?? (h?.kind === "file" ? h.contentType : void 0)
|
|
178
|
+
}), l.set(a, d()), u.delete(a), S();
|
|
179
|
+
}, A = (e, t) => {
|
|
177
180
|
let r = s(e);
|
|
178
181
|
if (r) {
|
|
179
182
|
if (n.has(r)) {
|
|
@@ -181,76 +184,76 @@ var n = {
|
|
|
181
184
|
throw o("EEXIST", e, "mkdir");
|
|
182
185
|
}
|
|
183
186
|
if (!t && !n.has(c(r))) throw o("ENOENT", e, "mkdir");
|
|
184
|
-
|
|
187
|
+
m(r);
|
|
185
188
|
}
|
|
186
|
-
},
|
|
189
|
+
}, j = (e) => {
|
|
187
190
|
let t = s(e), r = n.get(t);
|
|
188
191
|
if (!r) throw o("ENOENT", e, "scandir");
|
|
189
192
|
if (r.kind === "file") throw o("ENOTDIR", e, "scandir");
|
|
190
193
|
let i = t ? `${t}/` : "", a = /* @__PURE__ */ new Set();
|
|
191
|
-
for (let e of [...n.keys(), ...
|
|
194
|
+
for (let e of [...n.keys(), ...f]) {
|
|
192
195
|
if (!e || !e.startsWith(i)) continue;
|
|
193
196
|
let t = e.slice(i.length);
|
|
194
197
|
t && a.add(t.split("/")[0]);
|
|
195
198
|
}
|
|
196
199
|
return [...a];
|
|
197
|
-
},
|
|
198
|
-
let a = s(e),
|
|
199
|
-
if (!
|
|
200
|
+
}, M = (e, { op: t, recursive: r, force: i }) => {
|
|
201
|
+
let a = d(), c = s(e), p = n.get(c);
|
|
202
|
+
if (!p && f.has(c)) {
|
|
200
203
|
if (t === "rmdir") throw o("ENOTDIR", e, "rmdir");
|
|
201
|
-
|
|
204
|
+
f.delete(c), l.delete(c), u.set(c, a), S();
|
|
202
205
|
return;
|
|
203
206
|
}
|
|
204
|
-
if (!
|
|
207
|
+
if (!p) {
|
|
205
208
|
if (i || t === "rmdir" && r) return;
|
|
206
209
|
throw o("ENOENT", e, t === "rmdir" ? "rmdir" : "unlink");
|
|
207
210
|
}
|
|
208
|
-
if (t === "unlink" &&
|
|
209
|
-
if (t === "rmdir" &&
|
|
210
|
-
if (t === "rm" &&
|
|
211
|
-
let
|
|
212
|
-
if (
|
|
213
|
-
for (let e of [
|
|
211
|
+
if (t === "unlink" && p.kind === "dir") throw o("EISDIR", e, "unlink");
|
|
212
|
+
if (t === "rmdir" && p.kind === "file") throw o("ENOTDIR", e, "rmdir");
|
|
213
|
+
if (t === "rm" && p.kind === "dir" && !r) throw o("ERR_FS_EISDIR", e, "rm");
|
|
214
|
+
let m = `${c}/`, h = [...n.keys()].filter((e) => e.startsWith(m));
|
|
215
|
+
if (h.length && !r) throw o("ENOTEMPTY", e, "rmdir");
|
|
216
|
+
for (let e of [c, ...h]) {
|
|
214
217
|
let t = n.get(e);
|
|
215
|
-
n.delete(e), t?.kind === "file" && (l.delete(e), u.
|
|
218
|
+
n.delete(e), t?.kind === "file" && (l.delete(e), u.set(e, a));
|
|
216
219
|
}
|
|
217
|
-
|
|
220
|
+
S();
|
|
218
221
|
};
|
|
219
222
|
return {
|
|
220
|
-
mount:
|
|
221
|
-
remount:
|
|
222
|
-
flush:
|
|
223
|
-
exists:
|
|
224
|
-
stat:
|
|
225
|
-
readFile:
|
|
226
|
-
writeFile:
|
|
227
|
-
mkdir:
|
|
228
|
-
readdir:
|
|
229
|
-
remove:
|
|
223
|
+
mount: v,
|
|
224
|
+
remount: y,
|
|
225
|
+
flush: b,
|
|
226
|
+
exists: T,
|
|
227
|
+
stat: E,
|
|
228
|
+
readFile: D,
|
|
229
|
+
writeFile: k,
|
|
230
|
+
mkdir: A,
|
|
231
|
+
readdir: j,
|
|
232
|
+
remove: M,
|
|
230
233
|
rename: (e, t) => {
|
|
231
|
-
let r = s(e),
|
|
232
|
-
if (!
|
|
233
|
-
if (
|
|
234
|
-
if (
|
|
235
|
-
if (
|
|
236
|
-
let
|
|
237
|
-
if (!
|
|
238
|
-
let
|
|
239
|
-
if (
|
|
240
|
-
if (
|
|
241
|
-
|
|
234
|
+
let r = d(), i = s(e), a = s(t);
|
|
235
|
+
if (!i) throw o("EBUSY", e, "rename");
|
|
236
|
+
if (a === i || a.startsWith(`${i}/`)) throw o("EINVAL", e, "rename");
|
|
237
|
+
if (f.has(i)) throw w(e);
|
|
238
|
+
if (f.has(a)) throw w(t);
|
|
239
|
+
let p = n.get(i);
|
|
240
|
+
if (!p) throw o("ENOENT", e, "rename");
|
|
241
|
+
let h = n.get(a);
|
|
242
|
+
if (h) {
|
|
243
|
+
if (h.kind !== p.kind) throw o(p.kind === "dir" ? "ENOTDIR" : "EISDIR", t, "rename");
|
|
244
|
+
M(a, {
|
|
242
245
|
op: "rm",
|
|
243
246
|
recursive: !0,
|
|
244
247
|
force: !0
|
|
245
248
|
});
|
|
246
249
|
}
|
|
247
|
-
|
|
248
|
-
let
|
|
249
|
-
for (let e of
|
|
250
|
-
let t =
|
|
251
|
-
n.set(t,
|
|
250
|
+
m(c(a));
|
|
251
|
+
let g = `${i}/`, _ = [i, ...[...n.keys()].filter((e) => e.startsWith(g))];
|
|
252
|
+
for (let e of _) {
|
|
253
|
+
let t = a + e.slice(i.length), o = n.get(e);
|
|
254
|
+
n.set(t, o), n.delete(e), o.kind === "file" && (l.set(t, r), u.delete(t), l.delete(e), u.set(e, r));
|
|
252
255
|
}
|
|
253
|
-
|
|
256
|
+
S();
|
|
254
257
|
}
|
|
255
258
|
};
|
|
256
259
|
}, g = (e, t) => typeof e == "function" ? e : t, _ = (e) => typeof e == "function" ? void 0 : e, v = (e, t) => {
|
|
@@ -330,18 +333,18 @@ var n = {
|
|
|
330
333
|
remount: t.remount
|
|
331
334
|
};
|
|
332
335
|
}, b = (e) => {
|
|
333
|
-
let t = async (t, n) => {
|
|
336
|
+
let t = () => e.captureAccount ? { pin: e.captureAccount() } : {}, n = async (t, n) => {
|
|
334
337
|
let r = await e.readFile(l(t));
|
|
335
338
|
return p(new Uint8Array(await r.arrayBuffer()), n);
|
|
336
|
-
},
|
|
339
|
+
}, c = async (t, n, i) => {
|
|
337
340
|
let a = l(t), o = r(a, d(i));
|
|
338
341
|
await e.writeFile(a, m(n, i), o ? { contentType: o } : void 0);
|
|
339
|
-
},
|
|
340
|
-
let
|
|
341
|
-
if (
|
|
342
|
-
let
|
|
343
|
-
await e.writeFile(
|
|
344
|
-
},
|
|
342
|
+
}, u = (t) => e.remove(l(t)), f = async (n, r) => {
|
|
343
|
+
let i = t(), a = s(l(n)), o = s(l(r));
|
|
344
|
+
if (a === o) return;
|
|
345
|
+
let c = await e.readFile(a, i);
|
|
346
|
+
await e.writeFile(o, c, i), await e.remove(a, i);
|
|
347
|
+
}, h = async (t) => {
|
|
345
348
|
let n = s(l(t)), r = n ? `${n}/` : "", i = /* @__PURE__ */ new Set();
|
|
346
349
|
for (let t of await e.list()) {
|
|
347
350
|
let e = s(t.path);
|
|
@@ -350,18 +353,18 @@ var n = {
|
|
|
350
353
|
n && i.add(n.split("/")[0]);
|
|
351
354
|
}
|
|
352
355
|
return [...i];
|
|
353
|
-
},
|
|
354
|
-
let
|
|
355
|
-
if (!
|
|
356
|
-
await e.remove(l(
|
|
356
|
+
}, y = async (e, t) => {}, b = async (n, r) => {
|
|
357
|
+
let i = t(), a = s(l(n));
|
|
358
|
+
if (!r?.recursive) {
|
|
359
|
+
await e.remove(l(n), i);
|
|
357
360
|
return;
|
|
358
361
|
}
|
|
359
|
-
let
|
|
360
|
-
await Promise.all(
|
|
362
|
+
let o = `${a}/`, c = await e.list(i);
|
|
363
|
+
await Promise.all(c.filter((e) => {
|
|
361
364
|
let t = s(e.path);
|
|
362
|
-
return t ===
|
|
363
|
-
}).map((t) => e.remove(t.path).catch(() => {})));
|
|
364
|
-
},
|
|
365
|
+
return t === a || t.startsWith(o);
|
|
366
|
+
}).map((t) => e.remove(t.path, i).catch(() => {})));
|
|
367
|
+
}, x = async (t) => {
|
|
365
368
|
let n = s(l(t)), r = await e.list(), c = r.find((e) => s(e.path) === n);
|
|
366
369
|
if (c) {
|
|
367
370
|
let e = Date.parse(c.updatedAt ?? "");
|
|
@@ -369,32 +372,32 @@ var n = {
|
|
|
369
372
|
}
|
|
370
373
|
if (r.some((e) => s(e.path).startsWith(`${n}/`))) return a();
|
|
371
374
|
throw o("ENOENT", l(t), "stat");
|
|
372
|
-
},
|
|
373
|
-
readFile:
|
|
374
|
-
writeFile:
|
|
375
|
-
unlink:
|
|
376
|
-
rename:
|
|
377
|
-
readdir:
|
|
378
|
-
mkdir:
|
|
379
|
-
rm:
|
|
380
|
-
rmdir:
|
|
381
|
-
stat:
|
|
382
|
-
lstat:
|
|
375
|
+
}, S = {
|
|
376
|
+
readFile: n,
|
|
377
|
+
writeFile: c,
|
|
378
|
+
unlink: u,
|
|
379
|
+
rename: f,
|
|
380
|
+
readdir: h,
|
|
381
|
+
mkdir: y,
|
|
382
|
+
rm: b,
|
|
383
|
+
rmdir: b,
|
|
384
|
+
stat: x,
|
|
385
|
+
lstat: x,
|
|
383
386
|
access: async (e) => {
|
|
384
|
-
await
|
|
387
|
+
await x(e);
|
|
385
388
|
}
|
|
386
389
|
};
|
|
387
390
|
return {
|
|
388
391
|
available: e.available,
|
|
389
|
-
promises:
|
|
390
|
-
readFile: (e,
|
|
391
|
-
writeFile: (e, t,
|
|
392
|
-
unlink: (e, t) => v(
|
|
393
|
-
rename: (e, t, n) => v(
|
|
394
|
-
readdir: (e, t, n) => v(
|
|
395
|
-
mkdir: (e, t, n) => v(
|
|
396
|
-
rm: (e, t, n) => v(
|
|
397
|
-
stat: (e, t) => v(
|
|
392
|
+
promises: S,
|
|
393
|
+
readFile: (e, t, r) => v(n(e, _(t)), g(t, r)),
|
|
394
|
+
writeFile: (e, t, n, r) => v(c(e, t, _(n)), g(n, r)),
|
|
395
|
+
unlink: (e, t) => v(u(e), t),
|
|
396
|
+
rename: (e, t, n) => v(f(e, t), n),
|
|
397
|
+
readdir: (e, t, n) => v(h(e), g(t, n)),
|
|
398
|
+
mkdir: (e, t, n) => v(y(), g(t, n)),
|
|
399
|
+
rm: (e, t, n) => v(b(e, _(t)), g(t, n)),
|
|
400
|
+
stat: (e, t) => v(x(e), t)
|
|
398
401
|
};
|
|
399
402
|
};
|
|
400
403
|
function x(e, t) {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("./busy-Dv8wzE5M.cjs");let t=require("buffer");var n={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`},r=(e,t)=>{if(t)return t;let r=e.split(`/`).pop()??``,i=r.lastIndexOf(`.`);if(!(i<=0))return n[r.slice(i+1).toLowerCase()]},i=(e,t)=>({size:e,mtimeMs:t,mtime:new Date(t),atimeMs:t,ctimeMs:t,mode:420,isFile:()=>!0,isDirectory:()=>!1,isSymbolicLink:()=>!1}),a=(e=0)=>({size:0,mtimeMs:e,mtime:new Date(e),atimeMs:e,ctimeMs:e,mode:493,isFile:()=>!1,isDirectory:()=>!0,isSymbolicLink:()=>!1}),o=(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},s=e=>{let t=[];for(let n of e.split(`/`))if(n&&n!==`.`){if(n===`..`){t.pop();continue}t.push(n)}return t.join(`/`)},c=e=>e.split(`/`).slice(0,-1).join(`/`),l=e=>typeof e==`string`?e:e instanceof URL?decodeURIComponent(e.pathname):e.toString(),u=e=>typeof e==`string`?e:e?.encoding??void 0,d=e=>typeof e==`object`?e?.contentType:void 0,f=e=>typeof e==`object`&&!!e?.recursive,p=(e,n)=>{let r=u(n);return r?t.Buffer.from(e).toString(r):t.Buffer.from(e)},m=(e,n)=>{if(typeof e==`string`)return new Uint8Array(t.Buffer.from(e,u(n)??`utf8`));if(e instanceof Uint8Array)return e.slice();if(e instanceof ArrayBuffer)return new Uint8Array(e).slice();if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength).slice();throw TypeError(`The "data" argument must be of type string, Buffer, TypedArray, or DataView`)},h=t=>{let n=new Map([[``,{kind:`dir`,mtimeMs:0}]]),l=new Map,u=new Map,d=()=>t.captureAccount?{pin:t.captureAccount()}:{};e.r(`unsaved files`,()=>l.size>0||u.size>0);let f=new Set,p=()=>Date.now(),m=e=>{if(!e)return;let t=e.split(`/`),r=``;for(let e of t){r=r?`${r}/${e}`:e;let t=n.get(r);if(!t)n.set(r,{kind:`dir`,mtimeMs:p()});else if(t.kind===`file`)throw o(`ENOTDIR`,r,`mkdir`)}},h,g=0,_=async()=>{let e=d(),r=await t.list(e).catch(()=>[]),i=new Set,a=!1;for(let o of r){let r=s(o.path);if(i.add(r),!u.has(r)&&(!l.has(r)||f.has(r)))try{let i=await(await t.readFile(o.path,e)).arrayBuffer();if(u.has(r)||l.has(r)&&!f.has(r))continue;m(c(r));let a=Date.parse(o.updatedAt??``);n.set(r,{kind:`file`,data:new Uint8Array(i),mtimeMs:Number.isFinite(a)?a:p(),contentType:o.contentType??void 0}),f.delete(r),l.delete(r)}catch{a=!0,f.add(r)}}for(let e of f)i.has(e)||f.delete(e);g=a?Date.now():0},v=()=>(h&&(g===0||Date.now()-g<5e3)||(h=_()),h),y=async()=>{h=void 0,g=0,await v()},b=async()=>{let e=[...l].map(async([e,i])=>{if(f.has(e))return;let a=n.get(e);if(a?.kind!==`file`){l.delete(e);return}let o=a.data,s=r(e,a.contentType);try{await t.writeFile(e,o,s?{contentType:s,...i}:i);let r=n.get(e);r?.kind===`file`&&r.data===o&&l.delete(e)}catch{}}),i=[...u].map(async([e,n])=>{try{await t.remove(e,n),u.get(e)===n&&u.delete(e)}catch{}});await Promise.all([...e,...i])},x,S=()=>{x||=setTimeout(()=>{x=void 0,b().catch(()=>{})},250)};typeof addEventListener<`u`&&(addEventListener(`pagehide`,()=>{b().catch(()=>{})}),addEventListener(`visibilitychange`,()=>{typeof document<`u`&&document.visibilityState===`hidden`&&b().catch(()=>{})}));let C=e=>e.kind===`file`?i(e.data.byteLength,e.mtimeMs):a(e.mtimeMs),w=e=>Object.assign(Error(`storage: ${e} exists but could not be read, retry once its scope is available`),{code:`FKN_E2E_LOCKED`}),T=e=>{let t=s(e);return n.has(t)||f.has(t)},E=e=>{let t=s(e),r=n.get(t);if(!r)throw f.has(t)?w(e):o(`ENOENT`,e,`stat`);return C(r)},D=e=>{let t=s(e),r=n.get(t);if(!r)throw f.has(t)?w(e):o(`ENOENT`,e,`open`);if(r.kind===`dir`)throw o(`EISDIR`,e,`read`);return r.data},O=(e,t)=>{let n=new Uint8Array(e.byteLength+t.byteLength);return n.set(e,0),n.set(t,e.byteLength),n},k=(e,t,r,i)=>{let a=s(e);if(!a)throw o(`EISDIR`,e,`open`);if(f.has(a))throw w(e);let h=n.get(a);if(h?.kind===`dir`)throw o(`EISDIR`,e,`open`);m(c(a));let g=r&&h?.kind===`file`?O(h.data,t):t;n.set(a,{kind:`file`,data:g,mtimeMs:p(),contentType:i??(h?.kind===`file`?h.contentType:void 0)}),l.set(a,d()),u.delete(a),S()},A=(e,t)=>{let r=s(e);if(r){if(n.has(r)){if(t)return;throw o(`EEXIST`,e,`mkdir`)}if(!t&&!n.has(c(r)))throw o(`ENOENT`,e,`mkdir`);m(r)}},j=e=>{let t=s(e),r=n.get(t);if(!r)throw o(`ENOENT`,e,`scandir`);if(r.kind===`file`)throw o(`ENOTDIR`,e,`scandir`);let i=t?`${t}/`:``,a=new Set;for(let e of[...n.keys(),...f]){if(!e||!e.startsWith(i))continue;let t=e.slice(i.length);t&&a.add(t.split(`/`)[0])}return[...a]},M=(e,{op:t,recursive:r,force:i})=>{let a=d(),c=s(e),p=n.get(c);if(!p&&f.has(c)){if(t===`rmdir`)throw o(`ENOTDIR`,e,`rmdir`);f.delete(c),l.delete(c),u.set(c,a),S();return}if(!p){if(i||t===`rmdir`&&r)return;throw o(`ENOENT`,e,t===`rmdir`?`rmdir`:`unlink`)}if(t===`unlink`&&p.kind===`dir`)throw o(`EISDIR`,e,`unlink`);if(t===`rmdir`&&p.kind===`file`)throw o(`ENOTDIR`,e,`rmdir`);if(t===`rm`&&p.kind===`dir`&&!r)throw o(`ERR_FS_EISDIR`,e,`rm`);let m=`${c}/`,h=[...n.keys()].filter(e=>e.startsWith(m));if(h.length&&!r)throw o(`ENOTEMPTY`,e,`rmdir`);for(let e of[c,...h]){let t=n.get(e);n.delete(e),t?.kind===`file`&&(l.delete(e),u.set(e,a))}S()};return{mount:v,remount:y,flush:b,exists:T,stat:E,readFile:D,writeFile:k,mkdir:A,readdir:j,remove:M,rename:(e,t)=>{let r=d(),i=s(e),a=s(t);if(!i)throw o(`EBUSY`,e,`rename`);if(a===i||a.startsWith(`${i}/`))throw o(`EINVAL`,e,`rename`);if(f.has(i))throw w(e);if(f.has(a))throw w(t);let p=n.get(i);if(!p)throw o(`ENOENT`,e,`rename`);let h=n.get(a);if(h){if(h.kind!==p.kind)throw o(p.kind===`dir`?`ENOTDIR`:`EISDIR`,t,`rename`);M(a,{op:`rm`,recursive:!0,force:!0})}m(c(a));let g=`${i}/`,_=[i,...[...n.keys()].filter(e=>e.startsWith(g))];for(let e of _){let t=a+e.slice(i.length),o=n.get(e);n.set(t,o),n.delete(e),o.kind===`file`&&(l.set(t,r),u.delete(t),l.delete(e),u.set(e,r))}S()}}},g=(e,t)=>typeof e==`function`?e:t,_=e=>typeof e==`function`?void 0:e,v=(e,t)=>{e.then(e=>t(null,e),e=>t(e))},y=e=>{let t=h(e),n=(e,n)=>p(t.readFile(l(e)),n),r=(e,n,r)=>t.writeFile(l(e),m(n,r),!1,d(r)),i=(e,n,r)=>t.writeFile(l(e),m(n,r),!0,d(r)),a=e=>t.exists(l(e)),s=e=>t.stat(l(e)),c=e=>t.readdir(l(e)),u=(e,n)=>t.mkdir(l(e),f(n)),v=(e,n)=>t.remove(l(e),{op:`rm`,...n}),y=(e,n)=>t.remove(l(e),{op:`rmdir`,...n}),b=e=>t.remove(l(e),{op:`unlink`}),x=(e,n)=>t.rename(l(e),l(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:a,statSync:s,lstatSync:s,readdirSync:c,mkdirSync:u,rmSync:v,rmdirSync:y,unlinkSync:b,renameSync:x,readFile:(e,n,r)=>S(()=>p(t.readFile(l(e)),_(n)),g(n,r)),writeFile:(e,n,r,i)=>S(()=>t.writeFile(l(e),m(n,_(r)),!1,d(_(r))),g(r,i)),appendFile:(e,n,r,i)=>S(()=>t.writeFile(l(e),m(n,_(r)),!0,d(_(r))),g(r,i)),stat:(e,n)=>S(()=>t.stat(l(e)),n),readdir:(e,n,r)=>S(()=>t.readdir(l(e)),g(n,r)),mkdir:(e,n,r)=>S(()=>t.mkdir(l(e),f(_(n))),g(n,r)),rm:(e,n,r)=>S(()=>t.remove(l(e),{op:`rm`,..._(n)}),g(n,r)),unlink:(e,n)=>S(()=>t.remove(l(e),{op:`unlink`}),n),rename:(e,n,r)=>S(()=>t.rename(l(e),l(n)),r),exists:(e,n)=>{t.mount().finally(()=>n(t.exists(l(e))))},promises:{readFile:(e,n)=>C(()=>p(t.readFile(l(e)),n)),writeFile:(e,n,r)=>C(()=>t.writeFile(l(e),m(n,r),!1,d(r))),appendFile:(e,n,r)=>C(()=>t.writeFile(l(e),m(n,r),!0,d(r))),stat:e=>C(()=>t.stat(l(e))),lstat:e=>C(()=>t.stat(l(e))),readdir:e=>C(()=>t.readdir(l(e))),mkdir:(e,n)=>C(()=>t.mkdir(l(e),f(n))),rm:(e,n)=>C(()=>t.remove(l(e),{op:`rm`,...n})),rmdir:(e,n)=>C(()=>t.remove(l(e),{op:`rmdir`,...n})),unlink:e=>C(()=>t.remove(l(e),{op:`unlink`})),rename:(e,n)=>C(()=>t.rename(l(e),l(n))),access:e=>C(()=>{if(!t.exists(l(e)))throw o(`ENOENT`,l(e),`access`)})},mount:t.mount,flush:t.flush,remount:t.remount}},b=e=>{let t=()=>e.captureAccount?{pin:e.captureAccount()}:{},n=async(t,n)=>{let r=await e.readFile(l(t));return p(new Uint8Array(await r.arrayBuffer()),n)},c=async(t,n,i)=>{let a=l(t),o=r(a,d(i));await e.writeFile(a,m(n,i),o?{contentType:o}:void 0)},u=t=>e.remove(l(t)),f=async(n,r)=>{let i=t(),a=s(l(n)),o=s(l(r));if(a===o)return;let c=await e.readFile(a,i);await e.writeFile(o,c,i),await e.remove(a,i)},h=async t=>{let n=s(l(t)),r=n?`${n}/`:``,i=new Set;for(let t of await e.list()){let e=s(t.path);if(r&&!e.startsWith(r))continue;let n=e.slice(r.length);n&&i.add(n.split(`/`)[0])}return[...i]},y=async(e,t)=>{},b=async(n,r)=>{let i=t(),a=s(l(n));if(!r?.recursive){await e.remove(l(n),i);return}let o=`${a}/`,c=await e.list(i);await Promise.all(c.filter(e=>{let t=s(e.path);return t===a||t.startsWith(o)}).map(t=>e.remove(t.path,i).catch(()=>{})))},x=async t=>{let n=s(l(t)),r=await e.list(),c=r.find(e=>s(e.path)===n);if(c){let e=Date.parse(c.updatedAt??``);return i(c.size,Number.isFinite(e)?e:0)}if(r.some(e=>s(e.path).startsWith(`${n}/`)))return a();throw o(`ENOENT`,l(t),`stat`)},S={readFile:n,writeFile:c,unlink:u,rename:f,readdir:h,mkdir:y,rm:b,rmdir:b,stat:x,lstat:x,access:async e=>{await x(e)}};return{available:e.available,promises:S,readFile:(e,t,r)=>v(n(e,_(t)),g(t,r)),writeFile:(e,t,n,r)=>v(c(e,t,_(n)),g(n,r)),unlink:(e,t)=>v(u(e),t),rename:(e,t,n)=>v(f(e,t),n),readdir:(e,t,n)=>v(h(e),g(t,n)),mkdir:(e,t,n)=>v(y(),g(t,n)),rm:(e,t,n)=>v(b(e,_(t)),g(t,n)),stat:(e,t)=>v(x(e),t)}};function x(e,t){return t.memfs?y(e):b(e)}Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return x}});
|
package/opfs.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("./rolldown-runtime-BIInC43l.cjs"),t=require("./node-fs-
|
|
1
|
+
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require("./rolldown-runtime-BIInC43l.cjs"),t=require("./node-fs-nfX7wisL.cjs"),n=require("./opfs-CXMESVLc.cjs");var r=e.t({appendFile:()=>b,appendFileSync:()=>c,available:()=>a,default:()=>i,exists:()=>D,existsSync:()=>l,flush:()=>A,lstatSync:()=>d,mkdir:()=>C,mkdirSync:()=>p,mount:()=>k,promises:()=>O,readFile:()=>v,readFileSync:()=>o,readdir:()=>S,readdirSync:()=>f,remount:()=>j,rename:()=>E,renameSync:()=>_,rm:()=>w,rmSync:()=>m,rmdirSync:()=>h,stat:()=>x,statSync:()=>u,unlink:()=>T,unlinkSync:()=>g,writeFile:()=>y,writeFileSync:()=>s}),i=t.t(n.r,{memfs:!0}),{available:a,readFileSync:o,writeFileSync:s,appendFileSync:c,existsSync:l,statSync:u,lstatSync:d,readdirSync:f,mkdirSync:p,rmSync:m,rmdirSync:h,unlinkSync:g,renameSync:_,readFile:v,writeFile:y,appendFile:b,stat:x,readdir:S,mkdir:C,rm:w,unlink:T,rename:E,exists:D,promises:O,mount:k,flush:A,remount:j}=i;exports.appendFile=b,exports.appendFileSync=c,exports.available=a,exports.default=i,exports.exists=D,exports.existsSync=l,exports.flush=A,exports.lstatSync=d,exports.mkdir=C,exports.mkdirSync=p,exports.mount=k,exports.promises=O,exports.readFile=v,exports.readFileSync=o,exports.readdir=S,exports.readdirSync=f,exports.remount=j,exports.rename=E,exports.renameSync=_,exports.rm=w,exports.rmSync=m,exports.rmdirSync=h,exports.stat=x,exports.statSync=u,Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return r}}),exports.unlink=T,exports.unlinkSync=g,exports.writeFile=y,exports.writeFileSync=s;
|
package/opfs.js
CHANGED
package/package.json
CHANGED
package/packages.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { E as InstalledPackage, F as PackagesErrorCode, L as PickOptions, N as PackageQuery, P as PackageResult, R as Placement, T as InstallOptions, W as Radii, bt as SurfaceRect, m as ConnectOptions } from "./contract-BRc2ptdC.js";
|
|
2
2
|
import { Remote } from "osra";
|
|
3
3
|
declare namespace packages_d_exports {
|
|
4
4
|
export { AppConnectOptions, Connect, ConnectOptions, ConnectPayload, IncomingConnection, IncomingConnectionInfo, InstallOptions, InstalledPackage, MountOptions, MountedPackage, PackageConnection, PackageQuery, PackageResult, PackageView, PackagesError, PackagesErrorCode, PickOptions, Placement, Radii, RawPackageConnection, ShowOptions, SurfaceRect, attach, connect, hide, install, isVisible, list, mount, onConnect, onVisibilityChange, pick, search, show, uninstall };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import "./api-
|
|
1
|
+
import { G as Resolvers } from "./contract-BRc2ptdC.js";
|
|
2
|
+
import "./api-Cbty0JUM.js";
|
|
3
3
|
//#region src/proxy.d.ts
|
|
4
4
|
type ProxyFetch = Resolvers['cloud']['fetch'];
|
|
5
5
|
type FetchParameters = Parameters<ProxyFetch>;
|
package/rooms.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $ as
|
|
1
|
+
import { $ as RoomJoinOptions, J as RoomCreateOptions, K as RoomBacklog, X as RoomEnd, Y as RoomDefaults, Z as RoomEvent, at as RoomPermissions, et as RoomMailbox, it as RoomPermission, nt as RoomMessage, ot as RoomsErrorCode, q as RoomClaimOptions, rt as RoomOpenOptions, tt as RoomMember } from "./contract-BRc2ptdC.js";
|
|
2
2
|
declare namespace rooms_d_exports {
|
|
3
3
|
export { RoomClaimOptions as ClaimOptions, RoomCreateOptions as CreateOptions, RoomJoinOptions as JoinOptions, RoomOpenOptions as OpenOptions, Room, RoomBacklog, RoomDefaults, RoomEnd, RoomEvent, RoomMailbox, RoomMember, RoomMessage, RoomPermission, RoomPermissions, RoomsError, RoomsErrorCode, available, create, join, open };
|
|
4
4
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("./rolldown-runtime-BIInC43l.cjs"),t=require("./api-jOTOA-5n.cjs"),n=require("./messages.cjs"),r=require("./account-generation-CSnZiN18.cjs");var i=e.t({StorageAccountChangedError:()=>c,StorageAccountPinUnsupportedError:()=>l,StorageLockedError:()=>a,StorageNotFoundError:()=>o,availability:()=>k,available:()=>w,captureAccount:()=>p,encryption:()=>L,isAccountChanged:()=>u,isInvalidPin:()=>d,isNotFound:()=>s,knownPin:()=>y,list:()=>A,pinFor:()=>b,quota:()=>j,readFile:()=>M,readFileSealed:()=>P,remove:()=>I,unlock:()=>R,writeFile:()=>F}),a=class extends Error{code=`FKN_E2E_LOCKED`;constructor(){super(`storage locked: connect the app again to open encrypted data`)}},o=class extends Error{code=n.STORAGE_NOT_FOUND;constructor(e=`storage: no object at that path`){super(e)}},s=e=>e?.code===n.STORAGE_NOT_FOUND,c=class extends Error{code=n.STORAGE_ACCOUNT_CHANGED;constructor(e=`storage: the signed-in account changed, so this call was not made`){super(e)}},l=class extends Error{code=n.STORAGE_ACCOUNT_PIN_UNSUPPORTED;constructor(e=`storage: the FKN broker cannot pin calls to an account yet, so nothing was sent`){super(e)}},u=e=>e?.code===`FKN_ACCOUNT_CHANGED`||e instanceof Error&&e.message.startsWith(`fkn:account-changed`),d=e=>e instanceof Error&&e.message.startsWith(`fkn:account-pin-invalid`),f=e=>{throw e instanceof Error&&e.message.startsWith(`fkn:e2e-locked`)?new a:s(e)?new o(e.message):u(e)?new c:e instanceof Error&&e.message.startsWith(`fkn:account-pin-unsupported`)?new l:e instanceof Error&&(/^not found$/i.test(e.message)||/\(404\)$/.test(e.message))?new o(e.message):e},p=()=>(r.n(),{generation:r.t()}),m=new Map,h=null,g=e=>typeof e?.accountPin==`function`,_=(e,t)=>{let n=Promise.resolve(t.accountPin()).then(t=>{if(typeof t!=`string`||!t)throw Error(`storage: the broker answered no account pin`);return r.t()===e&&m.set(e,t),t});return h={generation:e,pin:n},n.catch(()=>{h?.pin===n&&(h=null)}),n},v=async(e,t)=>{let n=m.get(e.generation);if(n!==void 0)return n;if(e.generation!==r.t())throw new c;let i=await(h?.generation===e.generation?h.pin:_(e.generation,t)).catch(f);if(e.generation!==r.t())throw new c;return i},y=e=>m.get(e.generation),b=async e=>{let n=(await t.a).cloud.fs;if(!g(n))throw new l;return v(e,n)},x=e=>{for(let[t,n]of m)if(n===e)return t},S=e=>e?.pin??p(),C=async(e,n)=>{let i=(await t.a).cloud.fs;if(!g(i))throw new l;let a=`pin`in e?e.pin:await v(e,i);if(!g(i))throw new l;return n(i,{accountPin:a}).catch(t=>{if(u(t)){let t=`generation`in e?e.generation:x(a);t!==void 0&&r.r(t)}return f(t)})},w=()=>t.a.then(e=>e.cloud.fs.available()).catch(()=>!1),T=8e3,E=1e3,D=!1,O=async()=>{let e=(await t.a).cloud.fs;return typeof e.availability==`function`?e.availability():await e.available()?`connected`:`disconnected`},k=async()=>{let e=D?E:T,t=await new Promise(t=>{let n=setTimeout(()=>t(`timeout`),e);O().then(e=>{clearTimeout(n),t(e)},()=>{clearTimeout(n),t(`unknown`)})});return t===`timeout`?(D=!0,`unknown`):(D=!1,t)},A=e=>C(S(e),(e,t)=>e.list(t)),j=()=>t.a.then(e=>e.cloud.fs.quota()),M=async(e,t)=>{let n=await C(S(t),(t,n)=>t.readFile(e,n));return new Blob([n])},N=e=>{if(e===null||!Number.isFinite(e))return null;let t=new Date(e);return Number.isNaN(t.getTime())?null:t.toISOString()},P=async(e,t)=>C(S(t),async(t,n)=>{let r=t;if(typeof r.readFileSealed!=`function`)return{data:await t.readFile(e,n),sealedAt:null};let i=await r.readFileSealed(e,n);return{data:i.bytes,sealedAt:N(i.sealedAt)}}),F=async(e,t,n)=>{let r=S(n),i=t instanceof Blob?new Uint8Array(await t.arrayBuffer()):t;await C(r,(t,r)=>t.writeFile(e,i,n?.contentType??null,r))},I=async(e,t)=>{await C(S(t),(t,n)=>t.remove(e,n))},L=()=>t.a.then(e=>e.cloud.fs.encryption()),R=()=>t.a.then(e=>e.cloud.fs.unlock());Object.defineProperty(exports,"_",{enumerable:!0,get:function(){return I}}),Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,"b",{enumerable:!0,get:function(){return F}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,"d",{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,"f",{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,"g",{enumerable:!0,get:function(){return P}}),Object.defineProperty(exports,"h",{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,"m",{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,"p",{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return L}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,"u",{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,"v",{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,"y",{enumerable:!0,get:function(){return R}});
|