document-model 1.1.0-debug.2 → 1.1.0-experimental.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.
Files changed (140) hide show
  1. package/dist/browser/cjs/document-model.js +1 -21
  2. package/dist/browser/cjs/document.js +1 -15
  3. package/dist/browser/cjs/index.js +1 -18
  4. package/dist/browser/cjs/internal/index-DLodkpOq.js +22 -0
  5. package/dist/browser/cjs/internal/index-azT4DEce.js +1 -0
  6. package/dist/browser/cjs/internal/object-CMr-_AP8.js +25 -0
  7. package/dist/browser/es/document-model.js +15 -16
  8. package/dist/browser/es/document.js +9 -10
  9. package/dist/browser/es/index.js +11 -13
  10. package/dist/browser/es/internal/index-BzNpRs2a.js +44 -0
  11. package/dist/browser/es/internal/index-CL_1ivGq.js +2104 -0
  12. package/dist/browser/es/internal/object-FFc9n_3I.js +2789 -0
  13. package/dist/browser/src/document/object.d.ts +35 -0
  14. package/dist/browser/src/document/types.d.ts +6 -0
  15. package/dist/browser/src/document/utils/base.d.ts +5 -4
  16. package/dist/browser/src/document/utils/document-helpers.d.ts +1 -1
  17. package/dist/browser/src/document/utils/index.d.ts +1 -1
  18. package/dist/node/cjs/document-model.js +1 -25
  19. package/dist/node/cjs/document.js +1 -19
  20. package/dist/node/cjs/index.js +1 -22
  21. package/dist/node/cjs/internal/index-CPeTtUsk.js +22 -0
  22. package/dist/node/cjs/internal/index-CTavCc1t.js +1 -0
  23. package/dist/node/cjs/internal/object-DhI24-1e.js +20 -0
  24. package/dist/node/es/document-model.js +14 -15
  25. package/dist/node/es/document.js +9 -10
  26. package/dist/node/es/index.js +11 -13
  27. package/dist/node/es/internal/index-8lUz8qED.js +44 -0
  28. package/dist/node/es/internal/index-A880In4b.js +2108 -0
  29. package/dist/node/es/internal/object-C9n9Ijnt.js +1687 -0
  30. package/dist/node/src/document/object.d.ts +35 -0
  31. package/dist/node/src/document/types.d.ts +6 -0
  32. package/dist/node/src/document/utils/base.d.ts +5 -4
  33. package/dist/node/src/document/utils/document-helpers.d.ts +1 -1
  34. package/dist/node/src/document/utils/index.d.ts +1 -1
  35. package/package.json +1 -1
  36. package/CHANGELOG.md +0 -19
  37. package/dist/browser/cjs/document-model.js.map +0 -1
  38. package/dist/browser/cjs/document.js.map +0 -1
  39. package/dist/browser/cjs/index.js.map +0 -1
  40. package/dist/browser/cjs/internal/index-CaJbS06G.js +0 -2339
  41. package/dist/browser/cjs/internal/index-CaJbS06G.js.map +0 -1
  42. package/dist/browser/cjs/internal/index-kKIg6qNB.js +0 -44
  43. package/dist/browser/cjs/internal/index-kKIg6qNB.js.map +0 -1
  44. package/dist/browser/cjs/internal/object-B6dSDhtS.js +0 -4109
  45. package/dist/browser/cjs/internal/object-B6dSDhtS.js.map +0 -1
  46. package/dist/browser/es/document-model.js.map +0 -1
  47. package/dist/browser/es/document.js.map +0 -1
  48. package/dist/browser/es/index.js.map +0 -1
  49. package/dist/browser/es/internal/index-B1lQN59e.js +0 -2340
  50. package/dist/browser/es/internal/index-B1lQN59e.js.map +0 -1
  51. package/dist/browser/es/internal/index-Bu0CkmrW.js +0 -45
  52. package/dist/browser/es/internal/index-Bu0CkmrW.js.map +0 -1
  53. package/dist/browser/es/internal/object-9mR1JlXD.js +0 -4110
  54. package/dist/browser/es/internal/object-9mR1JlXD.js.map +0 -1
  55. package/dist/node/cjs/document-model.js.map +0 -1
  56. package/dist/node/cjs/document.js.map +0 -1
  57. package/dist/node/cjs/index.js.map +0 -1
  58. package/dist/node/cjs/internal/index-AqiVmL0w.js +0 -44
  59. package/dist/node/cjs/internal/index-AqiVmL0w.js.map +0 -1
  60. package/dist/node/cjs/internal/index-ajqhOWQ1.js +0 -2343
  61. package/dist/node/cjs/internal/index-ajqhOWQ1.js.map +0 -1
  62. package/dist/node/cjs/internal/object-D_9h7jBN.js +0 -2111
  63. package/dist/node/cjs/internal/object-D_9h7jBN.js.map +0 -1
  64. package/dist/node/es/document-model.js.map +0 -1
  65. package/dist/node/es/document.js.map +0 -1
  66. package/dist/node/es/index.js.map +0 -1
  67. package/dist/node/es/internal/index-Bh_09edy.js +0 -2344
  68. package/dist/node/es/internal/index-Bh_09edy.js.map +0 -1
  69. package/dist/node/es/internal/index-s6NFw7Kq.js +0 -45
  70. package/dist/node/es/internal/index-s6NFw7Kq.js.map +0 -1
  71. package/dist/node/es/internal/object-CbITi4iq.js +0 -2112
  72. package/dist/node/es/internal/object-CbITi4iq.js.map +0 -1
  73. package/dist/src/document/actions/creators.d.ts +0 -47
  74. package/dist/src/document/actions/index.d.ts +0 -14
  75. package/dist/src/document/actions/types.d.ts +0 -15
  76. package/dist/src/document/index.d.ts +0 -6
  77. package/dist/src/document/object.d.ts +0 -1175
  78. package/dist/src/document/reducer.d.ts +0 -43
  79. package/dist/src/document/schema/index.d.ts +0 -2
  80. package/dist/src/document/schema/types.d.ts +0 -176
  81. package/dist/src/document/schema/zod.d.ts +0 -113
  82. package/dist/src/document/signal.d.ts +0 -29
  83. package/dist/src/document/types.d.ts +0 -249
  84. package/dist/src/document/utils/base.d.ts +0 -85
  85. package/dist/src/document/utils/document-helpers.d.ts +0 -53
  86. package/dist/src/document/utils/file.d.ts +0 -48
  87. package/dist/src/document/utils/index.d.ts +0 -5
  88. package/dist/src/document/utils/node.d.ts +0 -9
  89. package/dist/src/document/utils/validation.d.ts +0 -2
  90. package/dist/src/document-model/custom/reducers/header.d.ts +0 -2
  91. package/dist/src/document-model/custom/reducers/module.d.ts +0 -2
  92. package/dist/src/document-model/custom/reducers/operation-error.d.ts +0 -2
  93. package/dist/src/document-model/custom/reducers/operation-example.d.ts +0 -2
  94. package/dist/src/document-model/custom/reducers/operation.d.ts +0 -2
  95. package/dist/src/document-model/custom/reducers/state.d.ts +0 -2
  96. package/dist/src/document-model/custom/reducers/versioning.d.ts +0 -7
  97. package/dist/src/document-model/custom/utils.d.ts +0 -7
  98. package/dist/src/document-model/gen/actions.d.ts +0 -15
  99. package/dist/src/document-model/gen/creators.d.ts +0 -7
  100. package/dist/src/document-model/gen/document-model.d.ts +0 -2
  101. package/dist/src/document-model/gen/header/actions.d.ts +0 -9
  102. package/dist/src/document-model/gen/header/creators.d.ts +0 -8
  103. package/dist/src/document-model/gen/header/object.d.ts +0 -12
  104. package/dist/src/document-model/gen/header/operations.d.ts +0 -10
  105. package/dist/src/document-model/gen/index.d.ts +0 -5
  106. package/dist/src/document-model/gen/module/actions.d.ts +0 -8
  107. package/dist/src/document-model/gen/module/creators.d.ts +0 -7
  108. package/dist/src/document-model/gen/module/object.d.ts +0 -11
  109. package/dist/src/document-model/gen/module/operations.d.ts +0 -9
  110. package/dist/src/document-model/gen/object.d.ts +0 -28
  111. package/dist/src/document-model/gen/operation/actions.d.ts +0 -13
  112. package/dist/src/document-model/gen/operation/creators.d.ts +0 -12
  113. package/dist/src/document-model/gen/operation/object.d.ts +0 -16
  114. package/dist/src/document-model/gen/operation/operations.d.ts +0 -14
  115. package/dist/src/document-model/gen/operation-error/actions.d.ts +0 -10
  116. package/dist/src/document-model/gen/operation-error/creators.d.ts +0 -9
  117. package/dist/src/document-model/gen/operation-error/object.d.ts +0 -13
  118. package/dist/src/document-model/gen/operation-error/operations.d.ts +0 -11
  119. package/dist/src/document-model/gen/operation-example/actions.d.ts +0 -7
  120. package/dist/src/document-model/gen/operation-example/creators.d.ts +0 -6
  121. package/dist/src/document-model/gen/operation-example/object.d.ts +0 -10
  122. package/dist/src/document-model/gen/operation-example/operations.d.ts +0 -8
  123. package/dist/src/document-model/gen/reducer.d.ts +0 -5
  124. package/dist/src/document-model/gen/schema/index.d.ts +0 -2
  125. package/dist/src/document-model/gen/schema/types.d.ts +0 -453
  126. package/dist/src/document-model/gen/schema/zod.d.ts +0 -453
  127. package/dist/src/document-model/gen/state/actions.d.ts +0 -9
  128. package/dist/src/document-model/gen/state/creators.d.ts +0 -8
  129. package/dist/src/document-model/gen/state/object.d.ts +0 -12
  130. package/dist/src/document-model/gen/state/operations.d.ts +0 -10
  131. package/dist/src/document-model/gen/types.d.ts +0 -8
  132. package/dist/src/document-model/gen/utils.d.ts +0 -6
  133. package/dist/src/document-model/gen/versioning/actions.d.ts +0 -8
  134. package/dist/src/document-model/gen/versioning/creators.d.ts +0 -7
  135. package/dist/src/document-model/gen/versioning/object.d.ts +0 -11
  136. package/dist/src/document-model/gen/versioning/operations.d.ts +0 -9
  137. package/dist/src/document-model/index.d.ts +0 -80
  138. package/dist/src/index.d.ts +0 -25
  139. package/dist/vite.config.d.ts +0 -2
  140. package/dist/vitest.config.d.ts +0 -2
