@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,140 +1,138 @@
1
- <svelte:options runes />
2
-
3
- <script module lang="ts">
4
- import { TooltipContext } from '../Contexts/TooltipContext.svelte.js';
5
- import { Delay } from '../Delay/Delay.js';
6
- import { passthrough } from '../Helpers/Helpers.svelte.js';
7
- import { Shape } from '../Types/Internal/Shape.js';
8
- import { Side } from '../Types/Internal/Side.js';
9
- import { Size } from '../Types/Internal/Size.js';
10
- import { ColourSet } from '../scss/colours.js';
11
- import { getContext } from 'svelte';
12
- import type { ActionProps } from './ActionProps.js';
13
- import Icon from './Icon.svelte';
14
-
15
- const paddings: Record<Shape, Record<Size, number>> = {
16
- [Shape.Rectangle]: {
17
- [Size.Tiny]: 0.125,
18
- [Size.Small]: 0.1875,
19
- [Size.MediumSmall]: 0.3125,
20
- [Size.Medium]: 0.375,
21
- [Size.MediumLarge]: 0.5,
22
- [Size.Large]: 0.625,
23
- [Size.XLarge]: 0.6875,
24
- [Size.DoubleXLarge]: 0.8125,
25
- [Size.TripleXLarge]: 0.875,
26
- [Size.FillWidth]: -1,
27
- [Size.FillHeight]: -1
28
- },
29
- [Shape.Circle]: {
30
- [Size.Tiny]: 0.1875,
31
- [Size.Small]: 0.5,
32
- [Size.MediumSmall]: 0.875,
33
- [Size.Medium]: 1.0625,
34
- [Size.MediumLarge]: 1.375,
35
- [Size.Large]: 1.75,
36
- [Size.XLarge]: 1.9375,
37
- [Size.DoubleXLarge]: 2.25,
38
- [Size.TripleXLarge]: 2.4375,
39
- [Size.FillWidth]: -1,
40
- [Size.FillHeight]: -1
41
- }
42
- };
43
- </script>
44
-
45
- <script lang="ts">
46
- const {
47
- icon,
48
- id,
49
- border = false,
50
- shape = Shape.Rectangle,
51
- label,
52
- colourSet = ColourSet.Secondary,
53
- size = Size.Medium,
54
- paddingSize,
55
- type = 'button',
56
- noTabIndex = false,
57
- disabled,
58
- backgroundColour,
59
- hoverBackgroundColour,
60
- 'data-type': dataType,
61
- onfocus,
62
- onblur,
63
- onclick,
64
- onkeydown: onkeydownProp,
65
- style = '',
66
- side
67
- }: ActionProps = $props();
68
-
69
- const iconSize: Size = $derived(icon.size ?? size);
70
-
71
- const pad: string = $derived.by(() => {
72
- const padSize = paddingSize ?? size;
73
- return padSize === Size.FillWidth ? '' : `${paddings[shape][padSize]}rem`;
74
- });
75
-
76
- function onkeydown(e: KeyboardEvent) {
77
- passthrough(e);
78
-
79
- if (document.activeElement === e.target) {
80
- onkeydownProp?.(e);
81
- }
82
- }
83
-
84
- const tooltipContext = getContext<TooltipContext>(TooltipContext.identifier);
85
- // const toastContext = getContext<ToastContext>(ToastContext.identifier);
86
- </script>
87
-
88
- <button
89
- {id}
90
- onmouseenter={(e) => {
91
- if (label) {
92
- // TODO test currentTarget here
93
- const rect = (e.target as HTMLButtonElement).getBoundingClientRect();
94
- tooltipContext.showTooltip({
95
- text: label,
96
- arrow: side ?? Side.Left,
97
- delay: Delay.Default,
98
- rect
99
- });
100
- }
101
- }}
102
- onmouseleave={() => {
103
- if (label) {
104
- tooltipContext.hideTooltip(label);
105
- }
106
- }}
107
- tabindex={noTabIndex ? -1 : undefined}
108
- data-type={dataType}
109
- style="{pad ? `--pad: ${pad};` : ''} {backgroundColour
110
- ? `--background-colour: ${backgroundColour};`
111
- : ``} {hoverBackgroundColour
112
- ? `--hover-background-colour: ${hoverBackgroundColour};`
113
- : ``}{style}"
114
- class:border
115
- class:circular={shape === Shape.Circle}
116
- class:primary={colourSet === ColourSet.Primary}
117
- class:secondary={colourSet === ColourSet.Secondary}
118
- class:auxiliary={colourSet === ColourSet.Auxiliary}
119
- class:info={colourSet === ColourSet.Info}
120
- class:error={colourSet === ColourSet.Error}
121
- class:fill-width={size === Size.FillWidth}
122
- class:fill-height={size === Size.FillHeight}
123
- {type}
124
- {disabled}
125
- {onfocus}
126
- {onblur}
127
- {onkeydown}
128
- onclick={(e) => {
129
- // toastContext.toast("clicked action")
130
- if (label) {
131
- tooltipContext.hideTooltip(label);
132
- }
133
- onclick?.(e);
134
- }}
135
- aria-label={label}><Icon {...icon} size={iconSize} /></button
136
- >
137
-
1
+ <svelte:options runes />
2
+
3
+ <script
4
+ module
5
+ lang="ts"
6
+ >
7
+ import { passthrough } from '../Helpers/Helpers.svelte.js';
8
+ import { useTooltip } from '../Helpers/useTooltip.svelte.js';
9
+ import { Shape } from '../Types/Internal/Shape.js';
10
+ import { Side } from '../Types/Internal/Side.js';
11
+ import { Size } from '../Types/Internal/Size.js';
12
+ import { ColourSet } from '../scss/colours.js';
13
+ import type { ActionProps } from './ActionProps.js';
14
+ import Icon from './Icon.svelte';
15
+
16
+ const paddings: Record<Shape, Record<Size, number>> = {
17
+ [Shape.Rectangle]: {
18
+ [Size.Tiny]: 0.125,
19
+ [Size.Small]: 0.1875,
20
+ [Size.MediumSmall]: 0.3125,
21
+ [Size.Medium]: 0.375,
22
+ [Size.MediumLarge]: 0.5,
23
+ [Size.Large]: 0.625,
24
+ [Size.XLarge]: 0.6875,
25
+ [Size.DoubleXLarge]: 0.8125,
26
+ [Size.TripleXLarge]: 0.875,
27
+ [Size.FillWidth]: -1,
28
+ [Size.FillHeight]: -1,
29
+ },
30
+ [Shape.Circle]: {
31
+ [Size.Tiny]: 0.1875,
32
+ [Size.Small]: 0.5,
33
+ [Size.MediumSmall]: 0.875,
34
+ [Size.Medium]: 1.0625,
35
+ [Size.MediumLarge]: 1.375,
36
+ [Size.Large]: 1.75,
37
+ [Size.XLarge]: 1.9375,
38
+ [Size.DoubleXLarge]: 2.25,
39
+ [Size.TripleXLarge]: 2.4375,
40
+ [Size.FillWidth]: -1,
41
+ [Size.FillHeight]: -1,
42
+ },
43
+ };
44
+ </script>
45
+
46
+ <script lang="ts">
47
+ const {
48
+ icon,
49
+ id,
50
+ border = false,
51
+ shape = Shape.Rectangle,
52
+ label,
53
+ colourSet = ColourSet.Secondary,
54
+ size = Size.Medium,
55
+ paddingSize,
56
+ type = 'button',
57
+ noTabIndex = false,
58
+ disabled,
59
+ backgroundColour,
60
+ hoverBackgroundColour,
61
+ 'data-type': dataType,
62
+ onfocus,
63
+ onblur,
64
+ onclick,
65
+ onkeydown: onkeydownProp,
66
+ style = '',
67
+ side,
68
+ 'aria-expanded': ariaExpanded,
69
+ 'aria-controls': ariaControls,
70
+ }: ActionProps = $props();
71
+
72
+ const iconSize: Size = $derived(icon.size ?? size);
73
+
74
+ const pad: string = $derived.by(() => {
75
+ const padSize = paddingSize ?? size;
76
+ return padSize === Size.FillWidth ? '' : `${paddings[shape][padSize]}rem`;
77
+ });
78
+
79
+ function onkeydown(e: KeyboardEvent) {
80
+ passthrough(e);
81
+
82
+ if (document.activeElement === e.target) {
83
+ onkeydownProp?.(e);
84
+ }
85
+ }
86
+
87
+ // Shared tooltip lifecycle: hover handlers plus unmount-time teardown.
88
+ // Action lives inside short-lived hosts (table rows, modal panels,
89
+ // accordion content) so the cleanup is load-bearing - without it,
90
+ // churn leaves the global tooltip painting against a node that no
91
+ // longer exists.
92
+ const tt = useTooltip({
93
+ text: () => label,
94
+ arrow: () => side ?? Side.Left,
95
+ });
96
+ </script>
97
+
98
+ <button
99
+ {id}
100
+ onmouseenter={tt.onmouseenter}
101
+ onmouseleave={tt.onmouseleave}
102
+ tabindex={noTabIndex ? -1 : undefined}
103
+ data-type={dataType}
104
+ style="{pad ? `--pad: ${pad};` : ''} {backgroundColour
105
+ ? `--background-colour: ${backgroundColour};`
106
+ : ``} {hoverBackgroundColour
107
+ ? `--hover-background-colour: ${hoverBackgroundColour};`
108
+ : ``}{style}"
109
+ class:border
110
+ class:circular={shape === Shape.Circle}
111
+ class:primary={colourSet === ColourSet.Primary}
112
+ class:secondary={colourSet === ColourSet.Secondary}
113
+ class:auxiliary={colourSet === ColourSet.Auxiliary}
114
+ class:info={colourSet === ColourSet.Info}
115
+ class:error={colourSet === ColourSet.Error}
116
+ class:fill-width={size === Size.FillWidth}
117
+ class:fill-height={size === Size.FillHeight}
118
+ {type}
119
+ {disabled}
120
+ {onfocus}
121
+ {onblur}
122
+ {onkeydown}
123
+ onclick={(e) => {
124
+ tt.onclick();
125
+ onclick?.(e);
126
+ }}
127
+ aria-label={label}
128
+ aria-expanded={ariaExpanded}
129
+ aria-controls={ariaControls}
130
+ ><Icon
131
+ {...icon}
132
+ size={iconSize}
133
+ /></button
134
+ >
135
+
138
136
  <style>button {
139
137
  color: #3a4952;
140
138
  fill: #3a4952;
@@ -211,7 +209,7 @@ button.primary {
211
209
  --colour: #ffffff;
212
210
  }
213
211
  button.info {
214
- --colour: #c0c8ce;
212
+ --colour: #1f81a0;
215
213
  }
216
214
  button.error {
217
215
  --colour: #aa1414;
@@ -230,4 +228,4 @@ button.circular {
230
228
  button {
231
229
  padding: var(--pad);
232
230
  cursor: pointer;
233
- }</style>
231
+ }</style>
@@ -1,4 +1,4 @@
1
- import type { ColourSet } from '../scss/colours.js';
1
+ import type { Colour, ColourSet } from '../scss/colours.js';
2
2
  import type { Shape } from '../Types/Internal/Shape.js';
3
3
  import type { Side } from '../Types/Internal/Side.js';
4
4
  import type { Size } from '../Types/Internal/Size.js';
@@ -14,12 +14,32 @@ export interface ActionProps {
14
14
  type?: 'button' | 'submit';
15
15
  disabled?: boolean;
16
16
  noTabIndex?: boolean;
17
- backgroundColour?: string;
18
- hoverBackgroundColour?: string;
17
+ /**
18
+ * Background colour drawn from the `Colour` palette. Pass values
19
+ * like `Colour['$transparent-0']` or `Colour['$brand-dark']`.
20
+ *
21
+ * BREAKING (vNext): was `string`; now must be a `Colour` value.
22
+ * Migrate ad-hoc CSS colour strings (e.g. `'transparent'`) to the
23
+ * matching palette entry.
24
+ */
25
+ backgroundColour?: Colour | undefined;
26
+ /** Hover-state background colour; see {@link backgroundColour}. */
27
+ hoverBackgroundColour?: Colour | undefined;
19
28
  label?: string;
20
29
  ['data-type']?: string;
21
30
  style?: string;
22
31
  side?: Side;
32
+ /**
33
+ * Forwarded as `aria-expanded` on the rendered `<button>`. Use this
34
+ * when the Action toggles a disclosure (e.g. collapse / expand) so
35
+ * screen readers announce the current state.
36
+ */
37
+ ['aria-expanded']?: boolean;
38
+ /**
39
+ * Forwarded as `aria-controls` on the rendered `<button>`. Set to
40
+ * the id of the region this Action shows or hides.
41
+ */
42
+ ['aria-controls']?: string;
23
43
  onfocus?: (e: FocusEvent) => void;
24
44
  onblur?: (e: FocusEvent) => void;
25
45
  onclick?: (e: MouseEvent) => void;
@@ -1,127 +1,178 @@
1
- <svelte:options runes />
2
-
3
- <script lang="ts">
4
- import { AlertContext } from '../Contexts/AlertContext.svelte.js';
5
- import { UntypedInputContext } from '../Contexts/UntypedInputContext.svelte.js';
6
- import { DATAMatrix } from '../Helpers/Datamatrix.js';
7
- import { passthrough } from '../Helpers/Helpers.svelte.js';
8
- import { getContext, onMount } from 'svelte';
9
- import DataMatrixIcon from './DataMatrixIcon.svelte';
10
- import ModalExplanation from './Touch/ModalExplanation.svelte';
11
-
12
- let dialog: HTMLDialogElement | undefined;
13
-
14
- const alertContext = getContext<AlertContext>(AlertContext.identifier);
15
-
16
- $effect(() => {
17
- if (dialog) {
18
- if (alertContext.showModal) {
19
- dialog.showModal();
20
- } else {
21
- dialog.close();
22
- }
23
- }
24
- });
25
-
26
- const yesIcon = DATAMatrix('[YES]');
27
-
28
- const { registerListener } = getContext<UntypedInputContext>(UntypedInputContext.identifier);
29
- onMount(() =>
30
- registerListener((value) => {
31
- switch (value) {
32
- case '[YES]': {
33
- alertContext.onYes();
34
- break;
35
- }
36
- case '[NO]': {
37
- alertContext.onNo();
38
- break;
39
- }
40
- case '[OTHER]': {
41
- alertContext.onOther();
42
- break;
43
- }
44
- default: {
45
- console.warn(`Uncaught command \`${value}\``);
46
- }
47
- }
48
-
49
- return true;
50
- })
51
- );
52
- </script>
53
-
54
- <!-- onclose={() => (alertContext.showModal = false)} -->
55
- <dialog
56
- bind:this={dialog}
57
- onclose={() => {
58
- alertContext.onNo();
59
- }}
60
- onclick={(e) => {
61
- if (e.target === dialog) {
62
- if (!alertContext.mandatory) {
63
- dialog.close();
64
- }
65
- }
66
- }}
67
- >
68
- <div class="modal-root">
69
- <h3 class="modal-heading">{alertContext.header}</h3>
70
-
71
- <!-- <div class="modal-main pre-line">{$body}</div> -->
72
- <div class="modal-main pre-line"><ModalExplanation>{alertContext.body}</ModalExplanation></div>
73
-
74
- {#if alertContext.footer}
75
- <!-- TODO either remove this part and make buttons the "footer", or allow consumer to pass an element -->
76
- <span>{alertContext.footer}</span>
77
- {/if}
78
-
79
- <div class="modal-footer actions">
80
- <div class="button-barcode-set">
81
- <DataMatrixIcon
82
- title="Yes"
83
- icon={yesIcon}
84
- />
85
- <button
86
- type="submit"
87
- onkeydown={passthrough}
88
- onclick={alertContext.onYes}>{alertContext.yesLabel}</button
89
- >
90
- </div>
91
-
92
- {#if alertContext.otherLabel}
93
- {@const otherIcon = DATAMatrix('[OTHER]')}
94
- <div class="button-barcode-set">
95
- <DataMatrixIcon
96
- title="Other"
97
- icon={otherIcon}
98
- />
99
- <button
100
- type="button"
101
- onkeydown={passthrough}
102
- onclick={alertContext.onOther}>{alertContext.otherLabel}</button
103
- >
104
- </div>
105
- {/if}
106
-
107
- {#if alertContext.noLabel}
108
- {@const noIcon = DATAMatrix('[NO]')}
109
- <div class="button-barcode-set">
110
- <DataMatrixIcon
111
- title="No"
112
- icon={noIcon}
113
- />
114
- <button
115
- type="button"
116
- onkeydown={passthrough}
117
- onclick={alertContext.onNo}>{alertContext.noLabel}</button
118
- >
119
- </div>
120
- {/if}
121
- </div>
122
- </div>
123
- </dialog>
124
-
1
+ <svelte:options runes />
2
+
3
+ <script
4
+ lang="ts"
5
+ module
6
+ >
7
+ import { DATAMatrix } from '../Helpers/Datamatrix.js';
8
+
9
+ // Frozen const map of scanner shortcut codes recognised by AlertModal.
10
+ // Using `Object.values` to drive comparisons keeps the strings off the
11
+ // hot path and gives us a single place to register new codes.
12
+ const AlertShortcuts = Object.freeze({
13
+ yes: '[YES]',
14
+ no: '[NO]',
15
+ other: '[OTHER]',
16
+ } as const);
17
+ type AlertShortcut = (typeof AlertShortcuts)[keyof typeof AlertShortcuts];
18
+
19
+ // Barcode icons are derived from literal constants. Build them once at
20
+ // module load so they are not re-encoded on every render.
21
+ const yesIcon = DATAMatrix(AlertShortcuts.yes);
22
+ const noIcon = DATAMatrix(AlertShortcuts.no);
23
+ const otherIcon = DATAMatrix(AlertShortcuts.other);
24
+ </script>
25
+
26
+ <script lang="ts">
27
+ import { AlertContext } from '../Contexts/AlertContext.svelte.js';
28
+ import { ToastContext } from '../Contexts/ToastContext.svelte.js';
29
+ import { UntypedInputContext } from '../Contexts/UntypedInputContext.svelte.js';
30
+ import { passthrough } from '../Helpers/Helpers.svelte.js';
31
+ import { dev } from '$app/environment';
32
+ import { getContext, onMount } from 'svelte';
33
+ import DataMatrixIcon from './DataMatrixIcon.svelte';
34
+ import ModalExplanation from './Touch/ModalExplanation.svelte';
35
+
36
+ let dialog: HTMLDialogElement | undefined = $state();
37
+
38
+ const alertContext = getContext<AlertContext>(AlertContext.identifier);
39
+ const untypedInputContext = getContext<UntypedInputContext>(UntypedInputContext.identifier);
40
+ const toastContext = getContext<ToastContext>(ToastContext.identifier);
41
+
42
+ $effect(() => {
43
+ if (!dialog) {
44
+ return;
45
+ }
46
+ if (alertContext.showModal && !dialog.open) {
47
+ dialog.showModal();
48
+ } else if (!alertContext.showModal && dialog.open) {
49
+ dialog.close();
50
+ }
51
+ });
52
+
53
+ onMount(() => {
54
+ return untypedInputContext.registerListener((value) => {
55
+ // Only react when this AlertModal is the active dialog. This keeps
56
+ // stray scanner reads from being interpreted as a confirmation when
57
+ // the alert is not on-screen.
58
+ if (!alertContext.showModal) {
59
+ return false;
60
+ }
61
+
62
+ const matched = (Object.values(AlertShortcuts) as ReadonlyArray<AlertShortcut>).find(
63
+ (code) => code === value
64
+ );
65
+ switch (matched) {
66
+ case AlertShortcuts.yes: {
67
+ alertContext.onYes();
68
+ return true;
69
+ }
70
+ case AlertShortcuts.no: {
71
+ alertContext.onNo();
72
+ return true;
73
+ }
74
+ case AlertShortcuts.other: {
75
+ alertContext.onOther();
76
+ return true;
77
+ }
78
+ default: {
79
+ if (dev) {
80
+ console.warn(`Uncaught command \`${value}\``);
81
+ }
82
+ toastContext.toast(`Unrecognised input: ${value}`);
83
+ return false;
84
+ }
85
+ }
86
+ });
87
+ });
88
+ </script>
89
+
90
+ <dialog
91
+ bind:this={dialog}
92
+ aria-modal="true"
93
+ aria-labelledby="alert-modal-heading"
94
+ aria-describedby="alert-modal-body"
95
+ onclose={() => {
96
+ // Only auto-fire `onNo` if a "No" action was actually configured.
97
+ // Closing an alert (with no `noLabel`) should resolve cleanly without
98
+ // pretending the user rejected it.
99
+ if (alertContext.noLabel != null) {
100
+ alertContext.onNo();
101
+ } else {
102
+ alertContext.onYes();
103
+ }
104
+ }}
105
+ onclick={(e) => {
106
+ if (e.target === dialog) {
107
+ if (!alertContext.mandatory) {
108
+ dialog.close();
109
+ }
110
+ }
111
+ }}
112
+ >
113
+ <div class="modal-root">
114
+ <h3
115
+ id="alert-modal-heading"
116
+ class="modal-heading"
117
+ >
118
+ {alertContext.header}
119
+ </h3>
120
+
121
+ <div
122
+ id="alert-modal-body"
123
+ class="modal-main pre-line"
124
+ >
125
+ <ModalExplanation>{alertContext.body}</ModalExplanation>
126
+ </div>
127
+
128
+ {#if alertContext.footer}
129
+ <span>{alertContext.footer}</span>
130
+ {/if}
131
+
132
+ <div class="modal-footer actions">
133
+ <div class="button-barcode-set">
134
+ <DataMatrixIcon
135
+ title={alertContext.yesLabel}
136
+ icon={{ kind: 'svg', svg: yesIcon }}
137
+ />
138
+ <button
139
+ type="submit"
140
+ onkeydown={passthrough}
141
+ onclick={alertContext.onYes}>{alertContext.yesLabel}</button
142
+ >
143
+ </div>
144
+
145
+ {#if alertContext.otherLabel}
146
+ <div class="button-barcode-set">
147
+ <DataMatrixIcon
148
+ title={alertContext.otherLabel}
149
+ icon={{ kind: 'svg', svg: otherIcon }}
150
+ />
151
+ <button
152
+ type="button"
153
+ onkeydown={passthrough}
154
+ onclick={alertContext.onOther}>{alertContext.otherLabel}</button
155
+ >
156
+ </div>
157
+ {/if}
158
+
159
+ {#if alertContext.noLabel}
160
+ <div class="button-barcode-set">
161
+ <DataMatrixIcon
162
+ title={alertContext.noLabel}
163
+ icon={{ kind: 'svg', svg: noIcon }}
164
+ />
165
+ <button
166
+ type="button"
167
+ onkeydown={passthrough}
168
+ onclick={alertContext.onNo}>{alertContext.noLabel}</button
169
+ >
170
+ </div>
171
+ {/if}
172
+ </div>
173
+ </div>
174
+ </dialog>
175
+
125
176
  <style>dialog {
126
177
  overflow: clip;
127
178
  background-color: #e9ecf1;
@@ -392,4 +443,4 @@ div.button-barcode-set {
392
443
  display: flex;
393
444
  flex-flow: row nowrap;
394
445
  gap: 1.5rem;
395
- }</style>
446
+ }</style>