docx-plus 0.1.6 → 0.1.7

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.umd.js CHANGED
@@ -6468,6 +6468,49 @@
6468
6468
  if (children) this.root.push(...children);
6469
6469
  }
6470
6470
  };
6471
+ /**
6472
+ * Creates a NextAttributeComponent with explicit XML attribute keys.
6473
+ *
6474
+ * This is the correct way to add non-w: namespace attributes (c:, a:, dgm:, r:)
6475
+ * to XmlComponent elements. Unlike XmlAttributeComponent which maps through xmlKeys,
6476
+ * this function takes explicit XML attribute names directly.
6477
+ *
6478
+ * @param attrs - Object with full XML attribute names (e.g., "c:val", "dgm:modelId")
6479
+ * @returns A NextAttributeComponent that produces correct _attr XML
6480
+ *
6481
+ * @example
6482
+ * ```typescript
6483
+ * // Push directly into root for attributes on the element itself:
6484
+ * this.root.push(chartAttr({ "c:idx": 0 }));
6485
+ *
6486
+ * // Wrap in a named element for child elements with attributes:
6487
+ * this.root.push(wrapEl("c:barDir", chartAttr({ "c:val": "col" })));
6488
+ * ```
6489
+ */
6490
+ const chartAttr = (attrs) => new NextAttributeComponent(Object.fromEntries(Object.entries(attrs).map(([key, value]) => [key, {
6491
+ key,
6492
+ value
6493
+ }])));
6494
+ /**
6495
+ * Wraps a component in a named XmlComponent element.
6496
+ *
6497
+ * Used with chartAttr to create child elements with attributes:
6498
+ * wrapEl("c:barDir", chartAttr({ "c:val": "col" }))
6499
+ * produces <c:barDir c:val="col"/>
6500
+ *
6501
+ * @param elementName - The XML element name
6502
+ * @param child - The child component (typically a NextAttributeComponent from chartAttr)
6503
+ * @returns An XmlComponent with the given name wrapping the child
6504
+ */
6505
+ function wrapEl(elementName, child) {
6506
+ const el = new class extends XmlComponent {
6507
+ constructor(name) {
6508
+ super(name);
6509
+ }
6510
+ }(elementName);
6511
+ el["root"].push(child);
6512
+ return el;
6513
+ }
6471
6514
  //#endregion
6472
6515
  //#region src/file/paragraph/formatting/alignment.ts
