@thewhileloop/whileui 1.2.3 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +264 -88
- package/dist/blocks/chat/chat.d.ts +3 -4
- package/dist/blocks/chat/chat.js +29 -17
- package/dist/blocks/chat/index.d.ts +0 -1
- package/dist/blocks/chat/index.js +0 -1
- package/dist/blocks/commerce/checkout-summary.d.ts +1 -2
- package/dist/blocks/commerce/checkout-summary.js +16 -4
- package/dist/blocks/commerce/feature-gate.d.ts +1 -2
- package/dist/blocks/commerce/feature-gate.js +14 -4
- package/dist/blocks/commerce/index.d.ts +0 -1
- package/dist/blocks/commerce/index.js +0 -1
- package/dist/blocks/commerce/metric-card.d.ts +10 -31
- package/dist/blocks/commerce/metric-card.js +7 -3
- package/dist/blocks/commerce/plan-toggle.d.ts +1 -2
- package/dist/blocks/commerce/plan-toggle.js +11 -9
- package/dist/blocks/commerce/pricing-card.d.ts +1 -2
- package/dist/blocks/commerce/pricing-card.js +23 -6
- package/dist/blocks/commerce/product-card.d.ts +1 -2
- package/dist/blocks/commerce/product-card.js +23 -9
- package/dist/blocks/commerce/subscription-card.d.ts +1 -2
- package/dist/blocks/commerce/subscription-card.js +6 -3
- package/dist/blocks/commerce/upgrade-banner.d.ts +1 -2
- package/dist/blocks/commerce/upgrade-banner.js +13 -3
- package/dist/blocks/commerce/usage-bar.d.ts +1 -2
- package/dist/blocks/commerce/usage-bar.js +4 -2
- package/dist/blocks/datepicker/date-range-picker-modal.d.ts +2 -3
- package/dist/blocks/datepicker/date-range-picker-modal.js +25 -7
- package/dist/blocks/datepicker/datepicker-inline.d.ts +1 -2
- package/dist/blocks/datepicker/datepicker-inline.js +9 -3
- package/dist/blocks/datepicker/datepicker-modal.d.ts +2 -3
- package/dist/blocks/datepicker/datepicker-modal.js +44 -18
- package/dist/blocks/datepicker/index.d.ts +0 -1
- package/dist/blocks/datepicker/index.js +0 -1
- package/dist/blocks/datepicker/use-calendar-theme.d.ts +0 -1
- package/dist/blocks/datepicker/use-calendar-theme.js +0 -1
- package/dist/blocks/layout/action-bar.d.ts +1 -2
- package/dist/blocks/layout/action-bar.js +0 -1
- package/dist/blocks/layout/app-shell.d.ts +1 -2
- package/dist/blocks/layout/app-shell.js +11 -5
- package/dist/blocks/layout/confirm-action-sheet.d.ts +1 -2
- package/dist/blocks/layout/confirm-action-sheet.js +18 -6
- package/dist/blocks/layout/content-skeleton.d.ts +1 -2
- package/dist/blocks/layout/content-skeleton.js +22 -9
- package/dist/blocks/layout/docked-input.d.ts +11 -0
- package/dist/blocks/layout/docked-input.js +27 -0
- package/dist/blocks/layout/empty-state.d.ts +1 -2
- package/dist/blocks/layout/empty-state.js +10 -5
- package/dist/blocks/layout/error-boundary.d.ts +1 -2
- package/dist/blocks/layout/error-boundary.js +0 -2
- package/dist/blocks/layout/error-state.d.ts +1 -2
- package/dist/blocks/layout/error-state.js +0 -2
- package/dist/blocks/layout/form-modal-screen.d.ts +1 -2
- package/dist/blocks/layout/form-modal-screen.js +24 -21
- package/dist/blocks/layout/index.d.ts +2 -2
- package/dist/blocks/layout/index.js +2 -2
- package/dist/blocks/layout/keyboard-aware-screen.d.ts +14 -0
- package/dist/blocks/layout/keyboard-aware-screen.js +12 -0
- package/dist/blocks/layout/loading-screen.d.ts +1 -2
- package/dist/blocks/layout/loading-screen.js +6 -8
- package/dist/blocks/layout/page-skeleton.d.ts +1 -2
- package/dist/blocks/layout/page-skeleton.js +38 -20
- package/dist/blocks/layout/pull-to-refresh-scroll-view.d.ts +8 -4
- package/dist/blocks/layout/pull-to-refresh-scroll-view.js +17 -4
- package/dist/blocks/layout/screen-skeleton.d.ts +1 -2
- package/dist/blocks/layout/screen-skeleton.js +0 -1
- package/dist/blocks/layout/sheet.d.ts +9 -9
- package/dist/blocks/layout/sheet.js +51 -21
- package/dist/blocks/layout/smart-input.d.ts +9 -3
- package/dist/blocks/layout/smart-input.js +136 -9
- package/dist/blocks/lists/index.d.ts +0 -2
- package/dist/blocks/lists/index.js +0 -2
- package/dist/blocks/lists/list-item.d.ts +1 -2
- package/dist/blocks/lists/list-item.js +20 -6
- package/dist/blocks/lists/notification-item.d.ts +1 -2
- package/dist/blocks/lists/notification-item.js +19 -6
- package/dist/blocks/lists/timeline-feed.d.ts +1 -2
- package/dist/blocks/lists/timeline-feed.js +4 -2
- package/dist/blocks/media/index.d.ts +0 -1
- package/dist/blocks/media/index.js +0 -1
- package/dist/blocks/media/smart-image.d.ts +39 -99
- package/dist/blocks/media/smart-image.js +24 -8
- package/dist/blocks/navigation/bottom-nav.d.ts +1 -2
- package/dist/blocks/navigation/bottom-nav.js +7 -4
- package/dist/blocks/navigation/drawer-menu.d.ts +1 -2
- package/dist/blocks/navigation/drawer-menu.js +117 -64
- package/dist/blocks/navigation/floating-bottom-nav.d.ts +1 -2
- package/dist/blocks/navigation/floating-bottom-nav.js +14 -5
- package/dist/blocks/navigation/header.d.ts +2 -3
- package/dist/blocks/navigation/header.js +13 -5
- package/dist/blocks/navigation/index.d.ts +0 -2
- package/dist/blocks/navigation/index.js +0 -2
- package/dist/blocks/navigation/tab-bar.d.ts +1 -2
- package/dist/blocks/navigation/tab-bar.js +22 -10
- package/dist/blocks/splash/index.d.ts +0 -1
- package/dist/blocks/splash/index.js +0 -1
- package/dist/blocks/splash/splash-screen.d.ts +3 -4
- package/dist/blocks/splash/splash-screen.js +15 -11
- package/dist/components/accordion/accordion.d.ts +4 -5
- package/dist/components/accordion/accordion.js +6 -7
- package/dist/components/accordion/index.d.ts +0 -1
- package/dist/components/accordion/index.js +0 -1
- package/dist/components/alert/alert.d.ts +23 -56
- package/dist/components/alert/alert.js +20 -9
- package/dist/components/alert/index.d.ts +0 -1
- package/dist/components/alert/index.js +0 -1
- package/dist/components/alert-dialog/alert-dialog.d.ts +9 -10
- package/dist/components/alert-dialog/alert-dialog.js +175 -54
- package/dist/components/alert-dialog/index.d.ts +0 -1
- package/dist/components/alert-dialog/index.js +0 -1
- package/dist/components/aspect-ratio/aspect-ratio.d.ts +1 -2
- package/dist/components/aspect-ratio/aspect-ratio.js +0 -3
- package/dist/components/aspect-ratio/index.d.ts +0 -1
- package/dist/components/aspect-ratio/index.js +0 -1
- package/dist/components/avatar/avatar.d.ts +20 -48
- package/dist/components/avatar/avatar.js +8 -9
- package/dist/components/avatar/index.d.ts +0 -1
- package/dist/components/avatar/index.js +0 -1
- package/dist/components/badge/badge.d.ts +86 -215
- package/dist/components/badge/badge.js +21 -9
- package/dist/components/badge/index.d.ts +0 -1
- package/dist/components/badge/index.js +0 -1
- package/dist/components/button/button.d.ts +75 -193
- package/dist/components/button/button.js +62 -33
- package/dist/components/button/index.d.ts +0 -1
- package/dist/components/button/index.js +0 -1
- package/dist/components/card/card.d.ts +32 -74
- package/dist/components/card/card.js +29 -15
- package/dist/components/card/index.d.ts +0 -1
- package/dist/components/card/index.js +0 -1
- package/dist/components/checkbox/checkbox.d.ts +1 -2
- package/dist/components/checkbox/checkbox.js +15 -2
- package/dist/components/checkbox/index.d.ts +0 -1
- package/dist/components/checkbox/index.js +0 -1
- package/dist/components/collapsible/collapsible.d.ts +4 -4
- package/dist/components/collapsible/collapsible.js +8 -11
- package/dist/components/collapsible/index.d.ts +0 -1
- package/dist/components/collapsible/index.js +0 -1
- package/dist/components/container/container.d.ts +74 -0
- package/dist/components/container/container.js +43 -0
- package/dist/components/container/index.d.ts +1 -0
- package/dist/components/container/index.js +1 -0
- package/dist/components/context-menu/context-menu.d.ts +6 -7
- package/dist/components/context-menu/context-menu.js +42 -12
- package/dist/components/context-menu/index.d.ts +0 -1
- package/dist/components/context-menu/index.js +0 -1
- package/dist/components/data-row/data-row.d.ts +18 -39
- package/dist/components/data-row/data-row.js +36 -18
- package/dist/components/data-row/index.d.ts +0 -1
- package/dist/components/data-row/index.js +0 -1
- package/dist/components/dialog/dialog.d.ts +8 -9
- package/dist/components/dialog/dialog.js +48 -24
- package/dist/components/dialog/index.d.ts +0 -1
- package/dist/components/dialog/index.js +0 -1
- package/dist/components/dropdown-menu/dropdown-menu.d.ts +6 -7
- package/dist/components/dropdown-menu/dropdown-menu.js +45 -11
- package/dist/components/dropdown-menu/index.d.ts +0 -1
- package/dist/components/dropdown-menu/index.js +0 -1
- package/dist/components/form-field/form-field.d.ts +31 -88
- package/dist/components/form-field/form-field.js +27 -14
- package/dist/components/form-field/index.d.ts +0 -1
- package/dist/components/form-field/index.js +0 -1
- package/dist/components/hover-card/hover-card.d.ts +4 -4
- package/dist/components/hover-card/hover-card.js +12 -3
- package/dist/components/hover-card/index.d.ts +0 -1
- package/dist/components/hover-card/index.js +0 -1
- package/dist/components/input/index.d.ts +0 -1
- package/dist/components/input/index.js +0 -1
- package/dist/components/input/input.d.ts +12 -32
- package/dist/components/input/input.js +18 -3
- package/dist/components/label/index.d.ts +0 -1
- package/dist/components/label/index.js +0 -1
- package/dist/components/label/label.d.ts +3 -4
- package/dist/components/label/label.js +0 -1
- package/dist/components/labeled-field/index.d.ts +0 -1
- package/dist/components/labeled-field/index.js +0 -1
- package/dist/components/labeled-field/labeled-field.d.ts +4 -4
- package/dist/components/labeled-field/labeled-field.js +10 -2
- package/dist/components/menubar/index.d.ts +0 -1
- package/dist/components/menubar/index.js +0 -1
- package/dist/components/menubar/menubar.d.ts +7 -8
- package/dist/components/menubar/menubar.js +48 -15
- package/dist/components/numeric-input/index.d.ts +0 -1
- package/dist/components/numeric-input/index.js +0 -1
- package/dist/components/numeric-input/numeric-input.d.ts +29 -83
- package/dist/components/numeric-input/numeric-input.js +93 -73
- package/dist/components/otp-input/index.d.ts +0 -1
- package/dist/components/otp-input/index.js +0 -1
- package/dist/components/otp-input/otp-input.d.ts +22 -67
- package/dist/components/otp-input/otp-input.js +13 -9
- package/dist/components/popover/index.d.ts +0 -1
- package/dist/components/popover/index.js +0 -1
- package/dist/components/popover/popover.d.ts +8 -5
- package/dist/components/popover/popover.js +21 -4
- package/dist/components/pressable/index.d.ts +0 -1
- package/dist/components/pressable/index.js +0 -1
- package/dist/components/pressable/pressable.d.ts +10 -4
- package/dist/components/pressable/pressable.js +47 -4
- package/dist/components/progress/index.d.ts +0 -1
- package/dist/components/progress/index.js +0 -1
- package/dist/components/progress/progress.d.ts +15 -40
- package/dist/components/progress/progress.js +5 -2
- package/dist/components/radio-group/index.d.ts +0 -1
- package/dist/components/radio-group/index.js +0 -1
- package/dist/components/radio-group/radio-group.d.ts +2 -3
- package/dist/components/radio-group/radio-group.js +16 -7
- package/dist/components/row/index.d.ts +0 -1
- package/dist/components/row/index.js +0 -1
- package/dist/components/row/row.d.ts +63 -164
- package/dist/components/row/row.js +0 -1
- package/dist/components/segmented-control/index.d.ts +0 -1
- package/dist/components/segmented-control/index.js +0 -1
- package/dist/components/segmented-control/segmented-control.d.ts +72 -245
- package/dist/components/segmented-control/segmented-control.js +57 -24
- package/dist/components/select/index.d.ts +0 -1
- package/dist/components/select/index.js +0 -1
- package/dist/components/select/select.d.ts +23 -27
- package/dist/components/select/select.js +54 -12
- package/dist/components/separator/index.d.ts +0 -1
- package/dist/components/separator/index.js +0 -1
- package/dist/components/separator/separator.d.ts +3 -4
- package/dist/components/separator/separator.js +0 -1
- package/dist/components/skeleton/index.d.ts +0 -1
- package/dist/components/skeleton/index.js +0 -1
- package/dist/components/skeleton/skeleton.d.ts +10 -31
- package/dist/components/skeleton/skeleton.js +7 -8
- package/dist/components/spinner/index.d.ts +0 -1
- package/dist/components/spinner/index.js +0 -1
- package/dist/components/spinner/spinner.d.ts +13 -38
- package/dist/components/spinner/spinner.js +4 -2
- package/dist/components/stack/index.d.ts +0 -1
- package/dist/components/stack/index.js +0 -1
- package/dist/components/stack/stack.d.ts +63 -164
- package/dist/components/stack/stack.js +0 -1
- package/dist/components/switch/index.d.ts +0 -1
- package/dist/components/switch/index.js +0 -1
- package/dist/components/switch/switch.d.ts +1 -2
- package/dist/components/switch/switch.js +21 -2
- package/dist/components/tabs/index.d.ts +0 -1
- package/dist/components/tabs/index.js +0 -1
- package/dist/components/tabs/tabs.d.ts +13 -34
- package/dist/components/tabs/tabs.js +42 -12
- package/dist/components/text/index.d.ts +0 -1
- package/dist/components/text/index.js +0 -1
- package/dist/components/text/text.d.ts +51 -132
- package/dist/components/text/text.js +0 -1
- package/dist/components/textarea/index.d.ts +0 -1
- package/dist/components/textarea/index.js +0 -1
- package/dist/components/textarea/textarea.d.ts +15 -40
- package/dist/components/textarea/textarea.js +17 -9
- package/dist/components/toast/index.d.ts +0 -1
- package/dist/components/toast/index.js +0 -1
- package/dist/components/toast/toast.d.ts +15 -40
- package/dist/components/toast/toast.js +40 -24
- package/dist/components/toggle/index.d.ts +0 -1
- package/dist/components/toggle/index.js +0 -1
- package/dist/components/toggle/toggle.d.ts +44 -141
- package/dist/components/toggle/toggle.js +32 -16
- package/dist/components/toggle-group/index.d.ts +0 -1
- package/dist/components/toggle-group/index.js +0 -1
- package/dist/components/toggle-group/toggle-group.d.ts +45 -142
- package/dist/components/toggle-group/toggle-group.js +36 -19
- package/dist/components/tooltip/index.d.ts +0 -1
- package/dist/components/tooltip/index.js +0 -1
- package/dist/components/tooltip/tooltip.d.ts +4 -4
- package/dist/components/tooltip/tooltip.js +20 -3
- package/dist/components/view/index.d.ts +0 -1
- package/dist/components/view/index.js +0 -1
- package/dist/components/view/view.d.ts +3 -4
- package/dist/components/view/view.js +0 -1
- package/dist/index.d.ts +9 -3
- package/dist/index.js +9 -7
- package/dist/lib/cn.d.ts +0 -1
- package/dist/lib/cn.js +0 -1
- package/dist/lib/compose-event-handlers.d.ts +15 -0
- package/dist/lib/compose-event-handlers.js +20 -0
- package/dist/lib/focus-ring.d.ts +25 -0
- package/dist/lib/focus-ring.js +25 -0
- package/dist/lib/font-context.d.ts +1 -1
- package/dist/lib/font-context.js +6 -4
- package/dist/lib/frosted-surface.d.ts +0 -1
- package/dist/lib/frosted-surface.js +31 -6
- package/dist/lib/interaction-tokens.d.ts +12 -1
- package/dist/lib/interaction-tokens.js +27 -13
- package/dist/lib/motion-policy.d.ts +25 -0
- package/dist/lib/motion-policy.js +97 -0
- package/dist/lib/overlay-insets.d.ts +17 -0
- package/dist/lib/overlay-insets.js +23 -0
- package/dist/lib/portal.d.ts +0 -1
- package/dist/lib/portal.js +0 -1
- package/dist/lib/react-native-classname.d.ts +0 -1
- package/dist/lib/react-native-classname.js +0 -1
- package/dist/lib/recipes.d.ts +30 -0
- package/dist/lib/recipes.js +138 -0
- package/dist/lib/ref-types.d.ts +3 -0
- package/dist/lib/ref-types.js +1 -0
- package/dist/lib/tap-only.d.ts +11 -0
- package/dist/lib/tap-only.js +24 -0
- package/dist/lib/theme-bridge.d.ts +4 -3
- package/dist/lib/theme-bridge.js +24 -12
- package/dist/lib/theme-colors.d.ts +2 -46
- package/dist/lib/theme-colors.js +25 -226
- package/dist/lib/theme-contract.d.ts +78 -0
- package/dist/lib/theme-contract.js +481 -0
- package/dist/lib/theme-derive.d.ts +4 -0
- package/dist/lib/theme-derive.js +80 -0
- package/dist/lib/theme-presets.d.ts +31 -0
- package/dist/lib/theme-presets.js +221 -0
- package/dist/lib/tv.d.ts +0 -1
- package/dist/lib/tv.js +0 -1
- package/dist/lib/visual-token-contract.d.ts +110 -0
- package/dist/lib/visual-token-contract.js +583 -0
- package/dist/lib/visual-tokens.d.ts +2 -38
- package/dist/lib/visual-tokens.js +22 -75
- package/dist/tokens.d.ts +4 -0
- package/dist/tokens.js +6 -0
- package/dist/vite.d.ts +0 -1
- package/dist/vite.js +0 -1
- package/package.json +40 -29
- package/dist/blocks/auth/forgot-password-form.d.ts +0 -10
- package/dist/blocks/auth/forgot-password-form.d.ts.map +0 -1
- package/dist/blocks/auth/forgot-password-form.js +0 -17
- package/dist/blocks/auth/forgot-password-form.js.map +0 -1
- package/dist/blocks/auth/index.d.ts +0 -8
- package/dist/blocks/auth/index.d.ts.map +0 -1
- package/dist/blocks/auth/index.js +0 -8
- package/dist/blocks/auth/index.js.map +0 -1
- package/dist/blocks/auth/reset-password-form.d.ts +0 -9
- package/dist/blocks/auth/reset-password-form.d.ts.map +0 -1
- package/dist/blocks/auth/reset-password-form.js +0 -16
- package/dist/blocks/auth/reset-password-form.js.map +0 -1
- package/dist/blocks/auth/sign-in-form.d.ts +0 -17
- package/dist/blocks/auth/sign-in-form.d.ts.map +0 -1
- package/dist/blocks/auth/sign-in-form.js +0 -19
- package/dist/blocks/auth/sign-in-form.js.map +0 -1
- package/dist/blocks/auth/sign-up-form.d.ts +0 -17
- package/dist/blocks/auth/sign-up-form.d.ts.map +0 -1
- package/dist/blocks/auth/sign-up-form.js +0 -21
- package/dist/blocks/auth/sign-up-form.js.map +0 -1
- package/dist/blocks/auth/social-connections.d.ts +0 -10
- package/dist/blocks/auth/social-connections.d.ts.map +0 -1
- package/dist/blocks/auth/social-connections.js +0 -8
- package/dist/blocks/auth/social-connections.js.map +0 -1
- package/dist/blocks/auth/user-menu.d.ts +0 -12
- package/dist/blocks/auth/user-menu.d.ts.map +0 -1
- package/dist/blocks/auth/user-menu.js +0 -10
- package/dist/blocks/auth/user-menu.js.map +0 -1
- package/dist/blocks/auth/verify-email-form.d.ts +0 -10
- package/dist/blocks/auth/verify-email-form.d.ts.map +0 -1
- package/dist/blocks/auth/verify-email-form.js +0 -17
- package/dist/blocks/auth/verify-email-form.js.map +0 -1
- package/dist/blocks/chat/chat.d.ts.map +0 -1
- package/dist/blocks/chat/chat.js.map +0 -1
- package/dist/blocks/chat/index.d.ts.map +0 -1
- package/dist/blocks/chat/index.js.map +0 -1
- package/dist/blocks/commerce/checkout-summary.d.ts.map +0 -1
- package/dist/blocks/commerce/checkout-summary.js.map +0 -1
- package/dist/blocks/commerce/feature-gate.d.ts.map +0 -1
- package/dist/blocks/commerce/feature-gate.js.map +0 -1
- package/dist/blocks/commerce/index.d.ts.map +0 -1
- package/dist/blocks/commerce/index.js.map +0 -1
- package/dist/blocks/commerce/metric-card.d.ts.map +0 -1
- package/dist/blocks/commerce/metric-card.js.map +0 -1
- package/dist/blocks/commerce/plan-toggle.d.ts.map +0 -1
- package/dist/blocks/commerce/plan-toggle.js.map +0 -1
- package/dist/blocks/commerce/pricing-card.d.ts.map +0 -1
- package/dist/blocks/commerce/pricing-card.js.map +0 -1
- package/dist/blocks/commerce/product-card.d.ts.map +0 -1
- package/dist/blocks/commerce/product-card.js.map +0 -1
- package/dist/blocks/commerce/subscription-card.d.ts.map +0 -1
- package/dist/blocks/commerce/subscription-card.js.map +0 -1
- package/dist/blocks/commerce/upgrade-banner.d.ts.map +0 -1
- package/dist/blocks/commerce/upgrade-banner.js.map +0 -1
- package/dist/blocks/commerce/usage-bar.d.ts.map +0 -1
- package/dist/blocks/commerce/usage-bar.js.map +0 -1
- package/dist/blocks/datepicker/date-range-picker-modal.d.ts.map +0 -1
- package/dist/blocks/datepicker/date-range-picker-modal.js.map +0 -1
- package/dist/blocks/datepicker/datepicker-inline.d.ts.map +0 -1
- package/dist/blocks/datepicker/datepicker-inline.js.map +0 -1
- package/dist/blocks/datepicker/datepicker-modal.d.ts.map +0 -1
- package/dist/blocks/datepicker/datepicker-modal.js.map +0 -1
- package/dist/blocks/datepicker/index.d.ts.map +0 -1
- package/dist/blocks/datepicker/index.js.map +0 -1
- package/dist/blocks/datepicker/use-calendar-theme.d.ts.map +0 -1
- package/dist/blocks/datepicker/use-calendar-theme.js.map +0 -1
- package/dist/blocks/layout/action-bar.d.ts.map +0 -1
- package/dist/blocks/layout/action-bar.js.map +0 -1
- package/dist/blocks/layout/app-shell.d.ts.map +0 -1
- package/dist/blocks/layout/app-shell.js.map +0 -1
- package/dist/blocks/layout/confirm-action-sheet.d.ts.map +0 -1
- package/dist/blocks/layout/confirm-action-sheet.js.map +0 -1
- package/dist/blocks/layout/content-skeleton.d.ts.map +0 -1
- package/dist/blocks/layout/content-skeleton.js.map +0 -1
- package/dist/blocks/layout/empty-state.d.ts.map +0 -1
- package/dist/blocks/layout/empty-state.js.map +0 -1
- package/dist/blocks/layout/error-boundary.d.ts.map +0 -1
- package/dist/blocks/layout/error-boundary.js.map +0 -1
- package/dist/blocks/layout/error-state.d.ts.map +0 -1
- package/dist/blocks/layout/error-state.js.map +0 -1
- package/dist/blocks/layout/form-modal-screen.d.ts.map +0 -1
- package/dist/blocks/layout/form-modal-screen.js.map +0 -1
- package/dist/blocks/layout/index.d.ts.map +0 -1
- package/dist/blocks/layout/index.js.map +0 -1
- package/dist/blocks/layout/loading-screen.d.ts.map +0 -1
- package/dist/blocks/layout/loading-screen.js.map +0 -1
- package/dist/blocks/layout/onboarding-screen.d.ts +0 -19
- package/dist/blocks/layout/onboarding-screen.d.ts.map +0 -1
- package/dist/blocks/layout/onboarding-screen.js +0 -35
- package/dist/blocks/layout/onboarding-screen.js.map +0 -1
- package/dist/blocks/layout/page-skeleton.d.ts.map +0 -1
- package/dist/blocks/layout/page-skeleton.js.map +0 -1
- package/dist/blocks/layout/pull-to-refresh-scroll-view.d.ts.map +0 -1
- package/dist/blocks/layout/pull-to-refresh-scroll-view.js.map +0 -1
- package/dist/blocks/layout/screen-skeleton.d.ts.map +0 -1
- package/dist/blocks/layout/screen-skeleton.js.map +0 -1
- package/dist/blocks/layout/sheet.d.ts.map +0 -1
- package/dist/blocks/layout/sheet.js.map +0 -1
- package/dist/blocks/layout/smart-image.d.ts +0 -9
- package/dist/blocks/layout/smart-image.d.ts.map +0 -1
- package/dist/blocks/layout/smart-image.js +0 -23
- package/dist/blocks/layout/smart-image.js.map +0 -1
- package/dist/blocks/layout/smart-input.d.ts.map +0 -1
- package/dist/blocks/layout/smart-input.js.map +0 -1
- package/dist/blocks/lists/index.d.ts.map +0 -1
- package/dist/blocks/lists/index.js.map +0 -1
- package/dist/blocks/lists/list-item.d.ts.map +0 -1
- package/dist/blocks/lists/list-item.js.map +0 -1
- package/dist/blocks/lists/notification-item.d.ts.map +0 -1
- package/dist/blocks/lists/notification-item.js.map +0 -1
- package/dist/blocks/lists/swipeable-item.d.ts +0 -17
- package/dist/blocks/lists/swipeable-item.d.ts.map +0 -1
- package/dist/blocks/lists/swipeable-item.js +0 -65
- package/dist/blocks/lists/swipeable-item.js.map +0 -1
- package/dist/blocks/lists/timeline-feed.d.ts.map +0 -1
- package/dist/blocks/lists/timeline-feed.js.map +0 -1
- package/dist/blocks/media/index.d.ts.map +0 -1
- package/dist/blocks/media/index.js.map +0 -1
- package/dist/blocks/media/smart-image.d.ts.map +0 -1
- package/dist/blocks/media/smart-image.js.map +0 -1
- package/dist/blocks/navigation/bottom-nav.d.ts.map +0 -1
- package/dist/blocks/navigation/bottom-nav.js.map +0 -1
- package/dist/blocks/navigation/drawer-menu.d.ts.map +0 -1
- package/dist/blocks/navigation/drawer-menu.js.map +0 -1
- package/dist/blocks/navigation/floating-bottom-nav.d.ts.map +0 -1
- package/dist/blocks/navigation/floating-bottom-nav.js.map +0 -1
- package/dist/blocks/navigation/header.d.ts.map +0 -1
- package/dist/blocks/navigation/header.js.map +0 -1
- package/dist/blocks/navigation/index.d.ts.map +0 -1
- package/dist/blocks/navigation/index.js.map +0 -1
- package/dist/blocks/navigation/navigation-sidebar.d.ts +0 -25
- package/dist/blocks/navigation/navigation-sidebar.d.ts.map +0 -1
- package/dist/blocks/navigation/navigation-sidebar.js +0 -18
- package/dist/blocks/navigation/navigation-sidebar.js.map +0 -1
- package/dist/blocks/navigation/tab-bar.d.ts.map +0 -1
- package/dist/blocks/navigation/tab-bar.js.map +0 -1
- package/dist/blocks/profile/account-card.d.ts +0 -11
- package/dist/blocks/profile/account-card.d.ts.map +0 -1
- package/dist/blocks/profile/account-card.js +0 -10
- package/dist/blocks/profile/account-card.js.map +0 -1
- package/dist/blocks/profile/index.d.ts +0 -5
- package/dist/blocks/profile/index.d.ts.map +0 -1
- package/dist/blocks/profile/index.js +0 -5
- package/dist/blocks/profile/index.js.map +0 -1
- package/dist/blocks/profile/profile-header.d.ts +0 -27
- package/dist/blocks/profile/profile-header.d.ts.map +0 -1
- package/dist/blocks/profile/profile-header.js +0 -11
- package/dist/blocks/profile/profile-header.js.map +0 -1
- package/dist/blocks/profile/settings-item.d.ts +0 -15
- package/dist/blocks/profile/settings-item.d.ts.map +0 -1
- package/dist/blocks/profile/settings-item.js +0 -11
- package/dist/blocks/profile/settings-item.js.map +0 -1
- package/dist/blocks/profile/settings-section.d.ts +0 -7
- package/dist/blocks/profile/settings-section.d.ts.map +0 -1
- package/dist/blocks/profile/settings-section.js +0 -9
- package/dist/blocks/profile/settings-section.js.map +0 -1
- package/dist/blocks/splash/index.d.ts.map +0 -1
- package/dist/blocks/splash/index.js.map +0 -1
- package/dist/blocks/splash/splash-screen.d.ts.map +0 -1
- package/dist/blocks/splash/splash-screen.js.map +0 -1
- package/dist/components/accordion/accordion.d.ts.map +0 -1
- package/dist/components/accordion/accordion.js.map +0 -1
- package/dist/components/accordion/index.d.ts.map +0 -1
- package/dist/components/accordion/index.js.map +0 -1
- package/dist/components/alert/alert.d.ts.map +0 -1
- package/dist/components/alert/alert.js.map +0 -1
- package/dist/components/alert/index.d.ts.map +0 -1
- package/dist/components/alert/index.js.map +0 -1
- package/dist/components/alert-dialog/alert-dialog.d.ts.map +0 -1
- package/dist/components/alert-dialog/alert-dialog.js.map +0 -1
- package/dist/components/alert-dialog/index.d.ts.map +0 -1
- package/dist/components/alert-dialog/index.js.map +0 -1
- package/dist/components/aspect-ratio/aspect-ratio.d.ts.map +0 -1
- package/dist/components/aspect-ratio/aspect-ratio.js.map +0 -1
- package/dist/components/aspect-ratio/index.d.ts.map +0 -1
- package/dist/components/aspect-ratio/index.js.map +0 -1
- package/dist/components/avatar/avatar.d.ts.map +0 -1
- package/dist/components/avatar/avatar.js.map +0 -1
- package/dist/components/avatar/index.d.ts.map +0 -1
- package/dist/components/avatar/index.js.map +0 -1
- package/dist/components/badge/badge.d.ts.map +0 -1
- package/dist/components/badge/badge.js.map +0 -1
- package/dist/components/badge/index.d.ts.map +0 -1
- package/dist/components/badge/index.js.map +0 -1
- package/dist/components/box/box.d.ts +0 -143
- package/dist/components/box/box.d.ts.map +0 -1
- package/dist/components/box/box.js +0 -38
- package/dist/components/box/box.js.map +0 -1
- package/dist/components/box/index.d.ts +0 -2
- package/dist/components/box/index.d.ts.map +0 -1
- package/dist/components/box/index.js +0 -2
- package/dist/components/box/index.js.map +0 -1
- package/dist/components/button/button.d.ts.map +0 -1
- package/dist/components/button/button.js.map +0 -1
- package/dist/components/button/index.d.ts.map +0 -1
- package/dist/components/button/index.js.map +0 -1
- package/dist/components/card/card.d.ts.map +0 -1
- package/dist/components/card/card.js.map +0 -1
- package/dist/components/card/index.d.ts.map +0 -1
- package/dist/components/card/index.js.map +0 -1
- package/dist/components/checkbox/checkbox.d.ts.map +0 -1
- package/dist/components/checkbox/checkbox.js.map +0 -1
- package/dist/components/checkbox/index.d.ts.map +0 -1
- package/dist/components/checkbox/index.js.map +0 -1
- package/dist/components/collapsible/collapsible.d.ts.map +0 -1
- package/dist/components/collapsible/collapsible.js.map +0 -1
- package/dist/components/collapsible/index.d.ts.map +0 -1
- package/dist/components/collapsible/index.js.map +0 -1
- package/dist/components/context-menu/context-menu.d.ts.map +0 -1
- package/dist/components/context-menu/context-menu.js.map +0 -1
- package/dist/components/context-menu/index.d.ts.map +0 -1
- package/dist/components/context-menu/index.js.map +0 -1
- package/dist/components/data-row/data-row.d.ts.map +0 -1
- package/dist/components/data-row/data-row.js.map +0 -1
- package/dist/components/data-row/index.d.ts.map +0 -1
- package/dist/components/data-row/index.js.map +0 -1
- package/dist/components/dialog/dialog.d.ts.map +0 -1
- package/dist/components/dialog/dialog.js.map +0 -1
- package/dist/components/dialog/index.d.ts.map +0 -1
- package/dist/components/dialog/index.js.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu.d.ts.map +0 -1
- package/dist/components/dropdown-menu/dropdown-menu.js.map +0 -1
- package/dist/components/dropdown-menu/index.d.ts.map +0 -1
- package/dist/components/dropdown-menu/index.js.map +0 -1
- package/dist/components/form-field/form-field.d.ts.map +0 -1
- package/dist/components/form-field/form-field.js.map +0 -1
- package/dist/components/form-field/index.d.ts.map +0 -1
- package/dist/components/form-field/index.js.map +0 -1
- package/dist/components/hover-card/hover-card.d.ts.map +0 -1
- package/dist/components/hover-card/hover-card.js.map +0 -1
- package/dist/components/hover-card/index.d.ts.map +0 -1
- package/dist/components/hover-card/index.js.map +0 -1
- package/dist/components/input/index.d.ts.map +0 -1
- package/dist/components/input/index.js.map +0 -1
- package/dist/components/input/input.d.ts.map +0 -1
- package/dist/components/input/input.js.map +0 -1
- package/dist/components/label/index.d.ts.map +0 -1
- package/dist/components/label/index.js.map +0 -1
- package/dist/components/label/label.d.ts.map +0 -1
- package/dist/components/label/label.js.map +0 -1
- package/dist/components/labeled-field/index.d.ts.map +0 -1
- package/dist/components/labeled-field/index.js.map +0 -1
- package/dist/components/labeled-field/labeled-field.d.ts.map +0 -1
- package/dist/components/labeled-field/labeled-field.js.map +0 -1
- package/dist/components/layout/index.d.ts +0 -2
- package/dist/components/layout/index.d.ts.map +0 -1
- package/dist/components/layout/index.js +0 -2
- package/dist/components/layout/index.js.map +0 -1
- package/dist/components/layout/layout.d.ts +0 -395
- package/dist/components/layout/layout.d.ts.map +0 -1
- package/dist/components/layout/layout.js +0 -93
- package/dist/components/layout/layout.js.map +0 -1
- package/dist/components/menubar/index.d.ts.map +0 -1
- package/dist/components/menubar/index.js.map +0 -1
- package/dist/components/menubar/menubar.d.ts.map +0 -1
- package/dist/components/menubar/menubar.js.map +0 -1
- package/dist/components/numeric-input/index.d.ts.map +0 -1
- package/dist/components/numeric-input/index.js.map +0 -1
- package/dist/components/numeric-input/numeric-input.d.ts.map +0 -1
- package/dist/components/numeric-input/numeric-input.js.map +0 -1
- package/dist/components/otp-input/index.d.ts.map +0 -1
- package/dist/components/otp-input/index.js.map +0 -1
- package/dist/components/otp-input/otp-input.d.ts.map +0 -1
- package/dist/components/otp-input/otp-input.js.map +0 -1
- package/dist/components/popover/index.d.ts.map +0 -1
- package/dist/components/popover/index.js.map +0 -1
- package/dist/components/popover/popover.d.ts.map +0 -1
- package/dist/components/popover/popover.js.map +0 -1
- package/dist/components/pressable/index.d.ts.map +0 -1
- package/dist/components/pressable/index.js.map +0 -1
- package/dist/components/pressable/pressable.d.ts.map +0 -1
- package/dist/components/pressable/pressable.js.map +0 -1
- package/dist/components/progress/index.d.ts.map +0 -1
- package/dist/components/progress/index.js.map +0 -1
- package/dist/components/progress/progress.d.ts.map +0 -1
- package/dist/components/progress/progress.js.map +0 -1
- package/dist/components/radio-group/index.d.ts.map +0 -1
- package/dist/components/radio-group/index.js.map +0 -1
- package/dist/components/radio-group/radio-group.d.ts.map +0 -1
- package/dist/components/radio-group/radio-group.js.map +0 -1
- package/dist/components/row/index.d.ts.map +0 -1
- package/dist/components/row/index.js.map +0 -1
- package/dist/components/row/row.d.ts.map +0 -1
- package/dist/components/row/row.js.map +0 -1
- package/dist/components/segmented-control/index.d.ts.map +0 -1
- package/dist/components/segmented-control/index.js.map +0 -1
- package/dist/components/segmented-control/segmented-control.d.ts.map +0 -1
- package/dist/components/segmented-control/segmented-control.js.map +0 -1
- package/dist/components/select/index.d.ts.map +0 -1
- package/dist/components/select/index.js.map +0 -1
- package/dist/components/select/select.d.ts.map +0 -1
- package/dist/components/select/select.js.map +0 -1
- package/dist/components/separator/index.d.ts.map +0 -1
- package/dist/components/separator/index.js.map +0 -1
- package/dist/components/separator/separator.d.ts.map +0 -1
- package/dist/components/separator/separator.js.map +0 -1
- package/dist/components/skeleton/index.d.ts.map +0 -1
- package/dist/components/skeleton/index.js.map +0 -1
- package/dist/components/skeleton/skeleton.d.ts.map +0 -1
- package/dist/components/skeleton/skeleton.js.map +0 -1
- package/dist/components/spinner/index.d.ts.map +0 -1
- package/dist/components/spinner/index.js.map +0 -1
- package/dist/components/spinner/spinner.d.ts.map +0 -1
- package/dist/components/spinner/spinner.js.map +0 -1
- package/dist/components/stack/index.d.ts.map +0 -1
- package/dist/components/stack/index.js.map +0 -1
- package/dist/components/stack/stack.d.ts.map +0 -1
- package/dist/components/stack/stack.js.map +0 -1
- package/dist/components/switch/index.d.ts.map +0 -1
- package/dist/components/switch/index.js.map +0 -1
- package/dist/components/switch/switch.d.ts.map +0 -1
- package/dist/components/switch/switch.js.map +0 -1
- package/dist/components/tabs/index.d.ts.map +0 -1
- package/dist/components/tabs/index.js.map +0 -1
- package/dist/components/tabs/tabs.d.ts.map +0 -1
- package/dist/components/tabs/tabs.js.map +0 -1
- package/dist/components/text/index.d.ts.map +0 -1
- package/dist/components/text/index.js.map +0 -1
- package/dist/components/text/text.d.ts.map +0 -1
- package/dist/components/text/text.js.map +0 -1
- package/dist/components/textarea/index.d.ts.map +0 -1
- package/dist/components/textarea/index.js.map +0 -1
- package/dist/components/textarea/textarea.d.ts.map +0 -1
- package/dist/components/textarea/textarea.js.map +0 -1
- package/dist/components/toast/index.d.ts.map +0 -1
- package/dist/components/toast/index.js.map +0 -1
- package/dist/components/toast/toast.d.ts.map +0 -1
- package/dist/components/toast/toast.js.map +0 -1
- package/dist/components/toggle/index.d.ts.map +0 -1
- package/dist/components/toggle/index.js.map +0 -1
- package/dist/components/toggle/toggle.d.ts.map +0 -1
- package/dist/components/toggle/toggle.js.map +0 -1
- package/dist/components/toggle-group/index.d.ts.map +0 -1
- package/dist/components/toggle-group/index.js.map +0 -1
- package/dist/components/toggle-group/toggle-group.d.ts.map +0 -1
- package/dist/components/toggle-group/toggle-group.js.map +0 -1
- package/dist/components/tooltip/index.d.ts.map +0 -1
- package/dist/components/tooltip/index.js.map +0 -1
- package/dist/components/tooltip/tooltip.d.ts.map +0 -1
- package/dist/components/tooltip/tooltip.js.map +0 -1
- package/dist/components/view/index.d.ts.map +0 -1
- package/dist/components/view/index.js.map +0 -1
- package/dist/components/view/view.d.ts.map +0 -1
- package/dist/components/view/view.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/lib/cn.d.ts.map +0 -1
- package/dist/lib/cn.js.map +0 -1
- package/dist/lib/font-context.d.ts.map +0 -1
- package/dist/lib/font-context.js.map +0 -1
- package/dist/lib/frosted-surface.d.ts.map +0 -1
- package/dist/lib/frosted-surface.js.map +0 -1
- package/dist/lib/index.d.ts +0 -6
- package/dist/lib/index.d.ts.map +0 -1
- package/dist/lib/index.js +0 -6
- package/dist/lib/index.js.map +0 -1
- package/dist/lib/interaction-tokens.d.ts.map +0 -1
- package/dist/lib/interaction-tokens.js.map +0 -1
- package/dist/lib/portal.d.ts.map +0 -1
- package/dist/lib/portal.js.map +0 -1
- package/dist/lib/react-native-classname.d.ts.map +0 -1
- package/dist/lib/react-native-classname.js.map +0 -1
- package/dist/lib/theme-bridge.d.ts.map +0 -1
- package/dist/lib/theme-bridge.js.map +0 -1
- package/dist/lib/theme-colors.d.ts.map +0 -1
- package/dist/lib/theme-colors.js.map +0 -1
- package/dist/lib/tv.d.ts.map +0 -1
- package/dist/lib/tv.js.map +0 -1
- package/dist/lib/visual-tokens.d.ts.map +0 -1
- package/dist/lib/visual-tokens.js.map +0 -1
- package/dist/vite.d.ts.map +0 -1
- package/dist/vite.js.map +0 -1
|
@@ -2,15 +2,23 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { useState } from 'react';
|
|
3
3
|
import { Pressable, View } from 'react-native';
|
|
4
4
|
import { cn } from '../../lib/cn';
|
|
5
|
+
import { focusRing } from '../../lib/focus-ring';
|
|
5
6
|
import { useInteractionTokens, withInteractivePressableStyle } from '../../lib/interaction-tokens';
|
|
7
|
+
import { useVisualTokens } from '../../lib/visual-tokens';
|
|
6
8
|
function Switch({ checked: controlledChecked, defaultChecked = false, onCheckedChange, disabled = false, className, ...props }) {
|
|
7
9
|
const [internalChecked, setInternalChecked] = useState(defaultChecked);
|
|
8
10
|
const isChecked = controlledChecked ?? internalChecked;
|
|
9
11
|
const interaction = useInteractionTokens();
|
|
12
|
+
const visual = useVisualTokens();
|
|
10
13
|
const interactiveStyle = withInteractivePressableStyle(undefined, interaction, {
|
|
11
14
|
disabled,
|
|
12
15
|
pressedVariant: 'default',
|
|
13
16
|
});
|
|
17
|
+
const trackHeight = Math.max(24, Math.round(visual.controlHeightSm * 0.9));
|
|
18
|
+
const trackWidth = Math.round(trackHeight * 1.45);
|
|
19
|
+
const inset = Math.max(2, Math.round(trackHeight * 0.08));
|
|
20
|
+
const thumbSize = trackHeight - inset * 2 - 2;
|
|
21
|
+
const thumbOffset = Math.max(0, trackWidth - thumbSize - inset * 2 - 2);
|
|
14
22
|
const handleToggle = () => {
|
|
15
23
|
if (disabled)
|
|
16
24
|
return;
|
|
@@ -18,8 +26,19 @@ function Switch({ checked: controlledChecked, defaultChecked = false, onCheckedC
|
|
|
18
26
|
setInternalChecked(newValue);
|
|
19
27
|
onCheckedChange?.(newValue);
|
|
20
28
|
};
|
|
21
|
-
return (_jsx(Pressable, { onPress: handleToggle, disabled: disabled, style: interactiveStyle, hitSlop: { top: 12, bottom: 12, left: 12, right: 12 }, accessibilityRole: "switch", accessibilityState: { checked: isChecked, disabled }, children: _jsx(View, { className: cn('
|
|
29
|
+
return (_jsx(Pressable, { onPress: handleToggle, disabled: disabled, style: interactiveStyle, hitSlop: { top: 12, bottom: 12, left: 12, right: 12 }, accessibilityRole: "switch", accessibilityState: { checked: isChecked, disabled }, "aria-checked": isChecked, children: _jsx(View, { className: cn('flex-row items-center justify-start', isChecked ? 'border-primary bg-primary' : 'border-input bg-muted', focusRing, className), style: {
|
|
30
|
+
width: trackWidth,
|
|
31
|
+
height: trackHeight,
|
|
32
|
+
borderWidth: visual.borderWidthEmphasis,
|
|
33
|
+
borderRadius: trackHeight / 2,
|
|
34
|
+
padding: inset,
|
|
35
|
+
}, ...props, children: _jsx(View, { className: "border-border bg-background shadow-sm", style: {
|
|
36
|
+
width: thumbSize,
|
|
37
|
+
height: thumbSize,
|
|
38
|
+
borderWidth: visual.borderWidthEmphasis,
|
|
39
|
+
borderRadius: thumbSize / 2,
|
|
40
|
+
transform: [{ translateX: isChecked ? thumbOffset : 0 }],
|
|
41
|
+
} }) }) }));
|
|
22
42
|
}
|
|
23
43
|
Switch.displayName = 'Switch';
|
|
24
44
|
export { Switch };
|
|
25
|
-
//# sourceMappingURL=switch.js.map
|
|
@@ -2,40 +2,20 @@ import { type ReactNode } from 'react';
|
|
|
2
2
|
import { type ViewProps, type PressableProps } from 'react-native';
|
|
3
3
|
declare const tabsTriggerVariants: import("tailwind-variants").TVReturnType<{
|
|
4
4
|
state: {
|
|
5
|
-
active:
|
|
6
|
-
inactive:
|
|
5
|
+
active: "text-foreground";
|
|
6
|
+
inactive: "text-muted-foreground";
|
|
7
7
|
};
|
|
8
|
-
}, undefined, "inline-flex items-center justify-center whitespace-nowrap
|
|
8
|
+
}, undefined, "inline-flex items-center justify-center whitespace-nowrap font-medium", {
|
|
9
9
|
state: {
|
|
10
|
-
active:
|
|
11
|
-
inactive:
|
|
10
|
+
active: "text-foreground";
|
|
11
|
+
inactive: "text-muted-foreground";
|
|
12
12
|
};
|
|
13
|
-
}, {
|
|
13
|
+
}, undefined, import("tailwind-variants").TVReturnTypeLike<{
|
|
14
14
|
state: {
|
|
15
|
-
active:
|
|
16
|
-
inactive:
|
|
15
|
+
active: "text-foreground";
|
|
16
|
+
inactive: "text-muted-foreground";
|
|
17
17
|
};
|
|
18
|
-
}
|
|
19
|
-
state: {
|
|
20
|
-
active: string;
|
|
21
|
-
inactive: string;
|
|
22
|
-
};
|
|
23
|
-
}, undefined, import("tailwind-variants").TVReturnType<{
|
|
24
|
-
state: {
|
|
25
|
-
active: string;
|
|
26
|
-
inactive: string;
|
|
27
|
-
};
|
|
28
|
-
}, undefined, "inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-2 text-sm font-medium", import("tailwind-variants/dist/config.js").TVConfig<{
|
|
29
|
-
state: {
|
|
30
|
-
active: string;
|
|
31
|
-
inactive: string;
|
|
32
|
-
};
|
|
33
|
-
}, {
|
|
34
|
-
state: {
|
|
35
|
-
active: string;
|
|
36
|
-
inactive: string;
|
|
37
|
-
};
|
|
38
|
-
}>, unknown, unknown, undefined>>;
|
|
18
|
+
}, undefined>>;
|
|
39
19
|
export interface TabsProps extends ViewProps {
|
|
40
20
|
defaultValue: string;
|
|
41
21
|
value?: string;
|
|
@@ -54,21 +34,20 @@ export interface TabsContentProps extends ViewProps {
|
|
|
54
34
|
value: string;
|
|
55
35
|
className?: string;
|
|
56
36
|
}
|
|
57
|
-
declare function Tabs({ defaultValue, value: controlledValue, onValueChange, className, children, ...props }: TabsProps): import("react
|
|
37
|
+
declare function Tabs({ defaultValue, value: controlledValue, onValueChange, className, children, ...props }: TabsProps): import("react").JSX.Element;
|
|
58
38
|
declare namespace Tabs {
|
|
59
39
|
var displayName: string;
|
|
60
40
|
}
|
|
61
|
-
declare function TabsList({ className, ...props }: TabsListProps): import("react
|
|
41
|
+
declare function TabsList({ className, style, ...props }: TabsListProps): import("react").JSX.Element;
|
|
62
42
|
declare namespace TabsList {
|
|
63
43
|
var displayName: string;
|
|
64
44
|
}
|
|
65
|
-
declare function TabsTrigger({ value: tabValue, children, className, disabled, style: styleProp, ...props }: TabsTriggerProps): import("react
|
|
45
|
+
declare function TabsTrigger({ value: tabValue, children, className, disabled, style: styleProp, ...props }: TabsTriggerProps): import("react").JSX.Element;
|
|
66
46
|
declare namespace TabsTrigger {
|
|
67
47
|
var displayName: string;
|
|
68
48
|
}
|
|
69
|
-
declare function TabsContent({ value: tabValue, className, children, ...props }: TabsContentProps): import("react
|
|
49
|
+
declare function TabsContent({ value: tabValue, className, children, ...props }: TabsContentProps): import("react").JSX.Element | null;
|
|
70
50
|
declare namespace TabsContent {
|
|
71
51
|
var displayName: string;
|
|
72
52
|
}
|
|
73
53
|
export { Tabs, TabsList, TabsTrigger, TabsContent, tabsTriggerVariants };
|
|
74
|
-
//# sourceMappingURL=tabs.d.ts.map
|
|
@@ -1,19 +1,22 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { createContext, useContext, useState } from 'react';
|
|
2
|
+
import { createContext, useCallback, useContext, useMemo, useState } from 'react';
|
|
3
3
|
import { View, Pressable } from 'react-native';
|
|
4
4
|
import { cn } from '../../lib/cn';
|
|
5
|
+
import { focusRingInset } from '../../lib/focus-ring';
|
|
5
6
|
import { tv } from '../../lib/tv';
|
|
6
7
|
import { useInteractionTokens, withInteractivePressableStyle } from '../../lib/interaction-tokens';
|
|
8
|
+
import { useThemeColors } from '../../lib/theme-colors';
|
|
9
|
+
import { useVisualTokens } from '../../lib/visual-tokens';
|
|
10
|
+
import { typographyStyle } from '../../lib/recipes';
|
|
7
11
|
const TabsContext = createContext({
|
|
8
12
|
value: '',
|
|
9
13
|
onValueChange: () => { },
|
|
10
14
|
});
|
|
11
|
-
// ─── Variants ────────────────────────────────────────────────
|
|
12
15
|
const tabsTriggerVariants = tv({
|
|
13
|
-
base: 'inline-flex items-center justify-center whitespace-nowrap
|
|
16
|
+
base: 'inline-flex items-center justify-center whitespace-nowrap font-medium',
|
|
14
17
|
variants: {
|
|
15
18
|
state: {
|
|
16
|
-
active: '
|
|
19
|
+
active: 'text-foreground',
|
|
17
20
|
inactive: 'text-muted-foreground',
|
|
18
21
|
},
|
|
19
22
|
},
|
|
@@ -21,28 +24,56 @@ const tabsTriggerVariants = tv({
|
|
|
21
24
|
state: 'inactive',
|
|
22
25
|
},
|
|
23
26
|
});
|
|
24
|
-
|
|
27
|
+
function getTabsListStyle(visual, colors) {
|
|
28
|
+
const inset = Math.max(4, Math.round(visual.controlPaddingYSm * 0.5));
|
|
29
|
+
return {
|
|
30
|
+
borderRadius: visual.radiusXl,
|
|
31
|
+
backgroundColor: colors.muted,
|
|
32
|
+
padding: inset,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
function getTabsTriggerStyle(visual, colors, active) {
|
|
36
|
+
return {
|
|
37
|
+
...typographyStyle(visual, 'label'),
|
|
38
|
+
minHeight: visual.controlHeightDefault,
|
|
39
|
+
borderRadius: visual.radiusLg,
|
|
40
|
+
paddingHorizontal: visual.controlPaddingXDefault,
|
|
41
|
+
paddingVertical: visual.controlPaddingYDefault,
|
|
42
|
+
borderWidth: active ? visual.borderWidthHairline : 0,
|
|
43
|
+
borderColor: active ? colors.surfaceBorder : 'transparent',
|
|
44
|
+
backgroundColor: active ? colors.surfaceElevated : 'transparent',
|
|
45
|
+
};
|
|
46
|
+
}
|
|
25
47
|
function Tabs({ defaultValue, value: controlledValue, onValueChange, className, children, ...props }) {
|
|
26
48
|
const [internalValue, setInternalValue] = useState(defaultValue);
|
|
27
49
|
const value = controlledValue ?? internalValue;
|
|
28
|
-
const handleValueChange = (newValue) => {
|
|
50
|
+
const handleValueChange = useCallback((newValue) => {
|
|
29
51
|
setInternalValue(newValue);
|
|
30
52
|
onValueChange?.(newValue);
|
|
31
|
-
};
|
|
32
|
-
|
|
53
|
+
}, [onValueChange]);
|
|
54
|
+
const contextValue = useMemo(() => ({ value, onValueChange: handleValueChange }), [handleValueChange, value]);
|
|
55
|
+
return (_jsx(TabsContext.Provider, { value: contextValue, children: _jsx(View, { className: cn('w-full', className), ...props, children: children }) }));
|
|
33
56
|
}
|
|
34
|
-
function TabsList({ className, ...props }) {
|
|
35
|
-
|
|
57
|
+
function TabsList({ className, style, ...props }) {
|
|
58
|
+
const visual = useVisualTokens();
|
|
59
|
+
const colors = useThemeColors();
|
|
60
|
+
return (_jsx(View, { accessibilityRole: "tablist", className: cn('flex flex-row items-center justify-center', className), style: [getTabsListStyle(visual, colors), style], ...props }));
|
|
36
61
|
}
|
|
37
62
|
function TabsTrigger({ value: tabValue, children, className, disabled, style: styleProp, ...props }) {
|
|
38
63
|
const { value, onValueChange } = useContext(TabsContext);
|
|
39
64
|
const isActive = value === tabValue;
|
|
40
65
|
const interaction = useInteractionTokens();
|
|
66
|
+
const visual = useVisualTokens();
|
|
67
|
+
const colors = useThemeColors();
|
|
41
68
|
const interactiveStyle = withInteractivePressableStyle(styleProp, interaction, {
|
|
42
69
|
disabled: Boolean(disabled),
|
|
43
70
|
pressedVariant: 'default',
|
|
44
71
|
});
|
|
45
|
-
|
|
72
|
+
const tokenStyle = getTabsTriggerStyle(visual, colors, isActive);
|
|
73
|
+
return (_jsx(Pressable, { className: cn(tabsTriggerVariants({ state: isActive ? 'active' : 'inactive' }), 'flex-1', focusRingInset, className), style: (state) => {
|
|
74
|
+
const baseStyle = typeof interactiveStyle === 'function' ? interactiveStyle(state) : interactiveStyle;
|
|
75
|
+
return [baseStyle, tokenStyle];
|
|
76
|
+
}, onPress: () => onValueChange(tabValue), accessibilityRole: "tab", accessibilityState: { selected: isActive, disabled: Boolean(disabled) }, "aria-selected": isActive, disabled: disabled, ...props, children: children }));
|
|
46
77
|
}
|
|
47
78
|
function TabsContent({ value: tabValue, className, children, ...props }) {
|
|
48
79
|
const { value } = useContext(TabsContext);
|
|
@@ -55,4 +86,3 @@ TabsList.displayName = 'TabsList';
|
|
|
55
86
|
TabsTrigger.displayName = 'TabsTrigger';
|
|
56
87
|
TabsContent.displayName = 'TabsContent';
|
|
57
88
|
export { Tabs, TabsList, TabsTrigger, TabsContent, tabsTriggerVariants };
|
|
58
|
-
//# sourceMappingURL=tabs.js.map
|
|
@@ -1,149 +1,68 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { Text as RNText, type TextProps as RNTextProps } from 'react-native';
|
|
1
|
+
import { type TextInstance, type TextProps as RNTextProps } from 'react-native';
|
|
3
2
|
import { type VariantProps } from '../../lib/tv';
|
|
3
|
+
import type { ForwardRefComponent } from '../../lib/ref-types';
|
|
4
4
|
declare const textVariants: import("tailwind-variants").TVReturnType<{
|
|
5
5
|
variant: {
|
|
6
|
-
default:
|
|
7
|
-
heading:
|
|
8
|
-
title:
|
|
9
|
-
subtitle:
|
|
10
|
-
body:
|
|
11
|
-
caption:
|
|
12
|
-
label:
|
|
13
|
-
code:
|
|
6
|
+
default: "font-normal";
|
|
7
|
+
heading: "text-2xl font-bold tracking-tight";
|
|
8
|
+
title: "text-xl font-semibold";
|
|
9
|
+
subtitle: "text-lg font-medium";
|
|
10
|
+
body: "text-base font-normal";
|
|
11
|
+
caption: "text-sm text-muted-foreground font-normal";
|
|
12
|
+
label: "text-sm font-medium leading-tight";
|
|
13
|
+
code: "font-mono text-sm bg-muted rounded px-1 py-0.5";
|
|
14
14
|
};
|
|
15
15
|
size: {
|
|
16
|
-
xs:
|
|
17
|
-
sm:
|
|
18
|
-
base:
|
|
19
|
-
lg:
|
|
20
|
-
xl:
|
|
21
|
-
'2xl':
|
|
22
|
-
'3xl':
|
|
16
|
+
xs: "text-xs";
|
|
17
|
+
sm: "text-sm";
|
|
18
|
+
base: "text-base";
|
|
19
|
+
lg: "text-lg";
|
|
20
|
+
xl: "text-xl";
|
|
21
|
+
'2xl': "text-2xl";
|
|
22
|
+
'3xl': "text-3xl";
|
|
23
23
|
};
|
|
24
|
-
}, undefined, "text-foreground",
|
|
24
|
+
}, undefined, "text-foreground", {
|
|
25
25
|
variant: {
|
|
26
|
-
default:
|
|
27
|
-
heading:
|
|
28
|
-
title:
|
|
29
|
-
subtitle:
|
|
30
|
-
body:
|
|
31
|
-
caption:
|
|
32
|
-
label:
|
|
33
|
-
code:
|
|
26
|
+
default: "font-normal";
|
|
27
|
+
heading: "text-2xl font-bold tracking-tight";
|
|
28
|
+
title: "text-xl font-semibold";
|
|
29
|
+
subtitle: "text-lg font-medium";
|
|
30
|
+
body: "text-base font-normal";
|
|
31
|
+
caption: "text-sm text-muted-foreground font-normal";
|
|
32
|
+
label: "text-sm font-medium leading-tight";
|
|
33
|
+
code: "font-mono text-sm bg-muted rounded px-1 py-0.5";
|
|
34
34
|
};
|
|
35
35
|
size: {
|
|
36
|
-
xs:
|
|
37
|
-
sm:
|
|
38
|
-
base:
|
|
39
|
-
lg:
|
|
40
|
-
xl:
|
|
41
|
-
'2xl':
|
|
42
|
-
'3xl':
|
|
36
|
+
xs: "text-xs";
|
|
37
|
+
sm: "text-sm";
|
|
38
|
+
base: "text-base";
|
|
39
|
+
lg: "text-lg";
|
|
40
|
+
xl: "text-xl";
|
|
41
|
+
'2xl': "text-2xl";
|
|
42
|
+
'3xl': "text-3xl";
|
|
43
43
|
};
|
|
44
|
-
}, {
|
|
44
|
+
}, undefined, import("tailwind-variants").TVReturnTypeLike<{
|
|
45
45
|
variant: {
|
|
46
|
-
default:
|
|
47
|
-
heading:
|
|
48
|
-
title:
|
|
49
|
-
subtitle:
|
|
50
|
-
body:
|
|
51
|
-
caption:
|
|
52
|
-
label:
|
|
53
|
-
code:
|
|
46
|
+
default: "font-normal";
|
|
47
|
+
heading: "text-2xl font-bold tracking-tight";
|
|
48
|
+
title: "text-xl font-semibold";
|
|
49
|
+
subtitle: "text-lg font-medium";
|
|
50
|
+
body: "text-base font-normal";
|
|
51
|
+
caption: "text-sm text-muted-foreground font-normal";
|
|
52
|
+
label: "text-sm font-medium leading-tight";
|
|
53
|
+
code: "font-mono text-sm bg-muted rounded px-1 py-0.5";
|
|
54
54
|
};
|
|
55
55
|
size: {
|
|
56
|
-
xs:
|
|
57
|
-
sm:
|
|
58
|
-
base:
|
|
59
|
-
lg:
|
|
60
|
-
xl:
|
|
61
|
-
'2xl':
|
|
62
|
-
'3xl':
|
|
56
|
+
xs: "text-xs";
|
|
57
|
+
sm: "text-sm";
|
|
58
|
+
base: "text-base";
|
|
59
|
+
lg: "text-lg";
|
|
60
|
+
xl: "text-xl";
|
|
61
|
+
'2xl': "text-2xl";
|
|
62
|
+
'3xl': "text-3xl";
|
|
63
63
|
};
|
|
64
|
-
}
|
|
65
|
-
variant: {
|
|
66
|
-
default: string;
|
|
67
|
-
heading: string;
|
|
68
|
-
title: string;
|
|
69
|
-
subtitle: string;
|
|
70
|
-
body: string;
|
|
71
|
-
caption: string;
|
|
72
|
-
label: string;
|
|
73
|
-
code: string;
|
|
74
|
-
};
|
|
75
|
-
size: {
|
|
76
|
-
xs: string;
|
|
77
|
-
sm: string;
|
|
78
|
-
base: string;
|
|
79
|
-
lg: string;
|
|
80
|
-
xl: string;
|
|
81
|
-
'2xl': string;
|
|
82
|
-
'3xl': string;
|
|
83
|
-
};
|
|
84
|
-
}, undefined, import("tailwind-variants").TVReturnType<{
|
|
85
|
-
variant: {
|
|
86
|
-
default: string;
|
|
87
|
-
heading: string;
|
|
88
|
-
title: string;
|
|
89
|
-
subtitle: string;
|
|
90
|
-
body: string;
|
|
91
|
-
caption: string;
|
|
92
|
-
label: string;
|
|
93
|
-
code: string;
|
|
94
|
-
};
|
|
95
|
-
size: {
|
|
96
|
-
xs: string;
|
|
97
|
-
sm: string;
|
|
98
|
-
base: string;
|
|
99
|
-
lg: string;
|
|
100
|
-
xl: string;
|
|
101
|
-
'2xl': string;
|
|
102
|
-
'3xl': string;
|
|
103
|
-
};
|
|
104
|
-
}, undefined, "text-foreground", import("tailwind-variants/dist/config.js").TVConfig<{
|
|
105
|
-
variant: {
|
|
106
|
-
default: string;
|
|
107
|
-
heading: string;
|
|
108
|
-
title: string;
|
|
109
|
-
subtitle: string;
|
|
110
|
-
body: string;
|
|
111
|
-
caption: string;
|
|
112
|
-
label: string;
|
|
113
|
-
code: string;
|
|
114
|
-
};
|
|
115
|
-
size: {
|
|
116
|
-
xs: string;
|
|
117
|
-
sm: string;
|
|
118
|
-
base: string;
|
|
119
|
-
lg: string;
|
|
120
|
-
xl: string;
|
|
121
|
-
'2xl': string;
|
|
122
|
-
'3xl': string;
|
|
123
|
-
};
|
|
124
|
-
}, {
|
|
125
|
-
variant: {
|
|
126
|
-
default: string;
|
|
127
|
-
heading: string;
|
|
128
|
-
title: string;
|
|
129
|
-
subtitle: string;
|
|
130
|
-
body: string;
|
|
131
|
-
caption: string;
|
|
132
|
-
label: string;
|
|
133
|
-
code: string;
|
|
134
|
-
};
|
|
135
|
-
size: {
|
|
136
|
-
xs: string;
|
|
137
|
-
sm: string;
|
|
138
|
-
base: string;
|
|
139
|
-
lg: string;
|
|
140
|
-
xl: string;
|
|
141
|
-
'2xl': string;
|
|
142
|
-
'3xl': string;
|
|
143
|
-
};
|
|
144
|
-
}>, unknown, unknown, undefined>>;
|
|
64
|
+
}, undefined>>;
|
|
145
65
|
export interface TextProps extends RNTextProps, VariantProps<typeof textVariants> {
|
|
146
66
|
}
|
|
147
|
-
declare const Text:
|
|
67
|
+
declare const Text: ForwardRefComponent<TextInstance, TextProps>;
|
|
148
68
|
export { Text, textVariants };
|
|
149
|
-
//# sourceMappingURL=text.d.ts.map
|
|
@@ -1,52 +1,27 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { TextInput, type TextInputProps } from 'react-native';
|
|
1
|
+
import { type TextInputInstance, type TextInputProps } from 'react-native';
|
|
3
2
|
import { type VariantProps } from '../../lib/tv';
|
|
3
|
+
import type { ForwardRefComponent } from '../../lib/ref-types';
|
|
4
4
|
declare const textareaVariants: import("tailwind-variants").TVReturnType<{
|
|
5
5
|
size: {
|
|
6
|
-
default:
|
|
7
|
-
sm:
|
|
8
|
-
lg:
|
|
6
|
+
default: "";
|
|
7
|
+
sm: "";
|
|
8
|
+
lg: "";
|
|
9
9
|
};
|
|
10
|
-
}, undefined, "w-full
|
|
10
|
+
}, undefined, "w-full border-border bg-muted text-foreground", {
|
|
11
11
|
size: {
|
|
12
|
-
default:
|
|
13
|
-
sm:
|
|
14
|
-
lg:
|
|
12
|
+
default: "";
|
|
13
|
+
sm: "";
|
|
14
|
+
lg: "";
|
|
15
15
|
};
|
|
16
|
-
}, {
|
|
16
|
+
}, undefined, import("tailwind-variants").TVReturnTypeLike<{
|
|
17
17
|
size: {
|
|
18
|
-
default:
|
|
19
|
-
sm:
|
|
20
|
-
lg:
|
|
18
|
+
default: "";
|
|
19
|
+
sm: "";
|
|
20
|
+
lg: "";
|
|
21
21
|
};
|
|
22
|
-
}
|
|
23
|
-
size: {
|
|
24
|
-
default: string;
|
|
25
|
-
sm: string;
|
|
26
|
-
lg: string;
|
|
27
|
-
};
|
|
28
|
-
}, undefined, import("tailwind-variants").TVReturnType<{
|
|
29
|
-
size: {
|
|
30
|
-
default: string;
|
|
31
|
-
sm: string;
|
|
32
|
-
lg: string;
|
|
33
|
-
};
|
|
34
|
-
}, undefined, "w-full rounded-md border border-border bg-muted px-3 py-2 text-sm text-foreground", import("tailwind-variants/dist/config.js").TVConfig<{
|
|
35
|
-
size: {
|
|
36
|
-
default: string;
|
|
37
|
-
sm: string;
|
|
38
|
-
lg: string;
|
|
39
|
-
};
|
|
40
|
-
}, {
|
|
41
|
-
size: {
|
|
42
|
-
default: string;
|
|
43
|
-
sm: string;
|
|
44
|
-
lg: string;
|
|
45
|
-
};
|
|
46
|
-
}>, unknown, unknown, undefined>>;
|
|
22
|
+
}, undefined>>;
|
|
47
23
|
export interface TextareaProps extends Omit<TextInputProps, 'style'>, VariantProps<typeof textareaVariants> {
|
|
48
24
|
className?: string;
|
|
49
25
|
}
|
|
50
|
-
declare const Textarea:
|
|
26
|
+
declare const Textarea: ForwardRefComponent<TextInputInstance, TextareaProps>;
|
|
51
27
|
export { Textarea, textareaVariants };
|
|
52
|
-
//# sourceMappingURL=textarea.d.ts.map
|
|
@@ -1,26 +1,31 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import { TextInput } from 'react-native';
|
|
3
|
+
import { TextInput, } from 'react-native';
|
|
4
4
|
import { cn } from '../../lib/cn';
|
|
5
|
+
import { focusRing } from '../../lib/focus-ring';
|
|
5
6
|
import { tv } from '../../lib/tv';
|
|
6
7
|
import { useThemeColors } from '../../lib/theme-colors';
|
|
7
8
|
import { useInteractionTokens } from '../../lib/interaction-tokens';
|
|
8
9
|
import { useVisualTokens } from '../../lib/visual-tokens';
|
|
9
|
-
|
|
10
|
+
import { typographyStyle } from '../../lib/recipes';
|
|
10
11
|
const textareaVariants = tv({
|
|
11
|
-
base: 'w-full
|
|
12
|
+
base: 'w-full border-border bg-muted text-foreground',
|
|
12
13
|
variants: {
|
|
13
14
|
size: {
|
|
14
15
|
default: '',
|
|
15
|
-
sm: '
|
|
16
|
-
lg: '
|
|
16
|
+
sm: '',
|
|
17
|
+
lg: '',
|
|
17
18
|
},
|
|
18
19
|
},
|
|
19
20
|
defaultVariants: {
|
|
20
21
|
size: 'default',
|
|
21
22
|
},
|
|
22
23
|
});
|
|
23
|
-
|
|
24
|
+
const TEXTAREA_TEXT_ROLE = {
|
|
25
|
+
default: 'label',
|
|
26
|
+
sm: 'caption',
|
|
27
|
+
lg: 'body',
|
|
28
|
+
};
|
|
24
29
|
const Textarea = React.forwardRef(({ className, size = 'default', placeholderTextColor, ...props }, ref) => {
|
|
25
30
|
const colors = useThemeColors();
|
|
26
31
|
const interaction = useInteractionTokens();
|
|
@@ -31,12 +36,15 @@ const Textarea = React.forwardRef(({ className, size = 'default', placeholderTex
|
|
|
31
36
|
? visual.textareaMinHeightLg
|
|
32
37
|
: visual.textareaMinHeightDefault;
|
|
33
38
|
const style = {
|
|
39
|
+
...typographyStyle(visual, TEXTAREA_TEXT_ROLE[size ?? 'default'] ?? 'label'),
|
|
34
40
|
minHeight,
|
|
41
|
+
borderWidth: visual.borderWidthControl,
|
|
42
|
+
borderRadius: visual.radiusLg,
|
|
43
|
+
paddingHorizontal: visual.controlPaddingXDefault,
|
|
44
|
+
paddingVertical: visual.controlPaddingYDefault,
|
|
35
45
|
...(props.editable === false ? { opacity: interaction.disabledOpacity } : null),
|
|
36
46
|
};
|
|
37
|
-
return (_jsx(TextInput, { ref: ref, className: cn(textareaVariants({ size }),
|
|
47
|
+
return (_jsx(TextInput, { ref: ref, className: cn(textareaVariants({ size }), focusRing, className), style: style, multiline: true, textAlignVertical: "top", placeholderTextColor: placeholderTextColor ?? colors.placeholder, ...props }));
|
|
38
48
|
});
|
|
39
49
|
Textarea.displayName = 'Textarea';
|
|
40
|
-
// ─── Exports ─────────────────────────────────────────────────
|
|
41
50
|
export { Textarea, textareaVariants };
|
|
42
|
-
//# sourceMappingURL=textarea.js.map
|