@rojaostudio/ds 1.0.1 → 2.0.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (403) hide show
  1. package/README.md +75 -13
  2. package/dist/compat/generate.d.ts +0 -1
  3. package/dist/components/accordion.d.ts +30 -20
  4. package/dist/components/accordion.js +31 -87
  5. package/dist/components/action-bar.d.ts +24 -0
  6. package/dist/components/action-bar.js +55 -0
  7. package/dist/components/alert-dialog.d.ts +31 -0
  8. package/dist/components/alert-dialog.js +43 -0
  9. package/dist/components/alert.d.ts +31 -19
  10. package/dist/components/alert.js +74 -65
  11. package/dist/components/attachment.d.ts +37 -0
  12. package/dist/components/attachment.js +76 -0
  13. package/dist/components/avatar.d.ts +43 -36
  14. package/dist/components/avatar.js +59 -83
  15. package/dist/components/badge.d.ts +30 -41
  16. package/dist/components/badge.js +16 -106
  17. package/dist/components/banner.d.ts +27 -0
  18. package/dist/components/banner.js +66 -0
  19. package/dist/components/benefits.d.ts +30 -0
  20. package/dist/components/benefits.js +32 -0
  21. package/dist/components/breadcrumb.d.ts +25 -18
  22. package/dist/components/breadcrumb.js +40 -48
  23. package/dist/components/browser.d.ts +18 -0
  24. package/dist/components/browser.js +32 -0
  25. package/dist/components/bubble.d.ts +29 -0
  26. package/dist/components/bubble.js +33 -0
  27. package/dist/components/button-group.d.ts +19 -0
  28. package/dist/components/button-group.js +20 -0
  29. package/dist/components/button.d.ts +47 -20
  30. package/dist/components/button.js +51 -107
  31. package/dist/components/calendar.d.ts +29 -0
  32. package/dist/components/calendar.js +149 -0
  33. package/dist/components/card.d.ts +47 -19
  34. package/dist/components/card.js +38 -38
  35. package/dist/components/carousel.d.ts +28 -0
  36. package/dist/components/carousel.js +130 -0
  37. package/dist/components/chart.d.ts +49 -0
  38. package/dist/components/chart.js +258 -0
  39. package/dist/components/checkbox-group.d.ts +16 -0
  40. package/dist/components/checkbox-group.js +13 -0
  41. package/dist/components/checkbox.d.ts +25 -10
  42. package/dist/components/checkbox.js +86 -67
  43. package/dist/components/chip-input.d.ts +46 -20
  44. package/dist/components/chip-input.js +171 -158
  45. package/dist/components/chip.d.ts +28 -0
  46. package/dist/components/chip.js +73 -0
  47. package/dist/components/choice-card.d.ts +10 -13
  48. package/dist/components/choice-card.js +11 -56
  49. package/dist/components/choice-carousel.d.ts +9 -0
  50. package/dist/components/choice-carousel.js +67 -78
  51. package/dist/components/choice-preview-card.d.ts +10 -20
  52. package/dist/components/choice-preview-card.js +13 -30
  53. package/dist/components/color-input.d.ts +36 -11
  54. package/dist/components/color-input.js +139 -61
  55. package/dist/components/combobox.d.ts +60 -57
  56. package/dist/components/combobox.js +215 -196
  57. package/dist/components/command.d.ts +58 -0
  58. package/dist/components/command.js +177 -0
  59. package/dist/components/contact.d.ts +23 -0
  60. package/dist/components/contact.js +32 -0
  61. package/dist/components/context-menu.d.ts +34 -26
  62. package/dist/components/context-menu.js +43 -66
  63. package/dist/components/copy-field.d.ts +10 -5
  64. package/dist/components/copy-field.js +25 -27
  65. package/dist/components/currency-input.d.ts +25 -11
  66. package/dist/components/currency-input.js +39 -67
  67. package/dist/components/danger-zone.d.ts +10 -1
  68. package/dist/components/danger-zone.js +20 -14
  69. package/dist/components/data-table-header.d.ts +13 -2
  70. package/dist/components/data-table-header.js +143 -169
  71. package/dist/components/date-picker.d.ts +31 -32
  72. package/dist/components/date-picker.js +126 -242
  73. package/dist/components/delta.d.ts +26 -0
  74. package/dist/components/delta.js +24 -0
  75. package/dist/components/dialog.d.ts +21 -0
  76. package/dist/components/dialog.js +16 -0
  77. package/dist/components/drawer.d.ts +15 -23
  78. package/dist/components/drawer.js +56 -76
  79. package/dist/components/dropdown-menu.d.ts +63 -0
  80. package/dist/components/dropdown-menu.js +62 -0
  81. package/dist/components/dropzone.d.ts +10 -4
  82. package/dist/components/dropzone.js +30 -55
  83. package/dist/components/empty.d.ts +29 -0
  84. package/dist/components/empty.js +42 -0
  85. package/dist/components/fab.d.ts +29 -6
  86. package/dist/components/fab.js +51 -39
  87. package/dist/components/faq.d.ts +21 -0
  88. package/dist/components/faq.js +24 -0
  89. package/dist/components/file-input.d.ts +56 -0
  90. package/dist/components/file-input.js +244 -0
  91. package/dist/components/filter-chip.d.ts +34 -47
  92. package/dist/components/filter-chip.js +61 -57
  93. package/dist/components/floating-stepper.d.ts +7 -18
  94. package/dist/components/floating-stepper.js +17 -35
  95. package/dist/components/footer.d.ts +36 -0
  96. package/dist/components/footer.js +38 -0
  97. package/dist/components/form-actions.d.ts +28 -0
  98. package/dist/components/form-actions.js +24 -0
  99. package/dist/components/google-account-chooser.d.ts +25 -0
  100. package/dist/components/google-account-chooser.js +44 -0
  101. package/dist/components/google-button.d.ts +26 -0
  102. package/dist/components/google-button.js +38 -0
  103. package/dist/components/google-consent.d.ts +23 -0
  104. package/dist/components/google-consent.js +28 -0
  105. package/dist/components/google-sign-in.d.ts +26 -0
  106. package/dist/components/google-sign-in.js +36 -0
  107. package/dist/components/hover-card.d.ts +30 -0
  108. package/dist/components/hover-card.js +55 -0
  109. package/dist/components/icon-button.d.ts +41 -11
  110. package/dist/components/icon-button.js +47 -61
  111. package/dist/components/image-crop-modal.d.ts +3 -3
  112. package/dist/components/image-crop-modal.js +66 -52
  113. package/dist/components/image-upload.d.ts +21 -29
  114. package/dist/components/image-upload.js +59 -219
  115. package/dist/components/index.d.ts +105 -49
  116. package/dist/components/index.js +190 -68
  117. package/dist/components/input-otp.d.ts +35 -0
  118. package/dist/components/input-otp.js +119 -0
  119. package/dist/components/input.d.ts +23 -17
  120. package/dist/components/input.js +103 -108
  121. package/dist/components/insight-card.d.ts +25 -9
  122. package/dist/components/insight-card.js +45 -19
  123. package/dist/components/internal/announce.d.ts +3 -0
  124. package/dist/components/internal/announce.js +20 -0
  125. package/dist/components/internal/block.d.ts +15 -0
  126. package/dist/components/internal/block.js +14 -0
  127. package/dist/components/internal/button.d.ts +23 -0
  128. package/dist/components/internal/button.js +30 -0
  129. package/dist/components/internal/choice-card.d.ts +52 -0
  130. package/dist/components/internal/choice-card.js +117 -0
  131. package/dist/components/internal/choice.d.ts +25 -0
  132. package/dist/components/internal/choice.js +44 -0
  133. package/dist/components/internal/dates.d.ts +17 -0
  134. package/dist/components/internal/dates.js +59 -0
  135. package/dist/components/internal/field.d.ts +66 -0
  136. package/dist/components/internal/field.js +105 -0
  137. package/dist/components/internal/fieldset.d.ts +25 -0
  138. package/dist/components/internal/fieldset.js +56 -0
  139. package/dist/components/internal/focus-after.d.ts +3 -0
  140. package/dist/components/internal/focus-after.js +13 -0
  141. package/dist/components/internal/google.d.ts +47 -0
  142. package/dist/components/internal/google.js +73 -0
  143. package/dist/components/internal/icons.d.ts +108 -0
  144. package/dist/components/internal/icons.js +316 -0
  145. package/dist/components/internal/menu.d.ts +16 -0
  146. package/dist/components/internal/menu.js +14 -0
  147. package/dist/components/internal/modal.d.ts +50 -0
  148. package/dist/components/internal/modal.js +85 -0
  149. package/dist/components/internal/option-content.d.ts +10 -0
  150. package/dist/components/internal/option-content.js +13 -0
  151. package/dist/components/internal/radio-context.d.ts +16 -0
  152. package/dist/components/internal/radio-context.js +6 -0
  153. package/dist/components/internal/toggle.d.ts +7 -0
  154. package/dist/components/internal/toggle.js +13 -0
  155. package/dist/components/internal/use-listbox.d.ts +56 -0
  156. package/dist/components/internal/use-listbox.js +69 -0
  157. package/dist/components/internal/whatsapp.d.ts +8 -0
  158. package/dist/components/internal/whatsapp.js +12 -0
  159. package/dist/components/item.d.ts +32 -0
  160. package/dist/components/item.js +35 -0
  161. package/dist/components/kbd.d.ts +17 -0
  162. package/dist/components/kbd.js +18 -0
  163. package/dist/components/listbox.d.ts +34 -0
  164. package/dist/components/listbox.js +114 -0
  165. package/dist/components/marker.d.ts +24 -0
  166. package/dist/components/marker.js +28 -0
  167. package/dist/components/media-tile.d.ts +17 -14
  168. package/dist/components/media-tile.js +19 -24
  169. package/dist/components/message-scroller.d.ts +20 -0
  170. package/dist/components/message-scroller.js +108 -0
  171. package/dist/components/message.d.ts +33 -0
  172. package/dist/components/message.js +23 -0
  173. package/dist/components/navigation-menu.d.ts +42 -0
  174. package/dist/components/navigation-menu.js +30 -0
  175. package/dist/components/newsletter.d.ts +27 -0
  176. package/dist/components/newsletter.js +75 -0
  177. package/dist/components/number-input.d.ts +60 -0
  178. package/dist/components/number-input.js +234 -0
  179. package/dist/components/option-tile.d.ts +20 -19
  180. package/dist/components/option-tile.js +52 -131
  181. package/dist/components/page-header.d.ts +31 -0
  182. package/dist/components/page-header.js +25 -0
  183. package/dist/components/page-shell.d.ts +11 -1
  184. package/dist/components/page-shell.js +8 -27
  185. package/dist/components/page-skeleton.d.ts +15 -21
  186. package/dist/components/page-skeleton.js +37 -4
  187. package/dist/components/pagination.d.ts +32 -22
  188. package/dist/components/pagination.js +83 -76
  189. package/dist/components/password-input.d.ts +26 -0
  190. package/dist/components/password-input.js +112 -0
  191. package/dist/components/phone-input.d.ts +12 -8
  192. package/dist/components/phone-input.js +77 -47
  193. package/dist/components/phone.d.ts +27 -0
  194. package/dist/components/phone.js +35 -0
  195. package/dist/components/popover.d.ts +25 -36
  196. package/dist/components/popover.js +32 -129
  197. package/dist/components/pricing-card.d.ts +9 -25
  198. package/dist/components/pricing-card.js +9 -25
  199. package/dist/components/pricing.d.ts +48 -0
  200. package/dist/components/pricing.js +64 -0
  201. package/dist/components/progress.d.ts +30 -0
  202. package/dist/components/progress.js +57 -0
  203. package/dist/components/qr-display.d.ts +11 -6
  204. package/dist/components/qr-display.js +8 -19
  205. package/dist/components/questionnaire.d.ts +42 -0
  206. package/dist/components/questionnaire.js +107 -0
  207. package/dist/components/radio-group.d.ts +21 -0
  208. package/dist/components/radio-group.js +40 -0
  209. package/dist/components/radio.d.ts +15 -29
  210. package/dist/components/radio.js +46 -87
  211. package/dist/components/row-actions.d.ts +5 -0
  212. package/dist/components/row-actions.js +57 -56
  213. package/dist/components/saving-bar-context.d.ts +0 -5
  214. package/dist/components/saving-bar-context.js +16 -34
  215. package/dist/components/saving-bar.d.ts +26 -11
  216. package/dist/components/saving-bar.js +53 -65
  217. package/dist/components/section-card.d.ts +18 -4
  218. package/dist/components/section-card.js +26 -39
  219. package/dist/components/section-header.d.ts +8 -12
  220. package/dist/components/section-header.js +7 -2
  221. package/dist/components/select.d.ts +44 -16
  222. package/dist/components/select.js +85 -135
  223. package/dist/components/selectable-card.d.ts +11 -19
  224. package/dist/components/selectable-card.js +4 -21
  225. package/dist/components/separator.d.ts +20 -0
  226. package/dist/components/separator.js +19 -0
  227. package/dist/components/setting-row.d.ts +11 -15
  228. package/dist/components/setting-row.js +11 -14
  229. package/dist/components/settings-list.d.ts +10 -12
  230. package/dist/components/settings-list.js +9 -17
  231. package/dist/components/sheet.d.ts +21 -0
  232. package/dist/components/sheet.js +16 -0
  233. package/dist/components/sidebar.d.ts +79 -0
  234. package/dist/components/sidebar.js +111 -0
  235. package/dist/components/skeleton.d.ts +14 -20
  236. package/dist/components/skeleton.js +8 -36
  237. package/dist/components/slider.d.ts +21 -23
  238. package/dist/components/slider.js +65 -56
  239. package/dist/components/sparkline.d.ts +19 -0
  240. package/dist/components/sparkline.js +32 -0
  241. package/dist/components/spinner.d.ts +16 -8
  242. package/dist/components/spinner.js +35 -32
  243. package/dist/components/star-rating.d.ts +22 -0
  244. package/dist/components/star-rating.js +25 -0
  245. package/dist/components/stat.d.ts +33 -0
  246. package/dist/components/stat.js +29 -0
  247. package/dist/components/status.d.ts +27 -0
  248. package/dist/components/status.js +34 -0
  249. package/dist/components/step-progress.d.ts +13 -6
  250. package/dist/components/step-progress.js +20 -17
  251. package/dist/components/summary-bar.d.ts +20 -20
  252. package/dist/components/summary-bar.js +13 -50
  253. package/dist/components/switch.d.ts +20 -0
  254. package/dist/components/switch.js +46 -0
  255. package/dist/components/table.d.ts +56 -17
  256. package/dist/components/table.js +65 -59
  257. package/dist/components/tabs.d.ts +67 -0
  258. package/dist/components/tabs.js +56 -0
  259. package/dist/components/testimonial.d.ts +30 -0
  260. package/dist/components/testimonial.js +36 -0
  261. package/dist/components/textarea.d.ts +11 -16
  262. package/dist/components/textarea.js +55 -75
  263. package/dist/components/tile.d.ts +24 -0
  264. package/dist/components/tile.js +21 -0
  265. package/dist/components/time-picker.d.ts +40 -25
  266. package/dist/components/time-picker.js +191 -189
  267. package/dist/components/toast.d.ts +63 -0
  268. package/dist/components/toast.js +132 -0
  269. package/dist/components/toggle-card-compact.d.ts +15 -5
  270. package/dist/components/toggle-card-compact.js +22 -81
  271. package/dist/components/toggle-card.d.ts +11 -2
  272. package/dist/components/toggle-card.js +9 -70
  273. package/dist/components/toggle-group.d.ts +21 -59
  274. package/dist/components/toggle-group.js +31 -74
  275. package/dist/components/toggle.d.ts +19 -9
  276. package/dist/components/toggle.js +20 -55
  277. package/dist/components/tooltip.d.ts +25 -12
  278. package/dist/components/tooltip.js +16 -84
  279. package/dist/components/top-navigation.d.ts +33 -0
  280. package/dist/components/top-navigation.js +85 -0
  281. package/dist/components/typing-indicator.d.ts +6 -0
  282. package/dist/components/typing-indicator.js +3 -21
  283. package/dist/components/whatsapp-chat.d.ts +28 -0
  284. package/dist/components/whatsapp-chat.js +95 -0
  285. package/dist/components/whatsapp-message.d.ts +22 -0
  286. package/dist/components/whatsapp-message.js +34 -0
  287. package/dist/components/whatsapp-notification.d.ts +27 -0
  288. package/dist/components/whatsapp-notification.js +73 -0
  289. package/dist/components/whatsapp-template.d.ts +42 -0
  290. package/dist/components/whatsapp-template.js +69 -0
  291. package/dist/icons/index.d.ts +2 -0
  292. package/dist/icons/index.js +2 -0
  293. package/dist/icons/pix.d.ts +16 -0
  294. package/dist/icons/pix.js +29 -0
  295. package/dist/targets/native/components/accordion.js +31 -25
  296. package/dist/targets/native/components/alert.js +22 -16
  297. package/dist/targets/native/components/avatar.js +36 -29
  298. package/dist/targets/native/components/badge.js +4 -3
  299. package/dist/targets/native/components/button.js +11 -4
  300. package/dist/targets/native/components/card.js +2 -1
  301. package/dist/targets/native/components/checkbox.js +18 -15
  302. package/dist/targets/native/components/chips.js +19 -16
  303. package/dist/targets/native/components/choice-card.js +29 -23
  304. package/dist/targets/native/components/context-menu.js +13 -9
  305. package/dist/targets/native/components/currency-input.js +28 -25
  306. package/dist/targets/native/components/danger-zone.js +10 -4
  307. package/dist/targets/native/components/date-picker.js +86 -70
  308. package/dist/targets/native/components/divider.js +3 -2
  309. package/dist/targets/native/components/empty-state.js +6 -1
  310. package/dist/targets/native/components/fab.js +32 -26
  311. package/dist/targets/native/components/filter-chip.js +9 -8
  312. package/dist/targets/native/components/form-field.js +20 -10
  313. package/dist/targets/native/components/form-screen.js +50 -45
  314. package/dist/targets/native/components/google-icon.js +31 -25
  315. package/dist/targets/native/components/icon-button.js +6 -4
  316. package/dist/targets/native/components/icon.js +2 -1
  317. package/dist/targets/native/components/image-upload.js +59 -50
  318. package/dist/targets/native/components/index.d.ts +0 -2
  319. package/dist/targets/native/components/index.js +0 -4
  320. package/dist/targets/native/components/input.js +41 -34
  321. package/dist/targets/native/components/list-item.js +29 -23
  322. package/dist/targets/native/components/menu.js +12 -10
  323. package/dist/targets/native/components/modal.js +41 -32
  324. package/dist/targets/native/components/radio.js +19 -16
  325. package/dist/targets/native/components/search.js +41 -38
  326. package/dist/targets/native/components/select.js +71 -63
  327. package/dist/targets/native/components/sheet.js +36 -30
  328. package/dist/targets/native/components/skeleton.js +6 -5
  329. package/dist/targets/native/components/slider.js +51 -43
  330. package/dist/targets/native/components/spinner.js +2 -1
  331. package/dist/targets/native/components/stepper.js +14 -9
  332. package/dist/targets/native/components/switch.js +15 -14
  333. package/dist/targets/native/components/text.js +2 -1
  334. package/dist/targets/native/components/textarea.js +2 -1
  335. package/dist/targets/native/components/theme.js +2 -1
  336. package/dist/targets/native/components/toaster.js +24 -21
  337. package/dist/targets/native/index.d.ts +1 -1
  338. package/dist/targets/native/index.js +1 -3
  339. package/dist/targets/native/preset.cjs +0 -1
  340. package/dist/targets/native/theme.css +58 -60
  341. package/dist/targets/native/theme.d.ts +58 -60
  342. package/dist/targets/native/theme.js +58 -60
  343. package/package.json +35 -16
  344. package/styles/_primitives.generated.css +40 -0
  345. package/styles/base.css +15 -21
  346. package/styles/rds/components-styles.css +11365 -0
  347. package/styles/rds/components.css +993 -0
  348. package/styles/rds/foundation.css +74 -0
  349. package/styles/rds/theme.css +261 -0
  350. package/styles/rds.css +6 -0
  351. package/styles/themes/rojao.css +46 -53
  352. package/brand/rojao-black-on-white.png +0 -0
  353. package/brand/rojao-black.png +0 -0
  354. package/brand/rojao-white-on-black.png +0 -0
  355. package/brand/rojao-white.png +0 -0
  356. package/dist/components/blocker-card.d.ts +0 -42
  357. package/dist/components/blocker-card.js +0 -45
  358. package/dist/components/bottom-sheet.d.ts +0 -31
  359. package/dist/components/bottom-sheet.js +0 -120
  360. package/dist/components/chat-bubble.d.ts +0 -16
  361. package/dist/components/chat-bubble.js +0 -55
  362. package/dist/components/chips.d.ts +0 -22
  363. package/dist/components/chips.js +0 -94
  364. package/dist/components/copilot-hint.d.ts +0 -18
  365. package/dist/components/copilot-hint.js +0 -63
  366. package/dist/components/divider.d.ts +0 -20
  367. package/dist/components/divider.js +0 -47
  368. package/dist/components/empty-state.d.ts +0 -48
  369. package/dist/components/empty-state.js +0 -91
  370. package/dist/components/form-card-header.d.ts +0 -13
  371. package/dist/components/form-card-header.js +0 -8
  372. package/dist/components/label.d.ts +0 -16
  373. package/dist/components/label.js +0 -43
  374. package/dist/components/menu.d.ts +0 -50
  375. package/dist/components/menu.js +0 -80
  376. package/dist/components/modal.d.ts +0 -25
  377. package/dist/components/modal.js +0 -71
  378. package/dist/components/notice.d.ts +0 -50
  379. package/dist/components/notice.js +0 -103
  380. package/dist/components/page-tabs.d.ts +0 -35
  381. package/dist/components/page-tabs.js +0 -55
  382. package/dist/components/paywall-banner.d.ts +0 -37
  383. package/dist/components/paywall-banner.js +0 -42
  384. package/dist/components/paywall.d.ts +0 -44
  385. package/dist/components/paywall.js +0 -55
  386. package/dist/components/phone-frame.d.ts +0 -9
  387. package/dist/components/phone-frame.js +0 -18
  388. package/dist/components/pix-icon.d.ts +0 -8
  389. package/dist/components/pix-icon.js +0 -24
  390. package/dist/components/search.d.ts +0 -30
  391. package/dist/components/search.js +0 -81
  392. package/dist/components/themed.d.ts +0 -36
  393. package/dist/components/themed.js +0 -22
  394. package/dist/components/toaster.d.ts +0 -84
  395. package/dist/components/toaster.js +0 -284
  396. package/dist/components/use-dismiss.d.ts +0 -9
  397. package/dist/components/use-dismiss.js +0 -28
  398. package/dist/components/use-focus-trap.d.ts +0 -5
  399. package/dist/components/use-focus-trap.js +0 -54
  400. package/dist/targets/native/components/paywall-banner.d.ts +0 -11
  401. package/dist/targets/native/components/paywall-banner.js +0 -46
  402. package/dist/targets/native/components/paywall.d.ts +0 -18
  403. package/dist/targets/native/components/paywall.js +0 -61
