@graffiticode/l0000-view 0.1.0 → 0.1.2

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/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
- import { jsx as it, jsxs as kt } from "react/jsx-runtime";
2
- import at, { createContext as ge, useEffect as st, useLayoutEffect as ve, useContext as Oe, useMemo as re, useRef as P, useCallback as gt, useDebugValue as we, useState as k } from "react";
3
- var Ct = { exports: {} }, vt = {};
1
+ import { jsx as U, jsxs as Lt } from "react/jsx-runtime";
2
+ import ct, { createContext as Ee, useEffect as et, useLayoutEffect as ve, useContext as ye, useMemo as mt, useRef as P, useCallback as ht, useDebugValue as Oe, useState as at, useReducer as we } from "react";
3
+ var Ct = { exports: {} }, yt = {};
4
4
  /**
5
5
  * @license React
6
6
  * use-sync-external-store-shim.production.js
@@ -10,46 +10,46 @@ var Ct = { exports: {} }, vt = {};
10
10
  * This source code is licensed under the MIT license found in the
11
11
  * LICENSE file in the root directory of this source tree.
12
12
  */
13
- var Bt;
14
- function ye() {
15
- if (Bt) return vt;
16
- Bt = 1;
17
- var t = at;
18
- function e(i, p) {
19
- return i === p && (i !== 0 || 1 / i === 1 / p) || i !== i && p !== p;
13
+ var Kt;
14
+ function _e() {
15
+ if (Kt) return yt;
16
+ Kt = 1;
17
+ var t = ct;
18
+ function e(u, p) {
19
+ return u === p && (u !== 0 || 1 / u === 1 / p) || u !== u && p !== p;
20
20
  }
21
- var n = typeof Object.is == "function" ? Object.is : e, r = t.useState, o = t.useEffect, l = t.useLayoutEffect, a = t.useDebugValue;
22
- function d(i, p) {
23
- var c = p(), h = r({ inst: { value: c, getSnapshot: p } }), u = h[0].inst, g = h[1];
24
- return l(
21
+ var n = typeof Object.is == "function" ? Object.is : e, r = t.useState, o = t.useEffect, c = t.useLayoutEffect, a = t.useDebugValue;
22
+ function l(u, p) {
23
+ var i = p(), f = r({ inst: { value: i, getSnapshot: p } }), h = f[0].inst, E = f[1];
24
+ return c(
25
25
  function() {
26
- u.value = c, u.getSnapshot = p, m(u) && g({ inst: u });
26
+ h.value = i, h.getSnapshot = p, m(h) && E({ inst: h });
27
27
  },
28
- [i, c, p]
28
+ [u, i, p]
29
29
  ), o(
30
30
  function() {
31
- return m(u) && g({ inst: u }), i(function() {
32
- m(u) && g({ inst: u });
31
+ return m(h) && E({ inst: h }), u(function() {
32
+ m(h) && E({ inst: h });
33
33
  });
34
34
  },
35
- [i]
36
- ), a(c), c;
35
+ [u]
36
+ ), a(i), i;
37
37
  }
38
- function m(i) {
39
- var p = i.getSnapshot;
40
- i = i.value;
38
+ function m(u) {
39
+ var p = u.getSnapshot;
40
+ u = u.value;
41
41
  try {
42
- var c = p();
43
- return !n(i, c);
42
+ var i = p();
43
+ return !n(u, i);
44
44
  } catch {
45
45
  return !0;
46
46
  }
47
47
  }
48
- function R(i, p) {
48
+ function T(u, p) {
49
49
  return p();
50
50
  }
51
- var S = typeof window > "u" || typeof window.document > "u" || typeof window.document.createElement > "u" ? R : d;
52
- return vt.useSyncExternalStore = t.useSyncExternalStore !== void 0 ? t.useSyncExternalStore : S, vt;
51
+ var S = typeof window > "u" || typeof window.document > "u" || typeof window.document.createElement > "u" ? T : l;
52
+ return yt.useSyncExternalStore = t.useSyncExternalStore !== void 0 ? t.useSyncExternalStore : S, yt;
53
53
  }
54
54
  var Ot = {};
55
55
  /**
@@ -61,63 +61,63 @@ var Ot = {};
61
61
  * This source code is licensed under the MIT license found in the
62
62
  * LICENSE file in the root directory of this source tree.
63
63
  */
64
- var Kt;
65
- function _e() {
66
- return Kt || (Kt = 1, process.env.NODE_ENV !== "production" && function() {
67
- function t(c, h) {
68
- return c === h && (c !== 0 || 1 / c === 1 / h) || c !== c && h !== h;
64
+ var Jt;
65
+ function Re() {
66
+ return Jt || (Jt = 1, process.env.NODE_ENV !== "production" && function() {
67
+ function t(i, f) {
68
+ return i === f && (i !== 0 || 1 / i === 1 / f) || i !== i && f !== f;
69
69
  }
70
- function e(c, h) {
70
+ function e(i, f) {
71
71
  S || o.startTransition === void 0 || (S = !0, console.error(
72
72
  "You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release."
73
73
  ));
74
- var u = h();
75
- if (!i) {
76
- var g = h();
77
- l(u, g) || (console.error(
74
+ var h = f();
75
+ if (!u) {
76
+ var E = f();
77
+ c(h, E) || (console.error(
78
78
  "The result of getSnapshot should be cached to avoid an infinite loop"
79
- ), i = !0);
79
+ ), u = !0);
80
80
  }
81
- g = a({
82
- inst: { value: u, getSnapshot: h }
81
+ E = a({
82
+ inst: { value: h, getSnapshot: f }
83
83
  });
84
- var D = g[0].inst, s = g[1];
84
+ var D = E[0].inst, s = E[1];
85
85
  return m(
86
86
  function() {
87
- D.value = u, D.getSnapshot = h, n(D) && s({ inst: D });
87
+ D.value = h, D.getSnapshot = f, n(D) && s({ inst: D });
88
88
  },
89
- [c, u, h]
90
- ), d(
89
+ [i, h, f]
90
+ ), l(
91
91
  function() {
92
- return n(D) && s({ inst: D }), c(function() {
92
+ return n(D) && s({ inst: D }), i(function() {
93
93
  n(D) && s({ inst: D });
94
94
  });
95
95
  },
96
- [c]
97
- ), R(u), u;
96
+ [i]
97
+ ), T(h), h;
98
98
  }
99
- function n(c) {
100
- var h = c.getSnapshot;
101
- c = c.value;
99
+ function n(i) {
100
+ var f = i.getSnapshot;
101
+ i = i.value;
102
102
  try {
103
- var u = h();
104
- return !l(c, u);
103
+ var h = f();
104
+ return !c(i, h);
105
105
  } catch {
106
106
  return !0;
107
107
  }
108
108
  }
109
- function r(c, h) {
110
- return h();
109
+ function r(i, f) {
110
+ return f();
111
111
  }
112
112
  typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
113
- var o = at, l = typeof Object.is == "function" ? Object.is : t, a = o.useState, d = o.useEffect, m = o.useLayoutEffect, R = o.useDebugValue, S = !1, i = !1, p = typeof window > "u" || typeof window.document > "u" || typeof window.document.createElement > "u" ? r : e;
113
+ var o = ct, c = typeof Object.is == "function" ? Object.is : t, a = o.useState, l = o.useEffect, m = o.useLayoutEffect, T = o.useDebugValue, S = !1, u = !1, p = typeof window > "u" || typeof window.document > "u" || typeof window.document.createElement > "u" ? r : e;
114
114
  Ot.useSyncExternalStore = o.useSyncExternalStore !== void 0 ? o.useSyncExternalStore : p, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());
115
115
  }()), Ot;
116
116
  }
117
- process.env.NODE_ENV === "production" ? Ct.exports = ye() : Ct.exports = _e();
118
- var Jt = Ct.exports;
119
- const oe = 0, se = 1, ie = 2, zt = 3;
120
- var Yt = Object.prototype.hasOwnProperty;
117
+ process.env.NODE_ENV === "production" ? Ct.exports = _e() : Ct.exports = Re();
118
+ var zt = Ct.exports;
119
+ const oe = 0, se = 1, ie = 2, Yt = 3;
120
+ var Xt = Object.prototype.hasOwnProperty;
121
121
  function At(t, e) {
122
122
  var n, r;
123
123
  if (t === e) return !0;
@@ -132,90 +132,90 @@ function At(t, e) {
132
132
  if (!n || typeof t == "object") {
133
133
  r = 0;
134
134
  for (n in t)
135
- if (Yt.call(t, n) && ++r && !Yt.call(e, n) || !(n in e) || !At(t[n], e[n])) return !1;
135
+ if (Xt.call(t, n) && ++r && !Xt.call(e, n) || !(n in e) || !At(t[n], e[n])) return !1;
136
136
  return Object.keys(e).length === r;
137
137
  }
138
138
  }
139
139
  return t !== t && e !== e;
140
140
  }
141
- const U = /* @__PURE__ */ new WeakMap(), W = () => {
142
- }, C = (
141
+ const q = /* @__PURE__ */ new WeakMap(), $ = () => {
142
+ }, b = (
143
143
  /*#__NOINLINE__*/
144
- W()
145
- ), Lt = Object, f = (t) => t === C, F = (t) => typeof t == "function", $ = (t, e) => ({
144
+ $()
145
+ ), xt = Object, d = (t) => t === b, F = (t) => typeof t == "function", k = (t, e) => ({
146
146
  ...t,
147
147
  ...e
148
- }), ae = (t) => F(t.then), wt = {}, dt = {}, Ft = "undefined", ct = typeof window != Ft, bt = typeof document != Ft, Re = ct && "Deno" in window, De = () => ct && typeof window.requestAnimationFrame != Ft, ce = (t, e) => {
149
- const n = U.get(t);
148
+ }), ae = (t) => F(t.then), wt = {}, dt = {}, Wt = "undefined", ut = typeof window != Wt, It = typeof document != Wt, Te = ut && "Deno" in window, De = () => ut && typeof window.requestAnimationFrame != Wt, ce = (t, e) => {
149
+ const n = q.get(t);
150
150
  return [
151
151
  // Getter
152
- () => !f(e) && t.get(e) || wt,
152
+ () => !d(e) && t.get(e) || wt,
153
153
  // Setter
154
154
  (r) => {
155
- if (!f(e)) {
155
+ if (!d(e)) {
156
156
  const o = t.get(e);
157
- e in dt || (dt[e] = o), n[5](e, $(o, r), o || wt);
157
+ e in dt || (dt[e] = o), n[5](e, k(o, r), o || wt);
158
158
  }
159
159
  },
160
160
  // Subscriber
161
161
  n[6],
162
162
  // Get server cache snapshot
163
- () => !f(e) && e in dt ? dt[e] : !f(e) && t.get(e) || wt
163
+ () => !d(e) && e in dt ? dt[e] : !d(e) && t.get(e) || wt
164
164
  ];
165
165
  };
166
- let xt = !0;
167
- const Te = () => xt, [It, Nt] = ct && window.addEventListener ? [
166
+ let Nt = !0;
167
+ const be = () => Nt, [Vt, jt] = ut && window.addEventListener ? [
168
168
  window.addEventListener.bind(window),
169
169
  window.removeEventListener.bind(window)
170
170
  ] : [
171
- W,
172
- W
173
- ], Ce = () => {
174
- const t = bt && document.visibilityState;
175
- return f(t) || t !== "hidden";
176
- }, Ae = (t) => (bt && document.addEventListener("visibilitychange", t), It("focus", t), () => {
177
- bt && document.removeEventListener("visibilitychange", t), Nt("focus", t);
178
- }), Le = (t) => {
171
+ $,
172
+ $
173
+ ], Le = () => {
174
+ const t = It && document.visibilityState;
175
+ return d(t) || t !== "hidden";
176
+ }, Ce = (t) => (It && document.addEventListener("visibilitychange", t), Vt("focus", t), () => {
177
+ It && document.removeEventListener("visibilitychange", t), jt("focus", t);
178
+ }), Ae = (t) => {
179
179
  const e = () => {
180
- xt = !0, t();
180
+ Nt = !0, t();
181
181
  }, n = () => {
182
- xt = !1;
182
+ Nt = !1;
183
183
  };
184
- return It("online", e), It("offline", n), () => {
185
- Nt("online", e), Nt("offline", n);
184
+ return Vt("online", e), Vt("offline", n), () => {
185
+ jt("online", e), jt("offline", n);
186
186
  };
187
- }, be = {
188
- isOnline: Te,
189
- isVisible: Ce
190
187
  }, xe = {
191
- initFocus: Ae,
192
- initReconnect: Le
193
- }, Xt = !at.useId, tt = !ct || Re, Ie = (t) => De() ? window.requestAnimationFrame(t) : setTimeout(t, 1), yt = tt ? st : ve, _t = typeof navigator < "u" && navigator.connection, Qt = !tt && _t && ([
188
+ isOnline: be,
189
+ isVisible: Le
190
+ }, Ie = {
191
+ initFocus: Ce,
192
+ initReconnect: Ae
193
+ }, Qt = !ct.useId, nt = !ut || Te, Ne = (t) => De() ? window.requestAnimationFrame(t) : setTimeout(t, 1), _t = nt ? et : ve, Rt = typeof navigator < "u" && navigator.connection, Zt = !nt && Rt && ([
194
194
  "slow-2g",
195
195
  "2g"
196
- ].includes(_t.effectiveType) || _t.saveData), pt = /* @__PURE__ */ new WeakMap(), Ne = (t) => Lt.prototype.toString.call(t), Rt = (t, e) => t === `[object ${e}]`;
197
- let Ve = 0;
198
- const Vt = (t) => {
199
- const e = typeof t, n = Ne(t), r = Rt(n, "Date"), o = Rt(n, "RegExp"), l = Rt(n, "Object");
200
- let a, d;
201
- if (Lt(t) === t && !r && !o) {
196
+ ].includes(Rt.effectiveType) || Rt.saveData), pt = /* @__PURE__ */ new WeakMap(), Ve = (t) => xt.prototype.toString.call(t), Tt = (t, e) => t === `[object ${e}]`;
197
+ let je = 0;
198
+ const Mt = (t) => {
199
+ const e = typeof t, n = Ve(t), r = Tt(n, "Date"), o = Tt(n, "RegExp"), c = Tt(n, "Object");
200
+ let a, l;
201
+ if (xt(t) === t && !r && !o) {
202
202
  if (a = pt.get(t), a) return a;
203
- if (a = ++Ve + "~", pt.set(t, a), Array.isArray(t)) {
204
- for (a = "@", d = 0; d < t.length; d++)
205
- a += Vt(t[d]) + ",";
203
+ if (a = ++je + "~", pt.set(t, a), Array.isArray(t)) {
204
+ for (a = "@", l = 0; l < t.length; l++)
205
+ a += Mt(t[l]) + ",";
206
206
  pt.set(t, a);
207
207
  }
208
- if (l) {
208
+ if (c) {
209
209
  a = "#";
210
- const m = Lt.keys(t).sort();
211
- for (; !f(d = m.pop()); )
212
- f(t[d]) || (a += d + ":" + Vt(t[d]) + ",");
210
+ const m = xt.keys(t).sort();
211
+ for (; !d(l = m.pop()); )
212
+ d(t[l]) || (a += l + ":" + Mt(t[l]) + ",");
213
213
  pt.set(t, a);
214
214
  }
215
215
  } else
216
216
  a = r ? t.toJSON() : e == "symbol" ? t.toString() : e == "string" ? JSON.stringify(t) : "" + t;
217
217
  return a;
218
- }, Mt = (t) => {
218
+ }, Pt = (t) => {
219
219
  if (F(t))
220
220
  try {
221
221
  t = t();
@@ -223,175 +223,175 @@ const Vt = (t) => {
223
223
  t = "";
224
224
  }
225
225
  const e = t;
226
- return t = typeof t == "string" ? t : (Array.isArray(t) ? t.length : t) ? Vt(t) : "", [
226
+ return t = typeof t == "string" ? t : (Array.isArray(t) ? t.length : t) ? Mt(t) : "", [
227
227
  t,
228
228
  e
229
229
  ];
230
230
  };
231
- let je = 0;
232
- const jt = () => ++je;
231
+ let Me = 0;
232
+ const Ft = () => ++Me;
233
233
  async function ue(...t) {
234
- const [e, n, r, o] = t, l = $({
234
+ const [e, n, r, o] = t, c = k({
235
235
  populateCache: !0,
236
236
  throwOnError: !0
237
237
  }, typeof o == "boolean" ? {
238
238
  revalidate: o
239
239
  } : o || {});
240
- let a = l.populateCache;
241
- const d = l.rollbackOnError;
242
- let m = l.optimisticData;
243
- const R = (p) => typeof d == "function" ? d(p) : d !== !1, S = l.throwOnError;
240
+ let a = c.populateCache;
241
+ const l = c.rollbackOnError;
242
+ let m = c.optimisticData;
243
+ const T = (p) => typeof l == "function" ? l(p) : l !== !1, S = c.throwOnError;
244
244
  if (F(n)) {
245
- const p = n, c = [], h = e.keys();
246
- for (const u of h)
245
+ const p = n, i = [], f = e.keys();
246
+ for (const h of f)
247
247
  // Skip the special useSWRInfinite and useSWRSubscription keys.
248
- !/^\$(inf|sub)\$/.test(u) && p(e.get(u)._k) && c.push(u);
249
- return Promise.all(c.map(i));
248
+ !/^\$(inf|sub)\$/.test(h) && p(e.get(h)._k) && i.push(h);
249
+ return Promise.all(i.map(u));
250
250
  }
251
- return i(n);
252
- async function i(p) {
253
- const [c] = Mt(p);
254
- if (!c) return;
255
- const [h, u] = ce(e, c), [g, D, s, ut] = U.get(e), B = () => {
256
- const b = g[c];
257
- return (F(l.revalidate) ? l.revalidate(h().data, p) : l.revalidate !== !1) && (delete s[c], delete ut[c], b && b[0]) ? b[0](ie).then(() => h().data) : h().data;
251
+ return u(n);
252
+ async function u(p) {
253
+ const [i] = Pt(p);
254
+ if (!i) return;
255
+ const [f, h] = ce(e, i), [E, D, s, H] = q.get(e), L = () => {
256
+ const x = E[i];
257
+ return (F(c.revalidate) ? c.revalidate(f().data, p) : c.revalidate !== !1) && (delete s[i], delete H[i], x && x[0]) ? x[0](ie).then(() => f().data) : f().data;
258
258
  };
259
259
  if (t.length < 3)
260
- return B();
261
- let T = r, I, N = !1;
262
- const K = jt();
263
- D[c] = [
264
- K,
260
+ return L();
261
+ let _ = r, N, V = !1;
262
+ const J = Ft();
263
+ D[i] = [
264
+ J,
265
265
  0
266
266
  ];
267
- const v = !f(m), J = h(), V = J.data, z = J._c, q = f(z) ? V : z;
268
- if (v && (m = F(m) ? m(q, V) : m, u({
267
+ const v = !d(m), z = f(), j = z.data, Y = z._c, G = d(Y) ? j : Y;
268
+ if (v && (m = F(m) ? m(G, j) : m, h({
269
269
  data: m,
270
- _c: q
271
- })), F(T))
270
+ _c: G
271
+ })), F(_))
272
272
  try {
273
- T = T(q);
274
- } catch (b) {
275
- I = b, N = !0;
273
+ _ = _(G);
274
+ } catch (x) {
275
+ N = x, V = !0;
276
276
  }
277
- if (T && ae(T))
278
- if (T = await T.catch((b) => {
279
- I = b, N = !0;
280
- }), K !== D[c][0]) {
281
- if (N) throw I;
282
- return T;
283
- } else N && v && R(I) && (a = !0, u({
284
- data: q,
285
- _c: C
277
+ if (_ && ae(_))
278
+ if (_ = await _.catch((x) => {
279
+ N = x, V = !0;
280
+ }), J !== D[i][0]) {
281
+ if (V) throw N;
282
+ return _;
283
+ } else V && v && T(N) && (a = !0, h({
284
+ data: G,
285
+ _c: b
286
286
  }));
287
- if (a && !N)
287
+ if (a && !V)
288
288
  if (F(a)) {
289
- const b = a(T, q);
290
- u({
291
- data: b,
292
- error: C,
293
- _c: C
289
+ const x = a(_, G);
290
+ h({
291
+ data: x,
292
+ error: b,
293
+ _c: b
294
294
  });
295
295
  } else
296
- u({
297
- data: T,
298
- error: C,
299
- _c: C
296
+ h({
297
+ data: _,
298
+ error: b,
299
+ _c: b
300
300
  });
301
- if (D[c][1] = jt(), Promise.resolve(B()).then(() => {
302
- u({
303
- _c: C
301
+ if (D[i][1] = Ft(), Promise.resolve(L()).then(() => {
302
+ h({
303
+ _c: b
304
304
  });
305
- }), N) {
306
- if (S) throw I;
305
+ }), V) {
306
+ if (S) throw N;
307
307
  return;
308
308
  }
309
- return T;
309
+ return _;
310
310
  }
311
311
  }
312
- const Zt = (t, e) => {
312
+ const te = (t, e) => {
313
313
  for (const n in t)
314
314
  t[n][0] && t[n][0](e);
315
315
  }, Fe = (t, e) => {
316
- if (!U.has(t)) {
317
- const n = $(xe, e), r = /* @__PURE__ */ Object.create(null), o = ue.bind(C, t);
318
- let l = W;
319
- const a = /* @__PURE__ */ Object.create(null), d = (S, i) => {
316
+ if (!q.has(t)) {
317
+ const n = k(Ie, e), r = /* @__PURE__ */ Object.create(null), o = ue.bind(b, t);
318
+ let c = $;
319
+ const a = /* @__PURE__ */ Object.create(null), l = (S, u) => {
320
320
  const p = a[S] || [];
321
- return a[S] = p, p.push(i), () => p.splice(p.indexOf(i), 1);
322
- }, m = (S, i, p) => {
323
- t.set(S, i);
324
- const c = a[S];
325
- if (c)
326
- for (const h of c)
327
- h(i, p);
328
- }, R = () => {
329
- if (!U.has(t) && (U.set(t, [
321
+ return a[S] = p, p.push(u), () => p.splice(p.indexOf(u), 1);
322
+ }, m = (S, u, p) => {
323
+ t.set(S, u);
324
+ const i = a[S];
325
+ if (i)
326
+ for (const f of i)
327
+ f(u, p);
328
+ }, T = () => {
329
+ if (!q.has(t) && (q.set(t, [
330
330
  r,
331
331
  /* @__PURE__ */ Object.create(null),
332
332
  /* @__PURE__ */ Object.create(null),
333
333
  /* @__PURE__ */ Object.create(null),
334
334
  o,
335
335
  m,
336
- d
337
- ]), !tt)) {
338
- const S = n.initFocus(setTimeout.bind(C, Zt.bind(C, r, oe))), i = n.initReconnect(setTimeout.bind(C, Zt.bind(C, r, se)));
339
- l = () => {
340
- S && S(), i && i(), U.delete(t);
336
+ l
337
+ ]), !nt)) {
338
+ const S = n.initFocus(setTimeout.bind(b, te.bind(b, r, oe))), u = n.initReconnect(setTimeout.bind(b, te.bind(b, r, se)));
339
+ c = () => {
340
+ S && S(), u && u(), q.delete(t);
341
341
  };
342
342
  }
343
343
  };
344
- return R(), [
344
+ return T(), [
345
345
  t,
346
346
  o,
347
- R,
348
- l
347
+ T,
348
+ c
349
349
  ];
350
350
  }
351
351
  return [
352
352
  t,
353
- U.get(t)[4]
353
+ q.get(t)[4]
354
354
  ];
355
- }, Me = (t, e, n, r, o) => {
356
- const l = n.errorRetryCount, a = o.retryCount, d = ~~((Math.random() + 0.5) * (1 << (a < 8 ? a : 8))) * n.errorRetryInterval;
357
- !f(l) && a > l || setTimeout(r, d, o);
358
- }, Ue = At, [le, We] = Fe(/* @__PURE__ */ new Map()), Pe = $(
355
+ }, We = (t, e, n, r, o) => {
356
+ const c = n.errorRetryCount, a = o.retryCount, l = ~~((Math.random() + 0.5) * (1 << (a < 8 ? a : 8))) * n.errorRetryInterval;
357
+ !d(c) && a > c || setTimeout(r, l, o);
358
+ }, Pe = At, [le, Ue] = Fe(/* @__PURE__ */ new Map()), qe = k(
359
359
  {
360
360
  // events
361
- onLoadingSlow: W,
362
- onSuccess: W,
363
- onError: W,
364
- onErrorRetry: Me,
365
- onDiscarded: W,
361
+ onLoadingSlow: $,
362
+ onSuccess: $,
363
+ onError: $,
364
+ onErrorRetry: We,
365
+ onDiscarded: $,
366
366
  // switches
367
367
  revalidateOnFocus: !0,
368
368
  revalidateOnReconnect: !0,
369
369
  revalidateIfStale: !0,
370
370
  shouldRetryOnError: !0,
371
371
  // timeouts
372
- errorRetryInterval: Qt ? 1e4 : 5e3,
372
+ errorRetryInterval: Zt ? 1e4 : 5e3,
373
373
  focusThrottleInterval: 5 * 1e3,
374
374
  dedupingInterval: 2 * 1e3,
375
- loadingTimeout: Qt ? 5e3 : 3e3,
375
+ loadingTimeout: Zt ? 5e3 : 3e3,
376
376
  // providers
377
- compare: Ue,
377
+ compare: Pe,
378
378
  isPaused: () => !1,
379
379
  cache: le,
380
- mutate: We,
380
+ mutate: Ue,
381
381
  fallback: {}
382
382
  },
383
383
  // use web preset by default
384
- be
384
+ xe
385
385
  ), $e = (t, e) => {
386
- const n = $(t, e);
386
+ const n = k(t, e);
387
387
  if (e) {
388
- const { use: r, fallback: o } = t, { use: l, fallback: a } = e;
389
- r && l && (n.use = r.concat(l)), o && a && (n.fallback = $(o, a));
388
+ const { use: r, fallback: o } = t, { use: c, fallback: a } = e;
389
+ r && c && (n.use = r.concat(c)), o && a && (n.fallback = k(o, a));
390
390
  }
391
391
  return n;
392
- }, qe = ge({}), He = "$inf$", fe = ct && window.__SWR_DEVTOOLS_USE__, Ge = fe ? window.__SWR_DEVTOOLS_USE__ : [], ke = () => {
393
- fe && (window.__SWR_DEVTOOLS_REACT__ = at);
394
- }, Be = (t) => F(t[1]) ? [
392
+ }, He = Ee({}), ke = "$inf$", fe = ut && window.__SWR_DEVTOOLS_USE__, Ge = fe ? window.__SWR_DEVTOOLS_USE__ : [], Be = () => {
393
+ fe && (window.__SWR_DEVTOOLS_REACT__ = ct);
394
+ }, Ke = (t) => F(t[1]) ? [
395
395
  t[0],
396
396
  t[1],
397
397
  t[2] || {}
@@ -399,33 +399,33 @@ const Zt = (t, e) => {
399
399
  t[0],
400
400
  null,
401
401
  (t[1] === null ? t[2] : t[1]) || {}
402
- ], Ke = () => {
403
- const t = Oe(qe);
404
- return re(() => $(Pe, t), [
402
+ ], Je = () => {
403
+ const t = ye(He);
404
+ return mt(() => k(qe, t), [
405
405
  t
406
406
  ]);
407
- }, Je = (t) => (e, n, r) => t(e, n && ((...l) => {
408
- const [a] = Mt(e), [, , , d] = U.get(le);
409
- if (a.startsWith(He))
410
- return n(...l);
411
- const m = d[a];
412
- return f(m) ? n(...l) : (delete d[a], m);
413
- }), r), ze = Ge.concat(Je), Ye = (t) => function(...n) {
414
- const r = Ke(), [o, l, a] = Be(n), d = $e(r, a);
407
+ }, ze = (t) => (e, n, r) => t(e, n && ((...c) => {
408
+ const [a] = Pt(e), [, , , l] = q.get(le);
409
+ if (a.startsWith(ke))
410
+ return n(...c);
411
+ const m = l[a];
412
+ return d(m) ? n(...c) : (delete l[a], m);
413
+ }), r), Ye = Ge.concat(ze), Xe = (t) => function(...n) {
414
+ const r = Je(), [o, c, a] = Ke(n), l = $e(r, a);
415
415
  let m = t;
416
- const { use: R } = d, S = (R || []).concat(ze);
417
- for (let i = S.length; i--; )
418
- m = S[i](m);
419
- return m(o, l || d.fetcher || null, d);
420
- }, Xe = (t, e, n) => {
416
+ const { use: T } = l, S = (T || []).concat(Ye);
417
+ for (let u = S.length; u--; )
418
+ m = S[u](m);
419
+ return m(o, c || l.fetcher || null, l);
420
+ }, Qe = (t, e, n) => {
421
421
  const r = e[t] || (e[t] = []);
422
422
  return r.push(n), () => {
423
423
  const o = r.indexOf(n);
424
424
  o >= 0 && (r[o] = r[r.length - 1], r.pop());
425
425
  };
426
426
  };
427
- ke();
428
- const Dt = at.use || // This extra generic is to avoid TypeScript mixing up the generic and JSX sytax
427
+ Be();
428
+ const Dt = ct.use || // This extra generic is to avoid TypeScript mixing up the generic and JSX sytax
429
429
  // and emitting an error.
430
430
  // We assume that this is only for the `use(thenable)` case, not `use(context)`.
431
431
  // https://github.com/facebook/react/blob/aed00dacfb79d17c53218404c52b1c7aa59c4a89/packages/react-server/src/ReactFizzThenable.js#L45
@@ -444,106 +444,106 @@ const Dt = at.use || // This extra generic is to avoid TypeScript mixing up the
444
444
  t.status = "rejected", t.reason = e;
445
445
  }), t;
446
446
  }
447
- }), Tt = {
447
+ }), bt = {
448
448
  dedupe: !0
449
- }, te = Promise.resolve(C), Qe = () => W, Ze = (t, e, n) => {
450
- const { cache: r, compare: o, suspense: l, fallbackData: a, revalidateOnMount: d, revalidateIfStale: m, refreshInterval: R, refreshWhenHidden: S, refreshWhenOffline: i, keepPreviousData: p, strictServerPrefetchWarning: c } = n, [h, u, g, D] = U.get(r), [s, ut] = Mt(t), B = P(!1), T = P(!1), I = P(s), N = P(e), K = P(n), v = () => K.current, J = () => v().isVisible() && v().isOnline(), [V, z, q, b] = ce(r, s), Y = P({}).current, X = f(a) ? f(n.fallback) ? C : n.fallback[s] : a, Ut = (E, O) => {
451
- for (const w in Y) {
452
- const y = w;
453
- if (y === "data") {
454
- if (!o(E[y], O[y]) && (!f(E[y]) || !o(ft, O[y])))
449
+ }, ee = Promise.resolve(b), Ze = () => $, tn = (t, e, n) => {
450
+ const { cache: r, compare: o, suspense: c, fallbackData: a, revalidateOnMount: l, revalidateIfStale: m, refreshInterval: T, refreshWhenHidden: S, refreshWhenOffline: u, keepPreviousData: p, strictServerPrefetchWarning: i } = n, [f, h, E, D] = q.get(r), [s, H] = Pt(t), L = P(!1), _ = P(!1), N = P(s), V = P(e), J = P(n), v = () => J.current, z = () => v().isVisible() && v().isOnline(), [j, Y, G, x] = ce(r, s), X = P({}).current, Q = d(a) ? d(n.fallback) ? b : n.fallback[s] : a, Ut = (g, y) => {
451
+ for (const O in X) {
452
+ const w = O;
453
+ if (w === "data") {
454
+ if (!o(g[w], y[w]) && (!d(g[w]) || !o(ft, y[w])))
455
455
  return !1;
456
- } else if (O[y] !== E[y])
456
+ } else if (y[w] !== g[w])
457
457
  return !1;
458
458
  }
459
459
  return !0;
460
- }, ht = !B.current, Wt = re(() => {
461
- const E = V(), O = b(), w = (_) => {
462
- const x = $(_);
463
- return delete x._k, (() => {
460
+ }, St = !L.current, qt = mt(() => {
461
+ const g = j(), y = x(), O = (R) => {
462
+ const I = k(R);
463
+ return delete I._k, (() => {
464
464
  if (!s || !e || v().isPaused()) return !1;
465
- if (ht && !f(d)) return d;
466
- const ot = f(X) ? x.data : X;
467
- return f(ot) || m;
465
+ if (St && !d(l)) return l;
466
+ const it = d(Q) ? I.data : Q;
467
+ return d(it) || m;
468
468
  })() ? {
469
469
  isValidating: !0,
470
470
  isLoading: !0,
471
- ...x
472
- } : x;
473
- }, y = w(E), j = E === O ? y : w(O);
474
- let A = y;
471
+ ...I
472
+ } : I;
473
+ }, w = O(g), M = g === y ? w : O(y);
474
+ let C = w;
475
475
  return [
476
476
  () => {
477
- const _ = w(V());
478
- return Ut(_, A) ? (A.data = _.data, A.isLoading = _.isLoading, A.isValidating = _.isValidating, A.error = _.error, A) : (A = _, _);
477
+ const R = O(j());
478
+ return Ut(R, C) ? (C.data = R.data, C.isLoading = R.isLoading, C.isValidating = R.isValidating, C.error = R.error, C) : (C = R, R);
479
479
  },
480
- () => j
480
+ () => M
481
481
  ];
482
482
  }, [
483
483
  r,
484
484
  s
485
- ]), Q = Jt.useSyncExternalStore(gt(
486
- (E) => q(s, (O, w) => {
487
- Ut(w, O) || E();
485
+ ]), Z = zt.useSyncExternalStore(ht(
486
+ (g) => G(s, (y, O) => {
487
+ Ut(O, y) || g();
488
488
  }),
489
489
  // eslint-disable-next-line react-hooks/exhaustive-deps
490
490
  [
491
491
  r,
492
492
  s
493
493
  ]
494
- ), Wt[0], Wt[1]), pe = h[s] && h[s].length > 0, Z = Q.data, H = f(Z) ? X && ae(X) ? Dt(X) : X : Z, lt = Q.error, mt = P(H), ft = p ? f(Z) ? f(mt.current) ? H : mt.current : Z : H, G = s && f(H), et = P(null);
495
- !tt && // getServerSnapshot is only called during hydration
494
+ ), qt[0], qt[1]), pe = f[s] && f[s].length > 0, tt = Z.data, B = d(tt) ? Q && ae(Q) ? Dt(Q) : Q : tt, lt = Z.error, gt = P(B), ft = p ? d(tt) ? d(gt.current) ? B : gt.current : tt : B, K = s && d(B), rt = P(null);
495
+ !nt && // getServerSnapshot is only called during hydration
496
496
  // eslint-disable-next-line react-hooks/rules-of-hooks
497
- Jt.useSyncExternalStore(Qe, () => (et.current = !1, et), () => (et.current = !0, et));
498
- const he = et.current;
499
- c && he && !l && G && console.warn(`Missing pre-initiated data for serialized key "${s}" during server-side rendering. Data fetching should be initiated on the server and provided to SWR via fallback data. You can set "strictServerPrefetchWarning: false" to disable this warning.`);
500
- const Pt = !s || !e || v().isPaused() || pe && !f(lt) ? !1 : ht && !f(d) ? d : l ? f(H) ? !1 : m : f(H) || m, $t = ht && Pt, me = f(Q.isValidating) ? $t : Q.isValidating, Ee = f(Q.isLoading) ? $t : Q.isLoading, nt = gt(
501
- async (E) => {
502
- const O = N.current;
503
- if (!s || !O || T.current || v().isPaused())
497
+ zt.useSyncExternalStore(Ze, () => (rt.current = !1, rt), () => (rt.current = !0, rt));
498
+ const he = rt.current;
499
+ i && he && !c && K && console.warn(`Missing pre-initiated data for serialized key "${s}" during server-side rendering. Data fetching should be initiated on the server and provided to SWR via fallback data. You can set "strictServerPrefetchWarning: false" to disable this warning.`);
500
+ const $t = !s || !e || v().isPaused() || pe && !d(lt) ? !1 : St && !d(l) ? l : c ? d(B) ? !1 : m : d(B) || m, Ht = St && $t, me = d(Z.isValidating) ? Ht : Z.isValidating, Se = d(Z.isLoading) ? Ht : Z.isLoading, ot = ht(
501
+ async (g) => {
502
+ const y = V.current;
503
+ if (!s || !y || _.current || v().isPaused())
504
504
  return !1;
505
- let w, y, j = !0;
506
- const A = E || {}, _ = !g[s] || !A.dedupe, x = () => Xt ? !T.current && s === I.current && B.current : s === I.current, rt = {
505
+ let O, w, M = !0;
506
+ const C = g || {}, R = !E[s] || !C.dedupe, I = () => Qt ? !_.current && s === N.current && L.current : s === N.current, st = {
507
507
  isValidating: !1,
508
508
  isLoading: !1
509
- }, ot = () => {
510
- z(rt);
511
- }, Ht = () => {
512
- const L = g[s];
513
- L && L[1] === y && delete g[s];
514
- }, Gt = {
509
+ }, it = () => {
510
+ Y(st);
511
+ }, Gt = () => {
512
+ const A = E[s];
513
+ A && A[1] === w && delete E[s];
514
+ }, Bt = {
515
515
  isValidating: !0
516
516
  };
517
- f(V().data) && (Gt.isLoading = !0);
517
+ d(j().data) && (Bt.isLoading = !0);
518
518
  try {
519
- if (_ && (z(Gt), n.loadingTimeout && f(V().data) && setTimeout(() => {
520
- j && x() && v().onLoadingSlow(s, n);
521
- }, n.loadingTimeout), g[s] = [
522
- O(ut),
523
- jt()
524
- ]), [w, y] = g[s], w = await w, _ && setTimeout(Ht, n.dedupingInterval), !g[s] || g[s][1] !== y)
525
- return _ && x() && v().onDiscarded(s), !1;
526
- rt.error = C;
527
- const L = u[s];
528
- if (!f(L) && // case 1
529
- (y <= L[0] || // case 2
530
- y <= L[1] || // case 3
531
- L[1] === 0))
532
- return ot(), _ && x() && v().onDiscarded(s), !1;
533
- const M = V().data;
534
- rt.data = o(M, w) ? M : w, _ && x() && v().onSuccess(w, s, n);
535
- } catch (L) {
536
- Ht();
537
- const M = v(), { shouldRetryOnError: Et } = M;
538
- M.isPaused() || (rt.error = L, _ && x() && (M.onError(L, s, M), (Et === !0 || F(Et) && Et(L)) && (!v().revalidateOnFocus || !v().revalidateOnReconnect || J()) && M.onErrorRetry(L, s, M, (Se) => {
539
- const St = h[s];
540
- St && St[0] && St[0](zt, Se);
519
+ if (R && (Y(Bt), n.loadingTimeout && d(j().data) && setTimeout(() => {
520
+ M && I() && v().onLoadingSlow(s, n);
521
+ }, n.loadingTimeout), E[s] = [
522
+ y(H),
523
+ Ft()
524
+ ]), [O, w] = E[s], O = await O, R && setTimeout(Gt, n.dedupingInterval), !E[s] || E[s][1] !== w)
525
+ return R && I() && v().onDiscarded(s), !1;
526
+ st.error = b;
527
+ const A = h[s];
528
+ if (!d(A) && // case 1
529
+ (w <= A[0] || // case 2
530
+ w <= A[1] || // case 3
531
+ A[1] === 0))
532
+ return it(), R && I() && v().onDiscarded(s), !1;
533
+ const W = j().data;
534
+ st.data = o(W, O) ? W : O, R && I() && v().onSuccess(O, s, n);
535
+ } catch (A) {
536
+ Gt();
537
+ const W = v(), { shouldRetryOnError: Et } = W;
538
+ W.isPaused() || (st.error = A, R && I() && (W.onError(A, s, W), (Et === !0 || F(Et) && Et(A)) && (!v().revalidateOnFocus || !v().revalidateOnReconnect || z()) && W.onErrorRetry(A, s, W, (ge) => {
539
+ const vt = f[s];
540
+ vt && vt[0] && vt[0](Yt, ge);
541
541
  }, {
542
- retryCount: (A.retryCount || 0) + 1,
542
+ retryCount: (C.retryCount || 0) + 1,
543
543
  dedupe: !0
544
544
  })));
545
545
  }
546
- return j = !1, ot(), !0;
546
+ return M = !1, it(), !0;
547
547
  },
548
548
  // `setState` is immutable, and `eventsCallback`, `fnArg`, and
549
549
  // `keyValidating` are depending on `key`, so we can exclude them from
@@ -560,111 +560,101 @@ const Dt = at.use || // This extra generic is to avoid TypeScript mixing up the
560
560
  s,
561
561
  r
562
562
  ]
563
- ), qt = gt(
563
+ ), kt = ht(
564
564
  // Use callback to make sure `keyRef.current` returns latest result every time
565
- (...E) => ue(r, I.current, ...E),
565
+ (...g) => ue(r, N.current, ...g),
566
566
  // eslint-disable-next-line react-hooks/exhaustive-deps
567
567
  []
568
568
  );
569
- if (yt(() => {
570
- N.current = e, K.current = n, f(Z) || (mt.current = Z);
571
- }), yt(() => {
569
+ if (_t(() => {
570
+ V.current = e, J.current = n, d(tt) || (gt.current = tt);
571
+ }), _t(() => {
572
572
  if (!s) return;
573
- const E = nt.bind(C, Tt);
574
- let O = 0;
575
- v().revalidateOnFocus && (O = Date.now() + v().focusThrottleInterval);
576
- const y = Xe(s, h, (j, A = {}) => {
577
- if (j == oe) {
578
- const _ = Date.now();
579
- v().revalidateOnFocus && _ > O && J() && (O = _ + v().focusThrottleInterval, E());
580
- } else if (j == se)
581
- v().revalidateOnReconnect && J() && E();
573
+ const g = ot.bind(b, bt);
574
+ let y = 0;
575
+ v().revalidateOnFocus && (y = Date.now() + v().focusThrottleInterval);
576
+ const w = Qe(s, f, (M, C = {}) => {
577
+ if (M == oe) {
578
+ const R = Date.now();
579
+ v().revalidateOnFocus && R > y && z() && (y = R + v().focusThrottleInterval, g());
580
+ } else if (M == se)
581
+ v().revalidateOnReconnect && z() && g();
582
582
  else {
583
- if (j == ie)
584
- return nt();
585
- if (j == zt)
586
- return nt(A);
583
+ if (M == ie)
584
+ return ot();
585
+ if (M == Yt)
586
+ return ot(C);
587
587
  }
588
588
  });
589
- return T.current = !1, I.current = s, B.current = !0, z({
590
- _k: ut
591
- }), Pt && (g[s] || (f(H) || tt ? E() : Ie(E))), () => {
592
- T.current = !0, y();
589
+ return _.current = !1, N.current = s, L.current = !0, Y({
590
+ _k: H
591
+ }), $t && (E[s] || (d(B) || nt ? g() : Ne(g))), () => {
592
+ _.current = !0, w();
593
593
  };
594
594
  }, [
595
595
  s
596
- ]), yt(() => {
597
- let E;
598
- function O() {
599
- const y = F(R) ? R(V().data) : R;
600
- y && E !== -1 && (E = setTimeout(w, y));
596
+ ]), _t(() => {
597
+ let g;
598
+ function y() {
599
+ const w = F(T) ? T(j().data) : T;
600
+ w && g !== -1 && (g = setTimeout(O, w));
601
601
  }
602
- function w() {
603
- !V().error && (S || v().isVisible()) && (i || v().isOnline()) ? nt(Tt).then(O) : O();
602
+ function O() {
603
+ !j().error && (S || v().isVisible()) && (u || v().isOnline()) ? ot(bt).then(y) : y();
604
604
  }
605
- return O(), () => {
606
- E && (clearTimeout(E), E = -1);
605
+ return y(), () => {
606
+ g && (clearTimeout(g), g = -1);
607
607
  };
608
608
  }, [
609
- R,
609
+ T,
610
610
  S,
611
- i,
611
+ u,
612
612
  s
613
- ]), we(ft), l) {
614
- if (!Xt && tt && G)
613
+ ]), Oe(ft), c) {
614
+ if (!Qt && nt && K)
615
615
  throw new Error("Fallback data is required when using Suspense in SSR.");
616
- G && (N.current = e, K.current = n, T.current = !1);
617
- const E = D[s], O = !f(E) && G ? qt(E) : te;
618
- if (Dt(O), !f(lt) && G)
616
+ K && (V.current = e, J.current = n, _.current = !1);
617
+ const g = D[s], y = !d(g) && K ? kt(g) : ee;
618
+ if (Dt(y), !d(lt) && K)
619
619
  throw lt;
620
- const w = G ? nt(Tt) : te;
621
- !f(ft) && G && (w.status = "fulfilled", w.value = !0), Dt(w);
620
+ const O = K ? ot(bt) : ee;
621
+ !d(ft) && K && (O.status = "fulfilled", O.value = !0), Dt(O);
622
622
  }
623
623
  return {
624
- mutate: qt,
624
+ mutate: kt,
625
625
  get data() {
626
- return Y.data = !0, ft;
626
+ return X.data = !0, ft;
627
627
  },
628
628
  get error() {
629
- return Y.error = !0, lt;
629
+ return X.error = !0, lt;
630
630
  },
631
631
  get isValidating() {
632
- return Y.isValidating = !0, me;
632
+ return X.isValidating = !0, me;
633
633
  },
634
634
  get isLoading() {
635
- return Y.isLoading = !0, Ee;
636
- }
637
- };
638
- }, ee = Ye(Ze), tn = (t, e) => {
639
- let n = t;
640
- return {
641
- apply(r) {
642
- n = e(n, r);
643
- },
644
- get data() {
645
- return n;
635
+ return X.isLoading = !0, Se;
646
636
  }
647
637
  };
648
- };
638
+ }, en = Xe(tn);
649
639
  function de() {
650
640
  return window.document.location.host.indexOf("localhost") === 0 ? "http://localhost:3100" : "https://api.graffiticode.org";
651
641
  }
652
- const en = async ({
642
+ const nn = async ({
653
643
  accessToken: t,
654
644
  id: e
655
645
  }) => {
656
646
  const n = await fetch(`${de()}/data?id=${e}`, {
657
647
  headers: { Authorization: t || "" }
658
- }), { status: r, error: o, data: l } = await n.json();
648
+ }), { status: r, error: o, data: c } = await n.json();
659
649
  if (r !== "success")
660
650
  throw new Error(`failed to get data ${e}: ${o == null ? void 0 : o.message}`);
661
- return l;
662
- }, nn = async ({
651
+ return c;
652
+ }, rn = async ({
663
653
  accessToken: t,
664
654
  id: e,
665
655
  data: n
666
656
  }) => {
667
- var l;
657
+ var c;
668
658
  const o = await (await fetch(`${de()}/compile`, {
669
659
  method: "POST",
670
660
  headers: {
@@ -675,79 +665,115 @@ const en = async ({
675
665
  body: JSON.stringify({ id: e, data: n })
676
666
  })).json();
677
667
  if (o.status !== "success")
678
- throw new Error(`failed to post compile ${e}: ${(l = o.error) == null ? void 0 : l.message}`);
668
+ throw new Error(`failed to post compile ${e}: ${(c = o.error) == null ? void 0 : c.message}`);
679
669
  return o.data;
680
- }, rn = async ({
670
+ }, on = async ({
681
671
  accessToken: t,
682
672
  id: e,
683
673
  data: n
684
674
  }) => {
685
675
  const r = Object.keys(n).length > 0 ? 1 : 2;
686
- return e = e.split("+").slice(0, r).join("+"), await nn({ accessToken: t, id: e, data: n });
687
- }, on = async ({
676
+ return e = e.split("+").slice(0, r).join("+"), await rn({ accessToken: t, id: e, data: n });
677
+ }, sn = async ({
688
678
  accessToken: t,
689
679
  id: e
690
- }) => await en({ accessToken: t, id: e });
680
+ }) => await nn({ accessToken: t, id: e }), an = /* @__PURE__ */ new Set(["update", "response"]);
691
681
  function ne(t) {
692
682
  return t && typeof t == "object" && Array.isArray(t.errors) ? { data: t.data ?? null, errors: t.errors } : { data: t, errors: [] };
693
683
  }
694
- function sn(t, e) {
684
+ function cn(t, e) {
695
685
  return e.length > 0 ? !0 : !(t == null || typeof t == "object" && !Array.isArray(t) && Object.keys(t).length === 0);
696
686
  }
697
- const fn = ({ Form: t }) => {
698
- const e = new URLSearchParams(window.location.search), [n] = k(e.get("id") ?? void 0), [r] = k(e.get("access_token") ?? void 0), [o] = k(e.get("origin") ?? void 0), [l, a] = k(!1), [d, m] = k(!1), [R, S] = k([]), [i] = k(
699
- () => tn({}, (u, { type: g, args: D }) => {
700
- switch (g) {
701
- case "init":
702
- return D;
703
- case "compiled":
704
- return D;
705
- case "update": {
706
- const s = { ...u, ...D };
707
- return JSON.stringify(s) !== JSON.stringify(u) && (m(!0), o && window.parent.postMessage({ focus: { type: "update", value: s } }, o)), s;
708
- }
709
- default:
710
- return console.error(`Unimplemented action type: ${g}`), u;
711
- }
712
- })
713
- );
714
- st(() => {
715
- const u = e.get("data");
716
- u && i.apply({ type: "init", args: JSON.parse(u) });
717
- }, []), st(() => {
718
- o && window.parent.postMessage({ type: "onload", data: i.data }, o);
719
- }, []), st(() => {
720
- n && a(!0);
721
- }, [n]), st(() => {
722
- o && window.parent.postMessage({ type: "data-updated", data: i.data }, o);
723
- }, [JSON.stringify(i.data)]);
724
- const p = ee(
725
- l && r && n ? { accessToken: r, id: n } : null,
726
- on
727
- );
728
- if (p.data !== void 0) {
729
- const u = ne(p.data);
730
- i.apply({ type: "compiled", args: u.data }), S(u.errors), a(!1);
731
- }
732
- const c = ee(
733
- d && r && n ? { accessToken: r, id: n, data: i.data } : null,
734
- rn
735
- );
736
- if (c.data !== void 0) {
737
- const u = ne(c.data);
738
- i.apply({ type: "compiled", args: u.data }), S(u.errors), m(!1);
687
+ function un(t, { type: e, args: n }) {
688
+ switch (e) {
689
+ case "init":
690
+ return { ...n };
691
+ case "compiled":
692
+ case "update":
693
+ case "response":
694
+ return { ...t, ...n };
695
+ case "focus":
696
+ return { ...t, focus: n };
697
+ default:
698
+ return console.error(`Unimplemented action type: ${e}`), t;
739
699
  }
740
- const h = { data: i.data, errors: R, apply: i.apply };
741
- return sn(i.data, R) ? /* @__PURE__ */ it(t, { state: h }) : /* @__PURE__ */ it("div", {});
700
+ }
701
+ const ln = (t) => (e, n) => {
702
+ const r = t ? t(e.data, n) : void 0, o = r !== void 0 ? r : un(e.data, n);
703
+ return o === e.data || JSON.stringify(o) === JSON.stringify(e.data) ? e : {
704
+ data: o,
705
+ compileSeq: e.compileSeq + (an.has(n.type) ? 1 : 0)
706
+ };
707
+ }, Sn = ({ Form: t, reduce: e }) => {
708
+ var D;
709
+ const [n] = at(() => new URLSearchParams(window.location.search)), [r] = at(n.get("id") ?? void 0), [o] = at(n.get("access_token") ?? void 0), [c] = at(n.get("origin") ?? void 0), [a, l] = at([]), m = mt(() => ln(e), [e]), [T, S] = we(m, void 0, () => ({ data: {}, compileSeq: 0 })), { data: u, compileSeq: p } = T;
710
+ et(() => {
711
+ const s = n.get("data");
712
+ s && S({ type: "init", args: JSON.parse(s) });
713
+ }, []), et(() => {
714
+ c && window.parent.postMessage({ type: "onload", data: u }, c);
715
+ }, []), et(() => {
716
+ c && window.parent.postMessage({ type: "data-updated", data: u }, c);
717
+ }, [JSON.stringify(u)]);
718
+ const i = en(r ? { accessToken: o, id: r } : null, sn, {
719
+ revalidateOnFocus: !1,
720
+ revalidateOnReconnect: !1,
721
+ revalidateIfStale: !1
722
+ });
723
+ et(() => {
724
+ if (i.data === void 0) return;
725
+ const s = ne(i.data);
726
+ S({ type: "compiled", args: s.data }), l(s.errors);
727
+ }, [i.data]);
728
+ const f = P(0);
729
+ et(() => {
730
+ if (p === 0 || !r) return;
731
+ const s = ++f.current;
732
+ c && window.parent.postMessage({ focus: { type: "update", value: u } }, c);
733
+ let H = !1;
734
+ return (async () => {
735
+ try {
736
+ const L = await on({ accessToken: o, id: r, data: u });
737
+ if (H || s !== f.current) return;
738
+ const _ = ne(L);
739
+ S({ type: "compiled", args: _.data }), l(_.errors);
740
+ } catch (L) {
741
+ !H && s === f.current && l([{ message: String((L == null ? void 0 : L.message) ?? L) }]);
742
+ }
743
+ })(), () => {
744
+ H = !0;
745
+ };
746
+ }, [p]);
747
+ const h = mt(() => ({ data: u, errors: a, apply: S }), [u, a]), E = ht(() => i.mutate(), [i]);
748
+ return cn(u, a) ? /* @__PURE__ */ U(t, { state: h }) : i.error ? /* @__PURE__ */ Lt("div", { role: "alert", style: re, children: [
749
+ /* @__PURE__ */ U("p", { style: { margin: 0, fontWeight: 600 }, children: "Couldn’t load this form." }),
750
+ /* @__PURE__ */ U("p", { style: { margin: "4px 0 12px", color: "#555" }, children: String(((D = i.error) == null ? void 0 : D.message) ?? i.error) }),
751
+ /* @__PURE__ */ U("button", { type: "button", style: fn, onClick: E, children: "Retry" })
752
+ ] }) : i.isLoading ? /* @__PURE__ */ U("div", { role: "status", "aria-live": "polite", style: re, children: "Loading…" }) : /* @__PURE__ */ U("div", {});
753
+ }, re = {
754
+ display: "flex",
755
+ flexDirection: "column",
756
+ alignItems: "center",
757
+ justifyContent: "center",
758
+ height: "100%",
759
+ padding: "24px",
760
+ textAlign: "center",
761
+ font: "14px/1.4 system-ui, sans-serif"
762
+ }, fn = {
763
+ padding: "6px 14px",
764
+ border: "1px solid #888",
765
+ borderRadius: "4px",
766
+ background: "#fff",
767
+ cursor: "pointer"
742
768
  };
743
- function an({ errors: t }) {
744
- return /* @__PURE__ */ it("div", { className: "flex flex-col gap-2 font-mono text-xs", children: t.map((e, n) => /* @__PURE__ */ kt(
769
+ function dn({ errors: t }) {
770
+ return /* @__PURE__ */ U("div", { className: "flex flex-col gap-2 font-mono text-xs", children: t.map((e, n) => /* @__PURE__ */ Lt(
745
771
  "div",
746
772
  {
747
773
  className: "rounded-md border border-red-200 bg-red-50 p-3 text-red-800",
748
774
  children: [
749
775
  e.message,
750
- typeof e.from == "number" && e.from >= 0 && /* @__PURE__ */ kt("span", { className: "ml-2 text-red-400", children: [
776
+ typeof e.from == "number" && e.from >= 0 && /* @__PURE__ */ Lt("span", { className: "ml-2 text-red-400", children: [
751
777
  "[",
752
778
  e.from,
753
779
  typeof e.to == "number" && e.to >= 0 ? `–${e.to}` : "",
@@ -758,15 +784,15 @@ function an({ errors: t }) {
758
784
  n
759
785
  )) });
760
786
  }
761
- const dn = ({ state: t }) => {
787
+ const gn = ({ state: t }) => {
762
788
  const e = t.errors ?? [];
763
789
  if (e.length > 0)
764
- return /* @__PURE__ */ it(an, { errors: e });
790
+ return /* @__PURE__ */ U(dn, { errors: e });
765
791
  const n = t.data;
766
- return /* @__PURE__ */ it("pre", { className: "rounded-md bg-zinc-50 text-zinc-900 text-xs font-mono p-4 overflow-auto", children: JSON.stringify(n, null, 2) });
792
+ return /* @__PURE__ */ U("pre", { className: "rounded-md bg-zinc-50 text-zinc-900 text-xs font-mono p-4 overflow-auto", children: JSON.stringify(n, null, 2) });
767
793
  };
768
794
  export {
769
- dn as Form,
770
- fn as View
795
+ gn as Form,
796
+ Sn as View
771
797
  };
772
798
  //# sourceMappingURL=index.js.map