pixelize-design-library 2.4.2-beta.42 → 2.4.2-beta.44

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 (1027) hide show
  1. package/CHANGELOG.md +130 -0
  2. package/COMPONENT-GOTCHAS.md +413 -240
  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 +3 -4
  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 -3
  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 +26 -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 +2 -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/KanbanBoard.d.ts +1 -1
  180. package/dist/Components/KanbanBoard/KanbanBoard.js +85 -49
  181. package/dist/Components/KanbanBoard/KanbanBoardProps.d.ts +35 -19
  182. package/dist/Components/KanbanBoard/index.d.ts +2 -0
  183. package/dist/Components/KanbanBoard/index.js +8 -0
  184. package/dist/Components/LimitReachedModal/LimitReachedModal.js +1 -1
  185. package/dist/Components/LimitReachedModal/limitReachedCopy.js +1 -3
  186. package/dist/Components/Loading/Loading.d.ts +1 -1
  187. package/dist/Components/Loading/Loading.js +19 -19
  188. package/dist/Components/Loading/LoadingProps.d.ts +5 -1
  189. package/dist/Components/MediaViewer/MediaViewer.d.ts +5 -0
  190. package/dist/Components/MediaViewer/MediaViewer.js +234 -0
  191. package/dist/Components/MediaViewer/MediaViewerProps.d.ts +92 -0
  192. package/dist/Components/MediaViewer/MediaViewerProps.js +32 -0
  193. package/dist/Components/MediaViewer/components/MediaAudioPlayer.d.ts +4 -0
  194. package/dist/Components/MediaViewer/components/MediaAudioPlayer.js +138 -0
  195. package/dist/Components/MediaViewer/components/MediaAudioPlayerProps.d.ts +48 -0
  196. package/dist/Components/MediaViewer/components/MediaAudioPlayerProps.js +21 -0
  197. package/dist/Components/MediaViewer/components/MediaDocumentStage.d.ts +4 -0
  198. package/dist/Components/MediaViewer/components/MediaDocumentStage.js +149 -0
  199. package/dist/Components/MediaViewer/components/MediaDocumentStageProps.d.ts +42 -0
  200. package/dist/Components/MediaViewer/components/MediaDocumentStageProps.js +11 -0
  201. package/dist/Components/MediaViewer/components/MediaImageViewer.d.ts +4 -0
  202. package/dist/Components/MediaViewer/components/MediaImageViewer.js +103 -0
  203. package/dist/Components/MediaViewer/components/MediaImageViewerProps.d.ts +47 -0
  204. package/dist/Components/MediaViewer/components/MediaImageViewerProps.js +18 -0
  205. package/dist/Components/MediaViewer/components/MediaScrubber.d.ts +5 -0
  206. package/dist/Components/MediaViewer/components/MediaScrubber.js +89 -0
  207. package/dist/Components/MediaViewer/components/MediaScrubberProps.d.ts +30 -0
  208. package/dist/Components/MediaViewer/components/MediaScrubberProps.js +2 -0
  209. package/dist/Components/MediaViewer/components/MediaStatusPanel.d.ts +5 -0
  210. package/dist/Components/MediaViewer/components/MediaStatusPanel.js +14 -0
  211. package/dist/Components/MediaViewer/components/MediaStatusPanelProps.d.ts +24 -0
  212. package/dist/Components/MediaViewer/components/MediaStatusPanelProps.js +2 -0
  213. package/dist/Components/MediaViewer/components/MediaVideoPlayer.d.ts +4 -0
  214. package/dist/Components/MediaViewer/components/MediaVideoPlayer.js +248 -0
  215. package/dist/Components/MediaViewer/components/MediaVideoPlayerProps.d.ts +71 -0
  216. package/dist/Components/MediaViewer/components/MediaVideoPlayerProps.js +31 -0
  217. package/dist/Components/MediaViewer/components/TileChip.d.ts +5 -0
  218. package/dist/Components/MediaViewer/components/TileChip.js +12 -0
  219. package/dist/Components/MediaViewer/components/TileChipProps.d.ts +7 -0
  220. package/dist/Components/MediaViewer/components/TileChipProps.js +2 -0
  221. package/dist/Components/MediaViewer/components/VideoPoster.d.ts +5 -0
  222. package/dist/Components/MediaViewer/components/VideoPoster.js +16 -0
  223. package/dist/Components/MediaViewer/components/VideoPosterProps.d.ts +6 -0
  224. package/dist/Components/MediaViewer/components/VideoPosterProps.js +2 -0
  225. package/dist/Components/MediaViewer/components/ViewerIconButton.d.ts +5 -0
  226. package/dist/Components/MediaViewer/components/ViewerIconButton.js +20 -0
  227. package/dist/Components/MediaViewer/components/ViewerIconButtonProps.d.ts +24 -0
  228. package/dist/Components/MediaViewer/components/ViewerIconButtonProps.js +2 -0
  229. package/dist/Components/MediaViewer/components/mediaKindIcon.d.ts +5 -0
  230. package/dist/Components/MediaViewer/components/mediaKindIcon.js +23 -0
  231. package/dist/Components/MediaViewer/components/sanitizeDocxHrefs.d.ts +1 -0
  232. package/dist/Components/MediaViewer/components/sanitizeDocxHrefs.js +30 -0
  233. package/dist/Components/MediaViewer/hooks/useAutoHideChrome.d.ts +15 -0
  234. package/dist/Components/MediaViewer/hooks/useAutoHideChrome.js +43 -0
  235. package/dist/Components/MediaViewer/hooks/useFileViewer.d.ts +18 -0
  236. package/dist/Components/MediaViewer/hooks/useFileViewer.js +51 -0
  237. package/dist/Components/MediaViewer/mediaItems.d.ts +64 -0
  238. package/dist/Components/MediaViewer/mediaItems.js +196 -0
  239. package/dist/Components/MediaViewer/useViewerChrome.d.ts +15 -0
  240. package/dist/Components/MediaViewer/useViewerChrome.js +30 -0
  241. package/dist/Components/Modal/Modal.d.ts +5 -11
  242. package/dist/Components/Modal/Modal.js +24 -18
  243. package/dist/Components/Modal/ModalProps.d.ts +19 -4
  244. package/dist/Components/MoreItems/MoreItems.js +4 -2
  245. package/dist/Components/MultiSelect/MultiSelect.js +19 -18
  246. package/dist/Components/MultiSelect/MultiSelectProps.d.ts +11 -3
  247. package/dist/Components/NavigationBar/NavigationBar.js +10 -8
  248. package/dist/Components/NoteTextArea/NoteTextArea.d.ts +4 -2
  249. package/dist/Components/NoteTextArea/NoteTextArea.js +13 -9
  250. package/dist/Components/NoteTextArea/NoteTextAreaProps.d.ts +4 -2
  251. package/dist/Components/Notification/Notification.d.ts +1 -1
  252. package/dist/Components/Notification/Notification.js +10 -3
  253. package/dist/Components/Notification/NotificationProps.d.ts +1 -1
  254. package/dist/Components/NotificationBell/NotificationBell.d.ts +4 -0
  255. package/dist/Components/NotificationBell/NotificationBell.js +35 -0
  256. package/dist/Components/NotificationBell/NotificationBellProps.d.ts +147 -0
  257. package/dist/Components/NotificationBell/NotificationBellProps.js +2 -0
  258. package/dist/Components/NotificationBell/NotificationItem.d.ts +4 -0
  259. package/dist/Components/NotificationBell/NotificationItem.js +34 -0
  260. package/dist/Components/NotificationBell/NotificationList.d.ts +4 -0
  261. package/dist/Components/NotificationBell/NotificationList.js +41 -0
  262. package/dist/Components/NotificationBell/NotificationPanel.d.ts +4 -0
  263. package/dist/Components/NotificationBell/NotificationPanel.js +36 -0
  264. package/dist/Components/NotificationBell/index.d.ts +6 -0
  265. package/dist/Components/NotificationBell/index.js +30 -0
  266. package/dist/Components/NotificationBell/notificationHelpers.d.ts +29 -0
  267. package/dist/Components/NotificationBell/notificationHelpers.js +106 -0
  268. package/dist/Components/NumberInput/NumberInput.d.ts +6 -2
  269. package/dist/Components/NumberInput/NumberInput.js +9 -5
  270. package/dist/Components/NumberInput/NumberInput.styles.js +19 -78
  271. package/dist/Components/NumberInput/NumberInputProps.d.ts +20 -1
  272. package/dist/Components/OrgSwitcher/OrgSwitcher.js +4 -12
  273. package/dist/Components/OrgSwitcher/OrgSwitcherProps.d.ts +1 -1
  274. package/dist/Components/OrgSwitcher/OrgSwitcherProps.js +2 -1
  275. package/dist/Components/OrganizationDetails/CreateOrgModal.js +1 -1
  276. package/dist/Components/OrganizationDetails/DeleteOrgModal.js +4 -6
  277. package/dist/Components/OrganizationDetails/OrganizationDetails.js +8 -7
  278. package/dist/Components/PageHeader/PageHeader.d.ts +4 -0
  279. package/dist/Components/PageHeader/PageHeader.js +11 -0
  280. package/dist/Components/PageHeader/PageHeaderProps.d.ts +20 -0
  281. package/dist/Components/PageHeader/PageHeaderProps.js +2 -0
  282. package/dist/Components/PdfViewer/PdfViewer.js +1 -1
  283. package/dist/Components/PersonChip/PersonChip.d.ts +3 -0
  284. package/dist/Components/PersonChip/PersonChip.js +47 -0
  285. package/dist/Components/PersonChip/PersonChipProps.d.ts +33 -0
  286. package/dist/Components/PersonChip/PersonChipProps.js +2 -0
  287. package/dist/Components/PinInput/PinInput.d.ts +2 -2
  288. package/dist/Components/PinInput/PinInput.js +10 -7
  289. package/dist/Components/PinInput/PinInputProps.d.ts +3 -2
  290. package/dist/Components/PinInput/pinInputCellSize.d.ts +7 -0
  291. package/dist/Components/PinInput/pinInputCellSize.js +10 -0
  292. package/dist/Components/PlanBadge/PlanBadge.d.ts +0 -7
  293. package/dist/Components/PlanBadge/PlanBadge.js +1 -7
  294. package/dist/Components/PlanPill/PlanPill.js +2 -3
  295. package/dist/Components/PlanPill/planPillGradient.d.ts +5 -21
  296. package/dist/Components/PlanPill/planPillGradient.js +8 -23
  297. package/dist/Components/Primitives/Primitives.d.ts +3 -6
  298. package/dist/Components/Primitives/Primitives.js +3 -41
  299. package/dist/Components/ProductCard/ProductPrice.js +18 -7
  300. package/dist/Components/ProductCard/ProductReview.js +3 -2
  301. package/dist/Components/ProductDetails/ProductDetails.js +1 -1
  302. package/dist/Components/ProductDetails/ProductDtlPrice.js +5 -5
  303. package/dist/Components/ProductDetails/ProductImageSlider.d.ts +3 -1
  304. package/dist/Components/ProductDetails/ProductImageSlider.js +36 -20
  305. package/dist/Components/ProfileCard/ProfileCard.d.ts +4 -10
  306. package/dist/Components/ProfileCard/ProfileCard.js +25 -10
  307. package/dist/Components/ProfileCard/ProfileCardProps.d.ts +8 -2
  308. package/dist/Components/ProfilePhotoViewer/ProfilePhotoViewer.js +7 -4
  309. package/dist/Components/ProgressBar/ProgressBar.d.ts +1 -1
  310. package/dist/Components/ProgressBar/ProgressBar.js +27 -3
  311. package/dist/Components/ProgressBar/ProgressBarProps.d.ts +10 -4
  312. package/dist/Components/QueryState/ErrorState.d.ts +4 -0
  313. package/dist/Components/QueryState/ErrorState.js +16 -0
  314. package/dist/Components/QueryState/QueryStateBoundary.d.ts +4 -0
  315. package/dist/Components/QueryState/QueryStateBoundary.js +25 -0
  316. package/dist/Components/QueryState/QueryStateProps.d.ts +48 -0
  317. package/dist/Components/QueryState/QueryStateProps.js +2 -0
  318. package/dist/Components/RadioButton/RadioButton.d.ts +2 -2
  319. package/dist/Components/RadioButton/RadioButton.js +34 -14
  320. package/dist/Components/RadioButton/RadioButtonProps.d.ts +50 -6
  321. package/dist/Components/RangeSlider/RangeSlider.d.ts +4 -0
  322. package/dist/Components/RangeSlider/RangeSlider.js +136 -0
  323. package/dist/Components/RangeSlider/RangeSliderProps.d.ts +74 -0
  324. package/dist/Components/RangeSlider/RangeSliderProps.js +2 -0
  325. package/dist/Components/RangeSlider/rangeSliderColors.d.ts +9 -0
  326. package/dist/Components/RangeSlider/rangeSliderColors.js +11 -0
  327. package/dist/Components/RangeSlider/rangeSliderMath.d.ts +16 -0
  328. package/dist/Components/RangeSlider/rangeSliderMath.js +79 -0
  329. package/dist/Components/RangeSlider/rangeSliderSize.d.ts +7 -0
  330. package/dist/Components/RangeSlider/rangeSliderSize.js +12 -0
  331. package/dist/Components/Reorder/Reorder.d.ts +1 -6
  332. package/dist/Components/Reorder/Reorder.js +2 -2
  333. package/dist/Components/Reorder/ReorderProps.d.ts +5 -2
  334. package/dist/Components/RolesPermission/DeleteRoleModal.js +4 -6
  335. package/dist/Components/RolesPermission/RolesPermission.js +1 -1
  336. package/dist/Components/SaveBar/SaveBar.d.ts +4 -0
  337. package/dist/Components/SaveBar/SaveBar.js +24 -0
  338. package/dist/Components/SaveBar/SaveBarProps.d.ts +22 -0
  339. package/dist/Components/SaveBar/SaveBarProps.js +2 -0
  340. package/dist/Components/ScrollToTop/ScrollToTop.js +5 -2
  341. package/dist/Components/Search/Search.d.ts +3 -2
  342. package/dist/Components/Search/Search.js +33 -15
  343. package/dist/Components/Search/SearchProps.d.ts +26 -4
  344. package/dist/Components/SearchSelect/SearchSelect.d.ts +2 -1
  345. package/dist/Components/SearchSelect/SearchSelect.js +61 -75
  346. package/dist/Components/SearchSelect/SearchSelectProps.d.ts +27 -3
  347. package/dist/Components/SearchSelect/searchSelectSize.d.ts +4 -14
  348. package/dist/Components/SearchSelect/searchSelectSize.js +15 -15
  349. package/dist/Components/SegmentedControl/SegmentedControl.js +39 -32
  350. package/dist/Components/SegmentedControl/SegmentedControlProps.d.ts +10 -2
  351. package/dist/Components/SegmentedControl/useSlidingPill.d.ts +11 -0
  352. package/dist/Components/SegmentedControl/useSlidingPill.js +25 -0
  353. package/dist/Components/Select/Select.d.ts +5 -2
  354. package/dist/Components/Select/Select.js +65 -24
  355. package/dist/Components/Select/Select.styles.js +12 -81
  356. package/dist/Components/Select/SelectNative.d.ts +63 -0
  357. package/dist/Components/Select/SelectNative.js +49 -0
  358. package/dist/Components/Select/SelectPopup.d.ts +5 -0
  359. package/dist/Components/Select/SelectPopup.js +415 -0
  360. package/dist/Components/Select/SelectProps.d.ts +122 -16
  361. package/dist/Components/SelectSearch/SelectSearch.d.ts +2 -2
  362. package/dist/Components/SelectSearch/SelectSearch.js +16 -78
  363. package/dist/Components/SelectSearch/SelectSearchProps.d.ts +31 -2
  364. package/dist/Components/SelectV2/SelectV2.d.ts +15 -3
  365. package/dist/Components/SelectV2/SelectV2.js +17 -264
  366. package/dist/Components/SelectV2/SelectV2Props.d.ts +39 -13
  367. package/dist/Components/SettingRow/SettingRow.d.ts +4 -0
  368. package/dist/Components/SettingRow/SettingRow.js +24 -0
  369. package/dist/Components/SettingRow/SettingRowProps.d.ts +16 -0
  370. package/dist/Components/SettingRow/SettingRowProps.js +2 -0
  371. package/dist/Components/SettingRow/SettingsSection.d.ts +4 -0
  372. package/dist/Components/SettingRow/SettingsSection.js +16 -0
  373. package/dist/Components/SettingRow/SettingsSectionProps.d.ts +18 -0
  374. package/dist/Components/SettingRow/SettingsSectionProps.js +2 -0
  375. package/dist/Components/SideBar/SecondaryBar.js +19 -9
  376. package/dist/Components/SideBar/SideBar.js +35 -20
  377. package/dist/Components/SideBar/SideBarProps.d.ts +8 -1
  378. package/dist/Components/SideBar/components/MenuItemBox.d.ts +2 -0
  379. package/dist/Components/SideBar/components/MenuItemBox.js +43 -28
  380. package/dist/Components/SideBar/components/MenuItems.js +4 -4
  381. package/dist/Components/SideBar/components/MenuPopoverContent.js +20 -10
  382. package/dist/Components/SideBar/components/OtherApps.js +3 -3
  383. package/dist/Components/SideBar/components/OverflowTooltipText.js +3 -1
  384. package/dist/Components/SideBar/components/TextTruncation.js +3 -3
  385. package/dist/Components/SideBar/menuDisabled.d.ts +5 -0
  386. package/dist/Components/SideBar/menuDisabled.js +7 -0
  387. package/dist/Components/SideBar/sidebarId.d.ts +2 -0
  388. package/dist/Components/SideBar/sidebarId.js +6 -0
  389. package/dist/Components/Skeletons/SkeletonProps.d.ts +4 -2
  390. package/dist/Components/Skeletons/Skeletons.d.ts +1 -1
  391. package/dist/Components/Skeletons/Skeletons.js +2 -2
  392. package/dist/Components/Slider/Slider.js +2 -1
  393. package/dist/Components/Spinner/Spinner.d.ts +3 -0
  394. package/dist/Components/Spinner/Spinner.js +22 -0
  395. package/dist/Components/Spinner/SpinnerProps.d.ts +15 -0
  396. package/dist/Components/Spinner/SpinnerProps.js +2 -0
  397. package/dist/Components/StageProgress/StageItem.js +12 -4
  398. package/dist/Components/StageProgress/StageProgress.js +6 -7
  399. package/dist/Components/StageProgress/StageProgressProps.d.ts +9 -3
  400. package/dist/Components/StageProgress/StageProgressProps.js +6 -2
  401. package/dist/Components/StageProgress/StepperStage.js +5 -2
  402. package/dist/Components/StatCard/StatCard.d.ts +4 -0
  403. package/dist/Components/StatCard/StatCard.js +42 -0
  404. package/dist/Components/StatCard/StatCardProps.d.ts +26 -0
  405. package/dist/Components/StatCard/StatCardProps.js +2 -0
  406. package/dist/Components/Switch/Switch.d.ts +2 -2
  407. package/dist/Components/Switch/Switch.js +11 -9
  408. package/dist/Components/Switch/SwitchProps.d.ts +5 -1
  409. package/dist/Components/Table/Table.d.ts +1 -1
  410. package/dist/Components/Table/Table.js +56 -49
  411. package/dist/Components/Table/TableProps.d.ts +46 -8
  412. package/dist/Components/Table/components/HeaderActions.js +3 -2
  413. package/dist/Components/Table/components/Pagination.d.ts +1 -1
  414. package/dist/Components/Table/components/Pagination.js +1 -1
  415. package/dist/Components/Table/components/TableActions.js +1 -1
  416. package/dist/Components/Table/components/TableBody.d.ts +1 -1
  417. package/dist/Components/Table/components/TableBody.js +33 -41
  418. package/dist/Components/Table/components/TableGroupRow.js +1 -1
  419. package/dist/Components/Table/components/TableHeader.d.ts +1 -1
  420. package/dist/Components/Table/components/TableHeader.js +14 -12
  421. package/dist/Components/Table/components/TableSearch.js +1 -1
  422. package/dist/Components/Table/components/rowMetrics.d.ts +11 -0
  423. package/dist/Components/Table/components/rowMetrics.js +16 -0
  424. package/dist/Components/Table/filters/ActiveFilters.js +7 -4
  425. package/dist/Components/Table/filters/CompactSelect.js +1 -1
  426. package/dist/Components/Table/filters/LeftFilterPane.js +1 -1
  427. package/dist/Components/Table/filters/TableFilters.js +1 -1
  428. package/dist/Components/Table/hooks/useTable.d.ts +1 -10
  429. package/dist/Components/Table/hooks/useTable.js +14 -23
  430. package/dist/Components/Table/settings/ManageColumns.js +7 -6
  431. package/dist/Components/Table/settings/TableSettings.js +5 -4
  432. package/dist/Components/Table/variants/classic.js +2 -0
  433. package/dist/Components/Table/variants/stripe.d.ts +3 -0
  434. package/dist/Components/Table/variants/stripe.js +7 -0
  435. package/dist/Components/Table/variants/studio.js +2 -0
  436. package/dist/Components/Table/variants/tokens.d.ts +2 -0
  437. package/dist/Components/Tabs/Tabs.d.ts +3 -0
  438. package/dist/Components/Tabs/Tabs.js +70 -0
  439. package/dist/Components/Tabs/TabsContext.d.ts +22 -0
  440. package/dist/Components/Tabs/TabsContext.js +16 -0
  441. package/dist/Components/Tabs/TabsProps.d.ts +74 -0
  442. package/dist/Components/Tabs/TabsProps.js +2 -0
  443. package/dist/Components/Tabs/components/CountBadge.d.ts +12 -0
  444. package/dist/Components/Tabs/components/CountBadge.js +17 -0
  445. package/dist/Components/Tabs/components/Tab.d.ts +3 -0
  446. package/dist/Components/Tabs/components/Tab.js +39 -0
  447. package/dist/Components/Tabs/components/TabList.d.ts +3 -0
  448. package/dist/Components/Tabs/components/TabList.js +71 -0
  449. package/dist/Components/Tabs/components/TabPanel.d.ts +3 -0
  450. package/dist/Components/Tabs/components/TabPanel.js +17 -0
  451. package/dist/Components/Tabs/components/TabPanels.d.ts +3 -0
  452. package/dist/Components/Tabs/components/TabPanels.js +14 -0
  453. package/dist/Components/Tabs/index.d.ts +6 -0
  454. package/dist/Components/Tabs/index.js +16 -0
  455. package/dist/Components/Tabs/tabStyles.d.ts +15 -0
  456. package/dist/Components/Tabs/tabStyles.js +38 -0
  457. package/dist/Components/Tag/Tag.js +14 -6
  458. package/dist/Components/Tag/Tag.styles.d.ts +2 -0
  459. package/dist/Components/Tag/Tag.styles.js +44 -37
  460. package/dist/Components/Tag/TagProps.d.ts +17 -4
  461. package/dist/Components/Timeline/Timeline.d.ts +1 -1
  462. package/dist/Components/Timeline/Timeline.js +42 -30
  463. package/dist/Components/Timeline/TimelineProps.d.ts +25 -2
  464. package/dist/Components/Toaster/Toaster.js +73 -55
  465. package/dist/Components/Toaster/ToasterProps.d.ts +18 -5
  466. package/dist/Components/Toaster/toastDuration.d.ts +4 -0
  467. package/dist/Components/Toaster/toastDuration.js +7 -0
  468. package/dist/Components/Toggle/TableToggle.d.ts +1 -1
  469. package/dist/Components/Toggle/TableToggle.js +10 -25
  470. package/dist/Components/Toggle/TableToggleProps.d.ts +3 -2
  471. package/dist/Components/ToggleSwitch/ToggleSwitch.d.ts +2 -2
  472. package/dist/Components/ToggleSwitch/ToggleSwitch.js +41 -7
  473. package/dist/Components/ToggleSwitch/ToggleSwitchProps.d.ts +63 -8
  474. package/dist/Components/ToolTip/OverflowToolTip.d.ts +0 -15
  475. package/dist/Components/ToolTip/OverflowToolTip.js +1 -15
  476. package/dist/Components/ToolTip/ToolTip.js +13 -13
  477. package/dist/Components/ToolTip/ToolTipProps.d.ts +5 -2
  478. package/dist/Components/UpgradeButton/UpgradeButton.js +9 -14
  479. package/dist/Components/UserDetails/AddUserModal.js +1 -1
  480. package/dist/Components/UserDetails/ChangeRoleModal.js +1 -1
  481. package/dist/Components/UserDetails/DeactivateConfirmModal.js +4 -6
  482. package/dist/Components/UserDetails/UserDetails.js +6 -8
  483. package/dist/Components/WorkspaceWindow/WorkspaceTrayPreview.d.ts +0 -13
  484. package/dist/Components/WorkspaceWindow/WorkspaceTrayPreview.js +2 -14
  485. package/dist/Components/WorkspaceWindow/WorkspaceWindow.d.ts +0 -11
  486. package/dist/Components/WorkspaceWindow/WorkspaceWindow.js +6 -23
  487. package/dist/Constants/Sidebar.d.ts +2 -38
  488. package/dist/Constants/Sidebar.js +1 -16
  489. package/dist/Hooks/useDebounce.d.ts +6 -0
  490. package/dist/Hooks/useDebounce.js +33 -0
  491. package/dist/Hooks/useExclusiveOverlay.d.ts +0 -4
  492. package/dist/Hooks/useExclusiveOverlay.js +1 -4
  493. package/dist/Hooks/useFullscreen.d.ts +8 -0
  494. package/dist/Hooks/useFullscreen.js +32 -0
  495. package/dist/Hooks/useIsTruncated.d.ts +0 -30
  496. package/dist/Hooks/useIsTruncated.js +1 -30
  497. package/dist/Hooks/usePreferences.js +1 -6
  498. package/dist/Hooks/useSidebarPrefs.d.ts +1 -42
  499. package/dist/Hooks/useSidebarPrefs.js +1 -2
  500. package/dist/Theme/assertPalette.d.ts +1 -1
  501. package/dist/Theme/assertPalette.js +2 -2
  502. package/dist/Theme/chakra/Card.styles.d.ts +78 -0
  503. package/dist/Theme/chakra/Card.styles.js +48 -0
  504. package/dist/Theme/chakra/Drawer.styles.d.ts +41 -9
  505. package/dist/Theme/chakra/Drawer.styles.js +14 -13
  506. package/dist/Theme/chakra/Menu.styles.d.ts +3 -18
  507. package/dist/Theme/chakra/Menu.styles.js +2 -23
  508. package/dist/Theme/chakra/Modal.styles.d.ts +42 -9
  509. package/dist/Theme/chakra/Modal.styles.js +15 -13
  510. package/dist/Theme/chakra/Popover.styles.d.ts +3 -3
  511. package/dist/Theme/chakra/Popover.styles.js +2 -10
  512. package/dist/Theme/chakra/Slider.styles.d.ts +3 -3
  513. package/dist/Theme/chakra/Slider.styles.js +1 -6
  514. package/dist/Theme/chakra/common.web.d.ts +0 -4
  515. package/dist/Theme/chakra/common.web.js +1 -7
  516. package/dist/Theme/chakra/componentStyles.d.ts +157 -103
  517. package/dist/Theme/chakra/componentStyles.js +66 -86
  518. package/dist/Theme/chakra/createBrandTheme.d.ts +0 -10
  519. package/dist/Theme/chakra/createBrandTheme.js +6 -50
  520. package/dist/Theme/chakra/focusRing.styles.d.ts +0 -23
  521. package/dist/Theme/chakra/focusRing.styles.js +4 -23
  522. package/dist/Theme/chakra/fonts.web.d.ts +0 -5
  523. package/dist/Theme/chakra/fonts.web.js +1 -5
  524. package/dist/Theme/chakra/motion.d.ts +5 -0
  525. package/dist/Theme/chakra/motion.js +27 -0
  526. package/dist/Theme/chakra/overlay.styles.d.ts +51 -0
  527. package/dist/Theme/chakra/overlay.styles.js +48 -0
  528. package/dist/Theme/chakra/paletteFromTheme.d.ts +0 -4
  529. package/dist/Theme/chakra/paletteFromTheme.js +1 -4
  530. package/dist/Theme/index.d.ts +0 -12
  531. package/dist/Theme/index.js +3 -18
  532. package/dist/Theme/provider/PixelizeThemeProvider.d.ts +0 -32
  533. package/dist/Theme/provider/PixelizeThemeProvider.js +6 -74
  534. package/dist/Theme/provider/ThemeSwitcher.js +2 -10
  535. package/dist/Theme/provider/colorModeStorage.js +1 -4
  536. package/dist/Theme/tokens/brands/emerald/palette.dark.d.ts +0 -4
  537. package/dist/Theme/tokens/brands/emerald/palette.dark.js +0 -4
  538. package/dist/Theme/tokens/brands/emerald/palette.light.js +2 -10
  539. package/dist/Theme/tokens/brands/index.js +4 -4
  540. package/dist/Theme/tokens/brands/lavender/palette.dark.d.ts +0 -4
  541. package/dist/Theme/tokens/brands/lavender/palette.dark.js +0 -4
  542. package/dist/Theme/tokens/brands/lavender/palette.light.js +4 -13
  543. package/dist/Theme/tokens/brands/meadow/palette.dark.d.ts +0 -4
  544. package/dist/Theme/tokens/brands/meadow/palette.dark.js +0 -4
  545. package/dist/Theme/tokens/brands/meadow/palette.light.js +2 -11
  546. package/dist/Theme/tokens/brands/radiant/palette.dark.d.ts +0 -4
  547. package/dist/Theme/tokens/brands/radiant/palette.dark.js +0 -4
  548. package/dist/Theme/tokens/brands/radiant/palette.light.js +2 -10
  549. package/dist/Theme/tokens/brands/rosewood/palette.dark.d.ts +0 -4
  550. package/dist/Theme/tokens/brands/rosewood/palette.dark.js +0 -4
  551. package/dist/Theme/tokens/brands/rosewood/palette.light.js +2 -14
  552. package/dist/Theme/tokens/brands/skyline/palette.dark.d.ts +0 -4
  553. package/dist/Theme/tokens/brands/skyline/palette.dark.js +0 -4
  554. package/dist/Theme/tokens/brands/skyline/palette.light.js +2 -11
  555. package/dist/Theme/tokens/brands/slate/palette.dark.d.ts +0 -4
  556. package/dist/Theme/tokens/brands/slate/palette.dark.js +0 -4
  557. package/dist/Theme/tokens/brands/slate/palette.light.js +1 -11
  558. package/dist/Theme/tokens/brands/storefront/palette.dark.d.ts +0 -4
  559. package/dist/Theme/tokens/brands/storefront/palette.dark.js +0 -4
  560. package/dist/Theme/tokens/brands/zinc/palette.dark.d.ts +10 -9
  561. package/dist/Theme/tokens/brands/zinc/palette.dark.js +5 -35
  562. package/dist/Theme/tokens/brands/zinc/palette.light.js +3 -12
  563. package/dist/Theme/tokens/builders/accentText.d.ts +0 -43
  564. package/dist/Theme/tokens/builders/accentText.js +5 -48
  565. package/dist/Theme/tokens/builders/brandInk.d.ts +2 -0
  566. package/dist/Theme/tokens/builders/brandInk.js +19 -1
  567. package/dist/Theme/tokens/builders/buildBrandTokens.d.ts +0 -3
  568. package/dist/Theme/tokens/builders/buildBrandTokens.js +1 -3
  569. package/dist/Theme/tokens/builders/buildDarkPalette.d.ts +0 -12
  570. package/dist/Theme/tokens/builders/buildDarkPalette.js +15 -103
  571. package/dist/Theme/tokens/builders/chartColorsFromTheme.d.ts +0 -8
  572. package/dist/Theme/tokens/builders/chartColorsFromTheme.js +1 -8
  573. package/dist/Theme/tokens/builders/color.d.ts +0 -20
  574. package/dist/Theme/tokens/builders/color.js +3 -20
  575. package/dist/Theme/tokens/builders/filledSurface.d.ts +2 -12
  576. package/dist/Theme/tokens/builders/filledSurface.js +35 -25
  577. package/dist/Theme/tokens/builders/focusRing.d.ts +0 -45
  578. package/dist/Theme/tokens/builders/focusRing.js +5 -49
  579. package/dist/Theme/tokens/builders/gradientInk.d.ts +0 -10
  580. package/dist/Theme/tokens/builders/gradientInk.js +2 -10
  581. package/dist/Theme/tokens/builders/index.d.ts +4 -0
  582. package/dist/Theme/tokens/builders/index.js +4 -0
  583. package/dist/Theme/tokens/builders/outlineRung.d.ts +0 -66
  584. package/dist/Theme/tokens/builders/outlineRung.js +4 -70
  585. package/dist/Theme/tokens/builders/placeholderInk.d.ts +0 -12
  586. package/dist/Theme/tokens/builders/placeholderInk.js +2 -12
  587. package/dist/Theme/tokens/builders/resolvedRungs.d.ts +0 -5
  588. package/dist/Theme/tokens/builders/resolvedRungs.js +1 -5
  589. package/dist/Theme/tokens/builders/rowStates.d.ts +0 -6
  590. package/dist/Theme/tokens/builders/rowStates.js +4 -8
  591. package/dist/Theme/tokens/builders/scrim.d.ts +6 -0
  592. package/dist/Theme/tokens/builders/scrim.js +17 -0
  593. package/dist/Theme/tokens/builders/scrollbar.d.ts +0 -4
  594. package/dist/Theme/tokens/builders/scrollbar.js +1 -4
  595. package/dist/Theme/tokens/builders/semanticText.d.ts +0 -5
  596. package/dist/Theme/tokens/builders/semanticText.js +1 -5
  597. package/dist/Theme/tokens/builders/sidebarAccent.d.ts +8 -0
  598. package/dist/Theme/tokens/builders/sidebarAccent.js +15 -1
  599. package/dist/Theme/tokens/builders/statusTone.d.ts +1 -19
  600. package/dist/Theme/tokens/builders/statusTone.js +4 -19
  601. package/dist/Theme/tokens/builders/surfaceRaised.d.ts +6 -0
  602. package/dist/Theme/tokens/builders/surfaceRaised.js +21 -0
  603. package/dist/Theme/tokens/builders/surfaceRungs.d.ts +0 -4
  604. package/dist/Theme/tokens/builders/surfaceRungs.js +3 -9
  605. package/dist/Theme/tokens/builders/tone.d.ts +22 -0
  606. package/dist/Theme/tokens/builders/tone.js +54 -0
  607. package/dist/Theme/tokens/builders/tooltipSurface.d.ts +6 -0
  608. package/dist/Theme/tokens/builders/tooltipSurface.js +10 -0
  609. package/dist/Theme/tokens/builders/viewportHeight.d.ts +8 -0
  610. package/dist/Theme/tokens/builders/viewportHeight.js +9 -0
  611. package/dist/Theme/tokens/index.d.ts +0 -10
  612. package/dist/Theme/tokens/index.js +1 -10
  613. package/dist/Theme/tokens/primitives/controlSizes.d.ts +12 -0
  614. package/dist/Theme/tokens/primitives/controlSizes.js +14 -0
  615. package/dist/Theme/tokens/primitives/index.d.ts +2 -0
  616. package/dist/Theme/tokens/primitives/index.js +16 -0
  617. package/dist/Theme/tokens/primitives/motion.d.ts +8 -0
  618. package/dist/Theme/tokens/primitives/motion.js +12 -0
  619. package/dist/Theme/tokens/primitives/sizes.d.ts +0 -4
  620. package/dist/Theme/tokens/primitives/sizes.js +1 -4
  621. package/dist/Theme/tokens/primitives/typography.d.ts +0 -7
  622. package/dist/Theme/tokens/primitives/typography.js +1 -7
  623. package/dist/Theme/tokens/types.d.ts +8 -28
  624. package/dist/Theme/tokens/types.js +1 -6
  625. package/dist/Utils/accountHandoff.d.ts +0 -17
  626. package/dist/Utils/accountHandoff.js +2 -17
  627. package/dist/Utils/apiError.d.ts +2 -0
  628. package/dist/Utils/apiError.js +28 -0
  629. package/dist/Utils/functions.d.ts +1 -0
  630. package/dist/Utils/functions.js +6 -4
  631. package/dist/Utils/humanize.d.ts +4 -0
  632. package/dist/Utils/humanize.js +19 -0
  633. package/dist/Utils/lazyWithRetry.d.ts +9 -0
  634. package/dist/Utils/lazyWithRetry.js +51 -0
  635. package/dist/Utils/mergeRefs.d.ts +0 -5
  636. package/dist/Utils/mergeRefs.js +1 -5
  637. package/dist/Utils/planBadge.d.ts +1 -11
  638. package/dist/Utils/planBadge.js +2 -12
  639. package/dist/Utils/planExpiry.d.ts +0 -26
  640. package/dist/Utils/planExpiry.js +4 -29
  641. package/dist/Utils/rafThrottle.d.ts +0 -11
  642. package/dist/Utils/rafThrottle.js +1 -11
  643. package/dist/Utils/table.d.ts +2 -22
  644. package/dist/Utils/table.js +17 -87
  645. package/dist/Utils/validation.d.ts +13 -0
  646. package/dist/Utils/validation.js +86 -0
  647. package/dist/esm/Components/Accordion/Accordion.js +8 -10
  648. package/dist/esm/Components/Accordion/accordionColors.js +9 -10
  649. package/dist/esm/Components/AlertDialog/AlertDialog.js +3 -6
  650. package/dist/esm/Components/Apexcharts/ApexAreaChart/ApexAreaChart.js +7 -3
  651. package/dist/esm/Components/Apexcharts/ApexBarChart/ApexBarChart.js +8 -5
  652. package/dist/esm/Components/Apexcharts/ApexChartFallback.js +5 -0
  653. package/dist/esm/Components/Apexcharts/ApexLineChart/ApexLineChart.js +7 -3
  654. package/dist/esm/Components/Apexcharts/ApexPieChart/ApexPieChart.js +7 -3
  655. package/dist/esm/Components/Apexcharts/ApexPolarCharts/ApexPolarCharts.js +9 -6
  656. package/dist/esm/Components/Apexcharts/ApexRadialChart/ApexRadialChart.js +7 -5
  657. package/dist/esm/Components/Apexcharts/LazyReactApexChart.js +5 -0
  658. package/dist/esm/Components/AppSwitcher/AppMark.js +1 -5
  659. package/dist/esm/Components/AppSwitcher/AppSwitcher.js +4 -9
  660. package/dist/esm/Components/Avatar/Avatar.js +22 -0
  661. package/dist/esm/Components/Avatar/AvatarGroup.js +19 -0
  662. package/dist/esm/Components/Avatar/AvatarProps.js +1 -0
  663. package/dist/esm/Components/Avatar/avatarColorway.js +25 -0
  664. package/dist/esm/Components/Avatar/avatarSizing.js +12 -0
  665. package/dist/esm/Components/Backdrop/Backdrop.js +28 -0
  666. package/dist/esm/Components/Backdrop/BackdropProps.js +1 -0
  667. package/dist/esm/Components/Breadcrumbs/Breadcrumbs.js +15 -5
  668. package/dist/esm/Components/Breadcrumbs/breadcrumbInk.js +7 -0
  669. package/dist/esm/Components/Button/Button.js +2 -2
  670. package/dist/esm/Components/Button/Button.styles.js +21 -62
  671. package/dist/esm/Components/ButtonGroupIcon/ButtonGoupIconProps.js +2 -1
  672. package/dist/esm/Components/ButtonGroupIcon/ButtonGroupIcon.js +3 -10
  673. package/dist/esm/Components/ButtonGroupIcon/ButtonGroupIconProps.js +1 -0
  674. package/dist/esm/Components/Buttons/Buttons.js +2 -3
  675. package/dist/esm/Components/Card/Card.js +11 -5
  676. package/dist/esm/Components/Card/PaymentCard/PaymentCard.js +13 -9
  677. package/dist/esm/Components/Checkbox/Checkbox.js +11 -9
  678. package/dist/esm/Components/Checkbox/Checkbox.styles.js +42 -37
  679. package/dist/esm/Components/Common/ErrorComponent.js +1 -1
  680. package/dist/esm/Components/Common/ErrorMessage.js +5 -5
  681. package/dist/esm/Components/Common/FieldMessage.js +14 -0
  682. package/dist/esm/Components/Common/FormLabel.js +13 -8
  683. package/dist/esm/Components/Common/HelperText.js +3 -2
  684. package/dist/esm/Components/Common/Label.js +3 -2
  685. package/dist/esm/Components/Common/fieldMessageStyles.js +13 -0
  686. package/dist/esm/Components/Common/fieldStyles.js +66 -29
  687. package/dist/esm/Components/Common/useFieldIds.js +23 -0
  688. package/dist/esm/Components/ConfirmDialog/ConfirmDialog.js +18 -0
  689. package/dist/esm/Components/ConfirmDialog/ConfirmDialogProps.js +1 -0
  690. package/dist/esm/Components/ContactForm/ContactForm.js +19 -15
  691. package/dist/esm/Components/CopyButton/CopyButton.js +3 -4
  692. package/dist/esm/Components/CustomModulesTable/DeleteModuleModal.js +4 -4
  693. package/dist/esm/Components/CustomModulesTable/EditModuleModal.js +2 -4
  694. package/dist/esm/Components/DatePicker/CalendarPanel.js +3 -4
  695. package/dist/esm/Components/DatePicker/DatePicker.js +12 -49
  696. package/dist/esm/Components/DatePicker/DatePickerProps.js +1 -1
  697. package/dist/esm/Components/DatePicker/RangeDatePicker.js +17 -21
  698. package/dist/esm/Components/DatePicker/SingleDatePicker.js +37 -53
  699. package/dist/esm/Components/DatePicker/ThemeDatePicker.js +11 -18
  700. package/dist/esm/Components/DatePicker/TimeOnlyPicker.js +35 -20
  701. package/dist/esm/Components/DatePicker/TimePicker.js +8 -12
  702. package/dist/esm/Components/DatePicker/TimePickerInput.js +5 -11
  703. package/dist/esm/Components/DatePicker/dayStates.js +3 -15
  704. package/dist/esm/Components/DatePicker/pickerField.js +24 -0
  705. package/dist/esm/Components/DatePicker/valueFormat.js +15 -0
  706. package/dist/esm/Components/DescriptionList/DescriptionList.js +27 -0
  707. package/dist/esm/Components/DescriptionList/DescriptionListProps.js +1 -0
  708. package/dist/esm/Components/Drawer/Drawer.js +22 -8
  709. package/dist/esm/Components/Dropdown/DropDown.js +43 -33
  710. package/dist/esm/Components/Editor/Editor.js +13 -1
  711. package/dist/esm/Components/Editor/joditAccessibility.js +24 -0
  712. package/dist/esm/Components/EmailCards/VerifyEmailOtp/VerifyEmailOtp.js +3 -3
  713. package/dist/esm/Components/EmptyState/EmptyState.js +24 -15
  714. package/dist/esm/Components/FeedbackForm/FeedbackForm.js +17 -7
  715. package/dist/esm/Components/FieldSelectModal/FieldSelectModal.js +3 -5
  716. package/dist/esm/Components/FilePreview/FilePreview.js +8 -8
  717. package/dist/esm/Components/FileUpload/FileUpload.js +22 -6
  718. package/dist/esm/Components/FileUpload/constants.js +1 -0
  719. package/dist/esm/Components/FileUploader/FileUploader.js +6 -5
  720. package/dist/esm/Components/FilterBar/FilterBar.js +12 -0
  721. package/dist/esm/Components/FilterBar/FilterBarProps.js +1 -0
  722. package/dist/esm/Components/FilterSidebar/FilterSidebar.js +27 -33
  723. package/dist/esm/Components/FilterSidebar/filterHoverStyle.js +1 -1
  724. package/dist/esm/Components/Form/FormWrapper.js +1 -1
  725. package/dist/esm/Components/Header/Header.js +2 -16
  726. package/dist/esm/Components/Header/HeaderActions.js +4 -4
  727. package/dist/esm/Components/Header/components/desktopMenu.js +10 -11
  728. package/dist/esm/Components/Header/components/mobileMenu.js +23 -20
  729. package/dist/esm/Components/Input/Input/Input.js +3 -2
  730. package/dist/esm/Components/Input/PhoneNumberInput.js +8 -5
  731. package/dist/esm/Components/Input/Switch/InputSwitch.js +16 -21
  732. package/dist/esm/Components/Input/TextInput.js +83 -10
  733. package/dist/esm/Components/Input/TextInput.styles.js +42 -88
  734. package/dist/esm/Components/Input/textInputIconSize.js +4 -20
  735. package/dist/esm/Components/Input/useAriaRequired.js +15 -0
  736. package/dist/esm/Components/InputTextArea/InputTextArea.js +10 -6
  737. package/dist/esm/Components/InputTextArea/InputTextArea.style.js +14 -69
  738. package/dist/esm/Components/KanbanBoard/AccountCard.js +9 -6
  739. package/dist/esm/Components/KanbanBoard/AccountRow.js +1 -1
  740. package/dist/esm/Components/KanbanBoard/KanbanBoard.js +86 -50
  741. package/dist/esm/Components/KanbanBoard/index.js +1 -0
  742. package/dist/esm/Components/LimitReachedModal/LimitReachedModal.js +2 -2
  743. package/dist/esm/Components/LimitReachedModal/limitReachedCopy.js +1 -3
  744. package/dist/esm/Components/Loading/Loading.js +16 -19
  745. package/dist/esm/Components/MediaViewer/MediaViewer.js +196 -0
  746. package/dist/esm/Components/MediaViewer/MediaViewerProps.js +29 -0
  747. package/dist/esm/Components/MediaViewer/components/MediaAudioPlayer.js +133 -0
  748. package/dist/esm/Components/MediaViewer/components/MediaAudioPlayerProps.js +18 -0
  749. package/dist/esm/Components/MediaViewer/components/MediaDocumentStage.js +109 -0
  750. package/dist/esm/Components/MediaViewer/components/MediaDocumentStageProps.js +8 -0
  751. package/dist/esm/Components/MediaViewer/components/MediaImageViewer.js +98 -0
  752. package/dist/esm/Components/MediaViewer/components/MediaImageViewerProps.js +15 -0
  753. package/dist/esm/Components/MediaViewer/components/MediaScrubber.js +87 -0
  754. package/dist/esm/Components/MediaViewer/components/MediaScrubberProps.js +1 -0
  755. package/dist/esm/Components/MediaViewer/components/MediaStatusPanel.js +12 -0
  756. package/dist/esm/Components/MediaViewer/components/MediaStatusPanelProps.js +1 -0
  757. package/dist/esm/Components/MediaViewer/components/MediaVideoPlayer.js +243 -0
  758. package/dist/esm/Components/MediaViewer/components/MediaVideoPlayerProps.js +28 -0
  759. package/dist/esm/Components/MediaViewer/components/TileChip.js +10 -0
  760. package/dist/esm/Components/MediaViewer/components/TileChipProps.js +1 -0
  761. package/dist/esm/Components/MediaViewer/components/VideoPoster.js +11 -0
  762. package/dist/esm/Components/MediaViewer/components/VideoPosterProps.js +1 -0
  763. package/dist/esm/Components/MediaViewer/components/ViewerIconButton.js +15 -0
  764. package/dist/esm/Components/MediaViewer/components/ViewerIconButtonProps.js +1 -0
  765. package/dist/esm/Components/MediaViewer/components/mediaKindIcon.js +18 -0
  766. package/dist/esm/Components/MediaViewer/components/sanitizeDocxHrefs.js +27 -0
  767. package/dist/esm/Components/MediaViewer/hooks/useAutoHideChrome.js +40 -0
  768. package/dist/esm/Components/MediaViewer/hooks/useFileViewer.js +45 -0
  769. package/dist/esm/Components/MediaViewer/mediaItems.js +174 -0
  770. package/dist/esm/Components/MediaViewer/useViewerChrome.js +27 -0
  771. package/dist/esm/Components/Modal/Modal.js +25 -19
  772. package/dist/esm/Components/MoreItems/MoreItems.js +4 -2
  773. package/dist/esm/Components/MultiSelect/MultiSelect.js +19 -18
  774. package/dist/esm/Components/NavigationBar/NavigationBar.js +7 -8
  775. package/dist/esm/Components/NoteTextArea/NoteTextArea.js +15 -10
  776. package/dist/esm/Components/Notification/Notification.js +9 -5
  777. package/dist/esm/Components/NotificationBell/NotificationBell.js +33 -0
  778. package/dist/esm/Components/NotificationBell/NotificationBellProps.js +1 -0
  779. package/dist/esm/Components/NotificationBell/NotificationItem.js +29 -0
  780. package/dist/esm/Components/NotificationBell/NotificationList.js +36 -0
  781. package/dist/esm/Components/NotificationBell/NotificationPanel.js +31 -0
  782. package/dist/esm/Components/NotificationBell/index.js +6 -0
  783. package/dist/esm/Components/NotificationBell/notificationHelpers.js +98 -0
  784. package/dist/esm/Components/NumberInput/NumberInput.js +7 -6
  785. package/dist/esm/Components/NumberInput/NumberInput.styles.js +19 -78
  786. package/dist/esm/Components/OrgSwitcher/OrgSwitcher.js +4 -12
  787. package/dist/esm/Components/OrgSwitcher/OrgSwitcherProps.js +2 -1
  788. package/dist/esm/Components/OrganizationDetails/CreateOrgModal.js +1 -1
  789. package/dist/esm/Components/OrganizationDetails/DeleteOrgModal.js +7 -9
  790. package/dist/esm/Components/OrganizationDetails/OrganizationDetails.js +9 -8
  791. package/dist/esm/Components/PageHeader/PageHeader.js +9 -0
  792. package/dist/esm/Components/PageHeader/PageHeaderProps.js +1 -0
  793. package/dist/esm/Components/PdfViewer/PdfViewer.js +1 -1
  794. package/dist/esm/Components/PersonChip/PersonChip.js +42 -0
  795. package/dist/esm/Components/PersonChip/PersonChipProps.js +1 -0
  796. package/dist/esm/Components/PinInput/PinInput.js +10 -7
  797. package/dist/esm/Components/PinInput/pinInputCellSize.js +6 -0
  798. package/dist/esm/Components/PlanBadge/PlanBadge.js +1 -7
  799. package/dist/esm/Components/PlanPill/PlanPill.js +2 -3
  800. package/dist/esm/Components/PlanPill/planPillGradient.js +6 -20
  801. package/dist/esm/Components/Primitives/Primitives.js +3 -6
  802. package/dist/esm/Components/ProductCard/ProductPrice.js +18 -7
  803. package/dist/esm/Components/ProductCard/ProductReview.js +3 -2
  804. package/dist/esm/Components/ProductDetails/ProductDetails.js +1 -1
  805. package/dist/esm/Components/ProductDetails/ProductDtlPrice.js +5 -5
  806. package/dist/esm/Components/ProductDetails/ProductImageSlider.js +36 -20
  807. package/dist/esm/Components/ProfileCard/ProfileCard.js +25 -10
  808. package/dist/esm/Components/ProfilePhotoViewer/ProfilePhotoViewer.js +7 -4
  809. package/dist/esm/Components/ProgressBar/ProgressBar.js +27 -3
  810. package/dist/esm/Components/QueryState/ErrorState.js +11 -0
  811. package/dist/esm/Components/QueryState/QueryStateBoundary.js +20 -0
  812. package/dist/esm/Components/QueryState/QueryStateProps.js +1 -0
  813. package/dist/esm/Components/RadioButton/RadioButton.js +33 -16
  814. package/dist/esm/Components/RangeSlider/RangeSlider.js +131 -0
  815. package/dist/esm/Components/RangeSlider/RangeSliderProps.js +1 -0
  816. package/dist/esm/Components/RangeSlider/rangeSliderColors.js +7 -0
  817. package/dist/esm/Components/RangeSlider/rangeSliderMath.js +69 -0
  818. package/dist/esm/Components/RangeSlider/rangeSliderSize.js +8 -0
  819. package/dist/esm/Components/Reorder/Reorder.js +2 -2
  820. package/dist/esm/Components/RolesPermission/DeleteRoleModal.js +7 -9
  821. package/dist/esm/Components/RolesPermission/RolesPermission.js +1 -1
  822. package/dist/esm/Components/SaveBar/SaveBar.js +19 -0
  823. package/dist/esm/Components/SaveBar/SaveBarProps.js +1 -0
  824. package/dist/esm/Components/ScrollToTop/ScrollToTop.js +5 -2
  825. package/dist/esm/Components/Search/Search.js +35 -16
  826. package/dist/esm/Components/SearchSelect/SearchSelect.js +62 -76
  827. package/dist/esm/Components/SearchSelect/searchSelectSize.js +15 -15
  828. package/dist/esm/Components/SegmentedControl/SegmentedControl.js +34 -30
  829. package/dist/esm/Components/SegmentedControl/useSlidingPill.js +22 -0
  830. package/dist/esm/Components/Select/Select.js +67 -25
  831. package/dist/esm/Components/Select/Select.styles.js +12 -81
  832. package/dist/esm/Components/Select/SelectNative.js +44 -0
  833. package/dist/esm/Components/Select/SelectPopup.js +377 -0
  834. package/dist/esm/Components/SelectSearch/SelectSearch.js +18 -80
  835. package/dist/esm/Components/SelectV2/SelectV2.js +16 -231
  836. package/dist/esm/Components/SettingRow/SettingRow.js +22 -0
  837. package/dist/esm/Components/SettingRow/SettingRowProps.js +1 -0
  838. package/dist/esm/Components/SettingRow/SettingsSection.js +11 -0
  839. package/dist/esm/Components/SettingRow/SettingsSectionProps.js +1 -0
  840. package/dist/esm/Components/SideBar/SecondaryBar.js +19 -9
  841. package/dist/esm/Components/SideBar/SideBar.js +37 -22
  842. package/dist/esm/Components/SideBar/components/MenuItemBox.js +40 -25
  843. package/dist/esm/Components/SideBar/components/MenuItems.js +4 -4
  844. package/dist/esm/Components/SideBar/components/MenuPopoverContent.js +20 -10
  845. package/dist/esm/Components/SideBar/components/OtherApps.js +3 -3
  846. package/dist/esm/Components/SideBar/components/OverflowTooltipText.js +3 -1
  847. package/dist/esm/Components/SideBar/components/TextTruncation.js +3 -3
  848. package/dist/esm/Components/SideBar/menuDisabled.js +3 -0
  849. package/dist/esm/Components/SideBar/sidebarId.js +2 -0
  850. package/dist/esm/Components/Skeletons/Skeletons.js +2 -2
  851. package/dist/esm/Components/Slider/Slider.js +2 -1
  852. package/dist/esm/Components/Spinner/Spinner.js +19 -0
  853. package/dist/esm/Components/Spinner/SpinnerProps.js +1 -0
  854. package/dist/esm/Components/StageProgress/StageItem.js +12 -4
  855. package/dist/esm/Components/StageProgress/StageProgress.js +6 -7
  856. package/dist/esm/Components/StageProgress/StageProgressProps.js +6 -2
  857. package/dist/esm/Components/StageProgress/StepperStage.js +5 -2
  858. package/dist/esm/Components/StatCard/StatCard.js +37 -0
  859. package/dist/esm/Components/StatCard/StatCardProps.js +1 -0
  860. package/dist/esm/Components/Switch/Switch.js +10 -11
  861. package/dist/esm/Components/Table/Table.js +58 -51
  862. package/dist/esm/Components/Table/components/HeaderActions.js +3 -2
  863. package/dist/esm/Components/Table/components/Pagination.js +1 -1
  864. package/dist/esm/Components/Table/components/TableActions.js +1 -1
  865. package/dist/esm/Components/Table/components/TableBody.js +33 -41
  866. package/dist/esm/Components/Table/components/TableGroupRow.js +1 -1
  867. package/dist/esm/Components/Table/components/TableHeader.js +14 -12
  868. package/dist/esm/Components/Table/components/TableSearch.js +1 -1
  869. package/dist/esm/Components/Table/components/rowMetrics.js +11 -0
  870. package/dist/esm/Components/Table/filters/ActiveFilters.js +7 -4
  871. package/dist/esm/Components/Table/filters/CompactSelect.js +1 -1
  872. package/dist/esm/Components/Table/filters/LeftFilterPane.js +1 -1
  873. package/dist/esm/Components/Table/filters/TableFilters.js +1 -1
  874. package/dist/esm/Components/Table/hooks/useTable.js +14 -23
  875. package/dist/esm/Components/Table/settings/ManageColumns.js +7 -6
  876. package/dist/esm/Components/Table/settings/TableSettings.js +5 -4
  877. package/dist/esm/Components/Table/variants/classic.js +2 -0
  878. package/dist/esm/Components/Table/variants/stripe.js +3 -0
  879. package/dist/esm/Components/Table/variants/studio.js +2 -0
  880. package/dist/esm/Components/Tabs/Tabs.js +65 -0
  881. package/dist/esm/Components/Tabs/TabsContext.js +10 -0
  882. package/dist/esm/Components/Tabs/TabsProps.js +1 -0
  883. package/dist/esm/Components/Tabs/components/CountBadge.js +15 -0
  884. package/dist/esm/Components/Tabs/components/Tab.js +34 -0
  885. package/dist/esm/Components/Tabs/components/TabList.js +69 -0
  886. package/dist/esm/Components/Tabs/components/TabPanel.js +15 -0
  887. package/dist/esm/Components/Tabs/components/TabPanels.js +12 -0
  888. package/dist/esm/Components/Tabs/index.js +5 -0
  889. package/dist/esm/Components/Tabs/tabStyles.js +33 -0
  890. package/dist/esm/Components/Tag/Tag.js +15 -7
  891. package/dist/esm/Components/Tag/Tag.styles.js +44 -37
  892. package/dist/esm/Components/Timeline/Timeline.js +42 -30
  893. package/dist/esm/Components/Toaster/Toaster.js +73 -58
  894. package/dist/esm/Components/Toaster/toastDuration.js +3 -0
  895. package/dist/esm/Components/Toggle/TableToggle.js +9 -24
  896. package/dist/esm/Components/ToggleSwitch/ToggleSwitch.js +39 -8
  897. package/dist/esm/Components/ToolTip/OverflowToolTip.js +1 -15
  898. package/dist/esm/Components/ToolTip/ToolTip.js +14 -14
  899. package/dist/esm/Components/UpgradeButton/UpgradeButton.js +9 -14
  900. package/dist/esm/Components/UserDetails/AddUserModal.js +1 -1
  901. package/dist/esm/Components/UserDetails/ChangeRoleModal.js +1 -1
  902. package/dist/esm/Components/UserDetails/DeactivateConfirmModal.js +6 -8
  903. package/dist/esm/Components/UserDetails/UserDetails.js +7 -9
  904. package/dist/esm/Components/WorkspaceWindow/WorkspaceTrayPreview.js +2 -14
  905. package/dist/esm/Components/WorkspaceWindow/WorkspaceWindow.js +6 -23
  906. package/dist/esm/Constants/Sidebar.js +0 -15
  907. package/dist/esm/Hooks/useDebounce.js +29 -0
  908. package/dist/esm/Hooks/useExclusiveOverlay.js +1 -4
  909. package/dist/esm/Hooks/useFullscreen.js +29 -0
  910. package/dist/esm/Hooks/useIsTruncated.js +1 -30
  911. package/dist/esm/Hooks/usePreferences.js +1 -6
  912. package/dist/esm/Hooks/useSidebarPrefs.js +1 -2
  913. package/dist/esm/Theme/assertPalette.js +2 -2
  914. package/dist/esm/Theme/chakra/Card.styles.js +45 -0
  915. package/dist/esm/Theme/chakra/Drawer.styles.js +14 -13
  916. package/dist/esm/Theme/chakra/Menu.styles.js +2 -23
  917. package/dist/esm/Theme/chakra/Modal.styles.js +15 -13
  918. package/dist/esm/Theme/chakra/Popover.styles.js +2 -10
  919. package/dist/esm/Theme/chakra/Slider.styles.js +1 -6
  920. package/dist/esm/Theme/chakra/common.web.js +1 -7
  921. package/dist/esm/Theme/chakra/componentStyles.js +68 -88
  922. package/dist/esm/Theme/chakra/createBrandTheme.js +6 -50
  923. package/dist/esm/Theme/chakra/focusRing.styles.js +4 -23
  924. package/dist/esm/Theme/chakra/fonts.web.js +1 -5
  925. package/dist/esm/Theme/chakra/motion.js +22 -0
  926. package/dist/esm/Theme/chakra/overlay.styles.js +43 -0
  927. package/dist/esm/Theme/chakra/paletteFromTheme.js +1 -4
  928. package/dist/esm/Theme/index.js +3 -18
  929. package/dist/esm/Theme/provider/PixelizeThemeProvider.js +6 -74
  930. package/dist/esm/Theme/provider/ThemeSwitcher.js +2 -10
  931. package/dist/esm/Theme/provider/colorModeStorage.js +1 -4
  932. package/dist/esm/Theme/tokens/brands/emerald/palette.dark.js +0 -4
  933. package/dist/esm/Theme/tokens/brands/emerald/palette.light.js +2 -10
  934. package/dist/esm/Theme/tokens/brands/index.js +4 -4
  935. package/dist/esm/Theme/tokens/brands/lavender/palette.dark.js +0 -4
  936. package/dist/esm/Theme/tokens/brands/lavender/palette.light.js +4 -13
  937. package/dist/esm/Theme/tokens/brands/meadow/palette.dark.js +0 -4
  938. package/dist/esm/Theme/tokens/brands/meadow/palette.light.js +2 -11
  939. package/dist/esm/Theme/tokens/brands/radiant/palette.dark.js +0 -4
  940. package/dist/esm/Theme/tokens/brands/radiant/palette.light.js +2 -10
  941. package/dist/esm/Theme/tokens/brands/rosewood/palette.dark.js +0 -4
  942. package/dist/esm/Theme/tokens/brands/rosewood/palette.light.js +2 -14
  943. package/dist/esm/Theme/tokens/brands/skyline/palette.dark.js +0 -4
  944. package/dist/esm/Theme/tokens/brands/skyline/palette.light.js +2 -11
  945. package/dist/esm/Theme/tokens/brands/slate/palette.dark.js +0 -4
  946. package/dist/esm/Theme/tokens/brands/slate/palette.light.js +1 -11
  947. package/dist/esm/Theme/tokens/brands/storefront/palette.dark.js +0 -4
  948. package/dist/esm/Theme/tokens/brands/zinc/palette.dark.js +5 -35
  949. package/dist/esm/Theme/tokens/brands/zinc/palette.light.js +3 -12
  950. package/dist/esm/Theme/tokens/builders/accentText.js +5 -48
  951. package/dist/esm/Theme/tokens/builders/brandInk.js +18 -2
  952. package/dist/esm/Theme/tokens/builders/buildBrandTokens.js +1 -3
  953. package/dist/esm/Theme/tokens/builders/buildDarkPalette.js +15 -103
  954. package/dist/esm/Theme/tokens/builders/chartColorsFromTheme.js +1 -8
  955. package/dist/esm/Theme/tokens/builders/color.js +3 -20
  956. package/dist/esm/Theme/tokens/builders/filledSurface.js +35 -25
  957. package/dist/esm/Theme/tokens/builders/focusRing.js +5 -49
  958. package/dist/esm/Theme/tokens/builders/gradientInk.js +2 -10
  959. package/dist/esm/Theme/tokens/builders/index.js +4 -0
  960. package/dist/esm/Theme/tokens/builders/outlineRung.js +4 -70
  961. package/dist/esm/Theme/tokens/builders/placeholderInk.js +2 -12
  962. package/dist/esm/Theme/tokens/builders/resolvedRungs.js +1 -5
  963. package/dist/esm/Theme/tokens/builders/rowStates.js +5 -9
  964. package/dist/esm/Theme/tokens/builders/scrim.js +12 -0
  965. package/dist/esm/Theme/tokens/builders/scrollbar.js +1 -4
  966. package/dist/esm/Theme/tokens/builders/semanticText.js +1 -5
  967. package/dist/esm/Theme/tokens/builders/sidebarAccent.js +11 -0
  968. package/dist/esm/Theme/tokens/builders/statusTone.js +4 -19
  969. package/dist/esm/Theme/tokens/builders/surfaceRaised.js +15 -0
  970. package/dist/esm/Theme/tokens/builders/surfaceRungs.js +3 -9
  971. package/dist/esm/Theme/tokens/builders/tone.js +47 -0
  972. package/dist/esm/Theme/tokens/builders/tooltipSurface.js +6 -0
  973. package/dist/esm/Theme/tokens/builders/viewportHeight.js +6 -0
  974. package/dist/esm/Theme/tokens/index.js +1 -10
  975. package/dist/esm/Theme/tokens/primitives/controlSizes.js +10 -0
  976. package/dist/esm/Theme/tokens/primitives/index.js +2 -0
  977. package/dist/esm/Theme/tokens/primitives/motion.js +8 -0
  978. package/dist/esm/Theme/tokens/primitives/sizes.js +1 -4
  979. package/dist/esm/Theme/tokens/primitives/typography.js +1 -7
  980. package/dist/esm/Theme/tokens/types.js +1 -6
  981. package/dist/esm/Utils/accountHandoff.js +2 -17
  982. package/dist/esm/Utils/apiError.js +24 -0
  983. package/dist/esm/Utils/functions.js +6 -4
  984. package/dist/esm/Utils/humanize.js +15 -0
  985. package/dist/esm/Utils/lazyWithRetry.js +45 -0
  986. package/dist/esm/Utils/mergeRefs.js +1 -5
  987. package/dist/esm/Utils/planBadge.js +2 -12
  988. package/dist/esm/Utils/planExpiry.js +4 -29
  989. package/dist/esm/Utils/rafThrottle.js +1 -11
  990. package/dist/esm/Utils/table.js +15 -54
  991. package/dist/esm/Utils/validation.js +73 -0
  992. package/dist/esm/index.js +64 -2
  993. package/dist/global.css +6 -1
  994. package/dist/index.d.ts +110 -6
  995. package/dist/index.js +192 -4
  996. package/package.json +11 -3
  997. package/dist/Assets/defaultLogo.tsx +0 -26
  998. package/dist/Components/PinInputs/PinInputs.d.ts +0 -4
  999. package/dist/Components/PinInputs/PinInputs.js +0 -47
  1000. package/dist/Components/PinInputs/PinInputsProps.d.ts +0 -10
  1001. package/dist/Components/Table/hooks/useDebounce.d.ts +0 -2
  1002. package/dist/Components/Table/hooks/useDebounce.js +0 -24
  1003. package/dist/Components/Trail/EditableCell.d.ts +0 -13
  1004. package/dist/Components/Trail/EditableCell.js +0 -35
  1005. package/dist/Components/Trail/SelectAllCheckbox.d.ts +0 -9
  1006. package/dist/Components/Trail/SelectAllCheckbox.js +0 -10
  1007. package/dist/Components/Trail/TrailWorks.d.ts +0 -3
  1008. package/dist/Components/Trail/TrailWorks.js +0 -57
  1009. package/dist/Components/Trail/data.d.ts +0 -15
  1010. package/dist/Components/Trail/data.js +0 -29
  1011. package/dist/Theme/chakra/Avatar.styles.d.ts +0 -32
  1012. package/dist/Theme/chakra/Avatar.styles.js +0 -28
  1013. package/dist/Theme/chakra/Switch.styles.d.ts +0 -30
  1014. package/dist/Theme/chakra/Switch.styles.js +0 -22
  1015. package/dist/Theme/chakra/Tabs.styles.d.ts +0 -42
  1016. package/dist/Theme/chakra/Tabs.styles.js +0 -36
  1017. package/dist/esm/Components/PinInputs/PinInputs.js +0 -42
  1018. package/dist/esm/Components/Table/hooks/useDebounce.js +0 -22
  1019. package/dist/esm/Components/Trail/EditableCell.js +0 -31
  1020. package/dist/esm/Components/Trail/SelectAllCheckbox.js +0 -6
  1021. package/dist/esm/Components/Trail/TrailWorks.js +0 -55
  1022. package/dist/esm/Components/Trail/data.js +0 -26
  1023. package/dist/esm/Theme/chakra/Avatar.styles.js +0 -25
  1024. package/dist/esm/Theme/chakra/Switch.styles.js +0 -19
  1025. package/dist/esm/Theme/chakra/Tabs.styles.js +0 -33
  1026. /package/dist/Components/{PinInputs/PinInputsProps.js → Avatar/AvatarGroupProps.js} +0 -0
  1027. /package/dist/esm/Components/{PinInputs/PinInputsProps.js → Avatar/AvatarGroupProps.js} +0 -0
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const jsx_runtime_1 = require("react/jsx-runtime");
4
+ const react_1 = require("react");
5
+ const react_2 = require("@chakra-ui/react");
6
+ const focusRing_1 = require("../../../Theme/tokens/builders/focusRing");
7
+ const useViewerChrome_1 = require("../useViewerChrome");
8
+ const STEP_SECONDS = 5;
9
+ const BIG_STEP_SECONDS = 30;
10
+ const clamp = (value, min, max) => Math.min(max, Math.max(min, value));
11
+ /** Shared scrubber for video and audio — buffered range, hover/drag time tooltip, full keyboard slider semantics. */
12
+ const MediaScrubber = ({ value, max, buffered = [], onSeek, onPreview, ariaLabel, ariaValueText, formatTime, isDisabled = false, testId, }) => {
13
+ const chrome = (0, useViewerChrome_1.useViewerChrome)();
14
+ const trackRef = (0, react_1.useRef)(null);
15
+ const dragging = (0, react_1.useRef)(false);
16
+ const [hovering, setHovering] = (0, react_1.useState)(false);
17
+ const [previewX, setPreviewX] = (0, react_1.useState)(null);
18
+ const ring = (0, focusRing_1.settleBetween)(chrome.accent, [chrome.stage, chrome.raised, chrome.hover]);
19
+ const disabled = isDisabled || !Number.isFinite(max) || max <= 0;
20
+ const fraction = disabled ? 0 : clamp(value / max, 0, 1);
21
+ const fractionAt = (clientX) => {
22
+ var _a;
23
+ const rect = (_a = trackRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
24
+ if (!rect || rect.width === 0)
25
+ return 0;
26
+ return clamp((clientX - rect.left) / rect.width, 0, 1);
27
+ };
28
+ const previewAt = (clientX) => {
29
+ const f = fractionAt(clientX);
30
+ setPreviewX(f * 100);
31
+ onPreview === null || onPreview === void 0 ? void 0 : onPreview(f * max);
32
+ };
33
+ const endPreview = () => {
34
+ setPreviewX(null);
35
+ onPreview === null || onPreview === void 0 ? void 0 : onPreview(null);
36
+ };
37
+ const onPointerDown = (event) => {
38
+ if (disabled)
39
+ return;
40
+ event.currentTarget.setPointerCapture(event.pointerId);
41
+ dragging.current = true;
42
+ previewAt(event.clientX);
43
+ };
44
+ const onPointerMove = (event) => {
45
+ if (disabled)
46
+ return;
47
+ if (dragging.current)
48
+ previewAt(event.clientX);
49
+ else if (hovering)
50
+ previewAt(event.clientX);
51
+ };
52
+ const onPointerUp = (event) => {
53
+ if (disabled || !dragging.current)
54
+ return;
55
+ dragging.current = false;
56
+ onSeek(fractionAt(event.clientX) * max);
57
+ if (!hovering)
58
+ endPreview();
59
+ };
60
+ const onKeyDown = (event) => {
61
+ if (disabled)
62
+ return;
63
+ let next = null;
64
+ if (event.key === "ArrowRight" || event.key === "ArrowUp")
65
+ next = value + STEP_SECONDS;
66
+ else if (event.key === "ArrowLeft" || event.key === "ArrowDown")
67
+ next = value - STEP_SECONDS;
68
+ else if (event.key === "PageUp")
69
+ next = value + BIG_STEP_SECONDS;
70
+ else if (event.key === "PageDown")
71
+ next = value - BIG_STEP_SECONDS;
72
+ else if (event.key === "Home")
73
+ next = 0;
74
+ else if (event.key === "End")
75
+ next = max;
76
+ if (next === null)
77
+ return;
78
+ event.preventDefault();
79
+ onSeek(clamp(next, 0, max));
80
+ };
81
+ const trackH = hovering || dragging.current ? "6px" : "4px";
82
+ const previewLabel = previewX !== null ? formatTime((previewX / 100) * max) : null;
83
+ return ((0, jsx_runtime_1.jsxs)(react_2.Box, { position: "relative", py: 2, cursor: disabled ? "default" : "pointer", onMouseEnter: () => setHovering(true), onMouseLeave: () => {
84
+ setHovering(false);
85
+ if (!dragging.current)
86
+ endPreview();
87
+ }, children: [previewLabel !== null ? ((0, jsx_runtime_1.jsx)(react_2.Box, { position: "absolute", bottom: "100%", left: `${previewX}%`, transform: "translateX(-50%)", mb: 1, px: 2, py: 0.5, borderRadius: "4px", bg: chrome.raised, color: chrome.ink, fontSize: "xs", fontWeight: 600, whiteSpace: "nowrap", pointerEvents: "none", sx: { fontVariantNumeric: "tabular-nums" }, "data-testid": testId ? `${testId}-tooltip` : undefined, children: previewLabel })) : null, (0, jsx_runtime_1.jsxs)(react_2.Box, { ref: trackRef, role: "slider", tabIndex: disabled ? -1 : 0, "aria-label": ariaLabel, "aria-orientation": "horizontal", "aria-valuemin": 0, "aria-valuemax": disabled ? 0 : max, "aria-valuenow": disabled ? 0 : value, "aria-valuetext": disabled ? undefined : ariaValueText(value), "aria-disabled": disabled || undefined, position: "relative", h: trackH, borderRadius: "full", bg: chrome.track, transition: "height 0.12s ease-out", onPointerDown: onPointerDown, onPointerMove: onPointerMove, onPointerUp: onPointerUp, onPointerCancel: onPointerUp, onKeyDown: onKeyDown, _focusVisible: { boxShadow: `0 0 0 2px ${ring}` }, "data-testid": testId, children: [buffered.map((range, i) => ((0, jsx_runtime_1.jsx)(react_2.Box, { position: "absolute", top: 0, bottom: 0, left: `${disabled ? 0 : clamp(range.start / max, 0, 1) * 100}%`, width: `${disabled ? 0 : (clamp(range.end / max, 0, 1) - clamp(range.start / max, 0, 1)) * 100}%`, bg: chrome.hover, borderRadius: "full" }, i))), (0, jsx_runtime_1.jsx)(react_2.Box, { position: "absolute", top: 0, bottom: 0, left: 0, width: `${fraction * 100}%`, bg: chrome.accent, borderRadius: "full" }), (0, jsx_runtime_1.jsx)(react_2.Box, { position: "absolute", top: "50%", left: `${fraction * 100}%`, transform: "translate(-50%, -50%)", boxSize: hovering || dragging.current ? "14px" : "0px", borderRadius: "full", bg: chrome.ink, transition: "width 0.12s ease-out, height 0.12s ease-out", pointerEvents: "none" })] })] }));
88
+ };
89
+ exports.default = MediaScrubber;
@@ -0,0 +1,30 @@
1
+ /** One contiguous buffered time range, as reported by `HTMLMediaElement.buffered`. */
2
+ export interface BufferedRange {
3
+ /** Range start, in seconds. */
4
+ start: number;
5
+ /** Range end, in seconds. */
6
+ end: number;
7
+ }
8
+ /** Props for the shared video/audio scrubber — a custom `role="slider"`, not Chakra's Slider. */
9
+ export interface MediaScrubberProps {
10
+ /** Current committed playback position, in seconds. */
11
+ value: number;
12
+ /** Duration in seconds; a non-finite/zero value disables the scrubber. */
13
+ max: number;
14
+ /** Buffered ranges (from `video.buffered`), plotted behind the play progress. */
15
+ buffered?: BufferedRange[];
16
+ /** Fires on keyboard step, click and drag-release — the caller should seek the media here. */
17
+ onSeek: (seconds: number) => void;
18
+ /** Fires continuously while hovering/dragging, and with `null` when the pointer leaves — preview only, never seeks. */
19
+ onPreview?: (seconds: number | null) => void;
20
+ /** Accessible name of the `role="slider"` track. */
21
+ ariaLabel: string;
22
+ /** Builds the track's `aria-valuetext`; skipped while disabled. */
23
+ ariaValueText: (seconds: number) => string;
24
+ /** Formats the hover/drag tooltip's timestamp. */
25
+ formatTime: (seconds: number) => string;
26
+ /** Also forced true whenever `max` is non-finite or `<= 0`. */
27
+ isDisabled?: boolean;
28
+ /** Base `data-testid`; the hover tooltip gets `${testId}-tooltip`. */
29
+ testId?: string;
30
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ import type { MediaStatusPanelProps } from "./MediaStatusPanelProps";
3
+ /** One panel for every non-preview stage state — loading/error/missing/no-preview — icon and wording vary, layout never does. */
4
+ declare const MediaStatusPanel: React.FC<MediaStatusPanelProps>;
5
+ export default MediaStatusPanel;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const jsx_runtime_1 = require("react/jsx-runtime");
4
+ const react_1 = require("react");
5
+ const react_2 = require("@chakra-ui/react");
6
+ const lucide_react_1 = require("lucide-react");
7
+ const useViewerChrome_1 = require("../useViewerChrome");
8
+ /** One panel for every non-preview stage state — loading/error/missing/no-preview — icon and wording vary, layout never does. */
9
+ const MediaStatusPanel = ({ icon, label, message, hint, downloadHref, downloadLabel, tone = "neutral", testId, downloadTestId, }) => {
10
+ const chrome = (0, useViewerChrome_1.useViewerChrome)();
11
+ const warning = tone === "warning";
12
+ return ((0, jsx_runtime_1.jsxs)(react_2.Flex, { position: "absolute", inset: 0, direction: "column", align: "center", justify: "center", gap: 3, px: { base: 14, md: 16 }, textAlign: "center", color: chrome.ink, role: warning ? "alert" : undefined, "data-testid": testId, children: [(0, jsx_runtime_1.jsx)(react_2.Box, { color: warning ? chrome.accent : chrome.muted, children: (0, react_1.cloneElement)(icon, { size: 48, "aria-hidden": true }) }), (0, jsx_runtime_1.jsx)(react_2.Text, { fontWeight: 600, wordBreak: "break-word", children: label }), (0, jsx_runtime_1.jsx)(react_2.Text, { fontSize: "sm", color: chrome.muted, children: message }), hint ? ((0, jsx_runtime_1.jsx)(react_2.Text, { fontSize: "sm", color: chrome.muted, children: hint })) : null, downloadHref ? ((0, jsx_runtime_1.jsx)(react_2.Button, { as: react_2.Link, href: downloadHref, download: label, size: "sm", colorScheme: "primary", leftIcon: (0, jsx_runtime_1.jsx)(lucide_react_1.Download, { size: 16, "aria-hidden": true }), "data-testid": downloadTestId !== null && downloadTestId !== void 0 ? downloadTestId : (testId ? `${testId}-download` : undefined), children: downloadLabel })) : null] }));
13
+ };
14
+ exports.default = MediaStatusPanel;
@@ -0,0 +1,24 @@
1
+ import type { ReactElement } from "react";
2
+ /** Non-preview state a stage can be in: pick the icon/wording/download combo that fits. */
3
+ export type MediaStatusTone = "neutral" | "warning";
4
+ /** Props for the shared no-preview/error/missing panel — vary icon/wording/download, never the layout. */
5
+ export interface MediaStatusPanelProps {
6
+ /** Rendered at 48px, `aria-hidden`; tinted by `tone`. */
7
+ icon: ReactElement;
8
+ /** File/item name shown as the panel's headline. */
9
+ label: string;
10
+ /** Body text under the headline. */
11
+ message: string;
12
+ /** Optional extra line under `message`. */
13
+ hint?: string;
14
+ /** Shows the download button when set; omit to render no download action. */
15
+ downloadHref?: string;
16
+ /** Download button's visible text and accessible name. */
17
+ downloadLabel: string;
18
+ /** "warning" renders `role="alert"` and the warning icon tint — use for error/missing/denied states. */
19
+ tone?: MediaStatusTone;
20
+ /** Root `data-testid`. */
21
+ testId?: string;
22
+ /** Overrides the download button's own testid; defaults to `${testId}-download`. */
23
+ downloadTestId?: string;
24
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { type MediaVideoPlayerProps } from "./MediaVideoPlayerProps";
3
+ declare const MediaVideoPlayer: React.FC<MediaVideoPlayerProps>;
4
+ export default MediaVideoPlayer;
@@ -0,0 +1,248 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const jsx_runtime_1 = require("react/jsx-runtime");
7
+ const react_1 = require("react");
8
+ const react_2 = require("@chakra-ui/react");
9
+ const react_3 = require("@emotion/react");
10
+ const lucide_react_1 = require("lucide-react");
11
+ const useFullscreen_1 = require("../../../Hooks/useFullscreen");
12
+ const focusRing_1 = require("../../../Theme/tokens/builders/focusRing");
13
+ const mediaItems_1 = require("../mediaItems");
14
+ const useAutoHideChrome_1 = require("../hooks/useAutoHideChrome");
15
+ const motion_1 = require("../../../Theme/chakra/motion");
16
+ const useViewerChrome_1 = require("../useViewerChrome");
17
+ const MediaScrubber_1 = __importDefault(require("./MediaScrubber"));
18
+ const MediaStatusPanel_1 = __importDefault(require("./MediaStatusPanel"));
19
+ const ViewerIconButton_1 = __importDefault(require("./ViewerIconButton"));
20
+ const MediaVideoPlayerProps_1 = require("./MediaVideoPlayerProps");
21
+ const hasIosVideoFullscreen = () => typeof HTMLVideoElement !== "undefined" && "webkitEnterFullscreen" in HTMLVideoElement.prototype;
22
+ const isActivatable = (target) => target instanceof HTMLElement && /^(button|a)$/i.test(target.tagName);
23
+ const DOUBLE_CLICK_WINDOW_MS = 260;
24
+ const RIPPLE_LIFETIME_MS = 650;
25
+ const SKIP_SECONDS = 10;
26
+ const ARROW_SEEK_SECONDS = 5;
27
+ const ARROW_VOLUME_STEP = 0.1;
28
+ const spin = (0, react_3.keyframes) `from { transform: rotate(0deg); } to { transform: rotate(360deg); }`;
29
+ const rippleFade = (0, react_3.keyframes) `0% { opacity: 0.9; } 100% { opacity: 0; }`;
30
+ const seekIcon = (icon) => ((0, jsx_runtime_1.jsxs)(react_2.Flex, { as: "span", align: "center", gap: "2px", "aria-hidden": true, children: [icon, (0, jsx_runtime_1.jsx)(react_2.Text, { as: "span", fontSize: "xs", fontWeight: 600, children: mediaItems_1.SEEK_STEP_SECONDS })] }));
31
+ const MediaVideoPlayer = ({ item, label, onTimeChange, onPrevious, onNext, labels: labelOverrides, }) => {
32
+ const labels = { ...MediaVideoPlayerProps_1.defaultMediaVideoPlayerLabels, ...labelOverrides };
33
+ const chrome = (0, useViewerChrome_1.useViewerChrome)();
34
+ const reducedMotion = (0, motion_1.usePrefersReducedMotion)();
35
+ const shellRef = (0, react_1.useRef)(null);
36
+ const videoRef = (0, react_1.useRef)(null);
37
+ const [playing, setPlaying] = (0, react_1.useState)(false);
38
+ const [current, setCurrent] = (0, react_1.useState)(0);
39
+ const [duration, setDuration] = (0, react_1.useState)(0);
40
+ const [volume, setVolume] = (0, react_1.useState)(1);
41
+ const [muted, setMuted] = (0, react_1.useState)(false);
42
+ const [rate, setRate] = (0, react_1.useState)(1);
43
+ const [hasCaptions, setHasCaptions] = (0, react_1.useState)(false);
44
+ const [captionsOn, setCaptionsOn] = (0, react_1.useState)(false);
45
+ const [failed, setFailed] = (0, react_1.useState)(false);
46
+ const [buffering, setBuffering] = (0, react_1.useState)(false);
47
+ const [buffered, setBuffered] = (0, react_1.useState)([]);
48
+ const [ripple, setRipple] = (0, react_1.useState)(null);
49
+ const [announcement, setAnnouncement] = (0, react_1.useState)("");
50
+ const [volumeHover, setVolumeHover] = (0, react_1.useState)(false);
51
+ const unsupported = (0, mediaItems_1.isUnsupportedVideoSrc)(item.src);
52
+ const { isFullscreen, toggle: toggleShellFullscreen, isSupported: shellFullscreen, } = (0, useFullscreen_1.useFullscreen)(shellRef);
53
+ const iosFullscreen = !shellFullscreen && hasIosVideoFullscreen();
54
+ const pipSupported = typeof document !== "undefined" && document.pictureInPictureEnabled === true;
55
+ const ring = (0, focusRing_1.settleBetween)(chrome.accent, [chrome.stage, chrome.raised, chrome.hover]);
56
+ const { visible: chromeVisible, handlers: chromeHandlers } = (0, useAutoHideChrome_1.useAutoHideChrome)(shellRef, playing && !unsupported);
57
+ const video = () => videoRef.current;
58
+ const togglePlay = () => {
59
+ const v = video();
60
+ if (!v)
61
+ return;
62
+ if (v.paused)
63
+ void v.play().catch(() => setPlaying(false));
64
+ else
65
+ v.pause();
66
+ };
67
+ const seekTo = (seconds) => {
68
+ const v = video();
69
+ if (!v)
70
+ return;
71
+ const max = Number.isFinite(v.duration) ? v.duration : seconds;
72
+ v.currentTime = Math.min(max, Math.max(0, seconds));
73
+ setCurrent(v.currentTime);
74
+ };
75
+ const seekBy = (delta) => { var _a, _b; return seekTo(((_b = (_a = video()) === null || _a === void 0 ? void 0 : _a.currentTime) !== null && _b !== void 0 ? _b : 0) + delta); };
76
+ const toggleMute = () => {
77
+ const v = video();
78
+ if (!v)
79
+ return;
80
+ v.muted = !v.muted;
81
+ if (!v.muted && v.volume === 0)
82
+ v.volume = 0.5;
83
+ };
84
+ const changeVolume = (value) => {
85
+ const v = video();
86
+ if (!v)
87
+ return;
88
+ v.volume = value / 100;
89
+ v.muted = value === 0;
90
+ };
91
+ const changeRate = (value) => {
92
+ const v = video();
93
+ if (v)
94
+ v.playbackRate = value;
95
+ setRate(value);
96
+ };
97
+ const toggleCaptions = () => {
98
+ const v = video();
99
+ if (!v)
100
+ return;
101
+ const next = !captionsOn;
102
+ for (const track of Array.from(v.textTracks))
103
+ track.mode = next ? "showing" : "hidden";
104
+ setCaptionsOn(next);
105
+ };
106
+ const togglePip = async () => {
107
+ const v = video();
108
+ if (!v)
109
+ return;
110
+ try {
111
+ if (document.pictureInPictureElement)
112
+ await document.exitPictureInPicture();
113
+ else
114
+ await v.requestPictureInPicture();
115
+ }
116
+ catch {
117
+ return;
118
+ }
119
+ };
120
+ const toggleFullscreen = async () => {
121
+ var _a;
122
+ if (!iosFullscreen)
123
+ return toggleShellFullscreen();
124
+ const v = videoRef.current;
125
+ (_a = v === null || v === void 0 ? void 0 : v.webkitEnterFullscreen) === null || _a === void 0 ? void 0 : _a.call(v);
126
+ };
127
+ const skip = (delta, side) => {
128
+ seekBy(delta);
129
+ setRipple({ side, nonce: Date.now() });
130
+ setAnnouncement(delta < 0 ? labels.skipBack(Math.abs(delta)) : labels.skipForward(delta));
131
+ };
132
+ const actions = (0, react_1.useRef)({ togglePlay, seekBy, toggleMute, toggleCaptions, toggleFullscreen, togglePip, changeVolume });
133
+ (0, react_1.useEffect)(() => {
134
+ actions.current = { togglePlay, seekBy, toggleMute, toggleCaptions, toggleFullscreen, togglePip, changeVolume };
135
+ });
136
+ (0, react_1.useEffect)(() => {
137
+ const onKey = (event) => {
138
+ var _a, _b, _c, _d, _e, _f;
139
+ if (event.ctrlKey || event.metaKey || event.altKey || (0, mediaItems_1.isTypingTarget)(event.target))
140
+ return;
141
+ const a = actions.current;
142
+ const key = event.key.toLowerCase();
143
+ const playerHasFocus = (_b = (_a = shellRef.current) === null || _a === void 0 ? void 0 : _a.contains(document.activeElement)) !== null && _b !== void 0 ? _b : false;
144
+ if (key === " " || key === "k") {
145
+ if (key === " " && isActivatable(event.target))
146
+ return;
147
+ a.togglePlay();
148
+ }
149
+ else if (key === "j")
150
+ a.seekBy(-mediaItems_1.SEEK_STEP_SECONDS);
151
+ else if (key === "l")
152
+ a.seekBy(mediaItems_1.SEEK_STEP_SECONDS);
153
+ else if (key === "m")
154
+ a.toggleMute();
155
+ else if (key === "c")
156
+ a.toggleCaptions();
157
+ else if (key === "f")
158
+ void a.toggleFullscreen();
159
+ else if (key === "p")
160
+ void a.togglePip();
161
+ else if (playerHasFocus && event.key === "ArrowRight")
162
+ a.seekBy(ARROW_SEEK_SECONDS);
163
+ else if (playerHasFocus && event.key === "ArrowLeft")
164
+ a.seekBy(-ARROW_SEEK_SECONDS);
165
+ else if (playerHasFocus && event.key === "ArrowUp")
166
+ a.changeVolume(Math.min(100, ((_d = (_c = video()) === null || _c === void 0 ? void 0 : _c.volume) !== null && _d !== void 0 ? _d : 0) * 100 + ARROW_VOLUME_STEP * 100));
167
+ else if (playerHasFocus && event.key === "ArrowDown")
168
+ a.changeVolume(Math.max(0, ((_f = (_e = video()) === null || _e === void 0 ? void 0 : _e.volume) !== null && _f !== void 0 ? _f : 0) * 100 - ARROW_VOLUME_STEP * 100));
169
+ else
170
+ return;
171
+ event.preventDefault();
172
+ };
173
+ const el = videoRef.current;
174
+ window.addEventListener("keydown", onKey);
175
+ return () => {
176
+ window.removeEventListener("keydown", onKey);
177
+ el === null || el === void 0 ? void 0 : el.pause();
178
+ };
179
+ }, []);
180
+ (0, react_1.useEffect)(() => {
181
+ setPlaying(false);
182
+ setCurrent(0);
183
+ setDuration(0);
184
+ setRate(1);
185
+ setHasCaptions(false);
186
+ setCaptionsOn(false);
187
+ setFailed(false);
188
+ setBuffering(false);
189
+ setBuffered([]);
190
+ if (videoRef.current)
191
+ videoRef.current.playbackRate = 1;
192
+ }, [item.key]);
193
+ (0, react_1.useEffect)(() => {
194
+ if (!ripple)
195
+ return undefined;
196
+ const t = window.setTimeout(() => setRipple(null), RIPPLE_LIFETIME_MS);
197
+ return () => window.clearTimeout(t);
198
+ }, [ripple]);
199
+ const clickState = (0, react_1.useRef)({
200
+ pending: false,
201
+ timer: null,
202
+ });
203
+ const onStageClick = (event) => {
204
+ const rect = event.currentTarget.getBoundingClientRect();
205
+ const xFraction = (event.clientX - rect.left) / rect.width;
206
+ const state = clickState.current;
207
+ if (state.pending) {
208
+ if (state.timer)
209
+ clearTimeout(state.timer);
210
+ state.pending = false;
211
+ if (xFraction < 1 / 3)
212
+ skip(-SKIP_SECONDS, "left");
213
+ else if (xFraction > 2 / 3)
214
+ skip(SKIP_SECONDS, "right");
215
+ else
216
+ togglePlay();
217
+ return;
218
+ }
219
+ state.pending = true;
220
+ state.timer = setTimeout(() => {
221
+ state.pending = false;
222
+ togglePlay();
223
+ }, DOUBLE_CLICK_WINDOW_MS);
224
+ };
225
+ const clock = (seconds) => (0, mediaItems_1.formatClock)(seconds);
226
+ const effectiveVolume = muted ? 0 : Math.round(volume * 100);
227
+ const fadeTransition = reducedMotion ? "none" : "opacity 0.2s ease-out";
228
+ const scrimTop = `linear-gradient(to bottom, ${chrome.scrim(0.75)}, ${chrome.scrim(0)})`;
229
+ const scrimBottom = `linear-gradient(to top, ${chrome.scrim(0.85)}, ${chrome.scrim(0)})`;
230
+ const showChrome = chromeVisible || !playing;
231
+ if (unsupported) {
232
+ return ((0, jsx_runtime_1.jsx)(react_2.Box, { position: "absolute", inset: 0, bg: chrome.stage, children: (0, jsx_runtime_1.jsx)(MediaStatusPanel_1.default, { icon: (0, jsx_runtime_1.jsx)(lucide_react_1.VolumeX, {}), label: label, message: labels.unsupportedFormat, hint: labels.unsupportedFormatHint, downloadHref: item.src, downloadLabel: labels.download, tone: "warning", testId: "media-video-unsupported" }) }));
233
+ }
234
+ return ((0, jsx_runtime_1.jsxs)(react_2.Box, { ref: shellRef, as: "section", "aria-label": `${labels.videoPlayer}: ${label}`, "data-media-video-shell": true, position: "absolute", inset: 0, bg: chrome.stage, overflow: "hidden", cursor: showChrome ? "default" : "none", onMouseMove: chromeHandlers.onMouseMove, onPointerMove: chromeHandlers.onPointerMove, onFocus: chromeHandlers.onFocus, onBlur: chromeHandlers.onBlur, onKeyDownCapture: chromeHandlers.onKeyDown, children: [(0, jsx_runtime_1.jsx)(react_2.VisuallyHidden, { "aria-live": "polite", children: announcement }), (0, jsx_runtime_1.jsx)(react_2.Box, { position: "absolute", inset: 0, onClick: onStageClick, children: failed ? ((0, jsx_runtime_1.jsx)(MediaStatusPanel_1.default, { icon: (0, jsx_runtime_1.jsx)(lucide_react_1.VolumeX, {}), label: label, message: labels.videoError, downloadLabel: labels.download, tone: "warning", testId: "media-video-error" })) : ((0, jsx_runtime_1.jsx)(react_2.Box, { as: "video", ref: videoRef, src: item.src, preload: "metadata", playsInline: true, w: "100%", h: "100%", objectFit: "contain", onPlay: () => setPlaying(true), onPause: () => setPlaying(false), onEnded: () => setPlaying(false), onError: () => setFailed(true), onWaiting: () => setBuffering(true), onPlaying: () => setBuffering(false), onCanPlay: () => setBuffering(false), onProgress: (e) => {
235
+ const ranges = e.currentTarget.buffered;
236
+ setBuffered(Array.from({ length: ranges.length }, (_, i) => ({ start: ranges.start(i), end: ranges.end(i) })));
237
+ }, onTimeUpdate: (e) => {
238
+ setCurrent(e.currentTarget.currentTime);
239
+ onTimeChange === null || onTimeChange === void 0 ? void 0 : onTimeChange(e.currentTarget.currentTime);
240
+ }, onLoadedMetadata: (e) => {
241
+ setDuration(e.currentTarget.duration);
242
+ setHasCaptions(e.currentTarget.textTracks.length > 0);
243
+ }, onDurationChange: (e) => setDuration(e.currentTarget.duration), onVolumeChange: (e) => {
244
+ setVolume(e.currentTarget.volume);
245
+ setMuted(e.currentTarget.muted);
246
+ }, "data-testid": "media-video" })) }), buffering && !failed ? ((0, jsx_runtime_1.jsx)(react_2.Box, { position: "absolute", top: "50%", left: "50%", transform: "translate(-50%, -50%)", pointerEvents: "none", "data-testid": "media-video-buffering", children: (0, jsx_runtime_1.jsx)(react_2.Box, { as: lucide_react_1.Loader2, boxSize: "40px", color: chrome.ink, sx: reducedMotion ? undefined : { animation: `${spin} 0.9s linear infinite` } }) })) : null, ripple ? ((0, jsx_runtime_1.jsx)(react_2.Flex, { position: "absolute", top: 0, bottom: 0, left: ripple.side === "left" ? 0 : undefined, right: ripple.side === "right" ? 0 : undefined, w: "40%", align: "center", justify: "center", pointerEvents: "none", opacity: reducedMotion ? 1 : undefined, sx: reducedMotion ? undefined : { animation: `${rippleFade} ${RIPPLE_LIFETIME_MS}ms ease-out` }, children: (0, jsx_runtime_1.jsxs)(react_2.Flex, { direction: "column", align: "center", gap: 1, color: chrome.ink, bg: chrome.scrim(0.35), borderRadius: "full", boxSize: "72px", justify: "center", children: [ripple.side === "left" ? (0, jsx_runtime_1.jsx)(lucide_react_1.SkipBack, { size: 22, "aria-hidden": true }) : (0, jsx_runtime_1.jsx)(lucide_react_1.SkipForward, { size: 22, "aria-hidden": true }), (0, jsx_runtime_1.jsx)(react_2.Text, { fontSize: "xs", fontWeight: 600, children: `${SKIP_SECONDS}s` })] }) }, ripple.nonce)) : null, !playing && !failed ? ((0, jsx_runtime_1.jsx)(react_2.IconButton, { "aria-label": labels.play, "aria-hidden": true, icon: (0, jsx_runtime_1.jsx)(lucide_react_1.Play, { size: 36 }), onClick: togglePlay, position: "absolute", top: "50%", left: "50%", transform: "translate(-50%, -50%)", boxSize: { base: "64px", md: "88px" }, isRound: true, variant: "ghost", bg: chrome.raised, color: chrome.accent, _hover: { bg: chrome.hover }, _focusVisible: { boxShadow: `0 0 0 2px ${ring}` }, tabIndex: -1, transition: fadeTransition, zIndex: 3, "data-testid": "media-video-big-play" })) : null, (0, jsx_runtime_1.jsx)(react_2.Box, { position: "absolute", top: 0, left: 0, right: 0, h: "72px", bgImage: scrimTop, pointerEvents: "none", opacity: showChrome ? 1 : 0, transition: fadeTransition, "aria-hidden": true }), (0, jsx_runtime_1.jsxs)(react_2.Box, { position: "absolute", bottom: 0, left: 0, right: 0, zIndex: 3, bgImage: scrimBottom, pt: failed || duration <= 0 ? 2 : 10, px: 3, pb: 2, opacity: showChrome ? 1 : 0, visibility: showChrome ? "visible" : "hidden", transition: fadeTransition, children: [(0, jsx_runtime_1.jsx)(MediaScrubber_1.default, { value: Math.min(current, duration || current), max: duration > 0 ? duration : 0, buffered: buffered, onSeek: seekTo, ariaLabel: labels.seek, ariaValueText: (v) => labels.seekValue(clock(v), clock(duration)), formatTime: clock, isDisabled: failed || duration <= 0, testId: "media-video-seek" }), (0, jsx_runtime_1.jsxs)(react_2.Flex, { role: "toolbar", "aria-label": labels.videoControls, align: "center", justify: "space-between", gap: 2, wrap: "wrap", mt: 1, children: [(0, jsx_runtime_1.jsxs)(react_2.Flex, { align: "center", gap: 1, wrap: "wrap", children: [(0, jsx_runtime_1.jsx)(ViewerIconButton_1.default, { label: playing ? labels.pause : labels.play, hint: "K", icon: playing ? (0, jsx_runtime_1.jsx)(lucide_react_1.Pause, { size: 18 }) : (0, jsx_runtime_1.jsx)(lucide_react_1.Play, { size: 18 }), onClick: togglePlay, testId: "media-video-toggle" }), (0, jsx_runtime_1.jsx)(ViewerIconButton_1.default, { label: labels.rewind, hint: "J", icon: seekIcon((0, jsx_runtime_1.jsx)(lucide_react_1.SkipBack, { size: 16 })), onClick: () => seekBy(-mediaItems_1.SEEK_STEP_SECONDS), testId: "media-video-rewind" }), (0, jsx_runtime_1.jsx)(ViewerIconButton_1.default, { label: labels.forward, hint: "L", icon: seekIcon((0, jsx_runtime_1.jsx)(lucide_react_1.SkipForward, { size: 16 })), onClick: () => seekBy(mediaItems_1.SEEK_STEP_SECONDS), testId: "media-video-forward" }), onPrevious ? ((0, jsx_runtime_1.jsx)(ViewerIconButton_1.default, { label: labels.previous, icon: (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronLeft, { size: 18 }), onClick: onPrevious, testId: "media-video-previous" })) : null, onNext ? ((0, jsx_runtime_1.jsx)(ViewerIconButton_1.default, { label: labels.next, icon: (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronRight, { size: 18 }), onClick: onNext, testId: "media-video-next" })) : null, (0, jsx_runtime_1.jsxs)(react_2.Flex, { align: "center", onMouseEnter: () => setVolumeHover(true), onMouseLeave: () => setVolumeHover(false), sx: { "&:focus-within": { "--volume-w": "88px" } }, children: [(0, jsx_runtime_1.jsx)(ViewerIconButton_1.default, { label: muted || volume === 0 ? labels.unmute : labels.mute, hint: "M", icon: muted || volume === 0 ? (0, jsx_runtime_1.jsx)(lucide_react_1.VolumeX, { size: 18 }) : (0, jsx_runtime_1.jsx)(lucide_react_1.Volume2, { size: 18 }), onClick: toggleMute, pressed: muted, testId: "media-video-mute" }), (0, jsx_runtime_1.jsx)(react_2.Box, { w: volumeHover ? { base: "64px", md: "88px" } : { base: "64px", md: "0px" }, overflow: "hidden", px: volumeHover ? 1 : 0, transition: fadeTransition, sx: { "&:focus-within": { width: "88px", paddingInline: "4px" } }, children: (0, jsx_runtime_1.jsxs)(react_2.Slider, { "aria-label": labels.volume, min: 0, max: 100, step: 5, value: effectiveVolume, onChange: changeVolume, focusThumbOnChange: false, getAriaValueText: (v) => `${v}%`, children: [(0, jsx_runtime_1.jsx)(react_2.SliderTrack, { bg: chrome.track, h: "4px", borderRadius: "full", children: (0, jsx_runtime_1.jsx)(react_2.SliderFilledTrack, { bg: chrome.ink }) }), (0, jsx_runtime_1.jsx)(react_2.SliderThumb, { bg: chrome.ink, boxSize: "12px", _focusVisible: { boxShadow: `0 0 0 2px ${ring}` } })] }) })] }), (0, jsx_runtime_1.jsxs)(react_2.Text, { as: "span", ml: 2, fontSize: "sm", fontWeight: 500, color: chrome.ink, sx: { fontVariantNumeric: "tabular-nums" }, "data-testid": "media-video-time", children: [clock(current), (0, jsx_runtime_1.jsx)(react_2.Text, { as: "span", color: chrome.muted, children: ` / ${clock(duration)}` })] })] }), (0, jsx_runtime_1.jsxs)(react_2.Flex, { align: "center", gap: 1, children: [(0, jsx_runtime_1.jsxs)(react_2.Menu, { placement: "top-end", children: [(0, jsx_runtime_1.jsx)(react_2.MenuButton, { "aria-label": labels.speed, h: "32px", px: 3, borderRadius: "full", borderWidth: "1px", borderColor: chrome.track, bg: chrome.raised, color: chrome.ink, fontSize: "sm", fontWeight: 600, _hover: { bg: chrome.hover }, _focusVisible: { boxShadow: `0 0 0 2px ${ring}` }, "data-testid": "media-video-speed", children: (0, jsx_runtime_1.jsxs)(react_2.Flex, { as: "span", align: "center", gap: 1, children: [`${rate}x`, (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronDown, { size: 14, "aria-hidden": true })] }) }), (0, jsx_runtime_1.jsx)(react_2.MenuList, { minW: "160px", bg: chrome.raised, zIndex: 1500, children: (0, jsx_runtime_1.jsx)(react_2.MenuOptionGroup, { type: "radio", title: labels.speed, value: String(rate), onChange: (value) => changeRate(Number(value)), children: mediaItems_1.PLAYBACK_SPEEDS.map((speed) => ((0, jsx_runtime_1.jsx)(react_2.MenuItemOption, { value: String(speed), bg: chrome.raised, color: chrome.ink, _hover: { bg: chrome.hover }, _focus: { bg: chrome.hover }, children: speed === 1 ? `1x - ${labels.normalSpeed}` : `${speed}x` }, speed))) }) })] }), hasCaptions ? ((0, jsx_runtime_1.jsx)(ViewerIconButton_1.default, { label: labels.captions, hint: "C", icon: (0, jsx_runtime_1.jsx)(lucide_react_1.Captions, { size: 18 }), onClick: toggleCaptions, pressed: captionsOn, testId: "media-video-captions" })) : null, pipSupported ? ((0, jsx_runtime_1.jsx)(ViewerIconButton_1.default, { label: labels.pip, hint: "P", icon: (0, jsx_runtime_1.jsx)(lucide_react_1.PictureInPicture2, { size: 18 }), onClick: () => void togglePip(), testId: "media-video-pip" })) : null, (0, jsx_runtime_1.jsx)(ViewerIconButton_1.default, { label: labels.download, icon: (0, jsx_runtime_1.jsx)(lucide_react_1.Download, { size: 18 }), href: item.src, testId: "media-video-download" }), shellFullscreen || iosFullscreen ? ((0, jsx_runtime_1.jsx)(ViewerIconButton_1.default, { label: isFullscreen ? labels.exitFullscreen : labels.fullscreen, hint: "F", icon: isFullscreen ? (0, jsx_runtime_1.jsx)(lucide_react_1.Minimize, { size: 18 }) : (0, jsx_runtime_1.jsx)(lucide_react_1.Maximize, { size: 18 }), onClick: () => void toggleFullscreen(), pressed: isFullscreen, testId: "media-video-fullscreen" })) : null] })] })] })] }));
247
+ };
248
+ exports.default = MediaVideoPlayer;
@@ -0,0 +1,71 @@
1
+ import type { MediaItem } from "../mediaItems";
2
+ /** All copy shown in the video player, merged over `defaultMediaVideoPlayerLabels`. */
3
+ export interface MediaVideoPlayerLabels {
4
+ /** Accessible name for the player region, combined with `label`. */
5
+ videoPlayer: string;
6
+ /** Shown instead of the video when it fails to load. */
7
+ videoError: string;
8
+ /** Big center play button and transport play toggle, when paused. */
9
+ play: string;
10
+ /** Transport play toggle, shown while playing. */
11
+ pause: string;
12
+ /** Accessible name of the transport `role="toolbar"` control group. */
13
+ videoControls: string;
14
+ /** Accessible name of the seek slider. */
15
+ seek: string;
16
+ /** Rewind-`SEEK_STEP_SECONDS` transport button, hint "J". */
17
+ rewind: string;
18
+ /** Forward-`SEEK_STEP_SECONDS` transport button, hint "L". */
19
+ forward: string;
20
+ /** Mute-toggle label shown while muted or at zero volume. */
21
+ unmute: string;
22
+ /** Mute-toggle label shown while audible. */
23
+ mute: string;
24
+ /** Accessible name of the volume slider. */
25
+ volume: string;
26
+ /** Accessible name of the playback-speed menu. */
27
+ speed: string;
28
+ /** Suffix shown next to "1x" in the speed menu, e.g. "1x - Normal". */
29
+ normalSpeed: string;
30
+ /** Caption toggle button, only rendered once the video reports text tracks. */
31
+ captions: string;
32
+ /** Toggle button, only rendered when the browser supports picture-in-picture. */
33
+ pip: string;
34
+ /** Download transport button's accessible name. */
35
+ download: string;
36
+ /** Fullscreen toggle label shown while already fullscreen. */
37
+ exitFullscreen: string;
38
+ /** Fullscreen toggle label shown while not fullscreen. */
39
+ fullscreen: string;
40
+ /** Builds the seek slider's `aria-valuetext` from two already-`formatClock`-ed strings. */
41
+ seekValue: (current: string, total: string) => string;
42
+ /** Previous-item transport button; only rendered when `onPrevious` is passed. */
43
+ previous: string;
44
+ /** Next-item transport button; only rendered when `onNext` is passed. */
45
+ next: string;
46
+ /** @deprecated Never read by MediaVideoPlayer; defined but unused. */
47
+ loading: string;
48
+ /** Shown for a source extension known not to play natively (avi/mkv/m3u8), instead of attempting playback. */
49
+ unsupportedFormat: string;
50
+ /** Hint text under `unsupportedFormat`, prompting a download instead. */
51
+ unsupportedFormatHint: string;
52
+ /** Screen-reader announcement for a double-click/tap skip, distinct from the visible ripple. */
53
+ skipBack: (seconds: number) => string;
54
+ skipForward: (seconds: number) => string;
55
+ }
56
+ export declare const defaultMediaVideoPlayerLabels: MediaVideoPlayerLabels;
57
+ /** Props for the Netflix/Prime-style video transport rendered for `kind: "video"` items. */
58
+ export interface MediaVideoPlayerProps {
59
+ /** The video to play; changing `item.key` resets playback state (also guards against a parent that reuses this instance without a key remount). */
60
+ item: MediaItem;
61
+ /** Accessible name for the player region, combined with `videoPlayer`. */
62
+ label: string;
63
+ /** Fires on every `timeupdate`, with the video's current playback position in seconds. */
64
+ onTimeChange?: (seconds: number) => void;
65
+ /** Shows a transport "previous" button when the gallery has a sibling before this item. */
66
+ onPrevious?: () => void;
67
+ /** Shows a transport "next" button when the gallery has a sibling after this item. */
68
+ onNext?: () => void;
69
+ /** Overrides for any of `defaultMediaVideoPlayerLabels`, merged over the defaults. */
70
+ labels?: Partial<MediaVideoPlayerLabels>;
71
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.defaultMediaVideoPlayerLabels = void 0;
4
+ exports.defaultMediaVideoPlayerLabels = {
5
+ videoPlayer: "Video player",
6
+ videoError: "This video could not be played",
7
+ play: "Play",
8
+ pause: "Pause",
9
+ videoControls: "Video controls",
10
+ seek: "Seek",
11
+ rewind: "Back 10 seconds",
12
+ forward: "Forward 10 seconds",
13
+ unmute: "Unmute",
14
+ mute: "Mute",
15
+ volume: "Volume",
16
+ speed: "Playback speed",
17
+ normalSpeed: "Normal",
18
+ captions: "Captions",
19
+ pip: "Picture in picture",
20
+ download: "Download",
21
+ exitFullscreen: "Exit fullscreen",
22
+ fullscreen: "Fullscreen",
23
+ seekValue: (current, total) => `${current} of ${total}`,
24
+ previous: "Previous",
25
+ next: "Next",
26
+ loading: "Loading",
27
+ unsupportedFormat: "This format can't be played here",
28
+ unsupportedFormatHint: "Download it to play it on your device.",
29
+ skipBack: (seconds) => `Skipped back ${seconds} seconds`,
30
+ skipForward: (seconds) => `Skipped forward ${seconds} seconds`,
31
+ };
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ import type { TileChipProps } from "./TileChipProps";
3
+ /** Decorative absolutely-positioned pill on a filmstrip/grid tile — the tile itself carries the a11y label. */
4
+ declare const TileChip: React.FC<TileChipProps>;
5
+ export default TileChip;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const jsx_runtime_1 = require("react/jsx-runtime");
4
+ const react_1 = require("@chakra-ui/react");
5
+ const useViewerChrome_1 = require("../useViewerChrome");
6
+ /** Decorative absolutely-positioned pill on a filmstrip/grid tile — the tile itself carries the a11y label. */
7
+ const TileChip = ({ children, place }) => {
8
+ const chrome = (0, useViewerChrome_1.useViewerChrome)();
9
+ const corner = place === "tl" ? { left: "6px", top: "6px" } : { right: "6px", bottom: "6px" };
10
+ return ((0, jsx_runtime_1.jsx)(react_1.Text, { as: "span", position: "absolute", ...corner, h: "18px", px: "6px", borderRadius: "4px", bg: chrome.stage, color: chrome.ink, fontSize: "11px", fontWeight: 600, display: "inline-flex", alignItems: "center", "aria-hidden": true, children: children }));
11
+ };
12
+ exports.default = TileChip;
@@ -0,0 +1,7 @@
1
+ /** A small corner pill on a filmstrip tile — carries a file-type label or a badge. */
2
+ export interface TileChipProps {
3
+ /** The pill's text content, e.g. a file extension or duration. */
4
+ children: string;
5
+ /** Corner to anchor the pill: top-left or bottom-right. */
6
+ place: "tl" | "br";
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ import type { VideoPosterProps } from "./VideoPosterProps";
3
+ /** Thumbnail-only muted video seeked near its start, so a video tile needs no separate poster asset. */
4
+ declare const VideoPoster: React.FC<VideoPosterProps>;
5
+ export default VideoPoster;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const jsx_runtime_1 = require("react/jsx-runtime");
7
+ const react_1 = require("react");
8
+ const react_2 = require("@chakra-ui/react");
9
+ const mediaItems_1 = require("../mediaItems");
10
+ const TileChip_1 = __importDefault(require("./TileChip"));
11
+ /** Thumbnail-only muted video seeked near its start, so a video tile needs no separate poster asset. */
12
+ const VideoPoster = ({ item }) => {
13
+ const [duration, setDuration] = (0, react_1.useState)(null);
14
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(react_2.Box, { as: "video", src: `${item.src}#t=0.1`, preload: "metadata", muted: true, playsInline: true, tabIndex: -1, "aria-hidden": true, w: "100%", h: "100%", objectFit: "cover", pointerEvents: "none", onLoadedMetadata: (event) => setDuration(event.currentTarget.duration) }), duration !== null && Number.isFinite(duration) ? ((0, jsx_runtime_1.jsx)(TileChip_1.default, { place: "br", children: (0, mediaItems_1.formatClock)(duration) })) : null] }));
15
+ };
16
+ exports.default = VideoPoster;
@@ -0,0 +1,6 @@
1
+ import type { MediaItem } from "../mediaItems";
2
+ /** Renders a still frame pulled from a video, used as its filmstrip thumbnail. */
3
+ export interface VideoPosterProps {
4
+ /** The video item to grab a near-start frame from; only its `src` is read. */
5
+ item: MediaItem;
6
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ import type { ViewerIconButtonProps } from "./ViewerIconButtonProps";
3
+ /** Toolbar/nav button for the media lightbox — always painted against the fixed dark viewer chrome. */
4
+ declare const ViewerIconButton: React.FC<ViewerIconButtonProps>;
5
+ export default ViewerIconButton;