@lavalogic/scoria 0.11.14 → 0.12.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 (407) hide show
  1. package/dist/Components/Action.svelte +7 -32
  2. package/dist/Components/Action.svelte.d.ts +1 -27
  3. package/dist/Components/ActionProps.d.ts +27 -0
  4. package/dist/Components/ActionProps.js +1 -0
  5. package/dist/Components/AlertModal.svelte +7 -5
  6. package/dist/Components/Base/ContextWrapper.svelte +4 -9
  7. package/dist/Components/Base/ContextWrapper.svelte.d.ts +1 -5
  8. package/dist/Components/Base/ContextWrapperProps.d.ts +5 -0
  9. package/dist/Components/Base/ContextWrapperProps.js +1 -0
  10. package/dist/Components/Base/Pagination.svelte +22 -31
  11. package/dist/Components/Base/Pagination.svelte.d.ts +1 -12
  12. package/dist/Components/Base/PaginationProps.d.ts +12 -0
  13. package/dist/Components/Base/PaginationProps.js +1 -0
  14. package/dist/Components/BigRadioSet.svelte +4 -11
  15. package/dist/Components/BigRadioSet.svelte.d.ts +1 -6
  16. package/dist/Components/BigRadioSetProps.d.ts +6 -0
  17. package/dist/Components/BigRadioSetProps.js +1 -0
  18. package/dist/Components/Bubble.svelte +4 -21
  19. package/dist/Components/Bubble.svelte.d.ts +1 -18
  20. package/dist/Components/BubbleColour.d.ts +5 -0
  21. package/dist/Components/BubbleColour.js +1 -0
  22. package/dist/Components/BubbleProps.d.ts +14 -0
  23. package/dist/Components/BubbleProps.js +1 -0
  24. package/dist/Components/Button.svelte +21 -48
  25. package/dist/Components/Button.svelte.d.ts +1 -29
  26. package/dist/Components/ButtonProps.d.ts +29 -0
  27. package/dist/Components/ButtonProps.js +1 -0
  28. package/dist/Components/Checkbox.svelte +4 -21
  29. package/dist/Components/Checkbox.svelte.d.ts +2 -2
  30. package/dist/Components/CollapsibleCard.svelte +3 -15
  31. package/dist/Components/CollapsibleCard.svelte.d.ts +2 -10
  32. package/dist/Components/CollapsibleCardProps.d.ts +9 -0
  33. package/dist/Components/CollapsibleCardProps.js +1 -0
  34. package/dist/Components/Contexts/ContextMenu.svelte +14 -11
  35. package/dist/Components/Contexts/ContextMenuOption.svelte +2 -11
  36. package/dist/Components/Contexts/ContextMenuOption.svelte.d.ts +1 -7
  37. package/dist/Components/Contexts/ContextMenuOptionProps.d.ts +7 -0
  38. package/dist/Components/Contexts/ContextMenuOptionProps.js +1 -0
  39. package/dist/Components/Contexts/Toast.svelte +1 -6
  40. package/dist/Components/Contexts/Toast.svelte.d.ts +1 -5
  41. package/dist/Components/Contexts/ToastContainer.svelte +4 -1
  42. package/dist/Components/Contexts/ToastProps.d.ts +5 -0
  43. package/dist/Components/Contexts/ToastProps.js +1 -0
  44. package/dist/Components/Contexts/Tooltip.svelte +1 -4
  45. package/dist/Components/DataMatrixIcon.svelte +3 -11
  46. package/dist/Components/DataMatrixIcon.svelte.d.ts +1 -6
  47. package/dist/Components/DataMatrixIconProps.d.ts +6 -0
  48. package/dist/Components/DataMatrixIconProps.js +1 -0
  49. package/dist/Components/DateInput.svelte +3 -42
  50. package/dist/Components/DateInput.svelte.d.ts +1 -40
  51. package/dist/Components/DateInputProps.d.ts +3 -0
  52. package/dist/Components/DateInputProps.js +1 -0
  53. package/dist/Components/DateOnlyInputProps.d.ts +21 -0
  54. package/dist/Components/DateOnlyInputProps.js +1 -0
  55. package/dist/Components/DatePicker.svelte +26 -36
  56. package/dist/Components/DatePicker.svelte.d.ts +1 -8
  57. package/dist/Components/DatePickerProps.d.ts +8 -0
  58. package/dist/Components/DatePickerProps.js +1 -0
  59. package/dist/Components/DateTimeInputProps.d.ts +21 -0
  60. package/dist/Components/DateTimeInputProps.js +1 -0
  61. package/dist/Components/DesktopModal.svelte +3 -25
  62. package/dist/Components/DesktopModal.svelte.d.ts +1 -20
  63. package/dist/Components/DesktopModalProps.d.ts +20 -0
  64. package/dist/Components/DesktopModalProps.js +1 -0
  65. package/dist/Components/Dial.svelte +2 -18
  66. package/dist/Components/Dial.svelte.d.ts +1 -13
  67. package/dist/Components/DialProps.d.ts +13 -0
  68. package/dist/Components/DialProps.js +1 -0
  69. package/dist/Components/DimensionInput.svelte +21 -48
  70. package/dist/Components/DimensionInput.svelte.d.ts +1 -29
  71. package/dist/Components/DimensionInputProps.d.ts +29 -0
  72. package/dist/Components/DimensionInputProps.js +1 -0
  73. package/dist/Components/DragMenu/DragMenuHolder.svelte +10 -57
  74. package/dist/Components/DragMenu/DragMenuHolder.svelte.d.ts +1 -17
  75. package/dist/Components/DragMenu/DragMenuHolderProps.d.ts +10 -0
  76. package/dist/Components/DragMenu/DragMenuHolderProps.js +1 -0
  77. package/dist/Components/DragMenu/Draggable.d.ts +8 -0
  78. package/dist/Components/DragMenu/Draggable.js +1 -0
  79. package/dist/Components/DragMenu/DraggableCard.svelte +6 -14
  80. package/dist/Components/DragMenu/DraggableCard.svelte.d.ts +1 -9
  81. package/dist/Components/DragMenu/DraggableCardProps.d.ts +9 -0
  82. package/dist/Components/DragMenu/DraggableCardProps.js +1 -0
  83. package/dist/Components/FileCard.svelte +1 -7
  84. package/dist/Components/FileCard.svelte.d.ts +1 -4
  85. package/dist/Components/FileCardProps.d.ts +4 -0
  86. package/dist/Components/FileCardProps.js +1 -0
  87. package/dist/Components/FileUpload.svelte +9 -31
  88. package/dist/Components/FileUpload.svelte.d.ts +1 -24
  89. package/dist/Components/FileUploadProps.d.ts +24 -0
  90. package/dist/Components/FileUploadProps.js +1 -0
  91. package/dist/Components/GridInput.svelte +30 -28
  92. package/dist/Components/GridInput.svelte.d.ts +1 -6
  93. package/dist/Components/GridInputProps.d.ts +7 -0
  94. package/dist/Components/GridInputProps.js +1 -0
  95. package/dist/Components/GridInputSet.svelte +2 -11
  96. package/dist/Components/GridInputSet.svelte.d.ts +1 -6
  97. package/dist/Components/GridInputSetProps.d.ts +7 -0
  98. package/dist/Components/GridInputSetProps.js +1 -0
  99. package/dist/Components/HorizontalTabGroup.svelte +3 -16
  100. package/dist/Components/HorizontalTabGroup.svelte.d.ts +2 -11
  101. package/dist/Components/HorizontalTabGroupButton.svelte +11 -15
  102. package/dist/Components/HorizontalTabGroupButton.svelte.d.ts +2 -6
  103. package/dist/Components/HorizontalTabGroupProps.d.ts +10 -0
  104. package/dist/Components/HorizontalTabGroupProps.js +1 -0
  105. package/dist/Components/Icon.svelte +5 -1257
  106. package/dist/Components/Icon.svelte.d.ts +1 -884
  107. package/dist/Components/IconProps.d.ts +24 -0
  108. package/dist/Components/IconProps.js +1 -0
  109. package/dist/Components/Icons.d.ts +858 -0
  110. package/dist/Components/Icons.js +1222 -0
  111. package/dist/Components/InputProps.d.ts +15 -0
  112. package/dist/Components/InputProps.js +1 -0
  113. package/dist/Components/LoadingModal.svelte +2 -2
  114. package/dist/Components/Modal.svelte +24 -25
  115. package/dist/Components/Modal.svelte.d.ts +3 -6
  116. package/dist/Components/MultiSelect.svelte +35 -73
  117. package/dist/Components/MultiSelect.svelte.d.ts +14 -37
  118. package/dist/Components/MultiSelectCommonProps.d.ts +16 -0
  119. package/dist/Components/MultiSelectCommonProps.js +1 -0
  120. package/dist/Components/MultiSelectProps.d.ts +4 -0
  121. package/dist/Components/MultiSelectProps.js +1 -0
  122. package/dist/Components/MultiSelectPropsAsObject.d.ts +6 -0
  123. package/dist/Components/MultiSelectPropsAsObject.js +1 -0
  124. package/dist/Components/MultiSelectPropsAsPrimitive.d.ts +6 -0
  125. package/dist/Components/MultiSelectPropsAsPrimitive.js +1 -0
  126. package/dist/Components/NumberInput.svelte +8 -37
  127. package/dist/Components/NumberInput.svelte.d.ts +1 -29
  128. package/dist/Components/NumberInputProps.d.ts +29 -0
  129. package/dist/Components/NumberInputProps.js +1 -0
  130. package/dist/Components/PartialIconProps.d.ts +4 -0
  131. package/dist/Components/PartialIconProps.js +1 -0
  132. package/dist/Components/PasswordInput.svelte +4 -22
  133. package/dist/Components/PasswordInput.svelte.d.ts +1 -15
  134. package/dist/Components/Portal.svelte +3 -9
  135. package/dist/Components/Portal.svelte.d.ts +1 -5
  136. package/dist/Components/PortalProps.d.ts +5 -0
  137. package/dist/Components/PortalProps.js +1 -0
  138. package/dist/Components/ProgressBubble.svelte +20 -22
  139. package/dist/Components/ProgressBubble.svelte.d.ts +2 -6
  140. package/dist/Components/ProgressBubbleProps.d.ts +5 -0
  141. package/dist/Components/ProgressBubbleProps.js +1 -0
  142. package/dist/Components/QuerySelect.svelte +70 -49
  143. package/dist/Components/QuerySelect.svelte.d.ts +3 -3
  144. package/dist/Components/SingleSelect.svelte +28 -71
  145. package/dist/Components/SingleSelect.svelte.d.ts +2 -37
  146. package/dist/Components/SingleSelectCommonProps.d.ts +27 -0
  147. package/dist/Components/SingleSelectCommonProps.js +1 -0
  148. package/dist/Components/SingleSelectProps.d.ts +4 -0
  149. package/dist/Components/SingleSelectProps.js +1 -0
  150. package/dist/Components/SingleSelectPropsAsObject.d.ts +6 -0
  151. package/dist/Components/SingleSelectPropsAsObject.js +1 -0
  152. package/dist/Components/SingleSelectPropsAsPrimitive.d.ts +6 -0
  153. package/dist/Components/SingleSelectPropsAsPrimitive.js +1 -0
  154. package/dist/Components/Switch.svelte +2 -13
  155. package/dist/Components/Switch.svelte.d.ts +1 -9
  156. package/dist/Components/SwitchProps.d.ts +9 -0
  157. package/dist/Components/SwitchProps.js +1 -0
  158. package/dist/Components/TabGroupButtonProps.d.ts +5 -0
  159. package/dist/Components/TabGroupButtonProps.js +1 -0
  160. package/dist/Components/Table/Body/HeightData.d.ts +6 -0
  161. package/dist/Components/Table/Body/HeightData.js +1 -0
  162. package/dist/Components/Table/Body/QuickSearchCell.svelte +59 -82
  163. package/dist/Components/Table/Body/QuickSearchCell.svelte.d.ts +1 -6
  164. package/dist/Components/Table/Body/QuickSearchCellProps.d.ts +6 -0
  165. package/dist/Components/Table/Body/QuickSearchCellProps.js +1 -0
  166. package/dist/Components/Table/Body/Rows/ColumnHighlight.svelte +4 -9
  167. package/dist/Components/Table/Body/Rows/ColumnHighlight.svelte.d.ts +1 -5
  168. package/dist/Components/Table/Body/Rows/ColumnHighlightProps.d.ts +5 -0
  169. package/dist/Components/Table/Body/Rows/ColumnHighlightProps.js +1 -0
  170. package/dist/Components/Table/Body/Rows/ColumnList.svelte +5 -10
  171. package/dist/Components/Table/Body/Rows/ColumnList.svelte.d.ts +1 -3
  172. package/dist/Components/Table/Body/Rows/ColumnListProps.d.ts +3 -0
  173. package/dist/Components/Table/Body/Rows/ColumnListProps.js +1 -0
  174. package/dist/Components/Table/Body/Rows/ColumnListRow.svelte +15 -25
  175. package/dist/Components/Table/Body/Rows/ColumnListRow.svelte.d.ts +1 -4
  176. package/dist/Components/Table/Body/Rows/ColumnListRowProps.d.ts +4 -0
  177. package/dist/Components/Table/Body/Rows/ColumnListRowProps.js +1 -0
  178. package/dist/Components/Table/Body/Rows/Columns/AccessorComponent.svelte +7 -11
  179. package/dist/Components/Table/Body/Rows/Columns/AccessorComponent.svelte.d.ts +1 -4
  180. package/dist/Components/Table/Body/Rows/Columns/AccessorComponentProps.d.ts +4 -0
  181. package/dist/Components/Table/Body/Rows/Columns/AccessorComponentProps.js +1 -0
  182. package/dist/Components/Table/Body/Rows/Columns/ActionsCell.svelte +39 -48
  183. package/dist/Components/Table/Body/Rows/Columns/ActionsCell.svelte.d.ts +1 -4
  184. package/dist/Components/Table/Body/Rows/Columns/ActionsCellProps.d.ts +4 -0
  185. package/dist/Components/Table/Body/Rows/Columns/ActionsCellProps.js +1 -0
  186. package/dist/Components/Table/Body/Rows/Columns/ActionsColumn.d.ts +5 -0
  187. package/dist/Components/Table/Body/Rows/Columns/ActionsColumn.js +1 -0
  188. package/dist/Components/Table/Body/Rows/Columns/ActionsTableCell.d.ts +5 -0
  189. package/dist/Components/Table/Body/Rows/Columns/ActionsTableCell.js +1 -0
  190. package/dist/Components/Table/Body/Rows/Columns/BubbleCell.svelte +26 -25
  191. package/dist/Components/Table/Body/Rows/Columns/BubbleCell.svelte.d.ts +1 -4
  192. package/dist/Components/Table/Body/Rows/Columns/ExpandCell.svelte +11 -18
  193. package/dist/Components/Table/Body/Rows/Columns/ExpandCell.svelte.d.ts +13 -19
  194. package/dist/Components/Table/Body/Rows/Columns/ExpandCellProps.d.ts +7 -0
  195. package/dist/Components/Table/Body/Rows/Columns/ExpandCellProps.js +1 -0
  196. package/dist/Components/Table/Body/Rows/Columns/FocusableImmutableCell.svelte +10 -16
  197. package/dist/Components/Table/Body/Rows/Columns/FocusableImmutableCell.svelte.d.ts +1 -6
  198. package/dist/Components/Table/Body/Rows/Columns/FocusableImmutableCellProps.d.ts +6 -0
  199. package/dist/Components/Table/Body/Rows/Columns/FocusableImmutableCellProps.js +1 -0
  200. package/dist/Components/Table/Body/Rows/Columns/ProgressCell.svelte +22 -15
  201. package/dist/Components/Table/Body/Rows/Columns/SelectColumn.d.ts +5 -0
  202. package/dist/Components/Table/Body/Rows/Columns/SelectColumn.js +1 -0
  203. package/dist/Components/Table/Body/Rows/Columns/SelectTableCell.d.ts +5 -0
  204. package/dist/Components/Table/Body/Rows/Columns/SelectTableCell.js +1 -0
  205. package/dist/Components/Table/Body/Rows/Columns/TableAction.svelte +7 -20
  206. package/dist/Components/Table/Body/Rows/Columns/TableAction.svelte.d.ts +1 -9
  207. package/dist/Components/Table/Body/Rows/Columns/TableCheckbox.svelte +17 -20
  208. package/dist/Components/Table/Body/Rows/Columns/TableColumn.svelte +38 -22
  209. package/dist/Components/Table/Body/Rows/Columns/TableColumn.svelte.d.ts +2 -2
  210. package/dist/Components/Table/Body/Rows/Columns/TableDatePicker.svelte +41 -34
  211. package/dist/Components/Table/Body/Rows/Columns/TableDatePicker.svelte.d.ts +1 -4
  212. package/dist/Components/Table/Body/Rows/Columns/TableDatePickerProps.d.ts +4 -0
  213. package/dist/Components/Table/Body/Rows/Columns/TableDatePickerProps.js +1 -0
  214. package/dist/Components/Table/Body/Rows/Columns/TableNumberInput.svelte +67 -46
  215. package/dist/Components/Table/Body/Rows/Columns/TableQueryCell.d.ts +5 -0
  216. package/dist/Components/Table/Body/Rows/Columns/TableQueryCell.js +1 -0
  217. package/dist/Components/Table/Body/Rows/Columns/TableQueryColumn.d.ts +5 -0
  218. package/dist/Components/Table/Body/Rows/Columns/TableQueryColumn.js +1 -0
  219. package/dist/Components/Table/Body/Rows/Columns/TableQuerySelect.svelte +93 -105
  220. package/dist/Components/Table/Body/Rows/Columns/TableQuerySelect.svelte.d.ts +1 -12
  221. package/dist/Components/Table/Body/Rows/Columns/TableQuerySelectProps.d.ts +4 -0
  222. package/dist/Components/Table/Body/Rows/Columns/TableQuerySelectProps.js +1 -0
  223. package/dist/Components/Table/Body/Rows/Columns/TableRowSelectionCheckbox.svelte +4 -2
  224. package/dist/Components/Table/Body/Rows/Columns/TableSelect.svelte +78 -65
  225. package/dist/Components/Table/Body/Rows/Columns/TableSelect.svelte.d.ts +1 -12
  226. package/dist/Components/Table/Body/Rows/Columns/TableSelectProps.d.ts +4 -0
  227. package/dist/Components/Table/Body/Rows/Columns/TableSelectProps.js +1 -0
  228. package/dist/Components/Table/Body/Rows/Columns/TableTextInput.svelte +82 -59
  229. package/dist/Components/Table/Body/Rows/Columns/TableTextInput.svelte.d.ts +1 -4
  230. package/dist/Components/Table/Body/Rows/Columns/TableTextInputProps.d.ts +4 -0
  231. package/dist/Components/Table/Body/Rows/Columns/TableTextInputProps.js +1 -0
  232. package/dist/Components/Table/Body/Rows/Columns/ValidityCell.svelte +10 -15
  233. package/dist/Components/Table/Body/Rows/Columns/ValidityCell.svelte.d.ts +1 -4
  234. package/dist/Components/Table/Body/Rows/Columns/ValidityCellProps.d.ts +4 -0
  235. package/dist/Components/Table/Body/Rows/Columns/ValidityCellProps.js +1 -0
  236. package/dist/Components/Table/Body/Rows/TableRow.svelte +38 -31
  237. package/dist/Components/Table/Body/Rows/TableRow.svelte.d.ts +1 -8
  238. package/dist/Components/Table/Body/Rows/TableRowProps.d.ts +8 -0
  239. package/dist/Components/Table/Body/Rows/TableRowProps.js +1 -0
  240. package/dist/Components/Table/Body/TableBody.svelte +10 -21
  241. package/dist/Components/Table/Body/TableBody.svelte.d.ts +1 -12
  242. package/dist/Components/Table/Body/TableBodyProps.d.ts +8 -0
  243. package/dist/Components/Table/Body/TableBodyProps.js +1 -0
  244. package/dist/Components/Table/ColumnDefinitions/ExampleItemColumnDefRepository.svelte.d.ts +2 -4
  245. package/dist/Components/Table/ColumnDefinitions/ExampleItemColumnDefRepository.svelte.js +159 -161
  246. package/dist/Components/Table/Headers/HighlightAllHeader.svelte +8 -5
  247. package/dist/Components/Table/Headers/SelectAllHeader.svelte +1 -1
  248. package/dist/Components/Table/Headers/TableHead.svelte +29 -18
  249. package/dist/Components/Table/Misc/ColumnPanel.svelte +4 -4
  250. package/dist/Components/Table/Misc/ColumnPanelModal.svelte +5 -10
  251. package/dist/Components/Table/Misc/ColumnPanelModal.svelte.d.ts +1 -3
  252. package/dist/Components/Table/Misc/ColumnPanelModalProps.d.ts +3 -0
  253. package/dist/Components/Table/Misc/ColumnPanelModalProps.js +1 -0
  254. package/dist/Components/Table/Misc/FilterInput.svelte +75 -145
  255. package/dist/Components/Table/Misc/FilterInput.svelte.d.ts +1 -16
  256. package/dist/Components/Table/Misc/FilterInputProps.d.ts +6 -0
  257. package/dist/Components/Table/Misc/FilterInputProps.js +1 -0
  258. package/dist/Components/Table/Misc/FilterPanelModal.svelte +2 -5
  259. package/dist/Components/Table/Misc/TableFooter.svelte +22 -21
  260. package/dist/Components/Table/Misc/TableHorizontalBar.svelte +7 -5
  261. package/dist/Components/Table/Misc/TableSidebar.svelte +2 -2
  262. package/dist/Components/Table/Misc/ToolboxPanelModal.svelte +2 -7
  263. package/dist/Components/Table/Misc/ToolboxPanelModal.svelte.d.ts +1 -3
  264. package/dist/Components/Table/Misc/ToolboxPanelModalProps.d.ts +3 -0
  265. package/dist/Components/Table/Misc/ToolboxPanelModalProps.js +1 -0
  266. package/dist/Components/Table/Misc/numberDateFilterTypes.d.ts +5 -0
  267. package/dist/Components/Table/Misc/numberDateFilterTypes.js +13 -0
  268. package/dist/Components/Table/Misc/stringFilterTypes.d.ts +5 -0
  269. package/dist/Components/Table/Misc/stringFilterTypes.js +15 -0
  270. package/dist/Components/Table/NestedTable.svelte +5 -3
  271. package/dist/Components/Table/NestedTable.svelte.d.ts +1 -1
  272. package/dist/Components/Table/Table.svelte +72 -40
  273. package/dist/Components/Table/Table.svelte.d.ts +1 -1
  274. package/dist/Components/Table/Types/Columns/Column.d.ts +1 -1
  275. package/dist/Components/Table/Types/Columns/DateColumn.d.ts +1 -1
  276. package/dist/Components/Table/Types/Columns/Definitions/Accessors/CheckboxDef.svelte.d.ts +1 -2
  277. package/dist/Components/Table/Types/Columns/Definitions/Accessors/CheckboxDef.svelte.js +2 -0
  278. package/dist/Components/Table/Types/Columns/Definitions/Actions/ActionsDef.svelte.d.ts +2 -2
  279. package/dist/Components/Table/Types/Columns/Definitions/ColumnDef.svelte.d.ts +3 -3
  280. package/dist/Components/Table/Types/Columns/Definitions/Display/AbstractDisplayDef.svelte.d.ts +1 -1
  281. package/dist/Components/Table/Types/Columns/Definitions/Display/AbstractDisplayDef.svelte.js +3 -2
  282. package/dist/Components/Table/Types/Columns/Definitions/Display/BubbleDef.svelte.d.ts +3 -3
  283. package/dist/Components/Table/Types/Columns/Definitions/Display/BubbleDef.svelte.js +1 -1
  284. package/dist/Components/Table/Types/Columns/Definitions/Display/DisplayDef.svelte.d.ts +6 -7
  285. package/dist/Components/Table/Types/Columns/Definitions/Display/DisplayDef.svelte.js +4 -1
  286. package/dist/Components/Table/Types/Columns/Definitions/Display/ProgressBarDef.svelte.d.ts +2 -2
  287. package/dist/Components/Table/Types/Columns/Definitions/Display/ProgressBarDef.svelte.js +1 -1
  288. package/dist/Components/Table/Types/Columns/Definitions/Display/ValidityDef.svelte.d.ts +2 -2
  289. package/dist/Components/Table/Types/Columns/Definitions/Display/ValidityDef.svelte.js +1 -1
  290. package/dist/Components/Table/Types/Columns/Definitions/Expand/ExpandDef.svelte.d.ts +3 -2
  291. package/dist/Components/Table/Types/Columns/Definitions/FilterOnly/FilterOnlyDef.svelte.d.ts +1 -3
  292. package/dist/Components/Table/Types/Columns/Definitions/FilterOnly/FilterOnlyDef.svelte.js +4 -3
  293. package/dist/Components/Table/Types/Columns/DefsWrapper.d.ts +1 -1
  294. package/dist/Components/Table/Types/Columns/ExpandColumn.d.ts +2 -2
  295. package/dist/Components/Table/Types/Columns/ExpandTableCell.d.ts +2 -2
  296. package/dist/Components/Table/Types/Columns/ProgressBarColumn.d.ts +1 -1
  297. package/dist/Components/Table/Types/Columns/ProgressBarTableCell.d.ts +2 -1
  298. package/dist/Components/Table/Types/Columns/VisibilityState.d.ts +1 -1
  299. package/dist/Components/Table/Types/Context/ITable.d.ts +8 -8
  300. package/dist/Components/Table/Types/Context/ReadonlyRowModel.d.ts +1 -1
  301. package/dist/Components/Table/Types/Context/Row.d.ts +4 -4
  302. package/dist/Components/Table/Types/Context/RowModel.d.ts +1 -1
  303. package/dist/Components/Table/Types/Context/TableContext.svelte.d.ts +13 -17
  304. package/dist/Components/Table/Types/Context/TableContext.svelte.js +260 -304
  305. package/dist/Components/Table/Types/Context/TableSettings.d.ts +8 -0
  306. package/dist/Components/Table/Types/DataRepository/IDataRepository.d.ts +6 -6
  307. package/dist/Components/Table/Types/DataRepository/ILocalDataRepository.d.ts +1 -1
  308. package/dist/Components/Table/Types/DataRepository/LocalTableDataRepository.svelte.d.ts +2 -2
  309. package/dist/Components/Table/Types/DataRepository/LocalTableDataRepository.svelte.js +10 -8
  310. package/dist/Components/Table/Types/DataRepository/SortingState.d.ts +1 -1
  311. package/dist/Components/Table/Types/DataRepository/TableDataRepository.svelte.d.ts +5 -5
  312. package/dist/Components/Table/Types/DataRepository/TableDataRepository.svelte.js +5 -3
  313. package/dist/Components/Table/Types/Filtering/ColumnFiltersState.d.ts +1 -1
  314. package/dist/Components/Table/Types/Filtering/FilterFn.d.ts +1 -1
  315. package/dist/Components/Table/Types/Focus/TableFocusDetails.svelte.js +3 -2
  316. package/dist/Components/TextArea.svelte +2 -30
  317. package/dist/Components/TextArea.svelte.d.ts +1 -26
  318. package/dist/Components/TextAreaProps.d.ts +26 -0
  319. package/dist/Components/TextAreaProps.js +1 -0
  320. package/dist/Components/TextInput.svelte +6 -40
  321. package/dist/Components/TextInput.svelte.d.ts +1 -31
  322. package/dist/Components/TextInputProps.d.ts +31 -0
  323. package/dist/Components/TextInputProps.js +1 -0
  324. package/dist/Components/ThreeStateRadio.svelte +4 -23
  325. package/dist/Components/ThreeStateRadio.svelte.d.ts +1 -19
  326. package/dist/Components/ThreeStateRadioProps.d.ts +19 -0
  327. package/dist/Components/ThreeStateRadioProps.js +1 -0
  328. package/dist/Components/Touch/BoolCard.svelte +3 -2
  329. package/dist/Components/Touch/DateModal.svelte +23 -11
  330. package/dist/Components/Touch/DefaultTimer.d.ts +5 -0
  331. package/dist/Components/Touch/DefaultTimer.js +1 -0
  332. package/dist/Components/Touch/EditCard.svelte +3 -17
  333. package/dist/Components/Touch/EditCard.svelte.d.ts +1 -12
  334. package/dist/Components/Touch/EditCardProps.d.ts +12 -0
  335. package/dist/Components/Touch/EditCardProps.js +1 -0
  336. package/dist/Components/Touch/InfoCard.svelte +3 -12
  337. package/dist/Components/Touch/InfoCard.svelte.d.ts +1 -8
  338. package/dist/Components/Touch/InfoCardProps.d.ts +8 -0
  339. package/dist/Components/Touch/InfoCardProps.js +1 -0
  340. package/dist/Components/Touch/InfoTextCard.svelte +3 -12
  341. package/dist/Components/Touch/InfoTextCard.svelte.d.ts +1 -7
  342. package/dist/Components/Touch/InfoTextCardProps.d.ts +7 -0
  343. package/dist/Components/Touch/InfoTextCardProps.js +1 -0
  344. package/dist/Components/Touch/KeyValuePair.d.ts +4 -0
  345. package/dist/Components/Touch/KeyValuePair.js +1 -0
  346. package/dist/Components/Touch/NumberKeyboard.svelte +54 -37
  347. package/dist/Components/Touch/NumberKeyboard.svelte.d.ts +1 -11
  348. package/dist/Components/Touch/NumberKeyboardProps.d.ts +11 -0
  349. package/dist/Components/Touch/NumberKeyboardProps.js +1 -0
  350. package/dist/Components/Touch/NumberModal.svelte +19 -26
  351. package/dist/Components/Touch/NumberModal.svelte.d.ts +1 -15
  352. package/dist/Components/Touch/NumberModalProps.d.ts +15 -0
  353. package/dist/Components/Touch/NumberModalProps.js +1 -0
  354. package/dist/Components/Touch/PlusMinusCard.svelte +6 -2
  355. package/dist/Components/Touch/SelectModal.svelte +26 -27
  356. package/dist/Components/Touch/SelectModal.svelte.d.ts +1 -8
  357. package/dist/Components/Touch/SelectModalProps.d.ts +8 -0
  358. package/dist/Components/Touch/SelectModalProps.js +1 -0
  359. package/dist/Components/Touch/SummaryCard.svelte +3 -20
  360. package/dist/Components/Touch/SummaryCard.svelte.d.ts +1 -15
  361. package/dist/Components/Touch/SummaryCardProps.d.ts +12 -0
  362. package/dist/Components/Touch/SummaryCardProps.js +1 -0
  363. package/dist/Components/Touch/TextAreaModal.svelte +20 -23
  364. package/dist/Components/Touch/TextAreaModal.svelte.d.ts +1 -12
  365. package/dist/Components/Touch/TextAreaModalProps.d.ts +12 -0
  366. package/dist/Components/Touch/TextAreaModalProps.js +1 -0
  367. package/dist/Components/Touch/TextModal.svelte +24 -33
  368. package/dist/Components/Touch/TextModal.svelte.d.ts +1 -19
  369. package/dist/Components/Touch/TextModalProps.d.ts +19 -0
  370. package/dist/Components/Touch/TextModalProps.js +1 -0
  371. package/dist/Components/Touch/TouchCard.svelte +2 -11
  372. package/dist/Components/Touch/TouchCard.svelte.d.ts +1 -6
  373. package/dist/Components/Touch/TouchCardProps.d.ts +6 -0
  374. package/dist/Components/Touch/TouchCardProps.js +1 -0
  375. package/dist/Components/Touch/TouchModal.svelte +14 -46
  376. package/dist/Components/Touch/TouchModal.svelte.d.ts +1 -31
  377. package/dist/Components/Touch/TouchModalProps.d.ts +27 -0
  378. package/dist/Components/Touch/TouchModalProps.js +1 -0
  379. package/dist/Components/Touch/UtilityButton.svelte +5 -23
  380. package/dist/Components/Touch/UtilityButton.svelte.d.ts +1 -20
  381. package/dist/Components/Touch/UtilityButtonProps.d.ts +20 -0
  382. package/dist/Components/Touch/UtilityButtonProps.js +1 -0
  383. package/dist/Components/VerticalTabGroup.svelte +2 -12
  384. package/dist/Components/VerticalTabGroup.svelte.d.ts +1 -10
  385. package/dist/Components/VerticalTabGroupButton.svelte +18 -20
  386. package/dist/Components/VerticalTabGroupButton.svelte.d.ts +23 -6
  387. package/dist/Components/VerticalTabGroupProps.d.ts +10 -0
  388. package/dist/Components/VerticalTabGroupProps.js +1 -0
  389. package/dist/Contexts/ContextMenuContext.svelte.d.ts +3 -3
  390. package/dist/Contexts/ToastContext.svelte.d.ts +1 -1
  391. package/dist/Contexts/ToastContext.svelte.js +4 -2
  392. package/dist/Contexts/UntypedInputContext.svelte.d.ts +2 -2
  393. package/dist/Contexts/UntypedInputContext.svelte.js +10 -12
  394. package/dist/Helpers/Datamatrix.d.ts +1 -2
  395. package/dist/Helpers/Helpers.svelte.d.ts +8 -3
  396. package/dist/Helpers/Helpers.svelte.js +44 -8
  397. package/dist/Types/Examples/ExampleItem.d.ts +1 -1
  398. package/dist/Types/Examples/ExampleModal.svelte +1 -1
  399. package/dist/Types/Internal/AttributeOperation.js +0 -2
  400. package/dist/Types/Internal/CallbackButton.d.ts +1 -1
  401. package/dist/Types/Internal/GridItem.d.ts +1 -1
  402. package/dist/Types/Internal/GridMultiSelectItem.d.ts +2 -2
  403. package/dist/Types/Internal/GridSelectItem.d.ts +1 -1
  404. package/dist/Types/Internal/TabOption.d.ts +1 -1
  405. package/dist/index.d.ts +158 -73
  406. package/dist/index.js +80 -51
  407. package/package.json +15 -14
