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.
- package/CHANGELOG.md +130 -0
- package/COMPONENT-GOTCHAS.md +413 -240
- package/DESIGN-GUIDE.md +210 -0
- package/README.md +51 -26
- package/dist/Components/Accordion/Accordion.js +7 -9
- package/dist/Components/Accordion/accordionColors.d.ts +6 -0
- package/dist/Components/Accordion/accordionColors.js +11 -11
- package/dist/Components/AlertDialog/AlertDialog.d.ts +1 -1
- package/dist/Components/AlertDialog/AlertDialog.js +5 -5
- package/dist/Components/AlertDialog/AlertDialogProps.d.ts +27 -4
- package/dist/Components/Apexcharts/ApexAreaChart/ApexAreaChart.js +6 -2
- package/dist/Components/Apexcharts/ApexBarChart/ApexBarChart.js +7 -4
- package/dist/Components/Apexcharts/ApexChartFallback.d.ts +7 -0
- package/dist/Components/Apexcharts/ApexChartFallback.js +10 -0
- package/dist/Components/Apexcharts/ApexLineChart/ApexLineChart.js +6 -2
- package/dist/Components/Apexcharts/ApexPieChart/ApexPieChart.js +6 -2
- package/dist/Components/Apexcharts/ApexPolarCharts/ApexPolarCharts.js +8 -5
- package/dist/Components/Apexcharts/ApexRadialChart/ApexRadialChart.js +6 -4
- package/dist/Components/Apexcharts/LazyReactApexChart.d.ts +2 -0
- package/dist/Components/Apexcharts/LazyReactApexChart.js +40 -0
- package/dist/Components/AppSwitcher/AppMark.d.ts +0 -5
- package/dist/Components/AppSwitcher/AppMark.js +1 -5
- package/dist/Components/AppSwitcher/AppSwitcher.js +4 -9
- package/dist/Components/Avatar/Avatar.d.ts +3 -0
- package/dist/Components/Avatar/Avatar.js +24 -0
- package/dist/Components/Avatar/AvatarGroup.d.ts +3 -0
- package/dist/Components/Avatar/AvatarGroup.js +24 -0
- package/dist/Components/Avatar/AvatarGroupProps.d.ts +19 -0
- package/dist/Components/Avatar/AvatarProps.d.ts +22 -0
- package/dist/Components/Avatar/AvatarProps.js +2 -0
- package/dist/Components/Avatar/avatarColorway.d.ts +11 -0
- package/dist/Components/Avatar/avatarColorway.js +31 -0
- package/dist/Components/Avatar/avatarSizing.d.ts +5 -0
- package/dist/Components/Avatar/avatarSizing.js +15 -0
- package/dist/Components/Backdrop/Backdrop.d.ts +3 -0
- package/dist/Components/Backdrop/Backdrop.js +34 -0
- package/dist/Components/Backdrop/BackdropProps.d.ts +33 -0
- package/dist/Components/Backdrop/BackdropProps.js +2 -0
- package/dist/Components/Breadcrumbs/Breadcrumbs.js +14 -4
- package/dist/Components/Breadcrumbs/breadcrumbInk.d.ts +9 -0
- package/dist/Components/Breadcrumbs/breadcrumbInk.js +11 -0
- package/dist/Components/Button/Button.js +2 -2
- package/dist/Components/Button/Button.styles.js +21 -62
- package/dist/Components/Button/ButtonProps.d.ts +8 -2
- package/dist/Components/ButtonGroupIcon/ButtonGoupIconProps.d.ts +2 -42
- package/dist/Components/ButtonGroupIcon/ButtonGoupIconProps.js +16 -0
- package/dist/Components/ButtonGroupIcon/ButtonGroupIcon.d.ts +1 -1
- package/dist/Components/ButtonGroupIcon/ButtonGroupIcon.js +3 -10
- package/dist/Components/ButtonGroupIcon/ButtonGroupIconProps.d.ts +42 -0
- package/dist/Components/ButtonGroupIcon/ButtonGroupIconProps.js +2 -0
- package/dist/Components/Buttons/Buttons.d.ts +1 -1
- package/dist/Components/Buttons/Buttons.js +5 -3
- package/dist/Components/Buttons/ButtonsProps.d.ts +5 -1
- package/dist/Components/Card/Card.d.ts +18 -2
- package/dist/Components/Card/Card.js +10 -5
- package/dist/Components/Card/CardProps.d.ts +27 -9
- package/dist/Components/Card/PaymentCard/PaymentCard.js +13 -9
- package/dist/Components/Checkbox/Checkbox.d.ts +2 -2
- package/dist/Components/Checkbox/Checkbox.js +11 -9
- package/dist/Components/Checkbox/Checkbox.styles.js +41 -36
- package/dist/Components/Checkbox/CheckboxProps.d.ts +11 -2
- package/dist/Components/Common/ErrorComponent.d.ts +1 -1
- package/dist/Components/Common/ErrorComponent.js +1 -1
- package/dist/Components/Common/ErrorMessage.d.ts +1 -1
- package/dist/Components/Common/ErrorMessage.js +3 -3
- package/dist/Components/Common/FieldMessage.d.ts +9 -0
- package/dist/Components/Common/FieldMessage.js +19 -0
- package/dist/Components/Common/FormLabel.d.ts +9 -0
- package/dist/Components/Common/FormLabel.js +15 -9
- package/dist/Components/Common/HelperText.d.ts +1 -1
- package/dist/Components/Common/HelperText.js +3 -2
- package/dist/Components/Common/Label.d.ts +1 -1
- package/dist/Components/Common/Label.js +3 -2
- package/dist/Components/Common/fieldMessageStyles.d.ts +19 -0
- package/dist/Components/Common/fieldMessageStyles.js +18 -0
- package/dist/Components/Common/fieldStyles.d.ts +46 -9
- package/dist/Components/Common/fieldStyles.js +72 -30
- package/dist/Components/Common/useFieldIds.d.ts +16 -0
- package/dist/Components/Common/useFieldIds.js +27 -0
- package/dist/Components/ConfirmDialog/ConfirmDialog.d.ts +4 -0
- package/dist/Components/ConfirmDialog/ConfirmDialog.js +23 -0
- package/dist/Components/ConfirmDialog/ConfirmDialogProps.d.ts +45 -0
- package/dist/Components/ConfirmDialog/ConfirmDialogProps.js +2 -0
- package/dist/Components/ContactForm/ContactForm.d.ts +2 -2
- package/dist/Components/ContactForm/ContactForm.js +19 -15
- package/dist/Components/ContactForm/ContactFormProps.d.ts +16 -2
- package/dist/Components/CopyButton/CopyButton.js +3 -4
- package/dist/Components/CustomModulesTable/DeleteModuleModal.js +2 -2
- package/dist/Components/CustomModulesTable/EditModuleModal.js +2 -4
- package/dist/Components/DatePicker/CalendarPanel.js +3 -4
- package/dist/Components/DatePicker/DatePicker.d.ts +5 -3
- package/dist/Components/DatePicker/DatePicker.js +12 -50
- package/dist/Components/DatePicker/DatePickerProps.d.ts +48 -4
- package/dist/Components/DatePicker/DatePickerProps.js +3 -0
- package/dist/Components/DatePicker/RangeDatePicker.js +17 -21
- package/dist/Components/DatePicker/SingleDatePicker.d.ts +4 -2
- package/dist/Components/DatePicker/SingleDatePicker.js +40 -57
- package/dist/Components/DatePicker/ThemeDatePicker.d.ts +3 -2
- package/dist/Components/DatePicker/ThemeDatePicker.js +12 -18
- package/dist/Components/DatePicker/TimeOnlyPicker.d.ts +5 -3
- package/dist/Components/DatePicker/TimeOnlyPicker.js +37 -23
- package/dist/Components/DatePicker/TimePicker.js +8 -12
- package/dist/Components/DatePicker/TimePickerInput.d.ts +6 -2
- package/dist/Components/DatePicker/TimePickerInput.js +5 -11
- package/dist/Components/DatePicker/dayStates.d.ts +0 -23
- package/dist/Components/DatePicker/dayStates.js +3 -15
- package/dist/Components/DatePicker/pickerField.d.ts +24 -0
- package/dist/Components/DatePicker/pickerField.js +31 -0
- package/dist/Components/DatePicker/valueFormat.d.ts +4 -0
- package/dist/Components/DatePicker/valueFormat.js +21 -0
- package/dist/Components/DescriptionList/DescriptionList.d.ts +4 -0
- package/dist/Components/DescriptionList/DescriptionList.js +32 -0
- package/dist/Components/DescriptionList/DescriptionListProps.d.ts +29 -0
- package/dist/Components/DescriptionList/DescriptionListProps.js +2 -0
- package/dist/Components/Drawer/Drawer.d.ts +5 -11
- package/dist/Components/Drawer/Drawer.js +22 -8
- package/dist/Components/Drawer/DrawerProps.d.ts +16 -4
- package/dist/Components/Dropdown/DropDown.d.ts +1 -1
- package/dist/Components/Dropdown/DropDown.js +42 -32
- package/dist/Components/Dropdown/DropdownProps.d.ts +15 -2
- package/dist/Components/Editor/Editor.js +12 -0
- package/dist/Components/Editor/joditAccessibility.d.ts +1 -0
- package/dist/Components/Editor/joditAccessibility.js +28 -0
- package/dist/Components/EmailCards/VerifyEmailOtp/VerifyEmailOtp.d.ts +1 -1
- package/dist/Components/EmailCards/VerifyEmailOtp/VerifyEmailOtp.js +3 -3
- package/dist/Components/EmailCards/VerifyEmailOtp/VerifyEmailOtpProps.d.ts +1 -1
- package/dist/Components/EmptyState/EmptyState.js +24 -15
- package/dist/Components/EmptyState/EmptyStateProps.d.ts +5 -1
- package/dist/Components/FeedbackForm/FeedbackForm.d.ts +1 -1
- package/dist/Components/FeedbackForm/FeedbackForm.js +19 -6
- package/dist/Components/FieldSelectModal/FieldSelectModal.js +2 -4
- package/dist/Components/FilePreview/FilePreview.js +8 -8
- package/dist/Components/FileUpload/FileUpload.d.ts +1 -1
- package/dist/Components/FileUpload/FileUpload.js +24 -5
- package/dist/Components/FileUpload/FileUploadProps.d.ts +23 -1
- package/dist/Components/FileUpload/constants.d.ts +1 -0
- package/dist/Components/FileUpload/constants.js +2 -1
- package/dist/Components/FileUploader/FileUploader.js +6 -5
- package/dist/Components/FilterBar/FilterBar.d.ts +4 -0
- package/dist/Components/FilterBar/FilterBar.js +17 -0
- package/dist/Components/FilterBar/FilterBarProps.d.ts +25 -0
- package/dist/Components/FilterBar/FilterBarProps.js +2 -0
- package/dist/Components/FilterSidebar/FilterSidebar.js +26 -32
- package/dist/Components/FilterSidebar/filterHoverStyle.d.ts +1 -1
- package/dist/Components/FilterSidebar/filterHoverStyle.js +1 -1
- package/dist/Components/Form/FormWrapper.js +1 -1
- package/dist/Components/Header/Header.d.ts +0 -15
- package/dist/Components/Header/Header.js +2 -16
- package/dist/Components/Header/HeaderActions.d.ts +2 -0
- package/dist/Components/Header/HeaderActions.js +4 -4
- package/dist/Components/Header/HeaderProps.d.ts +14 -1
- package/dist/Components/Header/components/desktopMenu.d.ts +1 -1
- package/dist/Components/Header/components/desktopMenu.js +10 -11
- package/dist/Components/Header/components/mobileMenu.d.ts +1 -1
- package/dist/Components/Header/components/mobileMenu.js +23 -20
- package/dist/Components/Input/Input/Input.d.ts +1 -1
- package/dist/Components/Input/Input/Input.js +3 -2
- package/dist/Components/Input/Input/InputProps.d.ts +4 -1
- package/dist/Components/Input/PhoneNumberInput.d.ts +2 -2
- package/dist/Components/Input/PhoneNumberInput.js +7 -4
- package/dist/Components/Input/PhoneNumberInputProps.d.ts +4 -2
- package/dist/Components/Input/Switch/InputSwitch.d.ts +16 -5
- package/dist/Components/Input/Switch/InputSwitch.js +17 -19
- package/dist/Components/Input/TextInput.js +80 -7
- package/dist/Components/Input/TextInput.styles.d.ts +18 -1
- package/dist/Components/Input/TextInput.styles.js +48 -89
- package/dist/Components/Input/TextInputProps.d.ts +44 -9
- package/dist/Components/Input/textInputIconSize.d.ts +2 -7
- package/dist/Components/Input/textInputIconSize.js +4 -20
- package/dist/Components/Input/useAriaRequired.d.ts +2 -0
- package/dist/Components/Input/useAriaRequired.js +19 -0
- package/dist/Components/InputTextArea/InputTextArea.d.ts +2 -2
- package/dist/Components/InputTextArea/InputTextArea.js +9 -5
- package/dist/Components/InputTextArea/InputTextArea.style.js +14 -69
- package/dist/Components/InputTextArea/InputTextAreaProps.d.ts +9 -2
- package/dist/Components/KanbanBoard/AccountCard.js +8 -5
- package/dist/Components/KanbanBoard/AccountRow.d.ts +1 -1
- package/dist/Components/KanbanBoard/AccountRow.js +1 -1
- package/dist/Components/KanbanBoard/KanbanBoard.d.ts +1 -1
- package/dist/Components/KanbanBoard/KanbanBoard.js +85 -49
- package/dist/Components/KanbanBoard/KanbanBoardProps.d.ts +35 -19
- package/dist/Components/KanbanBoard/index.d.ts +2 -0
- package/dist/Components/KanbanBoard/index.js +8 -0
- package/dist/Components/LimitReachedModal/LimitReachedModal.js +1 -1
- package/dist/Components/LimitReachedModal/limitReachedCopy.js +1 -3
- package/dist/Components/Loading/Loading.d.ts +1 -1
- package/dist/Components/Loading/Loading.js +19 -19
- package/dist/Components/Loading/LoadingProps.d.ts +5 -1
- package/dist/Components/MediaViewer/MediaViewer.d.ts +5 -0
- package/dist/Components/MediaViewer/MediaViewer.js +234 -0
- package/dist/Components/MediaViewer/MediaViewerProps.d.ts +92 -0
- package/dist/Components/MediaViewer/MediaViewerProps.js +32 -0
- package/dist/Components/MediaViewer/components/MediaAudioPlayer.d.ts +4 -0
- package/dist/Components/MediaViewer/components/MediaAudioPlayer.js +138 -0
- package/dist/Components/MediaViewer/components/MediaAudioPlayerProps.d.ts +48 -0
- package/dist/Components/MediaViewer/components/MediaAudioPlayerProps.js +21 -0
- package/dist/Components/MediaViewer/components/MediaDocumentStage.d.ts +4 -0
- package/dist/Components/MediaViewer/components/MediaDocumentStage.js +149 -0
- package/dist/Components/MediaViewer/components/MediaDocumentStageProps.d.ts +42 -0
- package/dist/Components/MediaViewer/components/MediaDocumentStageProps.js +11 -0
- package/dist/Components/MediaViewer/components/MediaImageViewer.d.ts +4 -0
- package/dist/Components/MediaViewer/components/MediaImageViewer.js +103 -0
- package/dist/Components/MediaViewer/components/MediaImageViewerProps.d.ts +47 -0
- package/dist/Components/MediaViewer/components/MediaImageViewerProps.js +18 -0
- package/dist/Components/MediaViewer/components/MediaScrubber.d.ts +5 -0
- package/dist/Components/MediaViewer/components/MediaScrubber.js +89 -0
- package/dist/Components/MediaViewer/components/MediaScrubberProps.d.ts +30 -0
- package/dist/Components/MediaViewer/components/MediaScrubberProps.js +2 -0
- package/dist/Components/MediaViewer/components/MediaStatusPanel.d.ts +5 -0
- package/dist/Components/MediaViewer/components/MediaStatusPanel.js +14 -0
- package/dist/Components/MediaViewer/components/MediaStatusPanelProps.d.ts +24 -0
- package/dist/Components/MediaViewer/components/MediaStatusPanelProps.js +2 -0
- package/dist/Components/MediaViewer/components/MediaVideoPlayer.d.ts +4 -0
- package/dist/Components/MediaViewer/components/MediaVideoPlayer.js +248 -0
- package/dist/Components/MediaViewer/components/MediaVideoPlayerProps.d.ts +71 -0
- package/dist/Components/MediaViewer/components/MediaVideoPlayerProps.js +31 -0
- package/dist/Components/MediaViewer/components/TileChip.d.ts +5 -0
- package/dist/Components/MediaViewer/components/TileChip.js +12 -0
- package/dist/Components/MediaViewer/components/TileChipProps.d.ts +7 -0
- package/dist/Components/MediaViewer/components/TileChipProps.js +2 -0
- package/dist/Components/MediaViewer/components/VideoPoster.d.ts +5 -0
- package/dist/Components/MediaViewer/components/VideoPoster.js +16 -0
- package/dist/Components/MediaViewer/components/VideoPosterProps.d.ts +6 -0
- package/dist/Components/MediaViewer/components/VideoPosterProps.js +2 -0
- package/dist/Components/MediaViewer/components/ViewerIconButton.d.ts +5 -0
- package/dist/Components/MediaViewer/components/ViewerIconButton.js +20 -0
- package/dist/Components/MediaViewer/components/ViewerIconButtonProps.d.ts +24 -0
- package/dist/Components/MediaViewer/components/ViewerIconButtonProps.js +2 -0
- package/dist/Components/MediaViewer/components/mediaKindIcon.d.ts +5 -0
- package/dist/Components/MediaViewer/components/mediaKindIcon.js +23 -0
- package/dist/Components/MediaViewer/components/sanitizeDocxHrefs.d.ts +1 -0
- package/dist/Components/MediaViewer/components/sanitizeDocxHrefs.js +30 -0
- package/dist/Components/MediaViewer/hooks/useAutoHideChrome.d.ts +15 -0
- package/dist/Components/MediaViewer/hooks/useAutoHideChrome.js +43 -0
- package/dist/Components/MediaViewer/hooks/useFileViewer.d.ts +18 -0
- package/dist/Components/MediaViewer/hooks/useFileViewer.js +51 -0
- package/dist/Components/MediaViewer/mediaItems.d.ts +64 -0
- package/dist/Components/MediaViewer/mediaItems.js +196 -0
- package/dist/Components/MediaViewer/useViewerChrome.d.ts +15 -0
- package/dist/Components/MediaViewer/useViewerChrome.js +30 -0
- package/dist/Components/Modal/Modal.d.ts +5 -11
- package/dist/Components/Modal/Modal.js +24 -18
- package/dist/Components/Modal/ModalProps.d.ts +19 -4
- package/dist/Components/MoreItems/MoreItems.js +4 -2
- package/dist/Components/MultiSelect/MultiSelect.js +19 -18
- package/dist/Components/MultiSelect/MultiSelectProps.d.ts +11 -3
- package/dist/Components/NavigationBar/NavigationBar.js +10 -8
- package/dist/Components/NoteTextArea/NoteTextArea.d.ts +4 -2
- package/dist/Components/NoteTextArea/NoteTextArea.js +13 -9
- package/dist/Components/NoteTextArea/NoteTextAreaProps.d.ts +4 -2
- package/dist/Components/Notification/Notification.d.ts +1 -1
- package/dist/Components/Notification/Notification.js +10 -3
- package/dist/Components/Notification/NotificationProps.d.ts +1 -1
- package/dist/Components/NotificationBell/NotificationBell.d.ts +4 -0
- package/dist/Components/NotificationBell/NotificationBell.js +35 -0
- package/dist/Components/NotificationBell/NotificationBellProps.d.ts +147 -0
- package/dist/Components/NotificationBell/NotificationBellProps.js +2 -0
- package/dist/Components/NotificationBell/NotificationItem.d.ts +4 -0
- package/dist/Components/NotificationBell/NotificationItem.js +34 -0
- package/dist/Components/NotificationBell/NotificationList.d.ts +4 -0
- package/dist/Components/NotificationBell/NotificationList.js +41 -0
- package/dist/Components/NotificationBell/NotificationPanel.d.ts +4 -0
- package/dist/Components/NotificationBell/NotificationPanel.js +36 -0
- package/dist/Components/NotificationBell/index.d.ts +6 -0
- package/dist/Components/NotificationBell/index.js +30 -0
- package/dist/Components/NotificationBell/notificationHelpers.d.ts +29 -0
- package/dist/Components/NotificationBell/notificationHelpers.js +106 -0
- package/dist/Components/NumberInput/NumberInput.d.ts +6 -2
- package/dist/Components/NumberInput/NumberInput.js +9 -5
- package/dist/Components/NumberInput/NumberInput.styles.js +19 -78
- package/dist/Components/NumberInput/NumberInputProps.d.ts +20 -1
- package/dist/Components/OrgSwitcher/OrgSwitcher.js +4 -12
- package/dist/Components/OrgSwitcher/OrgSwitcherProps.d.ts +1 -1
- package/dist/Components/OrgSwitcher/OrgSwitcherProps.js +2 -1
- package/dist/Components/OrganizationDetails/CreateOrgModal.js +1 -1
- package/dist/Components/OrganizationDetails/DeleteOrgModal.js +4 -6
- package/dist/Components/OrganizationDetails/OrganizationDetails.js +8 -7
- package/dist/Components/PageHeader/PageHeader.d.ts +4 -0
- package/dist/Components/PageHeader/PageHeader.js +11 -0
- package/dist/Components/PageHeader/PageHeaderProps.d.ts +20 -0
- package/dist/Components/PageHeader/PageHeaderProps.js +2 -0
- package/dist/Components/PdfViewer/PdfViewer.js +1 -1
- package/dist/Components/PersonChip/PersonChip.d.ts +3 -0
- package/dist/Components/PersonChip/PersonChip.js +47 -0
- package/dist/Components/PersonChip/PersonChipProps.d.ts +33 -0
- package/dist/Components/PersonChip/PersonChipProps.js +2 -0
- package/dist/Components/PinInput/PinInput.d.ts +2 -2
- package/dist/Components/PinInput/PinInput.js +10 -7
- package/dist/Components/PinInput/PinInputProps.d.ts +3 -2
- package/dist/Components/PinInput/pinInputCellSize.d.ts +7 -0
- package/dist/Components/PinInput/pinInputCellSize.js +10 -0
- package/dist/Components/PlanBadge/PlanBadge.d.ts +0 -7
- package/dist/Components/PlanBadge/PlanBadge.js +1 -7
- package/dist/Components/PlanPill/PlanPill.js +2 -3
- package/dist/Components/PlanPill/planPillGradient.d.ts +5 -21
- package/dist/Components/PlanPill/planPillGradient.js +8 -23
- package/dist/Components/Primitives/Primitives.d.ts +3 -6
- package/dist/Components/Primitives/Primitives.js +3 -41
- package/dist/Components/ProductCard/ProductPrice.js +18 -7
- package/dist/Components/ProductCard/ProductReview.js +3 -2
- package/dist/Components/ProductDetails/ProductDetails.js +1 -1
- package/dist/Components/ProductDetails/ProductDtlPrice.js +5 -5
- package/dist/Components/ProductDetails/ProductImageSlider.d.ts +3 -1
- package/dist/Components/ProductDetails/ProductImageSlider.js +36 -20
- package/dist/Components/ProfileCard/ProfileCard.d.ts +4 -10
- package/dist/Components/ProfileCard/ProfileCard.js +25 -10
- package/dist/Components/ProfileCard/ProfileCardProps.d.ts +8 -2
- package/dist/Components/ProfilePhotoViewer/ProfilePhotoViewer.js +7 -4
- package/dist/Components/ProgressBar/ProgressBar.d.ts +1 -1
- package/dist/Components/ProgressBar/ProgressBar.js +27 -3
- package/dist/Components/ProgressBar/ProgressBarProps.d.ts +10 -4
- package/dist/Components/QueryState/ErrorState.d.ts +4 -0
- package/dist/Components/QueryState/ErrorState.js +16 -0
- package/dist/Components/QueryState/QueryStateBoundary.d.ts +4 -0
- package/dist/Components/QueryState/QueryStateBoundary.js +25 -0
- package/dist/Components/QueryState/QueryStateProps.d.ts +48 -0
- package/dist/Components/QueryState/QueryStateProps.js +2 -0
- package/dist/Components/RadioButton/RadioButton.d.ts +2 -2
- package/dist/Components/RadioButton/RadioButton.js +34 -14
- package/dist/Components/RadioButton/RadioButtonProps.d.ts +50 -6
- package/dist/Components/RangeSlider/RangeSlider.d.ts +4 -0
- package/dist/Components/RangeSlider/RangeSlider.js +136 -0
- package/dist/Components/RangeSlider/RangeSliderProps.d.ts +74 -0
- package/dist/Components/RangeSlider/RangeSliderProps.js +2 -0
- package/dist/Components/RangeSlider/rangeSliderColors.d.ts +9 -0
- package/dist/Components/RangeSlider/rangeSliderColors.js +11 -0
- package/dist/Components/RangeSlider/rangeSliderMath.d.ts +16 -0
- package/dist/Components/RangeSlider/rangeSliderMath.js +79 -0
- package/dist/Components/RangeSlider/rangeSliderSize.d.ts +7 -0
- package/dist/Components/RangeSlider/rangeSliderSize.js +12 -0
- package/dist/Components/Reorder/Reorder.d.ts +1 -6
- package/dist/Components/Reorder/Reorder.js +2 -2
- package/dist/Components/Reorder/ReorderProps.d.ts +5 -2
- package/dist/Components/RolesPermission/DeleteRoleModal.js +4 -6
- package/dist/Components/RolesPermission/RolesPermission.js +1 -1
- package/dist/Components/SaveBar/SaveBar.d.ts +4 -0
- package/dist/Components/SaveBar/SaveBar.js +24 -0
- package/dist/Components/SaveBar/SaveBarProps.d.ts +22 -0
- package/dist/Components/SaveBar/SaveBarProps.js +2 -0
- package/dist/Components/ScrollToTop/ScrollToTop.js +5 -2
- package/dist/Components/Search/Search.d.ts +3 -2
- package/dist/Components/Search/Search.js +33 -15
- package/dist/Components/Search/SearchProps.d.ts +26 -4
- package/dist/Components/SearchSelect/SearchSelect.d.ts +2 -1
- package/dist/Components/SearchSelect/SearchSelect.js +61 -75
- package/dist/Components/SearchSelect/SearchSelectProps.d.ts +27 -3
- package/dist/Components/SearchSelect/searchSelectSize.d.ts +4 -14
- package/dist/Components/SearchSelect/searchSelectSize.js +15 -15
- package/dist/Components/SegmentedControl/SegmentedControl.js +39 -32
- package/dist/Components/SegmentedControl/SegmentedControlProps.d.ts +10 -2
- package/dist/Components/SegmentedControl/useSlidingPill.d.ts +11 -0
- package/dist/Components/SegmentedControl/useSlidingPill.js +25 -0
- package/dist/Components/Select/Select.d.ts +5 -2
- package/dist/Components/Select/Select.js +65 -24
- package/dist/Components/Select/Select.styles.js +12 -81
- package/dist/Components/Select/SelectNative.d.ts +63 -0
- package/dist/Components/Select/SelectNative.js +49 -0
- package/dist/Components/Select/SelectPopup.d.ts +5 -0
- package/dist/Components/Select/SelectPopup.js +415 -0
- package/dist/Components/Select/SelectProps.d.ts +122 -16
- package/dist/Components/SelectSearch/SelectSearch.d.ts +2 -2
- package/dist/Components/SelectSearch/SelectSearch.js +16 -78
- package/dist/Components/SelectSearch/SelectSearchProps.d.ts +31 -2
- package/dist/Components/SelectV2/SelectV2.d.ts +15 -3
- package/dist/Components/SelectV2/SelectV2.js +17 -264
- package/dist/Components/SelectV2/SelectV2Props.d.ts +39 -13
- package/dist/Components/SettingRow/SettingRow.d.ts +4 -0
- package/dist/Components/SettingRow/SettingRow.js +24 -0
- package/dist/Components/SettingRow/SettingRowProps.d.ts +16 -0
- package/dist/Components/SettingRow/SettingRowProps.js +2 -0
- package/dist/Components/SettingRow/SettingsSection.d.ts +4 -0
- package/dist/Components/SettingRow/SettingsSection.js +16 -0
- package/dist/Components/SettingRow/SettingsSectionProps.d.ts +18 -0
- package/dist/Components/SettingRow/SettingsSectionProps.js +2 -0
- package/dist/Components/SideBar/SecondaryBar.js +19 -9
- package/dist/Components/SideBar/SideBar.js +35 -20
- package/dist/Components/SideBar/SideBarProps.d.ts +8 -1
- package/dist/Components/SideBar/components/MenuItemBox.d.ts +2 -0
- package/dist/Components/SideBar/components/MenuItemBox.js +43 -28
- package/dist/Components/SideBar/components/MenuItems.js +4 -4
- package/dist/Components/SideBar/components/MenuPopoverContent.js +20 -10
- package/dist/Components/SideBar/components/OtherApps.js +3 -3
- package/dist/Components/SideBar/components/OverflowTooltipText.js +3 -1
- package/dist/Components/SideBar/components/TextTruncation.js +3 -3
- package/dist/Components/SideBar/menuDisabled.d.ts +5 -0
- package/dist/Components/SideBar/menuDisabled.js +7 -0
- package/dist/Components/SideBar/sidebarId.d.ts +2 -0
- package/dist/Components/SideBar/sidebarId.js +6 -0
- package/dist/Components/Skeletons/SkeletonProps.d.ts +4 -2
- package/dist/Components/Skeletons/Skeletons.d.ts +1 -1
- package/dist/Components/Skeletons/Skeletons.js +2 -2
- package/dist/Components/Slider/Slider.js +2 -1
- package/dist/Components/Spinner/Spinner.d.ts +3 -0
- package/dist/Components/Spinner/Spinner.js +22 -0
- package/dist/Components/Spinner/SpinnerProps.d.ts +15 -0
- package/dist/Components/Spinner/SpinnerProps.js +2 -0
- package/dist/Components/StageProgress/StageItem.js +12 -4
- package/dist/Components/StageProgress/StageProgress.js +6 -7
- package/dist/Components/StageProgress/StageProgressProps.d.ts +9 -3
- package/dist/Components/StageProgress/StageProgressProps.js +6 -2
- package/dist/Components/StageProgress/StepperStage.js +5 -2
- package/dist/Components/StatCard/StatCard.d.ts +4 -0
- package/dist/Components/StatCard/StatCard.js +42 -0
- package/dist/Components/StatCard/StatCardProps.d.ts +26 -0
- package/dist/Components/StatCard/StatCardProps.js +2 -0
- package/dist/Components/Switch/Switch.d.ts +2 -2
- package/dist/Components/Switch/Switch.js +11 -9
- package/dist/Components/Switch/SwitchProps.d.ts +5 -1
- package/dist/Components/Table/Table.d.ts +1 -1
- package/dist/Components/Table/Table.js +56 -49
- package/dist/Components/Table/TableProps.d.ts +46 -8
- package/dist/Components/Table/components/HeaderActions.js +3 -2
- package/dist/Components/Table/components/Pagination.d.ts +1 -1
- package/dist/Components/Table/components/Pagination.js +1 -1
- package/dist/Components/Table/components/TableActions.js +1 -1
- package/dist/Components/Table/components/TableBody.d.ts +1 -1
- package/dist/Components/Table/components/TableBody.js +33 -41
- package/dist/Components/Table/components/TableGroupRow.js +1 -1
- package/dist/Components/Table/components/TableHeader.d.ts +1 -1
- package/dist/Components/Table/components/TableHeader.js +14 -12
- package/dist/Components/Table/components/TableSearch.js +1 -1
- package/dist/Components/Table/components/rowMetrics.d.ts +11 -0
- package/dist/Components/Table/components/rowMetrics.js +16 -0
- package/dist/Components/Table/filters/ActiveFilters.js +7 -4
- package/dist/Components/Table/filters/CompactSelect.js +1 -1
- package/dist/Components/Table/filters/LeftFilterPane.js +1 -1
- package/dist/Components/Table/filters/TableFilters.js +1 -1
- package/dist/Components/Table/hooks/useTable.d.ts +1 -10
- package/dist/Components/Table/hooks/useTable.js +14 -23
- package/dist/Components/Table/settings/ManageColumns.js +7 -6
- package/dist/Components/Table/settings/TableSettings.js +5 -4
- package/dist/Components/Table/variants/classic.js +2 -0
- package/dist/Components/Table/variants/stripe.d.ts +3 -0
- package/dist/Components/Table/variants/stripe.js +7 -0
- package/dist/Components/Table/variants/studio.js +2 -0
- package/dist/Components/Table/variants/tokens.d.ts +2 -0
- package/dist/Components/Tabs/Tabs.d.ts +3 -0
- package/dist/Components/Tabs/Tabs.js +70 -0
- package/dist/Components/Tabs/TabsContext.d.ts +22 -0
- package/dist/Components/Tabs/TabsContext.js +16 -0
- package/dist/Components/Tabs/TabsProps.d.ts +74 -0
- package/dist/Components/Tabs/TabsProps.js +2 -0
- package/dist/Components/Tabs/components/CountBadge.d.ts +12 -0
- package/dist/Components/Tabs/components/CountBadge.js +17 -0
- package/dist/Components/Tabs/components/Tab.d.ts +3 -0
- package/dist/Components/Tabs/components/Tab.js +39 -0
- package/dist/Components/Tabs/components/TabList.d.ts +3 -0
- package/dist/Components/Tabs/components/TabList.js +71 -0
- package/dist/Components/Tabs/components/TabPanel.d.ts +3 -0
- package/dist/Components/Tabs/components/TabPanel.js +17 -0
- package/dist/Components/Tabs/components/TabPanels.d.ts +3 -0
- package/dist/Components/Tabs/components/TabPanels.js +14 -0
- package/dist/Components/Tabs/index.d.ts +6 -0
- package/dist/Components/Tabs/index.js +16 -0
- package/dist/Components/Tabs/tabStyles.d.ts +15 -0
- package/dist/Components/Tabs/tabStyles.js +38 -0
- package/dist/Components/Tag/Tag.js +14 -6
- package/dist/Components/Tag/Tag.styles.d.ts +2 -0
- package/dist/Components/Tag/Tag.styles.js +44 -37
- package/dist/Components/Tag/TagProps.d.ts +17 -4
- package/dist/Components/Timeline/Timeline.d.ts +1 -1
- package/dist/Components/Timeline/Timeline.js +42 -30
- package/dist/Components/Timeline/TimelineProps.d.ts +25 -2
- package/dist/Components/Toaster/Toaster.js +73 -55
- package/dist/Components/Toaster/ToasterProps.d.ts +18 -5
- package/dist/Components/Toaster/toastDuration.d.ts +4 -0
- package/dist/Components/Toaster/toastDuration.js +7 -0
- package/dist/Components/Toggle/TableToggle.d.ts +1 -1
- package/dist/Components/Toggle/TableToggle.js +10 -25
- package/dist/Components/Toggle/TableToggleProps.d.ts +3 -2
- package/dist/Components/ToggleSwitch/ToggleSwitch.d.ts +2 -2
- package/dist/Components/ToggleSwitch/ToggleSwitch.js +41 -7
- package/dist/Components/ToggleSwitch/ToggleSwitchProps.d.ts +63 -8
- package/dist/Components/ToolTip/OverflowToolTip.d.ts +0 -15
- package/dist/Components/ToolTip/OverflowToolTip.js +1 -15
- package/dist/Components/ToolTip/ToolTip.js +13 -13
- package/dist/Components/ToolTip/ToolTipProps.d.ts +5 -2
- package/dist/Components/UpgradeButton/UpgradeButton.js +9 -14
- package/dist/Components/UserDetails/AddUserModal.js +1 -1
- package/dist/Components/UserDetails/ChangeRoleModal.js +1 -1
- package/dist/Components/UserDetails/DeactivateConfirmModal.js +4 -6
- package/dist/Components/UserDetails/UserDetails.js +6 -8
- package/dist/Components/WorkspaceWindow/WorkspaceTrayPreview.d.ts +0 -13
- package/dist/Components/WorkspaceWindow/WorkspaceTrayPreview.js +2 -14
- package/dist/Components/WorkspaceWindow/WorkspaceWindow.d.ts +0 -11
- package/dist/Components/WorkspaceWindow/WorkspaceWindow.js +6 -23
- package/dist/Constants/Sidebar.d.ts +2 -38
- package/dist/Constants/Sidebar.js +1 -16
- package/dist/Hooks/useDebounce.d.ts +6 -0
- package/dist/Hooks/useDebounce.js +33 -0
- package/dist/Hooks/useExclusiveOverlay.d.ts +0 -4
- package/dist/Hooks/useExclusiveOverlay.js +1 -4
- package/dist/Hooks/useFullscreen.d.ts +8 -0
- package/dist/Hooks/useFullscreen.js +32 -0
- package/dist/Hooks/useIsTruncated.d.ts +0 -30
- package/dist/Hooks/useIsTruncated.js +1 -30
- package/dist/Hooks/usePreferences.js +1 -6
- package/dist/Hooks/useSidebarPrefs.d.ts +1 -42
- package/dist/Hooks/useSidebarPrefs.js +1 -2
- package/dist/Theme/assertPalette.d.ts +1 -1
- package/dist/Theme/assertPalette.js +2 -2
- package/dist/Theme/chakra/Card.styles.d.ts +78 -0
- package/dist/Theme/chakra/Card.styles.js +48 -0
- package/dist/Theme/chakra/Drawer.styles.d.ts +41 -9
- package/dist/Theme/chakra/Drawer.styles.js +14 -13
- package/dist/Theme/chakra/Menu.styles.d.ts +3 -18
- package/dist/Theme/chakra/Menu.styles.js +2 -23
- package/dist/Theme/chakra/Modal.styles.d.ts +42 -9
- package/dist/Theme/chakra/Modal.styles.js +15 -13
- package/dist/Theme/chakra/Popover.styles.d.ts +3 -3
- package/dist/Theme/chakra/Popover.styles.js +2 -10
- package/dist/Theme/chakra/Slider.styles.d.ts +3 -3
- package/dist/Theme/chakra/Slider.styles.js +1 -6
- package/dist/Theme/chakra/common.web.d.ts +0 -4
- package/dist/Theme/chakra/common.web.js +1 -7
- package/dist/Theme/chakra/componentStyles.d.ts +157 -103
- package/dist/Theme/chakra/componentStyles.js +66 -86
- package/dist/Theme/chakra/createBrandTheme.d.ts +0 -10
- package/dist/Theme/chakra/createBrandTheme.js +6 -50
- package/dist/Theme/chakra/focusRing.styles.d.ts +0 -23
- package/dist/Theme/chakra/focusRing.styles.js +4 -23
- package/dist/Theme/chakra/fonts.web.d.ts +0 -5
- package/dist/Theme/chakra/fonts.web.js +1 -5
- package/dist/Theme/chakra/motion.d.ts +5 -0
- package/dist/Theme/chakra/motion.js +27 -0
- package/dist/Theme/chakra/overlay.styles.d.ts +51 -0
- package/dist/Theme/chakra/overlay.styles.js +48 -0
- package/dist/Theme/chakra/paletteFromTheme.d.ts +0 -4
- package/dist/Theme/chakra/paletteFromTheme.js +1 -4
- package/dist/Theme/index.d.ts +0 -12
- package/dist/Theme/index.js +3 -18
- package/dist/Theme/provider/PixelizeThemeProvider.d.ts +0 -32
- package/dist/Theme/provider/PixelizeThemeProvider.js +6 -74
- package/dist/Theme/provider/ThemeSwitcher.js +2 -10
- package/dist/Theme/provider/colorModeStorage.js +1 -4
- package/dist/Theme/tokens/brands/emerald/palette.dark.d.ts +0 -4
- package/dist/Theme/tokens/brands/emerald/palette.dark.js +0 -4
- package/dist/Theme/tokens/brands/emerald/palette.light.js +2 -10
- package/dist/Theme/tokens/brands/index.js +4 -4
- package/dist/Theme/tokens/brands/lavender/palette.dark.d.ts +0 -4
- package/dist/Theme/tokens/brands/lavender/palette.dark.js +0 -4
- package/dist/Theme/tokens/brands/lavender/palette.light.js +4 -13
- package/dist/Theme/tokens/brands/meadow/palette.dark.d.ts +0 -4
- package/dist/Theme/tokens/brands/meadow/palette.dark.js +0 -4
- package/dist/Theme/tokens/brands/meadow/palette.light.js +2 -11
- package/dist/Theme/tokens/brands/radiant/palette.dark.d.ts +0 -4
- package/dist/Theme/tokens/brands/radiant/palette.dark.js +0 -4
- package/dist/Theme/tokens/brands/radiant/palette.light.js +2 -10
- package/dist/Theme/tokens/brands/rosewood/palette.dark.d.ts +0 -4
- package/dist/Theme/tokens/brands/rosewood/palette.dark.js +0 -4
- package/dist/Theme/tokens/brands/rosewood/palette.light.js +2 -14
- package/dist/Theme/tokens/brands/skyline/palette.dark.d.ts +0 -4
- package/dist/Theme/tokens/brands/skyline/palette.dark.js +0 -4
- package/dist/Theme/tokens/brands/skyline/palette.light.js +2 -11
- package/dist/Theme/tokens/brands/slate/palette.dark.d.ts +0 -4
- package/dist/Theme/tokens/brands/slate/palette.dark.js +0 -4
- package/dist/Theme/tokens/brands/slate/palette.light.js +1 -11
- package/dist/Theme/tokens/brands/storefront/palette.dark.d.ts +0 -4
- package/dist/Theme/tokens/brands/storefront/palette.dark.js +0 -4
- package/dist/Theme/tokens/brands/zinc/palette.dark.d.ts +10 -9
- package/dist/Theme/tokens/brands/zinc/palette.dark.js +5 -35
- package/dist/Theme/tokens/brands/zinc/palette.light.js +3 -12
- package/dist/Theme/tokens/builders/accentText.d.ts +0 -43
- package/dist/Theme/tokens/builders/accentText.js +5 -48
- package/dist/Theme/tokens/builders/brandInk.d.ts +2 -0
- package/dist/Theme/tokens/builders/brandInk.js +19 -1
- package/dist/Theme/tokens/builders/buildBrandTokens.d.ts +0 -3
- package/dist/Theme/tokens/builders/buildBrandTokens.js +1 -3
- package/dist/Theme/tokens/builders/buildDarkPalette.d.ts +0 -12
- package/dist/Theme/tokens/builders/buildDarkPalette.js +15 -103
- package/dist/Theme/tokens/builders/chartColorsFromTheme.d.ts +0 -8
- package/dist/Theme/tokens/builders/chartColorsFromTheme.js +1 -8
- package/dist/Theme/tokens/builders/color.d.ts +0 -20
- package/dist/Theme/tokens/builders/color.js +3 -20
- package/dist/Theme/tokens/builders/filledSurface.d.ts +2 -12
- package/dist/Theme/tokens/builders/filledSurface.js +35 -25
- package/dist/Theme/tokens/builders/focusRing.d.ts +0 -45
- package/dist/Theme/tokens/builders/focusRing.js +5 -49
- package/dist/Theme/tokens/builders/gradientInk.d.ts +0 -10
- package/dist/Theme/tokens/builders/gradientInk.js +2 -10
- package/dist/Theme/tokens/builders/index.d.ts +4 -0
- package/dist/Theme/tokens/builders/index.js +4 -0
- package/dist/Theme/tokens/builders/outlineRung.d.ts +0 -66
- package/dist/Theme/tokens/builders/outlineRung.js +4 -70
- package/dist/Theme/tokens/builders/placeholderInk.d.ts +0 -12
- package/dist/Theme/tokens/builders/placeholderInk.js +2 -12
- package/dist/Theme/tokens/builders/resolvedRungs.d.ts +0 -5
- package/dist/Theme/tokens/builders/resolvedRungs.js +1 -5
- package/dist/Theme/tokens/builders/rowStates.d.ts +0 -6
- package/dist/Theme/tokens/builders/rowStates.js +4 -8
- package/dist/Theme/tokens/builders/scrim.d.ts +6 -0
- package/dist/Theme/tokens/builders/scrim.js +17 -0
- package/dist/Theme/tokens/builders/scrollbar.d.ts +0 -4
- package/dist/Theme/tokens/builders/scrollbar.js +1 -4
- package/dist/Theme/tokens/builders/semanticText.d.ts +0 -5
- package/dist/Theme/tokens/builders/semanticText.js +1 -5
- package/dist/Theme/tokens/builders/sidebarAccent.d.ts +8 -0
- package/dist/Theme/tokens/builders/sidebarAccent.js +15 -1
- package/dist/Theme/tokens/builders/statusTone.d.ts +1 -19
- package/dist/Theme/tokens/builders/statusTone.js +4 -19
- package/dist/Theme/tokens/builders/surfaceRaised.d.ts +6 -0
- package/dist/Theme/tokens/builders/surfaceRaised.js +21 -0
- package/dist/Theme/tokens/builders/surfaceRungs.d.ts +0 -4
- package/dist/Theme/tokens/builders/surfaceRungs.js +3 -9
- package/dist/Theme/tokens/builders/tone.d.ts +22 -0
- package/dist/Theme/tokens/builders/tone.js +54 -0
- package/dist/Theme/tokens/builders/tooltipSurface.d.ts +6 -0
- package/dist/Theme/tokens/builders/tooltipSurface.js +10 -0
- package/dist/Theme/tokens/builders/viewportHeight.d.ts +8 -0
- package/dist/Theme/tokens/builders/viewportHeight.js +9 -0
- package/dist/Theme/tokens/index.d.ts +0 -10
- package/dist/Theme/tokens/index.js +1 -10
- package/dist/Theme/tokens/primitives/controlSizes.d.ts +12 -0
- package/dist/Theme/tokens/primitives/controlSizes.js +14 -0
- package/dist/Theme/tokens/primitives/index.d.ts +2 -0
- package/dist/Theme/tokens/primitives/index.js +16 -0
- package/dist/Theme/tokens/primitives/motion.d.ts +8 -0
- package/dist/Theme/tokens/primitives/motion.js +12 -0
- package/dist/Theme/tokens/primitives/sizes.d.ts +0 -4
- package/dist/Theme/tokens/primitives/sizes.js +1 -4
- package/dist/Theme/tokens/primitives/typography.d.ts +0 -7
- package/dist/Theme/tokens/primitives/typography.js +1 -7
- package/dist/Theme/tokens/types.d.ts +8 -28
- package/dist/Theme/tokens/types.js +1 -6
- package/dist/Utils/accountHandoff.d.ts +0 -17
- package/dist/Utils/accountHandoff.js +2 -17
- package/dist/Utils/apiError.d.ts +2 -0
- package/dist/Utils/apiError.js +28 -0
- package/dist/Utils/functions.d.ts +1 -0
- package/dist/Utils/functions.js +6 -4
- package/dist/Utils/humanize.d.ts +4 -0
- package/dist/Utils/humanize.js +19 -0
- package/dist/Utils/lazyWithRetry.d.ts +9 -0
- package/dist/Utils/lazyWithRetry.js +51 -0
- package/dist/Utils/mergeRefs.d.ts +0 -5
- package/dist/Utils/mergeRefs.js +1 -5
- package/dist/Utils/planBadge.d.ts +1 -11
- package/dist/Utils/planBadge.js +2 -12
- package/dist/Utils/planExpiry.d.ts +0 -26
- package/dist/Utils/planExpiry.js +4 -29
- package/dist/Utils/rafThrottle.d.ts +0 -11
- package/dist/Utils/rafThrottle.js +1 -11
- package/dist/Utils/table.d.ts +2 -22
- package/dist/Utils/table.js +17 -87
- package/dist/Utils/validation.d.ts +13 -0
- package/dist/Utils/validation.js +86 -0
- package/dist/esm/Components/Accordion/Accordion.js +8 -10
- package/dist/esm/Components/Accordion/accordionColors.js +9 -10
- package/dist/esm/Components/AlertDialog/AlertDialog.js +3 -6
- package/dist/esm/Components/Apexcharts/ApexAreaChart/ApexAreaChart.js +7 -3
- package/dist/esm/Components/Apexcharts/ApexBarChart/ApexBarChart.js +8 -5
- package/dist/esm/Components/Apexcharts/ApexChartFallback.js +5 -0
- package/dist/esm/Components/Apexcharts/ApexLineChart/ApexLineChart.js +7 -3
- package/dist/esm/Components/Apexcharts/ApexPieChart/ApexPieChart.js +7 -3
- package/dist/esm/Components/Apexcharts/ApexPolarCharts/ApexPolarCharts.js +9 -6
- package/dist/esm/Components/Apexcharts/ApexRadialChart/ApexRadialChart.js +7 -5
- package/dist/esm/Components/Apexcharts/LazyReactApexChart.js +5 -0
- package/dist/esm/Components/AppSwitcher/AppMark.js +1 -5
- package/dist/esm/Components/AppSwitcher/AppSwitcher.js +4 -9
- package/dist/esm/Components/Avatar/Avatar.js +22 -0
- package/dist/esm/Components/Avatar/AvatarGroup.js +19 -0
- package/dist/esm/Components/Avatar/AvatarProps.js +1 -0
- package/dist/esm/Components/Avatar/avatarColorway.js +25 -0
- package/dist/esm/Components/Avatar/avatarSizing.js +12 -0
- package/dist/esm/Components/Backdrop/Backdrop.js +28 -0
- package/dist/esm/Components/Backdrop/BackdropProps.js +1 -0
- package/dist/esm/Components/Breadcrumbs/Breadcrumbs.js +15 -5
- package/dist/esm/Components/Breadcrumbs/breadcrumbInk.js +7 -0
- package/dist/esm/Components/Button/Button.js +2 -2
- package/dist/esm/Components/Button/Button.styles.js +21 -62
- package/dist/esm/Components/ButtonGroupIcon/ButtonGoupIconProps.js +2 -1
- package/dist/esm/Components/ButtonGroupIcon/ButtonGroupIcon.js +3 -10
- package/dist/esm/Components/ButtonGroupIcon/ButtonGroupIconProps.js +1 -0
- package/dist/esm/Components/Buttons/Buttons.js +2 -3
- package/dist/esm/Components/Card/Card.js +11 -5
- package/dist/esm/Components/Card/PaymentCard/PaymentCard.js +13 -9
- package/dist/esm/Components/Checkbox/Checkbox.js +11 -9
- package/dist/esm/Components/Checkbox/Checkbox.styles.js +42 -37
- package/dist/esm/Components/Common/ErrorComponent.js +1 -1
- package/dist/esm/Components/Common/ErrorMessage.js +5 -5
- package/dist/esm/Components/Common/FieldMessage.js +14 -0
- package/dist/esm/Components/Common/FormLabel.js +13 -8
- package/dist/esm/Components/Common/HelperText.js +3 -2
- package/dist/esm/Components/Common/Label.js +3 -2
- package/dist/esm/Components/Common/fieldMessageStyles.js +13 -0
- package/dist/esm/Components/Common/fieldStyles.js +66 -29
- package/dist/esm/Components/Common/useFieldIds.js +23 -0
- package/dist/esm/Components/ConfirmDialog/ConfirmDialog.js +18 -0
- package/dist/esm/Components/ConfirmDialog/ConfirmDialogProps.js +1 -0
- package/dist/esm/Components/ContactForm/ContactForm.js +19 -15
- package/dist/esm/Components/CopyButton/CopyButton.js +3 -4
- package/dist/esm/Components/CustomModulesTable/DeleteModuleModal.js +4 -4
- package/dist/esm/Components/CustomModulesTable/EditModuleModal.js +2 -4
- package/dist/esm/Components/DatePicker/CalendarPanel.js +3 -4
- package/dist/esm/Components/DatePicker/DatePicker.js +12 -49
- package/dist/esm/Components/DatePicker/DatePickerProps.js +1 -1
- package/dist/esm/Components/DatePicker/RangeDatePicker.js +17 -21
- package/dist/esm/Components/DatePicker/SingleDatePicker.js +37 -53
- package/dist/esm/Components/DatePicker/ThemeDatePicker.js +11 -18
- package/dist/esm/Components/DatePicker/TimeOnlyPicker.js +35 -20
- package/dist/esm/Components/DatePicker/TimePicker.js +8 -12
- package/dist/esm/Components/DatePicker/TimePickerInput.js +5 -11
- package/dist/esm/Components/DatePicker/dayStates.js +3 -15
- package/dist/esm/Components/DatePicker/pickerField.js +24 -0
- package/dist/esm/Components/DatePicker/valueFormat.js +15 -0
- package/dist/esm/Components/DescriptionList/DescriptionList.js +27 -0
- package/dist/esm/Components/DescriptionList/DescriptionListProps.js +1 -0
- package/dist/esm/Components/Drawer/Drawer.js +22 -8
- package/dist/esm/Components/Dropdown/DropDown.js +43 -33
- package/dist/esm/Components/Editor/Editor.js +13 -1
- package/dist/esm/Components/Editor/joditAccessibility.js +24 -0
- package/dist/esm/Components/EmailCards/VerifyEmailOtp/VerifyEmailOtp.js +3 -3
- package/dist/esm/Components/EmptyState/EmptyState.js +24 -15
- package/dist/esm/Components/FeedbackForm/FeedbackForm.js +17 -7
- package/dist/esm/Components/FieldSelectModal/FieldSelectModal.js +3 -5
- package/dist/esm/Components/FilePreview/FilePreview.js +8 -8
- package/dist/esm/Components/FileUpload/FileUpload.js +22 -6
- package/dist/esm/Components/FileUpload/constants.js +1 -0
- package/dist/esm/Components/FileUploader/FileUploader.js +6 -5
- package/dist/esm/Components/FilterBar/FilterBar.js +12 -0
- package/dist/esm/Components/FilterBar/FilterBarProps.js +1 -0
- package/dist/esm/Components/FilterSidebar/FilterSidebar.js +27 -33
- package/dist/esm/Components/FilterSidebar/filterHoverStyle.js +1 -1
- package/dist/esm/Components/Form/FormWrapper.js +1 -1
- package/dist/esm/Components/Header/Header.js +2 -16
- package/dist/esm/Components/Header/HeaderActions.js +4 -4
- package/dist/esm/Components/Header/components/desktopMenu.js +10 -11
- package/dist/esm/Components/Header/components/mobileMenu.js +23 -20
- package/dist/esm/Components/Input/Input/Input.js +3 -2
- package/dist/esm/Components/Input/PhoneNumberInput.js +8 -5
- package/dist/esm/Components/Input/Switch/InputSwitch.js +16 -21
- package/dist/esm/Components/Input/TextInput.js +83 -10
- package/dist/esm/Components/Input/TextInput.styles.js +42 -88
- package/dist/esm/Components/Input/textInputIconSize.js +4 -20
- package/dist/esm/Components/Input/useAriaRequired.js +15 -0
- package/dist/esm/Components/InputTextArea/InputTextArea.js +10 -6
- package/dist/esm/Components/InputTextArea/InputTextArea.style.js +14 -69
- package/dist/esm/Components/KanbanBoard/AccountCard.js +9 -6
- package/dist/esm/Components/KanbanBoard/AccountRow.js +1 -1
- package/dist/esm/Components/KanbanBoard/KanbanBoard.js +86 -50
- package/dist/esm/Components/KanbanBoard/index.js +1 -0
- package/dist/esm/Components/LimitReachedModal/LimitReachedModal.js +2 -2
- package/dist/esm/Components/LimitReachedModal/limitReachedCopy.js +1 -3
- package/dist/esm/Components/Loading/Loading.js +16 -19
- package/dist/esm/Components/MediaViewer/MediaViewer.js +196 -0
- package/dist/esm/Components/MediaViewer/MediaViewerProps.js +29 -0
- package/dist/esm/Components/MediaViewer/components/MediaAudioPlayer.js +133 -0
- package/dist/esm/Components/MediaViewer/components/MediaAudioPlayerProps.js +18 -0
- package/dist/esm/Components/MediaViewer/components/MediaDocumentStage.js +109 -0
- package/dist/esm/Components/MediaViewer/components/MediaDocumentStageProps.js +8 -0
- package/dist/esm/Components/MediaViewer/components/MediaImageViewer.js +98 -0
- package/dist/esm/Components/MediaViewer/components/MediaImageViewerProps.js +15 -0
- package/dist/esm/Components/MediaViewer/components/MediaScrubber.js +87 -0
- package/dist/esm/Components/MediaViewer/components/MediaScrubberProps.js +1 -0
- package/dist/esm/Components/MediaViewer/components/MediaStatusPanel.js +12 -0
- package/dist/esm/Components/MediaViewer/components/MediaStatusPanelProps.js +1 -0
- package/dist/esm/Components/MediaViewer/components/MediaVideoPlayer.js +243 -0
- package/dist/esm/Components/MediaViewer/components/MediaVideoPlayerProps.js +28 -0
- package/dist/esm/Components/MediaViewer/components/TileChip.js +10 -0
- package/dist/esm/Components/MediaViewer/components/TileChipProps.js +1 -0
- package/dist/esm/Components/MediaViewer/components/VideoPoster.js +11 -0
- package/dist/esm/Components/MediaViewer/components/VideoPosterProps.js +1 -0
- package/dist/esm/Components/MediaViewer/components/ViewerIconButton.js +15 -0
- package/dist/esm/Components/MediaViewer/components/ViewerIconButtonProps.js +1 -0
- package/dist/esm/Components/MediaViewer/components/mediaKindIcon.js +18 -0
- package/dist/esm/Components/MediaViewer/components/sanitizeDocxHrefs.js +27 -0
- package/dist/esm/Components/MediaViewer/hooks/useAutoHideChrome.js +40 -0
- package/dist/esm/Components/MediaViewer/hooks/useFileViewer.js +45 -0
- package/dist/esm/Components/MediaViewer/mediaItems.js +174 -0
- package/dist/esm/Components/MediaViewer/useViewerChrome.js +27 -0
- package/dist/esm/Components/Modal/Modal.js +25 -19
- package/dist/esm/Components/MoreItems/MoreItems.js +4 -2
- package/dist/esm/Components/MultiSelect/MultiSelect.js +19 -18
- package/dist/esm/Components/NavigationBar/NavigationBar.js +7 -8
- package/dist/esm/Components/NoteTextArea/NoteTextArea.js +15 -10
- package/dist/esm/Components/Notification/Notification.js +9 -5
- package/dist/esm/Components/NotificationBell/NotificationBell.js +33 -0
- package/dist/esm/Components/NotificationBell/NotificationBellProps.js +1 -0
- package/dist/esm/Components/NotificationBell/NotificationItem.js +29 -0
- package/dist/esm/Components/NotificationBell/NotificationList.js +36 -0
- package/dist/esm/Components/NotificationBell/NotificationPanel.js +31 -0
- package/dist/esm/Components/NotificationBell/index.js +6 -0
- package/dist/esm/Components/NotificationBell/notificationHelpers.js +98 -0
- package/dist/esm/Components/NumberInput/NumberInput.js +7 -6
- package/dist/esm/Components/NumberInput/NumberInput.styles.js +19 -78
- package/dist/esm/Components/OrgSwitcher/OrgSwitcher.js +4 -12
- package/dist/esm/Components/OrgSwitcher/OrgSwitcherProps.js +2 -1
- package/dist/esm/Components/OrganizationDetails/CreateOrgModal.js +1 -1
- package/dist/esm/Components/OrganizationDetails/DeleteOrgModal.js +7 -9
- package/dist/esm/Components/OrganizationDetails/OrganizationDetails.js +9 -8
- package/dist/esm/Components/PageHeader/PageHeader.js +9 -0
- package/dist/esm/Components/PageHeader/PageHeaderProps.js +1 -0
- package/dist/esm/Components/PdfViewer/PdfViewer.js +1 -1
- package/dist/esm/Components/PersonChip/PersonChip.js +42 -0
- package/dist/esm/Components/PersonChip/PersonChipProps.js +1 -0
- package/dist/esm/Components/PinInput/PinInput.js +10 -7
- package/dist/esm/Components/PinInput/pinInputCellSize.js +6 -0
- package/dist/esm/Components/PlanBadge/PlanBadge.js +1 -7
- package/dist/esm/Components/PlanPill/PlanPill.js +2 -3
- package/dist/esm/Components/PlanPill/planPillGradient.js +6 -20
- package/dist/esm/Components/Primitives/Primitives.js +3 -6
- package/dist/esm/Components/ProductCard/ProductPrice.js +18 -7
- package/dist/esm/Components/ProductCard/ProductReview.js +3 -2
- package/dist/esm/Components/ProductDetails/ProductDetails.js +1 -1
- package/dist/esm/Components/ProductDetails/ProductDtlPrice.js +5 -5
- package/dist/esm/Components/ProductDetails/ProductImageSlider.js +36 -20
- package/dist/esm/Components/ProfileCard/ProfileCard.js +25 -10
- package/dist/esm/Components/ProfilePhotoViewer/ProfilePhotoViewer.js +7 -4
- package/dist/esm/Components/ProgressBar/ProgressBar.js +27 -3
- package/dist/esm/Components/QueryState/ErrorState.js +11 -0
- package/dist/esm/Components/QueryState/QueryStateBoundary.js +20 -0
- package/dist/esm/Components/QueryState/QueryStateProps.js +1 -0
- package/dist/esm/Components/RadioButton/RadioButton.js +33 -16
- package/dist/esm/Components/RangeSlider/RangeSlider.js +131 -0
- package/dist/esm/Components/RangeSlider/RangeSliderProps.js +1 -0
- package/dist/esm/Components/RangeSlider/rangeSliderColors.js +7 -0
- package/dist/esm/Components/RangeSlider/rangeSliderMath.js +69 -0
- package/dist/esm/Components/RangeSlider/rangeSliderSize.js +8 -0
- package/dist/esm/Components/Reorder/Reorder.js +2 -2
- package/dist/esm/Components/RolesPermission/DeleteRoleModal.js +7 -9
- package/dist/esm/Components/RolesPermission/RolesPermission.js +1 -1
- package/dist/esm/Components/SaveBar/SaveBar.js +19 -0
- package/dist/esm/Components/SaveBar/SaveBarProps.js +1 -0
- package/dist/esm/Components/ScrollToTop/ScrollToTop.js +5 -2
- package/dist/esm/Components/Search/Search.js +35 -16
- package/dist/esm/Components/SearchSelect/SearchSelect.js +62 -76
- package/dist/esm/Components/SearchSelect/searchSelectSize.js +15 -15
- package/dist/esm/Components/SegmentedControl/SegmentedControl.js +34 -30
- package/dist/esm/Components/SegmentedControl/useSlidingPill.js +22 -0
- package/dist/esm/Components/Select/Select.js +67 -25
- package/dist/esm/Components/Select/Select.styles.js +12 -81
- package/dist/esm/Components/Select/SelectNative.js +44 -0
- package/dist/esm/Components/Select/SelectPopup.js +377 -0
- package/dist/esm/Components/SelectSearch/SelectSearch.js +18 -80
- package/dist/esm/Components/SelectV2/SelectV2.js +16 -231
- package/dist/esm/Components/SettingRow/SettingRow.js +22 -0
- package/dist/esm/Components/SettingRow/SettingRowProps.js +1 -0
- package/dist/esm/Components/SettingRow/SettingsSection.js +11 -0
- package/dist/esm/Components/SettingRow/SettingsSectionProps.js +1 -0
- package/dist/esm/Components/SideBar/SecondaryBar.js +19 -9
- package/dist/esm/Components/SideBar/SideBar.js +37 -22
- package/dist/esm/Components/SideBar/components/MenuItemBox.js +40 -25
- package/dist/esm/Components/SideBar/components/MenuItems.js +4 -4
- package/dist/esm/Components/SideBar/components/MenuPopoverContent.js +20 -10
- package/dist/esm/Components/SideBar/components/OtherApps.js +3 -3
- package/dist/esm/Components/SideBar/components/OverflowTooltipText.js +3 -1
- package/dist/esm/Components/SideBar/components/TextTruncation.js +3 -3
- package/dist/esm/Components/SideBar/menuDisabled.js +3 -0
- package/dist/esm/Components/SideBar/sidebarId.js +2 -0
- package/dist/esm/Components/Skeletons/Skeletons.js +2 -2
- package/dist/esm/Components/Slider/Slider.js +2 -1
- package/dist/esm/Components/Spinner/Spinner.js +19 -0
- package/dist/esm/Components/Spinner/SpinnerProps.js +1 -0
- package/dist/esm/Components/StageProgress/StageItem.js +12 -4
- package/dist/esm/Components/StageProgress/StageProgress.js +6 -7
- package/dist/esm/Components/StageProgress/StageProgressProps.js +6 -2
- package/dist/esm/Components/StageProgress/StepperStage.js +5 -2
- package/dist/esm/Components/StatCard/StatCard.js +37 -0
- package/dist/esm/Components/StatCard/StatCardProps.js +1 -0
- package/dist/esm/Components/Switch/Switch.js +10 -11
- package/dist/esm/Components/Table/Table.js +58 -51
- package/dist/esm/Components/Table/components/HeaderActions.js +3 -2
- package/dist/esm/Components/Table/components/Pagination.js +1 -1
- package/dist/esm/Components/Table/components/TableActions.js +1 -1
- package/dist/esm/Components/Table/components/TableBody.js +33 -41
- package/dist/esm/Components/Table/components/TableGroupRow.js +1 -1
- package/dist/esm/Components/Table/components/TableHeader.js +14 -12
- package/dist/esm/Components/Table/components/TableSearch.js +1 -1
- package/dist/esm/Components/Table/components/rowMetrics.js +11 -0
- package/dist/esm/Components/Table/filters/ActiveFilters.js +7 -4
- package/dist/esm/Components/Table/filters/CompactSelect.js +1 -1
- package/dist/esm/Components/Table/filters/LeftFilterPane.js +1 -1
- package/dist/esm/Components/Table/filters/TableFilters.js +1 -1
- package/dist/esm/Components/Table/hooks/useTable.js +14 -23
- package/dist/esm/Components/Table/settings/ManageColumns.js +7 -6
- package/dist/esm/Components/Table/settings/TableSettings.js +5 -4
- package/dist/esm/Components/Table/variants/classic.js +2 -0
- package/dist/esm/Components/Table/variants/stripe.js +3 -0
- package/dist/esm/Components/Table/variants/studio.js +2 -0
- package/dist/esm/Components/Tabs/Tabs.js +65 -0
- package/dist/esm/Components/Tabs/TabsContext.js +10 -0
- package/dist/esm/Components/Tabs/TabsProps.js +1 -0
- package/dist/esm/Components/Tabs/components/CountBadge.js +15 -0
- package/dist/esm/Components/Tabs/components/Tab.js +34 -0
- package/dist/esm/Components/Tabs/components/TabList.js +69 -0
- package/dist/esm/Components/Tabs/components/TabPanel.js +15 -0
- package/dist/esm/Components/Tabs/components/TabPanels.js +12 -0
- package/dist/esm/Components/Tabs/index.js +5 -0
- package/dist/esm/Components/Tabs/tabStyles.js +33 -0
- package/dist/esm/Components/Tag/Tag.js +15 -7
- package/dist/esm/Components/Tag/Tag.styles.js +44 -37
- package/dist/esm/Components/Timeline/Timeline.js +42 -30
- package/dist/esm/Components/Toaster/Toaster.js +73 -58
- package/dist/esm/Components/Toaster/toastDuration.js +3 -0
- package/dist/esm/Components/Toggle/TableToggle.js +9 -24
- package/dist/esm/Components/ToggleSwitch/ToggleSwitch.js +39 -8
- package/dist/esm/Components/ToolTip/OverflowToolTip.js +1 -15
- package/dist/esm/Components/ToolTip/ToolTip.js +14 -14
- package/dist/esm/Components/UpgradeButton/UpgradeButton.js +9 -14
- package/dist/esm/Components/UserDetails/AddUserModal.js +1 -1
- package/dist/esm/Components/UserDetails/ChangeRoleModal.js +1 -1
- package/dist/esm/Components/UserDetails/DeactivateConfirmModal.js +6 -8
- package/dist/esm/Components/UserDetails/UserDetails.js +7 -9
- package/dist/esm/Components/WorkspaceWindow/WorkspaceTrayPreview.js +2 -14
- package/dist/esm/Components/WorkspaceWindow/WorkspaceWindow.js +6 -23
- package/dist/esm/Constants/Sidebar.js +0 -15
- package/dist/esm/Hooks/useDebounce.js +29 -0
- package/dist/esm/Hooks/useExclusiveOverlay.js +1 -4
- package/dist/esm/Hooks/useFullscreen.js +29 -0
- package/dist/esm/Hooks/useIsTruncated.js +1 -30
- package/dist/esm/Hooks/usePreferences.js +1 -6
- package/dist/esm/Hooks/useSidebarPrefs.js +1 -2
- package/dist/esm/Theme/assertPalette.js +2 -2
- package/dist/esm/Theme/chakra/Card.styles.js +45 -0
- package/dist/esm/Theme/chakra/Drawer.styles.js +14 -13
- package/dist/esm/Theme/chakra/Menu.styles.js +2 -23
- package/dist/esm/Theme/chakra/Modal.styles.js +15 -13
- package/dist/esm/Theme/chakra/Popover.styles.js +2 -10
- package/dist/esm/Theme/chakra/Slider.styles.js +1 -6
- package/dist/esm/Theme/chakra/common.web.js +1 -7
- package/dist/esm/Theme/chakra/componentStyles.js +68 -88
- package/dist/esm/Theme/chakra/createBrandTheme.js +6 -50
- package/dist/esm/Theme/chakra/focusRing.styles.js +4 -23
- package/dist/esm/Theme/chakra/fonts.web.js +1 -5
- package/dist/esm/Theme/chakra/motion.js +22 -0
- package/dist/esm/Theme/chakra/overlay.styles.js +43 -0
- package/dist/esm/Theme/chakra/paletteFromTheme.js +1 -4
- package/dist/esm/Theme/index.js +3 -18
- package/dist/esm/Theme/provider/PixelizeThemeProvider.js +6 -74
- package/dist/esm/Theme/provider/ThemeSwitcher.js +2 -10
- package/dist/esm/Theme/provider/colorModeStorage.js +1 -4
- package/dist/esm/Theme/tokens/brands/emerald/palette.dark.js +0 -4
- package/dist/esm/Theme/tokens/brands/emerald/palette.light.js +2 -10
- package/dist/esm/Theme/tokens/brands/index.js +4 -4
- package/dist/esm/Theme/tokens/brands/lavender/palette.dark.js +0 -4
- package/dist/esm/Theme/tokens/brands/lavender/palette.light.js +4 -13
- package/dist/esm/Theme/tokens/brands/meadow/palette.dark.js +0 -4
- package/dist/esm/Theme/tokens/brands/meadow/palette.light.js +2 -11
- package/dist/esm/Theme/tokens/brands/radiant/palette.dark.js +0 -4
- package/dist/esm/Theme/tokens/brands/radiant/palette.light.js +2 -10
- package/dist/esm/Theme/tokens/brands/rosewood/palette.dark.js +0 -4
- package/dist/esm/Theme/tokens/brands/rosewood/palette.light.js +2 -14
- package/dist/esm/Theme/tokens/brands/skyline/palette.dark.js +0 -4
- package/dist/esm/Theme/tokens/brands/skyline/palette.light.js +2 -11
- package/dist/esm/Theme/tokens/brands/slate/palette.dark.js +0 -4
- package/dist/esm/Theme/tokens/brands/slate/palette.light.js +1 -11
- package/dist/esm/Theme/tokens/brands/storefront/palette.dark.js +0 -4
- package/dist/esm/Theme/tokens/brands/zinc/palette.dark.js +5 -35
- package/dist/esm/Theme/tokens/brands/zinc/palette.light.js +3 -12
- package/dist/esm/Theme/tokens/builders/accentText.js +5 -48
- package/dist/esm/Theme/tokens/builders/brandInk.js +18 -2
- package/dist/esm/Theme/tokens/builders/buildBrandTokens.js +1 -3
- package/dist/esm/Theme/tokens/builders/buildDarkPalette.js +15 -103
- package/dist/esm/Theme/tokens/builders/chartColorsFromTheme.js +1 -8
- package/dist/esm/Theme/tokens/builders/color.js +3 -20
- package/dist/esm/Theme/tokens/builders/filledSurface.js +35 -25
- package/dist/esm/Theme/tokens/builders/focusRing.js +5 -49
- package/dist/esm/Theme/tokens/builders/gradientInk.js +2 -10
- package/dist/esm/Theme/tokens/builders/index.js +4 -0
- package/dist/esm/Theme/tokens/builders/outlineRung.js +4 -70
- package/dist/esm/Theme/tokens/builders/placeholderInk.js +2 -12
- package/dist/esm/Theme/tokens/builders/resolvedRungs.js +1 -5
- package/dist/esm/Theme/tokens/builders/rowStates.js +5 -9
- package/dist/esm/Theme/tokens/builders/scrim.js +12 -0
- package/dist/esm/Theme/tokens/builders/scrollbar.js +1 -4
- package/dist/esm/Theme/tokens/builders/semanticText.js +1 -5
- package/dist/esm/Theme/tokens/builders/sidebarAccent.js +11 -0
- package/dist/esm/Theme/tokens/builders/statusTone.js +4 -19
- package/dist/esm/Theme/tokens/builders/surfaceRaised.js +15 -0
- package/dist/esm/Theme/tokens/builders/surfaceRungs.js +3 -9
- package/dist/esm/Theme/tokens/builders/tone.js +47 -0
- package/dist/esm/Theme/tokens/builders/tooltipSurface.js +6 -0
- package/dist/esm/Theme/tokens/builders/viewportHeight.js +6 -0
- package/dist/esm/Theme/tokens/index.js +1 -10
- package/dist/esm/Theme/tokens/primitives/controlSizes.js +10 -0
- package/dist/esm/Theme/tokens/primitives/index.js +2 -0
- package/dist/esm/Theme/tokens/primitives/motion.js +8 -0
- package/dist/esm/Theme/tokens/primitives/sizes.js +1 -4
- package/dist/esm/Theme/tokens/primitives/typography.js +1 -7
- package/dist/esm/Theme/tokens/types.js +1 -6
- package/dist/esm/Utils/accountHandoff.js +2 -17
- package/dist/esm/Utils/apiError.js +24 -0
- package/dist/esm/Utils/functions.js +6 -4
- package/dist/esm/Utils/humanize.js +15 -0
- package/dist/esm/Utils/lazyWithRetry.js +45 -0
- package/dist/esm/Utils/mergeRefs.js +1 -5
- package/dist/esm/Utils/planBadge.js +2 -12
- package/dist/esm/Utils/planExpiry.js +4 -29
- package/dist/esm/Utils/rafThrottle.js +1 -11
- package/dist/esm/Utils/table.js +15 -54
- package/dist/esm/Utils/validation.js +73 -0
- package/dist/esm/index.js +64 -2
- package/dist/global.css +6 -1
- package/dist/index.d.ts +110 -6
- package/dist/index.js +192 -4
- package/package.json +11 -3
- package/dist/Assets/defaultLogo.tsx +0 -26
- package/dist/Components/PinInputs/PinInputs.d.ts +0 -4
- package/dist/Components/PinInputs/PinInputs.js +0 -47
- package/dist/Components/PinInputs/PinInputsProps.d.ts +0 -10
- package/dist/Components/Table/hooks/useDebounce.d.ts +0 -2
- package/dist/Components/Table/hooks/useDebounce.js +0 -24
- package/dist/Components/Trail/EditableCell.d.ts +0 -13
- package/dist/Components/Trail/EditableCell.js +0 -35
- package/dist/Components/Trail/SelectAllCheckbox.d.ts +0 -9
- package/dist/Components/Trail/SelectAllCheckbox.js +0 -10
- package/dist/Components/Trail/TrailWorks.d.ts +0 -3
- package/dist/Components/Trail/TrailWorks.js +0 -57
- package/dist/Components/Trail/data.d.ts +0 -15
- package/dist/Components/Trail/data.js +0 -29
- package/dist/Theme/chakra/Avatar.styles.d.ts +0 -32
- package/dist/Theme/chakra/Avatar.styles.js +0 -28
- package/dist/Theme/chakra/Switch.styles.d.ts +0 -30
- package/dist/Theme/chakra/Switch.styles.js +0 -22
- package/dist/Theme/chakra/Tabs.styles.d.ts +0 -42
- package/dist/Theme/chakra/Tabs.styles.js +0 -36
- package/dist/esm/Components/PinInputs/PinInputs.js +0 -42
- package/dist/esm/Components/Table/hooks/useDebounce.js +0 -22
- package/dist/esm/Components/Trail/EditableCell.js +0 -31
- package/dist/esm/Components/Trail/SelectAllCheckbox.js +0 -6
- package/dist/esm/Components/Trail/TrailWorks.js +0 -55
- package/dist/esm/Components/Trail/data.js +0 -26
- package/dist/esm/Theme/chakra/Avatar.styles.js +0 -25
- package/dist/esm/Theme/chakra/Switch.styles.js +0 -19
- package/dist/esm/Theme/chakra/Tabs.styles.js +0 -33
- /package/dist/Components/{PinInputs/PinInputsProps.js → Avatar/AvatarGroupProps.js} +0 -0
- /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,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,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,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,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;
|