@cascivo/react 1.0.0 → 1.2.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 (646) hide show
  1. package/README.md +5 -4
  2. package/dist/accordion/accordion.js +1 -114
  3. package/dist/accordion/accordion.module.js +1 -10
  4. package/dist/action-sheet/action-sheet.css +1 -1
  5. package/dist/action-sheet/action-sheet.js +1 -91
  6. package/dist/action-sheet/action-sheet.module.js +1 -12
  7. package/dist/alert/alert.js +1 -55
  8. package/dist/alert/alert.module.js +1 -11
  9. package/dist/alert-dialog/alert-dialog.css +1 -1
  10. package/dist/alert-dialog/alert-dialog.js +1 -66
  11. package/dist/alert-dialog/alert-dialog.module.js +1 -11
  12. package/dist/app-shell/app-shell.css +1 -1
  13. package/dist/app-shell/app-shell.js +1 -85
  14. package/dist/app-shell/app-shell.module.js +1 -12
  15. package/dist/aspect-ratio/aspect-ratio.js +1 -20
  16. package/dist/aspect-ratio/aspect-ratio.module.js +1 -6
  17. package/dist/avatar/avatar.js +1 -57
  18. package/dist/avatar/avatar.module.js +1 -8
  19. package/dist/avatar-group/avatar-group.js +1 -24
  20. package/dist/avatar-group/avatar-group.module.js +1 -6
  21. package/dist/badge/badge.js +1 -22
  22. package/dist/badge/badge.module.js +1 -3
  23. package/dist/blockquote/blockquote.js +1 -16
  24. package/dist/blockquote/blockquote.module.js +1 -6
  25. package/dist/bottom-sheet/bottom-sheet.js +1 -111
  26. package/dist/bottom-sheet/bottom-sheet.module.js +1 -14
  27. package/dist/brand/logo/logo.css +1 -0
  28. package/dist/brand/logo/logo.js +1 -0
  29. package/dist/brand/logo/logo.module.js +2 -0
  30. package/dist/breadcrumb/breadcrumb.js +1 -28
  31. package/dist/breadcrumb/breadcrumb.module.js +1 -3
  32. package/dist/button/button.css +1 -1
  33. package/dist/button/button.js +1 -35
  34. package/dist/button/button.module.js +1 -6
  35. package/dist/button-group/button-group.js +1 -39
  36. package/dist/button-group/button-group.module.js +1 -3
  37. package/dist/calendar/calendar-date.js +1 -0
  38. package/dist/calendar/calendar.css +1 -1
  39. package/dist/calendar/calendar.js +1 -199
  40. package/dist/calendar/calendar.module.js +1 -14
  41. package/dist/card/card.js +1 -53
  42. package/dist/card/card.module.js +1 -12
  43. package/dist/carousel/carousel.css +1 -1
  44. package/dist/carousel/carousel.js +1 -138
  45. package/dist/carousel/carousel.module.js +1 -13
  46. package/dist/chat-bubble/chat-bubble.js +1 -31
  47. package/dist/chat-bubble/chat-bubble.module.js +1 -11
  48. package/dist/checkbox/checkbox.js +1 -39
  49. package/dist/checkbox/checkbox.module.js +1 -8
  50. package/dist/checkbox-card/checkbox-card.css +1 -1
  51. package/dist/checkbox-card/checkbox-card.js +1 -50
  52. package/dist/checkbox-card/checkbox-card.module.js +1 -11
  53. package/dist/code/code.js +1 -14
  54. package/dist/code/code.module.js +1 -3
  55. package/dist/code-snippet/code-snippet.js +2 -121
  56. package/dist/code-snippet/code-snippet.module.js +1 -17
  57. package/dist/code-snippet/highlight.js +1 -67
  58. package/dist/collapsible/collapsible.js +1 -47
  59. package/dist/collapsible/collapsible.module.js +1 -7
  60. package/dist/color-picker/color-picker.css +1 -1
  61. package/dist/color-picker/color-picker.js +1 -272
  62. package/dist/color-picker/color-picker.module.js +1 -18
  63. package/dist/color-picker/color.js +1 -0
  64. package/dist/combobox/combobox.css +1 -1
  65. package/dist/combobox/combobox.js +1 -170
  66. package/dist/combobox/combobox.module.js +1 -19
  67. package/dist/combobox/list-nav.js +1 -0
  68. package/dist/combobox/option-list.js +1 -0
  69. package/dist/command-menu/command-menu.js +1 -421
  70. package/dist/command-menu/command-menu.module.js +1 -34
  71. package/dist/comparison/comparison.js +1 -69
  72. package/dist/comparison/comparison.module.js +1 -9
  73. package/dist/contained-list/contained-list.js +1 -41
  74. package/dist/contained-list/contained-list.module.js +1 -11
  75. package/dist/context-menu/context-menu.js +1 -93
  76. package/dist/context-menu/context-menu.module.js +1 -7
  77. package/dist/copy-button/copy-button.js +1 -60
  78. package/dist/copy-button/copy-button.module.js +1 -6
  79. package/dist/data-list/data-list.js +1 -25
  80. package/dist/data-list/data-list.module.js +1 -8
  81. package/dist/data-table/column-filter.js +1 -0
  82. package/dist/data-table/column-layout.js +1 -0
  83. package/dist/data-table/data-table.css +1 -1
  84. package/dist/data-table/data-table.js +1 -398
  85. package/dist/data-table/data-table.module.js +1 -33
  86. package/dist/data-table/grid-keys.js +1 -0
  87. package/dist/data-table/row-group.js +1 -0
  88. package/dist/data-table/row-search.js +1 -0
  89. package/dist/data-table/row-sort.js +1 -0
  90. package/dist/data-table/to-csv.js +3 -0
  91. package/dist/data-table/virtual-window.js +1 -0
  92. package/dist/date-picker/date-picker.css +1 -1
  93. package/dist/date-picker/date-picker.js +1 -224
  94. package/dist/date-picker/date-picker.module.js +1 -23
  95. package/dist/date-picker/parse-date.js +1 -0
  96. package/dist/date-range-picker/date-range-picker.js +1 -196
  97. package/dist/date-range-picker/date-range-picker.module.js +1 -18
  98. package/dist/dock/dock.css +1 -1
  99. package/dist/dock/dock.js +1 -34
  100. package/dist/dock/dock.module.js +1 -8
  101. package/dist/drawer/drawer.js +1 -96
  102. package/dist/drawer/drawer.module.js +1 -13
  103. package/dist/dropdown/dropdown.css +1 -1
  104. package/dist/dropdown/dropdown.js +1 -110
  105. package/dist/dropdown/dropdown.module.js +1 -9
  106. package/dist/editable/editable.js +1 -76
  107. package/dist/editable/editable.module.js +1 -11
  108. package/dist/empty-state/empty-state.js +1 -32
  109. package/dist/empty-state/empty-state.module.js +1 -9
  110. package/dist/fab/fab.css +1 -1
  111. package/dist/fab/fab.js +1 -93
  112. package/dist/fab/fab.module.js +1 -12
  113. package/dist/field/field.css +1 -1
  114. package/dist/field/field.js +1 -53
  115. package/dist/field/field.module.js +1 -7
  116. package/dist/file-uploader/file-uploader.css +1 -1
  117. package/dist/file-uploader/file-uploader.js +1 -123
  118. package/dist/file-uploader/file-uploader.module.js +1 -18
  119. package/dist/filter/filter.css +1 -1
  120. package/dist/filter/filter.js +1 -35
  121. package/dist/filter/filter.module.js +1 -6
  122. package/dist/form/form.js +1 -95
  123. package/dist/form/form.module.js +1 -3
  124. package/dist/header/header.js +1 -44
  125. package/dist/header/header.module.js +1 -11
  126. package/dist/header-panel/header-panel.js +1 -72
  127. package/dist/header-panel/header-panel.module.js +1 -9
  128. package/dist/heading/heading.css +1 -1
  129. package/dist/heading/heading.js +1 -22
  130. package/dist/heading/heading.module.js +1 -3
  131. package/dist/hover-card/hover-card.css +1 -1
  132. package/dist/hover-card/hover-card.js +1 -84
  133. package/dist/hover-card/hover-card.module.js +1 -6
  134. package/dist/icon-button/icon-button.js +1 -19
  135. package/dist/icon-button/icon-button.module.js +1 -3
  136. package/dist/image/image.css +1 -1
  137. package/dist/image/image.js +1 -64
  138. package/dist/image/image.module.js +1 -9
  139. package/dist/index.d.ts +1521 -38
  140. package/dist/indicator/indicator.js +1 -16
  141. package/dist/indicator/indicator.module.js +1 -6
  142. package/dist/infinite-scroll/infinite-scroll.js +1 -49
  143. package/dist/infinite-scroll/infinite-scroll.module.js +1 -7
  144. package/dist/inline-loading/inline-loading.js +1 -74
  145. package/dist/inline-loading/inline-loading.module.js +1 -9
  146. package/dist/input/input.css +1 -1
  147. package/dist/input/input.js +1 -56
  148. package/dist/input/input.module.js +1 -9
  149. package/dist/input-group/input-group.css +1 -1
  150. package/dist/input-group/input-group.js +1 -39
  151. package/dist/input-group/input-group.module.js +1 -9
  152. package/dist/item/item.js +1 -50
  153. package/dist/item/item.module.js +1 -10
  154. package/dist/join/join.js +1 -12
  155. package/dist/join/join.module.js +1 -3
  156. package/dist/kbd/kbd.js +1 -14
  157. package/dist/kbd/kbd.module.js +1 -3
  158. package/dist/label/label.js +1 -23
  159. package/dist/label/label.module.js +1 -7
  160. package/dist/large-title-header/large-title-header.js +1 -38
  161. package/dist/large-title-header/large-title-header.module.js +1 -12
  162. package/dist/layouts/src/auto-grid/auto-grid.js +1 -17
  163. package/dist/layouts/src/auto-grid/auto-grid.module.js +1 -4
  164. package/dist/layouts/src/center/center.js +1 -16
  165. package/dist/layouts/src/center/center.module.js +1 -3
  166. package/dist/layouts/src/columns/columns.js +1 -21
  167. package/dist/layouts/src/columns/columns.module.js +1 -6
  168. package/dist/layouts/src/flex/flex.css +1 -1
  169. package/dist/layouts/src/flex/flex.js +1 -20
  170. package/dist/layouts/src/flex/flex.module.js +1 -3
  171. package/dist/layouts/src/grid/grid.css +1 -1
  172. package/dist/layouts/src/grid/grid.js +1 -55
  173. package/dist/layouts/src/grid/grid.module.js +1 -7
  174. package/dist/layouts/src/page-header/page-header.js +1 -31
  175. package/dist/layouts/src/page-header/page-header.module.js +1 -10
  176. package/dist/layouts/src/spacer/spacer.js +1 -17
  177. package/dist/layouts/src/spacer/spacer.module.js +1 -3
  178. package/dist/link/link.css +1 -1
  179. package/dist/link/link.js +1 -22
  180. package/dist/link/link.module.js +1 -3
  181. package/dist/list/list.js +1 -21
  182. package/dist/list/list.module.js +1 -6
  183. package/dist/log-viewer/log-viewer.css +1 -1
  184. package/dist/log-viewer/log-viewer.js +2 -184
  185. package/dist/log-viewer/log-viewer.module.js +1 -16
  186. package/dist/menu/menu.js +1 -126
  187. package/dist/menu/menu.module.js +1 -8
  188. package/dist/menu-button/menu-button.js +1 -92
  189. package/dist/menu-button/menu-button.module.js +1 -8
  190. package/dist/menubar/menubar.js +1 -103
  191. package/dist/menubar/menubar.module.js +1 -8
  192. package/dist/modal/modal.css +1 -1
  193. package/dist/modal/modal.js +1 -76
  194. package/dist/modal/modal.module.js +1 -12
  195. package/dist/multi-select/list-nav.js +1 -0
  196. package/dist/multi-select/multi-select.css +1 -1
  197. package/dist/multi-select/multi-select.js +1 -106
  198. package/dist/multi-select/multi-select.module.js +1 -15
  199. package/dist/multi-select/option-list.js +1 -0
  200. package/dist/native-select/native-select.css +1 -1
  201. package/dist/native-select/native-select.js +1 -37
  202. package/dist/native-select/native-select.module.js +1 -7
  203. package/dist/navigation-menu/navigation-menu.js +1 -99
  204. package/dist/navigation-menu/navigation-menu.module.js +1 -10
  205. package/dist/node/accordion/accordion.js +1 -114
  206. package/dist/node/accordion/accordion.module.js +1 -10
  207. package/dist/node/action-sheet/action-sheet.js +1 -91
  208. package/dist/node/action-sheet/action-sheet.module.js +1 -12
  209. package/dist/node/alert/alert.js +1 -55
  210. package/dist/node/alert/alert.module.js +1 -11
  211. package/dist/node/alert-dialog/alert-dialog.js +1 -66
  212. package/dist/node/alert-dialog/alert-dialog.module.js +1 -11
  213. package/dist/node/app-shell/app-shell.js +1 -85
  214. package/dist/node/app-shell/app-shell.module.js +1 -12
  215. package/dist/node/aspect-ratio/aspect-ratio.js +1 -20
  216. package/dist/node/aspect-ratio/aspect-ratio.module.js +1 -6
  217. package/dist/node/avatar/avatar.js +1 -57
  218. package/dist/node/avatar/avatar.module.js +1 -8
  219. package/dist/node/avatar-group/avatar-group.js +1 -24
  220. package/dist/node/avatar-group/avatar-group.module.js +1 -6
  221. package/dist/node/badge/badge.js +1 -22
  222. package/dist/node/badge/badge.module.js +1 -3
  223. package/dist/node/blockquote/blockquote.js +1 -16
  224. package/dist/node/blockquote/blockquote.module.js +1 -6
  225. package/dist/node/bottom-sheet/bottom-sheet.js +1 -111
  226. package/dist/node/bottom-sheet/bottom-sheet.module.js +1 -14
  227. package/dist/node/brand/logo/logo.js +1 -0
  228. package/dist/node/brand/logo/logo.module.js +1 -0
  229. package/dist/node/breadcrumb/breadcrumb.js +1 -28
  230. package/dist/node/breadcrumb/breadcrumb.module.js +1 -3
  231. package/dist/node/button/button.js +1 -35
  232. package/dist/node/button/button.module.js +1 -6
  233. package/dist/node/button-group/button-group.js +1 -39
  234. package/dist/node/button-group/button-group.module.js +1 -3
  235. package/dist/node/calendar/calendar-date.js +1 -0
  236. package/dist/node/calendar/calendar.js +1 -199
  237. package/dist/node/calendar/calendar.module.js +1 -14
  238. package/dist/node/card/card.js +1 -53
  239. package/dist/node/card/card.module.js +1 -12
  240. package/dist/node/carousel/carousel.js +1 -138
  241. package/dist/node/carousel/carousel.module.js +1 -13
  242. package/dist/node/chat-bubble/chat-bubble.js +1 -31
  243. package/dist/node/chat-bubble/chat-bubble.module.js +1 -11
  244. package/dist/node/checkbox/checkbox.js +1 -39
  245. package/dist/node/checkbox/checkbox.module.js +1 -8
  246. package/dist/node/checkbox-card/checkbox-card.js +1 -50
  247. package/dist/node/checkbox-card/checkbox-card.module.js +1 -11
  248. package/dist/node/code/code.js +1 -14
  249. package/dist/node/code/code.module.js +1 -3
  250. package/dist/node/code-snippet/code-snippet.js +2 -121
  251. package/dist/node/code-snippet/code-snippet.module.js +1 -17
  252. package/dist/node/code-snippet/highlight.js +1 -67
  253. package/dist/node/collapsible/collapsible.js +1 -47
  254. package/dist/node/collapsible/collapsible.module.js +1 -7
  255. package/dist/node/color-picker/color-picker.js +1 -272
  256. package/dist/node/color-picker/color-picker.module.js +1 -18
  257. package/dist/node/color-picker/color.js +1 -0
  258. package/dist/node/combobox/combobox.js +1 -170
  259. package/dist/node/combobox/combobox.module.js +1 -19
  260. package/dist/node/combobox/list-nav.js +1 -0
  261. package/dist/node/combobox/option-list.js +1 -0
  262. package/dist/node/command-menu/command-menu.js +1 -421
  263. package/dist/node/command-menu/command-menu.module.js +1 -34
  264. package/dist/node/comparison/comparison.js +1 -69
  265. package/dist/node/comparison/comparison.module.js +1 -9
  266. package/dist/node/contained-list/contained-list.js +1 -41
  267. package/dist/node/contained-list/contained-list.module.js +1 -11
  268. package/dist/node/context-menu/context-menu.js +1 -93
  269. package/dist/node/context-menu/context-menu.module.js +1 -7
  270. package/dist/node/copy-button/copy-button.js +1 -60
  271. package/dist/node/copy-button/copy-button.module.js +1 -6
  272. package/dist/node/data-list/data-list.js +1 -25
  273. package/dist/node/data-list/data-list.module.js +1 -8
  274. package/dist/node/data-table/column-filter.js +1 -0
  275. package/dist/node/data-table/column-layout.js +1 -0
  276. package/dist/node/data-table/data-table.js +1 -398
  277. package/dist/node/data-table/data-table.module.js +1 -33
  278. package/dist/node/data-table/grid-keys.js +1 -0
  279. package/dist/node/data-table/row-group.js +1 -0
  280. package/dist/node/data-table/row-search.js +1 -0
  281. package/dist/node/data-table/row-sort.js +1 -0
  282. package/dist/node/data-table/to-csv.js +3 -0
  283. package/dist/node/data-table/virtual-window.js +1 -0
  284. package/dist/node/date-picker/date-picker.js +1 -224
  285. package/dist/node/date-picker/date-picker.module.js +1 -23
  286. package/dist/node/date-picker/parse-date.js +1 -0
  287. package/dist/node/date-range-picker/date-range-picker.js +1 -196
  288. package/dist/node/date-range-picker/date-range-picker.module.js +1 -18
  289. package/dist/node/dock/dock.js +1 -34
  290. package/dist/node/dock/dock.module.js +1 -8
  291. package/dist/node/drawer/drawer.js +1 -96
  292. package/dist/node/drawer/drawer.module.js +1 -13
  293. package/dist/node/dropdown/dropdown.js +1 -110
  294. package/dist/node/dropdown/dropdown.module.js +1 -9
  295. package/dist/node/editable/editable.js +1 -76
  296. package/dist/node/editable/editable.module.js +1 -11
  297. package/dist/node/empty-state/empty-state.js +1 -32
  298. package/dist/node/empty-state/empty-state.module.js +1 -9
  299. package/dist/node/fab/fab.js +1 -93
  300. package/dist/node/fab/fab.module.js +1 -12
  301. package/dist/node/field/field.js +1 -53
  302. package/dist/node/field/field.module.js +1 -7
  303. package/dist/node/file-uploader/file-uploader.js +1 -123
  304. package/dist/node/file-uploader/file-uploader.module.js +1 -18
  305. package/dist/node/filter/filter.js +1 -35
  306. package/dist/node/filter/filter.module.js +1 -6
  307. package/dist/node/form/form.js +1 -95
  308. package/dist/node/form/form.module.js +1 -3
  309. package/dist/node/header/header.js +1 -44
  310. package/dist/node/header/header.module.js +1 -11
  311. package/dist/node/header-panel/header-panel.js +1 -72
  312. package/dist/node/header-panel/header-panel.module.js +1 -9
  313. package/dist/node/heading/heading.js +1 -22
  314. package/dist/node/heading/heading.module.js +1 -3
  315. package/dist/node/hover-card/hover-card.js +1 -84
  316. package/dist/node/hover-card/hover-card.module.js +1 -6
  317. package/dist/node/icon-button/icon-button.js +1 -19
  318. package/dist/node/icon-button/icon-button.module.js +1 -3
  319. package/dist/node/image/image.js +1 -64
  320. package/dist/node/image/image.module.js +1 -9
  321. package/dist/node/indicator/indicator.js +1 -16
  322. package/dist/node/indicator/indicator.module.js +1 -6
  323. package/dist/node/infinite-scroll/infinite-scroll.js +1 -49
  324. package/dist/node/infinite-scroll/infinite-scroll.module.js +1 -7
  325. package/dist/node/inline-loading/inline-loading.js +1 -74
  326. package/dist/node/inline-loading/inline-loading.module.js +1 -9
  327. package/dist/node/input/input.js +1 -56
  328. package/dist/node/input/input.module.js +1 -9
  329. package/dist/node/input-group/input-group.js +1 -39
  330. package/dist/node/input-group/input-group.module.js +1 -9
  331. package/dist/node/item/item.js +1 -50
  332. package/dist/node/item/item.module.js +1 -10
  333. package/dist/node/join/join.js +1 -12
  334. package/dist/node/join/join.module.js +1 -3
  335. package/dist/node/kbd/kbd.js +1 -14
  336. package/dist/node/kbd/kbd.module.js +1 -3
  337. package/dist/node/label/label.js +1 -23
  338. package/dist/node/label/label.module.js +1 -7
  339. package/dist/node/large-title-header/large-title-header.js +1 -38
  340. package/dist/node/large-title-header/large-title-header.module.js +1 -12
  341. package/dist/node/layouts/src/auto-grid/auto-grid.js +1 -17
  342. package/dist/node/layouts/src/auto-grid/auto-grid.module.js +1 -4
  343. package/dist/node/layouts/src/center/center.js +1 -16
  344. package/dist/node/layouts/src/center/center.module.js +1 -3
  345. package/dist/node/layouts/src/columns/columns.js +1 -21
  346. package/dist/node/layouts/src/columns/columns.module.js +1 -6
  347. package/dist/node/layouts/src/flex/flex.js +1 -20
  348. package/dist/node/layouts/src/flex/flex.module.js +1 -3
  349. package/dist/node/layouts/src/grid/grid.js +1 -55
  350. package/dist/node/layouts/src/grid/grid.module.js +1 -7
  351. package/dist/node/layouts/src/page-header/page-header.js +1 -31
  352. package/dist/node/layouts/src/page-header/page-header.module.js +1 -10
  353. package/dist/node/layouts/src/spacer/spacer.js +1 -17
  354. package/dist/node/layouts/src/spacer/spacer.module.js +1 -3
  355. package/dist/node/link/link.js +1 -22
  356. package/dist/node/link/link.module.js +1 -3
  357. package/dist/node/list/list.js +1 -21
  358. package/dist/node/list/list.module.js +1 -6
  359. package/dist/node/log-viewer/log-viewer.js +2 -184
  360. package/dist/node/log-viewer/log-viewer.module.js +1 -16
  361. package/dist/node/menu/menu.js +1 -126
  362. package/dist/node/menu/menu.module.js +1 -8
  363. package/dist/node/menu-button/menu-button.js +1 -92
  364. package/dist/node/menu-button/menu-button.module.js +1 -8
  365. package/dist/node/menubar/menubar.js +1 -103
  366. package/dist/node/menubar/menubar.module.js +1 -8
  367. package/dist/node/modal/modal.js +1 -76
  368. package/dist/node/modal/modal.module.js +1 -12
  369. package/dist/node/multi-select/list-nav.js +1 -0
  370. package/dist/node/multi-select/multi-select.js +1 -106
  371. package/dist/node/multi-select/multi-select.module.js +1 -15
  372. package/dist/node/multi-select/option-list.js +1 -0
  373. package/dist/node/native-select/native-select.js +1 -37
  374. package/dist/node/native-select/native-select.module.js +1 -7
  375. package/dist/node/navigation-menu/navigation-menu.js +1 -99
  376. package/dist/node/navigation-menu/navigation-menu.module.js +1 -10
  377. package/dist/node/notification/notification.js +1 -140
  378. package/dist/node/notification/notification.module.js +1 -11
  379. package/dist/node/number-input/number-input.js +1 -148
  380. package/dist/node/number-input/number-input.module.js +1 -12
  381. package/dist/node/otp-input/otp-input.js +1 -70
  382. package/dist/node/otp-input/otp-input.module.js +1 -6
  383. package/dist/node/overflow-menu/overflow-menu.js +1 -70
  384. package/dist/node/overflow-menu/overflow-menu.module.js +1 -7
  385. package/dist/node/pagination/pagination.js +1 -92
  386. package/dist/node/pagination/pagination.module.js +1 -11
  387. package/dist/node/password-input/password-input.js +1 -81
  388. package/dist/node/password-input/password-input.module.js +1 -11
  389. package/dist/node/popover/popover.js +1 -51
  390. package/dist/node/popover/popover.module.js +1 -6
  391. package/dist/node/popover/use-popover.js +1 -55
  392. package/dist/node/progress/progress.js +1 -16
  393. package/dist/node/progress/progress.module.js +1 -6
  394. package/dist/node/progress-bar/progress-bar.js +1 -42
  395. package/dist/node/progress-bar/progress-bar.module.js +1 -11
  396. package/dist/node/progress-circle/progress-circle.js +1 -46
  397. package/dist/node/progress-circle/progress-circle.module.js +1 -9
  398. package/dist/node/progress-indicator/progress-indicator.js +1 -34
  399. package/dist/node/progress-indicator/progress-indicator.module.js +1 -10
  400. package/dist/node/prose/prose.js +1 -13
  401. package/dist/node/prose/prose.module.js +1 -3
  402. package/dist/node/pull-to-refresh/pull-to-refresh.js +1 -82
  403. package/dist/node/pull-to-refresh/pull-to-refresh.module.js +1 -9
  404. package/dist/node/qr-code/encode.js +1 -583
  405. package/dist/node/qr-code/qr-code.js +1 -41
  406. package/dist/node/qr-code/qr-code.module.js +1 -6
  407. package/dist/node/radial-progress/radial-progress.js +1 -27
  408. package/dist/node/radial-progress/radial-progress.module.js +1 -6
  409. package/dist/node/radio/radio.js +1 -49
  410. package/dist/node/radio/radio.module.js +1 -9
  411. package/dist/node/radio-card/radio-card.js +1 -64
  412. package/dist/node/radio-card/radio-card.module.js +1 -11
  413. package/dist/node/rating-group/rating-group.js +1 -37
  414. package/dist/node/rating-group/rating-group.module.js +1 -6
  415. package/dist/node/react/src/index.js +1 -141
  416. package/dist/node/relative-time/relative-time.js +1 -66
  417. package/dist/node/relative-time/relative-time.module.js +1 -3
  418. package/dist/node/reorder-list/reorder-list.js +1 -143
  419. package/dist/node/reorder-list/reorder-list.module.js +1 -11
  420. package/dist/node/resizable/resizable.js +1 -80
  421. package/dist/node/resizable/resizable.module.js +1 -8
  422. package/dist/node/scroll-area/scroll-area.js +1 -38
  423. package/dist/node/scroll-area/scroll-area.module.js +1 -3
  424. package/dist/node/search/search.js +1 -96
  425. package/dist/node/search/search.module.js +1 -9
  426. package/dist/node/segmented-control/segmented-control.js +1 -43
  427. package/dist/node/segmented-control/segmented-control.module.js +1 -6
  428. package/dist/node/select/select.js +1 -73
  429. package/dist/node/select/select.module.js +1 -11
  430. package/dist/node/separator/separator.js +1 -19
  431. package/dist/node/separator/separator.module.js +1 -3
  432. package/dist/node/sheet/sheet.js +1 -49
  433. package/dist/node/sheet/sheet.module.js +1 -9
  434. package/dist/node/shell-header/shell-header.js +1 -169
  435. package/dist/node/shell-header/shell-header.module.js +1 -24
  436. package/dist/node/side-nav/side-nav.js +1 -334
  437. package/dist/node/side-nav/side-nav.module.js +1 -31
  438. package/dist/node/skeleton/skeleton.js +1 -23
  439. package/dist/node/skeleton/skeleton.module.js +1 -7
  440. package/dist/node/skip-nav/skip-nav.js +1 -28
  441. package/dist/node/skip-nav/skip-nav.module.js +1 -3
  442. package/dist/node/slider/slider.js +1 -30
  443. package/dist/node/slider/slider.module.js +1 -7
  444. package/dist/node/spinner/spinner.js +1 -18
  445. package/dist/node/spinner/spinner.module.js +1 -6
  446. package/dist/node/stack/stack.js +1 -17
  447. package/dist/node/stack/stack.module.js +1 -6
  448. package/dist/node/stat/stat.js +1 -41
  449. package/dist/node/stat/stat.module.js +1 -11
  450. package/dist/node/status/status.js +1 -25
  451. package/dist/node/status/status.module.js +1 -7
  452. package/dist/node/steps/steps.js +1 -35
  453. package/dist/node/steps/steps.module.js +1 -8
  454. package/dist/node/structured-list/structured-list.js +1 -102
  455. package/dist/node/structured-list/structured-list.module.js +1 -12
  456. package/dist/node/swap/swap.js +1 -36
  457. package/dist/node/swap/swap.module.js +1 -7
  458. package/dist/node/swipe-item/swipe-item.js +1 -62
  459. package/dist/node/swipe-item/swipe-item.module.js +1 -12
  460. package/dist/node/switcher/switcher.js +1 -32
  461. package/dist/node/switcher/switcher.module.js +1 -8
  462. package/dist/node/tabs/tabs.js +1 -98
  463. package/dist/node/tabs/tabs.module.js +1 -8
  464. package/dist/node/tag/tag.js +1 -33
  465. package/dist/node/tag/tag.module.js +1 -6
  466. package/dist/node/tags-input/tags-input.js +1 -68
  467. package/dist/node/tags-input/tags-input.module.js +1 -8
  468. package/dist/node/text/text.js +1 -16
  469. package/dist/node/text/text.module.js +1 -3
  470. package/dist/node/textarea/textarea.js +1 -58
  471. package/dist/node/textarea/textarea.module.js +1 -9
  472. package/dist/node/tile/tile.js +1 -39
  473. package/dist/node/tile/tile.module.js +1 -7
  474. package/dist/node/time-picker/time-picker.js +1 -64
  475. package/dist/node/time-picker/time-picker.module.js +1 -9
  476. package/dist/node/timeline/timeline.js +1 -55
  477. package/dist/node/timeline/timeline.module.js +1 -11
  478. package/dist/node/toast/toast.js +1 -85
  479. package/dist/node/toast/toast.module.js +1 -11
  480. package/dist/node/toc/toc.js +1 -43
  481. package/dist/node/toc/toc.module.js +1 -3
  482. package/dist/node/toc/use-toc-from-region.js +1 -18
  483. package/dist/node/toggle/toggle.js +1 -42
  484. package/dist/node/toggle/toggle.module.js +1 -8
  485. package/dist/node/toggle-group/toggle-group.js +1 -55
  486. package/dist/node/toggle-group/toggle-group.module.js +1 -6
  487. package/dist/node/toggletip/toggletip.js +1 -49
  488. package/dist/node/toggletip/toggletip.module.js +1 -7
  489. package/dist/node/tooltip/tooltip.js +1 -58
  490. package/dist/node/tooltip/tooltip.module.js +1 -6
  491. package/dist/node/tree-view/tree-view.js +1 -201
  492. package/dist/node/tree-view/tree-view.module.js +1 -13
  493. package/dist/node/user/user.js +1 -35
  494. package/dist/node/user/user.module.js +1 -9
  495. package/dist/node/virtual-list/virtual-list.js +1 -40
  496. package/dist/node/virtual-list/virtual-list.module.js +1 -7
  497. package/dist/node/visually-hidden/visually-hidden.js +1 -2
  498. package/dist/node/wheel-picker/wheel-picker.js +1 -84
  499. package/dist/node/wheel-picker/wheel-picker.module.js +1 -8
  500. package/dist/notification/notification.js +1 -140
  501. package/dist/notification/notification.module.js +1 -11
  502. package/dist/number-input/number-input.js +1 -148
  503. package/dist/number-input/number-input.module.js +1 -12
  504. package/dist/otp-input/otp-input.js +1 -70
  505. package/dist/otp-input/otp-input.module.js +1 -6
  506. package/dist/overflow-menu/overflow-menu.js +1 -70
  507. package/dist/overflow-menu/overflow-menu.module.js +1 -7
  508. package/dist/pagination/pagination.js +1 -92
  509. package/dist/pagination/pagination.module.js +1 -11
  510. package/dist/password-input/password-input.js +1 -81
  511. package/dist/password-input/password-input.module.js +1 -11
  512. package/dist/popover/popover.js +1 -51
  513. package/dist/popover/popover.module.js +1 -6
  514. package/dist/popover/use-popover.js +1 -55
  515. package/dist/progress/progress.css +1 -1
  516. package/dist/progress/progress.js +1 -16
  517. package/dist/progress/progress.module.js +1 -6
  518. package/dist/progress-bar/progress-bar.css +1 -1
  519. package/dist/progress-bar/progress-bar.js +1 -42
  520. package/dist/progress-bar/progress-bar.module.js +1 -11
  521. package/dist/progress-circle/progress-circle.js +1 -46
  522. package/dist/progress-circle/progress-circle.module.js +1 -9
  523. package/dist/progress-indicator/progress-indicator.css +1 -1
  524. package/dist/progress-indicator/progress-indicator.js +1 -34
  525. package/dist/progress-indicator/progress-indicator.module.js +1 -10
  526. package/dist/prose/prose.css +1 -1
  527. package/dist/prose/prose.js +1 -13
  528. package/dist/prose/prose.module.js +1 -3
  529. package/dist/pull-to-refresh/pull-to-refresh.js +1 -82
  530. package/dist/pull-to-refresh/pull-to-refresh.module.js +1 -9
  531. package/dist/qr-code/encode.js +1 -583
  532. package/dist/qr-code/qr-code.js +1 -41
  533. package/dist/qr-code/qr-code.module.js +1 -6
  534. package/dist/radial-progress/radial-progress.js +1 -27
  535. package/dist/radial-progress/radial-progress.module.js +1 -6
  536. package/dist/radio/radio.js +1 -49
  537. package/dist/radio/radio.module.js +1 -9
  538. package/dist/radio-card/radio-card.css +1 -1
  539. package/dist/radio-card/radio-card.js +1 -64
  540. package/dist/radio-card/radio-card.module.js +1 -11
  541. package/dist/rating-group/rating-group.js +1 -37
  542. package/dist/rating-group/rating-group.module.js +1 -6
  543. package/dist/react/src/index.js +1 -141
  544. package/dist/relative-time/relative-time.js +1 -66
  545. package/dist/relative-time/relative-time.module.js +1 -3
  546. package/dist/reorder-list/reorder-list.css +1 -1
  547. package/dist/reorder-list/reorder-list.js +1 -143
  548. package/dist/reorder-list/reorder-list.module.js +1 -11
  549. package/dist/resizable/resizable.js +1 -80
  550. package/dist/resizable/resizable.module.js +1 -8
  551. package/dist/scroll-area/scroll-area.css +1 -1
  552. package/dist/scroll-area/scroll-area.js +1 -38
  553. package/dist/scroll-area/scroll-area.module.js +1 -3
  554. package/dist/search/search.js +1 -96
  555. package/dist/search/search.module.js +1 -9
  556. package/dist/segmented-control/segmented-control.js +1 -43
  557. package/dist/segmented-control/segmented-control.module.js +1 -6
  558. package/dist/select/select.js +1 -73
  559. package/dist/select/select.module.js +1 -11
  560. package/dist/separator/separator.js +1 -19
  561. package/dist/separator/separator.module.js +1 -3
  562. package/dist/sheet/sheet.js +1 -49
  563. package/dist/sheet/sheet.module.js +1 -9
  564. package/dist/shell-header/shell-header.css +1 -1
  565. package/dist/shell-header/shell-header.js +1 -169
  566. package/dist/shell-header/shell-header.module.js +1 -24
  567. package/dist/side-nav/side-nav.css +1 -1
  568. package/dist/side-nav/side-nav.js +1 -334
  569. package/dist/side-nav/side-nav.module.js +1 -31
  570. package/dist/skeleton/skeleton.css +1 -1
  571. package/dist/skeleton/skeleton.js +1 -23
  572. package/dist/skeleton/skeleton.module.js +1 -7
  573. package/dist/skip-nav/skip-nav.js +1 -28
  574. package/dist/skip-nav/skip-nav.module.js +1 -3
  575. package/dist/slider/slider.js +1 -30
  576. package/dist/slider/slider.module.js +1 -7
  577. package/dist/spinner/spinner.css +1 -1
  578. package/dist/spinner/spinner.js +1 -18
  579. package/dist/spinner/spinner.module.js +1 -6
  580. package/dist/stack/stack.js +1 -17
  581. package/dist/stack/stack.module.js +1 -6
  582. package/dist/stat/stat.js +1 -41
  583. package/dist/stat/stat.module.js +1 -11
  584. package/dist/status/status.css +1 -1
  585. package/dist/status/status.js +1 -25
  586. package/dist/status/status.module.js +1 -7
  587. package/dist/steps/steps.css +1 -1
  588. package/dist/steps/steps.js +1 -35
  589. package/dist/steps/steps.module.js +1 -8
  590. package/dist/structured-list/structured-list.js +1 -102
  591. package/dist/structured-list/structured-list.module.js +1 -12
  592. package/dist/styles.css +401 -55
  593. package/dist/swap/swap.css +1 -1
  594. package/dist/swap/swap.js +1 -36
  595. package/dist/swap/swap.module.js +1 -7
  596. package/dist/swipe-item/swipe-item.js +1 -62
  597. package/dist/swipe-item/swipe-item.module.js +1 -12
  598. package/dist/switcher/switcher.js +1 -32
  599. package/dist/switcher/switcher.module.js +1 -8
  600. package/dist/tabs/tabs.js +1 -98
  601. package/dist/tabs/tabs.module.js +1 -8
  602. package/dist/tag/tag.js +1 -33
  603. package/dist/tag/tag.module.js +1 -6
  604. package/dist/tags-input/tags-input.js +1 -68
  605. package/dist/tags-input/tags-input.module.js +1 -8
  606. package/dist/text/text.css +1 -1
  607. package/dist/text/text.js +1 -16
  608. package/dist/text/text.module.js +1 -3
  609. package/dist/textarea/textarea.css +1 -1
  610. package/dist/textarea/textarea.js +1 -58
  611. package/dist/textarea/textarea.module.js +1 -9
  612. package/dist/tile/tile.css +1 -1
  613. package/dist/tile/tile.js +1 -39
  614. package/dist/tile/tile.module.js +1 -7
  615. package/dist/time-picker/time-picker.js +1 -64
  616. package/dist/time-picker/time-picker.module.js +1 -9
  617. package/dist/timeline/timeline.js +1 -55
  618. package/dist/timeline/timeline.module.js +1 -11
  619. package/dist/toast/toast.css +1 -1
  620. package/dist/toast/toast.js +1 -85
  621. package/dist/toast/toast.module.js +1 -11
  622. package/dist/toc/toc.css +1 -1
  623. package/dist/toc/toc.js +1 -43
  624. package/dist/toc/toc.module.js +1 -3
  625. package/dist/toc/use-toc-from-region.js +1 -18
  626. package/dist/toggle/toggle.js +1 -42
  627. package/dist/toggle/toggle.module.js +1 -8
  628. package/dist/toggle-group/toggle-group.js +1 -55
  629. package/dist/toggle-group/toggle-group.module.js +1 -6
  630. package/dist/toggletip/toggletip.js +1 -49
  631. package/dist/toggletip/toggletip.module.js +1 -7
  632. package/dist/tooltip/tooltip.css +1 -1
  633. package/dist/tooltip/tooltip.js +1 -58
  634. package/dist/tooltip/tooltip.module.js +1 -6
  635. package/dist/tree-view/tree-view.css +1 -1
  636. package/dist/tree-view/tree-view.js +1 -201
  637. package/dist/tree-view/tree-view.module.js +1 -13
  638. package/dist/user/user.js +1 -35
  639. package/dist/user/user.module.js +1 -9
  640. package/dist/virtual-list/virtual-list.js +1 -40
  641. package/dist/virtual-list/virtual-list.module.js +1 -7
  642. package/dist/visually-hidden/visually-hidden.js +1 -2
  643. package/dist/wheel-picker/wheel-picker.js +1 -84
  644. package/dist/wheel-picker/wheel-picker.module.js +1 -8
  645. package/package.json +4 -4
  646. package/readme.body.md +3 -2