@@ -1,31 +1,37 @@
1
1
  import "../../../chunk-ORMEWXMH.js";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
2
3
  import Svg, { Path } from "react-native-svg";
3
4
  function GoogleIcon({ size = 18 }) {
4
- return /* @__PURE__ */ React.createElement(Svg, { width: size, height: size, viewBox: "0 0 48 48" }, /* @__PURE__ */ React.createElement(
5
- Path,
6
- {
7
- fill: "#FFC107",
8
- d: "M43.611 20.083H42V20H24v8h11.303c-1.649 4.657-6.08 8-11.303 8-6.627 0-12-5.373-12-12s5.373-12 12-12c3.059 0 5.842 1.154 7.961 3.039l5.657-5.657C34.046 6.053 29.268 4 24 4 12.955 4 4 12.955 4 24s8.955 20 20 20 20-8.955 20-20c0-1.341-.138-2.65-.389-3.917z"
9
- }
10
- ), /* @__PURE__ */ React.createElement(
11
- Path,
12
- {
13
- fill: "#FF3D00",
14
- d: "M6.306 14.691l6.571 4.819C14.655 15.108 18.961 12 24 12c3.059 0 5.842 1.154 7.961 3.039l5.657-5.657C34.046 6.053 29.268 4 24 4 16.318 4 9.656 8.337 6.306 14.691z"
15
- }
16
- ), /* @__PURE__ */ React.createElement(
17
- Path,
18
- {
19
- fill: "#4CAF50",
20
- d: "M24 44c5.166 0 9.86-1.977 13.409-5.192l-6.19-5.238C29.211 35.091 26.715 36 24 36c-5.202 0-9.619-3.317-11.283-7.946l-6.522 5.025C9.505 39.556 16.227 44 24 44z"
21
- }
22
- ), /* @__PURE__ */ React.createElement(
23
- Path,
24
- {
25
- fill: "#1976D2",
26
- d: "M43.611 20.083H42V20H24v8h11.303c-0.792 2.237-2.231 4.166-4.087 5.571l6.19 5.238C36.971 39.205 44 34 44 24c0-1.341-.138-2.65-.389-3.917z"
27
- }
28
- ));
5
+ return /* @__PURE__ */ jsxs(Svg, { width: size, height: size, viewBox: "0 0 48 48", children: [
6
+ /* @__PURE__ */ jsx(
7
+ Path,
8
+ {
9
+ fill: "#FFC107",
10
+ d: "M43.611 20.083H42V20H24v8h11.303c-1.649 4.657-6.08 8-11.303 8-6.627 0-12-5.373-12-12s5.373-12 12-12c3.059 0 5.842 1.154 7.961 3.039l5.657-5.657C34.046 6.053 29.268 4 24 4 12.955 4 4 12.955 4 24s8.955 20 20 20 20-8.955 20-20c0-1.341-.138-2.65-.389-3.917z"
11
+ }
12
+ ),
13
+ /* @__PURE__ */ jsx(
14
+ Path,
15
+ {
16
+ fill: "#FF3D00",
17
+ d: "M6.306 14.691l6.571 4.819C14.655 15.108 18.961 12 24 12c3.059 0 5.842 1.154 7.961 3.039l5.657-5.657C34.046 6.053 29.268 4 24 4 16.318 4 9.656 8.337 6.306 14.691z"
18
+ }
19
+ ),
20
+ /* @__PURE__ */ jsx(
21
+ Path,
22
+ {
23
+ fill: "#4CAF50",
24
+ d: "M24 44c5.166 0 9.86-1.977 13.409-5.192l-6.19-5.238C29.211 35.091 26.715 36 24 36c-5.202 0-9.619-3.317-11.283-7.946l-6.522 5.025C9.505 39.556 16.227 44 24 44z"
25
+ }
26
+ ),
27
+ /* @__PURE__ */ jsx(
28
+ Path,
29
+ {
30
+ fill: "#1976D2",
31
+ d: "M43.611 20.083H42V20H24v8h11.303c-0.792 2.237-2.231 4.166-4.087 5.571l6.19 5.238C36.971 39.205 44 34 44 24c0-1.341-.138-2.65-.389-3.917z"
32
+ }
33
+ )
34
+ ] });
29
35
  }
