@lssm/lib.ui-kit 0.0.0-canary-20251120170226
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 +75 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/dist/node_modules/@hookform/resolvers/dist/resolvers.js +35 -0
- package/dist/node_modules/@hookform/resolvers/dist/resolvers.js.map +1 -0
- package/dist/node_modules/@hookform/resolvers/zod/dist/zod.js +119 -0
- package/dist/node_modules/@hookform/resolvers/zod/dist/zod.js.map +1 -0
- package/dist/node_modules/react-hook-form/dist/index.esm.js +2062 -0
- package/dist/node_modules/react-hook-form/dist/index.esm.js.map +1 -0
- package/dist/node_modules/zod/v4/classic/errors.js +30 -0
- package/dist/node_modules/zod/v4/classic/errors.js.map +1 -0
- package/dist/node_modules/zod/v4/classic/iso.js +38 -0
- package/dist/node_modules/zod/v4/classic/iso.js.map +1 -0
- package/dist/node_modules/zod/v4/classic/parse.js +20 -0
- package/dist/node_modules/zod/v4/classic/parse.js.map +1 -0
- package/dist/node_modules/zod/v4/classic/schemas.js +395 -0
- package/dist/node_modules/zod/v4/classic/schemas.js.map +1 -0
- package/dist/node_modules/zod/v4/core/api.js +377 -0
- package/dist/node_modules/zod/v4/core/api.js.map +1 -0
- package/dist/node_modules/zod/v4/core/checks.js +226 -0
- package/dist/node_modules/zod/v4/core/checks.js.map +1 -0
- package/dist/node_modules/zod/v4/core/core.js +57 -0
- package/dist/node_modules/zod/v4/core/core.js.map +1 -0
- package/dist/node_modules/zod/v4/core/errors.js +63 -0
- package/dist/node_modules/zod/v4/core/errors.js.map +1 -0
- package/dist/node_modules/zod/v4/core/parse.js +110 -0
- package/dist/node_modules/zod/v4/core/parse.js.map +1 -0
- package/dist/node_modules/zod/v4/core/regexes.js +59 -0
- package/dist/node_modules/zod/v4/core/regexes.js.map +1 -0
- package/dist/node_modules/zod/v4/core/registries.js +53 -0
- package/dist/node_modules/zod/v4/core/registries.js.map +1 -0
- package/dist/node_modules/zod/v4/core/schemas.js +755 -0
- package/dist/node_modules/zod/v4/core/schemas.js.map +1 -0
- package/dist/node_modules/zod/v4/core/util.js +152 -0
- package/dist/node_modules/zod/v4/core/util.js.map +1 -0
- package/dist/node_modules/zod/v4/core/versions.js +10 -0
- package/dist/node_modules/zod/v4/core/versions.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/ui/accordion.d.ts +36 -0
- package/dist/ui/accordion.d.ts.map +1 -0
- package/dist/ui/accordion.js +93 -0
- package/dist/ui/accordion.js.map +1 -0
- package/dist/ui/alert-dialog.d.ts +72 -0
- package/dist/ui/alert-dialog.d.ts.map +1 -0
- package/dist/ui/alert-dialog.js +98 -0
- package/dist/ui/alert-dialog.js.map +1 -0
- package/dist/ui/alert.d.ts +37 -0
- package/dist/ui/alert.d.ts.map +1 -0
- package/dist/ui/alert.js +50 -0
- package/dist/ui/alert.js.map +1 -0
- package/dist/ui/aspect-ratio.d.ts +12 -0
- package/dist/ui/aspect-ratio.d.ts.map +1 -0
- package/dist/ui/aspect-ratio.js +8 -0
- package/dist/ui/aspect-ratio.js.map +1 -0
- package/dist/ui/atoms/FilterSelect/FilterSelect.d.ts +8 -0
- package/dist/ui/atoms/FilterSelect/FilterSelect.d.ts.map +1 -0
- package/dist/ui/atoms/FilterSelect/FilterSelect.js +58 -0
- package/dist/ui/atoms/FilterSelect/FilterSelect.js.map +1 -0
- package/dist/ui/atoms/FilterSelect/index.d.ts +3 -0
- package/dist/ui/atoms/FilterSelect/index.js +3 -0
- package/dist/ui/atoms/FilterSelect/types.d.ts +19 -0
- package/dist/ui/atoms/FilterSelect/types.d.ts.map +1 -0
- package/dist/ui/atoms/FilterSelect/types.js +0 -0
- package/dist/ui/atoms/LoadingSpinner/LoadingSpinner.d.ts +23 -0
- package/dist/ui/atoms/LoadingSpinner/LoadingSpinner.d.ts.map +1 -0
- package/dist/ui/atoms/LoadingSpinner/LoadingSpinner.js +48 -0
- package/dist/ui/atoms/LoadingSpinner/LoadingSpinner.js.map +1 -0
- package/dist/ui/atoms/LoadingSpinner/index.d.ts +2 -0
- package/dist/ui/atoms/LoadingSpinner/index.js +3 -0
- package/dist/ui/atoms/Pagination/Pagination.d.ts +8 -0
- package/dist/ui/atoms/Pagination/Pagination.d.ts.map +1 -0
- package/dist/ui/atoms/Pagination/Pagination.js +163 -0
- package/dist/ui/atoms/Pagination/Pagination.js.map +1 -0
- package/dist/ui/atoms/Pagination/index.d.ts +3 -0
- package/dist/ui/atoms/Pagination/index.js +3 -0
- package/dist/ui/atoms/Pagination/types.d.ts +16 -0
- package/dist/ui/atoms/Pagination/types.d.ts.map +1 -0
- package/dist/ui/atoms/Pagination/types.js +0 -0
- package/dist/ui/atoms/SearchInput/SearchInput.d.ts +8 -0
- package/dist/ui/atoms/SearchInput/SearchInput.d.ts.map +1 -0
- package/dist/ui/atoms/SearchInput/SearchInput.js +50 -0
- package/dist/ui/atoms/SearchInput/SearchInput.js.map +1 -0
- package/dist/ui/atoms/SearchInput/index.d.ts +3 -0
- package/dist/ui/atoms/SearchInput/index.js +3 -0
- package/dist/ui/atoms/SearchInput/types.d.ts +13 -0
- package/dist/ui/atoms/SearchInput/types.d.ts.map +1 -0
- package/dist/ui/atoms/SearchInput/types.js +0 -0
- package/dist/ui/avatar.d.ts +28 -0
- package/dist/ui/avatar.d.ts.map +1 -0
- package/dist/ui/avatar.js +28 -0
- package/dist/ui/avatar.js.map +1 -0
- package/dist/ui/badge.d.ts +22 -0
- package/dist/ui/badge.d.ts.map +1 -0
- package/dist/ui/badge.js +26 -0
- package/dist/ui/badge.js.map +1 -0
- package/dist/ui/breadcrumb.d.ts +39 -0
- package/dist/ui/breadcrumb.d.ts.map +1 -0
- package/dist/ui/breadcrumb.js +73 -0
- package/dist/ui/breadcrumb.js.map +1 -0
- package/dist/ui/button.d.ts +26 -0
- package/dist/ui/button.d.ts.map +1 -0
- package/dist/ui/button.js +75 -0
- package/dist/ui/button.js.map +1 -0
- package/dist/ui/card.d.ts +44 -0
- package/dist/ui/card.d.ts.map +1 -0
- package/dist/ui/card.js +52 -0
- package/dist/ui/card.js.map +1 -0
- package/dist/ui/carousel.d.ts +5 -0
- package/dist/ui/carousel.d.ts.map +1 -0
- package/dist/ui/carousel.js +6 -0
- package/dist/ui/carousel.js.map +1 -0
- package/dist/ui/checkbox.d.ts +17 -0
- package/dist/ui/checkbox.d.ts.map +1 -0
- package/dist/ui/checkbox.js +21 -0
- package/dist/ui/checkbox.js.map +1 -0
- package/dist/ui/collapsible.d.ts +25 -0
- package/dist/ui/collapsible.d.ts.map +1 -0
- package/dist/ui/collapsible.js +10 -0
- package/dist/ui/collapsible.js.map +1 -0
- package/dist/ui/command.d.ts +5 -0
- package/dist/ui/command.d.ts.map +1 -0
- package/dist/ui/command.js +6 -0
- package/dist/ui/command.js.map +1 -0
- package/dist/ui/context-menu.d.ts +110 -0
- package/dist/ui/context-menu.d.ts.map +1 -0
- package/dist/ui/context-menu.js +108 -0
- package/dist/ui/context-menu.js.map +1 -0
- package/dist/ui/date-picker.d.ts +24 -0
- package/dist/ui/date-picker.d.ts.map +1 -0
- package/dist/ui/date-picker.js +54 -0
- package/dist/ui/date-picker.js.map +1 -0
- package/dist/ui/date-range-picker.d.ts +31 -0
- package/dist/ui/date-range-picker.d.ts.map +1 -0
- package/dist/ui/date-range-picker.js +86 -0
- package/dist/ui/date-range-picker.js.map +1 -0
- package/dist/ui/datetime-picker.d.ts +28 -0
- package/dist/ui/datetime-picker.d.ts.map +1 -0
- package/dist/ui/datetime-picker.js +45 -0
- package/dist/ui/datetime-picker.js.map +1 -0
- package/dist/ui/dialog.d.ts +69 -0
- package/dist/ui/dialog.d.ts.map +1 -0
- package/dist/ui/dialog.js +81 -0
- package/dist/ui/dialog.js.map +1 -0
- package/dist/ui/dropdown-menu.d.ts +112 -0
- package/dist/ui/dropdown-menu.d.ts.map +1 -0
- package/dist/ui/dropdown-menu.js +110 -0
- package/dist/ui/dropdown-menu.js.map +1 -0
- package/dist/ui/empty-state.d.ts +29 -0
- package/dist/ui/empty-state.d.ts.map +1 -0
- package/dist/ui/empty-state.js +46 -0
- package/dist/ui/empty-state.js.map +1 -0
- package/dist/ui/empty.d.ts +37 -0
- package/dist/ui/empty.d.ts.map +1 -0
- package/dist/ui/empty.js +63 -0
- package/dist/ui/empty.js.map +1 -0
- package/dist/ui/fab.d.ts +36 -0
- package/dist/ui/fab.d.ts.map +1 -0
- package/dist/ui/fab.js +104 -0
- package/dist/ui/fab.js.map +1 -0
- package/dist/ui/field.d.ts +67 -0
- package/dist/ui/field.d.ts.map +1 -0
- package/dist/ui/field.js +124 -0
- package/dist/ui/field.js.map +1 -0
- package/dist/ui/form.d.ts +50 -0
- package/dist/ui/form.d.ts.map +1 -0
- package/dist/ui/form.js +96 -0
- package/dist/ui/form.js.map +1 -0
- package/dist/ui/hover-card.d.ts +30 -0
- package/dist/ui/hover-card.d.ts.map +1 -0
- package/dist/ui/hover-card.js +33 -0
- package/dist/ui/hover-card.js.map +1 -0
- package/dist/ui/icons/Check.d.ts +2 -0
- package/dist/ui/icons/Check.js +9 -0
- package/dist/ui/icons/Check.js.map +1 -0
- package/dist/ui/icons/ChevronDown.d.ts +2 -0
- package/dist/ui/icons/ChevronDown.js +9 -0
- package/dist/ui/icons/ChevronDown.js.map +1 -0
- package/dist/ui/icons/ChevronRight.d.ts +2 -0
- package/dist/ui/icons/ChevronRight.js +9 -0
- package/dist/ui/icons/ChevronRight.js.map +1 -0
- package/dist/ui/icons/ChevronUp.d.ts +2 -0
- package/dist/ui/icons/ChevronUp.js +9 -0
- package/dist/ui/icons/ChevronUp.js.map +1 -0
- package/dist/ui/icons/CircleUser.d.ts +2 -0
- package/dist/ui/icons/CircleUser.js +9 -0
- package/dist/ui/icons/CircleUser.js.map +1 -0
- package/dist/ui/icons/Info.d.ts +2 -0
- package/dist/ui/icons/Info.js +9 -0
- package/dist/ui/icons/Info.js.map +1 -0
- package/dist/ui/icons/Key.d.ts +2 -0
- package/dist/ui/icons/Key.js +9 -0
- package/dist/ui/icons/Key.js.map +1 -0
- package/dist/ui/icons/MoonStar.d.ts +2 -0
- package/dist/ui/icons/MoonStar.js +9 -0
- package/dist/ui/icons/MoonStar.js.map +1 -0
- package/dist/ui/icons/Sun.d.ts +2 -0
- package/dist/ui/icons/Sun.js +9 -0
- package/dist/ui/icons/Sun.js.map +1 -0
- package/dist/ui/icons/X.d.ts +2 -0
- package/dist/ui/icons/X.js +9 -0
- package/dist/ui/icons/X.js.map +1 -0
- package/dist/ui/icons/iconWithClassName.d.ts +7 -0
- package/dist/ui/icons/iconWithClassName.d.ts.map +1 -0
- package/dist/ui/icons/iconWithClassName.js +16 -0
- package/dist/ui/icons/iconWithClassName.js.map +1 -0
- package/dist/ui/input.d.ts +15 -0
- package/dist/ui/input.d.ts.map +1 -0
- package/dist/ui/input.js +17 -0
- package/dist/ui/input.js.map +1 -0
- package/dist/ui/label.d.ts +16 -0
- package/dist/ui/label.d.ts.map +1 -0
- package/dist/ui/label.js +24 -0
- package/dist/ui/label.js.map +1 -0
- package/dist/ui/link.d.ts +14 -0
- package/dist/ui/link.d.ts.map +1 -0
- package/dist/ui/link.js +16 -0
- package/dist/ui/link.js.map +1 -0
- package/dist/ui/loading-button.d.ts +20 -0
- package/dist/ui/loading-button.d.ts.map +1 -0
- package/dist/ui/loading-button.js +22 -0
- package/dist/ui/loading-button.js.map +1 -0
- package/dist/ui/loading-overlay.d.ts +16 -0
- package/dist/ui/loading-overlay.d.ts.map +1 -0
- package/dist/ui/loading-overlay.js +44 -0
- package/dist/ui/loading-overlay.js.map +1 -0
- package/dist/ui/loading-screen.d.ts +14 -0
- package/dist/ui/loading-screen.d.ts.map +1 -0
- package/dist/ui/loading-screen.js +93 -0
- package/dist/ui/loading-screen.js.map +1 -0
- package/dist/ui/marketing/FeatureGrid.d.ts +21 -0
- package/dist/ui/marketing/FeatureGrid.d.ts.map +1 -0
- package/dist/ui/marketing/FeatureGrid.js +35 -0
- package/dist/ui/marketing/FeatureGrid.js.map +1 -0
- package/dist/ui/marketing/Hero.d.ts +28 -0
- package/dist/ui/marketing/Hero.d.ts.map +1 -0
- package/dist/ui/marketing/Hero.js +52 -0
- package/dist/ui/marketing/Hero.js.map +1 -0
- package/dist/ui/marketing/PricingTable.d.ts +25 -0
- package/dist/ui/marketing/PricingTable.d.ts.map +1 -0
- package/dist/ui/marketing/PricingTable.js +60 -0
- package/dist/ui/marketing/PricingTable.js.map +1 -0
- package/dist/ui/marketing/index.d.ts +4 -0
- package/dist/ui/marketing/index.js +5 -0
- package/dist/ui/menubar.d.ts +115 -0
- package/dist/ui/menubar.d.ts.map +1 -0
- package/dist/ui/menubar.js +120 -0
- package/dist/ui/menubar.js.map +1 -0
- package/dist/ui/molecules/Autocomplete/index.d.ts +5 -0
- package/dist/ui/molecules/Autocomplete/index.d.ts.map +1 -0
- package/dist/ui/molecules/Autocomplete/index.js +6 -0
- package/dist/ui/molecules/Autocomplete/index.js.map +1 -0
- package/dist/ui/molecules/SearchAndFilter/SearchAndFilter.d.ts +8 -0
- package/dist/ui/molecules/SearchAndFilter/SearchAndFilter.d.ts.map +1 -0
- package/dist/ui/molecules/SearchAndFilter/SearchAndFilter.js +106 -0
- package/dist/ui/molecules/SearchAndFilter/SearchAndFilter.js.map +1 -0
- package/dist/ui/molecules/SearchAndFilter/index.d.ts +3 -0
- package/dist/ui/molecules/SearchAndFilter/index.js +3 -0
- package/dist/ui/molecules/SearchAndFilter/types.d.ts +25 -0
- package/dist/ui/molecules/SearchAndFilter/types.d.ts.map +1 -0
- package/dist/ui/molecules/SearchAndFilter/types.js +0 -0
- package/dist/ui/molecules/SkeletonList.d.ts +16 -0
- package/dist/ui/molecules/SkeletonList.d.ts.map +1 -0
- package/dist/ui/molecules/SkeletonList.js +15 -0
- package/dist/ui/molecules/SkeletonList.js.map +1 -0
- package/dist/ui/nativewind-env.d.ts +1 -0
- package/dist/ui/navigation-menu.d.ts +68 -0
- package/dist/ui/navigation-menu.d.ts.map +1 -0
- package/dist/ui/navigation-menu.js +87 -0
- package/dist/ui/navigation-menu.js.map +1 -0
- package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.d.ts +30 -0
- package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.d.ts.map +1 -0
- package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.js +108 -0
- package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.js.map +1 -0
- package/dist/ui/organisms/ErrorBoundary/index.d.ts +2 -0
- package/dist/ui/organisms/ErrorBoundary/index.js +3 -0
- package/dist/ui/organisms/ListPage/ListPage.d.ts +29 -0
- package/dist/ui/organisms/ListPage/ListPage.d.ts.map +1 -0
- package/dist/ui/organisms/ListPage/ListPage.js +198 -0
- package/dist/ui/organisms/ListPage/ListPage.js.map +1 -0
- package/dist/ui/organisms/ListPage/index.d.ts +3 -0
- package/dist/ui/organisms/ListPage/index.js +3 -0
- package/dist/ui/organisms/ListPage/types.d.ts +42 -0
- package/dist/ui/organisms/ListPage/types.d.ts.map +1 -0
- package/dist/ui/organisms/ListPage/types.js +0 -0
- package/dist/ui/page-header.d.ts +27 -0
- package/dist/ui/page-header.d.ts.map +1 -0
- package/dist/ui/page-header.js +41 -0
- package/dist/ui/page-header.js.map +1 -0
- package/dist/ui/password-strength.d.ts +21 -0
- package/dist/ui/password-strength.d.ts.map +1 -0
- package/dist/ui/password-strength.js +99 -0
- package/dist/ui/password-strength.js.map +1 -0
- package/dist/ui/popover.d.ts +30 -0
- package/dist/ui/popover.d.ts.map +1 -0
- package/dist/ui/popover.js +35 -0
- package/dist/ui/popover.js.map +1 -0
- package/dist/ui/progress.d.ts +17 -0
- package/dist/ui/progress.d.ts.map +1 -0
- package/dist/ui/progress.js +40 -0
- package/dist/ui/progress.js.map +1 -0
- package/dist/ui/radio-group.d.ts +15 -0
- package/dist/ui/radio-group.d.ts.map +1 -0
- package/dist/ui/radio-group.js +23 -0
- package/dist/ui/radio-group.js.map +1 -0
- package/dist/ui/select.d.ts +84 -0
- package/dist/ui/select.d.ts.map +1 -0
- package/dist/ui/select.js +111 -0
- package/dist/ui/select.js.map +1 -0
- package/dist/ui/separator.d.ts +16 -0
- package/dist/ui/separator.d.ts.map +1 -0
- package/dist/ui/separator.js +18 -0
- package/dist/ui/separator.js.map +1 -0
- package/dist/ui/sheet.d.ts +5 -0
- package/dist/ui/sheet.d.ts.map +1 -0
- package/dist/ui/sheet.js +6 -0
- package/dist/ui/sheet.js.map +1 -0
- package/dist/ui/sidebar.d.ts +5 -0
- package/dist/ui/sidebar.d.ts.map +1 -0
- package/dist/ui/sidebar.js +6 -0
- package/dist/ui/sidebar.js.map +1 -0
- package/dist/ui/skeleton.d.ts +12 -0
- package/dist/ui/skeleton.d.ts.map +1 -0
- package/dist/ui/skeleton.js +24 -0
- package/dist/ui/skeleton.js.map +1 -0
- package/dist/ui/stack.d.ts +77 -0
- package/dist/ui/stack.d.ts.map +1 -0
- package/dist/ui/stack.js +238 -0
- package/dist/ui/stack.js.map +1 -0
- package/dist/ui/stepper.d.ts +23 -0
- package/dist/ui/stepper.d.ts.map +1 -0
- package/dist/ui/stepper.js +38 -0
- package/dist/ui/stepper.js.map +1 -0
- package/dist/ui/switch.d.ts +15 -0
- package/dist/ui/switch.d.ts.map +1 -0
- package/dist/ui/switch.js +54 -0
- package/dist/ui/switch.js.map +1 -0
- package/dist/ui/table.d.ts +51 -0
- package/dist/ui/table.d.ts.map +1 -0
- package/dist/ui/table.js +57 -0
- package/dist/ui/table.js.map +1 -0
- package/dist/ui/tabs.d.ts +33 -0
- package/dist/ui/tabs.d.ts.map +1 -0
- package/dist/ui/tabs.js +29 -0
- package/dist/ui/tabs.js.map +1 -0
- package/dist/ui/text.d.ts +21 -0
- package/dist/ui/text.d.ts.map +1 -0
- package/dist/ui/text.js +19 -0
- package/dist/ui/text.js.map +1 -0
- package/dist/ui/textarea.d.ts +10 -0
- package/dist/ui/textarea.d.ts.map +1 -0
- package/dist/ui/textarea.js +20 -0
- package/dist/ui/textarea.js.map +1 -0
- package/dist/ui/time-picker.d.ts +22 -0
- package/dist/ui/time-picker.d.ts.map +1 -0
- package/dist/ui/time-picker.js +53 -0
- package/dist/ui/time-picker.js.map +1 -0
- package/dist/ui/toggle-group.d.ts +36 -0
- package/dist/ui/toggle-group.d.ts.map +1 -0
- package/dist/ui/toggle-group.js +55 -0
- package/dist/ui/toggle-group.js.map +1 -0
- package/dist/ui/toggle.d.ts +34 -0
- package/dist/ui/toggle.d.ts.map +1 -0
- package/dist/ui/toggle.js +67 -0
- package/dist/ui/toggle.js.map +1 -0
- package/dist/ui/tooltip.d.ts +32 -0
- package/dist/ui/tooltip.d.ts.map +1 -0
- package/dist/ui/tooltip.js +41 -0
- package/dist/ui/tooltip.js.map +1 -0
- package/dist/ui/typography.d.ts +65 -0
- package/dist/ui/typography.d.ts.map +1 -0
- package/dist/ui/typography.js +88 -0
- package/dist/ui/typography.js.map +1 -0
- package/dist/ui/useColorScheme.d.ts +12 -0
- package/dist/ui/useColorScheme.d.ts.map +1 -0
- package/dist/ui/useColorScheme.js +17 -0
- package/dist/ui/useColorScheme.js.map +1 -0
- package/dist/ui/useListState.d.ts +34 -0
- package/dist/ui/useListState.d.ts.map +1 -0
- package/dist/ui/useListState.js +75 -0
- package/dist/ui/useListState.js.map +1 -0
- package/dist/ui/usecases/UseCaseCard.d.ts +19 -0
- package/dist/ui/usecases/UseCaseCard.d.ts.map +1 -0
- package/dist/ui/usecases/UseCaseCard.js +35 -0
- package/dist/ui/usecases/UseCaseCard.js.map +1 -0
- package/dist/ui/usecases/UserStoryCard.d.ts +15 -0
- package/dist/ui/usecases/UserStoryCard.d.ts.map +1 -0
- package/dist/ui/usecases/UserStoryCard.js +36 -0
- package/dist/ui/usecases/UserStoryCard.js.map +1 -0
- package/dist/ui/usecases/index.d.ts +3 -0
- package/dist/ui/usecases/index.js +4 -0
- package/dist/ui/utils.d.ts +7 -0
- package/dist/ui/utils.d.ts.map +1 -0
- package/dist/ui/utils.js +11 -0
- package/dist/ui/utils.js.map +1 -0
- package/package.json +212 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import * as AccordionPrimitive from "@rn-primitives/accordion";
|
|
2
|
+
import * as React$1 from "react";
|
|
3
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
4
|
+
|
|
5
|
+
//#region ui/accordion.d.ts
|
|
6
|
+
declare function Accordion({
|
|
7
|
+
children,
|
|
8
|
+
...props
|
|
9
|
+
}: Omit<AccordionPrimitive.RootProps, 'asChild'> & {
|
|
10
|
+
ref?: React$1.RefObject<AccordionPrimitive.RootRef>;
|
|
11
|
+
}): react_jsx_runtime0.JSX.Element;
|
|
12
|
+
declare function AccordionItem({
|
|
13
|
+
className,
|
|
14
|
+
value,
|
|
15
|
+
...props
|
|
16
|
+
}: AccordionPrimitive.ItemProps & {
|
|
17
|
+
ref?: React$1.RefObject<AccordionPrimitive.ItemRef>;
|
|
18
|
+
}): react_jsx_runtime0.JSX.Element;
|
|
19
|
+
declare function AccordionTrigger({
|
|
20
|
+
className,
|
|
21
|
+
children,
|
|
22
|
+
...props
|
|
23
|
+
}: AccordionPrimitive.TriggerProps & {
|
|
24
|
+
children?: React$1.ReactNode;
|
|
25
|
+
ref?: React$1.RefObject<AccordionPrimitive.TriggerRef>;
|
|
26
|
+
}): react_jsx_runtime0.JSX.Element;
|
|
27
|
+
declare function AccordionContent({
|
|
28
|
+
className,
|
|
29
|
+
children,
|
|
30
|
+
...props
|
|
31
|
+
}: AccordionPrimitive.ContentProps & {
|
|
32
|
+
ref?: React$1.RefObject<AccordionPrimitive.ContentRef>;
|
|
33
|
+
}): react_jsx_runtime0.JSX.Element;
|
|
34
|
+
//#endregion
|
|
35
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger };
|
|
36
|
+
//# sourceMappingURL=accordion.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"accordion.d.ts","names":[],"sources":["../../ui/accordion.tsx"],"sourcesContent":[],"mappings":";;;;;iBAkBS,SAAA;;;GAGN,KAAK,kBAAA,CAAmB;QACnB,OAAA,CAAM,UAAU,kBAAA,CAAmB;IAC1C,kBAAA,CAAA,GAAA,CAAA;AAtB8B,iBAqCtB,aAAA,CApBS;EAAA,SAAA;EAAA,KAAA;EAAA,GAAA;CAAA,EAwBf,kBAAA,CAAmB,SAxBJ,GAAA;EAChB,GAAA,CAAA,EAwBM,OAAA,CAAM,SAxBZ,CAwBsB,kBAAA,CAAmB,OAxBzC,CAAA;CAEM,CAAA,EAuBP,kBAAA,CAAA,GAAA,CAAA,OAvB0B;iBAwClB,gBAAA,CAxCN;EAAA,SAAA;EAAA,QAAA;EAAA,GAAA;CAAA,EA4CA,kBAAA,CAAmB,YA5CnB,GAAA;EACqB,QAAA,CAAA,EA4CX,OAAA,CAAM,SA5CwB;EAAnC,GAAA,CAAA,EA6CA,OAAA,CAAM,SA7CA,CA6CU,kBAAA,CAAmB,UA7C7B,CAAA;CACb,CAAA,EA6CA,kBAAA,CAAA,GAAA,CAAA,OA7CA;iBA+EQ,gBAAA,CA/ER;EAAA,SAAA;EAAA,QAAA;EAAA,GAAA;CAAA,EAmFE,kBAAA,CAAmB,YAnFrB,GAAA;EAeQ,GAAA,CAAA,EAqED,OAAA,CAAM,SArEQ,CAqEE,kBAAA,CAAmB,UArErB,CAAA;CACpB,CAAA,EAqED,kBAAA,CAAA,GAAA,CAAA,OArEC"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { ChevronDown } from "./icons/ChevronDown.js";
|
|
2
|
+
import { cn } from "./utils.js";
|
|
3
|
+
import { TextClassContext } from "./text.js";
|
|
4
|
+
import * as AccordionPrimitive from "@rn-primitives/accordion";
|
|
5
|
+
import "react";
|
|
6
|
+
import { Platform, Pressable, View } from "react-native";
|
|
7
|
+
import Animated, { Extrapolation, FadeIn, FadeOutUp, LayoutAnimationConfig, LinearTransition, interpolate, useAnimatedStyle, useDerivedValue, withTiming } from "react-native-reanimated";
|
|
8
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
|
+
|
|
10
|
+
//#region ui/accordion.tsx
|
|
11
|
+
function Accordion({ children,...props }) {
|
|
12
|
+
return /* @__PURE__ */ jsx(LayoutAnimationConfig, {
|
|
13
|
+
skipEntering: true,
|
|
14
|
+
children: /* @__PURE__ */ jsx(AccordionPrimitive.Root, {
|
|
15
|
+
...props,
|
|
16
|
+
asChild: Platform.OS !== "web",
|
|
17
|
+
children: /* @__PURE__ */ jsx(Animated.View, {
|
|
18
|
+
layout: LinearTransition.duration(200),
|
|
19
|
+
children
|
|
20
|
+
})
|
|
21
|
+
})
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
function AccordionItem({ className, value,...props }) {
|
|
25
|
+
return /* @__PURE__ */ jsx(Animated.View, {
|
|
26
|
+
className: "overflow-hidden",
|
|
27
|
+
layout: LinearTransition.duration(200),
|
|
28
|
+
children: /* @__PURE__ */ jsx(AccordionPrimitive.Item, {
|
|
29
|
+
className: cn("border-border border-b", className),
|
|
30
|
+
value,
|
|
31
|
+
...props
|
|
32
|
+
})
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
const Trigger = Platform.OS === "web" ? View : Pressable;
|
|
36
|
+
function AccordionTrigger({ className, children,...props }) {
|
|
37
|
+
const { isExpanded } = AccordionPrimitive.useItemContext();
|
|
38
|
+
const progress = useDerivedValue(() => isExpanded ? withTiming(1, { duration: 250 }) : withTiming(0, { duration: 200 }));
|
|
39
|
+
const chevronStyle = useAnimatedStyle(() => ({
|
|
40
|
+
transform: [{ rotate: `${progress.value * 180}deg` }],
|
|
41
|
+
opacity: interpolate(progress.value, [0, 1], [1, .8], Extrapolation.CLAMP)
|
|
42
|
+
}));
|
|
43
|
+
return /* @__PURE__ */ jsx(TextClassContext.Provider, {
|
|
44
|
+
value: "native:text-lg font-medium web:group-hover:underline",
|
|
45
|
+
children: /* @__PURE__ */ jsx(AccordionPrimitive.Header, {
|
|
46
|
+
className: "flex",
|
|
47
|
+
children: /* @__PURE__ */ jsx(AccordionPrimitive.Trigger, {
|
|
48
|
+
...props,
|
|
49
|
+
asChild: true,
|
|
50
|
+
children: /* @__PURE__ */ jsxs(Trigger, {
|
|
51
|
+
className: cn("group web:flex-1 web:transition-all web:focus-visible:outline-hidden web:focus-visible:ring-1 web:focus-visible:ring-muted-foreground flex flex-row items-center justify-between py-4", className),
|
|
52
|
+
children: [children, /* @__PURE__ */ jsx(Animated.View, {
|
|
53
|
+
style: chevronStyle,
|
|
54
|
+
children: /* @__PURE__ */ jsx(ChevronDown, {
|
|
55
|
+
size: 18,
|
|
56
|
+
className: "text-foreground shrink-0"
|
|
57
|
+
})
|
|
58
|
+
})]
|
|
59
|
+
})
|
|
60
|
+
})
|
|
61
|
+
})
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
function AccordionContent({ className, children,...props }) {
|
|
65
|
+
const { isExpanded } = AccordionPrimitive.useItemContext();
|
|
66
|
+
return /* @__PURE__ */ jsx(TextClassContext.Provider, {
|
|
67
|
+
value: "native:text-lg",
|
|
68
|
+
children: /* @__PURE__ */ jsx(AccordionPrimitive.Content, {
|
|
69
|
+
className: cn("web:transition-all overflow-hidden text-sm", isExpanded ? "web:animate-accordion-down" : "web:animate-accordion-up"),
|
|
70
|
+
...props,
|
|
71
|
+
children: /* @__PURE__ */ jsx(InnerContent, {
|
|
72
|
+
className: cn("pb-4", className),
|
|
73
|
+
children
|
|
74
|
+
})
|
|
75
|
+
})
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
function InnerContent({ children, className }) {
|
|
79
|
+
if (Platform.OS === "web") return /* @__PURE__ */ jsx(View, {
|
|
80
|
+
className: cn("pb-4", className),
|
|
81
|
+
children
|
|
82
|
+
});
|
|
83
|
+
return /* @__PURE__ */ jsx(Animated.View, {
|
|
84
|
+
entering: FadeIn,
|
|
85
|
+
exiting: FadeOutUp.duration(200),
|
|
86
|
+
className: cn("pb-4", className),
|
|
87
|
+
children
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
//#endregion
|
|
92
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger };
|
|
93
|
+
//# sourceMappingURL=accordion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"accordion.js","names":[],"sources":["../../ui/accordion.tsx"],"sourcesContent":["import * as AccordionPrimitive from '@rn-primitives/accordion';\nimport * as React from 'react';\nimport { Platform, Pressable, View } from 'react-native';\nimport Animated, {\n Extrapolation,\n FadeIn,\n FadeOutUp,\n interpolate,\n LayoutAnimationConfig,\n LinearTransition,\n useAnimatedStyle,\n useDerivedValue,\n withTiming,\n} from 'react-native-reanimated';\nimport { ChevronDown } from './icons/ChevronDown';\nimport { TextClassContext } from './text';\nimport { cn } from './utils';\n\nfunction Accordion({\n children,\n ...props\n}: Omit<AccordionPrimitive.RootProps, 'asChild'> & {\n ref?: React.RefObject<AccordionPrimitive.RootRef>;\n}) {\n return (\n <LayoutAnimationConfig skipEntering>\n <AccordionPrimitive.Root\n {...(props as AccordionPrimitive.RootProps)}\n asChild={Platform.OS !== 'web'}\n >\n <Animated.View layout={LinearTransition.duration(200)}>\n {children}\n </Animated.View>\n </AccordionPrimitive.Root>\n </LayoutAnimationConfig>\n );\n}\n\nfunction AccordionItem({\n className,\n value,\n ...props\n}: AccordionPrimitive.ItemProps & {\n ref?: React.RefObject<AccordionPrimitive.ItemRef>;\n}) {\n return (\n <Animated.View\n className={'overflow-hidden'}\n layout={LinearTransition.duration(200)}\n >\n <AccordionPrimitive.Item\n className={cn('border-border border-b', className)}\n value={value}\n {...props}\n />\n </Animated.View>\n );\n}\n\nconst Trigger = Platform.OS === 'web' ? View : Pressable;\n\nfunction AccordionTrigger({\n className,\n children,\n ...props\n}: AccordionPrimitive.TriggerProps & {\n children?: React.ReactNode;\n ref?: React.RefObject<AccordionPrimitive.TriggerRef>;\n}) {\n const { isExpanded } = AccordionPrimitive.useItemContext();\n\n const progress = useDerivedValue(() =>\n isExpanded\n ? withTiming(1, { duration: 250 })\n : withTiming(0, { duration: 200 })\n );\n const chevronStyle = useAnimatedStyle(() => ({\n transform: [{ rotate: `${progress.value * 180}deg` }],\n opacity: interpolate(progress.value, [0, 1], [1, 0.8], Extrapolation.CLAMP),\n }));\n\n return (\n <TextClassContext.Provider value=\"native:text-lg font-medium web:group-hover:underline\">\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger {...props} asChild>\n <Trigger\n className={cn(\n 'group web:flex-1 web:transition-all web:focus-visible:outline-hidden web:focus-visible:ring-1 web:focus-visible:ring-muted-foreground flex flex-row items-center justify-between py-4',\n className\n )}\n >\n {children}\n <Animated.View style={chevronStyle}>\n <ChevronDown size={18} className={'text-foreground shrink-0'} />\n </Animated.View>\n </Trigger>\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n </TextClassContext.Provider>\n );\n}\n\nfunction AccordionContent({\n className,\n children,\n ...props\n}: AccordionPrimitive.ContentProps & {\n ref?: React.RefObject<AccordionPrimitive.ContentRef>;\n}) {\n const { isExpanded } = AccordionPrimitive.useItemContext();\n return (\n <TextClassContext.Provider value=\"native:text-lg\">\n <AccordionPrimitive.Content\n className={cn(\n 'web:transition-all overflow-hidden text-sm',\n isExpanded ? 'web:animate-accordion-down' : 'web:animate-accordion-up'\n )}\n {...props}\n >\n <InnerContent className={cn('pb-4', className)}>\n {children}\n </InnerContent>\n </AccordionPrimitive.Content>\n </TextClassContext.Provider>\n );\n}\n\nfunction InnerContent({\n children,\n className,\n}: {\n children: React.ReactNode;\n className?: string;\n}) {\n if (Platform.OS === 'web') {\n return <View className={cn('pb-4', className)}>{children}</View>;\n }\n return (\n <Animated.View\n entering={FadeIn}\n exiting={FadeOutUp.duration(200)}\n className={cn('pb-4', className)}\n >\n {children}\n </Animated.View>\n );\n}\n\nexport { Accordion, AccordionContent, AccordionItem, AccordionTrigger };\n"],"mappings":";;;;;;;;;;AAkBA,SAAS,UAAU,EACjB,SACA,GAAG,SAGF;AACD,QACE,oBAAC;EAAsB;YACrB,oBAAC,mBAAmB;GAClB,GAAK;GACL,SAAS,SAAS,OAAO;aAEzB,oBAAC,SAAS;IAAK,QAAQ,iBAAiB,SAAS,IAAI;IAClD;KACa;IACQ;GACJ;;AAI5B,SAAS,cAAc,EACrB,WACA,MACA,GAAG,SAGF;AACD,QACE,oBAAC,SAAS;EACR,WAAW;EACX,QAAQ,iBAAiB,SAAS,IAAI;YAEtC,oBAAC,mBAAmB;GAClB,WAAW,GAAG,0BAA0B,UAAU;GAC3C;GACP,GAAI;IACJ;GACY;;AAIpB,MAAM,UAAU,SAAS,OAAO,QAAQ,OAAO;AAE/C,SAAS,iBAAiB,EACxB,WACA,SACA,GAAG,SAIF;CACD,MAAM,EAAE,eAAe,mBAAmB,gBAAgB;CAE1D,MAAM,WAAW,sBACf,aACI,WAAW,GAAG,EAAE,UAAU,KAAK,CAAC,GAChC,WAAW,GAAG,EAAE,UAAU,KAAK,CAAC,CACrC;CACD,MAAM,eAAe,wBAAwB;EAC3C,WAAW,CAAC,EAAE,QAAQ,GAAG,SAAS,QAAQ,IAAI,MAAM,CAAC;EACrD,SAAS,YAAY,SAAS,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,GAAI,EAAE,cAAc,MAAM;EAC5E,EAAE;AAEH,QACE,oBAAC,iBAAiB;EAAS,OAAM;YAC/B,oBAAC,mBAAmB;GAAO,WAAU;aACnC,oBAAC,mBAAmB;IAAQ,GAAI;IAAO;cACrC,qBAAC;KACC,WAAW,GACT,yLACA,UACD;gBAEA,UACD,oBAAC,SAAS;MAAK,OAAO;gBACpB,oBAAC;OAAY,MAAM;OAAI,WAAW;QAA8B;OAClD;MACR;KACiB;IACH;GACF;;AAIhC,SAAS,iBAAiB,EACxB,WACA,SACA,GAAG,SAGF;CACD,MAAM,EAAE,eAAe,mBAAmB,gBAAgB;AAC1D,QACE,oBAAC,iBAAiB;EAAS,OAAM;YAC/B,oBAAC,mBAAmB;GAClB,WAAW,GACT,8CACA,aAAa,+BAA+B,2BAC7C;GACD,GAAI;aAEJ,oBAAC;IAAa,WAAW,GAAG,QAAQ,UAAU;IAC3C;KACY;IACY;GACH;;AAIhC,SAAS,aAAa,EACpB,UACA,aAIC;AACD,KAAI,SAAS,OAAO,MAClB,QAAO,oBAAC;EAAK,WAAW,GAAG,QAAQ,UAAU;EAAG;GAAgB;AAElE,QACE,oBAAC,SAAS;EACR,UAAU;EACV,SAAS,UAAU,SAAS,IAAI;EAChC,WAAW,GAAG,QAAQ,UAAU;EAE/B;GACa"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import * as React$1 from "react";
|
|
2
|
+
import * as react_native0 from "react-native";
|
|
3
|
+
import { View, ViewProps } from "react-native";
|
|
4
|
+
import * as react_jsx_runtime4 from "react/jsx-runtime";
|
|
5
|
+
import * as AlertDialogPrimitive from "@rn-primitives/alert-dialog";
|
|
6
|
+
|
|
7
|
+
//#region ui/alert-dialog.d.ts
|
|
8
|
+
declare const AlertDialog: React$1.ForwardRefExoticComponent<{
|
|
9
|
+
open?: boolean;
|
|
10
|
+
onOpenChange?: (value: boolean) => void;
|
|
11
|
+
defaultOpen?: boolean;
|
|
12
|
+
} & ViewProps & {
|
|
13
|
+
asChild?: boolean;
|
|
14
|
+
} & React$1.RefAttributes<View>>;
|
|
15
|
+
declare const AlertDialogTrigger: React$1.ForwardRefExoticComponent<Omit<react_native0.PressableProps & React$1.RefAttributes<View>, "ref"> & {
|
|
16
|
+
asChild?: boolean;
|
|
17
|
+
} & {
|
|
18
|
+
onKeyDown?: (ev: React$1.KeyboardEvent) => void;
|
|
19
|
+
onKeyUp?: (ev: React$1.KeyboardEvent) => void;
|
|
20
|
+
} & React$1.RefAttributes<View>>;
|
|
21
|
+
declare const AlertDialogPortal: typeof AlertDialogPrimitive.Portal;
|
|
22
|
+
declare function AlertDialogOverlayNative({
|
|
23
|
+
className,
|
|
24
|
+
children,
|
|
25
|
+
...props
|
|
26
|
+
}: AlertDialogPrimitive.OverlayProps & {
|
|
27
|
+
ref?: React$1.RefObject<AlertDialogPrimitive.OverlayRef>;
|
|
28
|
+
}): react_jsx_runtime4.JSX.Element;
|
|
29
|
+
declare const AlertDialogOverlay: typeof AlertDialogOverlayNative;
|
|
30
|
+
declare function AlertDialogContent({
|
|
31
|
+
className,
|
|
32
|
+
portalHost,
|
|
33
|
+
...props
|
|
34
|
+
}: AlertDialogPrimitive.ContentProps & {
|
|
35
|
+
ref?: React$1.RefObject<AlertDialogPrimitive.ContentRef>;
|
|
36
|
+
portalHost?: string;
|
|
37
|
+
}): react_jsx_runtime4.JSX.Element;
|
|
38
|
+
declare function AlertDialogHeader({
|
|
39
|
+
className,
|
|
40
|
+
...props
|
|
41
|
+
}: ViewProps): react_jsx_runtime4.JSX.Element;
|
|
42
|
+
declare function AlertDialogFooter({
|
|
43
|
+
className,
|
|
44
|
+
...props
|
|
45
|
+
}: ViewProps): react_jsx_runtime4.JSX.Element;
|
|
46
|
+
declare function AlertDialogTitle({
|
|
47
|
+
className,
|
|
48
|
+
...props
|
|
49
|
+
}: AlertDialogPrimitive.TitleProps & {
|
|
50
|
+
ref?: React$1.RefObject<AlertDialogPrimitive.TitleRef>;
|
|
51
|
+
}): react_jsx_runtime4.JSX.Element;
|
|
52
|
+
declare function AlertDialogDescription({
|
|
53
|
+
className,
|
|
54
|
+
...props
|
|
55
|
+
}: AlertDialogPrimitive.DescriptionProps & {
|
|
56
|
+
ref?: React$1.RefObject<AlertDialogPrimitive.DescriptionRef>;
|
|
57
|
+
}): react_jsx_runtime4.JSX.Element;
|
|
58
|
+
declare function AlertDialogAction({
|
|
59
|
+
className,
|
|
60
|
+
...props
|
|
61
|
+
}: AlertDialogPrimitive.ActionProps & {
|
|
62
|
+
ref?: React$1.RefObject<AlertDialogPrimitive.ActionRef>;
|
|
63
|
+
}): react_jsx_runtime4.JSX.Element;
|
|
64
|
+
declare function AlertDialogCancel({
|
|
65
|
+
className,
|
|
66
|
+
...props
|
|
67
|
+
}: AlertDialogPrimitive.CancelProps & {
|
|
68
|
+
ref?: React$1.RefObject<AlertDialogPrimitive.CancelRef>;
|
|
69
|
+
}): react_jsx_runtime4.JSX.Element;
|
|
70
|
+
//#endregion
|
|
71
|
+
export { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger };
|
|
72
|
+
//# sourceMappingURL=alert-dialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alert-dialog.d.ts","names":[],"sources":["../../ui/alert-dialog.tsx"],"sourcesContent":[],"mappings":";;;;;;;cAQM,aAAW,OAAA,CAAA;;;;AAN6C,CAAA,YAMxD,GAAA;;;cAEA,oBAAkB,OAAA,CAAA,0BAAA,KAA+B,aAAA,CAA/B,cAAA,GAAA,OAAA,CAAA,cAAA;EAFP,OAAA,CAAA,EAAA,OAAA;CAAA,GAAA;EAEX,SAAA,CAAA,EAAA,CAAA,EAAA,uBAAiD,EAAA,GAAA,IAAA;EAAA,OAAA,CAAA,EAAA,CAA/B,EAAA,uBAAA,EAAA,GAAA,IAAA;CAAA,wBAAA,KAAA,CAAA,CAAA;cAElB,iBAFkB,EAAA,OAED,oBAAA,CAAA,MAFC;iBAyBf,wBAAA,CAzBe;EAAA,SAAA;EAAA,QAAA;EAAA,GAAA;CAAA,EA6BrB,oBAAA,CAAqB,YA7BA,GAAA;QA8BhB,OAAA,CAAM,UAAU,oBAAA,CAAqB;IAC5C,kBAAA,CAAA,GAAA,CAAA;cAoBK,2BAAkB;iBAKf,kBAAA;;;;AAxDe,GA4DrB,oBAAA,CAAqB;EA5DA,GAAA,CAAA,EA6DhB,OAAA,CAAM,SA7DU,CA6DA,oBAAA,CAAqB,UA7DrB,CAAA;EAAA,UAAA,CAAA,EAAA,MAAA;AAAA,CAAA,CAAA,EA+DvB,kBAAA,CAAA,GAAA,CAAA,OA7DsB;AAA8B,iBAkF5C,iBAAA,CA3DwB;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA2DmB,SA3DnB,CAAA,EA2D4B,kBAAA,CAAA,GAAA,CAAA,OA3D5B;iBA+DxB,iBAAA,CA9DP;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA8DkD,SA9DlD,CAAA,EA8D2D,kBAAA,CAAA,GAAA,CAAA,OA9D3D;iBA0EO,gBAAA,CAzEP;EAAA,SAAA;EAAA,GAAA;CAAA,EA4EC,oBAAA,CAAqB,UA5EtB,GAAA;EAEC,GAAA,CAAA,EA2EK,OAAA,CAAM,SA3EU,CA2EA,oBAAA,CAAqB,QA3ErB,CAAA;CACA,CAAA,EA2EvB,kBAAA,CAAA,GAAA,CAAA,OA3E4C;iBAuFpC,sBAAA,CAvFK;EAAA,SAAA;EAAA,GAAA;CAAA,EA0FX,oBAAA,CAAqB,gBA1FV,GAAA;EACb,GAAA,CAAA,EA0FO,OAAA,CAAM,SA1Fb,CA0FuB,oBAAA,CAAqB,cA1F5C,CAAA;CAAA,CAAA,EA2FA,kBAAA,CAAA,GAAA,CAAA,OA3FA;AAAA,iBAuGQ,iBAAA,CAhFP;EAHsB,SAAA;EAAA,GAAA;CAAA,EAsFrB,oBAAA,CAAqB,WAnFtB,GAAA;EAEO,GAAA,CAAA,EAkFD,OAAA,CAAM,SAlFa,CAkFH,oBAAA,CAAqB,SAlFlB,CAAA;CACzB,CAAA,EAkFD,kBAAA,CAAA,GAAA,CAAA,OAlFC;iBA6FO,iBAAA,CA5FP;EAAA,SAAA;EAAA,GAAA;CAAA,EA+FC,oBAAA,CAAqB,WA/FtB,GAAA;EAEC,GAAA,CAAA,EA8FK,OAAA,CAAM,SA9FU,CA8FA,oBAAA,CAAqB,SA9FrB,CAAA;CACA,CAAA,EA8FvB,kBAAA,CAAA,GAAA,CAAA,OA9F4C"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { cn } from "./utils.js";
|
|
2
|
+
import { TextClassContext } from "./text.js";
|
|
3
|
+
import { buttonTextVariants, buttonVariants } from "./button.js";
|
|
4
|
+
import "react";
|
|
5
|
+
import { Platform, View } from "react-native";
|
|
6
|
+
import Animated, { FadeIn, FadeOut } from "react-native-reanimated";
|
|
7
|
+
import { jsx } from "react/jsx-runtime";
|
|
8
|
+
import * as AlertDialogPrimitive from "@rn-primitives/alert-dialog";
|
|
9
|
+
|
|
10
|
+
//#region ui/alert-dialog.tsx
|
|
11
|
+
const AlertDialog = AlertDialogPrimitive.Root;
|
|
12
|
+
const AlertDialogTrigger = AlertDialogPrimitive.Trigger;
|
|
13
|
+
const AlertDialogPortal = AlertDialogPrimitive.Portal;
|
|
14
|
+
function AlertDialogOverlayWeb({ className,...props }) {
|
|
15
|
+
const { open } = AlertDialogPrimitive.useRootContext();
|
|
16
|
+
return /* @__PURE__ */ jsx(AlertDialogPrimitive.Overlay, {
|
|
17
|
+
className: cn("absolute top-0 right-0 bottom-0 left-0 z-50 flex items-center justify-center bg-black/80 p-2", open ? "web:animate-in web:fade-in-0" : "web:animate-out web:fade-out-0", className),
|
|
18
|
+
...props
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
function AlertDialogOverlayNative({ className, children,...props }) {
|
|
22
|
+
return /* @__PURE__ */ jsx(AlertDialogPrimitive.Overlay, {
|
|
23
|
+
className: cn("absolute top-0 right-0 bottom-0 left-0 z-50 flex items-center justify-center bg-black/80 p-2", className),
|
|
24
|
+
...props,
|
|
25
|
+
asChild: true,
|
|
26
|
+
children: /* @__PURE__ */ jsx(Animated.View, {
|
|
27
|
+
entering: FadeIn.duration(150),
|
|
28
|
+
exiting: FadeOut.duration(150),
|
|
29
|
+
children
|
|
30
|
+
})
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
const AlertDialogOverlay = Platform.select({
|
|
34
|
+
web: AlertDialogOverlayWeb,
|
|
35
|
+
default: AlertDialogOverlayNative
|
|
36
|
+
});
|
|
37
|
+
function AlertDialogContent({ className, portalHost,...props }) {
|
|
38
|
+
const { open } = AlertDialogPrimitive.useRootContext();
|
|
39
|
+
return /* @__PURE__ */ jsx(AlertDialogPortal, {
|
|
40
|
+
hostName: portalHost,
|
|
41
|
+
children: /* @__PURE__ */ jsx(AlertDialogOverlay, { children: /* @__PURE__ */ jsx(AlertDialogPrimitive.Content, {
|
|
42
|
+
className: cn("border-border bg-background shadow-foreground/10 web:duration-200 z-50 max-w-lg gap-4 rounded-lg border p-6 shadow-lg", open ? "web:animate-in web:fade-in-0 web:zoom-in-95" : "web:animate-out web:fade-out-0 web:zoom-out-95", className),
|
|
43
|
+
...props
|
|
44
|
+
}) })
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
function AlertDialogHeader({ className,...props }) {
|
|
48
|
+
return /* @__PURE__ */ jsx(View, {
|
|
49
|
+
className: cn("flex flex-col gap-2", className),
|
|
50
|
+
...props
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
function AlertDialogFooter({ className,...props }) {
|
|
54
|
+
return /* @__PURE__ */ jsx(View, {
|
|
55
|
+
className: cn("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end", className),
|
|
56
|
+
...props
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
function AlertDialogTitle({ className,...props }) {
|
|
60
|
+
return /* @__PURE__ */ jsx(AlertDialogPrimitive.Title, {
|
|
61
|
+
className: cn("native:text-xl text-foreground text-lg font-semibold", className),
|
|
62
|
+
...props
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
function AlertDialogDescription({ className,...props }) {
|
|
66
|
+
return /* @__PURE__ */ jsx(AlertDialogPrimitive.Description, {
|
|
67
|
+
className: cn("native:text-base text-muted-foreground text-sm", className),
|
|
68
|
+
...props
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
function AlertDialogAction({ className,...props }) {
|
|
72
|
+
return /* @__PURE__ */ jsx(TextClassContext.Provider, {
|
|
73
|
+
value: buttonTextVariants({ className }),
|
|
74
|
+
children: /* @__PURE__ */ jsx(AlertDialogPrimitive.Action, {
|
|
75
|
+
className: cn(buttonVariants(), className),
|
|
76
|
+
...props
|
|
77
|
+
})
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
function AlertDialogCancel({ className,...props }) {
|
|
81
|
+
return /* @__PURE__ */ jsx(TextClassContext.Provider, {
|
|
82
|
+
value: buttonTextVariants({
|
|
83
|
+
className,
|
|
84
|
+
variant: "outline"
|
|
85
|
+
}),
|
|
86
|
+
children: /* @__PURE__ */ jsx(AlertDialogPrimitive.Cancel, {
|
|
87
|
+
className: cn(buttonVariants({
|
|
88
|
+
variant: "outline",
|
|
89
|
+
className
|
|
90
|
+
})),
|
|
91
|
+
...props
|
|
92
|
+
})
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
//#endregion
|
|
97
|
+
export { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger };
|
|
98
|
+
//# sourceMappingURL=alert-dialog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alert-dialog.js","names":[],"sources":["../../ui/alert-dialog.tsx"],"sourcesContent":["import * as AlertDialogPrimitive from '@rn-primitives/alert-dialog';\nimport * as React from 'react';\nimport { Platform, View, type ViewProps } from 'react-native';\nimport Animated, { FadeIn, FadeOut } from 'react-native-reanimated';\nimport { buttonTextVariants, buttonVariants } from './button';\nimport { cn } from './utils';\nimport { TextClassContext } from './text';\n\nconst AlertDialog = AlertDialogPrimitive.Root;\n\nconst AlertDialogTrigger = AlertDialogPrimitive.Trigger;\n\nconst AlertDialogPortal = AlertDialogPrimitive.Portal;\n\nfunction AlertDialogOverlayWeb({\n className,\n ...props\n}: AlertDialogPrimitive.OverlayProps & {\n ref?: React.RefObject<AlertDialogPrimitive.OverlayRef>;\n}) {\n const { open } = AlertDialogPrimitive.useRootContext();\n return (\n <AlertDialogPrimitive.Overlay\n className={cn(\n 'absolute top-0 right-0 bottom-0 left-0 z-50 flex items-center justify-center bg-black/80 p-2',\n open\n ? 'web:animate-in web:fade-in-0'\n : 'web:animate-out web:fade-out-0',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction AlertDialogOverlayNative({\n className,\n children,\n ...props\n}: AlertDialogPrimitive.OverlayProps & {\n ref?: React.RefObject<AlertDialogPrimitive.OverlayRef>;\n}) {\n return (\n <AlertDialogPrimitive.Overlay\n className={cn(\n 'absolute top-0 right-0 bottom-0 left-0 z-50 flex items-center justify-center bg-black/80 p-2',\n className\n )}\n {...props}\n asChild\n >\n <Animated.View\n entering={FadeIn.duration(150)}\n exiting={FadeOut.duration(150)}\n >\n {children}\n </Animated.View>\n </AlertDialogPrimitive.Overlay>\n );\n}\n\nconst AlertDialogOverlay = Platform.select({\n web: AlertDialogOverlayWeb,\n default: AlertDialogOverlayNative,\n});\n\nfunction AlertDialogContent({\n className,\n portalHost,\n ...props\n}: AlertDialogPrimitive.ContentProps & {\n ref?: React.RefObject<AlertDialogPrimitive.ContentRef>;\n portalHost?: string;\n}) {\n const { open } = AlertDialogPrimitive.useRootContext();\n\n return (\n <AlertDialogPortal hostName={portalHost}>\n <AlertDialogOverlay>\n <AlertDialogPrimitive.Content\n className={cn(\n 'border-border bg-background shadow-foreground/10 web:duration-200 z-50 max-w-lg gap-4 rounded-lg border p-6 shadow-lg',\n open\n ? 'web:animate-in web:fade-in-0 web:zoom-in-95'\n : 'web:animate-out web:fade-out-0 web:zoom-out-95',\n className\n )}\n {...props}\n />\n </AlertDialogOverlay>\n </AlertDialogPortal>\n );\n}\n\nfunction AlertDialogHeader({ className, ...props }: ViewProps) {\n return <View className={cn('flex flex-col gap-2', className)} {...props} />;\n}\n\nfunction AlertDialogFooter({ className, ...props }: ViewProps) {\n return (\n <View\n className={cn(\n 'flex flex-col-reverse gap-2 sm:flex-row sm:justify-end',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction AlertDialogTitle({\n className,\n ...props\n}: AlertDialogPrimitive.TitleProps & {\n ref?: React.RefObject<AlertDialogPrimitive.TitleRef>;\n}) {\n return (\n <AlertDialogPrimitive.Title\n className={cn(\n 'native:text-xl text-foreground text-lg font-semibold',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction AlertDialogDescription({\n className,\n ...props\n}: AlertDialogPrimitive.DescriptionProps & {\n ref?: React.RefObject<AlertDialogPrimitive.DescriptionRef>;\n}) {\n return (\n <AlertDialogPrimitive.Description\n className={cn(\n 'native:text-base text-muted-foreground text-sm',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction AlertDialogAction({\n className,\n ...props\n}: AlertDialogPrimitive.ActionProps & {\n ref?: React.RefObject<AlertDialogPrimitive.ActionRef>;\n}) {\n return (\n <TextClassContext.Provider value={buttonTextVariants({ className })}>\n <AlertDialogPrimitive.Action\n className={cn(buttonVariants(), className)}\n {...props}\n />\n </TextClassContext.Provider>\n );\n}\n\nfunction AlertDialogCancel({\n className,\n ...props\n}: AlertDialogPrimitive.CancelProps & {\n ref?: React.RefObject<AlertDialogPrimitive.CancelRef>;\n}) {\n return (\n <TextClassContext.Provider\n value={buttonTextVariants({ className, variant: 'outline' })}\n >\n <AlertDialogPrimitive.Cancel\n className={cn(buttonVariants({ variant: 'outline', className }))}\n {...props}\n />\n </TextClassContext.Provider>\n );\n}\n\nexport {\n AlertDialog,\n AlertDialogAction,\n AlertDialogCancel,\n AlertDialogContent,\n AlertDialogDescription,\n AlertDialogFooter,\n AlertDialogHeader,\n AlertDialogOverlay,\n AlertDialogPortal,\n AlertDialogTitle,\n AlertDialogTrigger,\n};\n"],"mappings":";;;;;;;;;;AAQA,MAAM,cAAc,qBAAqB;AAEzC,MAAM,qBAAqB,qBAAqB;AAEhD,MAAM,oBAAoB,qBAAqB;AAE/C,SAAS,sBAAsB,EAC7B,UACA,GAAG,SAGF;CACD,MAAM,EAAE,SAAS,qBAAqB,gBAAgB;AACtD,QACE,oBAAC,qBAAqB;EACpB,WAAW,GACT,gGACA,OACI,iCACA,kCACJ,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,yBAAyB,EAChC,WACA,SACA,GAAG,SAGF;AACD,QACE,oBAAC,qBAAqB;EACpB,WAAW,GACT,gGACA,UACD;EACD,GAAI;EACJ;YAEA,oBAAC,SAAS;GACR,UAAU,OAAO,SAAS,IAAI;GAC9B,SAAS,QAAQ,SAAS,IAAI;GAE7B;IACa;GACa;;AAInC,MAAM,qBAAqB,SAAS,OAAO;CACzC,KAAK;CACL,SAAS;CACV,CAAC;AAEF,SAAS,mBAAmB,EAC1B,WACA,WACA,GAAG,SAIF;CACD,MAAM,EAAE,SAAS,qBAAqB,gBAAgB;AAEtD,QACE,oBAAC;EAAkB,UAAU;YAC3B,oBAAC,gCACC,oBAAC,qBAAqB;GACpB,WAAW,GACT,yHACA,OACI,gDACA,kDACJ,UACD;GACD,GAAI;IACJ,GACiB;GACH;;AAIxB,SAAS,kBAAkB,EAAE,UAAW,GAAG,SAAoB;AAC7D,QAAO,oBAAC;EAAK,WAAW,GAAG,uBAAuB,UAAU;EAAE,GAAI;GAAS;;AAG7E,SAAS,kBAAkB,EAAE,UAAW,GAAG,SAAoB;AAC7D,QACE,oBAAC;EACC,WAAW,GACT,0DACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,iBAAiB,EACxB,UACA,GAAG,SAGF;AACD,QACE,oBAAC,qBAAqB;EACpB,WAAW,GACT,wDACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,uBAAuB,EAC9B,UACA,GAAG,SAGF;AACD,QACE,oBAAC,qBAAqB;EACpB,WAAW,GACT,kDACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,kBAAkB,EACzB,UACA,GAAG,SAGF;AACD,QACE,oBAAC,iBAAiB;EAAS,OAAO,mBAAmB,EAAE,WAAW,CAAC;YACjE,oBAAC,qBAAqB;GACpB,WAAW,GAAG,gBAAgB,EAAE,UAAU;GAC1C,GAAI;IACJ;GACwB;;AAIhC,SAAS,kBAAkB,EACzB,UACA,GAAG,SAGF;AACD,QACE,oBAAC,iBAAiB;EAChB,OAAO,mBAAmB;GAAE;GAAW,SAAS;GAAW,CAAC;YAE5D,oBAAC,qBAAqB;GACpB,WAAW,GAAG,eAAe;IAAE,SAAS;IAAW;IAAW,CAAC,CAAC;GAChE,GAAI;IACJ;GACwB"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Text as Text$1 } from "./text.js";
|
|
2
|
+
import * as React$1 from "react";
|
|
3
|
+
import { View, ViewProps } from "react-native";
|
|
4
|
+
import { LucideIcon } from "lucide-react-native";
|
|
5
|
+
import * as react_jsx_runtime13 from "react/jsx-runtime";
|
|
6
|
+
import { VariantProps } from "class-variance-authority";
|
|
7
|
+
import * as class_variance_authority_types0 from "class-variance-authority/types";
|
|
8
|
+
|
|
9
|
+
//#region ui/alert.d.ts
|
|
10
|
+
declare const alertVariants: (props?: ({
|
|
11
|
+
variant?: "default" | "destructive" | null | undefined;
|
|
12
|
+
} & class_variance_authority_types0.ClassProp) | undefined) => string;
|
|
13
|
+
declare function Alert({
|
|
14
|
+
className,
|
|
15
|
+
variant,
|
|
16
|
+
children,
|
|
17
|
+
icon: Icon,
|
|
18
|
+
iconSize,
|
|
19
|
+
iconClassName,
|
|
20
|
+
...props
|
|
21
|
+
}: ViewProps & VariantProps<typeof alertVariants> & {
|
|
22
|
+
ref?: React$1.RefObject<View>;
|
|
23
|
+
icon: LucideIcon;
|
|
24
|
+
iconSize?: number;
|
|
25
|
+
iconClassName?: string;
|
|
26
|
+
}): react_jsx_runtime13.JSX.Element;
|
|
27
|
+
declare function AlertTitle({
|
|
28
|
+
className,
|
|
29
|
+
...props
|
|
30
|
+
}: React$1.ComponentProps<typeof Text$1>): react_jsx_runtime13.JSX.Element;
|
|
31
|
+
declare function AlertDescription({
|
|
32
|
+
className,
|
|
33
|
+
...props
|
|
34
|
+
}: React$1.ComponentProps<typeof Text$1>): react_jsx_runtime13.JSX.Element;
|
|
35
|
+
//#endregion
|
|
36
|
+
export { Alert, AlertDescription, AlertTitle };
|
|
37
|
+
//# sourceMappingURL=alert.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alert.d.ts","names":[],"sources":["../../ui/alert.tsx"],"sourcesContent":[],"mappings":";;;;;;;;;cAQM;;IAaL,+BAAA,CAAA;iBAEQ,KAAA;;;;QAID;;;;GAIL,YACD,oBAAoB;EAxBhB,GAAA,CAAA,EAyBI,OAAA,CAAM,SAZf,CAYyB,IAZzB,CAAA;EAEQ,IAAA,EAWC,UAXI;EACZ,QAAA,CAAA,EAAA,MAAA;EACA,aAAA,CAAA,EAAA,MAAA;CACA,CAAA,EAWC,mBAAA,CAAA,GAAA,CAAA,OAXD;iBA8BO,UAAA,CA7BD;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAgCL,OAAA,CAAM,cAhCD,CAAA,OAgCuB,MAhCvB,CAAA,CAAA,EAgC4B,mBAAA,CAAA,GAAA,CAAA,OAhC5B;iBA4CC,gBAAA,CA3CP;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA8CC,OAAA,CAAM,cA9CP,CAAA,OA8C6B,MA9C7B,CAAA,CAAA,EA8CkC,mBAAA,CAAA,GAAA,CAAA,OA9ClC"}
|
package/dist/ui/alert.js
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { cn } from "./utils.js";
|
|
2
|
+
import { Text as Text$1 } from "./text.js";
|
|
3
|
+
import "react";
|
|
4
|
+
import { View } from "react-native";
|
|
5
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
+
import { cva } from "class-variance-authority";
|
|
7
|
+
import { useTheme } from "@react-navigation/native";
|
|
8
|
+
|
|
9
|
+
//#region ui/alert.tsx
|
|
10
|
+
const alertVariants = cva("relative bg-background w-full rounded-lg border border-border p-4 shadow-2xs shadow-foreground/10", {
|
|
11
|
+
variants: { variant: {
|
|
12
|
+
default: "",
|
|
13
|
+
destructive: "border-destructive"
|
|
14
|
+
} },
|
|
15
|
+
defaultVariants: { variant: "default" }
|
|
16
|
+
});
|
|
17
|
+
function Alert({ className, variant, children, icon: Icon, iconSize = 16, iconClassName,...props }) {
|
|
18
|
+
const { colors } = useTheme();
|
|
19
|
+
return /* @__PURE__ */ jsxs(View, {
|
|
20
|
+
role: "alert",
|
|
21
|
+
className: alertVariants({
|
|
22
|
+
variant,
|
|
23
|
+
className
|
|
24
|
+
}),
|
|
25
|
+
...props,
|
|
26
|
+
children: [/* @__PURE__ */ jsx(View, {
|
|
27
|
+
className: "absolute top-4 left-3.5 -translate-y-0.5",
|
|
28
|
+
children: /* @__PURE__ */ jsx(Icon, {
|
|
29
|
+
size: iconSize,
|
|
30
|
+
color: variant === "destructive" ? colors.notification : colors.text
|
|
31
|
+
})
|
|
32
|
+
}), children]
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
function AlertTitle({ className,...props }) {
|
|
36
|
+
return /* @__PURE__ */ jsx(Text$1, {
|
|
37
|
+
className: cn("text-foreground mb-1 pl-7 text-base leading-none font-medium tracking-tight", className),
|
|
38
|
+
...props
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
function AlertDescription({ className,...props }) {
|
|
42
|
+
return /* @__PURE__ */ jsx(Text$1, {
|
|
43
|
+
className: cn("text-foreground pl-7 text-sm leading-relaxed", className),
|
|
44
|
+
...props
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
//#endregion
|
|
49
|
+
export { Alert, AlertDescription, AlertTitle };
|
|
50
|
+
//# sourceMappingURL=alert.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alert.js","names":["Text"],"sources":["../../ui/alert.tsx"],"sourcesContent":["import { useTheme } from '@react-navigation/native';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport type { LucideIcon } from 'lucide-react-native';\nimport * as React from 'react';\nimport { View, type ViewProps } from 'react-native';\nimport { cn } from './utils';\nimport { Text } from './text';\n\nconst alertVariants = cva(\n 'relative bg-background w-full rounded-lg border border-border p-4 shadow-2xs shadow-foreground/10',\n {\n variants: {\n variant: {\n default: '',\n destructive: 'border-destructive',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n }\n);\n\nfunction Alert({\n className,\n variant,\n children,\n icon: Icon,\n iconSize = 16,\n iconClassName,\n ...props\n}: ViewProps &\n VariantProps<typeof alertVariants> & {\n ref?: React.RefObject<View>;\n icon: LucideIcon;\n iconSize?: number;\n iconClassName?: string;\n }) {\n const { colors } = useTheme();\n return (\n <View\n role=\"alert\"\n className={alertVariants({ variant, className })}\n {...props}\n >\n <View className=\"absolute top-4 left-3.5 -translate-y-0.5\">\n <Icon\n size={iconSize}\n color={variant === 'destructive' ? colors.notification : colors.text}\n />\n </View>\n {children}\n </View>\n );\n}\n\nfunction AlertTitle({\n className,\n ...props\n}: React.ComponentProps<typeof Text>) {\n return (\n <Text\n className={cn(\n 'text-foreground mb-1 pl-7 text-base leading-none font-medium tracking-tight',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction AlertDescription({\n className,\n ...props\n}: React.ComponentProps<typeof Text>) {\n return (\n <Text\n className={cn('text-foreground pl-7 text-sm leading-relaxed', className)}\n {...props}\n />\n );\n}\n\nexport { Alert, AlertDescription, AlertTitle };\n"],"mappings":";;;;;;;;;AAQA,MAAM,gBAAgB,IACpB,qGACA;CACE,UAAU,EACR,SAAS;EACP,SAAS;EACT,aAAa;EACd,EACF;CACD,iBAAiB,EACf,SAAS,WACV;CACF,CACF;AAED,SAAS,MAAM,EACb,WACA,SACA,UACA,MAAM,MACN,WAAW,IACX,cACA,GAAG,SAOA;CACH,MAAM,EAAE,WAAW,UAAU;AAC7B,QACE,qBAAC;EACC,MAAK;EACL,WAAW,cAAc;GAAE;GAAS;GAAW,CAAC;EAChD,GAAI;aAEJ,oBAAC;GAAK,WAAU;aACd,oBAAC;IACC,MAAM;IACN,OAAO,YAAY,gBAAgB,OAAO,eAAe,OAAO;KAChE;IACG,EACN;GACI;;AAIX,SAAS,WAAW,EAClB,UACA,GAAG,SACiC;AACpC,QACE,oBAACA;EACC,WAAW,GACT,+EACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,iBAAiB,EACxB,UACA,GAAG,SACiC;AACpC,QACE,oBAACA;EACC,WAAW,GAAG,gDAAgD,UAAU;EACxE,GAAI;GACJ"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as react0 from "react";
|
|
2
|
+
import * as react_native0 from "react-native";
|
|
3
|
+
import * as _rn_primitives_types0 from "@rn-primitives/types";
|
|
4
|
+
|
|
5
|
+
//#region ui/aspect-ratio.d.ts
|
|
6
|
+
declare const AspectRatio: react0.ForwardRefExoticComponent<Omit<_rn_primitives_types0.SlottableViewProps, "style"> & {
|
|
7
|
+
ratio?: number;
|
|
8
|
+
style?: react_native0.ViewStyle;
|
|
9
|
+
} & react0.RefAttributes<react_native0.View>>;
|
|
10
|
+
//#endregion
|
|
11
|
+
export { AspectRatio };
|
|
12
|
+
//# sourceMappingURL=aspect-ratio.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aspect-ratio.d.ts","names":[],"sources":["../../ui/aspect-ratio.tsx"],"sourcesContent":[],"mappings":";;;;;cAEM,oBAAW,0BAAA,KAA4B,qBAAA,CAA5B,kBAAA;;UAAA,aAAA,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aspect-ratio.js","names":[],"sources":["../../ui/aspect-ratio.tsx"],"sourcesContent":["import * as AspectRatioPrimitive from '@rn-primitives/aspect-ratio';\n\nconst AspectRatio = AspectRatioPrimitive.Root;\n\nexport { AspectRatio };\n"],"mappings":";;;AAEA,MAAM,cAAc,qBAAqB"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { FilterSelectProps } from "./types.js";
|
|
2
|
+
import React from "react";
|
|
3
|
+
|
|
4
|
+
//#region ui/atoms/FilterSelect/FilterSelect.d.ts
|
|
5
|
+
declare const FilterSelect: React.FC<FilterSelectProps>;
|
|
6
|
+
//#endregion
|
|
7
|
+
export { FilterSelect };
|
|
8
|
+
//# sourceMappingURL=FilterSelect.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterSelect.d.ts","names":[],"sources":["../../../../ui/atoms/FilterSelect/FilterSelect.tsx"],"sourcesContent":[],"mappings":";;;;cAca,cAAc,KAAA,CAAM,GAAG"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { Text as Text$1 } from "../../text.js";
|
|
2
|
+
import { HStack } from "../../stack.js";
|
|
3
|
+
import { Label } from "../../label.js";
|
|
4
|
+
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "../../select.js";
|
|
5
|
+
import React from "react";
|
|
6
|
+
import { View } from "react-native";
|
|
7
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
|
+
|
|
9
|
+
//#region ui/atoms/FilterSelect/FilterSelect.tsx
|
|
10
|
+
const FilterSelect = ({ value, options, onChange, placeholder = "Sélectionner...", label, disabled = false, className = "", showCounts = false }) => {
|
|
11
|
+
return /* @__PURE__ */ jsxs(HStack, {
|
|
12
|
+
className: `space-y-2 ${className}`,
|
|
13
|
+
children: [label && /* @__PURE__ */ jsx(Label, {
|
|
14
|
+
className: "text-foreground text-base font-medium",
|
|
15
|
+
children: label
|
|
16
|
+
}), /* @__PURE__ */ jsxs(Select, {
|
|
17
|
+
value,
|
|
18
|
+
onValueChange: onChange,
|
|
19
|
+
disabled,
|
|
20
|
+
children: [/* @__PURE__ */ jsx(SelectTrigger, {
|
|
21
|
+
className: "w-full",
|
|
22
|
+
children: /* @__PURE__ */ jsx(SelectValue, { placeholder })
|
|
23
|
+
}), /* @__PURE__ */ jsxs(SelectContent, {
|
|
24
|
+
className: "bg-background",
|
|
25
|
+
children: [/* @__PURE__ */ jsxs(SelectItem, {
|
|
26
|
+
value: "all",
|
|
27
|
+
label: "Tous",
|
|
28
|
+
children: [/* @__PURE__ */ jsx(Text$1, { children: "Tous" }), showCounts && /* @__PURE__ */ jsxs(View, {
|
|
29
|
+
className: "text-muted-foreground ml-2 text-sm",
|
|
30
|
+
children: [
|
|
31
|
+
"(",
|
|
32
|
+
options.reduce((sum, option) => sum + (option.count || 0), 0),
|
|
33
|
+
")"
|
|
34
|
+
]
|
|
35
|
+
})]
|
|
36
|
+
}), options.map((option) => /* @__PURE__ */ jsx(SelectItem, {
|
|
37
|
+
value: option.value,
|
|
38
|
+
label: option.label,
|
|
39
|
+
children: /* @__PURE__ */ jsxs(HStack, {
|
|
40
|
+
className: "flex w-full items-center justify-between",
|
|
41
|
+
children: [/* @__PURE__ */ jsx(Text$1, { children: option.label }), showCounts && option.count !== void 0 && /* @__PURE__ */ jsxs(Text$1, {
|
|
42
|
+
className: "text-muted-foreground ml-2 text-sm",
|
|
43
|
+
children: [
|
|
44
|
+
"(",
|
|
45
|
+
option.count,
|
|
46
|
+
")"
|
|
47
|
+
]
|
|
48
|
+
})]
|
|
49
|
+
})
|
|
50
|
+
}, option.value))]
|
|
51
|
+
})]
|
|
52
|
+
})]
|
|
53
|
+
});
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
//#endregion
|
|
57
|
+
export { FilterSelect };
|
|
58
|
+
//# sourceMappingURL=FilterSelect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterSelect.js","names":["FilterSelect: React.FC<FilterSelectProps>","Text"],"sources":["../../../../ui/atoms/FilterSelect/FilterSelect.tsx"],"sourcesContent":["import React from 'react';\nimport {\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from '../../select';\nimport { Label } from '../../label';\nimport { HStack } from '../../stack';\nimport { View } from 'react-native';\nimport { Text } from '../../text';\nimport type { FilterSelectProps } from './types';\n\nexport const FilterSelect: React.FC<FilterSelectProps> = ({\n value,\n options,\n onChange,\n placeholder = 'Sélectionner...',\n label,\n disabled = false,\n className = '',\n showCounts = false,\n}) => {\n return (\n <HStack className={`space-y-2 ${className}`}>\n {label && (\n <Label className=\"text-foreground text-base font-medium\">{label}</Label>\n )}\n <Select value={value} onValueChange={onChange} disabled={disabled}>\n <SelectTrigger className=\"w-full\">\n <SelectValue placeholder={placeholder} />\n </SelectTrigger>\n <SelectContent className=\"bg-background\">\n {/* All/Reset option */}\n <SelectItem value=\"all\" label=\"Tous\">\n <Text>Tous</Text>\n {showCounts && (\n <View className=\"text-muted-foreground ml-2 text-sm\">\n ({options.reduce((sum, option) => sum + (option.count || 0), 0)}\n )\n </View>\n )}\n </SelectItem>\n\n {/* Filter options */}\n {options.map((option) => (\n <SelectItem\n key={option.value}\n value={option.value}\n label={option.label}\n >\n <HStack className=\"flex w-full items-center justify-between\">\n <Text>{option.label}</Text>\n {showCounts && option.count !== undefined && (\n <Text className=\"text-muted-foreground ml-2 text-sm\">\n ({option.count})\n </Text>\n )}\n </HStack>\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </HStack>\n );\n};\n"],"mappings":";;;;;;;;;AAcA,MAAaA,gBAA6C,EACxD,OACA,SACA,UACA,cAAc,mBACd,OACA,WAAW,OACX,YAAY,IACZ,aAAa,YACT;AACJ,QACE,qBAAC;EAAO,WAAW,aAAa;aAC7B,SACC,oBAAC;GAAM,WAAU;aAAyC;IAAc,EAE1E,qBAAC;GAAc;GAAO,eAAe;GAAoB;cACvD,oBAAC;IAAc,WAAU;cACvB,oBAAC,eAAyB,cAAe;KAC3B,EAChB,qBAAC;IAAc,WAAU;eAEvB,qBAAC;KAAW,OAAM;KAAM,OAAM;gBAC5B,oBAACC,oBAAK,SAAW,EAChB,cACC,qBAAC;MAAK,WAAU;;OAAqC;OACjD,QAAQ,QAAQ,KAAK,WAAW,OAAO,OAAO,SAAS,IAAI,EAAE;OAAC;;OAE3D;MAEE,EAGZ,QAAQ,KAAK,WACZ,oBAAC;KAEC,OAAO,OAAO;KACd,OAAO,OAAO;eAEd,qBAAC;MAAO,WAAU;iBAChB,oBAACA,oBAAM,OAAO,QAAa,EAC1B,cAAc,OAAO,UAAU,UAC9B,qBAACA;OAAK,WAAU;;QAAqC;QACjD,OAAO;QAAM;;QACV;OAEF;OAXJ,OAAO,MAYD,CACb;KACY;IACT;GACF"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
//#region ui/atoms/FilterSelect/types.d.ts
|
|
2
|
+
interface FilterOption {
|
|
3
|
+
value: string;
|
|
4
|
+
label: string;
|
|
5
|
+
count?: number;
|
|
6
|
+
}
|
|
7
|
+
interface FilterSelectProps {
|
|
8
|
+
value: FilterOption;
|
|
9
|
+
options: FilterOption[];
|
|
10
|
+
onChange: (value: FilterOption | undefined) => void;
|
|
11
|
+
placeholder?: string;
|
|
12
|
+
label?: string;
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
className?: string;
|
|
15
|
+
showCounts?: boolean;
|
|
16
|
+
}
|
|
17
|
+
//#endregion
|
|
18
|
+
export { FilterOption, FilterSelectProps };
|
|
19
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","names":[],"sources":["../../../../ui/atoms/FilterSelect/types.ts"],"sourcesContent":[],"mappings":";UAAiB,YAAA;EAAA,KAAA,EAAA,MAAA;EAMA,KAAA,EAAA,MAAA;EACR,KAAA,CAAA,EAAA,MAAA;;AAEW,UAHH,iBAAA,CAGG;EAAY,KAAA,EAFvB,YAEuB;WADrB;oBACS"}
|
|
File without changes
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
|
|
3
|
+
//#region ui/atoms/LoadingSpinner/LoadingSpinner.d.ts
|
|
4
|
+
interface LoadingSpinnerProps {
|
|
5
|
+
size?: 'sm' | 'md' | 'lg' | 'xl';
|
|
6
|
+
className?: string;
|
|
7
|
+
text?: string;
|
|
8
|
+
fullScreen?: boolean;
|
|
9
|
+
}
|
|
10
|
+
declare const LoadingSpinner: React.FC<LoadingSpinnerProps>;
|
|
11
|
+
declare const SkeletonLine: React.FC<{
|
|
12
|
+
className?: string;
|
|
13
|
+
}>;
|
|
14
|
+
declare const SkeletonCard: React.FC<{
|
|
15
|
+
className?: string;
|
|
16
|
+
}>;
|
|
17
|
+
declare const SkeletonTable: React.FC<{
|
|
18
|
+
rows?: number;
|
|
19
|
+
cols?: number;
|
|
20
|
+
}>;
|
|
21
|
+
//#endregion
|
|
22
|
+
export { LoadingSpinner, SkeletonCard, SkeletonLine, SkeletonTable };
|
|
23
|
+
//# sourceMappingURL=LoadingSpinner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LoadingSpinner.d.ts","names":[],"sources":["../../../../ui/atoms/LoadingSpinner/LoadingSpinner.tsx"],"sourcesContent":[],"mappings":";;;UAMU,mBAAA;;EAAA,SAAA,CAAA,EAAA,MAAA;EAcG,IAAA,CAAA,EAAA,MAAA;EAgCA,UAAA,CAAA,EAAA,OAIZ;AAED;AAea,cArDA,cAqDe,EArDC,KAAA,CAAM,EAqDC,CArDE,mBAqDF,CAAA;cArBvB,cAAc,KAAA,CAAM;;;cAMpB,cAAc,KAAA,CAAM;;;cAepB,eAAe,KAAA,CAAM"}
|