@mog-sdk/spreadsheet-contracts 0.1.12
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/accessibility/index.d.ts +9 -0
- package/dist/accessibility/index.d.ts.map +1 -0
- package/dist/accessibility/types.d.ts +75 -0
- package/dist/accessibility/types.d.ts.map +1 -0
- package/dist/actions/comments.d.ts +31 -0
- package/dist/actions/comments.d.ts.map +1 -0
- package/dist/actions/index.d.ts +22 -0
- package/dist/actions/index.d.ts.map +1 -0
- package/dist/actions/types.d.ts +448 -0
- package/dist/actions/types.d.ts.map +1 -0
- package/dist/actors/chart.d.ts +88 -0
- package/dist/actors/chart.d.ts.map +1 -0
- package/dist/actors/clipboard.d.ts +243 -0
- package/dist/actors/clipboard.d.ts.map +1 -0
- package/dist/actors/commands.d.ts +1343 -0
- package/dist/actors/commands.d.ts.map +1 -0
- package/dist/actors/comment.d.ts +84 -0
- package/dist/actors/comment.d.ts.map +1 -0
- package/dist/actors/draw-border.d.ts +89 -0
- package/dist/actors/draw-border.d.ts.map +1 -0
- package/dist/actors/editor.d.ts +161 -0
- package/dist/actors/editor.d.ts.map +1 -0
- package/dist/actors/find-replace.d.ts +88 -0
- package/dist/actors/find-replace.d.ts.map +1 -0
- package/dist/actors/focus.d.ts +91 -0
- package/dist/actors/focus.d.ts.map +1 -0
- package/dist/actors/index.d.ts +88 -0
- package/dist/actors/index.d.ts.map +1 -0
- package/dist/actors/input.d.ts +98 -0
- package/dist/actors/input.d.ts.map +1 -0
- package/dist/actors/object-interaction.d.ts +163 -0
- package/dist/actors/object-interaction.d.ts.map +1 -0
- package/dist/actors/object.d.ts +124 -0
- package/dist/actors/object.d.ts.map +1 -0
- package/dist/actors/page-break.d.ts +64 -0
- package/dist/actors/page-break.d.ts.map +1 -0
- package/dist/actors/pane-focus.d.ts +56 -0
- package/dist/actors/pane-focus.d.ts.map +1 -0
- package/dist/actors/renderer.d.ts +197 -0
- package/dist/actors/renderer.d.ts.map +1 -0
- package/dist/actors/selection.d.ts +170 -0
- package/dist/actors/selection.d.ts.map +1 -0
- package/dist/actors/slicer.d.ts +175 -0
- package/dist/actors/slicer.d.ts.map +1 -0
- package/dist/actors/smartart.d.ts +48 -0
- package/dist/actors/smartart.d.ts.map +1 -0
- package/dist/api/index.d.ts +19 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/mutation-receipt.d.ts +26 -0
- package/dist/api/mutation-receipt.d.ts.map +1 -0
- package/dist/api/types.d.ts +1542 -0
- package/dist/api/types.d.ts.map +1 -0
- package/dist/api/workbook/history.d.ts +43 -0
- package/dist/api/workbook/history.d.ts.map +1 -0
- package/dist/api/workbook/index.d.ts +17 -0
- package/dist/api/workbook/index.d.ts.map +1 -0
- package/dist/api/workbook/names.d.ts +104 -0
- package/dist/api/workbook/names.d.ts.map +1 -0
- package/dist/api/workbook/notifications.d.ts +35 -0
- package/dist/api/workbook/notifications.d.ts.map +1 -0
- package/dist/api/workbook/protection.d.ts +14 -0
- package/dist/api/workbook/protection.d.ts.map +1 -0
- package/dist/api/workbook/scenarios.d.ts +45 -0
- package/dist/api/workbook/scenarios.d.ts.map +1 -0
- package/dist/api/workbook/sheets.d.ts +74 -0
- package/dist/api/workbook/sheets.d.ts.map +1 -0
- package/dist/api/workbook/slicers.d.ts +63 -0
- package/dist/api/workbook/slicers.d.ts.map +1 -0
- package/dist/api/workbook/styles.d.ts +19 -0
- package/dist/api/workbook/styles.d.ts.map +1 -0
- package/dist/api/workbook/theme.d.ts +38 -0
- package/dist/api/workbook/theme.d.ts.map +1 -0
- package/dist/api/workbook/viewport.d.ts +85 -0
- package/dist/api/workbook/viewport.d.ts.map +1 -0
- package/dist/api/workbook.d.ts +279 -0
- package/dist/api/workbook.d.ts.map +1 -0
- package/dist/api/worksheet/bindings.d.ts +66 -0
- package/dist/api/worksheet/bindings.d.ts.map +1 -0
- package/dist/api/worksheet/changes.d.ts +60 -0
- package/dist/api/worksheet/changes.d.ts.map +1 -0
- package/dist/api/worksheet/charts.d.ts +83 -0
- package/dist/api/worksheet/charts.d.ts.map +1 -0
- package/dist/api/worksheet/collections/connector-collection.d.ts +7 -0
- package/dist/api/worksheet/collections/connector-collection.d.ts.map +1 -0
- package/dist/api/worksheet/collections/drawing-collection.d.ts +9 -0
- package/dist/api/worksheet/collections/drawing-collection.d.ts.map +1 -0
- package/dist/api/worksheet/collections/equation-collection.d.ts +8 -0
- package/dist/api/worksheet/collections/equation-collection.d.ts.map +1 -0
- package/dist/api/worksheet/collections/index.d.ts +12 -0
- package/dist/api/worksheet/collections/index.d.ts.map +1 -0
- package/dist/api/worksheet/collections/object-collection.d.ts +45 -0
- package/dist/api/worksheet/collections/object-collection.d.ts.map +1 -0
- package/dist/api/worksheet/collections/picture-collection.d.ts +8 -0
- package/dist/api/worksheet/collections/picture-collection.d.ts.map +1 -0
- package/dist/api/worksheet/collections/shape-collection.d.ts +8 -0
- package/dist/api/worksheet/collections/shape-collection.d.ts.map +1 -0
- package/dist/api/worksheet/collections/textbox-collection.d.ts +8 -0
- package/dist/api/worksheet/collections/textbox-collection.d.ts.map +1 -0
- package/dist/api/worksheet/collections/wordart-collection.d.ts +8 -0
- package/dist/api/worksheet/collections/wordart-collection.d.ts.map +1 -0
- package/dist/api/worksheet/comments.d.ts +143 -0
- package/dist/api/worksheet/comments.d.ts.map +1 -0
- package/dist/api/worksheet/conditional-formats.d.ts +101 -0
- package/dist/api/worksheet/conditional-formats.d.ts.map +1 -0
- package/dist/api/worksheet/filters.d.ts +141 -0
- package/dist/api/worksheet/filters.d.ts.map +1 -0
- package/dist/api/worksheet/form-controls.d.ts +22 -0
- package/dist/api/worksheet/form-controls.d.ts.map +1 -0
- package/dist/api/worksheet/format-mappings.d.ts +50 -0
- package/dist/api/worksheet/format-mappings.d.ts.map +1 -0
- package/dist/api/worksheet/formats.d.ts +136 -0
- package/dist/api/worksheet/formats.d.ts.map +1 -0
- package/dist/api/worksheet/handles/chart-handle.d.ts +11 -0
- package/dist/api/worksheet/handles/chart-handle.d.ts.map +1 -0
- package/dist/api/worksheet/handles/connector-handle.d.ts +9 -0
- package/dist/api/worksheet/handles/connector-handle.d.ts.map +1 -0
- package/dist/api/worksheet/handles/drawing-handle.d.ts +14 -0
- package/dist/api/worksheet/handles/drawing-handle.d.ts.map +1 -0
- package/dist/api/worksheet/handles/equation-handle.d.ts +9 -0
- package/dist/api/worksheet/handles/equation-handle.d.ts.map +1 -0
- package/dist/api/worksheet/handles/floating-object-handle.d.ts +75 -0
- package/dist/api/worksheet/handles/floating-object-handle.d.ts.map +1 -0
- package/dist/api/worksheet/handles/index.d.ts +16 -0
- package/dist/api/worksheet/handles/index.d.ts.map +1 -0
- package/dist/api/worksheet/handles/ole-object-handle.d.ts +10 -0
- package/dist/api/worksheet/handles/ole-object-handle.d.ts.map +1 -0
- package/dist/api/worksheet/handles/picture-handle.d.ts +9 -0
- package/dist/api/worksheet/handles/picture-handle.d.ts.map +1 -0
- package/dist/api/worksheet/handles/shape-handle.d.ts +11 -0
- package/dist/api/worksheet/handles/shape-handle.d.ts.map +1 -0
- package/dist/api/worksheet/handles/slicer-handle.d.ts +13 -0
- package/dist/api/worksheet/handles/slicer-handle.d.ts.map +1 -0
- package/dist/api/worksheet/handles/smartart-handle.d.ts +11 -0
- package/dist/api/worksheet/handles/smartart-handle.d.ts.map +1 -0
- package/dist/api/worksheet/handles/textbox-handle.d.ts +9 -0
- package/dist/api/worksheet/handles/textbox-handle.d.ts.map +1 -0
- package/dist/api/worksheet/handles/wordart-handle.d.ts +10 -0
- package/dist/api/worksheet/handles/wordart-handle.d.ts.map +1 -0
- package/dist/api/worksheet/hyperlinks.d.ts +52 -0
- package/dist/api/worksheet/hyperlinks.d.ts.map +1 -0
- package/dist/api/worksheet/index.d.ts +35 -0
- package/dist/api/worksheet/index.d.ts.map +1 -0
- package/dist/api/worksheet/internal.d.ts +105 -0
- package/dist/api/worksheet/internal.d.ts.map +1 -0
- package/dist/api/worksheet/layout.d.ts +150 -0
- package/dist/api/worksheet/layout.d.ts.map +1 -0
- package/dist/api/worksheet/names.d.ts +52 -0
- package/dist/api/worksheet/names.d.ts.map +1 -0
- package/dist/api/worksheet/objects.d.ts +124 -0
- package/dist/api/worksheet/objects.d.ts.map +1 -0
- package/dist/api/worksheet/outline.d.ts +101 -0
- package/dist/api/worksheet/outline.d.ts.map +1 -0
- package/dist/api/worksheet/pivots.d.ts +257 -0
- package/dist/api/worksheet/pivots.d.ts.map +1 -0
- package/dist/api/worksheet/print.d.ts +108 -0
- package/dist/api/worksheet/print.d.ts.map +1 -0
- package/dist/api/worksheet/protection.d.ts +73 -0
- package/dist/api/worksheet/protection.d.ts.map +1 -0
- package/dist/api/worksheet/settings.d.ts +54 -0
- package/dist/api/worksheet/settings.d.ts.map +1 -0
- package/dist/api/worksheet/slicers.d.ts +101 -0
- package/dist/api/worksheet/slicers.d.ts.map +1 -0
- package/dist/api/worksheet/smartart.d.ts +49 -0
- package/dist/api/worksheet/smartart.d.ts.map +1 -0
- package/dist/api/worksheet/sparklines.d.ts +143 -0
- package/dist/api/worksheet/sparklines.d.ts.map +1 -0
- package/dist/api/worksheet/structure.d.ts +44 -0
- package/dist/api/worksheet/structure.d.ts.map +1 -0
- package/dist/api/worksheet/tables.d.ts +313 -0
- package/dist/api/worksheet/tables.d.ts.map +1 -0
- package/dist/api/worksheet/validation.d.ts +101 -0
- package/dist/api/worksheet/validation.d.ts.map +1 -0
- package/dist/api/worksheet/view.d.ts +91 -0
- package/dist/api/worksheet/view.d.ts.map +1 -0
- package/dist/api/worksheet.d.ts +370 -0
- package/dist/api/worksheet.d.ts.map +1 -0
- package/dist/app/index.d.ts +17 -0
- package/dist/app/index.d.ts.map +1 -0
- package/dist/app/types.d.ts +349 -0
- package/dist/app/types.d.ts.map +1 -0
- package/dist/apps/api.d.ts +519 -0
- package/dist/apps/api.d.ts.map +1 -0
- package/dist/apps/bindings.d.ts +72 -0
- package/dist/apps/bindings.d.ts.map +1 -0
- package/dist/apps/index.d.ts +13 -0
- package/dist/apps/index.d.ts.map +1 -0
- package/dist/apps/types.d.ts +224 -0
- package/dist/apps/types.d.ts.map +1 -0
- package/dist/apps/views.d.ts +142 -0
- package/dist/apps/views.d.ts.map +1 -0
- package/dist/bridges/chart-bridge.d.ts +172 -0
- package/dist/bridges/chart-bridge.d.ts.map +1 -0
- package/dist/bridges/equation-bridge.d.ts +74 -0
- package/dist/bridges/equation-bridge.d.ts.map +1 -0
- package/dist/bridges/index.d.ts +25 -0
- package/dist/bridges/index.d.ts.map +1 -0
- package/dist/bridges/ink-recognition-bridge.d.ts +142 -0
- package/dist/bridges/ink-recognition-bridge.d.ts.map +1 -0
- package/dist/bridges/locale-bridge.d.ts +93 -0
- package/dist/bridges/locale-bridge.d.ts.map +1 -0
- package/dist/bridges/pivot-bridge.d.ts +201 -0
- package/dist/bridges/pivot-bridge.d.ts.map +1 -0
- package/dist/bridges/schema-bridge.d.ts +137 -0
- package/dist/bridges/schema-bridge.d.ts.map +1 -0
- package/dist/bridges/smartart-bridge.d.ts +217 -0
- package/dist/bridges/smartart-bridge.d.ts.map +1 -0
- package/dist/bridges/wordart-bridge.d.ts +86 -0
- package/dist/bridges/wordart-bridge.d.ts.map +1 -0
- package/dist/capabilities/errors.d.ts +16 -0
- package/dist/capabilities/errors.d.ts.map +1 -0
- package/dist/capabilities/gated-api.d.ts +355 -0
- package/dist/capabilities/gated-api.d.ts.map +1 -0
- package/dist/capabilities/grants.d.ts +239 -0
- package/dist/capabilities/grants.d.ts.map +1 -0
- package/dist/capabilities/index.d.ts +24 -0
- package/dist/capabilities/index.d.ts.map +1 -0
- package/dist/capabilities/manifest.d.ts +128 -0
- package/dist/capabilities/manifest.d.ts.map +1 -0
- package/dist/capabilities/requester.d.ts +209 -0
- package/dist/capabilities/requester.d.ts.map +1 -0
- package/dist/capabilities/scope.d.ts +55 -0
- package/dist/capabilities/scope.d.ts.map +1 -0
- package/dist/capabilities/sensitive.d.ts +279 -0
- package/dist/capabilities/sensitive.d.ts.map +1 -0
- package/dist/capabilities/taxonomy.d.ts +15 -0
- package/dist/capabilities/taxonomy.d.ts.map +1 -0
- package/dist/capabilities/types.d.ts +91 -0
- package/dist/capabilities/types.d.ts.map +1 -0
- package/dist/cells/cell-identity.d.ts +281 -0
- package/dist/cells/cell-identity.d.ts.map +1 -0
- package/dist/cells/cell-style.d.ts +67 -0
- package/dist/cells/cell-style.d.ts.map +1 -0
- package/dist/cells/formula-string.d.ts +37 -0
- package/dist/cells/formula-string.d.ts.map +1 -0
- package/dist/cells/index.d.ts +7 -0
- package/dist/cells/index.d.ts.map +1 -0
- package/dist/cells/range-ref.d.ts +77 -0
- package/dist/cells/range-ref.d.ts.map +1 -0
- package/dist/cells/rich-text.d.ts +66 -0
- package/dist/cells/rich-text.d.ts.map +1 -0
- package/dist/cells/spill.d.ts +121 -0
- package/dist/cells/spill.d.ts.map +1 -0
- package/dist/conditional-format/index.d.ts +11 -0
- package/dist/conditional-format/index.d.ts.map +1 -0
- package/dist/conditional-format/presets.d.ts +54 -0
- package/dist/conditional-format/presets.d.ts.map +1 -0
- package/dist/conditional-format/range-utils.d.ts +11 -0
- package/dist/conditional-format/range-utils.d.ts.map +1 -0
- package/dist/conditional-format/render-types.d.ts +80 -0
- package/dist/conditional-format/render-types.d.ts.map +1 -0
- package/dist/connections/api-errors.d.ts +29 -0
- package/dist/connections/api-errors.d.ts.map +1 -0
- package/dist/connections/api.d.ts +879 -0
- package/dist/connections/api.d.ts.map +1 -0
- package/dist/connections/database-bridge-types.d.ts +108 -0
- package/dist/connections/database-bridge-types.d.ts.map +1 -0
- package/dist/connections/index.d.ts +5 -0
- package/dist/connections/index.d.ts.map +1 -0
- package/dist/connections/power-query.d.ts +1 -0
- package/dist/connections/power-query.d.ts.map +1 -0
- package/dist/connections/query.d.ts +144 -0
- package/dist/connections/query.d.ts.map +1 -0
- package/dist/context-menu/index.d.ts +10 -0
- package/dist/context-menu/index.d.ts.map +1 -0
- package/dist/context-menu/types.d.ts +28 -0
- package/dist/context-menu/types.d.ts.map +1 -0
- package/dist/core/commands.d.ts +143 -0
- package/dist/core/commands.d.ts.map +1 -0
- package/dist/core/core.d.ts +943 -0
- package/dist/core/core.d.ts.map +1 -0
- package/dist/core/disposable.d.ts +30 -0
- package/dist/core/disposable.d.ts.map +1 -0
- package/dist/core/event-base.d.ts +31 -0
- package/dist/core/event-base.d.ts.map +1 -0
- package/dist/core/execution.d.ts +79 -0
- package/dist/core/execution.d.ts.map +1 -0
- package/dist/core/formatted-text.d.ts +8 -0
- package/dist/core/formatted-text.d.ts.map +1 -0
- package/dist/core/index.d.ts +10 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/result.d.ts +23 -0
- package/dist/core/result.d.ts.map +1 -0
- package/dist/core/schema.d.ts +360 -0
- package/dist/core/schema.d.ts.map +1 -0
- package/dist/core/testing.d.ts +309 -0
- package/dist/core/testing.d.ts.map +1 -0
- package/dist/culture/index.d.ts +11 -0
- package/dist/culture/index.d.ts.map +1 -0
- package/dist/culture/types.d.ts +320 -0
- package/dist/culture/types.d.ts.map +1 -0
- package/dist/data/charts.d.ts +412 -0
- package/dist/data/charts.d.ts.map +1 -0
- package/dist/data/conditional-format.d.ts +188 -0
- package/dist/data/conditional-format.d.ts.map +1 -0
- package/dist/data/filter.d.ts +364 -0
- package/dist/data/filter.d.ts.map +1 -0
- package/dist/data/grouping.d.ts +170 -0
- package/dist/data/grouping.d.ts.map +1 -0
- package/dist/data/index.d.ts +12 -0
- package/dist/data/index.d.ts.map +1 -0
- package/dist/data/named-ranges.d.ts +104 -0
- package/dist/data/named-ranges.d.ts.map +1 -0
- package/dist/data/pivot.d.ts +68 -0
- package/dist/data/pivot.d.ts.map +1 -0
- package/dist/data/slicers.d.ts +417 -0
- package/dist/data/slicers.d.ts.map +1 -0
- package/dist/data/sorting.d.ts +172 -0
- package/dist/data/sorting.d.ts.map +1 -0
- package/dist/data/sparklines.d.ts +358 -0
- package/dist/data/sparklines.d.ts.map +1 -0
- package/dist/data/tables.d.ts +333 -0
- package/dist/data/tables.d.ts.map +1 -0
- package/dist/data/trace-arrows.d.ts +165 -0
- package/dist/data/trace-arrows.d.ts.map +1 -0
- package/dist/diagnostics/core.d.ts +219 -0
- package/dist/diagnostics/core.d.ts.map +1 -0
- package/dist/diagnostics/index.d.ts +9 -0
- package/dist/diagnostics/index.d.ts.map +1 -0
- package/dist/diagnostics/style.d.ts +196 -0
- package/dist/diagnostics/style.d.ts.map +1 -0
- package/dist/document/comments.d.ts +109 -0
- package/dist/document/comments.d.ts.map +1 -0
- package/dist/document/document.d.ts +182 -0
- package/dist/document/document.d.ts.map +1 -0
- package/dist/document/index.d.ts +5 -0
- package/dist/document/index.d.ts.map +1 -0
- package/dist/document/protection.d.ts +114 -0
- package/dist/document/protection.d.ts.map +1 -0
- package/dist/document/search.d.ts +202 -0
- package/dist/document/search.d.ts.map +1 -0
- package/dist/drawing/index.d.ts +8 -0
- package/dist/drawing/index.d.ts.map +1 -0
- package/dist/drawing/three-d.d.ts +171 -0
- package/dist/drawing/three-d.d.ts.map +1 -0
- package/dist/editor/drag.d.ts +178 -0
- package/dist/editor/drag.d.ts.map +1 -0
- package/dist/editor/editor.d.ts +59 -0
- package/dist/editor/editor.d.ts.map +1 -0
- package/dist/editor/form-controls.d.ts +428 -0
- package/dist/editor/form-controls.d.ts.map +1 -0
- package/dist/editor/index.d.ts +4 -0
- package/dist/editor/index.d.ts.map +1 -0
- package/dist/equation/errors.d.ts +19 -0
- package/dist/equation/errors.d.ts.map +1 -0
- package/dist/equation/index.d.ts +12 -0
- package/dist/equation/index.d.ts.map +1 -0
- package/dist/equation/omml-ast.d.ts +358 -0
- package/dist/equation/omml-ast.d.ts.map +1 -0
- package/dist/equation/templates.d.ts +26 -0
- package/dist/equation/templates.d.ts.map +1 -0
- package/dist/equation/types.d.ts +87 -0
- package/dist/equation/types.d.ts.map +1 -0
- package/dist/events/canvas-object-events.d.ts +31 -0
- package/dist/events/canvas-object-events.d.ts.map +1 -0
- package/dist/events/cell-events.d.ts +60 -0
- package/dist/events/cell-events.d.ts.map +1 -0
- package/dist/events/chart-events.d.ts +61 -0
- package/dist/events/chart-events.d.ts.map +1 -0
- package/dist/events/comment-events.d.ts +43 -0
- package/dist/events/comment-events.d.ts.map +1 -0
- package/dist/events/conditional-formatting-events.d.ts +40 -0
- package/dist/events/conditional-formatting-events.d.ts.map +1 -0
- package/dist/events/data-tools-events.d.ts +29 -0
- package/dist/events/data-tools-events.d.ts.map +1 -0
- package/dist/events/file-io-events.d.ts +39 -0
- package/dist/events/file-io-events.d.ts.map +1 -0
- package/dist/events/filter-events.d.ts +43 -0
- package/dist/events/filter-events.d.ts.map +1 -0
- package/dist/events/floating-object-events.d.ts +158 -0
- package/dist/events/floating-object-events.d.ts.map +1 -0
- package/dist/events/grouping-events.d.ts +75 -0
- package/dist/events/grouping-events.d.ts.map +1 -0
- package/dist/events/index.d.ts +129 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/ink-collaboration-events.d.ts +57 -0
- package/dist/events/ink-collaboration-events.d.ts.map +1 -0
- package/dist/events/ink-events.d.ts +33 -0
- package/dist/events/ink-events.d.ts.map +1 -0
- package/dist/events/ink-recognition-events.d.ts +149 -0
- package/dist/events/ink-recognition-events.d.ts.map +1 -0
- package/dist/events/ink-stroke-events.d.ts +197 -0
- package/dist/events/ink-stroke-events.d.ts.map +1 -0
- package/dist/events/merge-events.d.ts +46 -0
- package/dist/events/merge-events.d.ts.map +1 -0
- package/dist/events/named-range-events.d.ts +24 -0
- package/dist/events/named-range-events.d.ts.map +1 -0
- package/dist/events/pivot-events.d.ts +47 -0
- package/dist/events/pivot-events.d.ts.map +1 -0
- package/dist/events/print-events.d.ts +75 -0
- package/dist/events/print-events.d.ts.map +1 -0
- package/dist/events/recalc-events.d.ts +20 -0
- package/dist/events/recalc-events.d.ts.map +1 -0
- package/dist/events/scenario-events.d.ts +37 -0
- package/dist/events/scenario-events.d.ts.map +1 -0
- package/dist/events/selection-events.d.ts +16 -0
- package/dist/events/selection-events.d.ts.map +1 -0
- package/dist/events/settings-events.d.ts +41 -0
- package/dist/events/settings-events.d.ts.map +1 -0
- package/dist/events/sheet-events.d.ts +68 -0
- package/dist/events/sheet-events.d.ts.map +1 -0
- package/dist/events/slicer-events.d.ts +47 -0
- package/dist/events/slicer-events.d.ts.map +1 -0
- package/dist/events/smartart-events.d.ts +222 -0
- package/dist/events/smartart-events.d.ts.map +1 -0
- package/dist/events/sparkline-events.d.ts +68 -0
- package/dist/events/sparkline-events.d.ts.map +1 -0
- package/dist/events/store-events.d.ts +18 -0
- package/dist/events/store-events.d.ts.map +1 -0
- package/dist/events/structure-events.d.ts +76 -0
- package/dist/events/structure-events.d.ts.map +1 -0
- package/dist/events/table-events.d.ts +99 -0
- package/dist/events/table-events.d.ts.map +1 -0
- package/dist/events/validation-events.d.ts +85 -0
- package/dist/events/validation-events.d.ts.map +1 -0
- package/dist/events/view-events.d.ts +72 -0
- package/dist/events/view-events.d.ts.map +1 -0
- package/dist/events/wordart-events.d.ts +169 -0
- package/dist/events/wordart-events.d.ts.map +1 -0
- package/dist/events.d.ts +41 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/extensions/index.d.ts +9 -0
- package/dist/extensions/index.d.ts.map +1 -0
- package/dist/extensions/types.d.ts +64 -0
- package/dist/extensions/types.d.ts.map +1 -0
- package/dist/filesystem/index.d.ts +11 -0
- package/dist/filesystem/index.d.ts.map +1 -0
- package/dist/filesystem/paths.d.ts +38 -0
- package/dist/filesystem/paths.d.ts.map +1 -0
- package/dist/filesystem/permissions.d.ts +89 -0
- package/dist/filesystem/permissions.d.ts.map +1 -0
- package/dist/filesystem/types.d.ts +251 -0
- package/dist/filesystem/types.d.ts.map +1 -0
- package/dist/fill/custom-lists.d.ts +41 -0
- package/dist/fill/custom-lists.d.ts.map +1 -0
- package/dist/fill/index.d.ts +11 -0
- package/dist/fill/index.d.ts.map +1 -0
- package/dist/fill/types.d.ts +102 -0
- package/dist/fill/types.d.ts.map +1 -0
- package/dist/formatting/format-registry.d.ts +45 -0
- package/dist/formatting/format-registry.d.ts.map +1 -0
- package/dist/formatting/index.d.ts +9 -0
- package/dist/formatting/index.d.ts.map +1 -0
- package/dist/formatting/theme.d.ts +108 -0
- package/dist/formatting/theme.d.ts.map +1 -0
- package/dist/index.d.ts +49 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/ink/index.d.ts +16 -0
- package/dist/ink/index.d.ts.map +1 -0
- package/dist/ink/spatial-index.d.ts +113 -0
- package/dist/ink/spatial-index.d.ts.map +1 -0
- package/dist/ink/types.d.ts +558 -0
- package/dist/ink/types.d.ts.map +1 -0
- package/dist/kernel/floating-object-manager.d.ts +68 -0
- package/dist/kernel/floating-object-manager.d.ts.map +1 -0
- package/dist/kernel/index.d.ts +12 -0
- package/dist/kernel/index.d.ts.map +1 -0
- package/dist/kernel/kernel-context.d.ts +129 -0
- package/dist/kernel/kernel-context.d.ts.map +1 -0
- package/dist/keyboard/actions.d.ts +328 -0
- package/dist/keyboard/actions.d.ts.map +1 -0
- package/dist/keyboard/binding-utils.d.ts +112 -0
- package/dist/keyboard/binding-utils.d.ts.map +1 -0
- package/dist/keyboard/customization.d.ts +121 -0
- package/dist/keyboard/customization.d.ts.map +1 -0
- package/dist/keyboard/display-utils.d.ts +9 -0
- package/dist/keyboard/display-utils.d.ts.map +1 -0
- package/dist/keyboard/excel-reference.d.ts +28 -0
- package/dist/keyboard/excel-reference.d.ts.map +1 -0
- package/dist/keyboard/index.d.ts +16 -0
- package/dist/keyboard/index.d.ts.map +1 -0
- package/dist/keyboard/input.d.ts +124 -0
- package/dist/keyboard/input.d.ts.map +1 -0
- package/dist/keyboard/physical-keys.d.ts +79 -0
- package/dist/keyboard/physical-keys.d.ts.map +1 -0
- package/dist/keyboard/shortcuts/definitions/index.d.ts +10 -0
- package/dist/keyboard/shortcuts/definitions/index.d.ts.map +1 -0
- package/dist/keyboard/shortcuts/types.d.ts +347 -0
- package/dist/keyboard/shortcuts/types.d.ts.map +1 -0
- package/dist/machines/index.d.ts +12 -0
- package/dist/machines/index.d.ts.map +1 -0
- package/dist/machines/snapshots.d.ts +160 -0
- package/dist/machines/snapshots.d.ts.map +1 -0
- package/dist/machines/types.d.ts +64 -0
- package/dist/machines/types.d.ts.map +1 -0
- package/dist/number-formats/constants.d.ts +39 -0
- package/dist/number-formats/constants.d.ts.map +1 -0
- package/dist/number-formats/index.d.ts +14 -0
- package/dist/number-formats/index.d.ts.map +1 -0
- package/dist/number-formats/locale/index.d.ts +5 -0
- package/dist/number-formats/locale/index.d.ts.map +1 -0
- package/dist/number-formats/locale/locale-defaults.d.ts +17 -0
- package/dist/number-formats/locale/locale-defaults.d.ts.map +1 -0
- package/dist/number-formats/registry.d.ts +52 -0
- package/dist/number-formats/registry.d.ts.map +1 -0
- package/dist/number-formats/types.d.ts +134 -0
- package/dist/number-formats/types.d.ts.map +1 -0
- package/dist/objects/canvas-object.d.ts +157 -0
- package/dist/objects/canvas-object.d.ts.map +1 -0
- package/dist/objects/drawing-object.d.ts +144 -0
- package/dist/objects/drawing-object.d.ts.map +1 -0
- package/dist/objects/floating-objects.d.ts +742 -0
- package/dist/objects/floating-objects.d.ts.map +1 -0
- package/dist/objects/index.d.ts +5 -0
- package/dist/objects/index.d.ts.map +1 -0
- package/dist/objects/object-bounds-reader.d.ts +25 -0
- package/dist/objects/object-bounds-reader.d.ts.map +1 -0
- package/dist/objects/object-mutator.d.ts +30 -0
- package/dist/objects/object-mutator.d.ts.map +1 -0
- package/dist/performance/index.d.ts +8 -0
- package/dist/performance/index.d.ts.map +1 -0
- package/dist/performance/profiler-types.d.ts +351 -0
- package/dist/performance/profiler-types.d.ts.map +1 -0
- package/dist/platform/identity.d.ts +24 -0
- package/dist/platform/identity.d.ts.map +1 -0
- package/dist/platform/index.d.ts +17 -0
- package/dist/platform/index.d.ts.map +1 -0
- package/dist/platform/types.d.ts +359 -0
- package/dist/platform/types.d.ts.map +1 -0
- package/dist/rendering/canvas-bridge-types.d.ts +68 -0
- package/dist/rendering/canvas-bridge-types.d.ts.map +1 -0
- package/dist/rendering/constants.d.ts +76 -0
- package/dist/rendering/constants.d.ts.map +1 -0
- package/dist/rendering/coordinates.d.ts +452 -0
- package/dist/rendering/coordinates.d.ts.map +1 -0
- package/dist/rendering/coordinator-interfaces.d.ts +163 -0
- package/dist/rendering/coordinator-interfaces.d.ts.map +1 -0
- package/dist/rendering/data-sources.d.ts +372 -0
- package/dist/rendering/data-sources.d.ts.map +1 -0
- package/dist/rendering/grid-region.d.ts +32 -0
- package/dist/rendering/grid-region.d.ts.map +1 -0
- package/dist/rendering/grid-renderer.d.ts +391 -0
- package/dist/rendering/grid-renderer.d.ts.map +1 -0
- package/dist/rendering/grouping.d.ts +21 -0
- package/dist/rendering/grouping.d.ts.map +1 -0
- package/dist/rendering/hit-test-service.d.ts +58 -0
- package/dist/rendering/hit-test-service.d.ts.map +1 -0
- package/dist/rendering/hit-test.d.ts +223 -0
- package/dist/rendering/hit-test.d.ts.map +1 -0
- package/dist/rendering/index.d.ts +25 -0
- package/dist/rendering/index.d.ts.map +1 -0
- package/dist/rendering/interactive-elements.d.ts +121 -0
- package/dist/rendering/interactive-elements.d.ts.map +1 -0
- package/dist/rendering/primitives.d.ts +17 -0
- package/dist/rendering/primitives.d.ts.map +1 -0
- package/dist/rendering/render-context.d.ts +457 -0
- package/dist/rendering/render-context.d.ts.map +1 -0
- package/dist/rendering/text-measurement-service.d.ts +197 -0
- package/dist/rendering/text-measurement-service.d.ts.map +1 -0
- package/dist/ribbon/collapse-configs.d.ts +298 -0
- package/dist/ribbon/collapse-configs.d.ts.map +1 -0
- package/dist/ribbon/collapse-types.d.ts +76 -0
- package/dist/ribbon/collapse-types.d.ts.map +1 -0
- package/dist/ribbon/index.d.ts +25 -0
- package/dist/ribbon/index.d.ts.map +1 -0
- package/dist/selection/index.d.ts +10 -0
- package/dist/selection/index.d.ts.map +1 -0
- package/dist/selection/registry.d.ts +17 -0
- package/dist/selection/registry.d.ts.map +1 -0
- package/dist/selection/types.d.ts +82 -0
- package/dist/selection/types.d.ts.map +1 -0
- package/dist/selectors/index.d.ts +8 -0
- package/dist/selectors/index.d.ts.map +1 -0
- package/dist/selectors/smart-art.d.ts +58 -0
- package/dist/selectors/smart-art.d.ts.map +1 -0
- package/dist/services/index.d.ts +273 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/smartart/index.d.ts +26 -0
- package/dist/smartart/index.d.ts.map +1 -0
- package/dist/smartart/layouts.d.ts +193 -0
- package/dist/smartart/layouts.d.ts.map +1 -0
- package/dist/smartart/ooxml-algorithm-types.d.ts +939 -0
- package/dist/smartart/ooxml-algorithm-types.d.ts.map +1 -0
- package/dist/smartart/ooxml-data-model-types.d.ts +845 -0
- package/dist/smartart/ooxml-data-model-types.d.ts.map +1 -0
- package/dist/smartart/ooxml-drawing-types.d.ts +356 -0
- package/dist/smartart/ooxml-drawing-types.d.ts.map +1 -0
- package/dist/smartart/ooxml-engine-types.d.ts +873 -0
- package/dist/smartart/ooxml-engine-types.d.ts.map +1 -0
- package/dist/smartart/ooxml-layout-types.d.ts +405 -0
- package/dist/smartart/ooxml-layout-types.d.ts.map +1 -0
- package/dist/smartart/ooxml-style-types.d.ts +474 -0
- package/dist/smartart/ooxml-style-types.d.ts.map +1 -0
- package/dist/smartart/styles.d.ts +137 -0
- package/dist/smartart/styles.d.ts.map +1 -0
- package/dist/smartart/types.d.ts +323 -0
- package/dist/smartart/types.d.ts.map +1 -0
- package/dist/storage/capabilities.d.ts +33 -0
- package/dist/storage/capabilities.d.ts.map +1 -0
- package/dist/storage/connection.d.ts +183 -0
- package/dist/storage/connection.d.ts.map +1 -0
- package/dist/storage/index.d.ts +13 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/query.d.ts +91 -0
- package/dist/storage/query.d.ts.map +1 -0
- package/dist/storage/table-driver.d.ts +249 -0
- package/dist/storage/table-driver.d.ts.map +1 -0
- package/dist/store/cell-schema.d.ts +235 -0
- package/dist/store/cell-schema.d.ts.map +1 -0
- package/dist/store/equation-schema.d.ts +22 -0
- package/dist/store/equation-schema.d.ts.map +1 -0
- package/dist/store/index.d.ts +33 -0
- package/dist/store/index.d.ts.map +1 -0
- package/dist/store/ink-schema.d.ts +26 -0
- package/dist/store/ink-schema.d.ts.map +1 -0
- package/dist/store/scenarios-schema.d.ts +105 -0
- package/dist/store/scenarios-schema.d.ts.map +1 -0
- package/dist/store/schema-types.d.ts +113 -0
- package/dist/store/schema-types.d.ts.map +1 -0
- package/dist/store/sheet-maps-schema.d.ts +222 -0
- package/dist/store/sheet-maps-schema.d.ts.map +1 -0
- package/dist/store/sheet-meta-schema.d.ts +16 -0
- package/dist/store/sheet-meta-schema.d.ts.map +1 -0
- package/dist/store/smartart-schema.d.ts +17 -0
- package/dist/store/smartart-schema.d.ts.map +1 -0
- package/dist/store/store-types.d.ts +381 -0
- package/dist/store/store-types.d.ts.map +1 -0
- package/dist/store/wordart-schema.d.ts +13 -0
- package/dist/store/wordart-schema.d.ts.map +1 -0
- package/dist/store/workbook-schema.d.ts +16 -0
- package/dist/store/workbook-schema.d.ts.map +1 -0
- package/dist/styles/built-in-styles.d.ts +10 -0
- package/dist/styles/built-in-styles.d.ts.map +1 -0
- package/dist/styles/index.d.ts +18 -0
- package/dist/styles/index.d.ts.map +1 -0
- package/dist/utils/a1.d.ts +12 -0
- package/dist/utils/a1.d.ts.map +1 -0
- package/dist/utils/datetime.d.ts +7 -0
- package/dist/utils/datetime.d.ts.map +1 -0
- package/dist/utils/function-registry.d.ts +40 -0
- package/dist/utils/function-registry.d.ts.map +1 -0
- package/dist/utils/index.d.ts +9 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/protection.d.ts +9 -0
- package/dist/utils/protection.d.ts.map +1 -0
- package/dist/utils/range-navigation.d.ts +9 -0
- package/dist/utils/range-navigation.d.ts.map +1 -0
- package/dist/utils/range.d.ts +9 -0
- package/dist/utils/range.d.ts.map +1 -0
- package/dist/utils/rich-text.d.ts +9 -0
- package/dist/utils/rich-text.d.ts.map +1 -0
- package/dist/viewport/geometry.d.ts +90 -0
- package/dist/viewport/geometry.d.ts.map +1 -0
- package/dist/viewport/grid-canvas.d.ts +133 -0
- package/dist/viewport/grid-canvas.d.ts.map +1 -0
- package/dist/viewport/index.d.ts +5 -0
- package/dist/viewport/index.d.ts.map +1 -0
- package/dist/viewport/viewport-config.d.ts +95 -0
- package/dist/viewport/viewport-config.d.ts.map +1 -0
- package/dist/viewport/viewport.d.ts +191 -0
- package/dist/viewport/viewport.d.ts.map +1 -0
- package/dist/views/index.d.ts +9 -0
- package/dist/views/index.d.ts.map +1 -0
- package/dist/views/types.d.ts +161 -0
- package/dist/views/types.d.ts.map +1 -0
- package/dist/what-if/index.d.ts +2 -0
- package/dist/what-if/index.d.ts.map +1 -0
- package/dist/what-if/what-if.d.ts +152 -0
- package/dist/what-if/what-if.d.ts.map +1 -0
- package/dist/window-manager/index.d.ts +134 -0
- package/dist/window-manager/index.d.ts.map +1 -0
- package/dist/wordart/effects.d.ts +611 -0
- package/dist/wordart/effects.d.ts.map +1 -0
- package/dist/wordart/index.d.ts +17 -0
- package/dist/wordart/index.d.ts.map +1 -0
- package/dist/wordart/presets.d.ts +133 -0
- package/dist/wordart/presets.d.ts.map +1 -0
- package/dist/wordart/types.d.ts +444 -0
- package/dist/wordart/types.d.ts.map +1 -0
- package/dist/workflows/context.d.ts +777 -0
- package/dist/workflows/context.d.ts.map +1 -0
- package/dist/workflows/definition.d.ts +256 -0
- package/dist/workflows/definition.d.ts.map +1 -0
- package/dist/workflows/events.d.ts +397 -0
- package/dist/workflows/events.d.ts.map +1 -0
- package/dist/workflows/index.d.ts +19 -0
- package/dist/workflows/index.d.ts.map +1 -0
- package/dist/workflows/instance.d.ts +358 -0
- package/dist/workflows/instance.d.ts.map +1 -0
- package/dist/workflows/runtime.d.ts +287 -0
- package/dist/workflows/runtime.d.ts.map +1 -0
- package/dist/workflows/triggers.d.ts +335 -0
- package/dist/workflows/triggers.d.ts.map +1 -0
- package/dist/workflows/versioning.d.ts +245 -0
- package/dist/workflows/versioning.d.ts.map +1 -0
- package/dist/xlsx-parser/conditional-format.d.ts +137 -0
- package/dist/xlsx-parser/conditional-format.d.ts.map +1 -0
- package/dist/xlsx-parser/core.d.ts +622 -0
- package/dist/xlsx-parser/core.d.ts.map +1 -0
- package/dist/xlsx-parser/data-validation.d.ts +55 -0
- package/dist/xlsx-parser/data-validation.d.ts.map +1 -0
- package/dist/xlsx-parser/errors.d.ts +38 -0
- package/dist/xlsx-parser/errors.d.ts.map +1 -0
- package/dist/xlsx-parser/index.d.ts +17 -0
- package/dist/xlsx-parser/index.d.ts.map +1 -0
- package/dist/xlsx-parser/options.d.ts +89 -0
- package/dist/xlsx-parser/options.d.ts.map +1 -0
- package/dist/xlsx-parser/styles.d.ts +157 -0
- package/dist/xlsx-parser/styles.d.ts.map +1 -0
- package/dist/xlsx-parser/table.d.ts +170 -0
- package/dist/xlsx-parser/table.d.ts.map +1 -0
- package/package.json +410 -0
|
@@ -0,0 +1,391 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Grid Renderer Interface
|
|
3
|
+
*
|
|
4
|
+
* Stable API for the grid renderer. State subsystem uses this interface
|
|
5
|
+
* to control rendering without depending on canvas internals.
|
|
6
|
+
*
|
|
7
|
+
* ARCHITECTURE:
|
|
8
|
+
* - Interface defined in contracts (this file)
|
|
9
|
+
* - Implementation (GridRendererImpl) in canvas
|
|
10
|
+
* - State creates renderer via factory, uses only this interface
|
|
11
|
+
*
|
|
12
|
+
* The rendering model is NOT `render()` on demand. It's:
|
|
13
|
+
* 1. `updateContext()` called 50-200+ times per second with state updates
|
|
14
|
+
* 2. Scheduler decides if render needed
|
|
15
|
+
* 3. Invalidation is explicit (`invalidateLayer`, `invalidateCells`, `invalidateAll`)
|
|
16
|
+
*
|
|
17
|
+
* Performance critical: `updateContext()` must have minimal overhead.
|
|
18
|
+
*
|
|
19
|
+
* @module @mog/spreadsheet-contracts/rendering/grid-renderer
|
|
20
|
+
*/
|
|
21
|
+
import type { ISmartArtBridge } from '../bridges/smartart-bridge';
|
|
22
|
+
import type { CellRange } from '../core';
|
|
23
|
+
import type { InkAccessorForRendering } from '../ink';
|
|
24
|
+
import type { IObjectBoundsReader } from '../objects/object-bounds-reader';
|
|
25
|
+
import type { ViewportLayout } from '../viewport';
|
|
26
|
+
import type { IWordArtCanvasBridge, RenderLatexFn } from './canvas-bridge-types';
|
|
27
|
+
import type { CellCoord, CoordinateSystem, ViewportMergeIndexLike, ViewportPositionIndexLike } from './coordinates';
|
|
28
|
+
import type { ObjectBounds, UnifiedHitResult } from './hit-test';
|
|
29
|
+
import type { InteractiveElementCollector } from './interactive-elements';
|
|
30
|
+
import type { RenderContextConfig } from './render-context';
|
|
31
|
+
/**
|
|
32
|
+
* Logical render layer names.
|
|
33
|
+
* Layers are rendered in z-order (lower index = behind).
|
|
34
|
+
*/
|
|
35
|
+
export type LayerName = 'background' | 'cells' | 'validationCircles' | 'pageBreaks' | 'selection' | 'traceArrows' | 'remoteCursors' | 'ui' | 'drawing' | 'overlay' | 'sticky-headers' | 'headers' | 'dividers';
|
|
36
|
+
/**
|
|
37
|
+
* Render priority levels.
|
|
38
|
+
* Lower number = higher priority = executed first.
|
|
39
|
+
*
|
|
40
|
+
* Priority behaviors:
|
|
41
|
+
* - CRITICAL: Always immediate, never deferred
|
|
42
|
+
* - USER_BLOCKING: Execute within frame budget (16ms)
|
|
43
|
+
* - NORMAL: Time-sliced, yields if frame budget exceeded
|
|
44
|
+
* - LOW: Scheduled during idle time
|
|
45
|
+
* - IDLE: Uses requestIdleCallback
|
|
46
|
+
*/
|
|
47
|
+
export declare enum RenderPriority {
|
|
48
|
+
/** Selection, cursor blink - always immediate */
|
|
49
|
+
CRITICAL = 0,
|
|
50
|
+
/** Scroll feedback, edit preview - within 16ms frame */
|
|
51
|
+
USER_BLOCKING = 1,
|
|
52
|
+
/** Visible cell content - time-sliced */
|
|
53
|
+
NORMAL = 2,
|
|
54
|
+
/** Prefetch adjacent cells - during idle */
|
|
55
|
+
LOW = 3,
|
|
56
|
+
/** Background formatting - requestIdleCallback */
|
|
57
|
+
IDLE = 4
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Statistics for monitoring renderer performance.
|
|
61
|
+
*/
|
|
62
|
+
export interface GridRendererStats {
|
|
63
|
+
/** Current FPS */
|
|
64
|
+
fps: number;
|
|
65
|
+
/** Average frame time in ms */
|
|
66
|
+
averageFrameTime: number;
|
|
67
|
+
/** Is render loop running? */
|
|
68
|
+
isRunning: boolean;
|
|
69
|
+
/** Is renderer paused? */
|
|
70
|
+
isPaused: boolean;
|
|
71
|
+
/** Total frames rendered */
|
|
72
|
+
totalFrames: number;
|
|
73
|
+
/** Scheduler queue depth */
|
|
74
|
+
queueDepth: number;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Scheduler that bridges buffer writes to canvas layer invalidation.
|
|
78
|
+
*
|
|
79
|
+
* Implements the "Write = Invalidate" contract: when viewport buffers
|
|
80
|
+
* receive patches, they call these methods to mark the appropriate canvas
|
|
81
|
+
* layers dirty and wake the render loop.
|
|
82
|
+
*
|
|
83
|
+
* This is a contracts-level mirror of the canvas-engine RenderScheduler
|
|
84
|
+
* so that contracts does not depend on @mog/canvas-engine at runtime.
|
|
85
|
+
*/
|
|
86
|
+
export interface RenderScheduler {
|
|
87
|
+
/** Cell value or format changed — mark cells layer dirty. */
|
|
88
|
+
markCellsDirty(cells?: {
|
|
89
|
+
row: number;
|
|
90
|
+
col: number;
|
|
91
|
+
}[]): void;
|
|
92
|
+
/** Row/col dimensions changed — mark cells + headers + selection dirty. */
|
|
93
|
+
markGeometryDirty(): void;
|
|
94
|
+
/** Full buffer swap or theme change — mark all layers dirty. */
|
|
95
|
+
markAllDirty(): void;
|
|
96
|
+
}
|
|
97
|
+
/** Bounds update for scene graph writes during drag/resize/rotate. */
|
|
98
|
+
export interface ObjectBoundsUpdate {
|
|
99
|
+
x: number;
|
|
100
|
+
y: number;
|
|
101
|
+
width: number;
|
|
102
|
+
height: number;
|
|
103
|
+
rotation: number;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Stable interface for the grid renderer.
|
|
107
|
+
*
|
|
108
|
+
* IMPORTANT: This interface includes ALL public methods of GridRendererImpl.
|
|
109
|
+
* Do NOT create a minimal interface - that would require gradual migration
|
|
110
|
+
* which is forbidden by the architecture checklist (Section 13: No Slow Migrations).
|
|
111
|
+
*/
|
|
112
|
+
export interface GridRenderer {
|
|
113
|
+
/**
|
|
114
|
+
* Start the render loop.
|
|
115
|
+
*/
|
|
116
|
+
start(): void;
|
|
117
|
+
/**
|
|
118
|
+
* Stop the render loop.
|
|
119
|
+
*/
|
|
120
|
+
stop(): void;
|
|
121
|
+
/**
|
|
122
|
+
* Pause rendering (e.g., when tab is hidden).
|
|
123
|
+
*/
|
|
124
|
+
pause(): void;
|
|
125
|
+
/**
|
|
126
|
+
* Resume rendering (e.g., when tab becomes visible).
|
|
127
|
+
*/
|
|
128
|
+
resume(): void;
|
|
129
|
+
/**
|
|
130
|
+
* Dispose of all resources.
|
|
131
|
+
*/
|
|
132
|
+
dispose(): void;
|
|
133
|
+
/**
|
|
134
|
+
* Resize the canvas.
|
|
135
|
+
*/
|
|
136
|
+
resize(width: number, height: number): void;
|
|
137
|
+
/**
|
|
138
|
+
* Set the viewport layout.
|
|
139
|
+
*
|
|
140
|
+
* When set, the renderer iterates through each viewport in the layout,
|
|
141
|
+
* clips to viewport bounds, and renders layers for each viewport's cell range.
|
|
142
|
+
* This enables freeze panes, split views, and overlay viewports.
|
|
143
|
+
*
|
|
144
|
+
* Pass null to fall back to legacy single-viewport mode.
|
|
145
|
+
*
|
|
146
|
+
* @param layout - The computed viewport layout, or null to use legacy mode
|
|
147
|
+
*/
|
|
148
|
+
setViewportLayout(layout: ViewportLayout | null): void;
|
|
149
|
+
/**
|
|
150
|
+
* Get the current viewport layout.
|
|
151
|
+
*
|
|
152
|
+
* @returns Current viewport layout, or null if using legacy mode
|
|
153
|
+
*/
|
|
154
|
+
getViewportLayout(): ViewportLayout | null;
|
|
155
|
+
/**
|
|
156
|
+
* Update scroll position.
|
|
157
|
+
*/
|
|
158
|
+
setScroll(scrollTop: number, scrollLeft: number): void;
|
|
159
|
+
/**
|
|
160
|
+
* Update zoom level.
|
|
161
|
+
*/
|
|
162
|
+
setZoom(zoom: number): void;
|
|
163
|
+
/**
|
|
164
|
+
* Switch to a different sheet.
|
|
165
|
+
*/
|
|
166
|
+
switchSheet(sheetId: string): void;
|
|
167
|
+
/**
|
|
168
|
+
* Update render context configuration.
|
|
169
|
+
*
|
|
170
|
+
* CRITICAL: This is called 50-200+ times per second during editing
|
|
171
|
+
* (every keystroke, selection change, format change). Must have
|
|
172
|
+
* minimal overhead - no serialization/deserialization.
|
|
173
|
+
*
|
|
174
|
+
* @param config - Partial configuration to merge with current context
|
|
175
|
+
*/
|
|
176
|
+
updateContext(config: Partial<RenderContextConfig>): void;
|
|
177
|
+
/**
|
|
178
|
+
* Invalidate a specific layer.
|
|
179
|
+
*
|
|
180
|
+
* @param layer - Layer to invalidate
|
|
181
|
+
* @param regions - Optional specific regions to invalidate
|
|
182
|
+
*/
|
|
183
|
+
invalidateLayer(layer: LayerName, regions?: CellRange[]): void;
|
|
184
|
+
/**
|
|
185
|
+
* Invalidate specific cells.
|
|
186
|
+
*
|
|
187
|
+
* @param cells - Cells to invalidate
|
|
188
|
+
* @param priority - Optional render priority (default: NORMAL)
|
|
189
|
+
*/
|
|
190
|
+
invalidateCells(cells: CellCoord[], priority?: RenderPriority): void;
|
|
191
|
+
/**
|
|
192
|
+
* Invalidate all layers (full redraw).
|
|
193
|
+
*/
|
|
194
|
+
invalidateAll(): void;
|
|
195
|
+
/**
|
|
196
|
+
* Get the coordinate system.
|
|
197
|
+
*
|
|
198
|
+
* Used by state for hit testing, scroll calculations, and
|
|
199
|
+
* determining visible cell ranges.
|
|
200
|
+
*/
|
|
201
|
+
getCoordinateSystem(): CoordinateSystem;
|
|
202
|
+
/**
|
|
203
|
+
* Get the page-space bounding rectangle for a cell.
|
|
204
|
+
*
|
|
205
|
+
* Combines cellToViewport (canvas-relative coordinates accounting for scroll,
|
|
206
|
+
* zoom, frozen panes, headers) with the container's getBoundingClientRect
|
|
207
|
+
* (canvas-to-page) to produce absolute page coordinates.
|
|
208
|
+
*
|
|
209
|
+
* Use cases: Playwright clicks, tooltip positioning, overlay anchoring.
|
|
210
|
+
*
|
|
211
|
+
* @param row - 0-indexed row
|
|
212
|
+
* @param col - 0-indexed column
|
|
213
|
+
* @returns Page-space rect, or null if cell is not visible or renderer not ready
|
|
214
|
+
*/
|
|
215
|
+
getCellPageBounds(row: number, col: number): {
|
|
216
|
+
x: number;
|
|
217
|
+
y: number;
|
|
218
|
+
width: number;
|
|
219
|
+
height: number;
|
|
220
|
+
} | null;
|
|
221
|
+
/**
|
|
222
|
+
* Unified hit test — queries all layers (overlay, drawing, grid) via the
|
|
223
|
+
* engine's hit test pipeline. Returns the topmost hit as a typed UnifiedHitResult.
|
|
224
|
+
*
|
|
225
|
+
* Replaces the old pattern of coords.hitTestPoint() which used a dead HitMap.
|
|
226
|
+
* This method delegates to the engine pipeline where the drawing-canvas HitMap
|
|
227
|
+
* (spatial index + Path2D) is actually populated during render.
|
|
228
|
+
*
|
|
229
|
+
* @param x - X coordinate in viewport space (CSS pixels, canvas-relative)
|
|
230
|
+
* @param y - Y coordinate in viewport space (CSS pixels, canvas-relative)
|
|
231
|
+
* @returns UnifiedHitResult — floatingObject, cell, header, resize handle, etc.
|
|
232
|
+
*/
|
|
233
|
+
hitTest(x: number, y: number): UnifiedHitResult;
|
|
234
|
+
/**
|
|
235
|
+
* Get floating object bounds synchronously from the scene graph.
|
|
236
|
+
*
|
|
237
|
+
* Returns document-space bounds (absolute pixel coordinates) read directly
|
|
238
|
+
* from the drawing layer's scene graph. This is the sync alternative to
|
|
239
|
+
* FloatingObjectManager.computeObjectBounds() which requires async IPC.
|
|
240
|
+
*
|
|
241
|
+
* Used by the coordination layer to initialize drag/resize/rotate operations
|
|
242
|
+
* without blocking on async IPC — the scene graph already has the bounds
|
|
243
|
+
* from the last render pass.
|
|
244
|
+
*
|
|
245
|
+
* @param objectId - The floating object ID
|
|
246
|
+
* @returns ObjectBounds (doc-space) or null if object not in scene graph
|
|
247
|
+
*/
|
|
248
|
+
getObjectBoundsSync(objectId: string): ObjectBounds | null;
|
|
249
|
+
/**
|
|
250
|
+
* Contract-backed bounds reader for floating objects.
|
|
251
|
+
*
|
|
252
|
+
* Provides synchronous, O(1) reads of object pixel bounds from the scene graph.
|
|
253
|
+
* Prefer this over getObjectBoundsSync() — it exposes the full IObjectBoundsReader
|
|
254
|
+
* interface (getBounds, getGroupBounds, getBoundsMany) rather than a single method.
|
|
255
|
+
*
|
|
256
|
+
* Consumers should migrate to `gridRenderer.boundsReader.getBounds(id)` instead
|
|
257
|
+
* of `gridRenderer.getObjectBoundsSync(id)`.
|
|
258
|
+
*/
|
|
259
|
+
readonly boundsReader: IObjectBoundsReader;
|
|
260
|
+
/**
|
|
261
|
+
* Update floating object bounds in the scene graph.
|
|
262
|
+
*
|
|
263
|
+
* Synchronously updates the scene graph entry for the given object with new
|
|
264
|
+
* bounds and rotation. This is the write counterpart to `boundsReader` (read path).
|
|
265
|
+
*
|
|
266
|
+
* Used during drag/resize/rotate operations to update the scene graph on every
|
|
267
|
+
* pointer event, making the scene graph the single authority for object position
|
|
268
|
+
* throughout the entire operation lifecycle.
|
|
269
|
+
*
|
|
270
|
+
* Marks both drawing layer (via scene graph onDirty) and overlay layer dirty
|
|
271
|
+
* so selection/resize/rotation handles follow the shape.
|
|
272
|
+
*
|
|
273
|
+
* No-op if objectId does not exist in the scene graph.
|
|
274
|
+
*
|
|
275
|
+
* @param objectId - The floating object ID
|
|
276
|
+
* @param bounds - New bounds and rotation
|
|
277
|
+
*/
|
|
278
|
+
updateObjectBounds(objectId: string, bounds: ObjectBoundsUpdate): void;
|
|
279
|
+
/**
|
|
280
|
+
* Get renderer statistics.
|
|
281
|
+
*
|
|
282
|
+
* Used for performance monitoring and debugging.
|
|
283
|
+
*/
|
|
284
|
+
getStats(): GridRendererStats;
|
|
285
|
+
/**
|
|
286
|
+
* Get current sheet ID.
|
|
287
|
+
*/
|
|
288
|
+
getCurrentSheetId(): string;
|
|
289
|
+
/**
|
|
290
|
+
* Get clipped content for a cell.
|
|
291
|
+
*
|
|
292
|
+
* When cell content overflows and is clipped, this returns the full
|
|
293
|
+
* content string for tooltip display. Returns null if:
|
|
294
|
+
* - Cell is not currently rendered
|
|
295
|
+
* - Cell content is not clipped
|
|
296
|
+
* - Cell is empty
|
|
297
|
+
*
|
|
298
|
+
* @param row - Row index
|
|
299
|
+
* @param col - Column index
|
|
300
|
+
*/
|
|
301
|
+
getClippedCellContent(row: number, col: number): string | null;
|
|
302
|
+
/**
|
|
303
|
+
* Set ink accessor for overlay layer preview rendering.
|
|
304
|
+
*
|
|
305
|
+
* This enables live stroke preview during ink/drawing mode.
|
|
306
|
+
* Call with accessor to enable, null to disable.
|
|
307
|
+
*
|
|
308
|
+
* @param accessor - Ink accessor or null to clear
|
|
309
|
+
*/
|
|
310
|
+
setInkAccessor(accessor: InkAccessorForRendering | null): void;
|
|
311
|
+
/**
|
|
312
|
+
* Set SmartArt bridge for overlay layer diagram rendering.
|
|
313
|
+
*
|
|
314
|
+
* This MUST be called during coordinator initialization to enable
|
|
315
|
+
* SmartArt rendering. Without the bridge, SmartArt objects render
|
|
316
|
+
* as placeholders instead of actual diagrams.
|
|
317
|
+
*
|
|
318
|
+
* @see plans/active/excel-parity/smart-art/09-CANVAS-INTEGRATION.md
|
|
319
|
+
*
|
|
320
|
+
* @param bridge - SmartArt bridge or null to disable
|
|
321
|
+
*/
|
|
322
|
+
setSmartArtBridge(bridge: ISmartArtBridge | null): void;
|
|
323
|
+
/**
|
|
324
|
+
* Set the astToLatex function for equation rendering.
|
|
325
|
+
*
|
|
326
|
+
* This MUST be called during coordinator initialization to enable
|
|
327
|
+
* equation rendering. Without this function, equations render as
|
|
328
|
+
* placeholders with "Loading..." text instead of actual math.
|
|
329
|
+
*
|
|
330
|
+
* @see plans/active/excel-parity/equation/04-RENDERING-ENGINE.md
|
|
331
|
+
*
|
|
332
|
+
* @param fn - The LaTeX rendering function (renders LaTeX string to canvas)
|
|
333
|
+
*/
|
|
334
|
+
setAstToLatex(fn: RenderLatexFn): void;
|
|
335
|
+
/**
|
|
336
|
+
* Set WordArt rendering bridge for overlay layer text effects rendering.
|
|
337
|
+
*
|
|
338
|
+
* This MUST be called during coordinator initialization to enable
|
|
339
|
+
* WordArt rendering. Without the bridge, WordArt objects render
|
|
340
|
+
* as plain text boxes instead of styled, warped text.
|
|
341
|
+
*
|
|
342
|
+
* @see plans/active/excel-parity/word-art/07-CANVAS-INTEGRATION.md
|
|
343
|
+
*
|
|
344
|
+
* @param bridge - WordArt canvas rendering bridge or null to disable
|
|
345
|
+
*/
|
|
346
|
+
setWordArtBridge(bridge: IWordArtCanvasBridge | null): void;
|
|
347
|
+
/**
|
|
348
|
+
* Get the interactive element collector.
|
|
349
|
+
*
|
|
350
|
+
* This collector gathers interactive element positions (filter buttons, checkboxes, etc.)
|
|
351
|
+
* during each render pass. React components can subscribe to the collector to render
|
|
352
|
+
* invisible DOM overlays at the correct positions for accessibility and popover triggers.
|
|
353
|
+
*
|
|
354
|
+
* @see plans/archive/canvas/CANVAS-INTERACTIVE-ELEMENT-LAYER.md
|
|
355
|
+
*
|
|
356
|
+
* @returns The interactive element collector instance
|
|
357
|
+
*/
|
|
358
|
+
getInteractiveElementCollector(): InteractiveElementCollector;
|
|
359
|
+
/**
|
|
360
|
+
* Get the render scheduler for "Write = Invalidate" buffer integration.
|
|
361
|
+
*
|
|
362
|
+
* The scheduler bridges viewport buffer mutations to canvas layer invalidation.
|
|
363
|
+
* When the kernel writes cell data into buffers, the buffer calls scheduler
|
|
364
|
+
* methods to mark affected layers dirty and wake the render loop.
|
|
365
|
+
*/
|
|
366
|
+
getRenderScheduler(): RenderScheduler;
|
|
367
|
+
}
|
|
368
|
+
/**
|
|
369
|
+
* Configuration for creating a GridRenderer instance.
|
|
370
|
+
*/
|
|
371
|
+
export interface GridRendererConfig {
|
|
372
|
+
/** Container element — CanvasHost creates stacked canvases internally */
|
|
373
|
+
container: HTMLElement;
|
|
374
|
+
/** Initial sheet ID */
|
|
375
|
+
initialSheetId: string;
|
|
376
|
+
/** Total rows */
|
|
377
|
+
totalRows?: number;
|
|
378
|
+
/** Total columns */
|
|
379
|
+
totalCols?: number;
|
|
380
|
+
/** Initial render context config (for state data) */
|
|
381
|
+
contextConfig?: Partial<RenderContextConfig>;
|
|
382
|
+
/** Viewport position index for O(1) row/col position lookups */
|
|
383
|
+
positionIndex?: ViewportPositionIndexLike;
|
|
384
|
+
/** Viewport merge index for O(1) merged-region lookups */
|
|
385
|
+
mergeIndex?: ViewportMergeIndexLike;
|
|
386
|
+
}
|
|
387
|
+
/**
|
|
388
|
+
* Factory function to create a GridRenderer instance.
|
|
389
|
+
*/
|
|
390
|
+
export type RendererFactory = (config: GridRendererConfig) => GridRenderer;
|
|
391
|
+
//# sourceMappingURL=grid-renderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grid-renderer.d.ts","sourceRoot":"","sources":["../../src/rendering/grid-renderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Grouping Data Types
|
|
3
|
+
*
|
|
4
|
+
* Types for row/column grouping (outlines) used by hit testing and rendering.
|
|
5
|
+
*
|
|
6
|
+
* @module @mog/spreadsheet-contracts/rendering/grouping
|
|
7
|
+
*/
|
|
8
|
+
import type { GroupDefinition, SheetGroupingConfig } from '../data/grouping';
|
|
9
|
+
/**
|
|
10
|
+
* Grouping data for outline hit testing.
|
|
11
|
+
* This interface is used by the HitTestService to perform hit tests
|
|
12
|
+
* without requiring a full RenderContext.
|
|
13
|
+
*/
|
|
14
|
+
export interface GroupingData {
|
|
15
|
+
config: SheetGroupingConfig | null;
|
|
16
|
+
rowGroups: GroupDefinition[];
|
|
17
|
+
columnGroups: GroupDefinition[];
|
|
18
|
+
maxRowLevel: number;
|
|
19
|
+
maxColLevel: number;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=grouping.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grouping.d.ts","sourceRoot":"","sources":["../../src/rendering/grouping.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE7E;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACnC,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Hit Test Service Interface
|
|
3
|
+
*
|
|
4
|
+
* Service interface for hit testing outline buttons (row/column grouping controls).
|
|
5
|
+
*
|
|
6
|
+
* NOTE: This is a stateless rendering service, NOT a Bridge.
|
|
7
|
+
* Unlike Calculator/Pivot bridges which listen to EventBus triggers and cache
|
|
8
|
+
* computations, HitTestService is synchronous with no lifecycle management needed.
|
|
9
|
+
*
|
|
10
|
+
* @module @mog/spreadsheet-contracts/rendering/hit-test-service
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Result of an outline hit test.
|
|
14
|
+
*
|
|
15
|
+
* Returned when testing if a point hits an outline button:
|
|
16
|
+
* - Level buttons (1, 2, 3, ...) for expanding/collapsing to a specific level
|
|
17
|
+
* - Collapse buttons (+/-) for individual groups
|
|
18
|
+
*/
|
|
19
|
+
export interface OutlineHitTestResult {
|
|
20
|
+
/** Type of button hit */
|
|
21
|
+
type: 'level-button' | 'collapse-button' | 'none';
|
|
22
|
+
/** Whether it's a row or column outline */
|
|
23
|
+
axis: 'row' | 'column';
|
|
24
|
+
/** For level-button: the level clicked (1-8). For collapse-button: undefined */
|
|
25
|
+
level?: number;
|
|
26
|
+
/** For collapse-button: the group ID */
|
|
27
|
+
groupId?: string;
|
|
28
|
+
/** For collapse-button: current collapsed state */
|
|
29
|
+
collapsed?: boolean;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Service interface for hit testing outline (row/column grouping) buttons.
|
|
33
|
+
*
|
|
34
|
+
* This interface enables decoupling of the state coordinator from canvas
|
|
35
|
+
* implementation details. The coordinator receives an injected service
|
|
36
|
+
* rather than importing the hit test function directly from canvas.
|
|
37
|
+
*
|
|
38
|
+
* Architecture:
|
|
39
|
+
* - State coordinator owns the ObjectCoordination module
|
|
40
|
+
* - ObjectCoordination needs to hit test outline buttons
|
|
41
|
+
* - Canvas provides the implementation via OutlineHitTester class
|
|
42
|
+
* - Coordinator wires the implementation at construction time
|
|
43
|
+
*/
|
|
44
|
+
export interface HitTestService {
|
|
45
|
+
/**
|
|
46
|
+
* Hit test against outline buttons (row/column grouping controls).
|
|
47
|
+
*
|
|
48
|
+
* Tests if a viewport coordinate hits any outline button:
|
|
49
|
+
* - Level buttons in the corner gutter area
|
|
50
|
+
* - Collapse/expand (+/-) buttons on group summary rows/columns
|
|
51
|
+
*
|
|
52
|
+
* @param x - X coordinate in viewport pixels
|
|
53
|
+
* @param y - Y coordinate in viewport pixels
|
|
54
|
+
* @returns Information about which button was clicked, or result with type='none' if no hit
|
|
55
|
+
*/
|
|
56
|
+
hitTestOutline(x: number, y: number): OutlineHitTestResult | null;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=hit-test-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hit-test-service.d.ts","sourceRoot":"","sources":["../../src/rendering/hit-test-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAMH;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,yBAAyB;IACzB,IAAI,EAAE,cAAc,GAAG,iBAAiB,GAAG,MAAM,CAAC;IAClD,2CAA2C;IAC3C,IAAI,EAAE,KAAK,GAAG,QAAQ,CAAC;IACvB,gFAAgF;IAChF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wCAAwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mDAAmD;IACnD,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;;;;;;OAUG;IACH,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,oBAAoB,GAAG,IAAI,CAAC;CACnE"}
|