30
36
  export {
31
37
  GoogleIcon
@@ -3,6 +3,7 @@ import {
3
3
  __spreadProps,
4
4
  __spreadValues
5
5
  } from "../../../chunk-ORMEWXMH.js";
6
+ import { jsx } from "react/jsx-runtime";
6
7
  import {
7
8
  ActivityIndicator,
8
9
  Pressable,
@@ -48,9 +49,9 @@ function IconButton(_a) {
48
49
  }[variant];
49
50
  const box = BOX[size];
50
51
  const hit = Math.max(0, Math.round((44 - box) / 2)) + 4;
51
- return /* @__PURE__ */ React.createElement(
52
+ return /* @__PURE__ */ jsx(
52
53
  Pressable,
53
- __spreadValues({
54
+ __spreadProps(__spreadValues({
54
55
  accessibilityRole: "button",
55
56
  accessibilityLabel,
56
57
  accessibilityState: { disabled: !!isDisabled, busy: loading },
@@ -64,8 +65,9 @@ function IconButton(_a) {
64
65
  borderWidth: skin.border ? 1 : 0,
65
66
  opacity: isDisabled ? 0.5 : pressed ? 0.8 : 1
66
67
  })
67
- }, rest),
68
- loading ? /* @__PURE__ */ React.createElement(ActivityIndicator, { color: skin.fg }) : /* @__PURE__ */ React.createElement(View, null, icon)
68
+ }, rest), {
69
+ children: loading ? /* @__PURE__ */ jsx(ActivityIndicator, { color: skin.fg }) : /* @__PURE__ */ jsx(View, { children: icon })
70
+ })
69
71
  );
70
72
  }
71
73
  const styles = StyleSheet.create({
@@ -1,8 +1,9 @@
1
1
  import "../../../chunk-ORMEWXMH.js";
2
+ import { jsx } from "react/jsx-runtime";
2
3
  import { useTheme } from "./theme.js";
3
4
  function Icon({ icon: Glyph, size = 24, color }) {
4
5
  const t = useTheme();
5
- return /* @__PURE__ */ React.createElement(Glyph, { size, color: color != null ? color : t["--icon-default"] });
6
+ return /* @__PURE__ */ jsx(Glyph, { size, color: color != null ? color : t["--icon-default"] });
6
7
  }
7
8
  export {
8
9
  Icon
@@ -1,4 +1,5 @@
1
1
  import "../../../chunk-ORMEWXMH.js";
2
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
2
3
  import { Image } from "expo-image";
3
4
  import * as ImagePicker from "expo-image-picker";
4
5
  import { ImagePlus, X } from "lucide-react-native";
@@ -32,63 +33,71 @@ function ImageUpload({ value, onChange, onUpload, max = 10, onError }) {
32
33
  setBusy(false);
33
34
  }
34
35
  }
35
- return /* @__PURE__ */ React.createElement(View, { style: { flexDirection: "row", flexWrap: "wrap", gap: 8 } }, value.map((url) => /* @__PURE__ */ React.createElement(
36
- View,
37
- {
38
- key: url,
39
- style: {
40
- width: TILE,
41
- height: TILE,
42
- borderRadius: 12,
43
- overflow: "hidden",
44
- backgroundColor: t["--surface-raised"]
45
- }
46
- },
47
- /* @__PURE__ */ React.createElement(Image, { source: { uri: url }, style: { width: "100%", height: "100%" }, contentFit: "cover" }),
48
- /* @__PURE__ */ React.createElement(
36
+ return /* @__PURE__ */ jsxs(View, { style: { flexDirection: "row", flexWrap: "wrap", gap: 8 }, children: [
37
+ value.map((url) => /* @__PURE__ */ jsxs(
38
+ View,
39
+ {
40
+ style: {
41
+ width: TILE,
42
+ height: TILE,
43
+ borderRadius: 12,
44
+ overflow: "hidden",
45
+ backgroundColor: t["--surface-raised"]
46
+ },
47
+ children: [
48
+ /* @__PURE__ */ jsx(Image, { source: { uri: url }, style: { width: "100%", height: "100%" }, contentFit: "cover" }),
49
+ /* @__PURE__ */ jsx(
50
+ Pressable,
51
+ {
52
+ onPress: () => onChange(value.filter((u) => u !== url)),
53
+ hitSlop: 11,
54
+ accessibilityRole: "button",
55
+ accessibilityLabel: "Remover foto",
56
+ style: {
57
+ position: "absolute",
58
+ top: 4,
59
+ right: 4,
60
+ width: 22,
61
+ height: 22,
62
+ borderRadius: 11,
63
+ alignItems: "center",
64
+ justifyContent: "center",
65
+ backgroundColor: "rgba(0, 0, 0, 0.55)"
66
+ },
67
+ children: /* @__PURE__ */ jsx(X, { size: 14, color: "#ffffff" })
68
+ }
69
+ )
70
+ ]
71
+ },
72
+ url
73
+ )),
74
+ value.length < max ? /* @__PURE__ */ jsx(
49
75
  Pressable,
50
76
  {
51
- onPress: () => onChange(value.filter((u) => u !== url)),
52
- hitSlop: 11,
77
+ onPress: pick,
78
+ disabled: busy,
53
79
  accessibilityRole: "button",
54
- accessibilityLabel: "Remover foto",
80
+ accessibilityLabel: busy ? "Enviando foto" : "Adicionar foto",
81
+ accessibilityState: { busy, disabled: busy },
55
82
  style: {
56
- position: "absolute",
57
- top: 4,
58
- right: 4,
59
- width: 22,
60
- height: 22,
61
- borderRadius: 11,
83
+ width: TILE,
84
+ height: TILE,
85
+ borderRadius: 12,
86
+ borderWidth: 1,
87
+ borderStyle: "dashed",
88
+ borderColor: t["--border-default"],
62
89
  alignItems: "center",
63
90
  justifyContent: "center",
64
- backgroundColor: "rgba(0, 0, 0, 0.55)"
65
- }
66
- },
67
- /* @__PURE__ */ React.createElement(X, { size: 14, color: "#ffffff" })
68
- )
69
- )), value.length < max ? /* @__PURE__ */ React.createElement(
70
- Pressable,
71
- {
72
- onPress: pick,
73
- disabled: busy,
74
- accessibilityRole: "button",
75
- accessibilityLabel: busy ? "Enviando foto" : "Adicionar foto",
76
- accessibilityState: { busy, disabled: busy },
77
- style: {
78
- width: TILE,
79
- height: TILE,
80
- borderRadius: 12,
81
- borderWidth: 1,
82
- borderStyle: "dashed",
83
- borderColor: t["--border-default"],
84
- alignItems: "center",
85
- justifyContent: "center",
86
- gap: 4,
87
- backgroundColor: t["--surface-default"]
91
+ gap: 4,
92
+ backgroundColor: t["--surface-default"]
93
+ },
94
+ children: busy ? /* @__PURE__ */ jsx(ActivityIndicator, { color: t["--brand-primary"] }) : /* @__PURE__ */ jsxs(Fragment, { children: [
95
+ /* @__PURE__ */ jsx(ImagePlus, { size: 22, color: t["--text-muted"] }),
96
+ /* @__PURE__ */ jsx(Text, { variant: "caption", color: "muted", children: "Foto" })
97
+ ] })
88
98
  }
89
- },
90
- busy ? /* @__PURE__ */ React.createElement(ActivityIndicator, { color: t["--brand-primary"] }) : /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(ImagePlus, { size: 22, color: t["--text-muted"] }), /* @__PURE__ */ React.createElement(Text, { variant: "caption", color: "muted" }, "Foto"))
91
- ) : null);
99
+ ) : null
100
+ ] });
92
101
  }
