@lavalogic/scoria 0.35.0 → 0.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (555) hide show
  1. package/README.md +58 -58
  2. package/dist/Components/AccordionGroup.svelte +46 -42
  3. package/dist/Components/AccordionGroupButton.svelte +106 -106
  4. package/dist/Components/AccordionGroupButtonProps.d.ts +27 -8
  5. package/dist/Components/AccordionGroupProps.d.ts +10 -2
  6. package/dist/Components/Action.svelte +137 -139
  7. package/dist/Components/ActionProps.d.ts +23 -3
  8. package/dist/Components/AlertModal.svelte +176 -125
  9. package/dist/Components/AppointmentCalendar/AppointmentCalendar.svelte +1126 -0
  10. package/dist/Components/AppointmentCalendar/AppointmentCalendar.svelte.d.ts +4 -0
  11. package/dist/Components/AppointmentCalendar/AppointmentCalendarProps.d.ts +92 -0
  12. package/dist/Components/AppointmentCalendar/AppointmentCalendarProps.js +12 -0
  13. package/dist/Components/Base/BaseModal.svelte +172 -0
  14. package/dist/Components/Base/BaseModal.svelte.d.ts +4 -0
  15. package/dist/Components/Base/BaseModalProps.d.ts +73 -0
  16. package/dist/Components/Base/BaseModalProps.js +1 -0
  17. package/dist/Components/Base/ContextWrapper.svelte +72 -50
  18. package/dist/Components/Base/ContextWrapper.svelte.d.ts +24 -5
  19. package/dist/Components/Base/ContextWrapperProps.d.ts +22 -0
  20. package/dist/Components/Base/Pagination.svelte +198 -190
  21. package/dist/Components/Base/Pagination.svelte.d.ts +12 -2
  22. package/dist/Components/Base/PaginationProps.d.ts +60 -3
  23. package/dist/Components/Base/Snippets.svelte +36 -29
  24. package/dist/Components/Base/Snippets.svelte.d.ts +5 -1
  25. package/dist/Components/BigRadioSet.svelte +39 -30
  26. package/dist/Components/BigRadioSetProps.d.ts +17 -1
  27. package/dist/Components/Bubble.svelte +110 -77
  28. package/dist/Components/Bubble.svelte.d.ts +23 -2
  29. package/dist/Components/BubbleProps.d.ts +55 -4
  30. package/dist/Components/Button.svelte +209 -197
  31. package/dist/Components/ButtonProps.d.ts +66 -1
  32. package/dist/Components/Checkbox.svelte +100 -72
  33. package/dist/Components/Checkbox.svelte.d.ts +1 -12
  34. package/dist/Components/CheckboxProps.d.ts +27 -0
  35. package/dist/Components/CheckboxProps.js +1 -0
  36. package/dist/Components/CollapsibleCard.svelte +114 -83
  37. package/dist/Components/CollapsibleCardProps.d.ts +22 -1
  38. package/dist/Components/Contexts/ContextMenu.svelte +178 -157
  39. package/dist/Components/Contexts/ContextMenu.svelte.d.ts +26 -0
  40. package/dist/Components/Contexts/ContextMenuDivider.svelte +19 -11
  41. package/dist/Components/Contexts/ContextMenuDivider.svelte.d.ts +9 -0
  42. package/dist/Components/Contexts/ContextMenuOption.svelte +66 -57
  43. package/dist/Components/Contexts/ContextMenuOption.svelte.d.ts +12 -1
  44. package/dist/Components/Contexts/ContextMenuOptionProps.d.ts +34 -2
  45. package/dist/Components/Contexts/Toast.svelte +88 -64
  46. package/dist/Components/Contexts/Toast.svelte.d.ts +14 -0
  47. package/dist/Components/Contexts/ToastContainer.svelte +68 -49
  48. package/dist/Components/Contexts/ToastContainer.svelte.d.ts +14 -0
  49. package/dist/Components/Contexts/ToastProps.d.ts +14 -1
  50. package/dist/Components/Contexts/Tooltip.svelte +47 -36
  51. package/dist/Components/Contexts/Tooltip.svelte.d.ts +10 -0
  52. package/dist/Components/DataMatrixIcon.svelte +113 -42
  53. package/dist/Components/DataMatrixIconProps.d.ts +73 -1
  54. package/dist/Components/DateInput.svelte +144 -109
  55. package/dist/Components/DateInput.svelte.d.ts +1 -1
  56. package/dist/Components/DateOnlyInputProps.d.ts +31 -5
  57. package/dist/Components/DatePicker.svelte +301 -313
  58. package/dist/Components/DatePickerProps.d.ts +18 -1
  59. package/dist/Components/DateTimeInputProps.d.ts +30 -5
  60. package/dist/Components/DesktopModal.svelte +90 -119
  61. package/dist/Components/DesktopModalProps.d.ts +5 -4
  62. package/dist/Components/Dial.svelte +213 -151
  63. package/dist/Components/DialProps.d.ts +74 -2
  64. package/dist/Components/DimensionInput.svelte +171 -185
  65. package/dist/Components/DimensionInput.svelte.d.ts +1 -1
  66. package/dist/Components/DimensionInputProps.d.ts +39 -4
  67. package/dist/Components/DragMenu/DragMenuHolder.svelte +119 -107
  68. package/dist/Components/DragMenu/DragMenuHolderProps.d.ts +30 -1
  69. package/dist/Components/DragMenu/DraggableCard.svelte +77 -41
  70. package/dist/Components/DragMenu/DraggableCardProps.d.ts +27 -1
  71. package/dist/Components/FileCard.svelte +24 -20
  72. package/dist/Components/FileCardProps.d.ts +17 -1
  73. package/dist/Components/FileUpload.svelte +236 -196
  74. package/dist/Components/FileUploadProps.d.ts +34 -4
  75. package/dist/Components/GridInput.svelte +201 -191
  76. package/dist/Components/GridInput.svelte.d.ts +5 -5
  77. package/dist/Components/GridInputProps.d.ts +4 -1
  78. package/dist/Components/GridInputSet.svelte +31 -24
  79. package/dist/Components/GridInputSet.svelte.d.ts +5 -5
  80. package/dist/Components/GridInputSetProps.d.ts +4 -2
  81. package/dist/Components/HorizontalTabGroup.svelte +81 -79
  82. package/dist/Components/HorizontalTabGroupButton.svelte +51 -103
  83. package/dist/Components/HorizontalTabGroupProps.d.ts +15 -2
  84. package/dist/Components/Icon.svelte +144 -103
  85. package/dist/Components/IconProps.d.ts +54 -6
  86. package/dist/Components/Icons.d.ts +8 -0
  87. package/dist/Components/Icons.js +591 -572
  88. package/dist/Components/LoadingAnimation.svelte +39 -39
  89. package/dist/Components/LoadingAnimation.svelte.d.ts +1 -3
  90. package/dist/Components/LoadingAnimationProps.d.ts +16 -0
  91. package/dist/Components/LoadingAnimationProps.js +1 -0
  92. package/dist/Components/LoadingModal.svelte +48 -50
  93. package/dist/Components/LoadingModal.svelte.d.ts +1 -4
  94. package/dist/Components/LoadingModalProps.d.ts +17 -0
  95. package/dist/Components/LoadingModalProps.js +1 -0
  96. package/dist/Components/LoadingOverlay.svelte +28 -30
  97. package/dist/Components/LoadingOverlay.svelte.d.ts +1 -5
  98. package/dist/Components/LoadingOverlayProps.d.ts +28 -0
  99. package/dist/Components/LoadingOverlayProps.js +1 -0
  100. package/dist/Components/Modal.svelte +250 -255
  101. package/dist/Components/Modal.svelte.d.ts +1 -25
  102. package/dist/Components/ModalProps.d.ts +65 -0
  103. package/dist/Components/ModalProps.js +1 -0
  104. package/dist/Components/MultiSelect.svelte +238 -226
  105. package/dist/Components/MultiSelectCommonProps.d.ts +33 -4
  106. package/dist/Components/MultiSelectPropsAsObject.d.ts +5 -0
  107. package/dist/Components/MultiSelectPropsAsPrimitive.d.ts +6 -0
  108. package/dist/Components/Nav/CallbackButtonWithIcon.d.ts +22 -1
  109. package/dist/Components/Nav/Nav.svelte +115 -110
  110. package/dist/Components/Nav/Nav.svelte.d.ts +23 -2
  111. package/dist/Components/Nav/NavProps.d.ts +50 -3
  112. package/dist/Components/Nav/NavServiceMenuList.svelte +44 -35
  113. package/dist/Components/Nav/NavServiceMenuListProps.d.ts +25 -1
  114. package/dist/Components/Nav/NavTab.svelte +62 -91
  115. package/dist/Components/Nav/NavTab.svelte.d.ts +23 -2
  116. package/dist/Components/Nav/NavTabProps.d.ts +16 -2
  117. package/dist/Components/Nav/ServiceMenuItem.svelte +101 -92
  118. package/dist/Components/Nav/ServicesNav.svelte +96 -70
  119. package/dist/Components/Nav/ServicesNav.svelte.d.ts +23 -2
  120. package/dist/Components/Nav/ServicesNavProps.d.ts +20 -4
  121. package/dist/Components/Nav/SideMenuItemProps.d.ts +16 -0
  122. package/dist/Components/NumberInput.svelte +155 -145
  123. package/dist/Components/NumberInputProps.d.ts +37 -0
  124. package/dist/Components/PageHeading.svelte +25 -36
  125. package/dist/Components/PageHeading.svelte.d.ts +1 -6
  126. package/dist/Components/PageHeadingProps.d.ts +23 -0
  127. package/dist/Components/PageHeadingProps.js +1 -0
  128. package/dist/Components/PasswordInput.svelte +85 -73
  129. package/dist/Components/PasswordInput.svelte.d.ts +2 -2
  130. package/dist/Components/PasswordInputProps.d.ts +21 -0
  131. package/dist/Components/PasswordInputProps.js +1 -0
  132. package/dist/Components/Portal.svelte +36 -25
  133. package/dist/Components/PortalProps.d.ts +20 -1
  134. package/dist/Components/ProgressBubble.svelte +129 -84
  135. package/dist/Components/ProgressBubbleProps.d.ts +23 -2
  136. package/dist/Components/QuerySelect.svelte +384 -440
  137. package/dist/Components/QuerySelect.svelte.d.ts +2 -29
  138. package/dist/Components/QuerySelectProps.d.ts +66 -0
  139. package/dist/Components/QuerySelectProps.js +1 -0
  140. package/dist/Components/SingleSelect.svelte +268 -290
  141. package/dist/Components/SingleSelectCommonProps.d.ts +43 -5
  142. package/dist/Components/SingleSelectPropsAsObject.d.ts +7 -0
  143. package/dist/Components/SingleSelectPropsAsPrimitive.d.ts +8 -0
  144. package/dist/Components/StepButton.svelte +70 -120
  145. package/dist/Components/StepForm.svelte +147 -147
  146. package/dist/Components/StepFormProps.d.ts +16 -2
  147. package/dist/Components/Switch.svelte +84 -47
  148. package/dist/Components/Switch.svelte.d.ts +1 -1
  149. package/dist/Components/SwitchProps.d.ts +46 -0
  150. package/dist/Components/Table/Body/HeightData.d.ts +1 -6
  151. package/dist/Components/Table/Body/HeightData.js +8 -0
  152. package/dist/Components/Table/Body/QuickSearchCell.svelte +697 -641
  153. package/dist/Components/Table/Body/QuickSearchCell.svelte.d.ts +12 -11
  154. package/dist/Components/Table/Body/QuickSearchCellProps.d.ts +6 -0
  155. package/dist/Components/Table/Body/Rows/ColumnHighlight.svelte +68 -34
  156. package/dist/Components/Table/Body/Rows/ColumnHighlight.svelte.d.ts +24 -2
  157. package/dist/Components/Table/Body/Rows/ColumnHighlightProps.d.ts +3 -0
  158. package/dist/Components/Table/Body/Rows/ColumnList.svelte +66 -56
  159. package/dist/Components/Table/Body/Rows/ColumnList.svelte.d.ts +12 -11
  160. package/dist/Components/Table/Body/Rows/ColumnListProps.d.ts +1 -0
  161. package/dist/Components/Table/Body/Rows/ColumnListRow.svelte +515 -182
  162. package/dist/Components/Table/Body/Rows/ColumnListRow.svelte.d.ts +12 -11
  163. package/dist/Components/Table/Body/Rows/ColumnListRowProps.d.ts +5 -0
  164. package/dist/Components/Table/Body/Rows/Columns/AccessorComponent.svelte +79 -49
  165. package/dist/Components/Table/Body/Rows/Columns/AccessorComponentProps.d.ts +12 -0
  166. package/dist/Components/Table/Body/Rows/Columns/ActionsCell.svelte +203 -191
  167. package/dist/Components/Table/Body/Rows/Columns/ActionsCell.svelte.d.ts +12 -12
  168. package/dist/Components/Table/Body/Rows/Columns/ActionsColumn.d.ts +9 -0
  169. package/dist/Components/Table/Body/Rows/Columns/ActionsTableCell.d.ts +5 -0
  170. package/dist/Components/Table/Body/Rows/Columns/BubbleCell.svelte +150 -115
  171. package/dist/Components/Table/Body/Rows/Columns/BubbleCell.svelte.d.ts +14 -13
  172. package/dist/Components/Table/Body/Rows/Columns/BubbleCellProps.d.ts +12 -0
  173. package/dist/Components/Table/Body/Rows/Columns/BubbleCellProps.js +1 -0
  174. package/dist/Components/Table/Body/Rows/Columns/ExpandCell.svelte +149 -129
  175. package/dist/Components/Table/Body/Rows/Columns/FocusableImmutableCell.svelte +149 -126
  176. package/dist/Components/Table/Body/Rows/Columns/FocusableImmutableCell.svelte.d.ts +12 -11
  177. package/dist/Components/Table/Body/Rows/Columns/FocusableImmutableCellProps.d.ts +7 -0
  178. package/dist/Components/Table/Body/Rows/Columns/ProgressCell.svelte +142 -108
  179. package/dist/Components/Table/Body/Rows/Columns/ProgressCell.svelte.d.ts +17 -11
  180. package/dist/Components/Table/Body/Rows/Columns/RowSelectionColumn.d.ts +8 -0
  181. package/dist/Components/Table/Body/Rows/Columns/RowSelectionTableCell.d.ts +5 -0
  182. package/dist/Components/Table/Body/Rows/Columns/SelectColumn.d.ts +11 -0
  183. package/dist/Components/Table/Body/Rows/Columns/SelectTableCell.d.ts +11 -0
  184. package/dist/Components/Table/Body/Rows/Columns/TableAction.svelte +87 -72
  185. package/dist/Components/Table/Body/Rows/Columns/TableAction.svelte.d.ts +11 -0
  186. package/dist/Components/Table/Body/Rows/Columns/TableCheckbox.svelte +148 -137
  187. package/dist/Components/Table/Body/Rows/Columns/TableCheckbox.svelte.d.ts +13 -18
  188. package/dist/Components/Table/Body/Rows/Columns/TableCheckboxProps.d.ts +17 -0
  189. package/dist/Components/Table/Body/Rows/Columns/TableCheckboxProps.js +1 -0
  190. package/dist/Components/Table/Body/Rows/Columns/TableColumn.svelte +159 -144
  191. package/dist/Components/Table/Body/Rows/Columns/TableColumn.svelte.d.ts +1 -7
  192. package/dist/Components/Table/Body/Rows/Columns/TableColumnProps.d.ts +16 -0
  193. package/dist/Components/Table/Body/Rows/Columns/TableColumnProps.js +1 -0
  194. package/dist/Components/Table/Body/Rows/Columns/TableDatePicker.svelte +279 -249
  195. package/dist/Components/Table/Body/Rows/Columns/TableDatePicker.svelte.d.ts +12 -11
  196. package/dist/Components/Table/Body/Rows/Columns/TableDatePickerProps.d.ts +9 -0
  197. package/dist/Components/Table/Body/Rows/Columns/TableNumberInput.svelte +249 -370
  198. package/dist/Components/Table/Body/Rows/Columns/TableNumberInput.svelte.d.ts +20 -12
  199. package/dist/Components/Table/Body/Rows/Columns/TableQueryCell.d.ts +8 -0
  200. package/dist/Components/Table/Body/Rows/Columns/TableQueryColumn.d.ts +9 -0
  201. package/dist/Components/Table/Body/Rows/Columns/TableQuerySelect.svelte +291 -354
  202. package/dist/Components/Table/Body/Rows/Columns/TableQuerySelect.svelte.d.ts +12 -11
  203. package/dist/Components/Table/Body/Rows/Columns/TableQuerySelectProps.d.ts +8 -0
  204. package/dist/Components/Table/Body/Rows/Columns/TableRowSelectionCheckbox.svelte +201 -189
  205. package/dist/Components/Table/Body/Rows/Columns/TableRowSelectionCheckbox.svelte.d.ts +2 -5
  206. package/dist/Components/Table/Body/Rows/Columns/TableRowSelectionCheckboxProps.d.ts +14 -0
  207. package/dist/Components/Table/Body/Rows/Columns/TableRowSelectionCheckboxProps.js +1 -0
  208. package/dist/Components/Table/Body/Rows/Columns/TableSelect.svelte +263 -325
  209. package/dist/Components/Table/Body/Rows/Columns/TableSelect.svelte.d.ts +13 -12
  210. package/dist/Components/Table/Body/Rows/Columns/TableSelectProps.d.ts +6 -0
  211. package/dist/Components/Table/Body/Rows/Columns/TableTextInput.svelte +230 -381
  212. package/dist/Components/Table/Body/Rows/Columns/TableTextInput.svelte.d.ts +12 -11
  213. package/dist/Components/Table/Body/Rows/Columns/TableTextInputProps.d.ts +6 -0
  214. package/dist/Components/Table/Body/Rows/Columns/ValidityCell.svelte +187 -177
  215. package/dist/Components/Table/Body/Rows/Columns/_helpers/useAsyncEditable.svelte.d.ts +104 -0
  216. package/dist/Components/Table/Body/Rows/Columns/_helpers/useAsyncEditable.svelte.js +215 -0
  217. package/dist/Components/Table/Body/Rows/TableRow.svelte +331 -263
  218. package/dist/Components/Table/Body/Rows/TableRow.svelte.d.ts +2 -10
  219. package/dist/Components/Table/Body/Rows/TableRowProps.d.ts +11 -2
  220. package/dist/Components/Table/Body/TableBody.svelte +198 -81
  221. package/dist/Components/Table/Body/TableBody.svelte.d.ts +15 -22
  222. package/dist/Components/Table/Body/TableBodyProps.d.ts +9 -7
  223. package/dist/Components/Table/ColumnDefinitions/ExampleItemColumnDefRepository.svelte.js +18 -12
  224. package/dist/Components/Table/ColumnFactory.svelte.d.ts +43 -0
  225. package/dist/Components/Table/ColumnFactory.svelte.js +339 -0
  226. package/dist/Components/Table/Headers/HighlightAllHeader.svelte +41 -39
  227. package/dist/Components/Table/Headers/HighlightAllHeader.svelte.d.ts +12 -11
  228. package/dist/Components/Table/Headers/SelectAllHeader.svelte +30 -28
  229. package/dist/Components/Table/Headers/SelectAllHeader.svelte.d.ts +12 -11
  230. package/dist/Components/Table/Headers/TableHead.svelte +434 -294
  231. package/dist/Components/Table/Headers/TableHead.svelte.d.ts +13 -16
  232. package/dist/Components/Table/Headers/TableHeadProps.d.ts +10 -0
  233. package/dist/Components/Table/Headers/TableHeadProps.js +1 -0
  234. package/dist/Components/Table/Misc/ColumnPanel.svelte +154 -96
  235. package/dist/Components/Table/Misc/ColumnPanel.svelte.d.ts +12 -11
  236. package/dist/Components/Table/Misc/ColumnPanelModal.svelte +112 -99
  237. package/dist/Components/Table/Misc/ColumnPanelModal.svelte.d.ts +12 -11
  238. package/dist/Components/Table/Misc/ColumnPanelModalProps.d.ts +5 -0
  239. package/dist/Components/Table/Misc/FilterInput.svelte +545 -556
  240. package/dist/Components/Table/Misc/FilterInput.svelte.d.ts +12 -11
  241. package/dist/Components/Table/Misc/FilterPanel.svelte +409 -51
  242. package/dist/Components/Table/Misc/FilterPanel.svelte.d.ts +12 -11
  243. package/dist/Components/Table/Misc/FilterPanelModal.svelte +30 -77
  244. package/dist/Components/Table/Misc/FilterPanelModal.svelte.d.ts +2 -23
  245. package/dist/Components/Table/Misc/SidePanel.svelte +35 -32
  246. package/dist/Components/Table/Misc/SidePanel.svelte.d.ts +1 -7
  247. package/dist/Components/Table/Misc/SidePanelProps.d.ts +17 -0
  248. package/dist/Components/Table/Misc/SidePanelProps.js +1 -0
  249. package/dist/Components/Table/Misc/TableFooter.svelte +315 -306
  250. package/dist/Components/Table/Misc/TableFooter.svelte.d.ts +13 -14
  251. package/dist/Components/Table/Misc/TableFooterProps.d.ts +8 -0
  252. package/dist/Components/Table/Misc/TableFooterProps.js +1 -0
  253. package/dist/Components/Table/Misc/TableHorizontalBar.svelte +126 -157
  254. package/dist/Components/Table/Misc/TableHorizontalBar.svelte.d.ts +12 -11
  255. package/dist/Components/Table/Misc/TableSidebar.svelte +158 -177
  256. package/dist/Components/Table/Misc/TableSidebar.svelte.d.ts +12 -11
  257. package/dist/Components/Table/Misc/ToolboxPanel.svelte +147 -81
  258. package/dist/Components/Table/Misc/ToolboxPanel.svelte.d.ts +12 -11
  259. package/dist/Components/Table/Misc/ToolboxPanelModal.svelte +107 -100
  260. package/dist/Components/Table/Misc/ToolboxPanelModal.svelte.d.ts +12 -11
  261. package/dist/Components/Table/Misc/ToolboxPanelModalProps.d.ts +5 -0
  262. package/dist/Components/Table/Misc/numberDateFilterTypes.d.ts +7 -4
  263. package/dist/Components/Table/Misc/numberDateFilterTypes.js +8 -3
  264. package/dist/Components/Table/Misc/stringFilterTypes.d.ts +6 -4
  265. package/dist/Components/Table/Misc/stringFilterTypes.js +7 -3
  266. package/dist/Components/Table/NestedTable.svelte +132 -88
  267. package/dist/Components/Table/NestedTable.svelte.d.ts +2 -10
  268. package/dist/Components/Table/NestedTableProps.d.ts +25 -0
  269. package/dist/Components/Table/NestedTableProps.js +1 -0
  270. package/dist/Components/Table/SubApis.svelte.d.ts +23 -0
  271. package/dist/Components/Table/SubApis.svelte.js +359 -0
  272. package/dist/Components/Table/Table.svelte +694 -519
  273. package/dist/Components/Table/Table.svelte.d.ts +24 -1
  274. package/dist/Components/Table/TableHelpers.svelte.d.ts +58 -0
  275. package/dist/Components/Table/TableHelpers.svelte.js +88 -0
  276. package/dist/Components/Table/Types/Columns/Column.d.ts +10 -0
  277. package/dist/Components/Table/Types/Columns/ColumnPinningState.d.ts +12 -0
  278. package/dist/Components/Table/Types/Columns/ColumnSizingState.d.ts +8 -0
  279. package/dist/Components/Table/Types/Columns/ColumnType.d.ts +17 -0
  280. package/dist/Components/Table/Types/Columns/ColumnType.js +18 -1
  281. package/dist/Components/Table/Types/Columns/DateColumn.d.ts +6 -0
  282. package/dist/Components/Table/Types/Columns/DateTableCell.d.ts +7 -0
  283. package/dist/Components/Table/Types/Columns/Definitions/AccessorFn.d.ts +13 -0
  284. package/dist/Components/Table/Types/Columns/Definitions/Accessors/AccessorDef.svelte.d.ts +28 -3
  285. package/dist/Components/Table/Types/Columns/Definitions/Accessors/AccessorDef.svelte.js +15 -0
  286. package/dist/Components/Table/Types/Columns/Definitions/Accessors/AccessorType.d.ts +10 -0
  287. package/dist/Components/Table/Types/Columns/Definitions/Accessors/AccessorType.js +11 -1
  288. package/dist/Components/Table/Types/Columns/Definitions/Accessors/CheckboxDef.svelte.d.ts +23 -2
  289. package/dist/Components/Table/Types/Columns/Definitions/Accessors/CheckboxDef.svelte.js +9 -2
  290. package/dist/Components/Table/Types/Columns/Definitions/Accessors/DateInputDef.svelte.d.ts +21 -2
  291. package/dist/Components/Table/Types/Columns/Definitions/Accessors/DateInputDef.svelte.js +8 -0
  292. package/dist/Components/Table/Types/Columns/Definitions/Accessors/NumberInputDef.svelte.d.ts +29 -3
  293. package/dist/Components/Table/Types/Columns/Definitions/Accessors/NumberInputDef.svelte.js +11 -0
  294. package/dist/Components/Table/Types/Columns/Definitions/Accessors/QueryDef.svelte.d.ts +23 -0
  295. package/dist/Components/Table/Types/Columns/Definitions/Accessors/QueryDef.svelte.js +8 -0
  296. package/dist/Components/Table/Types/Columns/Definitions/Accessors/SelectDef.svelte.d.ts +31 -0
  297. package/dist/Components/Table/Types/Columns/Definitions/Accessors/SelectDef.svelte.js +17 -3
  298. package/dist/Components/Table/Types/Columns/Definitions/Accessors/TextInputDef.svelte.d.ts +21 -2
  299. package/dist/Components/Table/Types/Columns/Definitions/Accessors/TextInputDef.svelte.js +7 -0
  300. package/dist/Components/Table/Types/Columns/Definitions/Actions/ActionsDef.svelte.d.ts +29 -1
  301. package/dist/Components/Table/Types/Columns/Definitions/Actions/ActionsDef.svelte.js +17 -3
  302. package/dist/Components/Table/Types/Columns/Definitions/ColumnDef.svelte.d.ts +122 -11
  303. package/dist/Components/Table/Types/Columns/Definitions/ColumnDef.svelte.js +77 -11
  304. package/dist/Components/Table/Types/Columns/Definitions/ColumnDefSet.d.ts +9 -0
  305. package/dist/Components/Table/Types/Columns/Definitions/Display/AbstractDisplayDef.svelte.d.ts +41 -1
  306. package/dist/Components/Table/Types/Columns/Definitions/Display/AbstractDisplayDef.svelte.js +16 -0
  307. package/dist/Components/Table/Types/Columns/Definitions/Display/BubbleDef.svelte.d.ts +19 -1
  308. package/dist/Components/Table/Types/Columns/Definitions/Display/BubbleDef.svelte.js +12 -1
  309. package/dist/Components/Table/Types/Columns/Definitions/Display/DisplayDef.svelte.d.ts +11 -0
  310. package/dist/Components/Table/Types/Columns/Definitions/Display/DisplayDef.svelte.js +6 -3
  311. package/dist/Components/Table/Types/Columns/Definitions/Display/ProgressBarDef.svelte.d.ts +19 -0
  312. package/dist/Components/Table/Types/Columns/Definitions/Display/ProgressBarDef.svelte.js +25 -1
  313. package/dist/Components/Table/Types/Columns/Definitions/Display/ValidityDef.svelte.d.ts +26 -0
  314. package/dist/Components/Table/Types/Columns/Definitions/Display/ValidityDef.svelte.js +20 -5
  315. package/dist/Components/Table/Types/Columns/Definitions/Expand/ExpandDef.svelte.d.ts +43 -7
  316. package/dist/Components/Table/Types/Columns/Definitions/Expand/ExpandDef.svelte.js +18 -3
  317. package/dist/Components/Table/Types/Columns/Definitions/FilterOnly/FilterOnlyDef.svelte.d.ts +19 -5
  318. package/dist/Components/Table/Types/Columns/Definitions/FilterOnly/FilterOnlyDef.svelte.js +16 -5
  319. package/dist/Components/Table/Types/Columns/Definitions/JSONColumnDefSet.d.ts +14 -0
  320. package/dist/Components/Table/Types/Columns/Definitions/RowSelection/RowSelectionDef.svelte.d.ts +34 -2
  321. package/dist/Components/Table/Types/Columns/Definitions/RowSelection/RowSelectionDef.svelte.js +30 -7
  322. package/dist/Components/Table/Types/Columns/Definitions/ValidationFn.d.ts +17 -0
  323. package/dist/Components/Table/Types/Columns/DefsWrapper.d.ts +10 -0
  324. package/dist/Components/Table/Types/Columns/DisplayType.d.ts +13 -0
  325. package/dist/Components/Table/Types/Columns/DisplayType.js +14 -1
  326. package/dist/Components/Table/Types/Columns/ExpandColumn.d.ts +5 -0
  327. package/dist/Components/Table/Types/Columns/ExpandTableCell.d.ts +7 -0
  328. package/dist/Components/Table/Types/Columns/JSONColumnPinningState.d.ts +6 -0
  329. package/dist/Components/Table/Types/Columns/ProgressBarColumn.d.ts +5 -0
  330. package/dist/Components/Table/Types/Columns/ProgressBarTableCell.d.ts +9 -0
  331. package/dist/Components/Table/Types/Columns/TableActionButton.d.ts +12 -0
  332. package/dist/Components/Table/Types/Columns/TableCell.d.ts +16 -2
  333. package/dist/Components/Table/Types/Columns/VisibilityState.d.ts +12 -0
  334. package/dist/Components/Table/Types/Context/ColumnLayoutState.svelte.d.ts +173 -0
  335. package/dist/Components/Table/Types/Context/ColumnLayoutState.svelte.js +241 -0
  336. package/dist/Components/Table/Types/Context/FilteringState.svelte.d.ts +166 -0
  337. package/dist/Components/Table/Types/Context/FilteringState.svelte.js +180 -0
  338. package/dist/Components/Table/Types/Context/FocusState.svelte.d.ts +316 -0
  339. package/dist/Components/Table/Types/Context/FocusState.svelte.js +751 -0
  340. package/dist/Components/Table/Types/Context/ITable.d.ts +10 -0
  341. package/dist/Components/Table/Types/Context/PreferencesState.svelte.d.ts +242 -0
  342. package/dist/Components/Table/Types/Context/PreferencesState.svelte.js +317 -0
  343. package/dist/Components/Table/Types/Context/ReadonlyRowModel.d.ts +14 -3
  344. package/dist/Components/Table/Types/Context/Row.d.ts +18 -0
  345. package/dist/Components/Table/Types/Context/RowModel.d.ts +11 -0
  346. package/dist/Components/Table/Types/Context/SelectionState.svelte.d.ts +260 -0
  347. package/dist/Components/Table/Types/Context/SelectionState.svelte.js +613 -0
  348. package/dist/Components/Table/Types/Context/SortingState.svelte.d.ts +112 -0
  349. package/dist/Components/Table/Types/Context/SortingState.svelte.js +272 -0
  350. package/dist/Components/Table/Types/Context/TableContext.svelte.d.ts +547 -53
  351. package/dist/Components/Table/Types/Context/TableContext.svelte.js +959 -1259
  352. package/dist/Components/Table/Types/Context/TableInitOptions.d.ts +16 -0
  353. package/dist/Components/Table/Types/Context/TableSettings.d.ts +20 -0
  354. package/dist/Components/Table/Types/Context/VirtualisationState.svelte.d.ts +167 -0
  355. package/dist/Components/Table/Types/Context/VirtualisationState.svelte.js +226 -0
  356. package/dist/Components/Table/Types/Coordinates/CellCoordinates.d.ts +12 -0
  357. package/dist/Components/Table/Types/Coordinates/CellCoordinatesWithoutColumn.d.ts +5 -0
  358. package/dist/Components/Table/Types/Coordinates/ColumnIndices.d.ts +16 -2
  359. package/dist/Components/Table/Types/DataRepository/BuiltInRemoteRepository.svelte.d.ts +143 -0
  360. package/dist/Components/Table/Types/DataRepository/BuiltInRemoteRepository.svelte.js +454 -0
  361. package/dist/Components/Table/Types/DataRepository/IDataRepository.d.ts +21 -0
  362. package/dist/Components/Table/Types/DataRepository/ILocalDataRepository.d.ts +10 -0
  363. package/dist/Components/Table/Types/DataRepository/IRemoteDataRepository.d.ts +16 -0
  364. package/dist/Components/Table/Types/DataRepository/LocalTableDataRepository.svelte.d.ts +87 -3
  365. package/dist/Components/Table/Types/DataRepository/LocalTableDataRepository.svelte.js +112 -7
  366. package/dist/Components/Table/Types/DataRepository/SortingState.d.ts +12 -0
  367. package/dist/Components/Table/Types/DataRepository/TableDataRepository.svelte.d.ts +87 -2
  368. package/dist/Components/Table/Types/DataRepository/TableDataRepository.svelte.js +74 -1
  369. package/dist/Components/Table/Types/ExpandedPanel.d.ts +9 -0
  370. package/dist/Components/Table/Types/ExpandedPanel.js +10 -1
  371. package/dist/Components/Table/Types/Filtering/ColumnFiltersState.d.ts +17 -0
  372. package/dist/Components/Table/Types/Filtering/CustomFilter.d.ts +21 -0
  373. package/dist/Components/Table/Types/Filtering/CustomFilterType.d.ts +5 -0
  374. package/dist/Components/Table/Types/Filtering/CustomFilterType.js +6 -1
  375. package/dist/Components/Table/Types/Filtering/CustomRemoteFilters.d.ts +6 -0
  376. package/dist/Components/Table/Types/Filtering/FilterFn.d.ts +28 -0
  377. package/dist/Components/Table/Types/Filtering/FilterMode.d.ts +7 -0
  378. package/dist/Components/Table/Types/Filtering/FilterType.d.ts +8 -0
  379. package/dist/Components/Table/Types/Filtering/FilterType.js +9 -1
  380. package/dist/Components/Table/Types/Filtering/FilterValueType.d.ts +11 -0
  381. package/dist/Components/Table/Types/Filtering/FilterValueType.js +12 -1
  382. package/dist/Components/Table/Types/Filtering/HasCustomFilterFunction.d.ts +23 -2
  383. package/dist/Components/Table/Types/Filtering/NumberDateFilterMode.d.ts +19 -12
  384. package/dist/Components/Table/Types/Filtering/NumberDateFilterMode.js +18 -14
  385. package/dist/Components/Table/Types/Filtering/StringFilterMode.d.ts +22 -15
  386. package/dist/Components/Table/Types/Filtering/StringFilterMode.js +22 -16
  387. package/dist/Components/Table/Types/Focus/MultiFocusEdge.d.ts +8 -0
  388. package/dist/Components/Table/Types/Focus/MultiFocusEdge.js +9 -1
  389. package/dist/Components/Table/Types/Focus/TableFocusDetails.svelte.d.ts +22 -0
  390. package/dist/Components/Table/Types/Focus/TableFocusDetails.svelte.js +22 -0
  391. package/dist/Components/Table/Types/Header.d.ts +8 -0
  392. package/dist/Components/Table/Types/HeaderGroup.d.ts +7 -0
  393. package/dist/Components/Table/Types/Layout/CellPinning.d.ts +1 -0
  394. package/dist/Components/Table/Types/Layout/CellPinning.js +8 -0
  395. package/dist/Components/Table/Types/OnChangeFn.d.ts +11 -0
  396. package/dist/Components/Table/Types/Pagination/PaginationState.d.ts +9 -0
  397. package/dist/Components/Table/Types/Pagination/PaginationType.d.ts +10 -0
  398. package/dist/Components/Table/Types/Pagination/PaginationType.js +11 -1
  399. package/dist/Components/Table/Types/Public/AnyEditEvent.d.ts +30 -0
  400. package/dist/Components/Table/Types/Public/AnyEditEvent.js +1 -0
  401. package/dist/Components/Table/Types/Public/BaseColumnOptions.d.ts +44 -0
  402. package/dist/Components/Table/Types/Public/BaseColumnOptions.js +1 -0
  403. package/dist/Components/Table/Types/Public/ColumnFactory.d.ts +35 -0
  404. package/dist/Components/Table/Types/Public/ColumnFactory.js +1 -0
  405. package/dist/Components/Table/Types/Public/ColumnOptions.d.ts +238 -0
  406. package/dist/Components/Table/Types/Public/ColumnOptions.js +1 -0
  407. package/dist/Components/Table/Types/Public/ColumnSpec.d.ts +39 -0
  408. package/dist/Components/Table/Types/Public/ColumnSpec.js +1 -0
  409. package/dist/Components/Table/Types/Public/CreateTableOptions.d.ts +87 -0
  410. package/dist/Components/Table/Types/Public/CreateTableOptions.js +1 -0
  411. package/dist/Components/Table/Types/Public/KeyConstraints.d.ts +42 -0
  412. package/dist/Components/Table/Types/Public/KeyConstraints.js +22 -0
  413. package/dist/Components/Table/Types/Public/RowSource.d.ts +87 -0
  414. package/dist/Components/Table/Types/Public/RowSource.js +1 -0
  415. package/dist/Components/Table/Types/Public/SelectionOptions.d.ts +26 -0
  416. package/dist/Components/Table/Types/Public/SelectionOptions.js +1 -0
  417. package/dist/Components/Table/Types/Public/Table.d.ts +39 -0
  418. package/dist/Components/Table/Types/Public/Table.js +1 -0
  419. package/dist/Components/Table/Types/Public/TableInitialState.d.ts +26 -0
  420. package/dist/Components/Table/Types/Public/TableInitialState.js +1 -0
  421. package/dist/Components/Table/Types/Public/TablePersistence.d.ts +38 -0
  422. package/dist/Components/Table/Types/Public/TablePersistence.js +1 -0
  423. package/dist/Components/Table/Types/Public/TableSubApis.d.ts +157 -0
  424. package/dist/Components/Table/Types/Public/TableSubApis.js +1 -0
  425. package/dist/Components/Table/Types/Public/index.d.ts +20 -0
  426. package/dist/Components/Table/Types/Public/index.js +8 -0
  427. package/dist/Components/Table/Types/Toolbar/ToolbarPosition.d.ts +4 -0
  428. package/dist/Components/Table/Types/Toolbar/ToolbarPosition.js +5 -1
  429. package/dist/Components/Table/createTable.svelte.d.ts +53 -0
  430. package/dist/Components/Table/createTable.svelte.js +269 -0
  431. package/dist/Components/Test/TestContextConsumer.svelte +13 -13
  432. package/dist/Components/TextArea.svelte +127 -108
  433. package/dist/Components/TextAreaProps.d.ts +37 -0
  434. package/dist/Components/TextInput.svelte +166 -147
  435. package/dist/Components/TextInputProps.d.ts +58 -1
  436. package/dist/Components/ThreeStateRadio.svelte +140 -143
  437. package/dist/Components/ThreeStateRadioProps.d.ts +29 -1
  438. package/dist/Components/Touch/BoolCard.svelte +45 -52
  439. package/dist/Components/Touch/BoolCard.svelte.d.ts +1 -10
  440. package/dist/Components/Touch/BoolCardProps.d.ts +21 -0
  441. package/dist/Components/Touch/BoolCardProps.js +1 -0
  442. package/dist/Components/Touch/DateModal.svelte +209 -217
  443. package/dist/Components/Touch/DateModal.svelte.d.ts +1 -17
  444. package/dist/Components/Touch/DateModalProps.d.ts +36 -0
  445. package/dist/Components/Touch/DateModalProps.js +1 -0
  446. package/dist/Components/Touch/EditCard.svelte +59 -52
  447. package/dist/Components/Touch/EditCardProps.d.ts +21 -0
  448. package/dist/Components/Touch/InfoCard.svelte +35 -28
  449. package/dist/Components/Touch/InfoCardProps.d.ts +9 -0
  450. package/dist/Components/Touch/InfoTextCard.svelte +28 -21
  451. package/dist/Components/Touch/InfoTextCardProps.d.ts +8 -0
  452. package/dist/Components/Touch/ModalExplanation.svelte +17 -20
  453. package/dist/Components/Touch/ModalExplanation.svelte.d.ts +1 -6
  454. package/dist/Components/Touch/ModalExplanationProps.d.ts +22 -0
  455. package/dist/Components/Touch/ModalExplanationProps.js +1 -0
  456. package/dist/Components/Touch/NumberKeyboard.svelte +225 -268
  457. package/dist/Components/Touch/NumberKeyboardProps.d.ts +19 -0
  458. package/dist/Components/Touch/NumberModal.svelte +79 -69
  459. package/dist/Components/Touch/NumberModalProps.d.ts +23 -1
  460. package/dist/Components/Touch/PlusMinusCard.svelte +48 -52
  461. package/dist/Components/Touch/PlusMinusCard.svelte.d.ts +1 -6
  462. package/dist/Components/Touch/PlusMinusCardProps.d.ts +18 -0
  463. package/dist/Components/Touch/PlusMinusCardProps.js +1 -0
  464. package/dist/Components/Touch/SelectModal.svelte +123 -105
  465. package/dist/Components/Touch/SelectModalProps.d.ts +22 -1
  466. package/dist/Components/Touch/SummaryCard.svelte +107 -65
  467. package/dist/Components/Touch/SummaryCardProps.d.ts +16 -3
  468. package/dist/Components/Touch/TextAreaModal.svelte +95 -86
  469. package/dist/Components/Touch/TextAreaModalProps.d.ts +21 -0
  470. package/dist/Components/Touch/TextModal.svelte +106 -123
  471. package/dist/Components/Touch/TextModalProps.d.ts +28 -1
  472. package/dist/Components/Touch/TouchCard.svelte +34 -72
  473. package/dist/Components/Touch/TouchCardProps.d.ts +21 -0
  474. package/dist/Components/Touch/TouchModal.svelte +265 -259
  475. package/dist/Components/Touch/TouchModalProps.d.ts +35 -1
  476. package/dist/Components/Touch/UtilityButton.svelte +116 -98
  477. package/dist/Components/Touch/UtilityButtonProps.d.ts +16 -0
  478. package/dist/Components/VerticalTabGroup.svelte +80 -102
  479. package/dist/Components/VerticalTabGroupButton.svelte +59 -98
  480. package/dist/Components/VerticalTabGroupProps.d.ts +15 -2
  481. package/dist/Contexts/AlertContext.svelte.d.ts +92 -8
  482. package/dist/Contexts/AlertContext.svelte.js +69 -6
  483. package/dist/Contexts/ContextMenuContext.svelte.d.ts +54 -8
  484. package/dist/Contexts/ContextMenuContext.svelte.js +48 -2
  485. package/dist/Contexts/TestContext.svelte.d.ts +27 -1
  486. package/dist/Contexts/TestContext.svelte.js +29 -1
  487. package/dist/Contexts/ToastContext.svelte.d.ts +29 -1
  488. package/dist/Contexts/ToastContext.svelte.js +93 -24
  489. package/dist/Contexts/TooltipContext.svelte.d.ts +68 -1
  490. package/dist/Contexts/TooltipContext.svelte.js +70 -7
  491. package/dist/Contexts/UntypedInputContext.svelte.d.ts +54 -5
  492. package/dist/Contexts/UntypedInputContext.svelte.js +87 -34
  493. package/dist/Delay/Delay.js +1 -1
  494. package/dist/Helpers/AsyncFlag.svelte.d.ts +39 -0
  495. package/dist/Helpers/AsyncFlag.svelte.js +72 -0
  496. package/dist/Helpers/Datamatrix.d.ts +19 -10
  497. package/dist/Helpers/Datamatrix.js +291 -2
  498. package/dist/Helpers/Helpers.svelte.d.ts +252 -17
  499. package/dist/Helpers/Helpers.svelte.js +271 -60
  500. package/dist/Helpers/INamed.d.ts +6 -0
  501. package/dist/Helpers/Storage.d.ts +67 -0
  502. package/dist/Helpers/Storage.js +138 -0
  503. package/dist/Helpers/dropdownPortal.d.ts +52 -0
  504. package/dist/Helpers/dropdownPortal.js +232 -0
  505. package/dist/Helpers/dropdownPortal.svelte.d.ts +2 -0
  506. package/dist/Helpers/dropdownPortal.svelte.js +5 -0
  507. package/dist/Helpers/memoiseByRow.d.ts +45 -0
  508. package/dist/Helpers/memoiseByRow.js +78 -0
  509. package/dist/Helpers/prefersReducedMotion.svelte.d.ts +27 -0
  510. package/dist/Helpers/prefersReducedMotion.svelte.js +18 -0
  511. package/dist/Helpers/useTooltip.svelte.d.ts +53 -0
  512. package/dist/Helpers/useTooltip.svelte.js +62 -0
  513. package/dist/Types/Examples/ExampleModal.svelte +35 -34
  514. package/dist/Types/Examples/ExampleSelectEnum.js +1 -1
  515. package/dist/Types/Internal/AsyncFlag.d.ts +7 -0
  516. package/dist/Types/Internal/AsyncFlag.js +1 -0
  517. package/dist/Types/Internal/BigRadioOption.d.ts +8 -0
  518. package/dist/Types/Internal/ButtonProp.d.ts +24 -2
  519. package/dist/Types/Internal/CallbackButton.d.ts +12 -0
  520. package/dist/Types/Internal/DateChange.d.ts +8 -0
  521. package/dist/Types/Internal/DatePickerType.d.ts +5 -0
  522. package/dist/Types/Internal/DatePickerType.js +6 -1
  523. package/dist/Types/Internal/IdentifiableToastMessage.d.ts +8 -0
  524. package/dist/Types/Internal/InputVariant.d.ts +5 -0
  525. package/dist/Types/Internal/InputVariant.js +6 -1
  526. package/dist/Types/Internal/Misc.d.ts +91 -0
  527. package/dist/Types/Internal/RefWrapper.d.ts +6 -0
  528. package/dist/Types/Internal/SelectOption.d.ts +8 -0
  529. package/dist/Types/Internal/Shape.d.ts +1 -0
  530. package/dist/Types/Internal/Shape.js +2 -1
  531. package/dist/Types/Internal/Side.d.ts +1 -0
  532. package/dist/Types/Internal/Side.js +2 -1
  533. package/dist/Types/Internal/Size.d.ts +5 -0
  534. package/dist/Types/Internal/Size.js +6 -1
  535. package/dist/Types/Internal/TabOption.d.ts +15 -5
  536. package/dist/Types/Internal/Ternary.d.ts +6 -0
  537. package/dist/Types/Internal/Ternary.js +7 -1
  538. package/dist/Types/Internal/ToastMessage.d.ts +28 -0
  539. package/dist/Types/Internal/Validity.d.ts +6 -0
  540. package/dist/Types/Internal/Validity.js +7 -1
  541. package/dist/Types/Internal/ValidityWrapper.d.ts +8 -0
  542. package/dist/Types/Internal/Variant.d.ts +5 -0
  543. package/dist/Types/Internal/Variant.js +6 -1
  544. package/dist/index.d.ts +27 -82
  545. package/dist/index.js +24 -62
  546. package/dist/scss/_basics.scss +12 -12
  547. package/dist/scss/_colours.scss +134 -134
  548. package/dist/scss/_mixins.scss +3300 -3016
  549. package/dist/scss/_motion.scss +57 -0
  550. package/dist/scss/_sizing.scss +85 -69
  551. package/dist/scss/_transitions.scss +8 -8
  552. package/dist/scss/colours.js +2 -2
  553. package/dist/scss/sizing.d.ts +9 -0
  554. package/dist/scss/sizing.js +10 -1
  555. package/package.json +6 -2
