@simplysm/solid 13.0.75 → 13.0.77

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 (782) hide show
  1. package/README.md +13 -14
  2. package/dist/components/data/Pagination.d.ts +2 -2
  3. package/dist/components/data/Pagination.d.ts.map +1 -1
  4. package/dist/components/data/Pagination.js +7 -5
  5. package/dist/components/data/Pagination.js.map +2 -2
  6. package/dist/components/data/Table.d.ts +5 -1
  7. package/dist/components/data/Table.d.ts.map +1 -1
  8. package/dist/components/data/Table.js +64 -22
  9. package/dist/components/data/Table.js.map +2 -2
  10. package/dist/components/data/calendar/Calendar.d.ts.map +1 -1
  11. package/dist/components/data/calendar/Calendar.js +10 -26
  12. package/dist/components/data/calendar/Calendar.js.map +2 -2
  13. package/dist/components/data/kanban/{Kanban.css → Kanban.animate.css} +0 -2
  14. package/dist/components/data/kanban/Kanban.d.ts +50 -16
  15. package/dist/components/data/kanban/Kanban.d.ts.map +1 -1
  16. package/dist/components/data/kanban/Kanban.js +144 -119
  17. package/dist/components/data/kanban/Kanban.js.map +2 -2
  18. package/dist/components/data/list/List.d.ts +7 -28
  19. package/dist/components/data/list/List.d.ts.map +1 -1
  20. package/dist/components/data/list/List.js +5 -7
  21. package/dist/components/data/list/List.js.map +2 -2
  22. package/dist/components/data/list/ListItem.d.ts +7 -34
  23. package/dist/components/data/list/ListItem.d.ts.map +1 -1
  24. package/dist/components/data/list/ListItem.js +15 -20
  25. package/dist/components/data/list/ListItem.js.map +2 -2
  26. package/dist/components/data/list/ListItem.styles.d.ts +1 -1
  27. package/dist/components/data/list/ListItem.styles.d.ts.map +1 -1
  28. package/dist/components/data/list/ListItem.styles.js +8 -8
  29. package/dist/components/data/list/ListItem.styles.js.map +1 -1
  30. package/dist/components/data/sheet/DataSheet.d.ts +3 -7
  31. package/dist/components/data/sheet/DataSheet.d.ts.map +1 -1
  32. package/dist/components/data/sheet/DataSheet.js +557 -843
  33. package/dist/components/data/sheet/DataSheet.js.map +2 -2
  34. package/dist/components/data/sheet/DataSheet.styles.d.ts +2 -1
  35. package/dist/components/data/sheet/DataSheet.styles.d.ts.map +1 -1
  36. package/dist/components/data/sheet/DataSheet.styles.js +32 -10
  37. package/dist/components/data/sheet/DataSheet.styles.js.map +1 -1
  38. package/dist/components/data/sheet/{types.d.ts → DataSheet.types.d.ts} +14 -9
  39. package/dist/components/data/sheet/DataSheet.types.d.ts.map +1 -0
  40. package/dist/components/data/sheet/DataSheet.types.js +1 -0
  41. package/dist/components/data/sheet/{sheetUtils.d.ts → DataSheet.utils.d.ts} +4 -4
  42. package/dist/components/data/sheet/DataSheet.utils.d.ts.map +1 -0
  43. package/dist/components/data/sheet/{sheetUtils.js → DataSheet.utils.js} +8 -8
  44. package/dist/components/data/sheet/DataSheet.utils.js.map +6 -0
  45. package/dist/components/data/sheet/DataSheetColumn.d.ts +4 -3
  46. package/dist/components/data/sheet/DataSheetColumn.d.ts.map +1 -1
  47. package/dist/components/data/sheet/DataSheetColumn.js +4 -22
  48. package/dist/components/data/sheet/DataSheetColumn.js.map +2 -2
  49. package/dist/components/data/sheet/DataSheetConfigDialog.d.ts +2 -1
  50. package/dist/components/data/sheet/DataSheetConfigDialog.d.ts.map +1 -1
  51. package/dist/components/data/sheet/DataSheetConfigDialog.js +19 -18
  52. package/dist/components/data/sheet/DataSheetConfigDialog.js.map +2 -2
  53. package/dist/components/data/sheet/hooks/useDataSheetExpansion.d.ts +17 -0
  54. package/dist/components/data/sheet/hooks/useDataSheetExpansion.d.ts.map +1 -0
  55. package/dist/components/data/sheet/hooks/useDataSheetExpansion.js +61 -0
  56. package/dist/components/data/sheet/hooks/useDataSheetExpansion.js.map +6 -0
  57. package/dist/components/data/sheet/hooks/useDataSheetFixedColumns.d.ts +29 -0
  58. package/dist/components/data/sheet/hooks/useDataSheetFixedColumns.d.ts.map +1 -0
  59. package/dist/components/data/sheet/hooks/useDataSheetFixedColumns.js +101 -0
  60. package/dist/components/data/sheet/hooks/useDataSheetFixedColumns.js.map +6 -0
  61. package/dist/components/data/sheet/hooks/useDataSheetHeaderCell.d.ts +27 -0
  62. package/dist/components/data/sheet/hooks/useDataSheetHeaderCell.d.ts.map +1 -0
  63. package/dist/components/data/sheet/hooks/useDataSheetHeaderCell.js +173 -0
  64. package/dist/components/data/sheet/hooks/useDataSheetHeaderCell.js.map +6 -0
  65. package/dist/components/data/sheet/hooks/useDataSheetPaging.d.ts +17 -0
  66. package/dist/components/data/sheet/hooks/useDataSheetPaging.d.ts.map +1 -0
  67. package/dist/components/data/sheet/hooks/useDataSheetPaging.js +32 -0
  68. package/dist/components/data/sheet/hooks/useDataSheetPaging.js.map +6 -0
  69. package/dist/components/data/sheet/hooks/useDataSheetReorder.d.ts +20 -0
  70. package/dist/components/data/sheet/hooks/useDataSheetReorder.d.ts.map +1 -0
  71. package/dist/components/data/sheet/hooks/useDataSheetReorder.js +112 -0
  72. package/dist/components/data/sheet/hooks/useDataSheetReorder.js.map +6 -0
  73. package/dist/components/data/sheet/hooks/useDataSheetSelection.d.ts +22 -0
  74. package/dist/components/data/sheet/hooks/useDataSheetSelection.d.ts.map +1 -0
  75. package/dist/components/data/sheet/hooks/useDataSheetSelection.js +63 -0
  76. package/dist/components/data/sheet/hooks/useDataSheetSelection.js.map +6 -0
  77. package/dist/components/data/sheet/hooks/useDataSheetSorting.d.ts +17 -0
  78. package/dist/components/data/sheet/hooks/useDataSheetSorting.d.ts.map +1 -0
  79. package/dist/components/data/sheet/hooks/useDataSheetSorting.js +45 -0
  80. package/dist/components/data/sheet/hooks/useDataSheetSorting.js.map +6 -0
  81. package/dist/components/disclosure/Collapse.d.ts.map +1 -1
  82. package/dist/components/disclosure/Collapse.js +1 -3
  83. package/dist/components/disclosure/Collapse.js.map +2 -2
  84. package/dist/components/disclosure/Dialog.d.ts +79 -25
  85. package/dist/components/disclosure/Dialog.d.ts.map +1 -1
  86. package/dist/components/disclosure/Dialog.js +251 -113
  87. package/dist/components/disclosure/Dialog.js.map +2 -2
  88. package/dist/components/disclosure/Dropdown.d.ts +8 -35
  89. package/dist/components/disclosure/Dropdown.d.ts.map +1 -1
  90. package/dist/components/disclosure/Dropdown.js +60 -61
  91. package/dist/components/disclosure/Dropdown.js.map +2 -2
  92. package/dist/components/disclosure/Tabs.d.ts +4 -6
  93. package/dist/components/disclosure/Tabs.d.ts.map +1 -1
  94. package/dist/components/disclosure/Tabs.js +16 -17
  95. package/dist/components/disclosure/Tabs.js.map +2 -2
  96. package/dist/components/display/Alert.d.ts +1 -1
  97. package/dist/components/display/Alert.d.ts.map +1 -1
  98. package/dist/components/display/Alert.js +2 -4
  99. package/dist/components/display/Alert.js.map +2 -2
  100. package/dist/components/display/Barcode.d.ts +1 -1
  101. package/dist/components/display/Barcode.d.ts.map +1 -1
  102. package/dist/components/display/Barcode.js +3 -4
  103. package/dist/components/display/Barcode.js.map +2 -2
  104. package/dist/components/display/Barcode.types.d.ts +2 -0
  105. package/dist/components/display/Barcode.types.d.ts.map +1 -0
  106. package/dist/components/display/Barcode.types.js +1 -0
  107. package/dist/components/display/Card.animate.css +11 -0
  108. package/dist/components/display/Card.d.ts +1 -0
  109. package/dist/components/display/Card.d.ts.map +1 -1
  110. package/dist/components/display/Card.js +3 -2
  111. package/dist/components/display/Card.js.map +2 -2
  112. package/dist/components/display/Echarts.d.ts +2 -2
  113. package/dist/components/display/Echarts.d.ts.map +1 -1
  114. package/dist/components/display/Echarts.js +8 -11
  115. package/dist/components/display/Echarts.js.map +2 -2
  116. package/dist/components/display/Link.d.ts +1 -1
  117. package/dist/components/display/Link.d.ts.map +1 -1
  118. package/dist/components/display/Link.js +3 -4
  119. package/dist/components/display/Link.js.map +2 -2
  120. package/dist/components/display/Tag.d.ts +1 -1
  121. package/dist/components/display/Tag.d.ts.map +1 -1
  122. package/dist/components/display/Tag.js +2 -4
  123. package/dist/components/display/Tag.js.map +2 -2
  124. package/dist/components/features/address/AddressSearch.d.ts +3 -1
  125. package/dist/components/features/address/AddressSearch.d.ts.map +1 -1
  126. package/dist/components/features/address/AddressSearch.js +7 -5
  127. package/dist/components/features/address/AddressSearch.js.map +2 -2
  128. package/dist/components/features/crud-detail/CrudDetail.d.ts +12 -13
  129. package/dist/components/features/crud-detail/CrudDetail.d.ts.map +1 -1
  130. package/dist/components/features/crud-detail/CrudDetail.js +218 -206
  131. package/dist/components/features/crud-detail/CrudDetail.js.map +2 -2
  132. package/dist/components/features/crud-detail/{types.d.ts → CrudDetail.types.d.ts} +3 -13
  133. package/dist/components/features/crud-detail/CrudDetail.types.d.ts.map +1 -0
  134. package/dist/components/features/crud-detail/CrudDetail.types.js +1 -0
  135. package/dist/components/features/crud-detail/CrudDetailAfter.d.ts +5 -4
  136. package/dist/components/features/crud-detail/CrudDetailAfter.d.ts.map +1 -1
  137. package/dist/components/features/crud-detail/CrudDetailAfter.js +3 -10
  138. package/dist/components/features/crud-detail/CrudDetailAfter.js.map +2 -2
  139. package/dist/components/features/crud-detail/CrudDetailBefore.d.ts +5 -4
  140. package/dist/components/features/crud-detail/CrudDetailBefore.d.ts.map +1 -1
  141. package/dist/components/features/crud-detail/CrudDetailBefore.js +3 -10
  142. package/dist/components/features/crud-detail/CrudDetailBefore.js.map +2 -2
  143. package/dist/components/features/crud-detail/CrudDetailTools.d.ts +5 -4
  144. package/dist/components/features/crud-detail/CrudDetailTools.d.ts.map +1 -1
  145. package/dist/components/features/crud-detail/CrudDetailTools.js +3 -10
  146. package/dist/components/features/crud-detail/CrudDetailTools.js.map +2 -2
  147. package/dist/components/features/crud-sheet/CrudSheet.d.ts +6 -9
  148. package/dist/components/features/crud-sheet/CrudSheet.d.ts.map +1 -1
  149. package/dist/components/features/crud-sheet/CrudSheet.js +147 -141
  150. package/dist/components/features/crud-sheet/CrudSheet.js.map +2 -2
  151. package/dist/components/features/crud-sheet/{types.d.ts → CrudSheet.types.d.ts} +14 -44
  152. package/dist/components/features/crud-sheet/CrudSheet.types.d.ts.map +1 -0
  153. package/dist/components/features/crud-sheet/CrudSheet.types.js +1 -0
  154. package/dist/components/features/crud-sheet/CrudSheetColumn.d.ts +4 -3
  155. package/dist/components/features/crud-sheet/CrudSheetColumn.d.ts.map +1 -1
  156. package/dist/components/features/crud-sheet/CrudSheetColumn.js +4 -23
  157. package/dist/components/features/crud-sheet/CrudSheetColumn.js.map +2 -2
  158. package/dist/components/features/crud-sheet/CrudSheetFilter.d.ts +7 -5
  159. package/dist/components/features/crud-sheet/CrudSheetFilter.d.ts.map +1 -1
  160. package/dist/components/features/crud-sheet/CrudSheetFilter.js +4 -8
  161. package/dist/components/features/crud-sheet/CrudSheetFilter.js.map +2 -2
  162. package/dist/components/features/crud-sheet/CrudSheetHeader.d.ts +5 -4
  163. package/dist/components/features/crud-sheet/CrudSheetHeader.d.ts.map +1 -1
  164. package/dist/components/features/crud-sheet/CrudSheetHeader.js +3 -10
  165. package/dist/components/features/crud-sheet/CrudSheetHeader.js.map +2 -2
  166. package/dist/components/features/crud-sheet/CrudSheetTools.d.ts +7 -5
  167. package/dist/components/features/crud-sheet/CrudSheetTools.d.ts.map +1 -1
  168. package/dist/components/features/crud-sheet/CrudSheetTools.js +4 -8
  169. package/dist/components/features/crud-sheet/CrudSheetTools.js.map +2 -2
  170. package/dist/components/features/data-select-button/DataSelectButton.d.ts +25 -28
  171. package/dist/components/features/data-select-button/DataSelectButton.d.ts.map +1 -1
  172. package/dist/components/features/data-select-button/DataSelectButton.js +27 -38
  173. package/dist/components/features/data-select-button/DataSelectButton.js.map +2 -2
  174. package/dist/components/features/permission-table/PermissionTable.d.ts.map +1 -1
  175. package/dist/components/features/permission-table/PermissionTable.js +9 -13
  176. package/dist/components/features/permission-table/PermissionTable.js.map +2 -2
  177. package/dist/components/features/shared-data/SharedDataSelect.d.ts +20 -19
  178. package/dist/components/features/shared-data/SharedDataSelect.d.ts.map +1 -1
  179. package/dist/components/features/shared-data/SharedDataSelect.js +62 -84
  180. package/dist/components/features/shared-data/SharedDataSelect.js.map +2 -2
  181. package/dist/components/features/shared-data/SharedDataSelectButton.d.ts +12 -9
  182. package/dist/components/features/shared-data/SharedDataSelectButton.d.ts.map +1 -1
  183. package/dist/components/features/shared-data/SharedDataSelectButton.js.map +1 -1
  184. package/dist/components/features/shared-data/SharedDataSelectList.d.ts +12 -8
  185. package/dist/components/features/shared-data/SharedDataSelectList.d.ts.map +1 -1
  186. package/dist/components/features/shared-data/SharedDataSelectList.js +136 -116
  187. package/dist/components/features/shared-data/SharedDataSelectList.js.map +2 -2
  188. package/dist/components/feedback/Progress.d.ts +3 -2
  189. package/dist/components/feedback/Progress.d.ts.map +1 -1
  190. package/dist/components/feedback/Progress.js +9 -7
  191. package/dist/components/feedback/Progress.js.map +2 -2
  192. package/dist/components/feedback/busy/BusyContainer.d.ts +2 -2
  193. package/dist/components/feedback/busy/BusyContainer.d.ts.map +1 -1
  194. package/dist/components/feedback/busy/BusyContainer.js +35 -32
  195. package/dist/components/feedback/busy/BusyContainer.js.map +2 -2
  196. package/dist/components/feedback/busy/BusyProvider.d.ts +26 -2
  197. package/dist/components/feedback/busy/BusyProvider.d.ts.map +1 -1
  198. package/dist/components/feedback/busy/BusyProvider.js +13 -7
  199. package/dist/components/feedback/busy/BusyProvider.js.map +2 -2
  200. package/dist/components/feedback/notification/NotificationBanner.d.ts.map +1 -1
  201. package/dist/components/feedback/notification/NotificationBanner.js +13 -19
  202. package/dist/components/feedback/notification/NotificationBanner.js.map +2 -2
  203. package/dist/components/feedback/notification/NotificationBell.d.ts.map +1 -1
  204. package/dist/components/feedback/notification/NotificationBell.js +69 -71
  205. package/dist/components/feedback/notification/NotificationBell.js.map +2 -2
  206. package/dist/components/feedback/notification/NotificationProvider.d.ts +68 -1
  207. package/dist/components/feedback/notification/NotificationProvider.d.ts.map +1 -1
  208. package/dist/components/feedback/notification/NotificationProvider.js +22 -5
  209. package/dist/components/feedback/notification/NotificationProvider.js.map +2 -2
  210. package/dist/components/feedback/print/Print.d.ts +4 -6
  211. package/dist/components/feedback/print/Print.d.ts.map +1 -1
  212. package/dist/components/feedback/print/Print.js +3 -2
  213. package/dist/components/feedback/print/Print.js.map +2 -2
  214. package/dist/components/feedback/print/PrintProvider.d.ts +14 -1
  215. package/dist/components/feedback/print/PrintProvider.d.ts.map +1 -1
  216. package/dist/components/feedback/print/PrintProvider.js +16 -5
  217. package/dist/components/feedback/print/PrintProvider.js.map +2 -2
  218. package/dist/components/form-control/Button.d.ts +2 -1
  219. package/dist/components/form-control/Button.d.ts.map +1 -1
  220. package/dist/components/form-control/Button.js +9 -8
  221. package/dist/components/form-control/Button.js.map +2 -2
  222. package/dist/components/form-control/DropdownTrigger.styles.d.ts +1 -1
  223. package/dist/components/form-control/DropdownTrigger.styles.d.ts.map +1 -1
  224. package/dist/components/form-control/DropdownTrigger.styles.js +16 -16
  225. package/dist/components/form-control/DropdownTrigger.styles.js.map +1 -1
  226. package/dist/components/form-control/Invalid.d.ts +1 -1
  227. package/dist/components/form-control/Invalid.d.ts.map +1 -1
  228. package/dist/components/form-control/Invalid.js +27 -26
  229. package/dist/components/form-control/Invalid.js.map +2 -2
  230. package/dist/components/form-control/ThemeToggle.d.ts +2 -1
  231. package/dist/components/form-control/ThemeToggle.d.ts.map +1 -1
  232. package/dist/components/form-control/ThemeToggle.js +71 -74
  233. package/dist/components/form-control/ThemeToggle.js.map +2 -2
  234. package/dist/components/form-control/checkbox/Checkbox.d.ts +2 -2
  235. package/dist/components/form-control/checkbox/Checkbox.d.ts.map +1 -1
  236. package/dist/components/form-control/checkbox/Checkbox.js +14 -95
  237. package/dist/components/form-control/checkbox/Checkbox.js.map +2 -2
  238. package/dist/components/form-control/checkbox/Checkbox.styles.d.ts +2 -2
  239. package/dist/components/form-control/checkbox/Checkbox.styles.d.ts.map +1 -1
  240. package/dist/components/form-control/checkbox/Checkbox.styles.js +20 -25
  241. package/dist/components/form-control/checkbox/Checkbox.styles.js.map +1 -1
  242. package/dist/components/form-control/checkbox/CheckboxGroup.d.ts +10 -10
  243. package/dist/components/form-control/checkbox/CheckboxGroup.d.ts.map +1 -1
  244. package/dist/components/form-control/checkbox/CheckboxGroup.js +84 -9
  245. package/dist/components/form-control/checkbox/CheckboxGroup.js.map +2 -2
  246. package/dist/components/form-control/checkbox/Radio.d.ts +2 -2
  247. package/dist/components/form-control/checkbox/Radio.d.ts.map +1 -1
  248. package/dist/components/form-control/checkbox/Radio.js +12 -95
  249. package/dist/components/form-control/checkbox/Radio.js.map +2 -2
  250. package/dist/components/form-control/checkbox/RadioGroup.d.ts +10 -10
  251. package/dist/components/form-control/checkbox/RadioGroup.d.ts.map +1 -1
  252. package/dist/components/form-control/checkbox/RadioGroup.js +81 -9
  253. package/dist/components/form-control/checkbox/RadioGroup.js.map +2 -2
  254. package/dist/components/form-control/checkbox/SelectableBase.d.ts +26 -0
  255. package/dist/components/form-control/checkbox/SelectableBase.d.ts.map +1 -0
  256. package/dist/components/form-control/checkbox/SelectableBase.js +100 -0
  257. package/dist/components/form-control/checkbox/SelectableBase.js.map +6 -0
  258. package/dist/components/form-control/checkbox/SelectionGroupBase.d.ts +17 -0
  259. package/dist/components/form-control/checkbox/SelectionGroupBase.d.ts.map +1 -0
  260. package/dist/components/form-control/checkbox/SelectionGroupBase.js +53 -0
  261. package/dist/components/form-control/checkbox/SelectionGroupBase.js.map +6 -0
  262. package/dist/components/form-control/color-picker/ColorPicker.d.ts +3 -3
  263. package/dist/components/form-control/color-picker/ColorPicker.d.ts.map +1 -1
  264. package/dist/components/form-control/color-picker/ColorPicker.js +6 -18
  265. package/dist/components/form-control/color-picker/ColorPicker.js.map +2 -2
  266. package/dist/components/form-control/combobox/Combobox.d.ts +28 -49
  267. package/dist/components/form-control/combobox/Combobox.d.ts.map +1 -1
  268. package/dist/components/form-control/combobox/Combobox.js +116 -63
  269. package/dist/components/form-control/combobox/Combobox.js.map +2 -2
  270. package/dist/components/form-control/date-range-picker/DateRangePicker.d.ts.map +1 -1
  271. package/dist/components/form-control/date-range-picker/DateRangePicker.js +16 -9
  272. package/dist/components/form-control/date-range-picker/DateRangePicker.js.map +2 -2
  273. package/dist/components/form-control/editor/EditorToolbar.d.ts.map +1 -1
  274. package/dist/components/form-control/editor/EditorToolbar.js +250 -239
  275. package/dist/components/form-control/editor/EditorToolbar.js.map +2 -2
  276. package/dist/components/form-control/editor/RichTextEditor.d.ts +1 -1
  277. package/dist/components/form-control/editor/RichTextEditor.d.ts.map +1 -1
  278. package/dist/components/form-control/editor/RichTextEditor.js +10 -10
  279. package/dist/components/form-control/editor/RichTextEditor.js.map +2 -2
  280. package/{src/components/form-control/editor/editor.css → dist/components/form-control/editor/RichTextEditor.tiptap.css} +0 -1
  281. package/dist/components/form-control/field/DatePicker.d.ts +3 -3
  282. package/dist/components/form-control/field/DatePicker.d.ts.map +1 -1
  283. package/dist/components/form-control/field/DatePicker.js +50 -131
  284. package/dist/components/form-control/field/DatePicker.js.map +2 -2
  285. package/dist/components/form-control/field/DateTimePicker.d.ts +3 -3
  286. package/dist/components/form-control/field/DateTimePicker.d.ts.map +1 -1
  287. package/dist/components/form-control/field/DateTimePicker.js +50 -131
  288. package/dist/components/form-control/field/DateTimePicker.js.map +2 -2
  289. package/dist/components/form-control/field/Field.styles.d.ts +3 -3
  290. package/dist/components/form-control/field/Field.styles.d.ts.map +1 -1
  291. package/dist/components/form-control/field/Field.styles.js +46 -40
  292. package/dist/components/form-control/field/Field.styles.js.map +1 -1
  293. package/dist/components/form-control/field/FieldPlaceholder.js +4 -3
  294. package/dist/components/form-control/field/FieldPlaceholder.js.map +2 -2
  295. package/dist/components/form-control/field/FieldShell.d.ts +37 -0
  296. package/dist/components/form-control/field/FieldShell.d.ts.map +1 -0
  297. package/dist/components/form-control/field/FieldShell.js +124 -0
  298. package/dist/components/form-control/field/FieldShell.js.map +6 -0
  299. package/dist/components/form-control/field/NumberInput.d.ts +13 -32
  300. package/dist/components/form-control/field/NumberInput.d.ts.map +1 -1
  301. package/dist/components/form-control/field/NumberInput.js +92 -196
  302. package/dist/components/form-control/field/NumberInput.js.map +2 -2
  303. package/dist/components/form-control/field/TextInput.d.ts +14 -29
  304. package/dist/components/form-control/field/TextInput.d.ts.map +1 -1
  305. package/dist/components/form-control/field/TextInput.js +87 -197
  306. package/dist/components/form-control/field/TextInput.js.map +2 -2
  307. package/dist/components/form-control/field/Textarea.d.ts +3 -3
  308. package/dist/components/form-control/field/Textarea.d.ts.map +1 -1
  309. package/dist/components/form-control/field/Textarea.js +81 -156
  310. package/dist/components/form-control/field/Textarea.js.map +2 -2
  311. package/dist/components/form-control/field/TimePicker.d.ts +3 -3
  312. package/dist/components/form-control/field/TimePicker.d.ts.map +1 -1
  313. package/dist/components/form-control/field/TimePicker.js +46 -123
  314. package/dist/components/form-control/field/TimePicker.js.map +2 -2
  315. package/dist/components/form-control/numpad/Numpad.d.ts +1 -1
  316. package/dist/components/form-control/numpad/Numpad.d.ts.map +1 -1
  317. package/dist/components/form-control/numpad/Numpad.js +5 -5
  318. package/dist/components/form-control/numpad/Numpad.js.map +2 -2
  319. package/dist/components/form-control/select/Select.d.ts +48 -51
  320. package/dist/components/form-control/select/Select.d.ts.map +1 -1
  321. package/dist/components/form-control/select/Select.js +220 -117
  322. package/dist/components/form-control/select/Select.js.map +2 -2
  323. package/dist/components/form-control/state-preset/StatePreset.d.ts +2 -2
  324. package/dist/components/form-control/state-preset/StatePreset.d.ts.map +1 -1
  325. package/dist/components/form-control/state-preset/StatePreset.js +68 -57
  326. package/dist/components/form-control/state-preset/StatePreset.js.map +2 -2
  327. package/dist/components/layout/FormGroup.d.ts +3 -6
  328. package/dist/components/layout/FormGroup.d.ts.map +1 -1
  329. package/dist/components/layout/FormGroup.js +5 -7
  330. package/dist/components/layout/FormGroup.js.map +2 -2
  331. package/dist/components/layout/FormTable.d.ts +7 -1
  332. package/dist/components/layout/FormTable.d.ts.map +1 -1
  333. package/dist/components/layout/FormTable.js +52 -18
  334. package/dist/components/layout/FormTable.js.map +2 -2
  335. package/dist/components/layout/sidebar/Sidebar.d.ts +60 -29
  336. package/dist/components/layout/sidebar/Sidebar.d.ts.map +1 -1
  337. package/dist/components/layout/sidebar/Sidebar.js +341 -21
  338. package/dist/components/layout/sidebar/Sidebar.js.map +2 -2
  339. package/dist/components/layout/topbar/Topbar.d.ts +44 -33
  340. package/dist/components/layout/topbar/Topbar.d.ts.map +1 -1
  341. package/dist/components/layout/topbar/Topbar.js +426 -39
  342. package/dist/components/layout/topbar/Topbar.js.map +2 -2
  343. package/dist/helpers/createAppStructure.d.ts.map +1 -1
  344. package/dist/helpers/createAppStructure.js +4 -5
  345. package/dist/helpers/createAppStructure.js.map +1 -1
  346. package/dist/helpers/createSlot.d.ts +3 -0
  347. package/dist/helpers/createSlot.d.ts.map +1 -0
  348. package/dist/helpers/createSlot.js +40 -0
  349. package/dist/helpers/createSlot.js.map +6 -0
  350. package/dist/helpers/createSlots.d.ts +7 -0
  351. package/dist/helpers/createSlots.d.ts.map +1 -0
  352. package/dist/helpers/createSlots.js +34 -0
  353. package/dist/helpers/createSlots.js.map +6 -0
  354. package/dist/hooks/createControllableSignal.d.ts +4 -12
  355. package/dist/hooks/createControllableSignal.d.ts.map +1 -1
  356. package/dist/hooks/createControllableSignal.js +4 -3
  357. package/dist/hooks/createControllableSignal.js.map +1 -1
  358. package/dist/hooks/createControllableStore.d.ts.map +1 -1
  359. package/dist/hooks/createControllableStore.js +5 -6
  360. package/dist/hooks/createControllableStore.js.map +1 -1
  361. package/dist/hooks/useLogger.d.ts +1 -1
  362. package/dist/hooks/useLogger.d.ts.map +1 -1
  363. package/dist/hooks/useLogger.js +1 -1
  364. package/dist/hooks/useSyncConfig.js +1 -1
  365. package/dist/index.d.ts +17 -23
  366. package/dist/index.d.ts.map +1 -1
  367. package/dist/index.js +17 -23
  368. package/dist/index.js.map +1 -1
  369. package/dist/providers/ConfigContext.d.ts.map +1 -1
  370. package/dist/providers/ConfigContext.js +10 -13
  371. package/dist/providers/ConfigContext.js.map +1 -1
  372. package/dist/providers/{LoggerContext.d.ts → LoggerProvider.d.ts} +1 -1
  373. package/dist/providers/LoggerProvider.d.ts.map +1 -0
  374. package/dist/providers/{LoggerContext.js → LoggerProvider.js} +1 -1
  375. package/dist/providers/{LoggerContext.js.map → LoggerProvider.js.map} +1 -1
  376. package/dist/providers/PwaUpdateProvider.js +1 -1
  377. package/dist/providers/ServiceClientProvider.d.ts +22 -0
  378. package/dist/providers/ServiceClientProvider.d.ts.map +1 -1
  379. package/dist/providers/ServiceClientProvider.js +39 -48
  380. package/dist/providers/ServiceClientProvider.js.map +2 -2
  381. package/dist/providers/{SyncStorageContext.d.ts → SyncStorageProvider.d.ts} +1 -1
  382. package/dist/providers/SyncStorageProvider.d.ts.map +1 -0
  383. package/dist/providers/{SyncStorageContext.js → SyncStorageProvider.js} +1 -1
  384. package/dist/providers/{SyncStorageContext.js.map → SyncStorageProvider.js.map} +1 -1
  385. package/dist/providers/SystemProvider.d.ts +1 -1
  386. package/dist/providers/SystemProvider.d.ts.map +1 -1
  387. package/dist/providers/SystemProvider.js +3 -3
  388. package/dist/providers/SystemProvider.js.map +1 -1
  389. package/dist/providers/i18n/{I18nContext.d.ts → I18nProvider.d.ts} +2 -2
  390. package/dist/providers/i18n/I18nProvider.d.ts.map +1 -0
  391. package/dist/providers/i18n/{I18nContext.js → I18nProvider.js} +1 -1
  392. package/dist/providers/i18n/{I18nContext.js.map → I18nProvider.js.map} +1 -1
  393. package/dist/providers/i18n/{I18nContext.types.d.ts → I18nProvider.types.d.ts} +1 -1
  394. package/dist/providers/i18n/I18nProvider.types.d.ts.map +1 -0
  395. package/dist/providers/i18n/I18nProvider.types.js +1 -0
  396. package/dist/providers/i18n/I18nProvider.types.js.map +6 -0
  397. package/dist/providers/shared-data/SharedDataProvider.d.ts +75 -2
  398. package/dist/providers/shared-data/SharedDataProvider.d.ts.map +1 -1
  399. package/dist/providers/shared-data/SharedDataProvider.js +111 -91
  400. package/dist/providers/shared-data/SharedDataProvider.js.map +2 -2
  401. package/dist/styles/base.styles.d.ts +15 -0
  402. package/dist/styles/base.styles.d.ts.map +1 -0
  403. package/dist/styles/base.styles.js +21 -0
  404. package/dist/styles/base.styles.js.map +6 -0
  405. package/dist/styles/control.styles.d.ts +19 -0
  406. package/dist/styles/control.styles.d.ts.map +1 -0
  407. package/dist/styles/control.styles.js +24 -0
  408. package/dist/styles/control.styles.js.map +6 -0
  409. package/dist/styles/theme.styles.d.ts +52 -0
  410. package/dist/styles/theme.styles.d.ts.map +1 -0
  411. package/dist/styles/theme.styles.js +55 -0
  412. package/dist/styles/theme.styles.js.map +6 -0
  413. package/package.json +5 -5
  414. package/src/components/data/Pagination.tsx +9 -9
  415. package/src/components/data/Table.tsx +63 -30
  416. package/src/components/data/calendar/Calendar.tsx +38 -36
  417. package/src/components/data/kanban/{Kanban.css → Kanban.animate.css} +0 -2
  418. package/src/components/data/kanban/Kanban.tsx +133 -94
  419. package/src/components/data/list/List.tsx +8 -22
  420. package/src/components/data/list/ListItem.styles.ts +8 -8
  421. package/src/components/data/list/ListItem.tsx +20 -31
  422. package/src/components/data/sheet/DataSheet.styles.ts +32 -9
  423. package/src/components/data/sheet/DataSheet.tsx +356 -747
  424. package/src/components/data/sheet/{types.ts → DataSheet.types.ts} +13 -8
  425. package/src/components/data/sheet/{sheetUtils.ts → DataSheet.utils.ts} +8 -8
  426. package/src/components/data/sheet/DataSheetColumn.tsx +7 -29
  427. package/src/components/data/sheet/DataSheetConfigDialog.tsx +15 -21
  428. package/src/components/data/sheet/hooks/useDataSheetExpansion.ts +85 -0
  429. package/src/components/data/sheet/hooks/useDataSheetFixedColumns.ts +131 -0
  430. package/src/components/data/sheet/hooks/useDataSheetHeaderCell.tsx +168 -0
  431. package/src/components/data/sheet/hooks/useDataSheetPaging.ts +51 -0
  432. package/src/components/data/sheet/hooks/useDataSheetReorder.ts +154 -0
  433. package/src/components/data/sheet/hooks/useDataSheetSelection.ts +99 -0
  434. package/src/components/data/sheet/hooks/useDataSheetSorting.ts +68 -0
  435. package/src/components/disclosure/Collapse.tsx +1 -9
  436. package/src/components/disclosure/Dialog.tsx +254 -59
  437. package/src/components/disclosure/Dropdown.tsx +66 -80
  438. package/src/components/disclosure/Tabs.tsx +23 -37
  439. package/src/components/display/Alert.tsx +2 -5
  440. package/src/components/display/Barcode.tsx +5 -117
  441. package/src/components/display/Barcode.types.ts +111 -0
  442. package/src/components/display/Card.animate.css +11 -0
  443. package/src/components/display/Card.tsx +10 -11
  444. package/src/components/display/Echarts.tsx +11 -15
  445. package/src/components/display/Link.tsx +3 -5
  446. package/src/components/display/Tag.tsx +2 -5
  447. package/src/components/features/address/AddressSearch.tsx +24 -7
  448. package/src/components/features/crud-detail/CrudDetail.tsx +135 -165
  449. package/src/components/features/crud-detail/{types.ts → CrudDetail.types.ts} +3 -16
  450. package/src/components/features/crud-detail/CrudDetailAfter.tsx +3 -16
  451. package/src/components/features/crud-detail/CrudDetailBefore.tsx +3 -16
  452. package/src/components/features/crud-detail/CrudDetailTools.tsx +3 -16
  453. package/src/components/features/crud-sheet/CrudSheet.tsx +158 -176
  454. package/src/components/features/crud-sheet/{types.ts → CrudSheet.types.ts} +13 -47
  455. package/src/components/features/crud-sheet/CrudSheetColumn.tsx +7 -30
  456. package/src/components/features/crud-sheet/CrudSheetFilter.tsx +12 -16
  457. package/src/components/features/crud-sheet/CrudSheetHeader.tsx +3 -16
  458. package/src/components/features/crud-sheet/CrudSheetTools.tsx +12 -16
  459. package/src/components/features/data-select-button/DataSelectButton.tsx +57 -66
  460. package/src/components/features/permission-table/PermissionTable.tsx +9 -13
  461. package/src/components/features/shared-data/SharedDataSelect.tsx +97 -127
  462. package/src/components/features/shared-data/SharedDataSelectButton.tsx +22 -14
  463. package/src/components/features/shared-data/SharedDataSelectList.tsx +61 -42
  464. package/src/components/feedback/Progress.tsx +16 -21
  465. package/src/components/feedback/busy/BusyContainer.tsx +18 -45
  466. package/src/components/feedback/busy/BusyProvider.tsx +40 -7
  467. package/src/components/feedback/notification/NotificationBanner.tsx +13 -32
  468. package/src/components/feedback/notification/NotificationBell.tsx +18 -47
  469. package/src/components/feedback/notification/NotificationProvider.tsx +105 -11
  470. package/src/components/feedback/print/Print.tsx +4 -8
  471. package/src/components/feedback/print/PrintProvider.tsx +37 -5
  472. package/src/components/form-control/Button.tsx +11 -29
  473. package/src/components/form-control/DropdownTrigger.styles.ts +16 -17
  474. package/src/components/form-control/Invalid.tsx +33 -29
  475. package/src/components/form-control/ThemeToggle.tsx +18 -15
  476. package/src/components/form-control/checkbox/Checkbox.styles.ts +20 -26
  477. package/src/components/form-control/checkbox/Checkbox.tsx +15 -101
  478. package/src/components/form-control/checkbox/CheckboxGroup.tsx +83 -17
  479. package/src/components/form-control/checkbox/Radio.tsx +15 -104
  480. package/src/components/form-control/checkbox/RadioGroup.tsx +80 -17
  481. package/src/components/form-control/checkbox/SelectableBase.tsx +123 -0
  482. package/src/components/form-control/checkbox/SelectionGroupBase.tsx +57 -0
  483. package/src/components/form-control/color-picker/ColorPicker.tsx +12 -32
  484. package/src/components/form-control/combobox/Combobox.tsx +143 -44
  485. package/src/components/form-control/date-range-picker/DateRangePicker.tsx +10 -10
  486. package/src/components/form-control/editor/EditorToolbar.tsx +120 -217
  487. package/{dist/components/form-control/editor/editor.css → src/components/form-control/editor/RichTextEditor.tiptap.css} +0 -1
  488. package/src/components/form-control/editor/RichTextEditor.tsx +14 -29
  489. package/src/components/form-control/field/DatePicker.tsx +34 -76
  490. package/src/components/form-control/field/DateTimePicker.tsx +35 -83
  491. package/src/components/form-control/field/Field.styles.ts +48 -42
  492. package/src/components/form-control/field/FieldPlaceholder.tsx +2 -2
  493. package/src/components/form-control/field/FieldShell.tsx +113 -0
  494. package/src/components/form-control/field/NumberInput.tsx +75 -137
  495. package/src/components/form-control/field/TextInput.tsx +58 -120
  496. package/src/components/form-control/field/Textarea.tsx +67 -111
  497. package/src/components/form-control/field/TimePicker.tsx +33 -74
  498. package/src/components/form-control/numpad/Numpad.tsx +5 -6
  499. package/src/components/form-control/select/Select.tsx +266 -151
  500. package/src/components/form-control/state-preset/StatePreset.tsx +65 -88
  501. package/src/components/layout/FormGroup.tsx +10 -13
  502. package/src/components/layout/FormTable.tsx +40 -19
  503. package/src/components/layout/sidebar/Sidebar.tsx +456 -44
  504. package/src/components/layout/topbar/Topbar.tsx +420 -49
  505. package/src/helpers/createAppStructure.ts +22 -7
  506. package/src/helpers/createSlot.ts +45 -0
  507. package/src/helpers/createSlots.ts +44 -0
  508. package/src/hooks/createControllableSignal.ts +10 -18
  509. package/src/hooks/createControllableStore.ts +5 -6
  510. package/src/hooks/useLogger.ts +1 -1
  511. package/src/hooks/useSyncConfig.ts +1 -1
  512. package/src/index.ts +18 -23
  513. package/src/providers/ConfigContext.tsx +0 -1
  514. package/src/providers/PwaUpdateProvider.tsx +1 -1
  515. package/src/providers/ServiceClientProvider.tsx +62 -56
  516. package/src/providers/SystemProvider.tsx +4 -5
  517. package/src/providers/i18n/{I18nContext.tsx → I18nProvider.tsx} +1 -1
  518. package/src/providers/shared-data/SharedDataProvider.tsx +228 -124
  519. package/src/styles/base.styles.ts +21 -0
  520. package/src/styles/control.styles.ts +25 -0
  521. package/src/styles/theme.styles.ts +54 -0
  522. package/tailwind.config.ts +0 -11
  523. package/tests/components/data/List.spec.tsx +1 -262
  524. package/tests/components/data/Pagination.spec.tsx +0 -75
  525. package/tests/components/data/kanban/Kanban.selection.spec.tsx +1 -17
  526. package/tests/components/data/sheet/DataSheet.spec.tsx +38 -67
  527. package/tests/components/data/sheet/hooks/useDataSheetExpansion.spec.ts +254 -0
  528. package/tests/components/data/sheet/hooks/useDataSheetFixedColumns.spec.ts +488 -0
  529. package/tests/components/data/sheet/hooks/useDataSheetPaging.spec.ts +359 -0
  530. package/tests/components/data/sheet/hooks/useDataSheetReorder.spec.ts +251 -0
  531. package/tests/components/data/sheet/hooks/useDataSheetSelection.spec.ts +362 -0
  532. package/tests/components/data/sheet/hooks/useDataSheetSorting.spec.ts +279 -0
  533. package/tests/components/disclosure/Collapse.spec.tsx +0 -24
  534. package/tests/components/disclosure/Dialog.spec.tsx +11 -61
  535. package/tests/components/disclosure/DialogProvider.spec.tsx +9 -12
  536. package/tests/components/disclosure/Tabs.spec.tsx +0 -99
  537. package/tests/components/display/Barcode.spec.tsx +15 -15
  538. package/tests/components/features/address/AddressSearch.spec.tsx +3 -4
  539. package/tests/components/features/crud-detail/CrudDetail.spec.tsx +12 -74
  540. package/tests/components/features/crud-sheet/CrudSheet.spec.tsx +19 -72
  541. package/tests/components/features/data-select-button/DataSelectButton.spec.tsx +51 -29
  542. package/tests/components/features/permission-table/PermissionTable.spec.tsx +5 -30
  543. package/tests/components/features/shared-data/SharedDataSelect.spec.tsx +15 -19
  544. package/tests/components/features/shared-data/SharedDataSelectList.spec.tsx +17 -44
  545. package/tests/components/feedback/busy/BusyContainer.spec.tsx +15 -9
  546. package/tests/components/feedback/notification/LiveRegion.spec.tsx +2 -27
  547. package/tests/components/feedback/notification/NotificationBanner.spec.tsx +2 -27
  548. package/tests/components/feedback/notification/NotificationBell.spec.tsx +2 -16
  549. package/tests/components/feedback/notification/NotificationContext.spec.tsx +2 -16
  550. package/tests/components/form-control/Button.spec.tsx +0 -97
  551. package/tests/components/form-control/Invalid.spec.tsx +5 -20
  552. package/tests/components/form-control/checkbox/Checkbox.spec.tsx +1 -47
  553. package/tests/components/form-control/checkbox/CheckboxGroup.spec.tsx +1 -26
  554. package/tests/components/form-control/checkbox/Radio.spec.tsx +1 -46
  555. package/tests/components/form-control/checkbox/RadioGroup.spec.tsx +1 -26
  556. package/tests/components/form-control/color-picker/ColorPicker.spec.tsx +1 -31
  557. package/tests/components/form-control/combobox/Combobox.spec.tsx +28 -49
  558. package/tests/components/form-control/combobox/ComboboxItem.spec.tsx +7 -27
  559. package/tests/components/form-control/date-range-picker/DateRangePicker.spec.tsx +1 -58
  560. package/tests/components/form-control/field/DatePicker.spec.tsx +5 -93
  561. package/tests/components/form-control/field/DateTimePicker.spec.tsx +5 -86
  562. package/tests/components/form-control/field/FieldShell.spec.tsx +127 -0
  563. package/tests/components/form-control/field/NumberInput.spec.tsx +14 -133
  564. package/tests/components/form-control/field/TextInput.spec.tsx +6 -148
  565. package/tests/components/form-control/field/Textarea.spec.tsx +5 -69
  566. package/tests/components/form-control/field/TimePicker.spec.tsx +5 -84
  567. package/tests/components/form-control/numpad/Numpad.spec.tsx +1 -78
  568. package/tests/components/form-control/select/Select.spec.tsx +9 -59
  569. package/tests/components/form-control/select/SelectItem.spec.tsx +10 -62
  570. package/tests/components/layout/sidebar/Sidebar.spec.tsx +3 -122
  571. package/tests/components/layout/sidebar/SidebarContainer.spec.tsx +3 -45
  572. package/tests/components/layout/sidebar/SidebarMenu.spec.tsx +1 -74
  573. package/tests/components/layout/sidebar/SidebarUser.spec.tsx +0 -48
  574. package/tests/components/layout/topbar/TopbarActions.spec.tsx +5 -5
  575. package/tests/components/layout/topbar/{createTopbarActions.spec.tsx → useTopbarActions.spec.tsx} +4 -13
  576. package/tests/helpers/createAppStructure.spec.tsx +0 -26
  577. package/tests/helpers/createSlot.spec.tsx +99 -0
  578. package/tests/helpers/createSlots.spec.tsx +100 -0
  579. package/tests/hooks/createControllableSignal.spec.ts +0 -50
  580. package/tests/hooks/createControllableStore.spec.ts +67 -0
  581. package/tests/hooks/createMountTransition.spec.ts +0 -9
  582. package/tests/hooks/useLocalStorage.spec.tsx +0 -34
  583. package/tests/hooks/useLogger.spec.tsx +1 -18
  584. package/tests/hooks/usePrint.spec.tsx +1 -24
  585. package/tests/hooks/useSyncConfig.spec.tsx +1 -18
  586. package/tests/providers/ErrorLoggerProvider.spec.tsx +1 -11
  587. package/tests/providers/ServiceClientContext.spec.tsx +2 -20
  588. package/tests/providers/i18n/I18nContext.spec.tsx +1 -5
  589. package/tests/providers/shared-data/SharedDataProvider.spec.tsx +143 -21
  590. package/dist/components/data/kanban/KanbanContext.d.ts +0 -43
  591. package/dist/components/data/kanban/KanbanContext.d.ts.map +0 -1
  592. package/dist/components/data/kanban/KanbanContext.js +0 -24
  593. package/dist/components/data/kanban/KanbanContext.js.map +0 -6
  594. package/dist/components/data/sheet/DataSheet.css +0 -44
  595. package/dist/components/data/sheet/sheetUtils.d.ts.map +0 -1
  596. package/dist/components/data/sheet/sheetUtils.js.map +0 -6
  597. package/dist/components/data/sheet/types.d.ts.map +0 -1
  598. package/dist/components/data/sheet/types.js +0 -1
  599. package/dist/components/disclosure/DialogContext.d.ts +0 -57
  600. package/dist/components/disclosure/DialogContext.d.ts.map +0 -1
  601. package/dist/components/disclosure/DialogContext.js +0 -14
  602. package/dist/components/disclosure/DialogContext.js.map +0 -6
  603. package/dist/components/disclosure/DialogInstanceContext.d.ts +0 -20
  604. package/dist/components/disclosure/DialogInstanceContext.d.ts.map +0 -1
  605. package/dist/components/disclosure/DialogInstanceContext.js +0 -10
  606. package/dist/components/disclosure/DialogInstanceContext.js.map +0 -6
  607. package/dist/components/disclosure/DialogProvider.d.ts +0 -19
  608. package/dist/components/disclosure/DialogProvider.d.ts.map +0 -1
  609. package/dist/components/disclosure/DialogProvider.js +0 -145
  610. package/dist/components/disclosure/DialogProvider.js.map +0 -6
  611. package/dist/components/features/crud-detail/types.d.ts.map +0 -1
  612. package/dist/components/features/crud-detail/types.js +0 -1
  613. package/dist/components/features/crud-sheet/types.d.ts.map +0 -1
  614. package/dist/components/features/crud-sheet/types.js +0 -1
  615. package/dist/components/features/shared-data/SharedDataSelectListContext.d.ts +0 -15
  616. package/dist/components/features/shared-data/SharedDataSelectListContext.d.ts.map +0 -1
  617. package/dist/components/features/shared-data/SharedDataSelectListContext.js +0 -27
  618. package/dist/components/features/shared-data/SharedDataSelectListContext.js.map +0 -6
  619. package/dist/components/feedback/busy/BusyContext.d.ts +0 -29
  620. package/dist/components/feedback/busy/BusyContext.d.ts.map +0 -1
  621. package/dist/components/feedback/busy/BusyContext.js +0 -14
  622. package/dist/components/feedback/busy/BusyContext.js.map +0 -6
  623. package/dist/components/feedback/notification/NotificationContext.d.ts +0 -69
  624. package/dist/components/feedback/notification/NotificationContext.d.ts.map +0 -1
  625. package/dist/components/feedback/notification/NotificationContext.js +0 -14
  626. package/dist/components/feedback/notification/NotificationContext.js.map +0 -6
  627. package/dist/components/feedback/notification/index.d.ts +0 -5
  628. package/dist/components/feedback/notification/index.d.ts.map +0 -1
  629. package/dist/components/feedback/notification/index.js +0 -5
  630. package/dist/components/feedback/notification/index.js.map +0 -6
  631. package/dist/components/feedback/print/PrintContext.d.ts +0 -12
  632. package/dist/components/feedback/print/PrintContext.d.ts.map +0 -1
  633. package/dist/components/feedback/print/PrintContext.js +0 -12
  634. package/dist/components/feedback/print/PrintContext.js.map +0 -6
  635. package/dist/components/feedback/print/PrintInstanceContext.d.ts +0 -6
  636. package/dist/components/feedback/print/PrintInstanceContext.d.ts.map +0 -1
  637. package/dist/components/feedback/print/PrintInstanceContext.js +0 -10
  638. package/dist/components/feedback/print/PrintInstanceContext.js.map +0 -6
  639. package/dist/components/form-control/combobox/ComboboxContext.d.ts +0 -14
  640. package/dist/components/form-control/combobox/ComboboxContext.d.ts.map +0 -1
  641. package/dist/components/form-control/combobox/ComboboxContext.js +0 -14
  642. package/dist/components/form-control/combobox/ComboboxContext.js.map +0 -6
  643. package/dist/components/form-control/combobox/ComboboxItem.d.ts +0 -12
  644. package/dist/components/form-control/combobox/ComboboxItem.d.ts.map +0 -1
  645. package/dist/components/form-control/combobox/ComboboxItem.js +0 -56
  646. package/dist/components/form-control/combobox/ComboboxItem.js.map +0 -6
  647. package/dist/components/form-control/select/SelectContext.d.ts +0 -21
  648. package/dist/components/form-control/select/SelectContext.d.ts.map +0 -1
  649. package/dist/components/form-control/select/SelectContext.js +0 -14
  650. package/dist/components/form-control/select/SelectContext.js.map +0 -6
  651. package/dist/components/form-control/select/SelectItem.d.ts +0 -30
  652. package/dist/components/form-control/select/SelectItem.d.ts.map +0 -1
  653. package/dist/components/form-control/select/SelectItem.js +0 -112
  654. package/dist/components/form-control/select/SelectItem.js.map +0 -6
  655. package/dist/components/layout/sidebar/SidebarContainer.d.ts +0 -34
  656. package/dist/components/layout/sidebar/SidebarContainer.d.ts.map +0 -1
  657. package/dist/components/layout/sidebar/SidebarContainer.js +0 -88
  658. package/dist/components/layout/sidebar/SidebarContainer.js.map +0 -6
  659. package/dist/components/layout/sidebar/SidebarContext.d.ts +0 -28
  660. package/dist/components/layout/sidebar/SidebarContext.d.ts.map +0 -1
  661. package/dist/components/layout/sidebar/SidebarContext.js +0 -20
  662. package/dist/components/layout/sidebar/SidebarContext.js.map +0 -6
  663. package/dist/components/layout/sidebar/SidebarMenu.d.ts +0 -35
  664. package/dist/components/layout/sidebar/SidebarMenu.d.ts.map +0 -1
  665. package/dist/components/layout/sidebar/SidebarMenu.js +0 -153
  666. package/dist/components/layout/sidebar/SidebarMenu.js.map +0 -6
  667. package/dist/components/layout/sidebar/SidebarUser.d.ts +0 -48
  668. package/dist/components/layout/sidebar/SidebarUser.d.ts.map +0 -1
  669. package/dist/components/layout/sidebar/SidebarUser.js +0 -128
  670. package/dist/components/layout/sidebar/SidebarUser.js.map +0 -6
  671. package/dist/components/layout/topbar/TopbarActions.d.ts +0 -3
  672. package/dist/components/layout/topbar/TopbarActions.d.ts.map +0 -1
  673. package/dist/components/layout/topbar/TopbarActions.js +0 -17
  674. package/dist/components/layout/topbar/TopbarActions.js.map +0 -6
  675. package/dist/components/layout/topbar/TopbarContainer.d.ts +0 -25
  676. package/dist/components/layout/topbar/TopbarContainer.d.ts.map +0 -1
  677. package/dist/components/layout/topbar/TopbarContainer.js +0 -37
  678. package/dist/components/layout/topbar/TopbarContainer.js.map +0 -6
  679. package/dist/components/layout/topbar/TopbarContext.d.ts +0 -9
  680. package/dist/components/layout/topbar/TopbarContext.d.ts.map +0 -1
  681. package/dist/components/layout/topbar/TopbarContext.js +0 -29
  682. package/dist/components/layout/topbar/TopbarContext.js.map +0 -6
  683. package/dist/components/layout/topbar/TopbarMenu.d.ts +0 -41
  684. package/dist/components/layout/topbar/TopbarMenu.d.ts.map +0 -1
  685. package/dist/components/layout/topbar/TopbarMenu.js +0 -288
  686. package/dist/components/layout/topbar/TopbarMenu.js.map +0 -6
  687. package/dist/components/layout/topbar/TopbarUser.d.ts +0 -35
  688. package/dist/components/layout/topbar/TopbarUser.d.ts.map +0 -1
  689. package/dist/components/layout/topbar/TopbarUser.js +0 -110
  690. package/dist/components/layout/topbar/TopbarUser.js.map +0 -6
  691. package/dist/helpers/createHmrSafeContext.d.ts +0 -3
  692. package/dist/helpers/createHmrSafeContext.d.ts.map +0 -1
  693. package/dist/helpers/createHmrSafeContext.js +0 -10
  694. package/dist/helpers/createHmrSafeContext.js.map +0 -6
  695. package/dist/helpers/createSlotComponent.d.ts +0 -12
  696. package/dist/helpers/createSlotComponent.d.ts.map +0 -1
  697. package/dist/helpers/createSlotComponent.js +0 -13
  698. package/dist/helpers/createSlotComponent.js.map +0 -6
  699. package/dist/hooks/createSelectionGroup.d.ts +0 -70
  700. package/dist/hooks/createSelectionGroup.d.ts.map +0 -1
  701. package/dist/hooks/createSelectionGroup.js +0 -145
  702. package/dist/hooks/createSelectionGroup.js.map +0 -6
  703. package/dist/hooks/createSlotSignal.d.ts +0 -9
  704. package/dist/hooks/createSlotSignal.d.ts.map +0 -1
  705. package/dist/hooks/createSlotSignal.js +0 -10
  706. package/dist/hooks/createSlotSignal.js.map +0 -6
  707. package/dist/providers/LoggerContext.d.ts.map +0 -1
  708. package/dist/providers/ServiceClientContext.d.ts +0 -23
  709. package/dist/providers/ServiceClientContext.d.ts.map +0 -1
  710. package/dist/providers/ServiceClientContext.js +0 -14
  711. package/dist/providers/ServiceClientContext.js.map +0 -6
  712. package/dist/providers/SyncStorageContext.d.ts.map +0 -1
  713. package/dist/providers/i18n/I18nContext.d.ts.map +0 -1
  714. package/dist/providers/i18n/I18nContext.types.d.ts.map +0 -1
  715. package/dist/providers/i18n/I18nContext.types.js +0 -1
  716. package/dist/providers/shared-data/SharedDataContext.d.ts +0 -77
  717. package/dist/providers/shared-data/SharedDataContext.d.ts.map +0 -1
  718. package/dist/providers/shared-data/SharedDataContext.js +0 -14
  719. package/dist/providers/shared-data/SharedDataContext.js.map +0 -6
  720. package/dist/styles/patterns.styles.d.ts +0 -7
  721. package/dist/styles/patterns.styles.d.ts.map +0 -1
  722. package/dist/styles/patterns.styles.js +0 -47
  723. package/dist/styles/patterns.styles.js.map +0 -6
  724. package/dist/styles/tokens.styles.d.ts +0 -23
  725. package/dist/styles/tokens.styles.d.ts.map +0 -1
  726. package/dist/styles/tokens.styles.js +0 -76
  727. package/dist/styles/tokens.styles.js.map +0 -6
  728. package/src/components/data/kanban/KanbanContext.ts +0 -76
  729. package/src/components/data/sheet/DataSheet.css +0 -44
  730. package/src/components/disclosure/DialogContext.ts +0 -69
  731. package/src/components/disclosure/DialogInstanceContext.ts +0 -25
  732. package/src/components/disclosure/DialogProvider.tsx +0 -147
  733. package/src/components/features/shared-data/SharedDataSelectListContext.ts +0 -39
  734. package/src/components/feedback/busy/BusyContext.ts +0 -38
  735. package/src/components/feedback/notification/NotificationContext.ts +0 -95
  736. package/src/components/feedback/notification/index.ts +0 -4
  737. package/src/components/feedback/print/PrintContext.ts +0 -20
  738. package/src/components/feedback/print/PrintInstanceContext.ts +0 -11
  739. package/src/components/form-control/combobox/ComboboxContext.ts +0 -25
  740. package/src/components/form-control/combobox/ComboboxItem.tsx +0 -69
  741. package/src/components/form-control/select/SelectContext.ts +0 -35
  742. package/src/components/form-control/select/SelectItem.tsx +0 -128
  743. package/src/components/layout/sidebar/SidebarContainer.tsx +0 -123
  744. package/src/components/layout/sidebar/SidebarContext.ts +0 -40
  745. package/src/components/layout/sidebar/SidebarMenu.tsx +0 -182
  746. package/src/components/layout/sidebar/SidebarUser.tsx +0 -142
  747. package/src/components/layout/topbar/TopbarActions.tsx +0 -8
  748. package/src/components/layout/topbar/TopbarContainer.tsx +0 -44
  749. package/src/components/layout/topbar/TopbarContext.ts +0 -36
  750. package/src/components/layout/topbar/TopbarMenu.tsx +0 -227
  751. package/src/components/layout/topbar/TopbarUser.tsx +0 -97
  752. package/src/helpers/createHmrSafeContext.ts +0 -8
  753. package/src/helpers/createSlotComponent.ts +0 -23
  754. package/src/hooks/createSelectionGroup.tsx +0 -241
  755. package/src/hooks/createSlotSignal.ts +0 -14
  756. package/src/providers/ServiceClientContext.ts +0 -32
  757. package/src/providers/shared-data/SharedDataContext.ts +0 -91
  758. package/src/styles/patterns.styles.ts +0 -50
  759. package/src/styles/tokens.styles.ts +0 -86
  760. package/tests/components/data/Table.spec.tsx +0 -55
  761. package/tests/components/display/Alert.spec.tsx +0 -47
  762. package/tests/components/display/Card.spec.tsx +0 -41
  763. package/tests/components/display/Link.spec.tsx +0 -62
  764. package/tests/components/display/Tag.spec.tsx +0 -47
  765. package/tests/components/feedback/print/Print.spec.tsx +0 -45
  766. package/tests/components/layout/FormGroup.spec.tsx +0 -104
  767. package/tests/components/layout/FormTable.spec.tsx +0 -43
  768. package/tests/components/layout/topbar/TopbarContainer.spec.tsx +0 -38
  769. package/tests/providers/ClipboardProvider.spec.tsx +0 -20
  770. package/tests/providers/ConfigContext.spec.tsx +0 -42
  771. package/tests/providers/LoggerContext.spec.tsx +0 -76
  772. package/tests/providers/PwaUpdateProvider.spec.tsx +0 -32
  773. package/tests/providers/SyncStorageContext.spec.tsx +0 -77
  774. /package/dist/components/data/sheet/{types.js.map → DataSheet.types.js.map} +0 -0
  775. /package/dist/components/{features/crud-detail/types.js.map → display/Barcode.types.js.map} +0 -0
  776. /package/dist/components/features/{crud-sheet/types.js.map → crud-detail/CrudDetail.types.js.map} +0 -0
  777. /package/dist/{providers/i18n/I18nContext.types.js.map → components/features/crud-sheet/CrudSheet.types.js.map} +0 -0
  778. /package/dist/components/feedback/busy/{BusyContainer.css → BusyContainer.animate.css} +0 -0
  779. /package/src/components/feedback/busy/{BusyContainer.css → BusyContainer.animate.css} +0 -0
  780. /package/src/providers/{LoggerContext.tsx → LoggerProvider.tsx} +0 -0
  781. /package/src/providers/{SyncStorageContext.tsx → SyncStorageProvider.tsx} +0 -0
  782. /package/src/providers/i18n/{I18nContext.types.ts → I18nProvider.types.ts} +0 -0
