@svgrid/grid 2.6.16 → 2.6.18

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.
Files changed (212) hide show
  1. package/dist/DockNodeView.svelte.d.ts +1 -1
  2. package/dist/DockPopoutHost.svelte.d.ts +1 -1
  3. package/dist/FlexRender.svelte.d.ts +1 -1
  4. package/dist/GridFooter.svelte +6 -3
  5. package/dist/GridFooter.svelte.d.ts +3 -3
  6. package/dist/GridMenus.svelte.d.ts +3 -3
  7. package/dist/SvAccordion.svelte.d.ts +3 -3
  8. package/dist/SvAutoComplete.svelte.d.ts +2 -2
  9. package/dist/SvBreadcrumb.svelte.d.ts +2 -2
  10. package/dist/SvButtonGroup.svelte.d.ts +3 -3
  11. package/dist/SvCalendar.svelte.d.ts +7 -7
  12. package/dist/SvCarousel.svelte.d.ts +1 -1
  13. package/dist/SvCheckBox.svelte.d.ts +1 -1
  14. package/dist/SvColorInput.svelte.d.ts +1 -1
  15. package/dist/SvComboBox.svelte.d.ts +2 -2
  16. package/dist/SvCommand.svelte.d.ts +2 -2
  17. package/dist/SvCountryInput.svelte.d.ts +1 -1
  18. package/dist/SvDateRangeInput.svelte.d.ts +3 -3
  19. package/dist/SvDateTimePicker.svelte.d.ts +4 -4
  20. package/dist/SvDockLayout.svelte.d.ts +2 -2
  21. package/dist/SvDockManager.svelte.d.ts +2 -2
  22. package/dist/SvDropDownList.svelte.d.ts +2 -2
  23. package/dist/SvDurationInput.svelte.d.ts +1 -1
  24. package/dist/SvField.svelte.d.ts +1 -1
  25. package/dist/SvFileUpload.svelte.d.ts +3 -3
  26. package/dist/SvForm.svelte.d.ts +4 -4
  27. package/dist/SvGauge.svelte.d.ts +1 -1
  28. package/dist/SvGrid.controller.svelte.d.ts +28 -28
  29. package/dist/SvGrid.controller.svelte.js +117 -45
  30. package/dist/SvGrid.css +42 -2
  31. package/dist/SvGrid.helpers.d.ts +2 -2
  32. package/dist/SvGrid.svelte.d.ts +3 -3
  33. package/dist/SvGrid.types.d.ts +28 -7
  34. package/dist/SvGridCellEditor.svelte.d.ts +2 -2
  35. package/dist/SvGridChart.svelte.d.ts +1 -1
  36. package/dist/SvGridChartPanel.svelte.d.ts +2 -2
  37. package/dist/SvGridChartView.svelte.d.ts +1 -1
  38. package/dist/SvGridDropdown.svelte.d.ts +1 -1
  39. package/dist/SvGridSelect.svelte.d.ts +4 -4
  40. package/dist/SvGroupCell.svelte.d.ts +1 -1
  41. package/dist/SvHoverCard.svelte.d.ts +1 -1
  42. package/dist/SvListBox.svelte.d.ts +2 -2
  43. package/dist/SvMaskedInput.svelte.d.ts +1 -1
  44. package/dist/SvMenu.svelte.d.ts +1 -1
  45. package/dist/SvMenuList.svelte.d.ts +3 -3
  46. package/dist/SvMenubar.svelte.d.ts +3 -3
  47. package/dist/SvMultiSelect.svelte.d.ts +3 -3
  48. package/dist/SvNavPane.svelte.d.ts +1 -1
  49. package/dist/SvNumberInput.svelte.d.ts +1 -1
  50. package/dist/SvOtpInput.svelte.d.ts +1 -1
  51. package/dist/SvPasswordInput.svelte.d.ts +1 -1
  52. package/dist/SvPhoneInput.svelte.d.ts +2 -2
  53. package/dist/SvPopconfirm.svelte.d.ts +1 -1
  54. package/dist/SvPopover.svelte.d.ts +1 -1
  55. package/dist/SvRadioGroup.svelte.d.ts +3 -3
  56. package/dist/SvRating.svelte.d.ts +1 -1
  57. package/dist/SvSegmented.svelte.d.ts +3 -3
  58. package/dist/SvSlider.svelte.d.ts +1 -1
  59. package/dist/SvSparkline.svelte.d.ts +1 -1
  60. package/dist/SvSplitter.svelte.d.ts +3 -3
  61. package/dist/SvStepper.svelte.d.ts +2 -2
  62. package/dist/SvSwitchButton.svelte.d.ts +1 -1
  63. package/dist/SvTabs.svelte.d.ts +3 -3
  64. package/dist/SvTagsInput.svelte.d.ts +1 -1
  65. package/dist/SvTextArea.svelte.d.ts +1 -1
  66. package/dist/SvTextInput.svelte.d.ts +1 -1
  67. package/dist/SvTimePicker.svelte.d.ts +3 -3
  68. package/dist/SvTimeline.svelte.d.ts +2 -2
  69. package/dist/SvToggleButton.svelte.d.ts +1 -1
  70. package/dist/SvTooltip.svelte.d.ts +1 -1
  71. package/dist/SvTour.svelte.d.ts +3 -3
  72. package/dist/SvTree.svelte.d.ts +3 -3
  73. package/dist/SvTreeSelect.svelte.d.ts +3 -3
  74. package/dist/advanced-filter.svelte.d.ts +1 -1
  75. package/dist/ai.d.ts +1 -1
  76. package/dist/ai.js +1 -1
  77. package/dist/build-api.d.ts +2 -2
  78. package/dist/build-api.js +8 -8
  79. package/dist/builtin-editors.js +1 -1
  80. package/dist/cdn/{GridMenus-CPdy5dxw.js → GridMenus-B0F9iBrG.js} +1 -1
  81. package/dist/cdn/{GridMenus-BLajq_RP.js → GridMenus-IHK_l7m6.js} +1 -1
  82. package/dist/cdn/{src-CKpl94Cx.js → src-B1TdiyS8.js} +272 -270
  83. package/dist/cdn/{src-ogpR-lHu.js → src-Cd0tearp.js} +272 -270
  84. package/dist/cdn/svgrid.js +2 -2
  85. package/dist/cdn/svgrid.svelte-external.js +2 -2
  86. package/dist/cell-render.d.ts +3 -3
  87. package/dist/cell-render.js +6 -6
  88. package/dist/cell-values.d.ts +1 -1
  89. package/dist/cell-values.js +1 -1
  90. package/dist/chart-export.d.ts +1 -1
  91. package/dist/clipboard.d.ts +2 -2
  92. package/dist/clipboard.js +5 -5
  93. package/dist/column-groups.js +1 -1
  94. package/dist/columns.d.ts +2 -2
  95. package/dist/columns.js +1 -1
  96. package/dist/core.d.ts +1 -1
  97. package/dist/core.js +1 -1
  98. package/dist/createAutocomplete.svelte.d.ts +1 -1
  99. package/dist/createAutocomplete.svelte.js +2 -2
  100. package/dist/createButtonGroup.svelte.js +1 -1
  101. package/dist/createCalendar.svelte.d.ts +4 -4
  102. package/dist/createCalendar.svelte.js +4 -4
  103. package/dist/createCarousel.svelte.d.ts +1 -1
  104. package/dist/createCheckbox.svelte.js +1 -1
  105. package/dist/createColorInput.svelte.js +1 -1
  106. package/dist/createCombobox.svelte.d.ts +1 -1
  107. package/dist/createCombobox.svelte.js +2 -2
  108. package/dist/createCommand.svelte.d.ts +1 -1
  109. package/dist/createCommand.svelte.js +2 -2
  110. package/dist/createCountryInput.svelte.d.ts +1 -1
  111. package/dist/createCountryInput.svelte.js +2 -2
  112. package/dist/createDateTimePicker.svelte.d.ts +1 -1
  113. package/dist/createDateTimePicker.svelte.js +3 -3
  114. package/dist/createDropdownList.svelte.d.ts +1 -1
  115. package/dist/createDropdownList.svelte.js +2 -2
  116. package/dist/createFileUpload.svelte.js +1 -1
  117. package/dist/createForm.svelte.d.ts +1 -1
  118. package/dist/createForm.svelte.js +2 -2
  119. package/dist/createGrid.svelte.d.ts +1 -1
  120. package/dist/createGrid.svelte.js +1 -1
  121. package/dist/createGridState.svelte.d.ts +1 -1
  122. package/dist/createListbox.svelte.d.ts +1 -1
  123. package/dist/createListbox.svelte.js +2 -2
  124. package/dist/createMaskedInput.svelte.js +2 -2
  125. package/dist/createMenu.svelte.d.ts +2 -2
  126. package/dist/createMenu.svelte.js +2 -2
  127. package/dist/createNumberInput.svelte.js +1 -1
  128. package/dist/createOverlay.svelte.js +3 -3
  129. package/dist/createPagination.d.ts +1 -1
  130. package/dist/createPagination.js +1 -1
  131. package/dist/createPasswordInput.svelte.js +1 -1
  132. package/dist/createPhoneInput.svelte.js +3 -3
  133. package/dist/createPopoverSelect.svelte.d.ts +1 -1
  134. package/dist/createPopoverSelect.svelte.js +3 -3
  135. package/dist/createRadioGroup.svelte.js +1 -1
  136. package/dist/createRating.svelte.js +1 -1
  137. package/dist/createSlider.svelte.js +1 -1
  138. package/dist/createSwitch.svelte.js +1 -1
  139. package/dist/createTabs.svelte.d.ts +1 -1
  140. package/dist/createTagsInput.svelte.js +1 -1
  141. package/dist/createToggle.svelte.js +1 -1
  142. package/dist/createTooltip.svelte.js +1 -1
  143. package/dist/createTree.svelte.d.ts +1 -1
  144. package/dist/datetime/date-restrict.d.ts +1 -1
  145. package/dist/datetime/date-restrict.js +1 -1
  146. package/dist/datetime/date-selection.js +1 -1
  147. package/dist/dock-context.d.ts +1 -1
  148. package/dist/dock-manager-model.d.ts +1 -1
  149. package/dist/dock-manager-model.js +1 -1
  150. package/dist/dock-popout.d.ts +1 -1
  151. package/dist/dock-popout.js +1 -1
  152. package/dist/editing.d.ts +2 -2
  153. package/dist/editing.js +5 -5
  154. package/dist/editor-registry.d.ts +1 -1
  155. package/dist/editors/cell-editors.js +1 -1
  156. package/dist/export-format.d.ts +2 -2
  157. package/dist/export-format.js +2 -2
  158. package/dist/export-provider.d.ts +1 -1
  159. package/dist/facet-buckets.d.ts +1 -1
  160. package/dist/facet-buckets.js +1 -1
  161. package/dist/features.d.ts +2 -2
  162. package/dist/features.js +2 -2
  163. package/dist/filter-operators.d.ts +2 -2
  164. package/dist/filter-operators.js +1 -1
  165. package/dist/form-field.d.ts +1 -1
  166. package/dist/grid-messages.js +1 -1
  167. package/dist/headless.d.ts +11 -4
  168. package/dist/headless.js +11 -4
  169. package/dist/index.d.ts +120 -120
  170. package/dist/index.js +111 -111
  171. package/dist/keyboard-handlers.d.ts +2 -2
  172. package/dist/keyboard-handlers.js +2 -2
  173. package/dist/keyboard.d.ts +1 -1
  174. package/dist/menus.d.ts +3 -3
  175. package/dist/menus.js +3 -3
  176. package/dist/named-views.d.ts +1 -1
  177. package/dist/pivot-view.svelte.d.ts +1 -1
  178. package/dist/recurrence.d.ts +1 -1
  179. package/dist/recurrence.js +1 -1
  180. package/dist/row-drag.js +1 -1
  181. package/dist/scheduler-ical.d.ts +1 -1
  182. package/dist/scheduler-model.d.ts +3 -3
  183. package/dist/scheduler-model.js +2 -2
  184. package/dist/scroll-sync.d.ts +2 -2
  185. package/dist/scroll-sync.js +1 -1
  186. package/dist/selection.d.ts +2 -2
  187. package/dist/selection.js +3 -3
  188. package/dist/server-data-source.d.ts +1 -1
  189. package/dist/server-group-model.d.ts +1 -1
  190. package/dist/static-functions.d.ts +1 -1
  191. package/dist/static-functions.js +1 -1
  192. package/dist/subscribe.d.ts +1 -1
  193. package/dist/summaries.d.ts +2 -2
  194. package/dist/summaries.js +3 -3
  195. package/dist/svgrid-wrapper.types.d.ts +5 -5
  196. package/dist/themes/index.d.ts +3 -1
  197. package/dist/themes/index.js +4 -2
  198. package/dist/toast-store.svelte.js +1 -1
  199. package/dist/tree-select.d.ts +1 -1
  200. package/dist/virtualization/column-virtualizer.d.ts +3 -3
  201. package/dist/virtualization/column-virtualizer.js +1 -1
  202. package/dist/virtualization/svelte-virtualizer.svelte.d.ts +3 -3
  203. package/dist/virtualization/svelte-virtualizer.svelte.js +1 -1
  204. package/dist/virtualization/virtualizer.d.ts +1 -1
  205. package/package.json +14 -2
  206. package/src/GridFooter.svelte +6 -3
  207. package/src/SvGrid.controller.svelte.ts +90 -14
  208. package/src/SvGrid.css +42 -2
  209. package/src/SvGrid.types.ts +21 -0
  210. package/src/headless.ts +7 -0
  211. package/src/svgrid.behavior.test.ts +208 -0
  212. package/src/themes/index.ts +4 -2