6473
6516
  /**
@@ -14017,6 +14060,64 @@
14017
14060
  effects: md.effects
14018
14061
  });
14019
14062
  this.root.push(wpg);
14063
+ } else if (mediaData.type === "chart") {
14064
+ this.root.push(new GraphicDataAttributes({ uri: "http://schemas.openxmlformats.org/drawingml/2006/chart" }));
14065
+ const md = mediaData;
14066
+ const chartRef = new class extends XmlComponent {
14067
+ constructor() {
14068
+ super("c:chart");
14069
+ }
14070
+ }();
14071
+ chartRef["root"].push(new NextAttributeComponent({
14072
+ xmlnsC: {
14073
+ key: "xmlns:c",
14074
+ value: "http://schemas.openxmlformats.org/drawingml/2006/chart"
14075
+ },
14076
+ xmlnsR: {
14077
+ key: "xmlns:r",
14078
+ value: "http://schemas.openxmlformats.org/officeDocument/2006/relationships"
14079
+ },
14080
+ rId: {
14081
+ key: "r:id",
14082
+ value: `rId{chart:${md.chartKey}}`
14083
+ }
14084
+ }));
14085
+ this.root.push(chartRef);
14086
+ } else if (mediaData.type === "smartart") {
14087
+ this.root.push(new GraphicDataAttributes({ uri: "http://schemas.openxmlformats.org/drawingml/2006/diagram" }));
14088
+ const md = mediaData;
14089
+ const relIds = new class extends XmlComponent {
14090
+ constructor() {
14091
+ super("dgm:relIds");
14092
+ }
14093
+ }();
14094
+ relIds["root"].push(new NextAttributeComponent({
14095
+ xmlnsDgm: {
14096
+ key: "xmlns:dgm",
14097
+ value: "http://schemas.openxmlformats.org/drawingml/2006/diagram"
14098
+ },
14099
+ xmlnsR: {
14100
+ key: "xmlns:r",
14101
+ value: "http://schemas.openxmlformats.org/officeDocument/2006/relationships"
14102
+ },
14103
+ rCs: {
14104
+ key: "r:cs",
14105
+ value: `rId{smartart-cs:${md.smartArtKey}}`
14106
+ },
14107
+ rDm: {
14108
+ key: "r:dm",
14109
+ value: `rId{smartart:${md.smartArtKey}}`
14110
+ },
14111
+ rLo: {
14112
+ key: "r:lo",
14113
+ value: `rId{smartart-lo:${md.smartArtKey}}`
14114
+ },
14115
+ rQs: {
14116
+ key: "r:qs",
14117
+ value: `rId{smartart-qs:${md.smartArtKey}}`
14118
+ }
14119
+ }));
14120
+ this.root.push(relIds);
14020
14121
  } else {
14021
14122
  this.root.push(new GraphicDataAttributes({ uri: "http://schemas.openxmlformats.org/drawingml/2006/picture" }));
14022
14123
  const pic = new Pic({
@@ -15227,6 +15328,896 @@
15227
15328
  }
15228
15329
  };
15229
15330
  //#endregion
15331
+ //#region src/file/chart/axes/axes.ts
15332
+ /**
15333
+ * Chart axes — c:catAx and c:valAx.
15334
+ *
15335
+ * @module
15336
+ */
15337
+ /**
15338
+ * c:catAx — category axis.
15339
+ */
15340
+ var CatAx = class extends XmlComponent {
15341
+ constructor(axId, crossAx) {
15342
+ super("c:catAx");
15343
+ this.root.push(wrapEl("c:axId", chartAttr({ val: axId })));
15344
+ this.root.push(wrapEl("c:crossAx", chartAttr({ val: crossAx })));
15345
+ this.root.push(new EmptyElement("c:scaling"));
15346
+ this.root.push(new EmptyElement("c:delete"));
15347
+ this.root.push(wrapEl("c:axPos", chartAttr({ val: "b" })));
15348
+ this.root.push(wrapEl("c:auto", chartAttr({ val: true })));
15349
+ this.root.push(wrapEl("c:lblOffset", chartAttr({ val: "100" })));
15350
+ this.root.push(wrapEl("c:noMultiLvlLbl", chartAttr({ val: false })));
15351
+ }
15352
+ };
15353
+ /**
15354
+ * c:valAx — value axis.
15355
+ */
15356
+ var ValAx = class extends XmlComponent {
15357
+ constructor(axId, crossAx) {
15358
+ super("c:valAx");
15359
+ this.root.push(wrapEl("c:axId", chartAttr({ val: axId })));
15360
+ this.root.push(wrapEl("c:crossAx", chartAttr({ val: crossAx })));
15361
+ this.root.push(new EmptyElement("c:scaling"));
15362
+ this.root.push(new EmptyElement("c:delete"));
15363
+ this.root.push(wrapEl("c:axPos", chartAttr({ val: "l" })));
15364
+ this.root.push(wrapEl("c:numFmt", chartAttr({
15365
+ formatCode: "General",
15366
+ sourceLinked: true
15367
+ })));
15368
+ this.root.push(new EmptyElement("c:majorTickMark"));
15369
+ this.root.push(new EmptyElement("c:minorTickMark"));
15370
+ this.root.push(new EmptyElement("c:tickLblPos"));
15371
+ this.root.push(new EmptyElement("c:spPr"));
15372
+ }
15373
+ };
15374
+ //#endregion
15375
+ //#region src/file/chart/series/series-data.ts
15376
+ /**
15377
+ * Chart series data helpers — creates c:strRef and c:numRef structures.
15378
+ *
15379
+ * @module
15380
+ */
15381
+ /**
15382
+ * Creates a c:strRef element with string literal cache.
15383
+ */
15384
+ const createStrRef = (values) => {
15385
+ return new StrRef(typeof values === "string" ? [values] : values);
15386
+ };
15387
+ /**
15388
+ * Creates a c:numRef element with numeric literal cache.
15389
+ */
15390
+ const createNumRef = (values) => new NumRef(values);
15391
+ var StrRef = class extends XmlComponent {
15392
+ constructor(values) {
15393
+ super("c:strRef");
15394
+ this.root.push(new EmptyElement("c:f"));
15395
+ this.root.push(new StrCache(values));
15396
+ }
15397
+ };
15398
+ var StrCache = class extends XmlComponent {
15399
+ constructor(values) {
15400
+ super("c:strCache");
15401
+ this.root.push(wrapEl("c:ptCount", chartAttr({ val: values.length })));
15402
+ for (let i = 0; i < values.length; i++) this.root.push(new StrPt(i, values[i]));
15403
+ }
15404
+ };
15405
+ var StrPt = class extends XmlComponent {
15406
+ constructor(index, value) {
15407
+ super("c:pt");
15408
+ this.root.push(chartAttr({ idx: index }));
15409
+ this.root.push(new StringValue("c:v", value));
15410
+ }
15411
+ };
15412
+ var NumRef = class extends XmlComponent {
15413
+ constructor(values) {
15414
+ super("c:numRef");
15415
+ this.root.push(new EmptyElement("c:f"));
15416
+ this.root.push(new NumCache(values));
15417
+ }
15418
+ };
15419
+ var NumCache = class extends XmlComponent {
15420
+ constructor(values) {
15421
+ super("c:numCache");
15422
+ this.root.push(wrapEl("c:ptCount", chartAttr({ val: values.length })));
15423
+ this.root.push(new FormatCode("General"));
15424
+ for (let i = 0; i < values.length; i++) this.root.push(new NumPt(i, values[i]));
15425
+ }
15426
+ };
15427
+ var NumPt = class extends XmlComponent {
15428
+ constructor(index, value) {
15429
+ super("c:pt");
15430
+ this.root.push(chartAttr({ idx: index }));
15431
+ this.root.push(new StringValue("c:v", String(value)));
15432
+ }
15433
+ };
15434
+ var FormatCode = class extends XmlComponent {
15435
+ constructor(code) {
15436
+ super("c:formatCode");
15437
+ this.root.push(code);
15438
+ }
15439
+ };
15440
+ var StringValue = class extends XmlComponent {
15441
+ constructor(name, val) {
15442
+ super(name);
15443
+ this.root.push(val);
15444
+ }
15445
+ };
15446
+ //#endregion
15447
+ //#region src/file/chart/chart-types/area-chart.ts
15448
+ /**
15449
+ * Area chart XML component (c:areaChart).
15450
+ *
15451
+ * @module
15452
+ */
15453
+ var AreaChart = class extends XmlComponent {
15454
+ constructor(options) {
15455
+ super("c:areaChart");
15456
+ this.root.push(wrapEl("c:grouping", chartAttr({ val: "standard" })));
15457
+ for (let i = 0; i < options.series.length; i++) this.root.push(new AreaSeries(i, options.series[i], options.categories));
15458
+ this.root.push(wrapEl("c:axId", chartAttr({ val: 10 })));
15459
+ this.root.push(wrapEl("c:axId", chartAttr({ val: 20 })));
15460
+ }
15461
+ };
15462
+ var AreaSeries = class extends XmlComponent {
15463
+ constructor(index, series, categories) {
15464
+ super("c:ser");
15465
+ this.root.push(wrapEl("c:idx", chartAttr({ val: index })));
15466
+ this.root.push(wrapEl("c:order", chartAttr({ val: index })));
15467
+ this.root.push(new SeriesTx$4(series.name));
15468
+ this.root.push(new SeriesCat$3(categories));
15469
+ this.root.push(new SeriesVal$3(series.values));
15470
+ this.root.push(new EmptyElement("c:spPr"));
15471
+ }
15472
+ };
15473
+ var SeriesTx$4 = class extends XmlComponent {
15474
+ constructor(name) {
15475
+ super("c:tx");
15476
+ this.root.push(createStrRef(name));
15477
+ }
15478
+ };
15479
+ var SeriesCat$3 = class extends XmlComponent {
15480
+ constructor(categories) {
15481
+ super("c:cat");
15482
+ this.root.push(createStrRef(categories));
15483
+ }
15484
+ };
15485
+ var SeriesVal$3 = class extends XmlComponent {
15486
+ constructor(values) {
15487
+ super("c:val");
15488
+ this.root.push(createNumRef(values));
15489
+ }
15490
+ };
15491
+ //#endregion
15492
+ //#region src/file/chart/chart-types/bar-chart.ts
15493
+ /**
15494
+ * Bar/Column chart XML component (c:barChart).
15495
+ *
15496
+ * @module
15497
+ */
15498
+ /**
15499
+ * CT_BarChart — bar or column chart type.
15500
+ */
15501
+ var BarChart = class extends XmlComponent {
15502
+ constructor(options) {
15503
+ super("c:barChart");
15504
+ this.root.push(wrapEl("c:barDir", chartAttr({ val: options.barDirection })));
15505
+ this.root.push(wrapEl("c:grouping", chartAttr({ val: "clustered" })));
15506
+ for (let i = 0; i < options.series.length; i++) this.root.push(new BarSeries(i, options.series[i], options.categories));
15507
+ this.root.push(wrapEl("c:axId", chartAttr({ val: 10 })));
15508
+ this.root.push(wrapEl("c:axId", chartAttr({ val: 20 })));
15509
+ }
15510
+ };
15511
+ var BarSeries = class extends XmlComponent {
15512
+ constructor(index, series, categories) {
15513
+ super("c:ser");
15514
+ this.root.push(wrapEl("c:idx", chartAttr({ val: index })));
15515
+ this.root.push(wrapEl("c:order", chartAttr({ val: index })));
15516
+ this.root.push(new SeriesTx$3(series.name));
15517
+ this.root.push(new SeriesCat$2(categories));
15518
+ this.root.push(new SeriesVal$2(series.values));
15519
+ this.root.push(new EmptyElement("c:spPr"));
15520
+ }
15521
+ };
15522
+ var SeriesTx$3 = class extends XmlComponent {
15523
+ constructor(name) {
15524
+ super("c:tx");
15525
+ this.root.push(createStrRef(name));
15526
+ }
15527
+ };
15528
+ var SeriesCat$2 = class extends XmlComponent {
15529
+ constructor(categories) {
15530
+ super("c:cat");
15531
+ this.root.push(createStrRef(categories));
15532
+ }
15533
+ };
15534
+ var SeriesVal$2 = class extends XmlComponent {
15535
+ constructor(values) {
15536
+ super("c:val");
15537
+ this.root.push(createNumRef(values));
15538
+ }
15539
+ };
15540
+ //#endregion
15541
+ //#region src/file/chart/chart-types/line-chart.ts
15542
+ /**
15543
+ * Line chart XML component (c:lineChart).
15544
+ *
15545
+ * @module
15546
+ */
15547
+ var LineChart = class extends XmlComponent {
15548
+ constructor(options) {
15549
+ super("c:lineChart");
15550
+ this.root.push(wrapEl("c:grouping", chartAttr({ val: "standard" })));
15551
+ for (let i = 0; i < options.series.length; i++) this.root.push(new LineSeries(i, options.series[i], options.categories));
15552
+ this.root.push(wrapEl("c:axId", chartAttr({ val: 10 })));
15553
+ this.root.push(wrapEl("c:axId", chartAttr({ val: 20 })));
15554
+ }
15555
+ };
15556
+ var LineSeries = class extends XmlComponent {
15557
+ constructor(index, series, categories) {
15558
+ super("c:ser");
15559
+ this.root.push(wrapEl("c:idx", chartAttr({ val: index })));
15560
+ this.root.push(wrapEl("c:order", chartAttr({ val: index })));
15561
+ this.root.push(new SeriesTx$2(series.name));
15562
+ this.root.push(new SeriesCat$1(categories));
15563
+ this.root.push(new SeriesVal$1(series.values));
15564
+ this.root.push(new EmptyElement("c:spPr"));
15565
+ this.root.push(new Marker$1());
15566
+ }
15567
+ };
15568
+ var Marker$1 = class extends XmlComponent {
15569
+ constructor() {
15570
+ super("c:marker");
15571
+ this.root.push(wrapEl("c:symbol", chartAttr({ val: "none" })));
15572
+ }
15573
+ };
15574
+ var SeriesTx$2 = class extends XmlComponent {
15575
+ constructor(name) {
15576
+ super("c:tx");
15577
+ this.root.push(createStrRef(name));
15578
+ }
15579
+ };
15580
+ var SeriesCat$1 = class extends XmlComponent {
15581
+ constructor(categories) {
15582
+ super("c:cat");
15583
+ this.root.push(createStrRef(categories));
15584
+ }
15585
+ };
15586
+ var SeriesVal$1 = class extends XmlComponent {
15587
+ constructor(values) {
15588
+ super("c:val");
15589
+ this.root.push(createNumRef(values));
15590
+ }
15591
+ };
15592
+ //#endregion
15593
+ //#region src/file/chart/chart-types/pie-chart.ts
15594
+ /**
15595
+ * Pie chart XML component (c:pieChart).
15596
+ *
15597
+ * @module
15598
+ */
15599
+ var PieChart = class extends XmlComponent {
15600
+ constructor(options) {
15601
+ super("c:pieChart");
15602
+ this.root.push(wrapEl("c:varyColors", chartAttr({ val: true })));
15603
+ const series = options.series[0];
15604
+ if (series) this.root.push(new PieSeries(series, options.categories));
15605
+ }
15606
+ };
15607
+ var PieSeries = class extends XmlComponent {
15608
+ constructor(series, categories) {
15609
+ super("c:ser");
15610
+ this.root.push(wrapEl("c:idx", chartAttr({ val: 0 })));
15611
+ this.root.push(wrapEl("c:order", chartAttr({ val: 0 })));
15612
+ this.root.push(new SeriesTx$1(series.name));
15613
+ this.root.push(new SeriesCat(categories));
15614
+ this.root.push(new SeriesVal(series.values));
15615
+ for (let i = 0; i < categories.length; i++) this.root.push(wrapEl("c:dPt", chartAttr({ idx: i })));
15616
+ this.root.push(new EmptyElement("c:spPr"));
15617
+ }
15618
+ };
15619
+ var SeriesTx$1 = class extends XmlComponent {
15620
+ constructor(name) {
15621
+ super("c:tx");
15622
+ this.root.push(createStrRef(name));
15623
+ }
15624
+ };
15625
+ var SeriesCat = class extends XmlComponent {
15626
+ constructor(categories) {
15627
+ super("c:cat");
15628
+ this.root.push(createStrRef(categories));
15629
+ }
15630
+ };
15631
+ var SeriesVal = class extends XmlComponent {
15632
+ constructor(values) {
15633
+ super("c:val");
15634
+ this.root.push(createNumRef(values));
15635
+ }
15636
+ };
15637
+ //#endregion
15638
+ //#region src/file/chart/chart-types/scatter-chart.ts
15639
+ /**
15640
+ * Scatter chart XML component (c:scatterChart).
15641
+ *
15642
+ * @module
15643
+ */
15644
+ var ScatterChart = class extends XmlComponent {
15645
+ constructor(options) {
15646
+ super("c:scatterChart");
15647
+ for (let i = 0; i < options.series.length; i++) this.root.push(new ScatterSeries(i, options.series[i], options.categories));
15648
+ this.root.push(wrapEl("c:axId", chartAttr({ val: 10 })));
15649
+ this.root.push(wrapEl("c:axId", chartAttr({ val: 20 })));
15650
+ this.root.push(wrapEl("c:axId", chartAttr({ val: 30 })));
15651
+ }
15652
+ };
15653
+ var ScatterSeries = class extends XmlComponent {
15654
+ constructor(index, series, categories) {
15655
+ super("c:ser");
15656
+ this.root.push(wrapEl("c:idx", chartAttr({ val: index })));
15657
+ this.root.push(wrapEl("c:order", chartAttr({ val: index })));
15658
+ this.root.push(new SeriesTx(series.name));
15659
+ this.root.push(new XValues(categories));
15660
+ this.root.push(new YValues(series.values));
15661
+ this.root.push(new EmptyElement("c:spPr"));
15662
+ this.root.push(new Marker());
15663
+ }
15664
+ };
15665
+ var SeriesTx = class extends XmlComponent {
15666
+ constructor(_name) {
15667
+ super("c:tx");
15668
+ this.root.push(createNumRef([1]));
15669
+ }
15670
+ };
15671
+ var XValues = class extends XmlComponent {
15672
+ constructor(categories) {
15673
+ super("c:xVal");
15674
+ const xValues = categories.map((_, i) => i + 1);
15675
+ this.root.push(createNumRef(xValues));
15676
+ }
15677
+ };
15678
+ var YValues = class extends XmlComponent {
15679
+ constructor(values) {
15680
+ super("c:yVal");
15681
+ this.root.push(createNumRef(values));
15682
+ }
15683
+ };
15684
+ var Marker = class extends XmlComponent {
15685
+ constructor() {
15686
+ super("c:marker");
15687
+ this.root.push(wrapEl("c:symbol", chartAttr({ val: "circle" })));
15688
+ this.root.push(new EmptyElement("c:size"));
15689
+ }
15690
+ };
15691
+ //#endregion
15692
+ //#region src/file/chart/chart-types/create-chart-type.ts
15693
+ /**
15694
+ * Creates the appropriate chart type XML component.
15695
+ */
15696
+ const createChartType = (options) => {
15697
+ switch (options.type) {
15698
+ case "column":
15699
+ case "bar": return new BarChart({
15700
+ barDirection: options.type === "column" ? "col" : "bar",
15701
+ categories: options.categories,
15702
+ series: options.series
15703
+ });
15704
+ case "line": return new LineChart({
15705
+ categories: options.categories,
15706
+ series: options.series
15707
+ });
15708
+ case "pie": return new PieChart({
15709
+ categories: options.categories,
15710
+ series: options.series
15711
+ });
15712
+ case "area": return new AreaChart({
15713
+ categories: options.categories,
15714
+ series: options.series
15715
+ });
15716
+ case "scatter": return new ScatterChart({
15717
+ categories: options.categories,
15718
+ series: options.series
15719
+ });
15720
+ default: throw new Error(`Chart type "${options.type}" is not supported`);
15721
+ }
15722
+ };
15723
+ //#endregion
15724
+ //#region src/file/chart/title.ts
15725
+ /**
15726
+ * Chart title (c:title).
15727
+ *
15728
+ * @module
15729
+ */
15730
+ /**
15731
+ * c:title — chart title overlay.
15732
+ */
15733
+ var ChartTitle = class extends XmlComponent {
15734
+ constructor(title) {
15735
+ super("c:title");
15736
+ this.root.push(new TitleTx(title));
15737
+ this.root.push(new TitleOverlay());
15738
+ }
15739
+ };
15740
+ var TitleTx = class extends XmlComponent {
15741
+ constructor(title) {
15742
+ super("c:tx");
15743
+ const rich = new class extends XmlComponent {
15744
+ constructor() {
15745
+ super("c:rich");
15746
+ }
15747
+ }();
15748
+ rich["root"].push(new class extends XmlComponent {
15749
+ constructor() {
15750
+ super("a:bodyPr");
15751
+ }
15752
+ }());
15753
+ rich["root"].push(new class extends XmlComponent {
15754
+ constructor() {
15755
+ super("a:lstStyle");
15756
+ }
15757
+ }());
15758
+ const p = new class extends XmlComponent {
15759
+ constructor() {
15760
+ super("a:p");
15761
+ }
15762
+ }();
15763
+ const r = new class extends XmlComponent {
15764
+ constructor() {
15765
+ super("a:r");
15766
+ }
15767
+ }();
15768
+ r["root"].push(new class extends XmlComponent {
15769
+ constructor() {
15770
+ super("a:t");
15771
+ }
15772
+ }(title));
15773
+ p["root"].push(r);
15774
+ rich["root"].push(p);
15775
+ this.root.push(rich);
15776
+ }
15777
+ };
15778
+ var TitleOverlay = class extends XmlComponent {
15779
+ constructor() {
15780
+ super("c:overlay");
15781
+ this.root.push(chartAttr({ val: 0 }));
15782
+ }
15783
+ };
15784
+ //#endregion
15785
+ //#region src/file/chart/chart-space.ts
15786
+ /**
15787
+ * ChartSpace — root element for chart XML parts (c:chartSpace).
15788
+ *
15789
+ * @module
15790
+ */
15791
+ /**
15792
+ * c:chartSpace — root element for chart XML parts.
15793
+ */
15794
+ var ChartSpace = class extends XmlComponent {
15795
+ constructor(options) {
15796
+ super("c:chartSpace");
15797
+ this.root.push(chartAttr({
15798
+ "xmlns:a": "http://schemas.openxmlformats.org/drawingml/2006/main",
15799
+ "xmlns:c": "http://schemas.openxmlformats.org/drawingml/2006/chart",
15800
+ "xmlns:r": "http://schemas.openxmlformats.org/officeDocument/2006/relationships"
15801
+ }));
15802
+ const chart = new ChartContainer();
15803
+ if (options.title) chart["root"].push(new ChartTitle(options.title));
15804
+ chart["root"].push(new EmptyElement("c:autoTitleDeleted"));
15805
+ const plotArea = new PlotArea();
15806
+ plotArea["root"].push(createChartType({
15807
+ categories: options.categories,
15808
+ series: options.series,
15809
+ type: options.type
15810
+ }));
15811
+ if (options.type !== "pie") if (options.type === "scatter") {
15812
+ plotArea["root"].push(new ValAx(10, 20));
15813
+ plotArea["root"].push(new ValAx(20, 10));
15814
+ } else {
15815
+ plotArea["root"].push(new CatAx(10, 20));
15816
+ plotArea["root"].push(new ValAx(20, 10));
15817
+ }
15818
+ chart["root"].push(plotArea);
15819
+ if (options.showLegend !== false) chart["root"].push(createLegend());
15820
+ this.root.push(chart);
15821
+ if (options.style !== void 0) this.root.push(new ChartStyle(options.style));
15822
+ }
15823
+ };
15824
+ var ChartContainer = class extends XmlComponent {
15825
+ constructor() {
15826
+ super("c:chart");
15827
+ }
15828
+ };
15829
+ var PlotArea = class extends XmlComponent {
15830
+ constructor() {
15831
+ super("c:plotArea");
15832
+ }
15833
+ };
15834
+ function createLegend() {
15835
+ const legend = new class extends XmlComponent {
15836
+ constructor() {
15837
+ super("c:legend");
15838
+ }
15839
+ }();
15840
+ legend["root"].push(new EmptyElement("c:legendPos"));
15841
+ legend["root"].push(new EmptyElement("c:layout"));
15842
+ legend["root"].push(new EmptyElement("c:overlay"));
15843
+ return legend;
15844
+ }
15845
+ var ChartStyle = class extends XmlComponent {
15846
+ constructor(val) {
15847
+ super("c:style");
15848
+ this.root.push(chartAttr({ val: String(val) }));
15849
+ }
15850
+ };
15851
+ //#endregion
15852
+ //#region src/file/paragraph/run/chart-run.ts
15853
+ /**
15854
+ * ChartRun module for embedding charts in WordprocessingML documents.
15855
+ *
15856
+ * Charts are stored as independent XML parts (word/charts/chart{n}.xml)
15857
+ * and referenced from document.xml via drawing relationships.
15858
+ *
15859
+ * @module
15860
+ */
15861
+ /**
15862
+ * Represents an embedded chart in a WordprocessingML document.
15863
+ *
15864
+ * @publicApi
15865
+ *
15866
+ * @example
15867
+ * ```typescript
15868
+ * new ChartRun({
15869
+ * type: "column",
15870
+ * data: {
15871
+ * categories: ["Q1", "Q2", "Q3", "Q4"],
15872
+ * series: [
15873
+ * { name: "Sales", values: [100, 200, 300, 400] },
15874
+ * ],
15875
+ * },
15876
+ * transformation: { width: 500, height: 300 },
15877
+ * title: "Quarterly Sales",
15878
+ * });
15879
+ * ```
15880
+ */
15881
+ var ChartRun = class extends Run {
15882
+ constructor(options) {
15883
+ super({});
15884
+ _defineProperty(this, "chartOptions", void 0);
15885
+ _defineProperty(this, "chartKey", void 0);
15886
+ this.chartOptions = options;
15887
+ this.chartKey = `chart_${this.hashChartData(options)}`;
15888
+ const drawing = new Drawing({
15889
+ chartKey: this.chartKey,
15890
+ transformation: createTransformation(options.transformation),
15891
+ type: "chart"
15892
+ }, {
15893
+ docProperties: options.altText,
15894
+ floating: options.floating
15895
+ });
15896
+ this.root.push(drawing);
15897
+ }
15898
+ prepForXml(context) {
15899
+ const chartSpace = new ChartSpace({
15900
+ categories: this.chartOptions.data.categories,
15901
+ series: this.chartOptions.data.series,
15902
+ showLegend: this.chartOptions.showLegend,
15903
+ style: this.chartOptions.style,
15904
+ title: this.chartOptions.title,
15905
+ type: this.chartOptions.type
15906
+ });
15907
+ context.file.Charts.addChart(this.chartKey, {
15908
+ chartSpace,
15909
+ key: this.chartKey
15910
+ });
15911
+ return super.prepForXml(context);
15912
+ }
15913
+ hashChartData(options) {
15914
+ const data = `${options.type}:${JSON.stringify(options.data)}`;
15915
+ let hash = 0;
15916
+ for (let i = 0; i < data.length; i++) {
15917
+ const char = data.charCodeAt(i);
15918
+ hash = (hash << 5) - hash + char | 0;
15919
+ }
15920
+ return Math.abs(hash);
15921
+ }
15922
+ };
15923
+ //#endregion
15924
+ //#region src/file/smartart/data-model/connection.ts
15925
+ /**
15926
+ * dgm:cxn — SmartArt data model connection (edge).
15927
+ *
15928
+ * @module
15929
+ */
15930
+ /**
15931
+ * CT_Cxn — a single connection in the data model.
15932
+ */
15933
+ var Connection = class extends XmlComponent {
15934
+ constructor(modelId, srcId, destId, type = "parOf", srcOrd = 0, destOrd = 0) {
15935
+ super("dgm:cxn");
15936
+ this.root.push(chartAttr({
15937
+ modelId,
15938
+ srcId,
15939
+ destId,
15940
+ type,
15941
+ srcOrd,
15942
+ destOrd
15943
+ }));
15944
+ }
15945
+ };
15946
+ //#endregion
15947
+ //#region src/file/smartart/data-model/data-model.ts
15948
+ /**
15949
+ * dgm:dataModel — SmartArt data model root element.
15950
+ *
15951
+ * @module
15952
+ */
15953
+ /**
15954
+ * CT_DataModel — the complete data model for a SmartArt diagram.
15955
+ */
15956
+ var DataModel = class extends XmlComponent {
15957
+ constructor(points, connections) {
15958
+ super("dgm:dataModel");
15959
+ this.root.push(chartAttr({
15960
+ "xmlns:a": "http://schemas.openxmlformats.org/drawingml/2006/main",
15961
+ "xmlns:dgm": "http://schemas.openxmlformats.org/drawingml/2006/diagram"
15962
+ }));
15963
+ const ptLst = new class extends XmlComponent {
15964
+ constructor() {
15965
+ super("dgm:ptLst");
15966
+ }
15967
+ }();
15968
+ for (const pt of points) ptLst["root"].push(pt);
15969
+ this.root.push(ptLst);
15970
+ const cxnLst = new class extends XmlComponent {
15971
+ constructor() {
15972
+ super("dgm:cxnLst");
15973
+ }
15974
+ }();
15975
+ for (const cxn of connections) cxnLst["root"].push(cxn);
15976
+ this.root.push(cxnLst);
15977
+ this.root.push(new EmptyElement$2("dgm:bg"));
15978
+ this.root.push(new EmptyElement$2("dgm:whole"));
15979
+ }
15980
+ };
15981
+ /**
15982
+ * Helper for empty self-closing XML elements.
15983
+ */
15984
+ var EmptyElement$2 = class extends XmlComponent {
15985
+ constructor(tag) {
15986
+ super(tag);
15987
+ }
15988
+ };
15989
+ //#endregion
15990
+ //#region src/file/smartart/data-model/point.ts
15991
+ /**
15992
+ * dgm:pt — SmartArt data model point (node).
15993
+ *
15994
+ * @module
15995
+ */
15996
+ /**
15997
+ * CT_Pt — a single point in the data model.
15998
+ */
15999
+ var Point = class extends XmlComponent {
16000
+ constructor(modelId, text, type = "node") {
16001
+ super("dgm:pt");
16002
+ this.root.push(chartAttr({
16003
+ modelId,
16004
+ type
16005
+ }));
16006
+ this.root.push(new PointText(text));
16007
+ }
16008
+ };
16009
+ /**
16010
+ * dgm:t — text body within a point.
16011
+ *
16012
+ * Per XSD, dgm:t has type CT_TextBody, so bodyPr/lstStyle/p
16013
+ * are direct children (no a:txBody wrapper).
16014
+ */
16015
+ var PointText = class extends XmlComponent {
16016
+ constructor(text) {
16017
+ super("dgm:t");
16018
+ this.root.push(new class extends XmlComponent {
16019
+ constructor() {
16020
+ super("a:bodyPr");
16021
+ }
16022
+ }());
16023
+ this.root.push(new class extends XmlComponent {
16024
+ constructor() {
16025
+ super("a:lstStyle");
16026
+ }
16027
+ }());
16028
+ const p = new class extends XmlComponent {
16029
+ constructor() {
16030
+ super("a:p");
16031
+ }
16032
+ }();
16033
+ if (text) {
16034
+ const r = new class extends XmlComponent {
16035
+ constructor() {
16036
+ super("a:r");
16037
+ }
16038
+ }();
16039
+ const t = new class extends XmlComponent {
16040
+ constructor() {
16041
+ super("a:t");
16042
+ }
16043
+ }();
16044
+ t["root"].push(text);
16045
+ r["root"].push(t);
16046
+ p["root"].push(r);
16047
+ }
16048
+ this.root.push(p);
16049
+ }
16050
+ };
16051
+ //#endregion
16052
+ //#region src/file/smartart/tree-to-model.ts
16053
+ /**
16054
+ * Converts a tree-shaped API into a flat data model (points + connections).
16055
+ *
16056
+ * @module
16057
+ */
16058
+ /**
16059
+ * Layout/style/color uniqueId URIs for dgm:prSet on the doc root.
16060
+ */
16061
+ const DEFAULT_LAYOUT_ID = "urn:microsoft.com/office/officeart/2005/8/layout/default";
16062
+ const DEFAULT_STYLE_ID = "urn:microsoft.com/office/officeart/2005/8/quickstyle/simple1";
16063
+ const DEFAULT_COLOR_ID = "urn:microsoft.com/office/officeart/2005/8/colors/accent1_2";
16064
+ /**
16065
+ * Creates the doc root point (type="doc") with layout/style/color prSet.
16066
+ *
16067
+ * Per XSD CT_Pt sequence: prSet, spPr, t, extLst
16068
+ * CT_ElemPropSet is attributes-only (no child elements).
16069
+ */
16070
+ function createDocPoint() {
16071
+ const pt = new class extends XmlComponent {
16072
+ constructor() {
16073
+ super("dgm:pt");
16074
+ }
16075
+ }();
16076
+ pt["root"].push(chartAttr({
16077
+ modelId: 0,
16078
+ type: "doc"
16079
+ }));
16080
+ const prSet = new class extends XmlComponent {
16081
+ constructor() {
16082
+ super("dgm:prSet");
16083
+ }
16084
+ }();
16085
+ prSet["root"].push(chartAttr({
16086
+ loTypeId: DEFAULT_LAYOUT_ID,
16087
+ loCatId: "list",
16088
+ qsTypeId: DEFAULT_STYLE_ID,
16089
+ qsCatId: "simple",
16090
+ csTypeId: DEFAULT_COLOR_ID,
16091
+ csCatId: "accent1",
16092
+ phldr: "0"
16093
+ }));
16094
+ pt["root"].push(prSet);
16095
+ pt["root"].push(new EmptyElement$1("dgm:spPr"));
16096
+ pt["root"].push(createEmptyTextBody());
16097
+ return pt;
16098
+ }
16099
+ /**
16100
+ * Creates a minimal dgm:t with empty text body.
16101
+ * Per XSD, dgm:t is CT_TextBody — bodyPr/lstStyle/p are direct children.
16102
+ */
16103
+ function createEmptyTextBody() {
16104
+ const t = new class extends XmlComponent {
16105
+ constructor() {
16106
+ super("dgm:t");
16107
+ }
16108
+ }();
16109
+ t["root"].push(new EmptyElement$1("a:bodyPr"));
16110
+ t["root"].push(new EmptyElement$1("a:lstStyle"));
16111
+ t["root"].push(new EmptyElement$1("a:p"));
16112
+ return t;
16113
+ }
16114
+ /**
16115
+ * Helper for empty self-closing XML elements.
16116
+ */
16117
+ var EmptyElement$1 = class extends XmlComponent {
16118
+ constructor(tag) {
16119
+ super(tag);
16120
+ }
16121
+ };
16122
+ /**
16123
+ * Converts a tree of nodes into flat points and connections.
16124
+ *
16125
+ * The first point is a "doc" root (type="doc") with layout/style/color prSet.
16126
+ * Subsequent points are regular "node" types connected via parOf.
16127
+ */
16128
+ const treeToModel = (nodes) => {
16129
+ const points = [];
16130
+ const connections = [];
16131
+ let nextModelId = 1;
16132
+ let nextCxnId = 100;
16133
+ points.push(createDocPoint());
16134
+ for (let i = 0; i < nodes.length; i++) {
16135
+ const walk = (node, parentId, srcOrd) => {
16136
+ const modelId = nextModelId++;
16137
+ points.push(new Point(modelId, node.text));
16138
+ connections.push(new Connection(nextCxnId++, parentId, modelId, "parOf", srcOrd));
16139
+ if (node.children) for (let j = 0; j < node.children.length; j++) walk(node.children[j], modelId, j);
16140
+ };
16141
+ walk(nodes[i], 0, i);
16142
+ }
16143
+ return {
16144
+ connections,
16145
+ points
16146
+ };
16147
+ };
16148
+ /**
16149
+ * Creates a DataModel from tree nodes.
16150
+ */
16151
+ const createDataModel = (nodes) => {
16152
+ const { connections, points } = treeToModel(nodes);
16153
+ return new DataModel(points, connections);
16154
+ };
16155
+ //#endregion
16156
+ //#region src/file/paragraph/run/smartart-run.ts
16157
+ /**
16158
+ * SmartArtRun module for embedding SmartArt diagrams in WordprocessingML documents.
16159
+ *
16160
+ * SmartArt data is stored in `word/diagrams/data{n}.xml`.
16161
+ * Layout, style, and colors reference Word's built-in definitions.
16162
+ *
16163
+ * @module
16164
+ */
16165
+ /**
16166
+ * Represents an embedded SmartArt diagram in a WordprocessingML document.
16167
+ *
16168
+ * @publicApi
16169
+ *
16170
+ * @example
16171
+ * ```typescript
16172
+ * new SmartArtRun({
16173
+ * data: {
16174
+ * nodes: [
16175
+ * { text: "Main", children: [
16176
+ * { text: "Sub 1" },
16177
+ * { text: "Sub 2" },
16178
+ * ]},
16179
+ * ],
16180
+ * },
16181
+ * transformation: { width: 500, height: 300 },
16182
+ * });
16183
+ * ```
16184
+ */
16185
+ var SmartArtRun = class extends Run {
16186
+ constructor(options) {
16187
+ super({});
16188
+ _defineProperty(this, "smartArtOptions", void 0);
16189
+ _defineProperty(this, "smartArtKey", void 0);
16190
+ this.smartArtOptions = options;
16191
+ this.smartArtKey = `smartart_${this.hashSmartArtData(options)}`;
16192
+ const drawing = new Drawing({
16193
+ smartArtKey: this.smartArtKey,
16194
+ transformation: createTransformation(options.transformation),
16195
+ type: "smartart"
16196
+ }, {
16197
+ docProperties: options.altText,
16198
+ floating: options.floating
16199
+ });
16200
+ this.root.push(drawing);
16201
+ }
16202
+ prepForXml(context) {
16203
+ const smartArtData = {
16204
+ dataModel: createDataModel(this.smartArtOptions.data.nodes),
16205
+ key: this.smartArtKey
16206
+ };
16207
+ context.file.SmartArts.addSmartArt(this.smartArtKey, smartArtData);
16208
+ return super.prepForXml(context);
16209
+ }
16210
+ hashSmartArtData(options) {
16211
+ const data = JSON.stringify(options.data);
16212
+ let hash = 0;
16213
+ for (let i = 0; i < data.length; i++) {
16214
+ const char = data.charCodeAt(i);
16215
+ hash = (hash << 5) - hash + char | 0;
16216
+ }
16217
+ return Math.abs(hash);
16218
+ }
16219
+ };
16220
+ //#endregion
15230
16221
  //#region src/file/paragraph/run/wps-shape-run.ts
