@lssm-tech/lib.ui-kit 4.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +180 -0
- package/dist/browser/index.js +1 -0
- package/dist/browser/ui/accordion.js +1 -0
- package/dist/browser/ui/alert-dialog.js +1 -0
- package/dist/browser/ui/alert.js +1 -0
- package/dist/browser/ui/aspect-ratio.js +1 -0
- package/dist/browser/ui/atoms/FilterSelect/FilterSelect.js +1 -0
- package/dist/browser/ui/atoms/FilterSelect/index.js +1 -0
- package/dist/browser/ui/atoms/FilterSelect/types.js +0 -0
- package/dist/browser/ui/atoms/LoadingSpinner/LoadingSpinner.js +1 -0
- package/dist/browser/ui/atoms/LoadingSpinner/index.js +1 -0
- package/dist/browser/ui/atoms/Pagination/Pagination.js +1 -0
- package/dist/browser/ui/atoms/Pagination/index.js +1 -0
- package/dist/browser/ui/atoms/Pagination/types.js +0 -0
- package/dist/browser/ui/atoms/SearchInput/SearchInput.js +1 -0
- package/dist/browser/ui/atoms/SearchInput/index.js +1 -0
- package/dist/browser/ui/atoms/SearchInput/types.js +0 -0
- package/dist/browser/ui/avatar.js +1 -0
- package/dist/browser/ui/badge.js +1 -0
- package/dist/browser/ui/breadcrumb.js +1 -0
- package/dist/browser/ui/button.js +1 -0
- package/dist/browser/ui/card.js +1 -0
- package/dist/browser/ui/carousel.js +1 -0
- package/dist/browser/ui/checkbox.js +1 -0
- package/dist/browser/ui/collapsible.js +1 -0
- package/dist/browser/ui/combobox.js +1 -0
- package/dist/browser/ui/command.js +1 -0
- package/dist/browser/ui/context-menu.js +1 -0
- package/dist/browser/ui/contracts.typecheck.js +0 -0
- package/dist/browser/ui/data-table.js +1 -0
- package/dist/browser/ui/date-picker.js +1 -0
- package/dist/browser/ui/date-range-picker.js +1 -0
- package/dist/browser/ui/datetime-picker.js +1 -0
- package/dist/browser/ui/dialog.js +1 -0
- package/dist/browser/ui/dropdown-menu.js +1 -0
- package/dist/browser/ui/empty-state.js +1 -0
- package/dist/browser/ui/empty.js +1 -0
- package/dist/browser/ui/fab.js +1 -0
- package/dist/browser/ui/field.js +1 -0
- package/dist/browser/ui/form.js +1 -0
- package/dist/browser/ui/hover-card.js +1 -0
- package/dist/browser/ui/icons/Check.js +1 -0
- package/dist/browser/ui/icons/ChevronDown.js +1 -0
- package/dist/browser/ui/icons/ChevronRight.js +1 -0
- package/dist/browser/ui/icons/ChevronUp.js +1 -0
- package/dist/browser/ui/icons/CircleUser.js +1 -0
- package/dist/browser/ui/icons/Info.js +1 -0
- package/dist/browser/ui/icons/Key.js +1 -0
- package/dist/browser/ui/icons/MoonStar.js +1 -0
- package/dist/browser/ui/icons/Sun.js +1 -0
- package/dist/browser/ui/icons/X.js +1 -0
- package/dist/browser/ui/icons/iconWithClassName.js +1 -0
- package/dist/browser/ui/input-group.js +1 -0
- package/dist/browser/ui/input-otp.js +1 -0
- package/dist/browser/ui/input-password.js +1 -0
- package/dist/browser/ui/input.js +1 -0
- package/dist/browser/ui/label.js +1 -0
- package/dist/browser/ui/link.js +1 -0
- package/dist/browser/ui/list.js +1 -0
- package/dist/browser/ui/loading-button.js +1 -0
- package/dist/browser/ui/loading-overlay.js +1 -0
- package/dist/browser/ui/loading-screen.js +1 -0
- package/dist/browser/ui/marketing/FeatureGrid.js +1 -0
- package/dist/browser/ui/marketing/Hero.js +1 -0
- package/dist/browser/ui/marketing/PricingTable.js +1 -0
- package/dist/browser/ui/marketing/index.js +1 -0
- package/dist/browser/ui/menubar.js +1 -0
- package/dist/browser/ui/molecules/Autocomplete/index.js +1 -0
- package/dist/browser/ui/molecules/SearchAndFilter/SearchAndFilter.js +1 -0
- package/dist/browser/ui/molecules/SearchAndFilter/index.js +1 -0
- package/dist/browser/ui/molecules/SearchAndFilter/types.js +0 -0
- package/dist/browser/ui/molecules/SkeletonList.js +1 -0
- package/dist/browser/ui/native-select.js +1 -0
- package/dist/browser/ui/nativewind-env.d.js +0 -0
- package/dist/browser/ui/navigation-menu.js +1 -0
- package/dist/browser/ui/organisms/ErrorBoundary/ErrorBoundary.js +1 -0
- package/dist/browser/ui/organisms/ErrorBoundary/index.js +1 -0
- package/dist/browser/ui/organisms/ListPage/ListPage.js +1 -0
- package/dist/browser/ui/organisms/ListPage/index.js +1 -0
- package/dist/browser/ui/organisms/ListPage/types.js +0 -0
- package/dist/browser/ui/page-header.js +1 -0
- package/dist/browser/ui/password-strength.js +1 -0
- package/dist/browser/ui/popover.js +1 -0
- package/dist/browser/ui/portal.js +1 -0
- package/dist/browser/ui/progress.js +1 -0
- package/dist/browser/ui/radio-group.js +1 -0
- package/dist/browser/ui/select.js +1 -0
- package/dist/browser/ui/separator.js +1 -0
- package/dist/browser/ui/sheet.js +1 -0
- package/dist/browser/ui/sidebar.js +1 -0
- package/dist/browser/ui/skeleton.js +1 -0
- package/dist/browser/ui/slider.js +1 -0
- package/dist/browser/ui/stack.js +1 -0
- package/dist/browser/ui/stepper.js +1 -0
- package/dist/browser/ui/switch.js +1 -0
- package/dist/browser/ui/table.js +1 -0
- package/dist/browser/ui/tabs.js +1 -0
- package/dist/browser/ui/text.js +1 -0
- package/dist/browser/ui/textarea.js +1 -0
- package/dist/browser/ui/time-picker.js +1 -0
- package/dist/browser/ui/toast.js +1 -0
- package/dist/browser/ui/toggle-group.js +1 -0
- package/dist/browser/ui/toggle.js +1 -0
- package/dist/browser/ui/toolbar.js +1 -0
- package/dist/browser/ui/tooltip.js +1 -0
- package/dist/browser/ui/typography.js +1 -0
- package/dist/browser/ui/useColorScheme.js +1 -0
- package/dist/browser/ui/useListState.js +1 -0
- package/dist/browser/ui/usecases/UseCaseCard.js +1 -0
- package/dist/browser/ui/usecases/UserStoryCard.js +1 -0
- package/dist/browser/ui/usecases/index.js +1 -0
- package/dist/browser/ui/utils.js +1 -0
- package/dist/browser/ui/visualization/Visualization.js +1 -0
- package/dist/browser/ui/visualization/index.js +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +2 -0
- package/dist/ui/accordion.d.ts +16 -0
- package/dist/ui/accordion.js +2 -0
- package/dist/ui/alert-dialog.d.ts +46 -0
- package/dist/ui/alert-dialog.js +2 -0
- package/dist/ui/alert.d.ts +17 -0
- package/dist/ui/alert.js +2 -0
- package/dist/ui/aspect-ratio.d.ts +8 -0
- package/dist/ui/aspect-ratio.js +2 -0
- package/dist/ui/atoms/FilterSelect/FilterSelect.d.ts +3 -0
- package/dist/ui/atoms/FilterSelect/FilterSelect.js +2 -0
- package/dist/ui/atoms/FilterSelect/index.d.ts +2 -0
- package/dist/ui/atoms/FilterSelect/index.js +2 -0
- package/dist/ui/atoms/FilterSelect/types.d.ts +5 -0
- package/dist/ui/atoms/FilterSelect/types.js +1 -0
- package/dist/ui/atoms/LoadingSpinner/LoadingSpinner.d.ts +19 -0
- package/dist/ui/atoms/LoadingSpinner/LoadingSpinner.js +2 -0
- package/dist/ui/atoms/LoadingSpinner/index.d.ts +1 -0
- package/dist/ui/atoms/LoadingSpinner/index.js +2 -0
- package/dist/ui/atoms/Pagination/Pagination.d.ts +3 -0
- package/dist/ui/atoms/Pagination/Pagination.js +2 -0
- package/dist/ui/atoms/Pagination/index.d.ts +2 -0
- package/dist/ui/atoms/Pagination/index.js +2 -0
- package/dist/ui/atoms/Pagination/types.d.ts +3 -0
- package/dist/ui/atoms/Pagination/types.js +1 -0
- package/dist/ui/atoms/SearchInput/SearchInput.d.ts +3 -0
- package/dist/ui/atoms/SearchInput/SearchInput.js +2 -0
- package/dist/ui/atoms/SearchInput/index.d.ts +2 -0
- package/dist/ui/atoms/SearchInput/index.js +2 -0
- package/dist/ui/atoms/SearchInput/types.d.ts +3 -0
- package/dist/ui/atoms/SearchInput/types.js +1 -0
- package/dist/ui/avatar.d.ts +13 -0
- package/dist/ui/avatar.js +2 -0
- package/dist/ui/badge.d.ts +11 -0
- package/dist/ui/badge.js +2 -0
- package/dist/ui/breadcrumb.d.ts +12 -0
- package/dist/ui/breadcrumb.js +2 -0
- package/dist/ui/button.d.ts +16 -0
- package/dist/ui/button.js +2 -0
- package/dist/ui/card.d.ts +22 -0
- package/dist/ui/card.js +2 -0
- package/dist/ui/carousel.d.ts +1 -0
- package/dist/ui/carousel.js +2 -0
- package/dist/ui/checkbox.d.ts +12 -0
- package/dist/ui/checkbox.js +2 -0
- package/dist/ui/collapsible.d.ts +27 -0
- package/dist/ui/collapsible.js +2 -0
- package/dist/ui/combobox.d.ts +17 -0
- package/dist/ui/combobox.js +2 -0
- package/dist/ui/command.d.ts +1 -0
- package/dist/ui/command.js +2 -0
- package/dist/ui/context-menu.d.ts +83 -0
- package/dist/ui/context-menu.js +2 -0
- package/dist/ui/contracts.typecheck.d.ts +1 -0
- package/dist/ui/contracts.typecheck.js +1 -0
- package/dist/ui/data-table.d.ts +8 -0
- package/dist/ui/data-table.js +2 -0
- package/dist/ui/data-table.smoke.test.d.ts +1 -0
- package/dist/ui/date-picker.d.ts +4 -0
- package/dist/ui/date-picker.js +2 -0
- package/dist/ui/date-range-picker.d.ts +6 -0
- package/dist/ui/date-range-picker.js +2 -0
- package/dist/ui/datetime-picker.d.ts +6 -0
- package/dist/ui/datetime-picker.js +2 -0
- package/dist/ui/dialog.d.ts +51 -0
- package/dist/ui/dialog.js +2 -0
- package/dist/ui/dropdown-menu.d.ts +84 -0
- package/dist/ui/dropdown-menu.js +2 -0
- package/dist/ui/empty-state.d.ts +9 -0
- package/dist/ui/empty-state.js +2 -0
- package/dist/ui/empty.d.ts +12 -0
- package/dist/ui/empty.js +2 -0
- package/dist/ui/fab.d.ts +21 -0
- package/dist/ui/fab.js +2 -0
- package/dist/ui/field.d.ts +21 -0
- package/dist/ui/field.js +2 -0
- package/dist/ui/form.d.ts +29 -0
- package/dist/ui/form.js +2 -0
- package/dist/ui/hover-card.d.ts +25 -0
- package/dist/ui/hover-card.js +2 -0
- package/dist/ui/icons/Check.d.ts +2 -0
- package/dist/ui/icons/Check.js +2 -0
- package/dist/ui/icons/ChevronDown.d.ts +2 -0
- package/dist/ui/icons/ChevronDown.js +2 -0
- package/dist/ui/icons/ChevronRight.d.ts +2 -0
- package/dist/ui/icons/ChevronRight.js +2 -0
- package/dist/ui/icons/ChevronUp.d.ts +2 -0
- package/dist/ui/icons/ChevronUp.js +2 -0
- package/dist/ui/icons/CircleUser.d.ts +2 -0
- package/dist/ui/icons/CircleUser.js +2 -0
- package/dist/ui/icons/Info.d.ts +2 -0
- package/dist/ui/icons/Info.js +2 -0
- package/dist/ui/icons/Key.d.ts +2 -0
- package/dist/ui/icons/Key.js +2 -0
- package/dist/ui/icons/MoonStar.d.ts +2 -0
- package/dist/ui/icons/MoonStar.js +2 -0
- package/dist/ui/icons/Sun.d.ts +2 -0
- package/dist/ui/icons/Sun.js +2 -0
- package/dist/ui/icons/X.d.ts +2 -0
- package/dist/ui/icons/X.js +2 -0
- package/dist/ui/icons/iconWithClassName.d.ts +2 -0
- package/dist/ui/icons/iconWithClassName.js +2 -0
- package/dist/ui/input-group.d.ts +36 -0
- package/dist/ui/input-group.js +2 -0
- package/dist/ui/input-otp.d.ts +20 -0
- package/dist/ui/input-otp.js +2 -0
- package/dist/ui/input-password.d.ts +10 -0
- package/dist/ui/input-password.js +2 -0
- package/dist/ui/input.d.ts +8 -0
- package/dist/ui/input.js +2 -0
- package/dist/ui/label.d.ts +3 -0
- package/dist/ui/label.js +2 -0
- package/dist/ui/link.d.ts +6 -0
- package/dist/ui/link.js +2 -0
- package/dist/ui/list.d.ts +23 -0
- package/dist/ui/list.js +2 -0
- package/dist/ui/loading-button.d.ts +9 -0
- package/dist/ui/loading-button.js +2 -0
- package/dist/ui/loading-overlay.d.ts +7 -0
- package/dist/ui/loading-overlay.js +2 -0
- package/dist/ui/loading-screen.d.ts +6 -0
- package/dist/ui/loading-screen.js +2 -0
- package/dist/ui/marketing/FeatureGrid.d.ts +4 -0
- package/dist/ui/marketing/FeatureGrid.js +2 -0
- package/dist/ui/marketing/Hero.d.ts +16 -0
- package/dist/ui/marketing/Hero.js +2 -0
- package/dist/ui/marketing/PricingTable.d.ts +4 -0
- package/dist/ui/marketing/PricingTable.js +2 -0
- package/dist/ui/marketing/index.d.ts +3 -0
- package/dist/ui/marketing/index.js +2 -0
- package/dist/ui/menubar.d.ts +80 -0
- package/dist/ui/menubar.js +2 -0
- package/dist/ui/molecules/Autocomplete/index.d.ts +1 -0
- package/dist/ui/molecules/Autocomplete/index.js +2 -0
- package/dist/ui/molecules/SearchAndFilter/SearchAndFilter.d.ts +3 -0
- package/dist/ui/molecules/SearchAndFilter/SearchAndFilter.js +2 -0
- package/dist/ui/molecules/SearchAndFilter/index.d.ts +2 -0
- package/dist/ui/molecules/SearchAndFilter/index.js +2 -0
- package/dist/ui/molecules/SearchAndFilter/types.d.ts +4 -0
- package/dist/ui/molecules/SearchAndFilter/types.js +1 -0
- package/dist/ui/molecules/SkeletonList.d.ts +7 -0
- package/dist/ui/molecules/SkeletonList.js +2 -0
- package/dist/ui/native-select.d.ts +29 -0
- package/dist/ui/native-select.js +2 -0
- package/dist/ui/nativewind-env.d.js +1 -0
- package/dist/ui/navigation-menu.d.ts +44 -0
- package/dist/ui/navigation-menu.js +2 -0
- package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.d.ts +25 -0
- package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.js +2 -0
- package/dist/ui/organisms/ErrorBoundary/index.d.ts +2 -0
- package/dist/ui/organisms/ErrorBoundary/index.js +2 -0
- package/dist/ui/organisms/ListPage/ListPage.d.ts +2 -0
- package/dist/ui/organisms/ListPage/ListPage.js +2 -0
- package/dist/ui/organisms/ListPage/index.d.ts +2 -0
- package/dist/ui/organisms/ListPage/index.js +2 -0
- package/dist/ui/organisms/ListPage/types.d.ts +44 -0
- package/dist/ui/organisms/ListPage/types.js +1 -0
- package/dist/ui/page-header.d.ts +9 -0
- package/dist/ui/page-header.js +2 -0
- package/dist/ui/password-strength.d.ts +13 -0
- package/dist/ui/password-strength.js +2 -0
- package/dist/ui/popover.d.ts +23 -0
- package/dist/ui/popover.js +2 -0
- package/dist/ui/portal.d.ts +1 -0
- package/dist/ui/portal.js +2 -0
- package/dist/ui/progress.d.ts +7 -0
- package/dist/ui/progress.js +2 -0
- package/dist/ui/radio-group.d.ts +4 -0
- package/dist/ui/radio-group.js +2 -0
- package/dist/ui/select.d.ts +60 -0
- package/dist/ui/select.js +2 -0
- package/dist/ui/separator.d.ts +6 -0
- package/dist/ui/separator.js +2 -0
- package/dist/ui/sheet.d.ts +1 -0
- package/dist/ui/sheet.js +2 -0
- package/dist/ui/sidebar.d.ts +1 -0
- package/dist/ui/sidebar.js +2 -0
- package/dist/ui/skeleton.d.ts +4 -0
- package/dist/ui/skeleton.js +2 -0
- package/dist/ui/slider.d.ts +7 -0
- package/dist/ui/slider.js +2 -0
- package/dist/ui/stack.d.ts +43 -0
- package/dist/ui/stack.js +2 -0
- package/dist/ui/stepper.d.ts +10 -0
- package/dist/ui/stepper.js +2 -0
- package/dist/ui/switch.d.ts +7 -0
- package/dist/ui/switch.js +2 -0
- package/dist/ui/table.d.ts +24 -0
- package/dist/ui/table.js +2 -0
- package/dist/ui/tabs.d.ts +6 -0
- package/dist/ui/tabs.js +2 -0
- package/dist/ui/text.d.ts +12 -0
- package/dist/ui/text.js +2 -0
- package/dist/ui/textarea.d.ts +8 -0
- package/dist/ui/textarea.js +2 -0
- package/dist/ui/time-picker.d.ts +4 -0
- package/dist/ui/time-picker.js +2 -0
- package/dist/ui/toast.d.ts +40 -0
- package/dist/ui/toast.js +2 -0
- package/dist/ui/toggle-group.d.ts +15 -0
- package/dist/ui/toggle-group.js +2 -0
- package/dist/ui/toggle.d.ts +19 -0
- package/dist/ui/toggle.js +2 -0
- package/dist/ui/toolbar.d.ts +25 -0
- package/dist/ui/toolbar.js +2 -0
- package/dist/ui/tooltip.d.ts +27 -0
- package/dist/ui/tooltip.js +2 -0
- package/dist/ui/typography.d.ts +16 -0
- package/dist/ui/typography.js +2 -0
- package/dist/ui/useColorScheme.d.ts +6 -0
- package/dist/ui/useColorScheme.js +2 -0
- package/dist/ui/useListState.d.ts +6 -0
- package/dist/ui/useListState.js +2 -0
- package/dist/ui/usecases/UseCaseCard.d.ts +7 -0
- package/dist/ui/usecases/UseCaseCard.js +2 -0
- package/dist/ui/usecases/UserStoryCard.d.ts +5 -0
- package/dist/ui/usecases/UserStoryCard.js +2 -0
- package/dist/ui/usecases/index.d.ts +2 -0
- package/dist/ui/usecases/index.js +2 -0
- package/dist/ui/utils.d.ts +2 -0
- package/dist/ui/utils.js +2 -0
- package/dist/ui/visualization/Visualization.d.ts +7 -0
- package/dist/ui/visualization/Visualization.js +2 -0
- package/dist/ui/visualization/index.d.ts +1 -0
- package/dist/ui/visualization/index.js +2 -0
- package/package.json +1776 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{styled as G}from"nativewind";function z(u){G(u,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}import{X as q}from"lucide-react-native";z(q);import{cn as M}from"@contractspec/lib.ui-kit-core/utils";import*as f from"@rn-primitives/dialog";import{Platform as B,StyleSheet as J,View as C}from"react-native";import K,{FadeIn as Q,FadeOut as R}from"react-native-reanimated";import{jsx as I,jsxs as $}from"react/jsx-runtime";var F=f.Root,H=f.Trigger,U=f.Portal,P=f.Close;function Y({className:u,...L}){let{open:W}=f.useRootContext();return I(f.Overlay,{className:M("absolute top-0 right-0 bottom-0 left-0 flex items-center justify-center bg-black/80 p-2",W?"web:fade-in-0 web:animate-in":"web:fade-out-0 web:animate-out",u),...L})}function Z({className:u,children:L,...W}){return I(f.Overlay,{style:J.absoluteFill,className:M("flex items-center justify-center bg-black/80 p-2",u),...W,children:I(K.View,{entering:Q.duration(150),exiting:R.duration(150),children:L})})}var _=B.select({web:Y,default:Z});function O({className:u,children:L,portalHost:W,...E}){let{open:y}=f.useRootContext();return I(U,{hostName:W,children:I(_,{children:$(f.Content,{className:M("max-w-lg web:cursor-default gap-4 rounded-lg border border-border bg-background p-6 shadow-lg web:duration-200",y?"web:fade-in-0 web:zoom-in-95 web:animate-in":"web:fade-out-0 web:zoom-out-95 web:animate-out",u),...E,children:[L,I(f.Close,{className:"web:group absolute top-4 right-4 rounded-xs p-0.5 opacity-70 web:ring-offset-background web:transition-opacity web:hover:opacity-100 web:focus:outline-hidden web:focus:ring-2 web:focus:ring-ring web:focus:ring-offset-2 web:disabled:pointer-events-none",children:I(q,{size:B.OS==="web"?16:18,className:M("text-muted-foreground",y&&"text-accent-foreground")})})]})})})}function d({className:u,...L}){return I(C,{className:M("flex flex-col gap-1.5 text-center sm:text-left",u),...L})}function v({className:u,...L}){return I(C,{className:M("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",u),...L})}function m({className:u,...L}){return I(f.Title,{className:M("font-semibold native:text-xl text-foreground text-lg leading-none tracking-tight",u),...L})}function t({className:u,...L}){return I(f.Description,{className:M("native:text-base text-muted-foreground text-sm",u),...L})}export{H as DialogTrigger,m as DialogTitle,U as DialogPortal,_ as DialogOverlay,d as DialogHeader,v as DialogFooter,t as DialogDescription,O as DialogContent,P as DialogClose,F as Dialog};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{styled as I}from"nativewind";function E(W){I(W,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}import{ChevronDown as Q}from"lucide-react-native";E(Q);import{cn as g}from"@contractspec/lib.ui-kit-core/utils";import*as H from"@rn-primitives/slot";import*as J from"react";import{Text as V}from"react-native";import{jsx as P}from"react/jsx-runtime";var K=J.createContext(void 0);function S({className:W,asChild:L=!1,...q}){let B=J.useContext(K);return P(L?H.Text:V,{className:g("web:select-text text-base text-foreground",B,W),...q})}import{Check as X}from"lucide-react-native";E(X);import{ChevronUp as Y}from"lucide-react-native";E(Y);import{ChevronRight as Z}from"lucide-react-native";E(Z);import{cn as A}from"@contractspec/lib.ui-kit-core/utils";import*as f from"@rn-primitives/dropdown-menu";import{Platform as $,StyleSheet as _,Text as R,View as U}from"react-native";import{jsx as z,jsxs as G}from"react/jsx-runtime";var e=f.Root,s=f.Trigger,ff=f.Group,Wf=f.Portal,Lf=f.Sub,qf=f.RadioGroup;function zf({className:W,inset:L,children:q,...B}){let{open:F}=f.useSubContext(),O=$.OS==="web"?Z:F?Y:Q;return z(K.Provider,{value:A("select-none native:text-lg text-primary text-sm",F&&"native:text-accent-foreground"),children:G(f.SubTrigger,{className:A("flex web:cursor-default web:select-none flex-row items-center gap-2 rounded-xs px-2 native:py-2 py-1.5 web:outline-hidden web:hover:bg-accent web:focus:bg-accent active:bg-accent",F&&"bg-accent",L&&"pl-8",W),...B,children:[q,z(O,{size:18,className:"ml-auto text-foreground"})]})})}function Af({className:W,...L}){let{open:q}=f.useSubContext();return z(f.SubContent,{className:A("data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 mt-1 min-w-32 overflow-hidden rounded-md border border-border bg-popover p-1 shadow-foreground/5 shadow-md",q?"web:fade-in-0 web:zoom-in-95 web:animate-in":"web:fade-out-0 web:zoom-out web:animate-out",W),...L})}function Bf({className:W,overlayClassName:L,overlayStyle:q,portalHost:B,...F}){let{open:O}=f.useRootContext();return z(f.Portal,{hostName:B,children:z(f.Overlay,{style:q?_.flatten([$.OS!=="web"?_.absoluteFill:void 0,q]):$.OS!=="web"?_.absoluteFill:void 0,className:L,children:z(f.Content,{className:A("web:data-[side=bottom]:slide-in-from-top-2 web:data-[side=left]:slide-in-from-right-2 web:data-[side=right]:slide-in-from-left-2 web:data-[side=top]:slide-in-from-bottom-2 z-50 min-w-32 overflow-hidden rounded-md border border-border bg-popover p-1 shadow-foreground/5 shadow-md",O?"web:fade-in-0 web:zoom-in-95 web:animate-in":"web:fade-out-0 web:zoom-out-95 web:animate-out",W),...F})})})}function Ef({className:W,inset:L,...q}){return z(K.Provider,{value:"select-none text-sm native:text-lg text-popover-foreground web:group-focus:text-accent-foreground",children:z(f.Item,{className:A("group relative flex web:cursor-default flex-row items-center gap-2 rounded-xs px-2 native:py-2 py-1.5 web:outline-hidden web:hover:bg-accent web:focus:bg-accent active:bg-accent",L&&"pl-8",q.disabled&&"web:pointer-events-none opacity-50",W),...q})})}function Ff({className:W,children:L,checked:q,...B}){return G(f.CheckboxItem,{className:A("web:group relative flex web:cursor-default flex-row items-center rounded-xs native:py-2 py-1.5 pr-2 pl-8 web:outline-hidden web:focus:bg-accent active:bg-accent",B.disabled&&"web:pointer-events-none opacity-50",W),checked:q,...B,children:[z(U,{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:z(f.ItemIndicator,{children:z(X,{size:14,strokeWidth:3,className:"text-foreground"})})}),L]})}function Jf({className:W,children:L,...q}){return G(f.RadioItem,{className:A("web:group relative flex web:cursor-default flex-row items-center rounded-xs native:py-2 py-1.5 pr-2 pl-8 web:outline-hidden web:focus:bg-accent active:bg-accent",q.disabled&&"web:pointer-events-none opacity-50",W),...q,children:[z(U,{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:z(f.ItemIndicator,{children:z(U,{className:"h-2 w-2 rounded-full bg-foreground"})})}),L]})}function Kf({className:W,inset:L,...q}){return z(f.Label,{className:A("web:cursor-default px-2 py-1.5 font-semibold native:text-base text-foreground text-sm",L&&"pl-8",W),...q})}function Of({className:W,...L}){return z(f.Separator,{className:A("-mx-1 my-1 h-px bg-border",W),...L})}function Qf({className:W,...L}){return z(R,{className:A("ml-auto native:text-sm text-muted-foreground text-xs tracking-widest",W),...L})}export{s as DropdownMenuTrigger,zf as DropdownMenuSubTrigger,Af as DropdownMenuSubContent,Lf as DropdownMenuSub,Qf as DropdownMenuShortcut,Of as DropdownMenuSeparator,Jf as DropdownMenuRadioItem,qf as DropdownMenuRadioGroup,Wf as DropdownMenuPortal,Kf as DropdownMenuLabel,Ef as DropdownMenuItem,ff as DropdownMenuGroup,Bf as DropdownMenuContent,Ff as DropdownMenuCheckboxItem,e as DropdownMenu};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as A}from"@contractspec/lib.ui-kit-core/utils";import*as P from"@rn-primitives/slot";import*as Z from"react";import{Text as S}from"react-native";import{jsx as v}from"react/jsx-runtime";var k=Z.createContext(void 0);function F({className:q,asChild:D=!1,...z}){let E=Z.useContext(k);return v(D?P.Text:S,{className:A("web:select-text text-base text-foreground",E,q),...z})}import{cn as $}from"@contractspec/lib.ui-kit-core/utils";import{cva as M}from"class-variance-authority";import{View as Q}from"react-native";import{jsx as B}from"react/jsx-runtime";var R="flex",V=M([R,"flex-col"],{variants:{spacing:{none:"",xs:"gap-y-1",sm:"gap-y-2",md:"gap-y-4",lg:"gap-y-6",xl:"gap-y-8","2xl":"gap-y-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"}},defaultVariants:{spacing:"md",align:"stretch",justify:"start",width:"auto",padding:"none",gap:"none"}}),T=M([R,"flex-row"],{variants:{spacing:{none:"",xs:"gap-x-1",sm:"gap-x-2",md:"gap-x-4",lg:"gap-x-6",xl:"gap-x-8","2xl":"gap-x-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap",reverse:"flex-wrap-reverse"}},defaultVariants:{spacing:"md",align:"center",justify:"start",width:"auto",padding:"none",gap:"none",wrap:"wrap"}}),w=M([R,"flex-row"],{variants:{spacing:{none:"",xs:"gap-x-1",sm:"gap-x-2",md:"gap-x-4",lg:"gap-x-6",xl:"gap-x-8","2xl":"gap-x-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap",reverse:"flex-wrap-reverse"}},defaultVariants:{spacing:"md",align:"center",justify:"center",width:"auto",padding:"none",gap:"none",wrap:"wrap"}});function o({className:q,spacing:D,align:z,justify:E,width:K,padding:O,gap:U,wrap:W,..._}){return B(Q,{className:$(w({spacing:D,align:z,justify:E,width:K,padding:O,gap:U,wrap:W}),q),..._})}function n({className:q,spacing:D,align:z,justify:E,width:K,padding:O,gap:U,wrap:W,..._}){return B(Q,{className:$(T({spacing:D,align:z,justify:E,width:K,padding:O,gap:U,wrap:W}),q),..._})}function H({className:q,spacing:D,align:z,justify:E,width:K,padding:O,gap:U,...W}){return B(Q,{className:$(V({spacing:D,align:z,justify:E,width:K,padding:O,gap:U}),q),...W})}import{cn as I}from"@contractspec/lib.ui-kit-core/utils";import*as G from"@rn-primitives/slot";import{Platform as b}from"react-native";import{jsx as J}from"react/jsx-runtime";function t({className:q,asChild:D=!1,...z}){return J(D?G.Text:F,{role:"heading","aria-level":"1",className:I("web:select-text web:scroll-m-20 font-extrabold text-4xl text-foreground tracking-tight lg:text-5xl",q),...z})}function i({className:q,asChild:D=!1,...z}){return J(D?G.Text:F,{role:"heading","aria-level":"2",className:I("web:select-text web:scroll-m-20 border-border border-b pb-2 font-semibold text-3xl text-foreground tracking-tight first:mt-0",q),...z})}function f({className:q,asChild:D=!1,...z}){return J(D?G.Text:F,{role:"heading","aria-level":"3",className:I("web:select-text web:scroll-m-20 font-semibold text-2xl text-foreground tracking-tight",q),...z})}function a({className:q,asChild:D=!1,...z}){return J(D?G.Text:F,{role:"heading","aria-level":"4",className:I("web:select-text web:scroll-m-20 font-semibold text-foreground text-xl tracking-tight",q),...z})}function s({className:q,asChild:D=!1,...z}){return J(D?G.Text:F,{className:I("web:select-text text-base text-foreground",q),...z})}function qq({className:q,asChild:D=!1,...z}){return J(D?G.Text:F,{role:b.OS==="web"?"blockquote":void 0,className:I("mt-6 native:mt-4 web:select-text border-border border-l-2 native:pl-3 pl-6 text-base text-foreground italic",q),...z})}function zq({className:q,asChild:D=!1,...z}){return J(D?G.Text:F,{role:b.OS==="web"?"code":void 0,className:I("relative web:select-text rounded-md bg-muted px-[0.3rem] py-[0.2rem] font-semibold text-foreground text-sm",q),...z})}function Dq({className:q,asChild:D=!1,...z}){return J(D?G.Text:F,{className:I("web:select-text text-muted-foreground text-xl",q),...z})}function Eq({className:q,asChild:D=!1,...z}){return J(D?G.Text:F,{className:I("web:select-text font-semibold text-foreground text-xl",q),...z})}function Fq({className:q,asChild:D=!1,...z}){return J(D?G.Text:F,{className:I("web:select-text font-medium text-foreground text-sm leading-none",q),...z})}function Gq({className:q,asChild:D=!1,...z}){return J(D?G.Text:F,{className:I("web:select-text text-muted-foreground text-sm",q),...z})}import{cn as u}from"@contractspec/lib.ui-kit-core/utils";import{cva as y}from"class-variance-authority";import{View as X}from"react-native";import{jsx as Y,jsxs as L}from"react/jsx-runtime";var g=y("items-center text-center",{variants:{density:{compact:"gap-3 p-6",default:"gap-4 p-8"}},defaultVariants:{density:"default"}});function Zq({icon:q,title:D,description:z,primaryAction:E,secondaryAction:K,className:O,density:U}){return L(H,{className:u(g({density:U}),O),children:[q?Y(X,{className:"flex h-12 w-12 items-center justify-center rounded-full bg-muted",children:Y(X,{className:"flex items-center justify-center text-muted-foreground",children:q})}):null,L(X,{children:[Y(f,{className:"font-medium",children:D}),z?Y(X,{className:"text-base text-muted-foreground",children:Y(F,{children:z})}):null]}),(E||K)&&L(X,{className:"flex items-center justify-center gap-2",children:[E,K]})]})}export{Zq as EmptyState};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as q}from"@contractspec/lib.ui-kit-core/utils";import{cva as F}from"class-variance-authority";import{View as z}from"react-native";import{jsx as A}from"react/jsx-runtime";function L({className:g,...f}){return A(z,{"data-slot":"empty",className:q("flex min-w-0 flex-1 flex-col items-center justify-center gap-6 text-balance rounded-lg border-dashed p-6 text-center md:p-12",g),...f})}function O({className:g,...f}){return A(z,{"data-slot":"empty-header",className:q("flex max-w-sm flex-col items-center gap-2 text-center",g),...f})}var G=F("mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0",{variants:{variant:{default:"bg-transparent",icon:"flex size-10 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground [&_svg:not([class*='size-'])]:size-6"}},defaultVariants:{variant:"default"}});function P({className:g,variant:f="default",...B}){return A(z,{"data-slot":"empty-icon","data-variant":f,className:q(G({variant:f,className:g})),...B})}function Q({className:g,...f}){return A(z,{"data-slot":"empty-title",className:q("font-medium text-lg tracking-tight",g),...f})}function R({className:g,...f}){return A(z,{"data-slot":"empty-description",className:q("text-muted-foreground text-sm/relaxed [&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4",g),...f})}function S({className:g,...f}){return A(z,{"data-slot":"empty-content",className:q("flex w-full min-w-0 max-w-sm flex-col items-center gap-4 text-balance text-sm",g),...f})}export{Q as EmptyTitle,P as EmptyMedia,O as EmptyHeader,R as EmptyDescription,S as EmptyContent,L as Empty};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as z}from"@contractspec/lib.ui-kit-core/utils";import{Plus as M,X}from"lucide-react-native";import{useState as Y}from"react";import{Pressable as Q,StyleSheet as C,View as R}from"react-native";import T,{useAnimatedStyle as K,withSpring as L,withTiming as V}from"react-native-reanimated";import{jsx as q,jsxs as v}from"react/jsx-runtime";var U=T.createAnimatedComponent(Q);function A({actions:B,className:D,mainIcon:E,mainColor:F="bg-primary"}){let[f,G]=Y(!1),W=()=>{G(!f)},Z=K(()=>{return{transform:[{rotate:L(f?"45deg":"0deg",{damping:15,stiffness:150})}]}});return v(R,{className:z("absolute right-4 bottom-24 z-50",D),children:[f&&q(Q,{style:C.absoluteFillObject,className:"fixed inset-0 -top-full -left-full h-[200%] w-[200%]",onPress:()=>G(!1)}),B.map((H,J)=>{let _=K(()=>{let k=f?-(J+1)*65:0;return{transform:[{translateY:L(k,{damping:15,stiffness:150,mass:1+J*0.1})}],opacity:V(f?1:0,{duration:200}),pointerEvents:f?"auto":"none"}}),$=K(()=>{return{transform:[{scale:L(f?1:0.8,{damping:15,stiffness:150})}]}});return q(U,{style:[_,$],className:"absolute right-0 bottom-0",onPress:()=>{H.onPress(),G(!1)},children:q(R,{className:z("h-12 w-12 items-center justify-center rounded-full shadow-lg",H.color||"bg-secondary"),children:H.icon})},J)}),q(U,{onPress:W,className:z("h-14 w-14 items-center justify-center rounded-full shadow-xl",F),style:[Z,{shadowColor:"#000",shadowOffset:{width:0,height:4},shadowOpacity:0.3,shadowRadius:8,elevation:8}],children:f?q(X,{size:24,color:"white",strokeWidth:2.5}):E||q(M,{size:24,color:"white",strokeWidth:2.5})})]})}function b({icon:B,onPress:D,className:E,color:F="bg-primary"}){return q(Q,{onPress:D,className:z("h-12 w-12 items-center justify-center rounded-full shadow-lg",F,E),style:{shadowColor:"#000",shadowOffset:{width:0,height:2},shadowOpacity:0.25,shadowRadius:4,elevation:5},children:B})}export{b as MiniFAB,A as FAB};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as v}from"@contractspec/lib.ui-kit-core/utils";import*as f from"@rn-primitives/slot";import*as Q from"react";import{Text as g}from"react-native";import{jsx as u}from"react/jsx-runtime";var C=Q.createContext(void 0);function U({className:z,asChild:q=!1,...A}){let J=Q.useContext(C);return u(q?f.Text:g,{className:v("web:select-text text-base text-foreground",J,z),...A})}import{cn as B}from"@contractspec/lib.ui-kit-core/utils";import*as R from"@rn-primitives/label";import{Platform as k}from"react-native";import{jsx as w}from"react/jsx-runtime";function y({className:z,onPress:q,onLongPress:A,onPressIn:J,onPressOut:X,disabled:Y,...E}){return w(R.Root,{className:B("flex select-none flex-row items-center gap-2",k.select({web:"cursor-default leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-50 group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50"}),Y&&"opacity-50"),onPress:q,onLongPress:A,onPressIn:J,onPressOut:X,disabled:Y,children:w(R.Text,{className:B("font-medium text-foreground text-sm",k.select({web:"leading-none"}),z),...E})})}import{cn as M}from"@contractspec/lib.ui-kit-core/utils";import{cva as O}from"class-variance-authority";import{View as H}from"react-native";import{jsx as V}from"react/jsx-runtime";var L="flex",j=O([L,"flex-col"],{variants:{spacing:{none:"",xs:"gap-y-1",sm:"gap-y-2",md:"gap-y-4",lg:"gap-y-6",xl:"gap-y-8","2xl":"gap-y-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"}},defaultVariants:{spacing:"md",align:"stretch",justify:"start",width:"auto",padding:"none",gap:"none"}}),h=O([L,"flex-row"],{variants:{spacing:{none:"",xs:"gap-x-1",sm:"gap-x-2",md:"gap-x-4",lg:"gap-x-6",xl:"gap-x-8","2xl":"gap-x-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap",reverse:"flex-wrap-reverse"}},defaultVariants:{spacing:"md",align:"center",justify:"start",width:"auto",padding:"none",gap:"none",wrap:"wrap"}}),N=O([L,"flex-row"],{variants:{spacing:{none:"",xs:"gap-x-1",sm:"gap-x-2",md:"gap-x-4",lg:"gap-x-6",xl:"gap-x-8","2xl":"gap-x-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap",reverse:"flex-wrap-reverse"}},defaultVariants:{spacing:"md",align:"center",justify:"center",width:"auto",padding:"none",gap:"none",wrap:"wrap"}});function $({className:z,spacing:q,align:A,justify:J,width:X,padding:Y,gap:E,wrap:G,...I}){return V(H,{className:M(N({spacing:q,align:A,justify:J,width:X,padding:Y,gap:E,wrap:G}),z),...I})}function Jq({className:z,spacing:q,align:A,justify:J,width:X,padding:Y,gap:E,wrap:G,...I}){return V(H,{className:M(h({spacing:q,align:A,justify:J,width:X,padding:Y,gap:E,wrap:G}),z),...I})}function S({className:z,spacing:q,align:A,justify:J,width:X,padding:Y,gap:E,...G}){return V(H,{className:M(j({spacing:q,align:A,justify:J,width:X,padding:Y,gap:E}),z),...G})}import{cn as Z}from"@contractspec/lib.ui-kit-core/utils";import*as W from"@rn-primitives/slot";import{Platform as P}from"react-native";import{jsx as _}from"react/jsx-runtime";function Zq({className:z,asChild:q=!1,...A}){return _(q?W.Text:U,{role:"heading","aria-level":"1",className:Z("web:select-text web:scroll-m-20 font-extrabold text-4xl text-foreground tracking-tight lg:text-5xl",z),...A})}function _q({className:z,asChild:q=!1,...A}){return _(q?W.Text:U,{role:"heading","aria-level":"2",className:Z("web:select-text web:scroll-m-20 border-border border-b pb-2 font-semibold text-3xl text-foreground tracking-tight first:mt-0",z),...A})}function $q({className:z,asChild:q=!1,...A}){return _(q?W.Text:U,{role:"heading","aria-level":"3",className:Z("web:select-text web:scroll-m-20 font-semibold text-2xl text-foreground tracking-tight",z),...A})}function Dq({className:z,asChild:q=!1,...A}){return _(q?W.Text:U,{role:"heading","aria-level":"4",className:Z("web:select-text web:scroll-m-20 font-semibold text-foreground text-xl tracking-tight",z),...A})}function F({className:z,asChild:q=!1,...A}){return _(q?W.Text:U,{className:Z("web:select-text text-base text-foreground",z),...A})}function Eq({className:z,asChild:q=!1,...A}){return _(q?W.Text:U,{role:P.OS==="web"?"blockquote":void 0,className:Z("mt-6 native:mt-4 web:select-text border-border border-l-2 native:pl-3 pl-6 text-base text-foreground italic",z),...A})}function Gq({className:z,asChild:q=!1,...A}){return _(q?W.Text:U,{role:P.OS==="web"?"code":void 0,className:Z("relative web:select-text rounded-md bg-muted px-[0.3rem] py-[0.2rem] font-semibold text-foreground text-sm",z),...A})}function Qq({className:z,asChild:q=!1,...A}){return _(q?W.Text:U,{className:Z("web:select-text text-muted-foreground text-xl",z),...A})}function Rq({className:z,asChild:q=!1,...A}){return _(q?W.Text:U,{className:Z("web:select-text font-semibold text-foreground text-xl",z),...A})}function Iq({className:z,asChild:q=!1,...A}){return _(q?W.Text:U,{className:Z("web:select-text font-medium text-foreground text-sm leading-none",z),...A})}function Mq({className:z,asChild:q=!1,...A}){return _(q?W.Text:U,{className:Z("web:select-text text-muted-foreground text-sm",z),...A})}import{cn as m}from"@contractspec/lib.ui-kit-core/utils";import*as T from"@rn-primitives/separator";import{jsx as x}from"react/jsx-runtime";function b({className:z,orientation:q="horizontal",decorative:A=!0,...J}){return x(T.Root,{decorative:A,orientation:q,className:m("shrink-0 bg-border",q==="horizontal"?"h-px w-full":"h-full w-px",z),...J})}import{cn as D}from"@contractspec/lib.ui-kit-core/utils";import{cva as d}from"class-variance-authority";import{useMemo as n}from"react";import{jsx as K,jsxs as l}from"react/jsx-runtime";function Tq({className:z,...q}){return K($,{"data-slot":"field-set",className:D("flex flex-col gap-6","has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3",z),...q})}function bq({className:z,variant:q="legend",...A}){return K($,{"data-slot":"field-legend","data-variant":q,className:D("mb-3 font-medium","data-[variant=legend]:text-base","data-[variant=label]:text-sm",z),...A})}function vq({className:z,...q}){return K($,{"data-slot":"field-group",className:D("group/field-group @container/field-group flex w-full flex-col gap-7 data-[slot=checkbox-group]:gap-3 data-[slot=field-group]:*:gap-4",z),...q})}var o=d("group/field flex w-full gap-3 data-[invalid=true]:text-destructive",{variants:{orientation:{vertical:["flex-col *:w-full [&>.sr-only]:w-auto"],horizontal:["flex-row items-center","data-[slot=field-label]:*:flex-auto","has-[>[data-slot=field-content]]:items-start has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px"],responsive:["@md/field-group:flex-row flex-col @md/field-group:items-center *:w-full @md/field-group:*:w-auto [&>.sr-only]:w-auto","@md/field-group:data-[slot=field-label]:*:flex-auto","@md/field-group:has-[>[data-slot=field-content]]:items-start @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px"]}},defaultVariants:{orientation:"vertical"}});function gq({className:z,orientation:q="vertical",...A}){return K($,{role:"group","data-slot":"field","data-orientation":q,className:D(o({orientation:q}),z),...A})}function Cq({className:z,...q}){return K($,{"data-slot":"field-content",className:D("group/field-content flex flex-1 flex-col gap-1.5 leading-snug",z),...q})}function uq({className:z,...q}){return K(y,{"data-slot":"field-label",className:D("group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50","has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col has-[>[data-slot=field]]:rounded-md has-[>[data-slot=field]]:border *:data-[slot=field]:p-4","has-data-[state=checked]:border-primary has-data-[state=checked]:bg-primary/5 dark:has-data-[state=checked]:bg-primary/10",z),...q})}function jq({className:z,...q}){return K($,{"data-slot":"field-label",className:D("flex w-fit items-center gap-2 font-medium text-sm leading-snug group-data-[disabled=true]/field:opacity-50",z),...q})}function hq({className:z,...q}){return K(F,{"data-slot":"field-description",className:D("font-normal text-muted-foreground text-sm leading-normal group-has-data-[orientation=horizontal]/field:text-balance","nth-last-2:-mt-1 last:mt-0 [[data-variant=legend]+&]:-mt-1.5","[&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4",z),...q})}function Nq({children:z,className:q,...A}){return l($,{"data-slot":"field-separator","data-content":!!z,className:D("relative -my-2 h-5 text-sm group-data-[variant=outline]/field-group:-mb-2",q),...A,children:[K(b,{className:"absolute inset-0 top-1/2"}),z&&K($,{className:"relative mx-auto block w-fit bg-background px-2 text-muted-foreground","data-slot":"field-separator-content",children:z})]})}function mq({className:z,children:q,errors:A,...J}){let X=n(()=>{if(q)return q;if(!A?.length)return null;if(A?.length==1)return A[0]?.message;return K(S,{className:"ml-4 flex list-disc flex-col gap-1",children:A.map((Y,E)=>Y?.message&&K(F,{children:Y.message},E))})},[q,A]);if(!X)return null;return K($,{role:"alert","data-slot":"field-error",className:D("font-normal text-destructive text-sm",z),...J,children:X})}export{jq as FieldTitle,Tq as FieldSet,Nq as FieldSeparator,bq as FieldLegend,uq as FieldLabel,vq as FieldGroup,mq as FieldError,hq as FieldDescription,Cq as FieldContent,gq as Field};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as v}from"@contractspec/lib.ui-kit-core/utils";import*as V from"@rn-primitives/slot";import*as z from"react";import{Text as I}from"react-native";import{jsx as b}from"react/jsx-runtime";var T=z.createContext(void 0);function J({className:A,asChild:q=!1,...E}){let G=z.useContext(T);return b(q?V.Text:I,{className:v("web:select-text text-base text-foreground",G,A),...E})}import{cn as R}from"@contractspec/lib.ui-kit-core/utils";import*as B from"@rn-primitives/label";import{Platform as y}from"react-native";import{jsx as D}from"react/jsx-runtime";function H({className:A,onPress:q,onLongPress:E,onPressIn:G,onPressOut:X,disabled:$,...Z}){return D(B.Root,{className:R("flex select-none flex-row items-center gap-2",y.select({web:"cursor-default leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-50 group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50"}),$&&"opacity-50"),onPress:q,onLongPress:E,onPressIn:G,onPressOut:X,disabled:$,children:D(B.Text,{className:R("font-medium text-foreground text-sm",y.select({web:"leading-none"}),A),...Z})})}import{cn as U}from"@contractspec/lib.ui-kit-core/utils";import*as K from"@rn-primitives/slot";import{Platform as M}from"react-native";import{jsx as W}from"react/jsx-runtime";function l({className:A,asChild:q=!1,...E}){return W(q?K.Text:J,{role:"heading","aria-level":"1",className:U("web:select-text web:scroll-m-20 font-extrabold text-4xl text-foreground tracking-tight lg:text-5xl",A),...E})}function t({className:A,asChild:q=!1,...E}){return W(q?K.Text:J,{role:"heading","aria-level":"2",className:U("web:select-text web:scroll-m-20 border-border border-b pb-2 font-semibold text-3xl text-foreground tracking-tight first:mt-0",A),...E})}function o({className:A,asChild:q=!1,...E}){return W(q?K.Text:J,{role:"heading","aria-level":"3",className:U("web:select-text web:scroll-m-20 font-semibold text-2xl text-foreground tracking-tight",A),...E})}function a({className:A,asChild:q=!1,...E}){return W(q?K.Text:J,{role:"heading","aria-level":"4",className:U("web:select-text web:scroll-m-20 font-semibold text-foreground text-xl tracking-tight",A),...E})}function O({className:A,asChild:q=!1,...E}){return W(q?K.Text:J,{className:U("web:select-text text-base text-foreground",A),...E})}function r({className:A,asChild:q=!1,...E}){return W(q?K.Text:J,{role:M.OS==="web"?"blockquote":void 0,className:U("mt-6 native:mt-4 web:select-text border-border border-l-2 native:pl-3 pl-6 text-base text-foreground italic",A),...E})}function e({className:A,asChild:q=!1,...E}){return W(q?K.Text:J,{role:M.OS==="web"?"code":void 0,className:U("relative web:select-text rounded-md bg-muted px-[0.3rem] py-[0.2rem] font-semibold text-foreground text-sm",A),...E})}function s({className:A,asChild:q=!1,...E}){return W(q?K.Text:J,{className:U("web:select-text text-muted-foreground text-xl",A),...E})}function qq({className:A,asChild:q=!1,...E}){return W(q?K.Text:J,{className:U("web:select-text font-semibold text-foreground text-xl",A),...E})}function Aq({className:A,asChild:q=!1,...E}){return W(q?K.Text:J,{className:U("web:select-text font-medium text-foreground text-sm leading-none",A),...E})}function Eq({className:A,asChild:q=!1,...E}){return W(q?K.Text:J,{className:U("web:select-text text-muted-foreground text-sm",A),...E})}import{cn as Q}from"@contractspec/lib.ui-kit-core/utils";import*as S from"@rn-primitives/slot";import*as Y from"react";import{Controller as P,FormProvider as f,useFormContext as u,useFormState as j}from"react-hook-form";import{View as L}from"react-native";import{zodResolver as Rq}from"@hookform/resolvers/zod";import{useFieldArray as Dq,useForm as Hq}from"react-hook-form";import{jsx as _}from"react/jsx-runtime";var Zq=f,g=Y.createContext({}),_q=({...A})=>{return _(g.Provider,{value:{name:A.name},children:_(P,{...A})})},w=()=>{let A=Y.useId(),q=Y.useContext(g),E=Y.useContext(k),{getFieldState:G}=u();if(!q?.name)throw Error("useFormField should be used within <FormField>");let X=j({name:q.name}),$=G(q.name,X),Z=E?.id??A;return{id:Z,name:q.name,formItemId:`${Z}-form-item`,formDescriptionId:`${Z}-form-item-description`,formMessageId:`${Z}-form-item-message`,...$}},k=Y.createContext({});function $q({className:A,...q}){let E=Y.useId();return _(k.Provider,{value:{id:E},children:_(L,{"data-slot":"form-item",className:Q("flex flex-col gap-2",A),...q})})}function zq({className:A,...q}){let{error:E,formItemId:G}=w();return _(H,{"data-slot":"form-label","data-error":!!E,className:Q("data-[error=true]:text-destructive",A),htmlFor:G,...q})}function Bq({asChild:A=!1,...q}){let E=A?S.Text:L,{error:G,formItemId:X,formDescriptionId:$,formMessageId:Z}=w();return _(E,{"data-slot":"form-control",id:X,"aria-describedby":!G?`${$}`:`${$} ${Z}`,"aria-invalid":!!G,...q})}function Qq({className:A,...q}){let{formDescriptionId:E}=w();return _(O,{"data-slot":"form-description",nativeID:E,className:Q("text-muted-foreground text-sm",A),...q})}function wq({className:A,...q}){let{error:E,formMessageId:G}=w(),X=E?String(E?.message??""):q.children;if(!X)return null;return _(O,{"data-slot":"form-message",nativeID:G,className:Q("text-destructive text-sm",A),...q,children:X})}export{Rq as zodResolver,w as useFormField,Hq as useForm,Dq as useFieldArray,wq as FormMessage,zq as FormLabel,$q as FormItem,_q as FormField,Qq as FormDescription,Bq as FormControl,Zq as Form};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as M}from"@contractspec/lib.ui-kit-core/utils";import*as L from"@rn-primitives/slot";import*as z from"react";import{Text as Q}from"react-native";import{jsx as U}from"react/jsx-runtime";var J=z.createContext(void 0);function y({className:B,asChild:D=!1,...E}){let G=z.useContext(J);return U(D?L.Text:Q,{className:M("web:select-text text-base text-foreground",G,B),...E})}import{cn as V}from"@contractspec/lib.ui-kit-core/utils";import*as q from"@rn-primitives/hover-card";import{Platform as W,StyleSheet as X}from"react-native";import Y,{FadeIn as Z}from"react-native-reanimated";import{jsx as w}from"react/jsx-runtime";var k=q.Root,O=q.Trigger;function S({className:B,align:D="center",sideOffset:E=4,...G}){let{open:K}=q.useRootContext();return w(q.Portal,{children:w(q.Overlay,{style:W.OS!=="web"?X.absoluteFill:void 0,children:w(Y.View,{entering:Z,children:w(J.Provider,{value:"text-popover-foreground",children:w(q.Content,{align:D,sideOffset:E,className:V("data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-64 web:cursor-auto rounded-md border border-border bg-popover p-4 shadow-foreground/5 shadow-md web:outline-hidden",K?"web:fade-in-0 web:zoom-in-95 web:animate-in":"web:fade-out-0 web:zoom-out-95 web:animate-out",B),...G})})})})})}export{O as HoverCardTrigger,S as HoverCardContent,k as HoverCard};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{styled as o}from"nativewind";function t(e){o(e,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}import{Check as i}from"lucide-react-native";t(i);export{i as Check};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{styled as e}from"nativewind";function t(o){e(o,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}import{ChevronDown as i}from"lucide-react-native";t(i);export{i as ChevronDown};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{styled as o}from"nativewind";function t(e){o(e,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}import{ChevronRight as i}from"lucide-react-native";t(i);export{i as ChevronRight};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{styled as o}from"nativewind";function t(e){o(e,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}import{ChevronUp as i}from"lucide-react-native";t(i);export{i as ChevronUp};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{styled as o}from"nativewind";function t(e){o(e,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}t(i);export{i as CircleUserRoundIcon};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{styled as e}from"nativewind";function t(o){e(o,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}t(i);export{i as Info};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{styled as e}from"nativewind";function t(o){e(o,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}t(i);export{i as KeyRoundIcon};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{styled as e}from"nativewind";function t(o){e(o,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}t(i);export{i as MoonStar};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{styled as o}from"nativewind";function t(e){o(e,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}t(i);export{i as Sun};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{styled as o}from"nativewind";function t(e){o(e,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}import{X as i}from"lucide-react-native";t(i);export{i as X};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{styled as e}from"nativewind";function o(t){e(t,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}export{o as iconWithClassName};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as k}from"@contractspec/lib.ui-kit-core/utils";import*as H from"@rn-primitives/slot";import*as U from"react";import{Text as w}from"react-native";import{jsx as C}from"react/jsx-runtime";var X=U.createContext(void 0);function z({className:D,asChild:q=!1,...E}){let F=U.useContext(X);return C(q?H.Text:w,{className:k("web:select-text text-base text-foreground",F,D),...E})}import{cn as h}from"@contractspec/lib.ui-kit-core/utils";import{cva as G}from"class-variance-authority";import{Pressable as T}from"react-native";import{jsx as B}from"react/jsx-runtime";var b=G("group flex items-center justify-center rounded-md web:ring-offset-background web:transition-colors web:focus-visible:outline-hidden web:focus-visible:ring-2 web:focus-visible:ring-ring web:focus-visible:ring-offset-2",{variants:{variant:{default:"bg-primary web:hover:opacity-90 active:opacity-90",destructive:"bg-destructive web:hover:opacity-90 active:opacity-90",outline:"border border-input bg-background web:hover:bg-accent web:hover:text-accent-foreground active:bg-accent",secondary:"bg-secondary web:hover:opacity-80 active:opacity-80",ghost:"web:hover:bg-accent web:hover:text-accent-foreground active:bg-accent",link:"web:underline-offset-4 web:hover:underline web:focus:underline"},size:{default:"h-10 native:h-12 native:px-5 px-4 native:py-3 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 native:h-14 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),v=G("web:whitespace-nowrap font-medium native:text-base text-foreground text-sm web:transition-colors",{variants:{variant:{default:"text-primary-foreground",destructive:"text-destructive-foreground",outline:"group-active:text-accent-foreground",secondary:"text-secondary-foreground group-active:text-secondary-foreground",ghost:"group-active:text-accent-foreground",link:"text-primary group-active:underline"},size:{default:"",sm:"",lg:"native:text-lg",icon:""}},defaultVariants:{variant:"default",size:"default"}});function S({ref:D,className:q,variant:E,size:F,...J}){return B(X.Provider,{value:v({variant:E,size:F,className:"web:pointer-events-none"}),children:B(T,{className:h(J.disabled&&"web:pointer-events-none opacity-50",b({variant:E,size:F,className:q})),ref:D,role:"button",...J})})}import{cn as Y}from"@contractspec/lib.ui-kit-core/utils";import{cva as Z}from"class-variance-authority";import{View as _}from"react-native";import{jsx as P}from"react/jsx-runtime";var $="flex",g=Z([$,"flex-col"],{variants:{spacing:{none:"",xs:"gap-y-1",sm:"gap-y-2",md:"gap-y-4",lg:"gap-y-6",xl:"gap-y-8","2xl":"gap-y-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"}},defaultVariants:{spacing:"md",align:"stretch",justify:"start",width:"auto",padding:"none",gap:"none"}}),d=Z([$,"flex-row"],{variants:{spacing:{none:"",xs:"gap-x-1",sm:"gap-x-2",md:"gap-x-4",lg:"gap-x-6",xl:"gap-x-8","2xl":"gap-x-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap",reverse:"flex-wrap-reverse"}},defaultVariants:{spacing:"md",align:"center",justify:"start",width:"auto",padding:"none",gap:"none",wrap:"wrap"}}),j=Z([$,"flex-row"],{variants:{spacing:{none:"",xs:"gap-x-1",sm:"gap-x-2",md:"gap-x-4",lg:"gap-x-6",xl:"gap-x-8","2xl":"gap-x-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap",reverse:"flex-wrap-reverse"}},defaultVariants:{spacing:"md",align:"center",justify:"center",width:"auto",padding:"none",gap:"none",wrap:"wrap"}});function Eq({className:D,spacing:q,align:E,justify:F,width:J,padding:M,gap:O,wrap:Q,...W}){return P(_,{className:Y(j({spacing:q,align:E,justify:F,width:J,padding:M,gap:O,wrap:Q}),D),...W})}function A({className:D,spacing:q,align:E,justify:F,width:J,padding:M,gap:O,wrap:Q,...W}){return P(_,{className:Y(d({spacing:q,align:E,justify:F,width:J,padding:M,gap:O,wrap:Q}),D),...W})}function Fq({className:D,spacing:q,align:E,justify:F,width:J,padding:M,gap:O,...Q}){return P(_,{className:Y(g({spacing:q,align:E,justify:F,width:J,padding:M,gap:O}),D),...Q})}import{cn as f}from"@contractspec/lib.ui-kit-core/utils";import{TextInput as N}from"react-native";import{jsx as m}from"react/jsx-runtime";function y({className:D,placeholderClassName:q,...E}){return m(N,{className:f("web:flex h-10 native:h-12 web:w-full rounded-md border border-input bg-background px-3 web:py-2 native:text-lg text-base text-foreground native:leading-tight web:ring-offset-background file:border-0 file:bg-transparent file:font-medium placeholder:text-muted-foreground web:focus-visible:outline-hidden web:focus-visible:ring-2 web:focus-visible:ring-ring web:focus-visible:ring-offset-2 lg:text-sm",E.editable===!1&&"web:cursor-not-allowed opacity-50",D),placeholderClassName:f("text-muted-foreground",q),...E})}import{cn as I}from"@contractspec/lib.ui-kit-core/utils";import*as V from"react";import{TextInput as x}from"react-native";import{jsx as u}from"react/jsx-runtime";var R=V.forwardRef(({className:D,placeholderClassName:q,...E},F)=>{return u(x,{ref:F,className:I("web:flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 native:text-lg text-base text-foreground native:leading-tight web:ring-offset-background file:border-0 file:bg-transparent file:font-medium placeholder:text-muted-foreground web:focus-visible:outline-hidden web:focus-visible:ring-2 web:focus-visible:ring-ring web:focus-visible:ring-offset-2 lg:text-sm",E.editable===!1&&"web:cursor-not-allowed opacity-50",D),placeholderClassName:I("text-muted-foreground",q),multiline:!0,...E})});R.displayName="Textarea";import{cn as K}from"@contractspec/lib.ui-kit-core/utils";import{jsx as L}from"react/jsx-runtime";function Hq({className:D,...q}){return L(A,{className:K("w-full rounded-md border border-input bg-background",D),gap:"xs",width:"full",...q})}function zq({align:D="inline-start",className:q,...E}){return L(A,{className:K("items-center px-2 py-1.5",q),gap:"xs",...E})}function Bq({className:D,...q}){return L(S,{className:K("h-8 px-2 shadow-none",D),size:"sm",variant:"ghost",...q})}function Gq({className:D,...q}){return L(z,{className:K("text-muted-foreground text-sm",D),...q})}function Sq({className:D,...q}){return L(y,{className:K("flex-1 border-0 bg-transparent shadow-none",D),...q})}function fq({className:D,...q}){return L(R,{className:K("flex-1 border-0 bg-transparent shadow-none",D),...q})}export{fq as InputGroupTextarea,Gq as InputGroupText,Sq as InputGroupInput,Bq as InputGroupButton,zq as InputGroupAddon,Hq as InputGroup};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as P}from"@contractspec/lib.ui-kit-core/utils";import*as R from"@rn-primitives/slot";import*as M from"react";import{Text as f}from"react-native";import{jsx as V}from"react/jsx-runtime";var I=M.createContext(void 0);function B({className:z,asChild:q=!1,...A}){let D=M.useContext(I);return V(q?R.Text:f,{className:P("web:select-text text-base text-foreground",D,z),...A})}import{cn as W}from"@contractspec/lib.ui-kit-core/utils";import{cva as X}from"class-variance-authority";import{View as Y}from"react-native";import{jsx as G}from"react/jsx-runtime";var Z="flex",b=X([Z,"flex-col"],{variants:{spacing:{none:"",xs:"gap-y-1",sm:"gap-y-2",md:"gap-y-4",lg:"gap-y-6",xl:"gap-y-8","2xl":"gap-y-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"}},defaultVariants:{spacing:"md",align:"stretch",justify:"start",width:"auto",padding:"none",gap:"none"}}),v=X([Z,"flex-row"],{variants:{spacing:{none:"",xs:"gap-x-1",sm:"gap-x-2",md:"gap-x-4",lg:"gap-x-6",xl:"gap-x-8","2xl":"gap-x-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap",reverse:"flex-wrap-reverse"}},defaultVariants:{spacing:"md",align:"center",justify:"start",width:"auto",padding:"none",gap:"none",wrap:"wrap"}}),y=X([Z,"flex-row"],{variants:{spacing:{none:"",xs:"gap-x-1",sm:"gap-x-2",md:"gap-x-4",lg:"gap-x-6",xl:"gap-x-8","2xl":"gap-x-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap",reverse:"flex-wrap-reverse"}},defaultVariants:{spacing:"md",align:"center",justify:"center",width:"auto",padding:"none",gap:"none",wrap:"wrap"}});function _({className:z,spacing:q,align:A,justify:D,width:E,padding:J,gap:K,wrap:L,...U}){return G(Y,{className:W(y({spacing:q,align:A,justify:D,width:E,padding:J,gap:K,wrap:L}),z),...U})}function $({className:z,spacing:q,align:A,justify:D,width:E,padding:J,gap:K,wrap:L,...U}){return G(Y,{className:W(v({spacing:q,align:A,justify:D,width:E,padding:J,gap:K,wrap:L}),z),...U})}function g({className:z,spacing:q,align:A,justify:D,width:E,padding:J,gap:K,...L}){return G(Y,{className:W(b({spacing:q,align:A,justify:D,width:E,padding:J,gap:K}),z),...L})}import{cn as H}from"@contractspec/lib.ui-kit-core/utils";import{TextInput as T}from"react-native";import{jsx as k}from"react/jsx-runtime";function O({className:z,placeholderClassName:q,...A}){return k(T,{className:H("web:flex h-10 native:h-12 web:w-full rounded-md border border-input bg-background px-3 web:py-2 native:text-lg text-base text-foreground native:leading-tight web:ring-offset-background file:border-0 file:bg-transparent file:font-medium placeholder:text-muted-foreground web:focus-visible:outline-hidden web:focus-visible:ring-2 web:focus-visible:ring-ring web:focus-visible:ring-offset-2 lg:text-sm",A.editable===!1&&"web:cursor-not-allowed opacity-50",z),placeholderClassName:H("text-muted-foreground",q),...A})}import{cn as Q}from"@contractspec/lib.ui-kit-core/utils";import{jsx as F}from"react/jsx-runtime";function p({className:z,containerClassName:q,...A}){return F($,{className:Q("items-center",q),width:"full",children:F(O,{className:z,...A})})}function t({className:z,...q}){return F($,{className:Q("items-center",z),...q})}function s({index:z,className:q,...A}){return F(_,{className:Q("h-10 w-10 items-center justify-center rounded-md border border-input",q),...A})}function a({className:z,children:q,...A}){return F(_,{className:Q("items-center justify-center px-1",z),...A,children:q??F(B,{children:"-"})})}export{s as InputOTPSlot,a as InputOTPSeparator,t as InputOTPGroup,p as InputOTP};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as S}from"@contractspec/lib.ui-kit-core/utils";import{TextInput as k}from"react-native";import{jsx as E}from"react/jsx-runtime";function K({className:q,placeholderClassName:B,...F}){return E(k,{className:S("web:flex h-10 native:h-12 web:w-full rounded-md border border-input bg-background px-3 web:py-2 native:text-lg text-base text-foreground native:leading-tight web:ring-offset-background file:border-0 file:bg-transparent file:font-medium placeholder:text-muted-foreground web:focus-visible:outline-hidden web:focus-visible:ring-2 web:focus-visible:ring-ring web:focus-visible:ring-offset-2 lg:text-sm",F.editable===!1&&"web:cursor-not-allowed opacity-50",q),placeholderClassName:S("text-muted-foreground",B),...F})}import{cn as V}from"@contractspec/lib.ui-kit-core/utils";import{Eye as A,EyeOff as g}from"lucide-react-native";import*as U from"react";import{Pressable as L,View as D}from"react-native";import{jsx as H,jsxs as P}from"react/jsx-runtime";function h(q){return q==="new"?"new-password":"current-password"}function I(q){return q==="new"?"newPassword":"password"}function m({className:q,passwordPurpose:B="current",visibilityToggle:F=!0,showLabel:W="Show password",hideLabel:X="Hide password",autoComplete:Y,editable:Z,disabled:J,...M}){let[G,_]=U.useState(!1),z=Boolean(J||Z===!1),$=G?X:W,O=G?g:A,Q=Y??h(B),R=I(B);if(!F)return H(K,{className:q,secureTextEntry:!0,autoComplete:Q,textContentType:R,editable:!z,disabled:J,...M});return P(D,{className:V("web:flex native:h-12 web:w-full flex-row items-center rounded-md border border-input bg-background px-3 text-foreground web:ring-offset-background",z&&"web:cursor-not-allowed opacity-50",q),children:[H(K,{className:"native:h-12 web:h-10 min-w-0 flex-1 border-0 bg-transparent px-0 shadow-none web:focus-visible:ring-0 web:focus-visible:ring-offset-0",secureTextEntry:!G,autoComplete:Q,textContentType:R,editable:!z,disabled:J,...M}),H(L,{accessibilityRole:"button",accessibilityLabel:$,accessibilityState:{disabled:z,selected:G},disabled:z,className:"native:h-10 native:w-10 items-center justify-center",onPress:()=>{_((f)=>!f)},children:H(O,{size:18,color:"#64748b"})})]})}export{m as InputPassword};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as g}from"@contractspec/lib.ui-kit-core/utils";import{TextInput as y}from"react-native";import{jsx as z}from"react/jsx-runtime";function D({className:q,placeholderClassName:w,...f}){return z(y,{className:g("web:flex h-10 native:h-12 web:w-full rounded-md border border-input bg-background px-3 web:py-2 native:text-lg text-base text-foreground native:leading-tight web:ring-offset-background file:border-0 file:bg-transparent file:font-medium placeholder:text-muted-foreground web:focus-visible:outline-hidden web:focus-visible:ring-2 web:focus-visible:ring-ring web:focus-visible:ring-offset-2 lg:text-sm",f.editable===!1&&"web:cursor-not-allowed opacity-50",q),placeholderClassName:g("text-muted-foreground",w),...f})}export{D as Input};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as w}from"@contractspec/lib.ui-kit-core/utils";import*as h from"@rn-primitives/label";import{Platform as y}from"react-native";import{jsx as z}from"react/jsx-runtime";function J({className:A,onPress:B,onLongPress:C,onPressIn:D,onPressOut:E,disabled:q,...F}){return z(h.Root,{className:w("flex select-none flex-row items-center gap-2",y.select({web:"cursor-default leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-50 group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50"}),q&&"opacity-50"),onPress:B,onLongPress:C,onPressIn:D,onPressOut:E,disabled:q,children:z(h.Text,{className:w("font-medium text-foreground text-sm",y.select({web:"leading-none"}),A),...F})})}export{J as Label};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as g}from"@contractspec/lib.ui-kit-core/utils";import{Link as h}from"expo-router";import{jsx as q}from"react/jsx-runtime";function y({className:d,...f}){return q(h,{className:g('className="text-primary underline"',d),...f})}export{y as Link};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as G}from"@contractspec/lib.ui-kit-core/utils";import{cva as H}from"class-variance-authority";import*as B from"react";import{Text as Q,View as E}from"react-native";import{jsx as A,jsxs as W}from"react/jsx-runtime";var J=B.createContext("unordered"),R=H("flex flex-col",{variants:{spacing:{none:"gap-0",xs:"gap-1",sm:"gap-2",md:"gap-3",lg:"gap-4"}},defaultVariants:{spacing:"sm"}});function _({className:f,type:z="unordered",spacing:q,...D}){return A(J.Provider,{value:z,children:A(E,{role:"list",className:G(R({spacing:q}),f),...D})})}var S=H("flex flex-row items-start",{variants:{tone:{default:"",muted:"text-muted-foreground"}},defaultVariants:{tone:"default"}});function U(f,z,q){if(q!==void 0)return q;if(f==="none")return!1;if(f==="ordered")return`${z??1}.`;return"•"}function $({children:f,className:z,tone:q,index:D,marker:K,...O}){let P=B.useContext(J),F=U(P,D,K);return W(E,{role:"listitem",className:G(S({tone:q}),z),...O,children:[F===!1?null:A(Q,{className:"mr-2 min-w-4 text-foreground",children:F}),A(E,{className:"flex-1",children:f})]})}export{R as listVariants,S as listItemVariants,$ as ListItem,_ as List};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as Y}from"@contractspec/lib.ui-kit-core/utils";import*as M from"@rn-primitives/slot";import*as H from"react";import{Text as Z}from"react-native";import{jsx as _}from"react/jsx-runtime";var q=H.createContext(void 0);function O({className:o,asChild:L=!1,...f}){let B=H.useContext(q);return _(L?M.Text:Z,{className:Y("web:select-text text-base text-foreground",B,o),...f})}import{cn as $}from"@contractspec/lib.ui-kit-core/utils";import{cva as U}from"class-variance-authority";import{Pressable as z}from"react-native";import{jsx as Q}from"react/jsx-runtime";var S=U("group flex items-center justify-center rounded-md web:ring-offset-background web:transition-colors web:focus-visible:outline-hidden web:focus-visible:ring-2 web:focus-visible:ring-ring web:focus-visible:ring-offset-2",{variants:{variant:{default:"bg-primary web:hover:opacity-90 active:opacity-90",destructive:"bg-destructive web:hover:opacity-90 active:opacity-90",outline:"border border-input bg-background web:hover:bg-accent web:hover:text-accent-foreground active:bg-accent",secondary:"bg-secondary web:hover:opacity-80 active:opacity-80",ghost:"web:hover:bg-accent web:hover:text-accent-foreground active:bg-accent",link:"web:underline-offset-4 web:hover:underline web:focus:underline"},size:{default:"h-10 native:h-12 native:px-5 px-4 native:py-3 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 native:h-14 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),k=U("web:whitespace-nowrap font-medium native:text-base text-foreground text-sm web:transition-colors",{variants:{variant:{default:"text-primary-foreground",destructive:"text-destructive-foreground",outline:"group-active:text-accent-foreground",secondary:"text-secondary-foreground group-active:text-secondary-foreground",ghost:"group-active:text-accent-foreground",link:"text-primary group-active:underline"},size:{default:"",sm:"",lg:"native:text-lg",icon:""}},defaultVariants:{variant:"default",size:"default"}});function W({ref:o,className:L,variant:f,size:B,...P}){return Q(q.Provider,{value:k({variant:f,size:B,className:"web:pointer-events-none"}),children:Q(z,{className:$(P.disabled&&"web:pointer-events-none opacity-50",S({variant:f,size:B,className:L})),ref:o,role:"button",...P})})}import{cn as D}from"@contractspec/lib.ui-kit-core/utils";import{cva as E}from"class-variance-authority";import{View as F}from"react-native";import{jsx as J}from"react/jsx-runtime";var G="flex",T=E([G,"flex-col"],{variants:{spacing:{none:"",xs:"gap-y-1",sm:"gap-y-2",md:"gap-y-4",lg:"gap-y-6",xl:"gap-y-8","2xl":"gap-y-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"}},defaultVariants:{spacing:"md",align:"stretch",justify:"start",width:"auto",padding:"none",gap:"none"}}),d=E([G,"flex-row"],{variants:{spacing:{none:"",xs:"gap-x-1",sm:"gap-x-2",md:"gap-x-4",lg:"gap-x-6",xl:"gap-x-8","2xl":"gap-x-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap",reverse:"flex-wrap-reverse"}},defaultVariants:{spacing:"md",align:"center",justify:"start",width:"auto",padding:"none",gap:"none",wrap:"wrap"}}),b=E([G,"flex-row"],{variants:{spacing:{none:"",xs:"gap-x-1",sm:"gap-x-2",md:"gap-x-4",lg:"gap-x-6",xl:"gap-x-8","2xl":"gap-x-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap",reverse:"flex-wrap-reverse"}},defaultVariants:{spacing:"md",align:"center",justify:"center",width:"auto",padding:"none",gap:"none",wrap:"wrap"}});function e({className:o,spacing:L,align:f,justify:B,width:P,padding:m,gap:R,wrap:A,...I}){return J(F,{className:D(b({spacing:L,align:f,justify:B,width:P,padding:m,gap:R,wrap:A}),o),...I})}function X({className:o,spacing:L,align:f,justify:B,width:P,padding:m,gap:R,wrap:A,...I}){return J(F,{className:D(d({spacing:L,align:f,justify:B,width:P,padding:m,gap:R,wrap:A}),o),...I})}function t({className:o,spacing:L,align:f,justify:B,width:P,padding:m,gap:R,...A}){return J(F,{className:D(T({spacing:L,align:f,justify:B,width:P,padding:m,gap:R}),o),...A})}import{ActivityIndicator as h}from"react-native";import{jsx as K,jsxs as y}from"react/jsx-runtime";function Bo({isLoading:o=!1,loadingText:L,children:f,disabled:B,...P}){return K(W,{disabled:B||o,...P,children:o?y(X,{className:"items-center gap-x-2",children:[K(h,{size:"small"}),K(O,{children:L||"Loading..."})]}):f})}export{Bo as LoadingButton};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as V}from"@contractspec/lib.ui-kit-core/utils";import*as M from"@rn-primitives/slot";import*as J from"react";import{Text as y}from"react-native";import{jsx as H}from"react/jsx-runtime";var B=J.createContext(void 0);function L({className:O,asChild:f=!1,...I}){let z=J.useContext(B);return H(f?M.Text:y,{className:V("web:select-text text-base text-foreground",z,O),...I})}import{cn as W}from"@contractspec/lib.ui-kit-core/utils";import{cva as X}from"class-variance-authority";import{View as Y}from"react-native";import{jsx as $}from"react/jsx-runtime";var Z="flex",k=X([Z,"flex-col"],{variants:{spacing:{none:"",xs:"gap-y-1",sm:"gap-y-2",md:"gap-y-4",lg:"gap-y-6",xl:"gap-y-8","2xl":"gap-y-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"}},defaultVariants:{spacing:"md",align:"stretch",justify:"start",width:"auto",padding:"none",gap:"none"}}),S=X([Z,"flex-row"],{variants:{spacing:{none:"",xs:"gap-x-1",sm:"gap-x-2",md:"gap-x-4",lg:"gap-x-6",xl:"gap-x-8","2xl":"gap-x-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap",reverse:"flex-wrap-reverse"}},defaultVariants:{spacing:"md",align:"center",justify:"start",width:"auto",padding:"none",gap:"none",wrap:"wrap"}}),v=X([Z,"flex-row"],{variants:{spacing:{none:"",xs:"gap-x-1",sm:"gap-x-2",md:"gap-x-4",lg:"gap-x-6",xl:"gap-x-8","2xl":"gap-x-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap",reverse:"flex-wrap-reverse"}},defaultVariants:{spacing:"md",align:"center",justify:"center",width:"auto",padding:"none",gap:"none",wrap:"wrap"}});function r({className:O,spacing:f,align:I,justify:z,width:D,padding:E,gap:F,wrap:G,...U}){return $(Y,{className:W(v({spacing:f,align:I,justify:z,width:D,padding:E,gap:F,wrap:G}),O),...U})}function j({className:O,spacing:f,align:I,justify:z,width:D,padding:E,gap:F,wrap:G,...U}){return $(Y,{className:W(S({spacing:f,align:I,justify:z,width:D,padding:E,gap:F,wrap:G}),O),...U})}function _({className:O,spacing:f,align:I,justify:z,width:D,padding:E,gap:F,...G}){return $(Y,{className:W(k({spacing:f,align:I,justify:z,width:D,padding:E,gap:F}),O),...G})}import{cn as b}from"@contractspec/lib.ui-kit-core/utils";import*as A from"@rn-primitives/slot";import{Platform as P}from"react-native";import{jsx as q}from"react/jsx-runtime";function i({className:O,asChild:f=!1,...I}){return q(f?A.Text:L,{role:"heading","aria-level":"1",className:b("web:select-text web:scroll-m-20 font-extrabold text-4xl text-foreground tracking-tight lg:text-5xl",O),...I})}function l({className:O,asChild:f=!1,...I}){return q(f?A.Text:L,{role:"heading","aria-level":"2",className:b("web:select-text web:scroll-m-20 border-border border-b pb-2 font-semibold text-3xl text-foreground tracking-tight first:mt-0",O),...I})}function Q({className:O,asChild:f=!1,...I}){return q(f?A.Text:L,{role:"heading","aria-level":"3",className:b("web:select-text web:scroll-m-20 font-semibold text-2xl text-foreground tracking-tight",O),...I})}function c({className:O,asChild:f=!1,...I}){return q(f?A.Text:L,{role:"heading","aria-level":"4",className:b("web:select-text web:scroll-m-20 font-semibold text-foreground text-xl tracking-tight",O),...I})}function p({className:O,asChild:f=!1,...I}){return q(f?A.Text:L,{className:b("web:select-text text-base text-foreground",O),...I})}function a({className:O,asChild:f=!1,...I}){return q(f?A.Text:L,{role:P.OS==="web"?"blockquote":void 0,className:b("mt-6 native:mt-4 web:select-text border-border border-l-2 native:pl-3 pl-6 text-base text-foreground italic",O),...I})}function s({className:O,asChild:f=!1,...I}){return q(f?A.Text:L,{role:P.OS==="web"?"code":void 0,className:b("relative web:select-text rounded-md bg-muted px-[0.3rem] py-[0.2rem] font-semibold text-foreground text-sm",O),...I})}function I0({className:O,asChild:f=!1,...I}){return q(f?A.Text:L,{className:b("web:select-text text-muted-foreground text-xl",O),...I})}function O0({className:O,asChild:f=!1,...I}){return q(f?A.Text:L,{className:b("web:select-text font-semibold text-foreground text-xl",O),...I})}function f0({className:O,asChild:f=!1,...I}){return q(f?A.Text:L,{className:b("web:select-text font-medium text-foreground text-sm leading-none",O),...I})}function z0({className:O,asChild:f=!1,...I}){return q(f?A.Text:L,{className:b("web:select-text text-muted-foreground text-sm",O),...I})}import{ActivityIndicator as u,View as g}from"react-native";import{jsx as K,jsxs as R}from"react/jsx-runtime";function F0({isVisible:O,title:f="Loading...",subtitle:I}){if(!O)return null;return K(g,{style:{position:"absolute",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(255, 255, 255, 0.9)",justifyContent:"center",alignItems:"center",zIndex:1000},children:R(_,{className:"items-center gap-y-4",children:[K(u,{size:"large",color:"#6b7280"}),R(_,{className:"items-center gap-y-2",children:[K(Q,{className:"text-center",children:f}),I&&K(L,{className:"text-center text-muted-foreground",children:I})]})]})})}export{F0 as LoadingOverlay};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as Q}from"@contractspec/lib.ui-kit-core/utils";import*as Y from"@rn-primitives/slot";import*as I from"react";import{Text as B}from"react-native";import{jsx as H}from"react/jsx-runtime";var R=I.createContext(void 0);function N({className:f,asChild:V=!1,...w}){let y=I.useContext(R);return H(V?Y.Text:B,{className:Q("web:select-text text-base text-foreground",y,f),...w})}import{cn as K}from"@contractspec/lib.ui-kit-core/utils";import{cva as O}from"class-variance-authority";import{View as U}from"react-native";import{jsx as X}from"react/jsx-runtime";var W="flex",g=O([W,"flex-col"],{variants:{spacing:{none:"",xs:"gap-y-1",sm:"gap-y-2",md:"gap-y-4",lg:"gap-y-6",xl:"gap-y-8","2xl":"gap-y-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"}},defaultVariants:{spacing:"md",align:"stretch",justify:"start",width:"auto",padding:"none",gap:"none"}}),b=O([W,"flex-row"],{variants:{spacing:{none:"",xs:"gap-x-1",sm:"gap-x-2",md:"gap-x-4",lg:"gap-x-6",xl:"gap-x-8","2xl":"gap-x-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap",reverse:"flex-wrap-reverse"}},defaultVariants:{spacing:"md",align:"center",justify:"start",width:"auto",padding:"none",gap:"none",wrap:"wrap"}}),u=O([W,"flex-row"],{variants:{spacing:{none:"",xs:"gap-x-1",sm:"gap-x-2",md:"gap-x-4",lg:"gap-x-6",xl:"gap-x-8","2xl":"gap-x-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap",reverse:"flex-wrap-reverse"}},defaultVariants:{spacing:"md",align:"center",justify:"center",width:"auto",padding:"none",gap:"none",wrap:"wrap"}});function i({className:f,spacing:V,align:w,justify:y,width:D,padding:E,gap:F,wrap:G,...J}){return X(U,{className:K(u({spacing:V,align:w,justify:y,width:D,padding:E,gap:F,wrap:G}),f),...J})}function s({className:f,spacing:V,align:w,justify:y,width:D,padding:E,gap:F,wrap:G,...J}){return X(U,{className:K(b({spacing:V,align:w,justify:y,width:D,padding:E,gap:F,wrap:G}),f),...J})}function m({className:f,spacing:V,align:w,justify:y,width:D,padding:E,gap:F,...G}){return X(U,{className:K(g({spacing:V,align:w,justify:y,width:D,padding:E,gap:F}),f),...G})}import{cn as _}from"@contractspec/lib.ui-kit-core/utils";import*as A from"@rn-primitives/slot";import{Platform as Z}from"react-native";import{jsx as z}from"react/jsx-runtime";function yf({className:f,asChild:V=!1,...w}){return z(V?A.Text:N,{role:"heading","aria-level":"1",className:_("web:select-text web:scroll-m-20 font-extrabold text-4xl text-foreground tracking-tight lg:text-5xl",f),...w})}function mf({className:f,asChild:V=!1,...w}){return z(V?A.Text:N,{role:"heading","aria-level":"2",className:_("web:select-text web:scroll-m-20 border-border border-b pb-2 font-semibold text-3xl text-foreground tracking-tight first:mt-0",f),...w})}function $({className:f,asChild:V=!1,...w}){return z(V?A.Text:N,{role:"heading","aria-level":"3",className:_("web:select-text web:scroll-m-20 font-semibold text-2xl text-foreground tracking-tight",f),...w})}function Lf({className:f,asChild:V=!1,...w}){return z(V?A.Text:N,{role:"heading","aria-level":"4",className:_("web:select-text web:scroll-m-20 font-semibold text-foreground text-xl tracking-tight",f),...w})}function Nf({className:f,asChild:V=!1,...w}){return z(V?A.Text:N,{className:_("web:select-text text-base text-foreground",f),...w})}function Af({className:f,asChild:V=!1,...w}){return z(V?A.Text:N,{role:Z.OS==="web"?"blockquote":void 0,className:_("mt-6 native:mt-4 web:select-text border-border border-l-2 native:pl-3 pl-6 text-base text-foreground italic",f),...w})}function _f({className:f,asChild:V=!1,...w}){return z(V?A.Text:N,{role:Z.OS==="web"?"code":void 0,className:_("relative web:select-text rounded-md bg-muted px-[0.3rem] py-[0.2rem] font-semibold text-foreground text-sm",f),...w})}function zf({className:f,asChild:V=!1,...w}){return z(V?A.Text:N,{className:_("web:select-text text-muted-foreground text-xl",f),...w})}function Df({className:f,asChild:V=!1,...w}){return z(V?A.Text:N,{className:_("web:select-text font-semibold text-foreground text-xl",f),...w})}function Ef({className:f,asChild:V=!1,...w}){return z(V?A.Text:N,{className:_("web:select-text font-medium text-foreground text-sm leading-none",f),...w})}function Ff({className:f,asChild:V=!1,...w}){return z(V?A.Text:N,{className:_("web:select-text text-muted-foreground text-sm",f),...w})}import{cn as v}from"@contractspec/lib.ui-kit-core/utils";import*as P from"react";import h,{useAnimatedStyle as T,useSharedValue as o,withRepeat as e,withSequence as C,withTiming as q}from"react-native-reanimated";import{jsx as l}from"react/jsx-runtime";var M=1000;function k({className:f,...V}){let w=o(1);P.useEffect(()=>{w.value=e(C(q(0.5,{duration:M}),q(1,{duration:M})),-1)},[]);let y=T(()=>({opacity:w.value}));return l(h.View,{style:y,className:v("rounded-md bg-secondary dark:bg-muted",f),...V})}import{View as r}from"react-native";import{SafeAreaView as c}from"react-native-safe-area-context";import{jsx as S,jsxs as L}from"react/jsx-runtime";function qf({title:f="Loading...",variant:V="default"}){return S(c,{style:{flex:1},children:S(r,{style:{flex:1,padding:16,justifyContent:"center"},children:(()=>{switch(V){case"profile":return L(m,{className:"gap-y-6",children:[L(m,{className:"gap-y-2",children:[S(k,{className:"h-8 w-3/4"}),S(k,{className:"h-4 w-1/2"})]}),L(m,{className:"gap-y-4",children:[S(k,{className:"h-16 w-16 rounded-full"}),L(m,{className:"gap-y-2",children:[S(k,{className:"h-6 w-2/3"}),S(k,{className:"h-4 w-1/2"})]})]}),L(m,{className:"gap-y-3",children:[S(k,{className:"h-4 w-full"}),S(k,{className:"h-4 w-5/6"}),S(k,{className:"h-4 w-3/4"})]})]});case"form":return L(m,{className:"gap-y-6",children:[L(m,{className:"gap-y-2",children:[S(k,{className:"h-8 w-3/4"}),S(k,{className:"h-4 w-1/2"})]}),L(m,{className:"gap-y-4",children:[L(m,{className:"gap-y-2",children:[S(k,{className:"h-4 w-1/4"}),S(k,{className:"h-12 w-full"})]}),L(m,{className:"gap-y-2",children:[S(k,{className:"h-4 w-1/4"}),S(k,{className:"h-12 w-full"})]}),S(k,{className:"h-12 w-full"})]})]});case"list":return L(m,{className:"gap-y-4",children:[S(k,{className:"h-8 w-1/2"}),[...Array(5)].map((y,D)=>L(m,{className:"gap-y-2",children:[S(k,{className:"h-6 w-3/4"}),S(k,{className:"h-4 w-1/2"})]},D))]});default:return L(m,{className:"gap-y-4",children:[S($,{className:"text-center text-muted-foreground",children:f}),S(k,{className:"h-8 w-full"}),S(k,{className:"h-6 w-3/4"}),S(k,{className:"h-6 w-1/2"})]})}})()})})}export{qf as LoadingScreen};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as z}from"@contractspec/lib.ui-kit-core/utils";import*as I from"@rn-primitives/slot";import*as m from"react";import{Text as A}from"react-native";import{jsx as E}from"react/jsx-runtime";var D=m.createContext(void 0);function u({className:f,asChild:r=!1,...w}){let g=m.useContext(D);return E(r?I.Text:A,{className:z("web:select-text text-base text-foreground",g,f),...w})}import{cn as F}from"@contractspec/lib.ui-kit-core/utils";import*as V from"@rn-primitives/slot";import{Platform as S}from"react-native";import{jsx as e}from"react/jsx-runtime";function $({className:f,asChild:r=!1,...w}){return e(r?V.Text:u,{role:"heading","aria-level":"1",className:F("web:select-text web:scroll-m-20 font-extrabold text-4xl text-foreground tracking-tight lg:text-5xl",f),...w})}function k({className:f,asChild:r=!1,...w}){return e(r?V.Text:u,{role:"heading","aria-level":"2",className:F("web:select-text web:scroll-m-20 border-border border-b pb-2 font-semibold text-3xl text-foreground tracking-tight first:mt-0",f),...w})}function B({className:f,asChild:r=!1,...w}){return e(r?V.Text:u,{role:"heading","aria-level":"3",className:F("web:select-text web:scroll-m-20 font-semibold text-2xl text-foreground tracking-tight",f),...w})}function Q({className:f,asChild:r=!1,...w}){return e(r?V.Text:u,{role:"heading","aria-level":"4",className:F("web:select-text web:scroll-m-20 font-semibold text-foreground text-xl tracking-tight",f),...w})}function P({className:f,asChild:r=!1,...w}){return e(r?V.Text:u,{className:F("web:select-text text-base text-foreground",f),...w})}function R({className:f,asChild:r=!1,...w}){return e(r?V.Text:u,{role:S.OS==="web"?"blockquote":void 0,className:F("mt-6 native:mt-4 web:select-text border-border border-l-2 native:pl-3 pl-6 text-base text-foreground italic",f),...w})}function d({className:f,asChild:r=!1,...w}){return e(r?V.Text:u,{role:S.OS==="web"?"code":void 0,className:F("relative web:select-text rounded-md bg-muted px-[0.3rem] py-[0.2rem] font-semibold text-foreground text-sm",f),...w})}function L({className:f,asChild:r=!1,...w}){return e(r?V.Text:u,{className:F("web:select-text text-muted-foreground text-xl",f),...w})}function t({className:f,asChild:r=!1,...w}){return e(r?V.Text:u,{className:F("web:select-text font-semibold text-foreground text-xl",f),...w})}function n({className:f,asChild:r=!1,...w}){return e(r?V.Text:u,{className:F("web:select-text font-medium text-foreground text-sm leading-none",f),...w})}function v({className:f,asChild:r=!1,...w}){return e(r?V.Text:u,{className:F("web:select-text text-muted-foreground text-sm",f),...w})}import{clsx as J}from"clsx";import{twMerge as K}from"tailwind-merge";function G(...f){return K(J(f))}import{View as o}from"react-native";import{jsx as b,jsxs as M}from"react/jsx-runtime";function p({items:f,columns:r=3,className:w}){let g=r===4?"md:grid-cols-4":r===2?"md:grid-cols-2":"md:grid-cols-3";return b(o,{className:G("mx-auto max-w-6xl py-12",w),children:b(o,{className:G("flex flex-col gap-6 md:flex-row md:flex-wrap",g),children:f.map((y,q)=>M(o,{className:"flex-1 rounded-lg border p-6",children:[y.icon&&b(o,{className:"mb-3 text-primary",children:y.icon}),b(u,{className:"font-semibold text-lg",children:y.title}),y.description&&b(P,{className:"mt-2 text-base text-muted-foreground",children:y.description})]},q))})})}export{p as FeatureGrid};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as W}from"@contractspec/lib.ui-kit-core/utils";import*as F from"@rn-primitives/slot";import*as D from"react";import{Text as X}from"react-native";import{jsx as Y}from"react/jsx-runtime";var E=D.createContext(void 0);function R({className:g,asChild:w=!1,...f}){let k=D.useContext(E);return Y(w?F.Text:X,{className:W("web:select-text text-base text-foreground",k,g),...f})}import{cn as Z}from"@contractspec/lib.ui-kit-core/utils";import{cva as I}from"class-variance-authority";import{Pressable as _}from"react-native";import{jsx as G}from"react/jsx-runtime";var $=I("group flex items-center justify-center rounded-md web:ring-offset-background web:transition-colors web:focus-visible:outline-hidden web:focus-visible:ring-2 web:focus-visible:ring-ring web:focus-visible:ring-offset-2",{variants:{variant:{default:"bg-primary web:hover:opacity-90 active:opacity-90",destructive:"bg-destructive web:hover:opacity-90 active:opacity-90",outline:"border border-input bg-background web:hover:bg-accent web:hover:text-accent-foreground active:bg-accent",secondary:"bg-secondary web:hover:opacity-80 active:opacity-80",ghost:"web:hover:bg-accent web:hover:text-accent-foreground active:bg-accent",link:"web:underline-offset-4 web:hover:underline web:focus:underline"},size:{default:"h-10 native:h-12 native:px-5 px-4 native:py-3 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 native:h-14 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),b=I("web:whitespace-nowrap font-medium native:text-base text-foreground text-sm web:transition-colors",{variants:{variant:{default:"text-primary-foreground",destructive:"text-destructive-foreground",outline:"group-active:text-accent-foreground",secondary:"text-secondary-foreground group-active:text-secondary-foreground",ghost:"group-active:text-accent-foreground",link:"text-primary group-active:underline"},size:{default:"",sm:"",lg:"native:text-lg",icon:""}},defaultVariants:{variant:"default",size:"default"}});function A({ref:g,className:w,variant:f,size:k,...z}){return G(E.Provider,{value:b({variant:f,size:k,className:"web:pointer-events-none"}),children:G(_,{className:Z(z.disabled&&"web:pointer-events-none opacity-50",$({variant:f,size:k,className:w})),ref:g,role:"button",...z})})}import{cn as L}from"@contractspec/lib.ui-kit-core/utils";import*as B from"@rn-primitives/slot";import{Platform as J}from"react-native";import{jsx as V}from"react/jsx-runtime";function l({className:g,asChild:w=!1,...f}){return V(w?B.Text:R,{role:"heading","aria-level":"1",className:L("web:select-text web:scroll-m-20 font-extrabold text-4xl text-foreground tracking-tight lg:text-5xl",g),...f})}function e({className:g,asChild:w=!1,...f}){return V(w?B.Text:R,{role:"heading","aria-level":"2",className:L("web:select-text web:scroll-m-20 border-border border-b pb-2 font-semibold text-3xl text-foreground tracking-tight first:mt-0",g),...f})}function t({className:g,asChild:w=!1,...f}){return V(w?B.Text:R,{role:"heading","aria-level":"3",className:L("web:select-text web:scroll-m-20 font-semibold text-2xl text-foreground tracking-tight",g),...f})}function r({className:g,asChild:w=!1,...f}){return V(w?B.Text:R,{role:"heading","aria-level":"4",className:L("web:select-text web:scroll-m-20 font-semibold text-foreground text-xl tracking-tight",g),...f})}function K({className:g,asChild:w=!1,...f}){return V(w?B.Text:R,{className:L("web:select-text text-base text-foreground",g),...f})}function x({className:g,asChild:w=!1,...f}){return V(w?B.Text:R,{role:J.OS==="web"?"blockquote":void 0,className:L("mt-6 native:mt-4 web:select-text border-border border-l-2 native:pl-3 pl-6 text-base text-foreground italic",g),...f})}function C({className:g,asChild:w=!1,...f}){return V(w?B.Text:R,{role:J.OS==="web"?"code":void 0,className:L("relative web:select-text rounded-md bg-muted px-[0.3rem] py-[0.2rem] font-semibold text-foreground text-sm",g),...f})}function c({className:g,asChild:w=!1,...f}){return V(w?B.Text:R,{className:L("web:select-text text-muted-foreground text-xl",g),...f})}function p({className:g,asChild:w=!1,...f}){return V(w?B.Text:R,{className:L("web:select-text font-semibold text-foreground text-xl",g),...f})}function a({className:g,asChild:w=!1,...f}){return V(w?B.Text:R,{className:L("web:select-text font-medium text-foreground text-sm leading-none",g),...f})}function s({className:g,asChild:w=!1,...f}){return V(w?B.Text:R,{className:L("web:select-text text-muted-foreground text-sm",g),...f})}import{clsx as u}from"clsx";import{twMerge as Q}from"tailwind-merge";function M(...g){return Q(u(g))}import{Link as O}from"expo-router";import{View as P}from"react-native";import{jsx as q,jsxs as U}from"react/jsx-runtime";function Df({title:g,subtitle:w,primaryCta:f,secondaryCta:k,className:z}){return U(P,{className:M("mx-auto max-w-4xl py-16",z),children:[q(R,{className:"font-bold text-4xl tracking-tight md:text-5xl",children:g}),w&&q(K,{className:"mt-4 text-lg text-muted-foreground md:text-xl",children:w}),(f||k)&&U(P,{className:"mt-8 flex flex-row items-center justify-center gap-3",children:[f&&(f.href?q(A,{size:"lg",children:q(O,{href:f.href,children:f.label})}):q(A,{size:"lg",onPress:f.onClick,children:f.label})),k&&(k.href?q(A,{variant:"outline",size:"lg",children:q(O,{href:k.href,children:k.label})}):q(A,{variant:"outline",size:"lg",onPress:k.onClick,children:k.label}))]})]})}export{Df as Hero};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as G}from"@contractspec/lib.ui-kit-core/utils";import*as n from"@rn-primitives/slot";import*as o from"react";import{Text as I}from"react-native";import{jsx as J}from"react/jsx-runtime";var S=o.createContext(void 0);function w({className:e,asChild:g=!1,...f}){let m=o.useContext(S);return J(g?n.Text:I,{className:G("web:select-text text-base text-foreground",m,e),...f})}import{cn as K}from"@contractspec/lib.ui-kit-core/utils";import{cva as A}from"class-variance-authority";import{Pressable as L}from"react-native";import{jsx as q}from"react/jsx-runtime";var M=A("group flex items-center justify-center rounded-md web:ring-offset-background web:transition-colors web:focus-visible:outline-hidden web:focus-visible:ring-2 web:focus-visible:ring-ring web:focus-visible:ring-offset-2",{variants:{variant:{default:"bg-primary web:hover:opacity-90 active:opacity-90",destructive:"bg-destructive web:hover:opacity-90 active:opacity-90",outline:"border border-input bg-background web:hover:bg-accent web:hover:text-accent-foreground active:bg-accent",secondary:"bg-secondary web:hover:opacity-80 active:opacity-80",ghost:"web:hover:bg-accent web:hover:text-accent-foreground active:bg-accent",link:"web:underline-offset-4 web:hover:underline web:focus:underline"},size:{default:"h-10 native:h-12 native:px-5 px-4 native:py-3 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 native:h-14 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),O=A("web:whitespace-nowrap font-medium native:text-base text-foreground text-sm web:transition-colors",{variants:{variant:{default:"text-primary-foreground",destructive:"text-destructive-foreground",outline:"group-active:text-accent-foreground",secondary:"text-secondary-foreground group-active:text-secondary-foreground",ghost:"group-active:text-accent-foreground",link:"text-primary group-active:underline"},size:{default:"",sm:"",lg:"native:text-lg",icon:""}},defaultVariants:{variant:"default",size:"default"}});function k({ref:e,className:g,variant:f,size:m,...V}){return q(S.Provider,{value:O({variant:f,size:m,className:"web:pointer-events-none"}),children:q(L,{className:K(V.disabled&&"web:pointer-events-none opacity-50",M({variant:f,size:m,className:g})),ref:e,role:"button",...V})})}import{cn as u}from"@contractspec/lib.ui-kit-core/utils";import*as r from"@rn-primitives/slot";import{Platform as D}from"react-native";import{jsx as y}from"react/jsx-runtime";function N({className:e,asChild:g=!1,...f}){return y(g?r.Text:w,{role:"heading","aria-level":"1",className:u("web:select-text web:scroll-m-20 font-extrabold text-4xl text-foreground tracking-tight lg:text-5xl",e),...f})}function t({className:e,asChild:g=!1,...f}){return y(g?r.Text:w,{role:"heading","aria-level":"2",className:u("web:select-text web:scroll-m-20 border-border border-b pb-2 font-semibold text-3xl text-foreground tracking-tight first:mt-0",e),...f})}function c({className:e,asChild:g=!1,...f}){return y(g?r.Text:w,{role:"heading","aria-level":"3",className:u("web:select-text web:scroll-m-20 font-semibold text-2xl text-foreground tracking-tight",e),...f})}function x({className:e,asChild:g=!1,...f}){return y(g?r.Text:w,{role:"heading","aria-level":"4",className:u("web:select-text web:scroll-m-20 font-semibold text-foreground text-xl tracking-tight",e),...f})}function E({className:e,asChild:g=!1,...f}){return y(g?r.Text:w,{className:u("web:select-text text-base text-foreground",e),...f})}function C({className:e,asChild:g=!1,...f}){return y(g?r.Text:w,{role:D.OS==="web"?"blockquote":void 0,className:u("mt-6 native:mt-4 web:select-text border-border border-l-2 native:pl-3 pl-6 text-base text-foreground italic",e),...f})}function p({className:e,asChild:g=!1,...f}){return y(g?r.Text:w,{role:D.OS==="web"?"code":void 0,className:u("relative web:select-text rounded-md bg-muted px-[0.3rem] py-[0.2rem] font-semibold text-foreground text-sm",e),...f})}function j({className:e,asChild:g=!1,...f}){return y(g?r.Text:w,{className:u("web:select-text text-muted-foreground text-xl",e),...f})}function a({className:e,asChild:g=!1,...f}){return y(g?r.Text:w,{className:u("web:select-text font-semibold text-foreground text-xl",e),...f})}function s({className:e,asChild:g=!1,...f}){return y(g?r.Text:w,{className:u("web:select-text font-medium text-foreground text-sm leading-none",e),...f})}function ff({className:e,asChild:g=!1,...f}){return y(g?r.Text:w,{className:u("web:select-text text-muted-foreground text-sm",e),...f})}import{clsx as W}from"clsx";import{twMerge as X}from"tailwind-merge";function B(...e){return X(W(e))}import{Link as Y}from"expo-router";import{View as P}from"react-native";import{jsx as b,jsxs as U}from"react/jsx-runtime";function Sf({tiers:e,className:g}){return U(P,{className:B("mx-auto max-w-6xl py-12",g),children:[b(P,{className:"flex flex-col gap-6 md:flex-row md:flex-wrap",children:e.map((f,m)=>U(P,{className:B("flex flex-1 flex-col rounded-lg border p-6",f.highlighted&&"border-primary shadow-lg"),children:[b(w,{className:"mb-2 font-medium text-base text-muted-foreground",children:f.name}),b(w,{className:"font-semibold text-3xl",children:f.price}),f.tagline&&b(w,{className:"mt-1 text-base text-muted-foreground",children:f.tagline}),b(P,{className:"mt-4 flex flex-col gap-2",children:f.features.map((V,F)=>U(P,{className:"flex flex-row items-start gap-2",children:[b(P,{className:"mt-1 h-1.5 w-1.5 rounded-full bg-primary"}),b(w,{className:"text-base",children:V})]},F))}),f.cta&&b(P,{className:"mt-6",children:f.cta.href?b(k,{className:"w-full",children:b(Y,{href:f.cta.href,children:f.cta.label})}):b(k,{className:"w-full",onPress:f.cta.onClick,children:f.cta.label})})]},m))}),b(E,{className:"mt-6 text-center text-base text-muted-foreground",children:"Usage-based tiers inspired by generous free allowances and per-unit pricing."})]})}export{Sf as PricingTable};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{m as PricingTable,i as Hero,t as FeatureGrid};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{styled as D}from"nativewind";function B(y){D(y,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}import{ChevronDown as K}from"lucide-react-native";B(K);import{cn as U}from"@contractspec/lib.ui-kit-core/utils";import*as _ from"@rn-primitives/slot";import*as F from"react";import{Text as G}from"react-native";import{jsx as H}from"react/jsx-runtime";var J=F.createContext(void 0);function d({className:y,asChild:W=!1,...L}){let A=F.useContext(J);return H(W?_.Text:G,{className:U("web:select-text text-base text-foreground",A,y),...L})}import{Check as O}from"lucide-react-native";B(O);import{ChevronUp as Q}from"lucide-react-native";B(Q);import{ChevronRight as X}from"lucide-react-native";B(X);import{cn as z}from"@contractspec/lib.ui-kit-core/utils";import*as f from"@rn-primitives/menubar";import{Platform as I,Text as P,View as Y}from"react-native";import{jsx as q,jsxs as Z}from"react/jsx-runtime";var a=f.Menu,e=f.Group,s=f.Portal,ff=f.Sub,yf=f.RadioGroup;function Wf({className:y,...W}){return q(f.Root,{className:z("flex h-10 native:h-12 flex-row items-center gap-x-1 rounded-md border border-border bg-background p-1",y),...W})}function Lf({className:y,...W}){let{value:L}=f.useRootContext(),{value:A}=f.useMenuContext();return q(f.Trigger,{className:z("flex native:h-10 web:cursor-default web:select-none flex-row items-center rounded-xs native:px-5 px-3 native:py-0 py-1.5 font-medium text-sm web:outline-hidden web:focus:bg-accent web:focus:text-accent-foreground active:bg-accent",L===A&&"bg-accent text-accent-foreground",y),...W})}function qf({className:y,inset:W,children:L,...A}){let{open:E}=f.useSubContext(),$=I.OS==="web"?X:E?Q:K;return q(J.Provider,{value:z("select-none native:text-lg text-primary text-sm",E&&"native:text-accent-foreground"),children:Z(f.SubTrigger,{className:z("flex web:cursor-default web:select-none flex-row items-center gap-2 rounded-xs px-2 native:py-2 py-1.5 web:outline-hidden web:hover:bg-accent web:focus:bg-accent active:bg-accent",E&&"bg-accent",W&&"pl-8",y),...A,children:[L,q($,{size:18,className:"ml-auto text-foreground"})]})})}function zf({className:y,...W}){let{open:L}=f.useSubContext();return q(f.SubContent,{className:z("data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 mt-1 min-w-32 overflow-hidden rounded-md border border-border bg-popover p-1 shadow-foreground/5 shadow-md",L?"web:fade-in-0 web:zoom-in-95 web:animate-in":"web:fade-out-0 web:zoom-out web:animate-out",y),...W})}function Af({className:y,portalHost:W,...L}){let{value:A}=f.useRootContext(),{value:E}=f.useMenuContext();return q(f.Portal,{hostName:W,children:q(f.Content,{className:z("z-50 min-w-32 overflow-hidden rounded-md border border-border bg-popover p-1 shadow-foreground/5 shadow-md",A===E?"web:fade-in-0 web:zoom-in-95 web:animate-in":"web:fade-out-0 web:zoom-out-95 web:animate-out",y),...L})})}function Bf({className:y,inset:W,...L}){return q(J.Provider,{value:"select-none text-sm native:text-lg text-popover-foreground web:group-focus:text-accent-foreground",children:q(f.Item,{className:z("group relative flex web:cursor-default flex-row items-center gap-2 rounded-xs px-2 native:py-2 py-1.5 web:outline-hidden web:hover:bg-accent web:focus:bg-accent active:bg-accent",W&&"pl-8",L.disabled&&"web:pointer-events-none opacity-50",y),...L})})}function Ef({className:y,children:W,checked:L,...A}){return Z(f.CheckboxItem,{className:z("web:group relative flex web:cursor-default flex-row items-center rounded-xs native:py-2 py-1.5 pr-2 pl-8 web:outline-hidden web:focus:bg-accent active:bg-accent",A.disabled&&"web:pointer-events-none opacity-50",y),checked:L,...A,children:[q(Y,{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:q(f.ItemIndicator,{children:q(O,{size:14,strokeWidth:3,className:"text-foreground"})})}),W]})}function Ff({className:y,children:W,...L}){return Z(f.RadioItem,{className:z("web:group relative flex web:cursor-default flex-row items-center rounded-xs native:py-2 py-1.5 pr-2 pl-8 web:outline-hidden web:focus:bg-accent active:bg-accent",L.disabled&&"web:pointer-events-none opacity-50",y),...L,children:[q(Y,{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:q(f.ItemIndicator,{children:q(Y,{className:"h-2 w-2 rounded-full bg-foreground"})})}),W]})}function Jf({className:y,inset:W,...L}){return q(f.Label,{className:z("web:cursor-default px-2 py-1.5 font-semibold native:text-base text-foreground text-sm",W&&"pl-8",y),...L})}function Kf({className:y,...W}){return q(f.Separator,{className:z("-mx-1 my-1 h-px bg-border",y),...W})}function Of({className:y,...W}){return q(P,{className:z("ml-auto native:text-sm text-muted-foreground text-xs tracking-widest",y),...W})}export{Lf as MenubarTrigger,qf as MenubarSubTrigger,zf as MenubarSubContent,ff as MenubarSub,Of as MenubarShortcut,Kf as MenubarSeparator,Ff as MenubarRadioItem,yf as MenubarRadioGroup,s as MenubarPortal,a as MenubarMenu,Jf as MenubarLabel,Bf as MenubarItem,e as MenubarGroup,Af as MenubarContent,Ef as MenubarCheckboxItem,Wf as Menubar};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var o="todo";export{o as autocomplete};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{styled as Km}from"nativewind";function _(m){Km(m,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}import{ChevronDown as F}from"lucide-react-native";_(F);import{cn as Qm}from"@contractspec/lib.ui-kit-core/utils";import*as e from"@rn-primitives/slot";import*as P from"react";import{Text as Ym}from"react-native";import{jsx as Zm}from"react/jsx-runtime";var k=P.createContext(void 0);function Q({className:m,asChild:y=!1,...W}){let E=P.useContext(k);return Zm(y?e.Text:Ym,{className:Qm("web:select-text text-base text-foreground",E,m),...W})}import{cn as _m}from"@contractspec/lib.ui-kit-core/utils";import{cva as c}from"class-variance-authority";import{Pressable as Gm}from"react-native";import{jsx as t}from"react/jsx-runtime";var Tm=c("group flex items-center justify-center rounded-md web:ring-offset-background web:transition-colors web:focus-visible:outline-hidden web:focus-visible:ring-2 web:focus-visible:ring-ring web:focus-visible:ring-offset-2",{variants:{variant:{default:"bg-primary web:hover:opacity-90 active:opacity-90",destructive:"bg-destructive web:hover:opacity-90 active:opacity-90",outline:"border border-input bg-background web:hover:bg-accent web:hover:text-accent-foreground active:bg-accent",secondary:"bg-secondary web:hover:opacity-80 active:opacity-80",ghost:"web:hover:bg-accent web:hover:text-accent-foreground active:bg-accent",link:"web:underline-offset-4 web:hover:underline web:focus:underline"},size:{default:"h-10 native:h-12 native:px-5 px-4 native:py-3 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 native:h-14 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),zm=c("web:whitespace-nowrap font-medium native:text-base text-foreground text-sm web:transition-colors",{variants:{variant:{default:"text-primary-foreground",destructive:"text-destructive-foreground",outline:"group-active:text-accent-foreground",secondary:"text-secondary-foreground group-active:text-secondary-foreground",ghost:"group-active:text-accent-foreground",link:"text-primary group-active:underline"},size:{default:"",sm:"",lg:"native:text-lg",icon:""}},defaultVariants:{variant:"default",size:"default"}});function f({ref:m,className:y,variant:W,size:E,...I}){return t(k.Provider,{value:zm({variant:W,size:E,className:"web:pointer-events-none"}),children:t(Gm,{className:_m(I.disabled&&"web:pointer-events-none opacity-50",Tm({variant:W,size:E,className:y})),ref:m,role:"button",...I})})}import{cn as j}from"@contractspec/lib.ui-kit-core/utils";import*as U from"@rn-primitives/label";import{Platform as n}from"react-native";import{jsx as l}from"react/jsx-runtime";function i({className:m,onPress:y,onLongPress:W,onPressIn:E,onPressOut:I,disabled:$,...J}){return l(U.Root,{className:j("flex select-none flex-row items-center gap-2",n.select({web:"cursor-default leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-50 group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50"}),$&&"opacity-50"),onPress:y,onLongPress:W,onPressIn:E,onPressOut:I,disabled:$,children:l(U.Text,{className:j("font-medium text-foreground text-sm",n.select({web:"leading-none"}),m),...J})})}import{Check as S}from"lucide-react-native";_(S);import{ChevronUp as L}from"lucide-react-native";_(L);import{cn as Y}from"@contractspec/lib.ui-kit-core/utils";import*as R from"@rn-primitives/select";import{Platform as u,StyleSheet as Am,View as Om}from"react-native";import fm,{FadeIn as Dm,FadeOut as Fm}from"react-native-reanimated";import{jsx as X,jsxs as V}from"react/jsx-runtime";var a=R.Root,_0=R.Group,s=R.Value;function mm({ref:m,className:y,children:W,...E}){return V(R.Trigger,{ref:m,className:Y("flex h-10 native:h-12 flex-row items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-muted-foreground text-sm web:ring-offset-background web:focus:outline-hidden web:focus:ring-2 web:focus:ring-ring web:focus:ring-offset-2 [&>span]:line-clamp-1",E.disabled&&"web:cursor-not-allowed opacity-50",y),...E,children:[W,X(F,{size:16,"aria-hidden":!0,className:"text-foreground opacity-50"})]})}function Pm({className:m,...y}){if(u.OS!=="web")return null;return X(R.ScrollUpButton,{className:Y("flex web:cursor-default items-center justify-center py-1",m),...y,children:X(L,{size:14,className:"text-foreground"})})}function Um({className:m,...y}){if(u.OS!=="web")return null;return X(R.ScrollDownButton,{className:Y("flex web:cursor-default items-center justify-center py-1",m),...y,children:X(F,{size:14,className:"text-foreground"})})}function ym({className:m,children:y,position:W="popper",portalHost:E,...I}){let{open:$}=R.useRootContext();return X(R.Portal,{hostName:E,children:X(R.Overlay,{style:u.OS!=="web"?Am.absoluteFill:void 0,children:X(fm.View,{className:"z-50",entering:Dm,exiting:Fm,children:V(R.Content,{className:Y("data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-96 min-w-32 rounded-md border border-border bg-popover px-1 py-2 shadow-foreground/10 shadow-md",W==="popper"&&"data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=bottom]:translate-y-1 data-[side=top]:-translate-y-1",$?"web:fade-in-0 web:zoom-in-95 web:animate-in":"web:fade-out-0 web:zoom-out-95 web:animate-out",m),position:W,...I,children:[X(Pm,{}),X(R.Viewport,{className:Y("p-1",W==="popper"&&"h-(--radix-select-trigger-height) w-full min-w-(--radix-select-trigger-width)"),children:y}),X(Um,{})]})})})})}function G0({className:m,...y}){return X(R.Label,{className:Y("py-1.5 pr-2 native:pb-2 native:pl-10 pl-8 font-semibold native:text-base text-popover-foreground text-sm",m),...y})}function N({className:m,children:y,...W}){return V(R.Item,{className:Y("web:group relative flex w-full web:cursor-default web:select-none flex-row items-center rounded-xs native:py-2 py-1.5 pr-2 native:pl-10 pl-8 web:outline-hidden web:hover:bg-accent/50 web:focus:bg-accent active:bg-accent",W.disabled&&"web:pointer-events-none opacity-50",m),...W,children:[X(Om,{className:"absolute left-2 native:left-3.5 flex h-3.5 w-3.5 items-center justify-center native:pt-px",children:X(R.ItemIndicator,{children:X(S,{size:16,strokeWidth:3,className:"text-popover-foreground"})})}),X(R.ItemText,{className:"native:text-base native:text-lg text-popover-foreground text-sm web:group-focus:text-accent-foreground"})]})}function T0({className:m,...y}){return X(R.Separator,{className:Y("-mx-1 my-1 h-px bg-muted",m),...y})}import{cn as w}from"@contractspec/lib.ui-kit-core/utils";import{cva as h}from"class-variance-authority";import{View as v}from"react-native";import{jsx as b}from"react/jsx-runtime";var C="flex",Bm=h([C,"flex-col"],{variants:{spacing:{none:"",xs:"gap-y-1",sm:"gap-y-2",md:"gap-y-4",lg:"gap-y-6",xl:"gap-y-8","2xl":"gap-y-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"}},defaultVariants:{spacing:"md",align:"stretch",justify:"start",width:"auto",padding:"none",gap:"none"}}),km=h([C,"flex-row"],{variants:{spacing:{none:"",xs:"gap-x-1",sm:"gap-x-2",md:"gap-x-4",lg:"gap-x-6",xl:"gap-x-8","2xl":"gap-x-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap",reverse:"flex-wrap-reverse"}},defaultVariants:{spacing:"md",align:"center",justify:"start",width:"auto",padding:"none",gap:"none",wrap:"wrap"}}),Sm=h([C,"flex-row"],{variants:{spacing:{none:"",xs:"gap-x-1",sm:"gap-x-2",md:"gap-x-4",lg:"gap-x-6",xl:"gap-x-8","2xl":"gap-x-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap",reverse:"flex-wrap-reverse"}},defaultVariants:{spacing:"md",align:"center",justify:"center",width:"auto",padding:"none",gap:"none",wrap:"wrap"}});function F0({className:m,spacing:y,align:W,justify:E,width:I,padding:$,gap:J,wrap:K,...H}){return b(v,{className:w(Sm({spacing:y,align:W,justify:E,width:I,padding:$,gap:J,wrap:K}),m),...H})}function g({className:m,spacing:y,align:W,justify:E,width:I,padding:$,gap:J,wrap:K,...H}){return b(v,{className:w(km({spacing:y,align:W,justify:E,width:I,padding:$,gap:J,wrap:K}),m),...H})}function P0({className:m,spacing:y,align:W,justify:E,width:I,padding:$,gap:J,...K}){return b(v,{className:w(Bm({spacing:y,align:W,justify:E,width:I,padding:$,gap:J}),m),...K})}import{View as Lm}from"react-native";import{jsx as G,jsxs as Z}from"react/jsx-runtime";var o=({value:m,options:y,onChange:W,placeholder:E="Sélectionner...",label:I,disabled:$=!1,className:J="",showCounts:K=!1})=>{return Z(g,{className:`space-y-2 ${J}`,children:[I&&G(i,{className:"font-medium text-base text-foreground",children:I}),Z(a,{value:m,onValueChange:W,disabled:$,children:[G(mm,{className:"w-full",children:G(s,{placeholder:E})}),Z(ym,{className:"bg-background",children:[Z(N,{value:"all",label:"Tous",children:[G(Q,{children:"Tous"}),K&&Z(Lm,{className:"ml-2 text-muted-foreground text-sm",children:["(",y.reduce((H,D)=>H+(D.count||0),0),")"]})]}),y.map((H)=>G(N,{value:H.value,label:H.label,children:Z(g,{className:"flex w-full items-center justify-between",children:[G(Q,{children:H.label}),K&&H.count!==void 0&&Z(Q,{className:"ml-2 text-muted-foreground text-sm",children:["(",H.count,")"]})]})},H.value))]})]})]})};import{cn as Rm}from"@contractspec/lib.ui-kit-core/utils";import{TextInput as um}from"react-native";import{jsx as Nm}from"react/jsx-runtime";function Wm({className:m,placeholderClassName:y,...W}){return Nm(um,{className:Rm("web:flex h-10 native:h-12 web:w-full rounded-md border border-input bg-background px-3 web:py-2 native:text-lg text-base text-foreground native:leading-tight web:ring-offset-background file:border-0 file:bg-transparent file:font-medium placeholder:text-muted-foreground web:focus-visible:outline-hidden web:focus-visible:ring-2 web:focus-visible:ring-ring web:focus-visible:ring-offset-2 lg:text-sm",W.editable===!1&&"web:cursor-not-allowed opacity-50",m),placeholderClassName:Rm("text-muted-foreground",y),...W})}import{Search as Vm,X as wm}from"lucide-react";import{View as d}from"react-native";import{jsx as T,jsxs as Em}from"react/jsx-runtime";var r=({value:m,onChange:y,placeholder:W="Rechercher...",onClear:E,disabled:I=!1,className:$=""})=>{let J=()=>{y(""),E?.()};return Em(d,{className:`relative w-full ${$}`,children:[T(d,{className:"pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3",children:T(Vm,{className:"h-4 w-4 text-muted-foreground"})}),T(Wm,{value:m,onChange:(K)=>y(K.nativeEvent.text),placeholder:W,editable:!I,className:"pr-10 pl-10"}),m&&T(d,{className:"absolute inset-y-0 right-0 flex items-center pr-3",children:Em(f,{variant:"ghost",size:"sm",onPress:J,disabled:I,className:"h-6 w-6 p-0 hover:bg-transparent",children:[T(wm,{className:"h-4 w-4 text-muted-foreground hover:text-foreground"}),T(Q,{className:"sr-only",children:"Effacer la recherche"})]})})]})};import*as z from"@rn-primitives/collapsible";var Im=z.Root,$m=z.Trigger,Mm=z.Content;import{ChevronDown as hm,ChevronUp as vm,Filter as Cm}from"lucide-react";import{useState as gm}from"react";import{View as A}from"react-native";import{jsx as q,jsxs as O}from"react/jsx-runtime";var $y=({searchValue:m,onSearchChange:y,searchPlaceholder:W,filters:E=[],isLoading:I=!1,disabled:$=!1,className:J="",collapsible:K=!0,defaultCollapsed:H=!1})=>{let[D,Xm]=gm(H),x=E.length>0,B=E.filter((M)=>M.value).length,qm=K&&x,p=()=>q(A,{className:"flex flex-col gap-4 sm:flex-row sm:flex-wrap",children:E.map((M)=>q(o,{value:{value:M.value,label:M.value},options:M.options,onChange:M.onChange,label:M.label,disabled:$||I,showCounts:M.showCounts,className:"min-w-0"},M.key))});return O(A,{className:`flex flex-col gap-4 ${J}`,children:[O(A,{className:"flex flex-col gap-4 sm:flex-row",children:[q(A,{className:"flex-1",children:q(r,{value:m,onChange:y,placeholder:W,disabled:$||I,className:"w-full"})}),qm&&O(Im,{open:!D,onOpenChange:Xm,className:"sm:hidden",children:[q($m,{asChild:!0,children:O(f,{variant:"outline",className:"sm:hidden",disabled:$||I,children:[q(Cm,{className:"mr-2 h-4 w-4"}),"Filtres",B>0&&q(Q,{className:"ml-2 flex h-5 w-5 items-center justify-center rounded-full bg-primary text-primary-foreground text-sm",children:B}),D?q(hm,{className:"ml-2 h-4 w-4"}):q(vm,{className:"ml-2 h-4 w-4"})]})}),q(Mm,{className:"mt-4 space-y-4",children:q(p,{})})]})]}),x&&q(A,{className:"hidden sm:flex",children:q(p,{})}),B>0&&O(A,{className:"flex flex-wrap items-center gap-2",children:[q(Q,{className:"text-base text-muted-foreground",children:"Filtres actifs:"}),E.filter((M)=>M.value).map((M)=>{let Hm=M.options.find((Jm)=>Jm.value===M.value);return O(f,{variant:"secondary",size:"sm",onPress:()=>M.onChange(void 0),disabled:$||I,className:"h-7 px-2 text-sm",children:[M.label,": ",Hm?.label,q(Q,{className:"ml-1",children:"×"})]},M.key)})]})]})};export{$y as SearchAndFilter};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{styled as Km}from"nativewind";function _(m){Km(m,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}import{ChevronDown as P}from"lucide-react-native";_(P);import{cn as Qm}from"@contractspec/lib.ui-kit-core/utils";import*as e from"@rn-primitives/slot";import*as D from"react";import{Text as Ym}from"react-native";import{jsx as Zm}from"react/jsx-runtime";var B=D.createContext(void 0);function Q({className:m,asChild:y=!1,...W}){let E=D.useContext(B);return Zm(y?e.Text:Ym,{className:Qm("web:select-text text-base text-foreground",E,m),...W})}import{cn as _m}from"@contractspec/lib.ui-kit-core/utils";import{cva as c}from"class-variance-authority";import{Pressable as Am}from"react-native";import{jsx as t}from"react/jsx-runtime";var Gm=c("group flex items-center justify-center rounded-md web:ring-offset-background web:transition-colors web:focus-visible:outline-hidden web:focus-visible:ring-2 web:focus-visible:ring-ring web:focus-visible:ring-offset-2",{variants:{variant:{default:"bg-primary web:hover:opacity-90 active:opacity-90",destructive:"bg-destructive web:hover:opacity-90 active:opacity-90",outline:"border border-input bg-background web:hover:bg-accent web:hover:text-accent-foreground active:bg-accent",secondary:"bg-secondary web:hover:opacity-80 active:opacity-80",ghost:"web:hover:bg-accent web:hover:text-accent-foreground active:bg-accent",link:"web:underline-offset-4 web:hover:underline web:focus:underline"},size:{default:"h-10 native:h-12 native:px-5 px-4 native:py-3 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 native:h-14 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),Tm=c("web:whitespace-nowrap font-medium native:text-base text-foreground text-sm web:transition-colors",{variants:{variant:{default:"text-primary-foreground",destructive:"text-destructive-foreground",outline:"group-active:text-accent-foreground",secondary:"text-secondary-foreground group-active:text-secondary-foreground",ghost:"group-active:text-accent-foreground",link:"text-primary group-active:underline"},size:{default:"",sm:"",lg:"native:text-lg",icon:""}},defaultVariants:{variant:"default",size:"default"}});function F({ref:m,className:y,variant:W,size:E,...I}){return t(B.Provider,{value:Tm({variant:W,size:E,className:"web:pointer-events-none"}),children:t(Am,{className:_m(I.disabled&&"web:pointer-events-none opacity-50",Gm({variant:W,size:E,className:y})),ref:m,role:"button",...I})})}import{cn as j}from"@contractspec/lib.ui-kit-core/utils";import*as S from"@rn-primitives/label";import{Platform as n}from"react-native";import{jsx as l}from"react/jsx-runtime";function i({className:m,onPress:y,onLongPress:W,onPressIn:E,onPressOut:I,disabled:$,...J}){return l(S.Root,{className:j("flex select-none flex-row items-center gap-2",n.select({web:"cursor-default leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-50 group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50"}),$&&"opacity-50"),onPress:y,onLongPress:W,onPressIn:E,onPressOut:I,disabled:$,children:l(S.Text,{className:j("font-medium text-foreground text-sm",n.select({web:"leading-none"}),m),...J})})}import{Check as k}from"lucide-react-native";_(k);import{ChevronUp as L}from"lucide-react-native";_(L);import{cn as Y}from"@contractspec/lib.ui-kit-core/utils";import*as R from"@rn-primitives/select";import{Platform as h,StyleSheet as fm,View as zm}from"react-native";import Fm,{FadeIn as Om,FadeOut as Pm}from"react-native-reanimated";import{jsx as X,jsxs as N}from"react/jsx-runtime";var a=R.Root,Ay=R.Group,s=R.Value;function mm({ref:m,className:y,children:W,...E}){return N(R.Trigger,{ref:m,className:Y("flex h-10 native:h-12 flex-row items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-muted-foreground text-sm web:ring-offset-background web:focus:outline-hidden web:focus:ring-2 web:focus:ring-ring web:focus:ring-offset-2 [&>span]:line-clamp-1",E.disabled&&"web:cursor-not-allowed opacity-50",y),...E,children:[W,X(P,{size:16,"aria-hidden":!0,className:"text-foreground opacity-50"})]})}function Dm({className:m,...y}){if(h.OS!=="web")return null;return X(R.ScrollUpButton,{className:Y("flex web:cursor-default items-center justify-center py-1",m),...y,children:X(L,{size:14,className:"text-foreground"})})}function Sm({className:m,...y}){if(h.OS!=="web")return null;return X(R.ScrollDownButton,{className:Y("flex web:cursor-default items-center justify-center py-1",m),...y,children:X(P,{size:14,className:"text-foreground"})})}function ym({className:m,children:y,position:W="popper",portalHost:E,...I}){let{open:$}=R.useRootContext();return X(R.Portal,{hostName:E,children:X(R.Overlay,{style:h.OS!=="web"?fm.absoluteFill:void 0,children:X(Fm.View,{className:"z-50",entering:Om,exiting:Pm,children:N(R.Content,{className:Y("data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-96 min-w-32 rounded-md border border-border bg-popover px-1 py-2 shadow-foreground/10 shadow-md",W==="popper"&&"data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=bottom]:translate-y-1 data-[side=top]:-translate-y-1",$?"web:fade-in-0 web:zoom-in-95 web:animate-in":"web:fade-out-0 web:zoom-out-95 web:animate-out",m),position:W,...I,children:[X(Dm,{}),X(R.Viewport,{className:Y("p-1",W==="popper"&&"h-(--radix-select-trigger-height) w-full min-w-(--radix-select-trigger-width)"),children:y}),X(Sm,{})]})})})})}function Gy({className:m,...y}){return X(R.Label,{className:Y("py-1.5 pr-2 native:pb-2 native:pl-10 pl-8 font-semibold native:text-base text-popover-foreground text-sm",m),...y})}function u({className:m,children:y,...W}){return N(R.Item,{className:Y("web:group relative flex w-full web:cursor-default web:select-none flex-row items-center rounded-xs native:py-2 py-1.5 pr-2 native:pl-10 pl-8 web:outline-hidden web:hover:bg-accent/50 web:focus:bg-accent active:bg-accent",W.disabled&&"web:pointer-events-none opacity-50",m),...W,children:[X(zm,{className:"absolute left-2 native:left-3.5 flex h-3.5 w-3.5 items-center justify-center native:pt-px",children:X(R.ItemIndicator,{children:X(k,{size:16,strokeWidth:3,className:"text-popover-foreground"})})}),X(R.ItemText,{className:"native:text-base native:text-lg text-popover-foreground text-sm web:group-focus:text-accent-foreground"})]})}function Ty({className:m,...y}){return X(R.Separator,{className:Y("-mx-1 my-1 h-px bg-muted",m),...y})}import{cn as V}from"@contractspec/lib.ui-kit-core/utils";import{cva as w}from"class-variance-authority";import{View as v}from"react-native";import{jsx as b}from"react/jsx-runtime";var C="flex",Um=w([C,"flex-col"],{variants:{spacing:{none:"",xs:"gap-y-1",sm:"gap-y-2",md:"gap-y-4",lg:"gap-y-6",xl:"gap-y-8","2xl":"gap-y-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"}},defaultVariants:{spacing:"md",align:"stretch",justify:"start",width:"auto",padding:"none",gap:"none"}}),Bm=w([C,"flex-row"],{variants:{spacing:{none:"",xs:"gap-x-1",sm:"gap-x-2",md:"gap-x-4",lg:"gap-x-6",xl:"gap-x-8","2xl":"gap-x-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap",reverse:"flex-wrap-reverse"}},defaultVariants:{spacing:"md",align:"center",justify:"start",width:"auto",padding:"none",gap:"none",wrap:"wrap"}}),km=w([C,"flex-row"],{variants:{spacing:{none:"",xs:"gap-x-1",sm:"gap-x-2",md:"gap-x-4",lg:"gap-x-6",xl:"gap-x-8","2xl":"gap-x-12"},align:{stretch:"items-stretch",start:"items-start",center:"items-center",end:"items-end",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"},width:{auto:"w-auto",full:"w-full",screen:"w-screen",fit:"w-fit"},padding:{none:"",xs:"p-1",sm:"p-2",md:"p-4",lg:"p-6",xl:"p-8"},gap:{none:"",xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{nowrap:"flex-nowrap",wrap:"flex-wrap",reverse:"flex-wrap-reverse"}},defaultVariants:{spacing:"md",align:"center",justify:"center",width:"auto",padding:"none",gap:"none",wrap:"wrap"}});function Dy({className:m,spacing:y,align:W,justify:E,width:I,padding:$,gap:J,wrap:K,...H}){return b(v,{className:V(km({spacing:y,align:W,justify:E,width:I,padding:$,gap:J,wrap:K}),m),...H})}function g({className:m,spacing:y,align:W,justify:E,width:I,padding:$,gap:J,wrap:K,...H}){return b(v,{className:V(Bm({spacing:y,align:W,justify:E,width:I,padding:$,gap:J,wrap:K}),m),...H})}function Sy({className:m,spacing:y,align:W,justify:E,width:I,padding:$,gap:J,...K}){return b(v,{className:V(Um({spacing:y,align:W,justify:E,width:I,padding:$,gap:J}),m),...K})}import{View as Lm}from"react-native";import{jsx as A,jsxs as Z}from"react/jsx-runtime";var o=({value:m,options:y,onChange:W,placeholder:E="Sélectionner...",label:I,disabled:$=!1,className:J="",showCounts:K=!1})=>{return Z(g,{className:`space-y-2 ${J}`,children:[I&&A(i,{className:"font-medium text-base text-foreground",children:I}),Z(a,{value:m,onValueChange:W,disabled:$,children:[A(mm,{className:"w-full",children:A(s,{placeholder:E})}),Z(ym,{className:"bg-background",children:[Z(u,{value:"all",label:"Tous",children:[A(Q,{children:"Tous"}),K&&Z(Lm,{className:"ml-2 text-muted-foreground text-sm",children:["(",y.reduce((H,O)=>H+(O.count||0),0),")"]})]}),y.map((H)=>A(u,{value:H.value,label:H.label,children:Z(g,{className:"flex w-full items-center justify-between",children:[A(Q,{children:H.label}),K&&H.count!==void 0&&Z(Q,{className:"ml-2 text-muted-foreground text-sm",children:["(",H.count,")"]})]})},H.value))]})]})]})};import{cn as Rm}from"@contractspec/lib.ui-kit-core/utils";import{TextInput as hm}from"react-native";import{jsx as um}from"react/jsx-runtime";function Wm({className:m,placeholderClassName:y,...W}){return um(hm,{className:Rm("web:flex h-10 native:h-12 web:w-full rounded-md border border-input bg-background px-3 web:py-2 native:text-lg text-base text-foreground native:leading-tight web:ring-offset-background file:border-0 file:bg-transparent file:font-medium placeholder:text-muted-foreground web:focus-visible:outline-hidden web:focus-visible:ring-2 web:focus-visible:ring-ring web:focus-visible:ring-offset-2 lg:text-sm",W.editable===!1&&"web:cursor-not-allowed opacity-50",m),placeholderClassName:Rm("text-muted-foreground",y),...W})}import{Search as Nm,X as Vm}from"lucide-react";import{View as d}from"react-native";import{jsx as G,jsxs as Em}from"react/jsx-runtime";var r=({value:m,onChange:y,placeholder:W="Rechercher...",onClear:E,disabled:I=!1,className:$=""})=>{let J=()=>{y(""),E?.()};return Em(d,{className:`relative w-full ${$}`,children:[G(d,{className:"pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3",children:G(Nm,{className:"h-4 w-4 text-muted-foreground"})}),G(Wm,{value:m,onChange:(K)=>y(K.nativeEvent.text),placeholder:W,editable:!I,className:"pr-10 pl-10"}),m&&G(d,{className:"absolute inset-y-0 right-0 flex items-center pr-3",children:Em(F,{variant:"ghost",size:"sm",onPress:J,disabled:I,className:"h-6 w-6 p-0 hover:bg-transparent",children:[G(Vm,{className:"h-4 w-4 text-muted-foreground hover:text-foreground"}),G(Q,{className:"sr-only",children:"Effacer la recherche"})]})})]})};import*as T from"@rn-primitives/collapsible";var Im=T.Root,$m=T.Trigger,Mm=T.Content;import{ChevronDown as wm,ChevronUp as vm,Filter as Cm}from"lucide-react";import{useState as gm}from"react";import{View as f}from"react-native";import{jsx as q,jsxs as z}from"react/jsx-runtime";var bm=({searchValue:m,onSearchChange:y,searchPlaceholder:W,filters:E=[],isLoading:I=!1,disabled:$=!1,className:J="",collapsible:K=!0,defaultCollapsed:H=!1})=>{let[O,Xm]=gm(H),p=E.length>0,U=E.filter((M)=>M.value).length,qm=K&&p,x=()=>q(f,{className:"flex flex-col gap-4 sm:flex-row sm:flex-wrap",children:E.map((M)=>q(o,{value:{value:M.value,label:M.value},options:M.options,onChange:M.onChange,label:M.label,disabled:$||I,showCounts:M.showCounts,className:"min-w-0"},M.key))});return z(f,{className:`flex flex-col gap-4 ${J}`,children:[z(f,{className:"flex flex-col gap-4 sm:flex-row",children:[q(f,{className:"flex-1",children:q(r,{value:m,onChange:y,placeholder:W,disabled:$||I,className:"w-full"})}),qm&&z(Im,{open:!O,onOpenChange:Xm,className:"sm:hidden",children:[q($m,{asChild:!0,children:z(F,{variant:"outline",className:"sm:hidden",disabled:$||I,children:[q(Cm,{className:"mr-2 h-4 w-4"}),"Filtres",U>0&&q(Q,{className:"ml-2 flex h-5 w-5 items-center justify-center rounded-full bg-primary text-primary-foreground text-sm",children:U}),O?q(wm,{className:"ml-2 h-4 w-4"}):q(vm,{className:"ml-2 h-4 w-4"})]})}),q(Mm,{className:"mt-4 space-y-4",children:q(x,{})})]})]}),p&&q(f,{className:"hidden sm:flex",children:q(x,{})}),U>0&&z(f,{className:"flex flex-wrap items-center gap-2",children:[q(Q,{className:"text-base text-muted-foreground",children:"Filtres actifs:"}),E.filter((M)=>M.value).map((M)=>{let Hm=M.options.find((Jm)=>Jm.value===M.value);return z(F,{variant:"secondary",size:"sm",onPress:()=>M.onChange(void 0),disabled:$||I,className:"h-7 px-2 text-sm",children:[M.label,": ",Hm?.label,q(Q,{className:"ml-1",children:"×"})]},M.key)})]})]})};export{bm as SearchAndFilter};
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as p}from"@contractspec/lib.ui-kit-core/utils";import*as N from"react";import C,{useAnimatedStyle as L,useSharedValue as V,withRepeat as _,withSequence as b,withTiming as l}from"react-native-reanimated";import{jsx as y}from"react/jsx-runtime";var r=1000;function P({className:o,...m}){let f=V(1);N.useEffect(()=>{f.value=_(b(l(0.5,{duration:r}),l(1,{duration:r})),-1)},[]);let g=L(()=>({opacity:f.value}));return y(C.View,{style:g,className:p("rounded-md bg-secondary dark:bg-muted",o),...m})}import{View as z}from"react-native";import{jsx as $}from"react/jsx-runtime";function I({count:o=6,className:m="",itemClassName:f=""}){return $(z,{className:`flex flex-col gap-3 ${m}`,children:Array.from({length:o}).map((g,k)=>$(P,{className:`h-20 rounded-md ${f}`},k))})}export{I as SkeletonList};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{styled as h}from"nativewind";function g(t){h(t,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}import{ChevronDown as f}from"lucide-react-native";g(f);import{Check as b}from"lucide-react-native";g(b);import{ChevronUp as O}from"lucide-react-native";g(O);import{cn as l}from"@contractspec/lib.ui-kit-core/utils";import*as e from"@rn-primitives/select";import{Platform as R,StyleSheet as c,View as I}from"react-native";import M,{FadeIn as T,FadeOut as q}from"react-native-reanimated";import{jsx as i,jsxs as y}from"react/jsx-runtime";var G=e.Root,m=e.Group,N=e.Value;function C({ref:t,className:u,children:r,...n}){return y(e.Trigger,{ref:t,className:l("flex h-10 native:h-12 flex-row items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-muted-foreground text-sm web:ring-offset-background web:focus:outline-hidden web:focus:ring-2 web:focus:ring-ring web:focus:ring-offset-2 [&>span]:line-clamp-1",n.disabled&&"web:cursor-not-allowed opacity-50",u),...n,children:[r,i(f,{size:16,"aria-hidden":!0,className:"text-foreground opacity-50"})]})}function z({className:t,...u}){if(R.OS!=="web")return null;return i(e.ScrollUpButton,{className:l("flex web:cursor-default items-center justify-center py-1",t),...u,children:i(O,{size:14,className:"text-foreground"})})}function E({className:t,...u}){if(R.OS!=="web")return null;return i(e.ScrollDownButton,{className:l("flex web:cursor-default items-center justify-center py-1",t),...u,children:i(f,{size:14,className:"text-foreground"})})}function S({className:t,children:u,position:r="popper",portalHost:n,...a}){let{open:d}=e.useRootContext();return i(e.Portal,{hostName:n,children:i(e.Overlay,{style:R.OS!=="web"?c.absoluteFill:void 0,children:i(M.View,{className:"z-50",entering:T,exiting:q,children:y(e.Content,{className:l("data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-96 min-w-32 rounded-md border border-border bg-popover px-1 py-2 shadow-foreground/10 shadow-md",r==="popper"&&"data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=bottom]:translate-y-1 data-[side=top]:-translate-y-1",d?"web:fade-in-0 web:zoom-in-95 web:animate-in":"web:fade-out-0 web:zoom-out-95 web:animate-out",t),position:r,...a,children:[i(z,{}),i(e.Viewport,{className:l("p-1",r==="popper"&&"h-(--radix-select-trigger-height) w-full min-w-(--radix-select-trigger-width)"),children:u}),i(E,{})]})})})})}function j({className:t,...u}){return i(e.Label,{className:l("py-1.5 pr-2 native:pb-2 native:pl-10 pl-8 font-semibold native:text-base text-popover-foreground text-sm",t),...u})}function V({className:t,children:u,...r}){return y(e.Item,{className:l("web:group relative flex w-full web:cursor-default web:select-none flex-row items-center rounded-xs native:py-2 py-1.5 pr-2 native:pl-10 pl-8 web:outline-hidden web:hover:bg-accent/50 web:focus:bg-accent active:bg-accent",r.disabled&&"web:pointer-events-none opacity-50",t),...r,children:[i(I,{className:"absolute left-2 native:left-3.5 flex h-3.5 w-3.5 items-center justify-center native:pt-px",children:i(e.ItemIndicator,{children:i(b,{size:16,strokeWidth:3,className:"text-popover-foreground"})})}),i(e.ItemText,{className:"native:text-base native:text-lg text-popover-foreground text-sm web:group-focus:text-accent-foreground"})]})}function s({className:t,...u}){return i(e.Separator,{className:l("-mx-1 my-1 h-px bg-muted",t),...u})}import{jsx as o,jsxs as J}from"react/jsx-runtime";function W(t){return t==null?void 0:{value:t,label:t}}function ue({value:t,defaultValue:u,onValueChange:r,onChange:n,placeholder:a="Select option",disabled:d,className:L,children:P}){return J(G,{value:W(t),defaultValue:W(u),onValueChange:(v)=>{if(!v)return;r?.(v.value),n?.({target:{value:v.value}})},disabled:d,children:[o(C,{disabled:d,className:L,children:o(N,{placeholder:a})}),o(S,{children:o(m,{children:P})})]})}function re({value:t,label:u,children:r,disabled:n}){let a=t==null?"":String(t);return o(V,{value:a,label:u??(typeof r==="string"?r:a),disabled:n})}function ne({children:t}){return o(m,{children:t})}export{re as NativeSelectOption,ne as NativeSelectOptGroup,ue as NativeSelect};
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{styled as b}from"nativewind";function X(q){b(q,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}import{ChevronDown as Q}from"lucide-react-native";X(Q);import{cn as B}from"@contractspec/lib.ui-kit-core/utils";import*as W from"@rn-primitives/navigation-menu";import{cva as E}from"class-variance-authority";import{Platform as R,View as U}from"react-native";import Z,{Extrapolation as I,FadeInLeft as O,FadeOutLeft as f,interpolate as k,useAnimatedStyle as D,useDerivedValue as F,withTiming as Y}from"react-native-reanimated";import{jsx as y,jsxs as _}from"react/jsx-runtime";function j({className:q,children:z,...C}){return _(W.Root,{className:B("relative z-10 flex max-w-max flex-row items-center justify-center",q),...C,children:[z,R.OS==="web"&&y(L,{})]})}function m({className:q,...z}){return y(W.List,{className:B("web:group flex flex-1 web:list-none flex-row items-center justify-center gap-1",q),...z})}var N=W.Item,H=E("web:group web:inline-flex h-10 native:h-12 w-max flex-row items-center justify-center rounded-md bg-background native:px-3 px-4 py-2 font-medium text-sm web:transition-colors web:hover:bg-accent web:hover:text-accent-foreground web:focus:bg-accent web:focus:text-accent-foreground web:focus:outline-hidden active:bg-accent web:disabled:pointer-events-none disabled:opacity-50 web:data-[state=open]:bg-accent/50 web:data-active:bg-accent/50");function g({className:q,children:z,...C}){let{value:G}=W.useRootContext(),{value:J}=W.useItemContext(),K=F(()=>G===J?Y(1,{duration:250}):Y(0,{duration:200})),$=D(()=>({transform:[{rotate:`${K.value*180}deg`}],opacity:k(K.value,[0,1],[1,0.8],I.CLAMP)}));return _(W.Trigger,{className:B(H(),"web:group gap-1.5",G===J&&"bg-accent",q),...C,children:[z,y(Z.View,{style:$,children:y(Q,{size:12,className:B("relative h-3 w-3 text-foreground web:transition web:duration-200"),"aria-hidden":!0})})]})}function u({className:q,children:z,portalHost:C,...G}){let{value:J}=W.useRootContext(),{value:K}=W.useItemContext();return y(W.Portal,{hostName:C,children:y(W.Content,{className:B("w-full native:overflow-hidden native:rounded-lg native:border native:border-border native:bg-popover native:text-popover-foreground native:shadow-lg",J===K?"web:fade-in web:slide-in-from-right-20 web:animate-in":"web:fade-out web:slide-out-to-left-20 web:animate-out",q),...G,children:y(Z.View,{entering:R.OS!=="web"?O:void 0,exiting:R.OS!=="web"?f:void 0,children:z})})})}var v=W.Link;function L({className:q,...z}){return y(U,{className:B("absolute top-full left-0 flex justify-center"),children:y(U,{className:B("web:zoom-in-90 relative mt-1.5 web:h-(--radix-navigation-menu-viewport-height) w-full web:origin-top-center web:animate-in overflow-hidden rounded-md border border-border bg-popover text-popover-foreground shadow-lg",q),...z,children:y(W.Viewport,{})})})}function p({ref:q,className:z,...C}){let{value:G}=W.useRootContext(),{value:J}=W.useItemContext();return y(W.Indicator,{ref:q,className:B("top-full z-1 flex h-1.5 items-end justify-center overflow-hidden",G===J?"web:fade-in web:animate-in":"web:fade-out web:animate-out",z),...C,children:y(U,{className:"relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border shadow-foreground/5 shadow-md"})})}export{H as navigationMenuTriggerStyle,L as NavigationMenuViewport,g as NavigationMenuTrigger,m as NavigationMenuList,v as NavigationMenuLink,N as NavigationMenuItem,p as NavigationMenuIndicator,u as NavigationMenuContent,j as NavigationMenu};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cn as z}from"@contractspec/lib.ui-kit-core/utils";import*as S from"@rn-primitives/slot";import*as $ from"react";import{Text as B}from"react-native";import{jsx as R}from"react/jsx-runtime";var D=$.createContext(void 0);function O({className:q,asChild:G=!1,...J}){let K=$.useContext(D);return R(G?S.Text:B,{className:z("web:select-text text-base text-foreground",K,q),...J})}import{cn as y}from"@contractspec/lib.ui-kit-core/utils";import{cva as L}from"class-variance-authority";import{Pressable as H}from"react-native";import{jsx as F}from"react/jsx-runtime";var k=L("group flex items-center justify-center rounded-md web:ring-offset-background web:transition-colors web:focus-visible:outline-hidden web:focus-visible:ring-2 web:focus-visible:ring-ring web:focus-visible:ring-offset-2",{variants:{variant:{default:"bg-primary web:hover:opacity-90 active:opacity-90",destructive:"bg-destructive web:hover:opacity-90 active:opacity-90",outline:"border border-input bg-background web:hover:bg-accent web:hover:text-accent-foreground active:bg-accent",secondary:"bg-secondary web:hover:opacity-80 active:opacity-80",ghost:"web:hover:bg-accent web:hover:text-accent-foreground active:bg-accent",link:"web:underline-offset-4 web:hover:underline web:focus:underline"},size:{default:"h-10 native:h-12 native:px-5 px-4 native:py-3 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 native:h-14 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),w=L("web:whitespace-nowrap font-medium native:text-base text-foreground text-sm web:transition-colors",{variants:{variant:{default:"text-primary-foreground",destructive:"text-destructive-foreground",outline:"group-active:text-accent-foreground",secondary:"text-secondary-foreground group-active:text-secondary-foreground",ghost:"group-active:text-accent-foreground",link:"text-primary group-active:underline"},size:{default:"",sm:"",lg:"native:text-lg",icon:""}},defaultVariants:{variant:"default",size:"default"}});function M({ref:q,className:G,variant:J,size:K,..._}){return F(D.Provider,{value:w({variant:J,size:K,className:"web:pointer-events-none"}),children:F(H,{className:y(_.disabled&&"web:pointer-events-none opacity-50",k({variant:J,size:K,className:G})),ref:q,role:"button",..._})})}import{cn as W}from"@contractspec/lib.ui-kit-core/utils";import*as U from"@rn-primitives/slot";import{Platform as E}from"react-native";import{jsx as X}from"react/jsx-runtime";function l({className:q,asChild:G=!1,...J}){return X(G?U.Text:O,{role:"heading","aria-level":"1",className:W("web:select-text web:scroll-m-20 font-extrabold text-4xl text-foreground tracking-tight lg:text-5xl",q),...J})}function o({className:q,asChild:G=!1,...J}){return X(G?U.Text:O,{role:"heading","aria-level":"2",className:W("web:select-text web:scroll-m-20 border-border border-b pb-2 font-semibold text-3xl text-foreground tracking-tight first:mt-0",q),...J})}function t({className:q,asChild:G=!1,...J}){return X(G?U.Text:O,{role:"heading","aria-level":"3",className:W("web:select-text web:scroll-m-20 font-semibold text-2xl text-foreground tracking-tight",q),...J})}function e({className:q,asChild:G=!1,...J}){return X(G?U.Text:O,{role:"heading","aria-level":"4",className:W("web:select-text web:scroll-m-20 font-semibold text-foreground text-xl tracking-tight",q),...J})}function Q({className:q,asChild:G=!1,...J}){return X(G?U.Text:O,{className:W("web:select-text text-base text-foreground",q),...J})}function r({className:q,asChild:G=!1,...J}){return X(G?U.Text:O,{role:E.OS==="web"?"blockquote":void 0,className:W("mt-6 native:mt-4 web:select-text border-border border-l-2 native:pl-3 pl-6 text-base text-foreground italic",q),...J})}function a({className:q,asChild:G=!1,...J}){return X(G?U.Text:O,{role:E.OS==="web"?"code":void 0,className:W("relative web:select-text rounded-md bg-muted px-[0.3rem] py-[0.2rem] font-semibold text-foreground text-sm",q),...J})}function s({className:q,asChild:G=!1,...J}){return X(G?U.Text:O,{className:W("web:select-text text-muted-foreground text-xl",q),...J})}function qq({className:q,asChild:G=!1,...J}){return X(G?U.Text:O,{className:W("web:select-text font-semibold text-foreground text-xl",q),...J})}function Gq({className:q,asChild:G=!1,...J}){return X(G?U.Text:O,{className:W("web:select-text font-medium text-foreground text-sm leading-none",q),...J})}function Jq({className:q,asChild:G=!1,...J}){return X(G?U.Text:O,{className:W("web:select-text text-muted-foreground text-sm",q),...J})}import{AlertTriangle as I,Home as P,RefreshCw as V}from"lucide-react";import g from"react";import{Platform as f,View as A}from"react-native";import{jsx as Y,jsxs as Z}from"react/jsx-runtime";var v=({error:q,errorId:G,resetError:J})=>{return Y(A,{className:"flex min-h-screen items-center justify-center bg-gray-50 px-4",children:Z(A,{className:"w-full max-w-md rounded-lg bg-white p-6 shadow-lg",children:[Y(A,{className:"mb-4 flex justify-center",children:Y(I,{className:"h-12 w-12 text-red-500"})}),Y(O,{className:"mb-2 font-semibold text-2xl text-gray-900",children:"Une erreur s'est produite"}),Y(Q,{className:"mb-6 text-gray-600",children:"Nous nous excusons pour ce désagrément. Notre équipe a été notifiée et travaille à résoudre le problème."}),!1,Z(A,{className:"flex flex-col justify-center gap-3 sm:flex-row",children:[Z(M,{onPress:J,className:"flex items-center gap-2",children:[Y(V,{className:"h-4 w-4"}),"Réessayer"]}),Z(M,{onPress:()=>{if(f.OS==="web"&&typeof window<"u")window.location.href="/"},variant:"secondary",className:"flex items-center gap-2",children:[Y(P,{className:"h-4 w-4"}),"Accueil"]})]}),G&&Z(Q,{className:"mt-4 text-gray-500 text-sm",children:["Code d'erreur: ",G]})]})})};class b extends g.Component{constructor(q){super(q);this.state={hasError:!1,error:null,errorId:null}}static getDerivedStateFromError(q){return{hasError:!0,error:q}}componentDidCatch(q,G){let J=`err_${Date.now()}_${Math.random().toString(36).substring(2,11)}`;this.setState({errorId:J}),this.props.onError?.(q,G)}resetError=()=>{this.setState({hasError:!1,error:null,errorId:null})};render(){if(this.state.hasError&&this.state.error){let q=this.props.fallback||v;return Y(q,{error:this.state.error,errorId:this.state.errorId,resetError:this.resetError})}return this.props.children}}var $q=()=>{return g.useCallback((q)=>{throw q},[])};export{$q as useErrorHandler,b as ErrorBoundary};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{e as useErrorHandler,a as ErrorBoundary};
|