@@ -1,3 +1,5 @@
1
+ import { PreferencesState } from './PreferencesState.svelte.js';
2
+ import { SelectionState } from './SelectionState.svelte.js';
1
3
  import { SvelteMap } from 'svelte/reactivity';
2
4
  import type { Updater } from 'svelte/store';
3
5
  import type { ColumnPinningState } from '../Columns/ColumnPinningState.js';
@@ -10,6 +12,11 @@ import type { CellCoordinates } from '../Coordinates/CellCoordinates.js';
10
12
  import type { CellCoordinatesWithoutColumn } from '../Coordinates/CellCoordinatesWithoutColumn.js';
11
13
  import type { VisualColumnIndex } from '../Coordinates/ColumnIndices.js';
12
14
  import type { IDataRepository } from '../DataRepository/IDataRepository.js';
15
+ import { SortingState } from './SortingState.svelte.js';
16
+ import { FilteringState } from './FilteringState.svelte.js';
17
+ import { ColumnLayoutState } from './ColumnLayoutState.svelte.js';
18
+ import { FocusState } from './FocusState.svelte.js';
19
+ import { VirtualisationState } from './VirtualisationState.svelte.js';
13
20
  import type { ColumnFiltersState } from '../Filtering/ColumnFiltersState.js';
14
21
  import type { CustomRemoteFilters } from '../Filtering/CustomRemoteFilters.js';