package/dist/index.js CHANGED
@@ -1,56 +1,56 @@
1
- export { formatNumericWithConfig, resolveDatePattern } from './cell-formatting';
2
- export { coerceExportDate, formatValueForExport, projectGridRows, toExcelNumFmt, valueForExcel, serializeDelimited, serializeJson, serializeMarkdown, serializeHtml, serializeXml, downloadTextFile, downloadBlobFile, copyTextToClipboard, } from './export-format';
3
- export { columnFilteringFeature, columnGroupingFeature, createCoreRowModel, createExpandedRowModel, createFilteredRowModel, createGroupedRowModel, createPaginatedRowModel, createSortedRowModel, createTreeRowModel, flattenTreeData, applyGroupAggregate, filterFns, rowExpandingFeature, rowPaginationFeature, rowSelectionFeature, rowSortingFeature, sortFns, tableFeatures, } from './core';
4
- export { createGrid, createSvGrid } from './createGrid.svelte';
5
- export { createGridState, createSvGridState } from './createGridState.svelte';
6
- export { subscribeGrid, subscribeSvGrid } from './subscribe';
1
+ export { formatNumericWithConfig, resolveDatePattern } from './cell-formatting.js';
2
+ export { coerceExportDate, formatValueForExport, projectGridRows, toExcelNumFmt, valueForExcel, serializeDelimited, serializeJson, serializeMarkdown, serializeHtml, serializeXml, downloadTextFile, downloadBlobFile, copyTextToClipboard, } from './export-format.js';
3
+ export { columnFilteringFeature, columnGroupingFeature, createCoreRowModel, createExpandedRowModel, createFilteredRowModel, createGroupedRowModel, createPaginatedRowModel, createSortedRowModel, createTreeRowModel, flattenTreeData, applyGroupAggregate, filterFns, rowExpandingFeature, rowPaginationFeature, rowSelectionFeature, rowSortingFeature, sortFns, tableFeatures, } from './core.js';
4
+ export { createGrid, createSvGrid } from './createGrid.svelte.js';
5
+ export { createGridState, createSvGridState } from './createGridState.svelte.js';
6
+ export { subscribeGrid, subscribeSvGrid } from './subscribe.js';
7
7
  export { default as SvGrid } from './SvGrid.svelte';
