@lavalogic/scoria 0.36.0 → 0.37.1

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 (552) 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 +437 -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 +133 -26
  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 +46 -23
  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.d.ts +2 -2
  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 +5 -3
  227. package/dist/Components/Table/Headers/HighlightAllHeader.svelte.d.ts +12 -11
  228. package/dist/Components/Table/Headers/SelectAllHeader.svelte +5 -3
  229. package/dist/Components/Table/Headers/SelectAllHeader.svelte.d.ts +12 -11
  230. package/dist/Components/Table/Headers/TableHead.svelte +340 -200
  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 +108 -50
  235. package/dist/Components/Table/Misc/ColumnPanel.svelte.d.ts +12 -11
  236. package/dist/Components/Table/Misc/ColumnPanelModal.svelte +20 -7
  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 +30 -41
  240. package/dist/Components/Table/Misc/FilterInput.svelte.d.ts +12 -11
  241. package/dist/Components/Table/Misc/FilterPanel.svelte +387 -29
  242. package/dist/Components/Table/Misc/FilterPanel.svelte.d.ts +12 -11
  243. package/dist/Components/Table/Misc/FilterPanelModal.svelte +4 -51
  244. package/dist/Components/Table/Misc/FilterPanelModal.svelte.d.ts +2 -23
  245. package/dist/Components/Table/Misc/SidePanel.svelte +12 -9
  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 +44 -35
  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 +17 -48
  254. package/dist/Components/Table/Misc/TableHorizontalBar.svelte.d.ts +12 -11
  255. package/dist/Components/Table/Misc/TableSidebar.svelte +28 -47
  256. package/dist/Components/Table/Misc/TableSidebar.svelte.d.ts +12 -11
  257. package/dist/Components/Table/Misc/ToolboxPanel.svelte +121 -55
  258. package/dist/Components/Table/Misc/ToolboxPanel.svelte.d.ts +12 -11
  259. package/dist/Components/Table/Misc/ToolboxPanelModal.svelte +31 -24
  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 +85 -41
  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 +24 -0
  271. package/dist/Components/Table/SubApis.svelte.js +380 -0
  272. package/dist/Components/Table/Table.svelte +345 -172
  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 +30 -9
  306. package/dist/Components/Table/Types/Columns/Definitions/Display/AbstractDisplayDef.svelte.js +14 -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 +580 -58
  351. package/dist/Components/Table/Types/Context/TableContext.svelte.js +984 -1278
  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 +244 -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 +40 -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 +190 -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 +270 -0
  431. package/dist/Components/TextArea.svelte +37 -18
  432. package/dist/Components/TextAreaProps.d.ts +37 -0
  433. package/dist/Components/TextInput.svelte +41 -22
  434. package/dist/Components/TextInputProps.d.ts +58 -1
  435. package/dist/Components/ThreeStateRadio.svelte +61 -64
  436. package/dist/Components/ThreeStateRadioProps.d.ts +29 -1
  437. package/dist/Components/Touch/BoolCard.svelte +8 -15
  438. package/dist/Components/Touch/BoolCard.svelte.d.ts +1 -10
  439. package/dist/Components/Touch/BoolCardProps.d.ts +21 -0
  440. package/dist/Components/Touch/BoolCardProps.js +1 -0
  441. package/dist/Components/Touch/DateModal.svelte +17 -25
  442. package/dist/Components/Touch/DateModal.svelte.d.ts +1 -17
  443. package/dist/Components/Touch/DateModalProps.d.ts +36 -0
  444. package/dist/Components/Touch/DateModalProps.js +1 -0
  445. package/dist/Components/Touch/EditCard.svelte +10 -3
  446. package/dist/Components/Touch/EditCardProps.d.ts +21 -0
  447. package/dist/Components/Touch/InfoCard.svelte +14 -7
  448. package/dist/Components/Touch/InfoCardProps.d.ts +9 -0
  449. package/dist/Components/Touch/InfoTextCard.svelte +9 -2
  450. package/dist/Components/Touch/InfoTextCardProps.d.ts +8 -0
  451. package/dist/Components/Touch/ModalExplanation.svelte +9 -12
  452. package/dist/Components/Touch/ModalExplanation.svelte.d.ts +1 -6
  453. package/dist/Components/Touch/ModalExplanationProps.d.ts +22 -0
  454. package/dist/Components/Touch/ModalExplanationProps.js +1 -0
  455. package/dist/Components/Touch/NumberKeyboard.svelte +62 -105
  456. package/dist/Components/Touch/NumberKeyboardProps.d.ts +19 -0
  457. package/dist/Components/Touch/NumberModal.svelte +16 -6
  458. package/dist/Components/Touch/NumberModalProps.d.ts +23 -1
  459. package/dist/Components/Touch/PlusMinusCard.svelte +12 -16
  460. package/dist/Components/Touch/PlusMinusCard.svelte.d.ts +1 -6
  461. package/dist/Components/Touch/PlusMinusCardProps.d.ts +18 -0
  462. package/dist/Components/Touch/PlusMinusCardProps.js +1 -0
  463. package/dist/Components/Touch/SelectModal.svelte +33 -15
  464. package/dist/Components/Touch/SelectModalProps.d.ts +22 -1
  465. package/dist/Components/Touch/SummaryCard.svelte +56 -14
  466. package/dist/Components/Touch/SummaryCardProps.d.ts +16 -3
  467. package/dist/Components/Touch/TextAreaModal.svelte +18 -9
  468. package/dist/Components/Touch/TextAreaModalProps.d.ts +21 -0
  469. package/dist/Components/Touch/TextModal.svelte +15 -32
  470. package/dist/Components/Touch/TextModalProps.d.ts +28 -1
  471. package/dist/Components/Touch/TouchCard.svelte +9 -47
  472. package/dist/Components/Touch/TouchCardProps.d.ts +21 -0
  473. package/dist/Components/Touch/TouchModal.svelte +105 -99
  474. package/dist/Components/Touch/TouchModalProps.d.ts +35 -1
  475. package/dist/Components/Touch/UtilityButton.svelte +36 -18
  476. package/dist/Components/Touch/UtilityButtonProps.d.ts +16 -0
  477. package/dist/Components/VerticalTabGroup.svelte +18 -40
  478. package/dist/Components/VerticalTabGroupButton.svelte +11 -50
  479. package/dist/Components/VerticalTabGroupProps.d.ts +15 -2
  480. package/dist/Contexts/AlertContext.svelte.d.ts +92 -8
  481. package/dist/Contexts/AlertContext.svelte.js +69 -6
  482. package/dist/Contexts/ContextMenuContext.svelte.d.ts +54 -8
  483. package/dist/Contexts/ContextMenuContext.svelte.js +48 -2
  484. package/dist/Contexts/TestContext.svelte.d.ts +27 -1
  485. package/dist/Contexts/TestContext.svelte.js +29 -1
  486. package/dist/Contexts/ToastContext.svelte.d.ts +29 -1
  487. package/dist/Contexts/ToastContext.svelte.js +93 -24
  488. package/dist/Contexts/TooltipContext.svelte.d.ts +68 -1
  489. package/dist/Contexts/TooltipContext.svelte.js +70 -7
  490. package/dist/Contexts/UntypedInputContext.svelte.d.ts +54 -5
  491. package/dist/Contexts/UntypedInputContext.svelte.js +87 -34
  492. package/dist/Delay/Delay.js +1 -1
  493. package/dist/Helpers/AsyncFlag.svelte.d.ts +39 -0
  494. package/dist/Helpers/AsyncFlag.svelte.js +72 -0
  495. package/dist/Helpers/Datamatrix.d.ts +10 -1
  496. package/dist/Helpers/Datamatrix.js +290 -1
  497. package/dist/Helpers/Helpers.svelte.d.ts +252 -18
  498. package/dist/Helpers/Helpers.svelte.js +271 -75
  499. package/dist/Helpers/INamed.d.ts +6 -0
  500. package/dist/Helpers/Storage.d.ts +67 -0
  501. package/dist/Helpers/Storage.js +138 -0
  502. package/dist/Helpers/dropdownPortal.d.ts +52 -0
  503. package/dist/Helpers/dropdownPortal.js +232 -0
  504. package/dist/Helpers/dropdownPortal.svelte.d.ts +2 -0
  505. package/dist/Helpers/dropdownPortal.svelte.js +5 -0
  506. package/dist/Helpers/memoiseByRow.d.ts +45 -0
  507. package/dist/Helpers/memoiseByRow.js +78 -0
  508. package/dist/Helpers/prefersReducedMotion.svelte.d.ts +27 -0
  509. package/dist/Helpers/prefersReducedMotion.svelte.js +18 -0
  510. package/dist/Helpers/useTooltip.svelte.d.ts +53 -0
  511. package/dist/Helpers/useTooltip.svelte.js +62 -0
  512. package/dist/Types/Examples/ExampleModal.svelte +12 -11
  513. package/dist/Types/Examples/ExampleModal.svelte.d.ts +2 -2
  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/_mixins.scss +451 -167
  547. package/dist/scss/_motion.scss +57 -0
  548. package/dist/scss/_sizing.scss +16 -0
  549. package/dist/scss/colours.js +2 -2
  550. package/dist/scss/sizing.d.ts +9 -0
  551. package/dist/scss/sizing.js +10 -1
  552. package/package.json +35 -31
