@rowsncolumns/toolkit 24.4.5 → 24.5.1
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/cjs/autofilter-condition.d.ts +45 -1
- package/dist/cjs/autofilter-condition.d.ts.map +1 -1
- package/dist/cjs/autofilter-condition.js +135 -12
- package/dist/cjs/excel-parser/helpers.d.ts +15 -1
- package/dist/cjs/excel-parser/helpers.d.ts.map +1 -1
- package/dist/cjs/excel-parser/helpers.js +119 -5
- package/dist/cjs/excel-parser/interface.d.ts +3 -1
- package/dist/cjs/excel-parser/interface.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/ods/index.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/ods/index.js +186 -97
- package/dist/cjs/excel-parser/plugins/ods/styles.d.ts +15 -0
- package/dist/cjs/excel-parser/plugins/ods/styles.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/ods/styles.js +80 -6
- package/dist/cjs/excel-parser/plugins/xlsb/index.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/xlsb/index.js +107 -103
- package/dist/cjs/excel-parser/plugins/xlsx/charts.d.ts +77 -1
- package/dist/cjs/excel-parser/plugins/xlsx/charts.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/xlsx/charts.js +920 -122
- package/dist/cjs/excel-parser/plugins/xlsx/drawing.d.ts +7 -1
- package/dist/cjs/excel-parser/plugins/xlsx/drawing.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/xlsx/drawing.js +24 -9
- package/dist/cjs/excel-parser/plugins/xlsx/form-controls.d.ts +24 -3
- package/dist/cjs/excel-parser/plugins/xlsx/form-controls.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/xlsx/form-controls.js +25 -3
- package/dist/cjs/excel-parser/plugins/xlsx/index.d.ts +24 -1
- package/dist/cjs/excel-parser/plugins/xlsx/index.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/xlsx/index.js +561 -394
- package/dist/cjs/excel-parser/plugins/xlsx/pivots.d.ts +8 -2
- package/dist/cjs/excel-parser/plugins/xlsx/pivots.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/xlsx/pivots.js +312 -21
- package/dist/cjs/excel-parser/plugins/xlsx/relationships.d.ts +6 -0
- package/dist/cjs/excel-parser/plugins/xlsx/relationships.d.ts.map +1 -1
- package/dist/cjs/excel-parser/plugins/xlsx/relationships.js +9 -0
- package/dist/cjs/excel-parser/plugins/xlsx/theme.d.ts +1 -1
- package/dist/cjs/excel-parser/types.d.ts +9 -1
- package/dist/cjs/excel-parser/types.d.ts.map +1 -1
- package/dist/cjs/excel-parser/workbook.d.ts +1 -0
- package/dist/cjs/excel-parser/workbook.d.ts.map +1 -1
- package/dist/cjs/excel-parser/workbook.js +5 -0
- package/dist/cjs/excel-parser/worker.js +2 -0
- package/dist/cjs/exporter/ods/ods-export.d.ts.map +1 -1
- package/dist/cjs/exporter/ods/ods-export.js +255 -80
- package/dist/cjs/exporter/xlsx/chart-builder.d.ts +7 -1
- package/dist/cjs/exporter/xlsx/chart-builder.d.ts.map +1 -1
- package/dist/cjs/exporter/xlsx/chart-builder.js +902 -119
- package/dist/cjs/exporter/xlsx/form-controls-builder.d.ts +16 -3
- package/dist/cjs/exporter/xlsx/form-controls-builder.d.ts.map +1 -1
- package/dist/cjs/exporter/xlsx/form-controls-builder.js +30 -8
- package/dist/cjs/exporter/xlsx/pivot-builder.d.ts.map +1 -1
- package/dist/cjs/exporter/xlsx/pivot-builder.js +206 -162
- package/dist/cjs/exporter/xlsx/style-builder.d.ts +8 -2
- package/dist/cjs/exporter/xlsx/style-builder.d.ts.map +1 -1
- package/dist/cjs/exporter/xlsx/style-builder.js +25 -0
- package/dist/cjs/exporter/xlsx/xlsx-export.d.ts +2 -2
- package/dist/cjs/exporter/xlsx/xlsx-export.d.ts.map +1 -1
- package/dist/cjs/exporter/xlsx/xlsx-export.js +884 -470
- package/dist/esm/autofilter-condition.d.ts +45 -1
- package/dist/esm/autofilter-condition.d.ts.map +1 -1
- package/dist/esm/autofilter-condition.js +131 -11
- package/dist/esm/excel-parser/helpers.d.ts +15 -1
- package/dist/esm/excel-parser/helpers.d.ts.map +1 -1
- package/dist/esm/excel-parser/helpers.js +94 -4
- package/dist/esm/excel-parser/interface.d.ts +3 -1
- package/dist/esm/excel-parser/interface.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/ods/index.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/ods/index.js +105 -22
- package/dist/esm/excel-parser/plugins/ods/styles.d.ts +15 -0
- package/dist/esm/excel-parser/plugins/ods/styles.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/ods/styles.js +79 -5
- package/dist/esm/excel-parser/plugins/xlsb/index.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/xlsb/index.js +15 -7
- package/dist/esm/excel-parser/plugins/xlsx/charts.d.ts +77 -1
- package/dist/esm/excel-parser/plugins/xlsx/charts.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/xlsx/charts.js +708 -16
- package/dist/esm/excel-parser/plugins/xlsx/drawing.d.ts +7 -1
- package/dist/esm/excel-parser/plugins/xlsx/drawing.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/xlsx/drawing.js +23 -0
- package/dist/esm/excel-parser/plugins/xlsx/form-controls.d.ts +24 -3
- package/dist/esm/excel-parser/plugins/xlsx/form-controls.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/xlsx/form-controls.js +21 -3
- package/dist/esm/excel-parser/plugins/xlsx/index.d.ts +24 -1
- package/dist/esm/excel-parser/plugins/xlsx/index.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/xlsx/index.js +192 -54
- package/dist/esm/excel-parser/plugins/xlsx/pivots.d.ts +8 -2
- package/dist/esm/excel-parser/plugins/xlsx/pivots.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/xlsx/pivots.js +220 -4
- package/dist/esm/excel-parser/plugins/xlsx/relationships.d.ts +6 -0
- package/dist/esm/excel-parser/plugins/xlsx/relationships.d.ts.map +1 -1
- package/dist/esm/excel-parser/plugins/xlsx/relationships.js +9 -0
- package/dist/esm/excel-parser/plugins/xlsx/theme.d.ts +1 -1
- package/dist/esm/excel-parser/types.d.ts +9 -1
- package/dist/esm/excel-parser/types.d.ts.map +1 -1
- package/dist/esm/excel-parser/workbook.d.ts +1 -0
- package/dist/esm/excel-parser/workbook.d.ts.map +1 -1
- package/dist/esm/excel-parser/workbook.js +4 -0
- package/dist/esm/excel-parser/worker.js +2 -0
- package/dist/esm/exporter/ods/ods-export.d.ts.map +1 -1
- package/dist/esm/exporter/ods/ods-export.js +238 -72
- package/dist/esm/exporter/xlsx/chart-builder.d.ts +7 -1
- package/dist/esm/exporter/xlsx/chart-builder.d.ts.map +1 -1
- package/dist/esm/exporter/xlsx/chart-builder.js +674 -58
- package/dist/esm/exporter/xlsx/form-controls-builder.d.ts +16 -3
- package/dist/esm/exporter/xlsx/form-controls-builder.d.ts.map +1 -1
- package/dist/esm/exporter/xlsx/form-controls-builder.js +29 -8
- package/dist/esm/exporter/xlsx/pivot-builder.d.ts.map +1 -1
- package/dist/esm/exporter/xlsx/pivot-builder.js +187 -139
- package/dist/esm/exporter/xlsx/style-builder.d.ts +8 -2
- package/dist/esm/exporter/xlsx/style-builder.d.ts.map +1 -1
- package/dist/esm/exporter/xlsx/style-builder.js +28 -0
- package/dist/esm/exporter/xlsx/xlsx-export.d.ts +2 -2
- package/dist/esm/exporter/xlsx/xlsx-export.d.ts.map +1 -1
- package/dist/esm/exporter/xlsx/xlsx-export.js +600 -206
- package/package.json +10 -5
|
@@ -1,9 +1,15 @@
|
|
|
1
|
-
import type { EmbeddedObject, EmbedImageSpec, EmbedShapeSpec } from "@rowsncolumns/spreadsheet";
|
|
1
|
+
import type { EmbeddedObject, EmbedImageSpec, EmbedShapeSpec, OverlayPlacement } from "@rowsncolumns/spreadsheet";
|
|
2
2
|
import { type XMLParser } from "fast-xml-parser";
|
|
3
3
|
import { type StreamingZipParser } from "../../zip-parser-streaming";
|
|
4
4
|
export type EmbeddedObjectWithPosition = EmbeddedObject & {
|
|
5
5
|
isInsideCell?: boolean;
|
|
6
6
|
};
|
|
7
|
+
/**
|
|
8
|
+
* A `twoCellAnchor`'s `editAs` → placement mode. Excel writes `oneCell` /
|
|
9
|
+
* `absolute` on a two-cell anchor for "Move but don't size" / "Don't move
|
|
10
|
+
* or size"; absent or `twoCell` is the default "Move and size with cells".
|
|
11
|
+
*/
|
|
12
|
+
export declare const anchorPlacementFromEditAs: (editAs: string | undefined) => OverlayPlacement;
|
|
7
13
|
/** `processAnchors` anchor-type tags, keyed by the drawing element name. */
|
|
8
14
|
declare const ANCHOR_KIND_BY_ELEMENT: {
|
|
9
15
|
readonly oneCellAnchor: "oneCellAnchor";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawing.d.ts","sourceRoot":"","sources":["../../../../../excel-parser/plugins/xlsx/drawing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,cAAc,EAEd,cAAc,EACd,cAAc,
|
|
1
|
+
{"version":3,"file":"drawing.d.ts","sourceRoot":"","sources":["../../../../../excel-parser/plugins/xlsx/drawing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,cAAc,EAEd,cAAc,EACd,cAAc,EAYd,gBAAgB,EACjB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGjD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAoDrE,MAAM,MAAM,0BAA0B,GAAG,cAAc,GAAG;IACxD,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,GACpC,QAAQ,MAAM,GAAG,SAAS,KACzB,gBAKkB,CAAC;AAEtB,4EAA4E;AAC5E,QAAA,MAAM,sBAAsB;;;;CAIlB,CAAC;AAEX,KAAK,iBAAiB,GAAG,MAAM,OAAO,sBAAsB,CAAC;AAK7D;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,GAAG,EACZ,UAAU,EAAE,MAAM,GACjB,KAAK,CAAC;IACP,IAAI,EAAE,CAAC,OAAO,sBAAsB,CAAC,CAAC,iBAAiB,CAAC,CAAC;IACzD,IAAI,EAAE,GAAG,CAAC;CACX,CAAC,CAkCD;AAED;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,GAAG,EACZ,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,kBAAkB,EAC7B,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,0BAA0B,EAAE,CAAC,CA2evC;AASD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,GAAG,GACX,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU,GAAG,cAAc,CAAC,CAuC3E;AA6OD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CASlD;AAED,wEAAwE;AACxE,wBAAgB,cAAc,CAAC,KAAK,EAAE,GAAG,GAAG,cAAc,CA8CzD;AA8MD;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CAC1C,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,EACvB,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,GACT,OAAO,CAqBT"}
|
|
@@ -42,6 +42,18 @@ var CELL_IMAGE_OFFSET_THRESHOLD_PX = 1;
|
|
|
42
42
|
function emuToPixels(emuValue) {
|
|
43
43
|
return Math.round(emuValue / EMU_PER_PIXEL);
|
|
44
44
|
}
|
|
45
|
+
/**
|
|
46
|
+
* A `twoCellAnchor`'s `editAs` → placement mode. Excel writes `oneCell` /
|
|
47
|
+
* `absolute` on a two-cell anchor for "Move but don't size" / "Don't move
|
|
48
|
+
* or size"; absent or `twoCell` is the default "Move and size with cells".
|
|
49
|
+
*/
|
|
50
|
+
export var anchorPlacementFromEditAs = function (editAs) {
|
|
51
|
+
return editAs === "oneCell"
|
|
52
|
+
? "moveOnly"
|
|
53
|
+
: editAs === "absolute"
|
|
54
|
+
? "absolute"
|
|
55
|
+
: "moveAndSize";
|
|
56
|
+
};
|
|
45
57
|
/** `processAnchors` anchor-type tags, keyed by the drawing element name. */
|
|
46
58
|
var ANCHOR_KIND_BY_ELEMENT = {
|
|
47
59
|
oneCellAnchor: "oneCellAnchor",
|
|
@@ -154,7 +166,7 @@ export function processAnchors(anchors, anchorType, drawingPath, sheetId, zipPar
|
|
|
154
166
|
return [2 /*return*/, images];
|
|
155
167
|
anchorArray = Array.isArray(anchors) ? anchors : [anchors];
|
|
156
168
|
_loop_1 = function (anchor) {
|
|
157
|
-
var isInsideCell, position, fromColBase0, fromRowBase0, toColBase0, toRowBase0, fromCol, fromRow, toCol, toRow, fromColOffEmu, fromRowOffEmu, toColOffEmu, toRowOffEmu, fromColOff, fromRowOff, toColOff, toRowOff, cxEmu, cyEmu, width, height, editAs, fromColBase0, fromRowBase0, fromCol, fromRow, fromColOffEmu, fromRowOffEmu, fromColOff, fromRowOff, cxEmu, cyEmu, width, height, fLocksWithSheet, posXEmu, posYEmu, posX, posY, cxEmu, cyEmu, width, height, picture, shape, shapeSpec, cxEmu, cyEmu, rotUnits, txBody, textBoxName, textBoxId, cxEmu, cyEmu, width, height, textBoxSpec, blipRId, imageName, imageId, imageTitle, drawingDir, drawingFilename, drawingRelsPath, drawingRelsContent, drawingRels, imageRelations, imageRel, imageTarget, imagePath, baseDir, imageData, imageExt, imageType;
|
|
169
|
+
var isInsideCell, position, fromColBase0, fromRowBase0, toColBase0, toRowBase0, fromCol, fromRow, toCol, toRow, fromColOffEmu, fromRowOffEmu, toColOffEmu, toRowOffEmu, fromColOff, fromRowOff, toColOff, toRowOff, cxEmu, cyEmu, width, height, editAs, placement, fromColBase0, fromRowBase0, fromCol, fromRow, fromColOffEmu, fromRowOffEmu, fromColOff, fromRowOff, cxEmu, cyEmu, width, height, fLocksWithSheet, posXEmu, posYEmu, posX, posY, cxEmu, cyEmu, width, height, picture, shape, shapeSpec, cxEmu, cyEmu, rotUnits, txBody, textBoxName, textBoxId, cxEmu, cyEmu, width, height, textBoxSpec, blipRId, imageName, imageId, imageTitle, drawingDir, drawingFilename, drawingRelsPath, drawingRelsContent, drawingRels, imageRelations, imageRel, imageTarget, imagePath, baseDir, imageData, imageExt, imageType;
|
|
158
170
|
return __generator(this, function (_d) {
|
|
159
171
|
switch (_d.label) {
|
|
160
172
|
case 0:
|
|
@@ -223,16 +235,17 @@ export function processAnchors(anchors, anchorType, drawingPath, sheetId, zipPar
|
|
|
223
235
|
height = emuToPixels(cyEmu);
|
|
224
236
|
editAs = get(anchor, "a$.editAs") || "";
|
|
225
237
|
isInsideCell = determineIfTwoCellInsideCell(editAs, fromColBase0, fromRowBase0, toColBase0, toRowBase0);
|
|
226
|
-
|
|
227
|
-
|
|
238
|
+
placement = anchorPlacementFromEditAs(editAs);
|
|
239
|
+
position = __assign(__assign({}, position), { overlayPosition: __assign({ anchorCell: {
|
|
228
240
|
rowIndex: fromRow,
|
|
229
241
|
columnIndex: fromCol,
|
|
230
|
-
},
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
242
|
+
}, heightPixels: height, widthPixels: width, offsetXPixels: fromColOff, offsetYPixels: fromRowOff }, (placement === "moveAndSize"
|
|
243
|
+
? {
|
|
244
|
+
toCell: { rowIndex: toRow, columnIndex: toCol },
|
|
245
|
+
toOffsetXPixels: toColOff,
|
|
246
|
+
toOffsetYPixels: toRowOff,
|
|
247
|
+
}
|
|
248
|
+
: { placement: placement })) });
|
|
236
249
|
}
|
|
237
250
|
else if (anchorType === "oneCellAnchor") {
|
|
238
251
|
fromColBase0 = parseInt(get(anchor, "xdr:from.xdr:col.t$") ||
|
|
@@ -276,6 +289,7 @@ export function processAnchors(anchors, anchorType, drawingPath, sheetId, zipPar
|
|
|
276
289
|
widthPixels: width,
|
|
277
290
|
offsetXPixels: fromColOff,
|
|
278
291
|
offsetYPixels: fromRowOff,
|
|
292
|
+
placement: "moveOnly",
|
|
279
293
|
} });
|
|
280
294
|
// position = {
|
|
281
295
|
// ...position,
|
|
@@ -322,6 +336,7 @@ export function processAnchors(anchors, anchorType, drawingPath, sheetId, zipPar
|
|
|
322
336
|
widthPixels: width,
|
|
323
337
|
offsetXPixels: posX,
|
|
324
338
|
offsetYPixels: posY,
|
|
339
|
+
placement: "absolute",
|
|
325
340
|
} });
|
|
326
341
|
}
|
|
327
342
|
picture = get(anchor, "xdr:pic") || get(anchor, "pic");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { EmbeddedObject } from "@rowsncolumns/spreadsheet";
|
|
1
|
+
import type { EmbeddedObject, OverlayPlacement } from "@rowsncolumns/spreadsheet";
|
|
2
2
|
export declare const CTRL_PROP_REL_TYPE = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/ctrlProp";
|
|
3
3
|
export declare const VML_DRAWING_REL_TYPE = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing";
|
|
4
4
|
type CellAnchor = {
|
|
@@ -7,13 +7,27 @@ type CellAnchor = {
|
|
|
7
7
|
row: number;
|
|
8
8
|
rowOff: number;
|
|
9
9
|
};
|
|
10
|
+
/** The `<anchor moveWithCells sizeWithCells>` flags of a control. */
|
|
11
|
+
export type ControlAnchorFlags = {
|
|
12
|
+
moveWithCells?: boolean;
|
|
13
|
+
sizeWithCells?: boolean;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Excel's Format Control → Properties → Object positioning, as the anchor
|
|
17
|
+
* flags spell it: both flags = Move and size with cells, `moveWithCells`
|
|
18
|
+
* alone = Move but don't size (Excel's default for a form control), neither
|
|
19
|
+
* = Don't move or size (#668 C-46).
|
|
20
|
+
*/
|
|
21
|
+
export declare const controlPlacementFromAnchorFlags: ({ moveWithCells, sizeWithCells, }: ControlAnchorFlags) => OverlayPlacement;
|
|
10
22
|
/**
|
|
11
23
|
* `<controlPr><anchor><from>…</from><to>…</to></anchor>` → the engine's
|
|
12
24
|
* pixel overlay position (1-based anchor cell, EMU offsets → px, size from
|
|
13
25
|
* the cell span at the grid defaults — the same approximation the drawing
|
|
14
|
-
* importer uses for `twoCellAnchor`s).
|
|
26
|
+
* importer uses for `twoCellAnchor`s). The anchor flags become the
|
|
27
|
+
* placement mode; a "Move and size" control keeps `to` as its second anchor
|
|
28
|
+
* like a `twoCellAnchor` picture.
|
|
15
29
|
*/
|
|
16
|
-
export declare const controlAnchorToOverlayPosition: (from: CellAnchor, to: CellAnchor | undefined) => {
|
|
30
|
+
export declare const controlAnchorToOverlayPosition: (from: CellAnchor, to: CellAnchor | undefined, flags?: ControlAnchorFlags) => {
|
|
17
31
|
anchorCell: {
|
|
18
32
|
rowIndex: number;
|
|
19
33
|
columnIndex: number;
|
|
@@ -22,6 +36,13 @@ export declare const controlAnchorToOverlayPosition: (from: CellAnchor, to: Cell
|
|
|
22
36
|
offsetYPixels?: number;
|
|
23
37
|
widthPixels?: number;
|
|
24
38
|
heightPixels?: number;
|
|
39
|
+
placement?: OverlayPlacement;
|
|
40
|
+
toCell?: {
|
|
41
|
+
rowIndex: number;
|
|
42
|
+
columnIndex: number;
|
|
43
|
+
};
|
|
44
|
+
toOffsetXPixels?: number;
|
|
45
|
+
toOffsetYPixels?: number;
|
|
25
46
|
};
|
|
26
47
|
/**
|
|
27
48
|
* Parse an `xl/ctrlProps/ctrlPropN.xml` part: `objectType`, every other
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-controls.d.ts","sourceRoot":"","sources":["../../../../../excel-parser/plugins/xlsx/form-controls.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,cAAc,
|
|
1
|
+
{"version":3,"file":"form-controls.d.ts","sourceRoot":"","sources":["../../../../../excel-parser/plugins/xlsx/form-controls.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,cAAc,EACd,gBAAgB,EACjB,MAAM,2BAA2B,CAAC;AAgBnC,eAAO,MAAM,kBAAkB,iFACiD,CAAC;AACjF,eAAO,MAAM,oBAAoB,mFACiD,CAAC;AA6CnF,KAAK,UAAU,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAe/E,qEAAqE;AACrE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,+BAA+B,GAAI,mCAG7C,kBAAkB,KAAG,gBACmD,CAAC;AAE5E;;;;;;;GAOG;AACH,eAAO,MAAM,8BAA8B,GACzC,MAAM,UAAU,EAChB,IAAI,UAAU,GAAG,SAAS,EAC1B,QAAO,kBAAuB;gBAKhB;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE;oBACrC,MAAM;oBACN,MAAM;kBACR,MAAM;mBACL,MAAM;gBACT,gBAAgB;aACnB;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE;sBAChC,MAAM;sBACN,MAAM;CAyB3B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAC7B,aAAa,GAAG,KACf;IACD,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB,GAAG,SAkBH,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,GAClC,KAAK,MAAM,GAAG,SAAS,KACtB,GAAG,CAAC,MAAM,EAAE,MAAM,CAwBpB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,EAAE,CAAC,EAAE,UAAU,CAAC;CACjB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAAI,UAAU,GAAG,KAAG,mBAAmB,EA+BxE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,GAAI,6CAKpC;IACD,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC,CAAC;IAC9D,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B,KAAG,cAAc,EA+BjB,CAAC;AAEF,wEAAwE;AACxE,eAAO,MAAM,sBAAsB,GAAI,UAAU,GAAG,KAAG,MAAM,GAAG,SAK/D,CAAC"}
|
|
@@ -93,13 +93,26 @@ var readCellAnchor = function (node) {
|
|
|
93
93
|
rowOff: numberOf(childByLocalName(node, "rowOff")),
|
|
94
94
|
};
|
|
95
95
|
};
|
|
96
|
+
/**
|
|
97
|
+
* Excel's Format Control → Properties → Object positioning, as the anchor
|
|
98
|
+
* flags spell it: both flags = Move and size with cells, `moveWithCells`
|
|
99
|
+
* alone = Move but don't size (Excel's default for a form control), neither
|
|
100
|
+
* = Don't move or size (#668 C-46).
|
|
101
|
+
*/
|
|
102
|
+
export var controlPlacementFromAnchorFlags = function (_a) {
|
|
103
|
+
var moveWithCells = _a.moveWithCells, sizeWithCells = _a.sizeWithCells;
|
|
104
|
+
return moveWithCells ? (sizeWithCells ? "moveAndSize" : "moveOnly") : "absolute";
|
|
105
|
+
};
|
|
96
106
|
/**
|
|
97
107
|
* `<controlPr><anchor><from>…</from><to>…</to></anchor>` → the engine's
|
|
98
108
|
* pixel overlay position (1-based anchor cell, EMU offsets → px, size from
|
|
99
109
|
* the cell span at the grid defaults — the same approximation the drawing
|
|
100
|
-
* importer uses for `twoCellAnchor`s).
|
|
110
|
+
* importer uses for `twoCellAnchor`s). The anchor flags become the
|
|
111
|
+
* placement mode; a "Move and size" control keeps `to` as its second anchor
|
|
112
|
+
* like a `twoCellAnchor` picture.
|
|
101
113
|
*/
|
|
102
|
-
export var controlAnchorToOverlayPosition = function (from, to) {
|
|
114
|
+
export var controlAnchorToOverlayPosition = function (from, to, flags) {
|
|
115
|
+
if (flags === void 0) { flags = {}; }
|
|
103
116
|
var offsetXPixels = Math.round(from.colOff / EMU_PER_PIXEL);
|
|
104
117
|
var offsetYPixels = Math.round(from.rowOff / EMU_PER_PIXEL);
|
|
105
118
|
var overlay = {
|
|
@@ -119,6 +132,15 @@ export var controlAnchorToOverlayPosition = function (from, to) {
|
|
|
119
132
|
if (height > 0)
|
|
120
133
|
overlay.heightPixels = Math.round(height);
|
|
121
134
|
}
|
|
135
|
+
var placement = controlPlacementFromAnchorFlags(flags);
|
|
136
|
+
if (placement === "moveAndSize" && to) {
|
|
137
|
+
overlay.toCell = { rowIndex: to.row + 1, columnIndex: to.col + 1 };
|
|
138
|
+
overlay.toOffsetXPixels = Math.round(to.colOff / EMU_PER_PIXEL);
|
|
139
|
+
overlay.toOffsetYPixels = Math.round(to.rowOff / EMU_PER_PIXEL);
|
|
140
|
+
}
|
|
141
|
+
else {
|
|
142
|
+
overlay.placement = placement;
|
|
143
|
+
}
|
|
122
144
|
return overlay;
|
|
123
145
|
};
|
|
124
146
|
/**
|
|
@@ -279,7 +301,7 @@ export var buildFormControlEmbeds = function (_a) {
|
|
|
279
301
|
spec: spec,
|
|
280
302
|
position: {
|
|
281
303
|
sheetId: sheetId,
|
|
282
|
-
overlayPosition: controlAnchorToOverlayPosition(control.from, control.to),
|
|
304
|
+
overlayPosition: controlAnchorToOverlayPosition(control.from, control.to, control),
|
|
283
305
|
},
|
|
284
306
|
});
|
|
285
307
|
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CellFormat, ConditionalFormatRule, DataValidationRuleRecord, EmbeddedChart, EmbeddedObject, NamedRange, ProtectedRange, Sheet, Slicer, SpreadsheetTheme, TableView } from "@rowsncolumns/spreadsheet";
|
|
1
|
+
import type { CellFormat, ConditionalFormatRule, DataValidationRuleRecord, EmbeddedChart, EmbeddedObject, NamedRange, ProtectedRange, Sheet, Slicer, SpreadsheetTheme, TableView, CustomTableStyle } from "@rowsncolumns/spreadsheet";
|
|
2
2
|
import type { NamedCellStyle, CommentThread, TextFormat, TextFormatRun } from "@rowsncolumns/common-types";
|
|
3
3
|
import { XMLParser } from "fast-xml-parser";
|
|
4
4
|
import type { IWorkbookPlugin } from "../../interface";
|
|
@@ -133,6 +133,12 @@ export declare class XlsxPlugin extends BaseWorkbookPlugin implements IWorkbookP
|
|
|
133
133
|
* relevant elements. Absent entry ⇒ unknown ⇒ extractors parse as before.
|
|
134
134
|
*/
|
|
135
135
|
private sheetFeatures;
|
|
136
|
+
/**
|
|
137
|
+
* Pivot tables are parsed once: `getCharts()` needs them to bind
|
|
138
|
+
* PivotCharts before `getPivotTables()` runs, and both must see the
|
|
139
|
+
* same generated `pivotId`s.
|
|
140
|
+
*/
|
|
141
|
+
private pivotTablesPromise?;
|
|
136
142
|
/**
|
|
137
143
|
* Single-entry memo for `getSheetData`: consecutive extractor calls for
|
|
138
144
|
* the same sheet reuse one parsed DOM instead of re-decompressing and
|
|
@@ -140,6 +146,11 @@ export declare class XlsxPlugin extends BaseWorkbookPlugin implements IWorkbookP
|
|
|
140
146
|
* multi-sheet workbook never retains more than one worksheet DOM.
|
|
141
147
|
*/
|
|
142
148
|
private lastSheetDataCache;
|
|
149
|
+
/**
|
|
150
|
+
* Per-rid memo of a chartsheet's parsed chart, so `Sheet.chartId` (set by
|
|
151
|
+
* `getSheets()`) and `getCharts()` see the same generated chart id.
|
|
152
|
+
*/
|
|
153
|
+
private chartsheetChartsCache;
|
|
143
154
|
/** workbook.xml sheet elements indexed by sheetId (sheet-scoped API). */
|
|
144
155
|
private worksheetBySheetId;
|
|
145
156
|
/**
|
|
@@ -211,6 +222,12 @@ export declare class XlsxPlugin extends BaseWorkbookPlugin implements IWorkbookP
|
|
|
211
222
|
private resolveSheetPath;
|
|
212
223
|
private resolveRelationshipTarget;
|
|
213
224
|
private getSheetPathByRid;
|
|
225
|
+
/**
|
|
226
|
+
* A chartsheet (`xl/chartsheets/sheetN.xml`) is listed in `<sheets>` like a
|
|
227
|
+
* worksheet; only its workbook relationship type tells it apart.
|
|
228
|
+
*/
|
|
229
|
+
private isChartsheet;
|
|
230
|
+
private getChartsheetCharts;
|
|
214
231
|
private streamSheetRows;
|
|
215
232
|
private extractCommentText;
|
|
216
233
|
getCommentsForSheet(rId: string): Promise<Record<string, string>>;
|
|
@@ -254,6 +271,11 @@ export declare class XlsxPlugin extends BaseWorkbookPlugin implements IWorkbookP
|
|
|
254
271
|
getTheme(): SpreadsheetTheme;
|
|
255
272
|
/** `<cellStyles>` resolved to cell formats (toolbar "Workbook styles" gallery). */
|
|
256
273
|
getNamedCellStyles(): NamedCellStyle[];
|
|
274
|
+
/**
|
|
275
|
+
* The workbook's custom `<tableStyle>`s with their per-element dxf fills resolved into banding —
|
|
276
|
+
* the `customTableStyles` document facet (table style gallery + re-export), #668 T-103.
|
|
277
|
+
*/
|
|
278
|
+
getCustomTableStyles(): CustomTableStyle[];
|
|
257
279
|
/**
|
|
258
280
|
* The workbook default font — styles.xml fonts[0], the font every cell
|
|
259
281
|
* without an explicit font inherits. Exporters pass this through so the
|
|
@@ -310,6 +332,7 @@ export declare class XlsxPlugin extends BaseWorkbookPlugin implements IWorkbookP
|
|
|
310
332
|
* suitable for `onChangePivotTables`.
|
|
311
333
|
*/
|
|
312
334
|
getPivotTables(): Promise<import("@rowsncolumns/spreadsheet").PivotTable[]>;
|
|
335
|
+
private parsePivotTables;
|
|
313
336
|
/**
|
|
314
337
|
* Power Query preservation — read the workbook's Get & Transform machinery verbatim so the
|
|
315
338
|
* exporter can re-emit it and a round-tripped file keeps its queries: the DataMashup
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../excel-parser/plugins/xlsx/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,UAAU,EAEV,qBAAqB,EACrB,wBAAwB,EAExB,aAAa,EACb,cAAc,EAGd,UAAU,EAMV,cAAc,EACd,KAAK,EAEL,MAAM,EACN,gBAAgB,EAEhB,SAAS,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../excel-parser/plugins/xlsx/index.ts"],"names":[],"mappings":"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"}
|