8
- export { registerBoardView, getBoardView, hasBoardView } from './board-view.svelte';
8
+ export { registerBoardView, getBoardView, hasBoardView } from './board-view.svelte.js';
9
9
  // Built-in AI helpers (free): natural-language filter, smart-fill, summarize,
10
10
  // classify, anomaly detection, chart-this and export planning. They ship no
11
11
  // model client and no-op until you register one with `setAIProvider(...)`, so
12
12
  // they tree-shake out of the base bundle unless you actually import them. The
13
13
  // export-provider seam lets @svgrid/enterprise register its Excel/PDF engine so
14
14
  // AI-planned exports can WRITE those formats.
15
- export * from './ai';
16
- export { registerExportProvider, getExportProvider, } from './export-provider';
17
- export { registerSchedulerView, getSchedulerView, hasSchedulerView } from './scheduler-view.svelte';
18
- export { registerChartView, getChartView, hasChartView } from './chart-view.svelte';
19
- export { registerPivotEngine, getPivotEngine, hasPivotEngine, } from './pivot-view.svelte';
15
+ export * from './ai.js';
16
+ export { registerExportProvider, getExportProvider, } from './export-provider.js';
17
+ export { registerSchedulerView, getSchedulerView, hasSchedulerView } from './scheduler-view.svelte.js';
18
+ export { registerChartView, getChartView, hasChartView } from './chart-view.svelte.js';
19
+ export { registerPivotEngine, getPivotEngine, hasPivotEngine, } from './pivot-view.svelte.js';
20
20
  // Pure scheduler layout/model helpers (framework-free, like recurrence/date-core).
21
21
  // The calendar RENDERER that consumes these ships in @svgrid/enterprise.
22
- export { resolveEvents, hasConflict, overlapCount, overlapsBands, workingIntervals, withinWorking, eventsOnDay, layoutDayEvents, monthWeekSegments, agendaGroups, rangeForView, daysForView, navigateAnchor, timelineAxis, timelineGeom, timelineRows, } from './scheduler-model';
22
+ export { resolveEvents, hasConflict, overlapCount, overlapsBands, workingIntervals, withinWorking, eventsOnDay, layoutDayEvents, monthWeekSegments, agendaGroups, rangeForView, daysForView, navigateAnchor, timelineAxis, timelineGeom, timelineRows, } from './scheduler-model.js';
23
23
  export { default as SvGridDropdown } from './SvGridDropdown.svelte';
24
24
  export { default as SvCalendar } from './SvCalendar.svelte';
25
- export { matchesRecurrence, expandRecurrence, describeRecurrence, } from './recurrence';
25
+ export { matchesRecurrence, expandRecurrence, describeRecurrence, } from './recurrence.js';
26
26
  export { default as SvTimePicker } from './SvTimePicker.svelte';
27
27
  export { default as SvDateTimePicker } from './SvDateTimePicker.svelte';
28
28
  export { default as SvDateRangeInput } from './SvDateRangeInput.svelte';
29
29
  export { default as SvButtonGroup } from './SvButtonGroup.svelte';
30
30
  // UI kit - shared editor contract (common props + a11y wiring for every editor)
31
- export { editorAria, editorErrorId, editorHintId, nextEditorId, resolveMessages, } from './editor-contract';
31
+ export { editorAria, editorErrorId, editorHintId, nextEditorId, resolveMessages, } from './editor-contract.js';
32
32
  // UI kit - shared a11y primitives (focus trap, scroll lock, dismissable layers, live region)
33
- export { FOCUSABLE_SELECTOR, getFocusable, createFocusTrap, } from './a11y/focus-trap';
34
- export { lockScroll, scrollLockDepth } from './a11y/scroll-lock';
35
- export { createDismissableLayer, dismissableDepth, onScrollOutside, } from './a11y/dismissable';
36
- export { announce } from './a11y/live-region';
33
+ export { FOCUSABLE_SELECTOR, getFocusable, createFocusTrap, } from './a11y/focus-trap.js';
34
+ export { lockScroll, scrollLockDepth } from './a11y/scroll-lock.js';
35
+ export { createDismissableLayer, dismissableDepth, onScrollOutside, } from './a11y/dismissable.js';
36
+ export { announce } from './a11y/live-region.js';
37
37
  // Dialog-overlay core (SvModal / SvDrawer): open -> focus-trap + scroll-lock +
38
38
  // Escape/backdrop dismissal -> restore, on the primitives above.
39
- export { createOverlay } from './createOverlay.svelte';
39
+ export { createOverlay } from './createOverlay.svelte.js';
40
40
  // Tooltip core (SvTooltip): hover/focus open with a show delay, Escape-to-hide,
41
41
  // and aria-describedby / role=tooltip wiring. (Toasts are already headless: see
42
42
  // the toastStore / toast() exports below.)
43
- export { createTooltip } from './createTooltip.svelte';
43
+ export { createTooltip } from './createTooltip.svelte.js';
44
44
  // Navigation cores: pager (SvPagination), wizard steps (SvStepper), slideshow
45
45
  // (SvCarousel). Pagination + stepper are pure/rune-free; carousel owns autoplay.
46
- export { createPagination } from './createPagination';
47
- export { createStepper } from './createStepper';
48
- export { createCarousel } from './createCarousel.svelte';
46
+ export { createPagination } from './createPagination.js';
47
+ export { createStepper } from './createStepper.js';
48
+ export { createCarousel } from './createCarousel.svelte.js';
49
49
  // Command palette core (SvCommand): fuzzy filter + roving + hotkey. Pair with
50
50
  // createOverlay for the focus-trap/scroll-lock/dismissal lifecycle.
51
- export { createCommand } from './createCommand.svelte';
51
+ export { createCommand } from './createCommand.svelte.js';
52
52
  // Schema-driven form core (SvForm): values/errors/touched + validation + submit.
53
- export { createForm } from './createForm.svelte';
53
+ export { createForm } from './createForm.svelte.js';
54
54
  export { default as SvSegmented } from './SvSegmented.svelte';
55
55
  export { default as SvSpinner } from './SvSpinner.svelte';
56
56
  export { default as SvLoadingOverlay } from './SvLoadingOverlay.svelte';
@@ -71,48 +71,48 @@ export { default as SvCode } from './SvCode.svelte';
71
71
  export { default as SvVisuallyHidden } from './SvVisuallyHidden.svelte';
72
72
  export { default as SvAspectRatio } from './SvAspectRatio.svelte';
73
73
  // UI kit - custom cell-editor registry (register any component as a grid editor)
74
- export { registerCellEditor, getCellEditor, hasCellEditor, unregisterCellEditor, registeredCellEditorTypes, defaultEditorProps, resolveEditorProps, } from './editor-registry';
75
- export { registerBuiltinEditors } from './builtin-editors';
74
+ export { registerCellEditor, getCellEditor, hasCellEditor, unregisterCellEditor, registeredCellEditorTypes, defaultEditorProps, resolveEditorProps, } from './editor-registry.js';
75
+ export { registerBuiltinEditors } from './builtin-editors.js';
76
76
  // UI kit - shared field chrome (label + hint + error + direction wrapper)