@@ -4,18 +4,19 @@
4
4
  import Icon from '../../Icon.svelte';
5
5
  import { TooltipContext } from '../../../Contexts/TooltipContext.svelte.js';
6
6
  import { Delay } from '../../../Delay/Delay.js';
7
+ import { devCatch } from '../../../Helpers/Helpers.svelte.js';
7
8
  import { Colour } from '../../../scss/colours.js';
8
9
  import { Side } from '../../../Types/Internal/Side.js';
9
10
  import { Size } from '../../../Types/Internal/Size.js';
10
11
  import { Variant } from '../../../Types/Internal/Variant.js';
11
12
  import { getContext } from 'svelte';
12
13
  import type { ColumnDef } from '../Types/Columns/Definitions/ColumnDef.svelte.js';
14
+ import { ExpandDef } from '../Types/Columns/Definitions/Expand/ExpandDef.svelte.js';
15
+ import { RowSelectionDef } from '../Types/Columns/Definitions/RowSelection/RowSelectionDef.svelte.js';
13
16
  import { TableContext } from '../Types/Context/TableContext.svelte.js';
17
+ import type { HeaderGroup } from '../Types/HeaderGroup.js';
14
18
  import HighlightAllHeader from './HighlightAllHeader.svelte';
15
19
  import SelectAllHeader from './SelectAllHeader.svelte';
