@lavalogic/scoria 0.36.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 (550) hide show
  1. package/dist/Components/AccordionGroup.svelte +6 -2
  2. package/dist/Components/AccordionGroupButton.svelte +78 -78
  3. package/dist/Components/AccordionGroupButtonProps.d.ts +27 -8
  4. package/dist/Components/AccordionGroupProps.d.ts +10 -2
  5. package/dist/Components/Action.svelte +31 -33
  6. package/dist/Components/ActionProps.d.ts +23 -3
  7. package/dist/Components/AlertModal.svelte +90 -39
  8. package/dist/Components/AppointmentCalendar/AppointmentCalendar.svelte +1126 -0
  9. package/dist/Components/AppointmentCalendar/AppointmentCalendar.svelte.d.ts +4 -0
  10. package/dist/Components/AppointmentCalendar/AppointmentCalendarProps.d.ts +92 -0
  11. package/dist/Components/AppointmentCalendar/AppointmentCalendarProps.js +12 -0
  12. package/dist/Components/Base/BaseModal.svelte +172 -0
  13. package/dist/Components/Base/BaseModal.svelte.d.ts +4 -0
  14. package/dist/Components/Base/BaseModalProps.d.ts +73 -0
  15. package/dist/Components/Base/BaseModalProps.js +1 -0
  16. package/dist/Components/Base/ContextWrapper.svelte +37 -15
  17. package/dist/Components/Base/ContextWrapper.svelte.d.ts +24 -5
  18. package/dist/Components/Base/ContextWrapperProps.d.ts +22 -0
  19. package/dist/Components/Base/Pagination.svelte +70 -62
  20. package/dist/Components/Base/Pagination.svelte.d.ts +12 -2
  21. package/dist/Components/Base/PaginationProps.d.ts +60 -3
  22. package/dist/Components/Base/Snippets.svelte +7 -0
  23. package/dist/Components/Base/Snippets.svelte.d.ts +5 -1
  24. package/dist/Components/BigRadioSet.svelte +18 -9
  25. package/dist/Components/BigRadioSetProps.d.ts +17 -1
  26. package/dist/Components/Bubble.svelte +67 -34
  27. package/dist/Components/Bubble.svelte.d.ts +23 -2
  28. package/dist/Components/BubbleProps.d.ts +55 -4
  29. package/dist/Components/Button.svelte +50 -38
  30. package/dist/Components/ButtonProps.d.ts +66 -1
  31. package/dist/Components/Checkbox.svelte +57 -29
  32. package/dist/Components/Checkbox.svelte.d.ts +1 -12
  33. package/dist/Components/CheckboxProps.d.ts +27 -0
  34. package/dist/Components/CheckboxProps.js +1 -0
  35. package/dist/Components/CollapsibleCard.svelte +53 -22
  36. package/dist/Components/CollapsibleCardProps.d.ts +22 -1
  37. package/dist/Components/Contexts/ContextMenu.svelte +53 -32
  38. package/dist/Components/Contexts/ContextMenu.svelte.d.ts +26 -0
  39. package/dist/Components/Contexts/ContextMenuDivider.svelte +15 -7
  40. package/dist/Components/Contexts/ContextMenuDivider.svelte.d.ts +9 -0
  41. package/dist/Components/Contexts/ContextMenuOption.svelte +27 -18
  42. package/dist/Components/Contexts/ContextMenuOption.svelte.d.ts +12 -1
  43. package/dist/Components/Contexts/ContextMenuOptionProps.d.ts +34 -2
  44. package/dist/Components/Contexts/Toast.svelte +28 -4
  45. package/dist/Components/Contexts/Toast.svelte.d.ts +14 -0
  46. package/dist/Components/Contexts/ToastContainer.svelte +30 -11
  47. package/dist/Components/Contexts/ToastContainer.svelte.d.ts +14 -0
  48. package/dist/Components/Contexts/ToastProps.d.ts +14 -1
  49. package/dist/Components/Contexts/Tooltip.svelte +21 -10
  50. package/dist/Components/Contexts/Tooltip.svelte.d.ts +10 -0
  51. package/dist/Components/DataMatrixIcon.svelte +82 -11
  52. package/dist/Components/DataMatrixIconProps.d.ts +73 -1
  53. package/dist/Components/DateInput.svelte +64 -29
  54. package/dist/Components/DateInput.svelte.d.ts +1 -1
  55. package/dist/Components/DateOnlyInputProps.d.ts +31 -5
  56. package/dist/Components/DatePicker.svelte +96 -108
  57. package/dist/Components/DatePickerProps.d.ts +18 -1
  58. package/dist/Components/DateTimeInputProps.d.ts +30 -5
  59. package/dist/Components/DesktopModal.svelte +14 -43
  60. package/dist/Components/DesktopModalProps.d.ts +5 -4
  61. package/dist/Components/Dial.svelte +103 -41
  62. package/dist/Components/DialProps.d.ts +74 -2
  63. package/dist/Components/DimensionInput.svelte +50 -64
  64. package/dist/Components/DimensionInput.svelte.d.ts +1 -1
  65. package/dist/Components/DimensionInputProps.d.ts +39 -4
  66. package/dist/Components/DragMenu/DragMenuHolder.svelte +41 -29
  67. package/dist/Components/DragMenu/DragMenuHolderProps.d.ts +30 -1
  68. package/dist/Components/DragMenu/DraggableCard.svelte +44 -8
  69. package/dist/Components/DragMenu/DraggableCardProps.d.ts +27 -1
  70. package/dist/Components/FileCard.svelte +6 -2
  71. package/dist/Components/FileCardProps.d.ts +17 -1
  72. package/dist/Components/FileUpload.svelte +82 -42
  73. package/dist/Components/FileUploadProps.d.ts +34 -4
  74. package/dist/Components/GridInput.svelte +27 -17
  75. package/dist/Components/GridInput.svelte.d.ts +5 -5
  76. package/dist/Components/GridInputProps.d.ts +4 -1
  77. package/dist/Components/GridInputSet.svelte +12 -5
  78. package/dist/Components/GridInputSet.svelte.d.ts +5 -5
  79. package/dist/Components/GridInputSetProps.d.ts +4 -2
  80. package/dist/Components/HorizontalTabGroup.svelte +13 -11
  81. package/dist/Components/HorizontalTabGroupButton.svelte +16 -68
  82. package/dist/Components/HorizontalTabGroupProps.d.ts +15 -2
  83. package/dist/Components/Icon.svelte +62 -21
  84. package/dist/Components/IconProps.d.ts +54 -6
  85. package/dist/Components/Icons.d.ts +8 -0
  86. package/dist/Components/Icons.js +234 -215
  87. package/dist/Components/LoadingAnimation.svelte +18 -18
  88. package/dist/Components/LoadingAnimation.svelte.d.ts +1 -3
  89. package/dist/Components/LoadingAnimationProps.d.ts +16 -0
  90. package/dist/Components/LoadingAnimationProps.js +1 -0
  91. package/dist/Components/LoadingModal.svelte +18 -20
  92. package/dist/Components/LoadingModal.svelte.d.ts +1 -4
  93. package/dist/Components/LoadingModalProps.d.ts +17 -0
  94. package/dist/Components/LoadingModalProps.js +1 -0
  95. package/dist/Components/LoadingOverlay.svelte +11 -13
  96. package/dist/Components/LoadingOverlay.svelte.d.ts +1 -5
  97. package/dist/Components/LoadingOverlayProps.d.ts +28 -0
  98. package/dist/Components/LoadingOverlayProps.js +1 -0
  99. package/dist/Components/Modal.svelte +77 -82
  100. package/dist/Components/Modal.svelte.d.ts +1 -25
  101. package/dist/Components/ModalProps.d.ts +65 -0
  102. package/dist/Components/ModalProps.js +1 -0
  103. package/dist/Components/MultiSelect.svelte +88 -76
  104. package/dist/Components/MultiSelectCommonProps.d.ts +33 -4
  105. package/dist/Components/MultiSelectPropsAsObject.d.ts +5 -0
  106. package/dist/Components/MultiSelectPropsAsPrimitive.d.ts +6 -0
  107. package/dist/Components/Nav/CallbackButtonWithIcon.d.ts +22 -1
  108. package/dist/Components/Nav/Nav.svelte +35 -30
  109. package/dist/Components/Nav/Nav.svelte.d.ts +23 -2
  110. package/dist/Components/Nav/NavProps.d.ts +50 -3
  111. package/dist/Components/Nav/NavServiceMenuList.svelte +12 -3
  112. package/dist/Components/Nav/NavServiceMenuListProps.d.ts +25 -1
  113. package/dist/Components/Nav/NavTab.svelte +19 -48
  114. package/dist/Components/Nav/NavTab.svelte.d.ts +23 -2
  115. package/dist/Components/Nav/NavTabProps.d.ts +16 -2
  116. package/dist/Components/Nav/ServiceMenuItem.svelte +29 -20
  117. package/dist/Components/Nav/ServicesNav.svelte +60 -34
  118. package/dist/Components/Nav/ServicesNav.svelte.d.ts +23 -2
  119. package/dist/Components/Nav/ServicesNavProps.d.ts +20 -4
  120. package/dist/Components/Nav/SideMenuItemProps.d.ts +16 -0
  121. package/dist/Components/NumberInput.svelte +37 -27
  122. package/dist/Components/NumberInputProps.d.ts +37 -0
  123. package/dist/Components/PageHeading.svelte +2 -13
  124. package/dist/Components/PageHeading.svelte.d.ts +1 -6
  125. package/dist/Components/PageHeadingProps.d.ts +23 -0
  126. package/dist/Components/PageHeadingProps.js +1 -0
  127. package/dist/Components/PasswordInput.svelte +27 -15
  128. package/dist/Components/PasswordInput.svelte.d.ts +2 -2
  129. package/dist/Components/PasswordInputProps.d.ts +21 -0
  130. package/dist/Components/PasswordInputProps.js +1 -0
  131. package/dist/Components/Portal.svelte +14 -3
  132. package/dist/Components/PortalProps.d.ts +20 -1
  133. package/dist/Components/ProgressBubble.svelte +98 -53
  134. package/dist/Components/ProgressBubbleProps.d.ts +23 -2
  135. package/dist/Components/QuerySelect.svelte +103 -159
  136. package/dist/Components/QuerySelect.svelte.d.ts +2 -29
  137. package/dist/Components/QuerySelectProps.d.ts +66 -0
  138. package/dist/Components/QuerySelectProps.js +1 -0
  139. package/dist/Components/SingleSelect.svelte +86 -108
  140. package/dist/Components/SingleSelectCommonProps.d.ts +43 -5
  141. package/dist/Components/SingleSelectPropsAsObject.d.ts +7 -0
  142. package/dist/Components/SingleSelectPropsAsPrimitive.d.ts +8 -0
  143. package/dist/Components/StepButton.svelte +19 -69
  144. package/dist/Components/StepForm.svelte +52 -52
  145. package/dist/Components/StepFormProps.d.ts +16 -2
  146. package/dist/Components/Switch.svelte +68 -31
  147. package/dist/Components/Switch.svelte.d.ts +1 -1
  148. package/dist/Components/SwitchProps.d.ts +46 -0
  149. package/dist/Components/Table/Body/HeightData.d.ts +1 -6
  150. package/dist/Components/Table/Body/HeightData.js +8 -0
  151. package/dist/Components/Table/Body/QuickSearchCell.svelte +106 -50
  152. package/dist/Components/Table/Body/QuickSearchCell.svelte.d.ts +12 -11
  153. package/dist/Components/Table/Body/QuickSearchCellProps.d.ts +6 -0
  154. package/dist/Components/Table/Body/Rows/ColumnHighlight.svelte +43 -9
  155. package/dist/Components/Table/Body/Rows/ColumnHighlight.svelte.d.ts +24 -2
  156. package/dist/Components/Table/Body/Rows/ColumnHighlightProps.d.ts +3 -0
  157. package/dist/Components/Table/Body/Rows/ColumnList.svelte +15 -5
  158. package/dist/Components/Table/Body/Rows/ColumnList.svelte.d.ts +12 -11
  159. package/dist/Components/Table/Body/Rows/ColumnListProps.d.ts +1 -0
  160. package/dist/Components/Table/Body/Rows/ColumnListRow.svelte +424 -91
  161. package/dist/Components/Table/Body/Rows/ColumnListRow.svelte.d.ts +12 -11
  162. package/dist/Components/Table/Body/Rows/ColumnListRowProps.d.ts +5 -0
  163. package/dist/Components/Table/Body/Rows/Columns/AccessorComponent.svelte +43 -13
  164. package/dist/Components/Table/Body/Rows/Columns/AccessorComponentProps.d.ts +12 -0
  165. package/dist/Components/Table/Body/Rows/Columns/ActionsCell.svelte +50 -38
  166. package/dist/Components/Table/Body/Rows/Columns/ActionsCell.svelte.d.ts +12 -12
  167. package/dist/Components/Table/Body/Rows/Columns/ActionsColumn.d.ts +9 -0
  168. package/dist/Components/Table/Body/Rows/Columns/ActionsTableCell.d.ts +5 -0
  169. package/dist/Components/Table/Body/Rows/Columns/BubbleCell.svelte +61 -26
  170. package/dist/Components/Table/Body/Rows/Columns/BubbleCell.svelte.d.ts +14 -13
  171. package/dist/Components/Table/Body/Rows/Columns/BubbleCellProps.d.ts +12 -0
  172. package/dist/Components/Table/Body/Rows/Columns/BubbleCellProps.js +1 -0
  173. package/dist/Components/Table/Body/Rows/Columns/ExpandCell.svelte +36 -16
  174. package/dist/Components/Table/Body/Rows/Columns/FocusableImmutableCell.svelte +47 -24
  175. package/dist/Components/Table/Body/Rows/Columns/FocusableImmutableCell.svelte.d.ts +12 -11
  176. package/dist/Components/Table/Body/Rows/Columns/FocusableImmutableCellProps.d.ts +7 -0
  177. package/dist/Components/Table/Body/Rows/Columns/ProgressCell.svelte +54 -20
  178. package/dist/Components/Table/Body/Rows/Columns/ProgressCell.svelte.d.ts +17 -11
  179. package/dist/Components/Table/Body/Rows/Columns/RowSelectionColumn.d.ts +8 -0
  180. package/dist/Components/Table/Body/Rows/Columns/RowSelectionTableCell.d.ts +5 -0
  181. package/dist/Components/Table/Body/Rows/Columns/SelectColumn.d.ts +11 -0
  182. package/dist/Components/Table/Body/Rows/Columns/SelectTableCell.d.ts +11 -0
  183. package/dist/Components/Table/Body/Rows/Columns/TableAction.svelte +55 -40
  184. package/dist/Components/Table/Body/Rows/Columns/TableAction.svelte.d.ts +11 -0
  185. package/dist/Components/Table/Body/Rows/Columns/TableCheckbox.svelte +38 -27
  186. package/dist/Components/Table/Body/Rows/Columns/TableCheckbox.svelte.d.ts +13 -18
  187. package/dist/Components/Table/Body/Rows/Columns/TableCheckboxProps.d.ts +17 -0
  188. package/dist/Components/Table/Body/Rows/Columns/TableCheckboxProps.js +1 -0
  189. package/dist/Components/Table/Body/Rows/Columns/TableColumn.svelte +22 -7
  190. package/dist/Components/Table/Body/Rows/Columns/TableColumn.svelte.d.ts +1 -7
  191. package/dist/Components/Table/Body/Rows/Columns/TableColumnProps.d.ts +16 -0
  192. package/dist/Components/Table/Body/Rows/Columns/TableColumnProps.js +1 -0
  193. package/dist/Components/Table/Body/Rows/Columns/TableDatePicker.svelte +61 -31
  194. package/dist/Components/Table/Body/Rows/Columns/TableDatePicker.svelte.d.ts +12 -11
  195. package/dist/Components/Table/Body/Rows/Columns/TableDatePickerProps.d.ts +9 -0
  196. package/dist/Components/Table/Body/Rows/Columns/TableNumberInput.svelte +123 -244
  197. package/dist/Components/Table/Body/Rows/Columns/TableNumberInput.svelte.d.ts +20 -12
  198. package/dist/Components/Table/Body/Rows/Columns/TableQueryCell.d.ts +8 -0
  199. package/dist/Components/Table/Body/Rows/Columns/TableQueryColumn.d.ts +9 -0
  200. package/dist/Components/Table/Body/Rows/Columns/TableQuerySelect.svelte +126 -189
  201. package/dist/Components/Table/Body/Rows/Columns/TableQuerySelect.svelte.d.ts +12 -11
  202. package/dist/Components/Table/Body/Rows/Columns/TableQuerySelectProps.d.ts +8 -0
  203. package/dist/Components/Table/Body/Rows/Columns/TableRowSelectionCheckbox.svelte +31 -19
  204. package/dist/Components/Table/Body/Rows/Columns/TableRowSelectionCheckbox.svelte.d.ts +2 -5
  205. package/dist/Components/Table/Body/Rows/Columns/TableRowSelectionCheckboxProps.d.ts +14 -0
  206. package/dist/Components/Table/Body/Rows/Columns/TableRowSelectionCheckboxProps.js +1 -0
  207. package/dist/Components/Table/Body/Rows/Columns/TableSelect.svelte +125 -187
  208. package/dist/Components/Table/Body/Rows/Columns/TableSelect.svelte.d.ts +13 -12
  209. package/dist/Components/Table/Body/Rows/Columns/TableSelectProps.d.ts +6 -0
  210. package/dist/Components/Table/Body/Rows/Columns/TableTextInput.svelte +119 -270
  211. package/dist/Components/Table/Body/Rows/Columns/TableTextInput.svelte.d.ts +12 -11
  212. package/dist/Components/Table/Body/Rows/Columns/TableTextInputProps.d.ts +6 -0
  213. package/dist/Components/Table/Body/Rows/Columns/ValidityCell.svelte +23 -13
  214. package/dist/Components/Table/Body/Rows/Columns/_helpers/useAsyncEditable.svelte.d.ts +104 -0
  215. package/dist/Components/Table/Body/Rows/Columns/_helpers/useAsyncEditable.svelte.js +215 -0
  216. package/dist/Components/Table/Body/Rows/TableRow.svelte +200 -132
  217. package/dist/Components/Table/Body/Rows/TableRow.svelte.d.ts +2 -10
  218. package/dist/Components/Table/Body/Rows/TableRowProps.d.ts +11 -2
  219. package/dist/Components/Table/Body/TableBody.svelte +170 -53
  220. package/dist/Components/Table/Body/TableBody.svelte.d.ts +15 -22
  221. package/dist/Components/Table/Body/TableBodyProps.d.ts +9 -7
  222. package/dist/Components/Table/ColumnDefinitions/ExampleItemColumnDefRepository.svelte.js +18 -12
  223. package/dist/Components/Table/ColumnFactory.svelte.d.ts +43 -0
  224. package/dist/Components/Table/ColumnFactory.svelte.js +339 -0
  225. package/dist/Components/Table/Headers/HighlightAllHeader.svelte +5 -3
  226. package/dist/Components/Table/Headers/HighlightAllHeader.svelte.d.ts +12 -11
  227. package/dist/Components/Table/Headers/SelectAllHeader.svelte +5 -3
  228. package/dist/Components/Table/Headers/SelectAllHeader.svelte.d.ts +12 -11
  229. package/dist/Components/Table/Headers/TableHead.svelte +340 -200
  230. package/dist/Components/Table/Headers/TableHead.svelte.d.ts +13 -16
  231. package/dist/Components/Table/Headers/TableHeadProps.d.ts +10 -0
  232. package/dist/Components/Table/Headers/TableHeadProps.js +1 -0
  233. package/dist/Components/Table/Misc/ColumnPanel.svelte +108 -50
  234. package/dist/Components/Table/Misc/ColumnPanel.svelte.d.ts +12 -11
  235. package/dist/Components/Table/Misc/ColumnPanelModal.svelte +20 -7
  236. package/dist/Components/Table/Misc/ColumnPanelModal.svelte.d.ts +12 -11
  237. package/dist/Components/Table/Misc/ColumnPanelModalProps.d.ts +5 -0
  238. package/dist/Components/Table/Misc/FilterInput.svelte +30 -41
  239. package/dist/Components/Table/Misc/FilterInput.svelte.d.ts +12 -11
  240. package/dist/Components/Table/Misc/FilterPanel.svelte +387 -29
  241. package/dist/Components/Table/Misc/FilterPanel.svelte.d.ts +12 -11
  242. package/dist/Components/Table/Misc/FilterPanelModal.svelte +4 -51
  243. package/dist/Components/Table/Misc/FilterPanelModal.svelte.d.ts +2 -23
  244. package/dist/Components/Table/Misc/SidePanel.svelte +12 -9
  245. package/dist/Components/Table/Misc/SidePanel.svelte.d.ts +1 -7
  246. package/dist/Components/Table/Misc/SidePanelProps.d.ts +17 -0
  247. package/dist/Components/Table/Misc/SidePanelProps.js +1 -0
  248. package/dist/Components/Table/Misc/TableFooter.svelte +44 -35
  249. package/dist/Components/Table/Misc/TableFooter.svelte.d.ts +13 -14
  250. package/dist/Components/Table/Misc/TableFooterProps.d.ts +8 -0
  251. package/dist/Components/Table/Misc/TableFooterProps.js +1 -0
  252. package/dist/Components/Table/Misc/TableHorizontalBar.svelte +17 -48
  253. package/dist/Components/Table/Misc/TableHorizontalBar.svelte.d.ts +12 -11
  254. package/dist/Components/Table/Misc/TableSidebar.svelte +28 -47
  255. package/dist/Components/Table/Misc/TableSidebar.svelte.d.ts +12 -11
  256. package/dist/Components/Table/Misc/ToolboxPanel.svelte +121 -55
  257. package/dist/Components/Table/Misc/ToolboxPanel.svelte.d.ts +12 -11
  258. package/dist/Components/Table/Misc/ToolboxPanelModal.svelte +31 -24
  259. package/dist/Components/Table/Misc/ToolboxPanelModal.svelte.d.ts +12 -11
  260. package/dist/Components/Table/Misc/ToolboxPanelModalProps.d.ts +5 -0
  261. package/dist/Components/Table/Misc/numberDateFilterTypes.d.ts +7 -4
  262. package/dist/Components/Table/Misc/numberDateFilterTypes.js +8 -3
  263. package/dist/Components/Table/Misc/stringFilterTypes.d.ts +6 -4
  264. package/dist/Components/Table/Misc/stringFilterTypes.js +7 -3
  265. package/dist/Components/Table/NestedTable.svelte +85 -41
  266. package/dist/Components/Table/NestedTable.svelte.d.ts +2 -10
  267. package/dist/Components/Table/NestedTableProps.d.ts +25 -0
  268. package/dist/Components/Table/NestedTableProps.js +1 -0
  269. package/dist/Components/Table/SubApis.svelte.d.ts +23 -0
  270. package/dist/Components/Table/SubApis.svelte.js +359 -0
  271. package/dist/Components/Table/Table.svelte +347 -172
  272. package/dist/Components/Table/Table.svelte.d.ts +24 -1
  273. package/dist/Components/Table/TableHelpers.svelte.d.ts +58 -0
  274. package/dist/Components/Table/TableHelpers.svelte.js +88 -0
  275. package/dist/Components/Table/Types/Columns/Column.d.ts +10 -0
  276. package/dist/Components/Table/Types/Columns/ColumnPinningState.d.ts +12 -0
  277. package/dist/Components/Table/Types/Columns/ColumnSizingState.d.ts +8 -0
  278. package/dist/Components/Table/Types/Columns/ColumnType.d.ts +17 -0
  279. package/dist/Components/Table/Types/Columns/ColumnType.js +18 -1
  280. package/dist/Components/Table/Types/Columns/DateColumn.d.ts +6 -0
  281. package/dist/Components/Table/Types/Columns/DateTableCell.d.ts +7 -0
  282. package/dist/Components/Table/Types/Columns/Definitions/AccessorFn.d.ts +13 -0
  283. package/dist/Components/Table/Types/Columns/Definitions/Accessors/AccessorDef.svelte.d.ts +28 -3
  284. package/dist/Components/Table/Types/Columns/Definitions/Accessors/AccessorDef.svelte.js +15 -0
  285. package/dist/Components/Table/Types/Columns/Definitions/Accessors/AccessorType.d.ts +10 -0
  286. package/dist/Components/Table/Types/Columns/Definitions/Accessors/AccessorType.js +11 -1
  287. package/dist/Components/Table/Types/Columns/Definitions/Accessors/CheckboxDef.svelte.d.ts +23 -2
  288. package/dist/Components/Table/Types/Columns/Definitions/Accessors/CheckboxDef.svelte.js +9 -2
  289. package/dist/Components/Table/Types/Columns/Definitions/Accessors/DateInputDef.svelte.d.ts +21 -2
  290. package/dist/Components/Table/Types/Columns/Definitions/Accessors/DateInputDef.svelte.js +8 -0
  291. package/dist/Components/Table/Types/Columns/Definitions/Accessors/NumberInputDef.svelte.d.ts +29 -3
  292. package/dist/Components/Table/Types/Columns/Definitions/Accessors/NumberInputDef.svelte.js +11 -0
  293. package/dist/Components/Table/Types/Columns/Definitions/Accessors/QueryDef.svelte.d.ts +23 -0
  294. package/dist/Components/Table/Types/Columns/Definitions/Accessors/QueryDef.svelte.js +8 -0
  295. package/dist/Components/Table/Types/Columns/Definitions/Accessors/SelectDef.svelte.d.ts +31 -0
  296. package/dist/Components/Table/Types/Columns/Definitions/Accessors/SelectDef.svelte.js +17 -3
  297. package/dist/Components/Table/Types/Columns/Definitions/Accessors/TextInputDef.svelte.d.ts +21 -2
  298. package/dist/Components/Table/Types/Columns/Definitions/Accessors/TextInputDef.svelte.js +7 -0
  299. package/dist/Components/Table/Types/Columns/Definitions/Actions/ActionsDef.svelte.d.ts +29 -1
  300. package/dist/Components/Table/Types/Columns/Definitions/Actions/ActionsDef.svelte.js +17 -3
  301. package/dist/Components/Table/Types/Columns/Definitions/ColumnDef.svelte.d.ts +122 -11
  302. package/dist/Components/Table/Types/Columns/Definitions/ColumnDef.svelte.js +77 -11
  303. package/dist/Components/Table/Types/Columns/Definitions/ColumnDefSet.d.ts +9 -0
  304. package/dist/Components/Table/Types/Columns/Definitions/Display/AbstractDisplayDef.svelte.d.ts +41 -1
  305. package/dist/Components/Table/Types/Columns/Definitions/Display/AbstractDisplayDef.svelte.js +16 -0
  306. package/dist/Components/Table/Types/Columns/Definitions/Display/BubbleDef.svelte.d.ts +19 -1
  307. package/dist/Components/Table/Types/Columns/Definitions/Display/BubbleDef.svelte.js +12 -1
  308. package/dist/Components/Table/Types/Columns/Definitions/Display/DisplayDef.svelte.d.ts +11 -0
  309. package/dist/Components/Table/Types/Columns/Definitions/Display/DisplayDef.svelte.js +6 -3
  310. package/dist/Components/Table/Types/Columns/Definitions/Display/ProgressBarDef.svelte.d.ts +19 -0
  311. package/dist/Components/Table/Types/Columns/Definitions/Display/ProgressBarDef.svelte.js +25 -1
  312. package/dist/Components/Table/Types/Columns/Definitions/Display/ValidityDef.svelte.d.ts +26 -0
  313. package/dist/Components/Table/Types/Columns/Definitions/Display/ValidityDef.svelte.js +20 -5
  314. package/dist/Components/Table/Types/Columns/Definitions/Expand/ExpandDef.svelte.d.ts +43 -7
  315. package/dist/Components/Table/Types/Columns/Definitions/Expand/ExpandDef.svelte.js +18 -3
  316. package/dist/Components/Table/Types/Columns/Definitions/FilterOnly/FilterOnlyDef.svelte.d.ts +19 -5
  317. package/dist/Components/Table/Types/Columns/Definitions/FilterOnly/FilterOnlyDef.svelte.js +16 -5
  318. package/dist/Components/Table/Types/Columns/Definitions/JSONColumnDefSet.d.ts +14 -0
  319. package/dist/Components/Table/Types/Columns/Definitions/RowSelection/RowSelectionDef.svelte.d.ts +34 -2
  320. package/dist/Components/Table/Types/Columns/Definitions/RowSelection/RowSelectionDef.svelte.js +30 -7
  321. package/dist/Components/Table/Types/Columns/Definitions/ValidationFn.d.ts +17 -0
  322. package/dist/Components/Table/Types/Columns/DefsWrapper.d.ts +10 -0
  323. package/dist/Components/Table/Types/Columns/DisplayType.d.ts +13 -0
  324. package/dist/Components/Table/Types/Columns/DisplayType.js +14 -1
  325. package/dist/Components/Table/Types/Columns/ExpandColumn.d.ts +5 -0
  326. package/dist/Components/Table/Types/Columns/ExpandTableCell.d.ts +7 -0
  327. package/dist/Components/Table/Types/Columns/JSONColumnPinningState.d.ts +6 -0
  328. package/dist/Components/Table/Types/Columns/ProgressBarColumn.d.ts +5 -0
  329. package/dist/Components/Table/Types/Columns/ProgressBarTableCell.d.ts +9 -0
  330. package/dist/Components/Table/Types/Columns/TableActionButton.d.ts +12 -0
  331. package/dist/Components/Table/Types/Columns/TableCell.d.ts +16 -2
  332. package/dist/Components/Table/Types/Columns/VisibilityState.d.ts +12 -0
  333. package/dist/Components/Table/Types/Context/ColumnLayoutState.svelte.d.ts +173 -0
  334. package/dist/Components/Table/Types/Context/ColumnLayoutState.svelte.js +241 -0
  335. package/dist/Components/Table/Types/Context/FilteringState.svelte.d.ts +166 -0
  336. package/dist/Components/Table/Types/Context/FilteringState.svelte.js +180 -0
  337. package/dist/Components/Table/Types/Context/FocusState.svelte.d.ts +316 -0
  338. package/dist/Components/Table/Types/Context/FocusState.svelte.js +751 -0
  339. package/dist/Components/Table/Types/Context/ITable.d.ts +10 -0
  340. package/dist/Components/Table/Types/Context/PreferencesState.svelte.d.ts +242 -0
  341. package/dist/Components/Table/Types/Context/PreferencesState.svelte.js +317 -0
  342. package/dist/Components/Table/Types/Context/ReadonlyRowModel.d.ts +14 -3
  343. package/dist/Components/Table/Types/Context/Row.d.ts +18 -0
  344. package/dist/Components/Table/Types/Context/RowModel.d.ts +11 -0
  345. package/dist/Components/Table/Types/Context/SelectionState.svelte.d.ts +260 -0
  346. package/dist/Components/Table/Types/Context/SelectionState.svelte.js +613 -0
  347. package/dist/Components/Table/Types/Context/SortingState.svelte.d.ts +112 -0
  348. package/dist/Components/Table/Types/Context/SortingState.svelte.js +272 -0
  349. package/dist/Components/Table/Types/Context/TableContext.svelte.d.ts +547 -53
  350. package/dist/Components/Table/Types/Context/TableContext.svelte.js +959 -1259
  351. package/dist/Components/Table/Types/Context/TableInitOptions.d.ts +16 -0
  352. package/dist/Components/Table/Types/Context/TableSettings.d.ts +20 -0
  353. package/dist/Components/Table/Types/Context/VirtualisationState.svelte.d.ts +167 -0
  354. package/dist/Components/Table/Types/Context/VirtualisationState.svelte.js +226 -0
  355. package/dist/Components/Table/Types/Coordinates/CellCoordinates.d.ts +12 -0
  356. package/dist/Components/Table/Types/Coordinates/CellCoordinatesWithoutColumn.d.ts +5 -0
  357. package/dist/Components/Table/Types/Coordinates/ColumnIndices.d.ts +16 -2
  358. package/dist/Components/Table/Types/DataRepository/BuiltInRemoteRepository.svelte.d.ts +143 -0
  359. package/dist/Components/Table/Types/DataRepository/BuiltInRemoteRepository.svelte.js +454 -0
  360. package/dist/Components/Table/Types/DataRepository/IDataRepository.d.ts +21 -0
  361. package/dist/Components/Table/Types/DataRepository/ILocalDataRepository.d.ts +10 -0
  362. package/dist/Components/Table/Types/DataRepository/IRemoteDataRepository.d.ts +16 -0
  363. package/dist/Components/Table/Types/DataRepository/LocalTableDataRepository.svelte.d.ts +87 -3
  364. package/dist/Components/Table/Types/DataRepository/LocalTableDataRepository.svelte.js +112 -7
  365. package/dist/Components/Table/Types/DataRepository/SortingState.d.ts +12 -0
  366. package/dist/Components/Table/Types/DataRepository/TableDataRepository.svelte.d.ts +87 -2
  367. package/dist/Components/Table/Types/DataRepository/TableDataRepository.svelte.js +74 -1
  368. package/dist/Components/Table/Types/ExpandedPanel.d.ts +9 -0
  369. package/dist/Components/Table/Types/ExpandedPanel.js +10 -1
  370. package/dist/Components/Table/Types/Filtering/ColumnFiltersState.d.ts +17 -0
  371. package/dist/Components/Table/Types/Filtering/CustomFilter.d.ts +21 -0
  372. package/dist/Components/Table/Types/Filtering/CustomFilterType.d.ts +5 -0
  373. package/dist/Components/Table/Types/Filtering/CustomFilterType.js +6 -1
  374. package/dist/Components/Table/Types/Filtering/CustomRemoteFilters.d.ts +6 -0
  375. package/dist/Components/Table/Types/Filtering/FilterFn.d.ts +28 -0
  376. package/dist/Components/Table/Types/Filtering/FilterMode.d.ts +7 -0
  377. package/dist/Components/Table/Types/Filtering/FilterType.d.ts +8 -0
  378. package/dist/Components/Table/Types/Filtering/FilterType.js +9 -1
  379. package/dist/Components/Table/Types/Filtering/FilterValueType.d.ts +11 -0
  380. package/dist/Components/Table/Types/Filtering/FilterValueType.js +12 -1
  381. package/dist/Components/Table/Types/Filtering/HasCustomFilterFunction.d.ts +23 -2
  382. package/dist/Components/Table/Types/Filtering/NumberDateFilterMode.d.ts +19 -12
  383. package/dist/Components/Table/Types/Filtering/NumberDateFilterMode.js +18 -14
  384. package/dist/Components/Table/Types/Filtering/StringFilterMode.d.ts +22 -15
  385. package/dist/Components/Table/Types/Filtering/StringFilterMode.js +22 -16
  386. package/dist/Components/Table/Types/Focus/MultiFocusEdge.d.ts +8 -0
  387. package/dist/Components/Table/Types/Focus/MultiFocusEdge.js +9 -1
  388. package/dist/Components/Table/Types/Focus/TableFocusDetails.svelte.d.ts +22 -0
  389. package/dist/Components/Table/Types/Focus/TableFocusDetails.svelte.js +22 -0
  390. package/dist/Components/Table/Types/Header.d.ts +8 -0
  391. package/dist/Components/Table/Types/HeaderGroup.d.ts +7 -0
  392. package/dist/Components/Table/Types/Layout/CellPinning.d.ts +1 -0
  393. package/dist/Components/Table/Types/Layout/CellPinning.js +8 -0
  394. package/dist/Components/Table/Types/OnChangeFn.d.ts +11 -0
  395. package/dist/Components/Table/Types/Pagination/PaginationState.d.ts +9 -0
  396. package/dist/Components/Table/Types/Pagination/PaginationType.d.ts +10 -0
  397. package/dist/Components/Table/Types/Pagination/PaginationType.js +11 -1
  398. package/dist/Components/Table/Types/Public/AnyEditEvent.d.ts +30 -0
  399. package/dist/Components/Table/Types/Public/AnyEditEvent.js +1 -0
  400. package/dist/Components/Table/Types/Public/BaseColumnOptions.d.ts +44 -0
  401. package/dist/Components/Table/Types/Public/BaseColumnOptions.js +1 -0
  402. package/dist/Components/Table/Types/Public/ColumnFactory.d.ts +35 -0
  403. package/dist/Components/Table/Types/Public/ColumnFactory.js +1 -0
  404. package/dist/Components/Table/Types/Public/ColumnOptions.d.ts +238 -0
  405. package/dist/Components/Table/Types/Public/ColumnOptions.js +1 -0
  406. package/dist/Components/Table/Types/Public/ColumnSpec.d.ts +39 -0
  407. package/dist/Components/Table/Types/Public/ColumnSpec.js +1 -0
  408. package/dist/Components/Table/Types/Public/CreateTableOptions.d.ts +87 -0
  409. package/dist/Components/Table/Types/Public/CreateTableOptions.js +1 -0
  410. package/dist/Components/Table/Types/Public/KeyConstraints.d.ts +42 -0
  411. package/dist/Components/Table/Types/Public/KeyConstraints.js +22 -0
  412. package/dist/Components/Table/Types/Public/RowSource.d.ts +87 -0
  413. package/dist/Components/Table/Types/Public/RowSource.js +1 -0
  414. package/dist/Components/Table/Types/Public/SelectionOptions.d.ts +26 -0
  415. package/dist/Components/Table/Types/Public/SelectionOptions.js +1 -0
  416. package/dist/Components/Table/Types/Public/Table.d.ts +39 -0
  417. package/dist/Components/Table/Types/Public/Table.js +1 -0
  418. package/dist/Components/Table/Types/Public/TableInitialState.d.ts +26 -0
  419. package/dist/Components/Table/Types/Public/TableInitialState.js +1 -0
  420. package/dist/Components/Table/Types/Public/TablePersistence.d.ts +38 -0
  421. package/dist/Components/Table/Types/Public/TablePersistence.js +1 -0
  422. package/dist/Components/Table/Types/Public/TableSubApis.d.ts +157 -0
  423. package/dist/Components/Table/Types/Public/TableSubApis.js +1 -0
  424. package/dist/Components/Table/Types/Public/index.d.ts +20 -0
  425. package/dist/Components/Table/Types/Public/index.js +8 -0
  426. package/dist/Components/Table/Types/Toolbar/ToolbarPosition.d.ts +4 -0
  427. package/dist/Components/Table/Types/Toolbar/ToolbarPosition.js +5 -1
  428. package/dist/Components/Table/createTable.svelte.d.ts +53 -0
  429. package/dist/Components/Table/createTable.svelte.js +269 -0
  430. package/dist/Components/TextArea.svelte +37 -18
  431. package/dist/Components/TextAreaProps.d.ts +37 -0
  432. package/dist/Components/TextInput.svelte +41 -22
  433. package/dist/Components/TextInputProps.d.ts +58 -1
  434. package/dist/Components/ThreeStateRadio.svelte +61 -64
  435. package/dist/Components/ThreeStateRadioProps.d.ts +29 -1
  436. package/dist/Components/Touch/BoolCard.svelte +8 -15
  437. package/dist/Components/Touch/BoolCard.svelte.d.ts +1 -10
  438. package/dist/Components/Touch/BoolCardProps.d.ts +21 -0
  439. package/dist/Components/Touch/BoolCardProps.js +1 -0
  440. package/dist/Components/Touch/DateModal.svelte +17 -25
  441. package/dist/Components/Touch/DateModal.svelte.d.ts +1 -17
  442. package/dist/Components/Touch/DateModalProps.d.ts +36 -0
  443. package/dist/Components/Touch/DateModalProps.js +1 -0
  444. package/dist/Components/Touch/EditCard.svelte +10 -3
  445. package/dist/Components/Touch/EditCardProps.d.ts +21 -0
  446. package/dist/Components/Touch/InfoCard.svelte +14 -7
  447. package/dist/Components/Touch/InfoCardProps.d.ts +9 -0
  448. package/dist/Components/Touch/InfoTextCard.svelte +9 -2
  449. package/dist/Components/Touch/InfoTextCardProps.d.ts +8 -0
  450. package/dist/Components/Touch/ModalExplanation.svelte +9 -12
  451. package/dist/Components/Touch/ModalExplanation.svelte.d.ts +1 -6
  452. package/dist/Components/Touch/ModalExplanationProps.d.ts +22 -0
  453. package/dist/Components/Touch/ModalExplanationProps.js +1 -0
  454. package/dist/Components/Touch/NumberKeyboard.svelte +62 -105
  455. package/dist/Components/Touch/NumberKeyboardProps.d.ts +19 -0
  456. package/dist/Components/Touch/NumberModal.svelte +16 -6
  457. package/dist/Components/Touch/NumberModalProps.d.ts +23 -1
  458. package/dist/Components/Touch/PlusMinusCard.svelte +12 -16
  459. package/dist/Components/Touch/PlusMinusCard.svelte.d.ts +1 -6
  460. package/dist/Components/Touch/PlusMinusCardProps.d.ts +18 -0
  461. package/dist/Components/Touch/PlusMinusCardProps.js +1 -0
  462. package/dist/Components/Touch/SelectModal.svelte +33 -15
  463. package/dist/Components/Touch/SelectModalProps.d.ts +22 -1
  464. package/dist/Components/Touch/SummaryCard.svelte +56 -14
  465. package/dist/Components/Touch/SummaryCardProps.d.ts +16 -3
  466. package/dist/Components/Touch/TextAreaModal.svelte +18 -9
  467. package/dist/Components/Touch/TextAreaModalProps.d.ts +21 -0
  468. package/dist/Components/Touch/TextModal.svelte +15 -32
  469. package/dist/Components/Touch/TextModalProps.d.ts +28 -1
  470. package/dist/Components/Touch/TouchCard.svelte +9 -47
  471. package/dist/Components/Touch/TouchCardProps.d.ts +21 -0
  472. package/dist/Components/Touch/TouchModal.svelte +105 -99
  473. package/dist/Components/Touch/TouchModalProps.d.ts +35 -1
  474. package/dist/Components/Touch/UtilityButton.svelte +36 -18
  475. package/dist/Components/Touch/UtilityButtonProps.d.ts +16 -0
  476. package/dist/Components/VerticalTabGroup.svelte +18 -40
  477. package/dist/Components/VerticalTabGroupButton.svelte +11 -50
  478. package/dist/Components/VerticalTabGroupProps.d.ts +15 -2
  479. package/dist/Contexts/AlertContext.svelte.d.ts +92 -8
  480. package/dist/Contexts/AlertContext.svelte.js +69 -6
  481. package/dist/Contexts/ContextMenuContext.svelte.d.ts +54 -8
  482. package/dist/Contexts/ContextMenuContext.svelte.js +48 -2
  483. package/dist/Contexts/TestContext.svelte.d.ts +27 -1
  484. package/dist/Contexts/TestContext.svelte.js +29 -1
  485. package/dist/Contexts/ToastContext.svelte.d.ts +29 -1
  486. package/dist/Contexts/ToastContext.svelte.js +93 -24
  487. package/dist/Contexts/TooltipContext.svelte.d.ts +68 -1
  488. package/dist/Contexts/TooltipContext.svelte.js +70 -7
  489. package/dist/Contexts/UntypedInputContext.svelte.d.ts +54 -5
  490. package/dist/Contexts/UntypedInputContext.svelte.js +87 -34
  491. package/dist/Delay/Delay.js +1 -1
  492. package/dist/Helpers/AsyncFlag.svelte.d.ts +39 -0
  493. package/dist/Helpers/AsyncFlag.svelte.js +72 -0
  494. package/dist/Helpers/Datamatrix.d.ts +10 -1
  495. package/dist/Helpers/Datamatrix.js +290 -1
  496. package/dist/Helpers/Helpers.svelte.d.ts +252 -18
  497. package/dist/Helpers/Helpers.svelte.js +271 -75
  498. package/dist/Helpers/INamed.d.ts +6 -0
  499. package/dist/Helpers/Storage.d.ts +67 -0
  500. package/dist/Helpers/Storage.js +138 -0
  501. package/dist/Helpers/dropdownPortal.d.ts +52 -0
  502. package/dist/Helpers/dropdownPortal.js +232 -0
  503. package/dist/Helpers/dropdownPortal.svelte.d.ts +2 -0
  504. package/dist/Helpers/dropdownPortal.svelte.js +5 -0
  505. package/dist/Helpers/memoiseByRow.d.ts +45 -0
  506. package/dist/Helpers/memoiseByRow.js +78 -0
  507. package/dist/Helpers/prefersReducedMotion.svelte.d.ts +27 -0
  508. package/dist/Helpers/prefersReducedMotion.svelte.js +18 -0
  509. package/dist/Helpers/useTooltip.svelte.d.ts +53 -0
  510. package/dist/Helpers/useTooltip.svelte.js +62 -0
  511. package/dist/Types/Examples/ExampleModal.svelte +2 -1
  512. package/dist/Types/Examples/ExampleSelectEnum.js +1 -1
  513. package/dist/Types/Internal/AsyncFlag.d.ts +7 -0
  514. package/dist/Types/Internal/AsyncFlag.js +1 -0
  515. package/dist/Types/Internal/BigRadioOption.d.ts +8 -0
  516. package/dist/Types/Internal/ButtonProp.d.ts +24 -2
  517. package/dist/Types/Internal/CallbackButton.d.ts +12 -0
  518. package/dist/Types/Internal/DateChange.d.ts +8 -0
  519. package/dist/Types/Internal/DatePickerType.d.ts +5 -0
  520. package/dist/Types/Internal/DatePickerType.js +6 -1
  521. package/dist/Types/Internal/IdentifiableToastMessage.d.ts +8 -0
  522. package/dist/Types/Internal/InputVariant.d.ts +5 -0
  523. package/dist/Types/Internal/InputVariant.js +6 -1
  524. package/dist/Types/Internal/Misc.d.ts +91 -0
  525. package/dist/Types/Internal/RefWrapper.d.ts +6 -0
  526. package/dist/Types/Internal/SelectOption.d.ts +8 -0
  527. package/dist/Types/Internal/Shape.d.ts +1 -0
  528. package/dist/Types/Internal/Shape.js +2 -1
  529. package/dist/Types/Internal/Side.d.ts +1 -0
  530. package/dist/Types/Internal/Side.js +2 -1
  531. package/dist/Types/Internal/Size.d.ts +5 -0
  532. package/dist/Types/Internal/Size.js +6 -1
  533. package/dist/Types/Internal/TabOption.d.ts +15 -5
  534. package/dist/Types/Internal/Ternary.d.ts +6 -0
  535. package/dist/Types/Internal/Ternary.js +7 -1
  536. package/dist/Types/Internal/ToastMessage.d.ts +28 -0
  537. package/dist/Types/Internal/Validity.d.ts +6 -0
  538. package/dist/Types/Internal/Validity.js +7 -1
  539. package/dist/Types/Internal/ValidityWrapper.d.ts +8 -0
  540. package/dist/Types/Internal/Variant.d.ts +5 -0
  541. package/dist/Types/Internal/Variant.js +6 -1
  542. package/dist/index.d.ts +27 -82
  543. package/dist/index.js +24 -62
  544. package/dist/scss/_mixins.scss +451 -167
  545. package/dist/scss/_motion.scss +57 -0
  546. package/dist/scss/_sizing.scss +16 -0
  547. package/dist/scss/colours.js +2 -2
  548. package/dist/scss/sizing.d.ts +9 -0
  549. package/dist/scss/sizing.js +10 -1
  550. package/package.json +35 -31
