@superdoc-dev/cli 0.2.0-next.133 → 0.2.0-next.135
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/dist/index.js +213 -91
- package/package.json +8 -8
package/dist/index.js
CHANGED
|
@@ -38780,7 +38780,7 @@ var init_remark_gfm_z_sDF4ss_es = __esm(() => {
|
|
|
38780
38780
|
emptyOptions2 = {};
|
|
38781
38781
|
});
|
|
38782
38782
|
|
|
38783
|
-
// ../../packages/superdoc/dist/chunks/SuperConverter-
|
|
38783
|
+
// ../../packages/superdoc/dist/chunks/SuperConverter-CEAHNaZj.es.js
|
|
38784
38784
|
function getExtensionConfigField(extension$1, field, context = { name: "" }) {
|
|
38785
38785
|
const fieldValue = extension$1.config[field];
|
|
38786
38786
|
if (typeof fieldValue === "function")
|
|
@@ -58112,12 +58112,21 @@ function decode$46(params) {
|
|
|
58112
58112
|
}, []);
|
|
58113
58113
|
}
|
|
58114
58114
|
function getTextNodeForExport(text$2, marks, params) {
|
|
58115
|
+
const normalizedMarks = Array.isArray(marks) ? marks : [];
|
|
58115
58116
|
const space = /^\s|\s$/.test(text$2) ? "preserve" : null;
|
|
58116
58117
|
const nodeAttrs = space ? { "xml:space": space } : null;
|
|
58117
58118
|
const textNodes = [];
|
|
58118
|
-
const textRunProperties = decodeRPrFromMarks(
|
|
58119
|
+
const textRunProperties = decodeRPrFromMarks(normalizedMarks);
|
|
58119
58120
|
const combinedRunProperties = combineRunProperties([params.extraParams?.runProperties || {}, textRunProperties]);
|
|
58120
|
-
const
|
|
58121
|
+
const trackFormatMark = findTrackFormatMark(normalizedMarks);
|
|
58122
|
+
let rPrNode = translator$128.decode({ node: { attrs: { runProperties: combinedRunProperties } } });
|
|
58123
|
+
if (!rPrNode && trackFormatMark)
|
|
58124
|
+
rPrNode = {
|
|
58125
|
+
type: "element",
|
|
58126
|
+
name: "w:rPr",
|
|
58127
|
+
elements: []
|
|
58128
|
+
};
|
|
58129
|
+
appendTrackFormatChangeToRunProperties(rPrNode, normalizedMarks);
|
|
58121
58130
|
textNodes.push({
|
|
58122
58131
|
name: "w:t",
|
|
58123
58132
|
elements: [{
|
|
@@ -58126,10 +58135,9 @@ function getTextNodeForExport(text$2, marks, params) {
|
|
|
58126
58135
|
}],
|
|
58127
58136
|
attributes: nodeAttrs
|
|
58128
58137
|
});
|
|
58129
|
-
if (params) {
|
|
58130
|
-
const
|
|
58131
|
-
|
|
58132
|
-
marks.forEach((mark) => {
|
|
58138
|
+
if (params?.editor?.extensionService?.extensions) {
|
|
58139
|
+
const customMarks = params.editor.extensionService.extensions.filter((extension$1) => extension$1.isExternal === true);
|
|
58140
|
+
normalizedMarks.forEach((mark) => {
|
|
58133
58141
|
const isCustomMark = customMarks.some((customMark) => {
|
|
58134
58142
|
const customMarkName = customMark.name;
|
|
58135
58143
|
return mark.type === customMarkName;
|
|
@@ -59071,17 +59079,12 @@ function decode$10(params) {
|
|
|
59071
59079
|
const { node: node3 } = params;
|
|
59072
59080
|
if (!node3 || !node3.type)
|
|
59073
59081
|
return null;
|
|
59074
|
-
const trackingMarks = [
|
|
59075
|
-
|
|
59076
|
-
"trackFormat",
|
|
59077
|
-
"trackDelete"
|
|
59078
|
-
];
|
|
59079
|
-
const marks = node3.marks;
|
|
59082
|
+
const trackingMarks = ["trackInsert", "trackDelete"];
|
|
59083
|
+
const marks = Array.isArray(node3.marks) ? node3.marks : [];
|
|
59080
59084
|
const trackedMark = marks.find((m) => m.type === "trackDelete");
|
|
59081
|
-
|
|
59085
|
+
if (!trackedMark)
|
|
59086
|
+
return null;
|
|
59082
59087
|
node3.marks = marks.filter((m) => !trackingMarks.includes(m.type));
|
|
59083
|
-
if (trackStyleMark)
|
|
59084
|
-
node3.marks.push(trackStyleMark);
|
|
59085
59088
|
const translatedTextNode = exportSchemaToJson({
|
|
59086
59089
|
...params,
|
|
59087
59090
|
node: node3
|
|
@@ -59103,17 +59106,12 @@ function decode$9(params) {
|
|
|
59103
59106
|
const { node: node3 } = params;
|
|
59104
59107
|
if (!node3 || !node3.type)
|
|
59105
59108
|
return null;
|
|
59106
|
-
const trackingMarks = [
|
|
59107
|
-
|
|
59108
|
-
"trackFormat",
|
|
59109
|
-
"trackDelete"
|
|
59110
|
-
];
|
|
59111
|
-
const marks = node3.marks;
|
|
59109
|
+
const trackingMarks = ["trackInsert", "trackDelete"];
|
|
59110
|
+
const marks = Array.isArray(node3.marks) ? node3.marks : [];
|
|
59112
59111
|
const trackedMark = marks.find((m) => m.type === "trackInsert");
|
|
59113
|
-
|
|
59112
|
+
if (!trackedMark)
|
|
59113
|
+
return null;
|
|
59114
59114
|
node3.marks = marks.filter((m) => !trackingMarks.includes(m.type));
|
|
59115
|
-
if (trackStyleMark)
|
|
59116
|
-
node3.marks.push(trackStyleMark);
|
|
59117
59115
|
const translatedTextNode = exportSchemaToJson({
|
|
59118
59116
|
...params,
|
|
59119
59117
|
node: node3
|
|
@@ -63967,6 +63965,39 @@ var isRegExp = (value) => {
|
|
|
63967
63965
|
}];
|
|
63968
63966
|
}
|
|
63969
63967
|
return runs;
|
|
63968
|
+
}, getMarkType$1 = (mark) => mark?.type?.name ?? mark?.type ?? null, toRunPropertyElements = (marks = []) => processOutputMarks(marks).filter((element) => element && typeof element === "object" && element.name), findTrackFormatMark = (marks = []) => marks.find((mark) => getMarkType$1(mark) === "trackFormat") ?? null, createRunPropertiesChangeElement = (trackFormatMark) => {
|
|
63969
|
+
if (!trackFormatMark)
|
|
63970
|
+
return;
|
|
63971
|
+
const previousRunProperties = {
|
|
63972
|
+
type: "element",
|
|
63973
|
+
name: "w:rPr",
|
|
63974
|
+
elements: toRunPropertyElements(Array.isArray(trackFormatMark.attrs?.before) ? trackFormatMark.attrs.before : [])
|
|
63975
|
+
};
|
|
63976
|
+
return {
|
|
63977
|
+
type: "element",
|
|
63978
|
+
name: "w:rPrChange",
|
|
63979
|
+
attributes: {
|
|
63980
|
+
"w:id": trackFormatMark.attrs?.id,
|
|
63981
|
+
"w:author": trackFormatMark.attrs?.author,
|
|
63982
|
+
"w:authorEmail": trackFormatMark.attrs?.authorEmail,
|
|
63983
|
+
"w:date": trackFormatMark.attrs?.date
|
|
63984
|
+
},
|
|
63985
|
+
elements: [previousRunProperties]
|
|
63986
|
+
};
|
|
63987
|
+
}, appendTrackFormatChangeToRunProperties = (runPropertiesNode, marks = []) => {
|
|
63988
|
+
if (!runPropertiesNode)
|
|
63989
|
+
return runPropertiesNode;
|
|
63990
|
+
const trackFormatMark = findTrackFormatMark(marks);
|
|
63991
|
+
if (!trackFormatMark)
|
|
63992
|
+
return runPropertiesNode;
|
|
63993
|
+
if (!Array.isArray(runPropertiesNode.elements))
|
|
63994
|
+
runPropertiesNode.elements = [];
|
|
63995
|
+
if (runPropertiesNode.elements.some((element) => element?.name === "w:rPrChange"))
|
|
63996
|
+
return runPropertiesNode;
|
|
63997
|
+
const changeElement = createRunPropertiesChangeElement(trackFormatMark);
|
|
63998
|
+
if (changeElement)
|
|
63999
|
+
runPropertiesNode.elements.push(changeElement);
|
|
64000
|
+
return runPropertiesNode;
|
|
63970
64001
|
}, XML_NODE_NAME$33 = "w:hyperlink", SD_NODE_NAME$29 = "link", _createAttributeHandler = (xmlName, sdName) => ({
|
|
63971
64002
|
xmlName,
|
|
63972
64003
|
sdName,
|
|
@@ -64031,6 +64062,39 @@ var isRegExp = (value) => {
|
|
|
64031
64062
|
if (!Array.isArray(node3.elements))
|
|
64032
64063
|
return false;
|
|
64033
64064
|
return node3.elements.some((child) => hasXmlNodeNamed(child, targetName));
|
|
64065
|
+
}, getRunPropertiesNode = (runNode) => {
|
|
64066
|
+
if (!runNode)
|
|
64067
|
+
return null;
|
|
64068
|
+
if (!Array.isArray(runNode.elements))
|
|
64069
|
+
runNode.elements = [];
|
|
64070
|
+
let runPropertiesNode = runNode.elements.find((element) => element?.name === "w:rPr");
|
|
64071
|
+
if (!runPropertiesNode) {
|
|
64072
|
+
runPropertiesNode = {
|
|
64073
|
+
type: "element",
|
|
64074
|
+
name: "w:rPr",
|
|
64075
|
+
elements: []
|
|
64076
|
+
};
|
|
64077
|
+
runNode.elements.unshift(runPropertiesNode);
|
|
64078
|
+
}
|
|
64079
|
+
if (!Array.isArray(runPropertiesNode.elements))
|
|
64080
|
+
runPropertiesNode.elements = [];
|
|
64081
|
+
return runPropertiesNode;
|
|
64082
|
+
}, collectRunPropertyChanges = (runNode) => {
|
|
64083
|
+
const runPropertiesNode = runNode?.elements?.find((element) => element?.name === "w:rPr");
|
|
64084
|
+
if (!Array.isArray(runPropertiesNode?.elements))
|
|
64085
|
+
return [];
|
|
64086
|
+
return runPropertiesNode.elements.filter((element) => element?.name === "w:rPrChange").map((element) => cloneXmlNode(element));
|
|
64087
|
+
}, restoreRunPropertyChanges = (runNode, runPropertyChanges = []) => {
|
|
64088
|
+
if (!runPropertyChanges.length)
|
|
64089
|
+
return;
|
|
64090
|
+
const runPropertiesNode = getRunPropertiesNode(runNode);
|
|
64091
|
+
const existingNames = new Set(runPropertiesNode.elements.map((element) => element?.name));
|
|
64092
|
+
runPropertyChanges.forEach((changeElement) => {
|
|
64093
|
+
if (!changeElement?.name || existingNames.has(changeElement.name))
|
|
64094
|
+
return;
|
|
64095
|
+
runPropertiesNode.elements.push(changeElement);
|
|
64096
|
+
existingNames.add(changeElement.name);
|
|
64097
|
+
});
|
|
64034
64098
|
}, ensureReferenceRunFormatting = (runNode, referenceXmlName) => {
|
|
64035
64099
|
const styleId = REFERENCE_RUN_STYLE_BY_XML_NAME[referenceXmlName];
|
|
64036
64100
|
if (!styleId)
|
|
@@ -64180,6 +64244,7 @@ var isRegExp = (value) => {
|
|
|
64180
64244
|
});
|
|
64181
64245
|
}
|
|
64182
64246
|
const { runNode: runNodeForExport, trackingMarksByType } = prepareRunTrackingContext(node3);
|
|
64247
|
+
const runTrackFormatMark = findTrackFormatMark(runNodeForExport.marks);
|
|
64183
64248
|
const runProperties = (runNodeForExport.attrs || {}).runProperties || {};
|
|
64184
64249
|
const exportParams = {
|
|
64185
64250
|
...params,
|
|
@@ -64199,12 +64264,16 @@ var isRegExp = (value) => {
|
|
|
64199
64264
|
const runPropsTemplate = runPropertiesElement ? cloneXmlNode(runPropertiesElement) : null;
|
|
64200
64265
|
const applyBaseRunProps = (runNode) => applyRunPropertiesTemplate(runNode, runPropsTemplate);
|
|
64201
64266
|
const replaceRunProps = (runNode) => {
|
|
64267
|
+
const existingRunPropertyChanges = collectRunPropertyChanges(runNode);
|
|
64202
64268
|
if (Array.isArray(runNode.elements))
|
|
64203
64269
|
runNode.elements = runNode.elements.filter((el) => el?.name !== "w:rPr");
|
|
64204
64270
|
else
|
|
64205
64271
|
runNode.elements = [];
|
|
64206
64272
|
if (runPropsTemplate)
|
|
64207
64273
|
runNode.elements.unshift(cloneXmlNode(runPropsTemplate));
|
|
64274
|
+
restoreRunPropertyChanges(runNode, existingRunPropertyChanges);
|
|
64275
|
+
if (!existingRunPropertyChanges.length && runTrackFormatMark)
|
|
64276
|
+
appendTrackFormatChangeToRunProperties(getRunPropertiesNode(runNode), [runTrackFormatMark]);
|
|
64208
64277
|
};
|
|
64209
64278
|
const runs = [];
|
|
64210
64279
|
childElements.forEach((child) => {
|
|
@@ -73275,21 +73344,7 @@ var isRegExp = (value) => {
|
|
|
73275
73344
|
nodes: schemaNode ? [schemaNode] : [],
|
|
73276
73345
|
consumed: 1
|
|
73277
73346
|
};
|
|
73278
|
-
}, drawingNodeHandlerEntity,
|
|
73279
|
-
const trackStyleMark = marks.find((mark) => mark.type === "trackFormat");
|
|
73280
|
-
if (trackStyleMark)
|
|
73281
|
-
return {
|
|
73282
|
-
type: "element",
|
|
73283
|
-
name: "w:rPrChange",
|
|
73284
|
-
attributes: {
|
|
73285
|
-
"w:id": trackStyleMark.attrs.id,
|
|
73286
|
-
"w:author": trackStyleMark.attrs.author,
|
|
73287
|
-
"w:authorEmail": trackStyleMark.attrs.authorEmail,
|
|
73288
|
-
"w:date": trackStyleMark.attrs.date
|
|
73289
|
-
},
|
|
73290
|
-
elements: trackStyleMark.attrs.before.map((mark) => processOutputMarks([mark])).filter((r) => r !== undefined)
|
|
73291
|
-
};
|
|
73292
|
-
}, XML_NODE_NAME$6 = "w:del", SD_ATTR_KEY$1 = "trackDelete", validXmlAttributes$3, encode$10 = (params, encodedAttrs = {}) => {
|
|
73347
|
+
}, drawingNodeHandlerEntity, XML_NODE_NAME$6 = "w:del", SD_ATTR_KEY$1 = "trackDelete", validXmlAttributes$3, encode$10 = (params, encodedAttrs = {}) => {
|
|
73293
73348
|
const { nodeListHandler, extraParams = {}, converter } = params;
|
|
73294
73349
|
const { node: node3 } = extraParams;
|
|
73295
73350
|
if (encodedAttrs.id && converter?.trackedChangeIdMap?.has(encodedAttrs.id))
|
|
@@ -75453,7 +75508,7 @@ var isRegExp = (value) => {
|
|
|
75453
75508
|
state.kern = kernNode.attributes["w:val"];
|
|
75454
75509
|
}
|
|
75455
75510
|
}, SuperConverter;
|
|
75456
|
-
var
|
|
75511
|
+
var init_SuperConverter_CEAHNaZj_es = __esm(() => {
|
|
75457
75512
|
init_rolldown_runtime_B2q5OVn9_es();
|
|
75458
75513
|
init_jszip_ChlR43oI_es();
|
|
75459
75514
|
init_xml_js_DLE8mr0n_es();
|
|
@@ -135858,7 +135913,7 @@ var init_remark_gfm_CjV8kaUy_es = __esm(() => {
|
|
|
135858
135913
|
init_remark_gfm_z_sDF4ss_es();
|
|
135859
135914
|
});
|
|
135860
135915
|
|
|
135861
|
-
// ../../packages/superdoc/dist/chunks/src-
|
|
135916
|
+
// ../../packages/superdoc/dist/chunks/src-CDxFqrrf.es.js
|
|
135862
135917
|
function deleteProps(obj, propOrProps) {
|
|
135863
135918
|
const props = typeof propOrProps === "string" ? [propOrProps] : propOrProps;
|
|
135864
135919
|
const removeNested = (target, pathParts, index2 = 0) => {
|
|
@@ -199925,7 +199980,9 @@ var Node$13 = class Node$14 {
|
|
|
199925
199980
|
const provider = editor.options.collaborationProvider;
|
|
199926
199981
|
if (!provider)
|
|
199927
199982
|
return;
|
|
199928
|
-
const emit2 = () => {
|
|
199983
|
+
const emit2 = (synced) => {
|
|
199984
|
+
if (synced === false)
|
|
199985
|
+
return;
|
|
199929
199986
|
extension2.options.isReady = true;
|
|
199930
199987
|
editor.emit("collaborationReady", {
|
|
199931
199988
|
editor,
|
|
@@ -219387,9 +219444,9 @@ var Node$13 = class Node$14 {
|
|
|
219387
219444
|
return false;
|
|
219388
219445
|
return Boolean(checker(attrs));
|
|
219389
219446
|
}, SuperToolbar, ICONS, TEXTS, tableActionsOptions;
|
|
219390
|
-
var
|
|
219447
|
+
var init_src_CDxFqrrf_es = __esm(() => {
|
|
219391
219448
|
init_rolldown_runtime_B2q5OVn9_es();
|
|
219392
|
-
|
|
219449
|
+
init_SuperConverter_CEAHNaZj_es();
|
|
219393
219450
|
init_jszip_ChlR43oI_es();
|
|
219394
219451
|
init_uuid_qzgm05fK_es();
|
|
219395
219452
|
init_constants_CMPtQbp7_es();
|
|
@@ -227139,7 +227196,7 @@ function print() { __p += __j.call(arguments, '') }
|
|
|
227139
227196
|
cleanupState.partSyncHandle = bootstrapPartSync(editor, ydoc);
|
|
227140
227197
|
};
|
|
227141
227198
|
const provider = editor.options.collaborationProvider;
|
|
227142
|
-
if (!provider)
|
|
227199
|
+
if (!provider || isCollaborationProviderSynced(provider))
|
|
227143
227200
|
doBootstrap();
|
|
227144
227201
|
else
|
|
227145
227202
|
cleanupState.partSyncPendingCleanup = onCollaborationProviderSynced(provider, doBootstrap);
|
|
@@ -230117,9 +230174,9 @@ function print() { __p += __j.call(arguments, '') }
|
|
|
230117
230174
|
const ydoc = this.options.ydoc;
|
|
230118
230175
|
const provider = this.options.collaborationProvider;
|
|
230119
230176
|
const doReplaceFileSync = () => {
|
|
230120
|
-
const mediaFiles$1 = this.options.mediaFiles ?? {};
|
|
230121
230177
|
this.#insertNewFileData();
|
|
230122
230178
|
seedPartsFromEditor(this, ydoc, { replaceExisting: true });
|
|
230179
|
+
const mediaFiles$1 = this.options.mediaFiles ?? {};
|
|
230123
230180
|
const mediaMap = ydoc.getMap("media");
|
|
230124
230181
|
for (const key$1 of mediaMap.keys())
|
|
230125
230182
|
if (!(key$1 in mediaFiles$1))
|
|
@@ -253071,8 +253128,8 @@ var init_zipper_DqXT7uTa_es = __esm(() => {
|
|
|
253071
253128
|
|
|
253072
253129
|
// ../../packages/superdoc/dist/super-editor.es.js
|
|
253073
253130
|
var init_super_editor_es = __esm(() => {
|
|
253074
|
-
|
|
253075
|
-
|
|
253131
|
+
init_src_CDxFqrrf_es();
|
|
253132
|
+
init_SuperConverter_CEAHNaZj_es();
|
|
253076
253133
|
init_jszip_ChlR43oI_es();
|
|
253077
253134
|
init_xml_js_DLE8mr0n_es();
|
|
253078
253135
|
init_constants_CMPtQbp7_es();
|
|
@@ -285907,6 +285964,49 @@ var cloneMark3 = (mark2) => {
|
|
|
285907
285964
|
};
|
|
285908
285965
|
var init_track_change_helpers = () => {};
|
|
285909
285966
|
|
|
285967
|
+
// ../../packages/super-editor/src/core/super-converter/v3/handlers/helpers.js
|
|
285968
|
+
var getMarkType3 = (mark2) => mark2?.type?.name ?? mark2?.type ?? null, toRunPropertyElements2 = (marks = []) => processOutputMarks2(marks).filter((element3) => element3 && typeof element3 === "object" && element3.name), findTrackFormatMark2 = (marks = []) => marks.find((mark2) => getMarkType3(mark2) === TrackFormatMarkName2) ?? null, createRunPropertiesChangeElement2 = (trackFormatMark) => {
|
|
285969
|
+
if (!trackFormatMark)
|
|
285970
|
+
return;
|
|
285971
|
+
const beforeMarks = Array.isArray(trackFormatMark.attrs?.before) ? trackFormatMark.attrs.before : [];
|
|
285972
|
+
const previousRunProperties = {
|
|
285973
|
+
type: "element",
|
|
285974
|
+
name: "w:rPr",
|
|
285975
|
+
elements: toRunPropertyElements2(beforeMarks)
|
|
285976
|
+
};
|
|
285977
|
+
return {
|
|
285978
|
+
type: "element",
|
|
285979
|
+
name: "w:rPrChange",
|
|
285980
|
+
attributes: {
|
|
285981
|
+
"w:id": trackFormatMark.attrs?.id,
|
|
285982
|
+
"w:author": trackFormatMark.attrs?.author,
|
|
285983
|
+
"w:authorEmail": trackFormatMark.attrs?.authorEmail,
|
|
285984
|
+
"w:date": trackFormatMark.attrs?.date
|
|
285985
|
+
},
|
|
285986
|
+
elements: [previousRunProperties]
|
|
285987
|
+
};
|
|
285988
|
+
}, appendTrackFormatChangeToRunProperties2 = (runPropertiesNode, marks = []) => {
|
|
285989
|
+
if (!runPropertiesNode)
|
|
285990
|
+
return runPropertiesNode;
|
|
285991
|
+
const trackFormatMark = findTrackFormatMark2(marks);
|
|
285992
|
+
if (!trackFormatMark)
|
|
285993
|
+
return runPropertiesNode;
|
|
285994
|
+
if (!Array.isArray(runPropertiesNode.elements)) {
|
|
285995
|
+
runPropertiesNode.elements = [];
|
|
285996
|
+
}
|
|
285997
|
+
const hasExistingChange = runPropertiesNode.elements.some((element3) => element3?.name === "w:rPrChange");
|
|
285998
|
+
if (hasExistingChange)
|
|
285999
|
+
return runPropertiesNode;
|
|
286000
|
+
const changeElement = createRunPropertiesChangeElement2(trackFormatMark);
|
|
286001
|
+
if (changeElement) {
|
|
286002
|
+
runPropertiesNode.elements.push(changeElement);
|
|
286003
|
+
}
|
|
286004
|
+
return runPropertiesNode;
|
|
286005
|
+
};
|
|
286006
|
+
var init_helpers4 = __esm(() => {
|
|
286007
|
+
init_exporter();
|
|
286008
|
+
});
|
|
286009
|
+
|
|
285910
286010
|
// ../../packages/super-editor/src/core/super-converter/v3/handlers/w/hyperlink/hyperlink-translator.js
|
|
285911
286011
|
function decode28(params3) {
|
|
285912
286012
|
const { hyperlinkGroup = [params3.node] } = params3.extraParams || {};
|
|
@@ -286090,6 +286190,36 @@ var XML_NODE_NAME9 = "w:r", SD_KEY_NAME2 = "run", REFERENCE_RUN_STYLE_BY_XML_NAM
|
|
|
286090
286190
|
if (!Array.isArray(node4.elements))
|
|
286091
286191
|
return false;
|
|
286092
286192
|
return node4.elements.some((child) => hasXmlNodeNamed2(child, targetName));
|
|
286193
|
+
}, getRunPropertiesNode2 = (runNode) => {
|
|
286194
|
+
if (!runNode)
|
|
286195
|
+
return null;
|
|
286196
|
+
if (!Array.isArray(runNode.elements))
|
|
286197
|
+
runNode.elements = [];
|
|
286198
|
+
let runPropertiesNode = runNode.elements.find((element3) => element3?.name === "w:rPr");
|
|
286199
|
+
if (!runPropertiesNode) {
|
|
286200
|
+
runPropertiesNode = { type: "element", name: "w:rPr", elements: [] };
|
|
286201
|
+
runNode.elements.unshift(runPropertiesNode);
|
|
286202
|
+
}
|
|
286203
|
+
if (!Array.isArray(runPropertiesNode.elements)) {
|
|
286204
|
+
runPropertiesNode.elements = [];
|
|
286205
|
+
}
|
|
286206
|
+
return runPropertiesNode;
|
|
286207
|
+
}, collectRunPropertyChanges2 = (runNode) => {
|
|
286208
|
+
const runPropertiesNode = runNode?.elements?.find((element3) => element3?.name === "w:rPr");
|
|
286209
|
+
if (!Array.isArray(runPropertiesNode?.elements))
|
|
286210
|
+
return [];
|
|
286211
|
+
return runPropertiesNode.elements.filter((element3) => element3?.name === "w:rPrChange").map((element3) => cloneXmlNode2(element3));
|
|
286212
|
+
}, restoreRunPropertyChanges2 = (runNode, runPropertyChanges = []) => {
|
|
286213
|
+
if (!runPropertyChanges.length)
|
|
286214
|
+
return;
|
|
286215
|
+
const runPropertiesNode = getRunPropertiesNode2(runNode);
|
|
286216
|
+
const existingNames = new Set(runPropertiesNode.elements.map((element3) => element3?.name));
|
|
286217
|
+
runPropertyChanges.forEach((changeElement) => {
|
|
286218
|
+
if (!changeElement?.name || existingNames.has(changeElement.name))
|
|
286219
|
+
return;
|
|
286220
|
+
runPropertiesNode.elements.push(changeElement);
|
|
286221
|
+
existingNames.add(changeElement.name);
|
|
286222
|
+
});
|
|
286093
286223
|
}, ensureReferenceRunFormatting2 = (runNode, referenceXmlName) => {
|
|
286094
286224
|
const styleId = REFERENCE_RUN_STYLE_BY_XML_NAME2[referenceXmlName];
|
|
286095
286225
|
if (!styleId)
|
|
@@ -286221,6 +286351,7 @@ var XML_NODE_NAME9 = "w:r", SD_KEY_NAME2 = "run", REFERENCE_RUN_STYLE_BY_XML_NAM
|
|
|
286221
286351
|
return translator95.decode({ ...params3, extraParams });
|
|
286222
286352
|
}
|
|
286223
286353
|
const { runNode: runNodeForExport, trackingMarksByType } = prepareRunTrackingContext2(node4);
|
|
286354
|
+
const runTrackFormatMark = findTrackFormatMark2(runNodeForExport.marks);
|
|
286224
286355
|
const runAttrs = runNodeForExport.attrs || {};
|
|
286225
286356
|
const runProperties = runAttrs.runProperties || {};
|
|
286226
286357
|
const exportParams = {
|
|
@@ -286239,6 +286370,7 @@ var XML_NODE_NAME9 = "w:r", SD_KEY_NAME2 = "run", REFERENCE_RUN_STYLE_BY_XML_NAM
|
|
|
286239
286370
|
const runPropsTemplate = runPropertiesElement ? cloneXmlNode2(runPropertiesElement) : null;
|
|
286240
286371
|
const applyBaseRunProps = (runNode) => applyRunPropertiesTemplate2(runNode, runPropsTemplate);
|
|
286241
286372
|
const replaceRunProps = (runNode) => {
|
|
286373
|
+
const existingRunPropertyChanges = collectRunPropertyChanges2(runNode);
|
|
286242
286374
|
if (Array.isArray(runNode.elements)) {
|
|
286243
286375
|
runNode.elements = runNode.elements.filter((el) => el?.name !== "w:rPr");
|
|
286244
286376
|
} else {
|
|
@@ -286247,6 +286379,11 @@ var XML_NODE_NAME9 = "w:r", SD_KEY_NAME2 = "run", REFERENCE_RUN_STYLE_BY_XML_NAM
|
|
|
286247
286379
|
if (runPropsTemplate) {
|
|
286248
286380
|
runNode.elements.unshift(cloneXmlNode2(runPropsTemplate));
|
|
286249
286381
|
}
|
|
286382
|
+
restoreRunPropertyChanges2(runNode, existingRunPropertyChanges);
|
|
286383
|
+
if (!existingRunPropertyChanges.length && runTrackFormatMark) {
|
|
286384
|
+
const runPropertiesNode = getRunPropertiesNode2(runNode);
|
|
286385
|
+
appendTrackFormatChangeToRunProperties2(runPropertiesNode, [runTrackFormatMark]);
|
|
286386
|
+
}
|
|
286250
286387
|
};
|
|
286251
286388
|
const runs2 = [];
|
|
286252
286389
|
childElements.forEach((child) => {
|
|
@@ -286323,6 +286460,7 @@ var init_r_translator = __esm(() => {
|
|
|
286323
286460
|
init_helpers2();
|
|
286324
286461
|
init_helpers3();
|
|
286325
286462
|
init_track_change_helpers();
|
|
286463
|
+
init_helpers4();
|
|
286326
286464
|
init_hyperlink_translator();
|
|
286327
286465
|
init_rpr();
|
|
286328
286466
|
init_attributes6();
|
|
@@ -305254,23 +305392,32 @@ var init_drawing = __esm(() => {
|
|
|
305254
305392
|
|
|
305255
305393
|
// ../../packages/super-editor/src/core/super-converter/v3/handlers/w/t/helpers/translate-text-node.js
|
|
305256
305394
|
function getTextNodeForExport2(text7, marks, params3) {
|
|
305395
|
+
const normalizedMarks = Array.isArray(marks) ? marks : [];
|
|
305257
305396
|
const hasLeadingOrTrailingSpace = /^\s|\s$/.test(text7);
|
|
305258
305397
|
const space = hasLeadingOrTrailingSpace ? "preserve" : null;
|
|
305259
305398
|
const nodeAttrs = space ? { "xml:space": space } : null;
|
|
305260
305399
|
const textNodes = [];
|
|
305261
|
-
const textRunProperties = decodeRPrFromMarks2(
|
|
305400
|
+
const textRunProperties = decodeRPrFromMarks2(normalizedMarks);
|
|
305262
305401
|
const parentRunProperties = params3.extraParams?.runProperties || {};
|
|
305263
305402
|
const combinedRunProperties = combineRunProperties2([parentRunProperties, textRunProperties]);
|
|
305264
|
-
const
|
|
305403
|
+
const trackFormatMark = findTrackFormatMark2(normalizedMarks);
|
|
305404
|
+
let rPrNode = translator47.decode({ node: { attrs: { runProperties: combinedRunProperties } } });
|
|
305405
|
+
if (!rPrNode && trackFormatMark) {
|
|
305406
|
+
rPrNode = {
|
|
305407
|
+
type: "element",
|
|
305408
|
+
name: "w:rPr",
|
|
305409
|
+
elements: []
|
|
305410
|
+
};
|
|
305411
|
+
}
|
|
305412
|
+
appendTrackFormatChangeToRunProperties2(rPrNode, normalizedMarks);
|
|
305265
305413
|
textNodes.push({
|
|
305266
305414
|
name: "w:t",
|
|
305267
305415
|
elements: [{ text: text7, type: "text" }],
|
|
305268
305416
|
attributes: nodeAttrs
|
|
305269
305417
|
});
|
|
305270
|
-
if (params3) {
|
|
305271
|
-
const
|
|
305272
|
-
|
|
305273
|
-
marks.forEach((mark2) => {
|
|
305418
|
+
if (params3?.editor?.extensionService?.extensions) {
|
|
305419
|
+
const customMarks = params3.editor.extensionService.extensions.filter((extension2) => extension2.isExternal === true);
|
|
305420
|
+
normalizedMarks.forEach((mark2) => {
|
|
305274
305421
|
const isCustomMark = customMarks.some((customMark) => {
|
|
305275
305422
|
const customMarkName = customMark.name;
|
|
305276
305423
|
return mark2.type === customMarkName;
|
|
@@ -305310,6 +305457,7 @@ function getTextNodeForExport2(text7, marks, params3) {
|
|
|
305310
305457
|
var init_translate_text_node = __esm(() => {
|
|
305311
305458
|
init_rpr_translator();
|
|
305312
305459
|
init_styles3();
|
|
305460
|
+
init_helpers4();
|
|
305313
305461
|
});
|
|
305314
305462
|
|
|
305315
305463
|
// ../../node_modules/.pnpm/he@1.2.0/node_modules/he/he.js
|
|
@@ -309028,42 +309176,19 @@ var init_imageImporter = __esm(() => {
|
|
|
309028
309176
|
};
|
|
309029
309177
|
});
|
|
309030
309178
|
|
|
309031
|
-
// ../../packages/super-editor/src/core/super-converter/v3/handlers/helpers.js
|
|
309032
|
-
var createTrackStyleMark2 = (marks) => {
|
|
309033
|
-
const trackStyleMark = marks.find((mark2) => mark2.type === "trackFormat");
|
|
309034
|
-
if (trackStyleMark) {
|
|
309035
|
-
return {
|
|
309036
|
-
type: "element",
|
|
309037
|
-
name: "w:rPrChange",
|
|
309038
|
-
attributes: {
|
|
309039
|
-
"w:id": trackStyleMark.attrs.id,
|
|
309040
|
-
"w:author": trackStyleMark.attrs.author,
|
|
309041
|
-
"w:authorEmail": trackStyleMark.attrs.authorEmail,
|
|
309042
|
-
"w:date": trackStyleMark.attrs.date
|
|
309043
|
-
},
|
|
309044
|
-
elements: trackStyleMark.attrs.before.map((mark2) => processOutputMarks2([mark2])).filter((r2) => r2 !== undefined)
|
|
309045
|
-
};
|
|
309046
|
-
}
|
|
309047
|
-
return;
|
|
309048
|
-
};
|
|
309049
|
-
var init_helpers4 = __esm(() => {
|
|
309050
|
-
init_exporter();
|
|
309051
|
-
});
|
|
309052
|
-
|
|
309053
309179
|
// ../../packages/super-editor/src/core/super-converter/v3/handlers/w/del/del-translator.js
|
|
309054
309180
|
function decode74(params3) {
|
|
309055
309181
|
const { node: node4 } = params3;
|
|
309056
309182
|
if (!node4 || !node4.type) {
|
|
309057
309183
|
return null;
|
|
309058
309184
|
}
|
|
309059
|
-
const trackingMarks = ["trackInsert", "
|
|
309060
|
-
const marks = node4.marks;
|
|
309185
|
+
const trackingMarks = ["trackInsert", "trackDelete"];
|
|
309186
|
+
const marks = Array.isArray(node4.marks) ? node4.marks : [];
|
|
309061
309187
|
const trackedMark = marks.find((m2) => m2.type === "trackDelete");
|
|
309062
|
-
|
|
309063
|
-
|
|
309064
|
-
if (trackStyleMark) {
|
|
309065
|
-
node4.marks.push(trackStyleMark);
|
|
309188
|
+
if (!trackedMark) {
|
|
309189
|
+
return null;
|
|
309066
309190
|
}
|
|
309191
|
+
node4.marks = marks.filter((m2) => !trackingMarks.includes(m2.type));
|
|
309067
309192
|
const translatedTextNode = exportSchemaToJson2({ ...params3, node: node4 });
|
|
309068
309193
|
const textNode = translatedTextNode.elements.find((n) => n.name === "w:t");
|
|
309069
309194
|
textNode.name = "w:delText";
|
|
@@ -309111,7 +309236,6 @@ var init_del_translator = __esm(() => {
|
|
|
309111
309236
|
init_node_translator2();
|
|
309112
309237
|
init_utils();
|
|
309113
309238
|
init_exporter();
|
|
309114
|
-
init_helpers4();
|
|
309115
309239
|
validXmlAttributes11 = [
|
|
309116
309240
|
createAttributeHandler2("w:id", "id"),
|
|
309117
309241
|
createAttributeHandler2("w:date", "date"),
|
|
@@ -309140,14 +309264,13 @@ function decode75(params3) {
|
|
|
309140
309264
|
if (!node4 || !node4.type) {
|
|
309141
309265
|
return null;
|
|
309142
309266
|
}
|
|
309143
|
-
const trackingMarks = ["trackInsert", "
|
|
309144
|
-
const marks = node4.marks;
|
|
309267
|
+
const trackingMarks = ["trackInsert", "trackDelete"];
|
|
309268
|
+
const marks = Array.isArray(node4.marks) ? node4.marks : [];
|
|
309145
309269
|
const trackedMark = marks.find((m2) => m2.type === "trackInsert");
|
|
309146
|
-
|
|
309147
|
-
|
|
309148
|
-
if (trackStyleMark) {
|
|
309149
|
-
node4.marks.push(trackStyleMark);
|
|
309270
|
+
if (!trackedMark) {
|
|
309271
|
+
return null;
|
|
309150
309272
|
}
|
|
309273
|
+
node4.marks = marks.filter((m2) => !trackingMarks.includes(m2.type));
|
|
309151
309274
|
const translatedTextNode = exportSchemaToJson2({ ...params3, node: node4 });
|
|
309152
309275
|
return {
|
|
309153
309276
|
name: "w:ins",
|
|
@@ -309193,7 +309316,6 @@ var init_ins_translator = __esm(() => {
|
|
|
309193
309316
|
init_node_translator2();
|
|
309194
309317
|
init_utils();
|
|
309195
309318
|
init_exporter();
|
|
309196
|
-
init_helpers4();
|
|
309197
309319
|
validXmlAttributes12 = [
|
|
309198
309320
|
createAttributeHandler2("w:id", "id"),
|
|
309199
309321
|
createAttributeHandler2("w:date", "date"),
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@superdoc-dev/cli",
|
|
3
|
-
"version": "0.2.0-next.
|
|
3
|
+
"version": "0.2.0-next.135",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"bin": {
|
|
6
6
|
"superdoc": "./dist/index.js"
|
|
@@ -22,19 +22,19 @@
|
|
|
22
22
|
"typescript": "^5.9.2",
|
|
23
23
|
"@superdoc/document-api": "0.0.1",
|
|
24
24
|
"@superdoc/pm-adapter": "0.0.0",
|
|
25
|
-
"superdoc": "
|
|
26
|
-
"
|
|
25
|
+
"@superdoc/super-editor": "0.0.1",
|
|
26
|
+
"superdoc": "1.18.0"
|
|
27
27
|
},
|
|
28
28
|
"module": "src/index.ts",
|
|
29
29
|
"publishConfig": {
|
|
30
30
|
"access": "public"
|
|
31
31
|
},
|
|
32
32
|
"optionalDependencies": {
|
|
33
|
-
"@superdoc-dev/cli-darwin-arm64": "0.2.0-next.
|
|
34
|
-
"@superdoc-dev/cli-darwin-x64": "0.2.0-next.
|
|
35
|
-
"@superdoc-dev/cli-
|
|
36
|
-
"@superdoc-dev/cli-
|
|
37
|
-
"@superdoc-dev/cli-linux-arm64": "0.2.0-next.
|
|
33
|
+
"@superdoc-dev/cli-darwin-arm64": "0.2.0-next.135",
|
|
34
|
+
"@superdoc-dev/cli-darwin-x64": "0.2.0-next.135",
|
|
35
|
+
"@superdoc-dev/cli-linux-x64": "0.2.0-next.135",
|
|
36
|
+
"@superdoc-dev/cli-windows-x64": "0.2.0-next.135",
|
|
37
|
+
"@superdoc-dev/cli-linux-arm64": "0.2.0-next.135"
|
|
38
38
|
},
|
|
39
39
|
"scripts": {
|
|
40
40
|
"dev": "bun run src/index.ts",
|