@@ -0,0 +1,2789 @@
1
+ var Xe = Object.defineProperty;
2
+ var Ve = (i, r, o) => r in i ? Xe(i, r, { enumerable: !0, configurable: !0, writable: !0, value: o }) : i[r] = o;
3
+ var At = (i, r, o) => (Ve(i, typeof r != "symbol" ? r + "" : r, o), o);
4
+ import { produce as Ot, castDraft as Bt, castImmutable as Ke, freeze as Ge } from "immer";
5
+ import { z as _ } from "zod";
6
+ import oe from "jszip";
7
+ const ae = (i) => i != null, Ze = _.any().refine((i) => ae(i)), se = _.enum(["LOAD_STATE"]), pe = _.enum(["PRUNE"]), ce = _.enum(["REDO"]), le = _.enum(["SET_NAME"]), ue = _.enum(["UNDO"]);
8
+ function Ye() {
9
+ return _.object({
10
+ __typename: _.literal("Action").optional(),
11
+ type: _.string()
12
+ });
13
+ }
14
+ function yt() {
15
+ return _.literal("global").or(_.literal("local"));
16
+ }
17
+ function fe() {
18
+ return _.union([
19
+ he(),
20
+ xe(),
21
+ de(),
22
+ ge(),
23
+ ye()
24
+ ]);
25
+ }
26
+ function Qe() {
27
+ return _.object({
28
+ __typename: _.literal("DocumentFile").optional(),
29
+ data: _.string(),
30
+ extension: _.string().nullable(),
31
+ fileName: _.string().nullable(),
32
+ mimeType: _.string()
33
+ });
34
+ }
35
+ function he() {
36
+ return _.object({
37
+ input: _.lazy(() => zt()),
38
+ type: se,
39
+ scope: yt()
40
+ });
41
+ }
42
+ function zt() {
43
+ return _.object({
44
+ operations: _.number(),
45
+ state: _.lazy(() => me())
46
+ });
47
+ }
48
+ function me() {
49
+ return _.object({
50
+ data: _.unknown().nullish(),
51
+ name: _.string()
52
+ });
53
+ }
54
+ function ti() {
55
+ return _.object({
56
+ __typename: _.literal("Operation").optional(),
57
+ hash: _.string(),
58
+ index: _.number(),
59
+ timestamp: _.string().datetime(),
60
+ type: _.string()
61
+ });
62
+ }
63
+ function xe() {
64
+ return _.object({
65
+ input: _.lazy(() => qt()),
66
+ type: pe,
67
+ scope: yt()
68
+ });
69
+ }
70
+ function qt() {
71
+ return _.object({
72
+ end: _.number().nullish(),
73
+ start: _.number().nullish()
74
+ });
75
+ }
76
+ const Jt = _.number;
77
+ function de() {
78
+ return _.object({
79
+ input: Jt(),
80
+ type: ce,
81
+ scope: yt()
82
+ });
83
+ }
84
+ const Ht = _.string;
85
+ function ge() {
86
+ return _.object({
87
+ input: Ht(),
88
+ type: le,
89
+ scope: _.literal("global")
90
+ });
91
+ }
92
+ function ei() {
93
+ return _.object({
94
+ __typename: _.literal("SetNameOperation").optional(),
95
+ hash: _.string(),
96
+ index: _.number(),
97
+ input: _.string(),
98
+ timestamp: _.string().datetime(),
99
+ type: _.string()
100
+ });
101
+ }
102
+ const Wt = _.number;
103
+ function ye() {
104
+ return _.object({
105
+ input: Wt(),
106
+ type: ue,
107
+ scope: yt()
108
+ });
109
+ }
110
+ const gr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
111
+ __proto__: null,
112
+ ActionSchema: Ye,
113
+ BaseActionSchema: fe,
114
+ DocumentFileSchema: Qe,
115
+ LoadStateActionInputSchema: zt,
116
+ LoadStateActionSchema: he,
117
+ LoadStateActionStateInputSchema: me,
118
+ Load_StateSchema: se,
119
+ OperationSchema: ti,
120
+ OperationScopeSchema: yt,
121
+ PruneActionInputSchema: qt,
122
+ PruneActionSchema: xe,
123
+ PruneSchema: pe,
124
+ RedoActionInputSchema: Jt,
125
+ RedoActionSchema: de,
126
+ RedoSchema: ce,
127
+ SetNameActionInputSchema: Ht,
128
+ SetNameActionSchema: ge,
129
+ SetNameOperationSchema: ei,
130
+ Set_NameSchema: le,
131
+ UndoActionInputSchema: Wt,
132
+ UndoActionSchema: ye,
133
+ UndoSchema: ue,
134
+ definedNonNullAnySchema: Ze,
135
+ isDefinedNonNullAny: ae
136
+ }, Symbol.toStringTag, { value: "Module" }));
137
+ function Xt(i) {
138
+ return i && i.__esModule && Object.prototype.hasOwnProperty.call(i, "default") ? i.default : i;
139
+ }
140
+ var Nt = { exports: {} };
141
+ (function(i, r) {
142
+ const { hasOwnProperty: o } = Object.prototype, p = Z();
143
+ p.configure = Z, p.stringify = p, p.default = p, r.stringify = p, r.configure = Z, i.exports = p;
144
+ const u = /[\u0000-\u001f\u0022\u005c\ud800-\udfff]|[\ud800-\udbff](?![\udc00-\udfff])|(?:[^\ud800-\udbff]|^)[\udc00-\udfff]/;
145
+ function f(w) {
146
+ return w.length < 5e3 && !u.test(w) ? `"${w}"` : JSON.stringify(w);
147
+ }
148
+ function c(w) {
149
+ if (w.length > 200)
150
+ return w.sort();
151
+ for (let E = 1; E < w.length; E++) {
152
+ const v = w[E];
153
+ let R = E;
154
+ for (; R !== 0 && w[R - 1] > v; )
155
+ w[R] = w[R - 1], R--;
156
+ w[R] = v;
157
+ }
158
+ return w;
159
+ }
160
+ const s = Object.getOwnPropertyDescriptor(
161
+ Object.getPrototypeOf(
162
+ Object.getPrototypeOf(
163
+ new Int8Array()
164
+ )
165
+ ),
166
+ Symbol.toStringTag
167
+ ).get;
168
+ function h(w) {
169
+ return s.call(w) !== void 0 && w.length !== 0;
170
+ }
171
+ function g(w, E, v) {
172
+ w.length < v && (v = w.length);
173
+ const R = E === "," ? "" : " ";
174
+ let H = `"0":${R}${w[0]}`;
175
+ for (let W = 1; W < v; W++)
176
+ H += `${E}"${W}":${R}${w[W]}`;
177
+ return H;
178
+ }
179
+ function y(w) {
180
+ if (o.call(w, "circularValue")) {
181
+ const E = w.circularValue;
182
+ if (typeof E == "string")
183
+ return `"${E}"`;
184
+ if (E == null)
185
+ return E;
186
+ if (E === Error || E === TypeError)
187
+ return {
188
+ toString() {
189
+ throw new TypeError("Converting circular structure to JSON");
190
+ }
191
+ };
192
+ throw new TypeError('The "circularValue" argument must be of type string or the value null or undefined');
193
+ }
194
+ return '"[Circular]"';
195
+ }
196
+ function b(w, E) {
197
+ let v;
198
+ if (o.call(w, E) && (v = w[E], typeof v != "boolean"))
199
+ throw new TypeError(`The "${E}" argument must be of type boolean`);
200
+ return v === void 0 ? !0 : v;
201
+ }
202
+ function F(w, E) {
203
+ let v;
204
+ if (o.call(w, E)) {
205
+ if (v = w[E], typeof v != "number")
206
+ throw new TypeError(`The "${E}" argument must be of type number`);
207
+ if (!Number.isInteger(v))
208
+ throw new TypeError(`The "${E}" argument must be an integer`);
209
+ if (v < 1)
210
+ throw new RangeError(`The "${E}" argument must be >= 1`);
211
+ }
212
+ return v === void 0 ? 1 / 0 : v;
213
+ }
214
+ function j(w) {
215
+ return w === 1 ? "1 item" : `${w} items`;
216
+ }
217
+ function $(w) {
218
+ const E = /* @__PURE__ */ new Set();
219
+ for (const v of w)
220
+ (typeof v == "string" || typeof v == "number") && E.add(String(v));
221
+ return E;
222
+ }
223
+ function q(w) {
224
+ if (o.call(w, "strict")) {
225
+ const E = w.strict;
226
+ if (typeof E != "boolean")
227
+ throw new TypeError('The "strict" argument must be of type boolean');
228
+ if (E)
229
+ return (v) => {
230
+ let R = `Object can not safely be stringified. Received type ${typeof v}`;
231
+ throw typeof v != "function" && (R += ` (${v.toString()})`), new Error(R);
232
+ };
233
+ }
234
+ }
235
+ function Z(w) {
236
+ w = { ...w };
237
+ const E = q(w);
238
+ E && (w.bigint === void 0 && (w.bigint = !1), "circularValue" in w || (w.circularValue = Error));
239
+ const v = y(w), R = b(w, "bigint"), H = b(w, "deterministic"), W = F(w, "maximumDepth"), M = F(w, "maximumBreadth");
240
+ function ut(X, m, S, T, O, C) {
241
+ let A = m[X];
242
+ switch (typeof A == "object" && A !== null && typeof A.toJSON == "function" && (A = A.toJSON(X)), A = T.call(m, X, A), typeof A) {
243
+ case "string":
244
+ return f(A);
245
+ case "object": {
246
+ if (A === null)
247
+ return "null";
248
+ if (S.indexOf(A) !== -1)
249
+ return v;
250
+ let k = "", B = ",";
251
+ const I = C;
252
+ if (Array.isArray(A)) {
253
+ if (A.length === 0)
254
+ return "[]";
255
+ if (W < S.length + 1)
256
+ return '"[Array]"';
257
+ S.push(A), O !== "" && (C += O, k += `
258
+ ${C}`, B = `,
259
+ ${C}`);
260
+ const V = Math.min(A.length, M);
261
+ let Q = 0;
262
+ for (; Q < V - 1; Q++) {
263
+ const ct = ut(String(Q), A, S, T, O, C);
264
+ k += ct !== void 0 ? ct : "null", k += B;
265
+ }
266
+ const tt = ut(String(Q), A, S, T, O, C);
267
+ if (k += tt !== void 0 ? tt : "null", A.length - 1 > M) {
268
+ const ct = A.length - M - 1;
269
+ k += `${B}"... ${j(ct)} not stringified"`;
270
+ }
271
+ return O !== "" && (k += `
272
+ ${I}`), S.pop(), `[${k}]`;
273
+ }
274
+ let L = Object.keys(A);
275
+ const J = L.length;
276
+ if (J === 0)
277
+ return "{}";
278
+ if (W < S.length + 1)
279
+ return '"[Object]"';
280
+ let U = "", K = "";
281
+ O !== "" && (C += O, B = `,
282
+ ${C}`, U = " ");
283
+ const Y = Math.min(J, M);
284
+ H && !h(A) && (L = c(L)), S.push(A);
285
+ for (let V = 0; V < Y; V++) {
286
+ const Q = L[V], tt = ut(Q, A, S, T, O, C);
287
+ tt !== void 0 && (k += `${K}${f(Q)}:${U}${tt}`, K = B);
288
+ }
289
+ if (J > M) {
290
+ const V = J - M;
291
+ k += `${K}"...":${U}"${j(V)} not stringified"`, K = B;
292
+ }
293
+ return O !== "" && K.length > 1 && (k = `
294
+ ${C}${k}
295
+ ${I}`), S.pop(), `{${k}}`;
296
+ }
297
+ case "number":
298
+ return isFinite(A) ? String(A) : E ? E(A) : "null";
299
+ case "boolean":
300
+ return A === !0 ? "true" : "false";
301
+ case "undefined":
302
+ return;
303
+ case "bigint":
304
+ if (R)
305
+ return String(A);
306
+ default:
307
+ return E ? E(A) : void 0;
308
+ }
309
+ }
310
+ function ft(X, m, S, T, O, C) {
311
+ switch (typeof m == "object" && m !== null && typeof m.toJSON == "function" && (m = m.toJSON(X)), typeof m) {
312
+ case "string":
313
+ return f(m);
314
+ case "object": {
315
+ if (m === null)
316
+ return "null";
317
+ if (S.indexOf(m) !== -1)
318
+ return v;
319
+ const A = C;
320
+ let k = "", B = ",";
321
+ if (Array.isArray(m)) {
322
+ if (m.length === 0)
323
+ return "[]";
324
+ if (W < S.length + 1)
325
+ return '"[Array]"';
326
+ S.push(m), O !== "" && (C += O, k += `
327
+ ${C}`, B = `,
328
+ ${C}`);
329
+ const J = Math.min(m.length, M);
330
+ let U = 0;
331
+ for (; U < J - 1; U++) {
332
+ const Y = ft(String(U), m[U], S, T, O, C);
333
+ k += Y !== void 0 ? Y : "null", k += B;
334
+ }
335
+ const K = ft(String(U), m[U], S, T, O, C);
336
+ if (k += K !== void 0 ? K : "null", m.length - 1 > M) {
337
+ const Y = m.length - M - 1;
338
+ k += `${B}"... ${j(Y)} not stringified"`;
339
+ }
340
+ return O !== "" && (k += `
341
+ ${A}`), S.pop(), `[${k}]`;
342
+ }
343
+ S.push(m);
344
+ let I = "";
345
+ O !== "" && (C += O, B = `,
346
+ ${C}`, I = " ");
347
+ let L = "";
348
+ for (const J of T) {
349
+ const U = ft(J, m[J], S, T, O, C);
350
+ U !== void 0 && (k += `${L}${f(J)}:${I}${U}`, L = B);
351
+ }
352
+ return O !== "" && L.length > 1 && (k = `
353
+ ${C}${k}
354
+ ${A}`), S.pop(), `{${k}}`;
355
+ }
356
+ case "number":
357
+ return isFinite(m) ? String(m) : E ? E(m) : "null";
358
+ case "boolean":
359
+ return m === !0 ? "true" : "false";
360
+ case "undefined":
361
+ return;
362
+ case "bigint":
363
+ if (R)
364
+ return String(m);
365
+ default:
366
+ return E ? E(m) : void 0;
367
+ }
368
+ }
369
+ function st(X, m, S, T, O) {
370
+ switch (typeof m) {
371
+ case "string":
372
+ return f(m);
373
+ case "object": {
374
+ if (m === null)
375
+ return "null";
376
+ if (typeof m.toJSON == "function") {
377
+ if (m = m.toJSON(X), typeof m != "object")
378
+ return st(X, m, S, T, O);
379
+ if (m === null)
380
+ return "null";
381
+ }
382
+ if (S.indexOf(m) !== -1)
383
+ return v;
384
+ const C = O;
385
+ if (Array.isArray(m)) {
386
+ if (m.length === 0)
387
+ return "[]";
388
+ if (W < S.length + 1)
389
+ return '"[Array]"';
390
+ S.push(m), O += T;
391
+ let U = `
392
+ ${O}`;
393
+ const K = `,
394
+ ${O}`, Y = Math.min(m.length, M);
395
+ let V = 0;
396
+ for (; V < Y - 1; V++) {
397
+ const tt = st(String(V), m[V], S, T, O);
398
+ U += tt !== void 0 ? tt : "null", U += K;
399
+ }
400
+ const Q = st(String(V), m[V], S, T, O);
401
+ if (U += Q !== void 0 ? Q : "null", m.length - 1 > M) {
402
+ const tt = m.length - M - 1;
403
+ U += `${K}"... ${j(tt)} not stringified"`;
404
+ }
405
+ return U += `
406
+ ${C}`, S.pop(), `[${U}]`;
407
+ }
408
+ let A = Object.keys(m);
409
+ const k = A.length;
410
+ if (k === 0)
411
+ return "{}";
412
+ if (W < S.length + 1)
413
+ return '"[Object]"';
414
+ O += T;
415
+ const B = `,
416
+ ${O}`;
417
+ let I = "", L = "", J = Math.min(k, M);
418
+ h(m) && (I += g(m, B, M), A = A.slice(m.length), J -= m.length, L = B), H && (A = c(A)), S.push(m);
419
+ for (let U = 0; U < J; U++) {
420
+ const K = A[U], Y = st(K, m[K], S, T, O);
421
+ Y !== void 0 && (I += `${L}${f(K)}: ${Y}`, L = B);
422
+ }
423
+ if (k > M) {
424
+ const U = k - M;
425
+ I += `${L}"...": "${j(U)} not stringified"`, L = B;
426
+ }
427
+ return L !== "" && (I = `
428
+ ${O}${I}
429
+ ${C}`), S.pop(), `{${I}}`;
430
+ }
431
+ case "number":
432
+ return isFinite(m) ? String(m) : E ? E(m) : "null";
433
+ case "boolean":
434
+ return m === !0 ? "true" : "false";
435
+ case "undefined":
436
+ return;
437
+ case "bigint":
438
+ if (R)
439
+ return String(m);
440
+ default:
441
+ return E ? E(m) : void 0;
442
+ }
443
+ }
444
+ function pt(X, m, S) {
445
+ switch (typeof m) {
446
+ case "string":
447
+ return f(m);
448
+ case "object": {
449
+ if (m === null)
450
+ return "null";
451
+ if (typeof m.toJSON == "function") {
452
+ if (m = m.toJSON(X), typeof m != "object")
453
+ return pt(X, m, S);
454
+ if (m === null)
455
+ return "null";
456
+ }
457
+ if (S.indexOf(m) !== -1)
458
+ return v;
459
+ let T = "";
460
+ if (Array.isArray(m)) {
461
+ if (m.length === 0)
462
+ return "[]";
463
+ if (W < S.length + 1)
464
+ return '"[Array]"';
465
+ S.push(m);
466
+ const B = Math.min(m.length, M);
467
+ let I = 0;
468
+ for (; I < B - 1; I++) {
469
+ const J = pt(String(I), m[I], S);
470
+ T += J !== void 0 ? J : "null", T += ",";
471
+ }
472
+ const L = pt(String(I), m[I], S);
473
+ if (T += L !== void 0 ? L : "null", m.length - 1 > M) {
474
+ const J = m.length - M - 1;
475
+ T += `,"... ${j(J)} not stringified"`;
476
+ }
477
+ return S.pop(), `[${T}]`;
478
+ }
479
+ let O = Object.keys(m);
480
+ const C = O.length;
481
+ if (C === 0)
482
+ return "{}";
483
+ if (W < S.length + 1)
484
+ return '"[Object]"';
485
+ let A = "", k = Math.min(C, M);
486
+ h(m) && (T += g(m, ",", M), O = O.slice(m.length), k -= m.length, A = ","), H && (O = c(O)), S.push(m);
487
+ for (let B = 0; B < k; B++) {
488
+ const I = O[B], L = pt(I, m[I], S);
489
+ L !== void 0 && (T += `${A}${f(I)}:${L}`, A = ",");
490
+ }
491
+ if (C > M) {
492
+ const B = C - M;
493
+ T += `${A}"...":"${j(B)} not stringified"`;
494
+ }
495
+ return S.pop(), `{${T}}`;
496
+ }
497
+ case "number":
498
+ return isFinite(m) ? String(m) : E ? E(m) : "null";
499
+ case "boolean":
500
+ return m === !0 ? "true" : "false";
501
+ case "undefined":
502
+ return;
503
+ case "bigint":
504
+ if (R)
505
+ return String(m);
506
+ default:
507
+ return E ? E(m) : void 0;
508
+ }
509
+ }
510
+ function Dt(X, m, S) {
511
+ if (arguments.length > 1) {
512
+ let T = "";
513
+ if (typeof S == "number" ? T = " ".repeat(Math.min(S, 10)) : typeof S == "string" && (T = S.slice(0, 10)), m != null) {
514
+ if (typeof m == "function")
515
+ return ut("", { "": X }, [], m, T, "");
516
+ if (Array.isArray(m))
517
+ return ft("", X, [], $(m), T, "");
518
+ }
519
+ if (T.length !== 0)
520
+ return st("", X, [], T, "");
521
+ }
522
+ return pt("", X, []);
523
+ }
524
+ return Dt;
525
+ }
526
+ })(Nt, Nt.exports);
527
+ var ii = Nt.exports;
528
+ const xt = /* @__PURE__ */ Xt(ii);
529
+ xt.configure;
530
+ function ri(i, r) {
531
+ return { ...i, name: r };
532
+ }
533
+ function ni(i, r, o) {
534
+ const { scope: p, input: u } = r;
535
+ return Ot({
536
+ document: i,
537
+ action: r,
538
+ skip: o
539
+ }, (c) => {
540
+ if (c.document.operations[p].length < 1)
541
+ throw new Error(
542
+ `Cannot undo: no operations in history for scope "${p}"`
543
+ );
544
+ if (u < 1)
545
+ throw new Error(
546
+ "Invalid UNDO action: input value must be greater than 0"
547
+ );
548
+ if (c.skip > 0)
549
+ throw new Error(
550
+ "Cannot undo: skip value from reducer cannot be used with UNDO action"
551
+ );
552
+ const s = c.document.operations[p].at(-1), h = s && s.type === "NOOP" && s.skip > 0;
553
+ if (c.skip += u, h) {
554
+ c.skip += s.skip;
555
+ const F = c.document.operations[p][c.document.operations[p].length - 2];
556
+ F && s.index - F.index === 1 && c.document.operations[p].pop();
557
+ }
558
+ if (c.document.operations[p].length < c.skip)
559
+ throw new Error(
560
+ "Cannot undo: you can't undo more operations than the ones in the scope history"
561
+ );
562
+ const g = c.document.operations[p].length - 1;
563
+ let y = u, b = h ? g - s.skip : g;
564
+ for (; y > 0 && b >= 0; ) {
565
+ const F = c.document.operations[p][b];
566
+ if (!F) {
567
+ y--, b--;
568
+ continue;
569
+ }
570
+ F.type === "NOOP" && F.skip > 0 ? (b = b - (F.skip + 1), c.skip += F.skip + 1) : (c.document.clipboard.push({ ...F }), y--, b--);
571
+ }
572
+ c.action = He(p);
573
+ });
574
+ }
575
+ function oi(i, r, o) {
576
+ const { scope: p, input: u } = r;
577
+ return Ot({
578
+ document: i,
579
+ action: r,
580
+ skip: o
581
+ }, (c) => {
582
+ if (c.skip > 0)
583
+ throw new Error(
584
+ "Cannot redo: skip value from reducer cannot be used with REDO action"
585
+ );
586
+ if (u > 1)
587
+ throw new Error(
588
+ "Cannot redo: you can only redo one operation at a time"
589
+ );
590
+ if (u < 1)
591
+ throw new Error("Invalid REDO action: invalid redo input value");
592
+ if (c.document.clipboard.length < 1)
593
+ throw new Error("Cannot redo: no operations in the clipboard");
594
+ const s = c.document.clipboard.findLastIndex(
595
+ (g) => g.scope === p
596
+ );
597
+ if (s < 0)
598
+ throw new Error(
599
+ `Cannot redo: no operations in clipboard for scope "${p}"`
600
+ );
601
+ const h = c.document.clipboard.splice(s, 1)[0];
602
+ c.action = Bt({
603
+ type: h.type,
604
+ scope: h.scope,
605
+ input: h.input
606
+ });
607
+ });
608
+ }
609
+ function ai(i, r, o) {
610
+ const { scope: p } = r, u = i.operations[p];
611
+ let {
612
+ input: { start: f, end: c }
613
+ } = r;
614
+ f = f || 0, c = c || u.length;
615
+ const s = u.slice(f, c), h = u.slice(0, f), g = u.slice(c), y = Pt(
616
+ i.initialState,
617
+ {
618
+ ...i.operations,
619
+ [p]: h.concat(s)
620
+ },
621
+ o
622
+ ), { name: b, state: F } = y, j = h.length, $ = h.length ? h[h.length - 1].timestamp : g.length ? g[0].timestamp : (/* @__PURE__ */ new Date()).toISOString();
623
+ return Pt(
624
+ i.initialState,
625
+ {
626
+ ...i.operations,
627
+ [p]: [
628
+ ...h,
629
+ {
630
+ ...te(
631
+ { name: b, state: F },
632
+ s.length
633
+ ),
634
+ timestamp: $,
635
+ index: j,
636
+ hash: Qt({ state: F }, "global")
637
+ },
638
+ ...g.map((q, Z) => ({
639
+ ...q,
640
+ index: j + Z + 1
641
+ }))
642
+ ]
643
+ },
644
+ o
645
+ );
646
+ }
647
+ function si(i, r) {
648
+ return {
649
+ ...i,
650
+ name: r.name,
651
+ state: r.state ?? { global: {}, local: {} }
652
+ };
653
+ }
654
+ const we = "SET_NAME", wt = "UNDO", Et = "REDO", It = "PRUNE", Ee = "LOAD_STATE", pi = "NOOP", be = { "application/andrew-inset": ["ez"], "application/appinstaller": ["appinstaller"], "application/applixware": ["aw"], "application/appx": ["appx"], "application/appxbundle": ["appxbundle"], "application/atom+xml": ["atom"], "application/atomcat+xml": ["atomcat"], "application/atomdeleted+xml": ["atomdeleted"], "application/atomsvc+xml": ["atomsvc"], "application/atsc-dwd+xml": ["dwd"], "application/atsc-held+xml": ["held"], "application/atsc-rsat+xml": ["rsat"], "application/automationml-aml+xml": ["aml"], "application/automationml-amlx+zip": ["amlx"], "application/bdoc": ["bdoc"], "application/calendar+xml": ["xcs"], "application/ccxml+xml": ["ccxml"], "application/cdfx+xml": ["cdfx"], "application/cdmi-capability": ["cdmia"], "application/cdmi-container": ["cdmic"], "application/cdmi-domain": ["cdmid"], "application/cdmi-object": ["cdmio"], "application/cdmi-queue": ["cdmiq"], "application/cpl+xml": ["cpl"], "application/cu-seeme": ["cu"], "application/cwl": ["cwl"], "application/dash+xml": ["mpd"], "application/dash-patch+xml": ["mpp"], "application/davmount+xml": ["davmount"], "application/docbook+xml": ["dbk"], "application/dssc+der": ["dssc"], "application/dssc+xml": ["xdssc"], "application/ecmascript": ["ecma"], "application/emma+xml": ["emma"], "application/emotionml+xml": ["emotionml"], "application/epub+zip": ["epub"], "application/exi": ["exi"], "application/express": ["exp"], "application/fdf": ["fdf"], "application/fdt+xml": ["fdt"], "application/font-tdpfr": ["pfr"], "application/geo+json": ["geojson"], "application/gml+xml": ["gml"], "application/gpx+xml": ["gpx"], "application/gxf": ["gxf"], "application/gzip": ["gz"], "application/hjson": ["hjson"], "application/hyperstudio": ["stk"], "application/inkml+xml": ["ink", "inkml"], "application/ipfix": ["ipfix"], "application/its+xml": ["its"], "application/java-archive": ["jar", "war", "ear"], "application/java-serialized-object": ["ser"], "application/java-vm": ["class"], "application/javascript": ["*js"], "application/json": ["json", "map"], "application/json5": ["json5"], "application/jsonml+json": ["jsonml"], "application/ld+json": ["jsonld"], "application/lgr+xml": ["lgr"], "application/lost+xml": ["lostxml"], "application/mac-binhex40": ["hqx"], "application/mac-compactpro": ["cpt"], "application/mads+xml": ["mads"], "application/manifest+json": ["webmanifest"], "application/marc": ["mrc"], "application/marcxml+xml": ["mrcx"], "application/mathematica": ["ma", "nb", "mb"], "application/mathml+xml": ["mathml"], "application/mbox": ["mbox"], "application/media-policy-dataset+xml": ["mpf"], "application/mediaservercontrol+xml": ["mscml"], "application/metalink+xml": ["metalink"], "application/metalink4+xml": ["meta4"], "application/mets+xml": ["mets"], "application/mmt-aei+xml": ["maei"], "application/mmt-usd+xml": ["musd"], "application/mods+xml": ["mods"], "application/mp21": ["m21", "mp21"], "application/mp4": ["*mp4", "*mpg4", "mp4s", "m4p"], "application/msix": ["msix"], "application/msixbundle": ["msixbundle"], "application/msword": ["doc", "dot"], "application/mxf": ["mxf"], "application/n-quads": ["nq"], "application/n-triples": ["nt"], "application/node": ["cjs"], "application/octet-stream": ["bin", "dms", "lrf", "mar", "so", "dist", "distz", "pkg", "bpk", "dump", "elc", "deploy", "exe", "dll", "deb", "dmg", "iso", "img", "msi", "msp", "msm", "buffer"], "application/oda": ["oda"], "application/oebps-package+xml": ["opf"], "application/ogg": ["ogx"], "application/omdoc+xml": ["omdoc"], "application/onenote": ["onetoc", "onetoc2", "onetmp", "onepkg"], "application/oxps": ["oxps"], "application/p2p-overlay+xml": ["relo"], "application/patch-ops-error+xml": ["xer"], "application/pdf": ["pdf"], "application/pgp-encrypted": ["pgp"], "application/pgp-keys": ["asc"], "application/pgp-signature": ["sig", "*asc"], "application/pics-rules": ["prf"], "application/pkcs10": ["p10"], "application/pkcs7-mime": ["p7m", "p7c"], "application/pkcs7-signature": ["p7s"], "application/pkcs8": ["p8"], "application/pkix-attr-cert": ["ac"], "application/pkix-cert": ["cer"], "application/pkix-crl": ["crl"], "application/pkix-pkipath": ["pkipath"], "application/pkixcmp": ["pki"], "application/pls+xml": ["pls"], "application/postscript": ["ai", "eps", "ps"], "application/provenance+xml": ["provx"], "application/pskc+xml": ["pskcxml"], "application/raml+yaml": ["raml"], "application/rdf+xml": ["rdf", "owl"], "application/reginfo+xml": ["rif"], "application/relax-ng-compact-syntax": ["rnc"], "application/resource-lists+xml": ["rl"], "application/resource-lists-diff+xml": ["rld"], "application/rls-services+xml": ["rs"], "application/route-apd+xml": ["rapd"], "application/route-s-tsid+xml": ["sls"], "application/route-usd+xml": ["rusd"], "application/rpki-ghostbusters": ["gbr"], "application/rpki-manifest": ["mft"], "application/rpki-roa": ["roa"], "application/rsd+xml": ["rsd"], "application/rss+xml": ["rss"], "application/rtf": ["rtf"], "application/sbml+xml": ["sbml"], "application/scvp-cv-request": ["scq"], "application/scvp-cv-response": ["scs"], "application/scvp-vp-request": ["spq"], "application/scvp-vp-response": ["spp"], "application/sdp": ["sdp"], "application/senml+xml": ["senmlx"], "application/sensml+xml": ["sensmlx"], "application/set-payment-initiation": ["setpay"], "application/set-registration-initiation": ["setreg"], "application/shf+xml": ["shf"], "application/sieve": ["siv", "sieve"], "application/smil+xml": ["smi", "smil"], "application/sparql-query": ["rq"], "application/sparql-results+xml": ["srx"], "application/sql": ["sql"], "application/srgs": ["gram"], "application/srgs+xml": ["grxml"], "application/sru+xml": ["sru"], "application/ssdl+xml": ["ssdl"], "application/ssml+xml": ["ssml"], "application/swid+xml": ["swidtag"], "application/tei+xml": ["tei", "teicorpus"], "application/thraud+xml": ["tfi"], "application/timestamped-data": ["tsd"], "application/toml": ["toml"], "application/trig": ["trig"], "application/ttml+xml": ["ttml"], "application/ubjson": ["ubj"], "application/urc-ressheet+xml": ["rsheet"], "application/urc-targetdesc+xml": ["td"], "application/voicexml+xml": ["vxml"], "application/wasm": ["wasm"], "application/watcherinfo+xml": ["wif"], "application/widget": ["wgt"], "application/winhlp": ["hlp"], "application/wsdl+xml": ["wsdl"], "application/wspolicy+xml": ["wspolicy"], "application/xaml+xml": ["xaml"], "application/xcap-att+xml": ["xav"], "application/xcap-caps+xml": ["xca"], "application/xcap-diff+xml": ["xdf"], "application/xcap-el+xml": ["xel"], "application/xcap-ns+xml": ["xns"], "application/xenc+xml": ["xenc"], "application/xfdf": ["xfdf"], "application/xhtml+xml": ["xhtml", "xht"], "application/xliff+xml": ["xlf"], "application/xml": ["xml", "xsl", "xsd", "rng"], "application/xml-dtd": ["dtd"], "application/xop+xml": ["xop"], "application/xproc+xml": ["xpl"], "application/xslt+xml": ["*xsl", "xslt"], "application/xspf+xml": ["xspf"], "application/xv+xml": ["mxml", "xhvml", "xvml", "xvm"], "application/yang": ["yang"], "application/yin+xml": ["yin"], "application/zip": ["zip"], "audio/3gpp": ["*3gpp"], "audio/aac": ["adts", "aac"], "audio/adpcm": ["adp"], "audio/amr": ["amr"], "audio/basic": ["au", "snd"], "audio/midi": ["mid", "midi", "kar", "rmi"], "audio/mobile-xmf": ["mxmf"], "audio/mp3": ["*mp3"], "audio/mp4": ["m4a", "mp4a"], "audio/mpeg": ["mpga", "mp2", "mp2a", "mp3", "m2a", "m3a"], "audio/ogg": ["oga", "ogg", "spx", "opus"], "audio/s3m": ["s3m"], "audio/silk": ["sil"], "audio/wav": ["wav"], "audio/wave": ["*wav"], "audio/webm": ["weba"], "audio/xm": ["xm"], "font/collection": ["ttc"], "font/otf": ["otf"], "font/ttf": ["ttf"], "font/woff": ["woff"], "font/woff2": ["woff2"], "image/aces": ["exr"], "image/apng": ["apng"], "image/avci": ["avci"], "image/avcs": ["avcs"], "image/avif": ["avif"], "image/bmp": ["bmp", "dib"], "image/cgm": ["cgm"], "image/dicom-rle": ["drle"], "image/dpx": ["dpx"], "image/emf": ["emf"], "image/fits": ["fits"], "image/g3fax": ["g3"], "image/gif": ["gif"], "image/heic": ["heic"], "image/heic-sequence": ["heics"], "image/heif": ["heif"], "image/heif-sequence": ["heifs"], "image/hej2k": ["hej2"], "image/hsj2": ["hsj2"], "image/ief": ["ief"], "image/jls": ["jls"], "image/jp2": ["jp2", "jpg2"], "image/jpeg": ["jpeg", "jpg", "jpe"], "image/jph": ["jph"], "image/jphc": ["jhc"], "image/jpm": ["jpm", "jpgm"], "image/jpx": ["jpx", "jpf"], "image/jxr": ["jxr"], "image/jxra": ["jxra"], "image/jxrs": ["jxrs"], "image/jxs": ["jxs"], "image/jxsc": ["jxsc"], "image/jxsi": ["jxsi"], "image/jxss": ["jxss"], "image/ktx": ["ktx"], "image/ktx2": ["ktx2"], "image/png": ["png"], "image/sgi": ["sgi"], "image/svg+xml": ["svg", "svgz"], "image/t38": ["t38"], "image/tiff": ["tif", "tiff"], "image/tiff-fx": ["tfx"], "image/webp": ["webp"], "image/wmf": ["wmf"], "message/disposition-notification": ["disposition-notification"], "message/global": ["u8msg"], "message/global-delivery-status": ["u8dsn"], "message/global-disposition-notification": ["u8mdn"], "message/global-headers": ["u8hdr"], "message/rfc822": ["eml", "mime"], "model/3mf": ["3mf"], "model/gltf+json": ["gltf"], "model/gltf-binary": ["glb"], "model/iges": ["igs", "iges"], "model/jt": ["jt"], "model/mesh": ["msh", "mesh", "silo"], "model/mtl": ["mtl"], "model/obj": ["obj"], "model/prc": ["prc"], "model/step+xml": ["stpx"], "model/step+zip": ["stpz"], "model/step-xml+zip": ["stpxz"], "model/stl": ["stl"], "model/u3d": ["u3d"], "model/vrml": ["wrl", "vrml"], "model/x3d+binary": ["*x3db", "x3dbz"], "model/x3d+fastinfoset": ["x3db"], "model/x3d+vrml": ["*x3dv", "x3dvz"], "model/x3d+xml": ["x3d", "x3dz"], "model/x3d-vrml": ["x3dv"], "text/cache-manifest": ["appcache", "manifest"], "text/calendar": ["ics", "ifb"], "text/coffeescript": ["coffee", "litcoffee"], "text/css": ["css"], "text/csv": ["csv"], "text/html": ["html", "htm", "shtml"], "text/jade": ["jade"], "text/javascript": ["js", "mjs"], "text/jsx": ["jsx"], "text/less": ["less"], "text/markdown": ["md", "markdown"], "text/mathml": ["mml"], "text/mdx": ["mdx"], "text/n3": ["n3"], "text/plain": ["txt", "text", "conf", "def", "list", "log", "in", "ini"], "text/richtext": ["rtx"], "text/rtf": ["*rtf"], "text/sgml": ["sgml", "sgm"], "text/shex": ["shex"], "text/slim": ["slim", "slm"], "text/spdx": ["spdx"], "text/stylus": ["stylus", "styl"], "text/tab-separated-values": ["tsv"], "text/troff": ["t", "tr", "roff", "man", "me", "ms"], "text/turtle": ["ttl"], "text/uri-list": ["uri", "uris", "urls"], "text/vcard": ["vcard"], "text/vtt": ["vtt"], "text/wgsl": ["wgsl"], "text/xml": ["*xml"], "text/yaml": ["yaml", "yml"], "video/3gpp": ["3gp", "3gpp"], "video/3gpp2": ["3g2"], "video/h261": ["h261"], "video/h263": ["h263"], "video/h264": ["h264"], "video/iso.segment": ["m4s"], "video/jpeg": ["jpgv"], "video/jpm": ["*jpm", "*jpgm"], "video/mj2": ["mj2", "mjp2"], "video/mp2t": ["ts"], "video/mp4": ["mp4", "mp4v", "mpg4"], "video/mpeg": ["mpeg", "mpg", "mpe", "m1v", "m2v"], "video/ogg": ["ogv"], "video/quicktime": ["qt", "mov"], "video/webm": ["webm"] };
655
+ Object.freeze(be);
656
+ var et = function(i, r, o, p) {
657
+ if (o === "a" && !p)
658
+ throw new TypeError("Private accessor was defined without a getter");
659
+ if (typeof r == "function" ? i !== r || !p : !r.has(i))
660
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
661
+ return o === "m" ? p : o === "a" ? p.call(i) : p ? p.value : r.get(i);
662
+ }, mt, gt, lt;
663
+ class ci {
664
+ constructor(...r) {
665
+ mt.set(this, /* @__PURE__ */ new Map()), gt.set(this, /* @__PURE__ */ new Map()), lt.set(this, /* @__PURE__ */ new Map());
666
+ for (const o of r)
667
+ this.define(o);
668
+ }
669
+ define(r, o = !1) {
670
+ for (let [p, u] of Object.entries(r)) {
671
+ p = p.toLowerCase(), u = u.map((s) => s.toLowerCase()), et(this, lt, "f").has(p) || et(this, lt, "f").set(p, /* @__PURE__ */ new Set());
672
+ const f = et(this, lt, "f").get(p);
673
+ let c = !0;
674
+ for (let s of u) {
675
+ const h = s.startsWith("*");
676
+ if (s = h ? s.slice(1) : s, f == null || f.add(s), c && et(this, gt, "f").set(p, s), c = !1, h)
677
+ continue;
678
+ const g = et(this, mt, "f").get(s);
679
+ if (g && g != p && !o)
680
+ throw new Error(`"${p} -> ${s}" conflicts with "${g} -> ${s}". Pass \`force=true\` to override this definition.`);
681
+ et(this, mt, "f").set(s, p);
682
+ }
683
+ }
684
+ return this;
685
+ }
686
+ getType(r) {
687
+ if (typeof r != "string")
688
+ return null;
689
+ const o = r.replace(/^.*[/\\]/, "").toLowerCase(), p = o.replace(/^.*\./, "").toLowerCase(), u = o.length < r.length;
690
+ return !(p.length < o.length - 1) && u ? null : et(this, mt, "f").get(p) ?? null;
691
+ }
692
+ getExtension(r) {
693
+ var o;
694
+ return typeof r != "string" ? null : (r = (o = r == null ? void 0 : r.split) == null ? void 0 : o.call(r, ";")[0], (r && et(this, gt, "f").get(r.trim().toLowerCase())) ?? null);
695
+ }
696
+ getAllExtensions(r) {
697
+ return typeof r != "string" ? null : et(this, lt, "f").get(r.toLowerCase()) ?? null;
698
+ }
699
+ _freeze() {
700
+ this.define = () => {
701
+ throw new Error("define() not allowed for built-in Mime objects. See https://github.com/broofa/mime/blob/main/README.md#custom-mime-instances");
702
+ }, Object.freeze(this);
703
+ for (const r of et(this, lt, "f").values())
704
+ Object.freeze(r);
705
+ return this;
706
+ }
707
+ _getTestState() {
708
+ return {
709
+ types: et(this, mt, "f"),
710
+ extensions: et(this, gt, "f")
711
+ };
712
+ }
713
+ }
714
+ mt = /* @__PURE__ */ new WeakMap(), gt = /* @__PURE__ */ new WeakMap(), lt = /* @__PURE__ */ new WeakMap();
715
+ const li = new ci(be)._freeze();
716
+ var Mt = { exports: {} };
717
+ typeof Object.create == "function" ? Mt.exports = function(r, o) {
718
+ o && (r.super_ = o, r.prototype = Object.create(o.prototype, {
719
+ constructor: {
720
+ value: r,
721
+ enumerable: !1,
722
+ writable: !0,
723
+ configurable: !0
724
+ }
725
+ }));
726
+ } : Mt.exports = function(r, o) {
727
+ if (o) {
728
+ r.super_ = o;
729
+ var p = function() {
730
+ };
731
+ p.prototype = o.prototype, r.prototype = new p(), r.prototype.constructor = r;
732
+ }
733
+ };
734
+ var ve = Mt.exports, Rt = { exports: {} }, Se = {}, jt = {};
735
+ jt.byteLength = hi;
736
+ jt.toByteArray = xi;
737
+ jt.fromByteArray = yi;
738
+ var nt = [], it = [], ui = typeof Uint8Array < "u" ? Uint8Array : Array, Ut = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
739
+ for (var ht = 0, fi = Ut.length; ht < fi; ++ht)
740
+ nt[ht] = Ut[ht], it[Ut.charCodeAt(ht)] = ht;
741
+ it[45] = 62;
742
+ it[95] = 63;
743
+ function _e(i) {
744
+ var r = i.length;
745
+ if (r % 4 > 0)
746
+ throw new Error("Invalid string. Length must be a multiple of 4");
747
+ var o = i.indexOf("=");
748
+ o === -1 && (o = r);
749
+ var p = o === r ? 0 : 4 - o % 4;
750
+ return [o, p];
751
+ }
752
+ function hi(i) {
753
+ var r = _e(i), o = r[0], p = r[1];
754
+ return (o + p) * 3 / 4 - p;
755
+ }
756
+ function mi(i, r, o) {
757
+ return (r + o) * 3 / 4 - o;
758
+ }
759
+ function xi(i) {
760
+ var r, o = _e(i), p = o[0], u = o[1], f = new ui(mi(i, p, u)), c = 0, s = u > 0 ? p - 4 : p, h;
761
+ for (h = 0; h < s; h += 4)
762
+ r = it[i.charCodeAt(h)] << 18 | it[i.charCodeAt(h + 1)] << 12 | it[i.charCodeAt(h + 2)] << 6 | it[i.charCodeAt(h + 3)], f[c++] = r >> 16 & 255, f[c++] = r >> 8 & 255, f[c++] = r & 255;
763
+ return u === 2 && (r = it[i.charCodeAt(h)] << 2 | it[i.charCodeAt(h + 1)] >> 4, f[c++] = r & 255), u === 1 && (r = it[i.charCodeAt(h)] << 10 | it[i.charCodeAt(h + 1)] << 4 | it[i.charCodeAt(h + 2)] >> 2, f[c++] = r >> 8 & 255, f[c++] = r & 255), f;
764
+ }
765
+ function di(i) {
766
+ return nt[i >> 18 & 63] + nt[i >> 12 & 63] + nt[i >> 6 & 63] + nt[i & 63];
767
+ }
768
+ function gi(i, r, o) {
769
+ for (var p, u = [], f = r; f < o; f += 3)
770
+ p = (i[f] << 16 & 16711680) + (i[f + 1] << 8 & 65280) + (i[f + 2] & 255), u.push(di(p));
771
+ return u.join("");
772
+ }
773
+ function yi(i) {
774
+ for (var r, o = i.length, p = o % 3, u = [], f = 16383, c = 0, s = o - p; c < s; c += f)
775
+ u.push(gi(i, c, c + f > s ? s : c + f));
776
+ return p === 1 ? (r = i[o - 1], u.push(
777
+ nt[r >> 2] + nt[r << 4 & 63] + "=="
778
+ )) : p === 2 && (r = (i[o - 2] << 8) + i[o - 1], u.push(
779
+ nt[r >> 10] + nt[r >> 4 & 63] + nt[r << 2 & 63] + "="
780
+ )), u.join("");
781
+ }
782
+ var Vt = {};
783
+ /*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */
784
+ Vt.read = function(i, r, o, p, u) {
785
+ var f, c, s = u * 8 - p - 1, h = (1 << s) - 1, g = h >> 1, y = -7, b = o ? u - 1 : 0, F = o ? -1 : 1, j = i[r + b];
786
+ for (b += F, f = j & (1 << -y) - 1, j >>= -y, y += s; y > 0; f = f * 256 + i[r + b], b += F, y -= 8)
787
+ ;
788
+ for (c = f & (1 << -y) - 1, f >>= -y, y += p; y > 0; c = c * 256 + i[r + b], b += F, y -= 8)
789
+ ;
790
+ if (f === 0)
791
+ f = 1 - g;
792
+ else {
793
+ if (f === h)
794
+ return c ? NaN : (j ? -1 : 1) * (1 / 0);
795
+ c = c + Math.pow(2, p), f = f - g;
796
+ }
797
+ return (j ? -1 : 1) * c * Math.pow(2, f - p);
798
+ };
799
+ Vt.write = function(i, r, o, p, u, f) {
800
+ var c, s, h, g = f * 8 - u - 1, y = (1 << g) - 1, b = y >> 1, F = u === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0, j = p ? 0 : f - 1, $ = p ? 1 : -1, q = r < 0 || r === 0 && 1 / r < 0 ? 1 : 0;
801
+ for (r = Math.abs(r), isNaN(r) || r === 1 / 0 ? (s = isNaN(r) ? 1 : 0, c = y) : (c = Math.floor(Math.log(r) / Math.LN2), r * (h = Math.pow(2, -c)) < 1 && (c--, h *= 2), c + b >= 1 ? r += F / h : r += F * Math.pow(2, 1 - b), r * h >= 2 && (c++, h /= 2), c + b >= y ? (s = 0, c = y) : c + b >= 1 ? (s = (r * h - 1) * Math.pow(2, u), c = c + b) : (s = r * Math.pow(2, b - 1) * Math.pow(2, u), c = 0)); u >= 8; i[o + j] = s & 255, j += $, s /= 256, u -= 8)
802
+ ;
803
+ for (c = c << u | s, g += u; g > 0; i[o + j] = c & 255, j += $, c /= 256, g -= 8)
804
+ ;
805
+ i[o + j - $] |= q * 128;
806
+ };
807
+ /*!
808
+ * The buffer module from node.js, for the browser.
809
+ *
810
+ * @author Feross Aboukhadijeh <https://feross.org>
811
+ * @license MIT
812
+ */
813
+ (function(i) {
814
+ var r = jt, o = Vt, p = typeof Symbol == "function" && typeof Symbol.for == "function" ? Symbol.for("nodejs.util.inspect.custom") : null;
815
+ i.Buffer = s, i.SlowBuffer = E, i.INSPECT_MAX_BYTES = 50;
816
+ var u = 2147483647;
817
+ i.kMaxLength = u, s.TYPED_ARRAY_SUPPORT = f(), !s.TYPED_ARRAY_SUPPORT && typeof console < "u" && typeof console.error == "function" && console.error(
818
+ "This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."
819
+ );
820
+ function f() {
821
+ try {
822
+ var n = new Uint8Array(1), t = { foo: function() {
823
+ return 42;
824
+ } };
825
+ return Object.setPrototypeOf(t, Uint8Array.prototype), Object.setPrototypeOf(n, t), n.foo() === 42;
826
+ } catch {
827
+ return !1;
828
+ }
829
+ }
830
+ Object.defineProperty(s.prototype, "parent", {
831
+ enumerable: !0,
832
+ get: function() {
833
+ if (s.isBuffer(this))
834
+ return this.buffer;
835
+ }
836
+ }), Object.defineProperty(s.prototype, "offset", {
837
+ enumerable: !0,
838
+ get: function() {
839
+ if (s.isBuffer(this))
840
+ return this.byteOffset;
841
+ }
842
+ });
843
+ function c(n) {
844
+ if (n > u)
845
+ throw new RangeError('The value "' + n + '" is invalid for option "size"');
846
+ var t = new Uint8Array(n);
847
+ return Object.setPrototypeOf(t, s.prototype), t;
848
+ }
849
+ function s(n, t, e) {
850
+ if (typeof n == "number") {
851
+ if (typeof t == "string")
852
+ throw new TypeError(
853
+ 'The "string" argument must be of type string. Received type number'
854
+ );
855
+ return b(n);
856
+ }
857
+ return h(n, t, e);
858
+ }
859
+ s.poolSize = 8192;
860
+ function h(n, t, e) {
861
+ if (typeof n == "string")
862
+ return F(n, t);
863
+ if (ArrayBuffer.isView(n))
864
+ return $(n);
865
+ if (n == null)
866
+ throw new TypeError(
867
+ "The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof n
868
+ );
869
+ if (rt(n, ArrayBuffer) || n && rt(n.buffer, ArrayBuffer) || typeof SharedArrayBuffer < "u" && (rt(n, SharedArrayBuffer) || n && rt(n.buffer, SharedArrayBuffer)))
870
+ return q(n, t, e);
871
+ if (typeof n == "number")
872
+ throw new TypeError(
873
+ 'The "value" argument must not be of type number. Received type number'
874
+ );
875
+ var a = n.valueOf && n.valueOf();
876
+ if (a != null && a !== n)
877
+ return s.from(a, t, e);
878
+ var l = Z(n);
879
+ if (l)
880
+ return l;
881
+ if (typeof Symbol < "u" && Symbol.toPrimitive != null && typeof n[Symbol.toPrimitive] == "function")
882
+ return s.from(
883
+ n[Symbol.toPrimitive]("string"),
884
+ t,
885
+ e
886
+ );
887
+ throw new TypeError(
888
+ "The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof n
889
+ );
890
+ }
891
+ s.from = function(n, t, e) {
892
+ return h(n, t, e);
893
+ }, Object.setPrototypeOf(s.prototype, Uint8Array.prototype), Object.setPrototypeOf(s, Uint8Array);
894
+ function g(n) {
895
+ if (typeof n != "number")
896
+ throw new TypeError('"size" argument must be of type number');
897
+ if (n < 0)
898
+ throw new RangeError('The value "' + n + '" is invalid for option "size"');
899
+ }
900
+ function y(n, t, e) {
901
+ return g(n), n <= 0 ? c(n) : t !== void 0 ? typeof e == "string" ? c(n).fill(t, e) : c(n).fill(t) : c(n);
902
+ }
903
+ s.alloc = function(n, t, e) {
904
+ return y(n, t, e);
905
+ };
906
+ function b(n) {
907
+ return g(n), c(n < 0 ? 0 : w(n) | 0);
908
+ }
909
+ s.allocUnsafe = function(n) {
910
+ return b(n);
911
+ }, s.allocUnsafeSlow = function(n) {
912
+ return b(n);
913
+ };
914
+ function F(n, t) {
915
+ if ((typeof t != "string" || t === "") && (t = "utf8"), !s.isEncoding(t))
916
+ throw new TypeError("Unknown encoding: " + t);
917
+ var e = v(n, t) | 0, a = c(e), l = a.write(n, t);
918
+ return l !== e && (a = a.slice(0, l)), a;
919
+ }
920
+ function j(n) {
921
+ for (var t = n.length < 0 ? 0 : w(n.length) | 0, e = c(t), a = 0; a < t; a += 1)
922
+ e[a] = n[a] & 255;
923
+ return e;
924
+ }
925
+ function $(n) {
926
+ if (rt(n, Uint8Array)) {
927
+ var t = new Uint8Array(n);
928
+ return q(t.buffer, t.byteOffset, t.byteLength);
929
+ }
930
+ return j(n);
931
+ }
932
+ function q(n, t, e) {
933
+ if (t < 0 || n.byteLength < t)
934
+ throw new RangeError('"offset" is outside of buffer bounds');
935
+ if (n.byteLength < t + (e || 0))
936
+ throw new RangeError('"length" is outside of buffer bounds');
937
+ var a;
938
+ return t === void 0 && e === void 0 ? a = new Uint8Array(n) : e === void 0 ? a = new Uint8Array(n, t) : a = new Uint8Array(n, t, e), Object.setPrototypeOf(a, s.prototype), a;
939
+ }
940
+ function Z(n) {
941
+ if (s.isBuffer(n)) {
942
+ var t = w(n.length) | 0, e = c(t);
943
+ return e.length === 0 || n.copy(e, 0, 0, t), e;
944
+ }
945
+ if (n.length !== void 0)
946
+ return typeof n.length != "number" || Ct(n.length) ? c(0) : j(n);
947
+ if (n.type === "Buffer" && Array.isArray(n.data))
948
+ return j(n.data);
949
+ }
950
+ function w(n) {
951
+ if (n >= u)
952
+ throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x" + u.toString(16) + " bytes");
953
+ return n | 0;
954
+ }
955
+ function E(n) {
956
+ return +n != n && (n = 0), s.alloc(+n);
957
+ }
958
+ s.isBuffer = function(t) {
959
+ return t != null && t._isBuffer === !0 && t !== s.prototype;
960
+ }, s.compare = function(t, e) {
961
+ if (rt(t, Uint8Array) && (t = s.from(t, t.offset, t.byteLength)), rt(e, Uint8Array) && (e = s.from(e, e.offset, e.byteLength)), !s.isBuffer(t) || !s.isBuffer(e))
962
+ throw new TypeError(
963
+ 'The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array'
964
+ );
965
+ if (t === e)
966
+ return 0;
967
+ for (var a = t.length, l = e.length, x = 0, d = Math.min(a, l); x < d; ++x)
968
+ if (t[x] !== e[x]) {
969
+ a = t[x], l = e[x];
970
+ break;
971
+ }
972
+ return a < l ? -1 : l < a ? 1 : 0;
973
+ }, s.isEncoding = function(t) {
974
+ switch (String(t).toLowerCase()) {
975
+ case "hex":
976
+ case "utf8":
977
+ case "utf-8":
978
+ case "ascii":
979
+ case "latin1":
980
+ case "binary":
981
+ case "base64":
982
+ case "ucs2":
983
+ case "ucs-2":
984
+ case "utf16le":
985
+ case "utf-16le":
986
+ return !0;
987
+ default:
988
+ return !1;
989
+ }
990
+ }, s.concat = function(t, e) {
991
+ if (!Array.isArray(t))
992
+ throw new TypeError('"list" argument must be an Array of Buffers');
993
+ if (t.length === 0)
994
+ return s.alloc(0);
995
+ var a;
996
+ if (e === void 0)
997
+ for (e = 0, a = 0; a < t.length; ++a)
998
+ e += t[a].length;
999
+ var l = s.allocUnsafe(e), x = 0;
1000
+ for (a = 0; a < t.length; ++a) {
1001
+ var d = t[a];
1002
+ if (rt(d, Uint8Array))
1003
+ x + d.length > l.length ? s.from(d).copy(l, x) : Uint8Array.prototype.set.call(
1004
+ l,
1005
+ d,
1006
+ x
1007
+ );
1008
+ else if (s.isBuffer(d))
1009
+ d.copy(l, x);
1010
+ else
1011
+ throw new TypeError('"list" argument must be an Array of Buffers');
1012
+ x += d.length;
1013
+ }
1014
+ return l;
1015
+ };
1016
+ function v(n, t) {
1017
+ if (s.isBuffer(n))
1018
+ return n.length;
1019
+ if (ArrayBuffer.isView(n) || rt(n, ArrayBuffer))
1020
+ return n.byteLength;
1021
+ if (typeof n != "string")
1022
+ throw new TypeError(
1023
+ 'The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type ' + typeof n
1024
+ );
1025
+ var e = n.length, a = arguments.length > 2 && arguments[2] === !0;
1026
+ if (!a && e === 0)
1027
+ return 0;
1028
+ for (var l = !1; ; )
1029
+ switch (t) {
1030
+ case "ascii":
1031
+ case "latin1":
1032
+ case "binary":
1033
+ return e;
1034
+ case "utf8":
1035
+ case "utf-8":
1036
+ return V(n).length;
1037
+ case "ucs2":
1038
+ case "ucs-2":
1039
+ case "utf16le":
1040
+ case "utf-16le":
1041
+ return e * 2;
1042
+ case "hex":
1043
+ return e >>> 1;
1044
+ case "base64":
1045
+ return ct(n).length;
1046
+ default:
1047
+ if (l)
1048
+ return a ? -1 : V(n).length;
1049
+ t = ("" + t).toLowerCase(), l = !0;
1050
+ }
1051
+ }
1052
+ s.byteLength = v;
1053
+ function R(n, t, e) {
1054
+ var a = !1;
1055
+ if ((t === void 0 || t < 0) && (t = 0), t > this.length || ((e === void 0 || e > this.length) && (e = this.length), e <= 0) || (e >>>= 0, t >>>= 0, e <= t))
1056
+ return "";
1057
+ for (n || (n = "utf8"); ; )
1058
+ switch (n) {
1059
+ case "hex":
1060
+ return A(this, t, e);
1061
+ case "utf8":
1062
+ case "utf-8":
1063
+ return m(this, t, e);
1064
+ case "ascii":
1065
+ return O(this, t, e);
1066
+ case "latin1":
1067
+ case "binary":
1068
+ return C(this, t, e);
1069
+ case "base64":
1070
+ return X(this, t, e);
1071
+ case "ucs2":
1072
+ case "ucs-2":
1073
+ case "utf16le":
1074
+ case "utf-16le":
1075
+ return k(this, t, e);
1076
+ default:
1077
+ if (a)
1078
+ throw new TypeError("Unknown encoding: " + n);
1079
+ n = (n + "").toLowerCase(), a = !0;
1080
+ }
1081
+ }
1082
+ s.prototype._isBuffer = !0;
1083
+ function H(n, t, e) {
1084
+ var a = n[t];
1085
+ n[t] = n[e], n[e] = a;
1086
+ }
1087
+ s.prototype.swap16 = function() {
1088
+ var t = this.length;
1089
+ if (t % 2 !== 0)
1090
+ throw new RangeError("Buffer size must be a multiple of 16-bits");
1091
+ for (var e = 0; e < t; e += 2)
1092
+ H(this, e, e + 1);
1093
+ return this;
1094
+ }, s.prototype.swap32 = function() {
1095
+ var t = this.length;
1096
+ if (t % 4 !== 0)
1097
+ throw new RangeError("Buffer size must be a multiple of 32-bits");
1098
+ for (var e = 0; e < t; e += 4)
1099
+ H(this, e, e + 3), H(this, e + 1, e + 2);
1100
+ return this;
1101
+ }, s.prototype.swap64 = function() {
1102
+ var t = this.length;
1103
+ if (t % 8 !== 0)
1104
+ throw new RangeError("Buffer size must be a multiple of 64-bits");
1105
+ for (var e = 0; e < t; e += 8)
1106
+ H(this, e, e + 7), H(this, e + 1, e + 6), H(this, e + 2, e + 5), H(this, e + 3, e + 4);
1107
+ return this;
1108
+ }, s.prototype.toString = function() {
1109
+ var t = this.length;
1110
+ return t === 0 ? "" : arguments.length === 0 ? m(this, 0, t) : R.apply(this, arguments);
1111
+ }, s.prototype.toLocaleString = s.prototype.toString, s.prototype.equals = function(t) {
1112
+ if (!s.isBuffer(t))
1113
+ throw new TypeError("Argument must be a Buffer");
1114
+ return this === t ? !0 : s.compare(this, t) === 0;
1115
+ }, s.prototype.inspect = function() {
1116
+ var t = "", e = i.INSPECT_MAX_BYTES;
1117
+ return t = this.toString("hex", 0, e).replace(/(.{2})/g, "$1 ").trim(), this.length > e && (t += " ... "), "<Buffer " + t + ">";
1118
+ }, p && (s.prototype[p] = s.prototype.inspect), s.prototype.compare = function(t, e, a, l, x) {
1119
+ if (rt(t, Uint8Array) && (t = s.from(t, t.offset, t.byteLength)), !s.isBuffer(t))
1120
+ throw new TypeError(
1121
+ 'The "target" argument must be one of type Buffer or Uint8Array. Received type ' + typeof t
1122
+ );
1123
+ if (e === void 0 && (e = 0), a === void 0 && (a = t ? t.length : 0), l === void 0 && (l = 0), x === void 0 && (x = this.length), e < 0 || a > t.length || l < 0 || x > this.length)
1124
+ throw new RangeError("out of range index");
1125
+ if (l >= x && e >= a)
1126
+ return 0;
1127
+ if (l >= x)
1128
+ return -1;
1129
+ if (e >= a)
1130
+ return 1;
1131
+ if (e >>>= 0, a >>>= 0, l >>>= 0, x >>>= 0, this === t)
1132
+ return 0;
1133
+ for (var d = x - l, D = a - e, N = Math.min(d, D), P = this.slice(l, x), G = t.slice(e, a), z = 0; z < N; ++z)
1134
+ if (P[z] !== G[z]) {
1135
+ d = P[z], D = G[z];
1136
+ break;
1137
+ }
1138
+ return d < D ? -1 : D < d ? 1 : 0;
1139
+ };
1140
+ function W(n, t, e, a, l) {
1141
+ if (n.length === 0)
1142
+ return -1;
1143
+ if (typeof e == "string" ? (a = e, e = 0) : e > 2147483647 ? e = 2147483647 : e < -2147483648 && (e = -2147483648), e = +e, Ct(e) && (e = l ? 0 : n.length - 1), e < 0 && (e = n.length + e), e >= n.length) {
1144
+ if (l)
1145
+ return -1;
1146
+ e = n.length - 1;
1147
+ } else if (e < 0)
1148
+ if (l)
1149
+ e = 0;
1150
+ else
1151
+ return -1;
1152
+ if (typeof t == "string" && (t = s.from(t, a)), s.isBuffer(t))
1153
+ return t.length === 0 ? -1 : M(n, t, e, a, l);
1154
+ if (typeof t == "number")
1155
+ return t = t & 255, typeof Uint8Array.prototype.indexOf == "function" ? l ? Uint8Array.prototype.indexOf.call(n, t, e) : Uint8Array.prototype.lastIndexOf.call(n, t, e) : M(n, [t], e, a, l);
1156
+ throw new TypeError("val must be string, number or Buffer");
1157
+ }
1158
+ function M(n, t, e, a, l) {
1159
+ var x = 1, d = n.length, D = t.length;
1160
+ if (a !== void 0 && (a = String(a).toLowerCase(), a === "ucs2" || a === "ucs-2" || a === "utf16le" || a === "utf-16le")) {
1161
+ if (n.length < 2 || t.length < 2)
1162
+ return -1;
1163
+ x = 2, d /= 2, D /= 2, e /= 2;
1164
+ }
1165
+ function N(ee, ie) {
1166
+ return x === 1 ? ee[ie] : ee.readUInt16BE(ie * x);
1167
+ }
1168
+ var P;
1169
+ if (l) {
1170
+ var G = -1;
1171
+ for (P = e; P < d; P++)
1172
+ if (N(n, P) === N(t, G === -1 ? 0 : P - G)) {
1173
+ if (G === -1 && (G = P), P - G + 1 === D)
1174
+ return G * x;
1175
+ } else
1176
+ G !== -1 && (P -= P - G), G = -1;
1177
+ } else
1178
+ for (e + D > d && (e = d - D), P = e; P >= 0; P--) {
1179
+ for (var z = !0, _t = 0; _t < D; _t++)
1180
+ if (N(n, P + _t) !== N(t, _t)) {
1181
+ z = !1;
1182
+ break;
1183
+ }
1184
+ if (z)
1185
+ return P;
1186
+ }
1187
+ return -1;
1188
+ }
1189
+ s.prototype.includes = function(t, e, a) {
1190
+ return this.indexOf(t, e, a) !== -1;
1191
+ }, s.prototype.indexOf = function(t, e, a) {
1192
+ return W(this, t, e, a, !0);
1193
+ }, s.prototype.lastIndexOf = function(t, e, a) {
1194
+ return W(this, t, e, a, !1);
1195
+ };
1196
+ function ut(n, t, e, a) {
1197
+ e = Number(e) || 0;
1198
+ var l = n.length - e;
1199
+ a ? (a = Number(a), a > l && (a = l)) : a = l;
1200
+ var x = t.length;
1201
+ a > x / 2 && (a = x / 2);
1202
+ for (var d = 0; d < a; ++d) {
1203
+ var D = parseInt(t.substr(d * 2, 2), 16);
1204
+ if (Ct(D))
1205
+ return d;
1206
+ n[e + d] = D;
1207
+ }
1208
+ return d;
1209
+ }
1210
+ function ft(n, t, e, a) {
1211
+ return St(V(t, n.length - e), n, e, a);
1212
+ }
1213
+ function st(n, t, e, a) {
1214
+ return St(Q(t), n, e, a);
1215
+ }
1216
+ function pt(n, t, e, a) {
1217
+ return St(ct(t), n, e, a);
1218
+ }
1219
+ function Dt(n, t, e, a) {
1220
+ return St(tt(t, n.length - e), n, e, a);
1221
+ }
1222
+ s.prototype.write = function(t, e, a, l) {
1223
+ if (e === void 0)
1224
+ l = "utf8", a = this.length, e = 0;
1225
+ else if (a === void 0 && typeof e == "string")
1226
+ l = e, a = this.length, e = 0;
1227
+ else if (isFinite(e))
1228
+ e = e >>> 0, isFinite(a) ? (a = a >>> 0, l === void 0 && (l = "utf8")) : (l = a, a = void 0);
1229
+ else
1230
+ throw new Error(
1231
+ "Buffer.write(string, encoding, offset[, length]) is no longer supported"
1232
+ );
1233
+ var x = this.length - e;
1234
+ if ((a === void 0 || a > x) && (a = x), t.length > 0 && (a < 0 || e < 0) || e > this.length)
1235
+ throw new RangeError("Attempt to write outside buffer bounds");
1236
+ l || (l = "utf8");
1237
+ for (var d = !1; ; )
1238
+ switch (l) {
1239
+ case "hex":
1240
+ return ut(this, t, e, a);
1241
+ case "utf8":
1242
+ case "utf-8":
1243
+ return ft(this, t, e, a);
1244
+ case "ascii":
1245
+ case "latin1":
1246
+ case "binary":
1247
+ return st(this, t, e, a);
1248
+ case "base64":
1249
+ return pt(this, t, e, a);
1250
+ case "ucs2":
1251
+ case "ucs-2":
1252
+ case "utf16le":
1253
+ case "utf-16le":
1254
+ return Dt(this, t, e, a);
1255
+ default:
1256
+ if (d)
1257
+ throw new TypeError("Unknown encoding: " + l);
1258
+ l = ("" + l).toLowerCase(), d = !0;
1259
+ }
1260
+ }, s.prototype.toJSON = function() {
1261
+ return {
1262
+ type: "Buffer",
1263
+ data: Array.prototype.slice.call(this._arr || this, 0)
1264
+ };
1265
+ };
1266
+ function X(n, t, e) {
1267
+ return t === 0 && e === n.length ? r.fromByteArray(n) : r.fromByteArray(n.slice(t, e));
1268
+ }
1269
+ function m(n, t, e) {
1270
+ e = Math.min(n.length, e);
1271
+ for (var a = [], l = t; l < e; ) {
1272
+ var x = n[l], d = null, D = x > 239 ? 4 : x > 223 ? 3 : x > 191 ? 2 : 1;
1273
+ if (l + D <= e) {
1274
+ var N, P, G, z;
1275
+ switch (D) {
1276
+ case 1:
1277
+ x < 128 && (d = x);
1278
+ break;
1279
+ case 2:
1280
+ N = n[l + 1], (N & 192) === 128 && (z = (x & 31) << 6 | N & 63, z > 127 && (d = z));
1281
+ break;
1282
+ case 3:
1283
+ N = n[l + 1], P = n[l + 2], (N & 192) === 128 && (P & 192) === 128 && (z = (x & 15) << 12 | (N & 63) << 6 | P & 63, z > 2047 && (z < 55296 || z > 57343) && (d = z));
1284
+ break;
1285
+ case 4:
1286
+ N = n[l + 1], P = n[l + 2], G = n[l + 3], (N & 192) === 128 && (P & 192) === 128 && (G & 192) === 128 && (z = (x & 15) << 18 | (N & 63) << 12 | (P & 63) << 6 | G & 63, z > 65535 && z < 1114112 && (d = z));
1287
+ }
1288
+ }
1289
+ d === null ? (d = 65533, D = 1) : d > 65535 && (d -= 65536, a.push(d >>> 10 & 1023 | 55296), d = 56320 | d & 1023), a.push(d), l += D;
1290
+ }
1291
+ return T(a);
1292
+ }
1293
+ var S = 4096;
1294
+ function T(n) {
1295
+ var t = n.length;
1296
+ if (t <= S)
1297
+ return String.fromCharCode.apply(String, n);
1298
+ for (var e = "", a = 0; a < t; )
1299
+ e += String.fromCharCode.apply(
1300
+ String,
1301
+ n.slice(a, a += S)
1302
+ );
1303
+ return e;
1304
+ }
1305
+ function O(n, t, e) {
1306
+ var a = "";
1307
+ e = Math.min(n.length, e);
1308
+ for (var l = t; l < e; ++l)
1309
+ a += String.fromCharCode(n[l] & 127);
1310
+ return a;
1311
+ }
1312
+ function C(n, t, e) {
1313
+ var a = "";
1314
+ e = Math.min(n.length, e);
1315
+ for (var l = t; l < e; ++l)
1316
+ a += String.fromCharCode(n[l]);
1317
+ return a;
1318
+ }
1319
+ function A(n, t, e) {
1320
+ var a = n.length;
1321
+ (!t || t < 0) && (t = 0), (!e || e < 0 || e > a) && (e = a);
1322
+ for (var l = "", x = t; x < e; ++x)
1323
+ l += We[n[x]];
1324
+ return l;
1325
+ }
1326
+ function k(n, t, e) {
1327
+ for (var a = n.slice(t, e), l = "", x = 0; x < a.length - 1; x += 2)
1328
+ l += String.fromCharCode(a[x] + a[x + 1] * 256);
1329
+ return l;
1330
+ }
1331
+ s.prototype.slice = function(t, e) {
1332
+ var a = this.length;
1333
+ t = ~~t, e = e === void 0 ? a : ~~e, t < 0 ? (t += a, t < 0 && (t = 0)) : t > a && (t = a), e < 0 ? (e += a, e < 0 && (e = 0)) : e > a && (e = a), e < t && (e = t);
1334
+ var l = this.subarray(t, e);
1335
+ return Object.setPrototypeOf(l, s.prototype), l;
1336
+ };
1337
+ function B(n, t, e) {
1338
+ if (n % 1 !== 0 || n < 0)
1339
+ throw new RangeError("offset is not uint");
1340
+ if (n + t > e)
1341
+ throw new RangeError("Trying to access beyond buffer length");
1342
+ }
1343
+ s.prototype.readUintLE = s.prototype.readUIntLE = function(t, e, a) {
1344
+ t = t >>> 0, e = e >>> 0, a || B(t, e, this.length);
1345
+ for (var l = this[t], x = 1, d = 0; ++d < e && (x *= 256); )
1346
+ l += this[t + d] * x;
1347
+ return l;
1348
+ }, s.prototype.readUintBE = s.prototype.readUIntBE = function(t, e, a) {
1349
+ t = t >>> 0, e = e >>> 0, a || B(t, e, this.length);
1350
+ for (var l = this[t + --e], x = 1; e > 0 && (x *= 256); )
1351
+ l += this[t + --e] * x;
1352
+ return l;
1353
+ }, s.prototype.readUint8 = s.prototype.readUInt8 = function(t, e) {
1354
+ return t = t >>> 0, e || B(t, 1, this.length), this[t];
1355
+ }, s.prototype.readUint16LE = s.prototype.readUInt16LE = function(t, e) {
1356
+ return t = t >>> 0, e || B(t, 2, this.length), this[t] | this[t + 1] << 8;
1357
+ }, s.prototype.readUint16BE = s.prototype.readUInt16BE = function(t, e) {
1358
+ return t = t >>> 0, e || B(t, 2, this.length), this[t] << 8 | this[t + 1];
1359
+ }, s.prototype.readUint32LE = s.prototype.readUInt32LE = function(t, e) {
1360
+ return t = t >>> 0, e || B(t, 4, this.length), (this[t] | this[t + 1] << 8 | this[t + 2] << 16) + this[t + 3] * 16777216;
1361
+ }, s.prototype.readUint32BE = s.prototype.readUInt32BE = function(t, e) {
1362
+ return t = t >>> 0, e || B(t, 4, this.length), this[t] * 16777216 + (this[t + 1] << 16 | this[t + 2] << 8 | this[t + 3]);
1363
+ }, s.prototype.readIntLE = function(t, e, a) {
1364
+ t = t >>> 0, e = e >>> 0, a || B(t, e, this.length);
1365
+ for (var l = this[t], x = 1, d = 0; ++d < e && (x *= 256); )
1366
+ l += this[t + d] * x;
1367
+ return x *= 128, l >= x && (l -= Math.pow(2, 8 * e)), l;
1368
+ }, s.prototype.readIntBE = function(t, e, a) {
1369
+ t = t >>> 0, e = e >>> 0, a || B(t, e, this.length);
1370
+ for (var l = e, x = 1, d = this[t + --l]; l > 0 && (x *= 256); )
1371
+ d += this[t + --l] * x;
1372
+ return x *= 128, d >= x && (d -= Math.pow(2, 8 * e)), d;
1373
+ }, s.prototype.readInt8 = function(t, e) {
1374
+ return t = t >>> 0, e || B(t, 1, this.length), this[t] & 128 ? (255 - this[t] + 1) * -1 : this[t];
1375
+ }, s.prototype.readInt16LE = function(t, e) {
1376
+ t = t >>> 0, e || B(t, 2, this.length);
1377
+ var a = this[t] | this[t + 1] << 8;
1378
+ return a & 32768 ? a | 4294901760 : a;
1379
+ }, s.prototype.readInt16BE = function(t, e) {
1380
+ t = t >>> 0, e || B(t, 2, this.length);
1381
+ var a = this[t + 1] | this[t] << 8;
1382
+ return a & 32768 ? a | 4294901760 : a;
1383
+ }, s.prototype.readInt32LE = function(t, e) {
1384
+ return t = t >>> 0, e || B(t, 4, this.length), this[t] | this[t + 1] << 8 | this[t + 2] << 16 | this[t + 3] << 24;
1385
+ }, s.prototype.readInt32BE = function(t, e) {
1386
+ return t = t >>> 0, e || B(t, 4, this.length), this[t] << 24 | this[t + 1] << 16 | this[t + 2] << 8 | this[t + 3];
1387
+ }, s.prototype.readFloatLE = function(t, e) {
1388
+ return t = t >>> 0, e || B(t, 4, this.length), o.read(this, t, !0, 23, 4);
1389
+ }, s.prototype.readFloatBE = function(t, e) {
1390
+ return t = t >>> 0, e || B(t, 4, this.length), o.read(this, t, !1, 23, 4);
1391
+ }, s.prototype.readDoubleLE = function(t, e) {
1392
+ return t = t >>> 0, e || B(t, 8, this.length), o.read(this, t, !0, 52, 8);
1393
+ }, s.prototype.readDoubleBE = function(t, e) {
1394
+ return t = t >>> 0, e || B(t, 8, this.length), o.read(this, t, !1, 52, 8);
1395
+ };
1396
+ function I(n, t, e, a, l, x) {
1397
+ if (!s.isBuffer(n))
1398
+ throw new TypeError('"buffer" argument must be a Buffer instance');
1399
+ if (t > l || t < x)
1400
+ throw new RangeError('"value" argument is out of bounds');
1401
+ if (e + a > n.length)
1402
+ throw new RangeError("Index out of range");
1403
+ }
1404
+ s.prototype.writeUintLE = s.prototype.writeUIntLE = function(t, e, a, l) {
1405
+ if (t = +t, e = e >>> 0, a = a >>> 0, !l) {
1406
+ var x = Math.pow(2, 8 * a) - 1;
1407
+ I(this, t, e, a, x, 0);
1408
+ }
1409
+ var d = 1, D = 0;
1410
+ for (this[e] = t & 255; ++D < a && (d *= 256); )
1411
+ this[e + D] = t / d & 255;
1412
+ return e + a;
1413
+ }, s.prototype.writeUintBE = s.prototype.writeUIntBE = function(t, e, a, l) {
1414
+ if (t = +t, e = e >>> 0, a = a >>> 0, !l) {
1415
+ var x = Math.pow(2, 8 * a) - 1;
1416
+ I(this, t, e, a, x, 0);
1417
+ }
1418
+ var d = a - 1, D = 1;
1419
+ for (this[e + d] = t & 255; --d >= 0 && (D *= 256); )
1420
+ this[e + d] = t / D & 255;
1421
+ return e + a;
1422
+ }, s.prototype.writeUint8 = s.prototype.writeUInt8 = function(t, e, a) {
1423
+ return t = +t, e = e >>> 0, a || I(this, t, e, 1, 255, 0), this[e] = t & 255, e + 1;
1424
+ }, s.prototype.writeUint16LE = s.prototype.writeUInt16LE = function(t, e, a) {
1425
+ return t = +t, e = e >>> 0, a || I(this, t, e, 2, 65535, 0), this[e] = t & 255, this[e + 1] = t >>> 8, e + 2;
1426
+ }, s.prototype.writeUint16BE = s.prototype.writeUInt16BE = function(t, e, a) {
1427
+ return t = +t, e = e >>> 0, a || I(this, t, e, 2, 65535, 0), this[e] = t >>> 8, this[e + 1] = t & 255, e + 2;
1428
+ }, s.prototype.writeUint32LE = s.prototype.writeUInt32LE = function(t, e, a) {
1429
+ return t = +t, e = e >>> 0, a || I(this, t, e, 4, 4294967295, 0), this[e + 3] = t >>> 24, this[e + 2] = t >>> 16, this[e + 1] = t >>> 8, this[e] = t & 255, e + 4;
1430
+ }, s.prototype.writeUint32BE = s.prototype.writeUInt32BE = function(t, e, a) {
1431
+ return t = +t, e = e >>> 0, a || I(this, t, e, 4, 4294967295, 0), this[e] = t >>> 24, this[e + 1] = t >>> 16, this[e + 2] = t >>> 8, this[e + 3] = t & 255, e + 4;
1432
+ }, s.prototype.writeIntLE = function(t, e, a, l) {
1433
+ if (t = +t, e = e >>> 0, !l) {
1434
+ var x = Math.pow(2, 8 * a - 1);
1435
+ I(this, t, e, a, x - 1, -x);
1436
+ }
1437
+ var d = 0, D = 1, N = 0;
1438
+ for (this[e] = t & 255; ++d < a && (D *= 256); )
1439
+ t < 0 && N === 0 && this[e + d - 1] !== 0 && (N = 1), this[e + d] = (t / D >> 0) - N & 255;
1440
+ return e + a;
1441
+ }, s.prototype.writeIntBE = function(t, e, a, l) {
1442
+ if (t = +t, e = e >>> 0, !l) {
1443
+ var x = Math.pow(2, 8 * a - 1);
1444
+ I(this, t, e, a, x - 1, -x);
1445
+ }
1446
+ var d = a - 1, D = 1, N = 0;
1447
+ for (this[e + d] = t & 255; --d >= 0 && (D *= 256); )
1448
+ t < 0 && N === 0 && this[e + d + 1] !== 0 && (N = 1), this[e + d] = (t / D >> 0) - N & 255;
1449
+ return e + a;
1450
+ }, s.prototype.writeInt8 = function(t, e, a) {
1451
+ return t = +t, e = e >>> 0, a || I(this, t, e, 1, 127, -128), t < 0 && (t = 255 + t + 1), this[e] = t & 255, e + 1;
1452
+ }, s.prototype.writeInt16LE = function(t, e, a) {
1453
+ return t = +t, e = e >>> 0, a || I(this, t, e, 2, 32767, -32768), this[e] = t & 255, this[e + 1] = t >>> 8, e + 2;
1454
+ }, s.prototype.writeInt16BE = function(t, e, a) {
1455
+ return t = +t, e = e >>> 0, a || I(this, t, e, 2, 32767, -32768), this[e] = t >>> 8, this[e + 1] = t & 255, e + 2;
1456
+ }, s.prototype.writeInt32LE = function(t, e, a) {
1457
+ return t = +t, e = e >>> 0, a || I(this, t, e, 4, 2147483647, -2147483648), this[e] = t & 255, this[e + 1] = t >>> 8, this[e + 2] = t >>> 16, this[e + 3] = t >>> 24, e + 4;
1458
+ }, s.prototype.writeInt32BE = function(t, e, a) {
1459
+ return t = +t, e = e >>> 0, a || I(this, t, e, 4, 2147483647, -2147483648), t < 0 && (t = 4294967295 + t + 1), this[e] = t >>> 24, this[e + 1] = t >>> 16, this[e + 2] = t >>> 8, this[e + 3] = t & 255, e + 4;
1460
+ };
1461
+ function L(n, t, e, a, l, x) {
1462
+ if (e + a > n.length)
1463
+ throw new RangeError("Index out of range");
1464
+ if (e < 0)
1465
+ throw new RangeError("Index out of range");
1466
+ }
1467
+ function J(n, t, e, a, l) {
1468
+ return t = +t, e = e >>> 0, l || L(n, t, e, 4), o.write(n, t, e, a, 23, 4), e + 4;
1469
+ }
1470
+ s.prototype.writeFloatLE = function(t, e, a) {
1471
+ return J(this, t, e, !0, a);
1472
+ }, s.prototype.writeFloatBE = function(t, e, a) {
1473
+ return J(this, t, e, !1, a);
1474
+ };
1475
+ function U(n, t, e, a, l) {
1476
+ return t = +t, e = e >>> 0, l || L(n, t, e, 8), o.write(n, t, e, a, 52, 8), e + 8;
1477
+ }
1478
+ s.prototype.writeDoubleLE = function(t, e, a) {
1479
+ return U(this, t, e, !0, a);
1480
+ }, s.prototype.writeDoubleBE = function(t, e, a) {
1481
+ return U(this, t, e, !1, a);
1482
+ }, s.prototype.copy = function(t, e, a, l) {
1483
+ if (!s.isBuffer(t))
1484
+ throw new TypeError("argument should be a Buffer");
1485
+ if (a || (a = 0), !l && l !== 0 && (l = this.length), e >= t.length && (e = t.length), e || (e = 0), l > 0 && l < a && (l = a), l === a || t.length === 0 || this.length === 0)
1486
+ return 0;
1487
+ if (e < 0)
1488
+ throw new RangeError("targetStart out of bounds");
1489
+ if (a < 0 || a >= this.length)
1490
+ throw new RangeError("Index out of range");
1491
+ if (l < 0)
1492
+ throw new RangeError("sourceEnd out of bounds");
1493
+ l > this.length && (l = this.length), t.length - e < l - a && (l = t.length - e + a);
1494
+ var x = l - a;
1495
+ return this === t && typeof Uint8Array.prototype.copyWithin == "function" ? this.copyWithin(e, a, l) : Uint8Array.prototype.set.call(
1496
+ t,
1497
+ this.subarray(a, l),
1498
+ e
1499
+ ), x;
1500
+ }, s.prototype.fill = function(t, e, a, l) {
1501
+ if (typeof t == "string") {
1502
+ if (typeof e == "string" ? (l = e, e = 0, a = this.length) : typeof a == "string" && (l = a, a = this.length), l !== void 0 && typeof l != "string")
1503
+ throw new TypeError("encoding must be a string");
1504
+ if (typeof l == "string" && !s.isEncoding(l))
1505
+ throw new TypeError("Unknown encoding: " + l);
1506
+ if (t.length === 1) {
1507
+ var x = t.charCodeAt(0);
1508
+ (l === "utf8" && x < 128 || l === "latin1") && (t = x);
1509
+ }
1510
+ } else
1511
+ typeof t == "number" ? t = t & 255 : typeof t == "boolean" && (t = Number(t));
1512
+ if (e < 0 || this.length < e || this.length < a)
1513
+ throw new RangeError("Out of range index");
1514
+ if (a <= e)
1515
+ return this;
1516
+ e = e >>> 0, a = a === void 0 ? this.length : a >>> 0, t || (t = 0);
1517
+ var d;
1518
+ if (typeof t == "number")
1519
+ for (d = e; d < a; ++d)
1520
+ this[d] = t;
1521
+ else {
1522
+ var D = s.isBuffer(t) ? t : s.from(t, l), N = D.length;
1523
+ if (N === 0)
1524
+ throw new TypeError('The value "' + t + '" is invalid for argument "value"');
1525
+ for (d = 0; d < a - e; ++d)
1526
+ this[d + e] = D[d % N];
1527
+ }
1528
+ return this;
1529
+ };
1530
+ var K = /[^+/0-9A-Za-z-_]/g;
1531
+ function Y(n) {
1532
+ if (n = n.split("=")[0], n = n.trim().replace(K, ""), n.length < 2)
1533
+ return "";
1534
+ for (; n.length % 4 !== 0; )
1535
+ n = n + "=";
1536
+ return n;
1537
+ }
1538
+ function V(n, t) {
1539
+ t = t || 1 / 0;
1540
+ for (var e, a = n.length, l = null, x = [], d = 0; d < a; ++d) {
1541
+ if (e = n.charCodeAt(d), e > 55295 && e < 57344) {
1542
+ if (!l) {
1543
+ if (e > 56319) {
1544
+ (t -= 3) > -1 && x.push(239, 191, 189);
1545
+ continue;
1546
+ } else if (d + 1 === a) {
1547
+ (t -= 3) > -1 && x.push(239, 191, 189);
1548
+ continue;
1549
+ }
1550
+ l = e;
1551
+ continue;
1552
+ }
1553
+ if (e < 56320) {
1554
+ (t -= 3) > -1 && x.push(239, 191, 189), l = e;
1555
+ continue;
1556
+ }
1557
+ e = (l - 55296 << 10 | e - 56320) + 65536;
1558
+ } else
1559
+ l && (t -= 3) > -1 && x.push(239, 191, 189);
1560
+ if (l = null, e < 128) {
1561
+ if ((t -= 1) < 0)
1562
+ break;
1563
+ x.push(e);
1564
+ } else if (e < 2048) {
1565
+ if ((t -= 2) < 0)
1566
+ break;
1567
+ x.push(
1568
+ e >> 6 | 192,
1569
+ e & 63 | 128
1570
+ );
1571
+ } else if (e < 65536) {
1572
+ if ((t -= 3) < 0)
1573
+ break;
1574
+ x.push(
1575
+ e >> 12 | 224,
1576
+ e >> 6 & 63 | 128,
1577
+ e & 63 | 128
1578
+ );
1579
+ } else if (e < 1114112) {
1580
+ if ((t -= 4) < 0)
1581
+ break;
1582
+ x.push(
1583
+ e >> 18 | 240,
1584
+ e >> 12 & 63 | 128,
1585
+ e >> 6 & 63 | 128,
1586
+ e & 63 | 128
1587
+ );
1588
+ } else
1589
+ throw new Error("Invalid code point");
1590
+ }
1591
+ return x;
1592
+ }
1593
+ function Q(n) {
1594
+ for (var t = [], e = 0; e < n.length; ++e)
1595
+ t.push(n.charCodeAt(e) & 255);
1596
+ return t;
1597
+ }
1598
+ function tt(n, t) {
1599
+ for (var e, a, l, x = [], d = 0; d < n.length && !((t -= 2) < 0); ++d)
1600
+ e = n.charCodeAt(d), a = e >> 8, l = e % 256, x.push(l), x.push(a);
1601
+ return x;
1602
+ }
1603
+ function ct(n) {
1604
+ return r.toByteArray(Y(n));
1605
+ }
1606
+ function St(n, t, e, a) {
1607
+ for (var l = 0; l < a && !(l + e >= t.length || l >= n.length); ++l)
1608
+ t[l + e] = n[l];
1609
+ return l;
1610
+ }
1611
+ function rt(n, t) {
1612
+ return n instanceof t || n != null && n.constructor != null && n.constructor.name != null && n.constructor.name === t.name;
1613
+ }
1614
+ function Ct(n) {
1615
+ return n !== n;
1616
+ }
1617
+ var We = function() {
1618
+ for (var n = "0123456789abcdef", t = new Array(256), e = 0; e < 16; ++e)
1619
+ for (var a = e * 16, l = 0; l < 16; ++l)
1620
+ t[a + l] = n[e] + n[l];
1621
+ return t;
1622
+ }();
1623
+ })(Se);
1624
+ /*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */
1625
+ (function(i, r) {
1626
+ var o = Se, p = o.Buffer;
1627
+ function u(c, s) {
1628
+ for (var h in c)
1629
+ s[h] = c[h];
1630
+ }
1631
+ p.from && p.alloc && p.allocUnsafe && p.allocUnsafeSlow ? i.exports = o : (u(o, r), r.Buffer = f);
1632
+ function f(c, s, h) {
1633
+ return p(c, s, h);
1634
+ }
1635
+ f.prototype = Object.create(p.prototype), u(p, f), f.from = function(c, s, h) {
1636
+ if (typeof c == "number")
1637
+ throw new TypeError("Argument must not be a number");
1638
+ return p(c, s, h);
1639
+ }, f.alloc = function(c, s, h) {
1640
+ if (typeof c != "number")
1641
+ throw new TypeError("Argument must be a number");
1642
+ var g = p(c);
1643
+ return s !== void 0 ? typeof h == "string" ? g.fill(s, h) : g.fill(s) : g.fill(0), g;
1644
+ }, f.allocUnsafe = function(c) {
1645
+ if (typeof c != "number")
1646
+ throw new TypeError("Argument must be a number");
1647
+ return p(c);
1648
+ }, f.allocUnsafeSlow = function(c) {
1649
+ if (typeof c != "number")
1650
+ throw new TypeError("Argument must be a number");
1651
+ return o.SlowBuffer(c);
1652
+ };
1653
+ })(Rt, Rt.exports);
1654
+ var Kt = Rt.exports, Ae = Kt.Buffer;
1655
+ function Tt(i, r) {
1656
+ this._block = Ae.alloc(i), this._finalSize = r, this._blockSize = i, this._len = 0;
1657
+ }
1658
+ Tt.prototype.update = function(i, r) {
1659
+ typeof i == "string" && (r = r || "utf8", i = Ae.from(i, r));
1660
+ for (var o = this._block, p = this._blockSize, u = i.length, f = this._len, c = 0; c < u; ) {
1661
+ for (var s = f % p, h = Math.min(u - c, p - s), g = 0; g < h; g++)
1662
+ o[s + g] = i[c + g];
1663
+ f += h, c += h, f % p === 0 && this._update(o);
1664
+ }
1665
+ return this._len += u, this;
1666
+ };
1667
+ Tt.prototype.digest = function(i) {
1668
+ var r = this._len % this._blockSize;
1669
+ this._block[r] = 128, this._block.fill(0, r + 1), r >= this._finalSize && (this._update(this._block), this._block.fill(0));
1670
+ var o = this._len * 8;
1671
+ if (o <= 4294967295)
1672
+ this._block.writeUInt32BE(o, this._blockSize - 4);
1673
+ else {
1674
+ var p = (o & 4294967295) >>> 0, u = (o - p) / 4294967296;
1675
+ this._block.writeUInt32BE(u, this._blockSize - 8), this._block.writeUInt32BE(p, this._blockSize - 4);
1676
+ }
1677
+ this._update(this._block);
1678
+ var f = this._hash();
1679
+ return i ? f.toString(i) : f;
1680
+ };
1681
+ Tt.prototype._update = function() {
1682
+ throw new Error("_update must be implemented by subclass");
1683
+ };
1684
+ var Fe = Tt, wi = ve, Be = Fe, Ei = Kt.Buffer, bi = [
1685
+ 1518500249,
1686
+ 1859775393,
1687
+ -1894007588,
1688
+ -899497514
1689
+ ], vi = new Array(80);
1690
+ function bt() {
1691
+ this.init(), this._w = vi, Be.call(this, 64, 56);
1692
+ }
1693
+ wi(bt, Be);
1694
+ bt.prototype.init = function() {
1695
+ return this._a = 1732584193, this._b = 4023233417, this._c = 2562383102, this._d = 271733878, this._e = 3285377520, this;
1696
+ };
1697
+ function Si(i) {
1698
+ return i << 1 | i >>> 31;
1699
+ }
1700
+ function _i(i) {
1701
+ return i << 5 | i >>> 27;
1702
+ }
1703
+ function Ai(i) {
1704
+ return i << 30 | i >>> 2;
1705
+ }
1706
+ function Fi(i, r, o, p) {
1707
+ return i === 0 ? r & o | ~r & p : i === 2 ? r & o | r & p | o & p : r ^ o ^ p;
1708
+ }
1709
+ bt.prototype._update = function(i) {
1710
+ for (var r = this._w, o = this._a | 0, p = this._b | 0, u = this._c | 0, f = this._d | 0, c = this._e | 0, s = 0; s < 16; ++s)
1711
+ r[s] = i.readInt32BE(s * 4);
1712
+ for (; s < 80; ++s)
1713
+ r[s] = Si(r[s - 3] ^ r[s - 8] ^ r[s - 14] ^ r[s - 16]);
1714
+ for (var h = 0; h < 80; ++h) {
1715
+ var g = ~~(h / 20), y = _i(o) + Fi(g, p, u, f) + c + r[h] + bi[g] | 0;
1716
+ c = f, f = u, u = Ai(p), p = o, o = y;
1717
+ }
1718
+ this._a = o + this._a | 0, this._b = p + this._b | 0, this._c = u + this._c | 0, this._d = f + this._d | 0, this._e = c + this._e | 0;
1719
+ };
1720
+ bt.prototype._hash = function() {
1721
+ var i = Ei.allocUnsafe(20);
1722
+ return i.writeInt32BE(this._a | 0, 0), i.writeInt32BE(this._b | 0, 4), i.writeInt32BE(this._c | 0, 8), i.writeInt32BE(this._d | 0, 12), i.writeInt32BE(this._e | 0, 16), i;
1723
+ };
1724
+ var Bi = bt;
1725
+ const Oi = /* @__PURE__ */ Xt(Bi);
1726
+ var Ii = ve, Oe = Fe, ji = Kt.Buffer, Ti = [
1727
+ 1116352408,
1728
+ 1899447441,
1729
+ 3049323471,
1730
+ 3921009573,
1731
+ 961987163,
1732
+ 1508970993,
1733
+ 2453635748,
1734
+ 2870763221,
1735
+ 3624381080,
1736
+ 310598401,
1737
+ 607225278,
1738
+ 1426881987,
1739
+ 1925078388,
1740
+ 2162078206,
1741
+ 2614888103,
1742
+ 3248222580,
1743
+ 3835390401,
1744
+ 4022224774,
1745
+ 264347078,
1746
+ 604807628,
1747
+ 770255983,
1748
+ 1249150122,
1749
+ 1555081692,
1750
+ 1996064986,
1751
+ 2554220882,
1752
+ 2821834349,
1753
+ 2952996808,
1754
+ 3210313671,
1755
+ 3336571891,
1756
+ 3584528711,
1757
+ 113926993,
1758
+ 338241895,
1759
+ 666307205,
1760
+ 773529912,
1761
+ 1294757372,
1762
+ 1396182291,
1763
+ 1695183700,
1764
+ 1986661051,
1765
+ 2177026350,
1766
+ 2456956037,
1767
+ 2730485921,
1768
+ 2820302411,
1769
+ 3259730800,
1770
+ 3345764771,
1771
+ 3516065817,
1772
+ 3600352804,
1773
+ 4094571909,
1774
+ 275423344,
1775
+ 430227734,
1776
+ 506948616,
1777
+ 659060556,
1778
+ 883997877,
1779
+ 958139571,
1780
+ 1322822218,
1781
+ 1537002063,
1782
+ 1747873779,
1783
+ 1955562222,
1784
+ 2024104815,
1785
+ 2227730452,
1786
+ 2361852424,
1787
+ 2428436474,
1788
+ 2756734187,
1789
+ 3204031479,
1790
+ 3329325298
1791
+ ], ki = new Array(64);
1792
+ function vt() {
1793
+ this.init(), this._w = ki, Oe.call(this, 64, 56);
1794
+ }
1795
+ Ii(vt, Oe);
1796
+ vt.prototype.init = function() {
1797
+ return this._a = 1779033703, this._b = 3144134277, this._c = 1013904242, this._d = 2773480762, this._e = 1359893119, this._f = 2600822924, this._g = 528734635, this._h = 1541459225, this;
1798
+ };
1799
+ function Di(i, r, o) {
1800
+ return o ^ i & (r ^ o);
1801
+ }
1802
+ function Ci(i, r, o) {
1803
+ return i & r | o & (i | r);
1804
+ }
1805
+ function Ui(i) {
1806
+ return (i >>> 2 | i << 30) ^ (i >>> 13 | i << 19) ^ (i >>> 22 | i << 10);
1807
+ }
1808
+ function $i(i) {
1809
+ return (i >>> 6 | i << 26) ^ (i >>> 11 | i << 21) ^ (i >>> 25 | i << 7);
1810
+ }
1811
+ function Ni(i) {
1812
+ return (i >>> 7 | i << 25) ^ (i >>> 18 | i << 14) ^ i >>> 3;
1813
+ }
1814
+ function Mi(i) {
1815
+ return (i >>> 17 | i << 15) ^ (i >>> 19 | i << 13) ^ i >>> 10;
1816
+ }
1817
+ vt.prototype._update = function(i) {
1818
+ for (var r = this._w, o = this._a | 0, p = this._b | 0, u = this._c | 0, f = this._d | 0, c = this._e | 0, s = this._f | 0, h = this._g | 0, g = this._h | 0, y = 0; y < 16; ++y)
1819
+ r[y] = i.readInt32BE(y * 4);
1820
+ for (; y < 64; ++y)
1821
+ r[y] = Mi(r[y - 2]) + r[y - 7] + Ni(r[y - 15]) + r[y - 16] | 0;
1822
+ for (var b = 0; b < 64; ++b) {
1823
+ var F = g + $i(c) + Di(c, s, h) + Ti[b] + r[b] | 0, j = Ui(o) + Ci(o, p, u) | 0;
1824
+ g = h, h = s, s = c, c = f + F | 0, f = u, u = p, p = o, o = F + j | 0;
1825
+ }
1826
+ this._a = o + this._a | 0, this._b = p + this._b | 0, this._c = u + this._c | 0, this._d = f + this._d | 0, this._e = c + this._e | 0, this._f = s + this._f | 0, this._g = h + this._g | 0, this._h = g + this._h | 0;
1827
+ };
1828
+ vt.prototype._hash = function() {
1829
+ var i = ji.allocUnsafe(32);
1830
+ return i.writeInt32BE(this._a, 0), i.writeInt32BE(this._b, 4), i.writeInt32BE(this._c, 8), i.writeInt32BE(this._d, 12), i.writeInt32BE(this._e, 16), i.writeInt32BE(this._f, 20), i.writeInt32BE(this._g, 24), i.writeInt32BE(this._h, 28), i;
1831
+ };
1832
+ var Ri = vt;
1833
+ const Li = /* @__PURE__ */ Xt(Ri), Gt = new Error("File system not available.");
1834
+ function Pi(i, r, o) {
1835
+ throw Gt;
1836
+ }
1837
+ function Ie(i) {
1838
+ throw Gt;
1839
+ }
1840
+ function zi(i) {
1841
+ throw Gt;
1842
+ }
1843
+ const qi = async (i) => Ie(), Ji = {
1844
+ sha1: Oi,
1845
+ sha256: Li
1846
+ }, kt = (i, r = "sha1") => {
1847
+ if (!["sha1", "sha256"].includes(r))
1848
+ throw new Error("Hashing algorithm not supported: Available: sha1, sha256");
1849
+ const o = Ji[r];
1850
+ return new o().update(i).digest("base64");
1851
+ };
1852
+ function Hi(i) {
1853
+ const r = [], o = Object.keys(i);
1854
+ for (const p of o) {
1855
+ const u = i[p].sort((f, c) => f.index - c.index);
1856
+ for (let f = 0; f < u.length; f++)
1857
+ u[f].index !== f && r.push({
1858
+ message: `Invalid operation index ${u[f].index} at position ${f}`,
1859
+ details: {
1860
+ position: f,
1861
+ operation: u[f],
1862
+ scope: u[f].scope
1863
+ }
1864
+ });
1865
+ }
1866
+ return r;
1867
+ }
1868
+ const je = async (i) => {
1869
+ const r = new oe(), { name: o, revision: p, documentType: u, created: f, lastModified: c } = i, s = {
1870
+ name: o,
1871
+ revision: p,
1872
+ documentType: u,
1873
+ created: f,
1874
+ lastModified: c
1875
+ };
1876
+ return r.file("header.json", JSON.stringify(s, null, 2)), r.file(
1877
+ "state.json",
1878
+ JSON.stringify(i.initialState || {}, null, 2)
1879
+ ), r.file("operations.json", JSON.stringify(i.operations, null, 2)), Object.keys(i.attachments).forEach((g) => {
1880
+ const { data: y, ...b } = i.attachments[g];
1881
+ r.file(g, y, {
1882
+ base64: !0,
1883
+ createFolders: !0,
1884
+ comment: JSON.stringify(b)
1885
+ });
1886
+ }), r;
1887
+ }, Wi = async (i, r, o, p) => {
1888
+ await (await je(i)).generateAsync({
1889
+ type: "uint8array",
1890
+ streamFiles: !0
1891
+ });
1892
+ const f = p ?? i.name, c = `.${o}.zip`;
1893
+ return Pi(
1894
+ r,
1895
+ f.endsWith(c) ? f : `${f}${c}`
1896
+ );
1897
+ }, yr = async (i, r) => {
1898
+ const p = await (await je(i)).generateAsync({ type: "blob" }), u = await r.createWritable();
1899
+ await u.write(p), await u.close();
1900
+ }, re = async (i, r, o) => {
1901
+ const p = Ie();
1902
+ return Xi(p, r, o);
1903
+ }, Xi = async (i, r, o) => {
1904
+ const p = new oe();
1905
+ return await p.loadAsync(i), Vi(p, r, o);
1906
+ };
1907
+ async function Vi(i, r, o) {
1908
+ const p = i.file("state.json");
1909
+ if (!p)
1910
+ throw new Error("Initial state not found");
1911
+ const u = await p.async("string"), f = JSON.parse(u), c = i.file("header.json");
1912
+ let s;
1913
+ c && (s = JSON.parse(await c.async("string")));
1914
+ const h = i.file("operations.json");
1915
+ if (!h)
1916
+ throw new Error("Operations history not found");
1917
+ const g = JSON.parse(
1918
+ await h.async("string")
1919
+ ), y = Hi(g);
1920
+ if (y.length) {
1921
+ const F = y.map((j) => j.message);
1922
+ throw new Error(F.join(`
1923
+ `));
1924
+ }
1925
+ let b = Re(
1926
+ f,
1927
+ g,
1928
+ r,
1929
+ void 0,
1930
+ s,
1931
+ {},
1932
+ o
1933
+ );
1934
+ return s && (b = {
1935
+ ...b,
1936
+ ...s
1937
+ }), b;
1938
+ }
1939
+ function Te(i) {
1940
+ const r = i.replace(/^.*\./, "") || void 0, o = i.replace(/^.*[/\\]/, "") || void 0;
1941
+ return { extension: r, fileName: o };
1942
+ }
1943
+ async function wr(i) {
1944
+ const { buffer: r, mimeType: o = "application/octet-stream" } = await zi(), p = Te(i), u = r.toString("base64");
1945
+ return {
1946
+ data: u,
1947
+ hash: kt(u),
1948
+ mimeType: o,
1949
+ ...p
1950
+ };
1951
+ }
1952
+ async function Er(i) {
1953
+ const r = await qi(), o = li.getType(i) || "application/octet-stream", p = Te(i), u = r.toString("base64");
1954
+ return { data: u, hash: kt(u), mimeType: o, ...p };
1955
+ }
1956
+ var ke = /* @__PURE__ */ ((i) => (i.UNEXPECTED_INDEX = "UNEXPECTED_INDEX", i))(ke || {}), De = /* @__PURE__ */ ((i) => (i.DUPLICATED_INDEX = "DUPLICATED_INDEX", i.MISSING_INDEX = "MISSING_INDEX", i))(De || {});
1957
+ function Zt(i) {
1958
+ const r = [];
1959
+ let o = -1;
1960
+ for (const p of i) {
1961
+ const u = p.index - p.skip;
1962
+ u !== o + 1 && r.push({
1963
+ operation: {
1964
+ index: p.index,
1965
+ skip: p.skip
1966
+ },
1967
+ issue: "UNEXPECTED_INDEX",
1968
+ category: u > o + 1 ? "MISSING_INDEX" : "DUPLICATED_INDEX",
1969
+ message: `Expected index ${o + 1} with skip 0 or equivalent, got index ${p.index} with skip ${p.skip}`
1970
+ }), o = p.index;
1971
+ }
1972
+ return r;
1973
+ }
1974
+ function ot(i) {
1975
+ var p, u, f;
1976
+ const r = [];
1977
+ let o = i.length - 1;
1978
+ for (; o > -1; ) {
1979
+ r.unshift(i[o]);
1980
+ const c = (((p = i[o]) == null ? void 0 : p.index) || 0) - (((u = i[o]) == null ? void 0 : u.skip) || 0) - 1;
1981
+ let s = o - 1;
1982
+ for (; s > -1 && (((f = i[s]) == null ? void 0 : f.index) || 0) > c; )
1983
+ s--;
1984
+ o = s;
1985
+ }
1986
+ return r;
1987
+ }
1988
+ function Ki(i) {
1989
+ const r = [...i], o = r[r.length - 1];
1990
+ return o && (o.type === "NOOP" ? r.push({
1991
+ ...o,
1992
+ index: o.index,
1993
+ type: "NOOP",
1994
+ skip: $e(i)
1995
+ }) : r.push({
1996
+ type: "NOOP",
1997
+ index: o.index + 1,
1998
+ timestamp: (/* @__PURE__ */ new Date()).toISOString(),
1999
+ input: {},
2000
+ skip: 1,
2001
+ scope: o.scope,
2002
+ hash: o.hash
2003
+ })), r;
2004
+ }
2005
+ function at(i) {
2006
+ return i.slice().sort((r, o) => r.skip - o.skip).sort((r, o) => r.index - o.index);
2007
+ }
2008
+ const Gi = (i, r, o) => [...r, ...o].sort(
2009
+ (p, u) => new Date(p.timestamp).getTime() - new Date(u.timestamp).getTime()
2010
+ ).map((p, u) => ({
2011
+ ...p,
2012
+ index: i.index + u,
2013
+ skip: u === 0 ? i.skip : 0
2014
+ })), Zi = (i, r, o) => [...r, ...o].sort(
2015
+ (p, u) => new Date(p.timestamp).getTime() - new Date(u.timestamp).getTime()
2016
+ ).sort((p, u) => p.index - u.index).map((p, u) => ({
2017
+ ...p,
2018
+ index: i.index + u,
2019
+ skip: u === 0 ? i.skip : 0
2020
+ }));
2021
+ function Yt(i, r) {
2022
+ return xt(i) === xt(r);
2023
+ }
2024
+ function Yi(i, r) {
2025
+ const o = ot(at(i.slice())), p = ot(at(r.slice()));
2026
+ if (o.length < 1)
2027
+ return [p, []];
2028
+ const u = [];
2029
+ let f = !1;
2030
+ for (; p.length > 0; ) {
2031
+ const c = p[0];
2032
+ let s = o.shift();
2033
+ for (; s && Ce(s, c); )
2034
+ u.push(s), s = o.shift();
2035
+ if (s ? f || (Yt(s, c) ? (p.shift(), u.push(s)) : (o.unshift(s), f = !0)) : f = !0, f) {
2036
+ let h = p.shift();
2037
+ for (; h; )
2038
+ u.push(h), h = p.shift();
2039
+ }
2040
+ }
2041
+ if (!f) {
2042
+ let c = o.shift();
2043
+ for (; c; )
2044
+ u.push(c), c = o.shift();
2045
+ }
2046
+ return [ot(u), o];
2047
+ }
2048
+ function Ce(i, r) {
2049
+ return i.index < r.index || i.index === r.index && i.skip < r.skip;
2050
+ }
2051
+ function Ue(i, r) {
2052
+ const o = [], p = [], u = [], f = Math.max(
2053
+ i.length,
2054
+ r.length
2055
+ );
2056
+ let c = !1;
2057
+ for (let s = 0; s < f; s++) {
2058
+ const h = i[s], g = r[s];
2059
+ h && g ? !c && Yt(h, g) ? o.push(h) : (c = !0, p.push(h), u.push(g)) : h ? p.push(h) : g && u.push(g);
2060
+ }
2061
+ return [o, p, u];
2062
+ }
2063
+ function Qi(i, r, o) {
2064
+ const [p, u, f] = Ue(
2065
+ ot(i),
2066
+ ot(r)
2067
+ ), c = $t(p), s = 1 + Math.max(
2068
+ c,
2069
+ $t(u),
2070
+ $t(f)
2071
+ ), h = o(
2072
+ {
2073
+ index: s,
2074
+ skip: s - (c + 1)
2075
+ },
2076
+ u,
2077
+ f
2078
+ );
2079
+ return p.concat(h);
2080
+ }
2081
+ function $t(i) {
2082
+ const r = i[i.length - 1];
2083
+ return r ? r.index : -1;
2084
+ }
2085
+ function $e(i) {
2086
+ var p, u, f;
2087
+ if (i.length < 1)
2088
+ return -1;
2089
+ const r = ot(i);
2090
+ let o = (((p = r[r.length - 1]) == null ? void 0 : p.skip) || 0) + 1;
2091
+ return r.length > 1 && (o += ((u = r[r.length - 2]) == null ? void 0 : u.skip) || 0), (((f = r[r.length - 1]) == null ? void 0 : f.index) || -1) < o ? -1 : o;
2092
+ }
2093
+ const tr = (i) => Zt(
2094
+ ot(at(i))
2095
+ ), er = (i) => i.reduce((o, p) => {
2096
+ var u;
2097
+ return o[p.scope] || (o[p.scope] = []), (u = o[p.scope]) == null || u.push(p), o;
2098
+ }, {}), ir = (i, r) => {
2099
+ var h;
2100
+ const o = {
2101
+ integrityIssues: [],
2102
+ validOperations: [],
2103
+ invalidOperations: [],
2104
+ duplicatedOperations: []
2105
+ }, p = at(i), u = at(r), f = Zt([
2106
+ ...p,
2107
+ ...u
2108
+ ]), s = (h = [...f.filter(
2109
+ (g) => g.category === "MISSING_INDEX"
2110
+ /* MISSING_INDEX */
2111
+ )].sort((g, y) => y.operation.index - g.operation.index).pop()) == null ? void 0 : h.operation;
2112
+ for (const g of u) {
2113
+ if (s && g.index >= s.index) {
2114
+ o.invalidOperations.push(g);
2115
+ continue;
2116
+ }
2117
+ if (f.some((b) => b.operation.index === g.index && b.operation.skip === g.skip && b.category === "DUPLICATED_INDEX")) {
2118
+ o.duplicatedOperations.push(g);
2119
+ continue;
2120
+ }
2121
+ o.validOperations.push(g);
2122
+ }
2123
+ return o.integrityIssues.push(...f), o;
2124
+ };
2125
+ function rr(i, r) {
2126
+ return i.filter((o) => !r.some((p) => o.type === "NOOP" && o.skip === 0 && o.index === p.index || o.index === p.index && o.skip === p.skip && o.scope === p.scope && o.hash === p.hash && o.type === p.type));
2127
+ }
2128
+ function Ne(i, r) {
2129
+ const [o] = at(i).slice(-1), p = (o == null ? void 0 : o.index) ?? -1, u = p + 1, f = {
2130
+ ...r,
2131
+ index: r.index ?? u
2132
+ };
2133
+ if (f.index < p)
2134
+ throw new Error(
2135
+ `The skip header operation index must be greater than or equal to ${p}`
2136
+ );
2137
+ return (ot(
2138
+ at([...i, f])
2139
+ ) || []).slice(0, -1);
2140
+ }
2141
+ function Lt(i) {
2142
+ return {
2143
+ ...Object.entries(i).reduce(
2144
+ (o, p) => {
2145
+ const [u, f] = p;
2146
+ return {
2147
+ ...o,
2148
+ [u]: ot(at(f))
2149
+ };
2150
+ },
2151
+ {}
2152
+ )
2153
+ };
2154
+ }
2155
+ const br = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2156
+ __proto__: null,
2157
+ IntegrityIssueSubType: De,
2158
+ IntegrityIssueType: ke,
2159
+ addUndo: Ki,
2160
+ attachBranch: Yi,
2161
+ checkCleanedOperationsIntegrity: Zt,
2162
+ checkOperationsIntegrity: tr,
2163
+ garbageCollect: ot,
2164
+ garbageCollectDocumentOperations: Lt,
2165
+ groupOperationsByScope: er,
2166
+ merge: Qi,
2167
+ nextSkipNumber: $e,
2168
+ operationsAreEqual: Yt,
2169
+ precedes: Ce,
2170
+ prepareOperations: ir,
2171
+ removeExistingOperations: rr,
2172
+ reshuffleByTimestamp: Gi,
2173
+ reshuffleByTimestampAndIndex: Zi,
2174
+ skipHeaderOperations: Ne,
2175
+ sortOperations: at,
2176
+ split: Ue
2177
+ }, Symbol.toStringTag, { value: "Module" }));
2178
+ function nr(i, r) {
2179
+ let o;
2180
+ return "index" in r ? o = { ...r } : o = i.operations[r.scope].at(-1), ((o == null ? void 0 : o.index) ?? -1) + 1;
2181
+ }
2182
+ function or(i, r) {
2183
+ return {
2184
+ ...i,
2185
+ revision: {
2186
+ ...i.revision,
2187
+ [r.scope]: nr(i, r)
2188
+ },
2189
+ lastModified: (/* @__PURE__ */ new Date()).toISOString()
2190
+ };
2191
+ }
2192
+ function ar(i, r, o = 0) {
2193
+ if ([wt, Et, It].includes(r.type))
2194
+ return i;
2195
+ const { scope: p } = r, u = i.operations[p].slice(), f = u.at(-1);
2196
+ let c = ((f == null ? void 0 : f.index) ?? -1) + 1;
2197
+ if ("index" in r) {
2198
+ if (r.index - o > c)
2199
+ throw new Error(
2200
+ `Missing operations: expected ${c} with skip 0 or equivalent, got index ${r.index} with skip ${o}`
2201
+ );
2202
+ c = r.index;
2203
+ }
2204
+ return u.push({
2205
+ ...r,
2206
+ index: c,
2207
+ timestamp: (/* @__PURE__ */ new Date()).toISOString(),
2208
+ hash: "",
2209
+ scope: p,
2210
+ skip: o,
2211
+ error: void 0
2212
+ }), {
2213
+ ...i,
2214
+ operations: { ...i.operations, [p]: u }
2215
+ };
2216
+ }
2217
+ function sr(i, r, o = 0) {
2218
+ let p = ar(i, r, o);
2219
+ return p = or(p, r), p;
2220
+ }
2221
+ function pr(i, r, o) {
2222
+ switch (fe().parse(r), r.type) {
2223
+ case we:
2224
+ return ri(i, r.input);
2225
+ case It:
2226
+ return ai(i, r, o);
2227
+ case Ee:
2228
+ return si(i, r.input.state);
2229
+ default:
2230
+ return i;
2231
+ }
2232
+ }
2233
+ function vr(i, r, o) {
2234
+ switch (r.type) {
2235
+ case wt:
2236
+ return ni(i, r, o);
2237
+ case Et:
2238
+ return oi(i, r, o);
2239
+ default:
2240
+ return { document: i, action: r, skip: o };
2241
+ }
2242
+ }
2243
+ function cr(i, r, o, p, u = !1, f = Le) {
2244
+ const c = r.scope, s = i.operations[c].at(-1);
2245
+ if (!s)
2246
+ return i;
2247
+ const h = Lt(
2248
+ {
2249
+ ...i.operations,
2250
+ [c]: Ne(
2251
+ i.operations[c],
2252
+ s
2253
+ )
2254
+ }
2255
+ );
2256
+ let g;
2257
+ const y = h[c].at(-1);
2258
+ if (u && (y != null && y.resultingState))
2259
+ g = f(
2260
+ y.resultingState
2261
+ );
2262
+ else {
2263
+ const { state: b } = Pt(
2264
+ i.initialState,
2265
+ h,
2266
+ o,
2267
+ void 0,
2268
+ void 0,
2269
+ void 0,
2270
+ void 0,
2271
+ {
2272
+ reuseHash: !0,
2273
+ reuseOperationResultingState: u,
2274
+ operationResultingStateParser: f
2275
+ }
2276
+ );
2277
+ g = b[c];
2278
+ }
2279
+ return {
2280
+ ...i,
2281
+ state: {
2282
+ ...i.state,
2283
+ [c]: g
2284
+ },
2285
+ operations: Lt({
2286
+ ...i.operations
2287
+ })
2288
+ };
2289
+ }
2290
+ function Me(i, r, o, p, u = {}) {
2291
+ const {
2292
+ skip: f,
2293
+ ignoreSkipOperations: c = !1,
2294
+ reuseHash: s = !1,
2295
+ reuseOperationResultingState: h = !1,
2296
+ operationResultingStateParser: g
2297
+ } = u, y = { ...r }, b = f || 0;
2298
+ let F = { ...i };
2299
+ const j = !c && (b > 0 || "index" in y && y.skip > 0);
2300
+ return ne(y) && (F = pr(F, y, o)), F = sr(F, y, b), j && (F = cr(
2301
+ F,
2302
+ y,
2303
+ o,
2304
+ b,
2305
+ h,
2306
+ g
2307
+ )), F = Ot(F, ($) => {
2308
+ try {
2309
+ const q = o(
2310
+ $.state,
2311
+ y,
2312
+ p
2313
+ );
2314
+ if (q)
2315
+ return Bt({
2316
+ ...F,
2317
+ // clipboard: [...clipboardValue],
2318
+ state: q
2319
+ });
2320
+ } catch (q) {
2321
+ const Z = F.operations[y.scope].length - 1;
2322
+ $.operations[y.scope][Z].error = q.message, $.operations[y.scope][Z].skip = 0, j && ($.state = Bt({ ...i.state }), $.operations = Bt({
2323
+ ...i.operations,
2324
+ [y.scope]: [
2325
+ ...i.operations[y.scope],
2326
+ {
2327
+ ...$.operations[y.scope][Z]
2328
+ }
2329
+ ]
2330
+ }));
2331
+ }
2332
+ }), Ot(F, ($) => {
2333
+ if ([wt, Et, It].includes(y.type))
2334
+ return $;
2335
+ const q = y.scope || "global", Z = s && Object.prototype.hasOwnProperty.call(y, "hash") ? y.hash : Qt($, q);
2336
+ $.operations[q][$.operations[q].length - 1].hash = Z, !ne(y) && y.attachments && y.attachments.forEach((w) => {
2337
+ const { hash: E, ...v } = w;
2338
+ $.attachments[E] = {
2339
+ ...v
2340
+ };
2341
+ });
2342
+ });
2343
+ }
2344
+ function Sr(i) {
2345
+ return i.type === pi && i.skip !== void 0 && i.skip > 0 && i.hash !== void 0;
2346
+ }
2347
+ function _r(i) {
2348
+ return [wt, Et].includes(i.type);
2349
+ }
2350
+ function ne(i) {
2351
+ return [we, wt, Et, It, Ee].includes(i.type);
2352
+ }
2353
+ function dt(i, r, o, p, u = "global") {
2354
+ if (!i)
2355
+ throw new Error("Empty action type");
2356
+ if (typeof i != "string")
2357
+ throw new Error(`Invalid action type: ${JSON.stringify(i)}`);
2358
+ const f = { type: i, input: r, scope: u };
2359
+ o && (f.attachments = o);
2360
+ try {
2361
+ p == null || p().parse(f.input);
2362
+ } catch (c) {
2363
+ throw new Error(`Invalid action input: ${c}`);
2364
+ }
2365
+ return f;
2366
+ }
2367
+ function lr(i, r = Me) {
2368
+ return (o, p, u, f) => r(o, p, i, u, f);
2369
+ }
2370
+ const ur = (i, r) => ({
2371
+ name: "",
2372
+ documentType: "",
2373
+ revision: {
2374
+ global: 0,
2375
+ local: 0
2376
+ },
2377
+ created: (/* @__PURE__ */ new Date()).toISOString(),
2378
+ lastModified: (/* @__PURE__ */ new Date()).toISOString(),
2379
+ attachments: {},
2380
+ ...i,
2381
+ state: (r == null ? void 0 : r(i == null ? void 0 : i.state)) ?? (i == null ? void 0 : i.state) ?? { global: {}, local: {} }
2382
+ }), fr = (i, r) => {
2383
+ const o = ur(
2384
+ i,
2385
+ r
2386
+ );
2387
+ return {
2388
+ ...o,
2389
+ initialState: o,
2390
+ operations: { global: [], local: [] },
2391
+ clipboard: []
2392
+ };
2393
+ }, Qt = (i, r = "global") => kt(xt(i.state[r] || "")), Ar = (i, r = 1e3) => {
2394
+ const o = Math.random() * r;
2395
+ return kt(`${(i ?? /* @__PURE__ */ new Date()).toISOString()}${o}`);
2396
+ };
2397
+ function Ft(i) {
2398
+ return Ke(Ge(i, !0));
2399
+ }
2400
+ function Fr(i, r) {
2401
+ const o = [...i];
2402
+ let p = r || 0, u = o.length > 0 ? o[o.length - 1].index : 0;
2403
+ const f = [];
2404
+ for (const c of o.reverse()) {
2405
+ if (p > 0) {
2406
+ const g = u - c.index;
2407
+ p -= g;
2408
+ }
2409
+ if (p < 0)
2410
+ throw new Error("Invalid operation index, missing operations");
2411
+ const s = {
2412
+ ignore: p > 0,
2413
+ operation: c
2414
+ }, h = c.skip > 0 ? c.skip + 1 : 0;
2415
+ if (h > 0 && h > p) {
2416
+ const g = h - p;
2417
+ p = p + g;
2418
+ }
2419
+ u = c.index, f.push(s);
2420
+ }
2421
+ return f.reverse();
2422
+ }
2423
+ function Br(i, r, o) {
2424
+ const p = i.slice().sort((s, h) => s.skip - h.skip).sort((s, h) => s.index - h.index);
2425
+ let u = o, f = 0, c = r;
2426
+ for (const s of p.reverse()) {
2427
+ const h = c - s.index;
2428
+ if (u = u - h, u > -1)
2429
+ f++, c = s.index;
2430
+ else
2431
+ break;
2432
+ }
2433
+ return f;
2434
+ }
2435
+ function Or(i) {
2436
+ return Object.values(i).flatMap((r) => r).sort(
2437
+ (r, o) => new Date(r.timestamp).getTime() - new Date(o.timestamp).getTime()
2438
+ );
2439
+ }
2440
+ function Ir(i) {
2441
+ return Object.values(i).flatMap((r) => r).sort(
2442
+ (r, o) => new Date(r.operation.timestamp).getTime() - new Date(o.operation.timestamp).getTime()
2443
+ );
2444
+ }
2445
+ function Pt(i, r, o, p, u, f = Me, c = {}, s) {
2446
+ const h = lr(o, f);
2447
+ return Re(
2448
+ i,
2449
+ r,
2450
+ h,
2451
+ p,
2452
+ u,
2453
+ c,
2454
+ s
2455
+ );
2456
+ }
2457
+ function Re(i, r, o, p, u, f = {}, c) {
2458
+ const {
2459
+ checkHashes: s = !0,
2460
+ reuseOperationResultingState: h,
2461
+ operationResultingStateParser: g = Le
2462
+ } = c || {};
2463
+ let y = i;
2464
+ const b = [], F = {
2465
+ global: [],
2466
+ local: []
2467
+ };
2468
+ if (h)
2469
+ for (const [w, E] of Object.entries(r)) {
2470
+ const v = E.findLastIndex(
2471
+ (H) => !!H.resultingState
2472
+ );
2473
+ if (v < 0) {
2474
+ b.push(...E);
2475
+ continue;
2476
+ }
2477
+ const R = E[v];
2478
+ try {
2479
+ const H = g(
2480
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion, @typescript-eslint/no-unnecessary-type-assertion
2481
+ R.resultingState
2482
+ );
2483
+ y = {
2484
+ ...y,
2485
+ state: {
2486
+ ...y.state,
2487
+ // TODO how to deal with attachments?
2488
+ [w]: H
2489
+ }
2490
+ }, F[w].push(
2491
+ ...E.slice(0, v + 1)
2492
+ ), b.push(...E.slice(v + 1));
2493
+ } catch {
2494
+ b.push(...E);
2495
+ }
2496
+ }
2497
+ else
2498
+ b.push(...Object.values(r).flat());
2499
+ const j = fr(y);
2500
+ j.initialState = i, j.operations = F;
2501
+ const $ = b.reduce((w, E) => o(w, E, p, {
2502
+ skip: E.skip,
2503
+ ignoreSkipOperations: !0,
2504
+ reuseHash: !s
2505
+ }), j);
2506
+ if (!s)
2507
+ for (const w of Object.keys($.state))
2508
+ for (let E = b.length - 1; E >= 0; E--) {
2509
+ const v = b[E];
2510
+ if (v.scope === w) {
2511
+ if (v.hash !== Qt($, w))
2512
+ throw new Error(`Hash mismatch for scope ${w}`);
2513
+ break;
2514
+ }
2515
+ }
2516
+ const q = Object.keys(
2517
+ $.operations
2518
+ ).reduce(
2519
+ (w, E) => {
2520
+ const v = E;
2521
+ return {
2522
+ ...w,
2523
+ [v]: [
2524
+ ...$.operations[v].map((R, H) => {
2525
+ var W;
2526
+ return {
2527
+ ...R,
2528
+ timestamp: ((W = r[v][H]) == null ? void 0 : W.timestamp) ?? R.timestamp
2529
+ };
2530
+ })
2531
+ ]
2532
+ };
2533
+ },
2534
+ { global: [], local: [] }
2535
+ ), Z = Object.values(q).reduce((w, E) => {
2536
+ const v = E[E.length - 1];
2537
+ return (v == null ? void 0 : v.timestamp) > w && (w = v.timestamp), w;
2538
+ }, i.lastModified);
2539
+ return { ...$, operations: q, lastModified: Z };
2540
+ }
2541
+ function jr(i, r) {
2542
+ return xt(i) === xt(r);
2543
+ }
2544
+ function Le(i) {
2545
+ const r = typeof i;
2546
+ if (r === "string")
2547
+ return JSON.parse(i);
2548
+ if (r === "object")
2549
+ return i;
2550
+ throw new Error(`Providing resulting state is of type: ${r}`);
2551
+ }
2552
+ const Pe = (i) => dt(
2553
+ "SET_NAME",
2554
+ i,
2555
+ void 0,
2556
+ Ht,
2557
+ void 0
2558
+ ), ze = (i = 1, r = "global") => dt(
2559
+ "UNDO",
2560
+ i,
2561
+ void 0,
2562
+ Wt,
2563
+ r
2564
+ ), qe = (i = 1, r = "global") => dt(
2565
+ "REDO",
2566
+ i,
2567
+ void 0,
2568
+ Jt,
2569
+ r
2570
+ ), Je = (i, r, o = "global") => dt(
2571
+ "PRUNE",
2572
+ { start: i, end: r },
2573
+ void 0,
2574
+ qt,
2575
+ o
2576
+ ), te = (i, r) => dt(
2577
+ "LOAD_STATE",
2578
+ { state: i, operations: r },
2579
+ void 0,
2580
+ zt
2581
+ ), He = (i = "global") => dt("NOOP", {}, void 0, void 0, i), Tr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2582
+ __proto__: null,
2583
+ loadState: te,
2584
+ noop: He,
2585
+ prune: Je,
2586
+ redo: qe,
2587
+ setName: Pe,
2588
+ undo: ze
2589
+ }, Symbol.toStringTag, { value: "Module" }));
2590
+ class kr {
2591
+ /**
2592
+ * Constructs a BaseDocument instance with an initial state.
2593
+ * @param reducer - The reducer function that updates the state.
2594
+ * @param document - The initial state of the document.
2595
+ */
2596
+ constructor(r, o, p) {
2597
+ At(this, "_document");
2598
+ At(this, "_reducer");
2599
+ At(this, "_signalDispatch");
2600
+ this._reducer = r, this._document = o, this._signalDispatch = p;
2601
+ }
2602
+ /**
2603
+ * Dispatches an action to update the state of the document.
2604
+ * @param action - The action to dispatch.
2605
+ * @returns The Document instance.
2606
+ */
2607
+ dispatch(r, o) {
2608
+ return this._document = this._reducer(
2609
+ this._document,
2610
+ r,
2611
+ this._signalDispatch,
2612
+ o
2613
+ ), this;
2614
+ }
2615
+ /**
2616
+ * Saves the state of the document to a file.
2617
+ * @param path - The file path where the state should be saved.
2618
+ * @param extension - The file extension to use when saving the state.
2619
+ * @returns The file path where the state was saved.
2620
+ */
2621
+ saveToFile(r, o, p) {
2622
+ return Wi(this._document, r, o, p);
2623
+ }
2624
+ /**
2625
+ * Loads the state of the document from a file.
2626
+ * @param path - The file path where the state is stored.
2627
+ */
2628
+ async loadFromFile(r) {
2629
+ this._document = await re(r, this._reducer);
2630
+ }
2631
+ /**
2632
+ * Loads the state of the document from a file and returns it.
2633
+ * @param path - The file path where the state is stored.
2634
+ * @param reducer - The reducer function that updates the state.
2635
+ * @returns The state of the document.
2636
+ */
2637
+ static async stateFromFile(r, o) {
2638
+ return await re(r, o);
2639
+ }
2640
+ /**
2641
+ * Gets the current state of the document.
2642
+ */
2643
+ get state() {
2644
+ return Ft(this._document.state);
2645
+ }
2646
+ /**
2647
+ * Gets the list of operations performed on the document.
2648
+ */
2649
+ get operations() {
2650
+ return Ft(this._document.operations);
2651
+ }
2652
+ /**
2653
+ * Gets the name of the document.
2654
+ */
2655
+ get name() {
2656
+ return this._document.name;
2657
+ }
2658
+ /**
2659
+ * Gets the type of document.
2660
+ */
2661
+ get documentType() {
2662
+ return this._document.documentType;
2663
+ }
2664
+ /**
2665
+ * Gets the timestamp of the date the document was created.
2666
+ */
2667
+ get created() {
2668
+ return this._document.created;
2669
+ }
2670
+ /**
2671
+ * Gets the timestamp of the date the document was last modified.
2672
+ */
2673
+ get lastModified() {
2674
+ return this._document.lastModified;
2675
+ }
2676
+ /**
2677
+ * Gets the global revision number of the document.
2678
+ */
2679
+ get revision() {
2680
+ return this._document.revision.global;
2681
+ }
2682
+ getRevision(r) {
2683
+ return this._document.revision[r];
2684
+ }
2685
+ /**
2686
+ * Gets the initial state of the document.
2687
+ */
2688
+ get initialState() {
2689
+ return Ft(this._document.initialState);
2690
+ }
2691
+ /**
2692
+ * Returns the current document as an object
2693
+ */
2694
+ toDocument() {
2695
+ return Ft(this._document);
2696
+ }
2697
+ /**
2698
+ * Gets the attachment associated with the given key.
2699
+ * @param attachment - The key of the attachment to retrieve.
2700
+ */
2701
+ getAttachment(r) {
2702
+ return this._document.attachments[r];
2703
+ }
2704
+ /**
2705
+ * Sets the name of the document.
2706
+ * @param name - The new name of the document.
2707
+ */
2708
+ setName(r) {
2709
+ return this.dispatch(Pe(r)), this;
2710
+ }
2711
+ /**
2712
+ * Reverts a number of actions from the document.
2713
+ * @param count - The number of actions to revert.
2714
+ */
2715
+ undo(r) {
2716
+ return this.dispatch(ze(r)), this;
2717
+ }
2718
+ /**
2719
+ * Reapplies a number of actions to the document.
2720
+ * @param count - The number of actions to reapply.
2721
+ */
2722
+ redo(r) {
2723
+ return this.dispatch(qe(r)), this;
2724
+ }
2725
+ /**
2726
+ * Removes a range of operations from the document.
2727
+ * @param start - The starting index of the range to remove.
2728
+ * @param end - The ending index of the range to remove.
2729
+ */
2730
+ prune(r, o) {
2731
+ return this.dispatch(Je(r, o)), this;
2732
+ }
2733
+ /**
2734
+ * Loads a document state and a set of operations.
2735
+ * @param state - The state to load.
2736
+ * @param operations - The operations to apply to the document.
2737
+ */
2738
+ loadState(r, o) {
2739
+ return this.dispatch(te(r, o)), this;
2740
+ }
2741
+ }
2742
+ function Dr(i, r) {
2743
+ r.forEach((o) => {
2744
+ Object.getOwnPropertyNames(o.prototype).forEach((p) => {
2745
+ Object.defineProperty(
2746
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
2747
+ i.prototype,
2748
+ p,
2749
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-unsafe-member-access
2750
+ Object.getOwnPropertyDescriptor(o.prototype, p) || /* @__PURE__ */ Object.create(null)
2751
+ );
2752
+ });
2753
+ });
2754
+ }
2755
+ export {
2756
+ Ir as A,
2757
+ kr as B,
2758
+ Or as C,
2759
+ Hi as D,
2760
+ Me as E,
2761
+ vr as F,
2762
+ gr as G,
2763
+ ur as a,
2764
+ fr as b,
2765
+ lr as c,
2766
+ yr as d,
2767
+ Xi as e,
2768
+ dt as f,
2769
+ Dr as g,
2770
+ Tr as h,
2771
+ ne as i,
2772
+ Br as j,
2773
+ je as k,
2774
+ re as l,
2775
+ br as m,
2776
+ Er as n,
2777
+ wr as o,
2778
+ Qt as p,
2779
+ Ar as q,
2780
+ Sr as r,
2781
+ Wi as s,
2782
+ jr as t,
2783
+ _r as u,
2784
+ Fr as v,
2785
+ Le as w,
2786
+ Ft as x,
2787
+ Re as y,
2788
+ Pt as z
2789
+ };