@@ -2,7 +2,7 @@ import { render, fireEvent } from "@solidjs/testing-library";
2
2
  import { describe, it, expect, vi, beforeEach } from "vitest";
3
3
  import { createSignal } from "solid-js";
4
4
  import { TextInput } from "../../../../src/components/form-control/field/TextInput";
5
- import { I18nProvider } from "../../../../src/providers/i18n/I18nContext";
5
+ import { I18nProvider } from "../../../../src/providers/i18n/I18nProvider";
6
6
  import { ConfigProvider } from "../../../../src/providers/ConfigContext";
7
7
 
8
8
  describe("TextInput component", () => {
@@ -10,63 +10,7 @@ describe("TextInput component", () => {
10
10
  localStorage.setItem("test.i18n-locale", JSON.stringify("en"));
11
11
  });
12
12
 
13
- describe("basic rendering", () => {
14
- it("renders input element", () => {
15
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput /></I18nProvider></ConfigProvider>);
16
- const input = container.querySelector("input");
17
- expect(input).toBeTruthy();
18
- });
19
-
20
- it("defaults type to text", () => {
21
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput /></I18nProvider></ConfigProvider>);
22
- const input = container.querySelector("input") as HTMLInputElement;
23
- expect(input.type).toBe("text");
24
- });
25
-
26
- it("renders password input when type=password", () => {
27
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput type="password" /></I18nProvider></ConfigProvider>);
28
- const input = container.querySelector("input") as HTMLInputElement;
29
- expect(input.type).toBe("password");
30
- });
31
-
32
- it("renders email input when type=email", () => {
33
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput type="email" /></I18nProvider></ConfigProvider>);
34
- const input = container.querySelector("input") as HTMLInputElement;
35
- expect(input.type).toBe("email");
36
- });
37
-
38
- it("applies placeholder to input", () => {
39
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput placeholder="Enter text" /></I18nProvider></ConfigProvider>);
40
- const input = container.querySelector("input") as HTMLInputElement;
41
- expect(input.placeholder).toBe("Enter text");
42
- });
43
-
44
- it("applies title to input", () => {
45
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput title="Input title" /></I18nProvider></ConfigProvider>);
46
- const input = container.querySelector("input") as HTMLInputElement;
47
- expect(input.title).toBe("Input title");
48
- });
49
-
50
- it("defaults autocomplete to one-time-code", () => {
51
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput /></I18nProvider></ConfigProvider>);
52
- const input = container.querySelector("input") as HTMLInputElement;
53
- expect(input.autocomplete).toBe("one-time-code");
54
- });
55
-
56
- it("applies explicitly specified autocomplete value", () => {
57
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput autocomplete="email" /></I18nProvider></ConfigProvider>);
58
- const input = container.querySelector("input") as HTMLInputElement;
59
- expect(input.autocomplete).toBe("email");
60
- });
61
- });
62
-
63
13
  describe("controlled pattern", () => {
64
- it("displays value prop in input", () => {
65
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput value="Hello" /></I18nProvider></ConfigProvider>);
66
- const input = container.querySelector("input") as HTMLInputElement;
67
- expect(input.value).toBe("Hello");
68
- });
69
-
70
14
  it("calls onValueChange on input", () => {
71
15
  const handleChange = vi.fn();
72
16
  const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput value="" onValueChange={handleChange} /></I18nProvider></ConfigProvider>);
@@ -115,17 +59,11 @@ describe("TextInput component", () => {
115
59
  const { getByText } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput disabled value="Disabled text" /></I18nProvider></ConfigProvider>);
116
60
  expect(getByText("Disabled text")).toBeTruthy();
117
61
  });
118
-
119
- it("applies disabled style", () => {
120
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput disabled value="Text" /></I18nProvider></ConfigProvider>);
121
- const div = container.querySelector("div.sd-text-field") as HTMLElement;
122
- expect(div.classList.contains("bg-base-100")).toBe(true);
123
- });
124
62
  });