15231
16222
  /**
15232
16223
  * @publicApi
@@ -23303,6 +24294,26 @@
23303
24294
  }
23304
24295
  };
23305
24296
  //#endregion
24297
+ //#region src/file/chart/chart-collection.ts
24298
+ /**
24299
+ * Manages chart parts in a document.
24300
+ *
24301
+ * Similar to Media, this collection stores chart XML components
24302
+ * that will be serialized into separate XML parts in the DOCX package.
24303
+ */
24304
+ var ChartCollection = class {
24305
+ constructor() {
24306
+ _defineProperty(this, "map", void 0);
24307
+ this.map = /* @__PURE__ */ new Map();
24308
+ }
24309
+ addChart(key, chartData) {
24310
+ this.map.set(key, chartData);
24311
+ }
24312
+ get Array() {
24313
+ return [...this.map.values()];
24314
+ }
24315
+ };
24316
+ //#endregion
23306
24317
  //#region src/file/content-types/content-types-attributes.ts
23307
24318
  /**
23308
24319
  * Attributes for the Types (Content Types) element.
@@ -23464,6 +24475,46 @@
23464
24475
  addHeader(index) {
23465
24476
  this.root.push(createOverride("application/vnd.openxmlformats-officedocument.wordprocessingml.header+xml", `/word/header${index}.xml`));
23466
24477
  }
24478
+ /**
24479
+ * Registers a chart part in the content types.
24480
+ *
24481
+ * @param index - Chart index number (e.g., 1 for charts/chart1.xml)
24482
+ */
24483
+ addChart(index) {
24484
+ this.root.push(createOverride("application/vnd.openxmlformats-officedocument.drawingml.chart+xml", `/word/charts/chart${index}.xml`));
24485
+ }
24486
+ /**
24487
+ * Registers a diagram data part in the content types.
24488
+ *
24489
+ * @param index - Diagram data index number
24490
+ */
24491
+ addDiagramData(index) {
24492
+ this.root.push(createOverride("application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml", `/word/diagrams/data${index}.xml`));
24493
+ }
24494
+ /**
24495
+ * Registers a diagram layout part in the content types.
24496
+ *
24497
+ * @param index - Diagram layout index number
24498
+ */
24499
+ addDiagramLayout(index) {
24500
+ this.root.push(createOverride("application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml", `/word/diagrams/layout${index}.xml`));
24501
+ }
24502
+ /**
24503
+ * Registers a diagram style part in the content types.
24504
+ *
24505
+ * @param index - Diagram style index number
24506
+ */
24507
+ addDiagramStyle(index) {
24508
+ this.root.push(createOverride("application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml", `/word/diagrams/quickStyle${index}.xml`));
24509
+ }
24510
+ /**
24511
+ * Registers a diagram colors part in the content types.
24512
+ *
24513
+ * @param index - Diagram colors index number
24514
+ */
24515
+ addDiagramColors(index) {
24516
+ this.root.push(createOverride("application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml", `/word/diagrams/colors${index}.xml`));
24517
+ }
23467
24518
  };