16
- import { ExpandDef } from '../Types/Columns/Definitions/Expand/ExpandDef.svelte.js';
17
- import type { HeaderGroup } from '../Types/HeaderGroup.js';
18
- import { RowSelectionDef } from '../Types/Columns/Definitions/RowSelection/RowSelectionDef.svelte.js';
19
20
 
20
21
  export interface TableHeadProps {
21
22
  showHighlight: boolean;
@@ -30,15 +31,17 @@
30
31
  const tableContext = getContext<TableContext<T>>(TableContext.identifier);
31
32
  const tooltipContext = getContext<TooltipContext>(TooltipContext.identifier);
32
33
 
33
- const groups: HeaderGroup<T>[] = $derived.by(() => {
34
- if (tableContext.table.columnVisibility || tableContext.table.columnPinning) {
35
- return (
36
- (side === 'left'
37
- ? tableContext.table?.getLeftHeaderGroups()
38
- : side === 'right'
39
- ? tableContext.table?.getRightHeaderGroups()
40
- : tableContext.table?.getCenterHeaderGroups()) ?? []
41
- );
34
+ const groups: Array<HeaderGroup<T>> = $derived.by(() => {
35
+ if (
36
+ Object.keys(tableContext.table.columnVisibility).length ||
37
+ tableContext.table.columnPinning.left?.size ||
38
+ tableContext.table.columnPinning.right?.size
39
+ ) {
40
+ return side === 'left'
41
+ ? tableContext.table.getLeftHeaderGroups()
42
+ : side === 'right'
43
+ ? tableContext.table.getRightHeaderGroups()
44
+ : tableContext.table.getCenterHeaderGroups();
42
45
  }
43
46
 
44
47
  return [];
@@ -155,8 +158,12 @@
155
158
  <div class="margin-right">
156
159
  {#if header.column.getCanSort()}
157
160
  <button
158
- onmouseenter={(e) => showtooltip(e, header.column.columnDef)}
159
- onmouseleave={() => hideTooltip(header.column.columnDef)}
161
+ onmouseenter={(e) => {
162
+ showtooltip(e, header.column.columnDef);
163
+ }}
164
+ onmouseleave={() => {
165
+ hideTooltip(header.column.columnDef);
166
+ }}
160
167
  class="contents"
161
168
  onclick={header.column.getToggleSortingHandler()}
162
169
  >
@@ -178,7 +185,7 @@
178
185
  <Icon
179
186
  variant={Variant.HeaderIcon}
180
187
  size={Size.Medium}
181
- name={iconNames[header.column.getIsSorted() || 'none']}
188
+ name={iconNames[header.column.getIsSorted()]}
182
189
  />
183
190
  {/if}
184
191
  </div>
@@ -188,8 +195,12 @@
188
195
  {@const isRowSelect = header.column.columnDef instanceof RowSelectionDef}
189
196
  <!-- svelte-ignore a11y_no_static_element_interactions -->
190
197
  <div
191
- onmouseenter={(e) => showtooltip(e, header.column.columnDef)}
192
- onmouseleave={() => hideTooltip(header.column.columnDef)}
198
+ onmouseenter={(e) => {
199
+ showtooltip(e, header.column.columnDef);
200
+ }}
201
+ onmouseleave={() => {
202
+ hideTooltip(header.column.columnDef);
203
+ }}
193
204
  class="contents"
194
205
  >
195
206
  <div class="th" class:nopadding={isRowSelect}>
@@ -221,7 +232,7 @@
221
232
  handler(e);
222
233
  }}
223
234
  ondblclick={() => {
224
- tableContext.autoResize(header.column.columnDef);
235
+ tableContext.autoResize(header.column.columnDef).catch(devCatch);
225
236
  }}
226
237
  class="resizer right"
227
238
  class:isResizing={header.column.getIsResizing()}
@@ -3,17 +3,17 @@
3
3
  <script lang="ts" generics="T extends object">
4
4
  import Button from '../../Button.svelte';
5
5
  import SingleSelect from '../../SingleSelect.svelte';
6
+ import ColumnList from '../Body/Rows/ColumnList.svelte';
6
7
  import TextInput from '../../TextInput.svelte';
8
+ import type { SelectOption } from '../../../Types/Internal/SelectOption.js';
7
9
  import { Size } from '../../../Types/Internal/Size.js';
8
10
  import { Variant } from '../../../Types/Internal/Variant.js';
9
11
  import { getContext } from 'svelte';
10
12
  import { TableContext } from '../Types/Context/TableContext.svelte.js';
11
- import type { SelectOption } from '../../../Types/Internal/SelectOption.js';
12
- import ColumnList from '../Body/Rows/ColumnList.svelte';
13
13
 
14
14
  const tableContext = getContext<TableContext<T>>(TableContext.identifier);
15
15
 
16
- const labelledPresets: SelectOption<string>[] = $derived(
16
+ const labelledPresets: Array<SelectOption<string>> = $derived(
17
17
  tableContext.columnPresets.map((pr) => ({ label: pr.name, value: pr.name }))
18
18
  );
19
19
 
@@ -35,7 +35,7 @@
35
35
  valueProp="value"
36
36
  value={selectedValue}
37
37
  valueAsObject
38
- onchange={(newSelection) => {
38
+ onchange={(newSelection: SelectOption<string> | null) => {
39
39
  const preset =
40
40
  newSelection && tableContext.columnPresets.find((p) => p.name === newSelection.label);
41
41
  if (preset) {
@@ -1,27 +1,22 @@
1
1
  <svelte:options runes />
2
2
 
3
- <script lang="ts" module>
4
- export interface ColumnPanelModalProps {
5
- onclose?: () => void;
6
- }
7
- </script>
8
-
9
3
  <script lang="ts" generics="T extends object">
10
4
  import Button from '../../Button.svelte';
11
5
  import SingleSelect from '../../SingleSelect.svelte';
6
+ import ColumnList from '../Body/Rows/ColumnList.svelte';
12
7
  import TextInput from '../../TextInput.svelte';
13
8
  import TouchModal from '../../Touch/TouchModal.svelte';
9
+ import type { SelectOption } from '../../../Types/Internal/SelectOption.js';
14
10
  import { Size } from '../../../Types/Internal/Size.js';
15
11
  import { Variant } from '../../../Types/Internal/Variant.js';
16
12
  import { getContext } from 'svelte';
17
- import ColumnList from '../Body/Rows/ColumnList.svelte';
18
13
  import { TableContext } from '../Types/Context/TableContext.svelte.js';
19
- import type { SelectOption } from '../../../Types/Internal/SelectOption.js';
14
+ import type { ColumnPanelModalProps } from './ColumnPanelModalProps.js';
20
15
 
21
16
  const tableContext = getContext<TableContext<T>>(TableContext.identifier);
22
17
 
23
18
  const { onclose }: ColumnPanelModalProps = $props();
24
- const labelledPresets: SelectOption<string>[] = $derived(
19
+ const labelledPresets: Array<SelectOption<string>> = $derived(
25
20
  tableContext.columnPresets.map((pr) => ({ label: pr.name, value: pr.name }))
26
21
  );
27
22
  let searchValue = $state('');
@@ -62,7 +57,7 @@
62
57
  valueProp="value"
63
58
  value={selectedValue}
64
59
  valueAsObject
65
- onchange={(newSelection) => {
60
+ onchange={(newSelection: SelectOption<string> | null) => {
66
61
  const preset =
67
62
  newSelection && tableContext.columnPresets.find((p) => p.name === newSelection.label);
68
63
  if (preset) {
@@ -1,6 +1,4 @@
1
- export interface ColumnPanelModalProps {
2
- onclose?: () => void;
3
- }
1
+ import type { ColumnPanelModalProps } from './ColumnPanelModalProps.js';
4
2
  declare function $$render<T extends object>(): {
5
3
  props: ColumnPanelModalProps;
6
4
  exports: {};
@@ -0,0 +1,3 @@
1
+ export interface ColumnPanelModalProps {
2
+ onclose?: () => void;
3
+ }
@@ -1,92 +1,38 @@
1
1
  <svelte:options runes />
2
2
 
3
- <script module lang="ts">
3
+ <script lang="ts" generics="T extends object">
4
+ import { dev } from '$app/environment';
4
5
  import Button from '../../Button.svelte';
5
6
  import MultiSelect from '../../MultiSelect.svelte';
6
7
  import NumberInput from '../../NumberInput.svelte';
8
+ import QuerySelect from '../../QuerySelect.svelte';
7
9
  import SingleSelect from '../../SingleSelect.svelte';
8
10
  import TextInput from '../../TextInput.svelte';
11
+ import DateModal from '../../Touch/DateModal.svelte';
12
+ import { devCatch, hasQuery, isDateTuple, isNumberTuple } from '../../../Helpers/Helpers.svelte.js';
13
+ import type { SelectOption } from '../../../Types/Internal/SelectOption.js';
9
14
  import { getContext, onMount, untrack } from 'svelte';
10
- import { ColumnType } from '../Types/Columns/ColumnType.js';
11
- import { AccessorType } from '../Types/Columns/Definitions/Accessors/AccessorType.js';
12
- import { DisplayType } from '../Types/Columns/DisplayType.js';
15
+ import { CheckboxDef } from '../Types/Columns/Definitions/Accessors/CheckboxDef.svelte.js';
16
+ import { DateInputDef } from '../Types/Columns/Definitions/Accessors/DateInputDef.svelte.js';
17
+ import { NumberInputDef } from '../Types/Columns/Definitions/Accessors/NumberInputDef.svelte.js';
18
+ import { SelectDef } from '../Types/Columns/Definitions/Accessors/SelectDef.svelte.js';
13
19
  import { TableContext } from '../Types/Context/TableContext.svelte.js';
14
20
  import { CustomFilterType } from '../Types/Filtering/CustomFilterType.js';
15
- import type { CustomRemoteFilters } from '../Types/Filtering/CustomRemoteFilters.js';
16
21
  import { NumberDateFilterMode } from '../Types/Filtering/NumberDateFilterMode.js';
17
22
  import { StringFilterMode } from '../Types/Filtering/StringFilterMode.js';
18
- import type { ColumnDef } from '../Types/Columns/Definitions/ColumnDef.svelte.js';
19
- import type { SelectOption } from '../../../Types/Internal/SelectOption.js';
20
- import { SelectDef } from '../Types/Columns/Definitions/Accessors/SelectDef.svelte.js';
21
- import { DateInputDef } from '../Types/Columns/Definitions/Accessors/DateInputDef.svelte.js';
22
- import { CheckboxDef } from '../Types/Columns/Definitions/Accessors/CheckboxDef.svelte.js';
23
- import DateModal from '../../Touch/DateModal.svelte';
24
- import { NumberInputDef } from '../Types/Columns/Definitions/Accessors/NumberInputDef.svelte.js';
25
- import QuerySelect from '../../QuerySelect.svelte';
26
- import { AccessorDef } from '../Types/Columns/Definitions/Accessors/AccessorDef.svelte.js';
27
- import { AbstractDisplayDef } from '../Types/Columns/Definitions/Display/AbstractDisplayDef.svelte.js';
28
- import { dev } from '$app/environment';
23
+ import type { FilterInputProps } from './FilterInputProps.js';
24
+ import { numberDateFilterTypes } from './numberDateFilterTypes.js';
25
+ import { stringFilterTypes } from './stringFilterTypes.js';
29
26
 
30
- export const stringFilterTypes = [
31
- { value: StringFilterMode.Equals, label: 'Equals' },
32
- { value: StringFilterMode.NotEquals, label: 'Does not equal' },
33
- { value: StringFilterMode.Contains, label: 'Contains' },
34
- { value: StringFilterMode.NotContains, label: 'Does not contain' },
35
- { value: StringFilterMode.StartsWith, label: 'Starts With' },
36
- { value: StringFilterMode.NotStartsWith, label: 'Does not start with' },
37
- { value: StringFilterMode.EndsWith, label: 'Ends With' },
38
- { value: StringFilterMode.NotEndsWith, label: 'Does not end with' },
39
- { value: StringFilterMode.In, label: 'In' },
40
- { value: StringFilterMode.NotIn, label: 'Not in' },
41
- { value: StringFilterMode.Empty, label: 'Empty' },
42
- { value: StringFilterMode.null, label: 'Is null' }
43
- ];
44
-
45
- export const numberDateFilterTypes = [
46
- { value: NumberDateFilterMode.Equals, label: 'Equals' },
47
- { value: NumberDateFilterMode.NotEquals, label: 'Does not equal' },
48
- { value: NumberDateFilterMode.LessThan, label: 'Less Than' },
49
- { value: NumberDateFilterMode.LessThanOrEqual, label: 'Less than or equal to' },
50
- { value: NumberDateFilterMode.GreaterThan, label: 'Greater than' },
51
- { value: NumberDateFilterMode.GreaterThanOrEqual, label: 'Greater than or equal to' },
52
- { value: NumberDateFilterMode.Between, label: 'Between' },
53
- { value: NumberDateFilterMode.In, label: 'In' },
54
- { value: NumberDateFilterMode.NotIn, label: 'Not in' },
55
- { value: NumberDateFilterMode.null, label: 'Is null' }
56
- ];
57
-
58
- // export const searchableColumnTypes = new Set<ColumnType | undefined>([
59
- // ColumnType.Accessor,
60
- // ColumnType.Display,
61
- // ColumnType.FilterOnly
62
- // //ColumnType.Custom,
63
- // ]);
64
- // export const searchableTypes = new Set<AccessorType | DisplayType | undefined>([
65
- // AccessorType.Text,
66
- // AccessorType.Number,
67
- // AccessorType.Date,
68
- // // AccessorType.Checkbox,
69
- // DisplayType.Normal,
70
- // DisplayType.Bubbles,
71
- // DisplayType.Progress,
72
- // DisplayType.Icon
73
- // ]);
74
-
75
- export interface FilterInputProps<T extends object> {
76
- def: ColumnDef<T>;
77
- customFilters?: CustomRemoteFilters | undefined;
78
- }
79
- </script>
80
-
81
- <script lang="ts" generics="T extends object">
82
27
  const tableContext = getContext<TableContext<T>>(TableContext.identifier);
83
28
 
84
29
  const { def, customFilters }: FilterInputProps<T> = $props();
85
30
 
86
31
  const customFilter = $derived(customFilters?.get(def.id));
32
+
87
33
  const isRemoteSelect = $derived(customFilter?.type === CustomFilterType.Select);
88
34
 
89
- let value: SelectOption<unknown> | unknown | null | undefined = $state(null);
35
+ let value: /*SelectOption<unknown> |*/ unknown /*| null | undefined*/ = $state(null);
90
36
  let valueMin: number | null = $state(null);
91
37
  let valueMax: number | null = $state(null);
92
38
 
@@ -105,19 +51,15 @@
105
51
  // );
106
52
 
107
53
  const isSearchable = $derived(
108
- def.allowFiltering != false && (hasFilterFn || customFilters?.has(def.id) == true)
54
+ def.allowFiltering && (hasFilterFn || customFilters?.has(def.id) == true)
109
55
  // ((hasFilterFn && hasAcceptableColumnType) || customFilters?.has(def.id) == true) // removed hasAcceptableColumnType due to it being redundant
110
56
  );
111
57
 
112
- const hasQuery = $derived(isRemoteSelect && customFilter?.query);
113
-
114
58
  const isSelect = $derived(
115
59
  def instanceof SelectDef || customFilter?.type === CustomFilterType.Select
116
60
  );
117
61
 
118
- const options = $derived(
119
- isSelect ? ((def as SelectDef<T>)?.getOptions?.() ?? customFilter?.options ?? []) : []
120
- );
62
+ const options = $derived(isSelect ? (def.getOptions?.() ?? customFilter?.options ?? []) : []);
121
63
 
122
64
  let optionsPromise: Array<SelectOption<unknown>> | Promise<Array<SelectOption<unknown>>> = $state(
123
65
  [] as Array<SelectOption<unknown>> | Promise<Array<SelectOption<unknown>>>
@@ -148,7 +90,7 @@
148
90
  console.log('filtering state value:', $state.snapshot(filteringStateValue));
149
91
  }
150
92
 
151
- if (hasQuery) {
93
+ if (hasQuery(customFilter)) {
152
94
  if (def.debug) {
153
95
  console.log('has query');
154
96
  }
@@ -161,13 +103,7 @@
161
103
  if (def.debug) {
162
104
  console.log(`query values:`, tableContext.dataRepo.__queryValues);
163
105
  }
164
- const x = tableContext.dataRepo.__queryValues.get(
165
- customFilter?.id ??
166
- customFilter?.label ??
167
- customFilter?.objectName ??
168
- customFilter?.queryKey ??
169
- def.id
170
- );
106
+ const x = await tableContext.dataRepo.__queryValues.get(customFilter.id);
171
107
 
172
108
  if (def.debug) {
173
109
  console.log('value:', $state.snapshot(x));
@@ -183,7 +119,7 @@
183
119
  console.warn(e);
184
120
  value = null;
185
121
  }
186
- });
122
+ }).catch(devCatch);
187
123
  } else if (isSelect) {
188
124
  if (def.debug) {
189
125
  console.log('is select (not query)');
@@ -196,9 +132,9 @@
196
132
  }
197
133
  const x = opts.filter((it) => {
198
134
  if (it.value != null && (typeof it.value == 'string' || typeof it.value == 'number')) {
199
- return (
200
- filteringStateValue as unknown as Array<string | number> | undefined
201
- )?.includes(it.value);
135
+ return (filteringStateValue as Array<string | number> | undefined)?.includes(
136
+ it.value
137
+ );
202
138
  }
203
139
  return false;
204
140
  });
@@ -211,10 +147,10 @@
211
147
  console.log(e);
212
148
  }
213
149
  }
214
- });
150
+ }).catch(devCatch);
215
151
  } else if (isNumeric) {
216
152
  if (
217
- selectedNumberFilterType.value === NumberDateFilterMode.Between &&
153
+ selectedNumberFilterType?.value === NumberDateFilterMode.Between &&
218
154
  tableContext.paginationRepo?.filtering
219
155
  ) {
220
156
  if (filteringStateValue != undefined) {
@@ -252,17 +188,17 @@
252
188
  onMount(() => {
253
189
  const filterOption =
254
190
  tableContext.paginationRepo?.filtering &&
255
- tableContext.paginationRepo?.filtering.find((it) => it.id === def.id);
191
+ tableContext.paginationRepo.filtering.find((it) => it.id === def.id);
256
192
 
257
193
  if (filterOption) {
258
- if (Array.isArray(filterOption.value)) {
194
+ if (isNumberTuple(filterOption.value)) {
259
195
  [valueMin, valueMax] = filterOption.value;
260
196
  if (valueMax == undefined) {
261
197
  valueMax = valueMin;
262
198
  } else if (valueMin == undefined) {
263
199
  valueMin = valueMax;
264
200
  }
265
- } else if (!hasQuery) {
201
+ } else if (!hasQuery(customFilter)) {
266
202
  const gotValue = filterOption.value;
267
203
  if (gotValue == null || typeof gotValue == 'string' || typeof gotValue == 'number') {
268
204
  value = gotValue;
@@ -279,14 +215,14 @@
279
215
  // (filterMode as StringFilterMode | undefined) ?? StringFilterMode.Contains;
280
216
  });
281
217
 
282
- const filterMode = $derived(tableContext.paginationRepo?.filterModes?.get(def.id));
283
- const selectedNumberFilterType: SelectOption<NumberDateFilterMode> = $derived.by(() => {
218
+ const filterMode = $derived(tableContext.paginationRepo?.filterModes.get(def.id));
219
+ const selectedNumberFilterType: SelectOption<NumberDateFilterMode> | null = $derived.by(() => {
284
220
  const value = (filterMode as NumberDateFilterMode | undefined) ?? NumberDateFilterMode.In;
285
- return numberDateFilterTypes.find((it) => it.value === value)!;
221
+ return numberDateFilterTypes.find((it) => it.value === value) ?? null;
286
222
  });
287
- const selectedStringFilterType: SelectOption<StringFilterMode> = $derived.by(() => {
223
+ const selectedStringFilterType: SelectOption<StringFilterMode> | null = $derived.by(() => {
288
224
  const value = (filterMode as StringFilterMode | undefined) ?? StringFilterMode.Contains;
289
- return stringFilterTypes.find((it) => it.value === value)!;
225
+ return stringFilterTypes.find((it) => it.value === value) ?? null;
290
226
  });
291
227
 
292
228
  // let selectedNumberFilterType: NumberDateFilterMode = $state(NumberDateFilterMode.In);
@@ -322,8 +258,8 @@
322
258
  <div class="row">
323
259
  {#if def instanceof DateInputDef}
324
260
  {@const dateValues =
325
- tableContext.paginationRepo?.filtering?.find((it) => it.id === def.id)?.value ?? []}
326
- {#if Array.isArray(dateValues)}
261
+ tableContext.paginationRepo?.filtering.find((it) => it.id === def.id)?.value ?? []}
262
+ {#if isDateTuple(dateValues)}
327
263
  {@const [fromDate, toDate] = dateValues}
328
264
  <div class="spaced-around">
329
265
  <Button
@@ -382,7 +318,7 @@
382
318
  name={customFilter?.objectName ?? 'Item'}
383
319
  {options}
384
320
  valueAsObject={false}
385
- onchange={(e) => {
321
+ onchange={(e: Array<SelectOption<unknown>>) => {
386
322
  tableContext.paginationRepo?.filterBy(
387
323
  def.id,
388
324
  e.map((it) => it.value)
@@ -393,20 +329,19 @@
393
329
  />
394
330
  {:catch e}
395
331
  <span>Error retrieving options: {e.message}</span>
396
- <Button onclick={() => retryOptionsPromise()}>Retry</Button>
332
+ <Button
333
+ onclick={() => {
334
+ retryOptionsPromise();
335
+ }}>Retry</Button
336
+ >
397
337
  {/await}
398
338
  </div>
399
- {:else if isRemoteSelect}
339
+ {:else if customFilter && isRemoteSelect}
400
340
  <div class="contents">
401
341
  {#await options then options}
402
- {#if hasQuery}
403
- {#if customFilter!.valueAsObject !== true}
404
- {@const label =
405
- customFilter?.id ??
406
- customFilter?.label ??
407
- customFilter?.objectName ??
408
- customFilter?.queryKey ??
409
- def.id}
342
+ {#if hasQuery(customFilter)}
343
+ {#if customFilter.valueAsObject !== true}
344
+ {@const label = customFilter.id}
410
345
 
411
346
  <!-- TODO: multiselect -->
412
347
 
@@ -414,21 +349,16 @@
414
349
  valueAsObject={false}
415
350
  {label}
416
351
  clearable
417
- name={customFilter?.objectName ?? 'Item'}
352
+ name={customFilter.objectName ?? 'Item'}
418
353
  valueProp="value"
419
354
  labelProp="label"
420
355
  value={value as string | number | null}
421
- query={customFilter!.query!}
356
+ query={customFilter.query}
422
357
  bind:options={lastQueryOptions}
423
358
  onchange={generateOnChangePrimitive(label)}
424
359
  />
425
360
  {:else}
426
- {@const label =
427
- customFilter?.id ??
428
- customFilter?.label ??
429
- customFilter?.objectName ??
430
- customFilter?.queryKey ??
431
- def.id}
361
+ {@const label = customFilter.id}
432
362
 
433
363
  <!-- TODO: multiselect -->
434
364
 
@@ -436,28 +366,24 @@
436
366
  valueAsObject={true}
437
367
  {label}
438
368
  clearable
439
- name={customFilter?.objectName ?? 'Item'}
369
+ name={customFilter.objectName ?? 'Item'}
440
370
  valueProp="value"
441
371
  labelProp="label"
442
372
  value={value as null}
443
- query={customFilter!.query!}
373
+ query={customFilter.query}
444
374
  bind:options={lastQueryOptions}
445
375
  onchange={generateOnChangeObject(label)}
446
376
  />
447
377
  {/if}
448
378
  {:else}
449
379
  <MultiSelect
450
- label={customFilter?.id ??
451
- customFilter?.label ??
452
- customFilter?.objectName ??
453
- customFilter?.queryKey ??
454
- def.id}
380
+ label={customFilter.id}
455
381
  labelProp="label"
456
382
  valueProp="value"
457
- name={customFilter?.objectName ?? 'Item'}
383
+ name={customFilter.objectName ?? 'Item'}
458
384
  {options}
459
385
  valueAsObject={false}
460
- onchange={(e) => {
386
+ onchange={(e: Array<SelectOption<unknown>>) => {
461
387
  tableContext.paginationRepo?.filterBy(
462
388
  def.id,
463
389
  e.map((it) => it.value)
@@ -506,25 +432,25 @@
506
432
  </label>
507
433
  </div>
508
434
  {:else if isNumeric}
435
+ {@const label = typeof def.header === 'string' ? def.header : undefined}
509
436
  <div class="left">
510
437
  <SingleSelect
511
- label={def.header?.toString() ?? def.id}
512
- virtual
438
+ {label}
513
439
  name="Filter Type"
514
440
  options={numberDateFilterTypes}
515
441
  labelProp="label"
516
442
  valueProp="value"
517
443
  valueAsObject
518
444
  value={selectedNumberFilterType}
519
- onchange={(newValue) => {
445
+ onchange={(newValue: SelectOption<NumberDateFilterMode> | null) => {
520
446
  const oldFilterType = selectedNumberFilterType;
521
447
 
522
448
  const newFilterType = newValue?.value ?? NumberDateFilterMode.In;
523
449
  tableContext.paginationRepo?.setFilterMode(def.id, newFilterType);
524
- tableContext.paginationRepo?.filterModes?.set(def.id, newFilterType);
450
+ tableContext.paginationRepo?.filterModes.set(def.id, newFilterType);
525
451
 
526
- if (selectedNumberFilterType.value !== oldFilterType.value) {
527
- if (oldFilterType.value === NumberDateFilterMode.Between) {
452
+ if (selectedNumberFilterType?.value !== oldFilterType?.value) {
453
+ if (oldFilterType?.value === NumberDateFilterMode.Between) {
528
454
  valueMax = null;
529
455
  tableContext.paginationRepo?.filterBy(def.id, [valueMin, valueMin]);
530
456
  }
@@ -536,7 +462,7 @@
536
462
  // TODO what about the other modes?
537
463
  }
538
464
  }}
539
- onkeydown={(e) => {
465
+ onkeydown={(e: KeyboardEvent) => {
540
466
  e.stopPropagation();
541
467
  }}
542
468
  />
@@ -549,7 +475,7 @@
549
475
  oninput={() => {
550
476
  tableContext.paginationRepo?.filterBy(def.id, [valueMin, valueMax]);
551
477
  }}
552
- onkeydown={(e) => {
478
+ onkeydown={(e: KeyboardEvent) => {
553
479
  e.stopPropagation();
554
480
  }}
555
481
  />
@@ -560,7 +486,7 @@
560
486
  oninput={() => {
561
487
  tableContext.paginationRepo?.filterBy(def.id, [valueMin, valueMax]);
562
488
  }}
563
- onkeydown={(e) => {
489
+ onkeydown={(e: KeyboardEvent) => {
564
490
  e.stopPropagation();
565
491
  }}
566
492
  />
@@ -571,31 +497,33 @@
571
497
  oninput={() => {
572
498
  tableContext.paginationRepo?.filterBy(def.id, [value]);
573
499
  }}
574
- onkeydown={(e) => {
500
+ onkeydown={(e: KeyboardEvent) => {
575
501
  e.stopPropagation();
576
502
  }}
577
503
  />
578
- {:else}
504
+ {:else if dev}
505
+ error: {value?.toString()}
506
+ <!-- eslint-disable-next-line svelte/no-at-debug-tags -->
579
507
  {@debug value}
580
508
  {/if}
581
509
  </div>
582
510
  {:else}
511
+ {@const label = typeof def.header === 'string' ? def.header : undefined}
583
512
  <div class="left">
584
513
  <SingleSelect
585
514
  name="Filter Type"
586
515
  valueAsObject
587
- virtual
588
- label={def.header?.toString() ?? def.id}
516
+ {label}
589
517
  options={stringFilterTypes}
590
518
  labelProp="label"
591
519
  valueProp="value"
592
520
  value={selectedStringFilterType}
593
- onchange={(newValue) => {
521
+ onchange={(newValue: SelectOption<StringFilterMode> | null) => {
594
522
  const filterType = newValue?.value ?? StringFilterMode.Contains;
595
523
  tableContext.paginationRepo?.setFilterMode(def.id, filterType);
596
- tableContext.paginationRepo?.filterModes?.set(def.id, filterType);
524
+ tableContext.paginationRepo?.filterModes.set(def.id, filterType);
597
525
  }}
598
- onkeydown={(e) => {
526
+ onkeydown={(e: KeyboardEvent) => {
599
527
  e.stopPropagation();
600
528
  }}
601
529
  />
@@ -608,11 +536,13 @@
608
536
  oninput={() => {
609
537
  tableContext.paginationRepo?.filterBy(def.id, value);
610
538
  }}
611
- onkeydown={(e) => {
539
+ onkeydown={(e: KeyboardEvent) => {
612
540
  e.stopPropagation();
613
541
  }}
614
542
  />
615
- {:else}
543
+ {:else if dev}
544
+ error: {value?.toString()}
545
+ <!-- eslint-disable-next-line svelte/no-at-debug-tags -->
616
546
  {@debug value}
617
547
  {/if}
618
548
  </div>
@@ -1,19 +1,4 @@
1
- import type { CustomRemoteFilters } from '../Types/Filtering/CustomRemoteFilters.js';
2
- import { NumberDateFilterMode } from '../Types/Filtering/NumberDateFilterMode.js';
3
- import { StringFilterMode } from '../Types/Filtering/StringFilterMode.js';
4
- import type { ColumnDef } from '../Types/Columns/Definitions/ColumnDef.svelte.js';
5
- export declare const stringFilterTypes: {
6
- value: StringFilterMode;
7
- label: string;
8
- }[];
9
- export declare const numberDateFilterTypes: {
10
- value: NumberDateFilterMode;
11
- label: string;
12
- }[];
13
- export interface FilterInputProps<T extends object> {
14
- def: ColumnDef<T>;
15
- customFilters?: CustomRemoteFilters | undefined;
16
- }
1
+ import type { FilterInputProps } from './FilterInputProps.js';
17
2
  declare function $$render<T extends object>(): {
18
3
  props: FilterInputProps<T>;
19
4
  exports: {};
@@ -0,0 +1,6 @@
1
+ import type { ColumnDef } from '../Types/Columns/Definitions/ColumnDef.svelte.js';
2
+ import type { CustomRemoteFilters } from '../Types/Filtering/CustomRemoteFilters.js';
3
+ export interface FilterInputProps<T extends object> {
4
+ def: ColumnDef<T>;
5
+ customFilters?: CustomRemoteFilters | undefined;
6
+ }
@@ -0,0 +1 @@
1
+ export {};