@platform-blocks/ui 0.1.1
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/LICENSE +21 -0
- package/README.md +44 -0
- package/lib/cjs/index.js +35531 -0
- package/lib/cjs/index.js.map +1 -0
- package/lib/components/Accessibility/AccessibilityDemo.d.ts +5 -0
- package/lib/components/Accessibility/AccessibilityHelpers.d.ts +49 -0
- package/lib/components/Accessibility/AccessibilityTesting.d.ts +24 -0
- package/lib/components/Accessibility/AccessibleComponents.d.ts +20 -0
- package/lib/components/Accessibility/index.d.ts +2 -0
- package/lib/components/Accordion/Accordion.d.ts +9 -0
- package/lib/components/Accordion/AccordionItem.d.ts +23 -0
- package/lib/components/Accordion/defaults.d.ts +13 -0
- package/lib/components/Accordion/hooks/useAccordionItemAnimation.d.ts +17 -0
- package/lib/components/Accordion/hooks/useMeasuredHeight.d.ts +8 -0
- package/lib/components/Accordion/index.d.ts +5 -0
- package/lib/components/Accordion/styles.d.ts +17 -0
- package/lib/components/Accordion/tokens.d.ts +12 -0
- package/lib/components/Accordion/types.d.ts +180 -0
- package/lib/components/Alert/Alert.d.ts +2 -0
- package/lib/components/Alert/index.d.ts +2 -0
- package/lib/components/Alert/types.d.ts +25 -0
- package/lib/components/AppShell/AppShell.d.ts +48 -0
- package/lib/components/AppShell/BottomAppBar.d.ts +3 -0
- package/lib/components/AppShell/MobileMenu.d.ts +10 -0
- package/lib/components/AppShell/StatusBarManager.d.ts +7 -0
- package/lib/components/AppShell/app-layout/AppLayoutProvider.d.ts +8 -0
- package/lib/components/AppShell/app-layout/AppLayoutRenderer.d.ts +5 -0
- package/lib/components/AppShell/app-layout/context.d.ts +4 -0
- package/lib/components/AppShell/app-layout/defineAppLayout.d.ts +2 -0
- package/lib/components/AppShell/app-layout/index.d.ts +5 -0
- package/lib/components/AppShell/app-layout/types.d.ts +120 -0
- package/lib/components/AppShell/context.d.ts +44 -0
- package/lib/components/AppShell/defaults.d.ts +6 -0
- package/lib/components/AppShell/hooks/useBreakpoint.d.ts +9 -0
- package/lib/components/AppShell/hooks/useResponsiveValue.d.ts +2 -0
- package/lib/components/AppShell/index.d.ts +12 -0
- package/lib/components/AppShell/meta.schema.d.ts +14 -0
- package/lib/components/AppShell/types.d.ts +228 -0
- package/lib/components/AppStoreBadge/AppStoreBadge.d.ts +5 -0
- package/lib/components/AppStoreBadge/ConvenienceComponents.d.ts +88 -0
- package/lib/components/AppStoreBadge/examples/usage-examples.d.ts +4 -0
- package/lib/components/AppStoreBadge/index.d.ts +3 -0
- package/lib/components/AppStoreBadge/types.d.ts +36 -0
- package/lib/components/AppStoreButton/AppStoreButton.d.ts +5 -0
- package/lib/components/AppStoreButton/ConvenienceComponents.d.ts +8 -0
- package/lib/components/AppStoreButton/index.d.ts +3 -0
- package/lib/components/AppStoreButton/types.d.ts +36 -0
- package/lib/components/AudioPlayer/AudioPlayer.d.ts +3 -0
- package/lib/components/AudioPlayer/AudioPlayerDemo.d.ts +2 -0
- package/lib/components/AudioPlayer/index.d.ts +2 -0
- package/lib/components/AudioPlayer/types.d.ts +232 -0
- package/lib/components/AutoComplete/AutoComplete.d.ts +6 -0
- package/lib/components/AutoComplete/index.d.ts +2 -0
- package/lib/components/AutoComplete/types.d.ts +120 -0
- package/lib/components/Avatar/Avatar.d.ts +3 -0
- package/lib/components/Avatar/AvatarGroup.d.ts +3 -0
- package/lib/components/Avatar/index.d.ts +3 -0
- package/lib/components/Avatar/types.d.ts +30 -0
- package/lib/components/Badge/Badge.d.ts +4 -0
- package/lib/components/Badge/index.d.ts +3 -0
- package/lib/components/Badge/types.d.ts +26 -0
- package/lib/components/Block/Block.d.ts +36 -0
- package/lib/components/Block/index.d.ts +2 -0
- package/lib/components/Block/types.d.ts +102 -0
- package/lib/components/Block/utils.d.ts +28 -0
- package/lib/components/Blockquote/Blockquote.d.ts +3 -0
- package/lib/components/Blockquote/BlockquoteAttribution.d.ts +3 -0
- package/lib/components/Blockquote/BlockquoteAuthor.d.ts +3 -0
- package/lib/components/Blockquote/BlockquoteMeta.d.ts +3 -0
- package/lib/components/Blockquote/BlockquoteSource.d.ts +3 -0
- package/lib/components/Blockquote/index.d.ts +6 -0
- package/lib/components/Blockquote/styles.d.ts +80 -0
- package/lib/components/Blockquote/types.d.ts +74 -0
- package/lib/components/BrandButton/BrandButton.d.ts +3 -0
- package/lib/components/BrandButton/index.d.ts +2 -0
- package/lib/components/BrandButton/types.d.ts +23 -0
- package/lib/components/BrandIcon/BrandIcon.d.ts +27 -0
- package/lib/components/BrandIcon/brands.d.ts +520 -0
- package/lib/components/BrandIcon/index.d.ts +2 -0
- package/lib/components/Breadcrumbs/Breadcrumbs.d.ts +6 -0
- package/lib/components/Breadcrumbs/index.d.ts +2 -0
- package/lib/components/Breadcrumbs/types.d.ts +35 -0
- package/lib/components/Button/Button.d.ts +3 -0
- package/lib/components/Button/SoundButton.d.ts +22 -0
- package/lib/components/Button/defaults.d.ts +7 -0
- package/lib/components/Button/index.d.ts +2 -0
- package/lib/components/Button/styles/resolver.d.ts +7 -0
- package/lib/components/Button/tokens.d.ts +16 -0
- package/lib/components/Button/types.d.ts +67 -0
- package/lib/components/Calendar/Calendar.d.ts +3 -0
- package/lib/components/Calendar/Day.d.ts +3 -0
- package/lib/components/Calendar/Month.d.ts +3 -0
- package/lib/components/Calendar/MonthPicker.d.ts +2 -0
- package/lib/components/Calendar/YearPicker.d.ts +2 -0
- package/lib/components/Calendar/index.d.ts +8 -0
- package/lib/components/Calendar/types.d.ts +92 -0
- package/lib/components/Calendar/utils.d.ts +31 -0
- package/lib/components/Can/Can.d.ts +30 -0
- package/lib/components/Can/PermissionDemo.d.ts +2 -0
- package/lib/components/Can/ability.d.ts +89 -0
- package/lib/components/Can/builder.d.ts +113 -0
- package/lib/components/Can/context.d.ts +25 -0
- package/lib/components/Can/index.d.ts +6 -0
- package/lib/components/Can/types.d.ts +228 -0
- package/lib/components/Card/Card.d.ts +3 -0
- package/lib/components/Card/index.d.ts +2 -0
- package/lib/components/Card/types.d.ts +15 -0
- package/lib/components/Carousel/Carousel.d.ts +4 -0
- package/lib/components/Carousel/index.d.ts +2 -0
- package/lib/components/Carousel/styles.d.ts +21 -0
- package/lib/components/Carousel/types.d.ts +51 -0
- package/lib/components/Checkbox/Checkbox.d.ts +4 -0
- package/lib/components/Checkbox/index.d.ts +2 -0
- package/lib/components/Checkbox/styles.d.ts +71 -0
- package/lib/components/Checkbox/types.d.ts +52 -0
- package/lib/components/Chip/Chip.d.ts +4 -0
- package/lib/components/Chip/index.d.ts +3 -0
- package/lib/components/Chip/types.d.ts +22 -0
- package/lib/components/CodeBlock/CodeBlock.d.ts +16 -0
- package/lib/components/CodeBlock/index.d.ts +3 -0
- package/lib/components/CodeBlock/type.d.ts +40 -0
- package/lib/components/CodeBlock/types.d.ts +44 -0
- package/lib/components/CodeBlock/utils.d.ts +38 -0
- package/lib/components/ColorPicker/ColorPicker.d.ts +8 -0
- package/lib/components/ColorPicker/index.d.ts +2 -0
- package/lib/components/ColorPicker/styles.d.ts +35 -0
- package/lib/components/ColorPicker/types.d.ts +69 -0
- package/lib/components/ColorPicker/utils.d.ts +8 -0
- package/lib/components/ColorSwatch/ColorSwatch.d.ts +6 -0
- package/lib/components/ColorSwatch/index.d.ts +2 -0
- package/lib/components/ColorSwatch/types.d.ts +29 -0
- package/lib/components/Container/Container.d.ts +3 -0
- package/lib/components/Container/index.d.ts +2 -0
- package/lib/components/Container/types.d.ts +31 -0
- package/lib/components/ContextMenu/ContextMenu.d.ts +5 -0
- package/lib/components/ContextMenu/index.d.ts +2 -0
- package/lib/components/ContextMenu/types.d.ts +36 -0
- package/lib/components/CopyButton/CopyButton.d.ts +10 -0
- package/lib/components/CopyButton/index.d.ts +2 -0
- package/lib/components/CopyButton/types.d.ts +37 -0
- package/lib/components/DataTable/AdvancedFilterControl.d.ts +10 -0
- package/lib/components/DataTable/ColumnSettings.d.ts +16 -0
- package/lib/components/DataTable/DataTable.d.ts +5 -0
- package/lib/components/DataTable/hooks/useColumnSettings.d.ts +12 -0
- package/lib/components/DataTable/hooks/useDataTableState.d.ts +41 -0
- package/lib/components/DataTable/hooks/useRowSelection.d.ts +40 -0
- package/lib/components/DataTable/index.d.ts +1 -0
- package/lib/components/DataTable/types.d.ts +223 -0
- package/lib/components/DatePicker/DatePicker.d.ts +4 -0
- package/lib/components/DatePicker/index.d.ts +8 -0
- package/lib/components/DatePicker/types.d.ts +47 -0
- package/lib/components/DatePicker/utils.d.ts +30 -0
- package/lib/components/DatePickerInput/DatePickerInput.d.ts +4 -0
- package/lib/components/DatePickerInput/index.d.ts +2 -0
- package/lib/components/DatePickerInput/types.d.ts +41 -0
- package/lib/components/Dialog/Dialog.d.ts +3 -0
- package/lib/components/Dialog/DialogContext.d.ts +11 -0
- package/lib/components/Dialog/DialogRenderer.d.ts +2 -0
- package/lib/components/Dialog/hooks/useSimpleDialog.d.ts +25 -0
- package/lib/components/Dialog/index.d.ts +6 -0
- package/lib/components/Dialog/types.d.ts +35 -0
- package/lib/components/Disclaimer/Disclaimer.d.ts +11 -0
- package/lib/components/Disclaimer/disclaimerUtils.d.ts +21 -0
- package/lib/components/Disclaimer/index.d.ts +6 -0
- package/lib/components/Disclaimer/withDisclaimer.d.ts +13 -0
- package/lib/components/Divider/Divider.d.ts +2 -0
- package/lib/components/Divider/index.d.ts +2 -0
- package/lib/components/Divider/types.d.ts +22 -0
- package/lib/components/EmojiPicker/EmojiPicker.d.ts +6 -0
- package/lib/components/EmojiPicker/index.d.ts +2 -0
- package/lib/components/EmojiPicker/types.d.ts +29 -0
- package/lib/components/FileInput/FileInput.d.ts +3 -0
- package/lib/components/FileInput/index.d.ts +2 -0
- package/lib/components/FileInput/types.d.ts +82 -0
- package/lib/components/Flex/Flex.d.ts +38 -0
- package/lib/components/Flex/helpers.d.ts +13 -0
- package/lib/components/Flex/index.d.ts +2 -0
- package/lib/components/FloatingActions/FloatingActions.d.ts +29 -0
- package/lib/components/FloatingActions/index.d.ts +2 -0
- package/lib/components/Form/FormBase.d.ts +3 -0
- package/lib/components/Form/FormContext.d.ts +16 -0
- package/lib/components/Form/FormError.d.ts +3 -0
- package/lib/components/Form/FormField.d.ts +3 -0
- package/lib/components/Form/FormInput.d.ts +3 -0
- package/lib/components/Form/FormLabel.d.ts +3 -0
- package/lib/components/Form/FormSubmit.d.ts +3 -0
- package/lib/components/Form/OptimizedForm.d.ts +22 -0
- package/lib/components/Form/index.d.ts +9 -0
- package/lib/components/Form/types.d.ts +104 -0
- package/lib/components/FormLayout/FormField.d.ts +3 -0
- package/lib/components/FormLayout/FormGroup.d.ts +3 -0
- package/lib/components/FormLayout/FormLayout.d.ts +3 -0
- package/lib/components/FormLayout/FormSection.d.ts +3 -0
- package/lib/components/FormLayout/index.d.ts +5 -0
- package/lib/components/FormLayout/types.d.ts +31 -0
- package/lib/components/Forms/ContactForm.d.ts +3 -0
- package/lib/components/Forms/ForgotPasswordForm.d.ts +3 -0
- package/lib/components/Forms/LoginForm.d.ts +3 -0
- package/lib/components/Forms/SignupForm.d.ts +3 -0
- package/lib/components/Forms/index.d.ts +5 -0
- package/lib/components/Forms/types.d.ts +89 -0
- package/lib/components/Gallery/Gallery.d.ts +3 -0
- package/lib/components/Gallery/GalleryControls.d.ts +3 -0
- package/lib/components/Gallery/GalleryMetadata.d.ts +3 -0
- package/lib/components/Gallery/GalleryNew.d.ts +3 -0
- package/lib/components/Gallery/GalleryThumbnails.d.ts +3 -0
- package/lib/components/Gallery/index.d.ts +5 -0
- package/lib/components/Gallery/types.d.ts +68 -0
- package/lib/components/Gauge/Gauge.d.ts +41 -0
- package/lib/components/Gauge/index.d.ts +9 -0
- package/lib/components/Gauge/styles.d.ts +57 -0
- package/lib/components/Gauge/types.d.ts +210 -0
- package/lib/components/Gauge/utils.d.ts +72 -0
- package/lib/components/GradientText/GradientText.d.ts +46 -0
- package/lib/components/GradientText/index.d.ts +2 -0
- package/lib/components/GradientText/types.d.ts +39 -0
- package/lib/components/Grid/Grid.d.ts +11 -0
- package/lib/components/Grid/index.d.ts +2 -0
- package/lib/components/Grid/types.d.ts +32 -0
- package/lib/components/HoverCard/HoverCard.d.ts +2 -0
- package/lib/components/HoverCard/index.d.ts +2 -0
- package/lib/components/HoverCard/types.d.ts +53 -0
- package/lib/components/Icon/Icon.d.ts +6 -0
- package/lib/components/Icon/icons/actions.d.ts +2 -0
- package/lib/components/Icon/icons/data.d.ts +2 -0
- package/lib/components/Icon/icons/multimedia.d.ts +2 -0
- package/lib/components/Icon/icons/navigation.d.ts +2 -0
- package/lib/components/Icon/icons/platforms.d.ts +2 -0
- package/lib/components/Icon/icons/status.d.ts +2 -0
- package/lib/components/Icon/icons/ui.d.ts +2 -0
- package/lib/components/Icon/index.d.ts +2 -0
- package/lib/components/Icon/registry.d.ts +6 -0
- package/lib/components/Icon/types.d.ts +40 -0
- package/lib/components/IconButton/IconButton.d.ts +3 -0
- package/lib/components/IconButton/index.d.ts +2 -0
- package/lib/components/IconButton/types.d.ts +45 -0
- package/lib/components/Image/Image.d.ts +3 -0
- package/lib/components/Image/index.d.ts +2 -0
- package/lib/components/Image/types.d.ts +57 -0
- package/lib/components/Indicator/Indicator.d.ts +7 -0
- package/lib/components/Indicator/index.d.ts +2 -0
- package/lib/components/Indicator/types.d.ts +13 -0
- package/lib/components/Input/Input.d.ts +6 -0
- package/lib/components/Input/InputBase.d.ts +17 -0
- package/lib/components/Input/OptimizedInput.d.ts +19 -0
- package/lib/components/Input/PasswordInput.d.ts +3 -0
- package/lib/components/Input/index.d.ts +5 -0
- package/lib/components/Input/styles.d.ts +85 -0
- package/lib/components/Input/types.d.ts +120 -0
- package/lib/components/Input/validation/index.d.ts +14 -0
- package/lib/components/Input/validation/optimized.d.ts +33 -0
- package/lib/components/KeyCap/KeyCap.d.ts +6 -0
- package/lib/components/KeyCap/index.d.ts +3 -0
- package/lib/components/KeyCap/styles.d.ts +11 -0
- package/lib/components/KeyCap/types.d.ts +54 -0
- package/lib/components/Layout/Layout.d.ts +18 -0
- package/lib/components/Layout/index.d.ts +1 -0
- package/lib/components/Link/Link.d.ts +31 -0
- package/lib/components/Link/index.d.ts +2 -0
- package/lib/components/ListGroup/ListGroup.d.ts +19 -0
- package/lib/components/ListGroup/index.d.ts +2 -0
- package/lib/components/ListGroup/types.d.ts +26 -0
- package/lib/components/Loader/Loader.d.ts +8 -0
- package/lib/components/Loader/index.d.ts +2 -0
- package/lib/components/Loader/types.d.ts +18 -0
- package/lib/components/LoadingOverlay/LoadingOverlay.d.ts +3 -0
- package/lib/components/LoadingOverlay/index.d.ts +2 -0
- package/lib/components/LoadingOverlay/types.d.ts +16 -0
- package/lib/components/Lottie/Lottie.d.ts +30 -0
- package/lib/components/Lottie/index.d.ts +2 -0
- package/lib/components/Markdown/Markdown.d.ts +66 -0
- package/lib/components/Markdown/index.d.ts +1 -0
- package/lib/components/Masonry/Masonry.d.ts +7 -0
- package/lib/components/Masonry/index.d.ts +2 -0
- package/lib/components/Masonry/types.d.ts +39 -0
- package/lib/components/Menu/Menu.d.ts +29 -0
- package/lib/components/Menu/index.d.ts +2 -0
- package/lib/components/Menu/styles.d.ts +13 -0
- package/lib/components/Menu/types.d.ts +71 -0
- package/lib/components/MenuItemButton/MenuItemButton.d.ts +39 -0
- package/lib/components/MenuItemButton/index.d.ts +2 -0
- package/lib/components/MiniCalendar/MiniCalendar.d.ts +3 -0
- package/lib/components/MiniCalendar/index.d.ts +1 -0
- package/lib/components/MonthPicker/MonthPicker.d.ts +3 -0
- package/lib/components/MonthPicker/index.d.ts +2 -0
- package/lib/components/MonthPicker/types.d.ts +26 -0
- package/lib/components/MonthPickerInput/MonthPickerInput.d.ts +4 -0
- package/lib/components/MonthPickerInput/index.d.ts +2 -0
- package/lib/components/MonthPickerInput/types.d.ts +30 -0
- package/lib/components/Navigation/DrawerNavigator.d.ts +7 -0
- package/lib/components/Navigation/NavigationContainer.d.ts +11 -0
- package/lib/components/Navigation/NavigationContext.d.ts +11 -0
- package/lib/components/Navigation/Screen.d.ts +6 -0
- package/lib/components/Navigation/StackNavigator.d.ts +7 -0
- package/lib/components/Navigation/index.d.ts +6 -0
- package/lib/components/Navigation/types.d.ts +70 -0
- package/lib/components/NavigationProgress/NavigationProgress.d.ts +4 -0
- package/lib/components/NavigationProgress/defaults.d.ts +8 -0
- package/lib/components/NavigationProgress/hooks/useNavigationProgressState.d.ts +1 -0
- package/lib/components/NavigationProgress/index.d.ts +2 -0
- package/lib/components/NavigationProgress/styles/resolver.d.ts +1 -0
- package/lib/components/NavigationProgress/tokens.d.ts +4 -0
- package/lib/components/NavigationProgress/types.d.ts +30 -0
- package/lib/components/NumberInput/NumberInput.d.ts +5 -0
- package/lib/components/NumberInput/index.d.ts +2 -0
- package/lib/components/NumberInput/types.d.ts +76 -0
- package/lib/components/Overlay/Overlay.d.ts +4 -0
- package/lib/components/Overlay/index.d.ts +2 -0
- package/lib/components/Overlay/types.d.ts +27 -0
- package/lib/components/Pagination/Pagination.d.ts +6 -0
- package/lib/components/Pagination/index.d.ts +2 -0
- package/lib/components/Pagination/types.d.ts +58 -0
- package/lib/components/PhoneInput/PhoneInput.d.ts +3 -0
- package/lib/components/PhoneInput/index.d.ts +2 -0
- package/lib/components/PhoneInput/types.d.ts +27 -0
- package/lib/components/PinInput/PinInput.d.ts +6 -0
- package/lib/components/PinInput/index.d.ts +2 -0
- package/lib/components/PinInput/types.d.ts +41 -0
- package/lib/components/PressAnimation/PressAnimation.d.ts +29 -0
- package/lib/components/PressAnimation/index.d.ts +2 -0
- package/lib/components/Progress/Progress.d.ts +11 -0
- package/lib/components/Progress/index.d.ts +2 -0
- package/lib/components/Progress/types.d.ts +48 -0
- package/lib/components/QRCode/QRCode.d.ts +11 -0
- package/lib/components/QRCode/QRCodeSVG.d.ts +6 -0
- package/lib/components/QRCode/core/buildMatrix.d.ts +11 -0
- package/lib/components/QRCode/core/encoder.d.ts +12 -0
- package/lib/components/QRCode/core/mask.d.ts +2 -0
- package/lib/components/QRCode/core/mode.d.ts +6 -0
- package/lib/components/QRCode/core/reedSolomon.d.ts +1 -0
- package/lib/components/QRCode/core/tables.d.ts +24 -0
- package/lib/components/QRCode/index.d.ts +3 -0
- package/lib/components/QRCode/optimizations.d.ts +20 -0
- package/lib/components/QRCode/types.d.ts +76 -0
- package/lib/components/Radio/Radio.d.ts +10 -0
- package/lib/components/Radio/index.d.ts +2 -0
- package/lib/components/Radio/styles.d.ts +81 -0
- package/lib/components/Radio/types.d.ts +79 -0
- package/lib/components/Rating/Rating.d.ts +2 -0
- package/lib/components/Rating/index.d.ts +2 -0
- package/lib/components/Rating/types.d.ts +35 -0
- package/lib/components/Reveal/Reveal.d.ts +4 -0
- package/lib/components/Reveal/index.d.ts +2 -0
- package/lib/components/Reveal/types.d.ts +53 -0
- package/lib/components/RichTextEditor/RichTextEditor.d.ts +3 -0
- package/lib/components/RichTextEditor/index.d.ts +2 -0
- package/lib/components/RichTextEditor/styles.d.ts +61 -0
- package/lib/components/RichTextEditor/types.d.ts +150 -0
- package/lib/components/Search/Search.d.ts +6 -0
- package/lib/components/Search/index.d.ts +2 -0
- package/lib/components/Search/test-component.d.ts +3 -0
- package/lib/components/Search/types.d.ts +27 -0
- package/lib/components/SegmentedControl/SegmentedControl.d.ts +6 -0
- package/lib/components/SegmentedControl/index.d.ts +2 -0
- package/lib/components/SegmentedControl/types.d.ts +62 -0
- package/lib/components/Select/Select.d.ts +6 -0
- package/lib/components/Select/Select.types.d.ts +31 -0
- package/lib/components/Select/index.d.ts +2 -0
- package/lib/components/Select/types.d.ts +25 -0
- package/lib/components/ShimmerText/ShimmerText.d.ts +33 -0
- package/lib/components/ShimmerText/index.d.ts +2 -0
- package/lib/components/ShimmerText/types.d.ts +33 -0
- package/lib/components/Skeleton/Skeleton.d.ts +2 -0
- package/lib/components/Skeleton/index.d.ts +2 -0
- package/lib/components/Skeleton/types.d.ts +30 -0
- package/lib/components/Slider/Slider.d.ts +10 -0
- package/lib/components/Slider/SliderCore.d.ts +57 -0
- package/lib/components/Slider/index.d.ts +2 -0
- package/lib/components/Slider/types.d.ts +133 -0
- package/lib/components/Space/Space.d.ts +4 -0
- package/lib/components/Space/index.d.ts +2 -0
- package/lib/components/Space/types.d.ts +17 -0
- package/lib/components/Spoiler/Spoiler.d.ts +5 -0
- package/lib/components/Spoiler/index.d.ts +2 -0
- package/lib/components/Spoiler/types.d.ts +40 -0
- package/lib/components/Spotlight/DirectSpotlightState.d.ts +41 -0
- package/lib/components/Spotlight/Spotlight.d.ts +19 -0
- package/lib/components/Spotlight/SpotlightController.d.ts +13 -0
- package/lib/components/Spotlight/SpotlightStore.d.ts +32 -0
- package/lib/components/Spotlight/SpotlightTypes.d.ts +29 -0
- package/lib/components/Spotlight/index.d.ts +6 -0
- package/lib/components/Spotlight/types.d.ts +66 -0
- package/lib/components/Stepper/Stepper.d.ts +12 -0
- package/lib/components/Stepper/index.d.ts +2 -0
- package/lib/components/Stepper/types.d.ts +68 -0
- package/lib/components/Switch/Switch.d.ts +6 -0
- package/lib/components/Switch/index.d.ts +2 -0
- package/lib/components/Switch/styles.d.ts +85 -0
- package/lib/components/Switch/types.d.ts +54 -0
- package/lib/components/Table/Table.d.ts +115 -0
- package/lib/components/Table/index.d.ts +1 -0
- package/lib/components/TableOfContents/TableOfContents.d.ts +3 -0
- package/lib/components/TableOfContents/index.d.ts +2 -0
- package/lib/components/TableOfContents/types.d.ts +77 -0
- package/lib/components/Tabs/Tabs.d.ts +3 -0
- package/lib/components/Tabs/index.d.ts +2 -0
- package/lib/components/Tabs/types.d.ts +182 -0
- package/lib/components/Text/Text.d.ts +51 -0
- package/lib/components/Text/aliases.d.ts +22 -0
- package/lib/components/Text/index.d.ts +2 -0
- package/lib/components/TextArea/TextArea.d.ts +6 -0
- package/lib/components/TextArea/index.d.ts +2 -0
- package/lib/components/TextArea/meta/index.d.ts +97 -0
- package/lib/components/TextArea/styles.d.ts +95 -0
- package/lib/components/TextArea/types.d.ts +33 -0
- package/lib/components/TimePicker/TimePicker.d.ts +3 -0
- package/lib/components/TimePicker/index.d.ts +2 -0
- package/lib/components/TimePicker/types.d.ts +32 -0
- package/lib/components/TimePickerInput/index.d.ts +2 -0
- package/lib/components/Timeline/Timeline.d.ts +13 -0
- package/lib/components/Timeline/index.d.ts +2 -0
- package/lib/components/Timeline/types.d.ts +53 -0
- package/lib/components/Title/Title.d.ts +10 -0
- package/lib/components/Title/index.d.ts +2 -0
- package/lib/components/Title/types.d.ts +55 -0
- package/lib/components/Toast/Toast.d.ts +8 -0
- package/lib/components/Toast/ToastProvider.d.ts +88 -0
- package/lib/components/Toast/index.d.ts +3 -0
- package/lib/components/Toast/types.d.ts +78 -0
- package/lib/components/Toggle/Toggle.d.ts +10 -0
- package/lib/components/Toggle/ToggleBar.d.ts +42 -0
- package/lib/components/Toggle/index.d.ts +4 -0
- package/lib/components/Toggle/types.d.ts +68 -0
- package/lib/components/Tooltip/Tooltip.d.ts +2 -0
- package/lib/components/Tooltip/index.d.ts +2 -0
- package/lib/components/Tooltip/types.d.ts +44 -0
- package/lib/components/Tree/Tree.d.ts +5 -0
- package/lib/components/Tree/index.d.ts +2 -0
- package/lib/components/Tree/types.d.ts +65 -0
- package/lib/components/Video/NativeVideoPlayer.d.ts +33 -0
- package/lib/components/Video/Video.d.ts +3 -0
- package/lib/components/Video/VideoControls.d.ts +17 -0
- package/lib/components/Video/VideoTimeline.d.ts +12 -0
- package/lib/components/Video/YouTubePlayer.d.ts +44 -0
- package/lib/components/Video/index.d.ts +2 -0
- package/lib/components/Video/types.d.ts +145 -0
- package/lib/components/Waveform/Waveform.d.ts +3 -0
- package/lib/components/Waveform/WaveformSkeleton.d.ts +9 -0
- package/lib/components/Waveform/index.d.ts +4 -0
- package/lib/components/Waveform/styles.d.ts +53 -0
- package/lib/components/Waveform/types.d.ts +124 -0
- package/lib/components/Waveform/utils.d.ts +95 -0
- package/lib/components/YearPicker/YearPicker.d.ts +3 -0
- package/lib/components/YearPicker/index.d.ts +2 -0
- package/lib/components/YearPicker/types.d.ts +24 -0
- package/lib/components/YearPickerInput/YearPickerInput.d.ts +4 -0
- package/lib/components/YearPickerInput/index.d.ts +2 -0
- package/lib/components/YearPickerInput/types.d.ts +26 -0
- package/lib/components/_internal/FieldHeader.d.ts +21 -0
- package/lib/components/index.d.ts +164 -0
- package/lib/components/optimized.d.ts +74 -0
- package/lib/components/types.d.ts +57 -0
- package/lib/contexts/TitleRegistryContext.d.ts +20 -0
- package/lib/contexts/index.d.ts +1 -0
- package/lib/core/accessibility/advancedHooks.d.ts +82 -0
- package/lib/core/accessibility/constants.d.ts +85 -0
- package/lib/core/accessibility/context.d.ts +5 -0
- package/lib/core/accessibility/hooks.d.ts +33 -0
- package/lib/core/accessibility/index.d.ts +6 -0
- package/lib/core/accessibility/types.d.ts +35 -0
- package/lib/core/accessibility/utils.d.ts +56 -0
- package/lib/core/animations/index.d.ts +2 -0
- package/lib/core/animations/transitions.d.ts +31 -0
- package/lib/core/components/ClearButton.d.ts +15 -0
- package/lib/core/components/InputContainer.d.ts +19 -0
- package/lib/core/design-tokens.d.ts +292 -0
- package/lib/core/factory/factory.d.ts +33 -0
- package/lib/core/factory/index.d.ts +4 -0
- package/lib/core/factory/polymorphicFactory.d.ts +38 -0
- package/lib/core/haptics/HapticsProvider.d.ts +14 -0
- package/lib/core/hooks/useDropdownPositioning.d.ts +61 -0
- package/lib/core/hooks/usePopoverPositioning.d.ts +33 -0
- package/lib/core/i18n/I18nContext.d.ts +8 -0
- package/lib/core/i18n/index.d.ts +2 -0
- package/lib/core/i18n/types.d.ts +22 -0
- package/lib/core/index.d.ts +15 -0
- package/lib/core/interactive-states.d.ts +41 -0
- package/lib/core/motion/ReducedMotionProvider.d.ts +10 -0
- package/lib/core/motion/motionTokens.d.ts +12 -0
- package/lib/core/providers/DirectionProvider.d.ts +88 -0
- package/lib/core/providers/OverlayProvider.d.ts +40 -0
- package/lib/core/providers/OverlayRenderer.d.ts +7 -0
- package/lib/core/providers/index.d.ts +5 -0
- package/lib/core/responsive/index.d.ts +22 -0
- package/lib/core/sound/context.d.ts +21 -0
- package/lib/core/sound/hooks.d.ts +214 -0
- package/lib/core/sound/index.d.ts +5 -0
- package/lib/core/sound/mockContext.d.ts +21 -0
- package/lib/core/sound/sounds.d.ts +17 -0
- package/lib/core/sound/types.d.ts +79 -0
- package/lib/core/style-factory.d.ts +23 -0
- package/lib/core/theme/CSSVariables.d.ts +9 -0
- package/lib/core/theme/PlatformBlocksProvider.d.ts +52 -0
- package/lib/core/theme/ThemeModeProvider.d.ts +42 -0
- package/lib/core/theme/ThemeProvider.d.ts +19 -0
- package/lib/core/theme/breakpoints.d.ts +34 -0
- package/lib/core/theme/darkTheme.d.ts +2 -0
- package/lib/core/theme/defaultTheme.d.ts +2 -0
- package/lib/core/theme/index.d.ts +12 -0
- package/lib/core/theme/radius.d.ts +132 -0
- package/lib/core/theme/shadow.d.ts +119 -0
- package/lib/core/theme/sizes.d.ts +185 -0
- package/lib/core/theme/types.d.ts +190 -0
- package/lib/core/theme/unified-sizing.d.ts +65 -0
- package/lib/core/theme/useColorScheme.d.ts +6 -0
- package/lib/core/theme/utils.d.ts +9 -0
- package/lib/core/unified-styles.d.ts +12 -0
- package/lib/core/utils/UniversalCSS.d.ts +14 -0
- package/lib/core/utils/debounce.d.ts +16 -0
- package/lib/core/utils/hash.d.ts +4 -0
- package/lib/core/utils/index.d.ts +38 -0
- package/lib/core/utils/layout.d.ts +44 -0
- package/lib/core/utils/performance.d.ts +30 -0
- package/lib/core/utils/positioning-enhanced.d.ts +88 -0
- package/lib/core/utils/rtl.d.ts +174 -0
- package/lib/core/utils/shadow.d.ts +13 -0
- package/lib/core/utils/spacing.d.ts +56 -0
- package/lib/core/utils/universal.d.ts +47 -0
- package/lib/core/utils/universalSimple.d.ts +37 -0
- package/lib/core/utils/withUniversalProps.d.ts +26 -0
- package/lib/esm/index.js +35209 -0
- package/lib/esm/index.js.map +1 -0
- package/lib/hooks/index.d.ts +6 -0
- package/lib/hooks/useClipboard.d.ts +20 -0
- package/lib/hooks/useHaptics.d.ts +22 -0
- package/lib/hooks/useHotkeys.d.ts +42 -0
- package/lib/hooks/useMaskedInput.d.ts +35 -0
- package/lib/hooks/useScrollSpy.d.ts +38 -0
- package/lib/hooks/useTitleRegistration.d.ts +14 -0
- package/lib/index.d.ts +220 -0
- package/lib/utils/index.d.ts +1 -0
- package/lib/utils/mask.d.ts +138 -0
- package/package.json +148 -0
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import { ViewStyle, ImageStyle } from 'react-native';
|
|
2
|
+
import type { SpacingProps } from '../../core/utils';
|
|
3
|
+
export type VideoSource = {
|
|
4
|
+
/** Video URL (mp4, webm, etc.) */
|
|
5
|
+
url?: string;
|
|
6
|
+
/** YouTube video ID or URL */
|
|
7
|
+
youtube?: string;
|
|
8
|
+
/** File buffer (for React Native) */
|
|
9
|
+
buffer?: ArrayBuffer | string;
|
|
10
|
+
/** MIME type for buffer */
|
|
11
|
+
type?: string;
|
|
12
|
+
};
|
|
13
|
+
export type VideoQuality = 'auto' | 'small' | 'medium' | 'large' | 'hd720' | 'hd1080' | 'highres';
|
|
14
|
+
export type VideoPlaybackRate = 0.25 | 0.5 | 0.75 | 1 | 1.25 | 1.5 | 1.75 | 2;
|
|
15
|
+
export interface VideoControls {
|
|
16
|
+
/** Show/hide play button */
|
|
17
|
+
play?: boolean;
|
|
18
|
+
/** Show/hide pause button */
|
|
19
|
+
pause?: boolean;
|
|
20
|
+
/** Show/hide progress bar */
|
|
21
|
+
progress?: boolean;
|
|
22
|
+
/** Show/hide time display */
|
|
23
|
+
time?: boolean;
|
|
24
|
+
/** Show/hide volume control */
|
|
25
|
+
volume?: boolean;
|
|
26
|
+
/** Show/hide fullscreen toggle */
|
|
27
|
+
fullscreen?: boolean;
|
|
28
|
+
/** Show/hide playback speed control */
|
|
29
|
+
playbackRate?: boolean;
|
|
30
|
+
/** Show/hide quality selector (YouTube) */
|
|
31
|
+
quality?: boolean;
|
|
32
|
+
/** Auto-hide controls after inactivity */
|
|
33
|
+
autoHide?: boolean;
|
|
34
|
+
/** Auto-hide timeout in milliseconds */
|
|
35
|
+
autoHideTimeout?: number;
|
|
36
|
+
}
|
|
37
|
+
export interface VideoState {
|
|
38
|
+
/** Current playback time in seconds */
|
|
39
|
+
currentTime: number;
|
|
40
|
+
/** Total duration in seconds */
|
|
41
|
+
duration: number;
|
|
42
|
+
/** Is video playing */
|
|
43
|
+
playing: boolean;
|
|
44
|
+
/** Is video loading */
|
|
45
|
+
loading: boolean;
|
|
46
|
+
/** Is video muted */
|
|
47
|
+
muted: boolean;
|
|
48
|
+
/** Volume level (0-1) */
|
|
49
|
+
volume: number;
|
|
50
|
+
/** Current playback rate */
|
|
51
|
+
playbackRate: VideoPlaybackRate;
|
|
52
|
+
/** Is video in fullscreen */
|
|
53
|
+
fullscreen: boolean;
|
|
54
|
+
/** Video quality (YouTube) */
|
|
55
|
+
quality: VideoQuality;
|
|
56
|
+
/** Error state */
|
|
57
|
+
error: string | null;
|
|
58
|
+
/** Is video buffering */
|
|
59
|
+
buffering: boolean;
|
|
60
|
+
}
|
|
61
|
+
export interface VideoTimelineEvent {
|
|
62
|
+
/** Event ID */
|
|
63
|
+
id: string;
|
|
64
|
+
/** Time in seconds when event should trigger */
|
|
65
|
+
time: number;
|
|
66
|
+
/** Event type */
|
|
67
|
+
type: 'marker' | 'chapter' | 'annotation' | 'cue' | 'custom';
|
|
68
|
+
/** Event data */
|
|
69
|
+
data?: any;
|
|
70
|
+
/** Callback function */
|
|
71
|
+
callback?: (event: VideoTimelineEvent, state: VideoState) => void;
|
|
72
|
+
}
|
|
73
|
+
export interface VideoProps extends SpacingProps {
|
|
74
|
+
/** Video source configuration */
|
|
75
|
+
source: VideoSource;
|
|
76
|
+
/** Display and sizing */
|
|
77
|
+
width?: number | string;
|
|
78
|
+
height?: number | string;
|
|
79
|
+
aspectRatio?: number;
|
|
80
|
+
poster?: string;
|
|
81
|
+
/** Playback configuration */
|
|
82
|
+
autoPlay?: boolean;
|
|
83
|
+
loop?: boolean;
|
|
84
|
+
muted?: boolean;
|
|
85
|
+
volume?: number;
|
|
86
|
+
playbackRate?: VideoPlaybackRate;
|
|
87
|
+
quality?: VideoQuality;
|
|
88
|
+
/** Controls configuration */
|
|
89
|
+
controls?: boolean | VideoControls;
|
|
90
|
+
/** Timeline events for synchronization */
|
|
91
|
+
timeline?: VideoTimelineEvent[];
|
|
92
|
+
/** YouTube specific options */
|
|
93
|
+
youtubeOptions?: {
|
|
94
|
+
/** Start time in seconds */
|
|
95
|
+
start?: number;
|
|
96
|
+
/** End time in seconds */
|
|
97
|
+
end?: number;
|
|
98
|
+
/** Hide YouTube branding */
|
|
99
|
+
modestbranding?: boolean;
|
|
100
|
+
/** Disable related videos */
|
|
101
|
+
rel?: boolean;
|
|
102
|
+
/** Show video annotations */
|
|
103
|
+
iv_load_policy?: number;
|
|
104
|
+
};
|
|
105
|
+
/** Event handlers */
|
|
106
|
+
onPlay?: (state: VideoState) => void;
|
|
107
|
+
onPause?: (state: VideoState) => void;
|
|
108
|
+
onSeek?: (time: number, state: VideoState) => void;
|
|
109
|
+
onTimeUpdate?: (state: VideoState) => void;
|
|
110
|
+
onDurationChange?: (duration: number) => void;
|
|
111
|
+
onVolumeChange?: (volume: number) => void;
|
|
112
|
+
onPlaybackRateChange?: (rate: VideoPlaybackRate) => void;
|
|
113
|
+
onQualityChange?: (quality: VideoQuality) => void;
|
|
114
|
+
onFullscreenChange?: (fullscreen: boolean) => void;
|
|
115
|
+
onError?: (error: string) => void;
|
|
116
|
+
onLoad?: (state: VideoState) => void;
|
|
117
|
+
onLoadStart?: () => void;
|
|
118
|
+
onBuffer?: (buffering: boolean) => void;
|
|
119
|
+
onTimelineEvent?: (event: VideoTimelineEvent, state: VideoState) => void;
|
|
120
|
+
/** Styling */
|
|
121
|
+
style?: ViewStyle;
|
|
122
|
+
videoStyle?: ImageStyle;
|
|
123
|
+
controlsStyle?: ViewStyle;
|
|
124
|
+
/** Accessibility */
|
|
125
|
+
accessibilityLabel?: string;
|
|
126
|
+
testID?: string;
|
|
127
|
+
}
|
|
128
|
+
export interface VideoRef {
|
|
129
|
+
/** Play the video */
|
|
130
|
+
play: () => void;
|
|
131
|
+
/** Pause the video */
|
|
132
|
+
pause: () => void;
|
|
133
|
+
/** Seek to specific time */
|
|
134
|
+
seek: (time: number) => void;
|
|
135
|
+
/** Set volume (0-1) */
|
|
136
|
+
setVolume: (volume: number) => void;
|
|
137
|
+
/** Set playback rate */
|
|
138
|
+
setPlaybackRate: (rate: VideoPlaybackRate) => void;
|
|
139
|
+
/** Toggle fullscreen */
|
|
140
|
+
toggleFullscreen: () => void;
|
|
141
|
+
/** Get current state */
|
|
142
|
+
getState: () => VideoState;
|
|
143
|
+
/** Get video element (web) */
|
|
144
|
+
getVideoElement: () => HTMLVideoElement | null;
|
|
145
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { WaveformStyleProps } from './types';
|
|
2
|
+
import { PlatformBlocksTheme } from '../../core/theme/types';
|
|
3
|
+
export declare const useWaveformStyles: (props: WaveformStyleProps & {
|
|
4
|
+
theme: PlatformBlocksTheme;
|
|
5
|
+
}) => {
|
|
6
|
+
bar: {
|
|
7
|
+
borderRadius?: number | undefined;
|
|
8
|
+
backgroundColor: string;
|
|
9
|
+
};
|
|
10
|
+
barContainer: {
|
|
11
|
+
alignItems: "center";
|
|
12
|
+
height: "100%";
|
|
13
|
+
justifyContent: "center";
|
|
14
|
+
};
|
|
15
|
+
container: {
|
|
16
|
+
cursor?: any;
|
|
17
|
+
backgroundColor: string;
|
|
18
|
+
height: number;
|
|
19
|
+
overflow: "hidden";
|
|
20
|
+
position: "relative";
|
|
21
|
+
width: number;
|
|
22
|
+
};
|
|
23
|
+
gradientOverlay: {
|
|
24
|
+
bottom: number;
|
|
25
|
+
left: number;
|
|
26
|
+
pointerEvents: "none";
|
|
27
|
+
position: "absolute";
|
|
28
|
+
right: number;
|
|
29
|
+
top: number;
|
|
30
|
+
};
|
|
31
|
+
lineWaveform: {
|
|
32
|
+
bottom: number;
|
|
33
|
+
left: number;
|
|
34
|
+
position: "absolute";
|
|
35
|
+
right: number;
|
|
36
|
+
top: number;
|
|
37
|
+
};
|
|
38
|
+
progressBar: {
|
|
39
|
+
backgroundColor: string;
|
|
40
|
+
};
|
|
41
|
+
reflection: {
|
|
42
|
+
opacity: number;
|
|
43
|
+
transform: {
|
|
44
|
+
scaleY: number;
|
|
45
|
+
}[];
|
|
46
|
+
};
|
|
47
|
+
waveformContainer: {
|
|
48
|
+
alignItems: "center";
|
|
49
|
+
flex: number;
|
|
50
|
+
flexDirection: "row";
|
|
51
|
+
justifyContent: "center";
|
|
52
|
+
};
|
|
53
|
+
};
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { SizeValue } from '../../core/theme/types';
|
|
2
|
+
import type { ViewProps } from 'react-native';
|
|
3
|
+
export interface WaveformProps extends Omit<ViewProps, 'children'> {
|
|
4
|
+
/** Array of peak values (normalized between -1 and 1) */
|
|
5
|
+
peaks: number[];
|
|
6
|
+
/** Width of the waveform */
|
|
7
|
+
width?: number;
|
|
8
|
+
/** Height of the waveform */
|
|
9
|
+
height?: number;
|
|
10
|
+
/** Color of the waveform */
|
|
11
|
+
color?: string;
|
|
12
|
+
/** Visual variant of the waveform */
|
|
13
|
+
variant?: 'bars' | 'line' | 'rounded' | 'gradient';
|
|
14
|
+
/** Width of individual bars (for bar variants) */
|
|
15
|
+
barWidth?: number;
|
|
16
|
+
/** Gap between bars (for bar variants) */
|
|
17
|
+
barGap?: number;
|
|
18
|
+
/** Stroke width for line variant */
|
|
19
|
+
strokeWidth?: number;
|
|
20
|
+
/** Colors for gradient variant */
|
|
21
|
+
gradientColors?: string[];
|
|
22
|
+
/** Progress value (0-1) to show playback position */
|
|
23
|
+
progress?: number;
|
|
24
|
+
/** Color for the progress indicator */
|
|
25
|
+
progressColor?: string;
|
|
26
|
+
/** Whether the waveform is interactive (clickable for seeking) */
|
|
27
|
+
interactive?: boolean;
|
|
28
|
+
/** Callback fired when user clicks/seeks to a position */
|
|
29
|
+
onSeek?: (position: number) => void;
|
|
30
|
+
/** Callback fired when user starts dragging */
|
|
31
|
+
onDragStart?: (position: number) => void;
|
|
32
|
+
/** Callback fired when user is dragging */
|
|
33
|
+
onDrag?: (position: number) => void;
|
|
34
|
+
/** Callback fired when user ends dragging */
|
|
35
|
+
onDragEnd?: (position: number) => void;
|
|
36
|
+
/** Accessibility label for the waveform */
|
|
37
|
+
accessibilityLabel?: string;
|
|
38
|
+
/** Accessibility hint for interactive waveforms */
|
|
39
|
+
accessibilityHint?: string;
|
|
40
|
+
/** Minimum height for bars (prevents invisible bars) */
|
|
41
|
+
minBarHeight?: number;
|
|
42
|
+
/** Whether to normalize waveform heights so the tallest bar uses full height */
|
|
43
|
+
normalize?: boolean;
|
|
44
|
+
/** Whether the waveform should take the full width of its container */
|
|
45
|
+
fullWidth?: boolean;
|
|
46
|
+
/** Maximum number of bars to render (for performance with large datasets) */
|
|
47
|
+
maxVisibleBars?: number;
|
|
48
|
+
/** Whether to show a vertical progress line indicator */
|
|
49
|
+
showProgressLine?: boolean;
|
|
50
|
+
/** Style configuration for the progress line */
|
|
51
|
+
progressLineStyle?: {
|
|
52
|
+
color?: string;
|
|
53
|
+
width?: number;
|
|
54
|
+
opacity?: number;
|
|
55
|
+
};
|
|
56
|
+
/** Whether to show time stamps along the waveform */
|
|
57
|
+
showTimeStamps?: boolean;
|
|
58
|
+
/** Duration in seconds for time stamp calculation */
|
|
59
|
+
duration?: number;
|
|
60
|
+
/** Time stamp interval in seconds */
|
|
61
|
+
timeStampInterval?: number;
|
|
62
|
+
/** Whether the waveform is in a loading state */
|
|
63
|
+
loading?: boolean;
|
|
64
|
+
/** Error message to display */
|
|
65
|
+
error?: string;
|
|
66
|
+
/** Loading progress (0-1) for progressive loading */
|
|
67
|
+
loadingProgress?: number;
|
|
68
|
+
/** Selected time range [start, end] in normalized coordinates (0-1) */
|
|
69
|
+
selection?: [number, number];
|
|
70
|
+
/** Callback when selection changes */
|
|
71
|
+
onSelectionChange?: (selection: [number, number]) => void;
|
|
72
|
+
/** Zoom level (1 = normal, 2 = 2x zoom, etc.) */
|
|
73
|
+
zoomLevel?: number;
|
|
74
|
+
/** Zoom center position (0-1) */
|
|
75
|
+
zoomCenter?: number;
|
|
76
|
+
/** Callback when zoom changes */
|
|
77
|
+
onZoomChange?: (zoomLevel: number, center: number) => void;
|
|
78
|
+
/** Whether to enable smooth animations */
|
|
79
|
+
enableAnimations?: boolean;
|
|
80
|
+
/** Whether to show RMS (average) levels alongside peaks */
|
|
81
|
+
showRMS?: boolean;
|
|
82
|
+
/** RMS data array (should match peaks length) */
|
|
83
|
+
rmsData?: number[];
|
|
84
|
+
/** Custom markers to display on the waveform */
|
|
85
|
+
markers?: WaveformMarker[];
|
|
86
|
+
/** Enable performance monitoring */
|
|
87
|
+
enablePerformanceMonitoring?: boolean;
|
|
88
|
+
/** Callback for performance metrics */
|
|
89
|
+
onPerformanceMetrics?: (metrics: PerformanceMetrics) => void;
|
|
90
|
+
}
|
|
91
|
+
export interface WaveformMarker {
|
|
92
|
+
/** Position on waveform (0-1) */
|
|
93
|
+
position: number;
|
|
94
|
+
/** Marker label */
|
|
95
|
+
label?: string;
|
|
96
|
+
/** Marker color */
|
|
97
|
+
color?: string;
|
|
98
|
+
/** Marker type */
|
|
99
|
+
type?: 'line' | 'flag' | 'dot';
|
|
100
|
+
/** Click handler */
|
|
101
|
+
onPress?: () => void;
|
|
102
|
+
}
|
|
103
|
+
export interface PerformanceMetrics {
|
|
104
|
+
/** Render time in milliseconds */
|
|
105
|
+
renderTime: number;
|
|
106
|
+
/** Number of elements rendered */
|
|
107
|
+
elementsRendered: number;
|
|
108
|
+
/** Memory usage estimate */
|
|
109
|
+
memoryUsage: number;
|
|
110
|
+
/** FPS during interactions */
|
|
111
|
+
averageFPS: number;
|
|
112
|
+
}
|
|
113
|
+
export interface WaveformStyleProps {
|
|
114
|
+
width: number;
|
|
115
|
+
height: number;
|
|
116
|
+
color: string;
|
|
117
|
+
backgroundColor?: string;
|
|
118
|
+
barWidth: number;
|
|
119
|
+
barGap: number;
|
|
120
|
+
variant: WaveformProps['variant'];
|
|
121
|
+
size: SizeValue;
|
|
122
|
+
interactive: boolean;
|
|
123
|
+
minBarHeight: number;
|
|
124
|
+
}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utilities for working with waveform data
|
|
3
|
+
*/
|
|
4
|
+
export interface AudioAnalysisOptions {
|
|
5
|
+
/** Sample rate for analysis */
|
|
6
|
+
sampleRate?: number;
|
|
7
|
+
/** Window size for FFT analysis */
|
|
8
|
+
windowSize?: number;
|
|
9
|
+
/** Overlap between windows */
|
|
10
|
+
overlap?: number;
|
|
11
|
+
}
|
|
12
|
+
export interface WaveformDataOptions {
|
|
13
|
+
/** Number of peaks to generate */
|
|
14
|
+
length: number;
|
|
15
|
+
/** Frequency of the primary wave */
|
|
16
|
+
frequency?: number;
|
|
17
|
+
/** Amplitude modulation frequency */
|
|
18
|
+
modulation?: number;
|
|
19
|
+
/** Add noise to the signal */
|
|
20
|
+
noise?: number;
|
|
21
|
+
/** Audio duration in seconds (for realistic data) */
|
|
22
|
+
duration?: number;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Generate realistic-looking waveform test data
|
|
26
|
+
*/
|
|
27
|
+
export declare const generateWaveformData: (options: WaveformDataOptions) => {
|
|
28
|
+
peaks: number[];
|
|
29
|
+
rms: number[];
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Normalize waveform data to a specific range
|
|
33
|
+
*/
|
|
34
|
+
export declare const normalizeWaveform: (peaks: number[], targetMin?: number, targetMax?: number) => number[];
|
|
35
|
+
/**
|
|
36
|
+
* Downsample waveform data for performance
|
|
37
|
+
*/
|
|
38
|
+
export declare const downsampleWaveform: (peaks: number[], targetLength: number) => number[];
|
|
39
|
+
/**
|
|
40
|
+
* Calculate RMS values from peak data
|
|
41
|
+
*/
|
|
42
|
+
export declare const calculateRMS: (peaks: number[], windowSize?: number) => number[];
|
|
43
|
+
/**
|
|
44
|
+
* Find peaks in waveform data (useful for marker placement)
|
|
45
|
+
*/
|
|
46
|
+
export declare const findPeaks: (peaks: number[], threshold?: number, minDistance?: number) => number[];
|
|
47
|
+
/**
|
|
48
|
+
* Convert audio buffer to waveform data
|
|
49
|
+
* (Note: This would typically be used with Web Audio API)
|
|
50
|
+
*/
|
|
51
|
+
export declare const audioBufferToWaveform: (audioBuffer: AudioBuffer, targetLength?: number) => {
|
|
52
|
+
peaks: number[];
|
|
53
|
+
rms: number[];
|
|
54
|
+
};
|
|
55
|
+
/**
|
|
56
|
+
* Generate time-based markers for common audio structures
|
|
57
|
+
*/
|
|
58
|
+
export declare const generateAudioMarkers: (duration: number, structure?: "song" | "podcast" | "speech") => ({
|
|
59
|
+
position: number;
|
|
60
|
+
label: string;
|
|
61
|
+
type: "flag";
|
|
62
|
+
} | {
|
|
63
|
+
position: number;
|
|
64
|
+
label: string;
|
|
65
|
+
type: "line";
|
|
66
|
+
} | {
|
|
67
|
+
position: number;
|
|
68
|
+
label: string;
|
|
69
|
+
type: "dot";
|
|
70
|
+
})[];
|
|
71
|
+
/**
|
|
72
|
+
* Create test data presets for demos
|
|
73
|
+
*/
|
|
74
|
+
export declare const createTestPresets: () => {
|
|
75
|
+
musicTrack: {
|
|
76
|
+
peaks: number[];
|
|
77
|
+
rms: number[];
|
|
78
|
+
};
|
|
79
|
+
podcast: {
|
|
80
|
+
peaks: number[];
|
|
81
|
+
rms: number[];
|
|
82
|
+
};
|
|
83
|
+
speech: {
|
|
84
|
+
peaks: number[];
|
|
85
|
+
rms: number[];
|
|
86
|
+
};
|
|
87
|
+
quietAudio: {
|
|
88
|
+
peaks: number[];
|
|
89
|
+
rms: number[];
|
|
90
|
+
};
|
|
91
|
+
largDataset: {
|
|
92
|
+
peaks: number[];
|
|
93
|
+
rms: number[];
|
|
94
|
+
};
|
|
95
|
+
};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { SizeValue } from '../../core/theme/types';
|
|
2
|
+
import type { ResponsiveProp } from '../../core/theme/breakpoints';
|
|
3
|
+
export interface YearPickerProps {
|
|
4
|
+
/** Currently selected date */
|
|
5
|
+
value?: Date | null;
|
|
6
|
+
/** Called when a year is selected */
|
|
7
|
+
onChange?: (date: Date | null) => void;
|
|
8
|
+
/** Decade anchor that should be displayed */
|
|
9
|
+
decade?: number;
|
|
10
|
+
/** Called when the visible decade changes */
|
|
11
|
+
onDecadeChange?: (decade: number) => void;
|
|
12
|
+
/** Minimum selectable date (inclusive) */
|
|
13
|
+
minDate?: Date;
|
|
14
|
+
/** Maximum selectable date (inclusive) */
|
|
15
|
+
maxDate?: Date;
|
|
16
|
+
/** Typography size token */
|
|
17
|
+
size?: SizeValue;
|
|
18
|
+
/** Responsive override for number of years per row */
|
|
19
|
+
yearsPerRow?: ResponsiveProp<number>;
|
|
20
|
+
/** Hide navigation header when embedding the picker */
|
|
21
|
+
hideHeader?: boolean;
|
|
22
|
+
/** Total number of years to render (defaults to 20) */
|
|
23
|
+
totalYears?: number;
|
|
24
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { BaseInputProps } from '../Input/types';
|
|
2
|
+
import type { YearPickerProps } from '../YearPicker/types';
|
|
3
|
+
export interface YearPickerInputProps extends Omit<BaseInputProps, 'value' | 'onChangeText'> {
|
|
4
|
+
/** Controlled value for the selected year */
|
|
5
|
+
value?: Date | null;
|
|
6
|
+
/** Default year when uncontrolled */
|
|
7
|
+
defaultValue?: Date | null;
|
|
8
|
+
/** Called when the year selection changes */
|
|
9
|
+
onChange?: (value: Date | null) => void;
|
|
10
|
+
/** Custom formatter for the input value */
|
|
11
|
+
formatValue?: (value: Date) => string;
|
|
12
|
+
/** Placeholder text when no year is selected */
|
|
13
|
+
placeholder?: string;
|
|
14
|
+
/** Show a clear button when a year is selected */
|
|
15
|
+
clearable?: boolean;
|
|
16
|
+
/** Close the picker after selecting a year */
|
|
17
|
+
closeOnSelect?: boolean;
|
|
18
|
+
/** Additional props forwarded to YearPicker (except value) */
|
|
19
|
+
yearPickerProps?: Partial<Omit<YearPickerProps, 'value'>>;
|
|
20
|
+
/** Dialog title text */
|
|
21
|
+
modalTitle?: string;
|
|
22
|
+
/** Called when the picker dialog opens */
|
|
23
|
+
onOpen?: () => void;
|
|
24
|
+
/** Called when the picker dialog closes */
|
|
25
|
+
onClose?: () => void;
|
|
26
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { InputStyleProps } from '../Input/types';
|
|
3
|
+
export interface FieldHeaderProps {
|
|
4
|
+
label?: React.ReactNode;
|
|
5
|
+
description?: React.ReactNode;
|
|
6
|
+
required?: boolean;
|
|
7
|
+
withAsterisk?: boolean;
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
error?: boolean;
|
|
10
|
+
size?: InputStyleProps['size'];
|
|
11
|
+
/** Extra spacing below the block (default auto based on presence) */
|
|
12
|
+
marginBottom?: number;
|
|
13
|
+
/** Optional test id */
|
|
14
|
+
testID?: string;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Internal utility component to standardize label + description block across field components.
|
|
18
|
+
* Renders label, required asterisk, and muted description text directly beneath.
|
|
19
|
+
*/
|
|
20
|
+
export declare const FieldHeader: React.FC<FieldHeaderProps>;
|
|
21
|
+
export default FieldHeader;
|