@rowsncolumns/spreadsheet 10.3.1 → 10.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/api/banded-ranges.d.ts.map +1 -1
- package/dist/cjs/api/banded-ranges.js +40 -14
- package/dist/cjs/api/calculated-column-fill.d.ts +43 -0
- package/dist/cjs/api/calculated-column-fill.d.ts.map +1 -0
- package/dist/cjs/api/calculated-column-fill.js +16 -0
- package/dist/cjs/api/chart-sheet.d.ts +8 -0
- package/dist/cjs/api/chart-sheet.d.ts.map +1 -0
- package/dist/cjs/api/chart-sheet.js +20 -0
- package/dist/cjs/api/chart-source-ranges.d.ts +64 -0
- package/dist/cjs/api/chart-source-ranges.d.ts.map +1 -0
- package/dist/cjs/api/chart-source-ranges.js +175 -0
- package/dist/cjs/api/selections.d.ts +3 -3
- package/dist/cjs/api/selections.d.ts.map +1 -1
- package/dist/cjs/api/selections.js +28 -2
- package/dist/cjs/api/spreadsheet-api.d.ts +16 -3
- package/dist/cjs/api/spreadsheet-api.d.ts.map +1 -1
- package/dist/cjs/api/spreadsheet-api.js +22 -2
- package/dist/cjs/api/table-auto-expansion.d.ts +37 -0
- package/dist/cjs/api/table-auto-expansion.d.ts.map +1 -0
- package/dist/cjs/api/table-auto-expansion.js +16 -0
- package/dist/cjs/api/table.d.ts +49 -1
- package/dist/cjs/api/table.d.ts.map +1 -1
- package/dist/cjs/api/table.js +145 -1
- package/dist/cjs/api/validation.d.ts +26 -1
- package/dist/cjs/api/validation.d.ts.map +1 -1
- package/dist/cjs/api/validation.js +127 -9
- package/dist/cjs/atoms/calculated-column-fill.atom.d.ts +15 -0
- package/dist/cjs/atoms/calculated-column-fill.atom.d.ts.map +1 -0
- package/dist/cjs/atoms/calculated-column-fill.atom.js +18 -0
- package/dist/cjs/atoms/chart-actions.atom.d.ts +40 -0
- package/dist/cjs/atoms/chart-actions.atom.d.ts.map +1 -0
- package/dist/cjs/atoms/chart-actions.atom.js +66 -0
- package/dist/cjs/atoms/index.d.ts +5 -0
- package/dist/cjs/atoms/index.d.ts.map +1 -1
- package/dist/cjs/atoms/index.js +5 -0
- package/dist/cjs/atoms/move-chart-dialog.atom.d.ts +28 -0
- package/dist/cjs/atoms/move-chart-dialog.atom.d.ts.map +1 -0
- package/dist/cjs/atoms/move-chart-dialog.atom.js +34 -0
- package/dist/cjs/atoms/selected-chart-embed.atom.d.ts +9 -1
- package/dist/cjs/atoms/selected-chart-embed.atom.d.ts.map +1 -1
- package/dist/cjs/atoms/selected-chart-embed.atom.js +18 -1
- package/dist/cjs/atoms/selected-chart-series.atom.d.ts +24 -0
- package/dist/cjs/atoms/selected-chart-series.atom.d.ts.map +1 -0
- package/dist/cjs/atoms/selected-chart-series.atom.js +11 -0
- package/dist/cjs/atoms/sheet-context.atom.d.ts +2 -0
- package/dist/cjs/atoms/sheet-context.atom.d.ts.map +1 -1
- package/dist/cjs/atoms/sheet-context.atom.js +5 -2
- package/dist/cjs/atoms/sparkline-dialog.atom.d.ts +34 -0
- package/dist/cjs/atoms/sparkline-dialog.atom.d.ts.map +1 -0
- package/dist/cjs/atoms/sparkline-dialog.atom.js +30 -0
- package/dist/cjs/atoms/table-auto-expansion.atom.d.ts +14 -0
- package/dist/cjs/atoms/table-auto-expansion.atom.d.ts.map +1 -0
- package/dist/cjs/atoms/table-auto-expansion.atom.js +17 -0
- package/dist/cjs/components/calculated-column-smart-tag/index.d.ts +25 -0
- package/dist/cjs/components/calculated-column-smart-tag/index.d.ts.map +1 -0
- package/dist/cjs/components/calculated-column-smart-tag/index.js +31 -0
- package/dist/cjs/components/canvas-grid/index.d.ts.map +1 -1
- package/dist/cjs/components/canvas-grid/index.js +393 -72
- package/dist/cjs/components/canvas-grid/typings.d.ts +127 -14
- package/dist/cjs/components/canvas-grid/typings.d.ts.map +1 -1
- package/dist/cjs/components/cell/index.d.ts.map +1 -1
- package/dist/cjs/components/cell/index.js +3 -3
- package/dist/cjs/components/cell/typings.d.ts +13 -0
- package/dist/cjs/components/cell/typings.d.ts.map +1 -1
- package/dist/cjs/components/cell-filter/index.d.ts.map +1 -1
- package/dist/cjs/components/cell-filter/index.js +13 -2
- package/dist/cjs/components/cell-input/formula-bar-cell-input.d.ts.map +1 -1
- package/dist/cjs/components/cell-input/formula-bar-cell-input.js +4 -1
- package/dist/cjs/components/cell-structured/sparkline-math.d.ts +28 -5
- package/dist/cjs/components/cell-structured/sparkline-math.d.ts.map +1 -1
- package/dist/cjs/components/cell-structured/sparkline-math.js +93 -5
- package/dist/cjs/components/cell-structured/sparkline.d.ts +1 -1
- package/dist/cjs/components/cell-structured/sparkline.d.ts.map +1 -1
- package/dist/cjs/components/cell-structured/sparkline.js +3 -3
- package/dist/cjs/components/cell-structured/types.d.ts +1 -1
- package/dist/cjs/components/cell-structured/types.d.ts.map +1 -1
- package/dist/cjs/components/chart-sheet-view/index.d.ts +27 -0
- package/dist/cjs/components/chart-sheet-view/index.d.ts.map +1 -0
- package/dist/cjs/components/chart-sheet-view/index.js +35 -0
- package/dist/cjs/components/context-menu/embed-context-menu.d.ts +48 -0
- package/dist/cjs/components/context-menu/embed-context-menu.d.ts.map +1 -0
- package/dist/cjs/components/context-menu/embed-context-menu.js +123 -0
- package/dist/cjs/components/context-menu/index.d.ts +23 -2
- package/dist/cjs/components/context-menu/index.d.ts.map +1 -1
- package/dist/cjs/components/context-menu/index.js +217 -39
- package/dist/cjs/components/context-menu/total-row-function-menu.d.ts +33 -0
- package/dist/cjs/components/context-menu/total-row-function-menu.d.ts.map +1 -0
- package/dist/cjs/components/context-menu/total-row-function-menu.js +58 -0
- package/dist/cjs/components/context-menu/total-row-functions.d.ts +12 -12
- package/dist/cjs/components/context-menu/total-row-functions.d.ts.map +1 -1
- package/dist/cjs/components/context-menu/total-row-functions.js +39 -39
- package/dist/cjs/components/embeds/chart-component.d.ts +17 -0
- package/dist/cjs/components/embeds/chart-component.d.ts.map +1 -1
- package/dist/cjs/components/embeds/embed-draggable.d.ts +61 -4
- package/dist/cjs/components/embeds/embed-draggable.d.ts.map +1 -1
- package/dist/cjs/components/embeds/embed-draggable.js +214 -39
- package/dist/cjs/components/filter-box/date-tree.d.ts +28 -0
- package/dist/cjs/components/filter-box/date-tree.d.ts.map +1 -0
- package/dist/cjs/components/filter-box/date-tree.js +147 -0
- package/dist/cjs/components/filter-box/filter-by-condition.d.ts +14 -2
- package/dist/cjs/components/filter-box/filter-by-condition.d.ts.map +1 -1
- package/dist/cjs/components/filter-box/filter-by-condition.js +95 -19
- package/dist/cjs/components/filter-box/filter-by-value.d.ts.map +1 -1
- package/dist/cjs/components/filter-box/filter-by-value.js +126 -40
- package/dist/cjs/components/filter-box/index.d.ts +7 -1
- package/dist/cjs/components/filter-box/index.d.ts.map +1 -1
- package/dist/cjs/components/filter-box/index.js +102 -11
- package/dist/cjs/components/move-chart-dialog/index.d.ts +34 -0
- package/dist/cjs/components/move-chart-dialog/index.d.ts.map +1 -0
- package/dist/cjs/components/move-chart-dialog/index.js +96 -0
- package/dist/cjs/components/print-preview/page-block.d.ts +9 -1
- package/dist/cjs/components/print-preview/page-block.d.ts.map +1 -1
- package/dist/cjs/components/print-preview/page-block.js +28 -2
- package/dist/cjs/components/print-preview/print-preview-dialog.d.ts +8 -1
- package/dist/cjs/components/print-preview/print-preview-dialog.d.ts.map +1 -1
- package/dist/cjs/components/print-preview/print-preview-dialog.js +144 -3
- package/dist/cjs/components/print-preview/run-print.d.ts.map +1 -1
- package/dist/cjs/components/print-preview/run-print.js +19 -7
- package/dist/cjs/components/print-preview/use-page-layout.d.ts +47 -0
- package/dist/cjs/components/print-preview/use-page-layout.d.ts.map +1 -1
- package/dist/cjs/components/print-preview/use-page-layout.js +81 -7
- package/dist/cjs/components/selection/index.d.ts +1 -1
- package/dist/cjs/components/selection/index.d.ts.map +1 -1
- package/dist/cjs/components/selection/index.js +6 -2
- package/dist/cjs/components/selection/types.d.ts +15 -0
- package/dist/cjs/components/selection/types.d.ts.map +1 -1
- package/dist/cjs/components/sheet-tabs/index.d.ts.map +1 -1
- package/dist/cjs/components/sheet-tabs/index.js +2 -2
- package/dist/cjs/components/sheet-tabs/sheet-tab.d.ts +1 -1
- package/dist/cjs/components/sheet-tabs/sheet-tab.d.ts.map +1 -1
- package/dist/cjs/components/sheet-tabs/sheet-tab.js +3 -1
- package/dist/cjs/components/sparkline-dialog/index.d.ts +43 -0
- package/dist/cjs/components/sparkline-dialog/index.d.ts.map +1 -0
- package/dist/cjs/components/sparkline-dialog/index.js +127 -0
- package/dist/cjs/components/subtotal-dialog/index.d.ts.map +1 -1
- package/dist/cjs/components/subtotal-dialog/index.js +10 -1
- package/dist/cjs/components/table-auto-expansion-smart-tag/index.d.ts +24 -0
- package/dist/cjs/components/table-auto-expansion-smart-tag/index.d.ts.map +1 -0
- package/dist/cjs/components/table-auto-expansion-smart-tag/index.js +31 -0
- package/dist/cjs/components/toolbar/index.d.ts +1 -0
- package/dist/cjs/components/toolbar/index.d.ts.map +1 -1
- package/dist/cjs/components/toolbar/index.js +1 -0
- package/dist/cjs/components/toolbar/insert-menu.d.ts +2 -1
- package/dist/cjs/components/toolbar/insert-menu.d.ts.map +1 -1
- package/dist/cjs/components/toolbar/insert-menu.js +24 -1
- package/dist/cjs/components/toolbar/merge-cells-selector.d.ts +4 -1
- package/dist/cjs/components/toolbar/merge-cells-selector.d.ts.map +1 -1
- package/dist/cjs/components/toolbar/merge-cells-selector.js +11 -5
- package/dist/cjs/components/toolbar/sparkline-actions.d.ts +31 -0
- package/dist/cjs/components/toolbar/sparkline-actions.d.ts.map +1 -0
- package/dist/cjs/components/toolbar/sparkline-actions.js +273 -0
- package/dist/cjs/components/toolbar/table-actions.d.ts +9 -1
- package/dist/cjs/components/toolbar/table-actions.d.ts.map +1 -1
- package/dist/cjs/components/toolbar/table-actions.js +17 -7
- package/dist/cjs/components/toolbar/table-style-selector.d.ts +38 -2
- package/dist/cjs/components/toolbar/table-style-selector.d.ts.map +1 -1
- package/dist/cjs/components/toolbar/table-style-selector.js +241 -389
- package/dist/cjs/config.d.ts +2 -0
- package/dist/cjs/config.d.ts.map +1 -1
- package/dist/cjs/config.js +31 -1
- package/dist/cjs/helpers.d.ts +1 -1
- package/dist/cjs/helpers.d.ts.map +1 -1
- package/dist/cjs/helpers.js +13 -2
- package/dist/cjs/hooks/use-cell-renderer.d.ts +16 -1
- package/dist/cjs/hooks/use-cell-renderer.d.ts.map +1 -1
- package/dist/cjs/hooks/use-cell-renderer.js +20 -8
- package/dist/cjs/hooks/use-chart-clipboard.d.ts +55 -0
- package/dist/cjs/hooks/use-chart-clipboard.d.ts.map +1 -0
- package/dist/cjs/hooks/use-chart-clipboard.js +231 -0
- package/dist/cjs/hooks/use-chart-source-ranges.d.ts +27 -0
- package/dist/cjs/hooks/use-chart-source-ranges.d.ts.map +1 -0
- package/dist/cjs/hooks/use-chart-source-ranges.js +211 -0
- package/dist/cjs/hooks/use-context-setter.d.ts.map +1 -1
- package/dist/cjs/hooks/use-context-setter.js +3 -1
- package/dist/cjs/hooks/use-editable.d.ts +9 -1
- package/dist/cjs/hooks/use-editable.d.ts.map +1 -1
- package/dist/cjs/hooks/use-editable.js +25 -1
- package/dist/cjs/hooks/use-embeds-charts.d.ts +64 -4
- package/dist/cjs/hooks/use-embeds-charts.d.ts.map +1 -1
- package/dist/cjs/hooks/use-embeds-charts.js +412 -41
- package/dist/cjs/hooks/use-grid-children.d.ts +2 -2
- package/dist/cjs/hooks/use-grid-children.d.ts.map +1 -1
- package/dist/cjs/hooks/use-grid-children.js +12 -6
- package/dist/cjs/hooks/use-isomorphic-layout-effect.d.ts +2 -2
- package/dist/cjs/hooks/use-isomorphic-layout-effect.d.ts.map +1 -1
- package/dist/cjs/hooks/use-keyboard-handler.d.ts +2 -1
- package/dist/cjs/hooks/use-keyboard-handler.d.ts.map +1 -1
- package/dist/cjs/hooks/use-keyboard-handler.js +8 -2
- package/dist/cjs/hooks/use-reveal-chart-embed.d.ts +17 -0
- package/dist/cjs/hooks/use-reveal-chart-embed.d.ts.map +1 -0
- package/dist/cjs/hooks/use-reveal-chart-embed.js +40 -0
- package/dist/cjs/hooks/use-selection-renderer.d.ts +13 -1
- package/dist/cjs/hooks/use-selection-renderer.d.ts.map +1 -1
- package/dist/cjs/hooks/use-selection-renderer.js +37 -7
- package/dist/cjs/hooks/use-selection.d.ts +9 -1
- package/dist/cjs/hooks/use-selection.d.ts.map +1 -1
- package/dist/cjs/hooks/use-selection.js +118 -30
- package/dist/cjs/hooks/use-structured-reference-selection.d.ts +1 -1
- package/dist/cjs/hooks/use-structured-reference-selection.d.ts.map +1 -1
- package/dist/cjs/hooks/use-structured-reference-selection.js +10 -0
- package/dist/cjs/hooks/use-table-hit-zones.d.ts +61 -0
- package/dist/cjs/hooks/use-table-hit-zones.d.ts.map +1 -0
- package/dist/cjs/hooks/use-table-hit-zones.js +157 -0
- package/dist/cjs/hooks/use-table-resizer.d.ts +7 -0
- package/dist/cjs/hooks/use-table-resizer.d.ts.map +1 -1
- package/dist/cjs/hooks/use-table-resizer.js +22 -10
- package/dist/cjs/index.d.ts +13 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +17 -1
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/cjs/types.d.ts +289 -4
- package/dist/cjs/types.d.ts.map +1 -1
- package/dist/cjs/utils/copy-as-picture.d.ts +13 -0
- package/dist/cjs/utils/copy-as-picture.d.ts.map +1 -0
- package/dist/cjs/utils/copy-as-picture.js +70 -0
- package/dist/cjs/utils/pivot-chart-field-buttons.d.ts +19 -0
- package/dist/cjs/utils/pivot-chart-field-buttons.d.ts.map +1 -0
- package/dist/cjs/utils/pivot-chart-field-buttons.js +25 -0
- package/dist/cjs/utils/z-order.d.ts +47 -0
- package/dist/cjs/utils/z-order.d.ts.map +1 -0
- package/dist/cjs/utils/z-order.js +124 -0
- package/dist/esm/api/banded-ranges.d.ts.map +1 -1
- package/dist/esm/api/banded-ranges.js +39 -12
- package/dist/esm/api/calculated-column-fill.d.ts +43 -0
- package/dist/esm/api/calculated-column-fill.d.ts.map +1 -0
- package/dist/esm/api/calculated-column-fill.js +10 -0
- package/dist/esm/api/chart-sheet.d.ts +8 -0
- package/dist/esm/api/chart-sheet.d.ts.map +1 -0
- package/dist/esm/api/chart-sheet.js +15 -0
- package/dist/esm/api/chart-source-ranges.d.ts +64 -0
- package/dist/esm/api/chart-source-ranges.d.ts.map +1 -0
- package/dist/esm/api/chart-source-ranges.js +168 -0
- package/dist/esm/api/selections.d.ts +3 -3
- package/dist/esm/api/selections.d.ts.map +1 -1
- package/dist/esm/api/selections.js +26 -2
- package/dist/esm/api/spreadsheet-api.d.ts +16 -3
- package/dist/esm/api/spreadsheet-api.d.ts.map +1 -1
- package/dist/esm/api/spreadsheet-api.js +18 -2
- package/dist/esm/api/table-auto-expansion.d.ts +37 -0
- package/dist/esm/api/table-auto-expansion.d.ts.map +1 -0
- package/dist/esm/api/table-auto-expansion.js +10 -0
- package/dist/esm/api/table.d.ts +49 -1
- package/dist/esm/api/table.d.ts.map +1 -1
- package/dist/esm/api/table.js +138 -1
- package/dist/esm/api/validation.d.ts +26 -1
- package/dist/esm/api/validation.d.ts.map +1 -1
- package/dist/esm/api/validation.js +119 -9
- package/dist/esm/atoms/calculated-column-fill.atom.d.ts +15 -0
- package/dist/esm/atoms/calculated-column-fill.atom.d.ts.map +1 -0
- package/dist/esm/atoms/calculated-column-fill.atom.js +12 -0
- package/dist/esm/atoms/chart-actions.atom.d.ts +40 -0
- package/dist/esm/atoms/chart-actions.atom.d.ts.map +1 -0
- package/dist/esm/atoms/chart-actions.atom.js +58 -0
- package/dist/esm/atoms/index.d.ts +5 -0
- package/dist/esm/atoms/index.d.ts.map +1 -1
- package/dist/esm/atoms/index.js +5 -0
- package/dist/esm/atoms/move-chart-dialog.atom.d.ts +28 -0
- package/dist/esm/atoms/move-chart-dialog.atom.d.ts.map +1 -0
- package/dist/esm/atoms/move-chart-dialog.atom.js +25 -0
- package/dist/esm/atoms/selected-chart-embed.atom.d.ts +9 -1
- package/dist/esm/atoms/selected-chart-embed.atom.d.ts.map +1 -1
- package/dist/esm/atoms/selected-chart-embed.atom.js +19 -2
- package/dist/esm/atoms/selected-chart-series.atom.d.ts +24 -0
- package/dist/esm/atoms/selected-chart-series.atom.d.ts.map +1 -0
- package/dist/esm/atoms/selected-chart-series.atom.js +4 -0
- package/dist/esm/atoms/sheet-context.atom.d.ts +2 -0
- package/dist/esm/atoms/sheet-context.atom.d.ts.map +1 -1
- package/dist/esm/atoms/sheet-context.atom.js +2 -0
- package/dist/esm/atoms/sparkline-dialog.atom.d.ts +34 -0
- package/dist/esm/atoms/sparkline-dialog.atom.d.ts.map +1 -0
- package/dist/esm/atoms/sparkline-dialog.atom.js +21 -0
- package/dist/esm/atoms/table-auto-expansion.atom.d.ts +14 -0
- package/dist/esm/atoms/table-auto-expansion.atom.d.ts.map +1 -0
- package/dist/esm/atoms/table-auto-expansion.atom.js +11 -0
- package/dist/esm/components/calculated-column-smart-tag/index.d.ts +25 -0
- package/dist/esm/components/calculated-column-smart-tag/index.d.ts.map +1 -0
- package/dist/esm/components/calculated-column-smart-tag/index.js +25 -0
- package/dist/esm/components/canvas-grid/index.d.ts.map +1 -1
- package/dist/esm/components/canvas-grid/index.js +332 -21
- package/dist/esm/components/canvas-grid/typings.d.ts +127 -14
- package/dist/esm/components/canvas-grid/typings.d.ts.map +1 -1
- package/dist/esm/components/cell/index.d.ts.map +1 -1
- package/dist/esm/components/cell/index.js +3 -3
- package/dist/esm/components/cell/typings.d.ts +13 -0
- package/dist/esm/components/cell/typings.d.ts.map +1 -1
- package/dist/esm/components/cell-filter/index.d.ts.map +1 -1
- package/dist/esm/components/cell-filter/index.js +14 -3
- package/dist/esm/components/cell-input/formula-bar-cell-input.d.ts.map +1 -1
- package/dist/esm/components/cell-input/formula-bar-cell-input.js +4 -1
- package/dist/esm/components/cell-structured/sparkline-math.d.ts +28 -5
- package/dist/esm/components/cell-structured/sparkline-math.d.ts.map +1 -1
- package/dist/esm/components/cell-structured/sparkline-math.js +58 -4
- package/dist/esm/components/cell-structured/sparkline.d.ts +1 -1
- package/dist/esm/components/cell-structured/sparkline.d.ts.map +1 -1
- package/dist/esm/components/cell-structured/sparkline.js +3 -3
- package/dist/esm/components/cell-structured/types.d.ts +1 -1
- package/dist/esm/components/cell-structured/types.d.ts.map +1 -1
- package/dist/esm/components/chart-sheet-view/index.d.ts +27 -0
- package/dist/esm/components/chart-sheet-view/index.d.ts.map +1 -0
- package/dist/esm/components/chart-sheet-view/index.js +30 -0
- package/dist/esm/components/context-menu/embed-context-menu.d.ts +48 -0
- package/dist/esm/components/context-menu/embed-context-menu.d.ts.map +1 -0
- package/dist/esm/components/context-menu/embed-context-menu.js +112 -0
- package/dist/esm/components/context-menu/index.d.ts +23 -2
- package/dist/esm/components/context-menu/index.d.ts.map +1 -1
- package/dist/esm/components/context-menu/index.js +174 -38
- package/dist/esm/components/context-menu/total-row-function-menu.d.ts +33 -0
- package/dist/esm/components/context-menu/total-row-function-menu.d.ts.map +1 -0
- package/dist/esm/components/context-menu/total-row-function-menu.js +50 -0
- package/dist/esm/components/context-menu/total-row-functions.d.ts +12 -12
- package/dist/esm/components/context-menu/total-row-functions.d.ts.map +1 -1
- package/dist/esm/components/context-menu/total-row-functions.js +29 -31
- package/dist/esm/components/embeds/chart-component.d.ts +17 -0
- package/dist/esm/components/embeds/chart-component.d.ts.map +1 -1
- package/dist/esm/components/embeds/embed-draggable.d.ts +61 -4
- package/dist/esm/components/embeds/embed-draggable.d.ts.map +1 -1
- package/dist/esm/components/embeds/embed-draggable.js +204 -45
- package/dist/esm/components/filter-box/date-tree.d.ts +28 -0
- package/dist/esm/components/filter-box/date-tree.d.ts.map +1 -0
- package/dist/esm/components/filter-box/date-tree.js +107 -0
- package/dist/esm/components/filter-box/filter-by-condition.d.ts +14 -2
- package/dist/esm/components/filter-box/filter-by-condition.d.ts.map +1 -1
- package/dist/esm/components/filter-box/filter-by-condition.js +72 -16
- package/dist/esm/components/filter-box/filter-by-value.d.ts.map +1 -1
- package/dist/esm/components/filter-box/filter-by-value.js +110 -39
- package/dist/esm/components/filter-box/index.d.ts +7 -1
- package/dist/esm/components/filter-box/index.d.ts.map +1 -1
- package/dist/esm/components/filter-box/index.js +88 -2
- package/dist/esm/components/move-chart-dialog/index.d.ts +34 -0
- package/dist/esm/components/move-chart-dialog/index.d.ts.map +1 -0
- package/dist/esm/components/move-chart-dialog/index.js +88 -0
- package/dist/esm/components/print-preview/page-block.d.ts +9 -1
- package/dist/esm/components/print-preview/page-block.d.ts.map +1 -1
- package/dist/esm/components/print-preview/page-block.js +27 -2
- package/dist/esm/components/print-preview/print-preview-dialog.d.ts +8 -1
- package/dist/esm/components/print-preview/print-preview-dialog.d.ts.map +1 -1
- package/dist/esm/components/print-preview/print-preview-dialog.js +92 -4
- package/dist/esm/components/print-preview/run-print.d.ts.map +1 -1
- package/dist/esm/components/print-preview/run-print.js +17 -7
- package/dist/esm/components/print-preview/use-page-layout.d.ts +47 -0
- package/dist/esm/components/print-preview/use-page-layout.d.ts.map +1 -1
- package/dist/esm/components/print-preview/use-page-layout.js +55 -0
- package/dist/esm/components/selection/index.d.ts +1 -1
- package/dist/esm/components/selection/index.d.ts.map +1 -1
- package/dist/esm/components/selection/index.js +6 -2
- package/dist/esm/components/selection/types.d.ts +15 -0
- package/dist/esm/components/selection/types.d.ts.map +1 -1
- package/dist/esm/components/sheet-tabs/index.d.ts.map +1 -1
- package/dist/esm/components/sheet-tabs/index.js +2 -2
- package/dist/esm/components/sheet-tabs/sheet-tab.d.ts +1 -1
- package/dist/esm/components/sheet-tabs/sheet-tab.d.ts.map +1 -1
- package/dist/esm/components/sheet-tabs/sheet-tab.js +4 -2
- package/dist/esm/components/sparkline-dialog/index.d.ts +43 -0
- package/dist/esm/components/sparkline-dialog/index.d.ts.map +1 -0
- package/dist/esm/components/sparkline-dialog/index.js +123 -0
- package/dist/esm/components/subtotal-dialog/index.d.ts.map +1 -1
- package/dist/esm/components/subtotal-dialog/index.js +10 -1
- package/dist/esm/components/table-auto-expansion-smart-tag/index.d.ts +24 -0
- package/dist/esm/components/table-auto-expansion-smart-tag/index.d.ts.map +1 -0
- package/dist/esm/components/table-auto-expansion-smart-tag/index.js +25 -0
- package/dist/esm/components/toolbar/index.d.ts +1 -0
- package/dist/esm/components/toolbar/index.d.ts.map +1 -1
- package/dist/esm/components/toolbar/index.js +1 -0
- package/dist/esm/components/toolbar/insert-menu.d.ts +2 -1
- package/dist/esm/components/toolbar/insert-menu.d.ts.map +1 -1
- package/dist/esm/components/toolbar/insert-menu.js +24 -1
- package/dist/esm/components/toolbar/merge-cells-selector.d.ts +4 -1
- package/dist/esm/components/toolbar/merge-cells-selector.d.ts.map +1 -1
- package/dist/esm/components/toolbar/merge-cells-selector.js +10 -6
- package/dist/esm/components/toolbar/sparkline-actions.d.ts +31 -0
- package/dist/esm/components/toolbar/sparkline-actions.d.ts.map +1 -0
- package/dist/esm/components/toolbar/sparkline-actions.js +238 -0
- package/dist/esm/components/toolbar/table-actions.d.ts +9 -1
- package/dist/esm/components/toolbar/table-actions.d.ts.map +1 -1
- package/dist/esm/components/toolbar/table-actions.js +15 -7
- package/dist/esm/components/toolbar/table-style-selector.d.ts +38 -2
- package/dist/esm/components/toolbar/table-style-selector.d.ts.map +1 -1
- package/dist/esm/components/toolbar/table-style-selector.js +210 -399
- package/dist/esm/config.d.ts +2 -0
- package/dist/esm/config.d.ts.map +1 -1
- package/dist/esm/config.js +30 -0
- package/dist/esm/helpers.d.ts +1 -1
- package/dist/esm/helpers.d.ts.map +1 -1
- package/dist/esm/helpers.js +12 -1
- package/dist/esm/hooks/use-cell-renderer.d.ts +16 -1
- package/dist/esm/hooks/use-cell-renderer.d.ts.map +1 -1
- package/dist/esm/hooks/use-cell-renderer.js +14 -4
- package/dist/esm/hooks/use-chart-clipboard.d.ts +55 -0
- package/dist/esm/hooks/use-chart-clipboard.d.ts.map +1 -0
- package/dist/esm/hooks/use-chart-clipboard.js +213 -0
- package/dist/esm/hooks/use-chart-source-ranges.d.ts +27 -0
- package/dist/esm/hooks/use-chart-source-ranges.d.ts.map +1 -0
- package/dist/esm/hooks/use-chart-source-ranges.js +186 -0
- package/dist/esm/hooks/use-context-setter.d.ts.map +1 -1
- package/dist/esm/hooks/use-context-setter.js +3 -1
- package/dist/esm/hooks/use-editable.d.ts +9 -1
- package/dist/esm/hooks/use-editable.d.ts.map +1 -1
- package/dist/esm/hooks/use-editable.js +25 -1
- package/dist/esm/hooks/use-embeds-charts.d.ts +64 -4
- package/dist/esm/hooks/use-embeds-charts.d.ts.map +1 -1
- package/dist/esm/hooks/use-embeds-charts.js +394 -39
- package/dist/esm/hooks/use-grid-children.d.ts +2 -2
- package/dist/esm/hooks/use-grid-children.d.ts.map +1 -1
- package/dist/esm/hooks/use-grid-children.js +8 -2
- package/dist/esm/hooks/use-isomorphic-layout-effect.d.ts +2 -2
- package/dist/esm/hooks/use-isomorphic-layout-effect.d.ts.map +1 -1
- package/dist/esm/hooks/use-keyboard-handler.d.ts +2 -1
- package/dist/esm/hooks/use-keyboard-handler.d.ts.map +1 -1
- package/dist/esm/hooks/use-keyboard-handler.js +8 -2
- package/dist/esm/hooks/use-reveal-chart-embed.d.ts +17 -0
- package/dist/esm/hooks/use-reveal-chart-embed.d.ts.map +1 -0
- package/dist/esm/hooks/use-reveal-chart-embed.js +35 -0
- package/dist/esm/hooks/use-selection-renderer.d.ts +13 -1
- package/dist/esm/hooks/use-selection-renderer.d.ts.map +1 -1
- package/dist/esm/hooks/use-selection-renderer.js +35 -6
- package/dist/esm/hooks/use-selection.d.ts +9 -1
- package/dist/esm/hooks/use-selection.d.ts.map +1 -1
- package/dist/esm/hooks/use-selection.js +122 -30
- package/dist/esm/hooks/use-structured-reference-selection.d.ts +1 -1
- package/dist/esm/hooks/use-structured-reference-selection.d.ts.map +1 -1
- package/dist/esm/hooks/use-structured-reference-selection.js +16 -0
- package/dist/esm/hooks/use-table-hit-zones.d.ts +61 -0
- package/dist/esm/hooks/use-table-hit-zones.d.ts.map +1 -0
- package/dist/esm/hooks/use-table-hit-zones.js +146 -0
- package/dist/esm/hooks/use-table-resizer.d.ts +7 -0
- package/dist/esm/hooks/use-table-resizer.d.ts.map +1 -1
- package/dist/esm/hooks/use-table-resizer.js +21 -10
- package/dist/esm/index.d.ts +13 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +13 -0
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/dist/esm/types.d.ts +289 -4
- package/dist/esm/types.d.ts.map +1 -1
- package/dist/esm/utils/copy-as-picture.d.ts +13 -0
- package/dist/esm/utils/copy-as-picture.d.ts.map +1 -0
- package/dist/esm/utils/copy-as-picture.js +45 -0
- package/dist/esm/utils/pivot-chart-field-buttons.d.ts +19 -0
- package/dist/esm/utils/pivot-chart-field-buttons.d.ts.map +1 -0
- package/dist/esm/utils/pivot-chart-field-buttons.js +18 -0
- package/dist/esm/utils/z-order.d.ts +47 -0
- package/dist/esm/utils/z-order.d.ts.map +1 -0
- package/dist/esm/utils/z-order.js +111 -0
- package/dist/spreadsheet.min.css +1 -1
- package/package.json +8 -6
- package/dist/cjs/components/cell-editor/helpers.spec.d.ts +0 -2
- package/dist/cjs/components/cell-editor/helpers.spec.d.ts.map +0 -1
- package/dist/cjs/components/cell-editor/helpers.spec.js +0 -32
- package/dist/esm/components/cell-editor/helpers.spec.d.ts +0 -2
- package/dist/esm/components/cell-editor/helpers.spec.d.ts.map +0 -1
- package/dist/esm/components/cell-editor/helpers.spec.js +0 -30
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"banded-ranges.d.ts","sourceRoot":"","sources":["../../../api/banded-ranges.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAE1E,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEtE;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GACzB,cAAc,WAAW,EAAE,EAC3B,OAAO,gBAAgB,EACvB,SAAS,MAAM,EACf,aAAa,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,EAC1C,gBAAgB,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,
|
|
1
|
+
{"version":3,"file":"banded-ranges.d.ts","sourceRoot":"","sources":["../../../api/banded-ranges.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAE1E,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEtE;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GACzB,cAAc,WAAW,EAAE,EAC3B,OAAO,gBAAgB,EACvB,SAAS,MAAM,EACf,aAAa,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,EAC1C,gBAAgB,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,4BAuKjD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAI,OAAO,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,iBAE5D,CAAC"}
|
|
@@ -13,18 +13,18 @@ var themes_1 = require("../themes");
|
|
|
13
13
|
*/
|
|
14
14
|
var getBandedCells = function (bandedRanges, theme, sheetId, isHiddenRow, isHiddenColumn) {
|
|
15
15
|
var e_1, _a;
|
|
16
|
-
var _b, _c;
|
|
16
|
+
var _b, _c, _d;
|
|
17
17
|
var bandedCells = new Map();
|
|
18
18
|
try {
|
|
19
19
|
for (var bandedRanges_1 = tslib_1.__values(bandedRanges), bandedRanges_1_1 = bandedRanges_1.next(); !bandedRanges_1_1.done; bandedRanges_1_1 = bandedRanges_1.next()) {
|
|
20
|
-
var
|
|
20
|
+
var _e = bandedRanges_1_1.value, range = _e.range, rowProperties = _e.rowProperties, columnProperties = _e.columnProperties, showFirstColumn = _e.showFirstColumn, showLastColumn = _e.showLastColumn, totalRow = _e.totalRow;
|
|
21
21
|
// Only pick current sheet
|
|
22
22
|
if (range.sheetId !== sheetId) {
|
|
23
23
|
continue;
|
|
24
24
|
}
|
|
25
25
|
if (rowProperties || columnProperties) {
|
|
26
|
-
var
|
|
27
|
-
var
|
|
26
|
+
var _f = rowProperties !== null && rowProperties !== void 0 ? rowProperties : {}, headerColor = _f.headerColor, firstBandColor = _f.firstBandColor, secondBandColor = _f.secondBandColor, footerColor = _f.footerColor, headerBorder = _f.headerBorder, firstBandBorder = _f.firstBandBorder, footerBorder = _f.footerBorder, firstColumnColor = _f.firstColumnColor, lastColumnColor = _f.lastColumnColor, totalRowColor = _f.totalRowColor, totalRowBorder = _f.totalRowBorder, totalRowBold = _f.totalRowBold;
|
|
27
|
+
var _g = columnProperties !== null && columnProperties !== void 0 ? columnProperties : {}, firstBandColorColumn = _g.firstBandColor, secondBandColorColumn = _g.secondBandColor;
|
|
28
28
|
var parsedFirstBandColor = (0, exports.parseTintedColor)(firstBandColor);
|
|
29
29
|
var parsedSecondBandColor = (0, exports.parseTintedColor)(secondBandColor);
|
|
30
30
|
var parsedFirstBandColorColumn = (0, exports.parseTintedColor)(firstBandColorColumn);
|
|
@@ -63,27 +63,53 @@ var getBandedCells = function (bandedRanges, theme, sheetId, isHiddenRow, isHidd
|
|
|
63
63
|
// Body cells
|
|
64
64
|
else {
|
|
65
65
|
var isFooter = rowIndex === lastVisibleRowIndex;
|
|
66
|
+
// A table's totals row takes the style's `totalRow` element (Excel):
|
|
67
|
+
// its fill, its top rule and a bold font — over the plain footer band.
|
|
68
|
+
var isTotalsRow = isFooter && !!totalRow;
|
|
66
69
|
var stripeRowBackground = isOddRow
|
|
67
70
|
? parsedFirstBandColor
|
|
68
71
|
: parsedSecondBandColor;
|
|
69
|
-
|
|
72
|
+
// The footer fill belongs to a totals row (a table without one ends in a plain
|
|
73
|
+
// stripe); the footer border is the style's table outline and stays on the last row
|
|
74
|
+
// either way. A standalone banded range (no `totalRow` flag) keeps Sheets' footer fill.
|
|
75
|
+
var footerBackground = isFooter && totalRow !== false
|
|
70
76
|
? footerColor !== null && footerColor !== void 0 ? footerColor : stripeRowBackground
|
|
71
77
|
: stripeRowBackground;
|
|
78
|
+
var backgroundColor = isTotalsRow
|
|
79
|
+
? totalRowColor !== null && totalRowColor !== void 0 ? totalRowColor : footerBackground
|
|
80
|
+
: isFooter
|
|
81
|
+
? footerBackground
|
|
82
|
+
: stripeRowBackground;
|
|
72
83
|
// Border
|
|
73
|
-
var borders =
|
|
74
|
-
?
|
|
75
|
-
:
|
|
84
|
+
var borders = isTotalsRow
|
|
85
|
+
? (_b = totalRowBorder !== null && totalRowBorder !== void 0 ? totalRowBorder : footerBorder) !== null && _b !== void 0 ? _b : firstBandBorder
|
|
86
|
+
: isFooter
|
|
87
|
+
? footerBorder !== null && footerBorder !== void 0 ? footerBorder : firstBandBorder
|
|
88
|
+
: firstBandBorder;
|
|
76
89
|
var isEvenColumn = columnRunningIndex % 2 === 0;
|
|
77
|
-
var finalBackgroundColor = (
|
|
90
|
+
var finalBackgroundColor = (_c = (isEvenColumn
|
|
78
91
|
? parsedFirstBandColorColumn
|
|
79
|
-
: parsedSecondBandColorColumn)) !== null &&
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
92
|
+
: parsedSecondBandColorColumn)) !== null && _c !== void 0 ? _c : backgroundColor;
|
|
93
|
+
// First / Last Column emphasis (Excel: bold, plus the style's fill when it has one).
|
|
94
|
+
// First Column outranks Last Column on a one-column table, like Excel's element order.
|
|
95
|
+
var edgeColumnColor = showFirstColumn && columnIndex === range.startColumnIndex
|
|
96
|
+
? (0, exports.parseTintedColor)(firstColumnColor)
|
|
97
|
+
: showLastColumn && columnIndex === range.endColumnIndex
|
|
98
|
+
? (0, exports.parseTintedColor)(lastColumnColor)
|
|
99
|
+
: undefined;
|
|
100
|
+
var isEdgeColumn = (showFirstColumn && columnIndex === range.startColumnIndex) ||
|
|
101
|
+
(showLastColumn && columnIndex === range.endColumnIndex);
|
|
102
|
+
var cellBackgroundColor = edgeColumnColor !== null && edgeColumnColor !== void 0 ? edgeColumnColor : finalBackgroundColor;
|
|
103
|
+
var textColor = edgeColumnColor !== null && edgeColumnColor !== void 0 ? edgeColumnColor : (isTotalsRow
|
|
104
|
+
? totalRowColor !== null && totalRowColor !== void 0 ? totalRowColor : footerBackground
|
|
105
|
+
: isFooter
|
|
106
|
+
? footerBackground
|
|
107
|
+
: (_d = parsedFirstBandColor !== null && parsedFirstBandColor !== void 0 ? parsedFirstBandColor : parsedSecondBandColor) !== null && _d !== void 0 ? _d : finalBackgroundColor);
|
|
83
108
|
bandedCells.set(id, {
|
|
84
109
|
borders: borders,
|
|
85
|
-
backgroundColor:
|
|
110
|
+
backgroundColor: cellBackgroundColor,
|
|
86
111
|
textFormat: {
|
|
112
|
+
bold: isEdgeColumn || (isTotalsRow && totalRowBold) ? true : undefined,
|
|
87
113
|
color: textColor
|
|
88
114
|
? (0, utils_1.getContrastColor)((0, themes_1.getStringifiedColor)(textColor, theme), (0, themes_1.getStringifiedColor)({ theme: 1 }, theme), (0, themes_1.getStringifiedColor)({ theme: 0 }, theme))
|
|
89
115
|
: undefined,
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { CellInterface, GridRange } from "@rowsncolumns/grid";
|
|
2
|
+
import type { CellData, TableView } from "../types";
|
|
3
|
+
/** A body cell as it was before a calculated-column fill overwrote it (`null` = it was empty). */
|
|
4
|
+
export type CalculatedColumnPreviousCell = {
|
|
5
|
+
rowIndex: number;
|
|
6
|
+
columnIndex: number;
|
|
7
|
+
cell: CellData | null;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* `filled`: the formula typed into a table column filled the whole column (Excel's calculated
|
|
11
|
+
* column) — the smart tag offers "Undo Calculated Column". `overwrite`: the column held cells that
|
|
12
|
+
* differ from the typed formula, so nothing filled — the tag offers "Overwrite all cells in this
|
|
13
|
+
* column with this formula".
|
|
14
|
+
*/
|
|
15
|
+
export type CalculatedColumnFillKind = "filled" | "overwrite";
|
|
16
|
+
/**
|
|
17
|
+
* A formula typed into a table body cell that created (or could create) a calculated column — the
|
|
18
|
+
* record behind Excel's AutoCorrect smart tag ("Undo Calculated Column" / "Overwrite all cells in
|
|
19
|
+
* this column with this formula" / "Stop automatically creating calculated columns").
|
|
20
|
+
*/
|
|
21
|
+
export type CalculatedColumnFill = {
|
|
22
|
+
sheetId: number;
|
|
23
|
+
tableId: TableView["id"];
|
|
24
|
+
/** Absolute sheet column of the calculated column. */
|
|
25
|
+
columnIndex: number;
|
|
26
|
+
/** The cell the formula was typed into — the smart tag anchors here. */
|
|
27
|
+
anchor: CellInterface;
|
|
28
|
+
/** The column's body range (header and totals rows excluded). */
|
|
29
|
+
range: GridRange;
|
|
30
|
+
/** The typed formula, as typed (relative to `anchor`). */
|
|
31
|
+
formula: string;
|
|
32
|
+
kind: CalculatedColumnFillKind;
|
|
33
|
+
/** The body cells the fill overwrote, with what they held before — "Undo Calculated Column" restores them. */
|
|
34
|
+
previous: CalculatedColumnPreviousCell[];
|
|
35
|
+
};
|
|
36
|
+
export type CalculatedColumnOption = "undo" | "overwrite" | "stop";
|
|
37
|
+
/**
|
|
38
|
+
* Whether the smart tag stays for the current active cell: it survives the commit's own cursor
|
|
39
|
+
* advance (Enter moves down the column, Tab moves right) and any cell of the calculated column,
|
|
40
|
+
* and goes away when the user moves anywhere else or switches sheet.
|
|
41
|
+
*/
|
|
42
|
+
export declare const keepsCalculatedColumnTag: (fill: CalculatedColumnFill, sheetId: number, activeCell: CellInterface) => boolean;
|
|
43
|
+
//# sourceMappingURL=calculated-column-fill.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calculated-column-fill.d.ts","sourceRoot":"","sources":["../../../api/calculated-column-fill.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEnE,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAEpD,kGAAkG;AAClG,MAAM,MAAM,4BAA4B,GAAG;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAC;CACvB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,wBAAwB,GAAG,QAAQ,GAAG,WAAW,CAAC;AAE9D;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IACzB,sDAAsD;IACtD,WAAW,EAAE,MAAM,CAAC;IACpB,wEAAwE;IACxE,MAAM,EAAE,aAAa,CAAC;IACtB,iEAAiE;IACjE,KAAK,EAAE,SAAS,CAAC;IACjB,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,wBAAwB,CAAC;IAC/B,8GAA8G;IAC9G,QAAQ,EAAE,4BAA4B,EAAE,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;AAEnE;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,GACnC,MAAM,oBAAoB,EAC1B,SAAS,MAAM,EACf,YAAY,aAAa,KACxB,OAK6C,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.keepsCalculatedColumnTag = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Whether the smart tag stays for the current active cell: it survives the commit's own cursor
|
|
6
|
+
* advance (Enter moves down the column, Tab moves right) and any cell of the calculated column,
|
|
7
|
+
* and goes away when the user moves anywhere else or switches sheet.
|
|
8
|
+
*/
|
|
9
|
+
var keepsCalculatedColumnTag = function (fill, sheetId, activeCell) {
|
|
10
|
+
return sheetId === fill.sheetId &&
|
|
11
|
+
activeCell.rowIndex >= fill.range.startRowIndex &&
|
|
12
|
+
activeCell.rowIndex <= fill.range.endRowIndex + 1 &&
|
|
13
|
+
activeCell.columnIndex >= fill.columnIndex &&
|
|
14
|
+
activeCell.columnIndex <= fill.columnIndex + 1;
|
|
15
|
+
};
|
|
16
|
+
exports.keepsCalculatedColumnTag = keepsCalculatedColumnTag;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Sheet } from "../types";
|
|
2
|
+
/**
|
|
3
|
+
* The first unused `Chart${n}` sheet title, like Excel's default name for a
|
|
4
|
+
* chartsheet created by "Move Chart → New sheet". `formatTitle` lets hosts
|
|
5
|
+
* localize the pattern.
|
|
6
|
+
*/
|
|
7
|
+
export declare const getNextChartSheetTitle: (sheets: Pick<Sheet, "title">[], formatTitle?: (index: number) => string) => string;
|
|
8
|
+
//# sourceMappingURL=chart-sheet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chart-sheet.d.ts","sourceRoot":"","sources":["../../../api/chart-sheet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEtC;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,GACjC,QAAQ,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,EAC9B,cAAa,CAAC,KAAK,EAAE,MAAM,KAAK,MAAmC,WAUpE,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getNextChartSheetTitle = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* The first unused `Chart${n}` sheet title, like Excel's default name for a
|
|
6
|
+
* chartsheet created by "Move Chart → New sheet". `formatTitle` lets hosts
|
|
7
|
+
* localize the pattern.
|
|
8
|
+
*/
|
|
9
|
+
var getNextChartSheetTitle = function (sheets, formatTitle) {
|
|
10
|
+
if (formatTitle === void 0) { formatTitle = function (index) { return "Chart".concat(index); }; }
|
|
11
|
+
var existingTitles = new Set(sheets.map(function (sheet) { return sheet.title; }));
|
|
12
|
+
var index = 1;
|
|
13
|
+
var title = formatTitle(index);
|
|
14
|
+
while (existingTitles.has(title)) {
|
|
15
|
+
index++;
|
|
16
|
+
title = formatTitle(index);
|
|
17
|
+
}
|
|
18
|
+
return title;
|
|
19
|
+
};
|
|
20
|
+
exports.getNextChartSheetTitle = getNextChartSheetTitle;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import type { GridRange } from "@rowsncolumns/grid";
|
|
2
|
+
import type { EmbeddedChart, SheetRange } from "../types";
|
|
3
|
+
/**
|
|
4
|
+
* Border-style `type` of a selected chart's source-range outline. Not a
|
|
5
|
+
* user selection: it never moves the active cell, never shows a fill
|
|
6
|
+
* handle, and only exposes the corner resize handles when the entry is
|
|
7
|
+
* re-bindable.
|
|
8
|
+
*/
|
|
9
|
+
export declare const CHART_SOURCE_SELECTION_TYPE = "chartSource";
|
|
10
|
+
/**
|
|
11
|
+
* Every `ChartData[]` field a spec can carry, in the order Excel colors
|
|
12
|
+
* them: categories, then values, then the extra bubble / hierarchy
|
|
13
|
+
* planes.
|
|
14
|
+
*/
|
|
15
|
+
export declare const CHART_SOURCE_FIELDS: readonly ["domains", "series", "bubbleLabels", "bubbleSizes", "labels", "parentLabels", "sizeData"];
|
|
16
|
+
export type ChartSourceField = (typeof CHART_SOURCE_FIELDS)[number];
|
|
17
|
+
export type ChartSourceRole = ChartSourceField | "seriesName";
|
|
18
|
+
export type ChartSourceRangeEntry = {
|
|
19
|
+
/**
|
|
20
|
+
* Stable identity for the outline. Doubles as the border-style index and
|
|
21
|
+
* as the `data-index` of the outline's resize handles.
|
|
22
|
+
*/
|
|
23
|
+
key: string;
|
|
24
|
+
role: ChartSourceRole;
|
|
25
|
+
field: ChartSourceField;
|
|
26
|
+
dataIndex: number;
|
|
27
|
+
/** Position in `ChartData.sources`; `-1` for a series-name reference. */
|
|
28
|
+
sourceIndex: number;
|
|
29
|
+
range: SheetRange;
|
|
30
|
+
/** Palette slot — the formula editor's per-reference color scheme. */
|
|
31
|
+
colorIndex: number;
|
|
32
|
+
/**
|
|
33
|
+
* Cell-range sources re-bind when a corner handle is dragged. A
|
|
34
|
+
* series-name reference is a single cell and only gets the outline.
|
|
35
|
+
*/
|
|
36
|
+
resizable: boolean;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Lists every worksheet range a chart reads, in spec order, each with the
|
|
40
|
+
* palette slot the grid outlines it in. Spec-driven — both chart
|
|
41
|
+
* renderers read the same `EmbeddedChart.spec`, so the outline is the
|
|
42
|
+
* same for either.
|
|
43
|
+
*
|
|
44
|
+
* `sheetId` / `sheetName` identify the sheet being drawn; they are only
|
|
45
|
+
* needed to resolve series-name references, which the spec stores as
|
|
46
|
+
* addresses rather than `SheetRange`s.
|
|
47
|
+
*/
|
|
48
|
+
export declare const getChartSourceRanges: (chart: EmbeddedChart, sheetId: number, sheetName?: string) => ChartSourceRangeEntry[];
|
|
49
|
+
export declare const getChartSourceRangeStroke: (entry: ChartSourceRangeEntry) => string;
|
|
50
|
+
/**
|
|
51
|
+
* The single cell a data point reads from: the `dataIndex`-th cell along
|
|
52
|
+
* the range's long axis (a column range walks rows, a row range walks
|
|
53
|
+
* columns), clamped to the range so a point past the end still outlines
|
|
54
|
+
* the last cell. Excel narrows a series outline to this cell when one
|
|
55
|
+
* data point is selected.
|
|
56
|
+
*/
|
|
57
|
+
export declare const getChartSourcePointRange: (range: SheetRange, dataIndex: number) => SheetRange;
|
|
58
|
+
/**
|
|
59
|
+
* The chart with one source re-bound to `range` (same sheet as before).
|
|
60
|
+
* Returns a new `EmbeddedChart`; `onUpdateChart` applies it as a single
|
|
61
|
+
* history entry on both engines.
|
|
62
|
+
*/
|
|
63
|
+
export declare const replaceChartSourceRange: (chart: EmbeddedChart, entry: ChartSourceRangeEntry, range: GridRange) => EmbeddedChart;
|
|
64
|
+
//# sourceMappingURL=chart-source-ranges.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chart-source-ranges.d.ts","sourceRoot":"","sources":["../../../api/chart-source-ranges.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAGpD,OAAO,KAAK,EAAa,aAAa,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAGrE;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,gBAAgB,CAAC;AAIzD;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,qGAQtB,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpE,MAAM,MAAM,eAAe,GAAG,gBAAgB,GAAG,YAAY,CAAC;AAc9D,MAAM,MAAM,qBAAqB,GAAG;IAClC;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,eAAe,CAAC;IACtB,KAAK,EAAE,gBAAgB,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,yEAAyE;IACzE,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,UAAU,CAAC;IAClB,sEAAsE;IACtE,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AA+BF;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,GAC/B,OAAO,aAAa,EACpB,SAAS,MAAM,EACf,YAAY,MAAM,KACjB,qBAAqB,EA+CvB,CAAC;AAEF,eAAO,MAAM,yBAAyB,GAAI,OAAO,qBAAqB,WAC1B,CAAC;AAE7C;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB,GACnC,OAAO,UAAU,EACjB,WAAW,MAAM,KAChB,UAsBF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,GAClC,OAAO,aAAa,EACpB,OAAO,qBAAqB,EAC5B,OAAO,SAAS,KACf,aA8BF,CAAC"}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.replaceChartSourceRange = exports.getChartSourcePointRange = exports.getChartSourceRangeStroke = exports.getChartSourceRanges = exports.CHART_SOURCE_FIELDS = exports.CHART_SOURCE_SELECTION_TYPE = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var utils_1 = require("@rowsncolumns/utils");
|
|
6
|
+
var selections_1 = require("./selections");
|
|
7
|
+
/**
|
|
8
|
+
* Border-style `type` of a selected chart's source-range outline. Not a
|
|
9
|
+
* user selection: it never moves the active cell, never shows a fill
|
|
10
|
+
* handle, and only exposes the corner resize handles when the entry is
|
|
11
|
+
* re-bindable.
|
|
12
|
+
*/
|
|
13
|
+
exports.CHART_SOURCE_SELECTION_TYPE = "chartSource";
|
|
14
|
+
var CHART_SOURCE_INDEX_PREFIX = "chart-source:";
|
|
15
|
+
/**
|
|
16
|
+
* Every `ChartData[]` field a spec can carry, in the order Excel colors
|
|
17
|
+
* them: categories, then values, then the extra bubble / hierarchy
|
|
18
|
+
* planes.
|
|
19
|
+
*/
|
|
20
|
+
exports.CHART_SOURCE_FIELDS = [
|
|
21
|
+
"domains",
|
|
22
|
+
"series",
|
|
23
|
+
"bubbleLabels",
|
|
24
|
+
"bubbleSizes",
|
|
25
|
+
"labels",
|
|
26
|
+
"parentLabels",
|
|
27
|
+
"sizeData",
|
|
28
|
+
];
|
|
29
|
+
/**
|
|
30
|
+
* Resolves a series-name reference (`Sheet1!$B$1`) to a range on the
|
|
31
|
+
* sheet being drawn. A reference without a sheet prefix belongs to the
|
|
32
|
+
* chart's own sheet; one that names another sheet is not drawn here.
|
|
33
|
+
*/
|
|
34
|
+
var resolveLabelRef = function (ref, chartSheetId, sheetId, sheetName) {
|
|
35
|
+
var _a = tslib_1.__read((0, selections_1.generateSelectionsFromFormula)(ref.startsWith("=") ? ref : "=".concat(ref)), 1), selection = _a[0];
|
|
36
|
+
if (!selection) {
|
|
37
|
+
return undefined;
|
|
38
|
+
}
|
|
39
|
+
var refSheetName = selection.sheetName;
|
|
40
|
+
if (refSheetName === undefined) {
|
|
41
|
+
return chartSheetId === sheetId
|
|
42
|
+
? tslib_1.__assign(tslib_1.__assign({}, selection.range), { sheetId: sheetId }) : undefined;
|
|
43
|
+
}
|
|
44
|
+
if (sheetName !== undefined && refSheetName === sheetName) {
|
|
45
|
+
return tslib_1.__assign(tslib_1.__assign({}, selection.range), { sheetId: sheetId });
|
|
46
|
+
}
|
|
47
|
+
return undefined;
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* Lists every worksheet range a chart reads, in spec order, each with the
|
|
51
|
+
* palette slot the grid outlines it in. Spec-driven — both chart
|
|
52
|
+
* renderers read the same `EmbeddedChart.spec`, so the outline is the
|
|
53
|
+
* same for either.
|
|
54
|
+
*
|
|
55
|
+
* `sheetId` / `sheetName` identify the sheet being drawn; they are only
|
|
56
|
+
* needed to resolve series-name references, which the spec stores as
|
|
57
|
+
* addresses rather than `SheetRange`s.
|
|
58
|
+
*/
|
|
59
|
+
var getChartSourceRanges = function (chart, sheetId, sheetName) {
|
|
60
|
+
var e_1, _a;
|
|
61
|
+
var entries = [];
|
|
62
|
+
var spec = chart.spec;
|
|
63
|
+
var chartSheetId = chart.position.sheetId;
|
|
64
|
+
var push = function (entry) {
|
|
65
|
+
entries.push(tslib_1.__assign(tslib_1.__assign({}, entry), { key: "".concat(CHART_SOURCE_INDEX_PREFIX).concat(entry.field, ":").concat(entry.dataIndex, ":").concat(entry.sourceIndex), colorIndex: entries.length }));
|
|
66
|
+
};
|
|
67
|
+
var _loop_1 = function (field) {
|
|
68
|
+
var chartDataArray = spec[field];
|
|
69
|
+
if (!chartDataArray)
|
|
70
|
+
return "continue";
|
|
71
|
+
chartDataArray.forEach(function (chartData, dataIndex) {
|
|
72
|
+
var _a;
|
|
73
|
+
if (!chartData)
|
|
74
|
+
return;
|
|
75
|
+
(_a = chartData.sources) === null || _a === void 0 ? void 0 : _a.forEach(function (source, sourceIndex) {
|
|
76
|
+
if (!source)
|
|
77
|
+
return;
|
|
78
|
+
push({
|
|
79
|
+
role: field,
|
|
80
|
+
field: field,
|
|
81
|
+
dataIndex: dataIndex,
|
|
82
|
+
sourceIndex: sourceIndex,
|
|
83
|
+
range: source,
|
|
84
|
+
resizable: true,
|
|
85
|
+
});
|
|
86
|
+
});
|
|
87
|
+
if (field !== "series")
|
|
88
|
+
return;
|
|
89
|
+
var labelRef = chartData.dataLabelRef;
|
|
90
|
+
if (!labelRef)
|
|
91
|
+
return;
|
|
92
|
+
var range = resolveLabelRef(labelRef, chartSheetId, sheetId, sheetName);
|
|
93
|
+
if (!range)
|
|
94
|
+
return;
|
|
95
|
+
push({
|
|
96
|
+
role: "seriesName",
|
|
97
|
+
field: field,
|
|
98
|
+
dataIndex: dataIndex,
|
|
99
|
+
sourceIndex: -1,
|
|
100
|
+
range: range,
|
|
101
|
+
resizable: false,
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
};
|
|
105
|
+
try {
|
|
106
|
+
for (var CHART_SOURCE_FIELDS_1 = tslib_1.__values(exports.CHART_SOURCE_FIELDS), CHART_SOURCE_FIELDS_1_1 = CHART_SOURCE_FIELDS_1.next(); !CHART_SOURCE_FIELDS_1_1.done; CHART_SOURCE_FIELDS_1_1 = CHART_SOURCE_FIELDS_1.next()) {
|
|
107
|
+
var field = CHART_SOURCE_FIELDS_1_1.value;
|
|
108
|
+
_loop_1(field);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
112
|
+
finally {
|
|
113
|
+
try {
|
|
114
|
+
if (CHART_SOURCE_FIELDS_1_1 && !CHART_SOURCE_FIELDS_1_1.done && (_a = CHART_SOURCE_FIELDS_1.return)) _a.call(CHART_SOURCE_FIELDS_1);
|
|
115
|
+
}
|
|
116
|
+
finally { if (e_1) throw e_1.error; }
|
|
117
|
+
}
|
|
118
|
+
return entries;
|
|
119
|
+
};
|
|
120
|
+
exports.getChartSourceRanges = getChartSourceRanges;
|
|
121
|
+
var getChartSourceRangeStroke = function (entry) {
|
|
122
|
+
return (0, utils_1.getSelectionColorAtIndex)(entry.colorIndex);
|
|
123
|
+
};
|
|
124
|
+
exports.getChartSourceRangeStroke = getChartSourceRangeStroke;
|
|
125
|
+
/**
|
|
126
|
+
* The single cell a data point reads from: the `dataIndex`-th cell along
|
|
127
|
+
* the range's long axis (a column range walks rows, a row range walks
|
|
128
|
+
* columns), clamped to the range so a point past the end still outlines
|
|
129
|
+
* the last cell. Excel narrows a series outline to this cell when one
|
|
130
|
+
* data point is selected.
|
|
131
|
+
*/
|
|
132
|
+
var getChartSourcePointRange = function (range, dataIndex) {
|
|
133
|
+
var rows = range.endRowIndex - range.startRowIndex;
|
|
134
|
+
var columns = range.endColumnIndex - range.startColumnIndex;
|
|
135
|
+
var offset = Math.max(0, Math.floor(dataIndex));
|
|
136
|
+
if (rows >= columns) {
|
|
137
|
+
var rowIndex = range.startRowIndex + Math.min(offset, rows);
|
|
138
|
+
return tslib_1.__assign(tslib_1.__assign({}, range), { startRowIndex: rowIndex, endRowIndex: rowIndex, startColumnIndex: range.startColumnIndex, endColumnIndex: range.startColumnIndex });
|
|
139
|
+
}
|
|
140
|
+
var columnIndex = range.startColumnIndex + Math.min(offset, columns);
|
|
141
|
+
return tslib_1.__assign(tslib_1.__assign({}, range), { startRowIndex: range.startRowIndex, endRowIndex: range.startRowIndex, startColumnIndex: columnIndex, endColumnIndex: columnIndex });
|
|
142
|
+
};
|
|
143
|
+
exports.getChartSourcePointRange = getChartSourcePointRange;
|
|
144
|
+
/**
|
|
145
|
+
* The chart with one source re-bound to `range` (same sheet as before).
|
|
146
|
+
* Returns a new `EmbeddedChart`; `onUpdateChart` applies it as a single
|
|
147
|
+
* history entry on both engines.
|
|
148
|
+
*/
|
|
149
|
+
var replaceChartSourceRange = function (chart, entry, range) {
|
|
150
|
+
var _a;
|
|
151
|
+
var spec = chart.spec;
|
|
152
|
+
var chartDataArray = spec[entry.field];
|
|
153
|
+
if (!chartDataArray || entry.sourceIndex < 0) {
|
|
154
|
+
return chart;
|
|
155
|
+
}
|
|
156
|
+
var chartData = chartDataArray[entry.dataIndex];
|
|
157
|
+
if (!chartData) {
|
|
158
|
+
return chart;
|
|
159
|
+
}
|
|
160
|
+
var nextSource = {
|
|
161
|
+
startRowIndex: range.startRowIndex,
|
|
162
|
+
endRowIndex: range.endRowIndex,
|
|
163
|
+
startColumnIndex: range.startColumnIndex,
|
|
164
|
+
endColumnIndex: range.endColumnIndex,
|
|
165
|
+
sheetId: entry.range.sheetId,
|
|
166
|
+
};
|
|
167
|
+
var sources = chartData.sources.map(function (source, index) {
|
|
168
|
+
return index === entry.sourceIndex ? nextSource : source;
|
|
169
|
+
});
|
|
170
|
+
var nextChartDataArray = chartDataArray.map(function (data, index) {
|
|
171
|
+
return index === entry.dataIndex ? tslib_1.__assign(tslib_1.__assign({}, data), { sources: sources }) : data;
|
|
172
|
+
});
|
|
173
|
+
return tslib_1.__assign(tslib_1.__assign({}, chart), { spec: tslib_1.__assign(tslib_1.__assign({}, chart.spec), (_a = {}, _a[entry.field] = nextChartDataArray, _a)) });
|
|
174
|
+
};
|
|
175
|
+
exports.replaceChartSourceRange = replaceChartSourceRange;
|
|
@@ -8,7 +8,7 @@ import type { SheetRange, TableView } from "../types";
|
|
|
8
8
|
* @param isActiveCell
|
|
9
9
|
* @param isSelection
|
|
10
10
|
*/
|
|
11
|
-
export declare const getSelectionStrokeStyle: (formulaMode: boolean, isFill: boolean, isActiveCell: boolean, emptySelections: boolean) => "
|
|
11
|
+
export declare const getSelectionStrokeStyle: (formulaMode: boolean, isFill: boolean, isActiveCell: boolean, emptySelections: boolean) => "solid" | "dashed";
|
|
12
12
|
/**
|
|
13
13
|
* Get selection stroke width
|
|
14
14
|
* @param formulaMode
|
|
@@ -16,14 +16,14 @@ export declare const getSelectionStrokeStyle: (formulaMode: boolean, isFill: boo
|
|
|
16
16
|
* @param isActiveCell
|
|
17
17
|
* @returns
|
|
18
18
|
*/
|
|
19
|
-
export declare const getSelectionStrokeWidth: (formulaMode: boolean, isFill: boolean, isActiveCell: boolean, isResizingTable: boolean) =>
|
|
19
|
+
export declare const getSelectionStrokeWidth: (formulaMode: boolean, isFill: boolean, isActiveCell: boolean, isResizingTable: boolean) => 1 | 2;
|
|
20
20
|
/**
|
|
21
21
|
* Get background opacity of selection
|
|
22
22
|
* @param formulaMode
|
|
23
23
|
* @param isFill
|
|
24
24
|
* @returns
|
|
25
25
|
*/
|
|
26
|
-
export declare const getSelectionFillOpacity: (formulaMode: boolean, isFill: boolean) =>
|
|
26
|
+
export declare const getSelectionFillOpacity: (formulaMode: boolean, isFill: boolean) => 0 | 1 | 0.2;
|
|
27
27
|
/**
|
|
28
28
|
* Get background color of selection
|
|
29
29
|
* @param formulaMode
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selections.d.ts","sourceRoot":"","sources":["../../../api/selections.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,SAAS,EACT,aAAa,EACd,MAAM,oBAAoB,CAAC;AAgB5B,OAAO,KAAK,EACV,eAAe,EACf,0BAA0B,EAC1B,mBAAmB,EACpB,MAAM,mCAAmC,CAAC;AAE3C,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,6CAA6C,CAAC;AACrG,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAEtD;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,GAClC,aAAa,OAAO,EACpB,QAAQ,OAAO,EACf,cAAc,OAAO,EACrB,iBAAiB,OAAO,uBAYzB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,GAClC,aAAa,OAAO,EACpB,QAAQ,OAAO,EACf,cAAc,OAAO,EACrB,iBAAiB,OAAO,UASzB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,GAClC,aAAa,OAAO,EACpB,QAAQ,OAAO,gBAKhB,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,GAC3B,aAAa,OAAO,EACpB,QAAQ,OAAO,EACf,cAAc,OAAO,EACrB,gBAAgB,MAAM,EACtB,OAAO,MAAM,GAAG,MAAM,EACtB,eAAe,OAAO,EACtB,iBAAiB,OAAO,WAYzB,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,kBAAkB,GAC7B,aAAa,OAAO,EACpB,QAAQ,OAAO,EACf,cAAc,OAAO,EACrB,mBAAmB,OAAO,EAC1B,YAAY,OAAO,GAAG,SAAS,EAC/B,sBAAsB,MAAM,EAC5B,KAAK,MAAM,GAAG,MAAM,WAqBrB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,6BAA6B,GACxC,OAAO,MAAM,EACb,UAAU,MAAM,EAChB,mBAAmB,MAAM,EACzB,aAAa,aAAa,EAC1B,iBAAwB,EACxB,oBAA8B,EAC9B,YAAW,eAAe,CAAC,WAAW,CAA2B,EACjE,wBAAwB,UAAU,CAAC,OAAO,iCAAiC,CAAC,EAC5E,6BAA6B,0BAA0B,yCAuCxD,CAAC;AAEF,eAAO,MAAM,WAAW,GACtB,KAAK,OAAO,KACX,GAAG,IAAI,aAAa,CAAC,mBAAmB,CAK1C,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,WAAW,aAAa,WAOtD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,SAAS,MAAM,EACf,WAAU,MAAsB,EAChC,cAAa,MAAyB,KACrC,aAAa,GAAG,SA+BlB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAI,YAAY,aAAa,EAAE,YAO3D,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,OAAO,UAAU,GAAG,SAAS,YAK9D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,GAClC,WAAW,aAAa,KACvB,aAKF,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAClC,WAAW,aAAa,EACxB,OAAO,SAAS,EAChB,aAAa,aAAa,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"selections.d.ts","sourceRoot":"","sources":["../../../api/selections.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,SAAS,EACT,aAAa,EACd,MAAM,oBAAoB,CAAC;AAgB5B,OAAO,KAAK,EACV,eAAe,EACf,0BAA0B,EAC1B,mBAAmB,EACpB,MAAM,mCAAmC,CAAC;AAE3C,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,6CAA6C,CAAC;AACrG,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAEtD;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,GAClC,aAAa,OAAO,EACpB,QAAQ,OAAO,EACf,cAAc,OAAO,EACrB,iBAAiB,OAAO,uBAYzB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,GAClC,aAAa,OAAO,EACpB,QAAQ,OAAO,EACf,cAAc,OAAO,EACrB,iBAAiB,OAAO,UASzB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,GAClC,aAAa,OAAO,EACpB,QAAQ,OAAO,gBAKhB,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,GAC3B,aAAa,OAAO,EACpB,QAAQ,OAAO,EACf,cAAc,OAAO,EACrB,gBAAgB,MAAM,EACtB,OAAO,MAAM,GAAG,MAAM,EACtB,eAAe,OAAO,EACtB,iBAAiB,OAAO,WAYzB,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,kBAAkB,GAC7B,aAAa,OAAO,EACpB,QAAQ,OAAO,EACf,cAAc,OAAO,EACrB,mBAAmB,OAAO,EAC1B,YAAY,OAAO,GAAG,SAAS,EAC/B,sBAAsB,MAAM,EAC5B,KAAK,MAAM,GAAG,MAAM,WAqBrB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,6BAA6B,GACxC,OAAO,MAAM,EACb,UAAU,MAAM,EAChB,mBAAmB,MAAM,EACzB,aAAa,aAAa,EAC1B,iBAAwB,EACxB,oBAA8B,EAC9B,YAAW,eAAe,CAAC,WAAW,CAA2B,EACjE,wBAAwB,UAAU,CAAC,OAAO,iCAAiC,CAAC,EAC5E,6BAA6B,0BAA0B,yCAuCxD,CAAC;AAEF,eAAO,MAAM,WAAW,GACtB,KAAK,OAAO,KACX,GAAG,IAAI,aAAa,CAAC,mBAAmB,CAK1C,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,WAAW,aAAa,WAOtD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,SAAS,MAAM,EACf,WAAU,MAAsB,EAChC,cAAa,MAAyB,KACrC,aAAa,GAAG,SA+BlB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAI,YAAY,aAAa,EAAE,YAO3D,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,OAAO,UAAU,GAAG,SAAS,YAK9D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,GAClC,WAAW,aAAa,KACvB,aAKF,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAClC,WAAW,aAAa,EACxB,OAAO,SAAS,EAChB,aAAa,aAAa,GAAG,SAAS,WA2GvC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GAChC,QAAQ,SAAS,EAAE,GAAG,SAAS,EAC/B,aAAa,aAAa,GAAG,SAAS,EACtC,WAAW,aAAa,CAAC,mBAAmB,CAAC,GAAG,SAAS,EACzD,WAAW,MAAM,GAAG,SAAS,EAC7B,eAAe,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,0BA8D3C,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,GACvC,OAAO,SAAS,EAChB,YAAY,MAAM,GAAG,SAAS,uBAO/B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,GACxC,WAAW,aAAa,GAAG,SAAS,KACnC,aAAa,GAAG,SAQlB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,GAC5B,YAAY,aAAa,GAAG,SAAS,EACrC,aAAa,aAAa,CAAC,mBAAmB,CAAC,EAAE,KAChD,aAAa,CAAC,mBAAmB,CAAC,EAMpC,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,YAAY,UAAU,EACtB,YAAY,MAAM,kBAcnB,CAAC"}
|
|
@@ -262,6 +262,10 @@ var selectionToTableAddress = function (selection, table, editingCell) {
|
|
|
262
262
|
var isHeader = headerRow &&
|
|
263
263
|
startRowIndex === tableStartRowIndex &&
|
|
264
264
|
endRowIndex === tableStartRowIndex;
|
|
265
|
+
// Only the totals row
|
|
266
|
+
var isTotals = totalRow &&
|
|
267
|
+
startRowIndex === tableEndRowIndex &&
|
|
268
|
+
endRowIndex === tableEndRowIndex;
|
|
265
269
|
// Full table
|
|
266
270
|
var isAll = tableStartRowIndex === startRowIndex &&
|
|
267
271
|
tableEndRowIndex === endRowIndex &&
|
|
@@ -282,6 +286,18 @@ var selectionToTableAddress = function (selection, table, editingCell) {
|
|
|
282
286
|
: firstColumn === lastColumn
|
|
283
287
|
? firstColumn // Full column rnge
|
|
284
288
|
: "[".concat(firstColumn, "]:[").concat(lastColumn, "]");
|
|
289
|
+
// The column part of a two-part specifier: every column is bracketed there
|
|
290
|
+
// (`Table[[#Headers],[Col]]`, `Table[[#All],[A]:[B]]`), unlike the lone `Table[Col]`.
|
|
291
|
+
var columnItem = isFullRowRange
|
|
292
|
+
? ""
|
|
293
|
+
: firstColumn === lastColumn
|
|
294
|
+
? "[".concat(firstColumn, "]")
|
|
295
|
+
: range;
|
|
296
|
+
var withItem = function (item) {
|
|
297
|
+
return columnItem
|
|
298
|
+
? "".concat(title, "[[").concat(item, "],").concat(columnItem, "]")
|
|
299
|
+
: "".concat(title, "[").concat(item, "]");
|
|
300
|
+
};
|
|
285
301
|
var isEditingCellInsideTable = editingCell
|
|
286
302
|
? (0, grid_1.isCellWithinBounds)(editingCell, table.range)
|
|
287
303
|
: false;
|
|
@@ -296,10 +312,13 @@ var selectionToTableAddress = function (selection, table, editingCell) {
|
|
|
296
312
|
return "".concat(tableName, "[").concat(range, "]");
|
|
297
313
|
}
|
|
298
314
|
if (isFullColumnRange) {
|
|
299
|
-
return
|
|
315
|
+
return withItem("#All");
|
|
300
316
|
}
|
|
301
317
|
if (isHeader) {
|
|
302
|
-
return
|
|
318
|
+
return withItem("#Headers");
|
|
319
|
+
}
|
|
320
|
+
if (isTotals) {
|
|
321
|
+
return withItem("#Totals");
|
|
303
322
|
}
|
|
304
323
|
return "".concat(isEditingCellInsideTable ? "" : tableName, "[@").concat(range, "]");
|
|
305
324
|
};
|
|
@@ -326,6 +345,13 @@ var getTableFromSelection = function (tables, editingCell, selection, sheetName,
|
|
|
326
345
|
}
|
|
327
346
|
var headerRow = (_a = table === null || table === void 0 ? void 0 : table.headerRow) !== null && _a !== void 0 ? _a : true;
|
|
328
347
|
var totalRow = (_b = table === null || table === void 0 ? void 0 : table.totalRow) !== null && _b !== void 0 ? _b : false;
|
|
348
|
+
// A click on the totals row is `Table[[#Totals],[Col]]` from anywhere, like the header row.
|
|
349
|
+
var isTableTotals = totalRow &&
|
|
350
|
+
(table === null || table === void 0 ? void 0 : table.range.endRowIndex) === selection.range.startRowIndex &&
|
|
351
|
+
(table === null || table === void 0 ? void 0 : table.range.endRowIndex) === selection.range.endRowIndex;
|
|
352
|
+
if (isTableTotals) {
|
|
353
|
+
return table;
|
|
354
|
+
}
|
|
329
355
|
var tableDataStartRowIndex = ((_c = table === null || table === void 0 ? void 0 : table.range.startRowIndex) !== null && _c !== void 0 ? _c : 0) + (headerRow ? 1 : 0);
|
|
330
356
|
var tableDataEndRowIndex = ((_d = table === null || table === void 0 ? void 0 : table.range.endRowIndex) !== null && _d !== void 0 ? _d : 0) - (totalRow ? 1 : 0);
|
|
331
357
|
// Full column rnge
|
|
@@ -8,7 +8,7 @@ import type { CanvasGridMethods, CanvasGridProps, ChangeBatchOptions, ChangeBatc
|
|
|
8
8
|
import type { SelectionAttributes as SheetSelectionAttributes } from "../components/canvas-grid/typings";
|
|
9
9
|
import type { BorderLocation } from "../components/toolbar";
|
|
10
10
|
import type { ExportRangeOptions } from "../hooks/use-export-range";
|
|
11
|
-
import type {
|
|
11
|
+
import type { AutoFillType, AXIS, BandedRange, CellData, CellFormat, ConditionalFormatRule, CreateTableOptions, DataValidationRuleRecord, EmbeddedChart, EmbeddedObject, FillOptions, NamedRange, Sheet as SheetBase, SheetRange, SortOrder, TableTheme, TableView } from "../types";
|
|
12
12
|
type CallbacksProps<T extends CellData> = RefObject<CanvasGridProps<T> | null>;
|
|
13
13
|
declare class SpreadsheetCallbacks<T extends CellData> {
|
|
14
14
|
callbacks: CallbacksProps<T>;
|
|
@@ -20,6 +20,11 @@ type SpreadsheetMethods = {
|
|
|
20
20
|
commit(): boolean;
|
|
21
21
|
/** Open Excel's Series dialog (Home > Fill > Series…) for the current selection. */
|
|
22
22
|
openFillSeriesDialog(): void;
|
|
23
|
+
/** Chart clipboard — Ctrl+C / Ctrl+X / Ctrl+V / Ctrl+D on a chart (see `useChartClipboard`). */
|
|
24
|
+
copyChart(chartId: string | number): boolean;
|
|
25
|
+
cutChart(chartId: string | number): boolean;
|
|
26
|
+
pasteChart(): boolean;
|
|
27
|
+
duplicateChart(chartId: string | number): EmbeddedChart | undefined;
|
|
23
28
|
};
|
|
24
29
|
export declare class SpreadsheetApi<T extends CellData = CellData> extends SpreadsheetCallbacks<T> {
|
|
25
30
|
store: ReturnType<typeof getDefaultStore>;
|
|
@@ -174,6 +179,14 @@ export declare class SpreadsheetApi<T extends CellData = CellData> extends Sprea
|
|
|
174
179
|
isChartsAvailable(): boolean;
|
|
175
180
|
createChart(sheetId: number, activeCell: CellInterface, selections: SelectionArea<SheetSelectionAttributes>[], chartSpec?: EmbeddedChart): void;
|
|
176
181
|
deleteChart(chartId: string | number): void;
|
|
182
|
+
/** Put the chart on the clipboard (Excel Ctrl+C on a selected chart). */
|
|
183
|
+
copyChart(chartId: string | number): boolean;
|
|
184
|
+
/** Copy the chart and remove it (Excel Ctrl+X on a selected chart). */
|
|
185
|
+
cutChart(chartId: string | number): boolean;
|
|
186
|
+
/** Paste the copied chart at the active cell of the active sheet; false when none is copied. */
|
|
187
|
+
pasteChart(): boolean;
|
|
188
|
+
/** Create a copy of the chart offset from the original (Excel Ctrl+D). */
|
|
189
|
+
duplicateChart(chartId: string | number): EmbeddedChart | undefined;
|
|
177
190
|
moveChart(chartId: string | number, anchorCell: CellInterface, offsetXPixels: number, offsetYPixels: number): void;
|
|
178
191
|
resizeChart(chartId: string | number, anchorCell: CellInterface, offsetXPixels: number, offsetYPixels: number, width: number, height: number): void;
|
|
179
192
|
updateChart(chart: EmbeddedChart): void;
|
|
@@ -196,7 +209,7 @@ export declare class SpreadsheetApi<T extends CellData = CellData> extends Sprea
|
|
|
196
209
|
copy(e: ClipboardEvent | undefined, sheetId: number, copiedSelections: SelectionArea<SheetSelectionAttributes>[]): void;
|
|
197
210
|
cut(e: ClipboardEvent | undefined, sheetId: number): void;
|
|
198
211
|
paste(e: ClipboardEvent | undefined, sourceSheetId: number | undefined, destinationSheetId: number, copiedSelections: SelectionArea<SheetSelectionAttributes>[] | undefined, activeCell: CellInterface, selections: SelectionArea<SheetSelectionAttributes>[] | undefined, finalSelections: SelectionArea<SheetSelectionAttributes>[] | undefined, shouldDeleteSource: boolean): void;
|
|
199
|
-
createTable(sheetId: number, activeCell: CellInterface, selections: SelectionArea<SheetSelectionAttributes>[], tableSpec?: Partial<TableView>, theme?: TableTheme, bandedRange?: BandedRange): void;
|
|
212
|
+
createTable(sheetId: number, activeCell: CellInterface, selections: SelectionArea<SheetSelectionAttributes>[], tableSpec?: Partial<TableView>, theme?: TableTheme, bandedRange?: BandedRange, options?: CreateTableOptions): void;
|
|
200
213
|
createBasicFilter(sheetId: number, activeCell: CellInterface, selections: SelectionArea<SheetSelectionAttributes>[], basicFilterSpec?: any): void;
|
|
201
214
|
protectRange(sheetId: number, cell: CellInterface, selections: SelectionArea<SheetSelectionAttributes>[] | undefined): void;
|
|
202
215
|
unprotectRange(sheetId: number, protectedRangeId: number | string): void;
|
|
@@ -262,7 +275,7 @@ declare class CellRange<T extends CellData> extends SpreadsheetCallbacks<T> {
|
|
|
262
275
|
* Get effective value of a cell
|
|
263
276
|
* @returns
|
|
264
277
|
*/
|
|
265
|
-
getEffectiveValue(): (string | number | boolean | Date |
|
|
278
|
+
getEffectiveValue(): import("../types").Maybe<string | number | boolean | Date> | (string | number | boolean | Date | null | undefined)[][];
|
|
266
279
|
setValues(values: string[][]): this;
|
|
267
280
|
clearFormatting(): this;
|
|
268
281
|
setFormat<T extends FormattingType>(type: T, value: FormattingValue<T>): this;
|