125
63
 
126
64
  describe("readonly state", () => {
127
65
  it("renders as div when readonly=true", () => {
128
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput readonly value="Readonly text" /></I18nProvider></ConfigProvider>);
66
+ const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput readOnly value="Readonly text" /></I18nProvider></ConfigProvider>);
129
67
  const input = container.querySelector("input:not([aria-hidden])");
130
68
  const div = container.querySelector("div.sd-text-field");
131
69
 
@@ -134,7 +72,7 @@ describe("TextInput component", () => {
134
72
  });
135
73
 
136
74
  it("displays value when readonly", () => {
137
- const { getByText } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput readonly value="Readonly text" /></I18nProvider></ConfigProvider>);
75
+ const { getByText } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput readOnly value="Readonly text" /></I18nProvider></ConfigProvider>);
138
76
  expect(getByText("Readonly text")).toBeTruthy();
139
77
  });
140
78
  });
@@ -160,31 +98,9 @@ describe("TextInput component", () => {
160
98
  });
161
99
  });
162
100
 
163
- describe("size option", () => {
164
- it("applies small padding when size=sm", () => {
165
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput size="sm" /></I18nProvider></ConfigProvider>);
166
- const wrapper = container.firstChild as HTMLElement;
167
- expect(wrapper.classList.contains("py-0.5")).toBe(true);
168
- });
169
-
170
- it("applies large padding when size=lg", () => {
171
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput size="lg" /></I18nProvider></ConfigProvider>);
172
- const wrapper = container.firstChild as HTMLElement;
173
- expect(wrapper.classList.contains("py-2")).toBe(true);
174
- });
175
- });
176
-
177
101
  describe("inset style", () => {
178
- it("removes border and applies inset background when inset=true", () => {
179
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput inset /></I18nProvider></ConfigProvider>);
180
- const outer = container.firstChild as HTMLElement;
181
- const contentDiv = outer.querySelector("[data-text-field-content]") as HTMLElement;
182
- expect(contentDiv.classList.contains("border-none")).toBe(true);
183
- expect(contentDiv.classList.contains("bg-primary-50")).toBe(true);
184
- });
185
-
186
102
  it("shows content div and no input when inset + readonly", () => {
187
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput inset readonly value="Hello" /></I18nProvider></ConfigProvider>);
103
+ const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput inset readOnly value="Hello" /></I18nProvider></ConfigProvider>);
188
104
  const outer = container.firstChild as HTMLElement;
189
105
  expect(outer.classList.contains("relative")).toBe(true);
190
106
 
@@ -210,7 +126,7 @@ describe("TextInput component", () => {
210
126
  });
211
127
 
212
128
  it("shows NBSP in content div when inset + empty value", () => {
213
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput inset readonly /></I18nProvider></ConfigProvider>);
129
+ const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput inset readOnly /></I18nProvider></ConfigProvider>);
214
130
  const outer = container.firstChild as HTMLElement;
215
131
  const contentDiv = outer.querySelector("[data-text-field-content]") as HTMLElement;
216
132
  expect(contentDiv.textContent).toBe("\u00A0");
@@ -218,7 +134,7 @@ describe("TextInput component", () => {
218
134
 
219
135
  it("content div is always in DOM when toggling inset + readonly/editable", () => {
220
136
  const [readonly, setReadonly] = createSignal(true);
221
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput inset readonly={readonly()} value="Test" /></I18nProvider></ConfigProvider>);
137
+ const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput inset readOnly={readonly()} value="Test" /></I18nProvider></ConfigProvider>);
222
138
  const outer = container.firstChild as HTMLElement;
223
139
 
224
140
  let contentDiv = outer.querySelector("[data-text-field-content]");
@@ -232,37 +148,6 @@ describe("TextInput component", () => {
232
148
  });
233
149
  });
234
150
 
235
- describe("class merging", () => {
236
- it("merges custom class with existing styles", () => {
237
- // eslint-disable-next-line tailwindcss/no-custom-classname
238
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput class="my-custom-class" /></I18nProvider></ConfigProvider>);
239
- const wrapper = container.firstChild as HTMLElement;
240
- expect(wrapper.classList.contains("my-custom-class")).toBe(true);
241
- });
242
- });
243
-
244
- describe("default style", () => {
245
- it("applies default border style", () => {
246
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput /></I18nProvider></ConfigProvider>);
247
- const wrapper = container.firstChild as HTMLElement;
248
- expect(wrapper.classList.contains("border")).toBe(true);
249
- expect(wrapper.classList.contains("border-base-200")).toBe(true);
250
- });
251
-
252
- it("changes border color on focus", () => {
253
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput /></I18nProvider></ConfigProvider>);
254
- const wrapper = container.firstChild as HTMLElement;
255
- expect(wrapper.classList.contains("focus-within:border-primary-500")).toBe(true);
256
- });
257
-
258
- it("applies dark mode style", () => {
259
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput /></I18nProvider></ConfigProvider>);
260
- const wrapper = container.firstChild as HTMLElement;
261
- expect(wrapper.classList.contains("dark:border-base-700")).toBe(true);
262
- expect(wrapper.classList.contains("dark:bg-primary-950/30")).toBe(true);
263
- });
264
- });
265
-
266
151
  describe("validation", () => {
267
152
  it("sets error message in hidden input when required and empty", () => {
268
153
  const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TextInput required value="" /></I18nProvider></ConfigProvider>);
@@ -317,31 +202,4 @@ describe("TextInput component", () => {
317
202
  expect(hiddenInput.validationMessage).toBe("This is a required field");
318
203
  });
319
204
  });
320
-
321
- describe("Prefix slot", () => {
322
- it("renders TextInput.Prefix slot", () => {
323
- render(() => (
324
- <ConfigProvider clientName="test"><I18nProvider><TextInput>
325
- <TextInput.Prefix>
326
- <span data-testid="prefix">P</span>
327
- </TextInput.Prefix>
328
- </TextInput></I18nProvider></ConfigProvider>
329
- ));
330
-
331
- expect(document.querySelector('[data-testid="prefix"]')).not.toBeNull();
332
- });
333
-
334
- it("applies gap class when Prefix slot is used", () => {
335
- const { container } = render(() => (
336
- <ConfigProvider clientName="test"><I18nProvider><TextInput>
337
- <TextInput.Prefix>
338
- <span>P</span>
339
- </TextInput.Prefix>
340
- </TextInput></I18nProvider></ConfigProvider>
341
- ));
342
-
343
- const wrapper = container.querySelector("[data-text-field]") as HTMLElement;
344
- expect(wrapper.className).toContain("gap-");
345
- });
346
- });
347
205
  });