23468
24519
  //#endregion
23469
24520
  //#region src/file/document/document-attributes.ts
@@ -27352,6 +28403,23 @@
27352
28403
  }
27353
28404
  };
27354
28405
  //#endregion
28406
+ //#region src/file/smartart/smartart-collection.ts
28407
+ /**
28408
+ * Manages SmartArt parts in a document.
28409
+ */
28410
+ var SmartArtCollection = class {
28411
+ constructor() {
28412
+ _defineProperty(this, "map", void 0);
28413
+ this.map = /* @__PURE__ */ new Map();
28414
+ }
28415
+ addSmartArt(key, data) {
28416
+ this.map.set(key, data);
28417
+ }
28418
+ get Array() {
28419
+ return [...this.map.values()];
28420
+ }
28421
+ };
28422
+ //#endregion
27355
28423
  //#region src/file/styles/style/components.ts
27356
28424
  /**
27357
28425
  * Style components module for WordprocessingML documents.
@@ -28405,6 +29473,8 @@
28405
29473
  _defineProperty(this, "coreProperties", void 0);
28406
29474
  _defineProperty(this, "numbering", void 0);
28407
29475
  _defineProperty(this, "media", void 0);
29476
+ _defineProperty(this, "charts", void 0);
29477
+ _defineProperty(this, "smartArts", void 0);
28408
29478
  _defineProperty(this, "fileRelationships", void 0);
28409
29479
  _defineProperty(this, "footnotesWrapper", void 0);
28410
29480
  _defineProperty(this, "endnotesWrapper", void 0);
@@ -28448,6 +29518,8 @@
28448
29518
  updateFields: (_options$features2 = options.features) === null || _options$features2 === void 0 ? void 0 : _options$features2.updateFields
28449
29519
  });
28450
29520
  this.media = new Media();
29521
+ this.charts = new ChartCollection();
29522
+ this.smartArts = new SmartArtCollection();
28451
29523
  if (options.externalStyles !== void 0) {
28452
29524
  var _options$styles;
28453
29525
  const defaultStyles = new DefaultStylesFactory().newInstance((_options$styles = options.styles) === null || _options$styles === void 0 ? void 0 : _options$styles.default);
@@ -28539,6 +29611,12 @@
28539
29611
  get Media() {
28540
29612
  return this.media;
28541
29613
  }
29614
+ get Charts() {
29615
+ return this.charts;
29616
+ }
29617
+ get SmartArts() {
29618
+ return this.smartArts;
29619
+ }
28542
29620
  get FileRelationships() {
28543
29621
  return this.fileRelationships;
28544
29622
  }
@@ -29856,6 +30934,27 @@
29856
30934
  }
29857
30935
  };
29858
30936
  //#endregion
30937
+ //#region src/file/smartart/built-in-layouts.ts
30938
+ /**
30939
+ * Built-in SmartArt layout, style, and color URIs.
30940
+ *
30941
+ * These reference Word's built-in definitions — we only need to point to them.
30942
+ *
30943
+ * @module
30944
+ */
30945
+ /** Built-in SmartArt layout URIs */
30946
+ const LAYOUTS = {
30947
+ process: "http://schemas.openxmlformats.org/drawingml/2006/diagram/process1",
30948
+ hierarchy: "http://schemas.openxmlformats.org/drawingml/2006/diagram/hierarchy1",
30949
+ cycle: "http://schemas.openxmlformats.org/drawingml/2006/diagram/cycle1",
30950
+ pyramid: "http://schemas.openxmlformats.org/drawingml/2006/diagram/pyramid1",
30951
+ list: "http://schemas.openxmlformats.org/drawingml/2006/diagram/list1"
30952
+ };
30953
+ /** Default style URI (accent 1) */
30954
+ const DEFAULT_STYLE_URI = "http://schemas.openxmlformats.org/drawingml/2006/diagramstyle/2";
30955
+ /** Default color transform URI (colorful accent 1) */
30956
+ const DEFAULT_COLOR_URI = "http://schemas.openxmlformats.org/drawingml/2006/diagramcolor/3";
30957
+ //#endregion
29859
30958
  //#region src/util/output-type.ts