@@ -1,201 +1 @@
1
- "use client";
2
-
3
- import e from "./tree-view.module.js";
4
- import { useRef as t } from "react";
5
- import { cn as n, useControllableSignal as r, useSignal as i, useSignals as a } from "@cascivo/core";
6
- import { builtin as o, t as s } from "@cascivo/i18n";
7
- import { jsx as c, jsxs as l } from "react/jsx-runtime";
8
- //#region ../components/src/tree-view/tree-view.tsx
9
- function u(e, t) {
10
- let n = [], r = (e, i, a) => {
11
- for (let o of e) {
12
- let e = !!o.children && o.children.length > 0, s = t.has(o.id);
13
- n.push({
14
- id: o.id,
15
- level: i,
16
- parentId: a,
17
- hasChildren: e,
18
- expanded: s
19
- }), e && s && r(o.children, i + 1, o.id);
20
- }
21
- };
22
- return r(e, 1, null), n;
23
- }
24
- function d(e) {
25
- return e === void 0 ? [] : Array.isArray(e) ? e : e === "" ? [] : [e];
26
- }
27
- function f({ items: o, selectionMode: s = "single", selected: l, defaultSelected: f, onSelectChange: h, expanded: g, defaultExpanded: _, onExpandedChange: v, className: y, "aria-label": b, ariaLabel: x, label: S }) {
28
- a();
29
- let [C, w] = r({
30
- value: g,
31
- defaultValue: _ ?? [],
32
- onChange: v
33
- }), [T, E] = r({
34
- value: l,
35
- defaultValue: f ?? (s === "multi" ? [] : ""),
36
- onChange: h
37
- }), D = i(null), O = t(/* @__PURE__ */ new Map()), k = new Set(C.value), A = u(o, k), j = new Map(A.map((e, t) => [e.id, t])), M = d(T.value), N = new Set(M), P = D.value ?? M[0] ?? A[0]?.id ?? null, F = (e) => w([...e]), I = (e) => {
38
- if (k.has(e)) return;
39
- let t = new Set(k);
40
- t.add(e), F(t);
41
- }, L = (e) => {
42
- if (!k.has(e)) return;
43
- let t = new Set(k);
44
- t.delete(e), F(t);
45
- }, R = (e) => {
46
- D.value = e, O.current.get(e)?.focus();
47
- }, z = (e) => {
48
- if (s === "multi") {
49
- let t = new Set(N);
50
- t.has(e) ? t.delete(e) : t.add(e), E([...t]);
51
- } else E(e);
52
- }, B = t({
53
- buffer: "",
54
- at: 0
55
- }), V = (e, t) => {
56
- let n = j.get(t.id);
57
- if (n === void 0) return;
58
- let { hasChildren: r, level: i, parentId: a, expanded: s } = A[n];
59
- switch (e.key) {
60
- case "ArrowDown": {
61
- e.preventDefault();
62
- let t = A[n + 1];
63
- t && R(t.id);
64
- break;
65
- }
66
- case "ArrowUp": {
67
- e.preventDefault();
68
- let t = A[n - 1];
69
- t && R(t.id);
70
- break;
71
- }
72
- case "ArrowRight":
73
- if (e.preventDefault(), r && !s) I(t.id);
74
- else if (r && s) {
75
- let e = A[n + 1];
76
- e && e.level > i && R(e.id);
77
- }
78
- break;
79
- case "ArrowLeft":
80
- e.preventDefault(), r && s ? L(t.id) : a && R(a);
81
- break;
82
- case "Home":
83
- e.preventDefault(), A[0] && R(A[0].id);
84
- break;
85
- case "End": {
86
- e.preventDefault();
87
- let t = A[A.length - 1];
88
- t && R(t.id);
89
- break;
90
- }
91
- case "Enter":
92
- case " ":
93
- e.preventDefault(), z(t.id);
94
- break;
95
- default:
96
- if (e.key.length === 1 && !e.metaKey && !e.ctrlKey && !e.altKey) {
97
- let t = B.current, r = Date.now();
98
- t.buffer = r - t.at > 500 ? e.key : t.buffer + e.key, t.at = r;
99
- let i = t.buffer.toLowerCase(), a = (e) => typeof e.label == "string" && e.label.toLowerCase().startsWith(i), s = p(o, k), c = [...A.slice(n + 1), ...A.slice(0, n + 1)].find((e) => {
100
- let t = s.get(e.id);
101
- return t ? a(t) : !1;
102
- });
103
- c && R(c.id);
104
- }
105
- break;
106
- }
107
- }, H = (e, t, n, r) => {
108
- let i = !!e.children && e.children.length > 0, a = k.has(e.id), o = N.has(e.id), s = P === e.id, l = e.children?.length ?? 0;
109
- return /* @__PURE__ */ c(m, {
110
- node: e,
111
- level: t,
112
- posInSet: n,
113
- setSize: r,
114
- hasChildren: i,
115
- isExpanded: a,
116
- isSelected: o,
117
- isTabbable: s,
118
- itemRefs: O,
119
- onFocusNode: () => D.value = e.id,
120
- onKeyDown: (t) => V(t, e),
121
- onActivate: () => {
122
- R(e.id), i && (a ? L : I)(e.id), z(e.id);
123
- },
124
- children: i && e.children.map((e, n) => H(e, t + 1, n + 1, l))
125
- }, e.id);
126
- };
127
- return /* @__PURE__ */ c("ul", {
128
- role: "tree",
129
- "aria-label": x ?? b ?? S,
130
- className: n(e.tree, y),
131
- children: o.map((e, t) => H(e, 1, t + 1, o.length))
132
- });
133
- }
134
- function p(e, t) {
135
- let n = /* @__PURE__ */ new Map(), r = (e) => {
136
- for (let i of e) n.set(i.id, i), i.children && i.children.length > 0 && t.has(i.id) && r(i.children);
137
- };
138
- return r(e), n;
139
- }
140
- function m({ node: t, level: n, posInSet: r, setSize: i, hasChildren: a, isExpanded: o, isSelected: s, isTabbable: u, itemRefs: d, onFocusNode: f, onKeyDown: p, onActivate: m, children: h }) {
141
- return /* @__PURE__ */ l("li", {
142
- role: "treeitem",
143
- "aria-level": n,
144
- "aria-posinset": r,
145
- "aria-setsize": i,
146
- "aria-selected": s,
147
- "aria-expanded": a ? o : void 0,
148
- tabIndex: u ? 0 : -1,
149
- "data-selected": s || void 0,
150
- "data-state": a ? o ? "open" : "closed" : void 0,
151
- style: { "--cascivo-tree-level": n },
152
- className: e.item,
153
- ref: (e) => {
154
- e ? d.current.set(t.id, e) : d.current.delete(t.id);
155
- },
156
- onFocus: (e) => {
157
- e.target === e.currentTarget && f();
158
- },
159
- onKeyDown: p,
160
- onClick: (e) => {
161
- e.stopPropagation(), m();
162
- },
163
- children: [/* @__PURE__ */ l("span", {
164
- className: e.row,
165
- children: [
166
- a ? /* @__PURE__ */ c("span", {
167
- className: e.twisty,
168
- "aria-hidden": "true",
169
- "data-state": o ? "open" : "closed"
170
- }) : /* @__PURE__ */ c("span", {
171
- className: e.twistySpacer,
172
- "aria-hidden": "true"
173
- }),
174
- t.icon && /* @__PURE__ */ c("span", {
175
- className: e.icon,
176
- "aria-hidden": "true",
177
- children: t.icon
178
- }),
179
- /* @__PURE__ */ c("span", {
180
- className: e.label,
181
- children: t.label
182
- })
183
- ]
184
- }), a && /* @__PURE__ */ c("div", {
185
- className: e.groupWrap,
186
- "data-state": o ? "open" : "closed",
187
- children: /* @__PURE__ */ c("ul", {
188
- role: "group",
189
- className: e.group,
190
- children: h
191
- })
192
- })]
193
- });
194
- }
195
- var h = {
196
- loading: () => s(o.treeView.loading),
197
- expand: () => s(o.treeView.expand),
198
- collapse: () => s(o.treeView.collapse)
199
- };
200
- //#endregion
201
- export { f as TreeView, h as treeViewMessages };
1
+ "use client";import e from"./tree-view.module.js";import{useRef as t}from"react";import{cn as n,useControllableSignal as r,useId as i,useSignal as a,useSignals as o,useTypeahead as s}from"@cascivo/core";import{builtin as c,t as l}from"@cascivo/i18n";import{jsx as u,jsxs as d}from"react/jsx-runtime";function flattenVisible(e,t){let n=[],walk=(e,r,i)=>{for(let a of e){let e=!!a.children&&a.children.length>0,o=t.has(a.id);n.push({id:a.id,level:r,parentId:i,hasChildren:e,expanded:o}),e&&o&&walk(a.children,r+1,a.id)}};return walk(e,1,null),n}function toSelectionArray(e){return e===void 0?[]:Array.isArray(e)?e:e===``?[]:[e]}function TreeView({items:i,selectionMode:c=`single`,selected:l,defaultSelected:d,onSelectChange:f,onValueChange:p,expanded:m,defaultExpanded:h,onExpandedChange:g,className:_,"aria-label":v,ariaLabel:y,label:b}){o();let[x,S]=r({value:m,defaultValue:h??[],onChange:g}),[C,w]=r({value:l,defaultValue:d??(c===`multi`?[]:``),onChange:e=>{p?.(e),f?.(e)}}),T=a(null),E=t(new Map),D=new Set(x.value),O=flattenVisible(i,D),k=new Map(O.map((e,t)=>[e.id,t])),A=toSelectionArray(C.value),j=new Set(A),M=((...e)=>{for(let t of e)if(t&&k.has(t))return t;return O[0]?.id??null})(T.value,A[0]),commitExpanded=e=>S([...e]),expand=e=>{if(D.has(e))return;let t=new Set(D);t.add(e),commitExpanded(t)},collapse=e=>{if(!D.has(e))return;let t=new Set(D);t.delete(e),commitExpanded(t)},focusNode=e=>{T.value=e,E.current.get(e)?.focus()},step=(e,t)=>{let n=collectVisibleNodes(i,D);for(let r=e+t;r>=0&&r<O.length;r+=t){let e=O[r];if(e&&!n.get(e.id)?.disabled)return e}},edge=e=>e===`start`?step(-1,1):step(O.length,-1),select=e=>{if(!collectVisibleNodes(i,D).get(e)?.disabled)if(c===`multi`){let t=new Set(j);t.has(e)?t.delete(e):t.add(e),w([...t])}else w(e)},nodeText=e=>e.textValue===void 0?typeof e.label==`string`?e.label:null:e.textValue,N=s({onMatch:e=>{let t=T.peek(),n=t===null?-1:k.get(t)??-1,r=collectVisibleNodes(i,D),a=[...O.slice(n+1),...O.slice(0,n+1)].find(t=>{let n=r.get(t.id);if(!n||n.disabled)return!1;let i=nodeText(n);return i!==null&&i.toLowerCase().startsWith(e)});a&&focusNode(a.id)}}),handleKeyDown=(e,t)=>{let n=k.get(t.id);if(n===void 0)return;let{hasChildren:r,level:i,parentId:a,expanded:o}=O[n];switch(e.key){case`ArrowDown`:{e.preventDefault();let t=step(n,1);t&&focusNode(t.id);break}case`ArrowUp`:{e.preventDefault();let t=step(n,-1);t&&focusNode(t.id);break}case`ArrowRight`:if(e.preventDefault(),r&&!o)expand(t.id);else if(r&&o){let e=O[n+1];e&&e.level>i&&focusNode(e.id)}break;case`ArrowLeft`:e.preventDefault(),r&&o?collapse(t.id):a&&focusNode(a);break;case`Home`:{e.preventDefault();let t=edge(`start`);t&&focusNode(t.id);break}case`End`:{e.preventDefault();let t=edge(`end`);t&&focusNode(t.id);break}case`*`:{e.preventDefault();let t=new Set(D);for(let e of O)e.level===i&&e.parentId===a&&e.hasChildren&&t.add(e.id);commitExpanded(t);break}case`Enter`:case` `:if(e.preventDefault(),t.disabled)break;r&&(o?collapse:expand)(t.id),select(t.id);break;default:N.onKeyDown(e);break}},renderNode=(e,t,n,r)=>{let i=!!e.children&&e.children.length>0,a=D.has(e.id),o=j.has(e.id),s=M===e.id,c=e.disabled??!1,l=e.children?.length??0;return u(TreeItem,{node:e,level:t,posInSet:n,setSize:r,hasChildren:i,isExpanded:a,isSelected:o,isTabbable:s,isDisabled:c,itemRefs:E,onFocusNode:()=>T.value=e.id,onKeyDown:t=>handleKeyDown(t,e),onActivate:()=>{c||(focusNode(e.id),i&&(a?collapse:expand)(e.id),select(e.id))},children:i&&a&&e.children.map((e,n)=>renderNode(e,t+1,n+1,l))},e.id)};return u(`ul`,{role:`tree`,"aria-multiselectable":c===`multi`||void 0,"aria-label":y??v??b,className:n(e.tree,_),children:i.map((e,t)=>renderNode(e,1,t+1,i.length))})}function collectVisibleNodes(e,t){let n=new Map,walk=e=>{for(let r of e)n.set(r.id,r),r.children&&r.children.length>0&&t.has(r.id)&&walk(r.children)};return walk(e),n}function TreeItem({node:t,level:n,posInSet:r,setSize:a,hasChildren:o,isExpanded:s,isSelected:c,isTabbable:l,isDisabled:f,itemRefs:p,onFocusNode:m,onKeyDown:h,onActivate:g,children:_}){let v=i(`cascivo-tree-${t.id}`);return d(`li`,{role:`treeitem`,"aria-labelledby":v,"aria-level":n,"aria-posinset":r,"aria-setsize":a,"aria-selected":c,"aria-expanded":o?s:void 0,"aria-disabled":f||void 0,"data-disabled":f||void 0,tabIndex:l?0:-1,"data-selected":c||void 0,"data-state":o?s?`open`:`closed`:void 0,style:{"--cascivo-tree-level":n},className:e.item,ref:e=>{e?p.current.set(t.id,e):p.current.delete(t.id)},onFocus:e=>{e.target===e.currentTarget&&m()},onKeyDown:h,onClick:e=>{e.stopPropagation(),g()},children:[d(`span`,{className:e.row,children:[o?u(`span`,{className:e.twisty,"aria-hidden":`true`,"data-state":s?`open`:`closed`}):u(`span`,{className:e.twistySpacer,"aria-hidden":`true`}),t.icon&&u(`span`,{className:e.icon,"aria-hidden":`true`,children:t.icon}),u(`span`,{id:v,className:e.label,children:t.label})]}),o&&u(`div`,{role:`presentation`,className:e.groupWrap,"data-state":s?`open`:`closed`,children:u(`ul`,{role:`group`,className:e.group,children:_})})]})}var f={loading:()=>l(c.treeView.loading),expand:()=>l(c.treeView.expand),collapse:()=>l(c.treeView.collapse)};export{TreeView,f as treeViewMessages};
@@ -1,14 +1,2 @@
1
1
  import './tree-view.css';