15
22
  import type { BoolFilterValueType, DateFilterValueType, FilterFn, NumberFilterValueType, SelectFilterValueType, StringFilterValueType } from '../Filtering/FilterFn.js';
@@ -19,6 +26,25 @@ import { ToolbarPosition } from '../Toolbar/ToolbarPosition.js';
19
26
  import type { ITable } from './ITable.js';
20
27
  import type { RowModel } from './RowModel.js';
21
28
  import type { Primitive, TableInitOptions } from './TableInitOptions.js';
29
+ /**
30
+ * Default values applied by `TableContext.init` for any `TableInitOptions`
31
+ * field the consumer omits. Frozen so callers (notably `NestedTable`)
32
+ * can spread it without risking accidental shared-object mutation.
33
+ *
34
+ * Mirrors the default literals consumed inside `init`; both share this
35
+ * constant so the two cannot drift.
36
+ */
37
+ export declare const DEFAULT_TABLE_INIT_OPTIONS: Readonly<{
38
+ allowCopy: true;
39
+ enableResize: true;
40
+ allowColumnReordering: true;
41
+ allowQuickFiltering: true;
42
+ showQuickFilterByDefault: true;
43
+ allowAdvancedFiltering: true;
44
+ toolbar: "Right";
45
+ displayFooter: true;
46
+ debug: false;
47
+ }>;
22
48
  export declare class TableContext<T extends object, RowIdType extends Primitive> {
23
49
  readonly defaultColumnDefs: DefsWrapper<T>;
24
50
  readonly tableName: string;
@@ -35,61 +61,131 @@ export declare class TableContext<T extends object, RowIdType extends Primitive>
35
61
  private _onEditCell;
36
62
  readonly debug: boolean;
37
63
  static readonly identifier: unique symbol;
64
+ /**
65
+ * Factory for `TableContext`. Coalesces every optional flag from the
66
+ * caller-supplied `options` against `DEFAULT_TABLE_INIT_OPTIONS` so
67
+ * the constructor receives a complete set of values. The constructor
68
+ * itself is `protected` and gated by an internal symbol to make it
69
+ * impossible to construct a `TableContext` without going through
70
+ * `init`.
71
+ */
38
72
  static init<T extends object, RowIdType extends Primitive>(defaultColumnDefs: DefsWrapper<T>, tableName: string, dataRepo: IDataRepository<T>, options: TableInitOptions<T, RowIdType>): TableContext<T, RowIdType>;
39
73
  protected constructor(INTERNAL_ONLY: symbol, defaultColumnDefs: DefsWrapper<T>, tableName: string, dataRepo: IDataRepository<T>, allowCopy: boolean, enableResize: boolean, allowColumnReordering: boolean, allowQuickFiltering: boolean, showQuickFilterByDefault: boolean, allowAdvancedFiltering: boolean, toolbarPosition: ToolbarPosition, displayFooter: boolean, selectionExtractor: TableInitOptions<T, RowIdType>['selectionExtractor'], getUserId: () => string | undefined, _onEditCell: TableInitOptions<T, RowIdType>['onEditCell'], debug: boolean);
40
- private readonly userId;
41
74
  private isSelectable;
42
75
  private _paginationRepo;
43
76
  get paginationRepo(): IDataRepository<T> | undefined;
44
77
  set paginationRepo(v: IDataRepository<T> | undefined);
45
- private _showQuickFiltering;
78
+ /**
79
+ * Delegating accessor preserved for backwards compatibility; reads /
80
+ * writes through to `_filtering.showQuickFiltering`. The sub-context
81
+ * owns the `allowQuickFiltering` gate so the setter logic stays
82
+ * identical to the pre-extraction implementation.
83
+ */
46
84
  get showQuickFiltering(): boolean;
47
85
  set showQuickFiltering(v: boolean);
48
86
  private _dataRepo;
49
87
  get dataRepo(): IDataRepository<T>;
50
88
  private set dataRepo(value);
51
- private _remoteFilters;
89
+ /**
90
+ * Delegating getter preserved for backwards compatibility. Reads
91
+ * through to `_filtering.remoteFilters`; the parent uses
92
+ * `_filtering.setRemoteFilters` during column-def setup to write the
93
+ * caller-supplied value.
94
+ */
52
95
  get remoteFilters(): CustomRemoteFilters<unknown> | undefined;
53
- private set remoteFilters(value);
54
- private _showSelectedOnly;
96
+ /**
97
+ * Delegating accessor preserved for backwards compatibility; reads /
98
+ * writes through to `_filtering.showSelectedOnly`. The sub-context
99
+ * preserves the idempotency short-circuit (re-assigning the same
100
+ * value is a no-op).
101
+ */
55
102
  get showSelectedOnly(): boolean;
56
103
  set showSelectedOnly(v: boolean);
57
- readonly dateFilter: FilterFn<T, DateFilterValueType> | undefined;
58
- readonly numberFilter: FilterFn<T, NumberFilterValueType> | undefined;
59
- readonly selectFilter: FilterFn<T, SelectFilterValueType<T>> | undefined;
60
- readonly boolFilter: FilterFn<T, BoolFilterValueType> | undefined;
61
- readonly stringFilter: FilterFn<T, StringFilterValueType> | undefined;
104
+ /**
105
+ * Delegating getters that relay the per-type `FilterFn` from
106
+ * `_filtering`. The sub-context's `$derived` chain reads through
107
+ * `paginationRepo` via the thunk so the source of truth stays
108
+ * with the data repository; consumers that bind these getters
109
+ * (notably `setupDefaultColumnDefs`) need no migration.
110
+ */
111
+ get dateFilter(): FilterFn<T, DateFilterValueType> | undefined;
112
+ get numberFilter(): FilterFn<T, NumberFilterValueType> | undefined;
113
+ get selectFilter(): FilterFn<T, SelectFilterValueType<T>> | undefined;
114
+ get boolFilter(): FilterFn<T, BoolFilterValueType> | undefined;
115
+ get stringFilter(): FilterFn<T, StringFilterValueType> | undefined;
62
116
  private _limitFooter;
63
117
  get limitFooter(): boolean;
64
118
  set limitFooter(v: boolean);
65
119
  private _dragTarget;
66
120
  get dragTarget(): ColumnDef<T> | null;
67
121
  set dragTarget(v: ColumnDef<T> | null);
68
- private _columnDefs;
122
+ /**
123
+ * Delegating accessor preserved for backwards compatibility. The
124
+ * actual `$state` slot lives on `_columnLayout`; this getter / setter
125
+ * pair forwards reads and writes so existing consumers need no
126
+ * migration. See `_columnLayout` below for the sub-context.
127
+ */
69
128
  get columnDefs(): Array<ColumnDef<T>>;
70
129
  set columnDefs(v: Array<ColumnDef<T>>);
71
- private _columnPresets;
130
+ /**
131
+ * Delegating accessor preserved for backwards compatibility. The
132
+ * actual `$state` slot lives on `_preferences._columnPresets`
133
+ * (Phase 6.4). The setter is private because the consumer-facing
134
+ * write path goes through `saveColumnPreset` (which also persists
135
+ * the list to localStorage); internal call sites that need to
136
+ * mutate the list directly call `_preferences.setPresets(...)`.
137
+ */
72
138
  get columnPresets(): ReadonlyArray<ColumnDefSet<T>>;
73
- private set columnPresets(value);
74
- private _selectedPreset;
139
+ /**
140
+ * Delegating accessor preserved for backwards compatibility. The
141
+ * actual `$state` slot lives on `_preferences._selectedPreset`
142
+ * (Phase 6.4). Reads / writes through to the sub-context.
143
+ */
75
144
  get selectedPreset(): ColumnDefSet<T> | undefined;
76
145
  set selectedPreset(v: ColumnDefSet<T> | undefined);
77
- private _focusedRowIndices;
146
+ /**
147
+ * Delegating accessor preserved for backwards compatibility. The
148
+ * `$state` slot lives on `_focus._focusedRowIndices` (Phase 6.6).
149
+ * Populated by the parent's focus-derived `$effect` through
150
+ * `_focus.setFocusedDerived(rows, cols)`.
151
+ */
78
152
  get focusedRowIndices(): ReadonlySet<number>;
79
- private readonly _highlightedItems;
153
+ /**
154
+ * Delegating accessor preserved for backwards compatibility. The
155
+ * actual `$state` slot lives on `_selection._highlightedItems`
156
+ * (Phase 6.5).
157
+ */
80
158
  get highlightedItems(): SvelteMap<RowIdType, T>;
81
- _focusedColumnIds: ReadonlySet<string>;
159
+ /**
160
+ * Delegating accessor preserved for backwards compatibility. The
161
+ * `$state` slot lives on `_focus._focusedColumnIds` (Phase 6.6).
162
+ */
82
163
  get focusedColumnIds(): ReadonlySet<string>;
83
- private _isMousingDown;
164
+ /**
165
+ * Delegating accessor preserved for backwards compatibility. The
166
+ * `$state` slot lives on `_focus._isMousingDown` (Phase 6.6).
167
+ */
84
168
  get isMousingDown(): boolean;
85
169
  set isMousingDown(v: boolean);
86
- private _focusStart;
170
+ /**
171
+ * Delegating accessor preserved for backwards compatibility. The
172
+ * `$state` slot lives on `_focus._focusStart` (Phase 6.6). The
173
+ * setter remains read-only at this surface; the write path is
174
+ * `moveFocus` / `unfocus` / `tabForward` / `tabBackward` /
175
+ * `endFocus` / `setFocusEnd` / `startFocus` (all delegated below).
176
+ */
87
177
  get focusStart(): CellCoordinates | null;
88
- private set focusStart(value);
89
- private _focusStartIsBeingEdited;
178
+ /**
179
+ * Delegating accessor preserved for backwards compatibility. The
180
+ * `$state` slot lives on `_focus._focusStartIsBeingEdited`
181
+ * (Phase 6.6).
182
+ */
90
183
  get focusStartIsBeingEdited(): boolean;
91
184
  set focusStartIsBeingEdited(v: boolean);
92
- private _focusEnd;
185
+ /**
186
+ * Delegating accessor preserved for backwards compatibility. The
187
+ * `$state` slot lives on `_focus._focusEnd` (Phase 6.6).
188
+ */
93
189
  get focusEnd(): CellCoordinates | null;
94
190
  set focusEnd(v: CellCoordinates | null);
95
191
  private _singleClickEditing;
@@ -110,42 +206,261 @@ export declare class TableContext<T extends object, RowIdType extends Primitive>
110
206
  private _commaSeparatedCopy;
111
207
  get commaSeparatedCopy(): boolean;
112
208
  set commaSeparatedCopy(v: boolean);
113
- private _columnSizing;
209
+ /**
210
+ * Delegating accessor preserved for backwards compatibility. Reads
211
+ * through to `_columnLayout.columnSizing`. Per-key mutations (e.g.
212
+ * `this.columnSizing[id] = w` in `autoResize`) work because the
213
+ * underlying `$state` slot is a Svelte proxy.
214
+ */
114
215
  get columnSizing(): ColumnSizingState;
115
216
  set columnSizing(v: ColumnSizingState);
116
- private _columnPinning;
217
+ /**
218
+ * Delegating accessor preserved for backwards compatibility. Reads
219
+ * through to `_columnLayout.columnPinning`. The `setColumnPinning`
220
+ * updater below honours the `allowColumnReordering` master gate; the
221
+ * direct setter does not, by design (used for preset switches and
222
+ * the init flow where the gate has already been checked).
223
+ */
117
224
  get columnPinning(): ColumnPinningState;
118
225
  set columnPinning(v: ColumnPinningState);
119
- private _columnVisibility;
226
+ /**
227
+ * Delegating accessor preserved for backwards compatibility. Reads
228
+ * through to `_columnLayout.columnVisibility`. Tri-state semantics
229
+ * (`true` / `false` / `undefined`) are preserved.
230
+ */
120
231
  get columnVisibility(): VisibilityState;
121
232
  set columnVisibility(v: VisibilityState);
122
233
  private _openModalCoordinates;
123
234
  get openModalCoordinates(): CellCoordinatesWithoutColumn | null;
124
235
  set openModalCoordinates(v: CellCoordinatesWithoutColumn | null);
125
- private _allSelectedAsync;
126
- private _allSelectedInCurrentPage;
236
+ private _shownActionsPopup;
237
+ get shownActionsPopup(): symbol | undefined;
238
+ set shownActionsPopup(v: symbol | undefined);
239
+ /**
240
+ * Delegating getter preserved for backwards compatibility. The
241
+ * actual `$derived` chain (and the async-result cache) live on
242
+ * `_selection.allSelectedInCurrentPage` (Phase 6.5).
243
+ */
127
244
  get allSelectedInCurrentPage(): boolean;
128
- private allSelectedBySelectableMethod;
129
- private _areAllHighlighted;
130
- private _allHighlighted;
245
+ /**
246
+ * Delegating getter preserved for backwards compatibility. Reads
247
+ * through to `_selection.allHighlighted`; the value is published by
248
+ * the `_allHighlightedEffect` below which lives on this class
249
+ * because it reads `paginationRepo.pageStartIndex` / `pageEndIndexExclusive`
250
+ * directly.
251
+ */
131
252
  get allHighlighted(): boolean;
132
- private _hasHighlightedItems;
253
+ /**
254
+ * Delegating getter preserved for backwards compatibility. The
255
+ * `$derived` lives on `_selection.hasHighlightedItems` (Phase 6.5).
256
+ */
133
257
  get hasHighlightedItems(): boolean;
134
- private _selectedItems;
258
+ /**
259
+ * Delegating accessors preserved for backwards compatibility. The
260
+ * `$state` slots live on `_selection` (Phase 6.5). `selectedItems`
261
+ * is read-only at this surface; the consumer-facing writers are
262
+ * `toggleSelected` / `setSelected` / `resetSelectedItems` /
263
+ * `setSelectionMap` below.
264
+ */
135
265
  get selectedItems(): SvelteMap<RowIdType, T>;
136
- private _invalidValues;
137
266
  get invalidValues(): SvelteMap<RowIdType, T>;
138
267
  set invalidValues(v: SvelteMap<RowIdType, T>);
139
268
  private _hasInvalidSelectedItems;
140
269
  get hasInvalidSelectedItems(): boolean;
141
270
  private set hasInvalidSelectedItems(value);
142
- private columnDefsById;
143
- private readonly getSortingFn;
144
- private _filteredIndices;
271
+ /**
272
+ * Delegating accessor preserved for backwards compatibility. The
273
+ * id->def lookup map is owned by `_columnLayout.columnDefsById`
274
+ * (Phase 6.3); previously this was a `$derived` private field on
275
+ * `TableContext`. Made `public get` (instead of the previous
276
+ * `private` field) so the dependent sub-contexts (`SortingState`)
277
+ * and helpers (`generateTableOptions`) can read it through the
278
+ * legacy surface without piercing the sub-context boundary.
279
+ */
280
+ get columnDefsById(): ReadonlyMap<string, ColumnDef<T>>;
281
+ /**
282
+ * Phase 6.3 sub-context that owns the column-layout state:
283
+ * `columnDefs`, `columnSizing`, `columnPinning`, `columnVisibility`,
284
+ * the `columnDefsById` reverse-lookup map, the `visualColumns`
285
+ * cached array (and the paired `visualColumnIndexById` O(1) lookup),
286
+ * the gated `setColumnPinning` updater, the `updateDefsBasedOnPinning`
287
+ * helper, and the `setNewPinningState` helper.
288
+ *
289
+ * Dependencies are passed as thunks so the sub-context never holds
290
+ * a reference to the parent. The `allowColumnReordering` thunk
291
+ * gates the public `setColumnPinning` updater; the `debug` thunk
292
+ * mirrors the parent's logger gate.
293
+ */
294
+ readonly _columnLayout: ColumnLayoutState<T>;
295
+ /**
296
+ * Phase 6.2 sub-context that owns the filtering-related state: the
297
+ * per-row filter result (`filteredIndices`), the `filteredData`
298
+ * derived chain, the user-facing toggles (`showQuickFiltering`,
299
+ * `showSelectedOnly`), the per-type `FilterFn` relays, the
300
+ * remote-filter slot, and the `updateFilters` `OnChangeFn` slot.
301
+ *
302
+ * Dependencies are passed as thunks so the sub-context never holds
303
+ * a reference to the parent; the population effect for
304
+ * `_filteredIndices` stays in `TableContext` because it calls
305
+ * `this.createRow` (parent concern) - the effect publishes its
306
+ * result via `this._filtering.setFilteredIndices`.
307
+ */
308
+ readonly _filtering: FilteringState<T>;
309
+ /**
310
+ * Delegating getter preserved for backwards compatibility. Reads
311
+ * through to `_filtering.filteredIndices`, which is populated by
312
+ * the per-row filter `$effect` in this class (the effect calls
313
+ * `this.createRow` and must stay where `createRow` lives).
314
+ */
145
315
  get filteredIndices(): ReadonlyArray<number>;
146
- readonly filteredData: T[];
147
- private sortedDataAbortController;
148
- readonly sortedData: T[];
316
+ /**
317
+ * Delegating getter preserved for backwards compatibility. Reads
318
+ * through to `_filtering.filteredData`, which owns the local /
319
+ * remote / show-selected-only branching.
320
+ */
321
+ get filteredData(): Array<T>;
322
+ /**
323
+ * Phase 6.1 sub-context that owns the sort-related derived chain and
324
+ * the per-`ColumnDef` comparator dispatch. The dependency thunks
325
+ * close over `this.columnDefsById` / `this.filteredData` /
326
+ * `this.dataRepo` / `this.paginationRepo` / `this.debug`, so the
327
+ * sub-context never holds a direct reference to the parent and the
328
+ * reactivity graph remains threaded through `$derived` only.
329
+ *
330
+ * Exposed as a public field so future consumers can read sorting
331
+ * state directly; the legacy `sortedData` getter below preserves the
332
+ * pre-decomposition surface for backwards compatibility.
333
+ */
334
+ readonly _sorting: SortingState<T>;
335
+ /**
336
+ * Phase 6.4 sub-context that owns every persistence / preferences
337
+ * concern previously held directly on `TableContext`:
338
+ *
339
+ * - the saved column-presets list and currently-selected preset
340
+ * (`columnPresets`, `selectedPreset`);
341
+ * - the `userIdSegment` `$derived` (used to namespace every
342
+ * `scoria-table:<user>:<tableName>:<suffix>` storage key);
343
+ * - the `saveColumnPreset` / `setSelectedPreset` writers (which
344
+ * apply the layout AND persist);
345
+ * - the `loadPresets` / `loadSelectedPresetName` /
346
+ * `loadSavedSettings` boot-time hydration helpers;
347
+ * - the `persistSettings` writer used by the in-app settings
348
+ * toggles (`setIsCompact`, `setAlternateRowColours`, etc.);
349
+ * - the schema-validation typeguards (exported alongside the
350
+ * sub-context for unit testing).
351
+ *
352
+ * The settings fields themselves (`isCompact`, `singleClickEditing`,
353
+ * `alternateRowColours`, etc.) stay on `TableContext` because each
354
+ * one drives reactive UI; only the localStorage round-trip moved.
355
+ * `TableContext` retains delegating getters/setters/methods for
356
+ * every legacy surface (`columnPresets`, `selectedPreset`,
357
+ * `saveColumnPreset`, `setSelectedPreset`, `setIsCompact`, etc.).
358
+ */
359
+ readonly _preferences: PreferencesState<T>;
360
+ /**
361
+ * Phase 6.5 sub-context that owns every selection + highlighting +
362
+ * key-cache concern previously held directly on `TableContext`:
363
+ *
364
+ * - `selectedItems` / `invalidValues` / `highlightedItems`
365
+ * (`SvelteMap` slots, keyed by `selectionExtractor(item)`);
366
+ * - the `WeakMap<T, RowIdType>` key-cache that memoises the
367
+ * extractor result for each row reference;
368
+ * - the pending-flush buffer and its debounced microtask
369
+ * (`_pendingSelectionChanges` -> `tick().then(flush)`);
370
+ * - the `allSelectedInCurrentPage` `$derived` (with the async-
371
+ * result cache for promise-returning `selectionExtractor` /
372
+ * `RowSelectionDef.isSelectable`);
373
+ * - the `selectAllInCurrentPage` / `updateSelectedItems` /
374
+ * `onHighlightAll` flows;
375
+ * - the `handleItemMutation` split that powers the parent's
376
+ * `onEditCell` - the sub-context owns the key-cache delete +
377
+ * selection rebind; the user-supplied callback stays on this
378
+ * class.
379
+ *
380
+ * Dependencies are passed as thunks so the sub-context never holds
381
+ * a direct reference to `TableContext`. The two `$effect`s that
382
+ * historically lived on this class continue to live here (they
383
+ * read `paginationRepo` directly) but publish their results
384
+ * through `_selection.setAllHighlighted(...)` and
385
+ * `_selection.updateSelectedItems()`.
386
+ */
387
+ readonly _selection: SelectionState<T, RowIdType>;
388
+ /**
389
+ * Phase 6.6 sub-context that owns every focus + keyboard-navigation
390
+ * concern previously held directly on `TableContext`:
391
+ *
392
+ * - `focusStart` / `focusEnd` / `focusStartIsBeingEdited` /
393
+ * `isMousingDown` (the `$state` slots that define the focused
394
+ * cell-range);
395
+ * - the `focusedRowIndices` / `focusedColumnIds` sets (populated
396
+ * by the parent's `$effect` through `setFocusedDerived(...)`);
397
+ * - every focus writer (`startFocus`, `moveFocus`, `unfocus`,
398
+ * `endFocus`, `setFocusEnd`, `focusToTop`, `focusToBottom`,
399
+ * `focusToStart`, `focusToEnd`, `moveToTop`, `moveToBottom`,
400
+ * `moveToStart`, `moveToEnd`, `setFocusUp` / `setFocusDown` /
401
+ * `setFocusLeft` / `setFocusRight`, and the
402
+ * `moveFocusUp` / `moveFocusDown` / `moveFocusLeft` /
403
+ * `moveFocusRight` range-extension variants);
404
+ * - `handleTdKeydown` (the root `onkeydown` router) and the
405
+ * private `handleKeystroke` dispatch.
406
+ *
407
+ * Dependencies are passed as thunks so the sub-context never holds
408
+ * a direct reference to `TableContext`. The Ctrl+F / Tab / Ctrl+C
409
+ * paths in `handleTdKeydown` and `handleKeystroke` call back into
410
+ * the parent through the `toggleQuickFiltering` / `tabForward` /
411
+ * `tabBackward` / `copyDataToClipboard` thunks because those
412
+ * methods read fields owned by other sub-contexts (or the parent
413
+ * directly) and would otherwise need to import them.
414
+ *
415
+ * The focus-derived `$effect` that publishes
416
+ * `focusedRowIndices` / `focusedColumnIds` lives on `TableContext`
417
+ * because it reads `paginationRowModel` + `_visualColumns` directly;
418
+ * it calls `_focus.setFocusedDerived(rows, cols)` to publish.
419
+ *
420
+ * Group 2 Item C (per-cell `TableFocusDetails` reuse cache) is
421
+ * deferred for Phase 6.6 - see the class-level JSDoc on
422
+ * `FocusState` for the deferral rationale.
423
+ */
424
+ readonly _focus: FocusState<T>;
425
+ /**
426
+ * Phase 7.4 row-virtualisation sub-context. Owns the visible-row
427
+ * window plus the top / bottom spacer-height derived chain that
428
+ * `TableBody.svelte` renders. Threshold defaults to 100 rows
429
+ * (below that the legacy code path renders every row directly);
430
+ * overscan defaults to 10 rows above and below the viewport so a
431
+ * fast flick of the wheel does not surface a blank band before
432
+ * the next paint.
433
+ *
434
+ * Dependencies are thunks - the sub-context reads
435
+ * `paginationRowModel.rows` through `getRows`, the max-side
436
+ * observed height from the `_columnLayout` row-height pool
437
+ * through `getRowHeight`, and the per-table-density estimate
438
+ * through `getEstimatedRowHeight`.
439
+ */
440
+ /**
441
+ * Rendered widths of header cells, keyed by columnId. TableHead
442
+ * observes each `<div role="columnheader">` with a `ResizeObserver`
443
+ * and writes the actual rendered width here; TableRow / TableBody
444
+ * read these widths when computing sticky pinning offsets so that
445
+ * pinned columns can flex with `minmax(W, 1fr)` like centre columns
446
+ * (matching width-preservation expectation on pinning) while the
447
+ * sticky-cell offsets stay accurate.
448
+ *
449
+ * Fallback when a column has not yet been measured: 0. The first
450
+ * frame after pinning toggles may render with stale offsets but the
451
+ * resize observer fires immediately afterwards.
452
+ */
453
+ readonly _columnRenderedWidths: SvelteMap<string, number>;
454
+ readonly _virtualisation: VirtualisationState<T>;
455
+ /**
456
+ * Delegating getter preserved for backwards compatibility. Reads
457
+ * through to `_sorting.sortedData`, which owns the comparator-hoist
458
+ * optimisation and the `AbortController` short-circuit. Consumers
459
+ * inside `src/lib` already point at `tableContext.sortedData`; the
460
+ * delegation will be removed once Phase 6 v-next migrates every
461
+ * reader to `tableContext._sorting.sortedData` directly.
462
+ */
463
+ get sortedData(): Array<T>;
149
464
  private _sortedRowModel;
150
465
  get sortedRowModel(): RowModel<T>;
151
466
  private CurrentPageDataAbortController;
@@ -155,96 +470,275 @@ export declare class TableContext<T extends object, RowIdType extends Primitive>
155
470
  private rowsPromise;
156
471
  private _paginationRowModel;
157
472
  get paginationRowModel(): RowModel<T>;
158
- private readonly _keyCache;
473
+ /**
474
+ * Delegating wrapper preserved for backwards compatibility. The
475
+ * key-extraction cache lives on `_selection` (Phase 6.5); this
476
+ * method forwards to `_selection.cachedKey(item)` so legacy call
477
+ * sites in `getHighlightedRowData` / `getFocusElementData` /
478
+ * `originalRowIndices` / `sortedRowModel` / `onHighlightAll` see
479
+ * no behavioural change.
480
+ */
159
481
  private _cachedKey;
160
- private readonly _pendingSelectionChanges;
161
- private _flushScheduled;
162
- private _flushPendingSelectionChanges;
163
- private _schedulePendingFlush;
482
+ /** Delegating accessor preserved for backwards compatibility. The
483
+ * implementation lives on `_selection.selectionContains` (Phase 6.5). */
164
484
  readonly selectionContains: (item: T) => boolean | Promise<boolean>;
485
+ /** Delegating accessor preserved for backwards compatibility. */
165
486
  readonly addInvalidValue: (item: T) => void | Promise<void>;
487
+ /** Delegating accessor preserved for backwards compatibility. */
166
488
  readonly removeInvalidValue: (item: T) => void | Promise<void>;
489
+ /** Stores or clears the coordinates of the open per-cell modal. */
167
490
  readonly setOpenModalCoordinates: (coordinates: CellCoordinatesWithoutColumn | null) => void;
491
+ /** Delegating accessor preserved for backwards compatibility. */
168
492
  readonly toggleHighlightedRow: (item: T) => void | Promise<void>;
493
+ /** Delegating accessor preserved for backwards compatibility. */
169
494
  readonly resetHighlightedRows: () => void;
495
+ /** Delegating accessor preserved for backwards compatibility. */
170
496
  readonly toggleSelected: (item: T) => void | Promise<void>;
497
+ /** Delegating accessor preserved for backwards compatibility. */
171
498
  readonly setSelected: (item: T, selected: boolean) => void | Promise<void>;
499
+ /** Delegating accessor preserved for backwards compatibility. */
172
500
  setSelectionMap: (set: SvelteMap<RowIdType, T>) => void;
501
+ /** Delegating accessor preserved for backwards compatibility. */
173
502
  readonly updateSelectedItems: () => Promise<void>;
503
+ /** Delegating accessor preserved for backwards compatibility. */
174
504
  readonly resetSelectedItems: () => void;
505
+ /** Delegating accessor preserved for backwards compatibility. */
175
506
  readonly selectAllInCurrentPage: () => Promise<void>;
507
+ /** Delegating accessor preserved for backwards compatibility. */
176
508
  readonly onHighlightAll: () => void | Promise<void>;
509
+ /**
510
+ * Invoked by every editable cell on commit. Split between this
511
+ * class (the user-supplied edit callback) and `_selection`
512
+ * (the key-cache invalidation + selection-rebind half). The
513
+ * sub-context's `handleItemMutation` accepts a thunk that runs
514
+ * the consumer callback between the pre- and post-edit selection
515
+ * bookkeeping so the boundary stays explicit.
516
+ */
177
517
  readonly onEditCell: (item: T, coords: CellCoordinates, value: unknown) => Promise<void>;
518
+ /**
519
+ * Delegating accessor preserved for backwards compatibility. The
520
+ * implementation lives on `_focus.handleTdKeydown` (Phase 6.6).
521
+ * Bound to the root `<table>` container's `onkeydown` listener;
522
+ * routes Ctrl+F / Escape / Tab synchronously and dispatches the
523
+ * arrow-key / Home / End / Ctrl+A / Ctrl+C path asynchronously.
524
+ */
178
525
  readonly handleTdKeydown: (e: KeyboardEvent) => void;
179
- private handleKeystroke;
526
+ /** Toggles quick-filtering visibility and refocuses the matching cell. */
180
527
  readonly toggleQuickFiltering: () => void;
528
+ /**
529
+ * Applies an updater to the column-pinning state (left / right
530
+ * pins). Delegates to `_columnLayout.setColumnPinning`, which
531
+ * enforces the `allowColumnReordering` master gate.
532
+ */
181
533
  readonly setColumnPinning: (updater: Updater<ColumnPinningState>) => void;
182
- updateFilters: OnChangeFn<ColumnFiltersState> | undefined;
534
+ /**
535
+ * Delegating accessor preserved for backwards compatibility. The
536
+ * actual `$state` slot lives on `_filtering`; this getter / setter
537
+ * pair forwards reads and writes so existing consumers (notably
538
+ * `generateTableOptions`) need no migration.
539
+ */
540
+ get updateFilters(): OnChangeFn<ColumnFiltersState> | undefined;
541
+ set updateFilters(v: OnChangeFn<ColumnFiltersState> | undefined);
183
542
  updateVisibility: OnChangeFn<VisibilityState>;
184
543
  readonly table: ITable<T>;
185
544
  readonly lastPage: number;
545
+ /** Canvas-measured width of a column header label, plus padding. */
186
546
  readonly measureHeaderWidth: (columnDef: ColumnDef<T>) => number;
547
+ /** Sizes a column to fit its widest current-page cell label. */
187
548
  readonly autoResize: (columnDef: ColumnDef<T>) => Promise<void>;
188
- reorderColumn: (dropTarget: HTMLLIElement | HTMLTableCellElement | null) => void;
549
+ /**
550
+ * Drops the in-progress column drag onto the supplied target,
551
+ * updating `columnDefs`, pinning state, and focus. No-op when
552
+ * column reordering is disabled.
553
+ */
554
+ reorderColumn: (dropTarget: HTMLLIElement | HTMLElement | null) => void;
555
+ /**
556
+ * Programmatic column-reorder primitive used by keyboard accessibility
557
+ * shortcuts in the column-management panel. Moves the column at
558
+ * {@link currentIndex} to {@link newIndex} (both expressed in the
559
+ * sorted-by-`index` order of {@link columnDefs}). No-op when column
560
+ * reordering is disabled or indices are out of range / unchanged.
561
+ */
562
+ moveColumnTo: (currentIndex: number, newIndex: number) => void;
563
+ /** Copies the highlighted rows to the OS clipboard as TSV / CSV. */
189
564
  copyHighlightedRowsToClipboard: () => Promise<void>;
565
+ /** Copies the currently focused cell range to the OS clipboard. */
190
566
  copyDataToClipboard: () => Promise<void>;
191
567
  private _performRowCopy;
568
+ /** Delegating accessor preserved for backwards compatibility. The
569
+ * implementation lives on `_focus.startFocus` (Phase 6.6). */
192
570
  readonly startFocus: (coords: CellCoordinates) => void;
571
+ /** Delegating accessor preserved for backwards compatibility. The
572
+ * implementation lives on `_focus.moveFocus` (Phase 6.6). */
193
573
  readonly moveFocus: (coords: CellCoordinates, startEditing?: boolean) => void;
574
+ /** Delegating accessor preserved for backwards compatibility. */
194
575
  readonly unfocus: () => void;
576
+ /** Delegating accessor preserved for backwards compatibility. */
195
577
  readonly focusToTop: () => void;
578
+ /** Delegating accessor preserved for backwards compatibility. */
196
579
  readonly focusToBottom: () => void;
580
+ /** Delegating accessor preserved for backwards compatibility. */
197
581
  readonly moveToBottom: () => void;
582
+ /** Delegating accessor preserved for backwards compatibility. */
198
583
  readonly moveToTop: () => void;
584
+ /** Delegating accessor preserved for backwards compatibility. */
199
585
  readonly moveFocusUp: () => void;
586
+ /** Delegating accessor preserved for backwards compatibility. */
200
587
  readonly setFocusUp: () => void;
588
+ /** Delegating accessor preserved for backwards compatibility. */
201
589
  readonly tabForward: () => void;
590
+ /** Delegating accessor preserved for backwards compatibility. */
202
591
  readonly tabBackward: () => void;
592
+ /** Delegating accessor preserved for backwards compatibility. */
203
593
  readonly focusToStart: () => void;
594
+ /** Delegating accessor preserved for backwards compatibility. */
204
595
  readonly moveToStart: () => void;
596
+ /** Delegating accessor preserved for backwards compatibility. */
205
597
  readonly focusToEnd: () => void;
598
+ /** Delegating accessor preserved for backwards compatibility. */
206
599
  readonly moveToEnd: () => void;
600
+ /** Delegating accessor preserved for backwards compatibility. */
207
601
  readonly moveFocusDown: () => void;
602
+ /** Delegating accessor preserved for backwards compatibility. */
208
603
  readonly setFocusDown: () => void;
604
+ /** Delegating accessor preserved for backwards compatibility. */
209
605
  readonly moveFocusLeft: () => void;
606
+ /** Delegating accessor preserved for backwards compatibility. */
210
607
  readonly setFocusLeft: () => void;
608
+ /** Delegating accessor preserved for backwards compatibility. */
211
609
  readonly moveFocusRight: () => void;
610
+ /** Delegating accessor preserved for backwards compatibility. */
212
611
  readonly setFocusRight: () => void;
612
+ /** Delegating accessor preserved for backwards compatibility. */
213
613
  readonly endFocus: (coords: CellCoordinates) => void;
614
+ /** Toggles compact row sizing and persists to localStorage. */
214
615
  readonly setIsCompact: (value: boolean) => void;
616
+ /** Toggles alternating row colours and persists to localStorage. */
215
617
  readonly setAlternateRowColours: (value: boolean) => void;
618
+ /** Toggles single-click editing and persists to localStorage. */
216
619
  readonly setSingleClickEditing: (value: boolean) => void;
620
+ /** Toggles row-hover colour change and persists to localStorage. */
217
621
  readonly setChangeColourOnHover: (value: boolean) => void;
622
+ /** Toggles whether copy-to-clipboard prepends a header row and persists. */
218
623
  readonly setCopyWithHeaders: (value: boolean) => void;
624
+ /** Toggles CSV vs TSV copy-to-clipboard separator and persists. */
219
625
  readonly setCommaSeparatedCopy: (value: boolean) => void;
626
+ /**
627
+ * Delegating method preserved for backwards compatibility. Applies
628
+ * the preset to the live column layout, forwards the preset's
629
+ * `sortingState` to the data-repository updater, and persists the
630
+ * selected name. The underlying implementation lives on
631
+ * `_preferences.setSelectedPreset` (Phase 6.4).
632
+ *
633
+ * The pre-extraction debug warning ("no sorting state found") was
634
+ * emitted unconditionally when `paginationRepo.updateSorting` was
635
+ * absent; the sub-context skips that warning because the
636
+ * `applySortingState` thunk already no-ops in that case. The
637
+ * warning is reinstated below so the surface is byte-identical.
638
+ */
220
639
  readonly setSelectedPreset: (preset: ColumnDefSet<T>) => void;
640
+ /**
641
+ * Delegating method preserved for backwards compatibility. Adds or
642
+ * replaces a saved preset for the current column layout and
643
+ * persists the full preset list to localStorage. Delegates to
644
+ * `_preferences.saveColumnPreset` (Phase 6.4).
645
+ */
221
646
  readonly saveColumnPreset: (name: string) => void;
222
647
  /**
223
648
  * This listener should be added and removed based on isMousingDown
224
649
  */
650
+ /** Delegating accessor preserved for backwards compatibility. The
651
+ * implementation lives on `_focus.setFocusEnd` (Phase 6.6). */
225
652
  readonly setFocusEnd: (coords: CellCoordinates) => void;
226
653
  private createRow;
227
654
  private columnDefReturnsTextValue;
655
+ /**
656
+ * Builds the user-controlled settings blob from the current
657
+ * `$state` slots and delegates the actual `localStorage.setItem`
658
+ * call to `_preferences.persistSettings` (Phase 6.4). The settings
659
+ * field set (`isCompact`, `singleClickEditing`, etc.) still lives
660
+ * on `TableContext` because each one drives reactive UI; only the
661
+ * persistence side of the boundary moved.
662
+ */
228
663
  private _updateLocalStorageSettings;
229
664
  /**
230
- * Columns in visual display order: pinned-left → center → pinned-right,
231
- * preserving memory order within each section. Only includes visible columns.
665
+ * Delegating accessor preserved for backwards compatibility. The
666
+ * cached visual-column array and its paired O(1) id->index map now
667
+ * live on `_columnLayout` (Phase 6.3). The underscore prefix is
668
+ * preserved on `TableContext` to keep the existing read sites in
669
+ * `tabForward` / `focusToStart` / `moveFocusLeft` / etc. untouched.
232
670
  */
233
- private get _visualColumns();
234
- /** Returns the visual index of the column with the given id, or -1 if not found. */
671
+ get _visualColumns(): Array<ColumnDef<T>>;
672
+ /** Returns the visual index of the column with the given id, or
673
+ * -1 if not found. Delegates to `_columnLayout.columnVisualIndex`
674
+ * which provides the O(1) lookup. */
235
675
  columnVisualIndex(id: string): VisualColumnIndex;
676
+ /**
677
+ * Delegating getter preserved for backwards compatibility. The
678
+ * implementation lives on `_focus.focusStartVisualColumn`
679
+ * (Phase 6.6); the visual-index lookup itself is owned by
680
+ * `_columnLayout.columnVisualIndex` (Phase 6.3).
681
+ */
236
682
  get focusStartVisualColumn(): VisualColumnIndex;
683
+ /**
684
+ * Delegating getter preserved for backwards compatibility. The
685
+ * implementation lives on `_focus.focusEndVisualColumn`
686
+ * (Phase 6.6).
687
+ */
237
688
  get focusEndVisualColumn(): VisualColumnIndex;
238
- private _moveFocusEndRow;
239
- private _moveFocusRow;
240
689
  private getHighlightedRowData;
241
690
  private getFocusElementData;
242
691
  private updateDefsBasedOnPinning;
243
692
  private assertNoDuplicateIds;
244
693
  private setupDefaultColumnDefs;
694
+ /**
695
+ * Reads the persisted per-table user-settings blob through
696
+ * `_preferences.loadSavedSettings` (Phase 6.4) and applies each
697
+ * field to the live `$state` slot. Field defaults mirror the
698
+ * pre-extraction behaviour:
699
+ *
700
+ * - missing slot: `singleClickEditing` defaults to `true`; every
701
+ * other field keeps its constructor default.
702
+ * - present slot: each field is applied if it would deviate from
703
+ * the constructor default (the "only alter when the user
704
+ * explicitly disabled" semantics are preserved verbatim).
705
+ */
245
706
  private _getUserDefaults;
246
707
  private _setNewPinningState;
247
708
  readonly getToggleSortingHandler: (def: ColumnDef<T>) => () => void;
248
709
  private reassignDefsToPresets;
249
710
  }