93
102
  export {
94
103
  ImageUpload
@@ -33,8 +33,6 @@ export { IconButton, IconButtonColor, IconButtonSize, IconButtonVariant } from '
33
33
  export { Search } from './search.js';
34
34
  export { FAB, FABProps, FABProvider, useFAB } from './fab.js';
35
35
  export { Accordion, AccordionItem, AccordionItemProps, AccordionProps } from './accordion.js';
36
- export { PaywallBanner, PaywallBannerProps } from './paywall-banner.js';
37
- export { PaywallContent, PaywallContentProps, PaywallIcon, PaywallReason } from './paywall.js';
38
36
  export { Menu, MenuItem } from './menu.js';
39
37
  export { ContextMenu } from './context-menu.js';
40
38
  export { Slider } from './slider.js';
@@ -34,8 +34,6 @@ import { IconButton } from "./icon-button.js";
34
34
  import { Search } from "./search.js";
35
35
  import { FAB, FABProvider, useFAB } from "./fab.js";
36
36
  import { Accordion, AccordionItem } from "./accordion.js";
37
- import { PaywallBanner } from "./paywall-banner.js";
38
- import { PaywallContent } from "./paywall.js";
39
37
  import { Menu, MenuItem } from "./menu.js";
40
38
  import { ContextMenu } from "./context-menu.js";
41
39
  import { Slider } from "./slider.js";
@@ -75,8 +73,6 @@ export {
75
73
  Menu,
76
74
  MenuItem,
77
75
  Modal,
78
- PaywallBanner,
79
- PaywallContent,
80
76
  Radio,
81
77
  RadioGroup,
82
78
  SavingBar,
@@ -2,6 +2,7 @@ import {
2
2
  __objRest,
3
3
  __spreadValues
4
4
  } from "../../../chunk-ORMEWXMH.js";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
5
6
  import { useState } from "react";
6
7
  import { Pressable, StyleSheet, TextInput, View } from "react-native";
7
8
  import { X } from "lucide-react-native";
@@ -44,44 +45,50 @@ function Input(_a) {
44
45
  }
45
46
  const hasValue = typeof rest.value === "string" ? rest.value.length > 0 : false;
46
47
  const showClear = !!clearable && hasValue && rest.editable !== false;
47
- return /* @__PURE__ */ React.createElement(View, { style: { gap: 6 } }, label ? /* @__PURE__ */ React.createElement(Text, { variant: "label" }, label) : null, /* @__PURE__ */ React.createElement(
48
- View,
49
- {
50
- style: [
51
- styles.field,
52
- { borderColor, backgroundColor: t["--surface-default"] }
53
- ]
54
- },
55
- prefix ? /* @__PURE__ */ React.createElement(View, { style: styles.affix }, renderAffix(prefix, t)) : null,
56
- /* @__PURE__ */ React.createElement(
57
- TextInput,
58
- __spreadValues({
59
- placeholderTextColor: t["--text-placeholder"],
60
- accessibilityLabel: accessibilityLabel != null ? accessibilityLabel : label,
61
- accessibilityState: { disabled: rest.editable === false },
62
- onFocus: handleFocus,
63
- onBlur: handleBlur,
64
- onChangeText,
65
- style: [styles.input, { color: t["--text-primary"] }, style]
66
- }, rest)
67
- ),
68
- showClear ? /* @__PURE__ */ React.createElement(
69
- Pressable,
48
+ return /* @__PURE__ */ jsxs(View, { style: { gap: 6 }, children: [
49
+ label ? /* @__PURE__ */ jsx(Text, { variant: "label", children: label }) : null,
50
+ /* @__PURE__ */ jsxs(
51
+ View,
70
52
  {
71
- onPress: () => onChangeText == null ? void 0 : onChangeText(""),
72
- accessibilityRole: "button",
73
- accessibilityLabel: "Clear",
74
- hitSlop: 8,
75
- style: styles.affix
76
- },
77
- /* @__PURE__ */ React.createElement(X, { size: 16, color: t["--text-muted"] })
78
- ) : null,
79
- suffix ? /* @__PURE__ */ React.createElement(View, { style: styles.affix }, renderAffix(suffix, t)) : null
80
- ), typeof error === "string" && error ? /* @__PURE__ */ React.createElement(Text, { variant: "caption", color: "danger" }, error) : null);
53
+ style: [
54
+ styles.field,
55
+ { borderColor, backgroundColor: t["--surface-default"] }
56
+ ],
57
+ children: [
58
+ prefix ? /* @__PURE__ */ jsx(View, { style: styles.affix, children: renderAffix(prefix, t) }) : null,
59
+ /* @__PURE__ */ jsx(
60
+ TextInput,
61
+ __spreadValues({
62
+ placeholderTextColor: t["--text-placeholder"],
63
+ accessibilityLabel: accessibilityLabel != null ? accessibilityLabel : label,
64
+ accessibilityState: { disabled: rest.editable === false },
65
+ onFocus: handleFocus,
66
+ onBlur: handleBlur,
67
+ onChangeText,
68
+ style: [styles.input, { color: t["--text-primary"] }, style]
69
+ }, rest)
70
+ ),
71
+ showClear ? /* @__PURE__ */ jsx(
72
+ Pressable,
73
+ {
74
+ onPress: () => onChangeText == null ? void 0 : onChangeText(""),
75
+ accessibilityRole: "button",
76
+ accessibilityLabel: "Clear",
77
+ hitSlop: 8,
78
+ style: styles.affix,
79
+ children: /* @__PURE__ */ jsx(X, { size: 16, color: t["--text-muted"] })
80
+ }
81
+ ) : null,
82
+ suffix ? /* @__PURE__ */ jsx(View, { style: styles.affix, children: renderAffix(suffix, t) }) : null
83
+ ]
84
+ }
85
+ ),
86
+ typeof error === "string" && error ? /* @__PURE__ */ jsx(Text, { variant: "caption", color: "danger", children: error }) : null
87
+ ] });
81
88
  }
