pixelize-design-library 2.4.2-beta.43 → 2.4.2-beta.45

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 (1038) hide show
  1. package/CHANGELOG.md +195 -0
  2. package/COMPONENT-GOTCHAS.md +457 -241
  3. package/DESIGN-GUIDE.md +210 -0
  4. package/README.md +51 -26
  5. package/dist/Components/Accordion/Accordion.js +7 -9
  6. package/dist/Components/Accordion/accordionColors.d.ts +6 -0
  7. package/dist/Components/Accordion/accordionColors.js +11 -11
  8. package/dist/Components/AlertDialog/AlertDialog.d.ts +1 -1
  9. package/dist/Components/AlertDialog/AlertDialog.js +5 -5
  10. package/dist/Components/AlertDialog/AlertDialogProps.d.ts +27 -4
  11. package/dist/Components/Apexcharts/ApexAreaChart/ApexAreaChart.js +6 -2
  12. package/dist/Components/Apexcharts/ApexBarChart/ApexBarChart.js +7 -4
  13. package/dist/Components/Apexcharts/ApexChartFallback.d.ts +7 -0
  14. package/dist/Components/Apexcharts/ApexChartFallback.js +10 -0
  15. package/dist/Components/Apexcharts/ApexLineChart/ApexLineChart.js +6 -2
  16. package/dist/Components/Apexcharts/ApexPieChart/ApexPieChart.js +6 -2
  17. package/dist/Components/Apexcharts/ApexPolarCharts/ApexPolarCharts.js +8 -5
  18. package/dist/Components/Apexcharts/ApexRadialChart/ApexRadialChart.js +6 -4
  19. package/dist/Components/Apexcharts/LazyReactApexChart.d.ts +2 -0
  20. package/dist/Components/Apexcharts/LazyReactApexChart.js +40 -0
  21. package/dist/Components/AppSwitcher/AppMark.d.ts +0 -5
  22. package/dist/Components/AppSwitcher/AppMark.js +1 -5
  23. package/dist/Components/AppSwitcher/AppSwitcher.js +4 -9
  24. package/dist/Components/Avatar/Avatar.d.ts +3 -0
  25. package/dist/Components/Avatar/Avatar.js +24 -0
  26. package/dist/Components/Avatar/AvatarGroup.d.ts +3 -0
  27. package/dist/Components/Avatar/AvatarGroup.js +24 -0
  28. package/dist/Components/Avatar/AvatarGroupProps.d.ts +19 -0
  29. package/dist/Components/Avatar/AvatarProps.d.ts +22 -0
  30. package/dist/Components/Avatar/AvatarProps.js +2 -0
  31. package/dist/Components/Avatar/avatarColorway.d.ts +11 -0
  32. package/dist/Components/Avatar/avatarColorway.js +31 -0
  33. package/dist/Components/Avatar/avatarSizing.d.ts +5 -0
  34. package/dist/Components/Avatar/avatarSizing.js +15 -0
  35. package/dist/Components/Backdrop/Backdrop.d.ts +3 -0
  36. package/dist/Components/Backdrop/Backdrop.js +34 -0
  37. package/dist/Components/Backdrop/BackdropProps.d.ts +33 -0
  38. package/dist/Components/Backdrop/BackdropProps.js +2 -0
  39. package/dist/Components/Breadcrumbs/Breadcrumbs.js +14 -4
  40. package/dist/Components/Breadcrumbs/breadcrumbInk.d.ts +9 -0
  41. package/dist/Components/Breadcrumbs/breadcrumbInk.js +11 -0
  42. package/dist/Components/Button/Button.js +2 -2
  43. package/dist/Components/Button/Button.styles.js +21 -62
  44. package/dist/Components/Button/ButtonProps.d.ts +8 -2
  45. package/dist/Components/ButtonGroupIcon/ButtonGoupIconProps.d.ts +2 -42
  46. package/dist/Components/ButtonGroupIcon/ButtonGoupIconProps.js +16 -0
  47. package/dist/Components/ButtonGroupIcon/ButtonGroupIcon.d.ts +1 -1
  48. package/dist/Components/ButtonGroupIcon/ButtonGroupIcon.js +3 -10
  49. package/dist/Components/ButtonGroupIcon/ButtonGroupIconProps.d.ts +42 -0
  50. package/dist/Components/ButtonGroupIcon/ButtonGroupIconProps.js +2 -0
  51. package/dist/Components/Buttons/Buttons.d.ts +1 -1
  52. package/dist/Components/Buttons/Buttons.js +5 -3
  53. package/dist/Components/Buttons/ButtonsProps.d.ts +5 -1
  54. package/dist/Components/Card/Card.d.ts +18 -2
  55. package/dist/Components/Card/Card.js +10 -5
  56. package/dist/Components/Card/CardProps.d.ts +27 -9
  57. package/dist/Components/Card/PaymentCard/PaymentCard.js +13 -9
  58. package/dist/Components/Checkbox/Checkbox.d.ts +2 -2
  59. package/dist/Components/Checkbox/Checkbox.js +11 -9
  60. package/dist/Components/Checkbox/Checkbox.styles.js +41 -36
  61. package/dist/Components/Checkbox/CheckboxProps.d.ts +11 -2
  62. package/dist/Components/Common/ErrorComponent.d.ts +1 -1
  63. package/dist/Components/Common/ErrorComponent.js +1 -1
  64. package/dist/Components/Common/ErrorMessage.d.ts +1 -1
  65. package/dist/Components/Common/ErrorMessage.js +3 -3
  66. package/dist/Components/Common/FieldMessage.d.ts +9 -0
  67. package/dist/Components/Common/FieldMessage.js +19 -0
  68. package/dist/Components/Common/FormLabel.d.ts +9 -0
  69. package/dist/Components/Common/FormLabel.js +15 -9
  70. package/dist/Components/Common/HelperText.d.ts +1 -1
  71. package/dist/Components/Common/HelperText.js +3 -2
  72. package/dist/Components/Common/Label.d.ts +1 -1
  73. package/dist/Components/Common/Label.js +3 -2
  74. package/dist/Components/Common/fieldMessageStyles.d.ts +19 -0
  75. package/dist/Components/Common/fieldMessageStyles.js +18 -0
  76. package/dist/Components/Common/fieldStyles.d.ts +46 -9
  77. package/dist/Components/Common/fieldStyles.js +72 -30
  78. package/dist/Components/Common/useFieldIds.d.ts +16 -0
  79. package/dist/Components/Common/useFieldIds.js +27 -0
  80. package/dist/Components/ConfirmDialog/ConfirmDialog.d.ts +4 -0
  81. package/dist/Components/ConfirmDialog/ConfirmDialog.js +23 -0
  82. package/dist/Components/ConfirmDialog/ConfirmDialogProps.d.ts +45 -0
  83. package/dist/Components/ConfirmDialog/ConfirmDialogProps.js +2 -0
  84. package/dist/Components/ContactForm/ContactForm.d.ts +2 -2
  85. package/dist/Components/ContactForm/ContactForm.js +19 -15
  86. package/dist/Components/ContactForm/ContactFormProps.d.ts +16 -2
  87. package/dist/Components/CopyButton/CopyButton.js +3 -4
  88. package/dist/Components/CustomModulesTable/DeleteModuleModal.js +2 -2
  89. package/dist/Components/CustomModulesTable/EditModuleModal.js +2 -4
  90. package/dist/Components/DatePicker/CalendarPanel.js +5 -9
  91. package/dist/Components/DatePicker/DatePicker.d.ts +5 -3
  92. package/dist/Components/DatePicker/DatePicker.js +12 -50
  93. package/dist/Components/DatePicker/DatePickerProps.d.ts +48 -4
  94. package/dist/Components/DatePicker/DatePickerProps.js +3 -0
  95. package/dist/Components/DatePicker/RangeDatePicker.js +17 -21
  96. package/dist/Components/DatePicker/SingleDatePicker.d.ts +4 -2
  97. package/dist/Components/DatePicker/SingleDatePicker.js +40 -57
  98. package/dist/Components/DatePicker/ThemeDatePicker.d.ts +3 -2
  99. package/dist/Components/DatePicker/ThemeDatePicker.js +12 -18
  100. package/dist/Components/DatePicker/TimeOnlyPicker.d.ts +5 -3
  101. package/dist/Components/DatePicker/TimeOnlyPicker.js +37 -23
  102. package/dist/Components/DatePicker/TimePicker.js +8 -12
  103. package/dist/Components/DatePicker/TimePickerInput.d.ts +6 -2
  104. package/dist/Components/DatePicker/TimePickerInput.js +5 -11
  105. package/dist/Components/DatePicker/dayStates.d.ts +0 -23
  106. package/dist/Components/DatePicker/dayStates.js +3 -15
  107. package/dist/Components/DatePicker/pickerField.d.ts +24 -0
  108. package/dist/Components/DatePicker/pickerField.js +31 -0
  109. package/dist/Components/DatePicker/valueFormat.d.ts +4 -0
  110. package/dist/Components/DatePicker/valueFormat.js +21 -0
  111. package/dist/Components/DescriptionList/DescriptionList.d.ts +4 -0
  112. package/dist/Components/DescriptionList/DescriptionList.js +32 -0
  113. package/dist/Components/DescriptionList/DescriptionListProps.d.ts +29 -0
  114. package/dist/Components/DescriptionList/DescriptionListProps.js +2 -0
  115. package/dist/Components/Drawer/Drawer.d.ts +5 -11
  116. package/dist/Components/Drawer/Drawer.js +22 -8
  117. package/dist/Components/Drawer/DrawerProps.d.ts +16 -4
  118. package/dist/Components/Dropdown/DropDown.d.ts +1 -1
  119. package/dist/Components/Dropdown/DropDown.js +42 -32
  120. package/dist/Components/Dropdown/DropdownProps.d.ts +15 -2
  121. package/dist/Components/Editor/Editor.js +12 -0
  122. package/dist/Components/Editor/joditAccessibility.d.ts +1 -0
  123. package/dist/Components/Editor/joditAccessibility.js +28 -0
  124. package/dist/Components/EmailCards/VerifyEmailOtp/VerifyEmailOtp.d.ts +1 -1
  125. package/dist/Components/EmailCards/VerifyEmailOtp/VerifyEmailOtp.js +3 -5
  126. package/dist/Components/EmailCards/VerifyEmailOtp/VerifyEmailOtpProps.d.ts +1 -1
  127. package/dist/Components/EmptyState/EmptyState.js +24 -15
  128. package/dist/Components/EmptyState/EmptyStateProps.d.ts +5 -1
  129. package/dist/Components/FeedbackForm/FeedbackForm.d.ts +1 -1
  130. package/dist/Components/FeedbackForm/FeedbackForm.js +19 -6
  131. package/dist/Components/FieldSelectModal/FieldSelectModal.js +2 -4
  132. package/dist/Components/FilePreview/FilePreview.js +8 -8
  133. package/dist/Components/FileUpload/FileUpload.d.ts +1 -1
  134. package/dist/Components/FileUpload/FileUpload.js +24 -5
  135. package/dist/Components/FileUpload/FileUploadProps.d.ts +23 -1
  136. package/dist/Components/FileUpload/constants.d.ts +1 -0
  137. package/dist/Components/FileUpload/constants.js +2 -1
  138. package/dist/Components/FileUploader/FileUploader.js +6 -5
  139. package/dist/Components/FilterBar/FilterBar.d.ts +4 -0
  140. package/dist/Components/FilterBar/FilterBar.js +17 -0
  141. package/dist/Components/FilterBar/FilterBarProps.d.ts +25 -0
  142. package/dist/Components/FilterBar/FilterBarProps.js +2 -0
  143. package/dist/Components/FilterSidebar/FilterSidebar.js +27 -32
  144. package/dist/Components/FilterSidebar/filterHoverStyle.d.ts +1 -1
  145. package/dist/Components/FilterSidebar/filterHoverStyle.js +1 -1
  146. package/dist/Components/Form/FormWrapper.js +1 -1
  147. package/dist/Components/Header/Header.d.ts +0 -15
  148. package/dist/Components/Header/Header.js +2 -16
  149. package/dist/Components/Header/HeaderActions.d.ts +4 -0
  150. package/dist/Components/Header/HeaderActions.js +4 -4
  151. package/dist/Components/Header/HeaderProps.d.ts +14 -1
  152. package/dist/Components/Header/components/desktopMenu.d.ts +1 -1
  153. package/dist/Components/Header/components/desktopMenu.js +10 -11
  154. package/dist/Components/Header/components/mobileMenu.d.ts +1 -1
  155. package/dist/Components/Header/components/mobileMenu.js +23 -20
  156. package/dist/Components/Input/Input/Input.d.ts +1 -1
  157. package/dist/Components/Input/Input/Input.js +3 -2
  158. package/dist/Components/Input/Input/InputProps.d.ts +4 -1
  159. package/dist/Components/Input/PhoneNumberInput.d.ts +2 -2
  160. package/dist/Components/Input/PhoneNumberInput.js +7 -4
  161. package/dist/Components/Input/PhoneNumberInputProps.d.ts +4 -2
  162. package/dist/Components/Input/Switch/InputSwitch.d.ts +16 -5
  163. package/dist/Components/Input/Switch/InputSwitch.js +17 -19
  164. package/dist/Components/Input/TextInput.js +80 -7
  165. package/dist/Components/Input/TextInput.styles.d.ts +18 -1
  166. package/dist/Components/Input/TextInput.styles.js +48 -89
  167. package/dist/Components/Input/TextInputProps.d.ts +44 -9
  168. package/dist/Components/Input/textInputIconSize.d.ts +2 -7
  169. package/dist/Components/Input/textInputIconSize.js +4 -20
  170. package/dist/Components/Input/useAriaRequired.d.ts +2 -0
  171. package/dist/Components/Input/useAriaRequired.js +19 -0
  172. package/dist/Components/InputTextArea/InputTextArea.d.ts +2 -2
  173. package/dist/Components/InputTextArea/InputTextArea.js +9 -5
  174. package/dist/Components/InputTextArea/InputTextArea.style.js +14 -69
  175. package/dist/Components/InputTextArea/InputTextAreaProps.d.ts +9 -2
  176. package/dist/Components/KanbanBoard/AccountCard.js +8 -5
  177. package/dist/Components/KanbanBoard/AccountRow.d.ts +1 -1
  178. package/dist/Components/KanbanBoard/AccountRow.js +1 -1
  179. package/dist/Components/KanbanBoard/KanbanActions/KanbanActions.js +1 -1
  180. package/dist/Components/KanbanBoard/KanbanBoard.d.ts +1 -1
  181. package/dist/Components/KanbanBoard/KanbanBoard.js +85 -49
  182. package/dist/Components/KanbanBoard/KanbanBoardProps.d.ts +37 -19
  183. package/dist/Components/KanbanBoard/index.d.ts +2 -0
  184. package/dist/Components/KanbanBoard/index.js +8 -0
  185. package/dist/Components/LimitReachedModal/LimitReachedModal.js +1 -1
  186. package/dist/Components/LimitReachedModal/limitReachedCopy.js +1 -3
  187. package/dist/Components/Loading/Loading.d.ts +1 -1
  188. package/dist/Components/Loading/Loading.js +19 -19
  189. package/dist/Components/Loading/LoadingProps.d.ts +5 -1
  190. package/dist/Components/MediaViewer/MediaViewer.d.ts +5 -0
  191. package/dist/Components/MediaViewer/MediaViewer.js +234 -0
  192. package/dist/Components/MediaViewer/MediaViewerProps.d.ts +92 -0
  193. package/dist/Components/MediaViewer/MediaViewerProps.js +32 -0
  194. package/dist/Components/MediaViewer/components/MediaAudioPlayer.d.ts +4 -0
  195. package/dist/Components/MediaViewer/components/MediaAudioPlayer.js +138 -0
  196. package/dist/Components/MediaViewer/components/MediaAudioPlayerProps.d.ts +48 -0
  197. package/dist/Components/MediaViewer/components/MediaAudioPlayerProps.js +21 -0
  198. package/dist/Components/MediaViewer/components/MediaDocumentStage.d.ts +4 -0
  199. package/dist/Components/MediaViewer/components/MediaDocumentStage.js +149 -0
  200. package/dist/Components/MediaViewer/components/MediaDocumentStageProps.d.ts +42 -0
  201. package/dist/Components/MediaViewer/components/MediaDocumentStageProps.js +11 -0
  202. package/dist/Components/MediaViewer/components/MediaImageViewer.d.ts +4 -0
  203. package/dist/Components/MediaViewer/components/MediaImageViewer.js +103 -0
  204. package/dist/Components/MediaViewer/components/MediaImageViewerProps.d.ts +47 -0
  205. package/dist/Components/MediaViewer/components/MediaImageViewerProps.js +18 -0
  206. package/dist/Components/MediaViewer/components/MediaScrubber.d.ts +5 -0
  207. package/dist/Components/MediaViewer/components/MediaScrubber.js +89 -0
  208. package/dist/Components/MediaViewer/components/MediaScrubberProps.d.ts +30 -0
  209. package/dist/Components/MediaViewer/components/MediaScrubberProps.js +2 -0
  210. package/dist/Components/MediaViewer/components/MediaStatusPanel.d.ts +5 -0
  211. package/dist/Components/MediaViewer/components/MediaStatusPanel.js +14 -0
  212. package/dist/Components/MediaViewer/components/MediaStatusPanelProps.d.ts +24 -0
  213. package/dist/Components/MediaViewer/components/MediaStatusPanelProps.js +2 -0
  214. package/dist/Components/MediaViewer/components/MediaVideoPlayer.d.ts +4 -0
  215. package/dist/Components/MediaViewer/components/MediaVideoPlayer.js +248 -0
  216. package/dist/Components/MediaViewer/components/MediaVideoPlayerProps.d.ts +71 -0
  217. package/dist/Components/MediaViewer/components/MediaVideoPlayerProps.js +31 -0
  218. package/dist/Components/MediaViewer/components/TileChip.d.ts +5 -0
  219. package/dist/Components/MediaViewer/components/TileChip.js +12 -0
  220. package/dist/Components/MediaViewer/components/TileChipProps.d.ts +7 -0
  221. package/dist/Components/MediaViewer/components/TileChipProps.js +2 -0
  222. package/dist/Components/MediaViewer/components/VideoPoster.d.ts +5 -0
  223. package/dist/Components/MediaViewer/components/VideoPoster.js +16 -0
  224. package/dist/Components/MediaViewer/components/VideoPosterProps.d.ts +6 -0
  225. package/dist/Components/MediaViewer/components/VideoPosterProps.js +2 -0
  226. package/dist/Components/MediaViewer/components/ViewerIconButton.d.ts +5 -0
  227. package/dist/Components/MediaViewer/components/ViewerIconButton.js +20 -0
  228. package/dist/Components/MediaViewer/components/ViewerIconButtonProps.d.ts +24 -0
  229. package/dist/Components/MediaViewer/components/ViewerIconButtonProps.js +2 -0
  230. package/dist/Components/MediaViewer/components/mediaKindIcon.d.ts +5 -0
  231. package/dist/Components/MediaViewer/components/mediaKindIcon.js +23 -0
  232. package/dist/Components/MediaViewer/components/sanitizeDocxHrefs.d.ts +1 -0
  233. package/dist/Components/MediaViewer/components/sanitizeDocxHrefs.js +30 -0
  234. package/dist/Components/MediaViewer/hooks/useAutoHideChrome.d.ts +15 -0
  235. package/dist/Components/MediaViewer/hooks/useAutoHideChrome.js +43 -0
  236. package/dist/Components/MediaViewer/hooks/useFileViewer.d.ts +18 -0
  237. package/dist/Components/MediaViewer/hooks/useFileViewer.js +51 -0
  238. package/dist/Components/MediaViewer/mediaItems.d.ts +64 -0
  239. package/dist/Components/MediaViewer/mediaItems.js +196 -0
  240. package/dist/Components/MediaViewer/useViewerChrome.d.ts +15 -0
  241. package/dist/Components/MediaViewer/useViewerChrome.js +30 -0
  242. package/dist/Components/Modal/Modal.d.ts +5 -11
  243. package/dist/Components/Modal/Modal.js +24 -18
  244. package/dist/Components/Modal/ModalProps.d.ts +19 -4
  245. package/dist/Components/MoreItems/MoreItems.js +4 -2
  246. package/dist/Components/MultiSelect/MultiSelect.d.ts +1 -1
  247. package/dist/Components/MultiSelect/MultiSelect.js +40 -28
  248. package/dist/Components/MultiSelect/MultiSelectProps.d.ts +13 -3
  249. package/dist/Components/NavigationBar/NavigationBar.js +10 -8
  250. package/dist/Components/NoteTextArea/NoteTextArea.d.ts +4 -2
  251. package/dist/Components/NoteTextArea/NoteTextArea.js +13 -9
  252. package/dist/Components/NoteTextArea/NoteTextAreaProps.d.ts +4 -2
  253. package/dist/Components/Notification/Notification.d.ts +1 -1
  254. package/dist/Components/Notification/Notification.js +10 -3
  255. package/dist/Components/Notification/NotificationProps.d.ts +1 -1
  256. package/dist/Components/NotificationBell/NotificationBell.d.ts +4 -0
  257. package/dist/Components/NotificationBell/NotificationBell.js +35 -0
  258. package/dist/Components/NotificationBell/NotificationBellProps.d.ts +147 -0
  259. package/dist/Components/NotificationBell/NotificationBellProps.js +2 -0
  260. package/dist/Components/NotificationBell/NotificationItem.d.ts +4 -0
  261. package/dist/Components/NotificationBell/NotificationItem.js +34 -0
  262. package/dist/Components/NotificationBell/NotificationList.d.ts +4 -0
  263. package/dist/Components/NotificationBell/NotificationList.js +41 -0
  264. package/dist/Components/NotificationBell/NotificationPanel.d.ts +4 -0
  265. package/dist/Components/NotificationBell/NotificationPanel.js +36 -0
  266. package/dist/Components/NotificationBell/index.d.ts +6 -0
  267. package/dist/Components/NotificationBell/index.js +30 -0
  268. package/dist/Components/NotificationBell/notificationHelpers.d.ts +32 -0
  269. package/dist/Components/NotificationBell/notificationHelpers.js +115 -0
  270. package/dist/Components/NumberInput/NumberInput.d.ts +6 -2
  271. package/dist/Components/NumberInput/NumberInput.js +9 -5
  272. package/dist/Components/NumberInput/NumberInput.styles.js +19 -78
  273. package/dist/Components/NumberInput/NumberInputProps.d.ts +20 -1
  274. package/dist/Components/OrgSwitcher/OrgSwitcher.js +4 -12
  275. package/dist/Components/OrgSwitcher/OrgSwitcherProps.d.ts +1 -1
  276. package/dist/Components/OrgSwitcher/OrgSwitcherProps.js +2 -1
  277. package/dist/Components/OrganizationDetails/CreateOrgModal.js +1 -1
  278. package/dist/Components/OrganizationDetails/DeleteOrgModal.js +4 -6
  279. package/dist/Components/OrganizationDetails/OrganizationDetails.js +8 -7
  280. package/dist/Components/PageHeader/PageHeader.d.ts +4 -0
  281. package/dist/Components/PageHeader/PageHeader.js +11 -0
  282. package/dist/Components/PageHeader/PageHeaderProps.d.ts +20 -0
  283. package/dist/Components/PageHeader/PageHeaderProps.js +2 -0
  284. package/dist/Components/PdfViewer/PdfViewer.js +1 -1
  285. package/dist/Components/PersonChip/PersonChip.d.ts +3 -0
  286. package/dist/Components/PersonChip/PersonChip.js +47 -0
  287. package/dist/Components/PersonChip/PersonChipProps.d.ts +33 -0
  288. package/dist/Components/PersonChip/PersonChipProps.js +2 -0
  289. package/dist/Components/PinInput/PinInput.d.ts +2 -2
  290. package/dist/Components/PinInput/PinInput.js +11 -10
  291. package/dist/Components/PinInput/PinInputProps.d.ts +3 -2
  292. package/dist/Components/PinInput/pinInputCellSize.d.ts +7 -0
  293. package/dist/Components/PinInput/pinInputCellSize.js +10 -0
  294. package/dist/Components/PlanBadge/PlanBadge.d.ts +0 -7
  295. package/dist/Components/PlanBadge/PlanBadge.js +1 -7
  296. package/dist/Components/PlanPill/PlanPill.js +2 -3
  297. package/dist/Components/PlanPill/planPillGradient.d.ts +5 -21
  298. package/dist/Components/PlanPill/planPillGradient.js +8 -23
  299. package/dist/Components/Primitives/Primitives.d.ts +3 -6
  300. package/dist/Components/Primitives/Primitives.js +3 -41
  301. package/dist/Components/ProductCard/ProductPrice.js +18 -7
  302. package/dist/Components/ProductCard/ProductReview.js +3 -2
  303. package/dist/Components/ProductDetails/ProductDetails.js +1 -1
  304. package/dist/Components/ProductDetails/ProductDtlPrice.js +5 -5
  305. package/dist/Components/ProductDetails/ProductImageSlider.d.ts +3 -1
  306. package/dist/Components/ProductDetails/ProductImageSlider.js +36 -20
  307. package/dist/Components/ProfileCard/ProfileCard.d.ts +4 -10
  308. package/dist/Components/ProfileCard/ProfileCard.js +25 -10
  309. package/dist/Components/ProfileCard/ProfileCardProps.d.ts +8 -2
  310. package/dist/Components/ProfilePhotoViewer/ProfilePhotoViewer.js +7 -4
  311. package/dist/Components/ProgressBar/ProgressBar.d.ts +1 -1
  312. package/dist/Components/ProgressBar/ProgressBar.js +27 -3
  313. package/dist/Components/ProgressBar/ProgressBarProps.d.ts +10 -4
  314. package/dist/Components/QueryState/ErrorState.d.ts +4 -0
  315. package/dist/Components/QueryState/ErrorState.js +16 -0
  316. package/dist/Components/QueryState/QueryStateBoundary.d.ts +4 -0
  317. package/dist/Components/QueryState/QueryStateBoundary.js +25 -0
  318. package/dist/Components/QueryState/QueryStateProps.d.ts +48 -0
  319. package/dist/Components/QueryState/QueryStateProps.js +2 -0
  320. package/dist/Components/RadioButton/RadioButton.d.ts +2 -2
  321. package/dist/Components/RadioButton/RadioButton.js +34 -14
  322. package/dist/Components/RadioButton/RadioButtonProps.d.ts +50 -6
  323. package/dist/Components/RangeSlider/RangeSlider.d.ts +4 -0
  324. package/dist/Components/RangeSlider/RangeSlider.js +136 -0
  325. package/dist/Components/RangeSlider/RangeSliderProps.d.ts +74 -0
  326. package/dist/Components/RangeSlider/RangeSliderProps.js +2 -0
  327. package/dist/Components/RangeSlider/rangeSliderColors.d.ts +9 -0
  328. package/dist/Components/RangeSlider/rangeSliderColors.js +11 -0
  329. package/dist/Components/RangeSlider/rangeSliderMath.d.ts +16 -0
  330. package/dist/Components/RangeSlider/rangeSliderMath.js +79 -0
  331. package/dist/Components/RangeSlider/rangeSliderSize.d.ts +7 -0
  332. package/dist/Components/RangeSlider/rangeSliderSize.js +12 -0
  333. package/dist/Components/Reorder/Reorder.d.ts +1 -6
  334. package/dist/Components/Reorder/Reorder.js +2 -2
  335. package/dist/Components/Reorder/ReorderProps.d.ts +5 -2
  336. package/dist/Components/RolesPermission/DeleteRoleModal.js +4 -6
  337. package/dist/Components/RolesPermission/RolesPermission.js +1 -1
  338. package/dist/Components/SaveBar/SaveBar.d.ts +4 -0
  339. package/dist/Components/SaveBar/SaveBar.js +24 -0
  340. package/dist/Components/SaveBar/SaveBarProps.d.ts +22 -0
  341. package/dist/Components/SaveBar/SaveBarProps.js +2 -0
  342. package/dist/Components/ScrollToTop/ScrollToTop.js +5 -2
  343. package/dist/Components/Search/Search.d.ts +3 -2
  344. package/dist/Components/Search/Search.js +33 -15
  345. package/dist/Components/Search/SearchProps.d.ts +26 -4
  346. package/dist/Components/SearchSelect/SearchSelect.d.ts +2 -1
  347. package/dist/Components/SearchSelect/SearchSelect.js +61 -75
  348. package/dist/Components/SearchSelect/SearchSelectProps.d.ts +27 -3
  349. package/dist/Components/SearchSelect/searchSelectSize.d.ts +4 -14
  350. package/dist/Components/SearchSelect/searchSelectSize.js +15 -15
  351. package/dist/Components/SegmentedControl/SegmentedControl.d.ts +1 -1
  352. package/dist/Components/SegmentedControl/SegmentedControl.js +53 -31
  353. package/dist/Components/SegmentedControl/SegmentedControlProps.d.ts +12 -2
  354. package/dist/Components/SegmentedControl/segmentedInk.d.ts +11 -0
  355. package/dist/Components/SegmentedControl/segmentedInk.js +30 -0
  356. package/dist/Components/SegmentedControl/useSlidingPill.d.ts +11 -0
  357. package/dist/Components/SegmentedControl/useSlidingPill.js +25 -0
  358. package/dist/Components/Select/Select.d.ts +5 -2
  359. package/dist/Components/Select/Select.js +65 -24
  360. package/dist/Components/Select/Select.styles.js +12 -81
  361. package/dist/Components/Select/SelectNative.d.ts +63 -0
  362. package/dist/Components/Select/SelectNative.js +49 -0
  363. package/dist/Components/Select/SelectPopup.d.ts +5 -0
  364. package/dist/Components/Select/SelectPopup.js +423 -0
  365. package/dist/Components/Select/SelectProps.d.ts +122 -16
  366. package/dist/Components/SelectSearch/SelectSearch.d.ts +2 -2
  367. package/dist/Components/SelectSearch/SelectSearch.js +16 -78
  368. package/dist/Components/SelectSearch/SelectSearchProps.d.ts +31 -2
  369. package/dist/Components/SelectV2/SelectV2.d.ts +15 -3
  370. package/dist/Components/SelectV2/SelectV2.js +17 -264
  371. package/dist/Components/SelectV2/SelectV2Props.d.ts +39 -13
  372. package/dist/Components/SettingRow/SettingRow.d.ts +4 -0
  373. package/dist/Components/SettingRow/SettingRow.js +24 -0
  374. package/dist/Components/SettingRow/SettingRowProps.d.ts +16 -0
  375. package/dist/Components/SettingRow/SettingRowProps.js +2 -0
  376. package/dist/Components/SettingRow/SettingsSection.d.ts +4 -0
  377. package/dist/Components/SettingRow/SettingsSection.js +16 -0
  378. package/dist/Components/SettingRow/SettingsSectionProps.d.ts +18 -0
  379. package/dist/Components/SettingRow/SettingsSectionProps.js +2 -0
  380. package/dist/Components/SideBar/SecondaryBar.js +21 -10
  381. package/dist/Components/SideBar/SideBar.js +38 -22
  382. package/dist/Components/SideBar/SideBarProps.d.ts +10 -1
  383. package/dist/Components/SideBar/components/MenuItemBox.d.ts +2 -0
  384. package/dist/Components/SideBar/components/MenuItemBox.js +44 -28
  385. package/dist/Components/SideBar/components/MenuItems.js +4 -4
  386. package/dist/Components/SideBar/components/MenuPopoverContent.js +21 -10
  387. package/dist/Components/SideBar/components/OtherApps.js +3 -3
  388. package/dist/Components/SideBar/components/OverflowTooltipText.js +3 -1
  389. package/dist/Components/SideBar/components/TextTruncation.js +3 -3
  390. package/dist/Components/SideBar/menuDisabled.d.ts +5 -0
  391. package/dist/Components/SideBar/menuDisabled.js +7 -0
  392. package/dist/Components/SideBar/sidebarId.d.ts +2 -0
  393. package/dist/Components/SideBar/sidebarId.js +6 -0
  394. package/dist/Components/SideBar/sidebarScale.d.ts +15 -0
  395. package/dist/Components/SideBar/sidebarScale.js +18 -0
  396. package/dist/Components/Skeletons/SkeletonProps.d.ts +4 -2
  397. package/dist/Components/Skeletons/Skeletons.d.ts +1 -1
  398. package/dist/Components/Skeletons/Skeletons.js +2 -2
  399. package/dist/Components/Slider/Slider.js +2 -1
  400. package/dist/Components/Spinner/Spinner.d.ts +3 -0
  401. package/dist/Components/Spinner/Spinner.js +22 -0
  402. package/dist/Components/Spinner/SpinnerProps.d.ts +15 -0
  403. package/dist/Components/Spinner/SpinnerProps.js +2 -0
  404. package/dist/Components/StageProgress/StageItem.js +12 -4
  405. package/dist/Components/StageProgress/StageProgress.js +6 -7
  406. package/dist/Components/StageProgress/StageProgressProps.d.ts +9 -3
  407. package/dist/Components/StageProgress/StageProgressProps.js +6 -2
  408. package/dist/Components/StageProgress/StepperStage.js +5 -2
  409. package/dist/Components/StatCard/StatCard.d.ts +4 -0
  410. package/dist/Components/StatCard/StatCard.js +42 -0
  411. package/dist/Components/StatCard/StatCardProps.d.ts +26 -0
  412. package/dist/Components/StatCard/StatCardProps.js +2 -0
  413. package/dist/Components/Switch/Switch.d.ts +2 -2
  414. package/dist/Components/Switch/Switch.js +11 -9
  415. package/dist/Components/Switch/SwitchProps.d.ts +7 -1
  416. package/dist/Components/Table/Table.d.ts +1 -1
  417. package/dist/Components/Table/Table.js +56 -49
  418. package/dist/Components/Table/TableProps.d.ts +46 -8
  419. package/dist/Components/Table/components/HeaderActions.js +3 -2
  420. package/dist/Components/Table/components/Pagination.d.ts +2 -2
  421. package/dist/Components/Table/components/Pagination.js +12 -4
  422. package/dist/Components/Table/components/TableActions.js +1 -1
  423. package/dist/Components/Table/components/TableBody.d.ts +1 -1
  424. package/dist/Components/Table/components/TableBody.js +33 -41
  425. package/dist/Components/Table/components/TableGroupRow.js +1 -1
  426. package/dist/Components/Table/components/TableHeader.d.ts +1 -1
  427. package/dist/Components/Table/components/TableHeader.js +14 -12
  428. package/dist/Components/Table/components/TableSearch.js +1 -1
  429. package/dist/Components/Table/components/rowMetrics.d.ts +11 -0
  430. package/dist/Components/Table/components/rowMetrics.js +16 -0
  431. package/dist/Components/Table/filters/ActiveFilters.js +7 -4
  432. package/dist/Components/Table/filters/CompactSelect.js +1 -1
  433. package/dist/Components/Table/filters/LeftFilterPane.js +1 -1
  434. package/dist/Components/Table/filters/SelectOperationControls.js +9 -1
  435. package/dist/Components/Table/filters/TableFilters.js +1 -1
  436. package/dist/Components/Table/filters/TextOperationControls.js +8 -1
  437. package/dist/Components/Table/hooks/useTable.d.ts +3 -11
  438. package/dist/Components/Table/hooks/useTable.js +19 -26
  439. package/dist/Components/Table/settings/ManageColumns.js +7 -6
  440. package/dist/Components/Table/settings/TableSettings.js +5 -4
  441. package/dist/Components/Table/variants/classic.js +2 -0
  442. package/dist/Components/Table/variants/stripe.d.ts +3 -0
  443. package/dist/Components/Table/variants/stripe.js +7 -0
  444. package/dist/Components/Table/variants/studio.js +2 -0
  445. package/dist/Components/Table/variants/tokens.d.ts +2 -0
  446. package/dist/Components/Tabs/Tabs.d.ts +3 -0
  447. package/dist/Components/Tabs/Tabs.js +70 -0
  448. package/dist/Components/Tabs/TabsContext.d.ts +22 -0
  449. package/dist/Components/Tabs/TabsContext.js +16 -0
  450. package/dist/Components/Tabs/TabsProps.d.ts +74 -0
  451. package/dist/Components/Tabs/TabsProps.js +2 -0
  452. package/dist/Components/Tabs/components/CountBadge.d.ts +12 -0
  453. package/dist/Components/Tabs/components/CountBadge.js +17 -0
  454. package/dist/Components/Tabs/components/Tab.d.ts +3 -0
  455. package/dist/Components/Tabs/components/Tab.js +49 -0
  456. package/dist/Components/Tabs/components/TabList.d.ts +3 -0
  457. package/dist/Components/Tabs/components/TabList.js +71 -0
  458. package/dist/Components/Tabs/components/TabPanel.d.ts +3 -0
  459. package/dist/Components/Tabs/components/TabPanel.js +17 -0
  460. package/dist/Components/Tabs/components/TabPanels.d.ts +3 -0
  461. package/dist/Components/Tabs/components/TabPanels.js +14 -0
  462. package/dist/Components/Tabs/index.d.ts +6 -0
  463. package/dist/Components/Tabs/index.js +16 -0
  464. package/dist/Components/Tabs/tabStyles.d.ts +15 -0
  465. package/dist/Components/Tabs/tabStyles.js +38 -0
  466. package/dist/Components/Tag/Tag.js +14 -6
  467. package/dist/Components/Tag/Tag.styles.d.ts +2 -0
  468. package/dist/Components/Tag/Tag.styles.js +44 -37
  469. package/dist/Components/Tag/TagProps.d.ts +17 -4
  470. package/dist/Components/Timeline/Timeline.d.ts +1 -1
  471. package/dist/Components/Timeline/Timeline.js +42 -30
  472. package/dist/Components/Timeline/TimelineProps.d.ts +25 -2
  473. package/dist/Components/Toaster/Toaster.js +73 -55
  474. package/dist/Components/Toaster/ToasterProps.d.ts +18 -5
  475. package/dist/Components/Toaster/toastDuration.d.ts +4 -0
  476. package/dist/Components/Toaster/toastDuration.js +7 -0
  477. package/dist/Components/Toggle/TableToggle.d.ts +1 -1
  478. package/dist/Components/Toggle/TableToggle.js +10 -25
  479. package/dist/Components/Toggle/TableToggleProps.d.ts +3 -2
  480. package/dist/Components/ToggleSwitch/ToggleSwitch.d.ts +2 -2
  481. package/dist/Components/ToggleSwitch/ToggleSwitch.js +41 -7
  482. package/dist/Components/ToggleSwitch/ToggleSwitchProps.d.ts +63 -8
  483. package/dist/Components/ToolTip/OverflowToolTip.d.ts +0 -15
  484. package/dist/Components/ToolTip/OverflowToolTip.js +1 -15
  485. package/dist/Components/ToolTip/ToolTip.js +13 -13
  486. package/dist/Components/ToolTip/ToolTipProps.d.ts +5 -2
  487. package/dist/Components/UpgradeButton/UpgradeButton.js +9 -14
  488. package/dist/Components/UserDetails/AddUserModal.js +1 -1
  489. package/dist/Components/UserDetails/ChangeRoleModal.js +1 -1
  490. package/dist/Components/UserDetails/DeactivateConfirmModal.js +4 -6
  491. package/dist/Components/UserDetails/UserDetails.js +6 -8
  492. package/dist/Components/WorkspaceWindow/WorkspaceTrayPreview.d.ts +0 -13
  493. package/dist/Components/WorkspaceWindow/WorkspaceTrayPreview.js +2 -14
  494. package/dist/Components/WorkspaceWindow/WorkspaceWindow.d.ts +0 -11
  495. package/dist/Components/WorkspaceWindow/WorkspaceWindow.js +6 -23
  496. package/dist/Hooks/useDebounce.d.ts +6 -0
  497. package/dist/Hooks/useDebounce.js +33 -0
  498. package/dist/Hooks/useExclusiveOverlay.d.ts +0 -4
  499. package/dist/Hooks/useExclusiveOverlay.js +1 -4
  500. package/dist/Hooks/useFullscreen.d.ts +8 -0
  501. package/dist/Hooks/useFullscreen.js +32 -0
  502. package/dist/Hooks/useIsTruncated.d.ts +0 -30
  503. package/dist/Hooks/useIsTruncated.js +1 -30
  504. package/dist/Hooks/usePreferences.js +1 -6
  505. package/dist/Hooks/useSidebarPrefs.d.ts +1 -42
  506. package/dist/Hooks/useSidebarPrefs.js +1 -2
  507. package/dist/Theme/assertPalette.d.ts +1 -1
  508. package/dist/Theme/assertPalette.js +2 -2
  509. package/dist/Theme/chakra/Card.styles.d.ts +78 -0
  510. package/dist/Theme/chakra/Card.styles.js +48 -0
  511. package/dist/Theme/chakra/Drawer.styles.d.ts +41 -9
  512. package/dist/Theme/chakra/Drawer.styles.js +14 -13
  513. package/dist/Theme/chakra/Menu.styles.d.ts +3 -18
  514. package/dist/Theme/chakra/Menu.styles.js +2 -23
  515. package/dist/Theme/chakra/Modal.styles.d.ts +42 -9
  516. package/dist/Theme/chakra/Modal.styles.js +15 -13
  517. package/dist/Theme/chakra/Popover.styles.d.ts +3 -3
  518. package/dist/Theme/chakra/Popover.styles.js +2 -10
  519. package/dist/Theme/chakra/Slider.styles.d.ts +3 -3
  520. package/dist/Theme/chakra/Slider.styles.js +1 -6
  521. package/dist/Theme/chakra/common.web.d.ts +0 -4
  522. package/dist/Theme/chakra/common.web.js +1 -7
  523. package/dist/Theme/chakra/componentStyles.d.ts +157 -103
  524. package/dist/Theme/chakra/componentStyles.js +66 -86
  525. package/dist/Theme/chakra/createBrandTheme.d.ts +0 -10
  526. package/dist/Theme/chakra/createBrandTheme.js +6 -50
  527. package/dist/Theme/chakra/focusRing.styles.d.ts +17 -24
  528. package/dist/Theme/chakra/focusRing.styles.js +20 -24
  529. package/dist/Theme/chakra/fonts.web.d.ts +0 -5
  530. package/dist/Theme/chakra/fonts.web.js +1 -5
  531. package/dist/Theme/chakra/motion.d.ts +5 -0
  532. package/dist/Theme/chakra/motion.js +27 -0
  533. package/dist/Theme/chakra/overlay.styles.d.ts +51 -0
  534. package/dist/Theme/chakra/overlay.styles.js +48 -0
  535. package/dist/Theme/chakra/paletteFromTheme.d.ts +0 -4
  536. package/dist/Theme/chakra/paletteFromTheme.js +1 -4
  537. package/dist/Theme/index.d.ts +0 -12
  538. package/dist/Theme/index.js +3 -18
  539. package/dist/Theme/provider/PixelizeThemeProvider.d.ts +0 -32
  540. package/dist/Theme/provider/PixelizeThemeProvider.js +6 -74
  541. package/dist/Theme/provider/ThemeSwitcher.js +17 -18
  542. package/dist/Theme/provider/colorModeStorage.js +1 -4
  543. package/dist/Theme/tokens/brands/emerald/palette.dark.d.ts +0 -4
  544. package/dist/Theme/tokens/brands/emerald/palette.dark.js +0 -4
  545. package/dist/Theme/tokens/brands/emerald/palette.light.js +2 -10
  546. package/dist/Theme/tokens/brands/index.js +4 -4
  547. package/dist/Theme/tokens/brands/lavender/palette.dark.d.ts +0 -4
  548. package/dist/Theme/tokens/brands/lavender/palette.dark.js +0 -4
  549. package/dist/Theme/tokens/brands/lavender/palette.light.js +4 -13
  550. package/dist/Theme/tokens/brands/meadow/palette.dark.d.ts +0 -4
  551. package/dist/Theme/tokens/brands/meadow/palette.dark.js +0 -4
  552. package/dist/Theme/tokens/brands/meadow/palette.light.js +2 -11
  553. package/dist/Theme/tokens/brands/radiant/palette.dark.d.ts +0 -4
  554. package/dist/Theme/tokens/brands/radiant/palette.dark.js +0 -4
  555. package/dist/Theme/tokens/brands/radiant/palette.light.js +2 -10
  556. package/dist/Theme/tokens/brands/rosewood/palette.dark.d.ts +0 -4
  557. package/dist/Theme/tokens/brands/rosewood/palette.dark.js +0 -4
  558. package/dist/Theme/tokens/brands/rosewood/palette.light.js +2 -14
  559. package/dist/Theme/tokens/brands/skyline/palette.dark.d.ts +0 -4
  560. package/dist/Theme/tokens/brands/skyline/palette.dark.js +0 -4
  561. package/dist/Theme/tokens/brands/skyline/palette.light.js +2 -11
  562. package/dist/Theme/tokens/brands/slate/palette.dark.d.ts +0 -4
  563. package/dist/Theme/tokens/brands/slate/palette.dark.js +0 -4
  564. package/dist/Theme/tokens/brands/slate/palette.light.js +1 -11
  565. package/dist/Theme/tokens/brands/storefront/palette.dark.d.ts +0 -4
  566. package/dist/Theme/tokens/brands/storefront/palette.dark.js +0 -4
  567. package/dist/Theme/tokens/brands/zinc/palette.dark.d.ts +10 -9
  568. package/dist/Theme/tokens/brands/zinc/palette.dark.js +5 -35
  569. package/dist/Theme/tokens/brands/zinc/palette.light.js +3 -12
  570. package/dist/Theme/tokens/builders/accentText.d.ts +0 -43
  571. package/dist/Theme/tokens/builders/accentText.js +5 -48
  572. package/dist/Theme/tokens/builders/brandInk.d.ts +2 -0
  573. package/dist/Theme/tokens/builders/brandInk.js +19 -1
  574. package/dist/Theme/tokens/builders/buildBrandTokens.d.ts +0 -3
  575. package/dist/Theme/tokens/builders/buildBrandTokens.js +1 -3
  576. package/dist/Theme/tokens/builders/buildDarkPalette.d.ts +0 -12
  577. package/dist/Theme/tokens/builders/buildDarkPalette.js +15 -103
  578. package/dist/Theme/tokens/builders/chartColorsFromTheme.d.ts +0 -8
  579. package/dist/Theme/tokens/builders/chartColorsFromTheme.js +1 -8
  580. package/dist/Theme/tokens/builders/color.d.ts +0 -20
  581. package/dist/Theme/tokens/builders/color.js +3 -20
  582. package/dist/Theme/tokens/builders/filledSurface.d.ts +2 -12
  583. package/dist/Theme/tokens/builders/filledSurface.js +35 -25
  584. package/dist/Theme/tokens/builders/focusRing.d.ts +0 -45
  585. package/dist/Theme/tokens/builders/focusRing.js +5 -49
  586. package/dist/Theme/tokens/builders/gradientInk.d.ts +0 -10
  587. package/dist/Theme/tokens/builders/gradientInk.js +2 -10
  588. package/dist/Theme/tokens/builders/index.d.ts +4 -0
  589. package/dist/Theme/tokens/builders/index.js +4 -0
  590. package/dist/Theme/tokens/builders/outlineRung.d.ts +0 -66
  591. package/dist/Theme/tokens/builders/outlineRung.js +4 -70
  592. package/dist/Theme/tokens/builders/placeholderInk.d.ts +0 -12
  593. package/dist/Theme/tokens/builders/placeholderInk.js +2 -12
  594. package/dist/Theme/tokens/builders/resolvedRungs.d.ts +0 -5
  595. package/dist/Theme/tokens/builders/resolvedRungs.js +1 -5
  596. package/dist/Theme/tokens/builders/rowStates.d.ts +0 -6
  597. package/dist/Theme/tokens/builders/rowStates.js +4 -8
  598. package/dist/Theme/tokens/builders/scrim.d.ts +6 -0
  599. package/dist/Theme/tokens/builders/scrim.js +17 -0
  600. package/dist/Theme/tokens/builders/scrollbar.d.ts +0 -4
  601. package/dist/Theme/tokens/builders/scrollbar.js +1 -4
  602. package/dist/Theme/tokens/builders/semanticText.d.ts +0 -5
  603. package/dist/Theme/tokens/builders/semanticText.js +1 -5
  604. package/dist/Theme/tokens/builders/sidebarAccent.d.ts +8 -0
  605. package/dist/Theme/tokens/builders/sidebarAccent.js +15 -1
  606. package/dist/Theme/tokens/builders/statusTone.d.ts +1 -19
  607. package/dist/Theme/tokens/builders/statusTone.js +4 -19
  608. package/dist/Theme/tokens/builders/surfaceRaised.d.ts +6 -0
  609. package/dist/Theme/tokens/builders/surfaceRaised.js +21 -0
  610. package/dist/Theme/tokens/builders/surfaceRungs.d.ts +0 -4
  611. package/dist/Theme/tokens/builders/surfaceRungs.js +3 -9
  612. package/dist/Theme/tokens/builders/tone.d.ts +22 -0
  613. package/dist/Theme/tokens/builders/tone.js +54 -0
  614. package/dist/Theme/tokens/builders/tooltipSurface.d.ts +6 -0
  615. package/dist/Theme/tokens/builders/tooltipSurface.js +10 -0
  616. package/dist/Theme/tokens/builders/viewportHeight.d.ts +8 -0
  617. package/dist/Theme/tokens/builders/viewportHeight.js +9 -0
  618. package/dist/Theme/tokens/index.d.ts +0 -10
  619. package/dist/Theme/tokens/index.js +1 -10
  620. package/dist/Theme/tokens/primitives/controlSizes.d.ts +12 -0
  621. package/dist/Theme/tokens/primitives/controlSizes.js +14 -0
  622. package/dist/Theme/tokens/primitives/index.d.ts +2 -0
  623. package/dist/Theme/tokens/primitives/index.js +16 -0
  624. package/dist/Theme/tokens/primitives/motion.d.ts +8 -0
  625. package/dist/Theme/tokens/primitives/motion.js +12 -0
  626. package/dist/Theme/tokens/primitives/sizes.d.ts +0 -4
  627. package/dist/Theme/tokens/primitives/sizes.js +1 -4
  628. package/dist/Theme/tokens/primitives/typography.d.ts +0 -7
  629. package/dist/Theme/tokens/primitives/typography.js +1 -7
  630. package/dist/Theme/tokens/types.d.ts +8 -28
  631. package/dist/Theme/tokens/types.js +1 -6
  632. package/dist/Utils/accountHandoff.d.ts +0 -17
  633. package/dist/Utils/accountHandoff.js +2 -17
  634. package/dist/Utils/apiError.d.ts +2 -0
  635. package/dist/Utils/apiError.js +28 -0
  636. package/dist/Utils/functions.d.ts +1 -0
  637. package/dist/Utils/functions.js +6 -4
  638. package/dist/Utils/humanize.d.ts +4 -0
  639. package/dist/Utils/humanize.js +19 -0
  640. package/dist/Utils/lazyWithRetry.d.ts +9 -0
  641. package/dist/Utils/lazyWithRetry.js +51 -0
  642. package/dist/Utils/mergeRefs.d.ts +0 -5
  643. package/dist/Utils/mergeRefs.js +1 -5
  644. package/dist/Utils/planBadge.d.ts +1 -11
  645. package/dist/Utils/planBadge.js +2 -12
  646. package/dist/Utils/planExpiry.d.ts +0 -26
  647. package/dist/Utils/planExpiry.js +4 -29
  648. package/dist/Utils/rafThrottle.d.ts +0 -11
  649. package/dist/Utils/rafThrottle.js +1 -11
  650. package/dist/Utils/table.d.ts +2 -22
  651. package/dist/Utils/table.js +17 -87
  652. package/dist/Utils/validation.d.ts +13 -0
  653. package/dist/Utils/validation.js +86 -0
  654. package/dist/esm/Components/Accordion/Accordion.js +8 -10
  655. package/dist/esm/Components/Accordion/accordionColors.js +9 -10
  656. package/dist/esm/Components/AlertDialog/AlertDialog.js +3 -6
  657. package/dist/esm/Components/Apexcharts/ApexAreaChart/ApexAreaChart.js +7 -3
  658. package/dist/esm/Components/Apexcharts/ApexBarChart/ApexBarChart.js +8 -5
  659. package/dist/esm/Components/Apexcharts/ApexChartFallback.js +5 -0
  660. package/dist/esm/Components/Apexcharts/ApexLineChart/ApexLineChart.js +7 -3
  661. package/dist/esm/Components/Apexcharts/ApexPieChart/ApexPieChart.js +7 -3
  662. package/dist/esm/Components/Apexcharts/ApexPolarCharts/ApexPolarCharts.js +9 -6
  663. package/dist/esm/Components/Apexcharts/ApexRadialChart/ApexRadialChart.js +7 -5
  664. package/dist/esm/Components/Apexcharts/LazyReactApexChart.js +5 -0
  665. package/dist/esm/Components/AppSwitcher/AppMark.js +1 -5
  666. package/dist/esm/Components/AppSwitcher/AppSwitcher.js +4 -9
  667. package/dist/esm/Components/Avatar/Avatar.js +22 -0
  668. package/dist/esm/Components/Avatar/AvatarGroup.js +19 -0
  669. package/dist/esm/Components/Avatar/AvatarProps.js +1 -0
  670. package/dist/esm/Components/Avatar/avatarColorway.js +25 -0
  671. package/dist/esm/Components/Avatar/avatarSizing.js +12 -0
  672. package/dist/esm/Components/Backdrop/Backdrop.js +28 -0
  673. package/dist/esm/Components/Backdrop/BackdropProps.js +1 -0
  674. package/dist/esm/Components/Breadcrumbs/Breadcrumbs.js +15 -5
  675. package/dist/esm/Components/Breadcrumbs/breadcrumbInk.js +7 -0
  676. package/dist/esm/Components/Button/Button.js +2 -2
  677. package/dist/esm/Components/Button/Button.styles.js +21 -62
  678. package/dist/esm/Components/ButtonGroupIcon/ButtonGoupIconProps.js +2 -1
  679. package/dist/esm/Components/ButtonGroupIcon/ButtonGroupIcon.js +3 -10
  680. package/dist/esm/Components/ButtonGroupIcon/ButtonGroupIconProps.js +1 -0
  681. package/dist/esm/Components/Buttons/Buttons.js +2 -3
  682. package/dist/esm/Components/Card/Card.js +11 -5
  683. package/dist/esm/Components/Card/PaymentCard/PaymentCard.js +13 -9
  684. package/dist/esm/Components/Checkbox/Checkbox.js +11 -9
  685. package/dist/esm/Components/Checkbox/Checkbox.styles.js +42 -37
  686. package/dist/esm/Components/Common/ErrorComponent.js +1 -1
  687. package/dist/esm/Components/Common/ErrorMessage.js +5 -5
  688. package/dist/esm/Components/Common/FieldMessage.js +14 -0
  689. package/dist/esm/Components/Common/FormLabel.js +13 -8
  690. package/dist/esm/Components/Common/HelperText.js +3 -2
  691. package/dist/esm/Components/Common/Label.js +3 -2
  692. package/dist/esm/Components/Common/fieldMessageStyles.js +13 -0
  693. package/dist/esm/Components/Common/fieldStyles.js +66 -29
  694. package/dist/esm/Components/Common/useFieldIds.js +23 -0
  695. package/dist/esm/Components/ConfirmDialog/ConfirmDialog.js +18 -0
  696. package/dist/esm/Components/ConfirmDialog/ConfirmDialogProps.js +1 -0
  697. package/dist/esm/Components/ContactForm/ContactForm.js +19 -15
  698. package/dist/esm/Components/CopyButton/CopyButton.js +3 -4
  699. package/dist/esm/Components/CustomModulesTable/DeleteModuleModal.js +4 -4
  700. package/dist/esm/Components/CustomModulesTable/EditModuleModal.js +2 -4
  701. package/dist/esm/Components/DatePicker/CalendarPanel.js +5 -9
  702. package/dist/esm/Components/DatePicker/DatePicker.js +12 -49
  703. package/dist/esm/Components/DatePicker/DatePickerProps.js +1 -1
  704. package/dist/esm/Components/DatePicker/RangeDatePicker.js +17 -21
  705. package/dist/esm/Components/DatePicker/SingleDatePicker.js +37 -53
  706. package/dist/esm/Components/DatePicker/ThemeDatePicker.js +11 -18
  707. package/dist/esm/Components/DatePicker/TimeOnlyPicker.js +35 -20
  708. package/dist/esm/Components/DatePicker/TimePicker.js +8 -12
  709. package/dist/esm/Components/DatePicker/TimePickerInput.js +5 -11
  710. package/dist/esm/Components/DatePicker/dayStates.js +3 -15
  711. package/dist/esm/Components/DatePicker/pickerField.js +24 -0
  712. package/dist/esm/Components/DatePicker/valueFormat.js +15 -0
  713. package/dist/esm/Components/DescriptionList/DescriptionList.js +27 -0
  714. package/dist/esm/Components/DescriptionList/DescriptionListProps.js +1 -0
  715. package/dist/esm/Components/Drawer/Drawer.js +22 -8
  716. package/dist/esm/Components/Dropdown/DropDown.js +43 -33
  717. package/dist/esm/Components/Editor/Editor.js +13 -1
  718. package/dist/esm/Components/Editor/joditAccessibility.js +24 -0
  719. package/dist/esm/Components/EmailCards/VerifyEmailOtp/VerifyEmailOtp.js +3 -5
  720. package/dist/esm/Components/EmptyState/EmptyState.js +24 -15
  721. package/dist/esm/Components/FeedbackForm/FeedbackForm.js +17 -7
  722. package/dist/esm/Components/FieldSelectModal/FieldSelectModal.js +3 -5
  723. package/dist/esm/Components/FilePreview/FilePreview.js +8 -8
  724. package/dist/esm/Components/FileUpload/FileUpload.js +22 -6
  725. package/dist/esm/Components/FileUpload/constants.js +1 -0
  726. package/dist/esm/Components/FileUploader/FileUploader.js +6 -5
  727. package/dist/esm/Components/FilterBar/FilterBar.js +12 -0
  728. package/dist/esm/Components/FilterBar/FilterBarProps.js +1 -0
  729. package/dist/esm/Components/FilterSidebar/FilterSidebar.js +28 -33
  730. package/dist/esm/Components/FilterSidebar/filterHoverStyle.js +1 -1
  731. package/dist/esm/Components/Form/FormWrapper.js +1 -1
  732. package/dist/esm/Components/Header/Header.js +2 -16
  733. package/dist/esm/Components/Header/HeaderActions.js +4 -4
  734. package/dist/esm/Components/Header/components/desktopMenu.js +10 -11
  735. package/dist/esm/Components/Header/components/mobileMenu.js +23 -20
  736. package/dist/esm/Components/Input/Input/Input.js +3 -2
  737. package/dist/esm/Components/Input/PhoneNumberInput.js +8 -5
  738. package/dist/esm/Components/Input/Switch/InputSwitch.js +16 -21
  739. package/dist/esm/Components/Input/TextInput.js +83 -10
  740. package/dist/esm/Components/Input/TextInput.styles.js +42 -88
  741. package/dist/esm/Components/Input/textInputIconSize.js +4 -20
  742. package/dist/esm/Components/Input/useAriaRequired.js +15 -0
  743. package/dist/esm/Components/InputTextArea/InputTextArea.js +10 -6
  744. package/dist/esm/Components/InputTextArea/InputTextArea.style.js +14 -69
  745. package/dist/esm/Components/KanbanBoard/AccountCard.js +9 -6
  746. package/dist/esm/Components/KanbanBoard/AccountRow.js +1 -1
  747. package/dist/esm/Components/KanbanBoard/KanbanActions/KanbanActions.js +1 -1
  748. package/dist/esm/Components/KanbanBoard/KanbanBoard.js +86 -50
  749. package/dist/esm/Components/KanbanBoard/index.js +1 -0
  750. package/dist/esm/Components/LimitReachedModal/LimitReachedModal.js +2 -2
  751. package/dist/esm/Components/LimitReachedModal/limitReachedCopy.js +1 -3
  752. package/dist/esm/Components/Loading/Loading.js +16 -19
  753. package/dist/esm/Components/MediaViewer/MediaViewer.js +196 -0
  754. package/dist/esm/Components/MediaViewer/MediaViewerProps.js +29 -0
  755. package/dist/esm/Components/MediaViewer/components/MediaAudioPlayer.js +133 -0
  756. package/dist/esm/Components/MediaViewer/components/MediaAudioPlayerProps.js +18 -0
  757. package/dist/esm/Components/MediaViewer/components/MediaDocumentStage.js +109 -0
  758. package/dist/esm/Components/MediaViewer/components/MediaDocumentStageProps.js +8 -0
  759. package/dist/esm/Components/MediaViewer/components/MediaImageViewer.js +98 -0
  760. package/dist/esm/Components/MediaViewer/components/MediaImageViewerProps.js +15 -0
  761. package/dist/esm/Components/MediaViewer/components/MediaScrubber.js +87 -0
  762. package/dist/esm/Components/MediaViewer/components/MediaScrubberProps.js +1 -0
  763. package/dist/esm/Components/MediaViewer/components/MediaStatusPanel.js +12 -0
  764. package/dist/esm/Components/MediaViewer/components/MediaStatusPanelProps.js +1 -0
  765. package/dist/esm/Components/MediaViewer/components/MediaVideoPlayer.js +243 -0
  766. package/dist/esm/Components/MediaViewer/components/MediaVideoPlayerProps.js +28 -0
  767. package/dist/esm/Components/MediaViewer/components/TileChip.js +10 -0
  768. package/dist/esm/Components/MediaViewer/components/TileChipProps.js +1 -0
  769. package/dist/esm/Components/MediaViewer/components/VideoPoster.js +11 -0
  770. package/dist/esm/Components/MediaViewer/components/VideoPosterProps.js +1 -0
  771. package/dist/esm/Components/MediaViewer/components/ViewerIconButton.js +15 -0
  772. package/dist/esm/Components/MediaViewer/components/ViewerIconButtonProps.js +1 -0
  773. package/dist/esm/Components/MediaViewer/components/mediaKindIcon.js +18 -0
  774. package/dist/esm/Components/MediaViewer/components/sanitizeDocxHrefs.js +27 -0
  775. package/dist/esm/Components/MediaViewer/hooks/useAutoHideChrome.js +40 -0
  776. package/dist/esm/Components/MediaViewer/hooks/useFileViewer.js +45 -0
  777. package/dist/esm/Components/MediaViewer/mediaItems.js +174 -0
  778. package/dist/esm/Components/MediaViewer/useViewerChrome.js +27 -0
  779. package/dist/esm/Components/Modal/Modal.js +25 -19
  780. package/dist/esm/Components/MoreItems/MoreItems.js +4 -2
  781. package/dist/esm/Components/MultiSelect/MultiSelect.js +40 -28
  782. package/dist/esm/Components/NavigationBar/NavigationBar.js +7 -8
  783. package/dist/esm/Components/NoteTextArea/NoteTextArea.js +15 -10
  784. package/dist/esm/Components/Notification/Notification.js +9 -5
  785. package/dist/esm/Components/NotificationBell/NotificationBell.js +33 -0
  786. package/dist/esm/Components/NotificationBell/NotificationBellProps.js +1 -0
  787. package/dist/esm/Components/NotificationBell/NotificationItem.js +29 -0
  788. package/dist/esm/Components/NotificationBell/NotificationList.js +36 -0
  789. package/dist/esm/Components/NotificationBell/NotificationPanel.js +31 -0
  790. package/dist/esm/Components/NotificationBell/index.js +6 -0
  791. package/dist/esm/Components/NotificationBell/notificationHelpers.js +107 -0
  792. package/dist/esm/Components/NumberInput/NumberInput.js +7 -6
  793. package/dist/esm/Components/NumberInput/NumberInput.styles.js +19 -78
  794. package/dist/esm/Components/OrgSwitcher/OrgSwitcher.js +4 -12
  795. package/dist/esm/Components/OrgSwitcher/OrgSwitcherProps.js +2 -1
  796. package/dist/esm/Components/OrganizationDetails/CreateOrgModal.js +1 -1
  797. package/dist/esm/Components/OrganizationDetails/DeleteOrgModal.js +7 -9
  798. package/dist/esm/Components/OrganizationDetails/OrganizationDetails.js +9 -8
  799. package/dist/esm/Components/PageHeader/PageHeader.js +9 -0
  800. package/dist/esm/Components/PageHeader/PageHeaderProps.js +1 -0
  801. package/dist/esm/Components/PdfViewer/PdfViewer.js +1 -1
  802. package/dist/esm/Components/PersonChip/PersonChip.js +42 -0
  803. package/dist/esm/Components/PersonChip/PersonChipProps.js +1 -0
  804. package/dist/esm/Components/PinInput/PinInput.js +11 -10
  805. package/dist/esm/Components/PinInput/pinInputCellSize.js +6 -0
  806. package/dist/esm/Components/PlanBadge/PlanBadge.js +1 -7
  807. package/dist/esm/Components/PlanPill/PlanPill.js +2 -3
  808. package/dist/esm/Components/PlanPill/planPillGradient.js +6 -20
  809. package/dist/esm/Components/Primitives/Primitives.js +3 -6
  810. package/dist/esm/Components/ProductCard/ProductPrice.js +18 -7
  811. package/dist/esm/Components/ProductCard/ProductReview.js +3 -2
  812. package/dist/esm/Components/ProductDetails/ProductDetails.js +1 -1
  813. package/dist/esm/Components/ProductDetails/ProductDtlPrice.js +5 -5
  814. package/dist/esm/Components/ProductDetails/ProductImageSlider.js +36 -20
  815. package/dist/esm/Components/ProfileCard/ProfileCard.js +25 -10
  816. package/dist/esm/Components/ProfilePhotoViewer/ProfilePhotoViewer.js +7 -4
  817. package/dist/esm/Components/ProgressBar/ProgressBar.js +27 -3
  818. package/dist/esm/Components/QueryState/ErrorState.js +11 -0
  819. package/dist/esm/Components/QueryState/QueryStateBoundary.js +20 -0
  820. package/dist/esm/Components/QueryState/QueryStateProps.js +1 -0
  821. package/dist/esm/Components/RadioButton/RadioButton.js +33 -16
  822. package/dist/esm/Components/RangeSlider/RangeSlider.js +131 -0
  823. package/dist/esm/Components/RangeSlider/RangeSliderProps.js +1 -0
  824. package/dist/esm/Components/RangeSlider/rangeSliderColors.js +7 -0
  825. package/dist/esm/Components/RangeSlider/rangeSliderMath.js +69 -0
  826. package/dist/esm/Components/RangeSlider/rangeSliderSize.js +8 -0
  827. package/dist/esm/Components/Reorder/Reorder.js +2 -2
  828. package/dist/esm/Components/RolesPermission/DeleteRoleModal.js +7 -9
  829. package/dist/esm/Components/RolesPermission/RolesPermission.js +1 -1
  830. package/dist/esm/Components/SaveBar/SaveBar.js +19 -0
  831. package/dist/esm/Components/SaveBar/SaveBarProps.js +1 -0
  832. package/dist/esm/Components/ScrollToTop/ScrollToTop.js +5 -2
  833. package/dist/esm/Components/Search/Search.js +35 -16
  834. package/dist/esm/Components/SearchSelect/SearchSelect.js +62 -76
  835. package/dist/esm/Components/SearchSelect/searchSelectSize.js +15 -15
  836. package/dist/esm/Components/SegmentedControl/SegmentedControl.js +51 -32
  837. package/dist/esm/Components/SegmentedControl/segmentedInk.js +23 -0
  838. package/dist/esm/Components/SegmentedControl/useSlidingPill.js +22 -0
  839. package/dist/esm/Components/Select/Select.js +67 -25
  840. package/dist/esm/Components/Select/Select.styles.js +12 -81
  841. package/dist/esm/Components/Select/SelectNative.js +44 -0
  842. package/dist/esm/Components/Select/SelectPopup.js +385 -0
  843. package/dist/esm/Components/SelectSearch/SelectSearch.js +18 -80
  844. package/dist/esm/Components/SelectV2/SelectV2.js +16 -231
  845. package/dist/esm/Components/SettingRow/SettingRow.js +22 -0
  846. package/dist/esm/Components/SettingRow/SettingRowProps.js +1 -0
  847. package/dist/esm/Components/SettingRow/SettingsSection.js +11 -0
  848. package/dist/esm/Components/SettingRow/SettingsSectionProps.js +1 -0
  849. package/dist/esm/Components/SideBar/SecondaryBar.js +21 -10
  850. package/dist/esm/Components/SideBar/SideBar.js +39 -23
  851. package/dist/esm/Components/SideBar/components/MenuItemBox.js +41 -25
  852. package/dist/esm/Components/SideBar/components/MenuItems.js +4 -4
  853. package/dist/esm/Components/SideBar/components/MenuPopoverContent.js +21 -10
  854. package/dist/esm/Components/SideBar/components/OtherApps.js +3 -3
  855. package/dist/esm/Components/SideBar/components/OverflowTooltipText.js +3 -1
  856. package/dist/esm/Components/SideBar/components/TextTruncation.js +3 -3
  857. package/dist/esm/Components/SideBar/menuDisabled.js +3 -0
  858. package/dist/esm/Components/SideBar/sidebarId.js +2 -0
  859. package/dist/esm/Components/SideBar/sidebarScale.js +15 -0
  860. package/dist/esm/Components/Skeletons/Skeletons.js +2 -2
  861. package/dist/esm/Components/Slider/Slider.js +2 -1
  862. package/dist/esm/Components/Spinner/Spinner.js +19 -0
  863. package/dist/esm/Components/Spinner/SpinnerProps.js +1 -0
  864. package/dist/esm/Components/StageProgress/StageItem.js +12 -4
  865. package/dist/esm/Components/StageProgress/StageProgress.js +6 -7
  866. package/dist/esm/Components/StageProgress/StageProgressProps.js +6 -2
  867. package/dist/esm/Components/StageProgress/StepperStage.js +5 -2
  868. package/dist/esm/Components/StatCard/StatCard.js +37 -0
  869. package/dist/esm/Components/StatCard/StatCardProps.js +1 -0
  870. package/dist/esm/Components/Switch/Switch.js +10 -11
  871. package/dist/esm/Components/Table/Table.js +58 -51
  872. package/dist/esm/Components/Table/components/HeaderActions.js +3 -2
  873. package/dist/esm/Components/Table/components/Pagination.js +13 -5
  874. package/dist/esm/Components/Table/components/TableActions.js +1 -1
  875. package/dist/esm/Components/Table/components/TableBody.js +33 -41
  876. package/dist/esm/Components/Table/components/TableGroupRow.js +1 -1
  877. package/dist/esm/Components/Table/components/TableHeader.js +14 -12
  878. package/dist/esm/Components/Table/components/TableSearch.js +1 -1
  879. package/dist/esm/Components/Table/components/rowMetrics.js +11 -0
  880. package/dist/esm/Components/Table/filters/ActiveFilters.js +7 -4
  881. package/dist/esm/Components/Table/filters/CompactSelect.js +1 -1
  882. package/dist/esm/Components/Table/filters/LeftFilterPane.js +1 -1
  883. package/dist/esm/Components/Table/filters/SelectOperationControls.js +8 -3
  884. package/dist/esm/Components/Table/filters/TableFilters.js +1 -1
  885. package/dist/esm/Components/Table/filters/TextOperationControls.js +6 -2
  886. package/dist/esm/Components/Table/hooks/useTable.js +18 -26
  887. package/dist/esm/Components/Table/settings/ManageColumns.js +7 -6
  888. package/dist/esm/Components/Table/settings/TableSettings.js +5 -4
  889. package/dist/esm/Components/Table/variants/classic.js +2 -0
  890. package/dist/esm/Components/Table/variants/stripe.js +3 -0
  891. package/dist/esm/Components/Table/variants/studio.js +2 -0
  892. package/dist/esm/Components/Tabs/Tabs.js +65 -0
  893. package/dist/esm/Components/Tabs/TabsContext.js +10 -0
  894. package/dist/esm/Components/Tabs/TabsProps.js +1 -0
  895. package/dist/esm/Components/Tabs/components/CountBadge.js +15 -0
  896. package/dist/esm/Components/Tabs/components/Tab.js +44 -0
  897. package/dist/esm/Components/Tabs/components/TabList.js +69 -0
  898. package/dist/esm/Components/Tabs/components/TabPanel.js +15 -0
  899. package/dist/esm/Components/Tabs/components/TabPanels.js +12 -0
  900. package/dist/esm/Components/Tabs/index.js +5 -0
  901. package/dist/esm/Components/Tabs/tabStyles.js +33 -0
  902. package/dist/esm/Components/Tag/Tag.js +15 -7
  903. package/dist/esm/Components/Tag/Tag.styles.js +44 -37
  904. package/dist/esm/Components/Timeline/Timeline.js +42 -30
  905. package/dist/esm/Components/Toaster/Toaster.js +73 -58
  906. package/dist/esm/Components/Toaster/toastDuration.js +3 -0
  907. package/dist/esm/Components/Toggle/TableToggle.js +9 -24
  908. package/dist/esm/Components/ToggleSwitch/ToggleSwitch.js +39 -8
  909. package/dist/esm/Components/ToolTip/OverflowToolTip.js +1 -15
  910. package/dist/esm/Components/ToolTip/ToolTip.js +14 -14
  911. package/dist/esm/Components/UpgradeButton/UpgradeButton.js +9 -14
  912. package/dist/esm/Components/UserDetails/AddUserModal.js +1 -1
  913. package/dist/esm/Components/UserDetails/ChangeRoleModal.js +1 -1
  914. package/dist/esm/Components/UserDetails/DeactivateConfirmModal.js +6 -8
  915. package/dist/esm/Components/UserDetails/UserDetails.js +7 -9
  916. package/dist/esm/Components/WorkspaceWindow/WorkspaceTrayPreview.js +2 -14
  917. package/dist/esm/Components/WorkspaceWindow/WorkspaceWindow.js +6 -23
  918. package/dist/esm/Hooks/useDebounce.js +29 -0
  919. package/dist/esm/Hooks/useExclusiveOverlay.js +1 -4
  920. package/dist/esm/Hooks/useFullscreen.js +29 -0
  921. package/dist/esm/Hooks/useIsTruncated.js +1 -30
  922. package/dist/esm/Hooks/usePreferences.js +1 -6
  923. package/dist/esm/Hooks/useSidebarPrefs.js +1 -2
  924. package/dist/esm/Theme/assertPalette.js +2 -2
  925. package/dist/esm/Theme/chakra/Card.styles.js +45 -0
  926. package/dist/esm/Theme/chakra/Drawer.styles.js +14 -13
  927. package/dist/esm/Theme/chakra/Menu.styles.js +2 -23
  928. package/dist/esm/Theme/chakra/Modal.styles.js +15 -13
  929. package/dist/esm/Theme/chakra/Popover.styles.js +2 -10
  930. package/dist/esm/Theme/chakra/Slider.styles.js +1 -6
  931. package/dist/esm/Theme/chakra/common.web.js +1 -7
  932. package/dist/esm/Theme/chakra/componentStyles.js +68 -88
  933. package/dist/esm/Theme/chakra/createBrandTheme.js +6 -50
  934. package/dist/esm/Theme/chakra/focusRing.styles.js +17 -23
  935. package/dist/esm/Theme/chakra/fonts.web.js +1 -5
  936. package/dist/esm/Theme/chakra/motion.js +22 -0
  937. package/dist/esm/Theme/chakra/overlay.styles.js +43 -0
  938. package/dist/esm/Theme/chakra/paletteFromTheme.js +1 -4
  939. package/dist/esm/Theme/index.js +3 -18
  940. package/dist/esm/Theme/provider/PixelizeThemeProvider.js +6 -74
  941. package/dist/esm/Theme/provider/ThemeSwitcher.js +18 -19
  942. package/dist/esm/Theme/provider/colorModeStorage.js +1 -4
  943. package/dist/esm/Theme/tokens/brands/emerald/palette.dark.js +0 -4
  944. package/dist/esm/Theme/tokens/brands/emerald/palette.light.js +2 -10
  945. package/dist/esm/Theme/tokens/brands/index.js +4 -4
  946. package/dist/esm/Theme/tokens/brands/lavender/palette.dark.js +0 -4
  947. package/dist/esm/Theme/tokens/brands/lavender/palette.light.js +4 -13
  948. package/dist/esm/Theme/tokens/brands/meadow/palette.dark.js +0 -4
  949. package/dist/esm/Theme/tokens/brands/meadow/palette.light.js +2 -11
  950. package/dist/esm/Theme/tokens/brands/radiant/palette.dark.js +0 -4
  951. package/dist/esm/Theme/tokens/brands/radiant/palette.light.js +2 -10
  952. package/dist/esm/Theme/tokens/brands/rosewood/palette.dark.js +0 -4
  953. package/dist/esm/Theme/tokens/brands/rosewood/palette.light.js +2 -14
  954. package/dist/esm/Theme/tokens/brands/skyline/palette.dark.js +0 -4
  955. package/dist/esm/Theme/tokens/brands/skyline/palette.light.js +2 -11
  956. package/dist/esm/Theme/tokens/brands/slate/palette.dark.js +0 -4
  957. package/dist/esm/Theme/tokens/brands/slate/palette.light.js +1 -11
  958. package/dist/esm/Theme/tokens/brands/storefront/palette.dark.js +0 -4
  959. package/dist/esm/Theme/tokens/brands/zinc/palette.dark.js +5 -35
  960. package/dist/esm/Theme/tokens/brands/zinc/palette.light.js +3 -12
  961. package/dist/esm/Theme/tokens/builders/accentText.js +5 -48
  962. package/dist/esm/Theme/tokens/builders/brandInk.js +18 -2
  963. package/dist/esm/Theme/tokens/builders/buildBrandTokens.js +1 -3
  964. package/dist/esm/Theme/tokens/builders/buildDarkPalette.js +15 -103
  965. package/dist/esm/Theme/tokens/builders/chartColorsFromTheme.js +1 -8
  966. package/dist/esm/Theme/tokens/builders/color.js +3 -20
  967. package/dist/esm/Theme/tokens/builders/filledSurface.js +35 -25
  968. package/dist/esm/Theme/tokens/builders/focusRing.js +5 -49
  969. package/dist/esm/Theme/tokens/builders/gradientInk.js +2 -10
  970. package/dist/esm/Theme/tokens/builders/index.js +4 -0
  971. package/dist/esm/Theme/tokens/builders/outlineRung.js +4 -70
  972. package/dist/esm/Theme/tokens/builders/placeholderInk.js +2 -12
  973. package/dist/esm/Theme/tokens/builders/resolvedRungs.js +1 -5
  974. package/dist/esm/Theme/tokens/builders/rowStates.js +5 -9
  975. package/dist/esm/Theme/tokens/builders/scrim.js +12 -0
  976. package/dist/esm/Theme/tokens/builders/scrollbar.js +1 -4
  977. package/dist/esm/Theme/tokens/builders/semanticText.js +1 -5
  978. package/dist/esm/Theme/tokens/builders/sidebarAccent.js +11 -0
  979. package/dist/esm/Theme/tokens/builders/statusTone.js +4 -19
  980. package/dist/esm/Theme/tokens/builders/surfaceRaised.js +15 -0
  981. package/dist/esm/Theme/tokens/builders/surfaceRungs.js +3 -9
  982. package/dist/esm/Theme/tokens/builders/tone.js +47 -0
  983. package/dist/esm/Theme/tokens/builders/tooltipSurface.js +6 -0
  984. package/dist/esm/Theme/tokens/builders/viewportHeight.js +6 -0
  985. package/dist/esm/Theme/tokens/index.js +1 -10
  986. package/dist/esm/Theme/tokens/primitives/controlSizes.js +10 -0
  987. package/dist/esm/Theme/tokens/primitives/index.js +2 -0
  988. package/dist/esm/Theme/tokens/primitives/motion.js +8 -0
  989. package/dist/esm/Theme/tokens/primitives/sizes.js +1 -4
  990. package/dist/esm/Theme/tokens/primitives/typography.js +1 -7
  991. package/dist/esm/Theme/tokens/types.js +1 -6
  992. package/dist/esm/Utils/accountHandoff.js +2 -17
  993. package/dist/esm/Utils/apiError.js +24 -0
  994. package/dist/esm/Utils/functions.js +6 -4
  995. package/dist/esm/Utils/humanize.js +15 -0
  996. package/dist/esm/Utils/lazyWithRetry.js +45 -0
  997. package/dist/esm/Utils/mergeRefs.js +1 -5
  998. package/dist/esm/Utils/planBadge.js +2 -12
  999. package/dist/esm/Utils/planExpiry.js +4 -29
  1000. package/dist/esm/Utils/rafThrottle.js +1 -11
  1001. package/dist/esm/Utils/table.js +15 -54
  1002. package/dist/esm/Utils/validation.js +73 -0
  1003. package/dist/esm/index.js +64 -2
  1004. package/dist/global.css +6 -1
  1005. package/dist/index.d.ts +110 -6
  1006. package/dist/index.js +192 -4
  1007. package/package.json +11 -3
  1008. package/dist/Assets/defaultLogo.tsx +0 -26
  1009. package/dist/Components/PinInputs/PinInputs.d.ts +0 -4
  1010. package/dist/Components/PinInputs/PinInputs.js +0 -47
  1011. package/dist/Components/PinInputs/PinInputsProps.d.ts +0 -10
  1012. package/dist/Components/Table/hooks/useDebounce.d.ts +0 -2
  1013. package/dist/Components/Table/hooks/useDebounce.js +0 -24
  1014. package/dist/Components/Trail/EditableCell.d.ts +0 -13
  1015. package/dist/Components/Trail/EditableCell.js +0 -35
  1016. package/dist/Components/Trail/SelectAllCheckbox.d.ts +0 -9
  1017. package/dist/Components/Trail/SelectAllCheckbox.js +0 -10
  1018. package/dist/Components/Trail/TrailWorks.d.ts +0 -3
  1019. package/dist/Components/Trail/TrailWorks.js +0 -57
  1020. package/dist/Components/Trail/data.d.ts +0 -15
  1021. package/dist/Components/Trail/data.js +0 -29
  1022. package/dist/Theme/chakra/Avatar.styles.d.ts +0 -32
  1023. package/dist/Theme/chakra/Avatar.styles.js +0 -28
  1024. package/dist/Theme/chakra/Switch.styles.d.ts +0 -30
  1025. package/dist/Theme/chakra/Switch.styles.js +0 -22
  1026. package/dist/Theme/chakra/Tabs.styles.d.ts +0 -42
  1027. package/dist/Theme/chakra/Tabs.styles.js +0 -36
  1028. package/dist/esm/Components/PinInputs/PinInputs.js +0 -42
  1029. package/dist/esm/Components/Table/hooks/useDebounce.js +0 -22
  1030. package/dist/esm/Components/Trail/EditableCell.js +0 -31
  1031. package/dist/esm/Components/Trail/SelectAllCheckbox.js +0 -6
  1032. package/dist/esm/Components/Trail/TrailWorks.js +0 -55
  1033. package/dist/esm/Components/Trail/data.js +0 -26
  1034. package/dist/esm/Theme/chakra/Avatar.styles.js +0 -25
  1035. package/dist/esm/Theme/chakra/Switch.styles.js +0 -19
  1036. package/dist/esm/Theme/chakra/Tabs.styles.js +0 -33
  1037. /package/dist/Components/{PinInputs/PinInputsProps.js → Avatar/AvatarGroupProps.js} +0 -0
  1038. /package/dist/esm/Components/{PinInputs/PinInputsProps.js → Avatar/AvatarGroupProps.js} +0 -0
