@wireservers-ui/react-natives 1.0.0 → 1.0.1-rc2

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 (402) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +214 -98
  3. package/bin/cli.js +374 -0
  4. package/package.json +27 -48
  5. package/src/accordion/accordion-content.tsx +30 -30
  6. package/src/accordion/accordion-icon.tsx +54 -54
  7. package/src/accordion/accordion-item.tsx +37 -37
  8. package/src/accordion/accordion-title-text.tsx +24 -24
  9. package/src/accordion/accordion-trigger.tsx +38 -38
  10. package/src/accordion/accordion.tsx +91 -91
  11. package/src/accordion/index.ts +24 -24
  12. package/src/accordion/styles.ts +74 -74
  13. package/src/accordion/types.ts +56 -56
  14. package/src/actionsheet/actionsheet-backdrop.tsx +23 -23
  15. package/src/actionsheet/actionsheet-content.tsx +19 -19
  16. package/src/actionsheet/actionsheet-drag-indicator-wrapper.tsx +19 -19
  17. package/src/actionsheet/actionsheet-drag-indicator.tsx +19 -19
  18. package/src/actionsheet/actionsheet-item-text.tsx +19 -19
  19. package/src/actionsheet/actionsheet-item.tsx +20 -20
  20. package/src/actionsheet/actionsheet-scroll-view.tsx +12 -12
  21. package/src/actionsheet/actionsheet.tsx +45 -45
  22. package/src/actionsheet/index.ts +20 -20
  23. package/src/actionsheet/styles.ts +25 -25
  24. package/src/actionsheet/types.ts +49 -49
  25. package/src/alert/alert-body.tsx +19 -19
  26. package/src/alert/alert-close-button.tsx +23 -23
  27. package/src/alert/alert-icon.tsx +40 -40
  28. package/src/alert/alert-text.tsx +22 -22
  29. package/src/alert/alert.tsx +33 -33
  30. package/src/alert/index.ts +15 -15
  31. package/src/alert/styles.ts +112 -112
  32. package/src/alert/types.ts +36 -36
  33. package/src/alert-dialog/alert-dialog.tsx +54 -54
  34. package/src/alert-dialog/index.ts +2 -2
  35. package/src/alert-dialog/styles.ts +40 -40
  36. package/src/alert-dialog/types.ts +40 -40
  37. package/src/aspect-ratio/aspect-ratio.tsx +20 -20
  38. package/src/aspect-ratio/index.ts +2 -2
  39. package/src/aspect-ratio/styles.ts +6 -6
  40. package/src/aspect-ratio/types.ts +7 -7
  41. package/src/avatar/avatar-badge.tsx +22 -22
  42. package/src/avatar/avatar-fallback-text.tsx +33 -33
  43. package/src/avatar/avatar-group.tsx +53 -53
  44. package/src/avatar/avatar-image.tsx +21 -21
  45. package/src/avatar/avatar.tsx +27 -27
  46. package/src/avatar/index.ts +14 -14
  47. package/src/avatar/styles.ts +94 -94
  48. package/src/avatar/types.ts +35 -35
  49. package/src/badge/badge-icon.tsx +20 -20
  50. package/src/badge/badge-text.tsx +24 -24
  51. package/src/badge/badge.tsx +39 -39
  52. package/src/badge/index.ts +11 -11
  53. package/src/badge/styles.ts +175 -175
  54. package/src/badge/types.ts +37 -37
  55. package/src/blockquote/blockquote.tsx +21 -21
  56. package/src/blockquote/index.ts +2 -2
  57. package/src/blockquote/styles.ts +11 -11
  58. package/src/blockquote/types.ts +6 -6
  59. package/src/box/box.tsx +19 -19
  60. package/src/box/index.ts +2 -2
  61. package/src/box/styles.ts +6 -6
  62. package/src/box/types.ts +6 -6
  63. package/src/breadcrumb/breadcrumb-item.tsx +20 -20
  64. package/src/breadcrumb/breadcrumb-link.tsx +20 -20
  65. package/src/breadcrumb/breadcrumb-text.tsx +19 -19
  66. package/src/breadcrumb/breadcrumb.tsx +43 -43
  67. package/src/breadcrumb/index.ts +12 -12
  68. package/src/breadcrumb/styles.ts +36 -36
  69. package/src/breadcrumb/types.ts +33 -33
  70. package/src/button/button-group.tsx +35 -35
  71. package/src/button/button-icon.tsx +37 -37
  72. package/src/button/button-spinner.tsx +12 -12
  73. package/src/button/button-text.tsx +27 -27
  74. package/src/button/button.tsx +42 -42
  75. package/src/button/index.ts +19 -19
  76. package/src/button/styles.ts +250 -250
  77. package/src/button/types.ts +67 -67
  78. package/src/calendar/calendar-day-cell.tsx +67 -67
  79. package/src/calendar/calendar-day-view.tsx +66 -66
  80. package/src/calendar/calendar-event.tsx +59 -59
  81. package/src/calendar/calendar-header.tsx +60 -60
  82. package/src/calendar/calendar-horizontal-view.tsx +372 -372
  83. package/src/calendar/calendar-legend.tsx +41 -41
  84. package/src/calendar/calendar-month-view.tsx +47 -47
  85. package/src/calendar/calendar-vertical-view.tsx +395 -395
  86. package/src/calendar/calendar-view-switcher.tsx +65 -65
  87. package/src/calendar/calendar-week-view.tsx +52 -52
  88. package/src/calendar/calendar.tsx +74 -74
  89. package/src/calendar/index.ts +27 -27
  90. package/src/calendar/styles.ts +367 -367
  91. package/src/calendar/types.ts +101 -101
  92. package/src/calendar/use-calendar.ts +170 -170
  93. package/src/calendar/utils.ts +278 -278
  94. package/src/card/card-body.tsx +22 -22
  95. package/src/card/card-footer.tsx +19 -19
  96. package/src/card/card-header.tsx +22 -22
  97. package/src/card/card.tsx +27 -27
  98. package/src/card/index.ts +13 -13
  99. package/src/card/styles.ts +54 -54
  100. package/src/card/types.ts +31 -31
  101. package/src/carousel/carousel.tsx +436 -436
  102. package/src/carousel/index.ts +2 -2
  103. package/src/carousel/styles.ts +21 -21
  104. package/src/carousel/types.ts +41 -41
  105. package/src/center/center.tsx +19 -19
  106. package/src/center/index.ts +2 -2
  107. package/src/center/styles.ts +6 -6
  108. package/src/center/types.ts +6 -6
  109. package/src/checkbox/checkbox-group.tsx +63 -63
  110. package/src/checkbox/checkbox-icon.tsx +35 -35
  111. package/src/checkbox/checkbox-indicator.tsx +30 -30
  112. package/src/checkbox/checkbox-label.tsx +24 -24
  113. package/src/checkbox/checkbox.tsx +86 -86
  114. package/src/checkbox/index.ts +14 -14
  115. package/src/checkbox/styles.ts +69 -69
  116. package/src/checkbox/types.ts +55 -55
  117. package/src/circular-progress/circular-progress.tsx +82 -82
  118. package/src/circular-progress/index.ts +2 -2
  119. package/src/circular-progress/styles.ts +31 -31
  120. package/src/circular-progress/types.ts +18 -18
  121. package/src/code/code.tsx +36 -36
  122. package/src/code/index.ts +2 -2
  123. package/src/code/styles.ts +25 -25
  124. package/src/code/types.ts +13 -13
  125. package/src/collapsible/collapsible.tsx +58 -58
  126. package/src/collapsible/index.ts +2 -2
  127. package/src/collapsible/styles.ts +5 -5
  128. package/src/collapsible/types.ts +21 -21
  129. package/src/color-picker/color-picker-box.tsx +115 -115
  130. package/src/color-picker/color-picker-slider.tsx +98 -98
  131. package/src/color-picker/color-picker.tsx +162 -162
  132. package/src/color-picker/color-utils.ts +215 -215
  133. package/src/color-picker/index.ts +34 -34
  134. package/src/color-picker/styles.ts +32 -32
  135. package/src/color-picker/types.ts +49 -49
  136. package/src/color-picker/use-pointer-drag.ts +80 -80
  137. package/src/container/container.tsx +19 -19
  138. package/src/container/index.ts +2 -2
  139. package/src/container/styles.ts +21 -21
  140. package/src/container/types.ts +10 -10
  141. package/src/date-picker/date-picker.tsx +136 -136
  142. package/src/date-picker/index.ts +15 -15
  143. package/src/date-picker/styles.ts +18 -18
  144. package/src/date-picker/types.ts +33 -33
  145. package/src/divider/divider.tsx +21 -21
  146. package/src/divider/index.ts +2 -2
  147. package/src/divider/styles.ts +14 -14
  148. package/src/divider/types.ts +7 -7
  149. package/src/drawer/drawer-backdrop.tsx +23 -23
  150. package/src/drawer/drawer-body.tsx +19 -19
  151. package/src/drawer/drawer-close-button.tsx +29 -29
  152. package/src/drawer/drawer-content.tsx +142 -142
  153. package/src/drawer/drawer-footer.tsx +19 -19
  154. package/src/drawer/drawer-header.tsx +19 -19
  155. package/src/drawer/drawer.tsx +54 -54
  156. package/src/drawer/index.ts +22 -22
  157. package/src/drawer/styles.ts +36 -36
  158. package/src/drawer/types.ts +62 -62
  159. package/src/empty/empty.tsx +53 -53
  160. package/src/empty/index.ts +2 -2
  161. package/src/empty/styles.ts +26 -26
  162. package/src/empty/types.ts +22 -22
  163. package/src/fab/fab-icon.tsx +20 -20
  164. package/src/fab/fab-label.tsx +22 -22
  165. package/src/fab/fab.tsx +45 -45
  166. package/src/fab/index.ts +11 -11
  167. package/src/fab/styles.ts +57 -57
  168. package/src/fab/types.ts +33 -33
  169. package/src/form-control/form-control-error-icon.tsx +25 -25
  170. package/src/form-control/form-control-error-message.tsx +40 -40
  171. package/src/form-control/form-control-helper-text.tsx +25 -25
  172. package/src/form-control/form-control-label-text.tsx +25 -25
  173. package/src/form-control/form-control-label.tsx +36 -36
  174. package/src/form-control/form-control.tsx +46 -46
  175. package/src/form-control/index.ts +20 -20
  176. package/src/form-control/styles.ts +105 -105
  177. package/src/form-control/types.ts +45 -45
  178. package/src/heading/heading.tsx +21 -21
  179. package/src/heading/index.ts +2 -2
  180. package/src/heading/styles.ts +24 -24
  181. package/src/heading/types.ts +19 -19
  182. package/src/icon/icon.tsx +21 -21
  183. package/src/icon/index.ts +2 -2
  184. package/src/icon/styles.ts +18 -18
  185. package/src/icon/types.ts +8 -8
  186. package/src/icon-button/icon-button.tsx +23 -23
  187. package/src/icon-button/index.ts +2 -2
  188. package/src/icon-button/styles.ts +78 -78
  189. package/src/icon-button/types.ts +15 -15
  190. package/src/image/image.tsx +20 -20
  191. package/src/image/index.ts +2 -2
  192. package/src/image/styles.ts +28 -28
  193. package/src/image/types.ts +11 -11
  194. package/src/index.ts +1039 -1039
  195. package/src/input/index.ts +13 -13
  196. package/src/input/input-field.tsx +35 -35
  197. package/src/input/input-icon.tsx +25 -25
  198. package/src/input/input-slot.tsx +24 -24
  199. package/src/input/input.tsx +73 -73
  200. package/src/input/styles.ts +90 -90
  201. package/src/input/types.ts +39 -39
  202. package/src/kbd/index.ts +2 -2
  203. package/src/kbd/kbd.tsx +21 -21
  204. package/src/kbd/styles.ts +11 -11
  205. package/src/kbd/types.ts +7 -7
  206. package/src/link/index.ts +4 -4
  207. package/src/link/link-text.tsx +19 -19
  208. package/src/link/link.tsx +31 -31
  209. package/src/link/styles.ts +19 -19
  210. package/src/link/types.ts +13 -13
  211. package/src/list/index.ts +2 -2
  212. package/src/list/list.tsx +55 -55
  213. package/src/list/styles.ts +8 -8
  214. package/src/list/types.ts +17 -17
  215. package/src/menu/index.ts +2 -2
  216. package/src/menu/menu.tsx +99 -99
  217. package/src/menu/styles.ts +14 -14
  218. package/src/menu/types.ts +30 -30
  219. package/src/modal/index.ts +18 -18
  220. package/src/modal/modal-backdrop.tsx +23 -23
  221. package/src/modal/modal-body.tsx +19 -19
  222. package/src/modal/modal-close-button.tsx +29 -29
  223. package/src/modal/modal-content.tsx +22 -22
  224. package/src/modal/modal-footer.tsx +19 -19
  225. package/src/modal/modal-header.tsx +19 -19
  226. package/src/modal/modal.tsx +50 -50
  227. package/src/modal/styles.ts +37 -37
  228. package/src/modal/types.ts +49 -49
  229. package/src/nativewind-env.d.ts +1 -1
  230. package/src/number-input/index.ts +18 -18
  231. package/src/number-input/number-input.tsx +161 -161
  232. package/src/number-input/styles.ts +35 -35
  233. package/src/number-input/types.ts +44 -44
  234. package/src/overlay/index.ts +2 -2
  235. package/src/overlay/overlay.tsx +21 -21
  236. package/src/overlay/styles.ts +6 -6
  237. package/src/overlay/types.ts +7 -7
  238. package/src/pagination/index.ts +2 -2
  239. package/src/pagination/pagination.tsx +58 -58
  240. package/src/pagination/styles.ts +27 -27
  241. package/src/pagination/types.ts +19 -19
  242. package/src/password-input/index.ts +14 -14
  243. package/src/password-input/password-input.tsx +79 -79
  244. package/src/password-input/styles.ts +25 -25
  245. package/src/password-input/types.ts +24 -24
  246. package/src/pin-input/index.ts +12 -12
  247. package/src/pin-input/pin-input.tsx +96 -96
  248. package/src/pin-input/styles.ts +16 -16
  249. package/src/pin-input/types.ts +26 -26
  250. package/src/popover/index.ts +2 -2
  251. package/src/popover/popover.tsx +98 -98
  252. package/src/popover/styles.ts +31 -31
  253. package/src/popover/types.ts +46 -46
  254. package/src/portal/index.ts +2 -2
  255. package/src/portal/portal.tsx +8 -8
  256. package/src/portal/styles.ts +2 -2
  257. package/src/portal/types.ts +3 -3
  258. package/src/pressable/index.ts +2 -2
  259. package/src/pressable/pressable.tsx +20 -20
  260. package/src/pressable/styles.ts +10 -10
  261. package/src/pressable/types.ts +6 -6
  262. package/src/progress/index.ts +9 -9
  263. package/src/progress/progress-filled-track.tsx +26 -26
  264. package/src/progress/progress.tsx +52 -52
  265. package/src/progress/styles.ts +34 -34
  266. package/src/progress/types.ts +28 -28
  267. package/src/radio/index.ts +14 -14
  268. package/src/radio/radio-group.tsx +61 -61
  269. package/src/radio/radio-icon.tsx +24 -24
  270. package/src/radio/radio-indicator.tsx +30 -30
  271. package/src/radio/radio-label.tsx +24 -24
  272. package/src/radio/radio.tsx +68 -68
  273. package/src/radio/styles.ts +69 -69
  274. package/src/radio/types.ts +51 -51
  275. package/src/rating/index.ts +7 -7
  276. package/src/rating/rating.tsx +93 -93
  277. package/src/rating/styles.ts +13 -13
  278. package/src/rating/types.ts +29 -29
  279. package/src/search-input/index.ts +16 -16
  280. package/src/search-input/search-input.tsx +119 -119
  281. package/src/search-input/styles.ts +28 -28
  282. package/src/search-input/types.ts +31 -31
  283. package/src/segmented-control/index.ts +2 -2
  284. package/src/segmented-control/segmented-control.tsx +34 -34
  285. package/src/segmented-control/styles.ts +22 -22
  286. package/src/segmented-control/types.ts +22 -22
  287. package/src/select/index.ts +28 -28
  288. package/src/select/select-backdrop.tsx +25 -25
  289. package/src/select/select-content.tsx +49 -49
  290. package/src/select/select-drag-indicator.tsx +19 -19
  291. package/src/select/select-icon.tsx +25 -25
  292. package/src/select/select-input.tsx +32 -32
  293. package/src/select/select-item-text.tsx +30 -30
  294. package/src/select/select-item.tsx +72 -72
  295. package/src/select/select-portal.tsx +22 -22
  296. package/src/select/select-scroll-view.tsx +22 -22
  297. package/src/select/select-trigger.tsx +64 -64
  298. package/src/select/select.tsx +101 -101
  299. package/src/select/styles.ts +114 -114
  300. package/src/select/types.ts +92 -92
  301. package/src/skeleton/index.ts +2 -2
  302. package/src/skeleton/skeleton.tsx +29 -29
  303. package/src/skeleton/styles.ts +14 -14
  304. package/src/skeleton/types.ts +12 -12
  305. package/src/slider/index.ts +12 -12
  306. package/src/slider/slider-filled-track.tsx +31 -31
  307. package/src/slider/slider-thumb.tsx +52 -52
  308. package/src/slider/slider-track.tsx +154 -154
  309. package/src/slider/slider.tsx +193 -193
  310. package/src/slider/styles.ts +71 -71
  311. package/src/slider/types.ts +47 -47
  312. package/src/snackbar/index.ts +2 -2
  313. package/src/snackbar/snackbar.tsx +39 -39
  314. package/src/snackbar/styles.ts +29 -29
  315. package/src/snackbar/types.ts +21 -21
  316. package/src/spinner/index.ts +2 -2
  317. package/src/spinner/spinner.tsx +29 -29
  318. package/src/spinner/styles.ts +15 -15
  319. package/src/spinner/types.ts +10 -10
  320. package/src/stack/index.ts +2 -2
  321. package/src/stack/stack.tsx +49 -49
  322. package/src/stack/styles.ts +25 -25
  323. package/src/stack/types.ts +15 -15
  324. package/src/stat/index.ts +2 -2
  325. package/src/stat/stat.tsx +48 -48
  326. package/src/stat/styles.ts +34 -34
  327. package/src/stat/types.ts +24 -24
  328. package/src/stepper/index.ts +2 -2
  329. package/src/stepper/stepper.tsx +95 -95
  330. package/src/stepper/styles.ts +49 -49
  331. package/src/stepper/types.ts +20 -20
  332. package/src/switch/index.ts +2 -2
  333. package/src/switch/styles.ts +24 -24
  334. package/src/switch/switch.tsx +67 -67
  335. package/src/switch/types.ts +23 -23
  336. package/src/table/index.ts +2 -2
  337. package/src/table/styles.ts +12 -12
  338. package/src/table/table.tsx +52 -52
  339. package/src/table/types.ts +10 -10
  340. package/src/tabs/index.ts +18 -18
  341. package/src/tabs/styles.ts +113 -113
  342. package/src/tabs/tab-list.tsx +29 -29
  343. package/src/tabs/tab-panel.tsx +29 -29
  344. package/src/tabs/tab-panels.tsx +21 -21
  345. package/src/tabs/tab-text.tsx +26 -26
  346. package/src/tabs/tab.tsx +56 -56
  347. package/src/tabs/tabs.tsx +71 -71
  348. package/src/tabs/types.ts +53 -53
  349. package/src/tag/index.ts +14 -14
  350. package/src/tag/styles.ts +115 -115
  351. package/src/tag/tag-close-button.tsx +26 -26
  352. package/src/tag/tag-icon.tsx +20 -20
  353. package/src/tag/tag-text.tsx +22 -22
  354. package/src/tag/tag.tsx +40 -40
  355. package/src/tag/types.ts +33 -33
  356. package/src/tags-input/index.ts +18 -18
  357. package/src/tags-input/styles.ts +29 -29
  358. package/src/tags-input/tags-input.tsx +149 -149
  359. package/src/tags-input/types.ts +37 -37
  360. package/src/text/index.ts +2 -2
  361. package/src/text/styles.ts +54 -54
  362. package/src/text/text.tsx +51 -51
  363. package/src/text/types.ts +36 -36
  364. package/src/textarea/index.ts +2 -2
  365. package/src/textarea/styles.ts +37 -37
  366. package/src/textarea/textarea.tsx +68 -68
  367. package/src/textarea/types.ts +14 -14
  368. package/src/timeline/index.ts +2 -2
  369. package/src/timeline/styles.ts +57 -57
  370. package/src/timeline/timeline.tsx +52 -52
  371. package/src/timeline/types.ts +30 -30
  372. package/src/toast/index.ts +17 -17
  373. package/src/toast/styles.ts +118 -118
  374. package/src/toast/toast-description.tsx +22 -22
  375. package/src/toast/toast-provider.tsx +136 -136
  376. package/src/toast/toast-title.tsx +22 -22
  377. package/src/toast/toast.tsx +43 -43
  378. package/src/toast/types.ts +50 -50
  379. package/src/toast/use-toast.ts +7 -7
  380. package/src/toggle/index.ts +2 -2
  381. package/src/toggle/styles.ts +30 -30
  382. package/src/toggle/toggle.tsx +25 -25
  383. package/src/toggle/types.ts +15 -15
  384. package/src/toggle-group/index.ts +2 -2
  385. package/src/toggle-group/styles.ts +35 -35
  386. package/src/toggle-group/toggle-group.tsx +60 -60
  387. package/src/toggle-group/types.ts +29 -29
  388. package/src/tooltip/index.ts +11 -11
  389. package/src/tooltip/styles.ts +9 -9
  390. package/src/tooltip/tooltip-content.tsx +19 -19
  391. package/src/tooltip/tooltip-text.tsx +19 -19
  392. package/src/tooltip/tooltip.tsx +116 -116
  393. package/src/tooltip/types.ts +35 -35
  394. package/src/utils/brand.ts +5 -5
  395. package/src/utils/create-context.ts +17 -17
  396. package/src/utils/index.ts +8 -8
  397. package/src/utils/types.ts +20 -20
  398. package/src/visually-hidden/index.ts +2 -2
  399. package/src/visually-hidden/styles.ts +6 -6
  400. package/src/visually-hidden/types.ts +6 -6
  401. package/src/visually-hidden/visually-hidden.tsx +22 -22
  402. package/tailwind-preset.js +203 -203