250
711
  export declare function isSearchable<T extends object, FilterValueType, FilterOptionsType, CD extends ColumnDef<T, FilterValueType, FilterOptionsType>>(def: CD): def is CD & HasCustomFilterFunction;
712
+ /**
713
+ * Neutralises CSV / TSV formula-injection prefixes recognised by Excel,
714
+ * LibreOffice Calc, Google Sheets, and Apple Numbers.
715
+ *
716
+ * When a clipboard payload reaches a spreadsheet, any cell whose first
717
+ * character is one of `=`, `+`, `-`, `@`, `\t`, `\r` is treated as a
718
+ * formula and evaluated in the user's context. Untrusted row data
719
+ * containing `=cmd|'/c calc'!A1` (or DDE / web-query equivalents) is the
720
+ * canonical attack vector. Prefixing such a value with a single quote
721
+ * (`'`) makes the spreadsheet interpret the cell as a literal string
722
+ * instead.
723
+ *
724
+ * Trade-off: the leading apostrophe is invisible in the rendered cell of
725
+ * every major spreadsheet, but the underlying cell value differs from the
726
+ * source when read back by another formula referencing the cell. This is
727
+ * the accepted industry mitigation (OWASP CSV Injection cheat sheet).
728
+ *
729
+ * Private helper - keep this colocated with `encapsulate` so every
730
+ * clipboard-bound string flows through both functions before being
731
+ * written to the OS clipboard.
732
+ */
733
+ declare function escapeForSpreadsheet(value: string): string;
734
+ declare function encapsulate(value: string): string;
735
+ /**
736
+ * Internal exports for tests. Not part of the public API; do not import
737
+ * from consumer code. Allows the clipboard formula-escape regression test
738
+ * to call the module-private helpers directly.
739
+ */
740
+ export declare const _internal: {
741
+ escapeForSpreadsheet: typeof escapeForSpreadsheet;
742
+ encapsulate: typeof encapsulate;
743
+ };
744
+ export {};