29860
30959
  init__polyfill_node_stream();
29861
30960
  /**
@@ -30162,6 +31261,31 @@
30162
31261
  }
30163
31262
  };
30164
31263
  //#endregion
31264
+ //#region src/export/packer/chart-replacer.ts
31265
+ /**
31266
+ * Replaces chart placeholder tokens with relationship IDs in XML content.
31267
+ *
31268
+ * Charts use placeholders like `{chart:chart_123}` in the document XML.
31269
+ * This class replaces them with the actual relationship IDs.
31270
+ */
31271
+ var ChartReplacer = class {
31272
+ /**
31273
+ * Replaces chart placeholder tokens with relationship IDs.
31274
+ *
31275
+ * @param xmlData - The XML string containing chart placeholders
31276
+ * @param charts - The chart collection
31277
+ * @param offset - Starting offset for relationship IDs
31278
+ * @returns XML string with placeholders replaced by relationship IDs
31279
+ */
31280
+ replace(xmlData, charts, offset) {
31281
+ let currentXmlData = xmlData;
31282
+ charts.Array.forEach((chartData, i) => {
31283
+ currentXmlData = currentXmlData.replace(new RegExp(`\\{chart:${chartData.key}\\}`, "g"), (offset + i).toString());
31284
+ });
31285
+ return currentXmlData;
31286
+ }
31287
+ };
31288
+ //#endregion
30165
31289
  //#region src/export/packer/image-replacer.ts