2
- var e = {
3
- tree: "_tree_ufkml_2",
4
- item: "_item_ufkml_12",
5
- row: "_row_ufkml_16",
6
- twisty: "_twisty_ufkml_47",
7
- twistySpacer: "_twistySpacer_ufkml_61",
8
- icon: "_icon_ufkml_67",
9
- label: "_label_ufkml_75",
10
- groupWrap: "_groupWrap_ufkml_83",
11
- group: "_group_ufkml_83"
12
- };
13
- //#endregion
14
- export { e as default };
2
+ var e={tree:`_tree_awpgc_2`,item:`_item_awpgc_12`,row:`_row_awpgc_16`,twisty:`_twisty_awpgc_47`,twistySpacer:`_twistySpacer_awpgc_61`,icon:`_icon_awpgc_67`,label:`_label_awpgc_75`,groupWrap:`_groupWrap_awpgc_83`,group:`_group_awpgc_83`};export{e as default};
package/dist/user/user.js CHANGED
@@ -1,35 +1 @@
1
- import { Avatar as e } from "../avatar/avatar.js";
2
- import t from "./user.module.js";
3
- import { cn as n } from "@cascivo/core/pure";
4
- import { jsx as r, jsxs as i } from "react/jsx-runtime";
5
- //#region ../components/src/user/user.tsx
6
- function a({ name: a, description: o, avatarProps: s, className: c, children: l, ...u }) {
7
- let d = typeof a == "string" && s?.name === void 0 && s?.fallback === void 0 ? { name: a } : {};
8
- return /* @__PURE__ */ i("div", {
9
- role: "group",
10
- className: n(t.user, c),
11
- ...u,
12
- children: [
13
- /* @__PURE__ */ r(e, {
14
- ...d,
15
- ...s
16
- }),
17
- /* @__PURE__ */ i("span", {
18
- className: t.text,
19
- children: [/* @__PURE__ */ r("span", {
20
- className: t.name,
21
- children: a
22
- }), o != null && /* @__PURE__ */ r("span", {
23
- className: t.description,
24
- children: o
25
- })]
26
- }),
27
- l != null && /* @__PURE__ */ r("span", {
28
- className: t.action,
29
- children: l
30
- })
31
- ]
32
- });
33
- }
34
- //#endregion
35
- export { a as User };
1
+ import{Avatar as e}from"../avatar/avatar.js";import t from"./user.module.js";import{cn as n}from"@cascivo/core/pure";import{jsx as r,jsxs as i}from"react/jsx-runtime";function User({name:a,description:o,avatarProps:s,className:c,children:l,...u}){let d=typeof a==`string`&&s?.name===void 0&&s?.fallback===void 0?{name:a}:{};return i(`div`,{role:`group`,className:n(t.user,c),...u,children:[r(e,{...d,...s}),i(`span`,{className:t.text,children:[r(`span`,{className:t.name,children:a}),o!=null&&r(`span`,{className:t.description,children:o})]}),l!=null&&r(`span`,{className:t.action,children:l})]})}export{User};
@@ -1,10 +1,2 @@
1
1
  import './user.css';