@@ -4,72 +4,33 @@
4
4
  lang="ts"
5
5
  generics="Args"
6
6
  >
7
- import { devCatch } from '../Helpers/Helpers.svelte.js';
7
+ import { useAsyncFlag } from '../Helpers/AsyncFlag.svelte.js';
8
8
  import { Colour } from '../scss/colours.js';
9
9
  import { Size } from '../Types/Internal/Size.js';
10
10
  import Icon from './Icon.svelte';
11
11
  import type { TabGroupButtonProps } from './TabGroupButtonProps.js';
12
12
 
13
- let { option, selected }: TabGroupButtonProps<Args> = $props();
13
+ const { option, selected }: TabGroupButtonProps<Args> = $props();
14
14
 
15
- let disabled = $state(true);
16
- let visible = $state(true);
17
- let isValid = $state(true);
18
-
19
- $effect(() => {
20
- if (typeof option.isValid === 'boolean') {
21
- isValid = option.isValid;
22
- } else {
23
- option.isValid
24
- ?.then((v) => {
25
- isValid = v;
26
- })
27
- .catch(devCatch);
28
- }
29
- });
30
- $effect(() => {
31
- if (typeof option.disabled === 'boolean') {
32
- disabled = option.disabled;
33
- } else if (option.disabled == undefined) {
34
- disabled = false;
35
- } else {
36
- option.disabled
37
- .then((v) => {
38
- disabled = v;
39
- })
40
- .catch(devCatch);
41
- }
42
- });
43
-
44
- $effect(() => {
45
- if (typeof option.visible === 'boolean') {
46
- visible = option.visible;
47
- } else if (option.visible == undefined) {
48
- visible = true;
49
- } else {
50
- option.visible
51
- .then((v) => {
52
- visible = v;
53
- })
54
- .catch(devCatch);
55
- }
56
- });
15
+ const isValid = useAsyncFlag(() => option.isValid, true);
16
+ const disabled = useAsyncFlag(() => option.disabled, false);
17
+ const visible = useAsyncFlag(() => option.visible, true);
57
18
  </script>