@@ -2,7 +2,7 @@ import { render, fireEvent } from "@solidjs/testing-library";
2
2
  import { describe, it, expect, vi, beforeEach } from "vitest";
3
3
  import { createSignal } from "solid-js";
4
4
  import { Textarea } from "../../../../src/components/form-control/field/Textarea";
5
- import { I18nProvider } from "../../../../src/providers/i18n/I18nContext";
5
+ import { I18nProvider } from "../../../../src/providers/i18n/I18nProvider";
6
6
  import { ConfigProvider } from "../../../../src/providers/ConfigContext";
7
7
 
8
8
  describe("Textarea component", () => {
@@ -10,33 +10,7 @@ describe("Textarea component", () => {
10
10
  localStorage.setItem("test.i18n-locale", JSON.stringify("en"));
11
11
  });
12
12
 
13
- describe("basic rendering", () => {
14
- it("renders textarea element", () => {
15
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea /></I18nProvider></ConfigProvider>);
16
- const textarea = container.querySelector("textarea");
17
- expect(textarea).toBeTruthy();
18
- });
19
-
20
- it("applies placeholder to textarea", () => {
21
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea placeholder="내용을 입력하세요" /></I18nProvider></ConfigProvider>);
22
- const textarea = container.querySelector("textarea") as HTMLTextAreaElement;
23
- expect(textarea.placeholder).toBe("내용을 입력하세요");
24
- });
25
-
26
- it("applies title to textarea", () => {
27
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea title="Textarea title" /></I18nProvider></ConfigProvider>);
28
- const textarea = container.querySelector("textarea") as HTMLTextAreaElement;
29
- expect(textarea.title).toBe("Textarea title");
30
- });
31
- });
32
-
33
13
  describe("controlled pattern", () => {
34
- it("displays value prop in textarea", () => {
35
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea value="Hello" /></I18nProvider></ConfigProvider>);
36
- const textarea = container.querySelector("textarea") as HTMLTextAreaElement;
37
- expect(textarea.value).toBe("Hello");
38
- });
39
-
40
14
  it("calls onValueChange on input", () => {
41
15
  const handleChange = vi.fn();
42
16
  const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea value="" onValueChange={handleChange} /></I18nProvider></ConfigProvider>);
@@ -82,53 +56,24 @@ describe("Textarea component", () => {
82
56
  const { getByText } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea disabled value="Disabled text" /></I18nProvider></ConfigProvider>);
83
57
  expect(getByText("Disabled text")).toBeTruthy();
84
58
  });
85
-
86
- it("applies disabled style", () => {
87
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea disabled value="Text" /></I18nProvider></ConfigProvider>);
88
- const wrapper = container.firstChild as HTMLElement;
89
- expect(wrapper.classList.contains("bg-base-100")).toBe(true);
90
- });
91
59
  });