2
- var e = {
3
- user: "_user_uuj1b_2",
4
- text: "_text_uuj1b_10",
5
- name: "_name_uuj1b_17",
6
- description: "_description_uuj1b_26",
7
- action: "_action_uuj1b_34"
8
- };
9
- //#endregion
10
- export { e as default };
2
+ var e={user:`_user_uuj1b_2`,text:`_text_uuj1b_10`,name:`_name_uuj1b_17`,description:`_description_uuj1b_26`,action:`_action_uuj1b_34`};export{e as default};
@@ -1,40 +1 @@
1
- "use client";
2
-
3
- import e from "./virtual-list.module.js";
4
- import { cn as t, useSignal as n, useSignals as r } from "@cascivo/core";
5
- import { jsx as i } from "react/jsx-runtime";
6
- //#region ../components/src/virtual-list/virtual-list.tsx
7
- function a({ items: a, itemHeight: o, height: s, renderItem: c, overscan: l = 3, ariaLabel: u, label: d, className: f }) {
8
- r();
9
- let p = n(0), m = Math.ceil(s / o), h = Math.floor(p.value / o), g = Math.max(0, h - l), _ = Math.min(a.length, h + m + l), v = a.slice(g, _), y = (e) => {
10
- p.value = e.currentTarget.scrollTop;
11
- }, b = { blockSize: `${s}px` };
12
- return /* @__PURE__ */ i("div", {
13
- className: t(e.viewport, f),
14
- style: b,
15
- onScroll: y,
16
- role: "list",
17
- "aria-label": u ?? d,
18
- tabIndex: 0,
19
- children: /* @__PURE__ */ i("div", {
20
- className: e.canvas,
21
- style: { blockSize: `${a.length * o}px` },
22
- children: v.map((t, n) => {
23
- let r = g + n;
24
- return /* @__PURE__ */ i("div", {
25
- role: "listitem",
26
- "aria-setsize": a.length,
27
- "aria-posinset": r + 1,
28
- className: e.row,
29
- style: {
30
- blockSize: `${o}px`,
31
- transform: `translateY(${r * o}px)`
32
- },
33
- children: c(t, r)
34
- }, r);
35
- })
36
- })
37
- });
38
- }
39
- //#endregion
40
- export { a as VirtualList };
1
+ "use client";import e from"./virtual-list.module.js";import{cn as t,useSignal as n,useSignals as r}from"@cascivo/core";import{jsx as i}from"react/jsx-runtime";function VirtualList({items:a,itemHeight:o,height:s,renderItem:c,overscan:l=3,ariaLabel:u,label:d,className:f}){r();let p=n(0),m=Math.ceil(s/o),h=Math.floor(p.value/o),g=Math.max(0,h-l),_=Math.min(a.length,h+m+l),v=a.slice(g,_),onScroll=e=>{p.value=e.currentTarget.scrollTop},y={blockSize:`${s}px`};return i(`div`,{className:t(e.viewport,f),style:y,onScroll,role:`list`,"aria-label":u??d,tabIndex:0,children:i(`div`,{className:e.canvas,style:{blockSize:`${a.length*o}px`},children:v.map((t,n)=>{let r=g+n;return i(`div`,{role:`listitem`,"aria-setsize":a.length,"aria-posinset":r+1,className:e.row,style:{blockSize:`${o}px`,transform:`translateY(${r*o}px)`},children:c(t,r)},r)})})})}export{VirtualList};
@@ -1,8 +1,2 @@
1
1
  import './virtual-list.css';
