@ai-matrx/office 0.8.0 → 0.8.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/dist/chunk-47MIGBMH.js +148 -0
- package/dist/chunk-47MIGBMH.js.map +1 -0
- package/dist/{chunk-BWMAYLW4.cjs → chunk-6Z3Y6DUI.cjs} +7 -7
- package/dist/chunk-6Z3Y6DUI.cjs.map +1 -0
- package/dist/chunk-MQB2ZK2F.cjs +148 -0
- package/dist/chunk-MQB2ZK2F.cjs.map +1 -0
- package/dist/chunk-QZE7HBZB.cjs.map +1 -1
- package/dist/{chunk-O6FTSXHE.cjs → chunk-UBLEFLES.cjs} +40 -10
- package/dist/chunk-UBLEFLES.cjs.map +1 -0
- package/dist/{chunk-IDEA5UXK.js → chunk-XMM62UAT.js} +2 -2
- package/dist/{chunk-PI473GES.js → chunk-Z247F527.js} +36 -6
- package/dist/chunk-Z247F527.js.map +1 -0
- package/dist/chunk-ZDZCCOUB.cjs.map +1 -1
- package/dist/docs-io.cjs +9 -10
- package/dist/docs-io.cjs.map +1 -1
- package/dist/docs-io.js +2 -3
- package/dist/docs-io.js.map +1 -1
- package/dist/docs-tools.cjs +40 -129
- package/dist/docs-tools.cjs.map +1 -1
- package/dist/docs-tools.d.cts +21 -14
- package/dist/docs-tools.d.ts +21 -14
- package/dist/docs-tools.js +21 -110
- package/dist/docs-tools.js.map +1 -1
- package/dist/docs.cjs +19 -4
- package/dist/docs.cjs.map +1 -1
- package/dist/docs.d.cts +5 -0
- package/dist/docs.d.ts +5 -0
- package/dist/docs.js +18 -3
- package/dist/docs.js.map +1 -1
- package/dist/matrxImagePorts-JDFYE4QI.cjs.map +1 -1
- package/dist/sheets-xlsx.cjs.map +1 -1
- package/dist/sheets.cjs.map +1 -1
- package/dist/univer-collab.cjs +11 -1
- package/dist/univer-collab.cjs.map +1 -1
- package/dist/univer-collab.d.cts +7 -1
- package/dist/univer-collab.d.ts +7 -1
- package/dist/univer-collab.js +11 -1
- package/dist/univer-collab.js.map +1 -1
- package/dist/xlsx-to-univer-AQAXU3TC.cjs.map +1 -1
- package/package.json +6 -6
- package/dist/chunk-2UBGQUXW.cjs +0 -37
- package/dist/chunk-2UBGQUXW.cjs.map +0 -1
- package/dist/chunk-BWMAYLW4.cjs.map +0 -1
- package/dist/chunk-MPKXXZZV.js +0 -37
- package/dist/chunk-MPKXXZZV.js.map +0 -1
- package/dist/chunk-O6FTSXHE.cjs.map +0 -1
- package/dist/chunk-PI473GES.js.map +0 -1
- /package/dist/{chunk-IDEA5UXK.js.map → chunk-XMM62UAT.js.map} +0 -0
package/dist/univer-collab.d.cts
CHANGED
|
@@ -373,6 +373,12 @@ interface DocsOtRoom {
|
|
|
373
373
|
isSaver(): boolean;
|
|
374
374
|
stop(): void;
|
|
375
375
|
}
|
|
376
|
+
/**
|
|
377
|
+
* Keys in one canonical order. The log stores groups as jsonb, which returns object keys in its own order, so an
|
|
378
|
+
* op read back from the door is the same op with its keys moved. The session compares wire forms (its ack check)
|
|
379
|
+
* through `encode`, so `encode` must not depend on key order or every acknowledgement looks like a mismatch.
|
|
380
|
+
*/
|
|
381
|
+
declare function canonicalKeys<T>(v: T): T;
|
|
376
382
|
interface UndoItem {
|
|
377
383
|
unitID?: string;
|
|
378
384
|
undoMutations?: Array<{
|
|
@@ -461,4 +467,4 @@ interface DocumentOtFactoryOptions {
|
|
|
461
467
|
/** The `DocumentModel.startOtRoom` factory for one document. */
|
|
462
468
|
declare function documentOtFactory(o: DocumentOtFactoryOptions): DocumentOtFactory;
|
|
463
469
|
|
|
464
|
-
export { COLLAB_COVERED_KEY, type CollabBase, type CollabMutationInfo, type CollabProviderLike, type CommandServiceLike, DOCS_COLLAB_PROTO, DOCS_TRANSFORM_VERSION, DOC_LOCAL_KEYS, type DocsLocalMutation, type DocsLost, type DocsOp, type DocsOtNotice, type DocsOtPort, type DocsOtRoom, type DocsTransformResult, type DocumentOtFactoryOptions, type OpenDocsOtRoomOptions, type OtRoomsKnob, RICH_TEXT_EDITING, SENDER_VIEW_PARAMS, WorkbookCollabSession, type WorkbookCollabSessionOptions, applyDocsOp, canonicalDocsSnapshot, canonicalDocsString, composeDocsOps, docsStateHash, documentOtFactory, documentUsesOrderedRoom, dropEmptyStyleRetains, invertDocsOp, isCellEditorScratch, isNoopDocsOp, normalizeDocsOp, openDocsOtRoom, rebaseUndoStack, stampCovered, stampDeterministicIds, stripSenderView, takeCovered, transformDocsOp, transformTextX, undoStacksOf };
|
|
470
|
+
export { COLLAB_COVERED_KEY, type CollabBase, type CollabMutationInfo, type CollabProviderLike, type CommandServiceLike, DOCS_COLLAB_PROTO, DOCS_TRANSFORM_VERSION, DOC_LOCAL_KEYS, type DocsLocalMutation, type DocsLost, type DocsOp, type DocsOtNotice, type DocsOtPort, type DocsOtRoom, type DocsTransformResult, type DocumentOtFactoryOptions, type OpenDocsOtRoomOptions, type OtRoomsKnob, RICH_TEXT_EDITING, SENDER_VIEW_PARAMS, WorkbookCollabSession, type WorkbookCollabSessionOptions, applyDocsOp, canonicalDocsSnapshot, canonicalDocsString, canonicalKeys, composeDocsOps, docsStateHash, documentOtFactory, documentUsesOrderedRoom, dropEmptyStyleRetains, invertDocsOp, isCellEditorScratch, isNoopDocsOp, normalizeDocsOp, openDocsOtRoom, rebaseUndoStack, stampCovered, stampDeterministicIds, stripSenderView, takeCovered, transformDocsOp, transformTextX, undoStacksOf };
|
package/dist/univer-collab.d.ts
CHANGED
|
@@ -373,6 +373,12 @@ interface DocsOtRoom {
|
|
|
373
373
|
isSaver(): boolean;
|
|
374
374
|
stop(): void;
|
|
375
375
|
}
|
|
376
|
+
/**
|
|
377
|
+
* Keys in one canonical order. The log stores groups as jsonb, which returns object keys in its own order, so an
|
|
378
|
+
* op read back from the door is the same op with its keys moved. The session compares wire forms (its ack check)
|
|
379
|
+
* through `encode`, so `encode` must not depend on key order or every acknowledgement looks like a mismatch.
|
|
380
|
+
*/
|
|
381
|
+
declare function canonicalKeys<T>(v: T): T;
|
|
376
382
|
interface UndoItem {
|
|
377
383
|
unitID?: string;
|
|
378
384
|
undoMutations?: Array<{
|
|
@@ -461,4 +467,4 @@ interface DocumentOtFactoryOptions {
|
|
|
461
467
|
/** The `DocumentModel.startOtRoom` factory for one document. */
|
|
462
468
|
declare function documentOtFactory(o: DocumentOtFactoryOptions): DocumentOtFactory;
|
|
463
469
|
|
|
464
|
-
export { COLLAB_COVERED_KEY, type CollabBase, type CollabMutationInfo, type CollabProviderLike, type CommandServiceLike, DOCS_COLLAB_PROTO, DOCS_TRANSFORM_VERSION, DOC_LOCAL_KEYS, type DocsLocalMutation, type DocsLost, type DocsOp, type DocsOtNotice, type DocsOtPort, type DocsOtRoom, type DocsTransformResult, type DocumentOtFactoryOptions, type OpenDocsOtRoomOptions, type OtRoomsKnob, RICH_TEXT_EDITING, SENDER_VIEW_PARAMS, WorkbookCollabSession, type WorkbookCollabSessionOptions, applyDocsOp, canonicalDocsSnapshot, canonicalDocsString, composeDocsOps, docsStateHash, documentOtFactory, documentUsesOrderedRoom, dropEmptyStyleRetains, invertDocsOp, isCellEditorScratch, isNoopDocsOp, normalizeDocsOp, openDocsOtRoom, rebaseUndoStack, stampCovered, stampDeterministicIds, stripSenderView, takeCovered, transformDocsOp, transformTextX, undoStacksOf };
|
|
470
|
+
export { COLLAB_COVERED_KEY, type CollabBase, type CollabMutationInfo, type CollabProviderLike, type CommandServiceLike, DOCS_COLLAB_PROTO, DOCS_TRANSFORM_VERSION, DOC_LOCAL_KEYS, type DocsLocalMutation, type DocsLost, type DocsOp, type DocsOtNotice, type DocsOtPort, type DocsOtRoom, type DocsTransformResult, type DocumentOtFactoryOptions, type OpenDocsOtRoomOptions, type OtRoomsKnob, RICH_TEXT_EDITING, SENDER_VIEW_PARAMS, WorkbookCollabSession, type WorkbookCollabSessionOptions, applyDocsOp, canonicalDocsSnapshot, canonicalDocsString, canonicalKeys, composeDocsOps, docsStateHash, documentOtFactory, documentUsesOrderedRoom, dropEmptyStyleRetains, invertDocsOp, isCellEditorScratch, isNoopDocsOp, normalizeDocsOp, openDocsOtRoom, rebaseUndoStack, stampCovered, stampDeterministicIds, stripSenderView, takeCovered, transformDocsOp, transformTextX, undoStacksOf };
|
package/dist/univer-collab.js
CHANGED
|
@@ -976,6 +976,15 @@ function stampDeterministicIds(snapshot) {
|
|
|
976
976
|
import { isOpBarrier, openOpSession } from "@ai-matrx/data/realtime/collab";
|
|
977
977
|
var RICH_TEXT_EDITING = "doc.mutation.rich-text-editing";
|
|
978
978
|
var DOCS_COLLAB_PROTO = 1;
|
|
979
|
+
function canonicalKeys(v) {
|
|
980
|
+
if (Array.isArray(v)) return v.map(canonicalKeys);
|
|
981
|
+
if (v && typeof v === "object") {
|
|
982
|
+
const out = {};
|
|
983
|
+
for (const k of Object.keys(v).sort()) out[k] = canonicalKeys(v[k]);
|
|
984
|
+
return out;
|
|
985
|
+
}
|
|
986
|
+
return v;
|
|
987
|
+
}
|
|
979
988
|
function branches(op) {
|
|
980
989
|
if (!Array.isArray(op) || op.length === 0) return [];
|
|
981
990
|
return Array.isArray(op[0]) ? op : [op];
|
|
@@ -1066,7 +1075,7 @@ function openDocsOtRoom(o) {
|
|
|
1066
1075
|
},
|
|
1067
1076
|
compose: (a, b) => composeDocsOps(a, b),
|
|
1068
1077
|
isNoop: (op) => isNoopDocsOp(op),
|
|
1069
|
-
encode: (op) => [{ cmd: "docs.edit", mutations: [{ id: RICH_TEXT_EDITING, params: { segmentId: "", actions: op } }] }],
|
|
1078
|
+
encode: (op) => [{ cmd: "docs.edit", mutations: [{ id: RICH_TEXT_EDITING, params: { segmentId: "", actions: canonicalKeys(op) } }] }],
|
|
1070
1079
|
decode(groups) {
|
|
1071
1080
|
let op = null;
|
|
1072
1081
|
for (const g of groups) {
|
|
@@ -1357,6 +1366,7 @@ export {
|
|
|
1357
1366
|
applyDocsOp,
|
|
1358
1367
|
canonicalDocsSnapshot,
|
|
1359
1368
|
canonicalDocsString,
|
|
1369
|
+
canonicalKeys,
|
|
1360
1370
|
composeDocsOps,
|
|
1361
1371
|
docsStateHash,
|
|
1362
1372
|
documentOtFactory,
|