pptx-react-viewer 2.20.3 → 2.20.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +20 -0
- package/dist/{AiChatPanel-ZSVNVRM5.js → AiChatPanel-3H5WGSM5.js} +23 -23
- package/dist/AiChatPanel-3H5WGSM5.js.br +0 -0
- package/dist/AiChatPanel-3H5WGSM5.js.gz +0 -0
- package/dist/{AiChatPanel-NRWACXJ7.mjs → AiChatPanel-AYS6SCSC.mjs} +3 -3
- package/dist/AiChatPanel-AYS6SCSC.mjs.br +0 -0
- package/dist/AiChatPanel-AYS6SCSC.mjs.gz +0 -0
- package/dist/{Model3DScene-3HGARMTA.js → Model3DScene-6OVVKUSF.js} +2 -2
- package/dist/Model3DScene-6OVVKUSF.js.br +0 -0
- package/dist/Model3DScene-6OVVKUSF.js.gz +0 -0
- package/dist/{Model3DScene-IFYFOD6F.mjs → Model3DScene-QQQEABW7.mjs} +1 -1
- package/dist/Model3DScene-QQQEABW7.mjs.br +0 -0
- package/dist/Model3DScene-QQQEABW7.mjs.gz +0 -0
- package/dist/{chunk-QJJX2E6I.js → chunk-2LOKAZHT.js} +3 -3
- package/dist/chunk-2LOKAZHT.js.br +0 -0
- package/dist/chunk-2LOKAZHT.js.gz +0 -0
- package/dist/{chunk-463BMH5Q.js → chunk-62EM4JYP.js} +383 -383
- package/dist/chunk-62EM4JYP.js.br +0 -0
- package/dist/chunk-62EM4JYP.js.gz +0 -0
- package/dist/{chunk-4Z4HEIP5.js → chunk-BQJU7ZG6.js} +459 -385
- package/dist/chunk-BQJU7ZG6.js.br +0 -0
- package/dist/chunk-BQJU7ZG6.js.gz +0 -0
- package/dist/{chunk-AD4LAXDJ.mjs → chunk-BSOTRNVG.mjs} +7 -7
- package/dist/chunk-BSOTRNVG.mjs.br +0 -0
- package/dist/chunk-BSOTRNVG.mjs.gz +0 -0
- package/dist/{chunk-RJ26DQIM.mjs → chunk-DIJWZ6ZS.mjs} +1 -1
- package/dist/chunk-DIJWZ6ZS.mjs.br +0 -0
- package/dist/chunk-DIJWZ6ZS.mjs.gz +0 -0
- package/dist/{chunk-LLZ25OVR.js → chunk-ETJBX4YT.js} +154 -148
- package/dist/chunk-ETJBX4YT.js.br +0 -0
- package/dist/chunk-ETJBX4YT.js.gz +0 -0
- package/dist/{chunk-4JENQPJ3.js → chunk-JYVQ2MTO.js} +1043 -1043
- package/dist/chunk-JYVQ2MTO.js.br +0 -0
- package/dist/chunk-JYVQ2MTO.js.gz +0 -0
- package/dist/{chunk-O5BR276S.mjs → chunk-PBFNE5X5.mjs} +8 -2
- package/dist/chunk-PBFNE5X5.mjs.br +0 -0
- package/dist/chunk-PBFNE5X5.mjs.gz +0 -0
- package/dist/{chunk-2MENHAYJ.mjs → chunk-ULBSTLY3.mjs} +459 -385
- package/dist/chunk-ULBSTLY3.mjs.br +0 -0
- package/dist/chunk-ULBSTLY3.mjs.gz +0 -0
- package/dist/{chunk-YAKDNRU7.mjs → chunk-ZVFTYICH.mjs} +2 -2
- package/dist/chunk-ZVFTYICH.mjs.br +0 -0
- package/dist/chunk-ZVFTYICH.mjs.gz +0 -0
- package/dist/index.js +45 -45
- package/dist/index.js.br +0 -0
- package/dist/index.js.gz +0 -0
- package/dist/index.mjs +5 -5
- package/dist/index.mjs.br +0 -0
- package/dist/index.mjs.gz +0 -0
- package/dist/internals.js +78 -78
- package/dist/internals.js.br +0 -0
- package/dist/internals.js.gz +0 -0
- package/dist/internals.mjs +3 -3
- package/dist/internals.mjs.br +0 -0
- package/dist/internals.mjs.gz +0 -0
- package/dist/viewer/index.js +26 -26
- package/dist/viewer/index.js.br +0 -0
- package/dist/viewer/index.js.gz +0 -0
- package/dist/viewer/index.mjs +5 -5
- package/dist/viewer/index.mjs.br +0 -0
- package/dist/viewer/index.mjs.gz +0 -0
- package/package.json +1 -1
- package/dist/AiChatPanel-NRWACXJ7.mjs.br +0 -0
- package/dist/AiChatPanel-NRWACXJ7.mjs.gz +0 -0
- package/dist/AiChatPanel-ZSVNVRM5.js.br +0 -0
- package/dist/AiChatPanel-ZSVNVRM5.js.gz +0 -0
- package/dist/Model3DScene-3HGARMTA.js.br +0 -0
- package/dist/Model3DScene-3HGARMTA.js.gz +0 -0
- package/dist/Model3DScene-IFYFOD6F.mjs.br +0 -0
- package/dist/Model3DScene-IFYFOD6F.mjs.gz +0 -0
- package/dist/chunk-2MENHAYJ.mjs.br +0 -0
- package/dist/chunk-2MENHAYJ.mjs.gz +0 -0
- package/dist/chunk-463BMH5Q.js.br +0 -0
- package/dist/chunk-463BMH5Q.js.gz +0 -0
- package/dist/chunk-4JENQPJ3.js.br +0 -0
- package/dist/chunk-4JENQPJ3.js.gz +0 -0
- package/dist/chunk-4Z4HEIP5.js.br +0 -0
- package/dist/chunk-4Z4HEIP5.js.gz +0 -0
- package/dist/chunk-AD4LAXDJ.mjs.br +0 -0
- package/dist/chunk-AD4LAXDJ.mjs.gz +0 -0
- package/dist/chunk-LLZ25OVR.js.br +0 -0
- package/dist/chunk-LLZ25OVR.js.gz +0 -0
- package/dist/chunk-O5BR276S.mjs.br +0 -0
- package/dist/chunk-O5BR276S.mjs.gz +0 -0
- package/dist/chunk-QJJX2E6I.js.br +0 -0
- package/dist/chunk-QJJX2E6I.js.gz +0 -0
- package/dist/chunk-RJ26DQIM.mjs.br +0 -0
- package/dist/chunk-RJ26DQIM.mjs.gz +0 -0
- package/dist/chunk-YAKDNRU7.mjs.br +0 -0
- package/dist/chunk-YAKDNRU7.mjs.gz +0 -0
|
@@ -19943,6 +19943,361 @@ var PptxPresentationSaveBuilder = class {
|
|
|
19943
19943
|
presentation["p:modifyVerifier"] = mv;
|
|
19944
19944
|
}
|
|
19945
19945
|
};
|
|
19946
|
+
var NAMESPACE_PAIRS = [
|
|
19947
|
+
// -- PresentationML --
|
|
19948
|
+
[
|
|
19949
|
+
"http://purl.oclc.org/ooxml/presentationml/main",
|
|
19950
|
+
"http://schemas.openxmlformats.org/presentationml/2006/main"
|
|
19951
|
+
],
|
|
19952
|
+
// -- DrawingML --
|
|
19953
|
+
[
|
|
19954
|
+
"http://purl.oclc.org/ooxml/drawingml/main",
|
|
19955
|
+
"http://schemas.openxmlformats.org/drawingml/2006/main"
|
|
19956
|
+
],
|
|
19957
|
+
[
|
|
19958
|
+
"http://purl.oclc.org/ooxml/drawingml/chart",
|
|
19959
|
+
"http://schemas.openxmlformats.org/drawingml/2006/chart"
|
|
19960
|
+
],
|
|
19961
|
+
[
|
|
19962
|
+
"http://purl.oclc.org/ooxml/drawingml/chartDrawing",
|
|
19963
|
+
"http://schemas.openxmlformats.org/drawingml/2006/chartDrawing"
|
|
19964
|
+
],
|
|
19965
|
+
[
|
|
19966
|
+
"http://purl.oclc.org/ooxml/drawingml/diagram",
|
|
19967
|
+
"http://schemas.openxmlformats.org/drawingml/2006/diagram"
|
|
19968
|
+
],
|
|
19969
|
+
[
|
|
19970
|
+
"http://purl.oclc.org/ooxml/drawingml/lockedCanvas",
|
|
19971
|
+
"http://schemas.openxmlformats.org/drawingml/2006/lockedCanvas"
|
|
19972
|
+
],
|
|
19973
|
+
[
|
|
19974
|
+
"http://purl.oclc.org/ooxml/drawingml/picture",
|
|
19975
|
+
"http://schemas.openxmlformats.org/drawingml/2006/picture"
|
|
19976
|
+
],
|
|
19977
|
+
[
|
|
19978
|
+
"http://purl.oclc.org/ooxml/drawingml/spreadsheetDrawing",
|
|
19979
|
+
"http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing"
|
|
19980
|
+
],
|
|
19981
|
+
[
|
|
19982
|
+
"http://purl.oclc.org/ooxml/drawingml/wordprocessingDrawing",
|
|
19983
|
+
"http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing"
|
|
19984
|
+
],
|
|
19985
|
+
// -- Relationships --
|
|
19986
|
+
[
|
|
19987
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships",
|
|
19988
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships"
|
|
19989
|
+
],
|
|
19990
|
+
[
|
|
19991
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/chart",
|
|
19992
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart"
|
|
19993
|
+
],
|
|
19994
|
+
[
|
|
19995
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/comments",
|
|
19996
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments"
|
|
19997
|
+
],
|
|
19998
|
+
[
|
|
19999
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/customXml",
|
|
20000
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXml"
|
|
20001
|
+
],
|
|
20002
|
+
[
|
|
20003
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/diagramColors",
|
|
20004
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/diagramColors"
|
|
20005
|
+
],
|
|
20006
|
+
[
|
|
20007
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/diagramData",
|
|
20008
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/diagramData"
|
|
20009
|
+
],
|
|
20010
|
+
[
|
|
20011
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/diagramLayout",
|
|
20012
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/diagramLayout"
|
|
20013
|
+
],
|
|
20014
|
+
[
|
|
20015
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/diagramStyle",
|
|
20016
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/diagramStyle"
|
|
20017
|
+
],
|
|
20018
|
+
[
|
|
20019
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/customProperties",
|
|
20020
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties"
|
|
20021
|
+
],
|
|
20022
|
+
[
|
|
20023
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/extendedProperties",
|
|
20024
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties"
|
|
20025
|
+
],
|
|
20026
|
+
[
|
|
20027
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/font",
|
|
20028
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/font"
|
|
20029
|
+
],
|
|
20030
|
+
[
|
|
20031
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/handoutMaster",
|
|
20032
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/handoutMaster"
|
|
20033
|
+
],
|
|
20034
|
+
[
|
|
20035
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/hyperlink",
|
|
20036
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink"
|
|
20037
|
+
],
|
|
20038
|
+
[
|
|
20039
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/image",
|
|
20040
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image"
|
|
20041
|
+
],
|
|
20042
|
+
[
|
|
20043
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/media",
|
|
20044
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/media"
|
|
20045
|
+
],
|
|
20046
|
+
[
|
|
20047
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/notesMaster",
|
|
20048
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/notesMaster"
|
|
20049
|
+
],
|
|
20050
|
+
[
|
|
20051
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/notesSlide",
|
|
20052
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/notesSlide"
|
|
20053
|
+
],
|
|
20054
|
+
[
|
|
20055
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/oleObject",
|
|
20056
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/oleObject"
|
|
20057
|
+
],
|
|
20058
|
+
[
|
|
20059
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/presProps",
|
|
20060
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/presProps"
|
|
20061
|
+
],
|
|
20062
|
+
[
|
|
20063
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/slide",
|
|
20064
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/slide"
|
|
20065
|
+
],
|
|
20066
|
+
[
|
|
20067
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/slideLayout",
|
|
20068
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideLayout"
|
|
20069
|
+
],
|
|
20070
|
+
[
|
|
20071
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/slideMaster",
|
|
20072
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideMaster"
|
|
20073
|
+
],
|
|
20074
|
+
[
|
|
20075
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/tags",
|
|
20076
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/tags"
|
|
20077
|
+
],
|
|
20078
|
+
[
|
|
20079
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/theme",
|
|
20080
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme"
|
|
20081
|
+
],
|
|
20082
|
+
[
|
|
20083
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/themeOverride",
|
|
20084
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/themeOverride"
|
|
20085
|
+
],
|
|
20086
|
+
[
|
|
20087
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/video",
|
|
20088
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/video"
|
|
20089
|
+
],
|
|
20090
|
+
[
|
|
20091
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/audio",
|
|
20092
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/audio"
|
|
20093
|
+
],
|
|
20094
|
+
[
|
|
20095
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/viewProps",
|
|
20096
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/viewProps"
|
|
20097
|
+
],
|
|
20098
|
+
[
|
|
20099
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/tableStyles",
|
|
20100
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/tableStyles"
|
|
20101
|
+
],
|
|
20102
|
+
// -- OfficeDocument core --
|
|
20103
|
+
[
|
|
20104
|
+
"http://purl.oclc.org/ooxml/officeDocument/math",
|
|
20105
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/math"
|
|
20106
|
+
],
|
|
20107
|
+
[
|
|
20108
|
+
"http://purl.oclc.org/ooxml/officeDocument/bibliography",
|
|
20109
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/bibliography"
|
|
20110
|
+
],
|
|
20111
|
+
[
|
|
20112
|
+
"http://purl.oclc.org/ooxml/officeDocument/customProperties",
|
|
20113
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/custom-properties"
|
|
20114
|
+
],
|
|
20115
|
+
[
|
|
20116
|
+
"http://purl.oclc.org/ooxml/officeDocument/extendedProperties",
|
|
20117
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/extended-properties"
|
|
20118
|
+
],
|
|
20119
|
+
[
|
|
20120
|
+
"http://purl.oclc.org/ooxml/officeDocument/docPropsVTypes",
|
|
20121
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes"
|
|
20122
|
+
],
|
|
20123
|
+
// -- OfficeDocument document relationship --
|
|
20124
|
+
// (Other OPC-defined relationship types - package/relationships,
|
|
20125
|
+
// core-properties, digital-signature - are conformance-independent and
|
|
20126
|
+
// intentionally omitted; see the module header.)
|
|
20127
|
+
[
|
|
20128
|
+
"http://purl.oclc.org/ooxml/officeDocument/relationships/officeDocument",
|
|
20129
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument"
|
|
20130
|
+
],
|
|
20131
|
+
// -- Schema Library --
|
|
20132
|
+
[
|
|
20133
|
+
"http://purl.oclc.org/ooxml/schemaLibrary/main",
|
|
20134
|
+
"http://schemas.openxmlformats.org/schemaLibrary/2006/main"
|
|
20135
|
+
],
|
|
20136
|
+
// -- Content-type descriptions (note the distinct transitional host) --
|
|
20137
|
+
[
|
|
20138
|
+
"http://purl.oclc.org/ooxml/descriptions/base",
|
|
20139
|
+
"http://descriptions.openxmlformats.org/description/base"
|
|
20140
|
+
],
|
|
20141
|
+
[
|
|
20142
|
+
"http://purl.oclc.org/ooxml/descriptions/full",
|
|
20143
|
+
"http://descriptions.openxmlformats.org/description/full"
|
|
20144
|
+
],
|
|
20145
|
+
// -- SpreadsheetML (for embedded charts / workbooks) --
|
|
20146
|
+
[
|
|
20147
|
+
"http://purl.oclc.org/ooxml/spreadsheetml/main",
|
|
20148
|
+
"http://schemas.openxmlformats.org/spreadsheetml/2006/main"
|
|
20149
|
+
],
|
|
20150
|
+
// -- WordprocessingML (for embedded docs) --
|
|
20151
|
+
[
|
|
20152
|
+
"http://purl.oclc.org/ooxml/wordprocessingml/main",
|
|
20153
|
+
"http://schemas.openxmlformats.org/wordprocessingml/2006/main"
|
|
20154
|
+
]
|
|
20155
|
+
];
|
|
20156
|
+
var STRICT_TO_TRANSITIONAL_NS = new Map(NAMESPACE_PAIRS);
|
|
20157
|
+
var TRANSITIONAL_TO_STRICT_NS = new Map(
|
|
20158
|
+
NAMESPACE_PAIRS.map(([strict, transitional]) => [transitional, strict])
|
|
20159
|
+
);
|
|
20160
|
+
var STRICT_BASE = "http://purl.oclc.org/ooxml/";
|
|
20161
|
+
var TRANSITIONAL_BASE = "http://schemas.openxmlformats.org/";
|
|
20162
|
+
var ALGORITHMIC_FAMILIES = /* @__PURE__ */ new Set([
|
|
20163
|
+
"presentationml",
|
|
20164
|
+
"drawingml",
|
|
20165
|
+
"spreadsheetml",
|
|
20166
|
+
"wordprocessingml",
|
|
20167
|
+
"officeDocument",
|
|
20168
|
+
"schemaLibrary"
|
|
20169
|
+
]);
|
|
20170
|
+
function deriveTransitionalUri(uri) {
|
|
20171
|
+
if (!uri.startsWith(STRICT_BASE)) {
|
|
20172
|
+
return void 0;
|
|
20173
|
+
}
|
|
20174
|
+
const segments = uri.slice(STRICT_BASE.length).split("/");
|
|
20175
|
+
if (segments.length < 2 || !ALGORITHMIC_FAMILIES.has(segments[0])) {
|
|
20176
|
+
return void 0;
|
|
20177
|
+
}
|
|
20178
|
+
if (segments[1] !== "2006") {
|
|
20179
|
+
segments.splice(1, 0, "2006");
|
|
20180
|
+
}
|
|
20181
|
+
return TRANSITIONAL_BASE + segments.join("/");
|
|
20182
|
+
}
|
|
20183
|
+
function deriveStrictUri(uri) {
|
|
20184
|
+
if (!uri.startsWith(TRANSITIONAL_BASE)) {
|
|
20185
|
+
return void 0;
|
|
20186
|
+
}
|
|
20187
|
+
const segments = uri.slice(TRANSITIONAL_BASE.length).split("/");
|
|
20188
|
+
if (segments.length < 3 || !ALGORITHMIC_FAMILIES.has(segments[0]) || segments[1] !== "2006") {
|
|
20189
|
+
return void 0;
|
|
20190
|
+
}
|
|
20191
|
+
segments.splice(1, 1);
|
|
20192
|
+
return STRICT_BASE + segments.join("/");
|
|
20193
|
+
}
|
|
20194
|
+
function normalizeNamespaceUri(uri) {
|
|
20195
|
+
return STRICT_TO_TRANSITIONAL_NS.get(uri) ?? deriveTransitionalUri(uri) ?? uri;
|
|
20196
|
+
}
|
|
20197
|
+
function isStrictNamespaceUri(uri) {
|
|
20198
|
+
return uri.startsWith("http://purl.oclc.org/ooxml/");
|
|
20199
|
+
}
|
|
20200
|
+
function detectStrictConformance(xmlObj) {
|
|
20201
|
+
for (const key2 of Object.keys(xmlObj)) {
|
|
20202
|
+
const child222 = xmlObj[key2];
|
|
20203
|
+
if (typeof child222 !== "object" || child222 === null || Array.isArray(child222)) {
|
|
20204
|
+
continue;
|
|
20205
|
+
}
|
|
20206
|
+
const node = child222;
|
|
20207
|
+
for (const attrKey of Object.keys(node)) {
|
|
20208
|
+
if (!attrKey.startsWith("@_xmlns")) {
|
|
20209
|
+
continue;
|
|
20210
|
+
}
|
|
20211
|
+
const value = String(node[attrKey] || "");
|
|
20212
|
+
if (isStrictNamespaceUri(value)) {
|
|
20213
|
+
return true;
|
|
20214
|
+
}
|
|
20215
|
+
}
|
|
20216
|
+
}
|
|
20217
|
+
return false;
|
|
20218
|
+
}
|
|
20219
|
+
function normalizeStrictXml(node) {
|
|
20220
|
+
if (typeof node !== "object" || node === null || Array.isArray(node)) {
|
|
20221
|
+
return node;
|
|
20222
|
+
}
|
|
20223
|
+
for (const key2 of Object.keys(node)) {
|
|
20224
|
+
const value = node[key2];
|
|
20225
|
+
if (key2.startsWith("@_xmlns")) {
|
|
20226
|
+
if (typeof value === "string") {
|
|
20227
|
+
node[key2] = normalizeNamespaceUri(value);
|
|
20228
|
+
}
|
|
20229
|
+
continue;
|
|
20230
|
+
}
|
|
20231
|
+
if (key2 === "@_Type" && typeof value === "string") {
|
|
20232
|
+
node[key2] = normalizeNamespaceUri(value);
|
|
20233
|
+
continue;
|
|
20234
|
+
}
|
|
20235
|
+
if (key2 === "@_uri" && typeof value === "string") {
|
|
20236
|
+
node[key2] = normalizeNamespaceUri(value);
|
|
20237
|
+
continue;
|
|
20238
|
+
}
|
|
20239
|
+
if (key2.startsWith("@_")) {
|
|
20240
|
+
continue;
|
|
20241
|
+
}
|
|
20242
|
+
if (Array.isArray(value)) {
|
|
20243
|
+
for (const item of value) {
|
|
20244
|
+
if (typeof item === "object" && item !== null) {
|
|
20245
|
+
normalizeStrictXml(item);
|
|
20246
|
+
}
|
|
20247
|
+
}
|
|
20248
|
+
} else if (typeof value === "object" && value !== null) {
|
|
20249
|
+
normalizeStrictXml(value);
|
|
20250
|
+
}
|
|
20251
|
+
}
|
|
20252
|
+
return node;
|
|
20253
|
+
}
|
|
20254
|
+
function toStrictNamespaceUri(uri) {
|
|
20255
|
+
return TRANSITIONAL_TO_STRICT_NS.get(uri) ?? deriveStrictUri(uri) ?? uri;
|
|
20256
|
+
}
|
|
20257
|
+
function isTransitionalNamespaceUri(uri) {
|
|
20258
|
+
return TRANSITIONAL_TO_STRICT_NS.has(uri) || deriveStrictUri(uri) !== void 0;
|
|
20259
|
+
}
|
|
20260
|
+
function convertXmlToStrict(node, setConformance = false) {
|
|
20261
|
+
if (typeof node !== "object" || node === null || Array.isArray(node)) {
|
|
20262
|
+
return node;
|
|
20263
|
+
}
|
|
20264
|
+
if (setConformance && "p:presentation" in node) {
|
|
20265
|
+
const presentation = node["p:presentation"];
|
|
20266
|
+
if (typeof presentation === "object" && presentation !== null) {
|
|
20267
|
+
presentation["@_conformance"] = "strict";
|
|
20268
|
+
}
|
|
20269
|
+
}
|
|
20270
|
+
for (const key2 of Object.keys(node)) {
|
|
20271
|
+
const value = node[key2];
|
|
20272
|
+
if (key2.startsWith("@_xmlns")) {
|
|
20273
|
+
if (typeof value === "string") {
|
|
20274
|
+
node[key2] = toStrictNamespaceUri(value);
|
|
20275
|
+
}
|
|
20276
|
+
continue;
|
|
20277
|
+
}
|
|
20278
|
+
if (key2 === "@_Type" && typeof value === "string") {
|
|
20279
|
+
node[key2] = toStrictNamespaceUri(value);
|
|
20280
|
+
continue;
|
|
20281
|
+
}
|
|
20282
|
+
if (key2 === "@_uri" && typeof value === "string") {
|
|
20283
|
+
node[key2] = toStrictNamespaceUri(value);
|
|
20284
|
+
continue;
|
|
20285
|
+
}
|
|
20286
|
+
if (key2.startsWith("@_")) {
|
|
20287
|
+
continue;
|
|
20288
|
+
}
|
|
20289
|
+
if (Array.isArray(value)) {
|
|
20290
|
+
for (const item of value) {
|
|
20291
|
+
if (typeof item === "object" && item !== null) {
|
|
20292
|
+
convertXmlToStrict(item);
|
|
20293
|
+
}
|
|
20294
|
+
}
|
|
20295
|
+
} else if (typeof value === "object" && value !== null) {
|
|
20296
|
+
convertXmlToStrict(value);
|
|
20297
|
+
}
|
|
20298
|
+
}
|
|
20299
|
+
return node;
|
|
20300
|
+
}
|
|
19946
20301
|
function buildSlideReferenceRemap(init) {
|
|
19947
20302
|
const pathToNewRId = /* @__PURE__ */ new Map();
|
|
19948
20303
|
for (const slide of init.slides) {
|
|
@@ -20012,7 +20367,7 @@ var PptxPresentationSlidesReconciler = class {
|
|
|
20012
20367
|
if (typeof relationshipId2 === "string" && relationshipId2.length > 0) {
|
|
20013
20368
|
usedRIds.add(relationshipId2);
|
|
20014
20369
|
}
|
|
20015
|
-
if (relationshipType === input.slideRelationshipType && typeof relationshipId2 === "string" && typeof relationshipTarget2 === "string") {
|
|
20370
|
+
if (typeof relationshipType === "string" && normalizeNamespaceUri(relationshipType) === normalizeNamespaceUri(input.slideRelationshipType) && typeof relationshipId2 === "string" && typeof relationshipTarget2 === "string") {
|
|
20016
20371
|
slideTargetByRid.set(relationshipId2, relationshipTarget2);
|
|
20017
20372
|
continue;
|
|
20018
20373
|
}
|
|
@@ -25432,6 +25787,12 @@ function parseAlignmentAttr2(algn) {
|
|
|
25432
25787
|
}
|
|
25433
25788
|
return ALIGN_MAP[algn] || void 0;
|
|
25434
25789
|
}
|
|
25790
|
+
function resolveParagraphAlignment(authoredAlignment, placeholderAlignment, paragraphRtl) {
|
|
25791
|
+
if (authoredAlignment !== void 0 && authoredAlignment !== null) {
|
|
25792
|
+
return parseAlignmentAttr2(String(authoredAlignment)) ?? "left";
|
|
25793
|
+
}
|
|
25794
|
+
return placeholderAlignment ?? (paragraphRtl ? "right" : "left");
|
|
25795
|
+
}
|
|
25435
25796
|
function parseParagraphSpacingPx(spacingNode) {
|
|
25436
25797
|
if (!spacingNode) {
|
|
25437
25798
|
return void 0;
|
|
@@ -32448,354 +32809,6 @@ function ensureArray3(val2) {
|
|
|
32448
32809
|
const arr = Array.isArray(val2) ? val2 : [val2];
|
|
32449
32810
|
return arr;
|
|
32450
32811
|
}
|
|
32451
|
-
var NAMESPACE_PAIRS = [
|
|
32452
|
-
// -- PresentationML --
|
|
32453
|
-
[
|
|
32454
|
-
"http://purl.oclc.org/ooxml/presentationml/main",
|
|
32455
|
-
"http://schemas.openxmlformats.org/presentationml/2006/main"
|
|
32456
|
-
],
|
|
32457
|
-
// -- DrawingML --
|
|
32458
|
-
[
|
|
32459
|
-
"http://purl.oclc.org/ooxml/drawingml/main",
|
|
32460
|
-
"http://schemas.openxmlformats.org/drawingml/2006/main"
|
|
32461
|
-
],
|
|
32462
|
-
[
|
|
32463
|
-
"http://purl.oclc.org/ooxml/drawingml/chart",
|
|
32464
|
-
"http://schemas.openxmlformats.org/drawingml/2006/chart"
|
|
32465
|
-
],
|
|
32466
|
-
[
|
|
32467
|
-
"http://purl.oclc.org/ooxml/drawingml/chartDrawing",
|
|
32468
|
-
"http://schemas.openxmlformats.org/drawingml/2006/chartDrawing"
|
|
32469
|
-
],
|
|
32470
|
-
[
|
|
32471
|
-
"http://purl.oclc.org/ooxml/drawingml/diagram",
|
|
32472
|
-
"http://schemas.openxmlformats.org/drawingml/2006/diagram"
|
|
32473
|
-
],
|
|
32474
|
-
[
|
|
32475
|
-
"http://purl.oclc.org/ooxml/drawingml/lockedCanvas",
|
|
32476
|
-
"http://schemas.openxmlformats.org/drawingml/2006/lockedCanvas"
|
|
32477
|
-
],
|
|
32478
|
-
[
|
|
32479
|
-
"http://purl.oclc.org/ooxml/drawingml/picture",
|
|
32480
|
-
"http://schemas.openxmlformats.org/drawingml/2006/picture"
|
|
32481
|
-
],
|
|
32482
|
-
[
|
|
32483
|
-
"http://purl.oclc.org/ooxml/drawingml/spreadsheetDrawing",
|
|
32484
|
-
"http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing"
|
|
32485
|
-
],
|
|
32486
|
-
[
|
|
32487
|
-
"http://purl.oclc.org/ooxml/drawingml/wordprocessingDrawing",
|
|
32488
|
-
"http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing"
|
|
32489
|
-
],
|
|
32490
|
-
// -- Relationships --
|
|
32491
|
-
[
|
|
32492
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships",
|
|
32493
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships"
|
|
32494
|
-
],
|
|
32495
|
-
[
|
|
32496
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/chart",
|
|
32497
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart"
|
|
32498
|
-
],
|
|
32499
|
-
[
|
|
32500
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/comments",
|
|
32501
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments"
|
|
32502
|
-
],
|
|
32503
|
-
[
|
|
32504
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/customXml",
|
|
32505
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXml"
|
|
32506
|
-
],
|
|
32507
|
-
[
|
|
32508
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/diagramColors",
|
|
32509
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/diagramColors"
|
|
32510
|
-
],
|
|
32511
|
-
[
|
|
32512
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/diagramData",
|
|
32513
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/diagramData"
|
|
32514
|
-
],
|
|
32515
|
-
[
|
|
32516
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/diagramLayout",
|
|
32517
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/diagramLayout"
|
|
32518
|
-
],
|
|
32519
|
-
[
|
|
32520
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/diagramStyle",
|
|
32521
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/diagramStyle"
|
|
32522
|
-
],
|
|
32523
|
-
[
|
|
32524
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/extended-properties",
|
|
32525
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties"
|
|
32526
|
-
],
|
|
32527
|
-
[
|
|
32528
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/font",
|
|
32529
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/font"
|
|
32530
|
-
],
|
|
32531
|
-
[
|
|
32532
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/handoutMaster",
|
|
32533
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/handoutMaster"
|
|
32534
|
-
],
|
|
32535
|
-
[
|
|
32536
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/hyperlink",
|
|
32537
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink"
|
|
32538
|
-
],
|
|
32539
|
-
[
|
|
32540
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/image",
|
|
32541
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image"
|
|
32542
|
-
],
|
|
32543
|
-
[
|
|
32544
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/media",
|
|
32545
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/media"
|
|
32546
|
-
],
|
|
32547
|
-
[
|
|
32548
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/notesMaster",
|
|
32549
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/notesMaster"
|
|
32550
|
-
],
|
|
32551
|
-
[
|
|
32552
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/notesSlide",
|
|
32553
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/notesSlide"
|
|
32554
|
-
],
|
|
32555
|
-
[
|
|
32556
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/oleObject",
|
|
32557
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/oleObject"
|
|
32558
|
-
],
|
|
32559
|
-
[
|
|
32560
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/presProps",
|
|
32561
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/presProps"
|
|
32562
|
-
],
|
|
32563
|
-
[
|
|
32564
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/slide",
|
|
32565
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/slide"
|
|
32566
|
-
],
|
|
32567
|
-
[
|
|
32568
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/slideLayout",
|
|
32569
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideLayout"
|
|
32570
|
-
],
|
|
32571
|
-
[
|
|
32572
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/slideMaster",
|
|
32573
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideMaster"
|
|
32574
|
-
],
|
|
32575
|
-
[
|
|
32576
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/tags",
|
|
32577
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/tags"
|
|
32578
|
-
],
|
|
32579
|
-
[
|
|
32580
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/theme",
|
|
32581
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme"
|
|
32582
|
-
],
|
|
32583
|
-
[
|
|
32584
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/themeOverride",
|
|
32585
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/themeOverride"
|
|
32586
|
-
],
|
|
32587
|
-
[
|
|
32588
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/video",
|
|
32589
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/video"
|
|
32590
|
-
],
|
|
32591
|
-
[
|
|
32592
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/audio",
|
|
32593
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/audio"
|
|
32594
|
-
],
|
|
32595
|
-
[
|
|
32596
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/viewProps",
|
|
32597
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/viewProps"
|
|
32598
|
-
],
|
|
32599
|
-
[
|
|
32600
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/tableStyles",
|
|
32601
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/tableStyles"
|
|
32602
|
-
],
|
|
32603
|
-
// -- OfficeDocument core --
|
|
32604
|
-
[
|
|
32605
|
-
"http://purl.oclc.org/ooxml/officeDocument/math",
|
|
32606
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/math"
|
|
32607
|
-
],
|
|
32608
|
-
[
|
|
32609
|
-
"http://purl.oclc.org/ooxml/officeDocument/bibliography",
|
|
32610
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/bibliography"
|
|
32611
|
-
],
|
|
32612
|
-
[
|
|
32613
|
-
"http://purl.oclc.org/ooxml/officeDocument/custom-properties",
|
|
32614
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/custom-properties"
|
|
32615
|
-
],
|
|
32616
|
-
[
|
|
32617
|
-
"http://purl.oclc.org/ooxml/officeDocument/extended-properties",
|
|
32618
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/extended-properties"
|
|
32619
|
-
],
|
|
32620
|
-
[
|
|
32621
|
-
"http://purl.oclc.org/ooxml/officeDocument/docPropsVTypes",
|
|
32622
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes"
|
|
32623
|
-
],
|
|
32624
|
-
// -- OfficeDocument document relationship --
|
|
32625
|
-
// (Other OPC-defined relationship types - package/relationships,
|
|
32626
|
-
// core-properties, digital-signature - are conformance-independent and
|
|
32627
|
-
// intentionally omitted; see the module header.)
|
|
32628
|
-
[
|
|
32629
|
-
"http://purl.oclc.org/ooxml/officeDocument/relationships/officeDocument",
|
|
32630
|
-
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument"
|
|
32631
|
-
],
|
|
32632
|
-
// -- Schema Library --
|
|
32633
|
-
[
|
|
32634
|
-
"http://purl.oclc.org/ooxml/schemaLibrary/main",
|
|
32635
|
-
"http://schemas.openxmlformats.org/schemaLibrary/2006/main"
|
|
32636
|
-
],
|
|
32637
|
-
// -- Content-type descriptions (note the distinct transitional host) --
|
|
32638
|
-
[
|
|
32639
|
-
"http://purl.oclc.org/ooxml/descriptions/base",
|
|
32640
|
-
"http://descriptions.openxmlformats.org/description/base"
|
|
32641
|
-
],
|
|
32642
|
-
[
|
|
32643
|
-
"http://purl.oclc.org/ooxml/descriptions/full",
|
|
32644
|
-
"http://descriptions.openxmlformats.org/description/full"
|
|
32645
|
-
],
|
|
32646
|
-
// -- SpreadsheetML (for embedded charts / workbooks) --
|
|
32647
|
-
[
|
|
32648
|
-
"http://purl.oclc.org/ooxml/spreadsheetml/main",
|
|
32649
|
-
"http://schemas.openxmlformats.org/spreadsheetml/2006/main"
|
|
32650
|
-
],
|
|
32651
|
-
// -- WordprocessingML (for embedded docs) --
|
|
32652
|
-
[
|
|
32653
|
-
"http://purl.oclc.org/ooxml/wordprocessingml/main",
|
|
32654
|
-
"http://schemas.openxmlformats.org/wordprocessingml/2006/main"
|
|
32655
|
-
]
|
|
32656
|
-
];
|
|
32657
|
-
var STRICT_TO_TRANSITIONAL_NS = new Map(NAMESPACE_PAIRS);
|
|
32658
|
-
var TRANSITIONAL_TO_STRICT_NS = new Map(
|
|
32659
|
-
NAMESPACE_PAIRS.map(([strict, transitional]) => [transitional, strict])
|
|
32660
|
-
);
|
|
32661
|
-
var STRICT_BASE = "http://purl.oclc.org/ooxml/";
|
|
32662
|
-
var TRANSITIONAL_BASE = "http://schemas.openxmlformats.org/";
|
|
32663
|
-
var ALGORITHMIC_FAMILIES = /* @__PURE__ */ new Set([
|
|
32664
|
-
"presentationml",
|
|
32665
|
-
"drawingml",
|
|
32666
|
-
"spreadsheetml",
|
|
32667
|
-
"wordprocessingml",
|
|
32668
|
-
"officeDocument",
|
|
32669
|
-
"schemaLibrary"
|
|
32670
|
-
]);
|
|
32671
|
-
function deriveTransitionalUri(uri) {
|
|
32672
|
-
if (!uri.startsWith(STRICT_BASE)) {
|
|
32673
|
-
return void 0;
|
|
32674
|
-
}
|
|
32675
|
-
const segments = uri.slice(STRICT_BASE.length).split("/");
|
|
32676
|
-
if (segments.length < 2 || !ALGORITHMIC_FAMILIES.has(segments[0])) {
|
|
32677
|
-
return void 0;
|
|
32678
|
-
}
|
|
32679
|
-
if (segments[1] !== "2006") {
|
|
32680
|
-
segments.splice(1, 0, "2006");
|
|
32681
|
-
}
|
|
32682
|
-
return TRANSITIONAL_BASE + segments.join("/");
|
|
32683
|
-
}
|
|
32684
|
-
function deriveStrictUri(uri) {
|
|
32685
|
-
if (!uri.startsWith(TRANSITIONAL_BASE)) {
|
|
32686
|
-
return void 0;
|
|
32687
|
-
}
|
|
32688
|
-
const segments = uri.slice(TRANSITIONAL_BASE.length).split("/");
|
|
32689
|
-
if (segments.length < 3 || !ALGORITHMIC_FAMILIES.has(segments[0]) || segments[1] !== "2006") {
|
|
32690
|
-
return void 0;
|
|
32691
|
-
}
|
|
32692
|
-
segments.splice(1, 1);
|
|
32693
|
-
return STRICT_BASE + segments.join("/");
|
|
32694
|
-
}
|
|
32695
|
-
function normalizeNamespaceUri(uri) {
|
|
32696
|
-
return STRICT_TO_TRANSITIONAL_NS.get(uri) ?? deriveTransitionalUri(uri) ?? uri;
|
|
32697
|
-
}
|
|
32698
|
-
function isStrictNamespaceUri(uri) {
|
|
32699
|
-
return uri.startsWith("http://purl.oclc.org/ooxml/");
|
|
32700
|
-
}
|
|
32701
|
-
function detectStrictConformance(xmlObj) {
|
|
32702
|
-
for (const key2 of Object.keys(xmlObj)) {
|
|
32703
|
-
const child222 = xmlObj[key2];
|
|
32704
|
-
if (typeof child222 !== "object" || child222 === null || Array.isArray(child222)) {
|
|
32705
|
-
continue;
|
|
32706
|
-
}
|
|
32707
|
-
const node = child222;
|
|
32708
|
-
for (const attrKey of Object.keys(node)) {
|
|
32709
|
-
if (!attrKey.startsWith("@_xmlns")) {
|
|
32710
|
-
continue;
|
|
32711
|
-
}
|
|
32712
|
-
const value = String(node[attrKey] || "");
|
|
32713
|
-
if (isStrictNamespaceUri(value)) {
|
|
32714
|
-
return true;
|
|
32715
|
-
}
|
|
32716
|
-
}
|
|
32717
|
-
}
|
|
32718
|
-
return false;
|
|
32719
|
-
}
|
|
32720
|
-
function normalizeStrictXml(node) {
|
|
32721
|
-
if (typeof node !== "object" || node === null || Array.isArray(node)) {
|
|
32722
|
-
return node;
|
|
32723
|
-
}
|
|
32724
|
-
for (const key2 of Object.keys(node)) {
|
|
32725
|
-
const value = node[key2];
|
|
32726
|
-
if (key2.startsWith("@_xmlns")) {
|
|
32727
|
-
if (typeof value === "string") {
|
|
32728
|
-
node[key2] = normalizeNamespaceUri(value);
|
|
32729
|
-
}
|
|
32730
|
-
continue;
|
|
32731
|
-
}
|
|
32732
|
-
if (key2 === "@_Type" && typeof value === "string") {
|
|
32733
|
-
node[key2] = normalizeNamespaceUri(value);
|
|
32734
|
-
continue;
|
|
32735
|
-
}
|
|
32736
|
-
if (key2 === "@_uri" && typeof value === "string") {
|
|
32737
|
-
node[key2] = normalizeNamespaceUri(value);
|
|
32738
|
-
continue;
|
|
32739
|
-
}
|
|
32740
|
-
if (key2.startsWith("@_")) {
|
|
32741
|
-
continue;
|
|
32742
|
-
}
|
|
32743
|
-
if (Array.isArray(value)) {
|
|
32744
|
-
for (const item of value) {
|
|
32745
|
-
if (typeof item === "object" && item !== null) {
|
|
32746
|
-
normalizeStrictXml(item);
|
|
32747
|
-
}
|
|
32748
|
-
}
|
|
32749
|
-
} else if (typeof value === "object" && value !== null) {
|
|
32750
|
-
normalizeStrictXml(value);
|
|
32751
|
-
}
|
|
32752
|
-
}
|
|
32753
|
-
return node;
|
|
32754
|
-
}
|
|
32755
|
-
function toStrictNamespaceUri(uri) {
|
|
32756
|
-
return TRANSITIONAL_TO_STRICT_NS.get(uri) ?? deriveStrictUri(uri) ?? uri;
|
|
32757
|
-
}
|
|
32758
|
-
function convertXmlToStrict(node, setConformance = false) {
|
|
32759
|
-
if (typeof node !== "object" || node === null || Array.isArray(node)) {
|
|
32760
|
-
return node;
|
|
32761
|
-
}
|
|
32762
|
-
if (setConformance && "p:presentation" in node) {
|
|
32763
|
-
const presentation = node["p:presentation"];
|
|
32764
|
-
if (typeof presentation === "object" && presentation !== null) {
|
|
32765
|
-
presentation["@_conformance"] = "strict";
|
|
32766
|
-
}
|
|
32767
|
-
}
|
|
32768
|
-
for (const key2 of Object.keys(node)) {
|
|
32769
|
-
const value = node[key2];
|
|
32770
|
-
if (key2.startsWith("@_xmlns")) {
|
|
32771
|
-
if (typeof value === "string") {
|
|
32772
|
-
node[key2] = toStrictNamespaceUri(value);
|
|
32773
|
-
}
|
|
32774
|
-
continue;
|
|
32775
|
-
}
|
|
32776
|
-
if (key2 === "@_Type" && typeof value === "string") {
|
|
32777
|
-
node[key2] = toStrictNamespaceUri(value);
|
|
32778
|
-
continue;
|
|
32779
|
-
}
|
|
32780
|
-
if (key2 === "@_uri" && typeof value === "string") {
|
|
32781
|
-
node[key2] = toStrictNamespaceUri(value);
|
|
32782
|
-
continue;
|
|
32783
|
-
}
|
|
32784
|
-
if (key2.startsWith("@_")) {
|
|
32785
|
-
continue;
|
|
32786
|
-
}
|
|
32787
|
-
if (Array.isArray(value)) {
|
|
32788
|
-
for (const item of value) {
|
|
32789
|
-
if (typeof item === "object" && item !== null) {
|
|
32790
|
-
convertXmlToStrict(item);
|
|
32791
|
-
}
|
|
32792
|
-
}
|
|
32793
|
-
} else if (typeof value === "object" && value !== null) {
|
|
32794
|
-
convertXmlToStrict(value);
|
|
32795
|
-
}
|
|
32796
|
-
}
|
|
32797
|
-
return node;
|
|
32798
|
-
}
|
|
32799
32812
|
var EMU_PER_PX6 = 9525;
|
|
32800
32813
|
function ensureArray4(val2) {
|
|
32801
32814
|
if (val2 === void 0 || val2 === null) {
|
|
@@ -37528,6 +37541,25 @@ function ensureArrayLike(value) {
|
|
|
37528
37541
|
}
|
|
37529
37542
|
return Array.isArray(value) ? value : [value];
|
|
37530
37543
|
}
|
|
37544
|
+
function readPositiveInteger(value) {
|
|
37545
|
+
const parsed = Number.parseInt(String(value ?? ""), 10);
|
|
37546
|
+
return Number.isFinite(parsed) && parsed > 0 ? parsed : 0;
|
|
37547
|
+
}
|
|
37548
|
+
function getTableGridExtent(graphicData) {
|
|
37549
|
+
const table = graphicData?.["a:tbl"];
|
|
37550
|
+
if (!table) {
|
|
37551
|
+
return void 0;
|
|
37552
|
+
}
|
|
37553
|
+
const grid = table["a:tblGrid"];
|
|
37554
|
+
const widthEmu = ensureArrayLike(
|
|
37555
|
+
grid?.["a:gridCol"]
|
|
37556
|
+
).reduce((sum, column) => sum + readPositiveInteger(column?.["@_w"]), 0);
|
|
37557
|
+
const heightEmu = ensureArrayLike(table["a:tr"]).reduce(
|
|
37558
|
+
(sum, row) => sum + readPositiveInteger(row?.["@_h"]),
|
|
37559
|
+
0
|
|
37560
|
+
);
|
|
37561
|
+
return widthEmu > 0 && heightEmu > 0 ? { widthEmu, heightEmu } : void 0;
|
|
37562
|
+
}
|
|
37531
37563
|
function collectGraphicFrameExtensions(graphicData) {
|
|
37532
37564
|
if (!graphicData) {
|
|
37533
37565
|
return [];
|
|
@@ -37776,8 +37808,13 @@ var PptxGraphicFrameParser = class {
|
|
|
37776
37808
|
const extensionXml = collectGraphicFrameExtensions(graphicData);
|
|
37777
37809
|
if (type === "table" && graphicData) {
|
|
37778
37810
|
const tableData = this.context.parseTableData(graphicData);
|
|
37811
|
+
const tableGridExtent = getTableGridExtent(graphicData);
|
|
37779
37812
|
return {
|
|
37780
37813
|
...baseElement,
|
|
37814
|
+
...tableGridExtent ? {
|
|
37815
|
+
width: Math.round(tableGridExtent.widthEmu / this.context.emuPerPx),
|
|
37816
|
+
height: Math.round(tableGridExtent.heightEmu / this.context.emuPerPx)
|
|
37817
|
+
} : {},
|
|
37781
37818
|
tableData,
|
|
37782
37819
|
...extensionXml.length > 0 ? { extensionXml } : {}
|
|
37783
37820
|
};
|
|
@@ -44966,8 +45003,10 @@ function parseEotHeader(data) {
|
|
|
44966
45003
|
const styleName = readNameString();
|
|
44967
45004
|
const versionName = readNameString();
|
|
44968
45005
|
const fullName = readNameString();
|
|
44969
|
-
if (version >=
|
|
45006
|
+
if (version >= 131073) {
|
|
44970
45007
|
readNameString();
|
|
45008
|
+
}
|
|
45009
|
+
if (version >= 131074) {
|
|
44971
45010
|
offset += 8;
|
|
44972
45011
|
if (offset + 4 <= data.length) {
|
|
44973
45012
|
const signatureSize = readUint16LE(data, offset + 2);
|
|
@@ -53917,6 +53956,10 @@ var PptxHandlerRuntime = class {
|
|
|
53917
53956
|
}
|
|
53918
53957
|
};
|
|
53919
53958
|
var EMU_PER_PIXEL = 9525;
|
|
53959
|
+
function parseTintShadeVal(value) {
|
|
53960
|
+
const fraction = parseOoxmlPercent(value);
|
|
53961
|
+
return fraction === void 0 || fraction === 0 ? void 0 : Math.round(fraction * 1e5);
|
|
53962
|
+
}
|
|
53920
53963
|
var BORDER_SIDES = [
|
|
53921
53964
|
"left",
|
|
53922
53965
|
"right",
|
|
@@ -53940,9 +53983,9 @@ function parseSolidFillStyle(solidFill3) {
|
|
|
53940
53983
|
return void 0;
|
|
53941
53984
|
}
|
|
53942
53985
|
const tintRaw = schemeClr["a:tint"];
|
|
53943
|
-
const tint3 = tintRaw ?
|
|
53986
|
+
const tint3 = tintRaw ? parseTintShadeVal(tintRaw["@_val"]) : void 0;
|
|
53944
53987
|
const shadeRaw = schemeClr["a:shade"];
|
|
53945
|
-
const shade3 = shadeRaw ?
|
|
53988
|
+
const shade3 = shadeRaw ? parseTintShadeVal(shadeRaw["@_val"]) : void 0;
|
|
53946
53989
|
return { schemeColor, tint: tint3, shade: shade3 };
|
|
53947
53990
|
}
|
|
53948
53991
|
function parseBorderSide(side) {
|
|
@@ -54023,12 +54066,12 @@ function parseColorChoiceFill(node) {
|
|
|
54023
54066
|
}
|
|
54024
54067
|
const fill = { schemeColor: "", color: color2 };
|
|
54025
54068
|
const tintRaw = srgb?.["a:tint"];
|
|
54026
|
-
const tint3 = tintRaw ?
|
|
54069
|
+
const tint3 = tintRaw ? parseTintShadeVal(tintRaw["@_val"]) : void 0;
|
|
54027
54070
|
if (tint3 !== void 0) {
|
|
54028
54071
|
fill.tint = tint3;
|
|
54029
54072
|
}
|
|
54030
54073
|
const shadeRaw = srgb?.["a:shade"];
|
|
54031
|
-
const shade3 = shadeRaw ?
|
|
54074
|
+
const shade3 = shadeRaw ? parseTintShadeVal(shadeRaw["@_val"]) : void 0;
|
|
54032
54075
|
if (shade3 !== void 0) {
|
|
54033
54076
|
fill.shade = shade3;
|
|
54034
54077
|
}
|
|
@@ -54149,11 +54192,11 @@ function parseTableStyleSectionText(section) {
|
|
|
54149
54192
|
hasProps = true;
|
|
54150
54193
|
const tintNode = schemeClr["a:tint"];
|
|
54151
54194
|
if (tintNode) {
|
|
54152
|
-
result.fontTint =
|
|
54195
|
+
result.fontTint = parseTintShadeVal(tintNode["@_val"]);
|
|
54153
54196
|
}
|
|
54154
54197
|
const shadeNode = schemeClr["a:shade"];
|
|
54155
54198
|
if (shadeNode) {
|
|
54156
|
-
result.fontShade =
|
|
54199
|
+
result.fontShade = parseTintShadeVal(shadeNode["@_val"]);
|
|
54157
54200
|
}
|
|
54158
54201
|
}
|
|
54159
54202
|
} else {
|
|
@@ -63066,12 +63109,19 @@ var PptxHandlerRuntime24 = class _PptxHandlerRuntime8 extends PptxHandlerRuntime
|
|
|
63066
63109
|
if (!xmlText2.trim()) {
|
|
63067
63110
|
continue;
|
|
63068
63111
|
}
|
|
63112
|
+
const isPresentationXml = path === "ppt/presentation.xml";
|
|
63113
|
+
if (!isPresentationXml) {
|
|
63114
|
+
const candidateUris = xmlText2.match(/https?:\/\/[^"'<>\s]+/gu);
|
|
63115
|
+
const hasConvertibleUri = candidateUris?.some((uri) => isTransitionalNamespaceUri(uri));
|
|
63116
|
+
if (!hasConvertibleUri) {
|
|
63117
|
+
continue;
|
|
63118
|
+
}
|
|
63119
|
+
}
|
|
63069
63120
|
try {
|
|
63070
63121
|
const parsed = parse(xmlText2);
|
|
63071
63122
|
if (typeof parsed !== "object" || parsed === null) {
|
|
63072
63123
|
continue;
|
|
63073
63124
|
}
|
|
63074
|
-
const isPresentationXml = path === "ppt/presentation.xml";
|
|
63075
63125
|
convertXmlToStrict(parsed, isPresentationXml);
|
|
63076
63126
|
this.zip.file(path, this.builder.build(parsed));
|
|
63077
63127
|
} catch {
|
|
@@ -70917,22 +70967,14 @@ var PptxHandlerRuntime62 = class _PptxHandlerRuntime26 extends PptxHandlerRuntim
|
|
|
70917
70967
|
if (paragraphRtl !== void 0 && textStyle.rtl === void 0) {
|
|
70918
70968
|
textStyle.rtl = paragraphRtl;
|
|
70919
70969
|
}
|
|
70920
|
-
|
|
70921
|
-
|
|
70922
|
-
|
|
70923
|
-
|
|
70924
|
-
|
|
70925
|
-
|
|
70926
|
-
|
|
70927
|
-
|
|
70928
|
-
justLow: "justLow",
|
|
70929
|
-
dist: "dist",
|
|
70930
|
-
thaiDist: "thaiDist"
|
|
70931
|
-
};
|
|
70932
|
-
paraAlign = alignMap[pPr["@_algn"]] || "left";
|
|
70933
|
-
if (!textStyle.align) {
|
|
70934
|
-
textStyle.align = paraAlign;
|
|
70935
|
-
}
|
|
70970
|
+
const ownPlaceholderAlignment = ctx.effectiveLevelStyles?.[level]?.alignment ?? ctx.effectiveLevelStyles?.[-1]?.alignment;
|
|
70971
|
+
const paraAlign = resolveParagraphAlignment(
|
|
70972
|
+
pPr?.["@_algn"],
|
|
70973
|
+
ownPlaceholderAlignment,
|
|
70974
|
+
paragraphRtl
|
|
70975
|
+
);
|
|
70976
|
+
if (pPr?.["@_algn"] && !textStyle.align) {
|
|
70977
|
+
textStyle.align = paraAlign;
|
|
70936
70978
|
}
|
|
70937
70979
|
const spacingBasisPx = typeof textStyle.fontSize === "number" ? textStyle.fontSize : void 0;
|
|
70938
70980
|
if (textStyle.paragraphSpacingBefore === void 0) {
|
|
@@ -71079,9 +71121,6 @@ var PptxHandlerRuntime62 = class _PptxHandlerRuntime26 extends PptxHandlerRuntim
|
|
|
71079
71121
|
this.applyPlaceholderLevelDefaults(textStyle, phBase);
|
|
71080
71122
|
}
|
|
71081
71123
|
}
|
|
71082
|
-
if (pPr?.["@_algn"] === void 0 && textStyle.align !== void 0) {
|
|
71083
|
-
paraAlign = textStyle.align;
|
|
71084
|
-
}
|
|
71085
71124
|
const parMarginLeft = pPr?.["@_marL"] !== void 0 ? Number.parseInt(String(pPr["@_marL"]), 10) / _PptxHandlerRuntime26.EMU_PER_PX : void 0;
|
|
71086
71125
|
const parIndent = pPr?.["@_indent"] !== void 0 ? Number.parseInt(String(pPr["@_indent"]), 10) / _PptxHandlerRuntime26.EMU_PER_PX : void 0;
|
|
71087
71126
|
let effectiveMarginLeft = parMarginLeft;
|
|
@@ -71941,6 +71980,12 @@ var PptxHandlerRuntime65 = class _PptxHandlerRuntime28 extends PptxHandlerRuntim
|
|
|
71941
71980
|
let pathData;
|
|
71942
71981
|
let pathWidth;
|
|
71943
71982
|
let pathHeight;
|
|
71983
|
+
let customGeometryRawData;
|
|
71984
|
+
let customGeometryAdjustHandlesXY;
|
|
71985
|
+
let customGeometryAdjustHandlesPolar;
|
|
71986
|
+
let customGeometryConnectionSites;
|
|
71987
|
+
let customGeometryTextRect;
|
|
71988
|
+
let customGeometryPaths;
|
|
71944
71989
|
const custGeom = effectiveSpPr?.["a:custGeom"];
|
|
71945
71990
|
if (custGeom) {
|
|
71946
71991
|
const customPath = this.parseCustomGeometry(
|
|
@@ -71953,6 +71998,19 @@ var PptxHandlerRuntime65 = class _PptxHandlerRuntime28 extends PptxHandlerRuntim
|
|
|
71953
71998
|
pathData = customPath.pathData;
|
|
71954
71999
|
pathWidth = customPath.pathWidth;
|
|
71955
72000
|
pathHeight = customPath.pathHeight;
|
|
72001
|
+
customGeometryPaths = this.buildStructuredCustomGeometryPaths(
|
|
72002
|
+
custGeom,
|
|
72003
|
+
customPath.pathWidth,
|
|
72004
|
+
customPath.pathHeight
|
|
72005
|
+
);
|
|
72006
|
+
customGeometryRawData = this.extractCustomGeometryRawData(custGeom);
|
|
72007
|
+
const typedHandles = this.extractCustomGeometryAdjustHandles(custGeom);
|
|
72008
|
+
customGeometryAdjustHandlesXY = typedHandles.xy;
|
|
72009
|
+
customGeometryAdjustHandlesPolar = typedHandles.polar;
|
|
72010
|
+
customGeometryConnectionSites = this.extractCustomGeometryConnectionSites(
|
|
72011
|
+
custGeom
|
|
72012
|
+
);
|
|
72013
|
+
customGeometryTextRect = this.extractCustomGeometryTextRect(custGeom);
|
|
71956
72014
|
}
|
|
71957
72015
|
}
|
|
71958
72016
|
const picGeomNode = custGeom ?? effectiveSpPr?.["a:prstGeom"];
|
|
@@ -72079,6 +72137,12 @@ var PptxHandlerRuntime65 = class _PptxHandlerRuntime28 extends PptxHandlerRuntim
|
|
|
72079
72137
|
pathData,
|
|
72080
72138
|
pathWidth,
|
|
72081
72139
|
pathHeight,
|
|
72140
|
+
customGeometryPaths,
|
|
72141
|
+
customGeometryRawData,
|
|
72142
|
+
customGeometryAdjustHandlesXY,
|
|
72143
|
+
customGeometryAdjustHandlesPolar,
|
|
72144
|
+
customGeometryConnectionSites,
|
|
72145
|
+
customGeometryTextRect,
|
|
72082
72146
|
shapeStyle: this.extractShapeStyle(effectiveSpPr, styleNode),
|
|
72083
72147
|
rotation,
|
|
72084
72148
|
skewX,
|
|
@@ -76573,9 +76637,6 @@ var PptxHandlerRuntime85 = class _PptxHandlerRuntime35 extends PptxHandlerRuntim
|
|
|
76573
76637
|
const y = Math.round(parseInt(String(off["@_y"] || "0"), 10) / emuPerPx);
|
|
76574
76638
|
const width = Math.round(parseInt(String(ext["@_cx"] || "0"), 10) / emuPerPx);
|
|
76575
76639
|
const height = Math.round(parseInt(String(ext["@_cy"] || "0"), 10) / emuPerPx);
|
|
76576
|
-
if (width <= 0 || height <= 0) {
|
|
76577
|
-
return null;
|
|
76578
|
-
}
|
|
76579
76640
|
const rotation = xfrm?.["@_rot"] ? parseInt(String(xfrm["@_rot"]), 10) / 6e4 : void 0;
|
|
76580
76641
|
const skewX = xfrm?.["@_skewX"] ? parseInt(String(xfrm["@_skewX"]), 10) / 6e4 : void 0;
|
|
76581
76642
|
const skewY = xfrm?.["@_skewY"] ? parseInt(String(xfrm["@_skewY"]), 10) / 6e4 : void 0;
|
|
@@ -76603,6 +76664,9 @@ var PptxHandlerRuntime85 = class _PptxHandlerRuntime35 extends PptxHandlerRuntim
|
|
|
76603
76664
|
};
|
|
76604
76665
|
}
|
|
76605
76666
|
}
|
|
76667
|
+
if ((width <= 0 || height <= 0) && shapeType !== "line") {
|
|
76668
|
+
return null;
|
|
76669
|
+
}
|
|
76606
76670
|
const fill = extractDrawingShapeFill(spPr, this.drawingShapeStyleDeps());
|
|
76607
76671
|
const lnNode = this.xmlLookupService.getChildByLocalName(spPr, "ln");
|
|
76608
76672
|
const lnFill = lnNode ? this.xmlLookupService.getChildByLocalName(lnNode, "solidFill") : void 0;
|
|
@@ -116274,7 +116338,14 @@ function buildBulletMarkerStyle(bullet, firstSeg, fontScale, textIndentPx) {
|
|
|
116274
116338
|
}
|
|
116275
116339
|
var PT_TO_PX = 96 / 72;
|
|
116276
116340
|
function resolveParagraphSpacing(input) {
|
|
116277
|
-
const {
|
|
116341
|
+
const {
|
|
116342
|
+
paraProps,
|
|
116343
|
+
bodyStyle,
|
|
116344
|
+
isFirst = false,
|
|
116345
|
+
isLast = false,
|
|
116346
|
+
spaceFirstLast = true,
|
|
116347
|
+
lineSpacingReduction
|
|
116348
|
+
} = input;
|
|
116278
116349
|
const out = {};
|
|
116279
116350
|
const before = paraProps?.paragraphSpacingBefore ?? bodyStyle?.paragraphSpacingBefore;
|
|
116280
116351
|
if (typeof before === "number" && before > 0 && (!isFirst || spaceFirstLast)) {
|
|
@@ -116291,11 +116362,12 @@ function resolveParagraphSpacing(input) {
|
|
|
116291
116362
|
if (typeof exactPt === "number" && exactPt > 0) {
|
|
116292
116363
|
out.lineHeight = `${exactPt * PT_TO_PX}px`;
|
|
116293
116364
|
} else if (typeof multiplier === "number" && multiplier > 0) {
|
|
116294
|
-
|
|
116365
|
+
const proportional = proportionalLineHeight(multiplier);
|
|
116366
|
+
out.lineHeight = typeof lineSpacingReduction === "number" && lineSpacingReduction > 0 ? proportional * (1 - lineSpacingReduction) : proportional;
|
|
116295
116367
|
}
|
|
116296
116368
|
return out;
|
|
116297
116369
|
}
|
|
116298
|
-
function resolveParagraphStrutFontSize(segments, bodyFontSize) {
|
|
116370
|
+
function resolveParagraphStrutFontSize(segments, bodyFontSize, fontScale = 1) {
|
|
116299
116371
|
let largest;
|
|
116300
116372
|
for (const segment of segments) {
|
|
116301
116373
|
if (segment.bulletInfo) {
|
|
@@ -116315,7 +116387,7 @@ function resolveParagraphStrutFontSize(segments, bodyFontSize) {
|
|
|
116315
116387
|
if (typeof bodyFontSize === "number" && Math.abs(largest - bodyFontSize) < 0.01) {
|
|
116316
116388
|
return void 0;
|
|
116317
116389
|
}
|
|
116318
|
-
return largest;
|
|
116390
|
+
return largest * fontScale;
|
|
116319
116391
|
}
|
|
116320
116392
|
function buildParagraphs(element, fieldContext, segmentOverrides) {
|
|
116321
116393
|
if (!hasTextProperties(element)) {
|
|
@@ -116371,11 +116443,13 @@ function buildParagraphs(element, fieldContext, segmentOverrides) {
|
|
|
116371
116443
|
bodyStyle,
|
|
116372
116444
|
isFirst: paraIndex === 0,
|
|
116373
116445
|
isLast: paraIndex === grouped.length - 1,
|
|
116374
|
-
spaceFirstLast: bodyStyle?.spaceFirstLastParagraph !== false
|
|
116446
|
+
spaceFirstLast: bodyStyle?.spaceFirstLastParagraph !== false,
|
|
116447
|
+
lineSpacingReduction: element.textStyle?.autoFitLineSpacingReduction
|
|
116375
116448
|
});
|
|
116376
116449
|
const strutFontSizePx = resolveParagraphStrutFontSize(
|
|
116377
116450
|
paraSegments.length > 0 ? paraSegments : terminator ? [terminator] : [],
|
|
116378
|
-
hasTextProperties(element) ? element.textStyle?.fontSize : void 0
|
|
116451
|
+
hasTextProperties(element) ? element.textStyle?.fontSize : void 0,
|
|
116452
|
+
fontScale
|
|
116379
116453
|
);
|
|
116380
116454
|
const rtl = resolveParagraphRtl(
|
|
116381
116455
|
paraSegments.map((seg) => ({ segment: seg })),
|