2
- var e = {
3
- viewport: "_viewport_1wmsq_2",
4
- canvas: "_canvas_1wmsq_14",
5
- row: "_row_1wmsq_19"
6
- };
7
- //#endregion
8
- export { e as default };
2
+ var e={viewport:`_viewport_1wmsq_2`,canvas:`_canvas_1wmsq_14`,row:`_row_1wmsq_19`};export{e as default};
@@ -1,2 +1 @@
1
- import "@cascivo/core/pure";
2
- import "react/jsx-runtime";
1
+ import"@cascivo/core/pure";import"react/jsx-runtime";
@@ -1,84 +1 @@
1
- "use client";
2
-
3
- import e from "./wheel-picker.module.js";
4
- import { useRef as t } from "react";
5
- import { cn as n, useEffectPropSignal as r, useId as i, useSignalEffect as a } from "@cascivo/core";
6
- import { jsx as o, jsxs as s } from "react/jsx-runtime";
7
- //#region ../components/src/wheel-picker/wheel-picker.tsx
8
- var c = 120;
9
- function l({ options: l, value: u, onValueChange: d, visibleCount: f = 5, itemHeight: p = 36, ariaLabel: m, label: h, className: g }) {
10
- let _ = t(null), v = i(), y = Math.max(0, l.findIndex((e) => e.value === u)), b = t(l);
11
- b.current = l;
12
- let x = t(d);
13
- x.current = d;
14
- let S = t(p);
15
- S.current = p;
16
- let C = t(u);
17
- C.current = u;
18
- let w = (e, t) => {
19
- let n = _.current;
20
- n && n.scrollTo({
21
- top: e * S.current,
22
- behavior: t ? "smooth" : "instant"
23
- });
24
- }, T = r(u);
25
- a(() => {
26
- let e = T.value, t = b.current.findIndex((t) => t.value === e);
27
- t >= 0 && w(t, !1);
28
- }), a(() => {
29
- let e = _.current;
30
- if (!e) return;
31
- let t, n = () => {
32
- clearTimeout(t), t = setTimeout(() => {
33
- let t = Math.round(e.scrollTop / S.current), n = b.current[t];
34
- n && n.value !== C.current && x.current(n.value);
35
- }, c);
36
- };
37
- return e.addEventListener("scroll", n, { passive: !0 }), () => {
38
- clearTimeout(t), e.removeEventListener("scroll", n);
39
- };
40
- });
41
- let E = (e) => {
42
- let t = Math.max(0, Math.min(l.length - 1, e)), n = l[t];
43
- !n || n.value === u || (d(n.value), w(t, !0));
44
- }, D = (e) => {
45
- let t = {
46
- ArrowDown: y + 1,
47
- ArrowUp: y - 1,
48
- Home: 0,
49
- End: l.length - 1,
50
- PageDown: y + f,
51
- PageUp: y - f
52
- }[e.key];
53
- t !== void 0 && (e.preventDefault(), E(t));
54
- }, O = (f - 1) / 2 * p, k = {
55
- "--_item-height": `${p}px`,
56
- "--_pad": `${O}px`,
57
- "--_column-height": `${f * p}px`
58
- };
59
- return /* @__PURE__ */ s("div", {
60
- className: n(e.root, g),
61
- style: k,
62
- children: [/* @__PURE__ */ o("div", {
63
- ref: _,
64
- role: "listbox",
65
- tabIndex: 0,
66
- "aria-label": m ?? h,
67
- "aria-activedescendant": `${v}-${y}`,
68
- className: e.column,
69
- onKeyDown: D,
70
- children: l.map((t, n) => /* @__PURE__ */ o("div", {
71
- id: `${v}-${n}`,
72
- role: "option",
73
- "aria-selected": n === y,
74
- className: e.option,
75
- children: t.label
76
- }, t.value))
77
- }), /* @__PURE__ */ o("div", {
78
- "aria-hidden": "true",
79
- className: e.band
80
- })]
81
- });
82
- }
83
- //#endregion
84
- export { l as WheelPicker };
1
+ "use client";import e from"./wheel-picker.module.js";import{useRef as t}from"react";import{cn as n,useEffectPropSignal as r,useId as i,useSignalEffect as a}from"@cascivo/core";import{jsx as o,jsxs as s}from"react/jsx-runtime";var c=120;function WheelPicker({options:l,value:u,onValueChange:d,visibleCount:f=5,itemHeight:p=36,ariaLabel:m,label:h,className:g}){let _=t(null),v=i(),y=Math.max(0,l.findIndex(e=>e.value===u)),b=t(l);b.current=l;let x=t(d);x.current=d;let S=t(p);S.current=p;let C=t(u);C.current=u;let scrollToIndex=(e,t)=>{let n=_.current;n&&n.scrollTo({top:e*S.current,behavior:t?`smooth`:`instant`})},w=r(u);a(()=>{let e=w.value,t=b.current.findIndex(t=>t.value===e);t>=0&&scrollToIndex(t,!1)}),a(()=>{let e=_.current;if(!e)return;let t,onScroll=()=>{clearTimeout(t),t=setTimeout(()=>{let t=Math.round(e.scrollTop/S.current),n=b.current[t];n&&n.value!==C.current&&x.current(n.value)},c)};return e.addEventListener(`scroll`,onScroll,{passive:!0}),()=>{clearTimeout(t),e.removeEventListener(`scroll`,onScroll)}});let select=e=>{let t=Math.max(0,Math.min(l.length-1,e)),n=l[t];!n||n.value===u||(d(n.value),scrollToIndex(t,!0))},onKeyDown=e=>{let t={ArrowDown:y+1,ArrowUp:y-1,Home:0,End:l.length-1,PageDown:y+f,PageUp:y-f}[e.key];t!==void 0&&(e.preventDefault(),select(t))},T=(f-1)/2*p,E={"--_item-height":`${p}px`,"--_pad":`${T}px`,"--_column-height":`${f*p}px`};return s(`div`,{className:n(e.root,g),style:E,children:[o(`div`,{ref:_,role:`listbox`,tabIndex:0,"aria-label":m??h,"aria-activedescendant":`${v}-${y}`,className:e.column,onKeyDown,children:l.map((t,n)=>o(`div`,{id:`${v}-${n}`,role:`option`,"aria-selected":n===y,className:e.option,children:t.label},t.value))}),o(`div`,{"aria-hidden":`true`,className:e.band})]})}export{WheelPicker};
@@ -1,9 +1,2 @@
1
1
  import './wheel-picker.css';