58
19
 
59
20
  <button
60
21
  class:selected
61
- {disabled}
22
+ disabled={disabled.value}
62
23
  onclick={() => {
63
24
  option.onclick();
64
25
  }}
65
26
  type="button"
66
27
  class="tab"
67
- class:invalid={!isValid}
68
- class:hidden={!visible}
28
+ class:invalid={!isValid.value}
29
+ class:hidden={!visible.value}
69
30
  >
70
31
  <div
71
32
  class="bordered"
72
- class:invalid={!isValid}
33
+ class:invalid={!isValid.value}
73
34
  >
74
35
  {#if option.iconLeft}
75
36
  <Icon
@@ -78,7 +39,7 @@
78
39
  />
79
40
  {/if}
80
41
  {option.label}
81
- {#if !isValid}
42
+ {#if !isValid.value}
82
43
  <Icon
83
44
  name="error"
84
45
  colour={Colour['$error-border']}
@@ -123,7 +84,7 @@
123
84
  .tab .bordered {
124
85
  border-radius: 4px;
125
86
  padding: 0.5rem 0.75rem;
126
- margin-bottom: 0.25rem;
87
+ margin-bottom: 0.375rem;
127
88
  transition: border-color ease-out 0.15s 0s, background-color ease-out 0.15s 0s, color ease-out 0.15s 0s, fill ease-out 0.15s 0s;
128
89
  white-space: nowrap;
129
90
  display: flex;
@@ -1,10 +1,23 @@
1
+ import type { ScoriaStorageKey } from '../Types/Internal/Misc.js';
1
2
  import type { TabOption } from '../Types/Internal/TabOption.js';
3
+ /**
4
+ * Props for VerticalTabGroup, the top-aligned tab strip with content
5
+ * pane below. Supports sessionStorage-backed history when `name` is set.
6
+ */
2
7
  export interface VerticalTabGroupProps<CommonDenominator> {
3
- name?: string;
4
- tabs: Array<TabOption<CommonDenominator>>;
8
+ /** When set, the last selected tab is persisted under
9
+ * `scoria-vertical-tab-group:${name}:active-tab` in sessionStorage. */
10
+ name?: ScoriaStorageKey;
11
+ /** The tabs to render. Keyed by `option.label`. */
12
+ tabs: ReadonlyArray<TabOption<CommonDenominator>>;
13
+ /** Currently selected tab. */
5
14
  selected?: TabOption<CommonDenominator>;
15
+ /** Inline style passthrough; consider `style:` directives at call site instead. */
6
16
  style?: string;
17
+ /** Disable internal scroll containers. */
7
18
  noscroll?: boolean;
19
+ /** Empty-state message shown when no tab is selected. */
8
20
  noTabMessage?: string;
21
+ /** Suppress on-mount history restore even when `name` is set. */
9
22
  nohistory?: boolean;
10
23
  }
@@ -1,51 +1,135 @@
1
+ /**
2
+ * Application context driving the global `AlertModal` host.
3
+ *
4
+ * The class exposes two public entry points - {@link AlertContext.alert}
5
+ * and {@link AlertContext.prompt} - each of which configures the modal
6
+ * labels, body and callbacks then flips `showModal` to `true`. The
7
+ * visual host (`Components/Contexts/AlertModal.svelte`, mounted by
8
+ * `Components/Base/ContextWrapper.svelte`) renders the modal and
9
+ * wires the three button callbacks (`onYes`, `onNo`, `onOther`).
10
+ *
11
+ * Conforms to the canonical scoria context pattern:
12
+ * - `static readonly identifier = Symbol()` registered through
13
+ * `setContext`/`getContext`.
14
+ * - Private runes-backed fields (`_x = $state(...)`) exposed via
15
+ * getter / private setter pairs.
16
+ *
17
+ * Note: `onYes`/`onNo`/`onOther` are public arrow-typed class fields.
18
+ * The arrows re-bind `this`, so they may safely reassign
19
+ * `this.showModal = false` via the private setter even when invoked
20
+ * detached from the instance (e.g. as event handlers).
21
+ */
1
22
  export declare class AlertContext {
23
+ /** Stable lookup symbol used by `getContext`/`setContext`. */
2
24
  static readonly identifier: unique symbol;
3
25
  private _header;
26
+ /** Modal header text. Defaults to `'Confirmation'`. */
4
27
  get header(): string;
5
28
  private set header(value);
6
29
  private _body;
30
+ /** Modal body text. Set by {@link AlertContext.alert} / {@link AlertContext.prompt}. */
7
31
  get body(): string;
8
32
  private set body(value);
9
33
  private _footer;
34
+ /** Optional modal footer. `null` hides the footer slot. */
10
35
  get footer(): string | null;
11
36
  private set footer(value);
12
37
  private _yesLabel;
38
+ /** Confirm-button label. Default is `'Yes'` for prompts, `'Okay'` for alerts. */
13
39
  get yesLabel(): string;
14
40
  private set yesLabel(value);
15
41
  private _noLabel;
42
+ /** Cancel-button label. `null` hides the button (alert-only mode). */
16
43
  get noLabel(): string | null;
17
44
  private set noLabel(value);
18
45
  private _otherLabel;
46
+ /** Tertiary-button label. `null` hides the button. */
19
47
  get otherLabel(): string | null;
20
48
  private set otherLabel(value);
21
49
  private _showModal;
50
+ /** Whether the modal is currently visible. */
22
51
  get showModal(): boolean;
23
52
  private set showModal(value);
24
53
  private _mandatory;
54
+ /**
55
+ * If `true`, the modal cannot be dismissed via Escape or
56
+ * background click. The host must reply through one of the
57
+ * configured buttons.
58
+ */
25
59
  get mandatory(): boolean;
26
60
  private set mandatory(value);
27
61
  private _onYes;
62
+ /**
63
+ * Click handler for the confirm button. Closes the modal, invokes
64
+ * the consumer-supplied callback if any, then clears the stored
65
+ * callbacks so the closures (and anything they captured) can be
66
+ * garbage-collected. Async consumer callbacks are awaited
67
+ * implicitly via `void`.
68
+ */
28
69
  onYes: () => void;
29
70
  private _onNo;
71
+ /** Click handler for the cancel button. See {@link AlertContext.onYes}. */
30
72
  onNo: () => void;
31
73
  private _onOther;
74
+ /** Click handler for the tertiary button. See {@link AlertContext.onYes}. */
32
75
  onOther: () => void;
33
76
  private resetState;
34
- alert: (body: string, props?: IAlertProps) => void;
35
- prompt: (body: string, props: IPromptProps) => void;
77
+ /**
78
+ * Shows an alert modal (single confirm button). Resets all prior
79
+ * state, then applies the supplied {@link AlertProps}.
80
+ */
81
+ alert: (body: string, props?: AlertProps) => void;
82
+ /**
83
+ * Shows a prompt modal (confirm + cancel + optional tertiary).
84
+ * Resets all prior state, then applies the supplied
85
+ * {@link PromptProps}.
86
+ */
87
+ prompt: (body: string, props: PromptProps) => void;
36
88
  }
37
- export interface IAlertProps {
89
+ /**
90
+ * Optional configuration for {@link AlertContext.alert}.
91
+ */
92
+ export interface AlertProps {
93
+ /** Modal header text. Defaults to `'Confirmation'` if omitted. */
38
94
  header?: string;
95
+ /** Optional modal footer. */
39
96
  footer?: string;
40
- onYes?: () => void;
97
+ /** Callback invoked when the user clicks the confirm button. */
98
+ onYes?: () => void | Promise<void>;
99
+ /** Confirm-button label. Defaults to `'Okay'` if omitted. */
41
100
  yesLabel?: string;
101
+ /** If `true`, the modal cannot be dismissed without clicking a button. */
42
102
  mandatory?: boolean;
43
103
  }
44
- export interface IPromptProps extends IAlertProps {
45
- onYes: () => void;
46
- onNo?: () => void;
47
- onOther?: () => void;
104
+ /**
105
+ * Required configuration for {@link AlertContext.prompt}. `onYes`
106
+ * is required (because a prompt without an explicit confirm path is
107
+ * meaningless); the cancel and tertiary buttons are independently
108
+ * optional.
109
+ */
110
+ export interface PromptProps extends AlertProps {
111
+ /** Required confirm callback. */
112
+ onYes: () => void | Promise<void>;
113
+ /** Optional cancel callback. */
114
+ onNo?: () => void | Promise<void>;
115
+ /** Optional tertiary callback. */
116
+ onOther?: () => void | Promise<void>;
117
+ /** Cancel-button label. Defaults to `'No'` if omitted. */
48
118
  noLabel?: string;
119
+ /** Tertiary-button label. The button is hidden when omitted. */
49
120
  otherLabel?: string;
121
+ /** If `true`, the modal cannot be dismissed without clicking a button. */
50
122
  mandatory?: boolean;
51
123
  }
124
+ /**
125
+ * Legacy `I`-prefixed alias for {@link AlertProps}. Prefer
126
+ * `AlertProps` in new code; this re-export is kept for backwards
127
+ * compatibility with existing consumers.
128
+ */
129
+ export type IAlertProps = AlertProps;
130
+ /**
131
+ * Legacy `I`-prefixed alias for {@link PromptProps}. Prefer
132
+ * `PromptProps` in new code; this re-export is kept for backwards
133
+ * compatibility with existing consumers.
134
+ */
135
+ export type IPromptProps = PromptProps;
@@ -1,6 +1,29 @@
1
+ /**
2
+ * Application context driving the global `AlertModal` host.
3
+ *
4
+ * The class exposes two public entry points - {@link AlertContext.alert}
5
+ * and {@link AlertContext.prompt} - each of which configures the modal
6
+ * labels, body and callbacks then flips `showModal` to `true`. The
7
+ * visual host (`Components/Contexts/AlertModal.svelte`, mounted by
8
+ * `Components/Base/ContextWrapper.svelte`) renders the modal and
9
+ * wires the three button callbacks (`onYes`, `onNo`, `onOther`).
10
+ *
11
+ * Conforms to the canonical scoria context pattern:
12
+ * - `static readonly identifier = Symbol()` registered through
13
+ * `setContext`/`getContext`.
14
+ * - Private runes-backed fields (`_x = $state(...)`) exposed via
15
+ * getter / private setter pairs.
16
+ *
17
+ * Note: `onYes`/`onNo`/`onOther` are public arrow-typed class fields.
18
+ * The arrows re-bind `this`, so they may safely reassign
19
+ * `this.showModal = false` via the private setter even when invoked
20
+ * detached from the instance (e.g. as event handlers).
21
+ */
1
22
  export class AlertContext {
23
+ /** Stable lookup symbol used by `getContext`/`setContext`. */
2
24
  static identifier = Symbol();
3
25
  _header = $state('Confirmation');
26
+ /** Modal header text. Defaults to `'Confirmation'`. */
4
27
  get header() {
5
28
  return this._header;
6
29
  }
@@ -8,6 +31,7 @@ export class AlertContext {
8
31
  this._header = v;
9
32
  }
10
33
  _body = $state('');
34
+ /** Modal body text. Set by {@link AlertContext.alert} / {@link AlertContext.prompt}. */
11
35
  get body() {
12
36
  return this._body;
13
37
  }
@@ -15,6 +39,7 @@ export class AlertContext {
15
39
  this._body = v;
16
40
  }
17
41
  _footer = $state(null);
42
+ /** Optional modal footer. `null` hides the footer slot. */
18
43
  get footer() {
19
44
  return this._footer;
20
45
  }
@@ -22,6 +47,7 @@ export class AlertContext {
22
47
  this._footer = v;
23
48
  }
24
49
  _yesLabel = $state('Yes');
50
+ /** Confirm-button label. Default is `'Yes'` for prompts, `'Okay'` for alerts. */
25
51
  get yesLabel() {
26
52
  return this._yesLabel;
27
53
  }
@@ -29,6 +55,7 @@ export class AlertContext {
29
55
  this._yesLabel = v;
30
56
  }
31
57
  _noLabel = $state(null);
58
+ /** Cancel-button label. `null` hides the button (alert-only mode). */
32
59
  get noLabel() {
33
60
  return this._noLabel;
34
61
  }
@@ -36,6 +63,7 @@ export class AlertContext {
36
63
  this._noLabel = v;
37
64
  }
38
65
  _otherLabel = $state(null);
66
+ /** Tertiary-button label. `null` hides the button. */
39
67
  get otherLabel() {
40
68
  return this._otherLabel;
41
69
  }
@@ -43,6 +71,7 @@ export class AlertContext {
43
71
  this._otherLabel = v;
44
72
  }
45
73
  _showModal = $state(false);
74
+ /** Whether the modal is currently visible. */
46
75
  get showModal() {
47
76
  return this._showModal;
48
77
  }
@@ -50,6 +79,11 @@ export class AlertContext {
50
79
  this._showModal = v;
51
80
  }
52
81
  _mandatory = $state(false);
82
+ /**
83
+ * If `true`, the modal cannot be dismissed via Escape or
84
+ * background click. The host must reply through one of the
85
+ * configured buttons.
86
+ */
53
87
  get mandatory() {
54
88
  return this._mandatory;
55
89
  }
@@ -57,19 +91,40 @@ export class AlertContext {
57
91
  this._mandatory = v;
58
92
  }
59
93
  _onYes = undefined;
94
+ /**
95
+ * Click handler for the confirm button. Closes the modal, invokes
96
+ * the consumer-supplied callback if any, then clears the stored
97
+ * callbacks so the closures (and anything they captured) can be
98
+ * garbage-collected. Async consumer callbacks are awaited
99
+ * implicitly via `void`.
100
+ */
60
101
  onYes = () => {
61
102
  this.showModal = false;
62
- this._onYes?.();
103
+ const cb = this._onYes;
104
+ this._onYes = undefined;
105
+ this._onNo = undefined;
106
+ this._onOther = undefined;
107
+ void cb?.();
63
108
  };
64
109
  _onNo = undefined;
110
+ /** Click handler for the cancel button. See {@link AlertContext.onYes}. */
65
111
  onNo = () => {
66
112
  this.showModal = false;
67
- this._onNo?.();
113
+ const cb = this._onNo;
114
+ this._onYes = undefined;
115
+ this._onNo = undefined;
116
+ this._onOther = undefined;
117
+ void cb?.();
68
118
  };
69
119
  _onOther = undefined;
120
+ /** Click handler for the tertiary button. See {@link AlertContext.onYes}. */
70
121
  onOther = () => {
71
122
  this.showModal = false;
72
- this._onOther?.();
123
+ const cb = this._onOther;
124
+ this._onYes = undefined;
125
+ this._onNo = undefined;
126
+ this._onOther = undefined;
127
+ void cb?.();
73
128
  };
74
129
  resetState = () => {
75
130
  this._body = '';
@@ -82,8 +137,11 @@ export class AlertContext {
82
137
  this._onNo = undefined;
83
138
  this._onOther = undefined;
84
139
  };
140
+ /**
141
+ * Shows an alert modal (single confirm button). Resets all prior
142
+ * state, then applies the supplied {@link AlertProps}.
143
+ */
85
144
  alert = (body, props) => {
86
- // debugger;
87
145
  this.resetState();
88
146
  this._body = body;
89
147
  if (props) {
@@ -93,7 +151,7 @@ export class AlertContext {
93
151
  if (props.footer) {
94
152
  this._footer = props.footer;
95
153
  }
96
- this._yesLabel = props.yesLabel || 'Okay';
154
+ this._yesLabel = props.yesLabel ?? 'Okay';
97
155
  this._onYes = props.onYes;
98
156
  }
99
157
  else {
@@ -102,6 +160,11 @@ export class AlertContext {
102
160
  this.mandatory = props?.mandatory ?? false;
103
161
  this.showModal = true;
104
162
  };
163
+ /**
164
+ * Shows a prompt modal (confirm + cancel + optional tertiary).
165
+ * Resets all prior state, then applies the supplied
166
+ * {@link PromptProps}.
167
+ */
105
168
  prompt = (body, props) => {
106
169
  this.resetState();
107
170
  this._body = body;
@@ -114,7 +177,7 @@ export class AlertContext {
114
177
  if (props.yesLabel) {
115
178
  this._yesLabel = props.yesLabel;
116
179
  }
117
- this._noLabel = props.noLabel || 'No';
180
+ this._noLabel = props.noLabel ?? 'No';
118
181
  if (props.otherLabel) {
119
182
  this._otherLabel = props.otherLabel;
120
183
  }
@@ -1,22 +1,68 @@
1
+ /**
2
+ * Application context driving the global `ContextMenu` host.
3
+ *
4
+ * The class exposes {@link ContextMenuContext.openContextMenu} and
5
+ * {@link ContextMenuContext.closeMenu} as the only public mutators.
6
+ * Position (`x`, `y`), `items`, and `showMenu` are read-only from
7
+ * outside the class to keep the open-flow centralised.
8
+ */
1
9
  export declare class ContextMenuContext {
10
+ /** Stable lookup symbol used by `getContext`/`setContext`. */
2
11
  static readonly identifier: unique symbol;
12
+ /**
13
+ * Monotonically increasing open-count used to bail out of stale
14
+ * {@link ContextMenuContext.openContextMenu} calls when the user
15
+ * opens a second menu before the first one's reopen-delay has
16
+ * elapsed.
17
+ */
18
+ private openVersion;
3
19
  private _x;
20
+ /** Menu x-coordinate in viewport-relative CSS pixels. */
4
21
  get x(): number;
5
- set x(v: number);
22
+ private set x(value);
6
23
  private _y;
24
+ /** Menu y-coordinate in viewport-relative CSS pixels. */
7
25
  get y(): number;
8
- set y(v: number);
26
+ private set y(value);
9
27
  private _items;
10
- get items(): Array<IContextMenuOption>;
11
- set items(v: Array<IContextMenuOption>);
28
+ /** The current menu items. Mutate only via {@link ContextMenuContext.openContextMenu}. */
29
+ get items(): ReadonlyArray<ContextMenuOption>;
30
+ private set items(value);
12
31
  private _showMenu;
32
+ /** Whether the menu is currently visible. */
13
33
  get showMenu(): boolean;
14
- set showMenu(v: boolean);
15
- readonly openContextMenu: (e: MouseEvent, options: Array<IContextMenuOption>) => Promise<void>;
34
+ private set showMenu(value);
35
+ /**
36
+ * Opens the context menu at the position of the supplied
37
+ * `MouseEvent` (`clientX`/`clientY`). If a menu is already
38
+ * visible, closes it, waits {@link REOPEN_DELAY_MS} for the
39
+ * close animation to play, then opens the new one.
40
+ *
41
+ * Concurrent calls are version-guarded: only the most recent
42
+ * call's open-state survives the post-await write phase.
43
+ */
44
+ readonly openContextMenu: (e: MouseEvent, options: Array<ContextMenuOption>) => Promise<void>;
45
+ /**
46
+ * Closes the menu and clears the item list. Increments the open
47
+ * version so any in-flight {@link ContextMenuContext.openContextMenu}
48
+ * call resolves to a no-op.
49
+ */
16
50
  closeMenu: () => void;
17
51
  }
18
- export interface IContextMenuOption {
19
- callback: () => void;
52
+ /**
53
+ * A single context-menu row.
54
+ */
55
+ export interface ContextMenuOption {
56
+ /** Click handler. May be async; the menu does not await the result. */
57
+ callback: () => void | Promise<void>;
58
+ /** Visible row label. */
20
59
  text: string;
60
+ /** When `true`, the row is shown greyed-out and ignores clicks. */
21
61
  disabled?: boolean;
22
62
  }
63
+ /**
64
+ * Legacy `I`-prefixed alias for {@link ContextMenuOption}. Prefer
65
+ * `ContextMenuOption` in new code; this re-export is kept for
66
+ * backwards compatibility with existing consumers.
67
+ */
68
+ export type IContextMenuOption = ContextMenuOption;
@@ -1,6 +1,30 @@
1
+ import { asyncSleep } from '../Helpers/Helpers.svelte.js';
2
+ /**
3
+ * Delay in milliseconds that {@link ContextMenuContext.openContextMenu}
4
+ * waits after closing a previous menu before opening the next one,
5
+ * giving the close animation time to complete.
6
+ */
7
+ const REOPEN_DELAY_MS = 100;
8
+ /**
9
+ * Application context driving the global `ContextMenu` host.
10
+ *
11
+ * The class exposes {@link ContextMenuContext.openContextMenu} and
12
+ * {@link ContextMenuContext.closeMenu} as the only public mutators.
13
+ * Position (`x`, `y`), `items`, and `showMenu` are read-only from
14
+ * outside the class to keep the open-flow centralised.
15
+ */
1
16
  export class ContextMenuContext {
17
+ /** Stable lookup symbol used by `getContext`/`setContext`. */
2
18
  static identifier = Symbol();
19
+ /**
20
+ * Monotonically increasing open-count used to bail out of stale
21
+ * {@link ContextMenuContext.openContextMenu} calls when the user
22
+ * opens a second menu before the first one's reopen-delay has
23
+ * elapsed.
24
+ */
25
+ openVersion = 0;
3
26
  _x = $state(0);
27
+ /** Menu x-coordinate in viewport-relative CSS pixels. */
4
28
  get x() {
5
29
  return this._x;
6
30
  }
@@ -8,6 +32,7 @@ export class ContextMenuContext {
8
32
  this._x = v;
9
33
  }
10
34
  _y = $state(0);
35
+ /** Menu y-coordinate in viewport-relative CSS pixels. */
11
36
  get y() {
12
37
  return this._y;
13
38
  }
@@ -15,30 +40,51 @@ export class ContextMenuContext {
15
40
  this._y = v;
16
41
  }
17
42
  _items = $state([]);
43
+ /** The current menu items. Mutate only via {@link ContextMenuContext.openContextMenu}. */
18
44
  get items() {
19
45
  return this._items;
20
46
  }
21
47
  set items(v) {
22
- this._items = v;
48
+ this._items = [...v];
23
49
  }
24
50
  _showMenu = $state(false);
51
+ /** Whether the menu is currently visible. */
25
52
  get showMenu() {
26
53
  return this._showMenu;
27
54
  }
28
55
  set showMenu(v) {
29
56
  this._showMenu = v;
30
57
  }
58
+ /**
59
+ * Opens the context menu at the position of the supplied
60
+ * `MouseEvent` (`clientX`/`clientY`). If a menu is already
61
+ * visible, closes it, waits {@link REOPEN_DELAY_MS} for the
62
+ * close animation to play, then opens the new one.
63
+ *
64
+ * Concurrent calls are version-guarded: only the most recent
65
+ * call's open-state survives the post-await write phase.
66
+ */
31
67
  openContextMenu = async (e, options) => {
68
+ const version = ++this.openVersion;
32
69
  if (this.showMenu) {
33
70
  this.closeMenu();
34
- await new Promise((res) => setTimeout(res, 100));
71
+ await asyncSleep(REOPEN_DELAY_MS);
72
+ if (version !== this.openVersion) {
73
+ return;
74
+ }
35
75
  }
36
76
  this.items = options;
37
77
  this.x = e.clientX;
38
78
  this.y = e.clientY;
39
79
  this.showMenu = true;
40
80
  };
81
+ /**
82
+ * Closes the menu and clears the item list. Increments the open
83
+ * version so any in-flight {@link ContextMenuContext.openContextMenu}
84
+ * call resolves to a no-op.
85
+ */
41
86
  closeMenu = () => {
87
+ this.openVersion++;
42
88
  this.showMenu = false;
43
89
  this.items = [];
44
90
  };
@@ -1,11 +1,37 @@
1
1
  import type { RefWrapper } from '../Types/Internal/RefWrapper.js';
2
+ /**
3
+ * Test-only fixture context demonstrating the `RefWrapper` +
4
+ * derived-effect pattern used elsewhere in scoria.
5
+ *
6
+ * Not part of the shipped public surface and not mounted by
7
+ * `ContextWrapper`. For a canonical context to copy from, see
8
+ * `AlertContext`, `ToastContext`, or `TooltipContext`.
9
+ *
10
+ * Non-canonical patterns intentionally present:
11
+ * - The `value2` field is initialised via `useTestEffect(value1)`
12
+ * which calls `$effect`. `$effect` requires an active effect
13
+ * scope. In real code, construct the context lazily inside the
14
+ * consuming component (or `$effect.root`).
15
+ * - The setters on `value1`/`value2` are public for test
16
+ * ergonomics. Real contexts keep their setters private.
17
+ */
2
18
  export declare class TestContext {
19
+ /** Stable lookup symbol used by `getContext`/`setContext`. */
3
20
  static readonly identifier: unique symbol;
4
21
  private _value1;
22
+ /** Test-driver-visible reactive cell. */
5
23
  get value1(): RefWrapper<number>;
6
24
  set value1(v: RefWrapper<number>);
7
25
  private _value2;
26
+ /** Derived counter; accumulates `value1` whenever it is divisible by three. */
8
27
  get value2(): RefWrapper<number>;
9
28
  set value2(v: RefWrapper<number>);
10
- useTestEffect(sourceValue: RefWrapper<number>): RefWrapper<number>;
29
+ constructor();
30
+ /**
31
+ * Returns a `RefWrapper<number>` that accumulates the input
32
+ * `RefWrapper`'s `value` whenever the input becomes divisible by
33
+ * three. `untrack` keeps the write off the reactive dependency
34
+ * graph so the effect does not self-trigger.
35
+ */
36
+ private useTestEffect;
11
37
  }