92
60
 
93
61
  describe("readonly state", () => {
94
62
  it("does not render textarea when readonly=true", () => {
95
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea readonly value="Readonly text" /></I18nProvider></ConfigProvider>);
63
+ const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea readOnly value="Readonly text" /></I18nProvider></ConfigProvider>);
96
64
  const textarea = container.querySelector("textarea");
97
65
  expect(textarea).toBeFalsy();
98
66
  });
99
67
 
100
68
  it("displays value when readonly", () => {
101
- const { getByText } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea readonly value="Readonly text" /></I18nProvider></ConfigProvider>);
69
+ const { getByText } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea readOnly value="Readonly text" /></I18nProvider></ConfigProvider>);
102
70
  expect(getByText("Readonly text")).toBeTruthy();
103
71
  });
104
72
  });
105
73
 
106
- describe("size option", () => {
107
- it("applies small padding when size=sm", () => {
108
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea size="sm" /></I18nProvider></ConfigProvider>);
109
- const wrapper = container.firstChild as HTMLElement;
110
- expect(wrapper.classList.contains("py-0.5")).toBe(true);
111
- });
112
-
113
- it("applies large padding when size=lg", () => {
114
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea size="lg" /></I18nProvider></ConfigProvider>);
115
- const wrapper = container.firstChild as HTMLElement;
116
- expect(wrapper.classList.contains("py-2")).toBe(true);
117
- });
118
- });
119
-
120
74
  describe("inset style", () => {
121
- it("removes border and applies inset background when inset=true", () => {
122
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea inset /></I18nProvider></ConfigProvider>);
123
- const wrapper = container.firstChild as HTMLElement;
124
- expect(wrapper.classList.contains("relative")).toBe(true);
125
- const content = wrapper.querySelector("[data-textarea-field-content]") as HTMLElement;
126
- expect(content.classList.contains("border-none")).toBe(true);
127
- expect(content.classList.contains("bg-primary-50")).toBe(true);
128
- });
129
-
130
75
  it("shows content div and no textarea when inset + readonly", () => {
131
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea inset readonly value="Hello" /></I18nProvider></ConfigProvider>);
76
+ const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea inset readOnly value="Hello" /></I18nProvider></ConfigProvider>);
132
77
  const outer = container.firstChild as HTMLElement;
133
78
  expect(outer.classList.contains("relative")).toBe(true);
134
79
 
@@ -153,22 +98,13 @@ describe("Textarea component", () => {
153
98
  });
154
99
 
155
100
  it("shows NBSP in content div when inset + empty value", () => {
156
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea inset readonly /></I18nProvider></ConfigProvider>);
101
+ const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea inset readOnly /></I18nProvider></ConfigProvider>);
157
102
  const outer = container.firstChild as HTMLElement;
158
103
  const contentDiv = outer.querySelector("[data-textarea-field-content]") as HTMLElement;
159
104
  expect(contentDiv.textContent).toContain("\u00A0");
160
105
  });
