@fkn/lib 0.9.52 → 0.9.54
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-BZ_gXQoZ.js → account-generation-CTB1J33G.js} +4 -3
- package/account-generation-DOuApHq5.cjs +1 -0
- package/{account-storage-BT2pPuWs.cjs → account-storage-CL0wLuQw.cjs} +1 -1
- package/{account-storage-DHl6bXdb.d.ts → account-storage-Co9IvkPr.d.ts} +3 -3
- package/{account-storage-C38Ydzh-.js → account-storage-D1RiskV6.js} +2 -2
- package/account.cjs +1 -1
- package/account.d.ts +21 -11
- package/account.js +2 -2
- package/{api-BrqGe-Yz.js → api-BYtMzj8u.js} +43 -63
- package/{api-eOIMGYAJ.d.ts → api-C-VvG5P-.d.ts} +833 -1
- package/api-Csb5b8dE.cjs +3 -0
- package/api.cjs +1 -1
- package/api.d.ts +2 -2
- package/api.js +1 -1
- package/cloud/dns.d.ts +1 -1
- package/cloud/fetch.cjs +1 -1
- package/cloud/fetch.d.ts +1 -1
- package/cloud/fetch.js +1 -1
- package/cloud/fs/promises.d.ts +1 -1
- package/cloud/fs.cjs +1 -1
- package/cloud/fs.d.ts +2 -2
- package/cloud/fs.js +1 -1
- package/cloud/net.d.ts +1 -1
- package/{cloud-DyXqlXh9.js → cloud-8sJ1Sg8n.js} +3 -3
- package/{cloud-CCMu_LZl.cjs → cloud-CI6WMBPa.cjs} +1 -1
- package/{cloud-DrgnsG8_.d.ts → cloud-S8hQywqV.d.ts} +3 -3
- package/cloud.cjs +1 -1
- package/cloud.d.ts +4 -4
- package/cloud.js +2 -2
- package/{contract-De1rQSCD.d.ts → contract-CMQOic3K.d.ts} +34 -4
- package/contract.d.ts +1 -1
- package/dgram.cjs +1 -1
- package/dgram.d.ts +2 -2
- package/dgram.js +1 -1
- package/dns.cjs +1 -1
- package/dns.d.ts +1 -1
- package/dns.js +1 -1
- package/{extension-D-MgH488.cjs → extension-BXI3MVXw.cjs} +1 -1
- package/{extension-Cqd8OFr3.js → extension-BmqjgSIQ.js} +3 -3
- package/extension.cjs +1 -1
- package/extension.js +2 -2
- package/fs/promises.cjs +1 -1
- package/fs/promises.d.ts +1 -1
- package/fs/promises.js +1 -1
- package/{fs-BUf_-umC.cjs → fs-CPU00CI3.cjs} +1 -1
- package/{fs-BZv2djbS.d.ts → fs-DCJAYoYy.d.ts} +1 -1
- package/{fs-BaZ7k_5D.js → fs-ohcMNiu2.js} +2 -2
- package/fs.cjs +1 -1
- package/fs.d.ts +2 -2
- package/fs.js +2 -2
- package/http.d.ts +1 -1
- package/{index-DawD_N1P.d.ts → index-57lTXnoe.d.ts} +1 -1
- package/index.cjs +1 -1
- package/index.d.ts +4 -4
- package/index.js +5 -5
- package/{lib-ERmfLvVp.js → lib-BGAmzIcU.js} +1 -23
- package/{lib-B3BXMegM.cjs → lib-BiQ6cOZ7.cjs} +1 -1
- package/{net-2q-K92j1.d.ts → net-B8YQuB9E.d.ts} +2 -2
- package/net.cjs +1 -1
- package/net.d.ts +1 -1
- package/net.js +1 -1
- package/package.json +1 -1
- package/packages.cjs +1 -1
- package/packages.d.ts +15 -2
- package/packages.js +114 -113
- package/{proxy-CKNx2dKf.cjs → proxy-CL8j00ao.cjs} +1 -1
- package/{proxy-CjxVIiz2.d.ts → proxy-ClDBa5il.d.ts} +2 -2
- package/{proxy-Bwr-0XVF.js → proxy-vAsYHMIa.js} +1 -1
- package/rooms.cjs +1 -1
- package/rooms.d.ts +11 -11
- package/rooms.js +99 -89
- package/storage.cjs +1 -1
- package/storage.d.ts +1 -1
- package/storage.js +3 -3
- package/account-generation-D8wbg2Lb.cjs +0 -1
- package/api-2ecr7axy.cjs +0 -3
package/rooms.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
|
|
2
|
-
import { l as t, s as n, u as r } from "./api-
|
|
2
|
+
import { l as t, s as n, u as r } from "./api-BYtMzj8u.js";
|
|
3
3
|
import { t as i } from "./busy-DsMWrSzc.js";
|
|
4
4
|
import { ROOM_TEMPORARY_MS as a } from "./contract.js";
|
|
5
5
|
//#region src/rooms.ts
|
|
6
6
|
var o = /* @__PURE__ */ e({
|
|
7
|
-
available: () =>
|
|
8
|
-
create: () =>
|
|
9
|
-
join: () =>
|
|
10
|
-
open: () =>
|
|
7
|
+
available: () => y,
|
|
8
|
+
create: () => S,
|
|
9
|
+
join: () => C,
|
|
10
|
+
open: () => x
|
|
11
11
|
}), s = {
|
|
12
12
|
wrongKey: "rooms: wrong room key",
|
|
13
13
|
inviteNoKey: "rooms: the invite carries no key",
|
|
@@ -30,7 +30,6 @@ var o = /* @__PURE__ */ e({
|
|
|
30
30
|
ownerKeepsEvery: "rooms: the owner keeps every permission",
|
|
31
31
|
removeYourself: "rooms: you cannot remove yourself",
|
|
32
32
|
needsAccount: "rooms: claiming needs an account",
|
|
33
|
-
needsPremium: "rooms: claiming needs premium",
|
|
34
33
|
nameClaimed: "rooms: the name is claimed",
|
|
35
34
|
notClaimed: "rooms: the room is not claimed",
|
|
36
35
|
noMailbox: "rooms: the room keeps no messages",
|
|
@@ -43,6 +42,7 @@ var o = /* @__PURE__ */ e({
|
|
|
43
42
|
notTemporaryClaimer: "rooms: only the app that claimed the room can set when it expires",
|
|
44
43
|
temporaryUnavailable: "rooms: temporary claims are not available",
|
|
45
44
|
mailboxUnavailable: "rooms: the mailbox switch is not available",
|
|
45
|
+
guestUnavailable: "rooms: guest joins are not available",
|
|
46
46
|
tooFast: "rooms: sending too fast",
|
|
47
47
|
tooLarge: "rooms: the message is too large",
|
|
48
48
|
unavailable: "rooms: rooms are unavailable",
|
|
@@ -68,74 +68,82 @@ var o = /* @__PURE__ */ e({
|
|
|
68
68
|
throw c("unavailable", s.unavailable);
|
|
69
69
|
}, m = (e) => e === "blocked" ? "blocked" : e === "not-found" ? "ended" : "unavailable", h = (e) => {
|
|
70
70
|
if (e !== void 0 && e !== !1) return e === !0 ? a.default : typeof e != "number" || !Number.isInteger(e) ? null : e >= a.min && e <= a.max ? e : null;
|
|
71
|
-
}, g =
|
|
72
|
-
let
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
71
|
+
}, g = (e, t) => {
|
|
72
|
+
let n = t ? e?.guest : e;
|
|
73
|
+
return typeof n?.join == "function" ? n : void 0;
|
|
74
|
+
}, _ = (e) => {
|
|
75
|
+
let t = e?.guest;
|
|
76
|
+
if (t !== void 0 && typeof t != "boolean") throw c("invalid", s.malformed);
|
|
77
|
+
return t === !0;
|
|
78
|
+
}, v = async (e, t) => {
|
|
79
|
+
let n = e.invite, a = e, o = 0, f = e.self, p = e.owner, _ = e.claimed, v = e.mailbox, y = 0, b = await e.defaults().catch(() => u), x = !1, S = /* @__PURE__ */ new Set(), C = /* @__PURE__ */ new Set(), w = i("room"), T = () => {}, E = () => {}, D = new Promise((e) => {
|
|
80
|
+
E = e;
|
|
81
|
+
}), O = (e) => {
|
|
82
|
+
let t = [...C];
|
|
83
|
+
C.clear();
|
|
77
84
|
for (let n of t) try {
|
|
78
85
|
n(e);
|
|
79
86
|
} catch {}
|
|
80
|
-
},
|
|
81
|
-
|
|
82
|
-
},
|
|
83
|
-
if (
|
|
87
|
+
}, k = (e) => {
|
|
88
|
+
x || (x = !0, T(), S.clear(), w(), O(c("closed", s.ended)), E({ reason: e }));
|
|
89
|
+
}, A = (e) => {
|
|
90
|
+
if (x) return;
|
|
84
91
|
let t = e;
|
|
85
|
-
if (t.type === "defaults" && (
|
|
86
|
-
id:
|
|
92
|
+
if (t.type === "defaults" && (b = t.defaults), t.type === "permissions" && t.id === f.id && (f = {
|
|
93
|
+
id: f.id,
|
|
87
94
|
permissions: t.permissions,
|
|
88
95
|
maxMessageBytes: t.maxMessageBytes
|
|
89
96
|
}), t.type === "claim") {
|
|
90
|
-
|
|
97
|
+
y += 1;
|
|
91
98
|
let e = t.claimed && t.mailbox !== !1;
|
|
92
99
|
t = {
|
|
93
100
|
type: "claim",
|
|
94
101
|
claimed: t.claimed,
|
|
95
102
|
owner: t.owner,
|
|
96
103
|
mailbox: e
|
|
97
|
-
},
|
|
104
|
+
}, _ = t.claimed, p = t.owner, v = e ? d() : null;
|
|
98
105
|
}
|
|
99
|
-
for (let e of [...
|
|
106
|
+
for (let e of [...S]) try {
|
|
100
107
|
e(t);
|
|
101
108
|
} catch {}
|
|
102
|
-
},
|
|
103
|
-
Promise.resolve(e.on(
|
|
104
|
-
t ===
|
|
109
|
+
}, j = (e, t) => {
|
|
110
|
+
Promise.resolve(e.on(A)).catch(() => {}), Promise.resolve(e.closed).then((e) => {
|
|
111
|
+
t === o && k(e.reason);
|
|
105
112
|
}, () => {});
|
|
106
|
-
},
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
if (
|
|
111
|
-
if (
|
|
112
|
-
if (
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
113
|
+
}, M = async (e, r) => {
|
|
114
|
+
let i = g(e, t);
|
|
115
|
+
if (!i) return k("unavailable");
|
|
116
|
+
let s = await i.join(n).catch(() => void 0);
|
|
117
|
+
if (x || r !== o) return;
|
|
118
|
+
if (!s) return k("unavailable");
|
|
119
|
+
if ("error" in s) return k(m(s.error));
|
|
120
|
+
if (s.self.id !== f.id) return Promise.resolve(s.leave()).catch(() => {}), k("unavailable");
|
|
121
|
+
a = s, f = s.self, p = s.owner, _ = s.claimed, v = s.mailbox, j(s, r);
|
|
122
|
+
let c = await s.defaults().catch(() => void 0);
|
|
123
|
+
c && !x && r === o && (b = c);
|
|
116
124
|
};
|
|
117
|
-
|
|
118
|
-
let n =
|
|
119
|
-
|
|
120
|
-
}),
|
|
121
|
-
let
|
|
122
|
-
if (
|
|
123
|
-
let t = () => {},
|
|
125
|
+
T = r((e, t) => {
|
|
126
|
+
let n = o;
|
|
127
|
+
o = t, !(x || n === 0 || n === t) && (O(c("unavailable", s.unavailable)), M(e.rooms, t));
|
|
128
|
+
}), j(e, o);
|
|
129
|
+
let N = async (e) => {
|
|
130
|
+
if (x) throw c("closed", s.ended);
|
|
131
|
+
let t = () => {}, n = new Promise((e, n) => {
|
|
124
132
|
t = n;
|
|
125
133
|
});
|
|
126
|
-
|
|
134
|
+
C.add(t);
|
|
127
135
|
try {
|
|
128
|
-
return await Promise.race([Promise.resolve(e(
|
|
136
|
+
return await Promise.race([Promise.resolve(e(a)), n]);
|
|
129
137
|
} catch (e) {
|
|
130
138
|
throw l(e) ? e : c("unavailable", s.unavailable);
|
|
131
139
|
} finally {
|
|
132
|
-
|
|
140
|
+
C.delete(t);
|
|
133
141
|
}
|
|
134
|
-
},
|
|
135
|
-
let t = await
|
|
142
|
+
}, P = async (e) => {
|
|
143
|
+
let t = await N(e);
|
|
136
144
|
if ("error" in t) throw c(t.error, t.message);
|
|
137
|
-
},
|
|
138
|
-
let t = await
|
|
145
|
+
}, F = async (e) => {
|
|
146
|
+
let t = await N(e);
|
|
139
147
|
if (typeof t == "object" && t && "error" in t) throw c(t.error, t.message);
|
|
140
148
|
return t;
|
|
141
149
|
};
|
|
@@ -143,32 +151,32 @@ var o = /* @__PURE__ */ e({
|
|
|
143
151
|
id: e.id,
|
|
144
152
|
name: e.name,
|
|
145
153
|
key: e.key,
|
|
146
|
-
invite:
|
|
154
|
+
invite: n,
|
|
147
155
|
get self() {
|
|
148
|
-
return
|
|
156
|
+
return f;
|
|
149
157
|
},
|
|
150
158
|
get owner() {
|
|
151
|
-
return
|
|
159
|
+
return p;
|
|
152
160
|
},
|
|
153
161
|
get claimed() {
|
|
154
|
-
return
|
|
162
|
+
return _;
|
|
155
163
|
},
|
|
156
164
|
get mailbox() {
|
|
157
|
-
return
|
|
165
|
+
return v;
|
|
158
166
|
},
|
|
159
|
-
defaults: () =>
|
|
160
|
-
members: () =>
|
|
161
|
-
send: (e) =>
|
|
162
|
-
edit: (e, t) =>
|
|
163
|
-
delete: (e, t) =>
|
|
164
|
-
backlog: (e, t) =>
|
|
165
|
-
setDefault: (e, t) =>
|
|
166
|
-
limit: (e, t) =>
|
|
167
|
-
grant: (e, t) =>
|
|
168
|
-
revoke: (e, t) =>
|
|
169
|
-
remove: (e) =>
|
|
170
|
-
block: (e) =>
|
|
171
|
-
unblock: (e) =>
|
|
167
|
+
defaults: () => b,
|
|
168
|
+
members: () => N((e) => e.members()),
|
|
169
|
+
send: (e) => P((t) => t.send(e)),
|
|
170
|
+
edit: (e, t) => P((n) => n.edit(e, t)),
|
|
171
|
+
delete: (e, t) => P((n) => n.delete(e, t)),
|
|
172
|
+
backlog: (e, t) => F((n) => n.backlog(e, t)),
|
|
173
|
+
setDefault: (e, t) => P((n) => n.setDefault(e, t)),
|
|
174
|
+
limit: (e, t) => P((n) => n.limit(e, t)),
|
|
175
|
+
grant: (e, t) => P((n) => n.grant(e, t)),
|
|
176
|
+
revoke: (e, t) => P((n) => n.revoke(e, t)),
|
|
177
|
+
remove: (e) => P((t) => t.remove(e)),
|
|
178
|
+
block: (e) => P((t) => t.block(e)),
|
|
179
|
+
unblock: (e) => P((t) => t.unblock(e)),
|
|
172
180
|
claim: async (e) => {
|
|
173
181
|
let t = e?.description;
|
|
174
182
|
if (t !== void 0 && typeof t != "string") throw c("invalid", s.badDescription);
|
|
@@ -181,7 +189,7 @@ var o = /* @__PURE__ */ e({
|
|
|
181
189
|
...n === void 0 ? {} : { temporary: n },
|
|
182
190
|
...r === void 0 ? {} : { mailbox: r }
|
|
183
191
|
};
|
|
184
|
-
return Object.keys(i).length === 0 ?
|
|
192
|
+
return Object.keys(i).length === 0 ? P((e) => e.claim()) : P((e) => {
|
|
185
193
|
if (n !== void 0 && e.temporaryClaims !== !0) throw c("unavailable", s.temporaryUnavailable);
|
|
186
194
|
if (r === !1 && e.mailboxSwitch !== !0) throw c("unavailable", s.mailboxUnavailable);
|
|
187
195
|
return e.claim(i);
|
|
@@ -189,41 +197,43 @@ var o = /* @__PURE__ */ e({
|
|
|
189
197
|
},
|
|
190
198
|
setMailbox: async (e) => {
|
|
191
199
|
if (typeof e != "boolean") throw c("invalid", s.malformed);
|
|
192
|
-
let t =
|
|
193
|
-
await
|
|
200
|
+
let t = y;
|
|
201
|
+
await P((t) => {
|
|
194
202
|
if (t.mailboxSwitch !== !0) throw c("unavailable", s.mailboxUnavailable);
|
|
195
203
|
return t.setMailbox(e);
|
|
196
|
-
}),
|
|
204
|
+
}), y === t && (e ? v === null && (v = d()) : v = null);
|
|
197
205
|
},
|
|
198
|
-
release: () =>
|
|
206
|
+
release: () => P((e) => e.release()),
|
|
199
207
|
usage: async () => {
|
|
200
|
-
let e = await
|
|
201
|
-
return
|
|
208
|
+
let e = await F((e) => e.usage());
|
|
209
|
+
return v = e, e;
|
|
202
210
|
},
|
|
203
|
-
on: async (e) =>
|
|
204
|
-
|
|
211
|
+
on: async (e) => x ? () => {} : (S.add(e), () => {
|
|
212
|
+
S.delete(e);
|
|
205
213
|
}),
|
|
206
214
|
leave: async () => {
|
|
207
|
-
await Promise.resolve(
|
|
215
|
+
await Promise.resolve(a.leave()).catch(() => {}), k("left");
|
|
208
216
|
},
|
|
209
|
-
closed:
|
|
217
|
+
closed: D
|
|
210
218
|
};
|
|
211
|
-
},
|
|
219
|
+
}, y = async () => {
|
|
212
220
|
let e = await f();
|
|
213
221
|
return e ? e.available().catch(() => !1) : !1;
|
|
214
|
-
},
|
|
215
|
-
let
|
|
216
|
-
if (!
|
|
217
|
-
let
|
|
218
|
-
if (
|
|
219
|
-
|
|
220
|
-
|
|
222
|
+
}, b = async (e, t) => {
|
|
223
|
+
let n = await f();
|
|
224
|
+
if (!n) throw c("unavailable", s.unavailable);
|
|
225
|
+
let r = g(n, e);
|
|
226
|
+
if (!r) throw c("unavailable", s.guestUnavailable);
|
|
227
|
+
let i = await t(r).catch(p);
|
|
228
|
+
if ("error" in i) throw c(i.error, i.message);
|
|
229
|
+
return v(i, e);
|
|
230
|
+
}, x = async (e, t) => {
|
|
221
231
|
if (typeof e != "string" || e.length === 0 || e.length > 72) throw c("invalid", s.badName);
|
|
222
|
-
return
|
|
223
|
-
},
|
|
232
|
+
return b(_(t), (n) => n.open(e, t));
|
|
233
|
+
}, S = async (e) => b(_(e), (t) => t.create(e)), C = async (e, t) => {
|
|
224
234
|
let n = typeof e == "string" ? e.indexOf(".") : -1;
|
|
225
235
|
if (n <= 0 || n === e.length - 1) throw c("invalid", s.inviteNoKey);
|
|
226
|
-
return
|
|
236
|
+
return b(_(t), (n) => n.join(e, t));
|
|
227
237
|
};
|
|
228
238
|
//#endregion
|
|
229
|
-
export {
|
|
239
|
+
export { y as available, S as create, C as join, x as open, o as t };
|
package/storage.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./rolldown-runtime-BIInC43l.cjs"),t=require("./api-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./rolldown-runtime-BIInC43l.cjs"),t=require("./api-Csb5b8dE.cjs"),n=require("./contract.cjs"),r=require("./account-generation-DOuApHq5.cjs"),i=require("./account-storage-CL0wLuQw.cjs");var a=e.t({available:()=>v,delete:()=>C,get:()=>x,list:()=>S,put:()=>y}),o=new Map(Object.values(n.STORAGE_REFUSALS).map(({code:e,message:t})=>[t,e])),s=new Set(o.values()),c=(e,t)=>Object.assign(Error(t),{code:e}),l=e=>c(n.STORAGE_REFUSALS[e].code,n.STORAGE_REFUSALS[e].message),u=e=>e instanceof Error&&s.has(e.code),d=e=>{if(u(e))return e;let t=e instanceof Error?e.message:``,n=o.get(t);return n?c(n,t):l(`unavailable`)},f=async()=>{if(!t.l)return;let e=(await t.s(`storage`).catch(()=>void 0))?.storage;return typeof e?.put==`function`?e:void 0},p=()=>{throw l(`unavailable`)},m=e=>typeof e==`object`&&!!e&&typeof e.error==`string`&&typeof e.message==`string`,h=(e,t,n)=>{throw e.error===`aborted`?t?.reason??new DOMException(`The operation was aborted.`,`AbortError`):(e.error===`account-changed`&&n&&r.r(n.generation),s.has(e.error)?c(e.error,e.message):l(`unavailable`))},g=async e=>{try{return await i.m(e)}catch(e){throw i.l(e)?l(`accountChanged`):e instanceof Error&&/not connected|not signed in/i.test(e.message)?l(`needsAccount`):l(`unavailable`)}},_=(e,t)=>(e.catch(()=>{}),t?Promise.race([e,new Promise((e,n)=>t.addEventListener(`abort`,()=>n(t.reason),{once:!0}))]):e),v=async()=>{let e=await f();return e?Promise.resolve(e.available()).catch(()=>!1):!1},y=async(e,t={})=>{let n=i.s(),{signal:r,onProgress:a,key:o}=t;r?.throwIfAborted();let s=typeof Blob<`u`&&e instanceof Blob,c=typeof ReadableStream<`u`&&e instanceof ReadableStream;if(!s&&!c)throw l(`notAFile`);let u=s?e.size:t.size;if(typeof u!=`number`||!Number.isSafeInteger(u)||u<0||s&&t.size!==void 0&&t.size!==u)throw l(`badSize`);let d=await f();if(!d)throw l(`unavailable`);let v=await g(n);r?.throwIfAborted();let y=await _(Promise.resolve(d.put(e,{size:u,...o===void 0?{}:{key:o},accountPin:v,...r?{signal:r}:{},...typeof a==`function`?{onProgress:e=>{try{a(e)}catch{}}}:{}})).catch(p),r);return m(y)?h(y,r,n):y},b=(e,t,n)=>{let r=(t,n)=>{if(t===void 0)return n;let r=Math.trunc(Number.isFinite(t)?t:t>0?e:-e);return r<0?Math.max(e+r,0):Math.min(r,e)},i=r(t,0);return{from:i,to:Math.max(i,r(n,e))}},x=async(e,n,r={})=>{if(typeof e!=`string`)throw l(`badUrl`);if(typeof n!=`string`)throw l(`badKey`);let{signal:i}=r;i?.throwIfAborted();let a=async()=>{let r=await f();if(!r)throw l(`unavailable`);let a=t.c()?.epoch,o=await _(Promise.resolve(r.get(e,n,i?{signal:i}:void 0)).catch(p),i);return m(o)?h(o,i):{handle:o,epoch:a}},o=await a(),s=async()=>{let e=t.c()?.epoch;return o.epoch!==void 0&&e!==void 0&&e!==o.epoch&&(o=await a()),o.handle},c=(e,t)=>{let n;return new ReadableStream({pull:async r=>{try{if(!n){let r=await s(),i=await Promise.resolve(r.read(e,t)).catch(p);if(m(i))return h(i);n=i.getReader()}let{value:i,done:a}=await n.read();a?r.close():r.enqueue(i)}catch(e){throw d(e)}},cancel:e=>n?.cancel(e)},{highWaterMark:0})},u=(e,t)=>({size:t-e,stream:()=>c(e,t),arrayBuffer:async()=>{let n=new Uint8Array(t-e),r=c(e,t).getReader(),i=0;for(;;){let{value:e,done:t}=await r.read();if(t)break;n.set(e,i),i+=e.length}return n.buffer},slice:(n,r)=>{let i=b(t-e,n,r);return u(e+i.from,e+i.to)}});return u(0,o.handle.size)},S=async(e={})=>{let t=i.s(),n=await f();if(!n)throw l(`unavailable`);let r=await g(t),{limit:a,cursor:o}=e,s=await Promise.resolve(n.list({accountPin:r,...a===void 0?{}:{limit:a},...o===void 0?{}:{cursor:o}})).catch(p);return m(s)?h(s,void 0,t):s},C=async e=>{let t=i.s();if(typeof e!=`string`)throw l(`badUrl`);let n=await f();if(!n)throw l(`unavailable`);let r=await g(t),a=await Promise.resolve(n.delete(e,{accountPin:r})).catch(p);m(a)&&h(a,void 0,t)};exports.available=v,exports.delete=C,exports.get=x,exports.list=S,exports.put=y,Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return a}});
|
package/storage.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Ct as StorageProgress, Ot as StoredObject, kt as StoredPage, wt as StoragePutOptions, xt as StorageErrorCode } from "./contract-
|
|
1
|
+
import { Ct as StorageProgress, Ot as StoredObject, kt as StoredPage, wt as StoragePutOptions, xt as StorageErrorCode } from "./contract-CMQOic3K.js";
|
|
2
2
|
declare namespace storage_d_exports {
|
|
3
3
|
export { StorageError, StorageErrorCode, StorageProgress, StoragePutOptions, StoredBlob, StoredObject, StoredPage, available, remove as delete, get, list, put };
|
|
4
4
|
}
|
package/storage.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
|
|
2
|
-
import { c as t, l as n, s as r } from "./api-
|
|
2
|
+
import { c as t, l as n, s as r } from "./api-BYtMzj8u.js";
|
|
3
3
|
import { STORAGE_REFUSALS as i } from "./contract.js";
|
|
4
|
-
import { r as a } from "./account-generation-
|
|
5
|
-
import { l as o, m as s, s as c } from "./account-storage-
|
|
4
|
+
import { r as a } from "./account-generation-CTB1J33G.js";
|
|
5
|
+
import { l as o, m as s, s as c } from "./account-storage-D1RiskV6.js";
|
|
6
6
|
//#region src/storage.ts
|
|
7
7
|
var l = /* @__PURE__ */ e({
|
|
8
8
|
available: () => S,
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
const e=require("./api-2ecr7axy.cjs");var t=0,n=new Set,r=2e3,i=null,a=e=>{e?.switched!==!1&&(t+=1,i&&=(clearTimeout(i.timer),null));for(let e of[...n])try{e()}catch{}},o=!1,s=0,c=()=>{let t=e.c();t&&s!==t.epoch&&(s=t.epoch,Promise.resolve(t.remote.account.onChange(a)).catch(()=>{s===t.epoch&&(s=0)}))},l=()=>{!o&&e.l&&(o=!0,e.u(c))},u=()=>t,d=e=>(n.add(e),l(),()=>{n.delete(e)}),f=e=>{if(e!==t||i?.generation===e)return;let n=setTimeout(()=>{i?.timer===n&&(i=null,t===e&&a({switched:!0}))},r);i={generation:e,timer:n}};Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return u}});
|
package/api-2ecr7axy.cjs
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
let e=require("osra");var t=1e4,n=16,r=e=>{let t;try{t=e.contentWindow}catch{return!0}if(!t)return!0;try{let e=t.location.href;return e!==``&&e!==`about:blank`}catch{return!0}},i=(e,i=t)=>new Promise(t=>{if(r(e))return t();let a=()=>{clearInterval(o),clearTimeout(s),e.removeEventListener(`load`,a),t()},o=setInterval(()=>{r(e)&&a()},n),s=setTimeout(a,i);e.addEventListener(`load`,a)}),a=32,o=8,s=120,c=typeof CSS<`u`&&CSS.supports(`clip-path`,`path('M0 0H1V1H0Z')`),l=typeof CSS<`u`&&CSS.supports(`clip-path`,`polygon(nonzero, 0px 0px, 1px 0px, 1px 1px)`),u=e=>{let t=e.style;t.setProperty(`display`,`block`,`important`),t.setProperty(`position`,`fixed`,`important`),t.setProperty(`top`,`0`,`important`),t.setProperty(`left`,`0`,`important`),t.setProperty(`width`,`100%`,`important`),t.setProperty(`height`,`100%`,`important`),t.setProperty(`border`,`none`,`important`),t.setProperty(`padding`,`0`,`important`),t.setProperty(`box-sizing`,`border-box`,`important`),t.setProperty(`clip-path`,`inset(100%)`,`important`),t.setProperty(`background`,`transparent`),t.setProperty(`color-scheme`,`normal`),t.setProperty(`z-index`,`2147483647`),e.setAttribute(`title`,`FKN`)},d=({x:e,y:t,width:n,height:r,radius:i})=>{if(!i)return`M${e} ${t}h${n}v${r}h${-n}Z`;let a=Math.min(n,r)/2,[o,s,c,l]=i.map(e=>Math.max(0,Math.min(e,a)));return`M${e+o} ${t}h${n-o-s}a${s} ${s} 0 0 1 ${s} ${s}v${r-s-c}a${c} ${c} 0 0 1 ${-c} ${c}h${-(n-c-l)}a${l} ${l} 0 0 1 ${-l} ${-l}v${-(r-l-o)}a${o} ${o} 0 0 1 ${o} ${-o}Z`},f=()=>c&&l,p=({x:e,y:t,width:n,height:r})=>[[e,t],[e+n,t],[e+n,t+r],[e,t+r],[e,t]],m=e=>{let t=e[0];if(!t)return[];let n=p(t)[0],r=[];return e.forEach((t,i)=>{r.push(...p(t)),i>0&&i<e.length-1&&r.push(n)}),r},h=e=>`polygon(nonzero, ${m(e).map(([e,t])=>`${e}px ${t}px`).join(`, `)})`,g=({x:e,y:t,width:n,height:r,radius:i},a)=>{let o=`${t}px ${a.width-e-n}px ${a.height-t-r}px ${e}px`;return i?`inset(${o} round ${i.map(e=>`${e}px`).join(` `)})`:`inset(${o})`},ee=(e,t,n)=>{if(t)return`none`;if(e.length===0)return`inset(100%)`;let r=e.length===1?e[0]:void 0;return r?g(r,n):l&&e.length<=5&&!e.some(e=>e.radius)?h(e):`path('${e.map(d).join(``)}')`},te=e=>{if(e.length<2)return null;let t=Math.min(...e.map(e=>e.x)),n=Math.min(...e.map(e=>e.y));return{x:t,y:n,width:Math.max(...e.map(e=>e.x+e.width))-t,height:Math.max(...e.map(e=>e.y+e.height))-n}},ne=(e,t,n)=>t>=e.x&&t<e.x+e.width&&n>=e.y&&n<e.y+e.height,re=16,_=(e,t,n)=>t===1?e*re:t===2?e*n:e,ie=(e,t,n)=>{let r=getComputedStyle(e);return n!==0&&/auto|scroll/.test(r.overflowY)&&e.scrollHeight>e.clientHeight?!0:t!==0&&/auto|scroll/.test(r.overflowX)&&e.scrollWidth>e.clientWidth},ae=(e,t,n)=>{for(let r=e;r;r=r.parentElement)if(ie(r,t,n))return r;return document.scrollingElement},v=null,y=null,b=e=>({width:e.offsetWidth||window.innerWidth,height:e.offsetHeight||window.innerHeight}),x=e=>{if(!y||!v||!ne(y,e.clientX,e.clientY))return;let t=document.elementFromPoint(e.clientX,e.clientY);if(!t||t===v)return;let n=_(e.deltaX,e.deltaMode,window.innerWidth),r=_(e.deltaY,e.deltaMode,window.innerHeight),i=ae(t,n,r);i&&(i.scrollBy({left:n,top:r,behavior:`instant`}),e.cancelable&&e.preventDefault())},oe=e=>{let t=y!==null;y=e,t!==(e!==null)&&(e?window.addEventListener(`wheel`,x,{capture:!0,passive:!1}):window.removeEventListener(`wheel`,x,{capture:!0}))},S=0,se=e=>{if(e===S)return;S=e;let t=document.documentElement.style;e>0?(t.setProperty(`margin-top`,`${e}px`,`important`),t.setProperty(`--fkn-inset-top`,`${e}px`)):(t.removeProperty(`margin-top`),t.removeProperty(`--fkn-inset-top`))},C=(e,{modal:t,rects:n,inset:r},i)=>{if(se(r),!c){let r=t||n.length>0;e.style.setProperty(`pointer-events`,r?`auto`:`none`,`important`),e.style.setProperty(`visibility`,r?`visible`:`hidden`,`important`);return}let a=ee(n,t,i),o=a===`none`||CSS.supports(`clip-path`,a)?a:`inset(100%)`;e.style.setProperty(`clip-path`,o,`important`),oe(t||o!==a?null:te(n))},ce=e=>{if(typeof e!=`object`||!e)return 0;let{top:t}=e;return typeof t!=`number`||!Number.isFinite(t)||t<=0?0:Math.min(Math.round(t),s)},le=e=>{if(Array.isArray(e)&&e.length===4&&e.every(e=>typeof e==`number`&&Number.isFinite(e)&&e>=0))return e.some(e=>e>0)?e:void 0},ue=(e,t)=>{if(typeof e!=`object`||!e)return null;let{x:n,y:r,width:i,height:a}=e;if(![n,r,i,a].every(e=>typeof e==`number`&&Number.isFinite(e)))return null;let o=t.width,s=t.height,c=Math.max(0,Math.min(Math.round(n),o)),l=Math.max(0,Math.min(Math.round(r),s)),u=Math.max(c,Math.min(Math.round(n+i),o)),d=Math.max(l,Math.min(Math.round(r+a),s)),f=le(e.radius);return{x:c,y:l,width:u-c,height:d-l,...f?{radius:f}:{}}},w={"not-rendered":`this page is not painting it at all, so it or an ancestor is display:none, or the frame was moved out of the layout`,clipped:`it is clipped away or positioned outside the viewport`,"not-shown":`it is rendered but would not be seen, so either something is drawn over it, or it or an ancestor has opacity below 1, visibility:hidden, or a filter`},de=e=>Array.isArray(e)?e.slice(0,o).flatMap(e=>{if(typeof e!=`object`||!e)return[];let{kind:t,cause:n,level:r}=e;return typeof t!=`string`||t.length>40||typeof n!=`string`||!(n in w)||r!==`full`&&r!==`liveness`?[]:[{kind:t,cause:n,level:r}]}):[],T=new Set,fe=e=>{for(let{kind:t,cause:n,level:r}of e)T.has(t)||(T.add(t),console.error(`[FKN] The FKN ${JSON.stringify(t)} is not visible on this page: ${w[n]}. Nobody using this page can see or answer it.
|
|
2
|
-
@fkn/lib draws its UI inside <iframe title="FKN"> and sets display, position, top, left, width, height, border, padding, box-sizing, clip-path and z-index on that element. Leave those as they are, then check for an ancestor with opacity, visibility, display or a clipping transform, and for an element stacked above it.`+(r===`liveness`?`
|
|
3
|
-
This browser reports limited detail, so the cause above is a best guess.`:``)))},E=(e,t)=>{if(typeof e!=`object`||!e)return null;let n=e,r=(Array.isArray(n.rects)?n.rects.slice(0,a):[]).map(e=>ue(e,t)).filter(e=>e!==null&&e.width>0&&e.height>0);return{modal:n.modal===!0,rects:r,hidden:de(n.hidden),inset:ce(n.inset)}},pe=()=>v!==null,D=null,O=null,me=()=>{if(!v||D===null)return;let e=b(v),t=E(D,e);t&&C(v,t,e)},he=e=>{typeof ResizeObserver<`u`&&(O??=new ResizeObserver(me),O.disconnect(),O.observe(e))},ge=e=>{u(e),C(e,{modal:!1,rects:[],hidden:[],inset:0},b(e)),v=e,he(e)},_e=e=>{if(!v)return;let t=b(v),n=E(e,t);n&&(D=e,C(v,n,t),fe(n.hidden))},ve=[`fkn.app`,`fkn.dev`,`sdbx.app`,`fkn.cloudflareaccess.com`,`horionsoftware.com`,`62e9d4fbf21d90ebd4342e54b4babbd3.r2.cloudflarestorage.com`,`web-b3z.pages.dev`,`fkn-console.pages.dev`,`dev-dms.pages.dev`,`fkn-www.pages.dev`,`fkn-homepage.pages.dev`,`fkn-sandbox.pages.dev`,`internal-3ar.pages.dev`,`stub-ben.pages.dev`,`ripple-3t3.pages.dev`,`media-player-e3s.pages.dev`,`youtube-3c4.pages.dev`,`horionsoftware.pages.dev`,`container-ckf.pages.dev`,`stub-plugin.pages.dev`,`stub.plugins.banou.dev`],ye=e=>e.replace(/\.+$/,``),be=[`79.127.204.69`,`152.233.49.59`],xe=e=>{let t;try{t=new URL(`http://${e.includes(`:`)&&!e.startsWith(`[`)?`[${e}]`:e}/`).hostname}catch{return}let n=/^\[(?:::ffff:|64:ff9b::)([0-9a-f]{1,4}):([0-9a-f]{1,4})\]$/.exec(t);if(n){let e=parseInt(n[1],16),t=parseInt(n[2],16);return[e>>8,e&255,t>>8,t&255].join(`.`)}return/^\d+\.\d+\.\d+\.\d+$/.test(t)?t:void 0},Se=e=>{let t=ye(e);if(ve.some(e=>t===e||t.endsWith(`.${e}`)))return!0;let n=xe(t);return n!==void 0&&be.includes(n)},Ce=e=>{let t=typeof e==`string`?e:e instanceof URL?e.href:e.url,n;try{n=new URL(t)}catch{return}if(Se(n.hostname))throw Error(`fetch refuses FKN platform domains (${n.hostname})`)},we=`autoplay.fullscreen.picture-in-picture.encrypted-media.screen-wake-lock.speaker-selection.captured-surface-control.camera.microphone.display-capture.geolocation.midi.usb.serial.hid.bluetooth.gamepad.keyboard-map.xr-spatial-tracking.accelerometer.gyroscope.magnetometer.ambient-light-sensor.compute-pressure.clipboard-read.clipboard-write.storage-access.window-management.local-fonts.idle-detection.web-share.sync-xhr.unload.payment.publickey-credentials-get.publickey-credentials-create.otp-credentials.identity-credentials-get.digital-credentials-get.local-network.local-network-access.loopback-network`.split(`.`),k=()=>{try{let e=globalThis.document?.featurePolicy?.features?.();return e===void 0?void 0:new Set(e)}catch{return}},A=(e=!0,t=k())=>[...we,...e?[`cross-origin-isolated`]:[]].filter(e=>t===void 0||t.has(e)).join(`; `),j=`https://fkn.app`,M=typeof globalThis<`u`&&globalThis.document?globalThis.document:void 0,N=typeof globalThis<`u`&&globalThis.crossOriginIsolated===!0,P=`${j}/api${N?`?coi=1`:``}`,Te=`fkn-api-port`,F=`fkn-api-port-ack`,Ee=2e3,De=()=>{if(!M||typeof window>`u`||window.parent===window)return Promise.resolve(void 0);let e;try{e=window.parent}catch{return Promise.resolve(void 0)}let t=new MessageChannel;return new Promise(n=>{let r=e=>{if(clearTimeout(a),t.port1.removeEventListener(`message`,i),!e)try{t.port1.close()}catch{}n(e)},i=e=>{e.data?.type===F&&r(t.port1)},a=setTimeout(()=>r(void 0),Ee);t.port1.addEventListener(`message`,i),t.port1.start();try{e.postMessage({type:Te},j,[t.port2])}catch{r(void 0)}})},I,Oe=()=>{if(I||!M)return I;let e=M.querySelector(`iframe[src="${P}"]`);if(e)I=e;else{let e=M.createElement(`iframe`);e.setAttribute(`allow`,A(N)),e.src=P,M.body.appendChild(e),I=e}return ge(I),I},L=(async()=>{if(!M)return;let e=await De();if(e)return{receive:e,emit:e};let t=Oe();if(!t)return;await i(t);let n=t.contentWindow;return n?{receive:window,emit:n}:void 0})(),ke=(e,{boundRetired:t=e=>e}={})=>{let n,r=0,i=!1,a=()=>{},o=()=>new Promise(e=>{a=e}),s=o(),c=s,l=new Set,u=new Set,d=0,f=0,p=()=>{let e=[...u];u.clear();let t=Error(`FKN: the broker was replaced while this call was pending; retry it`);for(let n of e)try{n(t)}catch{}};(async()=>{for await(let t of e){let e=++r;n={remote:t,epoch:e};let i=a;s=o(),i(t),p();for(let n of[...l])try{n(t,e)}catch{}}})().catch(()=>{});let m=async(e,r)=>{let a=n?.remote??await(i?t(s):s);for(let t of e.slice(0,-1))a=a[t];let o=a[e[e.length-1]??``];d=Date.now(),f+=1;let c=()=>{},l=new Promise((e,t)=>{c=t});u.add(c);try{return await Promise.race([Promise.resolve(o.apply(a,r)),l])}finally{--f,u.delete(c),d=Date.now()}},h=new Map,g=e=>{let t=e.join(`\0`),r=h.get(t);if(r)return r;let i=new Proxy(function(){},{get:(t,r)=>{if(typeof r!=`string`||r===`then`)return;let i=n;if(i){let t=i.remote;for(let n of e)t=t?.[n];if(t?.[r]===void 0)return}return g([...e,r])},apply:(t,n,r)=>m(e,r)});return h.set(t,i),i};return{facade:g([]),first:c.then(()=>{}),current:()=>n,onEpoch:e=>{if(l.add(e),n)try{e(n.remote,n.epoch)}catch{}return()=>{l.delete(e)}},lastCall:()=>d,inFlight:()=>f,routable:()=>n?Promise.resolve():s.then(()=>{}),retire:()=>{i=!0,n=void 0,p()}}},R=!1,z=new Set,B=()=>R,Ae=()=>{if(!R){R=!0;for(let e of[...z])try{e()}catch{}z.clear()}},V=e=>{R?e():z.add(e)},je=typeof window<`u`||typeof self<`u`,H=async()=>{if(typeof window<`u`)return L;if(typeof self<`u`)return{receive:self,emit:self}},U=`fkn-api`,Me=`fkn-api-window`,Ne={async*[Symbol.asyncIterator](){let t=await H();if(!t){await new Promise(()=>{});return}if(!B()){let n=new AbortController;V(()=>n.abort());for await(let r of(0,e.expose)({},{key:U,transport:t,unregisterSignal:n.signal})){if(n.signal.aborted)break;yield r}}yield*(0,e.expose)({},{key:Me,transport:t})}},W=!1,G=H().then(t=>new Promise(n=>{if(!t)return;let{receive:r}=t,i=t=>{(0,e.checkOsraMessageKey)(t.data,U)&&(r.removeEventListener(`message`,i),W=!0,n())};r.addEventListener(`message`,i)})),K=ke(Ne,{boundRetired:e=>Promise.race([e,G.then(()=>Q(e,()=>new Z))])});V(()=>K.retire());var q=Promise.race([K.first,new Promise(e=>V(e))]).then(()=>K.facade),J=8e3,Pe=1e3,Y=!1,X=class extends Error{constructor(e,t){super(`@fkn/lib: no broker connection within ${t}ms, so ${e} could not be requested`),this.name=`BrokerUnreachableError`}},Z=class extends Error{constructor(){super(`FKN @fkn/lib: this page relays its FKN channel to a worker, and the FKN page it reached predates a channel of the page's own; reload`),this.name=`OwnChannelUnavailableError`}},Q=(e,t)=>{let n=Y?Pe:J;return Promise.race([e,new Promise((e,r)=>setTimeout(()=>{Y=!0,r(t(n))},n))])},Fe=e=>B()?Q(K.routable().then(()=>K.facade),t=>W?new Z:new X(e,t)):Q(q,t=>new X(e,t));V(()=>{G.then(()=>{let e=setTimeout(()=>console.error(new Z),J);K.routable().then(()=>clearTimeout(e))})});var $=K.onEpoch,Ie=K.current,Le=K.lastCall,Re=K.inFlight;$(e=>{pe()&&e.overlay.setHost(_e,{exactClips:f()}).catch(()=>{})}),Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return Le}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return Ie}}),Object.defineProperty(exports,"d",{enumerable:!0,get:function(){return Ae}}),Object.defineProperty(exports,"f",{enumerable:!0,get:function(){return L}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return Re}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return je}}),Object.defineProperty(exports,"m",{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return X}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return q}}),Object.defineProperty(exports,"p",{enumerable:!0,get:function(){return Ce}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return Z}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return Fe}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return J}}),Object.defineProperty(exports,"u",{enumerable:!0,get:function(){return $}});
|