ooxml-core 1.3.0 → 1.4.0
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/README.md +2 -0
- package/dist/automation/index.cjs +5785 -5295
- package/dist/automation/index.mjs +5785 -5295
- package/dist/teams/index.cjs +72 -23
- package/dist/teams/index.mjs +72 -23
- package/dist/visio/edit-commands.d.ts +11 -2
- package/dist/visio/edit-commands.d.ts.map +1 -1
- package/dist/visio/edit-page-size.d.ts +5 -0
- package/dist/visio/edit-page-size.d.ts.map +1 -0
- package/dist/visio/edit-pages.d.ts.map +1 -1
- package/dist/visio/edit-text-range-commands.d.ts +21 -0
- package/dist/visio/edit-text-range-commands.d.ts.map +1 -0
- package/dist/visio/edit-text-range-plan.d.ts +7 -0
- package/dist/visio/edit-text-range-plan.d.ts.map +1 -0
- package/dist/visio/edit-text-ranges.d.ts +4 -0
- package/dist/visio/edit-text-ranges.d.ts.map +1 -0
- package/dist/visio/edit-text-target.d.ts +3 -0
- package/dist/visio/edit-text-target.d.ts.map +1 -0
- package/dist/visio/edit-text.d.ts.map +1 -1
- package/dist/visio/edit.d.ts +1 -1
- package/dist/visio/edit.d.ts.map +1 -1
- package/dist/visio/index.cjs +395 -27
- package/dist/visio/index.d.ts +1 -1
- package/dist/visio/index.d.ts.map +1 -1
- package/dist/visio/index.mjs +395 -27
- package/dist/visio/model.d.ts +3 -0
- package/dist/visio/model.d.ts.map +1 -1
- package/dist/visio/parser.d.ts.map +1 -1
- package/dist/visio/ui/edit-commands.d.ts.map +1 -1
- package/dist/visio/ui/index.cjs +134 -11
- package/dist/visio/ui/index.d.ts +1 -0
- package/dist/visio/ui/index.d.ts.map +1 -1
- package/dist/visio/ui/index.mjs +130 -12
- package/dist/visio/ui/page-size.d.ts +31 -0
- package/dist/visio/ui/page-size.d.ts.map +1 -0
- package/dist/visio/ui/scene-validation.d.ts.map +1 -1
- package/dist/visio/ui/snapshot-scene.d.ts.map +1 -1
- package/dist/visio/ui/text-replace-types.d.ts +6 -2
- package/dist/visio/ui/text-replace-types.d.ts.map +1 -1
- package/dist/visio/ui/text-replace.d.ts +3 -4
- package/dist/visio/ui/text-replace.d.ts.map +1 -1
- package/dist/visio/xml-validation.d.ts.map +1 -1
- package/dist/xlsx/collab/codec.d.ts +2 -0
- package/dist/xlsx/collab/codec.d.ts.map +1 -1
- package/dist/xlsx/collab/index.cjs +5 -0
- package/dist/xlsx/collab/index.mjs +5 -0
- package/dist/xlsx/display-text.d.ts +4 -0
- package/dist/xlsx/display-text.d.ts.map +1 -0
- package/dist/xlsx/edit/cell-values.d.ts +4 -3
- package/dist/xlsx/edit/cell-values.d.ts.map +1 -1
- package/dist/xlsx/edit/clipboard.d.ts.map +1 -1
- package/dist/xlsx/edit/context.d.ts +7 -5
- package/dist/xlsx/edit/context.d.ts.map +1 -1
- package/dist/xlsx/edit/deps.d.ts +1 -1
- package/dist/xlsx/edit/deps.d.ts.map +1 -1
- package/dist/xlsx/edit/dimensions.d.ts.map +1 -1
- package/dist/xlsx/edit/fill.d.ts.map +1 -1
- package/dist/xlsx/edit/filter.d.ts.map +1 -1
- package/dist/xlsx/edit/find.d.ts.map +1 -1
- package/dist/xlsx/edit/paste-selection.d.ts.map +1 -1
- package/dist/xlsx/edit/shift-formulas.d.ts +10 -4
- package/dist/xlsx/edit/shift-formulas.d.ts.map +1 -1
- package/dist/xlsx/edit/table-header-names.d.ts +3 -0
- package/dist/xlsx/edit/table-header-names.d.ts.map +1 -0
- package/dist/xlsx/edit/tables.d.ts +1 -2
- package/dist/xlsx/edit/tables.d.ts.map +1 -1
- package/dist/xlsx/filter-rows.d.ts +8 -0
- package/dist/xlsx/filter-rows.d.ts.map +1 -0
- package/dist/xlsx/formula/functions/math-sum.d.ts.map +1 -1
- package/dist/xlsx/formula/table-refs.d.ts +2 -0
- package/dist/xlsx/formula/table-refs.d.ts.map +1 -1
- package/dist/xlsx/index.cjs +445 -323
- package/dist/xlsx/index.mjs +445 -323
- package/dist/xlsx/load/index.cjs +7621 -7585
- package/dist/xlsx/load/index.mjs +7621 -7585
- package/dist/xlsx/model.d.ts +4 -0
- package/dist/xlsx/model.d.ts.map +1 -1
- package/dist/xlsx/read/load.d.ts.map +1 -1
- package/dist/xlsx/ui/index.cjs +443 -323
- package/dist/xlsx/ui/index.mjs +443 -323
- package/dist/xlsx/ui/locales/de/shell.d.ts.map +1 -1
- package/dist/xlsx/ui/locales/en/shell.d.ts.map +1 -1
- package/dist/xlsx/ui/locales/es/shell.d.ts.map +1 -1
- package/dist/xlsx/ui/locales/fr/shell.d.ts.map +1 -1
- package/dist/xlsx/ui/locales/zh-CN/shell.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/visio/index.mjs
CHANGED
|
@@ -227,6 +227,19 @@ var attribute = new RegExp(
|
|
|
227
227
|
"uy"
|
|
228
228
|
);
|
|
229
229
|
var xmlWhitespace = (value) => /^[ \t\r\n]*$/.test(value);
|
|
230
|
+
var reservedNamespaces = /* @__PURE__ */ new Map([
|
|
231
|
+
["xml", "http://www.w3.org/XML/1998/namespace"],
|
|
232
|
+
["xmlns", "http://www.w3.org/2000/xmlns/"]
|
|
233
|
+
]);
|
|
234
|
+
function lookupNamespace(scope, prefix) {
|
|
235
|
+
const reserved = reservedNamespaces.get(prefix);
|
|
236
|
+
if (reserved !== void 0) return reserved;
|
|
237
|
+
for (; scope; scope = scope.parent) {
|
|
238
|
+
const uri = scope.bindings.get(prefix);
|
|
239
|
+
if (uri !== void 0) return uri;
|
|
240
|
+
}
|
|
241
|
+
return void 0;
|
|
242
|
+
}
|
|
230
243
|
function inspectXml(xml, limits, check, encoding = "utf-8") {
|
|
231
244
|
if (xml.length > limits.maxXmlChars) fail("LIMIT_XML", "XML character limit exceeded");
|
|
232
245
|
if (/<!DOCTYPE|<!ENTITY/i.test(xml) || /[\u0000-\u0008\u000b\u000c\u000e-\u001f\ufffe\uffff]/.test(xml))
|
|
@@ -292,9 +305,7 @@ function inspectXml(xml, limits, check, encoding = "utf-8") {
|
|
|
292
305
|
fail("INVALID_XML", "Mismatched XML closing tag");
|
|
293
306
|
} else {
|
|
294
307
|
const attrs = /* @__PURE__ */ new Set();
|
|
295
|
-
const namespaces =
|
|
296
|
-
namespaces["xml"] = "http://www.w3.org/XML/1998/namespace";
|
|
297
|
-
namespaces["xmlns"] = "http://www.w3.org/2000/xmlns/";
|
|
308
|
+
const namespaces = { bindings: /* @__PURE__ */ new Map(), parent: stack.at(-1)?.namespaces };
|
|
298
309
|
while (!xmlWhitespace(body.slice(cursor))) {
|
|
299
310
|
attribute.lastIndex = cursor;
|
|
300
311
|
const match = attribute.exec(body);
|
|
@@ -304,14 +315,14 @@ function inspectXml(xml, limits, check, encoding = "utf-8") {
|
|
|
304
315
|
const value = match[2] ?? match[3] ?? "";
|
|
305
316
|
text(value);
|
|
306
317
|
if (match[1]?.startsWith("xmlns:"))
|
|
307
|
-
namespaces
|
|
318
|
+
namespaces.bindings.set(match[1].slice(6), decodeXmlAttribute(value));
|
|
308
319
|
node();
|
|
309
320
|
cursor = attribute.lastIndex;
|
|
310
321
|
}
|
|
311
322
|
const expanded = /* @__PURE__ */ new Set();
|
|
312
323
|
for (const attr2 of attrs) {
|
|
313
324
|
const colon = attr2.indexOf(":");
|
|
314
|
-
const uri = colon < 0 ? "" : namespaces
|
|
325
|
+
const uri = colon < 0 ? "" : lookupNamespace(namespaces, attr2.slice(0, colon));
|
|
315
326
|
if (uri === void 0) fail("INVALID_XML", "Unbound XML attribute prefix");
|
|
316
327
|
const key2 = `${uri}\0${attr2.slice(colon + 1)}`;
|
|
317
328
|
if (expanded.has(key2)) fail("INVALID_XML", "Duplicate expanded XML attribute name");
|
|
@@ -6595,11 +6606,23 @@ async function parseVsdx(input, options = {}) {
|
|
|
6595
6606
|
};
|
|
6596
6607
|
visit(shapes);
|
|
6597
6608
|
const connectors = connections(root2, localReport);
|
|
6609
|
+
const pageModes = {};
|
|
6610
|
+
for (const [name, key2] of [
|
|
6611
|
+
["DrawingSizeType", "drawingSizeType"],
|
|
6612
|
+
["DrawingResizeType", "drawingResizeType"]
|
|
6613
|
+
]) {
|
|
6614
|
+
const source = sheet.cells.get(name);
|
|
6615
|
+
if (!source || source.error !== void 0 || source.formula === "Inh" || source.unit !== void 0 && !["NUM", "BOOL"].includes(source.unit))
|
|
6616
|
+
continue;
|
|
6617
|
+
const value = number(sheet.cells, name, Number.NaN, localReport);
|
|
6618
|
+
if (Number.isSafeInteger(value) && value >= 0 && value <= 255) pageModes[key2] = value;
|
|
6619
|
+
}
|
|
6598
6620
|
for (const connection of connectors)
|
|
6599
6621
|
if (!seen.has(connection.fromShapeId) || !seen.has(connection.toShapeId))
|
|
6600
6622
|
localReport("dangling-connection", "A connection references a missing shape.");
|
|
6601
6623
|
pages.push({
|
|
6602
6624
|
id,
|
|
6625
|
+
...pageModes,
|
|
6603
6626
|
...drawingToPageScale === 1 ? {} : { drawingToPageScale },
|
|
6604
6627
|
name: metadata(
|
|
6605
6628
|
attribute2(page, "Name") ?? attribute2(page, "NameU") ?? `Page ${id}`,
|
|
@@ -17411,8 +17434,8 @@ function assertUnlayeredShape(shape, document) {
|
|
|
17411
17434
|
}
|
|
17412
17435
|
}
|
|
17413
17436
|
|
|
17414
|
-
// visio/edit-text.ts
|
|
17415
|
-
|
|
17437
|
+
// visio/edit-text-target.ts
|
|
17438
|
+
function localTextTarget(root2, document, shapeId, check) {
|
|
17416
17439
|
const shapeChildren = (parent) => {
|
|
17417
17440
|
const containers = children2(parent, "Shapes");
|
|
17418
17441
|
if (containers.length > 1)
|
|
@@ -17420,37 +17443,38 @@ async function replacePlainText(root2, document, shapeId, text, check, assertDep
|
|
|
17420
17443
|
return children2(containers[0], "Shape");
|
|
17421
17444
|
};
|
|
17422
17445
|
const shapes = /* @__PURE__ */ new Map();
|
|
17423
|
-
const pending = shapeChildren(root2).map((
|
|
17424
|
-
node: node2,
|
|
17425
|
-
inherited: false,
|
|
17426
|
-
deleted: false
|
|
17427
|
-
}));
|
|
17446
|
+
const pending = shapeChildren(root2).map((node) => ({ node, inherited: false, deleted: false }));
|
|
17428
17447
|
while (pending.length) {
|
|
17429
17448
|
check();
|
|
17430
|
-
const item = pending.pop();
|
|
17431
|
-
const id = attribute2(item.node, "ID");
|
|
17449
|
+
const item = pending.pop(), id = attribute2(item.node, "ID");
|
|
17432
17450
|
if (!id || shapes.has(id))
|
|
17433
17451
|
fail("INVALID_SHAPE_ID", "Local shape IDs must be present and unique.");
|
|
17434
17452
|
const inherited = item.inherited || item.node.hasAttribute("Master") || item.node.hasAttribute("MasterShape");
|
|
17435
17453
|
const deleted = item.deleted || ["1", "true"].includes(attribute2(item.node, "Del") ?? "");
|
|
17436
17454
|
shapes.set(id, { node: item.node, inherited, deleted });
|
|
17437
|
-
for (const
|
|
17455
|
+
for (const node of shapeChildren(item.node)) pending.push({ node, inherited, deleted });
|
|
17438
17456
|
}
|
|
17439
17457
|
const target = shapes.get(shapeId);
|
|
17440
17458
|
if (!target) fail("EDIT_TARGET_NOT_FOUND", "Local shape does not exist.");
|
|
17441
17459
|
if (target.inherited || target.deleted)
|
|
17442
17460
|
fail("UNSUPPORTED_TEXT_EDIT", "Master-linked or deleted shapes cannot be edited.");
|
|
17443
17461
|
assertShapeLocks(target.node, document, ["LockTextEdit"]);
|
|
17444
|
-
|
|
17462
|
+
return target.node;
|
|
17463
|
+
}
|
|
17464
|
+
|
|
17465
|
+
// visio/edit-text.ts
|
|
17466
|
+
async function replacePlainText(root2, document, shapeId, text, check, assertDependencies2) {
|
|
17467
|
+
const target = localTextTarget(root2, document, shapeId, check);
|
|
17468
|
+
const texts = children2(target, "Text");
|
|
17445
17469
|
if (texts.length !== 1)
|
|
17446
17470
|
fail("UNSUPPORTED_TEXT_EDIT", "Editing requires one existing local Text element.");
|
|
17447
17471
|
const node = texts[0];
|
|
17448
17472
|
if (Array.from(node.childNodes).some((item) => item.nodeType !== 3 && item.nodeType !== 4))
|
|
17449
17473
|
fail("UNSUPPORTED_TEXT_EDIT", "Rich text, fields and unknown text markup cannot be edited.");
|
|
17450
|
-
if (children2(target
|
|
17474
|
+
if (children2(target, "Section").some((section) => attribute2(section, "N") === "Field"))
|
|
17451
17475
|
fail("UNSUPPORTED_TEXT_EDIT", "Shapes with text fields cannot be edited.");
|
|
17452
17476
|
if (decodeVisioPlainText(node.textContent ?? "") === text) return false;
|
|
17453
|
-
await
|
|
17477
|
+
await assertDependencies2(target, node);
|
|
17454
17478
|
check();
|
|
17455
17479
|
while (node.firstChild) node.removeChild(node.firstChild);
|
|
17456
17480
|
node.appendChild(node.ownerDocument.createTextNode(encodeVisioPlainText(text)));
|
|
@@ -17544,6 +17568,197 @@ function replaceScopedPlainText(pkg, pagePaths, roots, document, edit, check) {
|
|
|
17544
17568
|
);
|
|
17545
17569
|
}
|
|
17546
17570
|
|
|
17571
|
+
// visio/edit-text-range-plan.ts
|
|
17572
|
+
function textRangeNodes(node, edit) {
|
|
17573
|
+
const tokens2 = [];
|
|
17574
|
+
let stored = "";
|
|
17575
|
+
for (const part of Array.from(node.childNodes)) {
|
|
17576
|
+
const start = stored.length;
|
|
17577
|
+
if (part.nodeType === 3 || part.nodeType === 4) stored += part.nodeValue ?? "";
|
|
17578
|
+
tokens2.push({ node: part, start, end: stored.length });
|
|
17579
|
+
}
|
|
17580
|
+
if (decodeVisioPlainText(stored) !== edit.expectedText)
|
|
17581
|
+
fail("EDIT_STALE_TEXT", "Original text no longer matches the range command.");
|
|
17582
|
+
const changed = edit.ranges.some(
|
|
17583
|
+
(range) => edit.expectedText.slice(range.start, range.end) !== range.text
|
|
17584
|
+
);
|
|
17585
|
+
if (!changed) return { changed: false, nodes: [] };
|
|
17586
|
+
const starts = [], deltas = [];
|
|
17587
|
+
let delta = 0;
|
|
17588
|
+
for (const range of edit.ranges) {
|
|
17589
|
+
starts.push(range.start + delta);
|
|
17590
|
+
delta += range.text.length - (range.end - range.start);
|
|
17591
|
+
deltas.push(delta);
|
|
17592
|
+
}
|
|
17593
|
+
const length = edit.expectedText.length + delta;
|
|
17594
|
+
if (!length && tokens2.some((token) => token.node.nodeType === 1))
|
|
17595
|
+
fail(
|
|
17596
|
+
"UNSUPPORTED_TEXT_RANGE",
|
|
17597
|
+
"Deleting all rich text has unproven native insertion-style behavior."
|
|
17598
|
+
);
|
|
17599
|
+
if (tokens2.some((token) => token.node.nodeType === 1)) {
|
|
17600
|
+
let start = 0, index = 0;
|
|
17601
|
+
while (start < edit.expectedText.length) {
|
|
17602
|
+
const newline = edit.expectedText.indexOf("\n", start), end = newline < 0 ? edit.expectedText.length : newline;
|
|
17603
|
+
let bodyLength = end - start;
|
|
17604
|
+
while (index < edit.ranges.length && edit.ranges[index].start < end) {
|
|
17605
|
+
const range = edit.ranges[index++];
|
|
17606
|
+
bodyLength += range.text.length - (range.end - range.start);
|
|
17607
|
+
}
|
|
17608
|
+
if (end > start && !bodyLength)
|
|
17609
|
+
fail(
|
|
17610
|
+
"UNSUPPORTED_TEXT_RANGE",
|
|
17611
|
+
"Deleting an entire rich paragraph body has unproven native insertion-style behavior."
|
|
17612
|
+
);
|
|
17613
|
+
start = end + 1;
|
|
17614
|
+
}
|
|
17615
|
+
}
|
|
17616
|
+
const position = (offset) => {
|
|
17617
|
+
let low = 0, high = edit.ranges.length;
|
|
17618
|
+
while (low < high) {
|
|
17619
|
+
const middle = low + high >>> 1;
|
|
17620
|
+
if (edit.ranges[middle].start < offset) low = middle + 1;
|
|
17621
|
+
else high = middle;
|
|
17622
|
+
}
|
|
17623
|
+
const index = low - 1;
|
|
17624
|
+
if (index < 0) return offset;
|
|
17625
|
+
const range = edit.ranges[index];
|
|
17626
|
+
return offset <= range.end ? starts[index] + range.text.length : offset + deltas[index];
|
|
17627
|
+
};
|
|
17628
|
+
const output = [];
|
|
17629
|
+
const append = (token, start, end) => {
|
|
17630
|
+
if (end <= start) return;
|
|
17631
|
+
const part = start === token.start && end === token.end ? token.node : token.node.cloneNode(false);
|
|
17632
|
+
if (part !== token.node)
|
|
17633
|
+
part.nodeValue = (token.node.nodeValue ?? "").slice(start - token.start, end - token.start);
|
|
17634
|
+
output.push({ position: position(start), priority: 2, node: part });
|
|
17635
|
+
};
|
|
17636
|
+
let first2 = 0;
|
|
17637
|
+
for (const token of tokens2) {
|
|
17638
|
+
if (token.node.nodeType === 1) {
|
|
17639
|
+
output.push({ position: position(token.start), priority: 0, node: token.node });
|
|
17640
|
+
continue;
|
|
17641
|
+
}
|
|
17642
|
+
const end = length ? token.end : Math.min(token.end, edit.expectedText.length);
|
|
17643
|
+
let cursor = token.start;
|
|
17644
|
+
while (first2 < edit.ranges.length && edit.ranges[first2].end <= cursor) first2++;
|
|
17645
|
+
for (let index = first2; index < edit.ranges.length && edit.ranges[index].start < end; index++) {
|
|
17646
|
+
const range = edit.ranges[index];
|
|
17647
|
+
append(token, cursor, Math.min(end, range.start));
|
|
17648
|
+
cursor = Math.max(cursor, Math.min(end, range.end));
|
|
17649
|
+
}
|
|
17650
|
+
append(token, cursor, end);
|
|
17651
|
+
}
|
|
17652
|
+
for (let index = 0; index < edit.ranges.length; index++) {
|
|
17653
|
+
const text = edit.ranges[index].text;
|
|
17654
|
+
if (text)
|
|
17655
|
+
output.push({
|
|
17656
|
+
position: starts[index],
|
|
17657
|
+
priority: 1,
|
|
17658
|
+
node: node.ownerDocument.createTextNode(text)
|
|
17659
|
+
});
|
|
17660
|
+
}
|
|
17661
|
+
output.sort((a, b) => a.position - b.position || a.priority - b.priority);
|
|
17662
|
+
let characterPosition = -1, characterRow = null;
|
|
17663
|
+
for (const item of output) {
|
|
17664
|
+
if (item.node.nodeType !== 1 || item.node.localName !== "cp") continue;
|
|
17665
|
+
const row = item.node.getAttribute("IX");
|
|
17666
|
+
if (item.position === characterPosition && row !== characterRow)
|
|
17667
|
+
fail(
|
|
17668
|
+
"UNSUPPORTED_TEXT_RANGE",
|
|
17669
|
+
"Consuming complete character runs creates ambiguous native marker boundaries."
|
|
17670
|
+
);
|
|
17671
|
+
characterPosition = item.position;
|
|
17672
|
+
characterRow = row;
|
|
17673
|
+
}
|
|
17674
|
+
return { changed: true, nodes: output.map((item) => item.node) };
|
|
17675
|
+
}
|
|
17676
|
+
|
|
17677
|
+
// visio/edit-text-ranges.ts
|
|
17678
|
+
async function replaceScopedTextRanges(pkg, pagePaths, roots, document, edit, check) {
|
|
17679
|
+
const shape = localTextTarget(roots.get(edit.pageId), document, edit.shapeId, check);
|
|
17680
|
+
if (children2(shape, "Section").some((section) => attribute2(section, "N") === "Field"))
|
|
17681
|
+
fail("UNSUPPORTED_TEXT_RANGE", "Text range editing of shapes with fields is unsupported.");
|
|
17682
|
+
const texts = children2(shape, "Text");
|
|
17683
|
+
if (texts.length !== 1)
|
|
17684
|
+
fail("UNSUPPORTED_TEXT_RANGE", "Range editing requires one existing local Text element.");
|
|
17685
|
+
const text = texts[0];
|
|
17686
|
+
if (Array.from(text.childNodes).some((node) => ![3, 4].includes(node.nodeType))) {
|
|
17687
|
+
const characters = effectiveFormattingRows(shape, document, "Character"), paragraphs = effectiveFormattingRows(shape, document, "Paragraph");
|
|
17688
|
+
assertFormattingText(shape, characters, paragraphs);
|
|
17689
|
+
}
|
|
17690
|
+
if (Array.from(text.childNodes).some(
|
|
17691
|
+
(node) => node.nodeType === 1 && node.localName === "fld"
|
|
17692
|
+
))
|
|
17693
|
+
fail("UNSUPPORTED_TEXT_RANGE", "Text range editing of fields is unsupported.");
|
|
17694
|
+
let preceding = "";
|
|
17695
|
+
for (const node of Array.from(text.childNodes)) {
|
|
17696
|
+
if (node.nodeType === 3 || node.nodeType === 4) preceding += node.nodeValue ?? "";
|
|
17697
|
+
else {
|
|
17698
|
+
const marker2 = node;
|
|
17699
|
+
if (marker2.localName === "pp" && preceding && !preceding.endsWith("\n") || marker2.localName === "tp" && attribute2(marker2, "IX") !== "0")
|
|
17700
|
+
fail(
|
|
17701
|
+
"UNSUPPORTED_TEXT_RANGE",
|
|
17702
|
+
"Noncanonical paragraph or tab marker placement cannot be edited."
|
|
17703
|
+
);
|
|
17704
|
+
}
|
|
17705
|
+
}
|
|
17706
|
+
const plan = textRangeNodes(text, edit);
|
|
17707
|
+
if (!plan.changed) return false;
|
|
17708
|
+
await assertFormattingDependencies(
|
|
17709
|
+
pkg,
|
|
17710
|
+
pagePaths,
|
|
17711
|
+
roots,
|
|
17712
|
+
edit.pageId,
|
|
17713
|
+
shape,
|
|
17714
|
+
/* @__PURE__ */ new Map([["TheText", text]]),
|
|
17715
|
+
check
|
|
17716
|
+
);
|
|
17717
|
+
check();
|
|
17718
|
+
while (text.firstChild) text.removeChild(text.firstChild);
|
|
17719
|
+
for (const node of plan.nodes) text.appendChild(node);
|
|
17720
|
+
return true;
|
|
17721
|
+
}
|
|
17722
|
+
|
|
17723
|
+
// visio/edit-text-range-commands.ts
|
|
17724
|
+
var invalidXmlText = /[\u0000-\u0008\u000b\u000c\u000d\u000e-\u001f\ufffe\uffff]|[\ud800-\udbff](?![\udc00-\udfff])|(?<![\ud800-\udbff])[\udc00-\udfff]/u;
|
|
17725
|
+
function textRangeBoundary(text, offset) {
|
|
17726
|
+
return !(offset > 0 && offset < text.length && /[\ud800-\udbff]/.test(text[offset - 1]) && /[\udc00-\udfff]/.test(text[offset]));
|
|
17727
|
+
}
|
|
17728
|
+
function snapshotTextRanges(edit, consume) {
|
|
17729
|
+
let characters = 0;
|
|
17730
|
+
const text = (value) => {
|
|
17731
|
+
if (typeof value !== "string" || invalidXmlText.test(value))
|
|
17732
|
+
fail("INVALID_EDIT_TEXT", "Range replacement requires valid XML text.");
|
|
17733
|
+
characters += value.length;
|
|
17734
|
+
if (characters > 1e6)
|
|
17735
|
+
fail("LIMIT_EDIT_TEXT", "Range replacement text exceeds input limits.");
|
|
17736
|
+
return consume ? consume(value) : value;
|
|
17737
|
+
};
|
|
17738
|
+
const pageId = edit.pageId, shapeId = edit.shapeId;
|
|
17739
|
+
if ([pageId, shapeId].some((id) => typeof id !== "string" || !id || id.length > 256))
|
|
17740
|
+
fail("INVALID_EDIT", "Invalid text range target.");
|
|
17741
|
+
const expectedText = text(edit.expectedText), original = edit.ranges;
|
|
17742
|
+
if (!Array.isArray(original)) fail("INVALID_EDIT", "Text ranges require an array.");
|
|
17743
|
+
const length = original.length;
|
|
17744
|
+
if (!Number.isSafeInteger(length) || length < 1 || length > 1e4)
|
|
17745
|
+
fail("LIMIT_EDITS", "Range replacement requires 1-10000 ranges.");
|
|
17746
|
+
const ranges = [];
|
|
17747
|
+
let end = 0, output = expectedText.length;
|
|
17748
|
+
for (let index = 0; index < length; index++) {
|
|
17749
|
+
const input = original[index], start = input.start, nextEnd = input.end, replacement = text(input.text);
|
|
17750
|
+
if (!Number.isSafeInteger(start) || !Number.isSafeInteger(nextEnd) || start < end || nextEnd <= start || nextEnd > expectedText.length || !textRangeBoundary(expectedText, start) || !textRangeBoundary(expectedText, nextEnd))
|
|
17751
|
+
fail("INVALID_EDIT", "Text ranges require ascending nonoverlapping UTF16 scalar boundaries.");
|
|
17752
|
+
if (replacement.includes("\n") || expectedText.slice(start, nextEnd).includes("\n"))
|
|
17753
|
+
fail("UNSUPPORTED_TEXT_RANGE", "Range replacement across paragraph breaks is unsupported.");
|
|
17754
|
+
ranges.push({ start, end: nextEnd, text: replacement });
|
|
17755
|
+
end = nextEnd;
|
|
17756
|
+
output += replacement.length - (nextEnd - start);
|
|
17757
|
+
}
|
|
17758
|
+
if (output > 1e6) fail("LIMIT_EDIT_TEXT", "Range replacement output exceeds limits.");
|
|
17759
|
+
return { type: "replace-text-ranges", pageId, shapeId, expectedText, ranges };
|
|
17760
|
+
}
|
|
17761
|
+
|
|
17547
17762
|
// visio/resize-anchor.ts
|
|
17548
17763
|
function snapshotResizeAnchor(value) {
|
|
17549
17764
|
if (value === void 0) return void 0;
|
|
@@ -17776,7 +17991,7 @@ function snapshotFormatting(edit) {
|
|
|
17776
17991
|
}
|
|
17777
17992
|
|
|
17778
17993
|
// visio/edit-commands.ts
|
|
17779
|
-
var isVisioPageEdit = (edit) => edit.type === "insert-page" || edit.type === "reorder-page" || edit.type === "rename-page" || edit.type === "delete-page";
|
|
17994
|
+
var isVisioPageEdit = (edit) => edit.type === "insert-page" || edit.type === "reorder-page" || edit.type === "rename-page" || edit.type === "delete-page" || edit.type === "set-page-size";
|
|
17780
17995
|
function geometryChangedCells(edit) {
|
|
17781
17996
|
if (edit.type === "create-line")
|
|
17782
17997
|
return [
|
|
@@ -17834,6 +18049,13 @@ function snapshotVisioEdits(edits, maxEdits, maxText) {
|
|
|
17834
18049
|
if (edit.type === "duplicate-shapes") return snapshotDuplicateShapes(edit);
|
|
17835
18050
|
if (edit.type === "paste-shapes") return snapshotPasteShapes(edit);
|
|
17836
18051
|
if (edit.type === "delete-page") return { type: edit.type, pageId: edit.pageId };
|
|
18052
|
+
if (edit.type === "set-page-size")
|
|
18053
|
+
return {
|
|
18054
|
+
type: edit.type,
|
|
18055
|
+
pageId: edit.pageId,
|
|
18056
|
+
width: numeric5(edit.width, true),
|
|
18057
|
+
height: numeric5(edit.height, true)
|
|
18058
|
+
};
|
|
17837
18059
|
if (edit.type === "reorder-page") {
|
|
17838
18060
|
if (!Number.isSafeInteger(edit.index) || edit.index < 0 || edit.index > 1e6)
|
|
17839
18061
|
fail("INVALID_EDIT", "Page order requires a bounded zero-based integer index.");
|
|
@@ -17856,6 +18078,7 @@ function snapshotVisioEdits(edits, maxEdits, maxText) {
|
|
|
17856
18078
|
const target = { pageId: edit.pageId, shapeId: edit.shapeId };
|
|
17857
18079
|
if (edit.type === "replace-plain-text")
|
|
17858
18080
|
return { ...target, type: edit.type, text: text(edit.text) };
|
|
18081
|
+
if (edit.type === "replace-text-ranges") return snapshotTextRanges(edit, text);
|
|
17859
18082
|
if (isVisioFormatEdit(edit)) return snapshotFormatting(edit);
|
|
17860
18083
|
if (edit.type === "reorder-shape") {
|
|
17861
18084
|
if (!["front", "back", "forward", "backward"].includes(edit.order))
|
|
@@ -20554,6 +20777,145 @@ function addReplacementPage(pagesPart, pages, rels, types, pagePaths, parts, dir
|
|
|
20554
20777
|
);
|
|
20555
20778
|
}
|
|
20556
20779
|
|
|
20780
|
+
// visio/edit-page-size.ts
|
|
20781
|
+
function constant(node, length) {
|
|
20782
|
+
if (!node || node.hasAttribute("E") || attribute2(node, "F") === "Inh")
|
|
20783
|
+
fail("EDIT_UNSUPPORTED_PAGE_SIZE", "A valid explicit page size or mode cache is required.");
|
|
20784
|
+
const value = visioFormulaCachedValue(attribute2(node, "V") ?? "", attribute2(node, "U"));
|
|
20785
|
+
if (!Number.isFinite(value.value) || !["scalar", ...length ? ["length"] : []].includes(value.unit))
|
|
20786
|
+
fail("EDIT_UNSUPPORTED_PAGE_SIZE", "Page size or mode has incompatible units.");
|
|
20787
|
+
const formula = executableCellFormula(attribute2(node, "F"));
|
|
20788
|
+
if (formula) {
|
|
20789
|
+
const analysis = analyzeVisioFormula(formula);
|
|
20790
|
+
if (analysis.guarded || analysis.dynamic || analysis.references.length || analysis.unsupportedFunctions.length)
|
|
20791
|
+
fail("EDIT_PROTECTED_CELL", "Protected or dependent page settings cannot be overwritten.");
|
|
20792
|
+
const result = evaluateVisioFormula(
|
|
20793
|
+
formula,
|
|
20794
|
+
() => fail("EDIT_PROTECTED_CELL", "Unsupported page dependency.")
|
|
20795
|
+
);
|
|
20796
|
+
if (result.value !== value.value || !["scalar", ...length ? ["length"] : []].includes(result.unit))
|
|
20797
|
+
fail("EDIT_PROTECTED_CELL", "Page setting formula cache cannot be proven.");
|
|
20798
|
+
}
|
|
20799
|
+
return value.value;
|
|
20800
|
+
}
|
|
20801
|
+
var escape3 = (value) => value.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
20802
|
+
function assertDependencies(roots, pagesPart, pages, pagePaths, pageId, changed, check) {
|
|
20803
|
+
const page = children2(pages, "Page").find((node) => attribute2(node, "ID") === pageId);
|
|
20804
|
+
const targetNames = new Set(
|
|
20805
|
+
["Name", "NameU"].map((name) => attribute2(page, name)?.toLowerCase())
|
|
20806
|
+
);
|
|
20807
|
+
const otherNames = children2(pages, "Page").filter((node) => node !== page).flatMap((node) => ["Name", "NameU"].map((name) => attribute2(node, name))).filter((name) => !!name && !targetNames.has(name.toLowerCase()));
|
|
20808
|
+
const cells4 = changed.map(escape3).join("|");
|
|
20809
|
+
const reference = new RegExp(`(?:^|[^a-z0-9_.])(?:${cells4})(?:$|[^a-z0-9_.])`, "i");
|
|
20810
|
+
const other = otherNames.length ? new RegExp(
|
|
20811
|
+
`Pages\\[(?:${otherNames.map(escape3).join("|")})\\]!(?:ThePage!)?(?:${cells4})(?![a-z0-9_.])`,
|
|
20812
|
+
"gi"
|
|
20813
|
+
) : void 0;
|
|
20814
|
+
const paths = new Map([...pagePaths].map(([id, path]) => [path, id]));
|
|
20815
|
+
for (const [path, root2] of roots)
|
|
20816
|
+
for (const node of [root2, ...Array.from(root2.getElementsByTagName("*"))]) {
|
|
20817
|
+
check();
|
|
20818
|
+
const formula = executableCellFormula(attribute2(node, "F"));
|
|
20819
|
+
if (!formula) continue;
|
|
20820
|
+
let code = unquotedVisioFormula(formula);
|
|
20821
|
+
const name = attribute2(node, "N") ?? "";
|
|
20822
|
+
if (inertDoubleClickFormula(name, formula)) continue;
|
|
20823
|
+
const owner = node.parentNode, container = owner?.parentNode;
|
|
20824
|
+
const ownerId = attribute2(owner ?? void 0, "ID");
|
|
20825
|
+
const connected = ownerId && /^[1-9]\d{0,9}$/.test(ownerId) && owner?.localName === "Shape" && owner.namespaceURI === root2.namespaceURI && (!attribute2(owner, "Type") || attribute2(owner, "Type") === "Shape") && !owner.hasAttribute("Master") && !owner.hasAttribute("MasterShape") && !children2(owner, "Shapes").length && ["BeginX", "BeginY", "EndX", "EndY"].every(
|
|
20826
|
+
(name2) => children2(owner, "Cell").filter((cell) => attribute2(cell, "N") === name2).length === 1
|
|
20827
|
+
) && container?.localName === "Shapes" && container.parentNode === root2 && children2(root2, "Connects").some(
|
|
20828
|
+
(connections2) => children2(connections2, "Connect").some(
|
|
20829
|
+
(connection) => attribute2(connection, "FromSheet") === ownerId
|
|
20830
|
+
)
|
|
20831
|
+
);
|
|
20832
|
+
const nativeGlue = paths.has(path) && connected && node.localName === "Cell" && node.namespaceURI === root2.namespaceURI && (/^(BeginX|BeginY|EndX|EndY)$/.test(name) && /^\s*_WALKGLUE\((?:BegTrigger,EndTrigger|EndTrigger,BegTrigger),WalkPreference\)\s*$/i.test(
|
|
20833
|
+
code
|
|
20834
|
+
) || /^(BegTrigger|EndTrigger)$/.test(name) && /^\s*_XFTRIGGER\(Sheet\.[1-9]\d*!EventXFMod\)\s*$/i.test(code));
|
|
20835
|
+
let dynamic2 = false;
|
|
20836
|
+
if (!nativeGlue) {
|
|
20837
|
+
try {
|
|
20838
|
+
dynamic2 = analyzeVisioFormula(
|
|
20839
|
+
mapVisioFormulaSyntax(
|
|
20840
|
+
formula,
|
|
20841
|
+
(part) => (other ? part.replace(other, "0") : part).replace(/Pages\[[^\]]+\]!/gi, "").replace(/ThePage!/gi, "")
|
|
20842
|
+
)
|
|
20843
|
+
).dynamic;
|
|
20844
|
+
} catch {
|
|
20845
|
+
dynamic2 = true;
|
|
20846
|
+
}
|
|
20847
|
+
}
|
|
20848
|
+
if (dynamic2)
|
|
20849
|
+
fail(
|
|
20850
|
+
"EDIT_UNSUPPORTED_PAGE_SIZE_DEPENDENCY",
|
|
20851
|
+
"Dynamic or unknown page-size dependencies cannot be safely refreshed."
|
|
20852
|
+
);
|
|
20853
|
+
let local = paths.get(path);
|
|
20854
|
+
if (path === pagesPart) {
|
|
20855
|
+
let ancestor = node;
|
|
20856
|
+
while (ancestor && ancestor.localName !== "Page")
|
|
20857
|
+
ancestor = ancestor.parentNode;
|
|
20858
|
+
local = ancestor ? attribute2(ancestor, "ID") : void 0;
|
|
20859
|
+
}
|
|
20860
|
+
if (other) code = code.replace(other, "0");
|
|
20861
|
+
if (!reference.test(code)) continue;
|
|
20862
|
+
if (local && local !== pageId && !/\bPages\[/i.test(code)) continue;
|
|
20863
|
+
fail(
|
|
20864
|
+
"EDIT_UNSUPPORTED_PAGE_SIZE_DEPENDENCY",
|
|
20865
|
+
"Page-size formula caches cannot be safely refreshed."
|
|
20866
|
+
);
|
|
20867
|
+
}
|
|
20868
|
+
}
|
|
20869
|
+
async function setVisioPageSize(pkg, pagesPart, pages, pagePaths, dirty, command2, check) {
|
|
20870
|
+
const page = children2(pages, "Page").find((node) => attribute2(node, "ID") === command2.pageId);
|
|
20871
|
+
if (!page) fail("EDIT_TARGET_NOT_FOUND", "Page does not exist.");
|
|
20872
|
+
if (children2(page, "PageSheet").length !== 1)
|
|
20873
|
+
fail("EDIT_UNSUPPORTED_PAGE_SIZE", "One explicit PageSheet is required.");
|
|
20874
|
+
const sheet = child(page, "PageSheet"), cells4 = uniqueFormattingCells(sheet);
|
|
20875
|
+
for (const name of [
|
|
20876
|
+
"PageWidth",
|
|
20877
|
+
"PageHeight",
|
|
20878
|
+
"PageScale",
|
|
20879
|
+
"DrawingScale",
|
|
20880
|
+
"DrawingSizeType",
|
|
20881
|
+
"DrawingResizeType"
|
|
20882
|
+
])
|
|
20883
|
+
if (!cells4.has(name) && [...cells4.keys()].some((key2) => key2.toLowerCase() === name.toLowerCase()))
|
|
20884
|
+
fail("EDIT_AMBIGUOUS_CELL", "Page settings require canonical cell names.");
|
|
20885
|
+
const pageScale = constant(cells4.get("PageScale"), true), drawingScale = constant(cells4.get("DrawingScale"), true);
|
|
20886
|
+
if (pageScale <= 0 || drawingScale <= 0)
|
|
20887
|
+
fail("EDIT_UNSUPPORTED_PAGE_SIZE", "Page and drawing scales must be positive.");
|
|
20888
|
+
const width = constant(cells4.get("PageWidth"), true), height = constant(cells4.get("PageHeight"), true);
|
|
20889
|
+
const size = constant(cells4.get("DrawingSizeType"), false);
|
|
20890
|
+
const resize = cells4.has("DrawingResizeType") ? constant(cells4.get("DrawingResizeType"), false) : void 0;
|
|
20891
|
+
if (width <= 0 || height <= 0 || ![0, 1, 2, 3, 4].includes(size) || resize !== void 0 && ![0, 1, 2].includes(resize))
|
|
20892
|
+
fail("EDIT_UNSUPPORTED_PAGE_SIZE", "Page dimensions or size modes are unsupported.");
|
|
20893
|
+
const targetWidth = command2.width === width * (pageScale / drawingScale) ? width : command2.width * drawingScale / pageScale, targetHeight = command2.height === height * (pageScale / drawingScale) ? height : command2.height * drawingScale / pageScale;
|
|
20894
|
+
if (![targetWidth, targetHeight].every(
|
|
20895
|
+
(value) => Number.isFinite(value) && value > 0 && value <= 1e6
|
|
20896
|
+
))
|
|
20897
|
+
fail("INVALID_PAGE_SIZE", "Converted drawing-page dimensions exceed limits.");
|
|
20898
|
+
const values = /* @__PURE__ */ new Map([
|
|
20899
|
+
["PageWidth", targetWidth],
|
|
20900
|
+
["PageHeight", targetHeight],
|
|
20901
|
+
["DrawingSizeType", 3],
|
|
20902
|
+
["DrawingResizeType", 0]
|
|
20903
|
+
]);
|
|
20904
|
+
const changed = [...values.keys()].filter(
|
|
20905
|
+
(name) => name === "PageWidth" ? width !== targetWidth : name === "PageHeight" ? height !== targetHeight : name === "DrawingSizeType" ? size !== 3 : resize !== 0
|
|
20906
|
+
);
|
|
20907
|
+
if (!changed.length) return;
|
|
20908
|
+
const roots = await editableVisioPageRoots(pkg, pagesPart, pages, pagePaths, dirty, check);
|
|
20909
|
+
for (const path of pkg.paths())
|
|
20910
|
+
if (/^visio\/.*\.xml$/i.test(path) && !roots.has(path)) {
|
|
20911
|
+
check();
|
|
20912
|
+
roots.set(path, dirty.get(path) ?? await pkg.readXml(path));
|
|
20913
|
+
}
|
|
20914
|
+
assertDependencies(roots, pagesPart, pages, pagePaths, command2.pageId, changed, check);
|
|
20915
|
+
for (const name of changed) setCell(sheet, name, values.get(name));
|
|
20916
|
+
dirty.set(pagesPart, pages);
|
|
20917
|
+
}
|
|
20918
|
+
|
|
20557
20919
|
// visio/edit-pages.ts
|
|
20558
20920
|
var officeRel2 = "http://schemas.openxmlformats.org/officeDocument/2006/relationships";
|
|
20559
20921
|
var pageType2 = "http://schemas.microsoft.com/visio/2010/relationships/page";
|
|
@@ -20589,6 +20951,10 @@ async function editVsdxPages(original, pkg, parts, commands, limits, maxOutput,
|
|
|
20589
20951
|
for (const command2 of commands) {
|
|
20590
20952
|
check();
|
|
20591
20953
|
const existing = children2(pages, "Page");
|
|
20954
|
+
if (command2.type === "set-page-size") {
|
|
20955
|
+
await setVisioPageSize(pkg, pagesPart, pages, pagePaths, dirty, command2, check);
|
|
20956
|
+
continue;
|
|
20957
|
+
}
|
|
20592
20958
|
if (command2.type === "delete-page") {
|
|
20593
20959
|
await deleteVisioPage(
|
|
20594
20960
|
pkg,
|
|
@@ -20692,8 +21058,10 @@ async function editVsdxPages(original, pkg, parts, commands, limits, maxOutput,
|
|
|
20692
21058
|
fail("LIMIT_EDIT_OUTPUT", "Saved package exceeds output limit.");
|
|
20693
21059
|
return { bytes: original, changedParts: [], diagnostics: [] };
|
|
20694
21060
|
}
|
|
20695
|
-
|
|
20696
|
-
|
|
21061
|
+
if (commands.some((command2) => command2.type !== "set-page-size")) {
|
|
21062
|
+
await updatePageAppProperties(pkg, pages, priorCount, dirty, limits, check);
|
|
21063
|
+
await recalculatePageFormulas(pkg, pagesPart, pages, pagePaths, dirty, check);
|
|
21064
|
+
}
|
|
20697
21065
|
if ((/* @__PURE__ */ new Set([...parts.keys(), ...dirty.keys()])).size > limits.maxEntries)
|
|
20698
21066
|
fail("LIMIT_ENTRIES", "Page insertion exceeds package entry limit.");
|
|
20699
21067
|
let total = [...parts.values()].reduce((sum, bytes2) => sum + bytes2.length, 0), nodes = 0;
|
|
@@ -20721,8 +21089,8 @@ async function editVsdxPages(original, pkg, parts, commands, limits, maxOutput,
|
|
|
20721
21089
|
changedParts: [.../* @__PURE__ */ new Set([...removed, ...dirty.keys()])],
|
|
20722
21090
|
diagnostics: [
|
|
20723
21091
|
{
|
|
20724
|
-
code: "edit-pages-experimental",
|
|
20725
|
-
message: "Page metadata and supported local numeric page-dependent caches were updated. Inherited, string and background-render-context formulas remain unsupported."
|
|
21092
|
+
code: commands.every((command2) => command2.type === "set-page-size") ? "edit-page-size-experimental" : "edit-pages-experimental",
|
|
21093
|
+
message: commands.every((command2) => command2.type === "set-page-size") ? "Fixed custom drawing-page dimensions were updated. Shape positions and printer settings were retained; affected page-size formula caches remain unsupported." : "Page metadata and supported local numeric page-dependent caches were updated. Inherited, string and background-render-context formulas remain unsupported."
|
|
20726
21094
|
}
|
|
20727
21095
|
]
|
|
20728
21096
|
};
|
|
@@ -21551,12 +21919,12 @@ async function editVsdx(input, edits, options = {}) {
|
|
|
21551
21919
|
const dirty = /* @__PURE__ */ new Map();
|
|
21552
21920
|
const roots = /* @__PURE__ */ new Map();
|
|
21553
21921
|
const geometryCommands = commands.filter(
|
|
21554
|
-
(command2) => command2.type !== "replace-plain-text" && command2.type !== "reorder-shape" && command2.type !== "duplicate-shapes" && command2.type !== "paste-shapes" && !isVisioFormatEdit(command2)
|
|
21922
|
+
(command2) => command2.type !== "replace-plain-text" && command2.type !== "replace-text-ranges" && command2.type !== "reorder-shape" && command2.type !== "duplicate-shapes" && command2.type !== "paste-shapes" && !isVisioFormatEdit(command2)
|
|
21555
21923
|
);
|
|
21556
21924
|
let document;
|
|
21557
21925
|
let masterMovePins = emptyMasterMoveProof();
|
|
21558
21926
|
if (geometryCommands.length || commands.some(
|
|
21559
|
-
(command2) => command2.type === "replace-plain-text" || isVisioFormatEdit(command2) || command2.type === "reorder-shape" || command2.type === "duplicate-shapes" || command2.type === "paste-shapes"
|
|
21927
|
+
(command2) => command2.type === "replace-plain-text" || command2.type === "replace-text-ranges" || isVisioFormatEdit(command2) || command2.type === "reorder-shape" || command2.type === "duplicate-shapes" || command2.type === "paste-shapes"
|
|
21560
21928
|
)) {
|
|
21561
21929
|
for (const [pageId, path2] of pages) {
|
|
21562
21930
|
const sourceRoot = await visioXml(pkg, path2, "PageContents");
|
|
@@ -21603,8 +21971,8 @@ async function editVsdx(input, edits, options = {}) {
|
|
|
21603
21971
|
root2 = sourceRoot.ownerDocument.cloneNode(true).documentElement;
|
|
21604
21972
|
roots.set(command2.pageId, root2);
|
|
21605
21973
|
}
|
|
21606
|
-
if (command2.type === "replace-plain-text") {
|
|
21607
|
-
if (await replaceScopedPlainText(pkg, new Set(pages.values()), roots, document, command2, check)) {
|
|
21974
|
+
if (command2.type === "replace-plain-text" || command2.type === "replace-text-ranges") {
|
|
21975
|
+
if (await (command2.type === "replace-plain-text" ? replaceScopedPlainText(pkg, new Set(pages.values()), roots, document, command2, check) : replaceScopedTextRanges(pkg, new Set(pages.values()), roots, document, command2, check))) {
|
|
21608
21976
|
dirty.set(path, root2);
|
|
21609
21977
|
textChanged = true;
|
|
21610
21978
|
}
|
package/dist/visio/model.d.ts
CHANGED
|
@@ -253,6 +253,9 @@ export interface VisioConnection {
|
|
|
253
253
|
}
|
|
254
254
|
export interface VisioPage {
|
|
255
255
|
id: string;
|
|
256
|
+
/** Explicit cached drawing page-size modes. Missing or invalid source caches are omitted. */
|
|
257
|
+
drawingSizeType?: number;
|
|
258
|
+
drawingResizeType?: number;
|
|
256
259
|
/** Cached PageScale/DrawingScale. Scene geometry is in physical page inches;
|
|
257
260
|
* source-backed geometry edits continue to accept drawing inches. Omitted means 1.
|
|
258
261
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../visio/model.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../visio/model.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../visio/parser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAGrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAKjD,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGxD,OAAO,EAAwB,KAAK,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACnF,OAAO,EAAmC,KAAK,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAiBrF,MAAM,WAAW,gBAAgB;IAChC,qGAAqG;IACrG,iBAAiB,CAAC,EAAE,0BAA0B,CAAC;IAC/C,MAAM,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACrC,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qEAAqE;IACrE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB;AAOD,uFAAuF;AACvF,wBAAsB,SAAS,CAC9B,KAAK,EAAE,UAAU,GAAG,WAAW,EAC/B,OAAO,GAAE,gBAAqB,GAC5B,OAAO,CAAC,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../visio/parser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAGrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAKjD,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGxD,OAAO,EAAwB,KAAK,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACnF,OAAO,EAAmC,KAAK,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAiBrF,MAAM,WAAW,gBAAgB;IAChC,qGAAqG;IACrG,iBAAiB,CAAC,EAAE,0BAA0B,CAAC;IAC/C,MAAM,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACrC,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qEAAqE;IACrE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB;AAOD,uFAAuF;AACvF,wBAAsB,SAAS,CAC9B,KAAK,EAAE,UAAU,GAAG,WAAW,EAC/B,OAAO,GAAE,gBAAqB,GAC5B,OAAO,CAAC,aAAa,CAAC,CAqRxB;AAED,gFAAgF;AAChF,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,CAYvF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edit-commands.d.ts","sourceRoot":"","sources":["../../../visio/ui/edit-commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"edit-commands.d.ts","sourceRoot":"","sources":["../../../visio/ui/edit-commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAO1C,8FAA8F;AAC9F,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,SAAS,EAAE,GAAG,SAAS,EAAE,CAkJtE"}
|