sanity 3.74.2-corel.18 → 3.74.2-coreui.20

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 (121) hide show
  1. package/lib/_chunks-cjs/runtime.js +8 -4
  2. package/lib/_chunks-cjs/runtime.js.map +1 -1
  3. package/lib/_chunks-cjs/version.js +1 -1
  4. package/lib/_chunks-es/version.mjs +1 -1
  5. package/lib/_legacy/version.esm.js +1 -1
  6. package/package.json +10 -11
  7. package/src/_internal/cli/server/renderDocument.tsx +12 -0
  8. package/src/_internal/cli/server/runtime.ts +13 -10
  9. package/src/_internal/cli/server/vite/plugin-sanity-build-entries.ts +14 -12
  10. package/dist/BroadcastDisplayedDocument-BHYI8o6u.mjs +0 -19
  11. package/dist/BroadcastDisplayedDocument-BHYI8o6u.mjs.map +0 -1
  12. package/dist/DisplayedDocumentBroadcaster-DfHPxc7C.mjs +0 -58
  13. package/dist/DisplayedDocumentBroadcaster-DfHPxc7C.mjs.map +0 -1
  14. package/dist/LiveQueries-sYvgBCKh.mjs +0 -267
  15. package/dist/LiveQueries-sYvgBCKh.mjs.map +0 -1
  16. package/dist/LoaderQueries-AQneabiG.mjs +0 -581
  17. package/dist/LoaderQueries-AQneabiG.mjs.map +0 -1
  18. package/dist/Observable-wwWYwtkh.mjs +0 -551
  19. package/dist/Observable-wwWYwtkh.mjs.map +0 -1
  20. package/dist/PostMessageDocuments-DLMdHDk6.mjs +0 -75
  21. package/dist/PostMessageDocuments-DLMdHDk6.mjs.map +0 -1
  22. package/dist/PostMessageFeatures-CazMQz3f.mjs +0 -21
  23. package/dist/PostMessageFeatures-CazMQz3f.mjs.map +0 -1
  24. package/dist/PostMessagePerspective-m4uZ6sI5.mjs +0 -23
  25. package/dist/PostMessagePerspective-m4uZ6sI5.mjs.map +0 -1
  26. package/dist/PostMessagePreviewSnapshots-Dr7CEAiM.mjs +0 -66
  27. package/dist/PostMessagePreviewSnapshots-Dr7CEAiM.mjs.map +0 -1
  28. package/dist/PostMessageRefreshMutations-CWb9UqSy.mjs +0 -66
  29. package/dist/PostMessageRefreshMutations-CWb9UqSy.mjs.map +0 -1
  30. package/dist/PostMessageSchema-BVFyZOH1.mjs +0 -514
  31. package/dist/PostMessageSchema-BVFyZOH1.mjs.map +0 -1
  32. package/dist/PostMessageTelemetry-CSluBvcC.mjs +0 -51
  33. package/dist/PostMessageTelemetry-CSluBvcC.mjs.map +0 -1
  34. package/dist/PresentationToolGrantsCheck-4zo266wj.mjs +0 -3919
  35. package/dist/PresentationToolGrantsCheck-4zo266wj.mjs.map +0 -1
  36. package/dist/QRCodeSVG-D6VfGEbM.mjs +0 -648
  37. package/dist/QRCodeSVG-D6VfGEbM.mjs.map +0 -1
  38. package/dist/SourceContext-T8zcpOpp.mjs +0 -33
  39. package/dist/SourceContext-T8zcpOpp.mjs.map +0 -1
  40. package/dist/StructureToolProvider-BMLps71e.mjs +0 -13815
  41. package/dist/StructureToolProvider-BMLps71e.mjs.map +0 -1
  42. package/dist/Subject-DP0DoUP_.mjs +0 -108
  43. package/dist/Subject-DP0DoUP_.mjs.map +0 -1
  44. package/dist/ViteDevServerStopped-DdibXNvO.mjs +0 -44
  45. package/dist/ViteDevServerStopped-DdibXNvO.mjs.map +0 -1
  46. package/dist/_createContext.mjs +0 -36
  47. package/dist/_createContext.mjs.map +0 -1
  48. package/dist/_singletons.mjs +0 -195
  49. package/dist/_singletons.mjs.map +0 -1
  50. package/dist/browser-BzDH2pyp.mjs +0 -455
  51. package/dist/browser-BzDH2pyp.mjs.map +0 -1
  52. package/dist/browser-DWCoWoiH.mjs +0 -3988
  53. package/dist/browser-DWCoWoiH.mjs.map +0 -1
  54. package/dist/debounceTime-BeoKrERE.mjs +0 -130
  55. package/dist/debounceTime-BeoKrERE.mjs.map +0 -1
  56. package/dist/desk.mjs +0 -52
  57. package/dist/desk.mjs.map +0 -1
  58. package/dist/first-Di4GZDIY.mjs +0 -42
  59. package/dist/first-Di4GZDIY.mjs.map +0 -1
  60. package/dist/get-psIoeD-z.mjs +0 -327
  61. package/dist/get-psIoeD-z.mjs.map +0 -1
  62. package/dist/hooks-4sgcd521.mjs +0 -90
  63. package/dist/hooks-4sgcd521.mjs.map +0 -1
  64. package/dist/index-9PJcXUTv.mjs +0 -87
  65. package/dist/index-9PJcXUTv.mjs.map +0 -1
  66. package/dist/index-ByFK-IwD.mjs +0 -528
  67. package/dist/index-ByFK-IwD.mjs.map +0 -1
  68. package/dist/index-C2OAo3To.mjs +0 -7079
  69. package/dist/index-C2OAo3To.mjs.map +0 -1
  70. package/dist/index-C3OvVLVP.mjs +0 -4636
  71. package/dist/index-C3OvVLVP.mjs.map +0 -1
  72. package/dist/index-DBPVDKJN.mjs +0 -1198
  73. package/dist/index-DBPVDKJN.mjs.map +0 -1
  74. package/dist/index-DkvUNBNf.mjs +0 -73
  75. package/dist/index-DkvUNBNf.mjs.map +0 -1
  76. package/dist/index-Sp9w8lMg.mjs +0 -118
  77. package/dist/index-Sp9w8lMg.mjs.map +0 -1
  78. package/dist/index.browser-BxT2qp9y.mjs +0 -104
  79. package/dist/index.browser-BxT2qp9y.mjs.map +0 -1
  80. package/dist/index.mjs +0 -129019
  81. package/dist/index.mjs.map +0 -1
  82. package/dist/isObservable-ByOheaM8.mjs +0 -8
  83. package/dist/isObservable-ByOheaM8.mjs.map +0 -1
  84. package/dist/never-ChKjLemk.mjs +0 -6
  85. package/dist/never-ChKjLemk.mjs.map +0 -1
  86. package/dist/pane-C4tskUPg.mjs +0 -5
  87. package/dist/pane-C4tskUPg.mjs.map +0 -1
  88. package/dist/pane-Dhx8FvsK.mjs +0 -5
  89. package/dist/pane-Dhx8FvsK.mjs.map +0 -1
  90. package/dist/presentation-CSS9GR9X.mjs +0 -984
  91. package/dist/presentation-CSS9GR9X.mjs.map +0 -1
  92. package/dist/presentation.mjs +0 -14
  93. package/dist/presentation.mjs.map +0 -1
  94. package/dist/resources-4cbq8YlR.mjs +0 -124
  95. package/dist/resources-4cbq8YlR.mjs.map +0 -1
  96. package/dist/resources-BVETz6Ur.mjs +0 -57
  97. package/dist/resources-BVETz6Ur.mjs.map +0 -1
  98. package/dist/resources-D4AaU75F.mjs +0 -434
  99. package/dist/resources-D4AaU75F.mjs.map +0 -1
  100. package/dist/resources-Dc-6ZcPg.mjs +0 -157
  101. package/dist/resources-Dc-6ZcPg.mjs.map +0 -1
  102. package/dist/resources-DgU0prBM.mjs +0 -179
  103. package/dist/resources-DgU0prBM.mjs.map +0 -1
  104. package/dist/resources-MD8RsYhH.mjs +0 -288
  105. package/dist/resources-MD8RsYhH.mjs.map +0 -1
  106. package/dist/router.mjs +0 -689
  107. package/dist/router.mjs.map +0 -1
  108. package/dist/share-bcOpIdQz.mjs +0 -71
  109. package/dist/share-bcOpIdQz.mjs.map +0 -1
  110. package/dist/shareReplay-Dj1O6fKV.mjs +0 -43
  111. package/dist/shareReplay-Dj1O6fKV.mjs.map +0 -1
  112. package/dist/stegaEncodeSourceMap-DXdUZQye.mjs +0 -342
  113. package/dist/stegaEncodeSourceMap-DXdUZQye.mjs.map +0 -1
  114. package/dist/structure.mjs +0 -56
  115. package/dist/structure.mjs.map +0 -1
  116. package/dist/takeUntil-CgZP1bze.mjs +0 -111
  117. package/dist/takeUntil-CgZP1bze.mjs.map +0 -1
  118. package/dist/v4-C78sE4Gb.mjs +0 -27082
  119. package/dist/v4-C78sE4Gb.mjs.map +0 -1
  120. package/dist/version-D7UZEoYI.mjs +0 -5
  121. package/dist/version-D7UZEoYI.mjs.map +0 -1