@@ -11,62 +11,77 @@
11
11
  import { Size } from '../../../../../Types/Internal/Size.js';
12
12
  import type { ActionsTableCell } from './ActionsTableCell.js';
13
13
 
14
+ /**
15
+ * Props for {@link TableAction}. Renders a single row-action `<Button>`
16
+ * inside the actions popover; resolves the per-row label and enabled flag
17
+ * from the `action` callbacks (each may be sync or async).
18
+ *
19
+ * Kept inline because extracting it would change the public import path
20
+ * for the `TableActionProps` type (breaking); the sibling-Props file
21
+ * extraction is deferred to the cross-cutting Props-extraction sweep.
22
+ */
14
23
  export interface TableActionProps<T extends object, FilterValueType> {
24
+ /** The action button to render (one button per `cell.column.columnDef.actions[*]`). */
15
25
  action: TableActionButton<T>;
26
+ /** The host actions-cell instance, used to resolve per-row state. */
16
27
  cell: ActionsTableCell<T, FilterValueType>;
17
28
  }
18
29
  </script>
19
30
 
20
31
  <script
21
32
  lang="ts"
22
- generics="T extends object,FilterValueType"
33
+ generics="T extends object, FilterValueType"
23
34
  >
35
+ import { dev } from '$app/environment';
36
+
24
37
  const { action, cell }: TableActionProps<T, FilterValueType> = $props();
