@lssm-tech/lib.ui-kit 4.1.6 → 8.0.3

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.
Files changed (341) hide show
  1. package/README.md +69 -17
  2. package/package.json +1311 -807
  3. package/dist/browser/index.js +0 -1
  4. package/dist/browser/ui/accordion.js +0 -1
  5. package/dist/browser/ui/alert-dialog.js +0 -1
  6. package/dist/browser/ui/alert.js +0 -1
  7. package/dist/browser/ui/aspect-ratio.js +0 -1
  8. package/dist/browser/ui/atoms/FilterSelect/FilterSelect.js +0 -1
  9. package/dist/browser/ui/atoms/FilterSelect/index.js +0 -1
  10. package/dist/browser/ui/atoms/FilterSelect/types.js +0 -0
  11. package/dist/browser/ui/atoms/LoadingSpinner/LoadingSpinner.js +0 -1
  12. package/dist/browser/ui/atoms/LoadingSpinner/index.js +0 -1
  13. package/dist/browser/ui/atoms/Pagination/Pagination.js +0 -1
  14. package/dist/browser/ui/atoms/Pagination/index.js +0 -1
  15. package/dist/browser/ui/atoms/Pagination/types.js +0 -0
  16. package/dist/browser/ui/atoms/SearchInput/SearchInput.js +0 -1
  17. package/dist/browser/ui/atoms/SearchInput/index.js +0 -1
  18. package/dist/browser/ui/atoms/SearchInput/types.js +0 -0
  19. package/dist/browser/ui/avatar.js +0 -1
  20. package/dist/browser/ui/badge.js +0 -1
  21. package/dist/browser/ui/breadcrumb.js +0 -1
  22. package/dist/browser/ui/button.js +0 -1
  23. package/dist/browser/ui/card.js +0 -1
  24. package/dist/browser/ui/carousel.js +0 -1
  25. package/dist/browser/ui/checkbox.js +0 -1
  26. package/dist/browser/ui/collapsible.js +0 -1
  27. package/dist/browser/ui/combobox.js +0 -1
  28. package/dist/browser/ui/command.js +0 -1
  29. package/dist/browser/ui/context-menu.js +0 -1
  30. package/dist/browser/ui/contracts.typecheck.js +0 -0
  31. package/dist/browser/ui/data-table.js +0 -1
  32. package/dist/browser/ui/date-picker.js +0 -1
  33. package/dist/browser/ui/date-range-picker.js +0 -1
  34. package/dist/browser/ui/datetime-picker.js +0 -1
  35. package/dist/browser/ui/dialog.js +0 -1
  36. package/dist/browser/ui/dropdown-menu.js +0 -1
  37. package/dist/browser/ui/empty-state.js +0 -1
  38. package/dist/browser/ui/empty.js +0 -1
  39. package/dist/browser/ui/fab.js +0 -1
  40. package/dist/browser/ui/field.js +0 -1
  41. package/dist/browser/ui/form.js +0 -1
  42. package/dist/browser/ui/hover-card.js +0 -1
  43. package/dist/browser/ui/icons/Check.js +0 -1
  44. package/dist/browser/ui/icons/ChevronDown.js +0 -1
  45. package/dist/browser/ui/icons/ChevronRight.js +0 -1
  46. package/dist/browser/ui/icons/ChevronUp.js +0 -1
  47. package/dist/browser/ui/icons/CircleUser.js +0 -1
  48. package/dist/browser/ui/icons/Info.js +0 -1
  49. package/dist/browser/ui/icons/Key.js +0 -1
  50. package/dist/browser/ui/icons/MoonStar.js +0 -1
  51. package/dist/browser/ui/icons/Sun.js +0 -1
  52. package/dist/browser/ui/icons/X.js +0 -1
  53. package/dist/browser/ui/icons/iconWithClassName.js +0 -1
  54. package/dist/browser/ui/input-group.js +0 -1
  55. package/dist/browser/ui/input-otp.js +0 -1
  56. package/dist/browser/ui/input-password.js +0 -1
  57. package/dist/browser/ui/input.js +0 -1
  58. package/dist/browser/ui/label.js +0 -1
  59. package/dist/browser/ui/link.js +0 -1
  60. package/dist/browser/ui/list.js +0 -1
  61. package/dist/browser/ui/loading-button.js +0 -1
  62. package/dist/browser/ui/loading-overlay.js +0 -1
  63. package/dist/browser/ui/loading-screen.js +0 -1
  64. package/dist/browser/ui/marketing/FeatureGrid.js +0 -1
  65. package/dist/browser/ui/marketing/Hero.js +0 -1
  66. package/dist/browser/ui/marketing/PricingTable.js +0 -1
  67. package/dist/browser/ui/marketing/index.js +0 -1
  68. package/dist/browser/ui/menubar.js +0 -1
  69. package/dist/browser/ui/molecules/Autocomplete/index.js +0 -1
  70. package/dist/browser/ui/molecules/SearchAndFilter/SearchAndFilter.js +0 -1
  71. package/dist/browser/ui/molecules/SearchAndFilter/index.js +0 -1
  72. package/dist/browser/ui/molecules/SearchAndFilter/types.js +0 -0
  73. package/dist/browser/ui/molecules/SkeletonList.js +0 -1
  74. package/dist/browser/ui/native-select.js +0 -1
  75. package/dist/browser/ui/nativewind-env.d.js +0 -0
  76. package/dist/browser/ui/navigation-menu.js +0 -1
  77. package/dist/browser/ui/organisms/ErrorBoundary/ErrorBoundary.js +0 -1
  78. package/dist/browser/ui/organisms/ErrorBoundary/index.js +0 -1
  79. package/dist/browser/ui/organisms/ListPage/ListPage.js +0 -1
  80. package/dist/browser/ui/organisms/ListPage/index.js +0 -1
  81. package/dist/browser/ui/organisms/ListPage/types.js +0 -0
  82. package/dist/browser/ui/page-header.js +0 -1
  83. package/dist/browser/ui/password-strength.js +0 -1
  84. package/dist/browser/ui/popover.js +0 -1
  85. package/dist/browser/ui/portal.js +0 -1
  86. package/dist/browser/ui/progress.js +0 -1
  87. package/dist/browser/ui/radio-group.js +0 -1
  88. package/dist/browser/ui/select.js +0 -1
  89. package/dist/browser/ui/separator.js +0 -1
  90. package/dist/browser/ui/sheet.js +0 -1
  91. package/dist/browser/ui/sidebar.js +0 -1
  92. package/dist/browser/ui/skeleton.js +0 -1
  93. package/dist/browser/ui/slider.js +0 -1
  94. package/dist/browser/ui/stack.js +0 -1
  95. package/dist/browser/ui/stepper.js +0 -1
  96. package/dist/browser/ui/switch.js +0 -1
  97. package/dist/browser/ui/table.js +0 -1
  98. package/dist/browser/ui/tabs.js +0 -1
  99. package/dist/browser/ui/text.js +0 -1
  100. package/dist/browser/ui/textarea.js +0 -1
  101. package/dist/browser/ui/time-picker.js +0 -1
  102. package/dist/browser/ui/toast.js +0 -1
  103. package/dist/browser/ui/toggle-group.js +0 -1
  104. package/dist/browser/ui/toggle.js +0 -1
  105. package/dist/browser/ui/toolbar.js +0 -1
  106. package/dist/browser/ui/tooltip.js +0 -1
  107. package/dist/browser/ui/typography.js +0 -1
  108. package/dist/browser/ui/useColorScheme.js +0 -1
  109. package/dist/browser/ui/useListState.js +0 -1
  110. package/dist/browser/ui/usecases/UseCaseCard.js +0 -1
  111. package/dist/browser/ui/usecases/UserStoryCard.js +0 -1
  112. package/dist/browser/ui/usecases/index.js +0 -1
  113. package/dist/browser/ui/utils.js +0 -1
  114. package/dist/browser/ui/visualization/Visualization.js +0 -1
  115. package/dist/browser/ui/visualization/index.js +0 -1
  116. package/dist/index.d.ts +0 -2
  117. package/dist/index.js +0 -2
  118. package/dist/ui/accordion.d.ts +0 -16
  119. package/dist/ui/accordion.js +0 -2
  120. package/dist/ui/alert-dialog.d.ts +0 -46
  121. package/dist/ui/alert-dialog.js +0 -2
  122. package/dist/ui/alert.d.ts +0 -17
  123. package/dist/ui/alert.js +0 -2
  124. package/dist/ui/aspect-ratio.d.ts +0 -8
  125. package/dist/ui/aspect-ratio.js +0 -2
  126. package/dist/ui/atoms/FilterSelect/FilterSelect.d.ts +0 -3
  127. package/dist/ui/atoms/FilterSelect/FilterSelect.js +0 -2
  128. package/dist/ui/atoms/FilterSelect/index.d.ts +0 -2
  129. package/dist/ui/atoms/FilterSelect/index.js +0 -2
  130. package/dist/ui/atoms/FilterSelect/types.d.ts +0 -5
  131. package/dist/ui/atoms/FilterSelect/types.js +0 -1
  132. package/dist/ui/atoms/LoadingSpinner/LoadingSpinner.d.ts +0 -19
  133. package/dist/ui/atoms/LoadingSpinner/LoadingSpinner.js +0 -2
  134. package/dist/ui/atoms/LoadingSpinner/index.d.ts +0 -1
  135. package/dist/ui/atoms/LoadingSpinner/index.js +0 -2
  136. package/dist/ui/atoms/Pagination/Pagination.d.ts +0 -3
  137. package/dist/ui/atoms/Pagination/Pagination.js +0 -2
  138. package/dist/ui/atoms/Pagination/index.d.ts +0 -2
  139. package/dist/ui/atoms/Pagination/index.js +0 -2
  140. package/dist/ui/atoms/Pagination/types.d.ts +0 -3
  141. package/dist/ui/atoms/Pagination/types.js +0 -1
  142. package/dist/ui/atoms/SearchInput/SearchInput.d.ts +0 -3
  143. package/dist/ui/atoms/SearchInput/SearchInput.js +0 -2
  144. package/dist/ui/atoms/SearchInput/index.d.ts +0 -2
  145. package/dist/ui/atoms/SearchInput/index.js +0 -2
  146. package/dist/ui/atoms/SearchInput/types.d.ts +0 -3
  147. package/dist/ui/atoms/SearchInput/types.js +0 -1
  148. package/dist/ui/avatar.d.ts +0 -13
  149. package/dist/ui/avatar.js +0 -2
  150. package/dist/ui/badge.d.ts +0 -11
  151. package/dist/ui/badge.js +0 -2
  152. package/dist/ui/breadcrumb.d.ts +0 -12
  153. package/dist/ui/breadcrumb.js +0 -2
  154. package/dist/ui/button.d.ts +0 -16
  155. package/dist/ui/button.js +0 -2
  156. package/dist/ui/card.d.ts +0 -22
  157. package/dist/ui/card.js +0 -2
  158. package/dist/ui/carousel.d.ts +0 -1
  159. package/dist/ui/carousel.js +0 -2
  160. package/dist/ui/checkbox.d.ts +0 -12
  161. package/dist/ui/checkbox.js +0 -2
  162. package/dist/ui/collapsible.d.ts +0 -27
  163. package/dist/ui/collapsible.js +0 -2
  164. package/dist/ui/combobox.d.ts +0 -17
  165. package/dist/ui/combobox.js +0 -2
  166. package/dist/ui/command.d.ts +0 -1
  167. package/dist/ui/command.js +0 -2
  168. package/dist/ui/context-menu.d.ts +0 -83
  169. package/dist/ui/context-menu.js +0 -2
  170. package/dist/ui/contracts.typecheck.d.ts +0 -1
  171. package/dist/ui/contracts.typecheck.js +0 -1
  172. package/dist/ui/data-table.d.ts +0 -8
  173. package/dist/ui/data-table.js +0 -2
  174. package/dist/ui/data-table.smoke.test.d.ts +0 -1
  175. package/dist/ui/date-picker.d.ts +0 -4
  176. package/dist/ui/date-picker.js +0 -2
  177. package/dist/ui/date-range-picker.d.ts +0 -6
  178. package/dist/ui/date-range-picker.js +0 -2
  179. package/dist/ui/datetime-picker.d.ts +0 -6
  180. package/dist/ui/datetime-picker.js +0 -2
  181. package/dist/ui/dialog.d.ts +0 -51
  182. package/dist/ui/dialog.js +0 -2
  183. package/dist/ui/dropdown-menu.d.ts +0 -84
  184. package/dist/ui/dropdown-menu.js +0 -2
  185. package/dist/ui/empty-state.d.ts +0 -9
  186. package/dist/ui/empty-state.js +0 -2
  187. package/dist/ui/empty.d.ts +0 -12
  188. package/dist/ui/empty.js +0 -2
  189. package/dist/ui/fab.d.ts +0 -21
  190. package/dist/ui/fab.js +0 -2
  191. package/dist/ui/field.d.ts +0 -21
  192. package/dist/ui/field.js +0 -2
  193. package/dist/ui/form.d.ts +0 -29
  194. package/dist/ui/form.js +0 -2
  195. package/dist/ui/hover-card.d.ts +0 -25
  196. package/dist/ui/hover-card.js +0 -2
  197. package/dist/ui/icons/Check.d.ts +0 -2
  198. package/dist/ui/icons/Check.js +0 -2
  199. package/dist/ui/icons/ChevronDown.d.ts +0 -2
  200. package/dist/ui/icons/ChevronDown.js +0 -2
  201. package/dist/ui/icons/ChevronRight.d.ts +0 -2
  202. package/dist/ui/icons/ChevronRight.js +0 -2
  203. package/dist/ui/icons/ChevronUp.d.ts +0 -2
  204. package/dist/ui/icons/ChevronUp.js +0 -2
  205. package/dist/ui/icons/CircleUser.d.ts +0 -2
  206. package/dist/ui/icons/CircleUser.js +0 -2
  207. package/dist/ui/icons/Info.d.ts +0 -2
  208. package/dist/ui/icons/Info.js +0 -2
  209. package/dist/ui/icons/Key.d.ts +0 -2
  210. package/dist/ui/icons/Key.js +0 -2
  211. package/dist/ui/icons/MoonStar.d.ts +0 -2
  212. package/dist/ui/icons/MoonStar.js +0 -2
  213. package/dist/ui/icons/Sun.d.ts +0 -2
  214. package/dist/ui/icons/Sun.js +0 -2
  215. package/dist/ui/icons/X.d.ts +0 -2
  216. package/dist/ui/icons/X.js +0 -2
  217. package/dist/ui/icons/iconWithClassName.d.ts +0 -2
  218. package/dist/ui/icons/iconWithClassName.js +0 -2
  219. package/dist/ui/input-group.d.ts +0 -36
  220. package/dist/ui/input-group.js +0 -2
  221. package/dist/ui/input-otp.d.ts +0 -20
  222. package/dist/ui/input-otp.js +0 -2
  223. package/dist/ui/input-password.d.ts +0 -10
  224. package/dist/ui/input-password.js +0 -2
  225. package/dist/ui/input.d.ts +0 -8
  226. package/dist/ui/input.js +0 -2
  227. package/dist/ui/label.d.ts +0 -3
  228. package/dist/ui/label.js +0 -2
  229. package/dist/ui/link.d.ts +0 -6
  230. package/dist/ui/link.js +0 -2
  231. package/dist/ui/list.d.ts +0 -23
  232. package/dist/ui/list.js +0 -2
  233. package/dist/ui/loading-button.d.ts +0 -9
  234. package/dist/ui/loading-button.js +0 -2
  235. package/dist/ui/loading-overlay.d.ts +0 -7
  236. package/dist/ui/loading-overlay.js +0 -2
  237. package/dist/ui/loading-screen.d.ts +0 -6
  238. package/dist/ui/loading-screen.js +0 -2
  239. package/dist/ui/marketing/FeatureGrid.d.ts +0 -4
  240. package/dist/ui/marketing/FeatureGrid.js +0 -2
  241. package/dist/ui/marketing/Hero.d.ts +0 -16
  242. package/dist/ui/marketing/Hero.js +0 -2
  243. package/dist/ui/marketing/PricingTable.d.ts +0 -4
  244. package/dist/ui/marketing/PricingTable.js +0 -2
  245. package/dist/ui/marketing/index.d.ts +0 -3
  246. package/dist/ui/marketing/index.js +0 -2
  247. package/dist/ui/menubar.d.ts +0 -80
  248. package/dist/ui/menubar.js +0 -2
  249. package/dist/ui/molecules/Autocomplete/index.d.ts +0 -1
  250. package/dist/ui/molecules/Autocomplete/index.js +0 -2
  251. package/dist/ui/molecules/SearchAndFilter/SearchAndFilter.d.ts +0 -3
  252. package/dist/ui/molecules/SearchAndFilter/SearchAndFilter.js +0 -2
  253. package/dist/ui/molecules/SearchAndFilter/index.d.ts +0 -2
  254. package/dist/ui/molecules/SearchAndFilter/index.js +0 -2
  255. package/dist/ui/molecules/SearchAndFilter/types.d.ts +0 -4
  256. package/dist/ui/molecules/SearchAndFilter/types.js +0 -1
  257. package/dist/ui/molecules/SkeletonList.d.ts +0 -7
  258. package/dist/ui/molecules/SkeletonList.js +0 -2
  259. package/dist/ui/native-select.d.ts +0 -29
  260. package/dist/ui/native-select.js +0 -2
  261. package/dist/ui/nativewind-env.d.js +0 -1
  262. package/dist/ui/navigation-menu.d.ts +0 -44
  263. package/dist/ui/navigation-menu.js +0 -2
  264. package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.d.ts +0 -25
  265. package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.js +0 -2
  266. package/dist/ui/organisms/ErrorBoundary/index.d.ts +0 -2
  267. package/dist/ui/organisms/ErrorBoundary/index.js +0 -2
  268. package/dist/ui/organisms/ListPage/ListPage.d.ts +0 -2
  269. package/dist/ui/organisms/ListPage/ListPage.js +0 -2
  270. package/dist/ui/organisms/ListPage/index.d.ts +0 -2
  271. package/dist/ui/organisms/ListPage/index.js +0 -2
  272. package/dist/ui/organisms/ListPage/types.d.ts +0 -44
  273. package/dist/ui/organisms/ListPage/types.js +0 -1
  274. package/dist/ui/page-header.d.ts +0 -9
  275. package/dist/ui/page-header.js +0 -2
  276. package/dist/ui/password-strength.d.ts +0 -13
  277. package/dist/ui/password-strength.js +0 -2
  278. package/dist/ui/popover.d.ts +0 -23
  279. package/dist/ui/popover.js +0 -2
  280. package/dist/ui/portal.d.ts +0 -1
  281. package/dist/ui/portal.js +0 -2
  282. package/dist/ui/progress.d.ts +0 -7
  283. package/dist/ui/progress.js +0 -2
  284. package/dist/ui/radio-group.d.ts +0 -4
  285. package/dist/ui/radio-group.js +0 -2
  286. package/dist/ui/select.d.ts +0 -60
  287. package/dist/ui/select.js +0 -2
  288. package/dist/ui/separator.d.ts +0 -6
  289. package/dist/ui/separator.js +0 -2
  290. package/dist/ui/sheet.d.ts +0 -1
  291. package/dist/ui/sheet.js +0 -2
  292. package/dist/ui/sidebar.d.ts +0 -1
  293. package/dist/ui/sidebar.js +0 -2
  294. package/dist/ui/skeleton.d.ts +0 -4
  295. package/dist/ui/skeleton.js +0 -2
  296. package/dist/ui/slider.d.ts +0 -7
  297. package/dist/ui/slider.js +0 -2
  298. package/dist/ui/stack.d.ts +0 -43
  299. package/dist/ui/stack.js +0 -2
  300. package/dist/ui/stepper.d.ts +0 -10
  301. package/dist/ui/stepper.js +0 -2
  302. package/dist/ui/switch.d.ts +0 -7
  303. package/dist/ui/switch.js +0 -2
  304. package/dist/ui/table.d.ts +0 -24
  305. package/dist/ui/table.js +0 -2
  306. package/dist/ui/tabs.d.ts +0 -6
  307. package/dist/ui/tabs.js +0 -2
  308. package/dist/ui/text.d.ts +0 -12
  309. package/dist/ui/text.js +0 -2
  310. package/dist/ui/textarea.d.ts +0 -8
  311. package/dist/ui/textarea.js +0 -2
  312. package/dist/ui/time-picker.d.ts +0 -4
  313. package/dist/ui/time-picker.js +0 -2
  314. package/dist/ui/toast.d.ts +0 -40
  315. package/dist/ui/toast.js +0 -2
  316. package/dist/ui/toggle-group.d.ts +0 -15
  317. package/dist/ui/toggle-group.js +0 -2
  318. package/dist/ui/toggle.d.ts +0 -19
  319. package/dist/ui/toggle.js +0 -2
  320. package/dist/ui/toolbar.d.ts +0 -25
  321. package/dist/ui/toolbar.js +0 -2
  322. package/dist/ui/tooltip.d.ts +0 -27
  323. package/dist/ui/tooltip.js +0 -2
  324. package/dist/ui/typography.d.ts +0 -16
  325. package/dist/ui/typography.js +0 -2
  326. package/dist/ui/useColorScheme.d.ts +0 -6
  327. package/dist/ui/useColorScheme.js +0 -2
  328. package/dist/ui/useListState.d.ts +0 -6
  329. package/dist/ui/useListState.js +0 -2
  330. package/dist/ui/usecases/UseCaseCard.d.ts +0 -7
  331. package/dist/ui/usecases/UseCaseCard.js +0 -2
  332. package/dist/ui/usecases/UserStoryCard.d.ts +0 -5
  333. package/dist/ui/usecases/UserStoryCard.js +0 -2
  334. package/dist/ui/usecases/index.d.ts +0 -2
  335. package/dist/ui/usecases/index.js +0 -2
  336. package/dist/ui/utils.d.ts +0 -2
  337. package/dist/ui/utils.js +0 -2
  338. package/dist/ui/visualization/Visualization.d.ts +0 -7
  339. package/dist/ui/visualization/Visualization.js +0 -2
  340. package/dist/ui/visualization/index.d.ts +0 -1
  341. package/dist/ui/visualization/index.js +0 -2
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
1
- export{m as PricingTable,i as Hero,t as FeatureGrid};
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
1
- var o="todo";export{o as autocomplete};
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
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
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
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};
@@ -1 +0,0 @@
1
- export{e as useErrorHandler,a as ErrorBoundary};
@@ -1 +0,0 @@
1
- import{styled as a0}from"nativewind";function h(b){a0(b,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}import{ChevronDown as i}from"lucide-react-native";h(i);import{cn as s0}from"@contractspec/lib.ui-kit-core/utils";import*as v0 from"@rn-primitives/slot";import*as a from"react";import{Text as M1}from"react-native";import{jsx as b1}from"react/jsx-runtime";var e=a.createContext(void 0);function f({className:b,asChild:M=!1,...W}){let $=a.useContext(e);return b1(M?v0.Text:M1,{className:s0("web:select-text text-base text-foreground",$,b),...W})}import{cn as W1}from"@contractspec/lib.ui-kit-core/utils";import{cva as F0}from"class-variance-authority";import{Pressable as $1}from"react-native";import{jsx as k0}from"react/jsx-runtime";var z1=F0("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"}}),f1=F0("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 Y({ref:b,className:M,variant:W,size:$,...G}){return k0(e.Provider,{value:f1({variant:W,size:$,className:"web:pointer-events-none"}),children:k0($1,{className:W1(G.disabled&&"web:pointer-events-none opacity-50",z1({variant:W,size:$,className:M})),ref:b,role:"button",...G})})}import{cn as w0}from"@contractspec/lib.ui-kit-core/utils";import*as s from"@rn-primitives/label";import{Platform as T0}from"react-native";import{jsx as y0}from"react/jsx-runtime";function L0({className:b,onPress:M,onLongPress:W,onPressIn:$,onPressOut:G,disabled:I,..._}){return y0(s.Root,{className:w0("flex select-none flex-row items-center gap-2",T0.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"}),I&&"opacity-50"),onPress:M,onLongPress:W,onPressIn:$,onPressOut:G,disabled:I,children:y0(s.Text,{className:w0("font-medium text-foreground text-sm",T0.select({web:"leading-none"}),b),..._})})}import{Check as J0}from"lucide-react-native";h(J0);import{ChevronUp as K0}from"lucide-react-native";h(K0);import{cn as y}from"@contractspec/lib.ui-kit-core/utils";import*as X from"@rn-primitives/select";import{Platform as Y0,StyleSheet as G1,View as X1}from"react-native";import _1,{FadeIn as q1,FadeOut as I1}from"react-native-reanimated";import{jsx as D,jsxs as Z0}from"react/jsx-runtime";var M0=X.Root,I4=X.Group,b0=X.Value;function W0({ref:b,className:M,children:W,...$}){return Z0(X.Trigger,{ref:b,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",$.disabled&&"web:cursor-not-allowed opacity-50",M),...$,children:[W,D(i,{size:16,"aria-hidden":!0,className:"text-foreground opacity-50"})]})}function J1({className:b,...M}){if(Y0.OS!=="web")return null;return D(X.ScrollUpButton,{className:y("flex web:cursor-default items-center justify-center py-1",b),...M,children:D(K0,{size:14,className:"text-foreground"})})}function K1({className:b,...M}){if(Y0.OS!=="web")return null;return D(X.ScrollDownButton,{className:y("flex web:cursor-default items-center justify-center py-1",b),...M,children:D(i,{size:14,className:"text-foreground"})})}function $0({className:b,children:M,position:W="popper",portalHost:$,...G}){let{open:I}=X.useRootContext();return D(X.Portal,{hostName:$,children:D(X.Overlay,{style:Y0.OS!=="web"?G1.absoluteFill:void 0,children:D(_1.View,{className:"z-50",entering:q1,exiting:I1,children:Z0(X.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",I?"web:fade-in-0 web:zoom-in-95 web:animate-in":"web:fade-out-0 web:zoom-out-95 web:animate-out",b),position:W,...G,children:[D(J1,{}),D(X.Viewport,{className:y("p-1",W==="popper"&&"h-(--radix-select-trigger-height) w-full min-w-(--radix-select-trigger-width)"),children:M}),D(K1,{})]})})})})}function J4({className:b,...M}){return D(X.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",b),...M})}function t({className:b,children:M,...W}){return Z0(X.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",b),...W,children:[D(X1,{className:"absolute left-2 native:left-3.5 flex h-3.5 w-3.5 items-center justify-center native:pt-px",children:D(X.ItemIndicator,{children:D(J0,{size:16,strokeWidth:3,className:"text-popover-foreground"})})}),D(X.ItemText,{className:"native:text-base native:text-lg text-popover-foreground text-sm web:group-focus:text-accent-foreground"})]})}function K4({className:b,...M}){return D(X.Separator,{className:y("-mx-1 my-1 h-px bg-muted",b),...M})}import{cn as R0}from"@contractspec/lib.ui-kit-core/utils";import{cva as E0}from"class-variance-authority";import{View as H0}from"react-native";import{jsx as D0}from"react/jsx-runtime";var O0="flex",Y1=E0([O0,"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"}}),Z1=E0([O0,"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"}}),R1=E0([O0,"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 O4({className:b,spacing:M,align:W,justify:$,width:G,padding:I,gap:_,wrap:H,...Z}){return D0(H0,{className:R0(R1({spacing:M,align:W,justify:$,width:G,padding:I,gap:_,wrap:H}),b),...Z})}function B({className:b,spacing:M,align:W,justify:$,width:G,padding:I,gap:_,wrap:H,...Z}){return D0(H0,{className:R0(Z1({spacing:M,align:W,justify:$,width:G,padding:I,gap:_,wrap:H}),b),...Z})}function k({className:b,spacing:M,align:W,justify:$,width:G,padding:I,gap:_,...H}){return D0(H0,{className:R0(Y1({spacing:M,align:W,justify:$,width:G,padding:I,gap:_}),b),...H})}import{View as E1}from"react-native";import{jsx as C,jsxs as N}from"react/jsx-runtime";var Q0=({value:b,options:M,onChange:W,placeholder:$="Sélectionner...",label:G,disabled:I=!1,className:_="",showCounts:H=!1})=>{return N(B,{className:`space-y-2 ${_}`,children:[G&&C(L0,{className:"font-medium text-base text-foreground",children:G}),N(M0,{value:b,onValueChange:W,disabled:I,children:[C(W0,{className:"w-full",children:C(b0,{placeholder:$})}),N($0,{className:"bg-background",children:[N(t,{value:"all",label:"Tous",children:[C(f,{children:"Tous"}),H&&N(E1,{className:"ml-2 text-muted-foreground text-sm",children:["(",M.reduce((Z,w)=>Z+(w.count||0),0),")"]})]}),M.map((Z)=>C(t,{value:Z.value,label:Z.label,children:N(B,{className:"flex w-full items-center justify-between",children:[C(f,{children:Z.label}),H&&Z.count!==void 0&&N(f,{className:"ml-2 text-muted-foreground text-sm",children:["(",Z.count,")"]})]})},Z.value))]})]})]})};import{cn as u}from"@contractspec/lib.ui-kit-core/utils";import*as S from"@rn-primitives/slot";import{Platform as V0}from"react-native";import{jsx as v}from"react/jsx-runtime";function m4({className:b,asChild:M=!1,...W}){return v(M?S.Text:f,{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",b),...W})}function N4({className:b,asChild:M=!1,...W}){return v(M?S.Text:f,{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",b),...W})}function P4({className:b,asChild:M=!1,...W}){return v(M?S.Text:f,{role:"heading","aria-level":"3",className:u("web:select-text web:scroll-m-20 font-semibold text-2xl text-foreground tracking-tight",b),...W})}function g4({className:b,asChild:M=!1,...W}){return v(M?S.Text:f,{role:"heading","aria-level":"4",className:u("web:select-text web:scroll-m-20 font-semibold text-foreground text-xl tracking-tight",b),...W})}function d({className:b,asChild:M=!1,...W}){return v(M?S.Text:f,{className:u("web:select-text text-base text-foreground",b),...W})}function A4({className:b,asChild:M=!1,...W}){return v(M?S.Text:f,{role:V0.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",b),...W})}function h4({className:b,asChild:M=!1,...W}){return v(M?S.Text:f,{role:V0.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",b),...W})}function C4({className:b,asChild:M=!1,...W}){return v(M?S.Text:f,{className:u("web:select-text text-muted-foreground text-xl",b),...W})}function d4({className:b,asChild:M=!1,...W}){return v(M?S.Text:f,{className:u("web:select-text font-semibold text-foreground text-xl",b),...W})}function l4({className:b,asChild:M=!1,...W}){return v(M?S.Text:f,{className:u("web:select-text font-medium text-foreground text-sm leading-none",b),...W})}function o4({className:b,asChild:M=!1,...W}){return v(M?S.Text:f,{className:u("web:select-text text-muted-foreground text-sm",b),...W})}import{ChevronLeft as H1,ChevronRight as O1,ChevronsLeft as D1,ChevronsRight as Q1}from"lucide-react-native";import{jsx as R,jsxs as F}from"react/jsx-runtime";function U1(b,M){if(M<=7)return Array.from({length:M},(W,$)=>$+1);if(b<=3)return[1,2,3,4,5,"end-ellipsis",M];if(b>=M-2)return[1,"start-ellipsis",M-4,M-3,M-2,M-1,M];return[1,"start-ellipsis",b-1,b,b+1,"end-ellipsis",M]}var U0=({currentPage:b,totalPages:M,totalItems:W,itemsPerPage:$,onPageChange:G,onItemsPerPageChange:I,disabled:_=!1,className:H="",showItemsPerPage:Z=!0,itemsPerPageOptions:w=[10,25,50,100]})=>{if(M<=0)return null;let T=Math.max(0,W),V=Math.max(1,$),O=Math.min(Math.max(b,1),M),q=T===0?0:(O-1)*V+1,g=T===0?0:Math.min(O*V,T),K=O>1&&!_,m=O<M&&!_,A=U1(O,M);return F(k,{align:"center",gap:"md",justify:"between",className:`sm:flex-row ${H}`,children:[R(k,{className:"order-2 text-base text-muted-foreground sm:order-1",children:F(f,{children:["Affichage de ",q," à ",g," sur ",T," résultats"]})}),F(B,{align:"center",gap:"sm",className:"order-1 sm:order-2",children:[F(Y,{variant:"outline",size:"sm",onPress:()=>G(1),disabled:!K,accessibilityLabel:"Première page",className:"hidden h-8 w-8 p-0 sm:flex",children:[R(D1,{className:"h-4 w-4"}),R(f,{className:"sr-only",children:"Première page"})]}),F(Y,{variant:"outline",size:"sm",onPress:()=>G(O-1),disabled:!K,accessibilityLabel:"Page précédente",className:"h-8 w-8 p-0",children:[R(H1,{className:"h-4 w-4"}),R(f,{className:"sr-only",children:"Page précédente"})]}),R(B,{align:"center",gap:"xs",children:A.map((E)=>{if(typeof E!=="number")return R(B,{className:"px-2 py-1 text-muted-foreground",children:R(f,{children:"..."})},E);return R(Y,{variant:E===O?"default":"outline",size:"sm",onPress:()=>G(E),disabled:_,accessibilityLabel:`Page ${E}`,className:"h-8 min-w-8 px-2",children:R(f,{children:E})},E)})}),F(Y,{variant:"outline",size:"sm",onPress:()=>G(O+1),disabled:!m,accessibilityLabel:"Page suivante",className:"h-8 w-8 p-0",children:[R(O1,{className:"h-4 w-4"}),R(f,{className:"sr-only",children:"Page suivante"})]}),F(Y,{variant:"outline",size:"sm",onPress:()=>G(M),disabled:!m,accessibilityLabel:"Dernière page",className:"hidden h-8 w-8 p-0 sm:flex",children:[R(Q1,{className:"h-4 w-4"}),R(f,{className:"sr-only",children:"Dernière page"})]})]}),Z&&I&&F(B,{align:"center",gap:"sm",className:"order-3 text-base",children:[R(f,{className:"text-muted-foreground",children:"Afficher:"}),F(M0,{value:{value:$.toString(),label:$.toString()},onValueChange:(E)=>{let j=parseInt(E?.value??"",10);if(!Number.isNaN(j)&&j>0)I(j)},disabled:_,children:[R(W0,{className:"h-8 w-16",children:R(b0,{placeholder:"Afficher:"})}),R($0,{className:"bg-background",children:w.map((E)=>R(t,{value:E.toString(),label:E.toString(),children:E},E))})]})]})]})};import{cn as m0}from"@contractspec/lib.ui-kit-core/utils";import{TextInput as S1}from"react-native";import{jsx as B1}from"react/jsx-runtime";function N0({className:b,placeholderClassName:M,...W}){return B1(S1,{className:m0("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",b),placeholderClassName:m0("text-muted-foreground",M),...W})}import{Search as u1,X as v1}from"lucide-react";import{View as S0}from"react-native";import{jsx as l,jsxs as P0}from"react/jsx-runtime";var B0=({value:b,onChange:M,placeholder:W="Rechercher...",onClear:$,disabled:G=!1,className:I=""})=>{let _=()=>{M(""),$?.()};return P0(S0,{className:`relative w-full ${I}`,children:[l(S0,{className:"pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3",children:l(u1,{className:"h-4 w-4 text-muted-foreground"})}),l(N0,{value:b,onChange:(H)=>M(H.nativeEvent.text),placeholder:W,editable:!G,className:"pr-10 pl-10"}),b&&l(S0,{className:"absolute inset-y-0 right-0 flex items-center pr-3",children:P0(Y,{variant:"ghost",size:"sm",onPress:_,disabled:G,className:"h-6 w-6 p-0 hover:bg-transparent",children:[l(v1,{className:"h-4 w-4 text-muted-foreground hover:text-foreground"}),l(f,{className:"sr-only",children:"Effacer la recherche"})]})})]})};import{cn as o}from"@contractspec/lib.ui-kit-core/utils";import{Text as g0,View as z0}from"react-native";import{jsx as P}from"react/jsx-runtime";function f0({className:b,...M}){return P(z0,{className:o("rounded-lg border border-border bg-card shadow-2xs shadow-foreground/10",b),...M})}function E8({className:b,...M}){return P(z0,{className:o("flex flex-col gap-y-1.5 p-6",b),...M})}function H8({className:b,...M}){return P(g0,{role:"heading","aria-level":3,className:o("font-semibold text-2xl text-card-foreground leading-none tracking-tight",b),...M})}function O8({className:b,...M}){return P(g0,{className:o("text-muted-foreground text-sm",b),...M})}function G0({className:b,...M}){return P(e.Provider,{value:"text-card-foreground",children:P(z0,{className:o("p-6 pt-0",b),...M})})}function D8({className:b,...M}){return P(z0,{className:o("flex flex-row items-center p-6 pt-0",b),...M})}import*as p from"@rn-primitives/collapsible";var A0=p.Root,h0=p.Trigger,C0=p.Content;import{cn as k1}from"@contractspec/lib.ui-kit-core/utils";import*as d0 from"@rn-primitives/separator";import{jsx as F1}from"react/jsx-runtime";function l0({className:b,orientation:M="horizontal",decorative:W=!0,...$}){return F1(d0.Root,{decorative:W,orientation:M,className:k1("shrink-0 bg-border",M==="horizontal"?"h-px w-full":"h-full w-px",b),...$})}import{ChevronDown as w1,ChevronUp as T1,Filter as y1}from"lucide-react";import{useState as L1}from"react";import{View as c}from"react-native";import{jsx as Q,jsxs as n}from"react/jsx-runtime";var u0=({searchValue:b,onSearchChange:M,searchPlaceholder:W,filters:$=[],isLoading:G=!1,disabled:I=!1,className:_="",collapsible:H=!0,defaultCollapsed:Z=!1})=>{let[w,T]=L1(Z),V=$.length>0,O=$.filter((K)=>K.value).length,q=H&&V,g=()=>Q(c,{className:"flex flex-col gap-4 sm:flex-row sm:flex-wrap",children:$.map((K)=>Q(Q0,{value:{value:K.value,label:K.value},options:K.options,onChange:K.onChange,label:K.label,disabled:I||G,showCounts:K.showCounts,className:"min-w-0"},K.key))});return n(c,{className:`flex flex-col gap-4 ${_}`,children:[n(c,{className:"flex flex-col gap-4 sm:flex-row",children:[Q(c,{className:"flex-1",children:Q(B0,{value:b,onChange:M,placeholder:W,disabled:I||G,className:"w-full"})}),q&&n(A0,{open:!w,onOpenChange:T,className:"sm:hidden",children:[Q(h0,{asChild:!0,children:n(Y,{variant:"outline",className:"sm:hidden",disabled:I||G,children:[Q(y1,{className:"mr-2 h-4 w-4"}),"Filtres",O>0&&Q(f,{className:"ml-2 flex h-5 w-5 items-center justify-center rounded-full bg-primary text-primary-foreground text-sm",children:O}),w?Q(w1,{className:"ml-2 h-4 w-4"}):Q(T1,{className:"ml-2 h-4 w-4"})]})}),Q(C0,{className:"mt-4 space-y-4",children:Q(g,{})})]})]}),V&&Q(c,{className:"hidden sm:flex",children:Q(g,{})}),O>0&&n(c,{className:"flex flex-wrap items-center gap-2",children:[Q(f,{className:"text-base text-muted-foreground",children:"Filtres actifs:"}),$.filter((K)=>K.value).map((K)=>{let m=K.options.find((A)=>A.value===K.value);return n(Y,{variant:"secondary",size:"sm",onPress:()=>K.onChange(void 0),disabled:I||G,className:"h-7 px-2 text-sm",children:[K.label,": ",m?.label,Q(f,{className:"ml-1",children:"×"})]},K.key)})]})]})};import{AlertTriangle as V1,Loader2 as o0,Plus as x,RefreshCcw as p0}from"lucide-react";import{View as L}from"react-native";import{jsx as z,jsxs as J,Fragment as X0}from"react/jsx-runtime";function t8({title:b,description:M,header:W,items:$,totalItems:G,totalPages:I,isLoading:_,isFetching:H,error:Z,listState:w,searchPlaceholder:T,filters:V=[],onRefresh:O,primaryAction:q,toolbar:g,renderItem:K,renderEmpty:m,renderStats:A,className:E="",itemClassName:j="",linkComponent:c0}){let r=c0,{searchQuery:_0,setSearchQuery:n0,filters:q0,setFilter:x0,currentPage:j0,itemsPerPage:e0,setCurrentPage:t0,setItemsPerPage:r0}=w;if(_&&!$.length)return J(k,{className:`space-y-4 md:space-y-6 ${E}`,children:[W?W:J(k,{className:"gap-1",children:[z(f,{className:"font-bold text-2xl md:text-3xl",children:b}),M&&z(d,{className:"text-base text-muted-foreground",children:M})]}),z(L,{className:"flex min-h-[400px] items-center justify-center",children:z(f0,{children:J(G0,{className:"flex items-center gap-4 p-6",children:[z(o0,{className:"h-8 w-8 animate-spin text-primary"}),J(L,{children:[z(f,{className:"font-medium",children:"Chargement..."}),z(d,{className:"text-base text-muted-foreground",children:"Récupération des données en cours"})]})]})})})]});if(Z&&!$.length)return J(k,{className:`space-y-4 md:space-y-6 ${E}`,children:[W?W:J(k,{className:"gap-1",children:[z(f,{className:"font-bold text-2xl md:text-3xl",children:b}),M&&z(d,{className:"text-base text-muted-foreground",children:M})]}),z(L,{className:"flex min-h-[400px] items-center justify-center",children:z(f0,{children:J(G0,{className:"flex flex-col items-center gap-4 p-6 text-center",children:[z(V1,{className:"h-12 w-12 text-destructive"}),J(L,{children:[z(f,{className:"font-medium",children:"Erreur de chargement"}),z(d,{className:"text-base text-muted-foreground",children:Z.message||"Une erreur est survenue"})]}),O&&J(Y,{onPress:O,variant:"outline",size:"sm",children:[z(p0,{className:"mr-2 h-4 w-4"}),"Réessayer"]})]})})})]});let i0=V.map((U)=>({key:U.key,label:U.label,value:q0[U.key]||"",options:U.options,onChange:(I0)=>{x0(U.key,I0?.value||"")},showCounts:U.showCounts}));return J(k,{className:`space-y-4 md:space-y-6 ${E}`,children:[W?W:J(B,{className:"items-center justify-between",children:[J(k,{className:"gap-1",children:[z("h1",{className:"font-bold text-2xl md:text-3xl",children:b}),M&&z("p",{className:"text-base text-muted-foreground",children:M})]}),J(B,{className:"items-center gap-4",children:[g,(_||H)&&J("div",{className:"flex items-center gap-2 text-base text-muted-foreground",children:[z(o0,{className:"h-4 w-4 animate-spin"}),z(f,{className:"hidden sm:inline",children:"Mise à jour..."})]}),O&&J(Y,{variant:"outline",size:"sm",onPress:O,disabled:Boolean(_),"aria-label":"Rafraîchir",children:[z(p0,{className:`mr-2 h-4 w-4 ${_||H?"animate-spin":""}`}),z(f,{className:"hidden sm:inline",children:"Rafraîchir"})]}),q&&z(X0,{children:q.href?r?z(r,{href:q.href,children:J(Y,{children:[q.icon||z(x,{className:"mr-2 h-4 w-4"}),z(f,{className:"hidden sm:inline",children:q.label}),z(f,{className:"sm:hidden",children:"Nouveau"})]})}):J(Y,{onPress:q.onClick??void 0,children:[q.icon||z(x,{className:"mr-2 h-4 w-4"}),z(f,{className:"hidden sm:inline",children:q.label}),z(f,{className:"sm:hidden",children:"Nouveau"})]}):J(Y,{onPress:q.onClick,children:[q.icon||z(x,{className:"mr-2 h-4 w-4"}),z(f,{className:"hidden sm:inline",children:q.label}),z(f,{className:"sm:hidden",children:"Nouveau"})]})})]})]}),A&&J(X0,{children:[A($),z(l0,{})]}),z(u0,{searchValue:_0,onSearchChange:n0,searchPlaceholder:T,filters:i0,isLoading:_}),$.length===0&&!_?m?m():z(f0,{children:J(G0,{className:"flex flex-col items-center gap-4 p-8 text-center",children:[z(L,{className:"flex h-12 w-12 items-center justify-center rounded-full bg-muted",children:z(L,{className:"h-6 w-6 rounded-full bg-muted-foreground/20"})}),J(L,{children:[z(f,{className:"font-medium",children:"Aucun élément trouvé"}),z(d,{className:"text-base text-muted-foreground",children:_0||Object.values(q0).some((U)=>U)?"Essayez de modifier vos critères de recherche":"Commencez par créer votre premier élément"})]}),q&&!_0&&!Object.values(q0).some((U)=>U)&&z(X0,{children:q.href?r?z(r,{href:q.href,children:J(Y,{children:[q.icon||z(x,{className:"mr-2 h-4 w-4"}),q.label]})}):J(Y,{onPress:q.onClick??void 0,children:[q.icon||z(x,{className:"mr-2 h-4 w-4"}),q.label]}):J(Y,{onPress:q.onClick,children:[q.icon||z(x,{className:"mr-2 h-4 w-4"}),q.label]})})]})}):J(X0,{children:[z(L,{className:`space-y-4 ${j}`,children:$.map((U,I0)=>K(U,I0))}),I>1&&z(U0,{currentPage:j0,totalPages:I,totalItems:G,itemsPerPage:e0,onPageChange:t0,onItemsPerPageChange:r0,disabled:_})]})]})}export{t8 as ListPage};
@@ -1 +0,0 @@
1
- export{r as ListPage};
File without changes
@@ -1 +0,0 @@
1
- import{cn as v}from"@contractspec/lib.ui-kit-core/utils";import*as P from"@rn-primitives/slot";import*as W from"react";import{Text as S}from"react-native";import{jsx as y}from"react/jsx-runtime";var w=W.createContext(void 0);function E({className:z,asChild:A=!1,...q}){let D=W.useContext(w);return y(A?P.Text:S,{className:v("web:select-text text-base text-foreground",D,z),...q})}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 R}from"react/jsx-runtime";var $="flex",k=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"}}),T=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"}}),b=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 n({className:z,spacing:A,align:q,justify:D,width:J,padding:K,gap:O,wrap:U,...X}){return R(_,{className:Y(b({spacing:A,align:q,justify:D,width:J,padding:K,gap:O,wrap:U}),z),...X})}function M({className:z,spacing:A,align:q,justify:D,width:J,padding:K,gap:O,wrap:U,...X}){return R(_,{className:Y(T({spacing:A,align:q,justify:D,width:J,padding:K,gap:O,wrap:U}),z),...X})}function Q({className:z,spacing:A,align:q,justify:D,width:J,padding:K,gap:O,...U}){return R(_,{className:Y(k({spacing:A,align:q,justify:D,width:J,padding:K,gap:O}),z),...U})}import{cn as G}from"@contractspec/lib.ui-kit-core/utils";import*as F from"@rn-primitives/slot";import{Platform as f}from"react-native";import{jsx as I}from"react/jsx-runtime";function H({className:z,asChild:A=!1,...q}){return I(A?F.Text:E,{role:"heading","aria-level":"1",className:G("web:select-text web:scroll-m-20 font-extrabold text-4xl text-foreground tracking-tight lg:text-5xl",z),...q})}function i({className:z,asChild:A=!1,...q}){return I(A?F.Text:E,{role:"heading","aria-level":"2",className:G("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),...q})}function t({className:z,asChild:A=!1,...q}){return I(A?F.Text:E,{role:"heading","aria-level":"3",className:G("web:select-text web:scroll-m-20 font-semibold text-2xl text-foreground tracking-tight",z),...q})}function a({className:z,asChild:A=!1,...q}){return I(A?F.Text:E,{role:"heading","aria-level":"4",className:G("web:select-text web:scroll-m-20 font-semibold text-foreground text-xl tracking-tight",z),...q})}function V({className:z,asChild:A=!1,...q}){return I(A?F.Text:E,{className:G("web:select-text text-base text-foreground",z),...q})}function s({className:z,asChild:A=!1,...q}){return I(A?F.Text:E,{role:f.OS==="web"?"blockquote":void 0,className:G("mt-6 native:mt-4 web:select-text border-border border-l-2 native:pl-3 pl-6 text-base text-foreground italic",z),...q})}function qq({className:z,asChild:A=!1,...q}){return I(A?F.Text:E,{role:f.OS==="web"?"code":void 0,className:G("relative web:select-text rounded-md bg-muted px-[0.3rem] py-[0.2rem] font-semibold text-foreground text-sm",z),...q})}function zq({className:z,asChild:A=!1,...q}){return I(A?F.Text:E,{className:G("web:select-text text-muted-foreground text-xl",z),...q})}function Aq({className:z,asChild:A=!1,...q}){return I(A?F.Text:E,{className:G("web:select-text font-semibold text-foreground text-xl",z),...q})}function Dq({className:z,asChild:A=!1,...q}){return I(A?F.Text:E,{className:G("web:select-text font-medium text-foreground text-sm leading-none",z),...q})}function Eq({className:z,asChild:A=!1,...q}){return I(A?F.Text:E,{className:G("web:select-text text-muted-foreground text-sm",z),...q})}import{cn as g}from"@contractspec/lib.ui-kit-core/utils";import{cva as u}from"class-variance-authority";import{jsx as B,jsxs as L}from"react/jsx-runtime";var C=u("",{variants:{spacing:{sm:"gap-1",md:"gap-2",lg:"gap-3"}},defaultVariants:{spacing:"md"}});function Uq({breadcrumb:z,title:A,subtitle:q,actions:D,spacing:J,className:K}){return L(Q,{className:g(C({spacing:J}),K),children:[z,L(M,{className:"items-start justify-between",children:[L(Q,{className:"gap-1",children:[B(H,{className:"font-semibold text-2xl md:text-3xl",children:A}),q?B(V,{className:"text-base text-muted-foreground",children:q}):null]}),D?B(M,{className:"flex items-center gap-2",children:D}):null]})]})}export{Uq as PageHeader};
@@ -1 +0,0 @@
1
- import{cn as O}from"@contractspec/lib.ui-kit-core/utils";import*as A from"@rn-primitives/slot";import*as g from"react";import{Text as T}from"react-native";import{jsx as q}from"react/jsx-runtime";var V=g.createContext(void 0);function a({className:t,asChild:o=!1,...e}){let n=g.useContext(V);return q(o?A.Text:T,{className:O("web:select-text text-base text-foreground",n,t),...e})}import{cn as c}from"@contractspec/lib.ui-kit-core/utils";import{cva as k}from"class-variance-authority";import{View as S}from"react-native";import{jsx as z}from"react/jsx-runtime";var N="flex",w=k([N,"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"}}),F=k([N,"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"}}),M=k([N,"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 K({className:t,spacing:o,align:e,justify:n,width:m,padding:f,gap:l,wrap:r,...s}){return z(S,{className:c(M({spacing:o,align:e,justify:n,width:m,padding:f,gap:l,wrap:r}),t),...s})}function h({className:t,spacing:o,align:e,justify:n,width:m,padding:f,gap:l,wrap:r,...s}){return z(S,{className:c(F({spacing:o,align:e,justify:n,width:m,padding:f,gap:l,wrap:r}),t),...s})}function P({className:t,spacing:o,align:e,justify:n,width:m,padding:f,gap:l,...r}){return z(S,{className:c(w({spacing:o,align:e,justify:n,width:m,padding:f,gap:l}),t),...r})}import{View as b}from"react-native";import*as H from"zod";import{jsx as u,jsxs as d}from"react/jsx-runtime";var W=H.string().min(8,"Password must be at least 8 characters").max(128,"Password is too long").regex(/(?=.*[a-z])/,"Password must contain at least one lowercase letter").regex(/(?=.*[A-Z])/,"Password must contain at least one uppercase letter").regex(/(?=.*\d)/,"Password must contain at least one number");function Z(t){let o=[],e=0;if(t.length>=8)e+=1;else o.push("At least 8 characters");if(/[a-z]/.test(t))e+=1;else o.push("One lowercase letter");if(/[A-Z]/.test(t))e+=1;else o.push("One uppercase letter");if(/\d/.test(t))e+=1;else o.push("One number");if(/[!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?]/.test(t))e+=1;if(t.length>=12)e+=1;let n=W.safeParse(t).success;return{score:Math.min(e,5),feedback:o,isValid:n}}function Y({password:t,showFeedback:o=!0}){let{score:e,feedback:n,isValid:m}=Z(t);if(!t)return null;let f=(r)=>{if(r<=1)return"#ef4444";if(r<=2)return"#f97316";if(r<=3)return"#eab308";if(r<=4)return"#22c55e";return"#16a34a"},l=(r)=>{if(r<=1)return"Very Weak";if(r<=2)return"Weak";if(r<=3)return"Fair";if(r<=4)return"Good";return"Strong"};return d(P,{className:"gap-y-2",children:[d(P,{className:"gap-y-1",children:[d(h,{className:"items-center justify-between",children:[u(a,{className:"text-muted-foreground text-xs",children:"Password Strength"}),u(a,{className:"font-medium text-xs",style:{color:f(e)},children:l(e)})]}),u(b,{className:"h-2 overflow-hidden rounded-full bg-gray-200",children:u(b,{className:"h-full rounded-full transition-all duration-300",style:{width:`${e/5*100}%`,backgroundColor:f(e)}})})]}),o&&n.length>0&&d(P,{className:"gap-y-1",children:[u(a,{className:"text-muted-foreground text-xs",children:"Required:"}),n.map((r,s)=>d(h,{className:"items-center gap-x-2",children:[u(b,{className:"h-1 w-1 rounded-full bg-muted-foreground"}),u(a,{className:"text-muted-foreground text-xs",children:r})]},s))]}),m&&d(h,{className:"items-center gap-x-2",children:[u(b,{className:"h-2 w-2 rounded-full bg-green-500"}),u(a,{className:"text-green-600 text-xs",children:"Meets requirements"})]})]})}export{W as passwordSchema,Z as getPasswordStrength,Y as PasswordStrength};
@@ -1 +0,0 @@
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 A({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/popover";import{Platform as W,StyleSheet as X}from"react-native";import Y,{FadeIn as Z,FadeOut as _}from"react-native-reanimated";import{jsx as w}from"react/jsx-runtime";var S=q.Root,h=q.Trigger;function O({className:B,align:D="center",sideOffset:E=4,portalHost:G,...K}){return w(q.Portal,{hostName:G,children:w(q.Overlay,{style:W.OS!=="web"?X.absoluteFill:void 0,children:w(Y.View,{entering:Z.duration(200),exiting:_,children:w(J.Provider,{value:"text-popover-foreground",children:w(q.Content,{align:D,sideOffset:E,className:V("web:fade-in-0 web:zoom-in-95 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 w-72 web:animate-in web:cursor-auto rounded-md border border-border bg-popover p-4 shadow-foreground/5 shadow-md web:outline-hidden",B),...K})})})})})}export{h as PopoverTrigger,O as PopoverContent,S as Popover};
@@ -1 +0,0 @@
1
- export{l as useModalPortalRoot,a as PortalHost,r as Portal};
@@ -1 +0,0 @@
1
- import{cn as G}from"@contractspec/lib.ui-kit-core/utils";import*as B from"@rn-primitives/progress";import{Platform as K,View as L}from"react-native";import M,{Extrapolation as O,interpolate as Q,useAnimatedStyle as R,useDerivedValue as T,withSpring as U}from"react-native-reanimated";import{jsx as q}from"react/jsx-runtime";function _({className:F,value:z,indicatorClassName:H,...J}){return q(B.Root,{className:G("relative h-4 w-full overflow-hidden rounded-full bg-secondary",F),...J,children:q(W,{value:z,className:H})})}function W({value:F,className:z}){let H=T(()=>F??0),J=R(()=>{return{width:U(`${Q(H.value,[0,100],[1,100],O.CLAMP)}%`,{overshootClamping:!0})}});if(K.OS==="web")return q(L,{className:G("h-full w-full flex-1 bg-primary web:transition-all",z),style:{transform:`translateX(-${100-(F??0)}%)`},children:q(B.Indicator,{className:G("h-full w-full",z)})});return q(B.Indicator,{asChild:!0,children:q(M.View,{style:J,className:G("h-full bg-foreground",z)})})}export{_ as Progress};
@@ -1 +0,0 @@
1
- import{cn as z}from"@contractspec/lib.ui-kit-core/utils";import*as h from"@rn-primitives/radio-group";import{Platform as A}from"react-native";import{jsx as y}from"react/jsx-runtime";function D({className:w,...q}){return y(h.Root,{className:z("gap-3",w),...q})}function E({className:w,...q}){return y(h.Item,{className:z("aspect-square size-4 shrink-0 items-center justify-center rounded-full border border-input shadow-2xs shadow-black/5 dark:bg-input/30",A.select({web:"outline-hidden transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40"}),q.disabled&&"opacity-50",w),...q,children:y(h.Indicator,{className:"size-2 rounded-full bg-primary"})})}export{E as RadioGroupItem,D as RadioGroup};
@@ -1 +0,0 @@
1
- import{styled as Y}from"nativewind";function q(W){Y(W,{className:{target:"style",nativeStyleMapping:{color:!0,opacity:!0}}})}import{ChevronDown as E}from"lucide-react-native";q(E);import{Check as I}from"lucide-react-native";q(I);import{ChevronUp as J}from"lucide-react-native";q(J);import{cn as g}from"@contractspec/lib.ui-kit-core/utils";import*as f from"@rn-primitives/select";import{Platform as K,StyleSheet as Z,View as _}from"react-native";import $,{FadeIn as m,FadeOut as A}from"react-native-reanimated";import{jsx as y,jsxs as Q}from"react/jsx-runtime";var N=f.Root,x=f.Group,S=f.Value;function j({ref:W,className:L,children:M,...z}){return Q(f.Trigger,{ref:W,className:g("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",z.disabled&&"web:cursor-not-allowed opacity-50",L),...z,children:[M,y(E,{size:16,"aria-hidden":!0,className:"text-foreground opacity-50"})]})}function C({className:W,...L}){if(K.OS!=="web")return null;return y(f.ScrollUpButton,{className:g("flex web:cursor-default items-center justify-center py-1",W),...L,children:y(J,{size:14,className:"text-foreground"})})}function G({className:W,...L}){if(K.OS!=="web")return null;return y(f.ScrollDownButton,{className:g("flex web:cursor-default items-center justify-center py-1",W),...L,children:y(E,{size:14,className:"text-foreground"})})}function r({className:W,children:L,position:M="popper",portalHost:z,...R}){let{open:X}=f.useRootContext();return y(f.Portal,{hostName:z,children:y(f.Overlay,{style:K.OS!=="web"?Z.absoluteFill:void 0,children:y($.View,{className:"z-50",entering:m,exiting:A,children:Q(f.Content,{className:g("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",M==="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",X?"web:fade-in-0 web:zoom-in-95 web:animate-in":"web:fade-out-0 web:zoom-out-95 web:animate-out",W),position:M,...R,children:[y(C,{}),y(f.Viewport,{className:g("p-1",M==="popper"&&"h-(--radix-select-trigger-height) w-full min-w-(--radix-select-trigger-width)"),children:L}),y(G,{})]})})})})}function t({className:W,...L}){return y(f.Label,{className:g("py-1.5 pr-2 native:pb-2 native:pl-10 pl-8 font-semibold native:text-base text-popover-foreground text-sm",W),...L})}function o({className:W,children:L,...M}){return Q(f.Item,{className:g("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",M.disabled&&"web:pointer-events-none opacity-50",W),...M,children:[y(_,{className:"absolute left-2 native:left-3.5 flex h-3.5 w-3.5 items-center justify-center native:pt-px",children:y(f.ItemIndicator,{children:y(I,{size:16,strokeWidth:3,className:"text-popover-foreground"})})}),y(f.ItemText,{className:"native:text-base native:text-lg text-popover-foreground text-sm web:group-focus:text-accent-foreground"})]})}function n({className:W,...L}){return y(f.Separator,{className:g("-mx-1 my-1 h-px bg-muted",W),...L})}export{S as SelectValue,j as SelectTrigger,n as SelectSeparator,C as SelectScrollUpButton,G as SelectScrollDownButton,t as SelectLabel,o as SelectItem,x as SelectGroup,r as SelectContent,N as Select};
@@ -1 +0,0 @@
1
- import{cn as y}from"@contractspec/lib.ui-kit-core/utils";import*as g from"@rn-primitives/separator";import{jsx as z}from"react/jsx-runtime";function B({className:h,orientation:f="horizontal",decorative:q=!0,...w}){return z(g.Root,{decorative:q,orientation:f,className:y("shrink-0 bg-border",f==="horizontal"?"h-px w-full":"h-full w-px",h),...w})}export{B as Separator};
@@ -1 +0,0 @@
1
- var e="null";export{e as sheet};
@@ -1 +0,0 @@
1
- var e="null";export{e as sidebar};
@@ -1 +0,0 @@
1
- import{cn as G}from"@contractspec/lib.ui-kit-core/utils";import*as C from"react";import H,{useAnimatedStyle as I,useSharedValue as J,withRepeat as K,withSequence as L,withTiming as z}from"react-native-reanimated";import{jsx as M}from"react/jsx-runtime";var B=1000;function Q({className:D,...E}){let f=J(1);C.useEffect(()=>{f.value=K(L(z(0.5,{duration:B}),z(1,{duration:B})),-1)},[]);let F=I(()=>({opacity:f.value}));return M(H.View,{style:F,className:G("rounded-md bg-secondary dark:bg-muted",D),...E})}export{Q as Skeleton};
@@ -1 +0,0 @@
1
- import{cn as w}from"@contractspec/lib.ui-kit-core/utils";import*as f from"@rn-primitives/slider";import{jsx as g,jsxs as y}from"react/jsx-runtime";function A({className:h,...q}){return y(f.Root,{className:w("relative flex w-full flex-row items-center data-[disabled]:opacity-50",h),...q,children:[g(f.Track,{className:"relative h-1.5 flex-1 overflow-hidden rounded-full bg-muted",children:g(f.Range,{className:"absolute h-full rounded-full bg-primary"})}),g(f.Thumb,{className:"ml-[-8] h-4 w-4 rounded-full border border-primary bg-background"})]})}export{A as Slider};
@@ -1 +0,0 @@
1
- import{cn as J}from"@contractspec/lib.ui-kit-core/utils";import{cva as K}from"class-variance-authority";import{View as L}from"react-native";import{jsx as O}from"react/jsx-runtime";var M="flex",P=K([M,"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"}}),Q=K([M,"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"}}),R=K([M,"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 X({className:q,spacing:z,align:A,justify:C,width:D,padding:E,gap:F,wrap:G,...I}){return O(L,{className:J(R({spacing:z,align:A,justify:C,width:D,padding:E,gap:F,wrap:G}),q),...I})}function Y({className:q,spacing:z,align:A,justify:C,width:D,padding:E,gap:F,wrap:G,...I}){return O(L,{className:J(Q({spacing:z,align:A,justify:C,width:D,padding:E,gap:F,wrap:G}),q),...I})}function Z({className:q,spacing:z,align:A,justify:C,width:D,padding:E,gap:F,...G}){return O(L,{className:J(P({spacing:z,align:A,justify:C,width:D,padding:E,gap:F}),q),...G})}export{Z as VStack,Y as HStack,X as Box};
@@ -1 +0,0 @@
1
- import{cn as K}from"@contractspec/lib.ui-kit-core/utils";import{cva as L}from"class-variance-authority";import{View as M}from"react-native";import{jsx as P}from"react/jsx-runtime";var O="flex",U=L([O,"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"}}),W=L([O,"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"}}),X=L([O,"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 H({className:A,spacing:C,align:D,justify:E,width:F,padding:G,gap:q,wrap:I,...J}){return P(M,{className:K(X({spacing:C,align:D,justify:E,width:F,padding:G,gap:q,wrap:I}),A),...J})}function Q({className:A,spacing:C,align:D,justify:E,width:F,padding:G,gap:q,wrap:I,...J}){return P(M,{className:K(W({spacing:C,align:D,justify:E,width:F,padding:G,gap:q,wrap:I}),A),...J})}function b({className:A,spacing:C,align:D,justify:E,width:F,padding:G,gap:q,...I}){return P(M,{className:K(U({spacing:C,align:D,justify:E,width:F,padding:G,gap:q}),A),...I})}import{cn as R}from"@contractspec/lib.ui-kit-core/utils";import{cva as Y}from"class-variance-authority";import{View as Z}from"react-native";import{jsx as T}from"react/jsx-runtime";var _=Y("h-2 w-2 rounded-full",{variants:{state:{active:"bg-primary",inactive:"bg-muted-foreground/20"},size:{sm:"",md:"h-2.5 w-2.5"}},defaultVariants:{state:"inactive",size:"md"}});function V({current:A,total:C,size:D,className:E}){let F=Array.from({length:Math.max(0,C)});return T(Q,{className:R("items-center gap-2",E),children:F.map((G,q)=>T(Z,{className:R(_({state:q+1===A?"active":"inactive",size:D}))},q))})}export{V as Stepper};
@@ -1 +0,0 @@
1
- import{useColorScheme as K}from"nativewind";var L="light";function M(){let{colorScheme:E,setColorScheme:C,toggleColorScheme:D}=K();return{colorScheme:E??L,isDarkColorScheme:E==="dark",setColorScheme:C,toggleColorScheme:D}}import{cn as k}from"@contractspec/lib.ui-kit-core/utils";import*as f from"@rn-primitives/switch";import{Platform as Q}from"react-native";import U,{interpolateColor as Y,useAnimatedStyle as q,useDerivedValue as Z,withTiming as _}from"react-native-reanimated";import{jsx as g}from"react/jsx-runtime";function $({className:E,...C}){return g(f.Root,{className:k("peer h-6 w-11 shrink-0 cursor-pointer flex-row items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed",C.checked?"bg-primary":"bg-input",C.disabled&&"opacity-50",E),...C,children:g(f.Thumb,{className:k("pointer-events-none block h-5 w-5 rounded-full bg-background shadow-foreground/5 shadow-md ring-0 transition-transform",C.checked?"translate-x-5":"translate-x-0")})})}var z={light:{primary:"rgb(24, 24, 27)",input:"rgb(228, 228, 231)"},dark:{primary:"rgb(250, 250, 250)",input:"rgb(39, 39, 42)"}};function P({className:E,...C}){let{colorScheme:D}=M(),F=D==="dark"?"dark":"light",H=Z(()=>C.checked?18:0),I=q(()=>{return{backgroundColor:Y(H.value,[0,18],[z[F].input,z[F].primary])}}),J=q(()=>({transform:[{translateX:_(H.value,{duration:200})}]}));return g(U.View,{style:I,className:k("h-8 w-[46px] rounded-full",C.disabled&&"opacity-50"),children:g(f.Root,{className:k("h-8 w-[46px] shrink-0 flex-row items-center rounded-full border-2 border-transparent",C.checked?"bg-primary":"bg-input",E),...C,children:g(U.View,{style:J,children:g(f.Thumb,{className:"h-7 w-7 rounded-full bg-background shadow-foreground/25 shadow-md ring-0"})})})})}var O=Q.select({web:$,default:P});export{O as Switch};
@@ -1 +0,0 @@
1
- import{cn as K}from"@contractspec/lib.ui-kit-core/utils";import*as I from"@rn-primitives/slot";import*as D from"react";import{Text as L}from"react-native";import{jsx as M}from"react/jsx-runtime";var G=D.createContext(void 0);function S({className:f,asChild:g=!1,...E}){let J=D.useContext(G);return M(g?I.Text:L,{className:K("web:select-text text-base text-foreground",J,f),...E})}import{cn as A}from"@contractspec/lib.ui-kit-core/utils";import*as q from"@rn-primitives/table";import{jsx as z}from"react/jsx-runtime";function Y({className:f,...g}){return z(q.Root,{className:A("w-full caption-bottom text-sm",f),...g})}function Z({className:f,...g}){return z(q.Header,{className:A("border-border [&_tr]:border-b",f),...g})}function _({className:f,style:g,...E}){return z(q.Body,{className:A("flex-1 border-border [&_tr:last-child]:border-0",f),style:[{minHeight:2},g],...E})}function $({className:f,...g}){return z(q.Footer,{className:A("bg-muted/50 font-medium [&>tr]:last:border-b-0",f),...g})}function w({className:f,...g}){return z(q.Row,{className:A("flex-row border-border border-b web:transition-colors web:hover:bg-muted/50 web:data-[state=selected]:bg-muted",f),...g})}function B({className:f,...g}){return z(G.Provider,{value:"text-muted-foreground",children:z(q.Head,{className:A("h-12 justify-center px-4 text-left font-medium [&:has([role=checkbox])]:pr-0",f),...g})})}function F({className:f,...g}){return z(q.Cell,{className:A("p-4 align-middle [&:has([role=checkbox])]:pr-0",f),...g})}export{w as TableRow,Z as TableHeader,B as TableHead,$ as TableFooter,F as TableCell,_ as TableBody,Y as Table};
@@ -1 +0,0 @@
1
- import{cn as w}from"@contractspec/lib.ui-kit-core/utils";import*as d from"@rn-primitives/tabs";import{Platform as z}from"react-native";import{jsx as y}from"react/jsx-runtime";function E({className:q,...h}){return y(d.Root,{className:w("flex flex-col gap-2",q),...h})}function F({className:q,...h}){return y(d.List,{className:w("flex h-9 flex-row items-center justify-center rounded-lg bg-muted p-[3px]",z.select({web:"inline-flex w-fit",native:"mr-auto"}),q),...h})}function G({className:q,...h}){let{value:A}=d.useRootContext();return y(d.Trigger,{className:w("flex h-[calc(100%-1px)] flex-row items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 shadow-black/5 shadow-none",z.select({web:"inline-flex cursor-default whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:outline-1 focus-visible:outline-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0"}),h.disabled&&"opacity-50",h.value===A&&"bg-background dark:border-foreground/10 dark:bg-input/30",q),...h})}function H({className:q,...h}){return y(d.Content,{className:w(z.select({web:"flex-1 outline-none"}),q),...h})}export{G as TabsTrigger,F as TabsList,H as TabsContent,E as Tabs};
@@ -1 +0,0 @@
1
- import{cn as A}from"@contractspec/lib.ui-kit-core/utils";import*as g from"@rn-primitives/slot";import*as f from"react";import{Text as B}from"react-native";import{jsx as E}from"react/jsx-runtime";var D=f.createContext(void 0);function I({className:q,asChild:w=!1,...y}){let z=f.useContext(D);return E(w?g.Text:B,{className:A("web:select-text text-base text-foreground",z,q),...y})}export{D as TextClassContext,I as Text};