quoin-editor 1.2.1 → 1.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/README.md +15 -5
- package/dist/ai.cjs +66 -66
- package/dist/ai.js +5 -5
- package/dist/catalogue.cjs +20 -20
- package/dist/catalogue.js +12 -12
- package/dist/{chunk-2IY3LET7.js → chunk-25HNTVEI.js} +3 -3
- package/dist/{chunk-2IY3LET7.js.map → chunk-25HNTVEI.js.map} +1 -1
- package/dist/{chunk-YWPFC2PX.cjs → chunk-35CHEARK.cjs} +38 -38
- package/dist/{chunk-YWPFC2PX.cjs.map → chunk-35CHEARK.cjs.map} +1 -1
- package/dist/{chunk-D4ISVKWS.js → chunk-4D7HZRNC.js} +3 -3
- package/dist/{chunk-D4ISVKWS.js.map → chunk-4D7HZRNC.js.map} +1 -1
- package/dist/{chunk-4WRIGF7F.js → chunk-4HFE3YFF.js} +6 -6
- package/dist/{chunk-4WRIGF7F.js.map → chunk-4HFE3YFF.js.map} +1 -1
- package/dist/{chunk-O2VMWE4B.cjs → chunk-5ANJW76W.cjs} +20 -20
- package/dist/{chunk-O2VMWE4B.cjs.map → chunk-5ANJW76W.cjs.map} +1 -1
- package/dist/{chunk-I4KBYVSC.cjs → chunk-A5LIN7FO.cjs} +26 -26
- package/dist/{chunk-I4KBYVSC.cjs.map → chunk-A5LIN7FO.cjs.map} +1 -1
- package/dist/{chunk-EXSNIIOR.cjs → chunk-BJIWN7BQ.cjs} +10 -10
- package/dist/{chunk-EXSNIIOR.cjs.map → chunk-BJIWN7BQ.cjs.map} +1 -1
- package/dist/{chunk-HPQM33PG.js → chunk-BNUQ647G.js} +6 -6
- package/dist/{chunk-HPQM33PG.js.map → chunk-BNUQ647G.js.map} +1 -1
- package/dist/{chunk-535R45JI.js → chunk-BR25RE7U.js} +5 -5
- package/dist/{chunk-535R45JI.js.map → chunk-BR25RE7U.js.map} +1 -1
- package/dist/{chunk-XWKFBLFO.js → chunk-CCOPHCXX.js} +46 -6
- package/dist/chunk-CCOPHCXX.js.map +1 -0
- package/dist/{chunk-YVMPIIMO.cjs → chunk-CZ5ZXBWC.cjs} +224 -225
- package/dist/chunk-CZ5ZXBWC.cjs.map +1 -0
- package/dist/{chunk-WYGSUSZF.cjs → chunk-DQV37F7J.cjs} +66 -66
- package/dist/{chunk-WYGSUSZF.cjs.map → chunk-DQV37F7J.cjs.map} +1 -1
- package/dist/{chunk-3XPVCSFT.js → chunk-FOEEDJ5R.js} +5 -5
- package/dist/{chunk-3XPVCSFT.js.map → chunk-FOEEDJ5R.js.map} +1 -1
- package/dist/{chunk-LROGC3SI.cjs → chunk-G37GQ5JE.cjs} +3 -2
- package/dist/{chunk-LROGC3SI.cjs.map → chunk-G37GQ5JE.cjs.map} +1 -1
- package/dist/{chunk-B3RY7TN2.js → chunk-I7OOIEZZ.js} +5 -5
- package/dist/{chunk-B3RY7TN2.js.map → chunk-I7OOIEZZ.js.map} +1 -1
- package/dist/{chunk-BGPFGNCL.cjs → chunk-IGEWAL2J.cjs} +29 -29
- package/dist/{chunk-BGPFGNCL.cjs.map → chunk-IGEWAL2J.cjs.map} +1 -1
- package/dist/{chunk-O4APV37F.js → chunk-J552D3A7.js} +11 -12
- package/dist/chunk-J552D3A7.js.map +1 -0
- package/dist/{chunk-C4MLW2QA.cjs → chunk-JYKSWEXT.cjs} +6 -6
- package/dist/{chunk-C4MLW2QA.cjs.map → chunk-JYKSWEXT.cjs.map} +1 -1
- package/dist/{chunk-5QLDX75X.cjs → chunk-K7JEN3KT.cjs} +4 -4
- package/dist/{chunk-5QLDX75X.cjs.map → chunk-K7JEN3KT.cjs.map} +1 -1
- package/dist/{chunk-LXSVDRMH.cjs → chunk-KMIWUFNM.cjs} +75 -75
- package/dist/{chunk-LXSVDRMH.cjs.map → chunk-KMIWUFNM.cjs.map} +1 -1
- package/dist/{chunk-4EJ4EGGH.js → chunk-KXOAV7AT.js} +3 -3
- package/dist/{chunk-4EJ4EGGH.js.map → chunk-KXOAV7AT.js.map} +1 -1
- package/dist/{chunk-4SRXM2VS.cjs → chunk-OGBD74IR.cjs} +126 -86
- package/dist/chunk-OGBD74IR.cjs.map +1 -0
- package/dist/{chunk-PX5CFG5J.js → chunk-SAPLIQF2.js} +4 -4
- package/dist/{chunk-PX5CFG5J.js.map → chunk-SAPLIQF2.js.map} +1 -1
- package/dist/{chunk-XT2ZKIYS.cjs → chunk-SCFW4JFT.cjs} +38 -38
- package/dist/{chunk-XT2ZKIYS.cjs.map → chunk-SCFW4JFT.cjs.map} +1 -1
- package/dist/{chunk-XYR7JW23.js → chunk-TARBFPWC.js} +6 -6
- package/dist/{chunk-XYR7JW23.js.map → chunk-TARBFPWC.js.map} +1 -1
- package/dist/{chunk-7GDKCDU4.js → chunk-Y7UKOBSY.js} +5 -5
- package/dist/{chunk-7GDKCDU4.js.map → chunk-Y7UKOBSY.js.map} +1 -1
- package/dist/{chunk-RIGAO2QT.js → chunk-YCVNFRL3.js} +4 -4
- package/dist/{chunk-RIGAO2QT.js.map → chunk-YCVNFRL3.js.map} +1 -1
- package/dist/{chunk-RBYK3RGX.cjs → chunk-ZVCBTQA3.cjs} +10 -10
- package/dist/{chunk-RBYK3RGX.cjs.map → chunk-ZVCBTQA3.cjs.map} +1 -1
- package/dist/comments.cjs +48 -48
- package/dist/comments.js +4 -4
- package/dist/docx.cjs +1 -1
- package/dist/docx.js +1 -1
- package/dist/embed.cjs +6 -6
- package/dist/embed.js +4 -4
- package/dist/emoji.cjs +7 -7
- package/dist/emoji.js +4 -4
- package/dist/engine.cjs +43 -43
- package/dist/engine.js +1 -1
- package/dist/find.cjs +8 -8
- package/dist/find.js +4 -4
- package/dist/headless.cjs +59 -59
- package/dist/headless.d.cts +2 -2
- package/dist/headless.d.ts +2 -2
- package/dist/headless.js +2 -2
- package/dist/index.cjs +71 -71
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +3 -3
- package/dist/math.cjs +7 -7
- package/dist/math.js +5 -5
- package/dist/mention.cjs +7 -7
- package/dist/mention.js +5 -5
- package/dist/presence.cjs +33 -33
- package/dist/presence.js +5 -5
- package/dist/stats.cjs +7 -7
- package/dist/stats.d.cts +1 -1
- package/dist/stats.d.ts +1 -1
- package/dist/stats.js +4 -4
- package/dist/styles.css +1 -1
- package/dist/table.cjs +23 -23
- package/dist/table.js +4 -4
- package/dist/toc.cjs +7 -7
- package/dist/toc.js +4 -4
- package/dist/{view-controller-BD1KwYfE.d.cts → view-controller-cxQJ5rQb.d.cts} +7 -0
- package/dist/{view-controller-y4cb60ue.d.ts → view-controller-zNqHm_Qg.d.ts} +7 -0
- package/dist/yjs.cjs +99 -99
- package/dist/yjs.js +3 -3
- package/package.json +1 -1
- package/dist/chunk-4SRXM2VS.cjs.map +0 -1
- package/dist/chunk-O4APV37F.js.map +0 -1
- package/dist/chunk-XWKFBLFO.js.map +0 -1
- package/dist/chunk-YVMPIIMO.cjs.map +0 -1
package/dist/yjs.cjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
3
|
+
var chunkJYKSWEXT_cjs = require('./chunk-JYKSWEXT.cjs');
|
|
4
|
+
var chunkG37GQ5JE_cjs = require('./chunk-G37GQ5JE.cjs');
|
|
5
5
|
require('./chunk-BM2GRZNM.cjs');
|
|
6
6
|
var chunkWZA5S5EJ_cjs = require('./chunk-WZA5S5EJ.cjs');
|
|
7
7
|
var Y = require('yjs');
|
|
@@ -43,7 +43,7 @@ function requiredRegions(schema) {
|
|
|
43
43
|
|
|
44
44
|
// src/yjs/read-shared.ts
|
|
45
45
|
function reader(required) {
|
|
46
|
-
const spans = [
|
|
46
|
+
const spans = [chunkJYKSWEXT_cjs.emptySpan()];
|
|
47
47
|
const entries = /* @__PURE__ */ new Map();
|
|
48
48
|
const markers = /* @__PURE__ */ new Map();
|
|
49
49
|
const order = [];
|
|
@@ -78,11 +78,11 @@ function reader(required) {
|
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
80
|
function marker(map) {
|
|
81
|
-
span =
|
|
81
|
+
span = chunkJYKSWEXT_cjs.emptySpan();
|
|
82
82
|
span.index = spans.length;
|
|
83
83
|
spans.push(span);
|
|
84
84
|
[open, stray] = [null, null];
|
|
85
|
-
const fields =
|
|
85
|
+
const fields = chunkJYKSWEXT_cjs.readMarker(map);
|
|
86
86
|
const kept = fields !== null && !entries.has(fields.id);
|
|
87
87
|
entry = kept ? { id: fields.id, map, span, regions: [], copies: [] } : null;
|
|
88
88
|
if (entry !== null) {
|
|
@@ -95,7 +95,7 @@ function reader(required) {
|
|
|
95
95
|
}
|
|
96
96
|
}
|
|
97
97
|
function embed(value) {
|
|
98
|
-
let name =
|
|
98
|
+
let name = chunkJYKSWEXT_cjs.regionNameOf(value);
|
|
99
99
|
stray = null;
|
|
100
100
|
const missing = (one) => !entry.regions.some((region2) => region2.name === one);
|
|
101
101
|
if (name !== null && entry !== null) {
|
|
@@ -114,7 +114,7 @@ function reader(required) {
|
|
|
114
114
|
return {
|
|
115
115
|
read(op) {
|
|
116
116
|
const { insert } = op;
|
|
117
|
-
if (typeof insert === "string" ||
|
|
117
|
+
if (typeof insert === "string" || chunkJYKSWEXT_cjs.isAtomEmbed(insert)) {
|
|
118
118
|
const length = typeof insert === "string" ? insert.length : 1;
|
|
119
119
|
content(op, length);
|
|
120
120
|
span.length += length;
|
|
@@ -144,11 +144,11 @@ function reader(required) {
|
|
|
144
144
|
for (const name of required(type)) {
|
|
145
145
|
if (!kept.regions.some((region2) => region2.name === name)) kept.regions.push({ name, entry: kept, segs: [] });
|
|
146
146
|
}
|
|
147
|
-
const inline = (segs) =>
|
|
147
|
+
const inline = (segs) => chunkJYKSWEXT_cjs.inlineOfOps(segs.flatMap((seg) => held2.get(seg)));
|
|
148
148
|
const regions = kept.regions.map(({ name, segs }) => [name, inline(segs)]);
|
|
149
149
|
return { id: kept.id, type, indent, attrs: attrs?.toJSON() ?? {}, regions: Object.fromEntries(regions) };
|
|
150
150
|
});
|
|
151
|
-
const layout =
|
|
151
|
+
const layout = chunkJYKSWEXT_cjs.createLayout(spans, entries, { read, leading: new Set(leading), unread });
|
|
152
152
|
return { doc: chunkWZA5S5EJ_cjs.createDoc(blocks), layout };
|
|
153
153
|
}
|
|
154
154
|
};
|
|
@@ -183,25 +183,25 @@ function reread(shared) {
|
|
|
183
183
|
function insertContent(shared, region2, offset, inline) {
|
|
184
184
|
if (inline.length === 0) return;
|
|
185
185
|
if (region2.segs.length === 0) return openRegion(shared, region2, inline);
|
|
186
|
-
const { seg, rel } =
|
|
187
|
-
|
|
188
|
-
|
|
186
|
+
const { seg, rel } = chunkJYKSWEXT_cjs.pointOf(region2, offset);
|
|
187
|
+
chunkJYKSWEXT_cjs.insertInline(shared.text, chunkJYKSWEXT_cjs.spanStart(shared.layout, seg.host) + rel, inline);
|
|
188
|
+
chunkJYKSWEXT_cjs.grow(shared.layout, seg, rel, chunkWZA5S5EJ_cjs.inlineLength(inline));
|
|
189
189
|
}
|
|
190
190
|
function deleteContent(shared, region2, from, to) {
|
|
191
|
-
for (const { seg, rel, length } of
|
|
192
|
-
|
|
193
|
-
|
|
191
|
+
for (const { seg, rel, length } of chunkJYKSWEXT_cjs.piecesOf(region2, from, to).reverse()) {
|
|
192
|
+
chunkJYKSWEXT_cjs.deleteText(shared.text, chunkJYKSWEXT_cjs.spanStart(shared.layout, seg.host) + rel, length);
|
|
193
|
+
chunkJYKSWEXT_cjs.grow(shared.layout, seg, rel, -length);
|
|
194
194
|
}
|
|
195
195
|
}
|
|
196
196
|
function formatContent(shared, region2, from, to, attributes) {
|
|
197
|
-
for (const { seg, rel, length } of
|
|
198
|
-
shared.text.format(
|
|
197
|
+
for (const { seg, rel, length } of chunkJYKSWEXT_cjs.piecesOf(region2, from, to)) {
|
|
198
|
+
shared.text.format(chunkJYKSWEXT_cjs.spanStart(shared.layout, seg.host) + rel, length, attributes);
|
|
199
199
|
}
|
|
200
200
|
}
|
|
201
201
|
function openRegion(shared, { name, entry }, inline) {
|
|
202
|
-
const at =
|
|
203
|
-
shared.text.insertEmbed(at,
|
|
204
|
-
|
|
202
|
+
const at = chunkJYKSWEXT_cjs.spanStart(shared.layout, entry.span) + entry.span.length;
|
|
203
|
+
shared.text.insertEmbed(at, chunkJYKSWEXT_cjs.regionStart(name), {});
|
|
204
|
+
chunkJYKSWEXT_cjs.insertInline(shared.text, at + 1, inline);
|
|
205
205
|
reread(shared);
|
|
206
206
|
}
|
|
207
207
|
|
|
@@ -235,12 +235,12 @@ function adopted(entry, next) {
|
|
|
235
235
|
for (const copy of next.copies) copy.copyOf = next;
|
|
236
236
|
return next;
|
|
237
237
|
}
|
|
238
|
-
var rewritten = (entry, block, map = entry.map) => adopted(entry,
|
|
238
|
+
var rewritten = (entry, block, map = entry.map) => adopted(entry, chunkJYKSWEXT_cjs.cleanEntry(block, map));
|
|
239
239
|
function crossesStray(layout, index) {
|
|
240
240
|
const { read, leading, unread } = layout.strays;
|
|
241
241
|
return unread || read.some((seg) => {
|
|
242
|
-
const region2 =
|
|
243
|
-
return leading.has(seg) ? index <= region2 : region2 < index && index <=
|
|
242
|
+
const region2 = chunkJYKSWEXT_cjs.indexOf(layout, seg.region.entry.span);
|
|
243
|
+
return leading.has(seg) ? index <= region2 : region2 < index && index <= chunkJYKSWEXT_cjs.indexOf(layout, seg.host);
|
|
244
244
|
});
|
|
245
245
|
}
|
|
246
246
|
|
|
@@ -248,11 +248,11 @@ function crossesStray(layout, index) {
|
|
|
248
248
|
function insertBlocks(shared, next, blocks) {
|
|
249
249
|
const { layout, text: text2 } = shared;
|
|
250
250
|
const span = next === null ? null : layout.entries.get(next).span;
|
|
251
|
-
const index = span === null ? layout.spans.length :
|
|
251
|
+
const index = span === null ? layout.spans.length : chunkJYKSWEXT_cjs.indexOf(layout, span);
|
|
252
252
|
const crosses = blocks.some((block) => Object.keys(block.regions).length > 0) && crossesStray(layout, index);
|
|
253
|
-
const maps =
|
|
253
|
+
const maps = chunkJYKSWEXT_cjs.writeBlocks(text2, span === null ? chunkJYKSWEXT_cjs.textLength(layout) : chunkJYKSWEXT_cjs.spanStart(layout, span), blocks);
|
|
254
254
|
if (crosses) reread(shared);
|
|
255
|
-
else
|
|
255
|
+
else chunkJYKSWEXT_cjs.placeEntries(layout, index, 0, blocks.map((block, i) => chunkJYKSWEXT_cjs.cleanEntry(block, maps[i])));
|
|
256
256
|
}
|
|
257
257
|
function ownParts(entry, span) {
|
|
258
258
|
const parts = [];
|
|
@@ -267,15 +267,15 @@ function ownParts(entry, span) {
|
|
|
267
267
|
}
|
|
268
268
|
function dropSpans(shared, spans) {
|
|
269
269
|
const { layout, text: text2 } = shared;
|
|
270
|
-
for (const span of [...spans].sort((a, b) =>
|
|
271
|
-
const at =
|
|
272
|
-
|
|
273
|
-
|
|
270
|
+
for (const span of [...spans].sort((a, b) => chunkJYKSWEXT_cjs.indexOf(layout, b) - chunkJYKSWEXT_cjs.indexOf(layout, a))) {
|
|
271
|
+
const at = chunkJYKSWEXT_cjs.indexOf(layout, span);
|
|
272
|
+
chunkJYKSWEXT_cjs.deleteText(text2, chunkJYKSWEXT_cjs.spanStart(layout, span), span.length);
|
|
273
|
+
chunkJYKSWEXT_cjs.placeEntries(layout, at, 1, []);
|
|
274
274
|
}
|
|
275
275
|
}
|
|
276
276
|
function unreadBefore(layout, span) {
|
|
277
277
|
const before = [];
|
|
278
|
-
for (let at =
|
|
278
|
+
for (let at = chunkJYKSWEXT_cjs.indexOf(layout, span) - 1; at > 0 && layout.spans[at].entry === null; at--) {
|
|
279
279
|
before.push(layout.spans[at]);
|
|
280
280
|
}
|
|
281
281
|
return before;
|
|
@@ -287,20 +287,20 @@ function removeBlock(shared, id) {
|
|
|
287
287
|
if (isPlain(entry)) return dropSpans(shared, [.../* @__PURE__ */ new Set([entry.span, ...unread])]);
|
|
288
288
|
dropSpans(shared, [...new Set(unread)]);
|
|
289
289
|
const ranges = [];
|
|
290
|
-
const start =
|
|
290
|
+
const start = chunkJYKSWEXT_cjs.spanStart(layout, entry.span);
|
|
291
291
|
ranges.push(...ownParts(entry, entry.span).map(([at, length]) => [start + at, length]));
|
|
292
292
|
for (const seg of entry.regions.flatMap((region2) => region2.segs)) {
|
|
293
|
-
if (seg.host !== entry.span) ranges.push([
|
|
293
|
+
if (seg.host !== entry.span) ranges.push([chunkJYKSWEXT_cjs.spanStart(layout, seg.host) + seg.at, seg.length]);
|
|
294
294
|
}
|
|
295
|
-
for (const [at, length] of ranges.sort((a, b) => b[0] - a[0])) if (length > 0)
|
|
295
|
+
for (const [at, length] of ranges.sort((a, b) => b[0] - a[0])) if (length > 0) chunkJYKSWEXT_cjs.deleteText(text2, at, length);
|
|
296
296
|
reread(shared);
|
|
297
297
|
}
|
|
298
298
|
|
|
299
299
|
// src/yjs/sync-block.ts
|
|
300
300
|
function syncAttrs(map, before, after) {
|
|
301
|
-
const current =
|
|
301
|
+
const current = chunkJYKSWEXT_cjs.attrsMap(map, after);
|
|
302
302
|
if (current === null) return;
|
|
303
|
-
const kept = new Map(
|
|
303
|
+
const kept = new Map(chunkJYKSWEXT_cjs.definedEntries(after));
|
|
304
304
|
for (const key of [...current.keys()]) if (!kept.has(key)) current.delete(key);
|
|
305
305
|
for (const [key, value] of kept) if (!chunkWZA5S5EJ_cjs.sameValue(before[key], value)) current.set(key, value);
|
|
306
306
|
}
|
|
@@ -320,25 +320,25 @@ function syncRegions(shared, entry, before, after) {
|
|
|
320
320
|
const names = Object.keys(after.regions);
|
|
321
321
|
const queue = entry.regions.map(({ name }) => [name, before.regions[name]]);
|
|
322
322
|
const kept = keptNames(queue.map(([name]) => name), names);
|
|
323
|
-
let at =
|
|
323
|
+
let at = chunkJYKSWEXT_cjs.spanStart(layout, entry.span) + 1;
|
|
324
324
|
const dropGone = () => {
|
|
325
|
-
while (queue.length > 0 && !kept.has(queue[0][0]))
|
|
325
|
+
while (queue.length > 0 && !kept.has(queue[0][0])) chunkJYKSWEXT_cjs.deleteText(text2, at, 1 + chunkWZA5S5EJ_cjs.inlineLength(queue.shift()[1]));
|
|
326
326
|
};
|
|
327
327
|
for (const name of names) {
|
|
328
328
|
dropGone();
|
|
329
329
|
const inline = after.regions[name];
|
|
330
330
|
if (kept.has(name)) {
|
|
331
331
|
const { from, to, slice } = changedSpan(queue.shift()[1], inline);
|
|
332
|
-
if (to > from)
|
|
333
|
-
|
|
332
|
+
if (to > from) chunkJYKSWEXT_cjs.deleteText(text2, at + 1 + from, to - from);
|
|
333
|
+
chunkJYKSWEXT_cjs.insertInline(text2, at + 1 + from, slice);
|
|
334
334
|
} else {
|
|
335
|
-
text2.insertEmbed(at,
|
|
336
|
-
|
|
335
|
+
text2.insertEmbed(at, chunkJYKSWEXT_cjs.regionStart(name), {});
|
|
336
|
+
chunkJYKSWEXT_cjs.insertInline(text2, at + 1, inline);
|
|
337
337
|
}
|
|
338
338
|
at += 1 + chunkWZA5S5EJ_cjs.inlineLength(inline);
|
|
339
339
|
}
|
|
340
340
|
dropGone();
|
|
341
|
-
|
|
341
|
+
chunkJYKSWEXT_cjs.placeEntries(layout, chunkJYKSWEXT_cjs.indexOf(layout, entry.span), 1, [rewritten(entry, after)]);
|
|
342
342
|
}
|
|
343
343
|
function syncBlock(shared, before, after, next) {
|
|
344
344
|
if (before === after) return;
|
|
@@ -353,7 +353,7 @@ function syncBlock(shared, before, after, next) {
|
|
|
353
353
|
syncAttrs(entry.map, before.attrs, after.attrs);
|
|
354
354
|
if (plain) {
|
|
355
355
|
const gains = Object.keys(before.regions).length === 0 && Object.keys(after.regions).length > 0;
|
|
356
|
-
const crosses = gains && crossesStray(shared.layout,
|
|
356
|
+
const crosses = gains && crossesStray(shared.layout, chunkJYKSWEXT_cjs.indexOf(shared.layout, entry.span));
|
|
357
357
|
syncRegions(shared, entry, before, after);
|
|
358
358
|
if (crosses) reread(shared);
|
|
359
359
|
return;
|
|
@@ -362,7 +362,7 @@ function syncBlock(shared, before, after, next) {
|
|
|
362
362
|
const [was, now] = [before.regions[name], after.regions[name]];
|
|
363
363
|
if (chunkWZA5S5EJ_cjs.equalInline(was, now)) continue;
|
|
364
364
|
const { from, to, slice } = changedSpan(was, now);
|
|
365
|
-
const region2 =
|
|
365
|
+
const region2 = chunkJYKSWEXT_cjs.regionOf(shared.layout, before.id, name);
|
|
366
366
|
deleteContent(shared, region2, from, to);
|
|
367
367
|
insertContent(shared, region2, from, slice);
|
|
368
368
|
}
|
|
@@ -399,15 +399,15 @@ function writeSplit(shared, after, { block, region: region2, offset, created })
|
|
|
399
399
|
const tail = chunkWZA5S5EJ_cjs.blockById(after, created.id);
|
|
400
400
|
const last = entry.regions[entry.regions.length - 1];
|
|
401
401
|
if (!held(last) || last.name !== region2 || Object.keys(tail.regions).at(-1) !== created.region) return false;
|
|
402
|
-
const { seg, rel } =
|
|
403
|
-
const map =
|
|
404
|
-
|
|
402
|
+
const { seg, rel } = chunkJYKSWEXT_cjs.pointOf(last, offset);
|
|
403
|
+
const map = chunkJYKSWEXT_cjs.markerOf(tail);
|
|
404
|
+
chunkJYKSWEXT_cjs.writeBlock(text2, chunkJYKSWEXT_cjs.spanStart(layout, seg.host) + rel, tail, map, created.region);
|
|
405
405
|
if (!isPlain(entry)) {
|
|
406
406
|
reread(shared);
|
|
407
407
|
return true;
|
|
408
408
|
}
|
|
409
409
|
const head = rewritten(entry, chunkWZA5S5EJ_cjs.blockById(after, block));
|
|
410
|
-
|
|
410
|
+
chunkJYKSWEXT_cjs.placeEntries(layout, chunkJYKSWEXT_cjs.indexOf(layout, entry.span), 1, [head, chunkJYKSWEXT_cjs.cleanEntry(tail, map)]);
|
|
411
411
|
return true;
|
|
412
412
|
}
|
|
413
413
|
function writeJoin(shared, after, join2) {
|
|
@@ -416,27 +416,27 @@ function writeJoin(shared, after, join2) {
|
|
|
416
416
|
const [into, from] = [target, source].map((id) => layout.entries.get(id));
|
|
417
417
|
const [end, start] = [into.regions.at(-1), from.regions[0]];
|
|
418
418
|
if (!held(end) || !held(start) || end.name !== targetRegion || start.name !== sourceRegion) return false;
|
|
419
|
-
const between = layout.spans.slice(
|
|
419
|
+
const between = layout.spans.slice(chunkJYKSWEXT_cjs.indexOf(layout, into.span) + 1, chunkJYKSWEXT_cjs.indexOf(layout, from.span));
|
|
420
420
|
dropSpans(shared, [...from.copies, ...between]);
|
|
421
|
-
const at =
|
|
421
|
+
const at = chunkJYKSWEXT_cjs.spanStart(layout, from.span);
|
|
422
422
|
if (!isPlain(into) || !isPlain(from)) {
|
|
423
423
|
const own = start.segs.find((seg) => seg.host === from.span);
|
|
424
|
-
|
|
425
|
-
|
|
424
|
+
chunkJYKSWEXT_cjs.deleteText(text2, at + own.at - 1, 1);
|
|
425
|
+
chunkJYKSWEXT_cjs.deleteText(text2, at, 1);
|
|
426
426
|
reread(shared);
|
|
427
427
|
return true;
|
|
428
428
|
}
|
|
429
|
-
const index =
|
|
429
|
+
const index = chunkJYKSWEXT_cjs.indexOf(layout, into.span);
|
|
430
430
|
const moved = from.regions[0].segs[0].length;
|
|
431
431
|
const rest = from.span.length - 2 - moved;
|
|
432
|
-
if (rest > 0)
|
|
433
|
-
|
|
434
|
-
|
|
432
|
+
if (rest > 0) chunkJYKSWEXT_cjs.deleteText(text2, at + 2 + moved, rest);
|
|
433
|
+
chunkJYKSWEXT_cjs.deleteText(text2, at, 2);
|
|
434
|
+
chunkJYKSWEXT_cjs.placeEntries(layout, index, 2, [rewritten(into, chunkWZA5S5EJ_cjs.blockById(after, target))]);
|
|
435
435
|
return true;
|
|
436
436
|
}
|
|
437
437
|
|
|
438
438
|
// src/yjs/local-to-yjs.ts
|
|
439
|
-
var region = ({ shared, params }) =>
|
|
439
|
+
var region = ({ shared, params }) => chunkJYKSWEXT_cjs.regionOf(shared.layout, params.block, params.region);
|
|
440
440
|
var following = (doc, id) => doc.blocks[doc.index.get(id) + 1]?.id ?? null;
|
|
441
441
|
function replaceInline(context) {
|
|
442
442
|
const { from, to, slice } = context.params;
|
|
@@ -451,15 +451,15 @@ function format(context, keys) {
|
|
|
451
451
|
formatContent(context.shared, region(context), from, to, keys(chunkWZA5S5EJ_cjs.sliceInline(inline, from, to)));
|
|
452
452
|
}
|
|
453
453
|
function removedKeys(mark, inline) {
|
|
454
|
-
if (typeof mark !== "string") return { [
|
|
454
|
+
if (typeof mark !== "string") return { [chunkJYKSWEXT_cjs.markAttribute(mark)[0]]: null };
|
|
455
455
|
const marks = inline.flatMap((node) => node.marks.filter((candidate) => candidate.type === mark));
|
|
456
|
-
return Object.fromEntries(marks.map((found) => [
|
|
456
|
+
return Object.fromEntries(marks.map((found) => [chunkJYKSWEXT_cjs.markAttribute(found)[0], null]));
|
|
457
457
|
}
|
|
458
458
|
function setAttrs({ shared, after, params }) {
|
|
459
459
|
const id = params.block;
|
|
460
460
|
const { map } = shared.layout.entries.get(id);
|
|
461
461
|
const next = chunkWZA5S5EJ_cjs.blockById(after, id).attrs;
|
|
462
|
-
const attrs =
|
|
462
|
+
const attrs = chunkJYKSWEXT_cjs.attrsMap(map, next);
|
|
463
463
|
if (attrs === null) return;
|
|
464
464
|
for (const key of Object.keys(params.patch)) {
|
|
465
465
|
if (next[key] === void 0) attrs.delete(key);
|
|
@@ -475,7 +475,7 @@ function moveBlocks({ shared, before, after, params }) {
|
|
|
475
475
|
}
|
|
476
476
|
var WRITERS = {
|
|
477
477
|
replaceInline,
|
|
478
|
-
addMark: (context) => format(context, () => Object.fromEntries([
|
|
478
|
+
addMark: (context) => format(context, () => Object.fromEntries([chunkJYKSWEXT_cjs.markAttribute(context.params.mark)])),
|
|
479
479
|
removeMark: (context) => format(context, (inline) => removedKeys(context.params.mark, inline)),
|
|
480
480
|
setAttrs,
|
|
481
481
|
setIndent: ({ shared, params }) => shared.layout.entries.get(params.block).map.set("indent", params.indent),
|
|
@@ -514,13 +514,13 @@ function seedOrLoad(editor, text2, { origin, seed, required }) {
|
|
|
514
514
|
const { blocks } = editor.state.doc;
|
|
515
515
|
if (text2.length === 0 && seed === "if-empty") {
|
|
516
516
|
let maps = [];
|
|
517
|
-
text2.doc.transact(() => maps =
|
|
518
|
-
const layout2 =
|
|
519
|
-
|
|
517
|
+
text2.doc.transact(() => maps = chunkJYKSWEXT_cjs.writeBlocks(text2, 0, blocks), origin);
|
|
518
|
+
const layout2 = chunkJYKSWEXT_cjs.createLayout([chunkJYKSWEXT_cjs.emptySpan()], /* @__PURE__ */ new Map());
|
|
519
|
+
chunkJYKSWEXT_cjs.placeEntries(layout2, 1, 0, blocks.map((block, i) => chunkJYKSWEXT_cjs.cleanEntry(block, maps[i])));
|
|
520
520
|
return layout2;
|
|
521
521
|
}
|
|
522
522
|
const { doc, layout } = readShared(text2, required);
|
|
523
|
-
if (!
|
|
523
|
+
if (!chunkG37GQ5JE_cjs.sameDoc(doc, editor.state.doc)) chunkJYKSWEXT_cjs.applyRemote(editor, [chunkG37GQ5JE_cjs.replaceDocStep(doc)]);
|
|
524
524
|
return layout;
|
|
525
525
|
}
|
|
526
526
|
function touchedEntries(layout, delta) {
|
|
@@ -530,8 +530,8 @@ function touchedEntries(layout, delta) {
|
|
|
530
530
|
const length = op.retain ?? op.delete ?? 0;
|
|
531
531
|
if (op.insert instanceof Y__namespace.Map || op.retain && op.attributes) return null;
|
|
532
532
|
if (op.retain === void 0) {
|
|
533
|
-
const span =
|
|
534
|
-
const start =
|
|
533
|
+
const span = chunkJYKSWEXT_cjs.spanAt(layout, at, op.insert === void 0);
|
|
534
|
+
const start = chunkJYKSWEXT_cjs.spanStart(layout, span);
|
|
535
535
|
if (span.entry === null || start === at || at + length > start + span.length) return null;
|
|
536
536
|
touched.set(span.entry.map, span.entry);
|
|
537
537
|
}
|
|
@@ -551,10 +551,10 @@ function readBlocks(shared, entries, doc) {
|
|
|
551
551
|
for (const [map, entry] of entries) {
|
|
552
552
|
const { doc: one, layout: own } = readers.get(map).finish();
|
|
553
553
|
const next = own.spans[1].entry;
|
|
554
|
-
const at =
|
|
554
|
+
const at = chunkJYKSWEXT_cjs.indexOf(layout, entry.span);
|
|
555
555
|
if (crossesStray(own, 1) || crossesStray(layout, at)) return null;
|
|
556
|
-
|
|
557
|
-
if (!chunkWZA5S5EJ_cjs.sameValue(chunkWZA5S5EJ_cjs.blockById(doc, entry.id), one.blocks[0])) steps.push(
|
|
556
|
+
chunkJYKSWEXT_cjs.placeEntries(layout, at, 1, [adopted(entry, next)]);
|
|
557
|
+
if (!chunkWZA5S5EJ_cjs.sameValue(chunkWZA5S5EJ_cjs.blockById(doc, entry.id), one.blocks[0])) steps.push(chunkG37GQ5JE_cjs.replaceBlockStep(one.blocks[0]));
|
|
558
558
|
}
|
|
559
559
|
return steps;
|
|
560
560
|
}
|
|
@@ -562,31 +562,31 @@ var bare = (op) => op === void 0 || op.attributes === void 0;
|
|
|
562
562
|
function split(layout, delta, required) {
|
|
563
563
|
const [at, ops] = delta[0]?.retain === void 0 ? [0, delta] : [delta[0].retain, delta.slice(1)];
|
|
564
564
|
const map = ops[0]?.insert;
|
|
565
|
-
const name =
|
|
565
|
+
const name = chunkJYKSWEXT_cjs.regionNameOf(ops[1]?.insert);
|
|
566
566
|
if (ops.length !== 2 || !(map instanceof Y__namespace.Map) || name === null || !bare(delta[0])) return null;
|
|
567
|
-
const marker =
|
|
568
|
-
const span =
|
|
567
|
+
const marker = chunkJYKSWEXT_cjs.readMarker(map);
|
|
568
|
+
const span = chunkJYKSWEXT_cjs.spanAt(layout, at);
|
|
569
569
|
if (span.entry === null || !isPlain(span.entry)) return null;
|
|
570
570
|
const region2 = span.entry.regions.at(-1);
|
|
571
571
|
const seg = region2?.segs[0];
|
|
572
|
-
const rel = at -
|
|
572
|
+
const rel = at - chunkJYKSWEXT_cjs.spanStart(layout, span);
|
|
573
573
|
if (marker === null || layout.entries.has(marker.id) || seg === void 0) return null;
|
|
574
574
|
if (rel < seg.at || rel > seg.at + seg.length) return null;
|
|
575
575
|
if (required(marker.type).some((needed) => needed !== name)) return null;
|
|
576
576
|
const { id, type, indent, attrs } = marker;
|
|
577
577
|
const created = { id, type, indent, attrs: attrs?.toJSON() ?? {}, region: name, regions: {} };
|
|
578
|
-
return { step:
|
|
578
|
+
return { step: chunkG37GQ5JE_cjs.splitBlockStep(span.entry.id, region2.name, chunkJYKSWEXT_cjs.offsetIn(seg, rel), created), map };
|
|
579
579
|
}
|
|
580
580
|
function join(layout, delta) {
|
|
581
581
|
const [at, ops] = delta[0]?.retain === void 0 ? [0, delta] : [delta[0].retain, delta.slice(1)];
|
|
582
582
|
if (ops.length !== 1 || ops[0].delete !== 2 || !bare(delta[0])) return null;
|
|
583
|
-
const span =
|
|
583
|
+
const span = chunkJYKSWEXT_cjs.spanAt(layout, at, true);
|
|
584
584
|
const source = span.entry;
|
|
585
585
|
const target = layout.spans[span.index - 1]?.entry ?? null;
|
|
586
|
-
if (
|
|
586
|
+
if (chunkJYKSWEXT_cjs.spanStart(layout, span) !== at || source === null || target === null) return null;
|
|
587
587
|
if (source.regions.length !== 1 || target.regions.length === 0 || source.copies.length > 0) return null;
|
|
588
588
|
if (!isPlain(source) || !isPlain(target)) return null;
|
|
589
|
-
return
|
|
589
|
+
return chunkG37GQ5JE_cjs.joinBlocksStep(target.id, target.regions.at(-1).name, source.id, source.regions[0].name);
|
|
590
590
|
}
|
|
591
591
|
function splitOrJoin(layout, delta, doc, required) {
|
|
592
592
|
const found = split(layout, delta, required);
|
|
@@ -596,8 +596,8 @@ function splitOrJoin(layout, delta, doc, required) {
|
|
|
596
596
|
const { block, target, created } = step.toJSON();
|
|
597
597
|
const kept = layout.entries.get(block ?? target);
|
|
598
598
|
const entries = [rewritten(kept, chunkWZA5S5EJ_cjs.blockById(after, kept.id))];
|
|
599
|
-
if (found !== null) entries.push(
|
|
600
|
-
|
|
599
|
+
if (found !== null) entries.push(chunkJYKSWEXT_cjs.cleanEntry(chunkWZA5S5EJ_cjs.blockById(after, created.id), found.map));
|
|
600
|
+
chunkJYKSWEXT_cjs.placeEntries(layout, chunkJYKSWEXT_cjs.indexOf(layout, kept.span), found === null ? 2 : 1, entries);
|
|
601
601
|
return step;
|
|
602
602
|
}
|
|
603
603
|
|
|
@@ -608,28 +608,28 @@ function markerSteps(shared, event, doc, read) {
|
|
|
608
608
|
const marker = target.parent === shared.text ? target : target.parent;
|
|
609
609
|
const keys = [...event.keysChanged];
|
|
610
610
|
if (target === marker && keys.includes("id")) throw REREAD;
|
|
611
|
-
const fields =
|
|
611
|
+
const fields = chunkJYKSWEXT_cjs.readMarker(marker);
|
|
612
612
|
const block = fields === null ? void 0 : chunkWZA5S5EJ_cjs.blockById(doc, fields.id);
|
|
613
613
|
const entry = block === void 0 ? void 0 : shared.layout.entries.get(block.id);
|
|
614
614
|
if (block === void 0 || entry?.map !== marker || read.has(marker)) return [];
|
|
615
615
|
if (target !== marker) {
|
|
616
616
|
if (fields.attrs !== target) return [];
|
|
617
|
-
return [
|
|
617
|
+
return [chunkG37GQ5JE_cjs.setAttrsStep(block.id, Object.fromEntries(keys.map((key) => [key, target.get(key)])))];
|
|
618
618
|
}
|
|
619
619
|
if (keys.includes("type")) {
|
|
620
620
|
read.set(marker, entry);
|
|
621
621
|
return [];
|
|
622
622
|
}
|
|
623
623
|
const { indent, attrs } = fields;
|
|
624
|
-
if (keys.every((key) => key === "indent")) return [
|
|
625
|
-
return [
|
|
624
|
+
if (keys.every((key) => key === "indent")) return [chunkG37GQ5JE_cjs.setIndentStep(block.id, indent)];
|
|
625
|
+
return [chunkG37GQ5JE_cjs.replaceBlockStep({ ...block, indent, attrs: attrs?.toJSON() ?? {} })];
|
|
626
626
|
}
|
|
627
627
|
function contentSteps(shared, events, doc) {
|
|
628
628
|
const textEvent = events.find((event) => event.target === shared.text);
|
|
629
629
|
const delta = textEvent?.delta ?? [];
|
|
630
630
|
const touched = touchedEntries(shared.layout, delta);
|
|
631
631
|
const structure = splitOrJoin(shared.layout, delta, doc, shared.required);
|
|
632
|
-
const steps = structure === null ?
|
|
632
|
+
const steps = structure === null ? chunkJYKSWEXT_cjs.textSteps(shared.layout, delta) : [structure];
|
|
633
633
|
if (steps === null && touched === null) throw REREAD;
|
|
634
634
|
const read = steps === null ? touched : /* @__PURE__ */ new Map();
|
|
635
635
|
const all = [];
|
|
@@ -658,7 +658,7 @@ function readRemote(shared, events, doc) {
|
|
|
658
658
|
});
|
|
659
659
|
const next = chunkWZA5S5EJ_cjs.createDoc(blocks);
|
|
660
660
|
const failed = error === REREAD ? void 0 : error;
|
|
661
|
-
return { steps:
|
|
661
|
+
return { steps: chunkG37GQ5JE_cjs.sameDoc(next, doc) ? [] : [chunkG37GQ5JE_cjs.replaceDocStep(next)], structural: true, failed };
|
|
662
662
|
}
|
|
663
663
|
}
|
|
664
664
|
|
|
@@ -674,15 +674,15 @@ function bind(editor, text2, options) {
|
|
|
674
674
|
const held2 = /* @__PURE__ */ new WeakMap();
|
|
675
675
|
const written = /* @__PURE__ */ new WeakSet();
|
|
676
676
|
const hold = (transaction) => {
|
|
677
|
-
if (!ours(transaction.origin)) held2.set(transaction,
|
|
677
|
+
if (!ours(transaction.origin)) held2.set(transaction, chunkJYKSWEXT_cjs.holdSelection(text2, shared.layout, editor.state.selection));
|
|
678
678
|
};
|
|
679
679
|
const observer = (events, transaction) => {
|
|
680
680
|
if (ours(transaction.origin)) return;
|
|
681
681
|
const { steps, structural, failed } = readRemote(shared, events, editor.state.doc);
|
|
682
682
|
if (steps.length > 0 && transaction.origin !== history.manager) {
|
|
683
|
-
|
|
683
|
+
chunkJYKSWEXT_cjs.applyRemote(editor, steps, structural ? chunkJYKSWEXT_cjs.restoreSelection(text2, shared.layout, held2.get(transaction)) : null);
|
|
684
684
|
} else if (steps.length > 0) {
|
|
685
|
-
const tr =
|
|
685
|
+
const tr = chunkJYKSWEXT_cjs.sharedChange(editor, steps, history.hint(), "history");
|
|
686
686
|
written.add(tr);
|
|
687
687
|
editor.dispatch(tr);
|
|
688
688
|
}
|
|
@@ -730,12 +730,12 @@ function undoHistory(text2, origin) {
|
|
|
730
730
|
if (tr.getMeta("closeHistory") === true) group = null;
|
|
731
731
|
return;
|
|
732
732
|
}
|
|
733
|
-
const next =
|
|
734
|
-
const continues = tr.getMeta(
|
|
733
|
+
const next = chunkG37GQ5JE_cjs.groupOf(tr);
|
|
734
|
+
const continues = tr.getMeta(chunkG37GQ5JE_cjs.HISTORY_GROUP) !== void 0 || chunkG37GQ5JE_cjs.continuesEdit(tr, end);
|
|
735
735
|
const captured = next !== null && next === group && tr.time - time < GROUP_DELAY && continues;
|
|
736
736
|
if (!captured) manager.stopCapturing();
|
|
737
737
|
group = next;
|
|
738
|
-
end =
|
|
738
|
+
end = chunkG37GQ5JE_cjs.editEnd(tr) ?? (captured ? end : null);
|
|
739
739
|
time = tr.time;
|
|
740
740
|
before = tr.before.selection;
|
|
741
741
|
},
|
|
@@ -804,18 +804,18 @@ function yjsCollaboration(options) {
|
|
|
804
804
|
canRedo: () => binding !== null && history.manager.canRedo()
|
|
805
805
|
}
|
|
806
806
|
};
|
|
807
|
-
|
|
807
|
+
chunkJYKSWEXT_cjs.holdBinding(collaboration, () => binding);
|
|
808
808
|
return collaboration;
|
|
809
809
|
}
|
|
810
810
|
|
|
811
811
|
// src/engine/collab/collaboration-link.ts
|
|
812
|
-
var linkKey =
|
|
812
|
+
var linkKey = chunkG37GQ5JE_cjs.createPluginKey("collaborationLink");
|
|
813
813
|
var linkPlugin = {
|
|
814
814
|
key: linkKey,
|
|
815
815
|
init: () => ({ mounts: 0, disconnect: null, warned: false }),
|
|
816
816
|
apply: (_tr, link) => link
|
|
817
817
|
};
|
|
818
|
-
var linkOf = (state) =>
|
|
818
|
+
var linkOf = (state) => chunkG37GQ5JE_cjs.getPluginState(state, linkKey);
|
|
819
819
|
|
|
820
820
|
// src/engine/collab/warn-host-blocks.ts
|
|
821
821
|
function warnHostBlocks() {
|
|
@@ -826,7 +826,7 @@ function warnHostBlocks() {
|
|
|
826
826
|
}
|
|
827
827
|
|
|
828
828
|
// src/engine/collab/collaboration-extension.ts
|
|
829
|
-
var providerKey =
|
|
829
|
+
var providerKey = chunkG37GQ5JE_cjs.createPluginKey(chunkG37GQ5JE_cjs.HISTORY_PROVIDER);
|
|
830
830
|
function providing(history) {
|
|
831
831
|
const provider = {
|
|
832
832
|
undo: (dryRun) => dryRun ? history.canUndo() : history.undo(),
|
|
@@ -836,7 +836,7 @@ function providing(history) {
|
|
|
836
836
|
}
|
|
837
837
|
function collaborationExtension(adapter) {
|
|
838
838
|
const { history } = adapter;
|
|
839
|
-
return
|
|
839
|
+
return chunkG37GQ5JE_cjs.defineExtension({
|
|
840
840
|
name: "collaboration",
|
|
841
841
|
plugins: history === void 0 ? [linkPlugin] : [linkPlugin, providing(history)],
|
|
842
842
|
onMount(editor) {
|
|
@@ -871,7 +871,7 @@ function collaborationExtension(adapter) {
|
|
|
871
871
|
|
|
872
872
|
Object.defineProperty(exports, "applyRemote", {
|
|
873
873
|
enumerable: true,
|
|
874
|
-
get: function () { return
|
|
874
|
+
get: function () { return chunkJYKSWEXT_cjs.applyRemote; }
|
|
875
875
|
});
|
|
876
876
|
exports.collaborationExtension = collaborationExtension;
|
|
877
877
|
exports.yjsCollaboration = yjsCollaboration;
|
package/dist/yjs.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { holdBinding, writeBlocks, createLayout, emptySpan, placeEntries, cleanEntry, applyRemote, holdSelection, restoreSelection, sharedChange, attrsMap, isAtomEmbed, textSteps, indexOf, regionOf, spanStart, deleteText, pointOf, markerOf, writeBlock, textLength, piecesOf, grow, insertInline, inlineOfOps, readMarker, regionNameOf, spanAt, definedEntries, regionStart, offsetIn, markAttribute } from './chunk-
|
|
2
|
-
export { applyRemote } from './chunk-
|
|
3
|
-
import { createPluginKey, HISTORY_PROVIDER, defineExtension, getPluginState, sameDoc, replaceDocStep, groupOf, HISTORY_GROUP, continuesEdit, editEnd, setAttrsStep, setIndentStep, replaceBlockStep, splitBlockStep, joinBlocksStep } from './chunk-
|
|
1
|
+
import { holdBinding, writeBlocks, createLayout, emptySpan, placeEntries, cleanEntry, applyRemote, holdSelection, restoreSelection, sharedChange, attrsMap, isAtomEmbed, textSteps, indexOf, regionOf, spanStart, deleteText, pointOf, markerOf, writeBlock, textLength, piecesOf, grow, insertInline, inlineOfOps, readMarker, regionNameOf, spanAt, definedEntries, regionStart, offsetIn, markAttribute } from './chunk-25HNTVEI.js';
|
|
2
|
+
export { applyRemote } from './chunk-25HNTVEI.js';
|
|
3
|
+
import { createPluginKey, HISTORY_PROVIDER, defineExtension, getPluginState, sameDoc, replaceDocStep, groupOf, HISTORY_GROUP, continuesEdit, editEnd, setAttrsStep, setIndentStep, replaceBlockStep, splitBlockStep, joinBlocksStep } from './chunk-KXOAV7AT.js';
|
|
4
4
|
import './chunk-CSKKSXCE.js';
|
|
5
5
|
import { blockById, sameValue, createDoc, equalInline, sliceInline, inlineLength, equalNode, text } from './chunk-BJTOLCRR.js';
|
|
6
6
|
import * as Y from 'yjs';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "quoin-editor",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.3",
|
|
4
4
|
"description": "Markdown-native block editor for React: live formatting, Notion-style menus, drag and drop, collaboration hooks and your own React blocks. MIT.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": {
|