30166
31290
  /**
30167
31291
  * Replaces image placeholders with relationship IDs in XML content.
@@ -30237,6 +31361,68 @@
30237
31361
  }
30238
31362
  };
30239
31363
  //#endregion
31364
+ //#region src/export/packer/smartart-replacer.ts
31365
+ /**
31366
+ * Replaces SmartArt placeholder tokens with relationship IDs in XML content.
31367
+ *
31368
+ * SmartArt uses multiple placeholders:
31369
+ * - `{smartart:N}` — data model relationship (internal)
31370
+ * - `{smartart-lo:N}` — layout relationship (internal)
31371
+ * - `{smartart-qs:N}` — quick style relationship (internal)
31372
+ * - `{smartart-cs:N}` — color style relationship (internal)
31373
+ */
31374
+ var SmartArtReplacer = class {
31375
+ /**
31376
+ * Replaces SmartArt placeholder tokens with relationship IDs.
31377
+ */
31378
+ replace(xmlData, smartArts, dataOffset) {
31379
+ let currentXmlData = xmlData;
31380
+ smartArts.Array.forEach((smartArtData, i) => {
31381
+ const key = smartArtData.key;
31382
+ currentXmlData = currentXmlData.replace(new RegExp(`\\{smartart:${key}\\}`, "g"), (dataOffset + i).toString());
31383
+ const loOffset = dataOffset + smartArts.Array.length;
31384
+ const qsOffset = loOffset + smartArts.Array.length;
31385
+ const csOffset = qsOffset + smartArts.Array.length;
31386
+ currentXmlData = currentXmlData.replace(new RegExp(`\\{smartart-lo:${key}\\}`, "g"), (loOffset + i).toString());
31387
+ currentXmlData = currentXmlData.replace(new RegExp(`\\{smartart-qs:${key}\\}`, "g"), (qsOffset + i).toString());
31388
+ currentXmlData = currentXmlData.replace(new RegExp(`\\{smartart-cs:${key}\\}`, "g"), (csOffset + i).toString());
31389
+ });
31390
+ return currentXmlData;
31391
+ }
31392
+ /**
31393
+ * Adds SmartArt relationships to the document relationships.
31394
+ *
31395
+ * All relationships are internal (pointing to package-local files).
31396
+ */
31397
+ addRelationships(smartArts, addRelationship, baseOffset, chartCount) {
31398
+ const dataOffset = baseOffset + chartCount;
31399
+ const smartArtCount = smartArts.Array.length;
31400
+ const loOffset = dataOffset + smartArtCount;
31401
+ const qsOffset = loOffset + smartArtCount;
31402
+ const csOffset = qsOffset + smartArtCount;
31403
+ smartArts.Array.forEach((_smartArtData, i) => {
31404
+ addRelationship(dataOffset + i, "http://schemas.openxmlformats.org/officeDocument/2006/relationships/diagramData", `diagrams/data${i + 1}.xml`);
31405
+ addRelationship(loOffset + i, "http://schemas.microsoft.com/office/2007/relationships/diagramLayout", `diagrams/layout${i + 1}.xml`);
31406
+ addRelationship(qsOffset + i, "http://schemas.microsoft.com/office/2007/relationships/diagramStyle", `diagrams/quickStyle${i + 1}.xml`);
31407
+ addRelationship(csOffset + i, "http://schemas.microsoft.com/office/2007/relationships/diagramColors", `diagrams/colors${i + 1}.xml`);
31408
+ });
31409
+ }
31410
+ };
31411
+ //#endregion
31412
+ //#region src/file/smartart/built-in-definitions.ts
31413
+ /**
31414
+ * Built-in SmartArt definitions — layout, quick style, and color transforms.
31415
+ * These are Word's built-in definitions extracted from a reference document.
31416
+ *
31417
+ * @module
31418
+ */
31419
+ /** Default list layout definition (dgm:layoutDef) */
31420
+ const DEFAULT_LAYOUT_XML = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\r\n<dgm:layoutDef xmlns:dgm=\"http://schemas.openxmlformats.org/drawingml/2006/diagram\" xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" uniqueId=\"urn:microsoft.com/office/officeart/2005/8/layout/default\"><dgm:title val=\"\"/><dgm:desc val=\"\"/><dgm:catLst><dgm:cat type=\"list\" pri=\"400\"/></dgm:catLst><dgm:sampData><dgm:dataModel><dgm:ptLst><dgm:pt modelId=\"0\" type=\"doc\"/><dgm:pt modelId=\"1\"><dgm:prSet phldr=\"1\"/></dgm:pt><dgm:pt modelId=\"2\"><dgm:prSet phldr=\"1\"/></dgm:pt><dgm:pt modelId=\"3\"><dgm:prSet phldr=\"1\"/></dgm:pt><dgm:pt modelId=\"4\"><dgm:prSet phldr=\"1\"/></dgm:pt><dgm:pt modelId=\"5\"><dgm:prSet phldr=\"1\"/></dgm:pt></dgm:ptLst><dgm:cxnLst><dgm:cxn modelId=\"6\" srcId=\"0\" destId=\"1\" srcOrd=\"0\" destOrd=\"0\"/><dgm:cxn modelId=\"7\" srcId=\"0\" destId=\"2\" srcOrd=\"1\" destOrd=\"0\"/><dgm:cxn modelId=\"8\" srcId=\"0\" destId=\"3\" srcOrd=\"2\" destOrd=\"0\"/><dgm:cxn modelId=\"9\" srcId=\"0\" destId=\"4\" srcOrd=\"3\" destOrd=\"0\"/><dgm:cxn modelId=\"10\" srcId=\"0\" destId=\"5\" srcOrd=\"4\" destOrd=\"0\"/></dgm:cxnLst><dgm:bg/><dgm:whole/></dgm:dataModel></dgm:sampData><dgm:styleData><dgm:dataModel><dgm:ptLst><dgm:pt modelId=\"0\" type=\"doc\"/><dgm:pt modelId=\"1\"/><dgm:pt modelId=\"2\"/></dgm:ptLst><dgm:cxnLst><dgm:cxn modelId=\"3\" srcId=\"0\" destId=\"1\" srcOrd=\"0\" destOrd=\"0\"/><dgm:cxn modelId=\"4\" srcId=\"0\" destId=\"2\" srcOrd=\"1\" destOrd=\"0\"/></dgm:cxnLst><dgm:bg/><dgm:whole/></dgm:dataModel></dgm:styleData><dgm:clrData><dgm:dataModel><dgm:ptLst><dgm:pt modelId=\"0\" type=\"doc\"/><dgm:pt modelId=\"1\"/><dgm:pt modelId=\"2\"/><dgm:pt modelId=\"3\"/><dgm:pt modelId=\"4\"/><dgm:pt modelId=\"5\"/><dgm:pt modelId=\"6\"/></dgm:ptLst><dgm:cxnLst><dgm:cxn modelId=\"7\" srcId=\"0\" destId=\"1\" srcOrd=\"0\" destOrd=\"0\"/><dgm:cxn modelId=\"8\" srcId=\"0\" destId=\"2\" srcOrd=\"1\" destOrd=\"0\"/><dgm:cxn modelId=\"9\" srcId=\"0\" destId=\"3\" srcOrd=\"2\" destOrd=\"0\"/><dgm:cxn modelId=\"10\" srcId=\"0\" destId=\"4\" srcOrd=\"3\" destOrd=\"0\"/><dgm:cxn modelId=\"11\" srcId=\"0\" destId=\"5\" srcOrd=\"4\" destOrd=\"0\"/><dgm:cxn modelId=\"12\" srcId=\"0\" destId=\"6\" srcOrd=\"5\" destOrd=\"0\"/></dgm:cxnLst><dgm:bg/><dgm:whole/></dgm:dataModel></dgm:clrData><dgm:layoutNode name=\"diagram\"><dgm:varLst><dgm:dir/><dgm:resizeHandles val=\"exact\"/></dgm:varLst><dgm:choose name=\"Name0\"><dgm:if name=\"Name1\" func=\"var\" arg=\"dir\" op=\"equ\" val=\"norm\"><dgm:alg type=\"snake\"><dgm:param type=\"grDir\" val=\"tL\"/><dgm:param type=\"flowDir\" val=\"row\"/><dgm:param type=\"contDir\" val=\"sameDir\"/><dgm:param type=\"off\" val=\"ctr\"/></dgm:alg></dgm:if><dgm:else name=\"Name2\"><dgm:alg type=\"snake\"><dgm:param type=\"grDir\" val=\"tR\"/><dgm:param type=\"flowDir\" val=\"row\"/><dgm:param type=\"contDir\" val=\"sameDir\"/><dgm:param type=\"off\" val=\"ctr\"/></dgm:alg></dgm:else></dgm:choose><dgm:shape xmlns:r=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships\" r:blip=\"\"><dgm:adjLst/></dgm:shape><dgm:presOf/><dgm:constrLst><dgm:constr type=\"w\" for=\"ch\" forName=\"node\" refType=\"w\"/><dgm:constr type=\"h\" for=\"ch\" forName=\"node\" refType=\"w\" refFor=\"ch\" refForName=\"node\" fact=\"0.6\"/><dgm:constr type=\"w\" for=\"ch\" forName=\"sibTrans\" refType=\"w\" refFor=\"ch\" refForName=\"node\" fact=\"0.1\"/><dgm:constr type=\"sp\" refType=\"w\" refFor=\"ch\" refForName=\"sibTrans\"/><dgm:constr type=\"primFontSz\" for=\"ch\" forName=\"node\" op=\"equ\" val=\"65\"/></dgm:constrLst><dgm:ruleLst/><dgm:forEach name=\"Name3\" axis=\"ch\" ptType=\"node\"><dgm:layoutNode name=\"node\"><dgm:varLst><dgm:bulletEnabled val=\"1\"/></dgm:varLst><dgm:alg type=\"tx\"/><dgm:shape type=\"rect\" xmlns:r=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships\" r:blip=\"\"><dgm:adjLst/></dgm:shape><dgm:presOf axis=\"desOrSelf\" ptType=\"node\"/><dgm:constrLst><dgm:constr type=\"lMarg\" refType=\"primFontSz\" fact=\"0.3\"/><dgm:constr type=\"rMarg\" refType=\"primFontSz\" fact=\"0.3\"/><dgm:constr type=\"tMarg\" refType=\"primFontSz\" fact=\"0.3\"/><dgm:constr type=\"bMarg\" refType=\"primFontSz\" fact=\"0.3\"/></dgm:constrLst><dgm:ruleLst><dgm:rule type=\"primFontSz\" val=\"5\" fact=\"NaN\" max=\"NaN\"/></dgm:ruleLst></dgm:layoutNode><dgm:forEach name=\"Name4\" axis=\"followSib\" ptType=\"sibTrans\" cnt=\"1\"><dgm:layoutNode name=\"sibTrans\"><dgm:alg type=\"sp\"/><dgm:shape xmlns:r=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships\" r:blip=\"\"><dgm:adjLst/></dgm:shape><dgm:presOf/><dgm:constrLst/><dgm:ruleLst/></dgm:layoutNode></dgm:forEach></dgm:forEach></dgm:layoutNode></dgm:layoutDef>";
31421
+ /** Simple quick style definition (dgm:styleDef) */
31422
+ const DEFAULT_STYLE_XML = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\r\n<dgm:styleDef xmlns:dgm=\"http://schemas.openxmlformats.org/drawingml/2006/diagram\" xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" uniqueId=\"urn:microsoft.com/office/officeart/2005/8/quickstyle/simple1\"><dgm:title val=\"\"/><dgm:desc val=\"\"/><dgm:catLst><dgm:cat type=\"simple\" pri=\"10100\"/></dgm:catLst><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:styleLbl name=\"node0\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"lnNode1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"vennNode1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"tx1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"alignNode1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"node1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"node2\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"node3\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"node4\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"fgImgPlace1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"alignImgPlace1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"bgImgPlace1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"sibTrans2D1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"fgSibTrans2D1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"bgSibTrans2D1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"sibTrans1D1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"callout\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"asst0\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"asst1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"asst2\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"asst3\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"asst4\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"parChTrans2D1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"parChTrans2D2\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"parChTrans2D3\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"parChTrans2D4\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"><a:schemeClr val=\"lt1\"/></a:fontRef></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"parChTrans1D1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"parChTrans1D2\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"parChTrans1D3\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"parChTrans1D4\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"fgAcc1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"conFgAcc1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"alignAcc1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"trAlignAcc1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"bgAcc1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"solidFgAcc1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"solidAlignAcc1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"solidBgAcc1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"fgAccFollowNode1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"alignAccFollowNode1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"bgAccFollowNode1\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"fgAcc0\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"fgAcc2\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"fgAcc3\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"fgAcc4\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"bgShp\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"dkBgShp\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"trBgShp\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"fgShp\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"2\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"1\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl><dgm:styleLbl name=\"revTx\"><dgm:scene3d><a:camera prst=\"orthographicFront\"/><a:lightRig rig=\"threePt\" dir=\"t\"/></dgm:scene3d><dgm:sp3d/><dgm:txPr/><dgm:style><a:lnRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:lnRef><a:fillRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:fillRef><a:effectRef idx=\"0\"><a:scrgbClr r=\"0\" g=\"0\" b=\"0\"/></a:effectRef><a:fontRef idx=\"minor\"/></dgm:style></dgm:styleLbl></dgm:styleDef>";
31423
+ /** Accent 1 color transform definition (dgm:colorsDef) */
31424
+ const DEFAULT_COLORS_XML = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\r\n<dgm:colorsDef xmlns:dgm=\"http://schemas.openxmlformats.org/drawingml/2006/diagram\" xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" uniqueId=\"urn:microsoft.com/office/officeart/2005/8/colors/accent1_2\"><dgm:title val=\"\"/><dgm:desc val=\"\"/><dgm:catLst><dgm:cat type=\"accent1\" pri=\"11200\"/></dgm:catLst><dgm:styleLbl name=\"node0\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst/><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"alignNode1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst/><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"node1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst/><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"lnNode1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst/><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"vennNode1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:alpha val=\"50000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst/><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"node2\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst/><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"node3\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst/><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"node4\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst/><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"fgImgPlace1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:tint val=\"50000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"alignImgPlace1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:tint val=\"50000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"bgImgPlace1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:tint val=\"50000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"sibTrans2D1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:tint val=\"60000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:tint val=\"60000\"/></a:schemeClr></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst/><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"fgSibTrans2D1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:tint val=\"60000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:tint val=\"60000\"/></a:schemeClr></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst/><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"bgSibTrans2D1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:tint val=\"60000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:tint val=\"60000\"/></a:schemeClr></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst/><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"sibTrans1D1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"tx1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"callout\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:tint val=\"50000\"/></a:schemeClr></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"tx1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"asst0\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst/><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"asst1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst/><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"asst2\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst/><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"asst3\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst/><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"asst4\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst/><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"parChTrans2D1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:tint val=\"60000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:tint val=\"60000\"/></a:schemeClr></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"parChTrans2D2\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"parChTrans2D3\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"parChTrans2D4\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"parChTrans1D1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:shade val=\"60000\"/></a:schemeClr></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"tx1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"parChTrans1D2\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:shade val=\"60000\"/></a:schemeClr></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"tx1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"parChTrans1D3\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:shade val=\"80000\"/></a:schemeClr></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"tx1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"parChTrans1D4\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:shade val=\"80000\"/></a:schemeClr></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"tx1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"fgAcc1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"><a:alpha val=\"90000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"dk1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"conFgAcc1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"><a:alpha val=\"90000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"dk1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"alignAcc1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"><a:alpha val=\"90000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"dk1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"trAlignAcc1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"><a:alpha val=\"40000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"dk1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"bgAcc1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"><a:alpha val=\"90000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"dk1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"solidFgAcc1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"dk1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"solidAlignAcc1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"dk1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"solidBgAcc1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"dk1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"fgAccFollowNode1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:alpha val=\"90000\"/><a:tint val=\"40000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:alpha val=\"90000\"/><a:tint val=\"40000\"/></a:schemeClr></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"dk1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"alignAccFollowNode1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:alpha val=\"90000\"/><a:tint val=\"40000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:alpha val=\"90000\"/><a:tint val=\"40000\"/></a:schemeClr></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"dk1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"bgAccFollowNode1\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:alpha val=\"90000\"/><a:tint val=\"40000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:alpha val=\"90000\"/><a:tint val=\"40000\"/></a:schemeClr></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"dk1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"fgAcc0\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"><a:alpha val=\"90000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"dk1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"fgAcc2\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"><a:alpha val=\"90000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"dk1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"fgAcc3\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"><a:alpha val=\"90000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"dk1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"fgAcc4\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"><a:alpha val=\"90000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"dk1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"bgShp\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:tint val=\"40000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"dk1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"dkBgShp\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:shade val=\"80000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"trBgShp\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:tint val=\"50000\"/><a:alpha val=\"40000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"fgShp\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"accent1\"><a:tint val=\"60000\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"/></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"dk1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl><dgm:styleLbl name=\"revTx\"><dgm:fillClrLst meth=\"repeat\"><a:schemeClr val=\"lt1\"><a:alpha val=\"0\"/></a:schemeClr></dgm:fillClrLst><dgm:linClrLst meth=\"repeat\"><a:schemeClr val=\"dk1\"><a:alpha val=\"0\"/></a:schemeClr></dgm:linClrLst><dgm:effectClrLst/><dgm:txLinClrLst/><dgm:txFillClrLst meth=\"repeat\"><a:schemeClr val=\"tx1\"/></dgm:txFillClrLst><dgm:txEffectClrLst/></dgm:styleLbl></dgm:colorsDef>";
31425
+ //#endregion
30240
31426
  //#region src/export/packer/next-compiler.ts