2
- var e = {
3
- root: "_root_11q00_2",
4
- column: "_column_11q00_7",
5
- option: "_option_11q00_29",
6
- band: "_band_11q00_48"
7
- };
8
- //#endregion
9
- export { e as default };
2
+ var e={root:`_root_11q00_2`,column:`_column_11q00_7`,option:`_option_11q00_29`,band:`_band_11q00_48`};export{e as default};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cascivo/react",
3
- "version": "1.0.0",
3
+ "version": "1.2.0",
4
4
  "private": false,
5
5
  "description": "Prebuilt cascivo design system components — use without copying source. @cascivo/themes installs with it; pair with @cascivo/charts (data-viz) and @cascivo/icons. Docs offline: npx @cascivo/docs",
6
6
  "keywords": [
@@ -51,9 +51,9 @@
51
51
  "provenance": true
52
52
  },
53
53
  "dependencies": {
54
- "@cascivo/core": "^1.0.0",
55
- "@cascivo/i18n": "^1.0.0",
56
- "@cascivo/themes": "^1.0.0"
54
+ "@cascivo/i18n": "^1.2.0",
55
+ "@cascivo/themes": "^1.0.0",
56
+ "@cascivo/core": "^1.2.0"
57
57
  },
58
58
  "devDependencies": {
59
59
  "@testing-library/jest-dom": "^6.9.1",
package/readme.body.md CHANGED
@@ -233,7 +233,7 @@ routing break after adding one of these, check that the import resolves to
233
233
 
234
234
  ## Component index
235
235
 
236
- 197 components, exported from `@cascivo/react`. Full props, examples, and live demos at [cascivo.com/docs](https://cascivo.com/docs).
236
+ 198 components, exported from `@cascivo/react`. Full props, examples, and live demos at [cascivo.com/docs](https://cascivo.com/docs).
237
237
 
238
238
  ### Inputs
239
239
 
@@ -258,7 +258,7 @@ routing break after adding one of these, check that the import resolves to
258
258
  - **Input** — Text input field with optional label, hint, and error state
259
259
  - **InputGroup** — Prefix/suffix addon wrapper for Input; InputGroupAddon renders inline icons/units inside the field border; ButtonGroup collapses adjacent button borders
260
260
  - **Label** — Accessible caption for a form control
261
- - **MultiSelect** — Searchable multi-value select with popover listbox
261
+ - **MultiSelect** — Searchable multi-value select with a popover listbox, chips and grouping
262
262
  - **NativeSelect** — A styled native <select> that keeps platform form/keyboard behavior with a custom chevron and focus ring
263
263
  - **NumberInput** — Numeric input with stepper buttons, clamping, precision, and locale formatting
264
264
  - **OtpInput** — Segmented one-time code input
@@ -318,6 +318,7 @@ routing break after adding one of these, check that the import resolves to
318
318
  - **Kbd** — Displays a keyboard key or shortcut
319
319
  - **List** — Styled unordered or ordered list with ListItem
320
320
  - **LoginPage** — Authentication login page with email and password form.
321
+ - **Logo** — The cascivo mark and its sanctioned lockups, as inline SVG
321
322
  - **LogViewer** — Virtualized monospace console for high-frequency log and stream output
322
323
  - **NotificationCenter** — A list of notification alerts with a mark-all-read action.
323
324
  - **PageWithBreadcrumb** — A centered content page with a breadcrumb navigation and page header.