25
38
 
26
- const isEnabledPromise: boolean | Promise<boolean> = $derived.by(() => {
27
- const disabled = action.isDisabled?.(cell.row.original, cell.row.originalIndex);
39
+ /**
40
+ * Resolved [label, isEnabled] tuple. Both sources are awaited in parallel
41
+ * via Promise.all so an async `getLabel` does not serialise behind an
42
+ * async `isDisabled`.
43
+ */
44
+ const buttonStatePromise: Promise<[string, boolean]> = $derived.by(() => {
45
+ const disabledResult = action.isDisabled?.(cell.row.original, cell.row.originalIndex);
28
46
 
29
- if (disabled != null) {
30
- if (typeof disabled == 'boolean') {
31
- return !disabled;
32
- } else {
33
- return disabled.then((it) => !it);
34
- }
35
- }
36
- return (
37
- cell.column.columnDef.isEnabled?.(cell.row.original, cell.row.originalIndex, action) ?? true
38
- );
39
- });
47
+ const isEnabledPromise: Promise<boolean> =
48
+ disabledResult == null
49
+ ? Promise.resolve(
50
+ cell.column.columnDef.isEnabled?.(cell.row.original, cell.row.originalIndex, action) ??
51
+ true
52
+ )
53
+ : typeof disabledResult === 'boolean'
54
+ ? Promise.resolve(!disabledResult)
55
+ : disabledResult.then((it) => !it);
40
56
 
41
- const labelPromise: Promise<string> = $derived.by(() => {
42
- const result = action.getLabel(cell.row.original, cell.row.originalIndex);
57
+ const labelPromise: Promise<string> = Promise.resolve(
58
+ action.getLabel(cell.row.original, cell.row.originalIndex)
59
+ );
43
60
 
44
- if (typeof result == 'object') {
45
- return result.then((it) => it);
46
- } else {
47
- return Promise.resolve(result);
48
- }
61
+ return Promise.all([labelPromise, isEnabledPromise]);
49
62
  });
50
63
  </script>
51
64
 
52
- {#await labelPromise then label}
53
- {#await isEnabledPromise then isEnabled}
54
- <Button
55
- fullWidth
56
- size={Size.Medium}
57
- colourSet={cell.column.columnDef.getColourSet?.(
58
- cell.row.original,
59
- cell.row.originalIndex,
60
- action
61
- ) ?? ColourSet.Secondary}
62
- disabled={!isEnabled}
63
- onclick={() => {
64
- action.callback(cell.row.original, cell.row.originalIndex);
65
- }}>{label}</Button
66
- >
67
- {:catch e}
68
- Error Loading Button: {getErrorMessage(e)}
69
- {/await}
65
+ {#await buttonStatePromise}
66
+ <!-- intentionally empty: the actions popover frame already conveys the loading state -->
67
+ {:then [label, isEnabled]}
68
+ <Button
69
+ fullWidth
70
+ size={Size.Medium}
71
+ colourSet={cell.column.columnDef.getColourSet?.(
72
+ cell.row.original,
73
+ cell.row.originalIndex,
74
+ action
75
+ ) ?? ColourSet.Secondary}
76
+ disabled={!isEnabled}
77
+ onclick={() => {
78
+ action.callback(cell.row.original, cell.row.originalIndex);
79
+ }}>{label}</Button
80
+ >
70
81
  {:catch e}
71
- Error Loading Button: {getErrorMessage(e)}
82
+ {#if dev}
83
+ Error Loading Button: {getErrorMessage(e)}
84
+ {:else}
85
+ Error Loading Button
86
+ {/if}
72
87
  {/await}
@@ -1,7 +1,18 @@
1
1
  import type { TableActionButton } from '../../../Types/Columns/TableActionButton.js';
2
2
  import type { ActionsTableCell } from './ActionsTableCell.js';
3
+ /**
4
+ * Props for {@link TableAction}. Renders a single row-action `<Button>`
5
+ * inside the actions popover; resolves the per-row label and enabled flag
6
+ * from the `action` callbacks (each may be sync or async).
7
+ *
8
+ * Kept inline because extracting it would change the public import path
9
+ * for the `TableActionProps` type (breaking); the sibling-Props file
10
+ * extraction is deferred to the cross-cutting Props-extraction sweep.
11
+ */
3
12
  export interface TableActionProps<T extends object, FilterValueType> {
13
+ /** The action button to render (one button per `cell.column.columnDef.actions[*]`). */
4
14
  action: TableActionButton<T>;
15
+ /** The host actions-cell instance, used to resolve per-row state. */
5
16
  cell: ActionsTableCell<T, FilterValueType>;
6
17
  }
7
18
  declare function $$render<T extends object, FilterValueType>(): {
@@ -2,41 +2,35 @@
2
2
 
3
3
  <script
4
4
  lang="ts"
5
- module
5
+ generics="T extends object, RowIdType extends Primitive"
6
6
  >
7
- export interface TableCheckboxProps<T extends object> {
8
- cell: TableCell<T, BoolFilterValueType>;
9
-
10
- onchange?: ChangeEventHandler<HTMLInputElement>;
11
- }
12
- </script>
13
-
14
- <script
15
- lang="ts"
16
- generics="T extends object"
17
- >
18
- import type { TableCell } from '../../../Types/Columns/TableCell.js';
19
7
  import { TableContext } from '../../../Types/Context/TableContext.svelte.js';
20
- import type { BoolFilterValueType } from '../../../Types/Filtering/FilterFn.js';
21
- import { TableFocusDetails } from '../../../Types/Focus/TableFocusDetails.svelte.js';
8
+ import { type Primitive } from '../../../Types/Context/TableInitOptions.js';
9
+ import type { TableFocusDetails } from '../../../Types/Focus/TableFocusDetails.svelte.js';
22
10
  import { devCatch, isValidityTuple } from '../../../../../Helpers/Helpers.svelte.js';
23
11
  import { Validity } from '../../../../../Types/Internal/Validity.js';
24
12
  import { getContext, tick } from 'svelte';
25
-
26
13
  import type { ChangeEventHandler } from 'svelte/elements';
14
+ import type { TableCheckboxProps } from './TableCheckboxProps.js';
27
15
 
28
16
  const { cell, onchange: parentOnchange }: TableCheckboxProps<T> = $props();
29
17
 
30
18
  const value = $derived(!!cell.getValue());
31
19
 
32
- const tableContext = getContext<TableContext<T, never>>(TableContext.identifier);
20
+ const tableContext = getContext<TableContext<T, RowIdType>>(TableContext.identifier);
33
21
 
34
- const focusDetails: TableFocusDetails<T, never> = $derived(
35
- new TableFocusDetails(cell, tableContext)
22
+ const focusDetails: TableFocusDetails<T, RowIdType> = $derived(
23
+ tableContext._focus.getFocusDetailsFor(cell)
36
24
  );
37
25
 
38
26
  let inputRef: HTMLInputElement | undefined = $state();
39
27
 
28
+ /**
29
+ * Commits the new value through `TableContext.onEditCell` and forwards the
30
+ * native event to the optional parent handler. The `tick` reconcile fixes a
31
+ * race where the table edit was rejected by validation but the input
32
+ * already showed the new checked state.
33
+ */
40
34
  const onchange: ChangeEventHandler<HTMLInputElement> = (e) => {
41
35
  tableContext
42
36
  .onEditCell(
@@ -75,7 +69,8 @@
75
69
  </script>
76
70
 
77
71
  <!-- svelte-ignore a11y_mouse_events_have_key_events -->
78
- <td
72
+ <!-- svelte-ignore a11y_no_static_element_interactions -->
73
+ <div
79
74
  class="checkbox-cell"
80
75
  onmousedown={(e) => {
81
76
  // start focus only on left click
@@ -126,9 +121,13 @@
126
121
  checked={value}
127
122
  />
128
123
  </label>
129
- </td>
124
+ </div>
130
125
 
131
- <style>td {
126
+ <style>.focusable,
127
+ .checkbox-cell,
128
+ .input-cell,
129
+ .select-cell,
130
+ .datepicker-cell {
132
131
  transition: line-height 0.2s ease, height 0.2s ease;
133
132
  --input-border: none;
134
133
  --input-height: var(--height);
@@ -138,8 +137,11 @@
138
137
  position: relative;
139
138
  padding-left: 0.75rem;
140
139
  padding-right: 0.75rem;
141
- border: solid 1px #cbd4da;
142
- border-left: none;
140
+ border-right: solid 1px #cbd4da;
141
+ border-bottom: solid 1px #cbd4da;
142
+ box-sizing: border-box;
143
+ width: 100%;
144
+ height: var(--height);
143
145
  }
144
146
 
145
147
  input[type=checkbox] {
@@ -178,12 +180,21 @@ label.multifocus.multifocus-start {
178
180
  background-color: #ffffff;
179
181
  }
180
182
 
181
- td.info {
183
+ .focusable.info,
184
+ .checkbox-cell.info,
185
+ .input-cell.info,
186
+ .select-cell.info {
182
187
  background-color: #1f81a0;
183
188
  }
184
- td.warning {
189
+ .focusable.warning,
190
+ .checkbox-cell.warning,
191
+ .input-cell.warning,
192
+ .select-cell.warning {
185
193
  background-color: #f8eab8;
186
194
  }
187
- td.error {
195
+ .focusable.error,
196
+ .checkbox-cell.error,
197
+ .input-cell.error,
198
+ .select-cell.error {
188
199
  background-color: #f9e9e9;
189
200
  }</style>
@@ -1,31 +1,26 @@
1
- export interface TableCheckboxProps<T extends object> {
2
- cell: TableCell<T, BoolFilterValueType>;
3
- onchange?: ChangeEventHandler<HTMLInputElement>;
4
- }
5
- import type { TableCell } from '../../../Types/Columns/TableCell.js';
6
- import type { BoolFilterValueType } from '../../../Types/Filtering/FilterFn.js';
7
- import type { ChangeEventHandler } from 'svelte/elements';
8
- declare function $$render<T extends object>(): {
1
+ import { type Primitive } from '../../../Types/Context/TableInitOptions.js';
2
+ import type { TableCheckboxProps } from './TableCheckboxProps.js';
3
+ declare function $$render<T extends object, RowIdType extends Primitive>(): {
9
4
  props: TableCheckboxProps<T>;
10
5
  exports: {};
11
6
  bindings: "";
12
7
  slots: {};
13
8
  events: {};
14
9
  };
15
- declare class __sveltets_Render<T extends object> {
16
- props(): ReturnType<typeof $$render<T>>['props'];
17
- events(): ReturnType<typeof $$render<T>>['events'];
18
- slots(): ReturnType<typeof $$render<T>>['slots'];
10
+ declare class __sveltets_Render<T extends object, RowIdType extends Primitive> {
11
+ props(): ReturnType<typeof $$render<T, RowIdType>>['props'];
12
+ events(): ReturnType<typeof $$render<T, RowIdType>>['events'];
13
+ slots(): ReturnType<typeof $$render<T, RowIdType>>['slots'];
19
14
  bindings(): "";
20
15
  exports(): {};
21
16
  }
22
17
  interface $$IsomorphicComponent {
23
- new <T extends object>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<T>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<T>['props']>, ReturnType<__sveltets_Render<T>['events']>, ReturnType<__sveltets_Render<T>['slots']>> & {
24
- $$bindings?: ReturnType<__sveltets_Render<T>['bindings']>;
25
- } & ReturnType<__sveltets_Render<T>['exports']>;
26
- <T extends object>(internal: unknown, props: ReturnType<__sveltets_Render<T>['props']> & {}): ReturnType<__sveltets_Render<T>['exports']>;
27
- z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
18
+ new <T extends object, RowIdType extends Primitive>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<T, RowIdType>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<T, RowIdType>['props']>, ReturnType<__sveltets_Render<T, RowIdType>['events']>, ReturnType<__sveltets_Render<T, RowIdType>['slots']>> & {
19
+ $$bindings?: ReturnType<__sveltets_Render<T, RowIdType>['bindings']>;
20
+ } & ReturnType<__sveltets_Render<T, RowIdType>['exports']>;
21
+ <T extends object, RowIdType extends Primitive>(internal: unknown, props: ReturnType<__sveltets_Render<T, RowIdType>['props']> & {}): ReturnType<__sveltets_Render<T, RowIdType>['exports']>;
22
+ z_$$bindings?: ReturnType<__sveltets_Render<any, any>['bindings']>;
28
23
  }
29
24
  declare const TableCheckbox: $$IsomorphicComponent;
30
- type TableCheckbox<T extends object> = InstanceType<typeof TableCheckbox<T>>;
25
+ type TableCheckbox<T extends object, RowIdType extends Primitive> = InstanceType<typeof TableCheckbox<T, RowIdType>>;
31
26
  export default TableCheckbox;
@@ -0,0 +1,17 @@
1
+ import type { TableCell } from '../../../Types/Columns/TableCell.js';
2
+ import type { BoolFilterValueType } from '../../../Types/Filtering/FilterFn.js';
3
+ import type { ChangeEventHandler } from 'svelte/elements';
4
+ /**
5
+ * Props for {@link TableCheckbox}. Renders a checkbox input bound to the
6
+ * row's boolean value; commit goes through `TableContext.onEditCell`.
7
+ *
8
+ * Extracted from the previous `<script module>` inline declaration so the
9
+ * type is consumable by the `AccessorComponent` dispatch table without
10
+ * a duplicate re-declaration.
11
+ */
12
+ export interface TableCheckboxProps<T extends object> {
13
+ /** The boolean cell to render. */
14
+ cell: TableCell<T, BoolFilterValueType>;
15
+ /** Optional bubbled `onchange` handler invoked after the table edit is dispatched. */
16
+ onchange?: ChangeEventHandler<HTMLInputElement>;
17
+ }
@@ -24,14 +24,10 @@
24
24
  import type { ActionsTableCell } from './ActionsTableCell.js';
25
25
  import ProgressCell from './ProgressCell.svelte';
26
26
  import TableRowSelectionCheckbox from './TableRowSelectionCheckbox.svelte';
27
+ import type { TableColumnProps } from './TableColumnProps.js';
27
28
  import ValidityCell from './ValidityCell.svelte';
28
29
 
29
- export interface TableColumnProps<T extends object> {
30
- cell: TableCell<T>;
31
- expandedColumnDef: ExpandDef<T, object> | undefined;
32
- onExpandChange: (columnDef: ExpandDef<T, object>) => void;
33
- }
34
-
30
+ /** Narrowing type-guard distinguishing a progress-bar cell by its `columnDef` instance. */
35
31
  function isProgressBarTableCell<T extends object>(
36
32
  cell: TableCell<T>
37
33
  ): cell is ProgressBarTableCell<T, unknown> {
@@ -50,11 +46,22 @@
50
46
 
51
47
  let { cell, expandedColumnDef, onExpandChange }: TableColumnProps<T> = $props();
52
48
 
49
+ /** Narrowing type-guard distinguishing the row-selection cell. */
53
50
  function isRowSelectionCell<T extends object>(
54
51
  cell: TableCell<T>
55
52
  ): cell is RowSelectionTableCell<T> {
56
53
  return cell.column.columnDef instanceof RowSelectionDef;
57
54
  }
55
+
56
+ /**
57
+ * Returns true when the accessor output is a Svelte component constructor.
58
+ * Distinguishing a Svelte 5 component (a function) from a snippet is a
59
+ * runtime-only heuristic (both are typeof 'function'); the
60
+ * constructor-only branch is reached first because TableColumn checks
61
+ * `valueOrComponentIsConstructor` before `isSnippet`. Tightening this to
62
+ * a real type-level discriminator is tracked under the
63
+ * RowGenericThreading follow-up.
64
+ */
58
65
  function valueOrComponentIsConstructor(
59
66
  valueOrComponent: unknown
60
67
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -62,15 +69,19 @@
62
69
  return typeof valueOrComponent === 'function';
63
70
  }
64
71
 
72
+ /** Narrowing type-guard distinguishing an actions cell. */
65
73
  function isActionsDef(cell: TableCell<T>): cell is ActionsTableCell<T, unknown> {
66
74
  return cell.column.columnDef instanceof ActionsDef;
67
75
  }
76
+
77
+ /** Narrowing type-guard distinguishing the expand-row cell. */
68
78
  function isExpandTableCell(
69
79
  cell: TableCell<T>
70
80
  ): cell is ExpandTableCell<T, object, Primitive, unknown> {
71
81
  return cell.column.columnDef instanceof ExpandDef;
72
82
  }
73
83
 
84
+ /** Heuristic snippet check; both Snippets and Components are functions at runtime. */
74
85
  function isSnippet(value: unknown): value is Snippet<[TableCell<T>]> {
75
86
  return !!value && typeof value == 'function';
76
87
  }
@@ -137,7 +148,11 @@
137
148
  {/if}
138
149
  {:catch e}
139
150
  <FocusableImmutableCell {cell}>
140
- {getErrorMessage(e)}
151
+ {#if dev}
152
+ {getErrorMessage(e)}
153
+ {:else}
154
+ Error rendering cell
155
+ {/if}
141
156
  </FocusableImmutableCell>
142
157
  {/await}
143
158
  {/if}
@@ -1,10 +1,4 @@
1
- import { ExpandDef } from '../../../Types/Columns/Definitions/Expand/ExpandDef.svelte.js';
2
- import type { TableCell } from '../../../Types/Columns/TableCell.js';
3
- export interface TableColumnProps<T extends object> {
4
- cell: TableCell<T>;
5
- expandedColumnDef: ExpandDef<T, object> | undefined;
6
- onExpandChange: (columnDef: ExpandDef<T, object>) => void;
7
- }
1
+ import type { TableColumnProps } from './TableColumnProps.js';
8
2
  declare function $$render<T extends object>(): {
9
3
  props: TableColumnProps<T>;
10
4
  exports: {};
@@ -0,0 +1,16 @@
1
+ import type { ExpandDef } from '../../../Types/Columns/Definitions/Expand/ExpandDef.svelte.js';
2
+ import type { TableCell } from '../../../Types/Columns/TableCell.js';
3
+ /**
4
+ * Props for {@link TableColumn}. The component dispatches one of the
5
+ * specialised cell hosts (RowSelection / Actions / Expand / Accessor / Bubble
6
+ * / Validity / Progress / FocusableImmutable) based on the column's
7
+ * `columnDef.columnType` discriminant and the cell's value shape.
8
+ */
9
+ export interface TableColumnProps<T extends object> {
10
+ /** The cell to render. */
11
+ cell: TableCell<T>;
12
+ /** The currently expanded child-table column def, or `undefined` for none. */
13
+ expandedColumnDef: ExpandDef<T, object> | undefined;
14
+ /** Callback to swap the expanded column. */
15
+ onExpandChange: (columnDef: ExpandDef<T, object>) => void;
16
+ }
@@ -2,12 +2,13 @@
2
2
 
3
3
  <script
4
4
  lang="ts"
5
- generics="T extends object"
5
+ generics="T extends object, RowIdType extends Primitive"
6
6
  >
7
7
  import { dev } from '$app/environment';
8
8
  import { TableContext } from '../../../Types/Context/TableContext.svelte.js';
9
+ import { type Primitive } from '../../../Types/Context/TableInitOptions.js';
9
10
  import type { CellCoordinates } from '../../../Types/Coordinates/CellCoordinates.js';
10
- import { TableFocusDetails } from '../../../Types/Focus/TableFocusDetails.svelte.js';
11
+ import type { TableFocusDetails } from '../../../Types/Focus/TableFocusDetails.svelte.js';
11
12
  import DateModal from '../../../../Touch/DateModal.svelte';
12
13
  import { devCatch, isValidityTuple } from '../../../../../Helpers/Helpers.svelte.js';
13
14
  import { Validity } from '../../../../../Types/Internal/Validity.js';
@@ -18,9 +19,14 @@
18
19
 
19
20
  const value = $derived(cell.getValue());
20
21
 
22
+ /**
23
+ * Narrowed `Date` view of the raw value. Templates fall back to parsing a
24
+ * string with `new Date(value)`; that parse happens once per render and
25
+ * could be hoisted into a $derived in a follow-up (see workorder).
26
+ */
21
27
  const dateValue = $derived(value && value instanceof Date ? value : undefined);
22
28
 
23
- const tableContext = getContext<TableContext<T, never>>(TableContext.identifier);
29
+ const tableContext = getContext<TableContext<T, RowIdType>>(TableContext.identifier);
24
30
 
25
31
  const columnDef = $derived(cell.column.columnDef);
26
32
  const coordinates: CellCoordinates = $derived({
@@ -32,8 +38,8 @@
32
38
  const editable = $derived(
33
39
  cell.column.columnDef.isEditable(cell.row.original, cell.row.originalIndex)
34
40
  );
35
- const focusDetails: TableFocusDetails<T, never> = $derived(
36
- new TableFocusDetails(cell, tableContext)
41
+ const focusDetails: TableFocusDetails<T, RowIdType> = $derived(
42
+ tableContext._focus.getFocusDetailsFor(cell)
37
43
  );
38
44
 
39
45
  let modalLock = $state(false);
@@ -87,7 +93,7 @@
87
93
  }
88
94
  });
89
95
 
90
- let tdref: HTMLTableCellElement | undefined = $state();
96
+ let tdref: HTMLElement | undefined = $state();
91
97
 
92
98
  const id = $derived(`${tableContext.tableName}-cell-${cell.row.visibleIndex}-${cell.column.id}`);
93
99
  async function handleSingleClick(event?: Event) {
@@ -142,24 +148,27 @@
142
148
  handleDoubleClick().catch(devCatch);
143
149
  }
144
150
 
145
- let prevtdref: HTMLTableCellElement | undefined = undefined;
151
+ /**
152
+ * Effect wires the custom `edit` event to the keyboard-triggered double-click
153
+ * handler. The cleanup returns a removeEventListener so a remounted `tdref`
154
+ * does not accumulate stale listeners (P1 workorder finding).
155
+ */
146
156
  $effect(() => {
147
- if (tdref) {
148
- if (tdref != prevtdref) {
149
- tdref.addEventListener('edit', tryHandleDoubleClick);
150
- } else {
151
- prevtdref = tdref;
152
- }
157
+ const node = tdref;
158
+ if (!node) {
159
+ return;
153
160
  }
161
+ node.addEventListener('edit', tryHandleDoubleClick);
162
+ return () => {
163
+ node.removeEventListener('edit', tryHandleDoubleClick);
164
+ };
154
165
  });
155
166
  </script>
156
167
 
157
- <!-- // onKeyDown={handleTdKeydown} -->
158
- <!-- ref={tdref} -->
159
-
160
168
  <!-- svelte-ignore a11y_mouse_events_have_key_events -->
161
-
162
- <td
169
+ <!-- svelte-ignore a11y_click_events_have_key_events -->
170
+ <!-- svelte-ignore a11y_no_static_element_interactions -->
171
+ <div
163
172
  {id}
164
173
  style={focusDetails.outline}
165
174
  aria-label={reason}
@@ -217,7 +226,6 @@
217
226
  {#if !value}
218
227
  -
219
228
  {:else if typeof value === 'string'}
220
- <!-- TODO see if we need to mess with time zones here. Very likely -->
221
229
  {@const parsed = new Date(value)}
222
230
  {isNaN(parsed.getFullYear()) ? value : parsed.toLocaleString()}
223
231
  {:else if value instanceof Date}
@@ -233,9 +241,13 @@
233
241
  {:else}
234
242
  -
235
243
  {/if}
236
- </td>
244
+ </div>
237
245
 
238
- <style>td {
246
+ <style>.focusable,
247
+ .checkbox-cell,
248
+ .input-cell,
249
+ .select-cell,
250
+ .datepicker-cell {
239
251
  transition: line-height 0.2s ease, height 0.2s ease;
240
252
  --input-border: none;
241
253
  --input-height: var(--height);
@@ -245,36 +257,54 @@
245
257
  position: relative;
246
258
  padding-left: 0.75rem;
247
259
  padding-right: 0.75rem;
248
- border: solid 1px #cbd4da;
249
- border-left: none;
260
+ border-right: solid 1px #cbd4da;
261
+ border-bottom: solid 1px #cbd4da;
262
+ box-sizing: border-box;
263
+ width: 100%;
264
+ height: var(--height);
250
265
  }
251
266
 
252
- td.multifocus {
267
+ .focusable.multifocus,
268
+ .checkbox-cell.multifocus,
269
+ .input-cell.multifocus,
270
+ .select-cell.multifocus {
253
271
  background-color: var(--multifocus-colour, #e6f8fd);
254
272
  }
255
- td.multifocus.multifocus-start {
273
+ .focusable.multifocus.multifocus-start,
274
+ .checkbox-cell.multifocus.multifocus-start,
275
+ .input-cell.multifocus.multifocus-start,
276
+ .select-cell.multifocus.multifocus-start {
256
277
  background-color: #ffffff;
257
278
  }
258
279
 
259
- td.focusable {
280
+ .focusable {
260
281
  user-select: none;
261
282
  cursor: default;
262
283
  outline: none;
263
284
  }
264
- td.focusable.editable {
285
+ .focusable.editable {
265
286
  cursor: pointer;
266
287
  }
267
288
 
268
- td.info {
289
+ .focusable.info,
290
+ .checkbox-cell.info,
291
+ .input-cell.info,
292
+ .select-cell.info {
269
293
  background-color: #1f81a0;
270
294
  }
271
- td.warning {
295
+ .focusable.warning,
296
+ .checkbox-cell.warning,
297
+ .input-cell.warning,
298
+ .select-cell.warning {
272
299
  background-color: #f8eab8;
273
300
  }
274
- td.error {
301
+ .focusable.error,
302
+ .checkbox-cell.error,
303
+ .input-cell.error,
304
+ .select-cell.error {
275
305
  background-color: #f9e9e9;
276
306
  }
277
307
 
278
- td {
308
+ [role=cell] {
279
309
  position: static;
280
310
  }</style>
@@ -1,25 +1,26 @@
1
+ import { type Primitive } from '../../../Types/Context/TableInitOptions.js';
1
2
  import type { TableDatePickerProps } from './TableDatePickerProps.js';
2
- declare function $$render<T extends object>(): {
3
+ declare function $$render<T extends object, RowIdType extends Primitive>(): {
3
4
  props: TableDatePickerProps<T>;
4
5
  exports: {};
5
6
  bindings: "";
6
7
  slots: {};
7
8
  events: {};
8
9
  };
9
- declare class __sveltets_Render<T extends object> {
10
- props(): ReturnType<typeof $$render<T>>['props'];
11
- events(): ReturnType<typeof $$render<T>>['events'];
12
- slots(): ReturnType<typeof $$render<T>>['slots'];
10
+ declare class __sveltets_Render<T extends object, RowIdType extends Primitive> {
11
+ props(): ReturnType<typeof $$render<T, RowIdType>>['props'];
12
+ events(): ReturnType<typeof $$render<T, RowIdType>>['events'];
13
+ slots(): ReturnType<typeof $$render<T, RowIdType>>['slots'];
13
14
  bindings(): "";
14
15
  exports(): {};
15
16
  }
16
17
  interface $$IsomorphicComponent {
17
- new <T extends object>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<T>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<T>['props']>, ReturnType<__sveltets_Render<T>['events']>, ReturnType<__sveltets_Render<T>['slots']>> & {
18
- $$bindings?: ReturnType<__sveltets_Render<T>['bindings']>;
19
- } & ReturnType<__sveltets_Render<T>['exports']>;
20
- <T extends object>(internal: unknown, props: ReturnType<__sveltets_Render<T>['props']> & {}): ReturnType<__sveltets_Render<T>['exports']>;
21
- z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
18
+ new <T extends object, RowIdType extends Primitive>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<T, RowIdType>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<T, RowIdType>['props']>, ReturnType<__sveltets_Render<T, RowIdType>['events']>, ReturnType<__sveltets_Render<T, RowIdType>['slots']>> & {
19
+ $$bindings?: ReturnType<__sveltets_Render<T, RowIdType>['bindings']>;
20
+ } & ReturnType<__sveltets_Render<T, RowIdType>['exports']>;
21
+ <T extends object, RowIdType extends Primitive>(internal: unknown, props: ReturnType<__sveltets_Render<T, RowIdType>['props']> & {}): ReturnType<__sveltets_Render<T, RowIdType>['exports']>;
22
+ z_$$bindings?: ReturnType<__sveltets_Render<any, any>['bindings']>;
22
23
  }
23
24
  declare const TableDatePicker: $$IsomorphicComponent;
24
- type TableDatePicker<T extends object> = InstanceType<typeof TableDatePicker<T>>;
25
+ type TableDatePicker<T extends object, RowIdType extends Primitive> = InstanceType<typeof TableDatePicker<T, RowIdType>>;
25
26
  export default TableDatePicker;
@@ -1,4 +1,13 @@
1
1
  import type { DateTableCell } from '../../../Types/Columns/DateTableCell.js';
2
+ /**
3
+ * Props for {@link TableDatePicker}. The cell renders an inline localised
4
+ * date / date-time and opens a `DateModal` when the row enters edit mode.
5
+ *
6
+ * The `never` / `unknown` generics on `DateTableCell` are placeholders for
7
+ * the filter-value and options-value types; tightening them is deferred to
8
+ * the cross-cutting RowGenericThreading + DateInputDef.value follow-up.
9
+ */
2
10
  export interface TableDatePickerProps<T extends object> {
11
+ /** The date cell to render. */
3
12
  cell: DateTableCell<T, never, unknown>;
4
13
  }