30241
31427
  /**
30242
31428
  * Compiles File objects into OOXML-compliant ZIP file data.
@@ -30261,9 +31447,13 @@
30261
31447
  _defineProperty(this, "formatter", void 0);
30262
31448
  _defineProperty(this, "imageReplacer", void 0);
30263
31449
  _defineProperty(this, "numberingReplacer", void 0);
31450
+ _defineProperty(this, "chartReplacer", void 0);
31451
+ _defineProperty(this, "smartArtReplacer", void 0);
30264
31452
  this.formatter = new Formatter();
30265
31453
  this.imageReplacer = new ImageReplacer();
30266
31454
  this.numberingReplacer = new NumberingReplacer();
31455
+ this.chartReplacer = new ChartReplacer();
31456
+ this.smartArtReplacer = new SmartArtReplacer();
30267
31457
  }
30268
31458
  /**
30269
31459
  * Compiles a File object into a flat file map suitable for fflate zipSync.
@@ -30387,14 +31577,25 @@
30387
31577
  path: "word/_rels/comments.xml.rels"
30388
31578
  },
30389
31579
  ContentTypes: {
30390
- data: (0, import_xml.default)(this.formatter.format(file.ContentTypes, {
30391
- file,
30392
- stack: [],
30393
- viewWrapper: file.Document
30394
- }), {
30395
- declaration: { encoding: "UTF-8" },
30396
- indent: prettify
30397
- }),
31580
+ data: (() => {
31581
+ file.Charts.Array.forEach((_, i) => {
31582
+ file.ContentTypes.addChart(i + 1);
31583
+ });
31584
+ file.SmartArts.Array.forEach((_, i) => {
31585
+ file.ContentTypes.addDiagramData(i + 1);
31586
+ file.ContentTypes.addDiagramLayout(i + 1);
31587
+ file.ContentTypes.addDiagramStyle(i + 1);
31588
+ file.ContentTypes.addDiagramColors(i + 1);
31589
+ });
31590
+ return (0, import_xml.default)(this.formatter.format(file.ContentTypes, {
31591
+ file,
31592
+ stack: [],
31593
+ viewWrapper: file.Document
31594
+ }), {
31595
+ declaration: { encoding: "UTF-8" },
31596
+ indent: prettify
31597
+ });
31598
+ })(),
30398
31599
  path: "[Content_Types].xml"
30399
31600
  },
30400
31601
  CustomProperties: {
@@ -30413,7 +31614,10 @@
30413
31614
  },
30414
31615
  Document: {
30415
31616
  data: (() => {
30416
- const xmlData = this.imageReplacer.replace(documentXmlData, documentMediaDatas, documentRelationshipCount);
31617
+ let xmlData = this.imageReplacer.replace(documentXmlData, documentMediaDatas, documentRelationshipCount);
31618
+ xmlData = this.chartReplacer.replace(xmlData, file.Charts, documentRelationshipCount);
31619
+ const smartArtDataOffset = documentRelationshipCount + documentMediaDatas.length + file.Charts.Array.length;
31620
+ xmlData = this.smartArtReplacer.replace(xmlData, file.SmartArts, smartArtDataOffset);
30417
31621
  return this.numberingReplacer.replace(xmlData, file.Numbering.ConcreteNumbering);
30418
31622
  })(),
30419
31623
  path: "word/document.xml"
@@ -30600,6 +31804,13 @@
30600
31804
  documentMediaDatas.forEach((mediaData, i) => {
30601
31805
  file.Document.Relationships.addRelationship(documentRelationshipCount + i, "http://schemas.openxmlformats.org/officeDocument/2006/relationships/image", `media/${mediaData.fileName}`);
30602
31806
  });
31807
+ const chartOffset = documentRelationshipCount + documentMediaDatas.length;
31808
+ file.Charts.Array.forEach((_chartData, i) => {
31809
+ file.Document.Relationships.addRelationship(chartOffset + i, "http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart", `charts/chart${i + 1}.xml`);
31810
+ });
31811
+ this.smartArtReplacer.addRelationships(file.SmartArts, (id, type, target, targetMode) => {
31812
+ file.Document.Relationships.addRelationship(id, type, target, targetMode);
31813
+ }, documentRelationshipCount, documentMediaDatas.length + file.Charts.Array.length);
30603
31814
  file.Document.Relationships.addRelationship(file.Document.Relationships.RelationshipCount + 1, "http://schemas.openxmlformats.org/officeDocument/2006/relationships/fontTable", "fontTable.xml");
30604
31815
  return (0, import_xml.default)(this.formatter.format(file.Document.Relationships, {
30605
31816
  file,
@@ -30659,7 +31870,55 @@
30659
31870
  indent: prettify
30660
31871
  }),
30661
31872
  path: "word/bibliography.xml"
30662
- } } : {}
31873
+ } } : {},
31874
+ ...file.Charts.Array.length > 0 ? { Charts: file.Charts.Array.flatMap((chartData, i) => [{
31875
+ data: (0, import_xml.default)(this.formatter.format(chartData.chartSpace, {
31876
+ file,
31877
+ stack: [],
31878
+ viewWrapper: file.Document
31879
+ }), {
31880
+ declaration: {
31881
+ encoding: "UTF-8",
31882
+ standalone: "yes"
31883
+ },
31884
+ indent: prettify
31885
+ }),
31886
+ path: `word/charts/chart${i + 1}.xml`
31887
+ }, {
31888
+ data: (0, import_xml.default)({ Relationships: { _attr: { xmlns: "http://schemas.openxmlformats.org/package/2006/relationships" } } }, { declaration: {
31889
+ encoding: "UTF-8",
31890
+ standalone: "yes"
31891
+ } }),
31892
+ path: `word/charts/_rels/chart${i + 1}.xml.rels`
31893
+ }]) } : {},
31894
+ ...file.SmartArts.Array.length > 0 ? {
31895
+ DiagramData: file.SmartArts.Array.map((smartArtData, i) => ({
31896
+ data: (0, import_xml.default)(this.formatter.format(smartArtData.dataModel, {
31897
+ file,
31898
+ stack: [],
31899
+ viewWrapper: file.Document
31900
+ }), {
31901
+ declaration: {
31902
+ encoding: "UTF-8",
31903
+ standalone: "yes"
31904
+ },
31905
+ indent: prettify
31906
+ }),
31907
+ path: `word/diagrams/data${i + 1}.xml`
31908
+ })),
31909
+ DiagramLayout: file.SmartArts.Array.map((_smartArtData, i) => ({
31910
+ data: DEFAULT_LAYOUT_XML,
31911
+ path: `word/diagrams/layout${i + 1}.xml`
31912
+ })),
31913
+ DiagramStyle: file.SmartArts.Array.map((_smartArtData, i) => ({
31914
+ data: DEFAULT_STYLE_XML,
31915
+ path: `word/diagrams/quickStyle${i + 1}.xml`
31916
+ })),
31917
+ DiagramColors: file.SmartArts.Array.map((_smartArtData, i) => ({
31918
+ data: DEFAULT_COLORS_XML,
31919
+ path: `word/diagrams/colors${i + 1}.xml`
31920
+ }))
31921
+ } : {}
30663
31922
  };
30664
31923
  }
30665
31924
  };
@@ -31669,6 +32928,9 @@
31669
32928
  exports.CellMerge = CellMerge;
31670
32929
  exports.CellMergeAttributes = CellMergeAttributes;
31671
32930
  exports.CharacterSet = CharacterSet;
32931
+ exports.ChartCollection = ChartCollection;
32932
+ exports.ChartRun = ChartRun;
32933
+ exports.ChartSpace = ChartSpace;
31672
32934
  exports.CheckBox = CheckBox;
31673
32935
  exports.CheckBoxSymbolElement = CheckBoxSymbolElement;
31674
32936
  exports.CheckBoxUtil = CheckBoxUtil;
@@ -31681,7 +32943,11 @@
31681
32943
  exports.Comments = Comments;
31682
32944
  exports.ConcreteHyperlink = ConcreteHyperlink;
31683
32945
  exports.ConcreteNumbering = ConcreteNumbering;
32946
+ exports.Connection = Connection;
31684
32947
  exports.ContinuationSeparator = ContinuationSeparator;
32948
+ exports.DEFAULT_COLOR_URI = DEFAULT_COLOR_URI;
32949
+ exports.DEFAULT_STYLE_URI = DEFAULT_STYLE_URI;
32950
+ exports.DataModel = DataModel;
31685
32951
  exports.DayLong = DayLong;
31686
32952
  exports.DayShort = DayShort;
31687
32953
  exports.DeletedTableCell = DeletedTableCell;
@@ -31739,6 +33005,7 @@
31739
33005
  exports.InsertedTableRow = InsertedTableRow;
31740
33006
  exports.InsertedTextRun = InsertedTextRun;
31741
33007
  exports.InternalHyperlink = InternalHyperlink;
33008
+ exports.LAYOUTS = LAYOUTS;
31742
33009
  exports.LastRenderedPageBreak = LastRenderedPageBreak;
31743
33010
  exports.LeaderType = LeaderType;
31744
33011
  exports.Level = Level;
@@ -31812,6 +33079,7 @@
31812
33079
  exports.ParagraphPropertiesDefaults = ParagraphPropertiesDefaults;
31813
33080
  exports.ParagraphRunProperties = ParagraphRunProperties;
31814
33081
  exports.PatchType = PatchType;
33082
+ exports.Point = Point;
31815
33083
  exports.PositionalTab = PositionalTab;
31816
33084
  exports.PositionalTabAlignment = PositionalTabAlignment;
31817
33085
  exports.PositionalTabLeader = PositionalTabLeader;
@@ -31834,6 +33102,8 @@
31834
33102
  exports.ShadingType = ShadingType;
31835
33103
  exports.SimpleField = SimpleField;
31836
33104
  exports.SimpleMailMergeField = SimpleMailMergeField;
33105
+ exports.SmartArtCollection = SmartArtCollection;
33106
+ exports.SmartArtRun = SmartArtRun;
31837
33107
  exports.SoftHyphen = SoftHyphen;
31838
33108
  exports.SpaceType = SpaceType;
31839
33109
  exports.StringContainer = StringContainer;
@@ -31900,6 +33170,7 @@
31900
33170
  exports.YearShort = YearShort;
31901
33171
  exports.abstractNumUniqueNumericIdGen = abstractNumUniqueNumericIdGen;
31902
33172
  exports.bookmarkUniqueNumericIdGen = bookmarkUniqueNumericIdGen;
33173
+ exports.chartAttr = chartAttr;
31903
33174
  exports.concreteNumUniqueNumericIdGen = concreteNumUniqueNumericIdGen;
31904
33175
  exports.convertInchesToTwip = convertInchesToTwip;
31905
33176
  exports.convertMillimetersToTwip = convertMillimetersToTwip;
@@ -31909,6 +33180,7 @@
31909
33180
  exports.createBorderElement = createBorderElement;
31910
33181
  exports.createCnfStyle = createCnfStyle;
31911
33182
  exports.createColumns = createColumns;
33183
+ exports.createDataModel = createDataModel;
31912
33184
  exports.createDivId = createDivId;
31913
33185
  exports.createDocumentGrid = createDocumentGrid;
31914
33186
  exports.createDotEmphasisMark = createDotEmphasisMark;
@@ -31993,6 +33265,7 @@
31993
33265
  exports.shortHexNumber = shortHexNumber;
31994
33266
  exports.signedHpsMeasureValue = signedHpsMeasureValue;
31995
33267
  exports.signedTwipsMeasureValue = signedTwipsMeasureValue;
33268
+ exports.treeToModel = treeToModel;
31996
33269
  exports.twipsMeasureValue = twipsMeasureValue;
31997
33270
  exports.uCharHexNumber = uCharHexNumber;
31998
33271
  exports.uniqueId = uniqueId;
@@ -32000,4 +33273,5 @@
32000
33273
  exports.uniqueUuid = uniqueUuid;
32001
33274
  exports.universalMeasureValue = universalMeasureValue;
32002
33275
  exports.unsignedDecimalNumber = unsignedDecimalNumber;
33276
+ exports.wrapEl = wrapEl;
32003
33277
  });