@@ -1,528 +0,0 @@
1
- var k = Object.defineProperty;
2
- var O = (i, t, e) => t in i ? k(i, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : i[t] = e;
3
- var h = (i, t, e) => O(i, typeof t != "symbol" ? t + "" : t, e);
4
- const w = [
5
- "Value",
6
- "Copy",
7
- "Blank",
8
- "ReturnIntoArray",
9
- "ReturnIntoObject",
10
- "ReturnIntoObjectSameKey",
11
- "PushField",
12
- "PushElement",
13
- "PushParent",
14
- "Pop",
15
- "PushFieldCopy",
16
- "PushFieldBlank",
17
- "PushElementCopy",
18
- "PushElementBlank",
19
- "ReturnIntoObjectPop",
20
- "ReturnIntoObjectSameKeyPop",
21
- "ReturnIntoArrayPop",
22
- "ObjectSetFieldValue",
23
- "ObjectCopyField",
24
- "ObjectDeleteField",
25
- "ArrayAppendValue",
26
- "ArrayAppendSlice",
27
- "StringAppendString",
28
- "StringAppendSlice"
29
- ];
30
- class A {
31
- constructor(t, e, s) {
32
- h(this, "model");
33
- h(this, "root");
34
- h(this, "patch");
35
- h(this, "i");
36
- h(this, "inputStack");
37
- h(this, "outputStack");
38
- this.model = t, this.root = e, this.patch = s, this.i = 0, this.inputStack = [], this.outputStack = [];
39
- }
40
- read() {
41
- return this.patch[this.i++];
42
- }
43
- process() {
44
- for (this.inputStack.push({ value: this.root }), this.outputStack.push({ value: this.root }); this.i < this.patch.length; ) {
45
- let e = this.read(), s = w[e];
46
- if (!s)
47
- throw new Error(`Unknown opcode: ${e}`);
48
- let r = `process${s}`;
49
- this[r].apply(this);
50
- }
51
- let t = this.outputStack.pop();
52
- return this.finalizeOutput(t);
53
- }
54
- inputEntry() {
55
- return this.inputStack[this.inputStack.length - 1];
56
- }
57
- inputKey(t, e) {
58
- return t.keys || (t.keys = this.model.objectGetKeys(t.value).sort()), t.keys[e];
59
- }
60
- outputEntry() {
61
- return this.outputStack[this.outputStack.length - 1];
62
- }
63
- outputArray() {
64
- let t = this.outputEntry();
65
- return t.writeValue || (t.writeValue = this.model.copyArray(t.value)), t.writeValue;
66
- }
67
- outputObject() {
68
- let t = this.outputEntry();
69
- return t.writeValue || (t.writeValue = this.model.copyObject(t.value)), t.writeValue;
70
- }
71
- outputString() {
72
- let t = this.outputEntry();
73
- return t.writeValue || (t.writeValue = this.model.copyString(t.value)), t.writeValue;
74
- }
75
- finalizeOutput(t) {
76
- return t.writeValue ? this.model.finalize(t.writeValue) : t.value;
77
- }
78
- // Processors:
79
- processValue() {
80
- let t = this.model.wrap(this.read());
81
- this.outputStack.push({ value: t });
82
- }
83
- processCopy() {
84
- let t = this.inputEntry();
85
- this.outputStack.push({ value: t.value });
86
- }
87
- processBlank() {
88
- this.outputStack.push({ value: null });
89
- }
90
- processReturnIntoArray() {
91
- let t = this.outputStack.pop(), e = this.finalizeOutput(t), s = this.outputArray();
92
- this.model.arrayAppendValue(s, e);
93
- }
94
- processReturnIntoObject() {
95
- let t = this.read(), e = this.outputStack.pop(), s = this.finalizeOutput(e);
96
- s = this.model.markChanged(s);
97
- let r = this.outputObject();
98
- this.model.objectSetField(r, t, s);
99
- }
100
- processReturnIntoObjectSameKey() {
101
- let t = this.inputEntry(), e = this.outputStack.pop(), s = this.finalizeOutput(e), r = this.outputObject();
102
- this.model.objectSetField(r, t.key, s);
103
- }
104
- processPushField() {
105
- let t = this.read(), e = this.inputEntry(), s = this.inputKey(e, t), r = this.model.objectGetField(e.value, s);
106
- this.inputStack.push({ value: r, key: s });
107
- }
108
- processPushElement() {
109
- let t = this.read(), e = this.inputEntry(), s = this.model.arrayGetElement(e.value, t);
110
- this.inputStack.push({ value: s });
111
- }
112
- processPop() {
113
- this.inputStack.pop();
114
- }
115
- processPushFieldCopy() {
116
- this.processPushField(), this.processCopy();
117
- }
118
- processPushFieldBlank() {
119
- this.processPushField(), this.processBlank();
120
- }
121
- processPushElementCopy() {
122
- this.processPushElement(), this.processCopy();
123
- }
124
- processPushElementBlank() {
125
- this.processPushElement(), this.processBlank();
126
- }
127
- processReturnIntoObjectPop() {
128
- this.processReturnIntoObject(), this.processPop();
129
- }
130
- processReturnIntoObjectSameKeyPop() {
131
- this.processReturnIntoObjectSameKey(), this.processPop();
132
- }
133
- processReturnIntoArrayPop() {
134
- this.processReturnIntoArray(), this.processPop();
135
- }
136
- processObjectSetFieldValue() {
137
- this.processValue(), this.processReturnIntoObject();
138
- }
139
- processObjectCopyField() {
140
- this.processPushField(), this.processCopy(), this.processReturnIntoObjectSameKey(), this.processPop();
141
- }
142
- processObjectDeleteField() {
143
- let t = this.read(), e = this.inputEntry(), s = this.inputKey(e, t), r = this.outputObject();
144
- this.model.objectDeleteField(r, s);
145
- }
146
- processArrayAppendValue() {
147
- let t = this.model.wrap(this.read()), e = this.outputArray();
148
- this.model.arrayAppendValue(e, t);
149
- }
150
- processArrayAppendSlice() {
151
- let t = this.read(), e = this.read(), s = this.outputArray(), r = this.inputEntry().value;
152
- this.model.arrayAppendSlice(s, r, t, e);
153
- }
154
- processStringAppendString() {
155
- let t = this.model.wrap(this.read()), e = this.outputString();
156
- this.model.stringAppendValue(e, t);
157
- }
158
- processStringAppendSlice() {
159
- let t = this.read(), e = this.read(), s = this.outputString(), r = this.inputEntry().value;
160
- this.model.stringAppendSlice(s, r, t, e);
161
- }
162
- }
163
- function m(i) {
164
- return i >> 16 ? 4 : i >> 11 ? 3 : i >> 7 ? 2 : 1;
165
- }
166
- function b(i) {
167
- let t = 0;
168
- for (let e = 0; e < i.length; e++) {
169
- let s = i.codePointAt(e), r = m(s);
170
- r == 4 && e++, t += r;
171
- }
172
- return t;
173
- }
174
- function P(i, t, e = 0) {
175
- let s = e, r = 0;
176
- for (r = e; s < t; r++) {
177
- let n = i.codePointAt(r), l = m(n);
178
- l === 4 && r++, s += l;
179
- }
180
- return r;
181
- }
182
- function M(i, t) {
183
- let e = Math.min(i.length, t.length), s = 0;
184
- for (let r = 0; r < e; ) {
185
- let n = i.codePointAt(r), l = t.codePointAt(r);
186
- if (n !== l)
187
- return s;
188
- let a = m(n);
189
- s += a, r += a === 4 ? 2 : 1;
190
- }
191
- return s;
192
- }
193
- function E(i, t, e = 0) {
194
- let s = Math.min(i.length, t.length) - e, r = 0;
195
- for (let n = 0; n < s; ) {
196
- let l = i.codePointAt(i.length - 1 - n), a = t.codePointAt(t.length - 1 - n);
197
- if (l !== a)
198
- return r;
199
- let o = m(l);
200
- r += o, n += o === 4 ? 2 : 1;
201
- }
202
- return r;
203
- }
204
- class S {
205
- constructor(t) {
206
- h(this, "meta");
207
- this.meta = t;
208
- }
209
- wrap(t) {
210
- return this.wrapWithMeta(t, this.meta, this.meta);
211
- }
212
- wrapWithMeta(t, e, s = this.meta) {
213
- return { data: t, startMeta: e, endMeta: s };
214
- }
215
- asObject(t) {
216
- if (!t.content) {
217
- let e = {};
218
- for (let [s, r] of Object.entries(t.data))
219
- e[s] = this.wrapWithMeta(r, t.startMeta);
220
- t.content = { type: "object", fields: e };
221
- }
222
- return t.content;
223
- }
224
- asArray(t) {
225
- if (!t.content) {
226
- let e = t.data.map(
227
- (r) => this.wrapWithMeta(r, t.startMeta)
228
- ), s = e.map(() => this.meta);
229
- t.content = { type: "array", elements: e, metas: s };
230
- }
231
- return t.content;
232
- }
233
- asString(t) {
234
- if (!t.content) {
235
- let e = t.data, s = {
236
- value: e,
237
- utf8size: b(e),
238
- uses: [],
239
- startMeta: t.startMeta,
240
- endMeta: t.endMeta
241
- };
242
- t.content = this.stringFromParts([s]);
243
- }
244
- return t.content;
245
- }
246
- stringFromParts(t) {
247
- let e = {
248
- type: "string",
249
- parts: t
250
- };
251
- for (let s of t)
252
- s.uses.push(e);
253
- return e;
254
- }
255
- objectGetKeys(t) {
256
- return t.content ? Object.keys(t.content.fields) : Object.keys(t.data);
257
- }
258
- objectGetField(t, e) {
259
- return this.asObject(t).fields[e];
260
- }
261
- arrayGetElement(t, e) {
262
- return this.asArray(t).elements[e];
263
- }
264
- finalize(t) {
265
- return this.updateEndMeta(t), { content: t, startMeta: this.meta, endMeta: this.meta };
266
- }
267
- markChanged(t) {
268
- return this.wrap(c(t));
269
- }
270
- updateEndMeta(t) {
271
- if (t.type == "string")
272
- for (let e of t.parts)
273
- e.endMeta = this.meta;
274
- else if (t.type === "array")
275
- for (let e of t.elements)
276
- e.content && e.endMeta !== this.meta && this.updateEndMeta(e.content), e.endMeta = this.meta;
277
- else
278
- for (let e of Object.values(t.fields))
279
- e.content && e.endMeta !== this.meta && this.updateEndMeta(e.content), e.endMeta = this.meta;
280
- }
281
- copyString(t) {
282
- if (t) {
283
- let e = this.asString(t);
284
- return this.stringFromParts(e.parts.slice());
285
- } else
286
- return {
287
- type: "string",
288
- parts: []
289
- };
290
- }
291
- copyObject(t) {
292
- let e = {
293
- type: "object",
294
- fields: {}
295
- };
296
- if (t) {
297
- let s = this.asObject(t);
298
- Object.assign(e.fields, s.fields);
299
- }
300
- return e;
301
- }
302
- copyArray(t) {
303
- let e = t ? this.asArray(t) : null, s = e ? e.elements : [], r = e ? e.metas : [];
304
- return {
305
- type: "array",
306
- elements: s,
307
- metas: r
308
- };
309
- }
310
- objectSetField(t, e, s) {
311
- t.fields[e] = s;
312
- }
313
- objectDeleteField(t, e) {
314
- delete t.fields[e];
315
- }
316
- arrayAppendValue(t, e) {
317
- t.elements.push(e), t.metas.push(this.meta);
318
- }
319
- arrayAppendSlice(t, e, s, r) {
320
- let n = this.asArray(e), l = n.elements.length === s;
321
- if (t.elements.push(...n.elements.slice(s, r)), l)
322
- t.metas.push(...n.metas.slice(s, r));
323
- else
324
- for (let a = s; a < r; a++)
325
- t.metas.push(this.meta);
326
- }
327
- stringAppendValue(t, e) {
328
- let s = this.asString(e);
329
- for (let r of s.parts)
330
- this.stringAppendPart(t, r);
331
- }
332
- stringAppendPart(t, e) {
333
- t.parts.push(e), e.uses.push(t);
334
- }
335
- resolveStringPart(t, e, s) {
336
- if (s === 0)
337
- return e;
338
- for (let r = e; r < t.parts.length; r++) {
339
- let n = t.parts[r];
340
- if (s === n.utf8size)
341
- return r + 1;
342
- if (s < n.utf8size)
343
- return this.splitString(n, s), r + 1;
344
- s -= n.utf8size;
345
- }
346
- throw new Error("splitting string out of bounds");
347
- }
348
- splitString(t, e) {
349
- let s, r, n = e, l = t.utf8size - n;
350
- if (t.utf8size !== t.value.length) {
351
- let o = 0;
352
- for (e = 0; o < n; e++) {
353
- let u = t.value.codePointAt(e), p = m(u);
354
- p === 4 && e++, o += p;
355
- }
356
- }
357
- s = t.value.slice(0, e), r = t.value.slice(e);
358
- let a = {
359
- value: r,
360
- utf8size: l,
361
- uses: t.uses.slice(),
362
- startMeta: t.startMeta,
363
- endMeta: t.endMeta
364
- };
365
- t.value = s, t.utf8size = n;
366
- for (let o of t.uses) {
367
- let u = o.parts.indexOf(t);
368
- if (u === -1)
369
- throw new Error("bug: mismatch between string parts and use.");
370
- o.parts.splice(u + 1, 0, a);
371
- }
372
- }
373
- stringAppendSlice(t, e, s, r) {
374
- let n = this.asString(e), l = this.resolveStringPart(n, 0, s), a = this.resolveStringPart(n, l, r - s);
375
- for (let o = l; o < a; o++) {
376
- let u = n.parts[o];
377
- this.stringAppendPart(t, u);
378
- }
379
- }
380
- }
381
- function F(i, t) {
382
- return { data: i, startMeta: t, endMeta: t };
383
- }
384
- function c(i) {
385
- if (typeof i.data < "u")
386
- return i.data;
387
- let t, e = i.content;
388
- switch (e.type) {
389
- case "string":
390
- t = e.parts.map((s) => s.value).join("");
391
- break;
392
- case "array":
393
- t = e.elements.map((s) => c(s));
394
- break;
395
- case "object": {
396
- t = {};
397
- for (let [s, r] of Object.entries(e.fields))
398
- t[s] = c(r);
399
- }
400
- }
401
- return i.data = t, t;
402
- }
403
- function g(i) {
404
- return i.content ? i.content.type : Array.isArray(i.data) ? "array" : i.data === null ? "null" : typeof i.data;
405
- }
406
- function j(i, t) {
407
- let e = g(i), s = g(t);
408
- if (e !== s)
409
- return t;
410
- let r = new S(i.endMeta), n = new S(t.endMeta);
411
- switch (e) {
412
- case "object": {
413
- let l = r.asObject(i), a = n.asObject(t), o = 0, u = Object.keys(l.fields).length, p = Object.keys(a.fields).length;
414
- for (let [d, y] of Object.entries(a.fields)) {
415
- let f = l.fields[d];
416
- f && (a.fields[d] = j(f, y), a.fields[d] === f && o++);
417
- }
418
- return u === p && u === o ? i : t;
419
- }
420
- case "array": {
421
- let l = r.asArray(i), a = n.asArray(t);
422
- if (l.elements.length !== a.elements.length)
423
- break;
424
- let o = 0;
425
- for (let u = 0; u < a.elements.length; u++)
426
- a.elements[u] = j(l.elements[u], a.elements[u]), a.elements[u] !== l.elements[u] && o++;
427
- return o === 0 ? i : t;
428
- }
429
- case "null":
430
- case "boolean":
431
- case "number": {
432
- if (c(i) === c(t))
433
- return i;
434
- break;
435
- }
436
- case "string": {
437
- let l = c(i), a = c(t);
438
- if (l === a)
439
- return i;
440
- let o = n.copyString(null), u = M(l, a), p = E(l, a, u), d = b(a), y = b(l);
441
- 0 < u && n.stringAppendSlice(o, i, 0, u), u < d - p && n.stringAppendSlice(o, t, u, d - p), y - p < y && n.stringAppendSlice(o, i, y - p, y);
442
- let f = n.finalize(o);
443
- if (c(f) !== a)
444
- throw new Error("incorrect string rebase");
445
- return f;
446
- }
447
- }
448
- return t;
449
- }
450
- function V(i, t, e) {
451
- let s = new S(e);
452
- return new A(s, i, t).process();
453
- }
454
- var R = /* @__PURE__ */ Object.freeze({
455
- __proto__: null,
456
- applyPatch: V,
457
- getType: g,
458
- rebaseValue: j,
459
- unwrap: c,
460
- wrap: F
461
- });
462
- class z {
463
- wrap(t) {
464
- return t;
465
- }
466
- finalize(t) {
467
- return Array.isArray(t) ? t : t.data;
468
- }
469
- markChanged(t) {
470
- return t;
471
- }
472
- objectGetKeys(t) {
473
- return Object.keys(t);
474
- }
475
- objectGetField(t, e) {
476
- return t[e];
477
- }
478
- arrayGetElement(t, e) {
479
- return t[e];
480
- }
481
- copyObject(t) {
482
- let e = {
483
- type: "object",
484
- data: {}
485
- };
486
- if (t !== null)
487
- for (let [s, r] of Object.entries(t))
488
- e.data[s] = r;
489
- return e;
490
- }
491
- copyArray(t) {
492
- return t === null ? [] : t.slice();
493
- }
494
- copyString(t) {
495
- return {
496
- type: "string",
497
- data: t === null ? "" : t
498
- };
499
- }
500
- objectSetField(t, e, s) {
501
- t.data[e] = s;
502
- }
503
- objectDeleteField(t, e) {
504
- delete t.data[e];
505
- }
506
- arrayAppendValue(t, e) {
507
- t.push(e);
508
- }
509
- arrayAppendSlice(t, e, s, r) {
510
- t.push(...e.slice(s, r));
511
- }
512
- stringAppendSlice(t, e, s, r) {
513
- const n = e, l = P(n, s), a = P(n, r, l);
514
- t.data += n.slice(l, a);
515
- }
516
- stringAppendValue(t, e) {
517
- t.data += e;
518
- }
519
- }
520
- function C(i, t) {
521
- let e = i;
522
- return new A(new z(), e, t).process();
523
- }
524
- export {
525
- C as a,
526
- R as i
527
- };
528
- //# sourceMappingURL=index-ByFK-IwD.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-ByFK-IwD.mjs","sources":["../../../node_modules/.pnpm/mendoza@3.0.8/node_modules/mendoza/dist/index.js"],"sourcesContent":["const OPS = [\n \"Value\",\n \"Copy\",\n \"Blank\",\n \"ReturnIntoArray\",\n \"ReturnIntoObject\",\n \"ReturnIntoObjectSameKey\",\n \"PushField\",\n \"PushElement\",\n \"PushParent\",\n \"Pop\",\n \"PushFieldCopy\",\n \"PushFieldBlank\",\n \"PushElementCopy\",\n \"PushElementBlank\",\n \"ReturnIntoObjectPop\",\n \"ReturnIntoObjectSameKeyPop\",\n \"ReturnIntoArrayPop\",\n \"ObjectSetFieldValue\",\n \"ObjectCopyField\",\n \"ObjectDeleteField\",\n \"ArrayAppendValue\",\n \"ArrayAppendSlice\",\n \"StringAppendString\",\n \"StringAppendSlice\"\n];\nclass Patcher {\n model;\n root;\n patch;\n i;\n inputStack;\n outputStack;\n constructor(model, root, patch) {\n this.model = model, this.root = root, this.patch = patch, this.i = 0, this.inputStack = [], this.outputStack = [];\n }\n read() {\n return this.patch[this.i++];\n }\n process() {\n for (this.inputStack.push({ value: this.root }), this.outputStack.push({ value: this.root }); this.i < this.patch.length; ) {\n let opcode = this.read(), op = OPS[opcode];\n if (!op)\n throw new Error(`Unknown opcode: ${opcode}`);\n let processor = `process${op}`;\n this[processor].apply(this);\n }\n let entry = this.outputStack.pop();\n return this.finalizeOutput(entry);\n }\n inputEntry() {\n return this.inputStack[this.inputStack.length - 1];\n }\n inputKey(entry, idx) {\n return entry.keys || (entry.keys = this.model.objectGetKeys(entry.value).sort()), entry.keys[idx];\n }\n outputEntry() {\n return this.outputStack[this.outputStack.length - 1];\n }\n outputArray() {\n let entry = this.outputEntry();\n return entry.writeValue || (entry.writeValue = this.model.copyArray(entry.value)), entry.writeValue;\n }\n outputObject() {\n let entry = this.outputEntry();\n return entry.writeValue || (entry.writeValue = this.model.copyObject(entry.value)), entry.writeValue;\n }\n outputString() {\n let entry = this.outputEntry();\n return entry.writeValue || (entry.writeValue = this.model.copyString(entry.value)), entry.writeValue;\n }\n finalizeOutput(entry) {\n return entry.writeValue ? this.model.finalize(entry.writeValue) : entry.value;\n }\n // Processors:\n processValue() {\n let value = this.model.wrap(this.read());\n this.outputStack.push({ value });\n }\n processCopy() {\n let input = this.inputEntry();\n this.outputStack.push({ value: input.value });\n }\n processBlank() {\n this.outputStack.push({ value: null });\n }\n processReturnIntoArray() {\n let entry = this.outputStack.pop(), result = this.finalizeOutput(entry), arr = this.outputArray();\n this.model.arrayAppendValue(arr, result);\n }\n processReturnIntoObject() {\n let key = this.read(), entry = this.outputStack.pop(), result = this.finalizeOutput(entry);\n result = this.model.markChanged(result);\n let obj = this.outputObject();\n this.model.objectSetField(obj, key, result);\n }\n processReturnIntoObjectSameKey() {\n let input = this.inputEntry(), entry = this.outputStack.pop(), result = this.finalizeOutput(entry), obj = this.outputObject();\n this.model.objectSetField(obj, input.key, result);\n }\n processPushField() {\n let idx = this.read(), entry = this.inputEntry(), key = this.inputKey(entry, idx), value = this.model.objectGetField(entry.value, key);\n this.inputStack.push({ value, key });\n }\n processPushElement() {\n let idx = this.read(), entry = this.inputEntry(), value = this.model.arrayGetElement(entry.value, idx);\n this.inputStack.push({ value });\n }\n processPop() {\n this.inputStack.pop();\n }\n processPushFieldCopy() {\n this.processPushField(), this.processCopy();\n }\n processPushFieldBlank() {\n this.processPushField(), this.processBlank();\n }\n processPushElementCopy() {\n this.processPushElement(), this.processCopy();\n }\n processPushElementBlank() {\n this.processPushElement(), this.processBlank();\n }\n processReturnIntoObjectPop() {\n this.processReturnIntoObject(), this.processPop();\n }\n processReturnIntoObjectSameKeyPop() {\n this.processReturnIntoObjectSameKey(), this.processPop();\n }\n processReturnIntoArrayPop() {\n this.processReturnIntoArray(), this.processPop();\n }\n processObjectSetFieldValue() {\n this.processValue(), this.processReturnIntoObject();\n }\n processObjectCopyField() {\n this.processPushField(), this.processCopy(), this.processReturnIntoObjectSameKey(), this.processPop();\n }\n processObjectDeleteField() {\n let idx = this.read(), entry = this.inputEntry(), key = this.inputKey(entry, idx), obj = this.outputObject();\n this.model.objectDeleteField(obj, key);\n }\n processArrayAppendValue() {\n let value = this.model.wrap(this.read()), arr = this.outputArray();\n this.model.arrayAppendValue(arr, value);\n }\n processArrayAppendSlice() {\n let left = this.read(), right = this.read(), str = this.outputArray(), val = this.inputEntry().value;\n this.model.arrayAppendSlice(str, val, left, right);\n }\n processStringAppendString() {\n let value = this.model.wrap(this.read()), str = this.outputString();\n this.model.stringAppendValue(str, value);\n }\n processStringAppendSlice() {\n let left = this.read(), right = this.read(), str = this.outputString(), val = this.inputEntry().value;\n this.model.stringAppendSlice(str, val, left, right);\n }\n}\nfunction utf8charSize(code) {\n return code >> 16 ? 4 : code >> 11 ? 3 : code >> 7 ? 2 : 1;\n}\nfunction utf8stringSize(str) {\n let b = 0;\n for (let i = 0; i < str.length; i++) {\n let code = str.codePointAt(i), size = utf8charSize(code);\n size == 4 && i++, b += size;\n }\n return b;\n}\nfunction utf8resolveIndex(str, idx, start = 0) {\n let byteCount = start, ucsIdx = 0;\n for (ucsIdx = start; byteCount < idx; ucsIdx++) {\n let code = str.codePointAt(ucsIdx), size = utf8charSize(code);\n size === 4 && ucsIdx++, byteCount += size;\n }\n return ucsIdx;\n}\nfunction commonPrefix(str, str2) {\n let len = Math.min(str.length, str2.length), b = 0;\n for (let i = 0; i < len; ) {\n let aPoint = str.codePointAt(i), bPoint = str2.codePointAt(i);\n if (aPoint !== bPoint)\n return b;\n let size = utf8charSize(aPoint);\n b += size, i += size === 4 ? 2 : 1;\n }\n return b;\n}\nfunction commonSuffix(str, str2, prefix = 0) {\n let len = Math.min(str.length, str2.length) - prefix, b = 0;\n for (let i = 0; i < len; ) {\n let aPoint = str.codePointAt(str.length - 1 - i), bPoint = str2.codePointAt(str2.length - 1 - i);\n if (aPoint !== bPoint)\n return b;\n let size = utf8charSize(aPoint);\n b += size, i += size === 4 ? 2 : 1;\n }\n return b;\n}\nclass IncrementalModel {\n meta;\n constructor(meta) {\n this.meta = meta;\n }\n wrap(data) {\n return this.wrapWithMeta(data, this.meta, this.meta);\n }\n wrapWithMeta(data, startMeta, endMeta = this.meta) {\n return { data, startMeta, endMeta };\n }\n asObject(value) {\n if (!value.content) {\n let fields = {};\n for (let [key, val] of Object.entries(value.data))\n fields[key] = this.wrapWithMeta(val, value.startMeta);\n value.content = { type: \"object\", fields };\n }\n return value.content;\n }\n asArray(value) {\n if (!value.content) {\n let elements = value.data.map(\n (item) => this.wrapWithMeta(item, value.startMeta)\n ), metas = elements.map(() => this.meta);\n value.content = { type: \"array\", elements, metas };\n }\n return value.content;\n }\n asString(value) {\n if (!value.content) {\n let str = value.data, part = {\n value: str,\n utf8size: utf8stringSize(str),\n uses: [],\n startMeta: value.startMeta,\n endMeta: value.endMeta\n };\n value.content = this.stringFromParts([part]);\n }\n return value.content;\n }\n stringFromParts(parts) {\n let str = {\n type: \"string\",\n parts\n };\n for (let part of parts)\n part.uses.push(str);\n return str;\n }\n objectGetKeys(value) {\n return value.content ? Object.keys(value.content.fields) : Object.keys(value.data);\n }\n objectGetField(value, key) {\n return this.asObject(value).fields[key];\n }\n arrayGetElement(value, idx) {\n return this.asArray(value).elements[idx];\n }\n finalize(content) {\n return this.updateEndMeta(content), { content, startMeta: this.meta, endMeta: this.meta };\n }\n markChanged(value) {\n return this.wrap(unwrap(value));\n }\n updateEndMeta(content) {\n if (content.type == \"string\")\n for (let part of content.parts)\n part.endMeta = this.meta;\n else if (content.type === \"array\")\n for (let val of content.elements)\n val.content && val.endMeta !== this.meta && this.updateEndMeta(val.content), val.endMeta = this.meta;\n else\n for (let val of Object.values(content.fields))\n val.content && val.endMeta !== this.meta && this.updateEndMeta(val.content), val.endMeta = this.meta;\n }\n copyString(value) {\n if (value) {\n let other = this.asString(value);\n return this.stringFromParts(other.parts.slice());\n } else\n return {\n type: \"string\",\n parts: []\n };\n }\n copyObject(value) {\n let obj = {\n type: \"object\",\n fields: {}\n };\n if (value) {\n let other = this.asObject(value);\n Object.assign(obj.fields, other.fields);\n }\n return obj;\n }\n copyArray(value) {\n let arr = value ? this.asArray(value) : null, elements = arr ? arr.elements : [], metas = arr ? arr.metas : [];\n return {\n type: \"array\",\n elements,\n metas\n };\n }\n objectSetField(target, key, value) {\n target.fields[key] = value;\n }\n objectDeleteField(target, key) {\n delete target.fields[key];\n }\n arrayAppendValue(target, value) {\n target.elements.push(value), target.metas.push(this.meta);\n }\n arrayAppendSlice(target, source, left, right) {\n let arr = this.asArray(source), samePosition = arr.elements.length === left;\n if (target.elements.push(...arr.elements.slice(left, right)), samePosition)\n target.metas.push(...arr.metas.slice(left, right));\n else\n for (let i = left; i < right; i++)\n target.metas.push(this.meta);\n }\n stringAppendValue(target, value) {\n let str = this.asString(value);\n for (let part of str.parts)\n this.stringAppendPart(target, part);\n }\n stringAppendPart(target, part) {\n target.parts.push(part), part.uses.push(target);\n }\n resolveStringPart(str, from, len) {\n if (len === 0)\n return from;\n for (let i = from; i < str.parts.length; i++) {\n let part = str.parts[i];\n if (len === part.utf8size)\n return i + 1;\n if (len < part.utf8size)\n return this.splitString(part, len), i + 1;\n len -= part.utf8size;\n }\n throw new Error(\"splitting string out of bounds\");\n }\n splitString(part, idx) {\n let leftValue, rightValue, leftSize = idx, rightSize = part.utf8size - leftSize;\n if (part.utf8size !== part.value.length) {\n let byteCount = 0;\n for (idx = 0; byteCount < leftSize; idx++) {\n let code = part.value.codePointAt(idx), size = utf8charSize(code);\n size === 4 && idx++, byteCount += size;\n }\n }\n leftValue = part.value.slice(0, idx), rightValue = part.value.slice(idx);\n let newPart = {\n value: rightValue,\n utf8size: rightSize,\n uses: part.uses.slice(),\n startMeta: part.startMeta,\n endMeta: part.endMeta\n };\n part.value = leftValue, part.utf8size = leftSize;\n for (let use of part.uses) {\n let ndx = use.parts.indexOf(part);\n if (ndx === -1)\n throw new Error(\"bug: mismatch between string parts and use.\");\n use.parts.splice(ndx + 1, 0, newPart);\n }\n }\n stringAppendSlice(target, source, left, right) {\n let str = this.asString(source), firstPart = this.resolveStringPart(str, 0, left), lastPart = this.resolveStringPart(str, firstPart, right - left);\n for (let i = firstPart; i < lastPart; i++) {\n let part = str.parts[i];\n this.stringAppendPart(target, part);\n }\n }\n}\nfunction wrap(data, meta) {\n return { data, startMeta: meta, endMeta: meta };\n}\nfunction unwrap(value) {\n if (typeof value.data < \"u\")\n return value.data;\n let result, content = value.content;\n switch (content.type) {\n case \"string\":\n result = content.parts.map((part) => part.value).join(\"\");\n break;\n case \"array\":\n result = content.elements.map((val) => unwrap(val));\n break;\n case \"object\": {\n result = {};\n for (let [key, val] of Object.entries(content.fields))\n result[key] = unwrap(val);\n }\n }\n return value.data = result, result;\n}\nfunction getType(value) {\n return value.content ? value.content.type : Array.isArray(value.data) ? \"array\" : value.data === null ? \"null\" : typeof value.data;\n}\nfunction rebaseValue(left, right) {\n let leftType = getType(left), rightType = getType(right);\n if (leftType !== rightType)\n return right;\n let leftModel = new IncrementalModel(left.endMeta), rightModel = new IncrementalModel(right.endMeta);\n switch (leftType) {\n case \"object\": {\n let leftObj = leftModel.asObject(left), rightObj = rightModel.asObject(right), identicalFieldCount = 0, leftFieldCount = Object.keys(leftObj.fields).length, rightFieldCount = Object.keys(rightObj.fields).length;\n for (let [key, rightVal] of Object.entries(rightObj.fields)) {\n let leftVal = leftObj.fields[key];\n leftVal && (rightObj.fields[key] = rebaseValue(leftVal, rightVal), rightObj.fields[key] === leftVal && identicalFieldCount++);\n }\n return leftFieldCount === rightFieldCount && leftFieldCount === identicalFieldCount ? left : right;\n }\n case \"array\": {\n let leftArr = leftModel.asArray(left), rightArr = rightModel.asArray(right);\n if (leftArr.elements.length !== rightArr.elements.length)\n break;\n let numRebased = 0;\n for (let i = 0; i < rightArr.elements.length; i++)\n rightArr.elements[i] = rebaseValue(leftArr.elements[i], rightArr.elements[i]), rightArr.elements[i] !== leftArr.elements[i] && numRebased++;\n return numRebased === 0 ? left : right;\n }\n case \"null\":\n case \"boolean\":\n case \"number\": {\n if (unwrap(left) === unwrap(right))\n return left;\n break;\n }\n case \"string\": {\n let leftRaw = unwrap(left), rightRaw = unwrap(right);\n if (leftRaw === rightRaw)\n return left;\n let result = rightModel.copyString(null), prefix = commonPrefix(leftRaw, rightRaw), suffix = commonSuffix(leftRaw, rightRaw, prefix), rightLen = utf8stringSize(rightRaw), leftLen = utf8stringSize(leftRaw);\n 0 < prefix && rightModel.stringAppendSlice(result, left, 0, prefix), prefix < rightLen - suffix && rightModel.stringAppendSlice(result, right, prefix, rightLen - suffix), leftLen - suffix < leftLen && rightModel.stringAppendSlice(result, left, leftLen - suffix, leftLen);\n let value = rightModel.finalize(result);\n if (unwrap(value) !== rightRaw)\n throw new Error(\"incorrect string rebase\");\n return value;\n }\n }\n return right;\n}\nfunction applyPatch$1(left, patch, startMeta) {\n let model = new IncrementalModel(startMeta);\n return new Patcher(model, left, patch).process();\n}\nvar incrementalPatcher = /* @__PURE__ */ Object.freeze({\n __proto__: null,\n applyPatch: applyPatch$1,\n getType,\n rebaseValue,\n unwrap,\n wrap\n});\nclass SimpleModel {\n wrap(data) {\n return data;\n }\n finalize(b) {\n return Array.isArray(b) ? b : b.data;\n }\n markChanged(value) {\n return value;\n }\n objectGetKeys(value) {\n return Object.keys(value);\n }\n objectGetField(value, key) {\n return value[key];\n }\n arrayGetElement(value, idx) {\n return value[idx];\n }\n copyObject(value) {\n let res = {\n type: \"object\",\n data: {}\n };\n if (value !== null)\n for (let [key, val] of Object.entries(value))\n res.data[key] = val;\n return res;\n }\n copyArray(value) {\n return value === null ? [] : value.slice();\n }\n copyString(value) {\n return {\n type: \"string\",\n data: value === null ? \"\" : value\n };\n }\n objectSetField(target, key, value) {\n target.data[key] = value;\n }\n objectDeleteField(target, key) {\n delete target.data[key];\n }\n arrayAppendValue(target, value) {\n target.push(value);\n }\n arrayAppendSlice(target, source, left, right) {\n target.push(...source.slice(left, right));\n }\n stringAppendSlice(target, source, left, right) {\n const sourceString = source, leftPos = utf8resolveIndex(sourceString, left), rightPos = utf8resolveIndex(sourceString, right, leftPos);\n target.data += sourceString.slice(leftPos, rightPos);\n }\n stringAppendValue(target, value) {\n target.data += value;\n }\n}\nfunction applyPatch(left, patch) {\n let root = left;\n return new Patcher(new SimpleModel(), root, patch).process();\n}\nexport {\n applyPatch,\n incrementalPatcher as incremental\n};\n//# sourceMappingURL=index.js.map\n"],"names":["OPS","Patcher","model","root","patch","__publicField","opcode","op","processor","entry","idx","value","input","result","arr","key","obj","left","right","str","val","utf8charSize","code","utf8stringSize","b","i","size","utf8resolveIndex","start","byteCount","ucsIdx","commonPrefix","str2","len","aPoint","bPoint","commonSuffix","prefix","IncrementalModel","meta","data","startMeta","endMeta","fields","elements","item","metas","part","parts","content","unwrap","other","target","source","samePosition","from","leftValue","rightValue","leftSize","rightSize","newPart","use","ndx","firstPart","lastPart","wrap","getType","rebaseValue","leftType","rightType","leftModel","rightModel","leftObj","rightObj","identicalFieldCount","leftFieldCount","rightFieldCount","rightVal","leftVal","leftArr","rightArr","numRebased","leftRaw","rightRaw","suffix","rightLen","leftLen","applyPatch$1","incrementalPatcher","SimpleModel","res","sourceString","leftPos","rightPos","applyPatch"],"mappings":"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","x_google_ignoreList":[0]}