@@ -9,21 +9,7 @@ import DesktopMenu from "./components/desktopMenu.js";
9
9
  import MobileMenu from "./components/mobileMenu.js";
10
10
  /** Non-text UI accent (WCAG 1.4.11, >=3:1) — the underline/highlight, not running text. */
11
11
  const ACTIVE_ACCENT_TARGET = 3;
12
- /**
13
- * Header's sidebar canvas (`bg`) is always dark regardless of app mode — `buildDarkPalette`
14
- * deliberately leaves `sidebar` unchanged ("already near-black in light mode, so it needs no
15
- * inversion"). But `themeColor.primary` follows whichever mode is active, so it can be either
16
- * light-mode-shaped (50 lightest -> 900 darkest) or dark-mode-shaped (50 darkest -> 900 lightest).
17
- * `accentTextOnCanvas` picks its search direction from the CANVAS's darkness, assuming that always
18
- * implies a dark-mode-shaped scale — true everywhere else (canvas darkness there tracks app mode),
19
- * false here, where the canvas never inverts but the scale still does. Walking toward 900 on a
20
- * light-mode-shaped scale therefore walks toward darker, not lighter, and can land near-black.
21
- *
22
- * This detects the scale's own direction from its own data (`primary[50]` vs `primary[900]`
23
- * luminance) rather than from the canvas or from theme-mode context, so it's correct in both app
24
- * modes and has no dependency on being mounted inside `PixelizeThemeProvider` (Header must keep
25
- * working for legacy `withTheme`-only consumers too).
26
- */
12
+ // NOTE: sidebar canvas never inverts but primary can be either mode-shaped — direction is detected from primary's own data, not the canvas.
27
13
  export const pickActiveAccent = (primary, canvas) => {
28
14
  const runsDarkToLight = relativeLuminance(primary[50]) < relativeLuminance(primary[900]);
29
15
  const order = runsDarkToLight
@@ -50,6 +36,6 @@ const Header = ({ logo, menuItems, rightSlot, active, colors, boxShadow, onMobil
50
36
  const rightSlotWithApi = React.isValidElement(rightSlot)
51
37
  ? React.cloneElement(rightSlot, { closeMobileMenu })
52
38
  : rightSlot;
53
- return (_jsxs(Box, { bg: bg, color: color, px: 4, shadow: "md", boxShadow: boxShadow, zIndex: 1000, position: "sticky", children: [_jsxs(Flex, { h: HEADER_HEIGHT, align: "center", mx: "auto", justifyContent: "flex-start", children: [_jsxs(HStack, { spacing: 6, align: "center", children: [_jsx(Box, { cursor: "pointer", children: logo }), _jsx(DesktopMenu, { menuItems: menuItems, rightSlot: rightSlotWithApi, setHoveredMenu: setHoveredMenu, isActive: isActive, activeBg: activeBg, hoveredMenu: hoveredMenu, hoverBg: hoverBg, color: color, hoverTextColor: hoverText })] }), _jsx(Spacer, {}), _jsxs(HStack, { spacing: 3, align: "center", children: [_jsx(HStack, { spacing: 4, display: { base: "none", md: "flex" }, children: rightSlotWithApi }), _jsx(HStack, { spacing: 2, display: { base: "flex", md: "none" }, children: rightSlotWithApi }), _jsx(IconButton, { variant: "unstyled", icon: _jsx(Box, { display: "flex", alignItems: "center", justifyContent: "center", w: "full", h: "full", children: isOpen ? _jsx(X, { size: 20 }) : _jsx(MenuIcon, { size: 20 }) }), "aria-label": "Toggle Menu", display: { md: "none" }, onClick: isOpen ? closeMobileMenu : onOpen })] })] }), _jsx(MobileMenu, { menuItems: menuItems, isOpen: isOpen, isActive: isActive, hoverBg: hoverBg, activeBg: activeBg, color: color, rightSlot: rightSlotWithApi, onClose: closeMobileMenu })] }));
39
+ return (_jsxs(Box, { bg: bg, color: color, px: 4, shadow: "md", boxShadow: boxShadow, zIndex: "sticky", position: "sticky", top: 0, children: [_jsxs(Flex, { h: HEADER_HEIGHT, align: "center", mx: "auto", justifyContent: "flex-start", children: [_jsxs(HStack, { spacing: 6, align: "center", children: [_jsx(Box, { cursor: "pointer", children: logo }), _jsx(DesktopMenu, { menuItems: menuItems, rightSlot: rightSlotWithApi, setHoveredMenu: setHoveredMenu, isActive: isActive, activeBg: activeBg, hoveredMenu: hoveredMenu, hoverBg: hoverBg, color: color, hoverTextColor: hoverText, surface: bg })] }), _jsx(Spacer, {}), _jsxs(HStack, { spacing: 3, align: "center", children: [_jsx(HStack, { spacing: { base: 2, md: 4 }, children: rightSlotWithApi }), _jsx(IconButton, { variant: "unstyled", icon: _jsx(Box, { display: "flex", alignItems: "center", justifyContent: "center", w: "full", h: "full", children: isOpen ? _jsx(X, { size: 20 }) : _jsx(MenuIcon, { size: 20 }) }), "aria-label": "Toggle Menu", display: { md: "none" }, onClick: isOpen ? closeMobileMenu : onOpen })] })] }), _jsx(MobileMenu, { menuItems: menuItems, isOpen: isOpen, isActive: isActive, hoverBg: hoverBg, activeBg: activeBg, color: color, surface: bg, onClose: closeMobileMenu })] }));
54
40
  };
55
41
  export default Header;
@@ -8,20 +8,20 @@ import { AA_NON_TEXT, liftToContrast } from "../../Theme/tokens/builders/outline
8
8
  import Select from "../Select/Select.js";
9
9
  import VeritcalDivider from "../Divider/Divider.js";
10
10
  const HeaderActions = ({ select, edit, create, surface, }) => {
11
- var _a, _b;
11
+ var _a, _b, _c;
12
12
  const { colors } = useCustomTheme();
13
13
  const canvas = surface !== null && surface !== void 0 ? surface : colors.backgroundColor.main;
14
14
  const ink = liftToContrast(colors.secondary[500], canvas, AA_NORMAL_TEXT);
15
15
  const iconInk = liftToContrast(colors.secondary[500], canvas, AA_NON_TEXT);
16
16
  const elements = [];
17
17
  if (select === null || select === void 0 ? void 0 : select.isSelect) {
18
- elements.push(_jsx(Box, { width: (_a = select.width) !== null && _a !== void 0 ? _a : "12.5rem", children: _jsx(Select, { options: (_b = select.options) !== null && _b !== void 0 ? _b : [], placeholder: select.selectPlaceholderText, onChange: (option) => { var _a; return (_a = select.onSelectChange) === null || _a === void 0 ? void 0 : _a.call(select, option); }, value: select.value }, "select") }, "select"));
18
+ elements.push(_jsx(Box, { width: (_a = select.width) !== null && _a !== void 0 ? _a : "12.5rem", children: _jsx(Select, { options: (_b = select.options) !== null && _b !== void 0 ? _b : [], placeholder: select.selectPlaceholderText, "aria-label": select.ariaLabel || select.selectPlaceholderText || "Select", native: (_c = select.native) !== null && _c !== void 0 ? _c : false, onChange: (option) => { var _a; return (_a = select.onSelectChange) === null || _a === void 0 ? void 0 : _a.call(select, option); }, value: select.value }, "select") }, "select"));
19
19
  }
20
20
  if (edit === null || edit === void 0 ? void 0 : edit.isEditable) {
21
- elements.push(_jsxs(Box, { display: "flex", alignItems: "center", gap: "0.375rem", cursor: "pointer", fontSize: 14, onClick: () => { var _a; return (_a = edit.onEdit) === null || _a === void 0 ? void 0 : _a.call(edit); }, children: [_jsx(SquarePen, { size: 16, color: iconInk }), _jsx(Text, { color: ink, children: edit.label ? edit.label : "Edit Layout" })] }, "edit"));
21
+ elements.push(_jsxs(Box, { as: "button", type: "button", bg: "transparent", borderRadius: "lg", _focusVisible: { boxShadow: `0 0 0 2px ${iconInk}`, outline: "none" }, display: "flex", alignItems: "center", gap: "0.375rem", cursor: "pointer", fontSize: 14, onClick: () => { var _a; return (_a = edit.onEdit) === null || _a === void 0 ? void 0 : _a.call(edit); }, children: [_jsx(SquarePen, { size: 16, color: iconInk }), _jsx(Text, { color: ink, children: edit.label ? edit.label : "Edit Layout" })] }, "edit"));
22
22
  }
23
23
  if (create === null || create === void 0 ? void 0 : create.isCreatable) {
24
- elements.push(_jsxs(Box, { display: "flex", alignItems: "center", gap: "0.375rem", cursor: "pointer", fontSize: 14, onClick: () => { var _a; return (_a = create.onCreate) === null || _a === void 0 ? void 0 : _a.call(create); }, children: [_jsx(CirclePlus, { size: 16, color: iconInk }), _jsxs(Text, { color: ink, children: [" ", create.label ? create.label : "Create New", " "] })] }, "create"));
24
+ elements.push(_jsxs(Box, { as: "button", type: "button", bg: "transparent", borderRadius: "lg", _focusVisible: { boxShadow: `0 0 0 2px ${iconInk}`, outline: "none" }, display: "flex", alignItems: "center", gap: "0.375rem", cursor: "pointer", fontSize: 14, onClick: () => { var _a; return (_a = create.onCreate) === null || _a === void 0 ? void 0 : _a.call(create); }, children: [_jsx(CirclePlus, { size: 16, color: iconInk }), _jsxs(Text, { color: ink, children: [" ", create.label ? create.label : "Create New", " "] })] }, "create"));
25
25
  }
26
26
  return (_jsx(Box, { display: "flex", alignItems: "center", gap: "0.625rem", children: elements.map((el, i) => (_jsxs(React.Fragment, { children: [i > 0 && _jsx(VeritcalDivider, {}), el] }, i))) }));
27
27
  };
@@ -3,24 +3,23 @@ import { Box, HStack, Stack, Button, Badge, Text, VStack, Collapse, } from "@cha
3
3
  import { ChevronDown } from "lucide-react";
4
4
  import { useCustomTheme } from "../../../Theme/useCustomTheme.js";
5
5
  import { onFilled } from "../../../Theme/tokens/builders/accentText.js";
6
- const DesktopMenu = ({ menuItems, rightSlot, setHoveredMenu, isActive, activeBg, hoveredMenu, hoverBg, color, hoverTextColor }) => {
6
+ import { resolveSoftTone } from "../../../Theme/tokens/builders/tone.js";
7
+ import { scaleFor } from "../../../Theme/chakra/paletteFromTheme.js";
8
+ const DesktopMenu = ({ menuItems, rightSlot, setHoveredMenu, isActive, activeBg, hoveredMenu, hoverBg, color, hoverTextColor, surface, }) => {
7
9
  const { colors } = useCustomTheme();
10
+ const badgeTone = (scheme) => resolveSoftTone(colors, scaleFor(colors, scheme !== null && scheme !== void 0 ? scheme : "blue"), surface);
8
11
  return (_jsx(HStack, { spacing: 6, align: "center", display: { base: "none", md: "flex" }, mx: rightSlot ? "auto" : 0, wrap: "wrap", padding: "0.5rem 1.5rem", children: menuItems.map((item) => {
9
- var _a, _b, _c, _d;
12
+ var _a, _b;
10
13
  const hasChildren = !!item.children;
11
14
  const isHovered = hoveredMenu === item.label;
12
15
  return (_jsxs(Box, { position: "relative", onMouseEnter: () => hasChildren && setHoveredMenu(item.label), onMouseLeave: () => hasChildren && setHoveredMenu(null), children: [_jsx(Button, { variant: "ghost", onClick: item.onClick, rightIcon: hasChildren ? _jsx(ChevronDown, { size: 14 }) : undefined,
13
16
  // `activeBg` is the rail's 3:1 non-text accent; label ink stays on `color`.
14
- borderBottom: `2px solid ${isActive(item.href) ? activeBg : "transparent"}`, borderRadius: 0, _hover: { bg: hoverBg, color: hoverTextColor }, color: color, children: _jsxs(VStack, { spacing: 0, children: [item.badge && (_jsx(Badge, { colorScheme: (_b = (_a = item === null || item === void 0 ? void 0 : item.badge) === null || _a === void 0 ? void 0 : _a.colorScheme) !== null && _b !== void 0 ? _b : "blue", variant: "subtle", fontSize: "0.65em", borderRadius: "md", boxShadow: "sm", px: 2, py: 0.5, children: (_c = item.badge) === null || _c === void 0 ? void 0 : _c.label })), _jsx(Text, { children: item.label })] }) }), hasChildren && (_jsx(Collapse, { in: isHovered, animateOpacity: true, children: _jsx(Box, { position: "absolute", top: "100%", bg: colors.background[50], color: colors.text[900], rounded: "md", shadow: "md", minW: "10rem", zIndex: 10, children: _jsx(Stack, { spacing: 1, p: 2, children: (_d = item.children) === null || _d === void 0 ? void 0 : _d.map((subItem) => {
15
- var _a, _b, _c;
16
- return (_jsx(Button, { onClick: subItem.onClick, variant: "ghost", justifyContent: "flex-start", w: "full", bg: isActive(subItem.href) ? activeBg : "transparent", _hover: { bg: hoverBg, color: hoverTextColor }, children: _jsxs(VStack, { spacing: 0, align: "start", children: [subItem.badge && (_jsx(Badge, { colorScheme: (_b = (_a = subItem === null || subItem === void 0 ? void 0 : subItem.badge) === null || _a === void 0 ? void 0 : _a.colorScheme) !== null && _b !== void 0 ? _b : "blue", variant: "subtle", fontSize: "0.65em", alignItems: "end", borderRadius: "md", boxShadow: "sm", px: 2, py: 0.5, children: (_c = subItem.badge) === null || _c === void 0 ? void 0 : _c.label })), _jsx(Text
17
- // text[800] is tuned for the background[50] canvas, not the activeBg
18
- // fill this row switches to — onFilled picks whichever of white/black
19
- // actually clears AA against that fill instead.
17
+ borderBottom: `2px solid ${isActive(item.href) ? activeBg : "transparent"}`, borderRadius: 0, _hover: { bg: hoverBg, color: hoverTextColor }, color: color, children: _jsxs(VStack, { spacing: 0, children: [item.badge && (_jsx(Badge, { bg: badgeTone(item.badge.colorScheme).bg, color: badgeTone(item.badge.colorScheme).fg, variant: "subtle", fontSize: "0.65em", borderRadius: "full", boxShadow: "sm", px: 2, py: 0.5, children: (_a = item.badge) === null || _a === void 0 ? void 0 : _a.label })), _jsx(Text, { children: item.label })] }) }), hasChildren && (_jsx(Collapse, { in: isHovered, animateOpacity: true, children: _jsx(Box, { position: "absolute", top: "100%", bg: colors.surfaceRaised, color: colors.text[900], rounded: "xl", shadow: "md", minW: "10rem", zIndex: 10, children: _jsx(Stack, { spacing: 1, p: 2, children: (_b = item.children) === null || _b === void 0 ? void 0 : _b.map((subItem) => {
18
+ var _a;
19
+ return (_jsx(Button, { onClick: subItem.onClick, variant: "ghost", justifyContent: "flex-start", w: "full", bg: isActive(subItem.href) ? activeBg : "transparent", _hover: { bg: hoverBg, color: hoverTextColor }, children: _jsxs(VStack, { spacing: 0, align: "start", children: [subItem.badge && (_jsx(Badge, { bg: badgeTone(subItem.badge.colorScheme).bg, color: badgeTone(subItem.badge.colorScheme).fg, variant: "subtle", fontSize: "0.65em", alignItems: "end", borderRadius: "full", boxShadow: "sm", px: 2, py: 0.5, children: (_a = subItem.badge) === null || _a === void 0 ? void 0 : _a.label })), _jsx(Text
20
+ // NOTE: text[800] is tuned for background[50], not activeBg — onFilled picks a clearing ink instead.
20
21
  , {
21
- // text[800] is tuned for the background[50] canvas, not the activeBg
22
- // fill this row switches to — onFilled picks whichever of white/black
23
- // actually clears AA against that fill instead.
22
+ // NOTE: text[800] is tuned for background[50], not activeBg — onFilled picks a clearing ink instead.
24
23
  color: isActive(subItem.href)
25
24
  ? onFilled(activeBg, colors.white, colors.black)
26
25
  : colors.text[800], _hover: { color: hoverTextColor }, children: subItem.label })] }) }, subItem.label));
@@ -4,31 +4,34 @@ import React from "react";
4
4
  import { ChevronDown, ChevronRight } from "lucide-react";
5
5
  import { useCustomTheme } from "../../../Theme/useCustomTheme.js";
6
6
  import { onFilled } from "../../../Theme/tokens/builders/accentText.js";
7
- const MobileMenu = ({ menuItems, isOpen, isActive, hoverBg, activeBg, color, rightSlot, onClose, }) => {
7
+ import { resolveSoftTone } from "../../../Theme/tokens/builders/tone.js";
8
+ import { scaleFor } from "../../../Theme/chakra/paletteFromTheme.js";
9
+ const MobileMenu = ({ menuItems, isOpen, isActive, hoverBg, activeBg, color, surface, onClose, }) => {
8
10
  const { colors } = useCustomTheme();
11
+ const badgeTone = (scheme) => resolveSoftTone(colors, scaleFor(colors, scheme !== null && scheme !== void 0 ? scheme : "blue"), surface);
9
12
  const [openMenuLabel, setOpenMenuLabel] = React.useState(null);
10
13
  React.useEffect(() => {
11
14
  if (!isOpen)
12
15
  setOpenMenuLabel(null);
13
16
  }, [isOpen]);
14
- return (_jsx(Collapse, { in: isOpen, animateOpacity: true, children: _jsx(Box, { pb: 4, display: { md: "none" }, children: _jsxs(Stack, { spacing: 4, children: [menuItems.map((item) => {
15
- var _a, _b, _c, _d, _e;
16
- return item.children ? (_jsxs(Box, { px: 2, children: [_jsx(Button, { onClick: () => setOpenMenuLabel((prev) => (prev === item.label ? null : item.label)), variant: "ghost", w: "full", justifyContent: "flex-start", color: item.children.some((subItem) => isActive(subItem.href))
17
- ? onFilled(activeBg, colors.white, colors.black)
18
- : color, bg: item.children.some((subItem) => isActive(subItem.href))
19
- ? activeBg
20
- : "transparent", _hover: { bg: hoverBg }, rightIcon: openMenuLabel === item.label ? (_jsx(ChevronDown, { size: 16 })) : (_jsx(ChevronRight, { size: 16 })), px: 2, children: _jsx(HStack, { w: "full", justify: "space-between", align: "center", children: _jsxs(VStack, { spacing: 0, align: "start", children: [item.badge && (_jsx(Badge, { colorScheme: (_b = (_a = item === null || item === void 0 ? void 0 : item.badge) === null || _a === void 0 ? void 0 : _a.colorScheme) !== null && _b !== void 0 ? _b : "blue", variant: "subtle", fontSize: "0.65em", borderRadius: "md", boxShadow: "sm", px: 2, py: 0.5, children: item.badge.label })), _jsx(Text, { fontWeight: "bold", children: item.label })] }) }) }), _jsx(Collapse, { in: openMenuLabel === item.label, animateOpacity: true, children: _jsx(Stack, { pl: 4, mt: 1, spacing: 1, children: item.children.map((subItem) => {
21
- var _a, _b, _c;
22
- return (_jsx(Button, { onClick: () => {
23
- var _a;
24
- (_a = subItem.onClick) === null || _a === void 0 ? void 0 : _a.call(subItem);
25
- onClose === null || onClose === void 0 ? void 0 : onClose();
26
- }, variant: "ghost", w: "full", justifyContent: "flex-start", color: isActive(subItem.href)
27
- ? onFilled(activeBg, colors.white, colors.black)
28
- : color, bg: isActive(subItem.href) ? activeBg : "transparent", _hover: { bg: hoverBg }, children: _jsxs(VStack, { spacing: 0, align: "start", children: [subItem.badge && (_jsx(Badge, { colorScheme: (_b = (_a = subItem === null || subItem === void 0 ? void 0 : subItem.badge) === null || _a === void 0 ? void 0 : _a.colorScheme) !== null && _b !== void 0 ? _b : "blue", variant: "subtle", fontSize: "0.65em", borderRadius: "md", boxShadow: "sm", px: 2, py: 0.5, children: (_c = subItem.badge) === null || _c === void 0 ? void 0 : _c.label })), _jsxs(HStack, { spacing: 2, align: "center", children: [_jsx(Box, { boxSize: "0.4rem", borderRadius: "full", bg: "currentColor" }), _jsx(Text, { fontSize: "sm", children: subItem.label })] })] }) }, subItem.label));
29
- }) }) })] }, item.label)) : (_jsx(Button, { onClick: () => { var _a; (_a = item.onClick) === null || _a === void 0 ? void 0 : _a.call(item); onClose === null || onClose === void 0 ? void 0 : onClose(); }, variant: "ghost", w: "full", justifyContent: "flex-start", color: isActive(item.href)
30
- ? onFilled(activeBg, colors.white, colors.black)
31
- : color, bg: isActive(item.href) ? activeBg : "transparent", _hover: { bg: hoverBg }, children: _jsxs(VStack, { spacing: 0, align: "start", children: [item.badge && (_jsx(Badge, { colorScheme: (_d = (_c = item === null || item === void 0 ? void 0 : item.badge) === null || _c === void 0 ? void 0 : _c.colorScheme) !== null && _d !== void 0 ? _d : "blue", variant: "subtle", fontSize: "0.65em", borderRadius: "md", boxShadow: "sm", px: 2, py: 0.5, children: (_e = item.badge) === null || _e === void 0 ? void 0 : _e.label })), _jsx(Text, { children: item.label })] }) }, item.label));
32
- }), rightSlot && _jsx(Box, { mt: 4, children: rightSlot })] }) }) }));
17
+ return (_jsx(Collapse, { in: isOpen, animateOpacity: true, children: _jsx(Box, { pb: 4, display: { md: "none" }, children: _jsx(Stack, { spacing: 4, children: menuItems.map((item) => {
18
+ var _a;
19
+ return item.children ? (_jsxs(Box, { px: 2, children: [_jsx(Button, { onClick: () => setOpenMenuLabel((prev) => (prev === item.label ? null : item.label)), variant: "ghost", w: "full", justifyContent: "flex-start", color: item.children.some((subItem) => isActive(subItem.href))
20
+ ? onFilled(activeBg, colors.white, colors.black)
21
+ : color, bg: item.children.some((subItem) => isActive(subItem.href))
22
+ ? activeBg
23
+ : "transparent", _hover: { bg: hoverBg }, rightIcon: openMenuLabel === item.label ? (_jsx(ChevronDown, { size: 16 })) : (_jsx(ChevronRight, { size: 16 })), px: 2, children: _jsx(HStack, { w: "full", justify: "space-between", align: "center", children: _jsxs(VStack, { spacing: 0, align: "start", children: [item.badge && (_jsx(Badge, { bg: badgeTone(item.badge.colorScheme).bg, color: badgeTone(item.badge.colorScheme).fg, variant: "subtle", fontSize: "0.65em", borderRadius: "full", boxShadow: "sm", px: 2, py: 0.5, children: item.badge.label })), _jsx(Text, { fontWeight: "bold", children: item.label })] }) }) }), _jsx(Collapse, { in: openMenuLabel === item.label, animateOpacity: true, children: _jsx(Stack, { pl: 4, mt: 1, spacing: 1, children: item.children.map((subItem) => {
24
+ var _a;
25
+ return (_jsx(Button, { onClick: () => {
26
+ var _a;
27
+ (_a = subItem.onClick) === null || _a === void 0 ? void 0 : _a.call(subItem);
28
+ onClose === null || onClose === void 0 ? void 0 : onClose();
29
+ }, variant: "ghost", w: "full", justifyContent: "flex-start", color: isActive(subItem.href)
30
+ ? onFilled(activeBg, colors.white, colors.black)
31
+ : color, bg: isActive(subItem.href) ? activeBg : "transparent", _hover: { bg: hoverBg }, children: _jsxs(VStack, { spacing: 0, align: "start", children: [subItem.badge && (_jsx(Badge, { bg: badgeTone(subItem.badge.colorScheme).bg, color: badgeTone(subItem.badge.colorScheme).fg, variant: "subtle", fontSize: "0.65em", borderRadius: "full", boxShadow: "sm", px: 2, py: 0.5, children: (_a = subItem.badge) === null || _a === void 0 ? void 0 : _a.label })), _jsxs(HStack, { spacing: 2, align: "center", children: [_jsx(Box, { boxSize: "0.4rem", borderRadius: "full", bg: "currentColor" }), _jsx(Text, { fontSize: "sm", children: subItem.label })] })] }) }, subItem.label));
32
+ }) }) })] }, item.label)) : (_jsx(Button, { onClick: () => { var _a; (_a = item.onClick) === null || _a === void 0 ? void 0 : _a.call(item); onClose === null || onClose === void 0 ? void 0 : onClose(); }, variant: "ghost", w: "full", justifyContent: "flex-start", color: isActive(item.href)
33
+ ? onFilled(activeBg, colors.white, colors.black)
34
+ : color, bg: isActive(item.href) ? activeBg : "transparent", _hover: { bg: hoverBg }, children: _jsxs(VStack, { spacing: 0, align: "start", children: [item.badge && (_jsx(Badge, { bg: badgeTone(item.badge.colorScheme).bg, color: badgeTone(item.badge.colorScheme).fg, variant: "subtle", fontSize: "0.65em", borderRadius: "full", boxShadow: "sm", px: 2, py: 0.5, children: (_a = item.badge) === null || _a === void 0 ? void 0 : _a.label })), _jsx(Text, { children: item.label })] }) }, item.label));
35
+ }) }) }) }));
33
36
  };
34
37
  export default MobileMenu;
@@ -7,7 +7,8 @@ import { FIELD_RADIUS } from "../../Common/fieldStyles.js";
7
7
  import ErrorComponent from "../../Common/ErrorComponent.js";
8
8
  import { accentTextOnCanvas } from "../../../Theme/tokens/builders/accentText.js";
9
9
  import { useCustomTheme } from "../../../Theme/useCustomTheme.js";
10
- const Input = ({ label, type, value, onChange, error, placeholder, className, inputBoxClassName, isRequired, isInformation, informationMessage, }) => {
10
+ const Input = ({ label, type, value, onChange, error, placeholder, className, inputBoxClassName, isRequired, isInformation, informationMessage, isDisabled, disabled, }) => {
11
+ const isFieldDisabled = isDisabled !== null && isDisabled !== void 0 ? isDisabled : disabled;
11
12
  const { colors } = useCustomTheme();
12
13
  const [showPassword, setShowPassword] = useState(false);
13
14
  const isPassword = type === "password";
@@ -19,7 +20,7 @@ const Input = ({ label, type, value, onChange, error, placeholder, className, in
19
20
  : colors.boxborder[500];
20
21
  const shadowPrimary = colors.boxShadow.primary;
21
22
  const shadowError = colors.boxShadow.error;
22
- return (_jsxs(Box, { className: inputBoxClassName, mb: 4, children: [_jsx(TextLabel, { label: label, isRequired: isRequired, isInformation: isInformation, informationMessage: informationMessage }), _jsxs(Box, { position: "relative", w: "100%", overflow: "hidden", children: [_jsx(ChakraInput, { type: inputType, value: value, onChange: (e) => onChange(e.target.value), placeholder: placeholder, className: className, px: 4, py: 2, borderRadius: FIELD_RADIUS, borderWidth: "1px", borderColor: borderColor, color: accentTextOnCanvas(colors.secondary, colors.backgroundColor.main), pr: isPassword ? 10 : 4, _hover: {
23
+ return (_jsxs(Box, { className: inputBoxClassName, mb: 4, children: [_jsx(TextLabel, { label: label, isRequired: isRequired, isInformation: isInformation, informationMessage: informationMessage }), _jsxs(Box, { position: "relative", w: "100%", overflow: "hidden", children: [_jsx(ChakraInput, { type: inputType, value: value, onChange: (e) => onChange(e.target.value), placeholder: placeholder, className: className, px: 4, py: 2, borderRadius: FIELD_RADIUS, borderWidth: "1px", borderColor: borderColor, color: accentTextOnCanvas(colors.secondary, colors.backgroundColor.main), pr: isPassword ? 10 : 4, isDisabled: isFieldDisabled, _hover: {
23
24
  borderColor: error
24
25
  ? colors.semantic.error[600]
25
26
  : value
@@ -1,9 +1,10 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useState, useEffect, useCallback } from "react";
2
+ import { useState, useEffect, useCallback, forwardRef } from "react";
3
3
  import { Box, Flex, Icon, Input, Select, InputGroup, InputLeftElement, FormControl, } from "@chakra-ui/react";
4
4
  import ErrorMessage from "../Common/ErrorMessage.js";
5
5
  import HelperText from "../Common/HelperText.js";
6
6
  import { TextLabel } from "../Common/FormLabel.js";
7
+ import { useFieldIds } from "../Common/useFieldIds.js";
7
8
  import { useCustomTheme } from "../../Theme/useCustomTheme.js";
8
9
  const getFlagEmoji = (countryCode) => {
9
10
  if (!countryCode)
@@ -14,9 +15,10 @@ const getFlagEmoji = (countryCode) => {
14
15
  };
15
16
  const sizeToPt = { xs: 2, sm: -1, md: 2, lg: 4 };
16
17
  const sizeToWidth = { xs: "3.5rem", sm: "3.8rem", md: "4rem", lg: "4rem" };
17
- /** Country-code-aware phone field with a flag/dial-code prefix; its `ref` prop never attaches — this is a plain function component, not `forwardRef`. */
18
- const PhoneNumberInput = ({ size = "md", value, codeValueReturn = true, country, countries, placeholder = "Enter phone number", onChange, inputId, selectId, error, errorMessage, helperText, label, id, width = "100%", isInformation, informationMessage, isRequired, onBlur, onFocus, isReadOnly, height, autoComplete, showCountrySelect = true, ref, name, minW, maxW, ...rest }) => {
18
+ /** Country-code-aware phone field with a flag/dial-code prefix; `ref` forwards to the number `<input>`. */
19
+ const PhoneNumberInput = forwardRef(function PhoneNumberInput({ size = "md", value, codeValueReturn = true, country, countries, placeholder = "Enter phone number", onChange, inputId, selectId, error, errorMessage, helperText, label, id, width = "100%", isInformation, informationMessage, isRequired, onBlur, onFocus, isReadOnly, height, autoComplete, showCountrySelect = true, name, minW, maxW, countrySelectAriaLabel = "Country code", ...rest }, ref) {
19
20
  const theme = useCustomTheme();
21
+ const ids = useFieldIds(inputId !== null && inputId !== void 0 ? inputId : id, { error, errorMessage, helperText });
20
22
  const getCountryTelCode = useCallback((countryCode) => {
21
23
  var _a;
22
24
  if (!countryCode)
@@ -58,6 +60,7 @@ const PhoneNumberInput = ({ size = "md", value, codeValueReturn = true, country,
58
60
  return;
59
61
  }
60
62
  };
61
- return (_jsxs(FormControl, { w: width, minW: minW, maxW: maxW, children: [label && (_jsx(TextLabel, { label: label, id: id, isInformation: isInformation, informationMessage: informationMessage, isRequired: isRequired })), _jsxs(InputGroup, { size: size, ...rest, children: [_jsxs(InputLeftElement, { width: showCountrySelect ? "3rem" : "2rem", height: "100%", children: [showCountrySelect && _jsx(_Fragment, { children: _jsxs(Select, { position: "absolute", top: "0", left: "0", height: "100%", id: selectId, width: sizeToWidth[size], opacity: 0, zIndex: 1, value: selectedCountry, onChange: handleCountryChange, size: size, pt: sizeToPt[size], iconColor: theme.colors.gray[500], children: [_jsx("option", { value: "", children: "Select Country" }), countries.map((option) => (_jsx("option", { value: option.code, children: option.country }, option.code)))] }) }), _jsx(Flex, { pl: 2, width: "100%", alignItems: "center", justifyContent: "space-between", children: selectedCountry ? (_jsx(Box, { fontSize: "1.2rem", children: getFlagEmoji(selectedCountry) })) : (_jsx(Icon, { viewBox: "0 0 24 24", boxSize: "1rem", children: _jsx("path", { fill: "currentColor", d: "M6.62,10.79C8.06,13.62 10.38,15.94 13.21,17.38L15.41,15.18C15.79,14.8 16.33,14.67 16.8,14.82C18.17,15.27 19.65,15.5 21,15.5C21.55,15.5 22,15.95 22,16.5V20C22,20.55 21.55,21 21,21C10.61,21 3,13.39 3,3C3,2.45 3.45,2 4,2H7.5C8.05,2 8.5,2.45 8.5,3C8.5,4.35 8.73,5.83 9.18,7.2C9.33,7.67 9.2,8.21 8.82,8.59L6.62,10.79Z" }) })) })] }), _jsx(Input, { type: "tel", pl: showCountrySelect ? "4rem" : "2rem", value: number, id: inputId, onChange: handleNumberChange, onBlur: onBlur, onFocus: onFocus, isReadOnly: isReadOnly, name: name, size: size, height: height, ref: ref, autoComplete: autoComplete, placeholder: placeholder, disabled: !selectedCountry, isInvalid: error })] }), error && _jsx(ErrorMessage, { errorMessage: errorMessage }), helperText && !error && _jsx(HelperText, { helperText: helperText })] }));
62
- };
63
+ return (_jsxs(FormControl, { w: width, minW: minW, maxW: maxW, children: [label && (_jsx(TextLabel, { label: label, id: ids.inputId, isInformation: isInformation, informationMessage: informationMessage, isRequired: isRequired })), _jsxs(InputGroup, { size: size, ...rest, children: [_jsxs(InputLeftElement, { width: showCountrySelect ? "3rem" : "2rem", height: "100%", children: [showCountrySelect && _jsx(_Fragment, { children: _jsxs(Select, { position: "absolute", top: "0", left: "0", height: "100%", id: selectId, "aria-label": countrySelectAriaLabel, width: sizeToWidth[size], opacity: 0, zIndex: 1, value: selectedCountry, onChange: handleCountryChange, size: size, pt: sizeToPt[size], iconColor: theme.colors.gray[500], children: [_jsx("option", { value: "", children: "Select Country" }), countries.map((option) => (_jsx("option", { value: option.code, children: option.country }, option.code)))] }) }), _jsx(Flex, { pl: 2, width: "100%", alignItems: "center", justifyContent: "space-between", children: selectedCountry ? (_jsx(Box, { fontSize: "1.2rem", children: getFlagEmoji(selectedCountry) })) : (_jsx(Icon, { viewBox: "0 0 24 24", boxSize: "1rem", children: _jsx("path", { fill: "currentColor", d: "M6.62,10.79C8.06,13.62 10.38,15.94 13.21,17.38L15.41,15.18C15.79,14.8 16.33,14.67 16.8,14.82C18.17,15.27 19.65,15.5 21,15.5C21.55,15.5 22,15.95 22,16.5V20C22,20.55 21.55,21 21,21C10.61,21 3,13.39 3,3C3,2.45 3.45,2 4,2H7.5C8.05,2 8.5,2.45 8.5,3C8.5,4.35 8.73,5.83 9.18,7.2C9.33,7.67 9.2,8.21 8.82,8.59L6.62,10.79Z" }) })) })] }), _jsx(Input, { type: "tel", pl: showCountrySelect ? "4rem" : "2rem", value: number, id: ids.inputId, "aria-describedby": ids.describedBy, onChange: handleNumberChange, onBlur: onBlur, onFocus: onFocus, isReadOnly: isReadOnly, name: name, size: size, height: height, ref: ref, autoComplete: autoComplete, placeholder: placeholder, disabled: !selectedCountry, isInvalid: error })] }), error && errorMessage && _jsx(ErrorMessage, { errorMessage: errorMessage, id: ids.errorId }), helperText && !error && _jsx(HelperText, { helperText: helperText, id: ids.helperId })] }));
64
+ });
65
+ PhoneNumberInput.displayName = "PhoneNumberInput";
63
66
  export default PhoneNumberInput;
@@ -1,22 +1,17 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Switch, FormControl, FormLabel, HStack, Box, } from "@chakra-ui/react";
3
- import { TextLabel } from "../../Common/FormLabel.js";
4
- import { useCustomTheme } from "../../../Theme/useCustomTheme.js";
5
- /** Themed Chakra `Switch` wrapper; a caller-supplied `sx` replaces (not merges with) the built-in checked/unchecked track color. */
6
- export const InputSwitch = ({ switchText, switchTextPosition = "right", id, isChecked, label, isInformation, informationMessage, isRequired, size = "md", ...props }) => {
7
- const theme = useCustomTheme();
8
- // Read the palette directly — it is already swapped for the active mode, so pairing the rungs
9
- // through useColorModeValue would adapt twice and pick the wrong rung on the dark canvas.
10
- const activeColor = theme.colors.primary[500];
11
- const inactiveColor = theme.colors.gray[300];
12
- const sizeStyles = {
13
- sm: { fontSize: "sm", spacing: 1 },
14
- md: { fontSize: "md", spacing: 2 },
15
- lg: { fontSize: "lg", spacing: 3 },
16
- };
17
- return (_jsxs(FormControl, { children: [label && (_jsx(TextLabel, { label: label, id: id, isInformation: isInformation, informationMessage: informationMessage, isRequired: isRequired })), _jsx(Box, { display: "flex", alignItems: "center", flexGrow: 1, children: _jsxs(HStack, { spacing: sizeStyles[size].spacing, children: [switchText && switchTextPosition === "left" && (_jsx(FormLabel, { mb: "0", htmlFor: id, fontSize: sizeStyles[size].fontSize, cursor: "pointer", children: switchText })), _jsx(Switch, { id: id, size: size, isChecked: isChecked, colorScheme: "blue", sx: {
18
- "span.chakra-switch__track": {
19
- bg: isChecked ? activeColor : inactiveColor,
20
- },
21
- }, ...props }), switchText && switchTextPosition === "right" && (_jsx(FormLabel, { mb: "0", htmlFor: id, fontSize: sizeStyles[size].fontSize, cursor: "pointer", children: switchText }))] }) })] }));
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Box } from "@chakra-ui/react";
3
+ import ToggleSwitch from "../../ToggleSwitch/ToggleSwitch.js";
4
+ /** @deprecated Use `ToggleSwitch` with `label`/`fieldLabel`/`helperText`/`error` — this is a thin wrapper around it. */
5
+ export const InputSwitch = ({ switchText, switchTextPosition = "right", id, isChecked, defaultChecked, label, isInformation, informationMessage, isRequired, size = "md", isDisabled, isReadOnly, isInvalid, helperText, errorMessage, name, value, onChange, onFocus, onBlur, colorScheme, variant, spacing, isFocusable, "aria-label": ariaLabel, "aria-describedby": ariaDescribedBy, ...layout }) => {
6
+ void variant;
7
+ void spacing;
8
+ void isFocusable;
9
+ // NOTE: unreachable when a real caller names it; matches the pre-existing accessibility gap.
10
+ const naming = typeof switchText === "string"
11
+ ? { label: switchText, fieldLabel: label }
12
+ : typeof ariaLabel === "string"
13
+ ? { "aria-label": ariaLabel, fieldLabel: label }
14
+ : { fieldLabel: label };
15
+ const handleChange = (_checked, event) => onChange === null || onChange === void 0 ? void 0 : onChange(event);
16
+ return (_jsx(Box, { ...layout, children: _jsx(ToggleSwitch, { ...naming, id: id, isChecked: isChecked, defaultChecked: defaultChecked, onChange: handleChange, size: size, labelPosition: switchTextPosition === "left" ? "start" : "end", isDisabled: isDisabled, isReadOnly: isReadOnly, isRequired: isRequired, isInformation: isInformation, informationMessage: informationMessage, colorScheme: colorScheme, error: isInvalid, errorMessage: errorMessage, helperText: helperText, name: name, value: value === undefined ? undefined : String(value), onFocus: onFocus, onBlur: onBlur, "aria-describedby": ariaDescribedBy }) }));
22
17
  };
@@ -1,17 +1,90 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import React, { forwardRef } from "react";
3
- import { Box, FormControl, Input, InputGroup, InputLeftElement, InputRightElement, } from "@chakra-ui/react";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import React, { forwardRef, useRef, useState } from "react";
3
+ import { Box, Flex, FormControl, Input, InputGroup, InputLeftAddon, InputLeftElement, InputRightAddon, InputRightElement, Spinner, Text, useFormControlContext, useMergeRefs, } from "@chakra-ui/react";
4
+ import { Eye, EyeOff, X } from "lucide-react";
4
5
  import { getTextInputIconWrapperSx } from "./textInputIconSize.js";
6
+ import { useAriaRequired } from "./useAriaRequired.js";
7
+ import { fieldAddonSx } from "./TextInput.styles.js";
5
8
  import { TextLabel } from "../Common/FormLabel.js";
6
- import HelperText from "../Common/HelperText.js";
7
- import ErrorMessage from "../Common/ErrorMessage.js";
9
+ import FieldMessage from "../Common/FieldMessage.js";
10
+ import { useFieldIds } from "../Common/useFieldIds.js";
11
+ import { fieldMessageStyles, fieldMessageVisibility } from "../Common/fieldMessageStyles.js";
8
12
  import { useCustomTheme } from "../../Theme/useCustomTheme.js";
9
- /** Standard labelled text field — error/helper text, left/right icons; `isRequired` only draws the label asterisk, it isn't native HTML validation. */
10
- const TextInput = forwardRef(({ label, type = "text", id, name, onChange, onBlur, onFocus, isDisabled = false, isReadOnly = false, isRequired = false, value, placeholder = "Placeholder", width = "100%", height, error, errorMessage, helperText, onRightIconclick, inputRightIcon, inputLeftIcon, onLeftIconClick, inputGroupStyle, inputStyle, size = "md", isInformation = false, informationMessage, leftElementStyle, rightElementStyle, autoComplete, minW, maxW, ...props }, ref) => {
13
+ import { focusVisibleStyles } from "../../Theme/chakra/focusRing.styles.js";
14
+ import { DEFAULT_CONTROL_SIZE } from "../../Theme/tokens/primitives/controlSizes.js";
15
+ const IconSlot = ({ icon, onClick, ariaLabel, sx, color, isDisabled }) => {
16
+ const { colors } = useCustomTheme();
17
+ if (!onClick) {
18
+ return _jsx(Box, { as: "span", sx: sx, color: color, "aria-hidden": "true", children: icon });
19
+ }
20
+ return (_jsx(Box, { as: "button", type: "button", "aria-label": ariaLabel, onClick: onClick, disabled: isDisabled, sx: { ...sx, ...focusVisibleStyles(colors) }, color: color, p: 1, borderRadius: "md", cursor: isDisabled ? "not-allowed" : "pointer", children: icon }));
21
+ };
22
+ /** Standard labelled text field — label always bound (auto id), helper/error row, optional left/right icons that become real buttons when clickable. */
23
+ const TextInput = forwardRef(({ label, type = "text", id, name, onChange, onBlur, onFocus, isDisabled = false, isReadOnly = false, isRequired = false, value, placeholder, width = "100%", height, error, errorMessage, helperText, variant = "outline", onRightIconclick, inputRightIcon, rightIconAriaLabel, inputLeftIcon, onLeftIconClick, leftIconAriaLabel, inputLeftAddon, inputRightAddon, isClearable = false, clearIconAriaLabel, showCharacterCount = false, isLoading = false, isPasswordToggleDisabled = false, inputGroupStyle, inputStyle, size = DEFAULT_CONTROL_SIZE, isInformation = false, informationMessage, leftElementStyle, rightElementStyle, autoComplete, minW, maxW, maxLength, ...props }, ref) => {
24
+ var _a;
11
25
  const theme = useCustomTheme();
12
- const sizeKey = typeof size === "string" ? size : "md";
13
- const iconScaleSx = getTextInputIconWrapperSx(sizeKey);
14
- return (_jsxs(FormControl, { w: width, minW: minW, maxW: maxW, children: [label && (_jsx(TextLabel, { label: label, id: id, isInformation: isInformation, informationMessage: informationMessage, isRequired: isRequired })), _jsxs(InputGroup, { style: inputGroupStyle, size: size, height: height, children: [inputLeftIcon && (_jsx(InputLeftElement, { onClick: onLeftIconClick, pointerEvents: onLeftIconClick ? "auto" : "none", ...leftElementStyle, height: "100%", display: "flex", alignItems: "center", children: _jsx(Box, { as: "span", sx: iconScaleSx, color: theme.colors.gray[500], children: inputLeftIcon }) })), _jsx(Input, { type: type, placeholder: placeholder, onChange: onChange, onBlur: onBlur, onFocus: onFocus, value: value, isDisabled: isDisabled, isReadOnly: isReadOnly, id: id, name: name, size: size, ...(height != null && { height }), isInvalid: error, ref: ref, autoComplete: autoComplete, ...inputStyle, ...props }), inputRightIcon && (_jsx(InputRightElement, { onClick: onRightIconclick, pointerEvents: onRightIconclick ? "auto" : "none", ...rightElementStyle, height: "100%", display: "flex", alignItems: "center", children: _jsx(Box, { as: "span", sx: iconScaleSx, children: inputRightIcon }) }))] }), error && _jsx(ErrorMessage, { errorMessage: errorMessage }), helperText && !error && _jsx(HelperText, { helperText: helperText })] }));
26
+ const inputRef = useRef(null);
27
+ const [showPassword, setShowPassword] = useState(false);
28
+ // Inside a consumer FormControl: skip our own, inherit its id/invalid/required/disabled.
29
+ const parentField = useFormControlContext();
30
+ const hasParentFormControl = Boolean(parentField);
31
+ const fieldId = id !== null && id !== void 0 ? id : parentField === null || parentField === void 0 ? void 0 : parentField.id;
32
+ const isFieldRequired = isRequired || Boolean(parentField === null || parentField === void 0 ? void 0 : parentField.isRequired);
33
+ const isFieldDisabled = isDisabled || Boolean(parentField === null || parentField === void 0 ? void 0 : parentField.isDisabled);
34
+ const isFieldReadOnly = isReadOnly || Boolean(parentField === null || parentField === void 0 ? void 0 : parentField.isReadOnly);
35
+ const isFieldInvalid = (_a = error !== null && error !== void 0 ? error : parentField === null || parentField === void 0 ? void 0 : parentField.isInvalid) !== null && _a !== void 0 ? _a : false;
36
+ const ids = useFieldIds(fieldId, { error: isFieldInvalid, errorMessage, helperText });
37
+ const mergedRef = useMergeRefs(ref, useAriaRequired(isFieldRequired), inputRef);
38
+ const iconScaleSx = getTextInputIconWrapperSx(typeof size === "string" ? size : undefined);
39
+ const iconColor = theme.colors.textMuted;
40
+ const actionName = (fallback) => (label ? `${label}: ${fallback}` : fallback);
41
+ const stringValue = typeof value === "string" ? value : undefined;
42
+ const isPasswordField = type === "password";
43
+ const effectiveType = isPasswordField && showPassword ? "text" : type;
44
+ const clearInput = () => {
45
+ var _a;
46
+ const node = inputRef.current;
47
+ if (!node)
48
+ return;
49
+ // Native setter + a real "input" event, so React's controlled onChange fires as if typed.
50
+ const setter = (_a = Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype, "value")) === null || _a === void 0 ? void 0 : _a.set;
51
+ setter === null || setter === void 0 ? void 0 : setter.call(node, "");
52
+ node.dispatchEvent(new Event("input", { bubbles: true }));
53
+ node.focus();
54
+ };
55
+ const showClear = isClearable && !isFieldDisabled && !isFieldReadOnly && Boolean(stringValue);
56
+ const rightSlots = [];
57
+ if (inputRightIcon) {
58
+ rightSlots.push({
59
+ key: "custom",
60
+ icon: inputRightIcon,
61
+ onClick: onRightIconclick,
62
+ ariaLabel: rightIconAriaLabel !== null && rightIconAriaLabel !== void 0 ? rightIconAriaLabel : actionName("right icon action"),
63
+ });
64
+ }
65
+ if (isPasswordField && !isPasswordToggleDisabled && !inputRightIcon) {
66
+ rightSlots.push({
67
+ key: "password-toggle",
68
+ icon: showPassword ? _jsx(EyeOff, { size: 16 }) : _jsx(Eye, { size: 16 }),
69
+ onClick: () => setShowPassword((prev) => !prev),
70
+ ariaLabel: actionName(showPassword ? "Hide password" : "Show password"),
71
+ });
72
+ }
73
+ if (showClear) {
74
+ rightSlots.push({
75
+ key: "clear",
76
+ icon: _jsx(X, { size: 16 }),
77
+ onClick: clearInput,
78
+ ariaLabel: clearIconAriaLabel !== null && clearIconAriaLabel !== void 0 ? clearIconAriaLabel : actionName("Clear"),
79
+ });
80
+ }
81
+ const showCounter = showCharacterCount && typeof maxLength === "number" && stringValue !== undefined;
82
+ const counterId = showCounter ? `${ids.inputId}-count` : undefined;
83
+ const { showError, showHelper } = fieldMessageVisibility({ error: isFieldInvalid, errorMessage, helperText });
84
+ const showMessageRow = showCounter || showError || showHelper;
85
+ const describedBy = [ids.describedBy, counterId].filter(Boolean).join(" ") || undefined;
86
+ const content = (_jsxs(_Fragment, { children: [label && (_jsx(TextLabel, { label: label, id: ids.inputId, isInformation: isInformation, informationMessage: informationMessage, isRequired: isFieldRequired })), _jsxs(InputGroup, { style: inputGroupStyle, size: size, height: height, children: [inputLeftAddon && (_jsx(InputLeftAddon, { sx: fieldAddonSx(theme.colors), children: inputLeftAddon })), inputLeftIcon && (_jsx(InputLeftElement, { pointerEvents: onLeftIconClick ? "auto" : "none", ...leftElementStyle, height: "100%", display: "flex", alignItems: "center", children: _jsx(IconSlot, { icon: inputLeftIcon, onClick: onLeftIconClick, ariaLabel: leftIconAriaLabel !== null && leftIconAriaLabel !== void 0 ? leftIconAriaLabel : actionName("left icon action"), sx: iconScaleSx, color: iconColor, isDisabled: isFieldDisabled }) })), _jsx(Input, { type: effectiveType, placeholder: placeholder, onChange: onChange, onBlur: onBlur, onFocus: onFocus, value: value, isDisabled: isFieldDisabled, isReadOnly: isFieldReadOnly, name: name, size: size, variant: variant, maxLength: maxLength, ...(height != null && { height }), isInvalid: isFieldInvalid, ref: mergedRef, autoComplete: autoComplete, "aria-busy": isLoading || undefined, ...ids.controlProps, "aria-describedby": describedBy, ...inputStyle, ...props }), (isLoading || rightSlots.length > 0) && (_jsx(InputRightElement, { pointerEvents: !isLoading && rightSlots.some((slot) => slot.onClick) ? "auto" : "none", ...rightElementStyle, height: "100%", display: "flex", alignItems: "center", justifyContent: "flex-end", width: !isLoading && rightSlots.length > 1 ? "auto" : undefined, ...(!isLoading && rightSlots.length > 1 ? { pr: 2, gap: 1 } : {}), children: isLoading ? (_jsx(Spinner, { size: "xs", color: iconColor })) : (rightSlots.map((slot) => (_jsx(IconSlot, { icon: slot.icon, onClick: slot.onClick, ariaLabel: slot.ariaLabel, sx: iconScaleSx, color: iconColor, isDisabled: isFieldDisabled }, slot.key)))) })), inputRightAddon && (_jsx(InputRightAddon, { sx: fieldAddonSx(theme.colors), children: inputRightAddon }))] }), showMessageRow && (_jsxs(Flex, { justify: "space-between", align: "flex-start", gap: 2, children: [_jsx(FieldMessage, { error: isFieldInvalid, errorMessage: errorMessage, helperText: helperText, helperId: ids.helperId, errorId: ids.errorId }), showCounter && stringValue !== undefined && (_jsxs(Text, { id: counterId, flexShrink: 0, ...fieldMessageStyles(theme.colors), color: isFieldInvalid ? theme.colors.semanticText.error : theme.colors.textMuted, children: [stringValue.length, "/", maxLength] }))] }))] }));
87
+ return hasParentFormControl ? (_jsx(Box, { w: width, minW: minW, maxW: maxW, children: content })) : (_jsx(FormControl, { w: width, minW: minW, maxW: maxW, children: content }));
15
88
  });
16
89
  TextInput.displayName = "TextInput";
17
90
  export default React.memo(TextInput);
@@ -1,100 +1,54 @@
1
- import { placeholderInk } from "../../Theme/tokens/builders/placeholderInk.js";
1
+ import { controlSizeStyles, fieldControlStyles, FIELD_BORDER_WIDTH } from "../Common/fieldStyles.js";
2
+ import { CONTROL_SIZE_NAMES, DEFAULT_CONTROL_SIZE } from "../../Theme/tokens/primitives/controlSizes.js";
3
+ import { fieldFocusVisible } from "../../Theme/chakra/focusRing.styles.js";
4
+ /** Field look shared by Input, Textarea and NumberInput; `_invalid` also clears Chakra's stock invalid shadow. */
5
+ export const fieldPartStyles = (colors) => {
6
+ const error = colors.semanticText.error;
7
+ return {
8
+ ...fieldControlStyles(colors),
9
+ _invalid: {
10
+ borderColor: error,
11
+ boxShadow: "none",
12
+ _hover: { borderColor: error },
13
+ _focusVisible: { borderColor: error, ...fieldFocusVisible(colors) },
14
+ },
15
+ };
16
+ };
17
+ export const fieldFilledStyles = (colors) => ({
18
+ ...fieldPartStyles(colors),
19
+ bg: colors.background[100],
20
+ borderColor: "transparent",
21
+ _hover: { bg: colors.background[100], borderColor: "transparent" },
22
+ });
23
+ export const fieldFlushedStyles = (colors) => ({
24
+ ...fieldPartStyles(colors),
25
+ bg: "transparent",
26
+ borderWidth: 0,
27
+ borderBottomWidth: FIELD_BORDER_WIDTH,
28
+ borderRadius: 0,
29
+ });
30
+ /** Look for `InputLeftAddon`/`InputRightAddon` — Chakra ships no token-aware default for these parts. */
31
+ export const fieldAddonSx = (colors) => ({
32
+ bg: colors.background[100],
33
+ borderColor: colors.boxborder[500],
34
+ color: colors.textMuted,
35
+ });
36
+ export const fieldSizes = (part) => Object.fromEntries(CONTROL_SIZE_NAMES.map((size) => [size, { [part]: controlSizeStyles(size) }]));
2
37
  export const Input = {
3
- baseStyle: ({ theme }) => ({
38
+ baseStyle: {
4
39
  field: {
5
- fontWeight: 500,
6
- fontSize: "0.875rem",
7
- letterSpacing: "0.044rem",
8
- pt: "0.813rem",
9
- pb: "0.813rem",
10
40
  display: "flex",
11
41
  alignItems: "center",
12
- borderRadius: "lg",
13
- transition: "border-color 0.2s, box-shadow 0.2s",
14
- // Every variant inherits the hint ink; only `outline` used to set it.
15
- _placeholder: {
16
- color: placeholderInk(theme.colors),
17
- },
18
- },
19
- }),
20
- sizes: {
21
- sm: {
22
- field: {
23
- h: "2rem",
24
- fontSize: "0.8125rem",
25
- },
26
- },
27
- md: {
28
- field: {
29
- h: "2.75rem",
30
- fontSize: "0.875rem",
31
- },
32
- },
33
- lg: {
34
- field: {
35
- h: "3.25rem",
36
- fontSize: "0.9375rem",
37
- },
38
42
  },
39
43
  },
44
+ sizes: Object.fromEntries(CONTROL_SIZE_NAMES.map((size) => [size, { field: controlSizeStyles(size), addon: controlSizeStyles(size) }])),
40
45
  variants: {
41
- outline: (props) => {
42
- const { theme } = props;
43
- const errorColor = theme.colors.semanticText.error;
44
- const borderColor = theme.colors.boxborder[500];
45
- const shadowPrimary = theme.colors.boxShadow.primary;
46
- const shadowError = theme.colors.boxShadow.error;
47
- const primary = theme.colors.primary[500];
48
- return {
49
- field: {
50
- bg: theme.colors.background[50],
51
- border: "0.063rem solid",
52
- borderColor,
53
- _placeholder: {
54
- color: placeholderInk(theme.colors),
55
- },
56
- _hover: {
57
- borderColor: primary,
58
- // boxShadow: `0 0 0 0.125rem ${shadowPrimary}`,
59
- outline: "0"
60
- },
61
- _focus: {
62
- borderColor: primary,
63
- boxShadow: `0 0 0 0.125rem ${shadowPrimary}`,
64
- outline: "0"
65
- },
66
- _invalid: {
67
- borderColor: errorColor,
68
- boxShadow: `0 0 0 0.125rem ${shadowError}`,
69
- _hover: {
70
- borderColor: errorColor,
71
- // boxShadow: `0 0 0 0.125rem ${shadowError}`,
72
- outline: "0"
73
- },
74
- _focus: {
75
- borderColor: errorColor,
76
- boxShadow: `0 0 0 0.125rem ${shadowError}`,
77
- outline: "0"
78
- },
79
- },
80
- _readOnly: {
81
- boxShadow: 'inherit',
82
- },
83
- _disabled: {
84
- bg: theme.colors.background[100],
85
- opacity: 1,
86
- cursor: "not-allowed",
87
- _hover: {
88
- border: "0.063rem solid",
89
- borderColor,
90
- },
91
- },
92
- },
93
- };
94
- },
46
+ outline: ({ theme }) => ({ field: fieldPartStyles(theme.colors) }),
47
+ filled: ({ theme }) => ({ field: fieldFilledStyles(theme.colors) }),
48
+ flushed: ({ theme }) => ({ field: fieldFlushedStyles(theme.colors) }),
95
49
  },
96
50
  defaultProps: {
97
51
  variant: "outline",
98
- size: "md",
52
+ size: DEFAULT_CONTROL_SIZE,
99
53
  },
100
54
  };
@@ -1,24 +1,9 @@
1
- /** Pixels: aligned with `Input` field density (Chakra `sizes.6`–`12` and typical Lucide use). */
2
- const TEXT_INPUT_ICON_PX = {
3
- xs: 14,
4
- sm: 16,
5
- md: 18,
6
- lg: 20,
7
- xl: 24,
8
- };
9
- /**
10
- * Returns icon target width/height in px for a Chakra `Input` / `InputGroup` `size`.
11
- */
1
+ import { CONTROL_SIZES, DEFAULT_CONTROL_SIZE, isControlSize, } from "../../Theme/tokens/primitives/controlSizes.js";
2
+ /** Icon px for a field size, from the shared control scale; unknown sizes fall back to the default size. */
12
3
  export function getTextInputIconSizePx(size) {
13
- var _a;
14
- if (!size)
15
- return TEXT_INPUT_ICON_PX.md;
16
- return (_a = TEXT_INPUT_ICON_PX[size]) !== null && _a !== void 0 ? _a : TEXT_INPUT_ICON_PX.md;
4
+ return CONTROL_SIZES[isControlSize(size) ? size : DEFAULT_CONTROL_SIZE].iconSize;
17
5
  }
18
- /**
19
- * Scales SVG icons in the icon slot (e.g. Lucide) to match field size; plain `fontSize` does not
20
- * affect them because they set explicit width/height.
21
- */
6
+ /** Scales SVG icons (e.g. Lucide, which set explicit width/height) in an icon slot to the field size. */
22
7
  export function getTextInputIconWrapperSx(size) {
23
8
  const px = getTextInputIconSizePx(size);
24
9
  return {
@@ -27,7 +12,6 @@ export function getTextInputIconWrapperSx(size) {
27
12
  justifyContent: "center",
28
13
  lineHeight: 0,
29
14
  flexShrink: 0,
30
- // Override Lucide/inline width on SVG; cover direct or nested (e.g. one wrapper) icons
31
15
  "& > svg, & > * svg, & svg": {
32
16
  width: `${px}px !important`,
33
17
  height: `${px}px !important`,
@@ -0,0 +1,15 @@
1
+ import { useEffect, useRef } from "react";
2
+ /** Sets `aria-required` on a Chakra field without native `required`; Chakra's useFormControl overwrites the prop. */
3
+ export const useAriaRequired = (isRequired) => {
4
+ const ref = useRef(null);
5
+ useEffect(() => {
6
+ const node = ref.current;
7
+ if (!node)
8
+ return;
9
+ if (isRequired)
10
+ node.setAttribute("aria-required", "true");
11
+ else
12
+ node.removeAttribute("aria-required");
13
+ }, [isRequired]);
14
+ return ref;
15
+ };