77
77
  export { default as SvField } from './SvField.svelte';
78
78
  // UI kit - headless cores (state + prop-getters you render yourself, like createSvGrid)
79
- export { createListbox, toSelectedArray, toSelectedSet, } from './createListbox.svelte';
79
+ export { createListbox, toSelectedArray, toSelectedSet, } from './createListbox.svelte.js';
80
80
  // Selection family cores
81
- export { createCombobox } from './createCombobox.svelte';
82
- export { createDropdownList } from './createDropdownList.svelte';
81
+ export { createCombobox } from './createCombobox.svelte.js';
82
+ export { createDropdownList } from './createDropdownList.svelte.js';
83
83
  // Shared engine behind the anchored-panel selects (SvMultiSelect / SvTreeSelect /
84
84
  // SvGridSelect): open/close, positioning, dismissal, roving active index, ARIA.
85
- export { createPopoverSelect } from './createPopoverSelect.svelte';
85
+ export { createPopoverSelect } from './createPopoverSelect.svelte.js';
86
86
  // Menu family core (SvMenu / SvMenuList / SvContextMenu): roving focus, submenus,
87
87
  // keyboard. `MenuItem` also re-exported from SvMenuList for back-compat.
88
- export { createMenu } from './createMenu.svelte';
88
+ export { createMenu } from './createMenu.svelte.js';
89
89
  // Pure roving-focus navigation math shared by the cores above.
90
- export { enabledIndices, wrapMove } from './list-nav';
91
- export { createAutocomplete } from './createAutocomplete.svelte';
92
- export { createTagsInput } from './createTagsInput.svelte';
93
- export { createCountryInput } from './createCountryInput.svelte';
90
+ export { enabledIndices, wrapMove } from './list-nav.js';
91
+ export { createAutocomplete } from './createAutocomplete.svelte.js';
92
+ export { createTagsInput } from './createTagsInput.svelte.js';
93
+ export { createCountryInput } from './createCountryInput.svelte.js';
94
94
  // Text-input family cores
95
- export { createNumberInput } from './createNumberInput.svelte';
96
- export { createMaskedInput } from './createMaskedInput.svelte';
97
- export { createPhoneInput } from './createPhoneInput.svelte';
98
- export { createColorInput, normalizeHex } from './createColorInput.svelte';
99
- export { createPasswordInput, passwordStrength, STRENGTH_LABELS } from './createPasswordInput.svelte';
95
+ export { createNumberInput } from './createNumberInput.svelte.js';
96
+ export { createMaskedInput } from './createMaskedInput.svelte.js';
97
+ export { createPhoneInput } from './createPhoneInput.svelte.js';
98
+ export { createColorInput, normalizeHex } from './createColorInput.svelte.js';
99
+ export { createPasswordInput, passwordStrength, STRENGTH_LABELS } from './createPasswordInput.svelte.js';
100
100
  // Buttons & toggles family cores
101
- export { createToggle } from './createToggle.svelte';
102
- export { createSwitch } from './createSwitch.svelte';
103
- export { createCheckbox } from './createCheckbox.svelte';
104
- export { createRadioGroup } from './createRadioGroup.svelte';
105
- export { createRating } from './createRating.svelte';
101
+ export { createToggle } from './createToggle.svelte.js';
102
+ export { createSwitch } from './createSwitch.svelte.js';
103
+ export { createCheckbox } from './createCheckbox.svelte.js';
104
+ export { createRadioGroup } from './createRadioGroup.svelte.js';
105
+ export { createRating } from './createRating.svelte.js';
106
106
  // Date & time family cores
107
- export { createCalendar, normalizeCalendarValue } from './createCalendar.svelte';
108
- export { createTimePicker, parseTimeValue } from './createTimePicker.svelte';
109
- export { createDateTimePicker } from './createDateTimePicker.svelte';
107
+ export { createCalendar, normalizeCalendarValue } from './createCalendar.svelte.js';
108
+ export { createTimePicker, parseTimeValue } from './createTimePicker.svelte.js';
109
+ export { createDateTimePicker } from './createDateTimePicker.svelte.js';
110
110
  // Layout & range family cores
111
- export { createTabs } from './createTabs.svelte';
112
- export { createTree, treeDescendantIds, treeCheckState, moveTreeNode, sortTreeNodes, treeContains } from './createTree.svelte';
113
- export { createSlider } from './createSlider.svelte';
114
- export { createGauge } from './createGauge.svelte';
115
- export { createButtonGroup, toGroupArray } from './createButtonGroup.svelte';
111
+ export { createTabs } from './createTabs.svelte.js';
112
+ export { createTree, treeDescendantIds, treeCheckState, moveTreeNode, sortTreeNodes, treeContains } from './createTree.svelte.js';
113
+ export { createSlider } from './createSlider.svelte.js';
114
+ export { createGauge } from './createGauge.svelte.js';
115
+ export { createButtonGroup, toGroupArray } from './createButtonGroup.svelte.js';
116
116
  // UI kit - Group B (buttons & toggles)
117
117
  export { default as SvButton } from './SvButton.svelte';
118
118
  export { default as SvRepeatButton } from './SvRepeatButton.svelte';
@@ -125,16 +125,16 @@ export { default as SvRating } from './SvRating.svelte';
125
125
  export { default as SvTextInput } from './SvTextInput.svelte';
126
126
  export { default as SvTextArea } from './SvTextArea.svelte';
127
127
  export { default as SvOtpInput } from './SvOtpInput.svelte';
128
- export { sanitizeOtp, otpCells, isOtpComplete } from './otp';
128
+ export { sanitizeOtp, otpCells, isOtpComplete } from './otp.js';
129
129
  export { default as SvDurationInput } from './SvDurationInput.svelte';
130
- export { parseDuration, formatDuration } from './duration';
130
+ export { parseDuration, formatDuration } from './duration.js';
131
131
  export { default as SvNumberInput } from './SvNumberInput.svelte';
132
132
  export { default as SvPasswordInput } from './SvPasswordInput.svelte';
133
133
  export { default as SvMaskedInput } from './SvMaskedInput.svelte';
134
134
  export { default as SvPhoneInput } from './SvPhoneInput.svelte';
135
135
  export { default as SvColorInput } from './SvColorInput.svelte';
136
- export { applyMask, unmask, isMaskComplete } from './datetime/mask';
137
- export { COUNTRIES, COUNTRY_BY_CODE, flagEmoji, phoneDigitsValid, PHONE_NATIONAL_LENGTHS } from './countries';
136
+ export { applyMask, unmask, isMaskComplete } from './datetime/mask.js';
137
+ export { COUNTRIES, COUNTRY_BY_CODE, flagEmoji, phoneDigitsValid, PHONE_NATIONAL_LENGTHS } from './countries.js';
138
138
  // UI kit - Group D (selection overlays)
139
139
  export { default as SvListBox } from './SvListBox.svelte';
140
140
  export { default as SvDropDownList } from './SvDropDownList.svelte';
@@ -142,14 +142,14 @@ export { default as SvComboBox } from './SvComboBox.svelte';
142
142
  export { default as SvAutoComplete } from './SvAutoComplete.svelte';
143
143
  export { default as SvTagsInput } from './SvTagsInput.svelte';
144
144
  export { default as SvMultiSelect } from './SvMultiSelect.svelte';
145
- export { debounce } from './debounce';
145
+ export { debounce } from './debounce.js';
146
146
  export { default as SvTreeSelect } from './SvTreeSelect.svelte';
147
- export { flattenVisible, findNodePath, branchValues } from './tree-select';
147
+ export { flattenVisible, findNodePath, branchValues } from './tree-select.js';
148
148
  export { default as SvGridSelect } from './SvGridSelect.svelte';