82
89
  function renderAffix(node, t) {
83
90
  if (typeof node === "string") {
84
- return /* @__PURE__ */ React.createElement(Text, { variant: "body", style: { color: t["--text-muted"] } }, node);
91
+ return /* @__PURE__ */ jsx(Text, { variant: "body", style: { color: t["--text-muted"] }, children: node });
85
92
  }
86
93
  return node;
87
94
  }
@@ -1,4 +1,5 @@
1
1
  import "../../../chunk-ORMEWXMH.js";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
2
3
  import { ChevronRight } from "lucide-react-native";
3
4
  import { Pressable, View } from "react-native";
4
5
  import { Text } from "./text.js";
@@ -14,7 +15,7 @@ function ListItem({
14
15
  disabled
15
16
  }) {
16
17
  const t = useTheme();
17
- const body = /* @__PURE__ */ React.createElement(
18
+ const body = /* @__PURE__ */ jsxs(
18
19
  View,
19
20
  {
20
21
  style: {
@@ -29,27 +30,32 @@ function ListItem({
29
30
  borderColor: t["--border-subtle"],
30
31
  backgroundColor: t["--surface-default"],
31
32
  opacity: disabled ? 0.5 : 1
32
- }
33
- },
34
- leading ? leading : Icon ? /* @__PURE__ */ React.createElement(
35
- View,
36
- {
37
- style: {
38
- width: 40,
39
- height: 40,
40
- borderRadius: 10,
41
- alignItems: "center",
42
- justifyContent: "center",
43
- backgroundColor: t["--surface-raised"]
44
- }
45
33
  },
46
- /* @__PURE__ */ React.createElement(Icon, { color: t["--icon-default"], size: 22 })
47
- ) : null,
48
- /* @__PURE__ */ React.createElement(View, { style: { flex: 1 } }, /* @__PURE__ */ React.createElement(Text, { variant: "label", numberOfLines: 1 }, title), subtitle ? /* @__PURE__ */ React.createElement(Text, { variant: "caption", color: "muted" }, subtitle) : null),
49
- trailing,
50
- showChevron && onPress ? /* @__PURE__ */ React.createElement(View, { importantForAccessibility: "no" }, /* @__PURE__ */ React.createElement(ChevronRight, { color: t["--text-muted"], size: 20 })) : null
34
+ children: [
35
+ leading ? leading : Icon ? /* @__PURE__ */ jsx(
36
+ View,
37
+ {
38
+ style: {
39
+ width: 40,
40
+ height: 40,
41
+ borderRadius: 10,
42
+ alignItems: "center",
43
+ justifyContent: "center",
44
+ backgroundColor: t["--surface-raised"]
45
+ },
46
+ children: /* @__PURE__ */ jsx(Icon, { color: t["--icon-default"], size: 22 })
47
+ }
48
+ ) : null,
49
+ /* @__PURE__ */ jsxs(View, { style: { flex: 1 }, children: [
50
+ /* @__PURE__ */ jsx(Text, { variant: "label", numberOfLines: 1, children: title }),
51
+ subtitle ? /* @__PURE__ */ jsx(Text, { variant: "caption", color: "muted", children: subtitle }) : null
52
+ ] }),
53
+ trailing,
54
+ showChevron && onPress ? /* @__PURE__ */ jsx(View, { importantForAccessibility: "no", children: /* @__PURE__ */ jsx(ChevronRight, { color: t["--text-muted"], size: 20 }) }) : null
55
+ ]
56
+ }
51
57
  );
52
- return onPress ? /* @__PURE__ */ React.createElement(
58
+ return onPress ? /* @__PURE__ */ jsx(
53
59
  Pressable,
54
60
  {
55
61
  onPress: disabled ? void 0 : onPress,
@@ -61,9 +67,9 @@ function ListItem({
61
67
  android_ripple: { color: t["--surface-raised"] },
62
68
  style: ({ pressed }) => [
63
69
  pressed && !disabled ? { backgroundColor: t["--surface-raised"], borderRadius: 12 } : null
64
- ]
65
- },
66
- body
70
+ ],
71
+ children: body
72
+ }
67
73
  ) : body;
68
74
  }
69
75
  export {
@@ -2,27 +2,27 @@ import {
2
2
  __spreadProps,
3
3
  __spreadValues
4
4
  } from "../../../chunk-ORMEWXMH.js";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
5
6
  import { Pressable, StyleSheet, View } from "react-native";
6
7
  import { Sheet } from "./sheet.js";
7
8
  import { Text } from "./text.js";
8
9
  import { useTheme } from "./theme.js";
9
10
  function Menu({ visible, onClose, items, children }) {
10
- return /* @__PURE__ */ React.createElement(Sheet, { visible, onClose }, /* @__PURE__ */ React.createElement(View, { accessibilityRole: "menu", style: styles.list }, items ? items.map((item, i) => /* @__PURE__ */ React.createElement(
11
+ return /* @__PURE__ */ jsx(Sheet, { visible, onClose, children: /* @__PURE__ */ jsx(View, { accessibilityRole: "menu", style: styles.list, children: items ? items.map((item, i) => /* @__PURE__ */ jsx(
11
12
  MenuItem,
12
- __spreadProps(__spreadValues({
13
- key: `${item.label}-${i}`
14
- }, item), {
13
+ __spreadProps(__spreadValues({}, item), {
15
14
  onPress: () => {
16
15
  onClose();
17
16
  item.onPress();
18
17
  }
19
- })
20
- )) : children));
18
+ }),
19
+ `${item.label}-${i}`
20
+ )) : children }) });
21
21
  }
22
22
  function MenuItem({ label, icon: Icon, destructive, onPress, disabled }) {
23
23
  const t = useTheme();
24
24
  const fg = destructive ? t["--danger-text"] : t["--text-primary"];
25
- return /* @__PURE__ */ React.createElement(
25
+ return /* @__PURE__ */ jsxs(
26
26
  Pressable,
27
27
  {
28
28
  accessibilityRole: "menuitem",
@@ -38,10 +38,12 @@ function MenuItem({ label, icon: Icon, destructive, onPress, disabled }) {
38
38
  backgroundColor: pressed && !disabled ? t["--surface-raised"] : t["--surface-default"],
39
39
  opacity: disabled ? 0.5 : 1
40
40
  }
41
+ ],
42
+ children: [
43
+ Icon ? /* @__PURE__ */ jsx(View, { style: styles.icon, importantForAccessibility: "no", children: /* @__PURE__ */ jsx(Icon, { color: fg, size: 22 }) }) : null,
44
+ /* @__PURE__ */ jsx(Text, { variant: "label", numberOfLines: 1, style: { flex: 1, color: fg }, children: label })
41
45
  ]
42
- },
43
- Icon ? /* @__PURE__ */ React.createElement(View, { style: styles.icon, importantForAccessibility: "no" }, /* @__PURE__ */ React.createElement(Icon, { color: fg, size: 22 })) : null,
44
- /* @__PURE__ */ React.createElement(Text, { variant: "label", numberOfLines: 1, style: { flex: 1, color: fg } }, label)
46
+ }
45
47
  );
46
48
  }
47
49
  const styles = StyleSheet.create({
@@ -1,4 +1,5 @@
1
1
  import "../../../chunk-ORMEWXMH.js";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
2
3
  import { useEffect, useRef } from "react";
3
4
  import { Animated, Modal as RNModal, Pressable, StyleSheet, Text, View } from "react-native";
4
5
  import { Button } from "./button.js";
@@ -27,40 +28,48 @@ function Modal({
27
28
  opacity.setValue(0);
28
29
  }
29
30
  }, [visible, scale, opacity]);
30
- return /* @__PURE__ */ React.createElement(RNModal, { visible, transparent: true, animationType: "fade", onRequestClose: onCancel }, /* @__PURE__ */ React.createElement(View, { style: styles.root }, /* @__PURE__ */ React.createElement(
31
- Pressable,
32
- {
33
- style: styles.backdrop,
34
- onPress: onCancel,
35
- accessibilityRole: "button",
36
- accessibilityLabel: "Fechar"
37
- }
38
- ), /* @__PURE__ */ React.createElement(
39
- Animated.View,
40
- {
41
- accessibilityViewIsModal: true,
42
- accessibilityRole: "alert",
43
- style: [
44
- styles.card,
45
- {
46
- backgroundColor: t["--surface-default"],
47
- borderColor: t["--border-default"],
48
- opacity,
49
- transform: [{ scale }]
50
- }
51
- ]
52
- },
53
- /* @__PURE__ */ React.createElement(Text, { style: [styles.title, { color: t["--text-primary"] }] }, title),
54
- description ? /* @__PURE__ */ React.createElement(Text, { style: [styles.description, { color: t["--text-secondary"] }] }, description) : null,
55
- /* @__PURE__ */ React.createElement(View, { style: styles.footer }, /* @__PURE__ */ React.createElement(Button, { label: cancelLabel, variant: "ghost", onPress: onCancel }), /* @__PURE__ */ React.createElement(
56
- Button,
31
+ return /* @__PURE__ */ jsx(RNModal, { visible, transparent: true, animationType: "fade", onRequestClose: onCancel, children: /* @__PURE__ */ jsxs(View, { style: styles.root, children: [
32
+ /* @__PURE__ */ jsx(
33
+ Pressable,
34
+ {
35
+ style: styles.backdrop,
36
+ onPress: onCancel,
37
+ accessibilityRole: "button",
38
+ accessibilityLabel: "Fechar"
39
+ }
40
+ ),
41
+ /* @__PURE__ */ jsxs(
42
+ Animated.View,
57
43
  {
58
- label: confirmLabel,
59
- variant: destructive ? "danger" : "primary",
60
- onPress: onConfirm
44
+ accessibilityViewIsModal: true,
45
+ accessibilityRole: "alert",
46
+ style: [
47
+ styles.card,
48
+ {
49
+ backgroundColor: t["--surface-default"],
50
+ borderColor: t["--border-default"],
51
+ opacity,
52
+ transform: [{ scale }]
53
+ }
54
+ ],
55
+ children: [
56
+ /* @__PURE__ */ jsx(Text, { style: [styles.title, { color: t["--text-primary"] }], children: title }),
57
+ description ? /* @__PURE__ */ jsx(Text, { style: [styles.description, { color: t["--text-secondary"] }], children: description }) : null,
58
+ /* @__PURE__ */ jsxs(View, { style: styles.footer, children: [
59
+ /* @__PURE__ */ jsx(Button, { label: cancelLabel, variant: "ghost", onPress: onCancel }),
60
+ /* @__PURE__ */ jsx(
61
+ Button,
62
+ {
63
+ label: confirmLabel,
64
+ variant: destructive ? "danger" : "primary",
65
+ onPress: onConfirm
66
+ }
67
+ )
68
+ ] })
69
+ ]
61
70
  }
62
- ))
63
- )));
71
+ )
72
+ ] }) });
64
73
  }
65
74
  const styles = StyleSheet.create({
66
75
  root: {
@@ -1,11 +1,12 @@
1
1
  import "../../../chunk-ORMEWXMH.js";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
2
3
  import { Children, isValidElement, cloneElement } from "react";
3
4
  import { Pressable, StyleSheet, View } from "react-native";
4
5
  import { Text } from "./text.js";
5
6
  import { useTheme } from "./theme.js";
6
7
  function Radio({ label, value, selected = false, onSelect, disabled }) {
7
8
  const t = useTheme();
8
- return /* @__PURE__ */ React.createElement(
9
+ return /* @__PURE__ */ jsxs(
9
10
  Pressable,
10
11
  {
11
12
  accessibilityRole: "radio",
@@ -14,23 +15,25 @@ function Radio({ label, value, selected = false, onSelect, disabled }) {
14
15
  disabled,
15
16
  hitSlop: 8,
16
17
  onPress: () => onSelect == null ? void 0 : onSelect(value),
17
- style: [styles.row, { opacity: disabled ? 0.5 : 1 }]
18
- },
19
- /* @__PURE__ */ React.createElement(
20
- View,
21
- {
22
- style: [
23
- styles.ring,
24
- { borderColor: selected ? t["--brand-primary"] : t["--border-strong"] }
25
- ]
26
- },
27
- selected ? /* @__PURE__ */ React.createElement(View, { style: [styles.dot, { backgroundColor: t["--brand-primary"] }] }) : null
28
- ),
29
- label ? /* @__PURE__ */ React.createElement(Text, { variant: "body", style: { color: t["--text-primary"] } }, label) : null
18
+ style: [styles.row, { opacity: disabled ? 0.5 : 1 }],
19
+ children: [
20
+ /* @__PURE__ */ jsx(
21
+ View,
22
+ {
23
+ style: [
24
+ styles.ring,
25
+ { borderColor: selected ? t["--brand-primary"] : t["--border-strong"] }
26
+ ],
27
+ children: selected ? /* @__PURE__ */ jsx(View, { style: [styles.dot, { backgroundColor: t["--brand-primary"] }] }) : null
28
+ }
29
+ ),
30
+ label ? /* @__PURE__ */ jsx(Text, { variant: "body", style: { color: t["--text-primary"] }, children: label }) : null
31
+ ]
32
+ }
30
33
  );
31
34
  }
32
35
  function RadioGroup({ value, onChange, children, disabled }) {
33
- return /* @__PURE__ */ React.createElement(View, { accessibilityRole: "radiogroup", style: styles.group }, Children.map(children, (child) => {
36
+ return /* @__PURE__ */ jsx(View, { accessibilityRole: "radiogroup", style: styles.group, children: Children.map(children, (child) => {
34
37
  var _a;
35
38
  if (!isValidElement(child)) return child;
36
39
  const el = child;
@@ -39,7 +42,7 @@ function RadioGroup({ value, onChange, children, disabled }) {
39
42
  onSelect: onChange,
40
43
  disabled: (_a = el.props.disabled) != null ? _a : disabled
41
44
  });
42
- }));
45
+ }) });
43
46
  }
44
47
  const styles = StyleSheet.create({
45
48
  group: {