@@ -1,56 +1,56 @@
1
- import type { View, Pressable, Text as RNText } from 'react-native';
2
-
3
- export type AccordionType = 'single' | 'multiple';
4
- export type AccordionVariant = 'filled' | 'unfilled';
5
- export type AccordionSize = 'sm' | 'md' | 'lg';
6
-
7
- export interface AccordionContextValue {
8
- expandedItems: string[];
9
- toggleItem: (value: string) => void;
10
- type: AccordionType;
11
- isCollapsible: boolean;
12
- variant: AccordionVariant;
13
- size: AccordionSize;
14
- }
15
-
16
- export interface AccordionItemContextValue {
17
- value: string;
18
- isExpanded: boolean;
19
- }
20
-
21
- export interface AccordionProps
22
- extends React.ComponentPropsWithoutRef<typeof View> {
23
- className?: string;
24
- type?: AccordionType;
25
- defaultValue?: string[];
26
- value?: string[];
27
- onValueChange?: (value: string[]) => void;
28
- isCollapsible?: boolean;
29
- variant?: AccordionVariant;
30
- size?: AccordionSize;
31
- }
32
-
33
- export interface AccordionItemProps
34
- extends React.ComponentPropsWithoutRef<typeof View> {
35
- className?: string;
36
- value: string;
37
- }
38
-
39
- export interface AccordionTriggerProps
40
- extends React.ComponentPropsWithoutRef<typeof Pressable> {
41
- className?: string;
42
- }
43
-
44
- export interface AccordionContentProps
45
- extends React.ComponentPropsWithoutRef<typeof View> {
46
- className?: string;
47
- }
48
-
49
- export interface AccordionIconProps {
50
- className?: string;
51
- }
52
-
53
- export interface AccordionTitleTextProps
54
- extends React.ComponentPropsWithoutRef<typeof RNText> {
55
- className?: string;
56
- }
1
+ import type { View, Pressable, Text as RNText } from 'react-native';
2
+
3
+ export type AccordionType = 'single' | 'multiple';
4
+ export type AccordionVariant = 'filled' | 'unfilled';
5
+ export type AccordionSize = 'sm' | 'md' | 'lg';
6
+
7
+ export interface AccordionContextValue {
8
+ expandedItems: string[];
9
+ toggleItem: (value: string) => void;
10
+ type: AccordionType;
11
+ isCollapsible: boolean;
12
+ variant: AccordionVariant;
13
+ size: AccordionSize;
14
+ }
15
+
16
+ export interface AccordionItemContextValue {
17
+ value: string;
18
+ isExpanded: boolean;
19
+ }
20
+
21
+ export interface AccordionProps
22
+ extends React.ComponentPropsWithoutRef<typeof View> {
23
+ className?: string;
24
+ type?: AccordionType;
25
+ defaultValue?: string[];
26
+ value?: string[];
27
+ onValueChange?: (value: string[]) => void;
28
+ isCollapsible?: boolean;
29
+ variant?: AccordionVariant;
30
+ size?: AccordionSize;
31
+ }
32
+
33
+ export interface AccordionItemProps
34
+ extends React.ComponentPropsWithoutRef<typeof View> {
35
+ className?: string;
36
+ value: string;
37
+ }
38
+
39
+ export interface AccordionTriggerProps
40
+ extends React.ComponentPropsWithoutRef<typeof Pressable> {
41
+ className?: string;
42
+ }
43
+
44
+ export interface AccordionContentProps
45
+ extends React.ComponentPropsWithoutRef<typeof View> {
46
+ className?: string;
47
+ }
48
+
49
+ export interface AccordionIconProps {
50
+ className?: string;
51
+ }
52
+
53
+ export interface AccordionTitleTextProps
54
+ extends React.ComponentPropsWithoutRef<typeof RNText> {
55
+ className?: string;
56
+ }
@@ -1,23 +1,23 @@
1
- import React from 'react';
2
- import { Pressable } from 'react-native';
3
- import { useActionSheetContext } from './actionsheet';
4
- import type { ActionSheetBackdropProps } from './types';
5
- import { actionsheetBackdropStyle } from './styles';
6
-
7
- export const ActionSheetBackdrop = React.forwardRef<
8
- React.ElementRef<typeof Pressable>,
9
- ActionSheetBackdropProps
10
- >(({ className, ...props }, ref) => {
11
- const { onClose } = useActionSheetContext();
12
-
13
- return (
14
- <Pressable
15
- ref={ref}
16
- onPress={onClose}
17
- className={actionsheetBackdropStyle({ class: className })}
18
- {...props}
19
- />
20
- );
21
- });
22
-
23
- ActionSheetBackdrop.displayName = 'ActionSheetBackdrop';
1
+ import React from 'react';
2
+ import { Pressable } from 'react-native';
3
+ import { useActionSheetContext } from './actionsheet';
4
+ import type { ActionSheetBackdropProps } from './types';
5
+ import { actionsheetBackdropStyle } from './styles';
6
+
7
+ export const ActionSheetBackdrop = React.forwardRef<
8
+ React.ElementRef<typeof Pressable>,
9
+ ActionSheetBackdropProps
10
+ >(({ className, ...props }, ref) => {
11
+ const { onClose } = useActionSheetContext();
12
+
13
+ return (
14
+ <Pressable
15
+ ref={ref}
16
+ onPress={onClose}
17
+ className={actionsheetBackdropStyle({ class: className })}
18
+ {...props}
19
+ />
20
+ );
21
+ });
22
+
23
+ ActionSheetBackdrop.displayName = 'ActionSheetBackdrop';
@@ -1,19 +1,19 @@
1
- import React from 'react';
2
- import { View } from 'react-native';
3
- import type { ActionSheetContentProps } from './types';
4
- import { actionsheetContentStyle } from './styles';
5
-
6
- export const ActionSheetContent = React.forwardRef<
7
- React.ElementRef<typeof View>,
8
- ActionSheetContentProps
9
- >(({ className, ...props }, ref) => {
10
- return (
11
- <View
12
- ref={ref}
13
- className={actionsheetContentStyle({ class: className })}
14
- {...props}
15
- />
16
- );
17
- });
18
-
19
- ActionSheetContent.displayName = 'ActionSheetContent';
1
+ import React from 'react';
2
+ import { View } from 'react-native';
3
+ import type { ActionSheetContentProps } from './types';
4
+ import { actionsheetContentStyle } from './styles';
5
+
6
+ export const ActionSheetContent = React.forwardRef<
7
+ React.ElementRef<typeof View>,
8
+ ActionSheetContentProps
9
+ >(({ className, ...props }, ref) => {
10
+ return (
11
+ <View
12
+ ref={ref}
13
+ className={actionsheetContentStyle({ class: className })}
14
+ {...props}
15
+ />
16
+ );
17
+ });
18
+
19
+ ActionSheetContent.displayName = 'ActionSheetContent';
@@ -1,19 +1,19 @@
1
- import React from 'react';
2
- import { View } from 'react-native';
3
- import type { ActionSheetDragIndicatorWrapperProps } from './types';
4
- import { actionsheetDragIndicatorWrapperStyle } from './styles';
5
-
6
- export const ActionSheetDragIndicatorWrapper = React.forwardRef<
7
- React.ElementRef<typeof View>,
8
- ActionSheetDragIndicatorWrapperProps
9
- >(({ className, ...props }, ref) => {
10
- return (
11
- <View
12
- ref={ref}
13
- className={actionsheetDragIndicatorWrapperStyle({ class: className })}
14
- {...props}
15
- />
16
- );
17
- });
18
-
19
- ActionSheetDragIndicatorWrapper.displayName = 'ActionSheetDragIndicatorWrapper';
1
+ import React from 'react';
2
+ import { View } from 'react-native';
3
+ import type { ActionSheetDragIndicatorWrapperProps } from './types';
4
+ import { actionsheetDragIndicatorWrapperStyle } from './styles';
5
+
6
+ export const ActionSheetDragIndicatorWrapper = React.forwardRef<
7
+ React.ElementRef<typeof View>,
8
+ ActionSheetDragIndicatorWrapperProps
9
+ >(({ className, ...props }, ref) => {
10
+ return (
11
+ <View
12
+ ref={ref}
13
+ className={actionsheetDragIndicatorWrapperStyle({ class: className })}
14
+ {...props}
15
+ />
16
+ );
17
+ });
18
+
19
+ ActionSheetDragIndicatorWrapper.displayName = 'ActionSheetDragIndicatorWrapper';
@@ -1,19 +1,19 @@
1
- import React from 'react';
2
- import { View } from 'react-native';
3
- import type { ActionSheetDragIndicatorProps } from './types';
4
- import { actionsheetDragIndicatorStyle } from './styles';
5
-
6
- export const ActionSheetDragIndicator = React.forwardRef<
7
- React.ElementRef<typeof View>,
8
- ActionSheetDragIndicatorProps
9
- >(({ className, ...props }, ref) => {
10
- return (
11
- <View
12
- ref={ref}
13
- className={actionsheetDragIndicatorStyle({ class: className })}
14
- {...props}
15
- />
16
- );
17
- });
18
-
19
- ActionSheetDragIndicator.displayName = 'ActionSheetDragIndicator';
1
+ import React from 'react';
2
+ import { View } from 'react-native';
3
+ import type { ActionSheetDragIndicatorProps } from './types';
4
+ import { actionsheetDragIndicatorStyle } from './styles';
5
+
6
+ export const ActionSheetDragIndicator = React.forwardRef<
7
+ React.ElementRef<typeof View>,
8
+ ActionSheetDragIndicatorProps
9
+ >(({ className, ...props }, ref) => {
10
+ return (
11
+ <View
12
+ ref={ref}
13
+ className={actionsheetDragIndicatorStyle({ class: className })}
14
+ {...props}
15
+ />
16
+ );
17
+ });
18
+
19
+ ActionSheetDragIndicator.displayName = 'ActionSheetDragIndicator';
@@ -1,19 +1,19 @@
1
- import React from 'react';
2
- import { Text } from 'react-native';
3
- import type { ActionSheetItemTextProps } from './types';
4
- import { actionsheetItemTextStyle } from './styles';
5
-
6
- export const ActionSheetItemText = React.forwardRef<
7
- React.ElementRef<typeof Text>,
8
- ActionSheetItemTextProps
9
- >(({ className, ...props }, ref) => {
10
- return (
11
- <Text
12
- ref={ref}
13
- className={actionsheetItemTextStyle({ class: className })}
14
- {...props}
15
- />
16
- );
17
- });
18
-
19
- ActionSheetItemText.displayName = 'ActionSheetItemText';
1
+ import React from 'react';
2
+ import { Text } from 'react-native';
3
+ import type { ActionSheetItemTextProps } from './types';
4
+ import { actionsheetItemTextStyle } from './styles';
5
+
6
+ export const ActionSheetItemText = React.forwardRef<
7
+ React.ElementRef<typeof Text>,
8
+ ActionSheetItemTextProps
9
+ >(({ className, ...props }, ref) => {
10
+ return (
11
+ <Text
12
+ ref={ref}
13
+ className={actionsheetItemTextStyle({ class: className })}
14
+ {...props}
15
+ />
16
+ );
17
+ });
18
+
19
+ ActionSheetItemText.displayName = 'ActionSheetItemText';
@@ -1,20 +1,20 @@
1
- import React from 'react';
2
- import { Pressable } from 'react-native';
3
- import type { ActionSheetItemProps } from './types';
4
- import { actionsheetItemStyle } from './styles';
5
-
6
- export const ActionSheetItem = React.forwardRef<
7
- React.ElementRef<typeof Pressable>,
8
- ActionSheetItemProps
9
- >(({ className, ...props }, ref) => {
10
- return (
11
- <Pressable
12
- ref={ref}
13
- role="menuitem"
14
- className={actionsheetItemStyle({ class: className })}
15
- {...props}
16
- />
17
- );
18
- });
19
-
20
- ActionSheetItem.displayName = 'ActionSheetItem';
1
+ import React from 'react';
2
+ import { Pressable } from 'react-native';
3
+ import type { ActionSheetItemProps } from './types';
4
+ import { actionsheetItemStyle } from './styles';
5
+
6
+ export const ActionSheetItem = React.forwardRef<
7
+ React.ElementRef<typeof Pressable>,
8
+ ActionSheetItemProps
9
+ >(({ className, ...props }, ref) => {
10
+ return (
11
+ <Pressable
12
+ ref={ref}
13
+ role="menuitem"
14
+ className={actionsheetItemStyle({ class: className })}
15
+ {...props}
16
+ />
17
+ );
18
+ });
19
+
20
+ ActionSheetItem.displayName = 'ActionSheetItem';
@@ -1,12 +1,12 @@
1
- import React from 'react';
2
- import { ScrollView } from 'react-native';
3
- import type { ActionSheetScrollViewProps } from './types';
4
-
5
- export const ActionSheetScrollView = React.forwardRef<
6
- React.ElementRef<typeof ScrollView>,
7
- ActionSheetScrollViewProps
8
- >(({ className, ...props }, ref) => {
9
- return <ScrollView ref={ref} className={className} {...props} />;
10
- });
11
-
12
- ActionSheetScrollView.displayName = 'ActionSheetScrollView';
1
+ import React from 'react';
2
+ import { ScrollView } from 'react-native';
3
+ import type { ActionSheetScrollViewProps } from './types';
4
+
5
+ export const ActionSheetScrollView = React.forwardRef<
6
+ React.ElementRef<typeof ScrollView>,
7
+ ActionSheetScrollViewProps
8
+ >(({ className, ...props }, ref) => {
9
+ return <ScrollView ref={ref} className={className} {...props} />;
10
+ });
11
+
12
+ ActionSheetScrollView.displayName = 'ActionSheetScrollView';
@@ -1,45 +1,45 @@
1
- import React from 'react';
2
- import { Modal as RNModal, View } from 'react-native';
3
- import { createComponentContext } from '../utils/create-context';
4
- import type { ActionSheetProps, ActionSheetContextValue } from './types';
5
-
6
- export const [ActionSheetProvider, useActionSheetContext] =
7
- createComponentContext<ActionSheetContextValue>('ActionSheet');
8
-
9
- export const ActionSheet: React.FC<ActionSheetProps> = ({
10
- isOpen,
11
- onClose,
12
- isModal = true,
13
- children,
14
- }) => {
15
- if (isModal) {
16
- return (
17
- <ActionSheetProvider value={{ isOpen, onClose }}>
18
- <RNModal
19
- visible={isOpen}
20
- transparent
21
- animationType="slide"
22
- onRequestClose={onClose}
23
- statusBarTranslucent
24
- >
25
- <View style={{ flex: 1, justifyContent: 'flex-end' }} pointerEvents="box-none">{children}</View>
26
- </RNModal>
27
- </ActionSheetProvider>
28
- );
29
- }
30
-
31
- if (!isOpen) return null;
32
-
33
- return (
34
- <ActionSheetProvider value={{ isOpen, onClose }}>
35
- <View
36
- style={{ position: 'absolute', top: 0, left: 0, right: 0, bottom: 0, zIndex: 50, justifyContent: 'flex-end' }}
37
- pointerEvents="box-none"
38
- >
39
- {children}
40
- </View>
41
- </ActionSheetProvider>
42
- );
43
- };
44
-
45
- ActionSheet.displayName = 'ActionSheet';
1
+ import React from 'react';
2
+ import { Modal as RNModal, View } from 'react-native';
3
+ import { createComponentContext } from '../utils/create-context';
4
+ import type { ActionSheetProps, ActionSheetContextValue } from './types';
5
+
6
+ export const [ActionSheetProvider, useActionSheetContext] =
7
+ createComponentContext<ActionSheetContextValue>('ActionSheet');
8
+
9
+ export const ActionSheet: React.FC<ActionSheetProps> = ({
10
+ isOpen,
11
+ onClose,
12
+ isModal = true,
13
+ children,
14
+ }) => {
15
+ if (isModal) {
16
+ return (
17
+ <ActionSheetProvider value={{ isOpen, onClose }}>
18
+ <RNModal
19
+ visible={isOpen}
20
+ transparent
21
+ animationType="slide"
22
+ onRequestClose={onClose}
23
+ statusBarTranslucent
24
+ >
25
+ <View style={{ flex: 1, justifyContent: 'flex-end' }} pointerEvents="box-none">{children}</View>
26
+ </RNModal>
27
+ </ActionSheetProvider>
28
+ );
29
+ }
30
+
31
+ if (!isOpen) return null;
32
+
33
+ return (
34
+ <ActionSheetProvider value={{ isOpen, onClose }}>
35
+ <View
36
+ style={{ position: 'absolute', top: 0, left: 0, right: 0, bottom: 0, zIndex: 50, justifyContent: 'flex-end' }}
37
+ pointerEvents="box-none"
38
+ >
39
+ {children}
40
+ </View>
41
+ </ActionSheetProvider>
42
+ );
43
+ };
44
+
45
+ ActionSheet.displayName = 'ActionSheet';
@@ -1,20 +1,20 @@
1
- export { ActionSheet } from './actionsheet';
2
- export { ActionSheetBackdrop } from './actionsheet-backdrop';
3
- export { ActionSheetContent } from './actionsheet-content';
4
- export { ActionSheetDragIndicator } from './actionsheet-drag-indicator';
5
- export { ActionSheetDragIndicatorWrapper } from './actionsheet-drag-indicator-wrapper';
6
- export { ActionSheetItem } from './actionsheet-item';
7
- export { ActionSheetItemText } from './actionsheet-item-text';
8
- export { ActionSheetScrollView } from './actionsheet-scroll-view';
9
-
10
- export type {
11
- ActionSheetProps,
12
- ActionSheetBackdropProps,
13
- ActionSheetContentProps,
14
- ActionSheetDragIndicatorProps,
15
- ActionSheetDragIndicatorWrapperProps,
16
- ActionSheetItemProps,
17
- ActionSheetItemTextProps,
18
- ActionSheetScrollViewProps,
19
- ActionSheetContextValue,
20
- } from './types';
1
+ export { ActionSheet } from './actionsheet';
2
+ export { ActionSheetBackdrop } from './actionsheet-backdrop';
3
+ export { ActionSheetContent } from './actionsheet-content';
4
+ export { ActionSheetDragIndicator } from './actionsheet-drag-indicator';
5
+ export { ActionSheetDragIndicatorWrapper } from './actionsheet-drag-indicator-wrapper';
6
+ export { ActionSheetItem } from './actionsheet-item';
7
+ export { ActionSheetItemText } from './actionsheet-item-text';
8
+ export { ActionSheetScrollView } from './actionsheet-scroll-view';
9
+
10
+ export type {
11
+ ActionSheetProps,
12
+ ActionSheetBackdropProps,
13
+ ActionSheetContentProps,
14
+ ActionSheetDragIndicatorProps,
15
+ ActionSheetDragIndicatorWrapperProps,
16
+ ActionSheetItemProps,
17
+ ActionSheetItemTextProps,
18
+ ActionSheetScrollViewProps,
19
+ ActionSheetContextValue,
20
+ } from './types';
@@ -1,25 +1,25 @@
1
- import { tv } from 'tailwind-variants';
2
-
3
- export const actionsheetBackdropStyle = tv({
4
- base: 'absolute inset-0 bg-black/50',
5
- });
6
-
7
- export const actionsheetContentStyle = tv({
8
- base: 'bg-background-0 rounded-t-2xl pb-8 max-h-[70%]',
9
- });
10
-
11
- export const actionsheetDragIndicatorWrapperStyle = tv({
12
- base: 'items-center py-2',
13
- });
14
-
15
- export const actionsheetDragIndicatorStyle = tv({
16
- base: 'w-10 h-1 bg-outline-300 rounded-full',
17
- });
18
-
19
- export const actionsheetItemStyle = tv({
20
- base: 'flex-row items-center px-4 py-3 active:bg-background-100',
21
- });
22
-
23
- export const actionsheetItemTextStyle = tv({
24
- base: 'text-typography-900 text-base flex-1',
25
- });
1
+ import { tv } from 'tailwind-variants';
2
+
3
+ export const actionsheetBackdropStyle = tv({
4
+ base: 'absolute inset-0 bg-black/50',
5
+ });
6
+
7
+ export const actionsheetContentStyle = tv({
8
+ base: 'bg-background-0 rounded-t-2xl pb-8 max-h-[70%]',
9
+ });
10
+
11
+ export const actionsheetDragIndicatorWrapperStyle = tv({
12
+ base: 'items-center py-2',
13
+ });
14
+
15
+ export const actionsheetDragIndicatorStyle = tv({
16
+ base: 'w-10 h-1 bg-outline-300 rounded-full',
17
+ });
18
+
19
+ export const actionsheetItemStyle = tv({
20
+ base: 'flex-row items-center px-4 py-3 active:bg-background-100',
21
+ });
22
+
23
+ export const actionsheetItemTextStyle = tv({
24
+ base: 'text-typography-900 text-base flex-1',
25
+ });
@@ -1,49 +1,49 @@
1
- import type { View, Pressable, Text as RNText, ScrollView } from 'react-native';
2
-
3
- export interface ActionSheetContextValue {
4
- isOpen: boolean;
5
- onClose: () => void;
6
- }
7
-
8
- export interface ActionSheetProps {
9
- isOpen: boolean;
10
- onClose: () => void;
11
- /** When false the action sheet renders inline (no RNModal) so background content stays interactive. */
12
- isModal?: boolean;
13
- children: React.ReactNode;
14
- }
15
-
16
- export interface ActionSheetBackdropProps
17
- extends React.ComponentPropsWithoutRef<typeof Pressable> {
18
- className?: string;
19
- }
20
-
21
- export interface ActionSheetContentProps
22
- extends React.ComponentPropsWithoutRef<typeof View> {
23
- className?: string;
24
- }
25
-
26
- export interface ActionSheetDragIndicatorWrapperProps
27
- extends React.ComponentPropsWithoutRef<typeof View> {
28
- className?: string;
29
- }
30
-
31
- export interface ActionSheetDragIndicatorProps
32
- extends React.ComponentPropsWithoutRef<typeof View> {
33
- className?: string;
34
- }
35
-
36
- export interface ActionSheetItemProps
37
- extends React.ComponentPropsWithoutRef<typeof Pressable> {
38
- className?: string;
39
- }
40
-
41
- export interface ActionSheetItemTextProps
42
- extends React.ComponentPropsWithoutRef<typeof RNText> {
43
- className?: string;
44
- }
45
-
46
- export interface ActionSheetScrollViewProps
47
- extends React.ComponentPropsWithoutRef<typeof ScrollView> {
48
- className?: string;
49
- }
1
+ import type { View, Pressable, Text as RNText, ScrollView } from 'react-native';
2
+
3
+ export interface ActionSheetContextValue {
4
+ isOpen: boolean;
5
+ onClose: () => void;
6
+ }
7
+
8
+ export interface ActionSheetProps {
9
+ isOpen: boolean;
10
+ onClose: () => void;
11
+ /** When false the action sheet renders inline (no RNModal) so background content stays interactive. */
12
+ isModal?: boolean;
13
+ children: React.ReactNode;
14
+ }
15
+
16
+ export interface ActionSheetBackdropProps
17
+ extends React.ComponentPropsWithoutRef<typeof Pressable> {
18
+ className?: string;
19
+ }
20
+
21
+ export interface ActionSheetContentProps
22
+ extends React.ComponentPropsWithoutRef<typeof View> {
23
+ className?: string;
24
+ }
25
+
26
+ export interface ActionSheetDragIndicatorWrapperProps
27
+ extends React.ComponentPropsWithoutRef<typeof View> {
28
+ className?: string;
29
+ }
30
+
31
+ export interface ActionSheetDragIndicatorProps
32
+ extends React.ComponentPropsWithoutRef<typeof View> {
33
+ className?: string;
34
+ }
35
+
36
+ export interface ActionSheetItemProps
37
+ extends React.ComponentPropsWithoutRef<typeof Pressable> {
38
+ className?: string;
39
+ }
40
+
41
+ export interface ActionSheetItemTextProps
42
+ extends React.ComponentPropsWithoutRef<typeof RNText> {
43
+ className?: string;
44
+ }
45
+
46
+ export interface ActionSheetScrollViewProps
47
+ extends React.ComponentPropsWithoutRef<typeof ScrollView> {
48
+ className?: string;
49
+ }