149
- export { filterGridRows } from './grid-select';
149
+ export { filterGridRows } from './grid-select.js';
150
150
  export { default as SvCountryInput } from './SvCountryInput.svelte';
151
- export { filterOptions, groupOptions, hasGroups, nextTypeaheadIndex, createTypeaheadBuffer, isTypeaheadKey, } from './list-option';
152
- export { virtualRange, scrollToIndex } from './virtual';
151
+ export { filterOptions, groupOptions, hasGroups, nextTypeaheadIndex, createTypeaheadBuffer, isTypeaheadKey, } from './list-option.js';
152
+ export { virtualRange, scrollToIndex } from './virtual.js';
153
153
  // UI kit - Group E (range & feedback)
154
154
  export { default as SvSlider } from './SvSlider.svelte';
155
155
  export { default as SvGauge } from './SvGauge.svelte';
@@ -157,15 +157,15 @@ export { default as SvGauge } from './SvGauge.svelte';
157
157
  export { default as SvTabs } from './SvTabs.svelte';
158
158
  export { default as SvTree } from './SvTree.svelte';
159
159
  export { default as SvAccordion } from './SvAccordion.svelte';
160
- export { createAccordion } from './createAccordion.svelte';
160
+ export { createAccordion } from './createAccordion.svelte.js';
161
161
  export { default as SvSplitter } from './SvSplitter.svelte';
162
- export { createSplitter } from './createSplitter.svelte';
162
+ export { createSplitter } from './createSplitter.svelte.js';
163
163
  export { default as SvDockLayout } from './SvDockLayout.svelte';
164
164
  export { default as SvDockManager } from './SvDockManager.svelte';
165
- export { dockPane, dockTabs, dockGroup, removePane, movePane, dockInto, reorderPane, removeLeaf, dockLeafToEdge, setActive as dockSetActive, setSizes as dockSetSizes, normalize as dockNormalize, findTabsWithPane, allPaneIds, } from './dock-model';
166
- export { floatPane, dockPaneOnto, dockWindowOnto, dockPaneToEmptyMain, reorderTab, autoHideLeaf, autoHidePaneToSide, pinAutoHidden, setAutoHideSize, closePane as dockManagerClosePane, moveWindow, resizeWindow, bringToFront, setWindowMinimized, toggleWindowMaximized, closeWindow, autoHideWindow, toggleMaximizeLeaf, findLeafById, addPaneToMain, resizeGroup as dockManagerResizeGroup, setManagerActive, locatePane, surfaceOfTabs, allManagerPaneIds, allManagerIds, dedupeManagerNodeIds, } from './dock-manager-model';
165
+ export { dockPane, dockTabs, dockGroup, removePane, movePane, dockInto, reorderPane, removeLeaf, dockLeafToEdge, setActive as dockSetActive, setSizes as dockSetSizes, normalize as dockNormalize, findTabsWithPane, allPaneIds, } from './dock-model.js';
166
+ export { floatPane, dockPaneOnto, dockWindowOnto, dockPaneToEmptyMain, reorderTab, autoHideLeaf, autoHidePaneToSide, pinAutoHidden, setAutoHideSize, closePane as dockManagerClosePane, moveWindow, resizeWindow, bringToFront, setWindowMinimized, toggleWindowMaximized, closeWindow, autoHideWindow, toggleMaximizeLeaf, findLeafById, addPaneToMain, resizeGroup as dockManagerResizeGroup, setManagerActive, locatePane, surfaceOfTabs, allManagerPaneIds, allManagerIds, dedupeManagerNodeIds, } from './dock-manager-model.js';
167
167
  export { default as SvFileUpload } from './SvFileUpload.svelte';
168
- export { createFileUpload, fileMatchesAccept } from './createFileUpload.svelte';
168
+ export { createFileUpload, fileMatchesAccept } from './createFileUpload.svelte.js';
169
169
  // UI kit - overlays (popover / tooltip / modal), sharing the popover.ts positioning + animation
170
170
  export { default as SvPopover } from './SvPopover.svelte';
171
171
  export { default as SvTooltip } from './SvTooltip.svelte';
@@ -185,18 +185,18 @@ export { default as SvSparkline } from './SvSparkline.svelte';
185
185
  export { default as SvScrollArea } from './SvScrollArea.svelte';
186
186
  export { default as SvAvatarGroup } from './SvAvatarGroup.svelte';
187
187
  export { default as SvCommand } from './SvCommand.svelte';
188
- export { fuzzyScore, fuzzyMatch } from './fuzzy';
188
+ export { fuzzyScore, fuzzyMatch } from './fuzzy.js';
189
189
  export { default as SvRichText } from './SvRichText.svelte';
190
190
  export { default as SvCarousel } from './SvCarousel.svelte';
191
191
  export { default as SvTour } from './SvTour.svelte';
192
192
  export { default as SvPagination } from './SvPagination.svelte';
193
- export { paginationRange } from './paginate';
193
+ export { paginationRange } from './paginate.js';
194
194
  export { default as SvBreadcrumb } from './SvBreadcrumb.svelte';
195
195
  export { default as SvStepper } from './SvStepper.svelte';
196
196
  export { default as SvAvatar } from './SvAvatar.svelte';
197
- export { avatarInitials, avatarColorHue } from './avatar';
197
+ export { avatarInitials, avatarColorHue } from './avatar.js';
198
198
  export { default as SvContextMenu } from './SvContextMenu.svelte';
199
- export { toast, dismissToast, updateToast, clearToasts, pauseToast, resumeToast, toastStore, } from './toast-store.svelte';
199
+ export { toast, dismissToast, updateToast, clearToasts, pauseToast, resumeToast, toastStore, } from './toast-store.svelte.js';
200
200
  export { default as SvMenu } from './SvMenu.svelte';
201
201
  export { default as SvMenuList } from './SvMenuList.svelte';
202
202
  export { default as SvMenubar } from './SvMenubar.svelte';
@@ -205,19 +205,19 @@ export { default as SvPopconfirm } from './SvPopconfirm.svelte';
205
205
  export { default as SvNavPane } from './SvNavPane.svelte';
206
206
  export { default as SvProgress } from './SvProgress.svelte';
207
207
  export { default as SvCircularProgress } from './SvCircularProgress.svelte';
208
- export { popIn } from './popover';
208
+ export { popIn } from './popover.js';
209
209
  export { default as SvForm } from './SvForm.svelte';
210
- export { rules, runRules, isEmptyValue } from './validators';
211
- export { anchoredRect, portalToBody, PANEL_THEME_VARS } from './popover';
212
- export { computePosition, autoUpdate, parsePlacement, } from './positioning';
213
- export { toDate, startOfDay, startOfWeek, startOfMonth, addDays, addMonths, addYears, clampDate, isSameDay, monthMatrix, weekdayOrder, isoWeek, decadeRange, withTime, snapMinute, } from './datetime/date-core';
214
- export { formatDate, parseDate, tokenizeMask } from './datetime/date-format';
215
- export { toICS, fromICS, ruleToRRule, rruleToRule } from './scheduler-ical';
216
- export { zoneParts, zoneOffsetMs, toZonedLocal, fromZonedLocal, instantFromWallClock, zoneAbbr, normalizeTimeZone, } from './datetime/timezone';
217
- export { selectDate, rangeDays, isSelected, isMultiSelectMode, emptySelection, } from './datetime/date-selection';
218
- export { isDisabledDay, isOutOfRange, isRestricted, isImportant, } from './datetime/date-restrict';
210
+ export { rules, runRules, isEmptyValue } from './validators.js';
211
+ export { anchoredRect, portalToBody, PANEL_THEME_VARS } from './popover.js';
212
+ export { computePosition, autoUpdate, parsePlacement, } from './positioning.js';
213
+ export { toDate, startOfDay, startOfWeek, startOfMonth, addDays, addMonths, addYears, clampDate, isSameDay, monthMatrix, weekdayOrder, isoWeek, decadeRange, withTime, snapMinute, } from './datetime/date-core.js';
214
+ export { formatDate, parseDate, tokenizeMask } from './datetime/date-format.js';
215
+ export { toICS, fromICS, ruleToRRule, rruleToRule } from './scheduler-ical.js';
216
+ export { zoneParts, zoneOffsetMs, toZonedLocal, fromZonedLocal, instantFromWallClock, zoneAbbr, normalizeTimeZone, } from './datetime/timezone.js';
217
+ export { selectDate, rangeDays, isSelected, isMultiSelectMode, emptySelection, } from './datetime/date-selection.js';
218
+ export { isDisabledDay, isOutOfRange, isRestricted, isImportant, } from './datetime/date-restrict.js';
219
219
  export { default as FlexRender } from './FlexRender.svelte';