161
106
  });
162
107
 
163
- describe("class merging", () => {
164
- it("merges custom class with existing styles", () => {
165
- // eslint-disable-next-line tailwindcss/no-custom-classname
166
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea class="my-custom-class" /></I18nProvider></ConfigProvider>);
167
- const wrapper = container.firstChild as HTMLElement;
168
- expect(wrapper.classList.contains("my-custom-class")).toBe(true);
169
- });
170
- });
171
-
172
108
  describe("auto height adjustment", () => {
173
109
  it("renders hidden div for height measurement", () => {
174
110
  const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><Textarea value="Test" /></I18nProvider></ConfigProvider>);
@@ -3,7 +3,7 @@ import { describe, it, expect, vi, beforeEach } from "vitest";
3
3
  import { createSignal } from "solid-js";
4
4
  import { Time } from "@simplysm/core-common";
5
5
  import { TimePicker } from "../../../../src/components/form-control/field/TimePicker";
6
- import { I18nProvider } from "../../../../src/providers/i18n/I18nContext";
6
+ import { I18nProvider } from "../../../../src/providers/i18n/I18nProvider";
7
7
  import { ConfigProvider } from "../../../../src/providers/ConfigContext";
8
8
 
9
9
  describe("TimePicker component", () => {
@@ -12,32 +12,6 @@ describe("TimePicker component", () => {
12
12
  });
13
13
 
14
14
  describe("basic rendering", () => {
15
- it("renders input type=time when unit=minute", () => {
16
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker unit="minute" /></I18nProvider></ConfigProvider>);
17
- const input = container.querySelector("input") as HTMLInputElement;
18
- expect(input).toBeTruthy();
19
- expect(input.type).toBe("time");
20
- });
21
-
22
- it("renders input type=time when unit=second", () => {
23
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker unit="second" /></I18nProvider></ConfigProvider>);
24
- const input = container.querySelector("input") as HTMLInputElement;
25
- expect(input).toBeTruthy();
26
- expect(input.type).toBe("time");
27
- });
28
-
29
- it("defaults unit to minute", () => {
30
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker /></I18nProvider></ConfigProvider>);
31
- const input = container.querySelector("input") as HTMLInputElement;
32
- expect(input.type).toBe("time");
33
- });
34
-
35
- it("defaults autocomplete to one-time-code", () => {
36
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker /></I18nProvider></ConfigProvider>);
37
- const input = container.querySelector("input") as HTMLInputElement;
38
- expect(input.autocomplete).toBe("one-time-code");
39
- });
40
-
41
15
  it("sets step=1 when unit=second", () => {
42
16
  const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker unit="second" /></I18nProvider></ConfigProvider>);
43
17
  const input = container.querySelector("input") as HTMLInputElement;
@@ -152,16 +126,11 @@ describe("TimePicker component", () => {
152
126
  expect(getByText("10:30")).toBeTruthy();
153
127
  });
154
128
 
155
- it("applies disabled style", () => {
156
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker disabled value={new Time(10, 30, 0)} /></I18nProvider></ConfigProvider>);
157
- const div = container.querySelector("div.sd-time-field") as HTMLElement;
158
- expect(div.classList.contains("bg-base-100")).toBe(true);
159
- });
160
129
  });
161
130
 
162
131
  describe("readonly state", () => {
163
132
  it("renders as div when readonly=true", () => {
164
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker readonly value={new Time(10, 30, 0)} /></I18nProvider></ConfigProvider>);
133
+ const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker readOnly value={new Time(10, 30, 0)} /></I18nProvider></ConfigProvider>);
165
134
  const input = container.querySelector("input:not([aria-hidden])");
166
135
  const div = container.querySelector("div.sd-time-field");
167
136
 
@@ -171,40 +140,15 @@ describe("TimePicker component", () => {
171
140
 
172
141
  it("displays value when readonly", () => {
173
142
  const { getByText } = render(() => (
174
- <ConfigProvider clientName="test"><I18nProvider><TimePicker unit="minute" readonly value={new Time(10, 30, 0)} /></I18nProvider></ConfigProvider>
143
+ <ConfigProvider clientName="test"><I18nProvider><TimePicker unit="minute" readOnly value={new Time(10, 30, 0)} /></I18nProvider></ConfigProvider>
175
144
  ));
176
145
  expect(getByText("10:30")).toBeTruthy();
177
146
  });
178
147
  });
179
148
 
180
- describe("size option", () => {
181
- it("applies small padding when size=sm", () => {
182
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker size="sm" /></I18nProvider></ConfigProvider>);
183
- const wrapper = container.firstChild as HTMLElement;
184
- expect(wrapper.classList.contains("py-0.5")).toBe(true);
185
- });
186
-
187
- it("applies large padding when size=lg", () => {
188
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker size="lg" /></I18nProvider></ConfigProvider>);
189
- const wrapper = container.firstChild as HTMLElement;
190
- expect(wrapper.classList.contains("py-2")).toBe(true);
191
- });
192
- });
193
-
194
149
  describe("inset style", () => {
195
- it("applies relative to outer and inset style to content when inset=true", () => {
196
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker inset /></I18nProvider></ConfigProvider>);
197
- const outer = container.firstChild as HTMLElement;
198
- expect(outer.classList.contains("relative")).toBe(true);
199
- expect(outer.classList.contains("border-none")).toBe(false);
200
-
201
- const contentDiv = outer.querySelector("[data-time-field-content]") as HTMLElement;
202
- expect(contentDiv.classList.contains("border-none")).toBe(true);
203
- expect(contentDiv.classList.contains("bg-primary-50")).toBe(true);
204
- });
205
-
206
150
  it("shows content div and no input when inset + readonly", () => {
207
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker inset readonly value={new Time(14, 30, 0)} /></I18nProvider></ConfigProvider>);
151
+ const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker inset readOnly value={new Time(14, 30, 0)} /></I18nProvider></ConfigProvider>);
208
152
  const outer = container.firstChild as HTMLElement;
209
153
  expect(outer.classList.contains("relative")).toBe(true);
210
154
 
@@ -227,36 +171,13 @@ describe("TimePicker component", () => {
227
171
  });
228
172
 
229
173
  it("shows NBSP in content div when inset + empty value", () => {
230
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker inset readonly /></I18nProvider></ConfigProvider>);
174
+ const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker inset readOnly /></I18nProvider></ConfigProvider>);
231
175
  const outer = container.firstChild as HTMLElement;
232
176
  const contentDiv = outer.querySelector("[data-time-field-content]") as HTMLElement;
233
177
  expect(contentDiv.textContent).toBe("\u00A0");
234
178
  });
