@ai-matrx/office 0.8.25 → 0.8.27
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 +29 -0
- package/dist/{chunk-TRA2BTPL.js → chunk-CAWDEHVL.js} +20 -6
- package/dist/chunk-CAWDEHVL.js.map +1 -0
- package/dist/{chunk-ZDZCCOUB.cjs → chunk-IJNET5TT.cjs} +20 -6
- package/dist/chunk-IJNET5TT.cjs.map +1 -0
- package/dist/{chunk-JMVPAJJA.cjs → chunk-LHTG72LS.cjs} +20 -6
- package/dist/chunk-LHTG72LS.cjs.map +1 -0
- package/dist/{chunk-WKBWRG7N.js → chunk-RREOARR4.js} +20 -6
- package/dist/chunk-RREOARR4.js.map +1 -0
- package/dist/collab-sheets-transform.cjs +215 -14
- package/dist/collab-sheets-transform.cjs.map +1 -1
- package/dist/collab-sheets-transform.d.cts +7 -2
- package/dist/collab-sheets-transform.d.ts +7 -2
- package/dist/collab-sheets-transform.js +215 -14
- package/dist/collab-sheets-transform.js.map +1 -1
- package/dist/docs-host.cjs.map +1 -1
- package/dist/docs-host.d.cts +8 -0
- package/dist/docs-host.d.ts +8 -0
- package/dist/docs-host.js.map +1 -1
- package/dist/docs-io.cjs +6 -6
- package/dist/docs-io.js +1 -1
- package/dist/docs.cjs +36 -2
- package/dist/docs.cjs.map +1 -1
- package/dist/docs.d.cts +25 -3
- package/dist/docs.d.ts +25 -3
- package/dist/docs.js +35 -1
- package/dist/docs.js.map +1 -1
- package/dist/sheets-comment-anchors.cjs +44 -3
- package/dist/sheets-comment-anchors.cjs.map +1 -1
- package/dist/sheets-comment-anchors.js +42 -1
- package/dist/sheets-comment-anchors.js.map +1 -1
- package/dist/sheets-xlsx.cjs +6 -6
- package/dist/sheets-xlsx.js +1 -1
- package/dist/sheets.cjs +3 -3
- package/dist/sheets.d.cts +9 -1
- package/dist/sheets.d.ts +9 -1
- package/dist/sheets.js +1 -1
- package/dist/univer-collab.cjs +315 -37
- package/dist/univer-collab.cjs.map +1 -1
- package/dist/univer-collab.d.cts +9 -5
- package/dist/univer-collab.d.ts +9 -5
- package/dist/univer-collab.js +300 -18
- package/dist/univer-collab.js.map +1 -1
- package/package.json +2 -2
- package/dist/chunk-JMVPAJJA.cjs.map +0 -1
- package/dist/chunk-TRA2BTPL.js.map +0 -1
- package/dist/chunk-WKBWRG7N.js.map +0 -1
- package/dist/chunk-ZDZCCOUB.cjs.map +0 -1
package/dist/docs-host.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/docs/ports.ts"],"sourcesContent":["/**\n * The host ports of the Docs model and io.\n *\n * The package owns the document service, the open-document model and the converters, but two things\n * belong to the app that mounts them: the database client (a package owns no client) and the server\n * request that converts a .docx to .odt / .rtf (the app owns the server URL, auth and error capture).\n * The host states them once at start-up with `configureDocsHost`. State sits on a `globalThis` slot\n * so a dual-bundled copy of the package still sees one host. An unconfigured port THROWS naming\n * itself (nothing fails silently).\n */\nimport type { SupabaseClient } from \"@supabase/supabase-js\";\n\n/** A Supabase client over any schema: the package cannot import the app's generated database types. */\nexport type DocsSupabase = SupabaseClient<any, any, any>;\n\nexport interface DocsHostPorts {\n /** The app's database client (signed in as the person). */\n getSupabase(): DocsSupabase;\n /** An authenticated request to the Matrx server returning the raw `Response` (the open-format converter). */\n requestRaw(path: string, init: { method: \"POST\"; body: FormData }): Promise<Response>;\n}\n\nconst SLOT = Symbol.for(\"ai-matrx.office.docs-host\");\ntype Slot = { ports?: DocsHostPorts };\nconst slot = (): Slot => {\n const g = globalThis as Record<symbol, Slot | undefined>;\n return (g[SLOT] ??= {});\n};\n\nexport function configureDocsHost(ports: DocsHostPorts): void {\n slot().ports = ports;\n}\n\nexport function getDocsHost(): DocsHostPorts {\n const ports = slot().ports;\n if (!ports) throw new Error(\"@ai-matrx/office/docs: configureDocsHost(ports) was not called before the document service ran.\");\n return ports;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;
|
|
1
|
+
{"version":3,"sources":["../src/docs/ports.ts"],"sourcesContent":["/**\n * The host ports of the Docs model and io.\n *\n * The package owns the document service, the open-document model and the converters, but two things\n * belong to the app that mounts them: the database client (a package owns no client) and the server\n * request that converts a .docx to .odt / .rtf (the app owns the server URL, auth and error capture).\n * The host states them once at start-up with `configureDocsHost`. State sits on a `globalThis` slot\n * so a dual-bundled copy of the package still sees one host. An unconfigured port THROWS naming\n * itself (nothing fails silently).\n */\nimport type { SupabaseClient } from \"@supabase/supabase-js\";\n\n/** A Supabase client over any schema: the package cannot import the app's generated database types. */\nexport type DocsSupabase = SupabaseClient<any, any, any>;\n\nexport interface DocsHostPorts {\n /** The app's database client (signed in as the person). */\n getSupabase(): DocsSupabase;\n /** An authenticated request to the Matrx server returning the raw `Response` (the open-format converter). */\n requestRaw(path: string, init: { method: \"POST\"; body: FormData }): Promise<Response>;\n /**\n * The record's CURRENT content, including what people are typing in a live co-editing room and have not saved\n * (the app folds the room; the package owns no server). Optional: a host without co-editing leaves it out and\n * a copy takes the newest saved snapshot. It may throw; the copy then fails with its message, never silently.\n */\n readCurrentSnapshot?(documentId: string): Promise<{ snapshot: unknown | null }>;\n}\n\nconst SLOT = Symbol.for(\"ai-matrx.office.docs-host\");\ntype Slot = { ports?: DocsHostPorts };\nconst slot = (): Slot => {\n const g = globalThis as Record<symbol, Slot | undefined>;\n return (g[SLOT] ??= {});\n};\n\nexport function configureDocsHost(ports: DocsHostPorts): void {\n slot().ports = ports;\n}\n\nexport function getDocsHost(): DocsHostPorts {\n const ports = slot().ports;\n if (!ports) throw new Error(\"@ai-matrx/office/docs: configureDocsHost(ports) was not called before the document service ran.\");\n return ports;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA4BA,IAAM,OAAO,uBAAO,IAAI,2BAA2B;AAEnD,IAAM,OAAO,MAAY;AACvB,QAAM,IAAI;AACV,SAAQ,EAAE,IAAI,MAAM,CAAC;AACvB;AAEO,SAAS,kBAAkB,OAA4B;AAC5D,OAAK,EAAE,QAAQ;AACjB;AAEO,SAAS,cAA6B;AAC3C,QAAM,QAAQ,KAAK,EAAE;AACrB,MAAI,CAAC,MAAO,OAAM,IAAI,MAAM,iGAAiG;AAC7H,SAAO;AACT;","names":[]}
|
package/dist/docs-host.d.cts
CHANGED
|
@@ -21,6 +21,14 @@ interface DocsHostPorts {
|
|
|
21
21
|
method: "POST";
|
|
22
22
|
body: FormData;
|
|
23
23
|
}): Promise<Response>;
|
|
24
|
+
/**
|
|
25
|
+
* The record's CURRENT content, including what people are typing in a live co-editing room and have not saved
|
|
26
|
+
* (the app folds the room; the package owns no server). Optional: a host without co-editing leaves it out and
|
|
27
|
+
* a copy takes the newest saved snapshot. It may throw; the copy then fails with its message, never silently.
|
|
28
|
+
*/
|
|
29
|
+
readCurrentSnapshot?(documentId: string): Promise<{
|
|
30
|
+
snapshot: unknown | null;
|
|
31
|
+
}>;
|
|
24
32
|
}
|
|
25
33
|
declare function configureDocsHost(ports: DocsHostPorts): void;
|
|
26
34
|
declare function getDocsHost(): DocsHostPorts;
|
package/dist/docs-host.d.ts
CHANGED
|
@@ -21,6 +21,14 @@ interface DocsHostPorts {
|
|
|
21
21
|
method: "POST";
|
|
22
22
|
body: FormData;
|
|
23
23
|
}): Promise<Response>;
|
|
24
|
+
/**
|
|
25
|
+
* The record's CURRENT content, including what people are typing in a live co-editing room and have not saved
|
|
26
|
+
* (the app folds the room; the package owns no server). Optional: a host without co-editing leaves it out and
|
|
27
|
+
* a copy takes the newest saved snapshot. It may throw; the copy then fails with its message, never silently.
|
|
28
|
+
*/
|
|
29
|
+
readCurrentSnapshot?(documentId: string): Promise<{
|
|
30
|
+
snapshot: unknown | null;
|
|
31
|
+
}>;
|
|
24
32
|
}
|
|
25
33
|
declare function configureDocsHost(ports: DocsHostPorts): void;
|
|
26
34
|
declare function getDocsHost(): DocsHostPorts;
|
package/dist/docs-host.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/docs/ports.ts"],"sourcesContent":["/**\n * The host ports of the Docs model and io.\n *\n * The package owns the document service, the open-document model and the converters, but two things\n * belong to the app that mounts them: the database client (a package owns no client) and the server\n * request that converts a .docx to .odt / .rtf (the app owns the server URL, auth and error capture).\n * The host states them once at start-up with `configureDocsHost`. State sits on a `globalThis` slot\n * so a dual-bundled copy of the package still sees one host. An unconfigured port THROWS naming\n * itself (nothing fails silently).\n */\nimport type { SupabaseClient } from \"@supabase/supabase-js\";\n\n/** A Supabase client over any schema: the package cannot import the app's generated database types. */\nexport type DocsSupabase = SupabaseClient<any, any, any>;\n\nexport interface DocsHostPorts {\n /** The app's database client (signed in as the person). */\n getSupabase(): DocsSupabase;\n /** An authenticated request to the Matrx server returning the raw `Response` (the open-format converter). */\n requestRaw(path: string, init: { method: \"POST\"; body: FormData }): Promise<Response>;\n}\n\nconst SLOT = Symbol.for(\"ai-matrx.office.docs-host\");\ntype Slot = { ports?: DocsHostPorts };\nconst slot = (): Slot => {\n const g = globalThis as Record<symbol, Slot | undefined>;\n return (g[SLOT] ??= {});\n};\n\nexport function configureDocsHost(ports: DocsHostPorts): void {\n slot().ports = ports;\n}\n\nexport function getDocsHost(): DocsHostPorts {\n const ports = slot().ports;\n if (!ports) throw new Error(\"@ai-matrx/office/docs: configureDocsHost(ports) was not called before the document service ran.\");\n return ports;\n}\n"],"mappings":";
|
|
1
|
+
{"version":3,"sources":["../src/docs/ports.ts"],"sourcesContent":["/**\n * The host ports of the Docs model and io.\n *\n * The package owns the document service, the open-document model and the converters, but two things\n * belong to the app that mounts them: the database client (a package owns no client) and the server\n * request that converts a .docx to .odt / .rtf (the app owns the server URL, auth and error capture).\n * The host states them once at start-up with `configureDocsHost`. State sits on a `globalThis` slot\n * so a dual-bundled copy of the package still sees one host. An unconfigured port THROWS naming\n * itself (nothing fails silently).\n */\nimport type { SupabaseClient } from \"@supabase/supabase-js\";\n\n/** A Supabase client over any schema: the package cannot import the app's generated database types. */\nexport type DocsSupabase = SupabaseClient<any, any, any>;\n\nexport interface DocsHostPorts {\n /** The app's database client (signed in as the person). */\n getSupabase(): DocsSupabase;\n /** An authenticated request to the Matrx server returning the raw `Response` (the open-format converter). */\n requestRaw(path: string, init: { method: \"POST\"; body: FormData }): Promise<Response>;\n /**\n * The record's CURRENT content, including what people are typing in a live co-editing room and have not saved\n * (the app folds the room; the package owns no server). Optional: a host without co-editing leaves it out and\n * a copy takes the newest saved snapshot. It may throw; the copy then fails with its message, never silently.\n */\n readCurrentSnapshot?(documentId: string): Promise<{ snapshot: unknown | null }>;\n}\n\nconst SLOT = Symbol.for(\"ai-matrx.office.docs-host\");\ntype Slot = { ports?: DocsHostPorts };\nconst slot = (): Slot => {\n const g = globalThis as Record<symbol, Slot | undefined>;\n return (g[SLOT] ??= {});\n};\n\nexport function configureDocsHost(ports: DocsHostPorts): void {\n slot().ports = ports;\n}\n\nexport function getDocsHost(): DocsHostPorts {\n const ports = slot().ports;\n if (!ports) throw new Error(\"@ai-matrx/office/docs: configureDocsHost(ports) was not called before the document service ran.\");\n return ports;\n}\n"],"mappings":";AA4BA,IAAM,OAAO,uBAAO,IAAI,2BAA2B;AAEnD,IAAM,OAAO,MAAY;AACvB,QAAM,IAAI;AACV,SAAQ,EAAE,IAAI,MAAM,CAAC;AACvB;AAEO,SAAS,kBAAkB,OAA4B;AAC5D,OAAK,EAAE,QAAQ;AACjB;AAEO,SAAS,cAA6B;AAC3C,QAAM,QAAQ,KAAK,EAAE;AACrB,MAAI,CAAC,MAAO,OAAM,IAAI,MAAM,iGAAiG;AAC7H,SAAO;AACT;","names":[]}
|
package/dist/docs-io.cjs
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _chunkLHTG72LScjs = require('./chunk-LHTG72LS.cjs');
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
|
|
@@ -419,13 +419,13 @@ async function documentFileToMarkdown(file) {
|
|
|
419
419
|
async function importDocumentFile(file, organizationId) {
|
|
420
420
|
const { markdown, source } = await documentFileToMarkdown(file);
|
|
421
421
|
const name = file.name.replace(/\.[^.]+$/, "").trim() || _chunkXAIKXHHJcjs.deriveDocumentName.call(void 0, markdown);
|
|
422
|
-
const created = await
|
|
422
|
+
const created = await _chunkLHTG72LScjs.createDocument.call(void 0, { name, source, organizationId, description: `Imported from ${file.name}` });
|
|
423
423
|
if (!created.success) throw new Error(`Could not create the document: ${created.error}`);
|
|
424
424
|
const id = created.data.id;
|
|
425
|
-
const snapshot =
|
|
426
|
-
const saved = await
|
|
425
|
+
const snapshot = _chunkLHTG72LScjs.sanitizeUniverDocSnapshot.call(void 0, _chunkXAIKXHHJcjs.markdownToUniverDoc.call(void 0, markdown, name), id);
|
|
426
|
+
const saved = await _chunkLHTG72LScjs.saveDocumentSnapshot.call(void 0, { documentId: id, snapshot, origin: "imported", label: `Imported from ${file.name}` });
|
|
427
427
|
if (!saved.success) {
|
|
428
|
-
await
|
|
428
|
+
await _chunkLHTG72LScjs.deleteDocument.call(void 0, id);
|
|
429
429
|
throw new Error(`Could not save the imported content: ${saved.error}`);
|
|
430
430
|
}
|
|
431
431
|
return { id, name };
|
|
@@ -467,7 +467,7 @@ async function downloadOpenFormat(markdown, format, title) {
|
|
|
467
467
|
const form = new FormData();
|
|
468
468
|
form.append("file", new Blob([docx]), fileName.endsWith(".docx") ? fileName : `${fileName}.docx`);
|
|
469
469
|
form.append("target", target);
|
|
470
|
-
const res = await
|
|
470
|
+
const res = await _chunkLHTG72LScjs.getDocsHost.call(void 0, ).requestRaw("/office/convert-document", { method: "POST", body: form });
|
|
471
471
|
return new Uint8Array(await res.arrayBuffer());
|
|
472
472
|
},
|
|
473
473
|
save: (fileName, bytes, mime) => {
|
package/dist/docs-io.js
CHANGED
package/dist/docs.cjs
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
|
|
19
|
-
var
|
|
19
|
+
var _chunkLHTG72LScjs = require('./chunk-LHTG72LS.cjs');
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
var _chunkNSU6EVJKcjs = require('./chunk-NSU6EVJK.cjs');
|
|
@@ -979,11 +979,17 @@ function commentAnchorPartKey(anchorId) {
|
|
|
979
979
|
function anchorIdOfPartAnchor(anchor) {
|
|
980
980
|
if (!anchor || typeof anchor !== "object") return null;
|
|
981
981
|
const a = anchor;
|
|
982
|
+
if ((a.__kind === "part_anchor" || a.__kind === "text_anchor") && typeof a.anchor_id === "string" && a.anchor_id.length > 0) return a.anchor_id;
|
|
982
983
|
if (a.__kind !== "part_anchor" || typeof a.part_key !== "string") return null;
|
|
983
984
|
if (!a.part_key.startsWith(COMMENT_ANCHOR_PART_PREFIX)) return null;
|
|
984
985
|
const id = a.part_key.slice(COMMENT_ANCHOR_PART_PREFIX.length);
|
|
985
986
|
return id.length > 0 ? id : null;
|
|
986
987
|
}
|
|
988
|
+
function quoteOfCommentAnchor(anchor) {
|
|
989
|
+
if (!anchor || typeof anchor !== "object") return "";
|
|
990
|
+
const a = anchor;
|
|
991
|
+
return typeof a.label === "string" ? a.label : typeof a.exact === "string" ? a.exact : "";
|
|
992
|
+
}
|
|
987
993
|
function commentPartAnchor(anchorId, quote) {
|
|
988
994
|
const label = quote.replace(/\s+/g, " ").trim().slice(0, COMMENT_ANCHOR_LABEL_MAX);
|
|
989
995
|
return { __kind: "part_anchor", part_key: commentAnchorPartKey(anchorId), ...label ? { label } : {} };
|
|
@@ -1022,6 +1028,34 @@ function removeCommentAnchorActions(documentDataModel, anchorId) {
|
|
|
1022
1028
|
if (!textX) return null;
|
|
1023
1029
|
return _core.JSONX.getInstance().editOp(textX.serialize(), ["body"]);
|
|
1024
1030
|
}
|
|
1031
|
+
var RETAIN_KEYS = /* @__PURE__ */ new Set(["t", "len", "body", "coverType"]);
|
|
1032
|
+
var RANGE_KEYS = /* @__PURE__ */ new Set(["rangeId", "rangeType", "startIndex", "endIndex", "properties"]);
|
|
1033
|
+
var isObj = (v) => !!v && typeof v === "object" && !Array.isArray(v);
|
|
1034
|
+
var keysOf = (o) => Object.keys(o).filter((k) => o[k] !== void 0);
|
|
1035
|
+
function isDocsAnchorOnlyOp(op) {
|
|
1036
|
+
if (!Array.isArray(op) || op.length !== 2 || op[0] !== "body") return false;
|
|
1037
|
+
const x = op[1];
|
|
1038
|
+
if (!isObj(x) || x.et !== "text-x" || !Array.isArray(x.e) || x.e.length === 0) return false;
|
|
1039
|
+
if (keysOf(x).some((k) => k !== "et" && k !== "e")) return false;
|
|
1040
|
+
for (const c of x.e) {
|
|
1041
|
+
if (!isObj(c) || c.t !== "r" || typeof c.len !== "number") return false;
|
|
1042
|
+
if (keysOf(c).some((k) => !RETAIN_KEYS.has(k))) return false;
|
|
1043
|
+
if ("coverType" in c && typeof c.coverType !== "number") return false;
|
|
1044
|
+
if ("body" in c) {
|
|
1045
|
+
const b = c.body;
|
|
1046
|
+
if (!isObj(b) || keysOf(b).some((k) => k !== "dataStream" && k !== "customRanges")) return false;
|
|
1047
|
+
if (b.dataStream !== void 0 && b.dataStream !== "") return false;
|
|
1048
|
+
if (!Array.isArray(b.customRanges) || b.customRanges.length === 0) return false;
|
|
1049
|
+
for (const r of b.customRanges) {
|
|
1050
|
+
if (!isObj(r) || r.rangeType !== COMMENT_ANCHOR_RANGE_TYPE) return false;
|
|
1051
|
+
if (keysOf(r).some((k) => !RANGE_KEYS.has(k))) return false;
|
|
1052
|
+
}
|
|
1053
|
+
}
|
|
1054
|
+
}
|
|
1055
|
+
return true;
|
|
1056
|
+
}
|
|
1057
|
+
|
|
1058
|
+
|
|
1025
1059
|
|
|
1026
1060
|
|
|
1027
1061
|
|
|
@@ -1075,5 +1109,5 @@ function removeCommentAnchorActions(documentDataModel, anchorId) {
|
|
|
1075
1109
|
|
|
1076
1110
|
|
|
1077
1111
|
|
|
1078
|
-
exports.CARET_HEARTBEAT_MS = CARET_HEARTBEAT_MS; exports.CARET_MAX_RANGES = CARET_MAX_RANGES; exports.CARET_STALE_MS = CARET_STALE_MS; exports.COMMENT_ANCHOR_LABEL_MAX = COMMENT_ANCHOR_LABEL_MAX; exports.COMMENT_ANCHOR_PART_PREFIX = COMMENT_ANCHOR_PART_PREFIX; exports.COMMENT_ANCHOR_RANGE_TYPE = COMMENT_ANCHOR_RANGE_TYPE; exports.DOCUMENT_BODY_MAX_LENGTH = DOCUMENT_BODY_MAX_LENGTH; exports.DOCUMENT_DESCRIPTION_MAX_LENGTH = DOCUMENT_DESCRIPTION_MAX_LENGTH; exports.DOCUMENT_NAME_MAX_LENGTH = DOCUMENT_NAME_MAX_LENGTH; exports.DOCUMENT_SAVE_DELAY_MS = DOCUMENT_SAVE_DELAY_MS; exports.DocumentModel = DocumentModel; exports.EMOJI_GROUPS = EMOJI_GROUPS; exports.MIN_FIT_ZOOM = MIN_FIT_ZOOM; exports.RemoteCaretBook = RemoteCaretBook; exports.SPECIAL_GROUPS = SPECIAL_GROUPS; exports.addCommentAnchorActions = addCommentAnchorActions; exports.anchorIdOfPartAnchor = anchorIdOfPartAnchor; exports.bodyTextOf = bodyTextOf; exports.commentAnchorPartKey = commentAnchorPartKey; exports.commentAnchorsOf = commentAnchorsOf; exports.commentPartAnchor = commentPartAnchor; exports.configureDocsHost =
|
|
1112
|
+
exports.CARET_HEARTBEAT_MS = CARET_HEARTBEAT_MS; exports.CARET_MAX_RANGES = CARET_MAX_RANGES; exports.CARET_STALE_MS = CARET_STALE_MS; exports.COMMENT_ANCHOR_LABEL_MAX = COMMENT_ANCHOR_LABEL_MAX; exports.COMMENT_ANCHOR_PART_PREFIX = COMMENT_ANCHOR_PART_PREFIX; exports.COMMENT_ANCHOR_RANGE_TYPE = COMMENT_ANCHOR_RANGE_TYPE; exports.DOCUMENT_BODY_MAX_LENGTH = DOCUMENT_BODY_MAX_LENGTH; exports.DOCUMENT_DESCRIPTION_MAX_LENGTH = DOCUMENT_DESCRIPTION_MAX_LENGTH; exports.DOCUMENT_NAME_MAX_LENGTH = DOCUMENT_NAME_MAX_LENGTH; exports.DOCUMENT_SAVE_DELAY_MS = DOCUMENT_SAVE_DELAY_MS; exports.DocumentModel = DocumentModel; exports.EMOJI_GROUPS = EMOJI_GROUPS; exports.MIN_FIT_ZOOM = MIN_FIT_ZOOM; exports.RemoteCaretBook = RemoteCaretBook; exports.SPECIAL_GROUPS = SPECIAL_GROUPS; exports.addCommentAnchorActions = addCommentAnchorActions; exports.anchorIdOfPartAnchor = anchorIdOfPartAnchor; exports.bodyTextOf = bodyTextOf; exports.commentAnchorPartKey = commentAnchorPartKey; exports.commentAnchorsOf = commentAnchorsOf; exports.commentPartAnchor = commentPartAnchor; exports.configureDocsHost = _chunkLHTG72LScjs.configureDocsHost; exports.copyDocument = _chunkLHTG72LScjs.copyDocument; exports.createDocument = _chunkLHTG72LScjs.createDocument; exports.deleteDocument = _chunkLHTG72LScjs.deleteDocument; exports.discardFailedDocument = _chunkLHTG72LScjs.discardFailedDocument; exports.documentBodyWriteHandler = documentBodyWriteHandler; exports.documentSourceLabel = documentSourceLabel; exports.fitZoomRatio = fitZoomRatio; exports.getDocsHost = _chunkLHTG72LScjs.getDocsHost; exports.getDocument = _chunkLHTG72LScjs.getDocument; exports.getLatestDocumentSnapshot = _chunkLHTG72LScjs.getLatestDocumentSnapshot; exports.isDocsAnchorOnlyOp = isDocsAnchorOnlyOp; exports.listAccessibleDocuments = _chunkLHTG72LScjs.listAccessibleDocuments; exports.listDocumentSnapshots = _chunkLHTG72LScjs.listDocumentSnapshots; exports.listTrashedDocuments = _chunkLHTG72LScjs.listTrashedDocuments; exports.moveDocument = _chunkLHTG72LScjs.moveDocument; exports.movePeerRangesThroughBodyEdit = movePeerRangesThroughBodyEdit; exports.moveRangesThroughBodyEdit = moveRangesThroughBodyEdit; exports.newCommentAnchorId = newCommentAnchorId; exports.planBodyEdit = planBodyEdit; exports.publishedCaretFromSelection = publishedCaretFromSelection; exports.quoteOfCommentAnchor = quoteOfCommentAnchor; exports.removeCommentAnchorActions = removeCommentAnchorActions; exports.renameDocument = _chunkLHTG72LScjs.renameDocument; exports.restoreDocument = _chunkLHTG72LScjs.restoreDocument; exports.sanitizeUniverDocSnapshot = _chunkLHTG72LScjs.sanitizeUniverDocSnapshot; exports.saveDocumentSnapshot = _chunkLHTG72LScjs.saveDocumentSnapshot; exports.searchSymbols = searchSymbols; exports.updateDocumentDescription = _chunkLHTG72LScjs.updateDocumentDescription; exports.validateDocumentBody = validateDocumentBody; exports.validateDocumentDescription = validateDocumentDescription; exports.validateDocumentName = validateDocumentName; exports.writeBodyText = writeBodyText;
|
|
1079
1113
|
//# sourceMappingURL=docs.cjs.map
|