220
- export { renderComponent, renderSnippet } from './render-component';
220
+ export { renderComponent, renderSnippet } from './render-component.js';
221
221
  export { default as SvGridChart } from './SvGridChart.svelte';
222
222
  export { default as SvGridChartPanel } from './SvGridChartPanel.svelte';
223
223
  // Preferred names for the standalone chart primitives. `SvChart` is a genuine
@@ -226,37 +226,37 @@ export { default as SvGridChartPanel } from './SvGridChartPanel.svelte';
226
226
  // as aliases so existing imports keep working.
227
227
  export { default as SvChart } from './SvGridChart.svelte';
228
228
  export { default as SvChartPanel } from './SvGridChartPanel.svelte';
229
- export { buildChart, formatChartValue, rowsToChartSpec, niceScale, niceLogScale, linearTrend, simpleMovingAverage, exponentialMovingAverage, computeOverlay, buildLinePath, sampleGradient, pickContrastText, DEFAULT_PALETTE, } from './chart';
230
- export { chartToSvgString, downloadChartSvg, chartToPngBlob, downloadChartPng, chartSpecToCsv, downloadChartCsv, } from './chart-export';
231
- export { buildSparkline, toSparklineValues, } from './sparkline';
232
- export { spreadsheetLayout, spansToMerges, } from './spreadsheet';
233
- export { rowResize } from './row-resize';
234
- export { rowDropZone } from './row-drag';
235
- export { resolveColumnTypes, inferCellDataType } from './column-types';
236
- export { computeColumnGroupMeta, hiddenLeavesForCollapse, } from './column-groups';
237
- export { createHyperFormulaSheet, } from './hyperformula-adapter';
238
- export { createCollaboration, broadcastChannelTransport, } from './collaboration';
239
- export { createServerDataSource, } from './server-data-source';
240
- export { createServerGroupModel, serverGroupRows, serverGroupNav, } from './server-group-model';
229
+ export { buildChart, formatChartValue, rowsToChartSpec, niceScale, niceLogScale, linearTrend, simpleMovingAverage, exponentialMovingAverage, computeOverlay, buildLinePath, sampleGradient, pickContrastText, DEFAULT_PALETTE, } from './chart.js';
230
+ export { chartToSvgString, downloadChartSvg, chartToPngBlob, downloadChartPng, chartSpecToCsv, downloadChartCsv, } from './chart-export.js';
231
+ export { buildSparkline, toSparklineValues, } from './sparkline.js';
232
+ export { spreadsheetLayout, spansToMerges, } from './spreadsheet.js';
233
+ export { rowResize } from './row-resize.js';
234
+ export { rowDropZone } from './row-drag.js';
235
+ export { resolveColumnTypes, inferCellDataType } from './column-types.js';
236
+ export { computeColumnGroupMeta, hiddenLeavesForCollapse, } from './column-groups.js';
237
+ export { createHyperFormulaSheet, } from './hyperformula-adapter.js';
238
+ export { createCollaboration, broadcastChannelTransport, } from './collaboration.js';
239
+ export { createServerDataSource, } from './server-data-source.js';
240
+ export { createServerGroupModel, serverGroupRows, serverGroupNav, } from './server-group-model.js';
241
241
  export { default as SvGroupCell } from './SvGroupCell.svelte';
242
242
  export { default as SvRowGroupPanel } from './SvRowGroupPanel.svelte';
243
- export { createNamedViews, memoryViews, localStorageViews, attachAutoSavedView, } from './named-views';
244
- export { resolveCellFormat, computeColumnStat, lerpColor, rgba, contrastText, formatNeedsStats, formatsNeedingStats, } from './conditional-formatting';
245
- export { defaultGridMessages, resolveGridMessages, } from './grid-messages';
246
- export { insertGroupFooters, buildAutoGroupColumns, paginateGroupedRows, } from './group-display';
247
- export { getKeyboardIntent, getNextActiveCell } from './keyboard';
248
- export { createVirtualizer } from './virtualization/virtualizer';
249
- export { createSvelteVirtualizer } from './virtualization/svelte-virtualizer.svelte';
250
- export { createColumnVirtualizer } from './virtualization/column-virtualizer';
251
- export { parseEditorValue, normalizeEditorOptions, } from './editors/cell-editors';
252
- export { applyExcelFilter, compileExcelFilter, normalizeForFilter, splitInTokens, joinInTokens, trailingInToken, } from './filtering/excel-filters';
253
- export { ALL_FILTER_OPERATORS, SET_OPERATOR_IDS, VALUELESS_OPERATOR_IDS, RANGE_OPERATOR_IDS, isSetOperator, isValuelessOperator, isRangeOperator, } from './filtering/filter-operator-catalogue';
254
- export { applyRowPredicate } from './filtering/row-predicate';
243
+ export { createNamedViews, memoryViews, localStorageViews, attachAutoSavedView, } from './named-views.js';
244
+ export { resolveCellFormat, computeColumnStat, lerpColor, rgba, contrastText, formatNeedsStats, formatsNeedingStats, } from './conditional-formatting.js';
245
+ export { defaultGridMessages, resolveGridMessages, } from './grid-messages.js';
246
+ export { insertGroupFooters, buildAutoGroupColumns, paginateGroupedRows, } from './group-display.js';
247
+ export { getKeyboardIntent, getNextActiveCell } from './keyboard.js';
248
+ export { createVirtualizer } from './virtualization/virtualizer.js';
249
+ export { createSvelteVirtualizer } from './virtualization/svelte-virtualizer.svelte.js';
250
+ export { createColumnVirtualizer } from './virtualization/column-virtualizer.js';
251
+ export { parseEditorValue, normalizeEditorOptions, } from './editors/cell-editors.js';
252
+ export { applyExcelFilter, compileExcelFilter, normalizeForFilter, splitInTokens, joinInTokens, trailingInToken, } from './filtering/excel-filters.js';
253
+ export { ALL_FILTER_OPERATORS, SET_OPERATOR_IDS, VALUELESS_OPERATOR_IDS, RANGE_OPERATOR_IDS, isSetOperator, isValuelessOperator, isRangeOperator, } from './filtering/filter-operator-catalogue.js';
254
+ export { applyRowPredicate } from './filtering/row-predicate.js';
255
255
  // Advanced-filter seam: enterprise registers the compiler, the grid owns the
256
256
  // state and the pipeline slot.