235
179
  });
236
180
 
237
- describe("dark mode style", () => {
238
- it("applies dark mode border style", () => {
239
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker /></I18nProvider></ConfigProvider>);
240
- const wrapper = container.firstChild as HTMLElement;
241
- expect(wrapper.classList.contains("dark:border-base-700")).toBe(true);
242
- });
243
-
244
- it("applies dark mode background style", () => {
245
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker /></I18nProvider></ConfigProvider>);
246
- const wrapper = container.firstChild as HTMLElement;
247
- expect(wrapper.classList.contains("dark:bg-primary-950/30")).toBe(true);
248
- });
249
- });
250
-
251
- describe("class merging", () => {
252
- it("merges custom class with existing styles", () => {
253
- // eslint-disable-next-line tailwindcss/no-custom-classname
254
- const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker class="my-custom-class" /></I18nProvider></ConfigProvider>);
255
- const wrapper = container.firstChild as HTMLElement;
256
- expect(wrapper.classList.contains("my-custom-class")).toBe(true);
257
- });
258
- });
259
-
260
181
  describe("validation", () => {
261
182
  it("sets error message when required and value is empty", () => {
262
183
  const { container } = render(() => <ConfigProvider clientName="test"><I18nProvider><TimePicker required value={undefined} /></I18nProvider></ConfigProvider>);
@@ -2,7 +2,7 @@ import { describe, it, expect, vi, beforeEach } from "vitest";
2
2
  import { render, fireEvent, screen } from "@solidjs/testing-library";
3
3
  import { createSignal } from "solid-js";
4
4
  import { Numpad } from "../../../../src/components/form-control/numpad/Numpad";
5
- import { I18nProvider } from "../../../../src/providers/i18n/I18nContext";
5
+ import { I18nProvider } from "../../../../src/providers/i18n/I18nProvider";
6
6
  import { ConfigProvider } from "../../../../src/providers/ConfigContext";
7
7
 
8
8
  describe("Numpad", () => {
@@ -11,83 +11,6 @@ describe("Numpad", () => {
11
11
  });
12
12
 
13
13
  describe("basic rendering", () => {
14
- it("renders root element with data-numpad attribute", () => {
15
- const { container } = render(() => (
16
- <ConfigProvider clientName="test">
17
- <I18nProvider>
18
- <Numpad />
19
- </I18nProvider>
20
- </ConfigProvider>
21
- ));
22
- const root = container.querySelector("[data-numpad]");
23
- expect(root).toBeTruthy();
24
- });
25
-
26
- it("renders digit buttons 0-9", () => {
27
- render(() => (
28
- <ConfigProvider clientName="test">
29
- <I18nProvider>
30
- <Numpad />
31
- </I18nProvider>
32
- </ConfigProvider>
33
- ));
34
-
35
- for (let i = 0; i <= 9; i++) {
36
- expect(screen.getByText(String(i))).toBeInTheDocument();
37
- }
38
- });
39
-
40
- it("renders decimal point button", () => {
41
- render(() => (
42
- <ConfigProvider clientName="test">
43
- <I18nProvider>
44
- <Numpad />
45
- </I18nProvider>
46
- </ConfigProvider>
47
- ));
48
- expect(screen.getByText(".")).toBeInTheDocument();
49
- });
50
-
51
- it("renders NumberInput (input)", () => {
52
- render(() => (
53
- <ConfigProvider clientName="test">
54
- <I18nProvider>
55
- <Numpad />
56
- </I18nProvider>
57
- </ConfigProvider>
58
- ));
59
- const input = screen.getByRole("textbox");
60
- expect(input).toBeInTheDocument();
61
- });
62
-
63
- it("renders C button with text-danger-500 class", () => {
64
- render(() => (
65
- <ConfigProvider clientName="test">
66
- <I18nProvider>
67
- <Numpad />
68
- </I18nProvider>
69
- </ConfigProvider>
70
- ));
71
- const cButton = screen
72
- .getAllByRole("button")
73
- .find((btn) => btn.className.includes("text-danger-500"));
74
- expect(cButton).toBeTruthy();
75
- });
76
-
77
- it("renders BS button with text-warning-500 class", () => {
78
- render(() => (
79
- <ConfigProvider clientName="test">
80
- <I18nProvider>
81
- <Numpad />
82
- </I18nProvider>
83
- </ConfigProvider>
84
- ));
85
- const bsButton = screen
86
- .getAllByRole("button")
87
- .find((btn) => btn.className.includes("text-warning-500"));
88
- expect(bsButton).toBeTruthy();
89
- });
90
-
91
14
  it("does not render ENT button by default", () => {
92
15
  render(() => (
93
16
  <ConfigProvider clientName="test">