@ricsam/formula-engine 0.2.11 → 0.2.13
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/core/autofill-utils.cjs +68 -2
- package/dist/cjs/core/autofill-utils.cjs.map +3 -3
- package/dist/cjs/core/engine-snapshot.cjs +2 -2
- package/dist/cjs/core/engine-snapshot.cjs.map +3 -3
- package/dist/cjs/core/engine.cjs +47 -3
- package/dist/cjs/core/engine.cjs.map +3 -3
- package/dist/cjs/core/managers/copy-manager.cjs +163 -14
- package/dist/cjs/core/managers/copy-manager.cjs.map +3 -3
- package/dist/cjs/core/managers/range-metadata-manager.cjs +135 -0
- package/dist/cjs/core/managers/range-metadata-manager.cjs.map +10 -0
- package/dist/cjs/core/managers/style-manager.cjs +19 -14
- package/dist/cjs/core/managers/style-manager.cjs.map +3 -3
- package/dist/cjs/core/types.cjs.map +1 -1
- package/dist/cjs/package.json +1 -1
- package/dist/mjs/core/autofill-utils.mjs +68 -2
- package/dist/mjs/core/autofill-utils.mjs.map +3 -3
- package/dist/mjs/core/engine-snapshot.mjs +2 -2
- package/dist/mjs/core/engine-snapshot.mjs.map +3 -3
- package/dist/mjs/core/engine.mjs +47 -3
- package/dist/mjs/core/engine.mjs.map +3 -3
- package/dist/mjs/core/managers/copy-manager.mjs +163 -14
- package/dist/mjs/core/managers/copy-manager.mjs.map +3 -3
- package/dist/mjs/core/managers/range-metadata-manager.mjs +95 -0
- package/dist/mjs/core/managers/range-metadata-manager.mjs.map +10 -0
- package/dist/mjs/core/managers/style-manager.mjs +19 -14
- package/dist/mjs/core/managers/style-manager.mjs.map +3 -3
- package/dist/mjs/core/types.mjs.map +1 -1
- package/dist/mjs/package.json +1 -1
- package/dist/types/core/autofill-utils.d.ts +7 -1
- package/dist/types/core/engine-snapshot.d.ts +4 -2
- package/dist/types/core/engine.d.ts +32 -1
- package/dist/types/core/managers/copy-manager.d.ts +11 -1
- package/dist/types/core/managers/range-metadata-manager.d.ts +22 -0
- package/dist/types/core/managers/style-manager.d.ts +4 -3
- package/dist/types/core/types.d.ts +26 -6
- package/package.json +1 -1
|
@@ -70,9 +70,10 @@ export declare class StyleManager {
|
|
|
70
70
|
*/
|
|
71
71
|
removeSheetStyles(workbookName: string, sheetName: string): void;
|
|
72
72
|
/**
|
|
73
|
-
* Get the style for a specific cell
|
|
74
|
-
*
|
|
75
|
-
*
|
|
73
|
+
* Get the style for a specific cell.
|
|
74
|
+
* Direct cell styles compose in insertion order, with later styles overriding
|
|
75
|
+
* earlier styles for the same properties. Conditional styles then layer over
|
|
76
|
+
* direct styles for the properties they define.
|
|
76
77
|
*/
|
|
77
78
|
getCellStyle(cellAddress: CellAddress): CellStyle | undefined;
|
|
78
79
|
/**
|
|
@@ -371,14 +371,33 @@ export interface DirectCellStyle {
|
|
|
371
371
|
areas: RangeAddress[];
|
|
372
372
|
style: CellStyle;
|
|
373
373
|
}
|
|
374
|
+
export interface RangeMetadata<TMetadata = unknown> {
|
|
375
|
+
id: string;
|
|
376
|
+
areas: RangeAddress[];
|
|
377
|
+
metadata: TMetadata;
|
|
378
|
+
}
|
|
379
|
+
export interface RangeMetadataInput<TMetadata = unknown> {
|
|
380
|
+
id?: string;
|
|
381
|
+
areas: RangeAddress[];
|
|
382
|
+
metadata: TMetadata;
|
|
383
|
+
}
|
|
374
384
|
export interface CellStyle {
|
|
375
385
|
backgroundColor?: string;
|
|
376
386
|
color?: string;
|
|
387
|
+
borderColor?: string;
|
|
388
|
+
borderSides?: {
|
|
389
|
+
top?: boolean;
|
|
390
|
+
right?: boolean;
|
|
391
|
+
bottom?: boolean;
|
|
392
|
+
left?: boolean;
|
|
393
|
+
};
|
|
377
394
|
fontSize?: number;
|
|
378
395
|
bold?: boolean;
|
|
379
396
|
italic?: boolean;
|
|
380
397
|
underline?: boolean;
|
|
398
|
+
wrapText?: boolean;
|
|
381
399
|
}
|
|
400
|
+
export type CopyCellsIncludePart = "content" | "style" | "cellMetadata" | "rangeMetadata";
|
|
382
401
|
export interface CopyCellsOptions {
|
|
383
402
|
/**
|
|
384
403
|
* Whether this is a cut operation (clears source cells after copying)
|
|
@@ -387,18 +406,19 @@ export interface CopyCellsOptions {
|
|
|
387
406
|
cut?: boolean;
|
|
388
407
|
/**
|
|
389
408
|
* What to include in the copy operation.
|
|
390
|
-
* - Use 'all' as shorthand for ['content', 'style', '
|
|
409
|
+
* - Use 'all' as shorthand for ['content', 'style', 'cellMetadata', 'rangeMetadata']
|
|
391
410
|
* - Use array for fine-grained control over what to copy:
|
|
392
411
|
* - ['content'] - copy only values/formulas
|
|
393
412
|
* - ['style'] - copy only formatting
|
|
394
|
-
* - ['
|
|
413
|
+
* - ['cellMetadata'] - copy only cell metadata (rich text, links, etc.)
|
|
414
|
+
* - ['rangeMetadata'] - copy only range metadata
|
|
395
415
|
* - ['content', 'style'] - copy content and formatting
|
|
396
|
-
* - ['content', '
|
|
397
|
-
* - ['style', '
|
|
398
|
-
* - ['content', 'style', '
|
|
416
|
+
* - ['content', 'cellMetadata'] - copy content and cell metadata
|
|
417
|
+
* - ['style', 'rangeMetadata'] - copy formatting and range metadata
|
|
418
|
+
* - ['content', 'style', 'cellMetadata', 'rangeMetadata'] - same as 'all'
|
|
399
419
|
* @default 'all'
|
|
400
420
|
*/
|
|
401
|
-
include?: "all" |
|
|
421
|
+
include?: "all" | CopyCellsIncludePart[];
|
|
402
422
|
/**
|
|
403
423
|
* The type of the content to copy
|
|
404
424
|
* value: Copy the value from the source to the target,
|