257
- export { registerAdvancedFilterEngine, getAdvancedFilterEngine, hasAdvancedFilterEngine, } from './advanced-filter.svelte';
258
- export { getGridCellDomId, getGridCellA11yProps, getGridHeaderA11yProps, getGridRootA11yProps, getGridRowA11yProps, } from './a11y';
257
+ export { registerAdvancedFilterEngine, getAdvancedFilterEngine, hasAdvancedFilterEngine, } from './advanced-filter.svelte.js';
258
+ export { getGridCellDomId, getGridCellA11yProps, getGridHeaderA11yProps, getGridRootA11yProps, getGridRowA11yProps, } from './a11y.js';
259
259
  /**
260
260
  * Compatibility alias for teams migrating from `createTable`.
261
261
  */
262
- export { createSvGrid as createTable } from './createGrid.svelte';
262
+ export { createSvGrid as createTable } from './createGrid.svelte.js';
@@ -1,5 +1,5 @@
1
- import { type RowData, type TableFeatures } from "./index";
2
- import "./sv-grid-scrollbar";
1
+ import { type RowData, type TableFeatures } from "./index.js";
2
+ import "./sv-grid-scrollbar.js";
3
3
  export declare function createKeyboard<TFeatures extends TableFeatures = TableFeatures, TData extends RowData = RowData>(ctx: any): {
4
4
  onGridKeyDown: (event: KeyboardEvent) => void;
5
5
  onWindowKeydown: (event: KeyboardEvent) => void;
@@ -1,5 +1,5 @@
1
- import "./sv-grid-scrollbar";
2
- import { getKeyboardIntent, getNextActiveCell } from "./keyboard";
1
+ import "./sv-grid-scrollbar.js";
2
+ import { getKeyboardIntent, getNextActiveCell } from "./keyboard.js";
3
3
  export function createKeyboard(ctx) {
4
4
  function onGridKeyDown(event) {
5
5
  // Only the grid root drives navigation - keys on header buttons, menus,
@@ -1,4 +1,4 @@
1
- import type { ActiveCellState } from './core';
1
+ import type { ActiveCellState } from './core.js';
2
2
  export type GridKeyboardIntent = 'moveLeft' | 'moveRight' | 'moveUp' | 'moveDown' | 'tabNext' | 'tabPrev' | 'rowStart' | 'rowEnd' | 'gridStart' | 'gridEnd' | 'pageUp' | 'pageDown' | 'activate' | 'clearCells' | 'noop';
3
3
  export declare function getKeyboardIntent(event: KeyboardEvent): GridKeyboardIntent;
4
4
  export declare function getNextActiveCell(current: ActiveCellState, intent: GridKeyboardIntent, bounds: {
package/dist/menus.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- import { type RowData, type TableFeatures } from "./index";
2
- import "./sv-grid-scrollbar";
3
- import type { FilterOperator } from "./SvGrid.types";
1
+ import { type RowData, type TableFeatures } from "./index.js";
2
+ import "./sv-grid-scrollbar.js";
3
+ import type { FilterOperator } from "./SvGrid.types.js";
4
4
  export declare function createMenus<TFeatures extends TableFeatures = TableFeatures, TData extends RowData = RowData>(ctx: any): {
5
5
  updateFilterRow: (columnId: string, value: string) => void;
6
6
  updateFilterOperator: (columnId: string, operator: FilterOperator) => void;
package/dist/menus.js CHANGED
@@ -1,7 +1,7 @@
1
- import "./sv-grid-scrollbar";
1
+ import "./sv-grid-scrollbar.js";
2
2
  import { untrack } from "svelte";
3
- import { clampMenuX, cssEscape, } from "./SvGrid.helpers";
4
- import { splitInTokens, joinInTokens } from "./filtering/excel-filters";
3
+ import { clampMenuX, cssEscape, } from "./SvGrid.helpers.js";
4
+ import { splitInTokens, joinInTokens } from "./filtering/excel-filters.js";
5
5
  export function createMenus(ctx) {
6
6
  function updateFilterRow(columnId, value) {
7
7
  ctx.filterRowValues = { ...ctx.filterRowValues, [columnId]: value };
@@ -7,7 +7,7 @@
7
7
  * pass your own adapter to sync views to a server / per-user account. The
8
8
  * manager itself is pure and synchronous, so it is trivially testable.
9
9
  */
10
- import type { SvGridViewState } from './svgrid-wrapper.types';
10
+ import type { SvGridViewState } from './svgrid-wrapper.types.js';
11
11
  export type SavedView = {
12
12
  name: string;
13
13
  state: Partial<SvGridViewState>;
@@ -25,7 +25,7 @@
25
25
  * registerPivotEngine((data, config) => createPivotModel(data, config))
26
26
  * ```
27
27
  */
28
- import type { ColumnDef, RowData, TableFeatures } from './index';
28
+ import type { ColumnDef, RowData, TableFeatures } from './index.js';
29
29
  /** One value measure in a pivot: which field, how to aggregate, how to label. */
30
30
  export type GridPivotValue<TData = RowData> = {
31
31
  field: keyof TData & string;
@@ -16,7 +16,7 @@
16
16
  * matchesRecurrence(someDate, [standup, payday, sprint, board, review])
17
17
  * ```
18
18
  */
19
- import { type DateLike } from './datetime/date-core';
19
+ import { type DateLike } from './datetime/date-core.js';
20
20
  export type RecurrenceFreq = 'daily' | 'weekly' | 'monthly' | 'yearly';
21
21
  export type RecurrenceRule = {
22
22
  freq: RecurrenceFreq;
@@ -16,7 +16,7 @@
16
16
  * matchesRecurrence(someDate, [standup, payday, sprint, board, review])
17
17
  * ```
18
18
  */
19
- import { startOfDay, startOfWeek, toDate } from './datetime/date-core';
19
+ import { startOfDay, startOfWeek, toDate } from './datetime/date-core.js';
20
20
  const MS_DAY = 86400000;
21
21
  /** Whole-day index, rounded so DST transitions don't shift it. */
22
22
  const dayIndex = (d) => Math.round(startOfDay(d).getTime() / MS_DAY);
package/dist/row-drag.js CHANGED
@@ -286,7 +286,7 @@ export function createRowDrag(ctx) {
286
286
  currentTarget: e.currentTarget,
287
287
  preventDefault: () => { },
288
288
  };
289
- void import("./row-drag-touch").then((m) => {
289
+ void import("./row-drag-touch.js").then((m) => {
290
290
  touchLoading = false;
291
291
  stopWatching();
292
292
  if (aborted || !managed())
@@ -5,7 +5,7 @@
5
5
  * round-trip (via the shared {@link RecurrenceRule}), STATUS, DESCRIPTION and
6
6
  * LOCATION. No `Date.now()` in the core - `toICS` accepts a stamp.
7
7
  */
8
- import type { RecurrenceRule } from './recurrence';
8
+ import type { RecurrenceRule } from './recurrence.js';
9
9
  export type ICalEvent = {
10
10
  uid?: string;
11
11
  title: string;
@@ -14,9 +14,9 @@
14
14
  * non-deterministic and unavailable in some execution contexts) - the caller
15
15
  * supplies "today"/the anchor date and passes it in.
16
16
  */
17
- import { type DateLike } from './datetime/date-core';
18
- import { type RecurrenceRule } from './recurrence';
19
- import type { SchedulerView, SchedulerResource, SchedulerCollisionMode } from './SvGrid.types';
17
+ import { type DateLike } from './datetime/date-core.js';
18
+ import { type RecurrenceRule } from './recurrence.js';
19
+ import type { SchedulerView, SchedulerResource, SchedulerCollisionMode } from './SvGrid.types.js';
20
20
  export type { SchedulerView, SchedulerResource, SchedulerCollisionMode };
21
21
  /** A concrete event instance placed on the calendar (one row may yield many when
22
22
  * it recurs). `key` is unique per instance; `rowKey` ties it back to its row. */
@@ -14,8 +14,8 @@
14
14
  * non-deterministic and unavailable in some execution contexts) - the caller
15
15
  * supplies "today"/the anchor date and passes it in.
16
16
  */
17
- import { addDays, addMonths, startOfDay, startOfMonth, startOfWeek, withTime, toDate, isSameDay, } from './datetime/date-core';
18
- import { expandRecurrence } from './recurrence';
17
+ import { addDays, addMonths, startOfDay, startOfMonth, startOfWeek, withTime, toDate, isSameDay, } from './datetime/date-core.js';
18
+ import { expandRecurrence } from './recurrence.js';
19
19
  const MS_MIN = 60000;
20
20
  /** True when [aStart,aEnd] and [bStart,bEnd] overlap (touching counts as overlap
21
21
  * only for zero-length events). */
@@ -1,5 +1,5 @@
1
- import { type RowData, type TableFeatures } from "./index";
2
- import "./sv-grid-scrollbar";
1
+ import { type RowData, type TableFeatures } from "./index.js";
2
+ import "./sv-grid-scrollbar.js";
3
3
  export declare function createScrollSync<TFeatures extends TableFeatures = TableFeatures, TData extends RowData = RowData>(ctx: any): {
4
4
  showTooltipFor: (el: HTMLElement, text: string) => void;
5
5
  hideTooltip: () => void;
@@ -1,4 +1,4 @@
1
- import "./sv-grid-scrollbar";
1
+ import "./sv-grid-scrollbar.js";
2
2
  export function createScrollSync(ctx) {
3
3
  function showTooltipFor(el, text) {
4
4
  if (!text)
@@ -1,5 +1,5 @@
1
- import { type RowData, type TableFeatures } from "./index";
2
- import "./sv-grid-scrollbar";
1
+ import { type RowData, type TableFeatures } from "./index.js";
2
+ import "./sv-grid-scrollbar.js";
3
3
  export declare function createSelection<TFeatures extends TableFeatures = TableFeatures, TData extends RowData = RowData>(ctx: any): {
4
4
  isRowSelected: (rowId: string) => boolean;
5
5
  toggleRowSelectionById: (rowId: string) => void;
package/dist/selection.js CHANGED
@@ -1,9 +1,9 @@
1
1
  // selection handlers extracted from the controller. Imperative event handlers
2
2
  // reading/writing controller state via the `ctx` handle; the reactive core
3
3
  // ($state/$derived/$effect) stays in the controller.
4
- import { getGridCellDomId, } from "./index";
5
- import "./sv-grid-scrollbar";
6
- import { getColumnBaseValue, isGroupRow, } from "./cell-values";
4
+ import { getGridCellDomId, } from "./index.js";
5
+ import "./sv-grid-scrollbar.js";
6
+ import { getColumnBaseValue, isGroupRow, } from "./cell-values.js";
7
7
  export function createSelection(ctx) {
8
8
  function isRowSelected(rowId) {
9
9
  return Boolean(ctx.rowSelectionState[rowId]);
@@ -15,7 +15,7 @@
15
15
  * non-optimistic for now - the grid reflects a change only after the
16
16
  * follow-up re-fetch of the current page lands.
17
17
  */
18
- import type { GridPredicateExpr } from './filtering/predicate-expr';
18
+ import type { GridPredicateExpr } from './filtering/predicate-expr.js';
19
19
  export type ServerSortModel = Array<{
20
20
  id: string;
21
21
  desc: boolean;
@@ -16,7 +16,7 @@
16
16
  * Headless and framework-agnostic on purpose: render from `state.displayRows`
17
17
  * and call `toggleGroup` from the group cell's expander.
18
18
  */
19
- import type { ServerAggregation, ServerDataSource, ServerDisplayRow, ServerFilterModel, ServerGroupRow, ServerSortModel } from './server-data-source';
19
+ import type { ServerAggregation, ServerDataSource, ServerDisplayRow, ServerFilterModel, ServerGroupRow, ServerSortModel } from './server-data-source.js';
20
20
  export type ServerGroupState<TData> = {
21
21
  /** The flattened tree: top-level groups, with expanded groups' children spliced in. */
22
22
  displayRows: ServerDisplayRow<TData>[];
@@ -1 +1 @@
1
- export { createCoreRowModel, createExpandedRowModel, createFilteredRowModel, createGroupedRowModel, createPaginatedRowModel, createSortedRowModel, filterFns, sortFns, tableFeatures, } from './core';
1
+ export { createCoreRowModel, createExpandedRowModel, createFilteredRowModel, createGroupedRowModel, createPaginatedRowModel, createSortedRowModel, filterFns, sortFns, tableFeatures, } from './core.js';
@@ -1 +1 @@
1
- export { createCoreRowModel, createExpandedRowModel, createFilteredRowModel, createGroupedRowModel, createPaginatedRowModel, createSortedRowModel, filterFns, sortFns, tableFeatures, } from './core';
1
+ export { createCoreRowModel, createExpandedRowModel, createFilteredRowModel, createGroupedRowModel, createPaginatedRowModel, createSortedRowModel, filterFns, sortFns, tableFeatures, } from './core.js';
@@ -1,4 +1,4 @@
1
- import type { RowData, SvGrid, TableFeatures } from './core';
1
+ import type { RowData, SvGrid, TableFeatures } from './core.js';
2
2
  /**
3
3
  * Fine-grained subscription to `table.store` using `useSelector` with shallow
4
4
  * comparison. Call from `<script>` so the selector is contextually typed.
@@ -1,5 +1,5 @@
1
- import { type Column, type Row, type RowData, type TableFeatures } from "./index";
2
- import "./sv-grid-scrollbar";
1
+ import { type Column, type Row, type RowData, type TableFeatures } from "./index.js";
2
+ import "./sv-grid-scrollbar.js";
3
3
  export declare function createSummaries<TFeatures extends TableFeatures = TableFeatures, TData extends RowData = RowData>(ctx: any): {
4
4
  computeSummaries: (rows: ReadonlyArray<Row<TData>>, columns: ReadonlyArray<Column<TData>>) => Record<string, string>;
5
5
  hasRenderedColumn: (entry: {
package/dist/summaries.js CHANGED
@@ -1,6 +1,6 @@
1
- import "./sv-grid-scrollbar";
2
- import { getCellKey, } from "./SvGrid.helpers";
3
- import { formatSummaryNumeric, } from "./cell-values";
1
+ import "./sv-grid-scrollbar.js";
2
+ import { getCellKey, } from "./SvGrid.helpers.js";
3
+ import { formatSummaryNumeric, } from "./cell-values.js";
4
4
  export function createSummaries(ctx) {
5
5
  /**
6
6
  * Aggregate every row into a per-column footer summary (sum for numeric
@@ -1,8 +1,8 @@
1
- import type { CellFormatConfig, ColumnDef, RowData, SvGridOptions, TableFeatures } from './core';
2
- import type { FilterOperator, Props } from './SvGrid.types';
3
- import type { GridExportOptions, GridClipboardOptions } from './export-format';
4
- import type { ChartSpec, ChartType } from './chart';
5
- import type { GridPredicateExpr } from './filtering/predicate-expr';
1
+ import type { CellFormatConfig, ColumnDef, RowData, SvGridOptions, TableFeatures } from './core.js';
2
+ import type { FilterOperator, Props } from './SvGrid.types.js';
3
+ import type { GridExportOptions, GridClipboardOptions } from './export-format.js';
4
+ import type { ChartSpec, ChartType } from './chart.js';
5
+ import type { GridPredicateExpr } from './filtering/predicate-expr.js';
6
6
  export type SvGridFilterOperator = FilterOperator;
7
7
  /**
8
8
  * A serializable snapshot of everything that makes up the current "view":