@thewhileloop/whileui 1.1.1 → 1.2.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 (235) hide show
  1. package/README.md +492 -38
  2. package/dist/blocks/chat/chat.d.ts.map +1 -1
  3. package/dist/blocks/chat/chat.js +15 -5
  4. package/dist/blocks/chat/chat.js.map +1 -1
  5. package/dist/blocks/commerce/feature-gate.d.ts +13 -0
  6. package/dist/blocks/commerce/feature-gate.d.ts.map +1 -0
  7. package/dist/blocks/commerce/feature-gate.js +13 -0
  8. package/dist/blocks/commerce/feature-gate.js.map +1 -0
  9. package/dist/blocks/commerce/index.d.ts +5 -0
  10. package/dist/blocks/commerce/index.d.ts.map +1 -1
  11. package/dist/blocks/commerce/index.js +5 -0
  12. package/dist/blocks/commerce/index.js.map +1 -1
  13. package/dist/blocks/commerce/metric-card.d.ts +3 -1
  14. package/dist/blocks/commerce/metric-card.d.ts.map +1 -1
  15. package/dist/blocks/commerce/metric-card.js +8 -1
  16. package/dist/blocks/commerce/metric-card.js.map +1 -1
  17. package/dist/blocks/commerce/plan-toggle.d.ts +12 -0
  18. package/dist/blocks/commerce/plan-toggle.d.ts.map +1 -0
  19. package/dist/blocks/commerce/plan-toggle.js +19 -0
  20. package/dist/blocks/commerce/plan-toggle.js.map +1 -0
  21. package/dist/blocks/commerce/pricing-card.d.ts +3 -1
  22. package/dist/blocks/commerce/pricing-card.d.ts.map +1 -1
  23. package/dist/blocks/commerce/pricing-card.js +9 -1
  24. package/dist/blocks/commerce/pricing-card.js.map +1 -1
  25. package/dist/blocks/commerce/product-card.d.ts +3 -1
  26. package/dist/blocks/commerce/product-card.d.ts.map +1 -1
  27. package/dist/blocks/commerce/product-card.js +16 -2
  28. package/dist/blocks/commerce/product-card.js.map +1 -1
  29. package/dist/blocks/commerce/subscription-card.d.ts +17 -0
  30. package/dist/blocks/commerce/subscription-card.d.ts.map +1 -0
  31. package/dist/blocks/commerce/subscription-card.js +18 -0
  32. package/dist/blocks/commerce/subscription-card.js.map +1 -0
  33. package/dist/blocks/commerce/upgrade-banner.d.ts +12 -0
  34. package/dist/blocks/commerce/upgrade-banner.d.ts.map +1 -0
  35. package/dist/blocks/commerce/upgrade-banner.js +9 -0
  36. package/dist/blocks/commerce/upgrade-banner.js.map +1 -0
  37. package/dist/blocks/commerce/usage-bar.d.ts +11 -0
  38. package/dist/blocks/commerce/usage-bar.d.ts.map +1 -0
  39. package/dist/blocks/commerce/usage-bar.js +33 -0
  40. package/dist/blocks/commerce/usage-bar.js.map +1 -0
  41. package/dist/blocks/datepicker/date-range-picker-modal.d.ts +3 -2
  42. package/dist/blocks/datepicker/date-range-picker-modal.d.ts.map +1 -1
  43. package/dist/blocks/datepicker/date-range-picker-modal.js +16 -3
  44. package/dist/blocks/datepicker/date-range-picker-modal.js.map +1 -1
  45. package/dist/blocks/datepicker/datepicker-inline.d.ts.map +1 -1
  46. package/dist/blocks/datepicker/datepicker-inline.js +3 -1
  47. package/dist/blocks/datepicker/datepicker-inline.js.map +1 -1
  48. package/dist/blocks/datepicker/datepicker-modal.d.ts +3 -2
  49. package/dist/blocks/datepicker/datepicker-modal.d.ts.map +1 -1
  50. package/dist/blocks/datepicker/datepicker-modal.js +16 -3
  51. package/dist/blocks/datepicker/datepicker-modal.js.map +1 -1
  52. package/dist/blocks/datepicker/use-calendar-theme.d.ts.map +1 -1
  53. package/dist/blocks/datepicker/use-calendar-theme.js +2 -1
  54. package/dist/blocks/datepicker/use-calendar-theme.js.map +1 -1
  55. package/dist/blocks/layout/app-shell.d.ts +5 -1
  56. package/dist/blocks/layout/app-shell.d.ts.map +1 -1
  57. package/dist/blocks/layout/app-shell.js +2 -2
  58. package/dist/blocks/layout/app-shell.js.map +1 -1
  59. package/dist/blocks/layout/confirm-action-sheet.d.ts +3 -2
  60. package/dist/blocks/layout/confirm-action-sheet.d.ts.map +1 -1
  61. package/dist/blocks/layout/confirm-action-sheet.js +23 -4
  62. package/dist/blocks/layout/confirm-action-sheet.js.map +1 -1
  63. package/dist/blocks/layout/form-modal-screen.d.ts.map +1 -1
  64. package/dist/blocks/layout/form-modal-screen.js +23 -1
  65. package/dist/blocks/layout/form-modal-screen.js.map +1 -1
  66. package/dist/blocks/layout/index.d.ts +2 -1
  67. package/dist/blocks/layout/index.d.ts.map +1 -1
  68. package/dist/blocks/layout/index.js +1 -0
  69. package/dist/blocks/layout/index.js.map +1 -1
  70. package/dist/blocks/layout/page-skeleton.d.ts +7 -1
  71. package/dist/blocks/layout/page-skeleton.d.ts.map +1 -1
  72. package/dist/blocks/layout/page-skeleton.js +7 -14
  73. package/dist/blocks/layout/page-skeleton.js.map +1 -1
  74. package/dist/blocks/layout/screen-skeleton.d.ts +16 -0
  75. package/dist/blocks/layout/screen-skeleton.d.ts.map +1 -0
  76. package/dist/blocks/layout/screen-skeleton.js +8 -0
  77. package/dist/blocks/layout/screen-skeleton.js.map +1 -0
  78. package/dist/blocks/layout/sheet.d.ts +3 -2
  79. package/dist/blocks/layout/sheet.d.ts.map +1 -1
  80. package/dist/blocks/layout/sheet.js +39 -6
  81. package/dist/blocks/layout/sheet.js.map +1 -1
  82. package/dist/blocks/layout/smart-input.d.ts.map +1 -1
  83. package/dist/blocks/layout/smart-input.js +8 -1
  84. package/dist/blocks/layout/smart-input.js.map +1 -1
  85. package/dist/blocks/lists/list-item.d.ts +3 -1
  86. package/dist/blocks/lists/list-item.d.ts.map +1 -1
  87. package/dist/blocks/lists/list-item.js +9 -1
  88. package/dist/blocks/lists/list-item.js.map +1 -1
  89. package/dist/blocks/lists/notification-item.d.ts +3 -1
  90. package/dist/blocks/lists/notification-item.d.ts.map +1 -1
  91. package/dist/blocks/lists/notification-item.js +10 -2
  92. package/dist/blocks/lists/notification-item.js.map +1 -1
  93. package/dist/blocks/lists/swipeable-item.d.ts.map +1 -1
  94. package/dist/blocks/lists/swipeable-item.js +5 -3
  95. package/dist/blocks/lists/swipeable-item.js.map +1 -1
  96. package/dist/blocks/navigation/bottom-nav.d.ts.map +1 -1
  97. package/dist/blocks/navigation/bottom-nav.js +9 -2
  98. package/dist/blocks/navigation/bottom-nav.js.map +1 -1
  99. package/dist/blocks/navigation/drawer-menu.d.ts +3 -2
  100. package/dist/blocks/navigation/drawer-menu.d.ts.map +1 -1
  101. package/dist/blocks/navigation/drawer-menu.js +88 -25
  102. package/dist/blocks/navigation/drawer-menu.js.map +1 -1
  103. package/dist/blocks/navigation/header.d.ts +1 -1
  104. package/dist/blocks/navigation/header.d.ts.map +1 -1
  105. package/dist/blocks/navigation/header.js +12 -3
  106. package/dist/blocks/navigation/header.js.map +1 -1
  107. package/dist/blocks/navigation/navigation-sidebar.d.ts.map +1 -1
  108. package/dist/blocks/navigation/navigation-sidebar.js +9 -2
  109. package/dist/blocks/navigation/navigation-sidebar.js.map +1 -1
  110. package/dist/blocks/navigation/tab-bar.d.ts.map +1 -1
  111. package/dist/blocks/navigation/tab-bar.js +8 -2
  112. package/dist/blocks/navigation/tab-bar.js.map +1 -1
  113. package/dist/components/accordion/accordion.d.ts +1 -1
  114. package/dist/components/accordion/accordion.d.ts.map +1 -1
  115. package/dist/components/accordion/accordion.js +10 -4
  116. package/dist/components/accordion/accordion.js.map +1 -1
  117. package/dist/components/alert/alert.js +4 -4
  118. package/dist/components/alert/alert.js.map +1 -1
  119. package/dist/components/alert-dialog/alert-dialog.d.ts +3 -2
  120. package/dist/components/alert-dialog/alert-dialog.d.ts.map +1 -1
  121. package/dist/components/alert-dialog/alert-dialog.js +15 -4
  122. package/dist/components/alert-dialog/alert-dialog.js.map +1 -1
  123. package/dist/components/badge/badge.js +6 -6
  124. package/dist/components/badge/badge.js.map +1 -1
  125. package/dist/components/button/button.d.ts.map +1 -1
  126. package/dist/components/button/button.js +11 -5
  127. package/dist/components/button/button.js.map +1 -1
  128. package/dist/components/card/card.d.ts +2 -1
  129. package/dist/components/card/card.d.ts.map +1 -1
  130. package/dist/components/card/card.js +12 -3
  131. package/dist/components/card/card.js.map +1 -1
  132. package/dist/components/checkbox/checkbox.d.ts.map +1 -1
  133. package/dist/components/checkbox/checkbox.js +7 -1
  134. package/dist/components/checkbox/checkbox.js.map +1 -1
  135. package/dist/components/context-menu/context-menu.d.ts +3 -2
  136. package/dist/components/context-menu/context-menu.d.ts.map +1 -1
  137. package/dist/components/context-menu/context-menu.js +12 -3
  138. package/dist/components/context-menu/context-menu.js.map +1 -1
  139. package/dist/components/data-row/data-row.d.ts.map +1 -1
  140. package/dist/components/data-row/data-row.js +8 -5
  141. package/dist/components/data-row/data-row.js.map +1 -1
  142. package/dist/components/dialog/dialog.d.ts +3 -2
  143. package/dist/components/dialog/dialog.d.ts.map +1 -1
  144. package/dist/components/dialog/dialog.js +14 -3
  145. package/dist/components/dialog/dialog.js.map +1 -1
  146. package/dist/components/dropdown-menu/dropdown-menu.d.ts +3 -2
  147. package/dist/components/dropdown-menu/dropdown-menu.d.ts.map +1 -1
  148. package/dist/components/dropdown-menu/dropdown-menu.js +12 -3
  149. package/dist/components/dropdown-menu/dropdown-menu.js.map +1 -1
  150. package/dist/components/form-field/form-field.d.ts.map +1 -1
  151. package/dist/components/form-field/form-field.js +6 -3
  152. package/dist/components/form-field/form-field.js.map +1 -1
  153. package/dist/components/hover-card/hover-card.d.ts +2 -1
  154. package/dist/components/hover-card/hover-card.d.ts.map +1 -1
  155. package/dist/components/hover-card/hover-card.js +17 -2
  156. package/dist/components/hover-card/hover-card.js.map +1 -1
  157. package/dist/components/input/input.d.ts.map +1 -1
  158. package/dist/components/input/input.js +3 -1
  159. package/dist/components/input/input.js.map +1 -1
  160. package/dist/components/labeled-field/labeled-field.d.ts.map +1 -1
  161. package/dist/components/labeled-field/labeled-field.js +3 -1
  162. package/dist/components/labeled-field/labeled-field.js.map +1 -1
  163. package/dist/components/menubar/menubar.d.ts +3 -2
  164. package/dist/components/menubar/menubar.d.ts.map +1 -1
  165. package/dist/components/menubar/menubar.js +12 -3
  166. package/dist/components/menubar/menubar.js.map +1 -1
  167. package/dist/components/numeric-input/numeric-input.d.ts.map +1 -1
  168. package/dist/components/numeric-input/numeric-input.js +15 -3
  169. package/dist/components/numeric-input/numeric-input.js.map +1 -1
  170. package/dist/components/otp-input/index.d.ts +2 -0
  171. package/dist/components/otp-input/index.d.ts.map +1 -0
  172. package/dist/components/otp-input/index.js +2 -0
  173. package/dist/components/otp-input/index.js.map +1 -0
  174. package/dist/components/otp-input/otp-input.d.ts +97 -0
  175. package/dist/components/otp-input/otp-input.d.ts.map +1 -0
  176. package/dist/components/otp-input/otp-input.js +88 -0
  177. package/dist/components/otp-input/otp-input.js.map +1 -0
  178. package/dist/components/popover/popover.d.ts +2 -1
  179. package/dist/components/popover/popover.d.ts.map +1 -1
  180. package/dist/components/popover/popover.js +16 -3
  181. package/dist/components/popover/popover.js.map +1 -1
  182. package/dist/components/segmented-control/segmented-control.d.ts +3 -3
  183. package/dist/components/segmented-control/segmented-control.d.ts.map +1 -1
  184. package/dist/components/segmented-control/segmented-control.js +19 -5
  185. package/dist/components/segmented-control/segmented-control.js.map +1 -1
  186. package/dist/components/select/select.d.ts +2 -1
  187. package/dist/components/select/select.d.ts.map +1 -1
  188. package/dist/components/select/select.js +30 -11
  189. package/dist/components/select/select.js.map +1 -1
  190. package/dist/components/skeleton/skeleton.d.ts.map +1 -1
  191. package/dist/components/skeleton/skeleton.js +6 -2
  192. package/dist/components/skeleton/skeleton.js.map +1 -1
  193. package/dist/components/switch/switch.d.ts.map +1 -1
  194. package/dist/components/switch/switch.js +7 -1
  195. package/dist/components/switch/switch.js.map +1 -1
  196. package/dist/components/tabs/tabs.d.ts +3 -1
  197. package/dist/components/tabs/tabs.d.ts.map +1 -1
  198. package/dist/components/tabs/tabs.js +9 -3
  199. package/dist/components/tabs/tabs.js.map +1 -1
  200. package/dist/components/textarea/textarea.d.ts +2 -2
  201. package/dist/components/textarea/textarea.d.ts.map +1 -1
  202. package/dist/components/textarea/textarea.js +19 -6
  203. package/dist/components/textarea/textarea.js.map +1 -1
  204. package/dist/components/toast/toast.d.ts.map +1 -1
  205. package/dist/components/toast/toast.js +12 -2
  206. package/dist/components/toast/toast.js.map +1 -1
  207. package/dist/index.d.ts +5 -0
  208. package/dist/index.d.ts.map +1 -1
  209. package/dist/index.js +5 -0
  210. package/dist/index.js.map +1 -1
  211. package/dist/lib/frosted-surface.d.ts +33 -0
  212. package/dist/lib/frosted-surface.d.ts.map +1 -0
  213. package/dist/lib/frosted-surface.js +181 -0
  214. package/dist/lib/frosted-surface.js.map +1 -0
  215. package/dist/lib/interaction-tokens.d.ts +26 -0
  216. package/dist/lib/interaction-tokens.d.ts.map +1 -0
  217. package/dist/lib/interaction-tokens.js +70 -0
  218. package/dist/lib/interaction-tokens.js.map +1 -0
  219. package/dist/lib/react-native-classname.d.ts +23 -0
  220. package/dist/lib/react-native-classname.d.ts.map +1 -0
  221. package/dist/lib/react-native-classname.js +2 -0
  222. package/dist/lib/react-native-classname.js.map +1 -0
  223. package/dist/lib/theme-colors.d.ts +33 -4
  224. package/dist/lib/theme-colors.d.ts.map +1 -1
  225. package/dist/lib/theme-colors.js +249 -37
  226. package/dist/lib/theme-colors.js.map +1 -1
  227. package/dist/lib/visual-tokens.d.ts +39 -0
  228. package/dist/lib/visual-tokens.d.ts.map +1 -0
  229. package/dist/lib/visual-tokens.js +91 -0
  230. package/dist/lib/visual-tokens.js.map +1 -0
  231. package/dist/vite.d.ts +47 -0
  232. package/dist/vite.d.ts.map +1 -0
  233. package/dist/vite.js +110 -0
  234. package/dist/vite.js.map +1 -0
  235. package/package.json +10 -1
@@ -1 +1 @@
1
- {"version":3,"file":"date-range-picker-modal.d.ts","sourceRoot":"","sources":["../../../src/blocks/datepicker/date-range-picker-modal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAQ9D,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAa5E,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,yBAAyB;IACxC,iCAAiC;IACjC,KAAK,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IACzB,iCAAiC;IACjC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,KAAK,IAAI,CAAC;IAClD,uBAAuB;IACvB,IAAI,EAAE,OAAO,CAAC;IACd,gCAAgC;IAChC,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,gEAAgE;IAChE,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+BAA+B;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,iBAAS,kBAAkB,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAOvE;AAiCD,wBAAgB,oBAAoB,CAAC,EACnC,KAAK,EACL,aAAa,EACb,IAAI,EACJ,YAAY,EACZ,OAAO,EACP,OAAO,EACP,KAAK,EAAE,WAAW,EAClB,OAAO,EACP,KAA2B,EAC3B,YAAqB,EACrB,SAAS,GACV,EAAE,yBAAyB,2CAiI3B;AAED,2FAA2F;AAC3F,wBAAgB,sBAAsB,CAAC,EACrC,KAAK,EACL,WAAiC,EACjC,SAAS,GACV,EAAE;IACD,KAAK,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,2CAYA;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"date-range-picker-modal.d.ts","sourceRoot":"","sources":["../../../src/blocks/datepicker/date-range-picker-modal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAS9D,OAAO,EAAqB,KAAK,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACxF,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAa5E,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,yBAA0B,SAAQ,mBAAmB;IACpE,iCAAiC;IACjC,KAAK,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IACzB,iCAAiC;IACjC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,KAAK,IAAI,CAAC;IAClD,uBAAuB;IACvB,IAAI,EAAE,OAAO,CAAC;IACd,gCAAgC;IAChC,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,gEAAgE;IAChE,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+BAA+B;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,iBAAS,kBAAkB,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAOvE;AAiCD,wBAAgB,oBAAoB,CAAC,EACnC,KAAK,EACL,aAAa,EACb,IAAI,EACJ,YAAY,EACZ,OAAO,EACP,OAAO,EACP,KAAK,EAAE,WAAW,EAClB,OAAO,EACP,KAA2B,EAC3B,YAAqB,EACrB,SAAS,EACT,OAAe,EACf,aAAa,EACb,aAAa,GACd,EAAE,yBAAyB,2CAwJ3B;AAED,2FAA2F;AAC3F,wBAAgB,sBAAsB,CAAC,EACrC,KAAK,EACL,WAAiC,EACjC,SAAS,GACV,EAAE;IACD,KAAK,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,2CAYA;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
@@ -7,6 +7,8 @@ import { Calendar } from 'react-native-calendars';
7
7
  import { Text } from '../../components/text';
8
8
  import { Button, ButtonText } from '../../components/button';
9
9
  import { cn } from '../../lib/cn';
10
+ import { useThemeColors } from '../../lib/theme-colors';
11
+ import { useFrostedSurface } from '../../lib/frosted-surface';
10
12
  import { useCalendarTheme } from './use-calendar-theme';
11
13
  function formatRangeDisplay(range) {
12
14
  if (!range)
@@ -43,14 +45,22 @@ function buildMarkedDates(start, end, theme) {
43
45
  }
44
46
  return marked;
45
47
  }
46
- export function DateRangePickerModal({ value, onValueChange, open, onOpenChange, minDate, maxDate, theme: customTheme, trigger, title = 'Select date range', confirmLabel = 'Done', className, }) {
48
+ export function DateRangePickerModal({ value, onValueChange, open, onOpenChange, minDate, maxDate, theme: customTheme, trigger, title = 'Select date range', confirmLabel = 'Done', className, frosted = false, blurIntensity, blurTintToken, }) {
47
49
  const insets = useSafeAreaInsets();
48
50
  const { theme } = useUniwind();
51
+ const colors = useThemeColors();
52
+ const frostedSurface = useFrostedSurface({
53
+ frosted,
54
+ blurIntensity,
55
+ blurTintToken,
56
+ defaultTintToken: 'surfaceTranslucent',
57
+ defaultBlurPreset: 'medium',
58
+ });
49
59
  const calendarTheme = useCalendarTheme(customTheme);
50
60
  const arrowColor = calendarTheme.arrowColor ??
51
61
  calendarTheme.monthTextColor ??
52
62
  calendarTheme.dayTextColor ??
53
- '#000000';
63
+ colors.foreground;
54
64
  const renderArrow = useCallback((direction) => (_jsx(Text, { className: "text-base font-medium", style: { color: arrowColor }, children: direction === 'left' ? '<' : '>' })), [arrowColor]);
55
65
  const [draftStart, setDraftStart] = useState(value?.start ?? null);
56
66
  const [draftEnd, setDraftEnd] = useState(value?.end ?? null);
@@ -110,7 +120,10 @@ export function DateRangePickerModal({ value, onValueChange, open, onOpenChange,
110
120
  setDraftStart(null);
111
121
  setDraftEnd(null);
112
122
  }, [onOpenChange]);
113
- return (_jsxs(_Fragment, { children: [trigger ? (_jsx(Pressable, { onPress: handleOpen, className: cn('min-h-10 w-full flex-row items-center rounded-lg border border-border bg-muted px-4', className), children: trigger })) : null, _jsx(Modal, { visible: open, transparent: true, animationType: "slide", children: _jsx(Pressable, { className: "flex-1 justify-end bg-black/40", onPress: handleBackdropPress, children: _jsxs(Pressable, { className: "rounded-t-xl border border-border bg-background", style: { paddingBottom: Math.max(insets.bottom, 16) }, onPress: (e) => e.stopPropagation(), children: [_jsxs(View, { className: "flex-row items-center justify-between border-b border-border px-4 py-3", children: [_jsx(Text, { className: "text-base font-medium text-foreground", children: title }), _jsx(Button, { size: "sm", onPress: handleConfirm, children: _jsx(ButtonText, { children: confirmLabel }) })] }), _jsx(View, { className: "p-4", children: _jsx(Calendar, { current: draftStart ?? value?.start ?? undefined, onDayPress: handleDayPress, markedDates: markedDates, markingType: "period", minDate: minDate, maxDate: maxDate, theme: calendarTheme, renderArrow: renderArrow, enableSwipeMonths: true }, theme) })] }) }) })] }));
123
+ return (_jsxs(_Fragment, { children: [trigger ? (_jsx(Pressable, { onPress: handleOpen, className: cn('min-h-10 w-full flex-row items-center rounded-lg border border-border bg-muted px-4', className), children: trigger })) : null, _jsx(Modal, { visible: open, transparent: true, animationType: "slide", children: _jsx(Pressable, { className: "flex-1 justify-end", style: { backgroundColor: colors.overlay }, onPress: handleBackdropPress, children: _jsxs(Pressable, { className: cn('rounded-t-xl border border-border relative overflow-hidden', frosted ? 'bg-transparent' : 'bg-background'), style: [
124
+ { paddingBottom: Math.max(insets.bottom, 16) },
125
+ frostedSurface.surfaceStyle,
126
+ ], onPress: (e) => e.stopPropagation(), children: [frostedSurface.overlay, _jsxs(View, { className: "flex-row items-center justify-between border-b border-border px-4 py-3", children: [_jsx(Text, { className: "text-base font-medium text-foreground", children: title }), _jsx(Button, { size: "sm", onPress: handleConfirm, children: _jsx(ButtonText, { children: confirmLabel }) })] }), _jsx(View, { className: "p-4", children: _jsx(View, { className: "rounded-xl border border-border overflow-hidden", children: _jsx(Calendar, { current: draftStart ?? value?.start ?? undefined, onDayPress: handleDayPress, markedDates: markedDates, markingType: "period", minDate: minDate, maxDate: maxDate, theme: calendarTheme, renderArrow: renderArrow, enableSwipeMonths: true }, theme) }) })] }) }) })] }));
114
127
  }
115
128
  /** Compact trigger showing formatted range. Use as DateRangePickerModal's trigger prop. */
116
129
  export function DateRangePickerTrigger({ value, placeholder = 'Select date range', className, }) {
@@ -1 +1 @@
1
- {"version":3,"file":"date-range-picker-modal.js","sourceRoot":"","sources":["../../../src/blocks/datepicker/date-range-picker-modal.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"date-range-picker-modal.js","sourceRoot":"","sources":["../../../src/blocks/datepicker/date-range-picker-modal.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAkC,MAAM,cAAc,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAiB,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAA4B,MAAM,2BAA2B,CAAC;AACxF,OAAO,EAAE,gBAAgB,EAAsB,MAAM,sBAAsB,CAAC;AA0C5E,SAAS,kBAAkB,CAAC,KAAmC;IAC7D,IAAI,CAAC,KAAK;QAAE,OAAO,mBAAmB,CAAC;IACvC,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,WAAW,CAAC,CAAC;IAClD,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,WAAW,CAAC,CAAC;IAC9C,MAAM,GAAG,GAAG,CAAC,CAAO,EAAE,EAAE,CACtB,CAAC,CAAC,kBAAkB,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;IACvF,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,iBAAiB,CAAC,CAAO;IAChC,MAAM,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAC1B,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACpD,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACjD,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;AAC5B,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa,EAAE,GAAW,EAAE,KAAoB;IACxE,MAAM,KAAK,GAAG,KAAK,CAAC,0BAA0B,CAAC;IAC/C,MAAM,SAAS,GAAG,KAAK,CAAC,oBAAoB,CAAC;IAC7C,MAAM,MAAM,GAAgB,EAAE,CAAC;IAC/B,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9D,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAEtD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;IAClD,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;IAEzC,OAAO,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,CAAC,GAAG,CAAC,GAAG;YACZ,WAAW,EAAE,GAAG,KAAK,KAAK;YAC1B,SAAS,EAAE,GAAG,KAAK,GAAG;YACtB,KAAK;YACL,SAAS;YACT,KAAK,EAAE,KAAK,EAAE,+DAA+D;SAC9E,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,EACnC,KAAK,EACL,aAAa,EACb,IAAI,EACJ,YAAY,EACZ,OAAO,EACP,OAAO,EACP,KAAK,EAAE,WAAW,EAClB,OAAO,EACP,KAAK,GAAG,mBAAmB,EAC3B,YAAY,GAAG,MAAM,EACrB,SAAS,EACT,OAAO,GAAG,KAAK,EACf,aAAa,EACb,aAAa,GACa;IAC1B,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;IACnC,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,EAAE,CAAC;IAC/B,MAAM,MAAM,GAAG,cAAc,EAAE,CAAC;IAChC,MAAM,cAAc,GAAG,iBAAiB,CAAC;QACvC,OAAO;QACP,aAAa;QACb,aAAa;QACb,gBAAgB,EAAE,oBAAoB;QACtC,iBAAiB,EAAE,QAAQ;KAC5B,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IACpD,MAAM,UAAU,GACd,aAAa,CAAC,UAAU;QACxB,aAAa,CAAC,cAAc;QAC5B,aAAa,CAAC,YAAY;QAC1B,MAAM,CAAC,UAAU,CAAC;IACpB,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,SAA2B,EAAE,EAAE,CAAC,CAC/B,KAAC,IAAI,IAAC,SAAS,EAAC,uBAAuB,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,YACjE,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAC5B,CACR,EACD,CAAC,UAAU,CAAC,CACb,CAAC;IAEF,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAgB,KAAK,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC;IAClF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAgB,KAAK,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC;IAE5E,MAAM,WAAW,GAAG,OAAO,CAAC,GAAgB,EAAE;QAC5C,MAAM,KAAK,GAAG,aAAa,CAAC,0BAA0B,CAAC;QACvD,MAAM,SAAS,GAAG,aAAa,CAAC,oBAAoB,CAAC;QACrD,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC7B,IAAI,UAAU,EAAE,CAAC;gBACf,OAAO;oBACL,CAAC,UAAU,CAAC,EAAE;wBACZ,WAAW,EAAE,IAAI;wBACjB,SAAS,EAAE,IAAI;wBACf,KAAK;wBACL,SAAS;wBACT,KAAK,EAAE,KAAK;qBACb;iBACF,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,UAAU,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC9F,OAAO,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC;IACrD,CAAC,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC;IAE1C,MAAM,cAAc,GAAG,WAAW,CAChC,CAAC,GAAa,EAAE,EAAE;QAChB,MAAM,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC;QACzB,IAAI,CAAC,UAAU,IAAI,QAAQ,EAAE,CAAC;YAC5B,aAAa,CAAC,CAAC,CAAC,CAAC;YACjB,WAAW,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;IACH,CAAC,EACD,CAAC,UAAU,EAAE,QAAQ,CAAC,CACvB,CAAC;IAEF,MAAM,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;QACrC,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,UAAU,CAAC;YACzB,MAAM,GAAG,GAAG,QAAQ,IAAI,UAAU,CAAC;YACnC,aAAa,EAAE,CAAC;gBACd,KAAK,EAAE,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG;gBACjC,GAAG,EAAE,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK;aAChC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;QACD,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,aAAa,CAAC,IAAI,CAAC,CAAC;QACpB,WAAW,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC;IAExD,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;QAClC,aAAa,CAAC,KAAK,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC;QACpC,WAAW,CAAC,KAAK,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC;QAChC,YAAY,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;IAE1B,MAAM,mBAAmB,GAAG,WAAW,CAAC,GAAG,EAAE;QAC3C,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,aAAa,CAAC,IAAI,CAAC,CAAC;QACpB,WAAW,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,OAAO,CACL,8BACG,OAAO,CAAC,CAAC,CAAC,CACT,KAAC,SAAS,IACR,OAAO,EAAE,UAAU,EACnB,SAAS,EAAE,EAAE,CACX,qFAAqF,EACrF,SAAS,CACV,YAEA,OAAO,GACE,CACb,CAAC,CAAC,CAAC,IAAI,EAER,KAAC,KAAK,IAAC,OAAO,EAAE,IAAI,EAAE,WAAW,QAAC,aAAa,EAAC,OAAO,YACrD,KAAC,SAAS,IACR,SAAS,EAAC,oBAAoB,EAC9B,KAAK,EAAE,EAAE,eAAe,EAAE,MAAM,CAAC,OAAO,EAAE,EAC1C,OAAO,EAAE,mBAAmB,YAE5B,MAAC,SAAS,IACR,SAAS,EAAE,EAAE,CACX,4DAA4D,EAC5D,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,eAAe,CAC7C,EACD,KAAK,EACH;4BACE,EAAE,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAe;4BAC3D,cAAc,CAAC,YAAY;yBACJ,EAE3B,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,aAElC,cAAc,CAAC,OAAO,EACvB,MAAC,IAAI,IAAC,SAAS,EAAC,wEAAwE,aACtF,KAAC,IAAI,IAAC,SAAS,EAAC,uCAAuC,YAAE,KAAK,GAAQ,EACtE,KAAC,MAAM,IAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAE,aAAa,YACtC,KAAC,UAAU,cAAE,YAAY,GAAc,GAChC,IACJ,EACP,KAAC,IAAI,IAAC,SAAS,EAAC,KAAK,YACnB,KAAC,IAAI,IAAC,SAAS,EAAC,iDAAiD,YAC/D,KAAC,QAAQ,IAEP,OAAO,EAAE,UAAU,IAAI,KAAK,EAAE,KAAK,IAAI,SAAS,EAChD,UAAU,EAAE,cAAc,EAC1B,WAAW,EAAE,WAAW,EACxB,WAAW,EAAC,QAAQ,EACpB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,aAAwC,EAC/C,WAAW,EAAE,WAAW,EACxB,iBAAiB,UATZ,KAAK,CAUV,GACG,GACF,IACG,GACF,GACN,IACP,CACJ,CAAC;AACJ,CAAC;AAED,2FAA2F;AAC3F,MAAM,UAAU,sBAAsB,CAAC,EACrC,KAAK,EACL,WAAW,GAAG,mBAAmB,EACjC,SAAS,GAKV;IACC,OAAO,CACL,MAAC,IAAI,IAAC,SAAS,EAAE,EAAE,CAAC,sCAAsC,EAAE,SAAS,CAAC,aACpE,KAAC,IAAI,IACH,SAAS,EAAE,EAAE,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,uBAAuB,CAAC,EACtF,aAAa,EAAE,CAAC,YAEf,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,GAC3C,EACP,KAAC,IAAI,IAAC,SAAS,EAAC,+EAA+E,GAAG,IAC7F,CACR,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"datepicker-inline.d.ts","sourceRoot":"","sources":["../../../src/blocks/datepicker/datepicker-inline.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE5E,MAAM,WAAW,qBAAqB;IACpC,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,iCAAiC;IACjC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC9C,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,aAAa,EACb,OAAO,EACP,OAAO,EACP,KAAK,EAAE,WAAW,EAClB,SAAS,GACV,EAAE,qBAAqB,2CA+CvB"}
1
+ {"version":3,"file":"datepicker-inline.d.ts","sourceRoot":"","sources":["../../../src/blocks/datepicker/datepicker-inline.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE5E,MAAM,WAAW,qBAAqB;IACpC,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,iCAAiC;IACjC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC9C,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,aAAa,EACb,OAAO,EACP,OAAO,EACP,KAAK,EAAE,WAAW,EAClB,SAAS,GACV,EAAE,qBAAqB,2CAgDvB"}
@@ -5,14 +5,16 @@ import { useUniwind } from 'uniwind';
5
5
  import { Calendar } from 'react-native-calendars';
6
6
  import { Text } from '../../components/text';
7
7
  import { cn } from '../../lib/cn';
8
+ import { useThemeColors } from '../../lib/theme-colors';
8
9
  import { useCalendarTheme } from './use-calendar-theme';
9
10
  export function DatePickerInline({ value, onValueChange, minDate, maxDate, theme: customTheme, className, }) {
10
11
  const { theme } = useUniwind();
12
+ const colors = useThemeColors();
11
13
  const calendarTheme = useCalendarTheme(customTheme);
12
14
  const arrowColor = calendarTheme.arrowColor ??
13
15
  calendarTheme.monthTextColor ??
14
16
  calendarTheme.dayTextColor ??
15
- '#000000';
17
+ colors.foreground;
16
18
  const renderArrow = useCallback((direction) => (_jsx(Text, { className: "text-base font-medium", style: { color: arrowColor }, children: direction === 'left' ? '<' : '>' })), [arrowColor]);
17
19
  const markedDates = useMemo(() => {
18
20
  if (!value)
@@ -1 +1 @@
1
- {"version":3,"file":"datepicker-inline.js","sourceRoot":"","sources":["../../../src/blocks/datepicker/datepicker-inline.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAiB,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAsB,MAAM,sBAAsB,CAAC;AAgB5E,MAAM,UAAU,gBAAgB,CAAC,EAC/B,KAAK,EACL,aAAa,EACb,OAAO,EACP,OAAO,EACP,KAAK,EAAE,WAAW,EAClB,SAAS,GACa;IACtB,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,EAAE,CAAC;IAC/B,MAAM,aAAa,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IACpD,MAAM,UAAU,GACd,aAAa,CAAC,UAAU;QACxB,aAAa,CAAC,cAAc;QAC5B,aAAa,CAAC,YAAY;QAC1B,SAAS,CAAC;IACZ,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,SAA2B,EAAE,EAAE,CAAC,CAC/B,KAAC,IAAI,IAAC,SAAS,EAAC,uBAAuB,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,YACjE,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAC5B,CACR,EACD,CAAC,UAAU,CAAC,CACb,CAAC;IAEF,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE;QAC/B,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QAC7B,OAAO;YACL,CAAC,KAAK,CAAC,EAAE;gBACP,QAAQ,EAAE,IAAI;gBACd,iBAAiB,EAAE,KAAK;gBACxB,KAAK,EAAE,KAAK,EAAE,iEAAiE;aAChF;SACF,CAAC;IACJ,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,MAAM,cAAc,GAAG,CAAC,GAAa,EAAE,EAAE;QACvC,aAAa,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAClC,CAAC,CAAC;IAEF,OAAO,CACL,KAAC,IAAI,IAAC,SAAS,EAAE,EAAE,CAAC,iDAAiD,EAAE,SAAS,CAAC,YAC/E,KAAC,QAAQ,IAEP,OAAO,EAAE,KAAK,IAAI,SAAS,EAC3B,UAAU,EAAE,cAAc,EAC1B,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,aAAwC,EAC/C,WAAW,EAAE,WAAW,EACxB,iBAAiB,UARZ,KAAK,CASV,GACG,CACR,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"datepicker-inline.js","sourceRoot":"","sources":["../../../src/blocks/datepicker/datepicker-inline.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAiB,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAsB,MAAM,sBAAsB,CAAC;AAgB5E,MAAM,UAAU,gBAAgB,CAAC,EAC/B,KAAK,EACL,aAAa,EACb,OAAO,EACP,OAAO,EACP,KAAK,EAAE,WAAW,EAClB,SAAS,GACa;IACtB,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,EAAE,CAAC;IAC/B,MAAM,MAAM,GAAG,cAAc,EAAE,CAAC;IAChC,MAAM,aAAa,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IACpD,MAAM,UAAU,GACd,aAAa,CAAC,UAAU;QACxB,aAAa,CAAC,cAAc;QAC5B,aAAa,CAAC,YAAY;QAC1B,MAAM,CAAC,UAAU,CAAC;IACpB,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,SAA2B,EAAE,EAAE,CAAC,CAC/B,KAAC,IAAI,IAAC,SAAS,EAAC,uBAAuB,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,YACjE,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAC5B,CACR,EACD,CAAC,UAAU,CAAC,CACb,CAAC;IAEF,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE;QAC/B,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QAC7B,OAAO;YACL,CAAC,KAAK,CAAC,EAAE;gBACP,QAAQ,EAAE,IAAI;gBACd,iBAAiB,EAAE,KAAK;gBACxB,KAAK,EAAE,KAAK,EAAE,iEAAiE;aAChF;SACF,CAAC;IACJ,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,MAAM,cAAc,GAAG,CAAC,GAAa,EAAE,EAAE;QACvC,aAAa,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAClC,CAAC,CAAC;IAEF,OAAO,CACL,KAAC,IAAI,IAAC,SAAS,EAAE,EAAE,CAAC,iDAAiD,EAAE,SAAS,CAAC,YAC/E,KAAC,QAAQ,IAEP,OAAO,EAAE,KAAK,IAAI,SAAS,EAC3B,UAAU,EAAE,cAAc,EAC1B,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,aAAwC,EAC/C,WAAW,EAAE,WAAW,EACxB,iBAAiB,UARZ,KAAK,CASV,GACG,CACR,CAAC;AACJ,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import React from 'react';
2
+ import { type FrostedSurfaceProps } from '../../lib/frosted-surface';
2
3
  import { type CalendarTheme } from './use-calendar-theme';
3
- export interface DatePickerModalProps {
4
+ export interface DatePickerModalProps extends FrostedSurfaceProps {
4
5
  /** Controlled: selected date in YYYY-MM-DD */
5
6
  value?: string | null;
6
7
  /** Controlled: change handler */
@@ -24,7 +25,7 @@ export interface DatePickerModalProps {
24
25
  className?: string;
25
26
  }
26
27
  declare function formatDisplayDate(dateString: string | null | undefined): string;
27
- export declare function DatePickerModal({ value, onValueChange, open, onOpenChange, minDate, maxDate, theme: customTheme, trigger, title, confirmLabel, className, }: DatePickerModalProps): import("react/jsx-runtime").JSX.Element;
28
+ export declare function DatePickerModal({ value, onValueChange, open, onOpenChange, minDate, maxDate, theme: customTheme, trigger, title, confirmLabel, className, frosted, blurIntensity, blurTintToken, }: DatePickerModalProps): import("react/jsx-runtime").JSX.Element;
28
29
  /** Compact trigger showing formatted date. Use as DatePickerModal's trigger prop. */
29
30
  export declare function DatePickerTrigger({ value, placeholder, className, }: {
30
31
  value?: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"datepicker-modal.d.ts","sourceRoot":"","sources":["../../../src/blocks/datepicker/datepicker-modal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAQpD,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE5E,MAAM,WAAW,oBAAoB;IACnC,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,iCAAiC;IACjC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC9C,uBAAuB;IACvB,IAAI,EAAE,OAAO,CAAC;IACd,gCAAgC;IAChC,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,gEAAgE;IAChE,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+BAA+B;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,iBAAS,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CASxE;AAED,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,aAAa,EACb,IAAI,EACJ,YAAY,EACZ,OAAO,EACP,OAAO,EACP,KAAK,EAAE,WAAW,EAClB,OAAO,EACP,KAAqB,EACrB,YAAqB,EACrB,SAAS,GACV,EAAE,oBAAoB,2CAsFtB;AAED,qFAAqF;AACrF,wBAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,WAA2B,EAC3B,SAAS,GACV,EAAE;IACD,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,2CAYA;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"datepicker-modal.d.ts","sourceRoot":"","sources":["../../../src/blocks/datepicker/datepicker-modal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AASpD,OAAO,EAAqB,KAAK,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACxF,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE5E,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAC/D,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,iCAAiC;IACjC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC9C,uBAAuB;IACvB,IAAI,EAAE,OAAO,CAAC;IACd,gCAAgC;IAChC,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,gEAAgE;IAChE,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+BAA+B;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,iBAAS,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CASxE;AAED,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,aAAa,EACb,IAAI,EACJ,YAAY,EACZ,OAAO,EACP,OAAO,EACP,KAAK,EAAE,WAAW,EAClB,OAAO,EACP,KAAqB,EACrB,YAAqB,EACrB,SAAS,EACT,OAAe,EACf,aAAa,EACb,aAAa,GACd,EAAE,oBAAoB,2CA6GtB;AAED,qFAAqF;AACrF,wBAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,WAA2B,EAC3B,SAAS,GACV,EAAE;IACD,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,2CAYA;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
@@ -7,6 +7,8 @@ import { Calendar } from 'react-native-calendars';
7
7
  import { Text } from '../../components/text';
8
8
  import { Button, ButtonText } from '../../components/button';
9
9
  import { cn } from '../../lib/cn';
10
+ import { useThemeColors } from '../../lib/theme-colors';
11
+ import { useFrostedSurface } from '../../lib/frosted-surface';
10
12
  import { useCalendarTheme } from './use-calendar-theme';
11
13
  function formatDisplayDate(dateString) {
12
14
  if (!dateString)
@@ -19,14 +21,22 @@ function formatDisplayDate(dateString) {
19
21
  year: 'numeric',
20
22
  });
21
23
  }
22
- export function DatePickerModal({ value, onValueChange, open, onOpenChange, minDate, maxDate, theme: customTheme, trigger, title = 'Select date', confirmLabel = 'Done', className, }) {
24
+ export function DatePickerModal({ value, onValueChange, open, onOpenChange, minDate, maxDate, theme: customTheme, trigger, title = 'Select date', confirmLabel = 'Done', className, frosted = false, blurIntensity, blurTintToken, }) {
23
25
  const insets = useSafeAreaInsets();
24
26
  const { theme } = useUniwind();
27
+ const colors = useThemeColors();
28
+ const frostedSurface = useFrostedSurface({
29
+ frosted,
30
+ blurIntensity,
31
+ blurTintToken,
32
+ defaultTintToken: 'surfaceTranslucent',
33
+ defaultBlurPreset: 'medium',
34
+ });
25
35
  const calendarTheme = useCalendarTheme(customTheme);
26
36
  const arrowColor = calendarTheme.arrowColor ??
27
37
  calendarTheme.monthTextColor ??
28
38
  calendarTheme.dayTextColor ??
29
- '#000000';
39
+ colors.foreground;
30
40
  const renderArrow = useCallback((direction) => (_jsx(Text, { className: "text-base font-medium", style: { color: arrowColor }, children: direction === 'left' ? '<' : '>' })), [arrowColor]);
31
41
  const markedDates = useMemo(() => {
32
42
  if (!value)
@@ -48,7 +58,10 @@ export function DatePickerModal({ value, onValueChange, open, onOpenChange, minD
48
58
  const handleBackdropPress = () => {
49
59
  onOpenChange(false);
50
60
  };
51
- return (_jsxs(_Fragment, { children: [trigger ? (_jsx(Pressable, { onPress: () => onOpenChange(true), className: cn('min-h-10 w-full flex-row items-center rounded-lg border border-border bg-muted px-4', className), children: trigger })) : null, _jsx(Modal, { visible: open, transparent: true, animationType: "slide", children: _jsx(Pressable, { className: "flex-1 justify-end bg-black/40", onPress: handleBackdropPress, children: _jsxs(Pressable, { className: "rounded-t-xl border border-border bg-background", style: { paddingBottom: Math.max(insets.bottom, 16) }, onPress: (e) => e.stopPropagation(), children: [_jsxs(View, { className: "flex-row items-center justify-between border-b border-border px-4 py-3", children: [_jsx(Text, { className: "text-base font-medium text-foreground", children: title }), _jsx(Button, { size: "sm", onPress: handleConfirm, children: _jsx(ButtonText, { children: confirmLabel }) })] }), _jsx(View, { className: "p-4", children: _jsx(Calendar, { current: value ?? undefined, onDayPress: handleDayPress, markedDates: markedDates, minDate: minDate, maxDate: maxDate, theme: calendarTheme, renderArrow: renderArrow, enableSwipeMonths: true }, theme) })] }) }) })] }));
61
+ return (_jsxs(_Fragment, { children: [trigger ? (_jsx(Pressable, { onPress: () => onOpenChange(true), className: cn('min-h-10 w-full flex-row items-center rounded-lg border border-border bg-muted px-4', className), children: trigger })) : null, _jsx(Modal, { visible: open, transparent: true, animationType: "slide", children: _jsx(Pressable, { className: "flex-1 justify-end", style: { backgroundColor: colors.overlay }, onPress: handleBackdropPress, children: _jsxs(Pressable, { className: cn('rounded-t-xl border border-border relative overflow-hidden', frosted ? 'bg-transparent' : 'bg-background'), style: [
62
+ { paddingBottom: Math.max(insets.bottom, 16) },
63
+ frostedSurface.surfaceStyle,
64
+ ], onPress: (e) => e.stopPropagation(), children: [frostedSurface.overlay, _jsxs(View, { className: "flex-row items-center justify-between border-b border-border px-4 py-3", children: [_jsx(Text, { className: "text-base font-medium text-foreground", children: title }), _jsx(Button, { size: "sm", onPress: handleConfirm, children: _jsx(ButtonText, { children: confirmLabel }) })] }), _jsx(View, { className: "p-4", children: _jsx(View, { className: "rounded-xl border border-border overflow-hidden", children: _jsx(Calendar, { current: value ?? undefined, onDayPress: handleDayPress, markedDates: markedDates, minDate: minDate, maxDate: maxDate, theme: calendarTheme, renderArrow: renderArrow, enableSwipeMonths: true }, theme) }) })] }) }) })] }));
52
65
  }
53
66
  /** Compact trigger showing formatted date. Use as DatePickerModal's trigger prop. */
54
67
  export function DatePickerTrigger({ value, placeholder = 'Select date', className, }) {
@@ -1 +1 @@
1
- {"version":3,"file":"datepicker-modal.js","sourceRoot":"","sources":["../../../src/blocks/datepicker/datepicker-modal.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"datepicker-modal.js","sourceRoot":"","sources":["../../../src/blocks/datepicker/datepicker-modal.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-calendar-theme.d.ts","sourceRoot":"","sources":["../../../src/blocks/datepicker/use-calendar-theme.ts"],"names":[],"mappings":"AAIA,8EAA8E;AAC9E,MAAM,WAAW,aAAa;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAyBD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,CAAC,EAAE,aAAa,GAAG,aAAa,CAW3E"}
1
+ {"version":3,"file":"use-calendar-theme.d.ts","sourceRoot":"","sources":["../../../src/blocks/datepicker/use-calendar-theme.ts"],"names":[],"mappings":"AAIA,8EAA8E;AAC9E,MAAM,WAAW,aAAa;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AA0BD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,CAAC,EAAE,aAAa,GAAG,aAAa,CAW3E"}
@@ -2,7 +2,8 @@ import { useCSSVariable } from 'uniwind';
2
2
  import { useThemeColors } from '../../lib/theme-colors';
3
3
  function buildCalendarTheme(c, fontFamily) {
4
4
  return {
5
- calendarBackground: c.background,
5
+ backgroundColor: c.surfaceTranslucent,
6
+ calendarBackground: c.surfaceTranslucent,
6
7
  textSectionTitleColor: c.mutedForeground,
7
8
  selectedDayBackgroundColor: c.primary,
8
9
  selectedDayTextColor: c.primaryForeground,
@@ -1 +1 @@
1
- {"version":3,"file":"use-calendar-theme.js","sourceRoot":"","sources":["../../../src/blocks/datepicker/use-calendar-theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAkCxD,SAAS,kBAAkB,CAAC,CAAc,EAAE,UAAmB;IAC7D,OAAO;QACL,kBAAkB,EAAE,CAAC,CAAC,UAAU;QAChC,qBAAqB,EAAE,CAAC,CAAC,eAAe;QACxC,0BAA0B,EAAE,CAAC,CAAC,OAAO;QACrC,oBAAoB,EAAE,CAAC,CAAC,iBAAiB;QACzC,cAAc,EAAE,CAAC,CAAC,UAAU;QAC5B,oBAAoB,EAAE,CAAC,CAAC,KAAK;QAC7B,YAAY,EAAE,CAAC,CAAC,UAAU;QAC1B,iBAAiB,EAAE,CAAC,CAAC,MAAM;QAC3B,kBAAkB,EAAE,CAAC,CAAC,MAAM;QAC5B,QAAQ,EAAE,CAAC,CAAC,MAAM;QAClB,gBAAgB,EAAE,CAAC,CAAC,iBAAiB;QACrC,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,cAAc,EAAE,CAAC,CAAC,UAAU;QAC5B,GAAG,CAAC,UAAU,IAAI;YAChB,iBAAiB,EAAE,UAAU;YAC7B,mBAAmB,EAAE,UAAU;YAC/B,uBAAuB,EAAE,UAAU;SACpC,CAAC;KACH,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,WAA2B;IAC1D,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAc,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IACnF,MAAM,IAAI,GAAG,kBAAkB,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;IAC/C,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAC9B,MAAM,MAAM,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QACjD,IAAI,CAAC,KAAK,SAAS;YAAE,MAAM,CAAC,CAAwB,CAAC,GAAG,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"use-calendar-theme.js","sourceRoot":"","sources":["../../../src/blocks/datepicker/use-calendar-theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAkCxD,SAAS,kBAAkB,CAAC,CAAc,EAAE,UAAmB;IAC7D,OAAO;QACL,eAAe,EAAE,CAAC,CAAC,kBAAkB;QACrC,kBAAkB,EAAE,CAAC,CAAC,kBAAkB;QACxC,qBAAqB,EAAE,CAAC,CAAC,eAAe;QACxC,0BAA0B,EAAE,CAAC,CAAC,OAAO;QACrC,oBAAoB,EAAE,CAAC,CAAC,iBAAiB;QACzC,cAAc,EAAE,CAAC,CAAC,UAAU;QAC5B,oBAAoB,EAAE,CAAC,CAAC,KAAK;QAC7B,YAAY,EAAE,CAAC,CAAC,UAAU;QAC1B,iBAAiB,EAAE,CAAC,CAAC,MAAM;QAC3B,kBAAkB,EAAE,CAAC,CAAC,MAAM;QAC5B,QAAQ,EAAE,CAAC,CAAC,MAAM;QAClB,gBAAgB,EAAE,CAAC,CAAC,iBAAiB;QACrC,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,cAAc,EAAE,CAAC,CAAC,UAAU;QAC5B,GAAG,CAAC,UAAU,IAAI;YAChB,iBAAiB,EAAE,UAAU;YAC7B,mBAAmB,EAAE,UAAU;YAC/B,uBAAuB,EAAE,UAAU;SACpC,CAAC;KACH,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,WAA2B;IAC1D,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;IAC3B,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAc,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IACnF,MAAM,IAAI,GAAG,kBAAkB,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;IAC/C,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAC9B,MAAM,MAAM,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QACjD,IAAI,CAAC,KAAK,SAAS;YAAE,MAAM,CAAC,CAAwB,CAAC,GAAG,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -5,6 +5,10 @@ export interface AppShellProps extends ViewProps {
5
5
  footer?: React.ReactNode;
6
6
  bottomNav?: React.ReactNode;
7
7
  safeArea?: boolean;
8
+ /** Keep shell mounted while swapping content with skeleton. */
9
+ loading?: boolean;
10
+ /** Optional custom loading placeholder for the content area. */
11
+ skeleton?: React.ReactNode;
8
12
  }
9
- export declare function AppShell({ header, footer, bottomNav, safeArea, children, className, ...props }: AppShellProps): import("react/jsx-runtime").JSX.Element;
13
+ export declare function AppShell({ header, footer, bottomNav, safeArea, loading, skeleton, children, className, ...props }: AppShellProps): import("react/jsx-runtime").JSX.Element;
10
14
  //# sourceMappingURL=app-shell.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-shell.d.ts","sourceRoot":"","sources":["../../../src/blocks/layout/app-shell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAMpD,MAAM,WAAW,aAAc,SAAQ,SAAS;IAC9C,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAID,wBAAgB,QAAQ,CAAC,EACvB,MAAM,EACN,MAAM,EACN,SAAS,EACT,QAAe,EACf,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,aAAa,2CAWf"}
1
+ {"version":3,"file":"app-shell.d.ts","sourceRoot":"","sources":["../../../src/blocks/layout/app-shell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAMpD,MAAM,WAAW,aAAc,SAAQ,SAAS;IAC9C,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+DAA+D;IAC/D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAID,wBAAgB,QAAQ,CAAC,EACvB,MAAM,EACN,MAAM,EACN,SAAS,EACT,QAAe,EACf,OAAe,EACf,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,aAAa,2CAWf"}
@@ -3,8 +3,8 @@ import { View } from 'react-native';
3
3
  import { SafeAreaView } from 'react-native-safe-area-context';
4
4
  import { cn } from '../../lib/cn';
5
5
  // ─── Component ───────────────────────────────────────────────
6
- export function AppShell({ header, footer, bottomNav, safeArea = true, children, className, ...props }) {
6
+ export function AppShell({ header, footer, bottomNav, safeArea = true, loading = false, skeleton, children, className, ...props }) {
7
7
  const Container = safeArea ? SafeAreaView : View;
8
- return (_jsxs(Container, { className: cn('flex-1 bg-background', className), ...props, children: [header, _jsx(View, { className: "flex-1", children: children }), footer, bottomNav] }));
8
+ return (_jsxs(Container, { className: cn('flex-1 bg-background', className), ...props, children: [header, _jsx(View, { className: "flex-1", children: loading ? (skeleton ?? null) : children }), footer, bottomNav] }));
9
9
  }
10
10
  //# sourceMappingURL=app-shell.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-shell.js","sourceRoot":"","sources":["../../../src/blocks/layout/app-shell.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAkB,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAWlC,gEAAgE;AAEhE,MAAM,UAAU,QAAQ,CAAC,EACvB,MAAM,EACN,MAAM,EACN,SAAS,EACT,QAAQ,GAAG,IAAI,EACf,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACM;IACd,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;IAEjD,OAAO,CACL,MAAC,SAAS,IAAC,SAAS,EAAE,EAAE,CAAC,sBAAsB,EAAE,SAAS,CAAC,KAAM,KAAK,aACnE,MAAM,EACP,KAAC,IAAI,IAAC,SAAS,EAAC,QAAQ,YAAE,QAAQ,GAAQ,EACzC,MAAM,EACN,SAAS,IACA,CACb,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"app-shell.js","sourceRoot":"","sources":["../../../src/blocks/layout/app-shell.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAkB,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAelC,gEAAgE;AAEhE,MAAM,UAAU,QAAQ,CAAC,EACvB,MAAM,EACN,MAAM,EACN,SAAS,EACT,QAAQ,GAAG,IAAI,EACf,OAAO,GAAG,KAAK,EACf,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACM;IACd,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;IAEjD,OAAO,CACL,MAAC,SAAS,IAAC,SAAS,EAAE,EAAE,CAAC,sBAAsB,EAAE,SAAS,CAAC,KAAM,KAAK,aACnE,MAAM,EACP,KAAC,IAAI,IAAC,SAAS,EAAC,QAAQ,YAAE,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAQ,EACxE,MAAM,EACN,SAAS,IACA,CACb,CAAC;AACJ,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { type ViewProps } from 'react-native';
2
+ import { type FrostedSurfaceProps } from '../../lib/frosted-surface';
2
3
  export type ConfirmActionSheetActionVariant = 'default' | 'destructive' | 'cancel';
3
4
  export interface ConfirmActionSheetAction {
4
5
  key: string;
@@ -8,7 +9,7 @@ export interface ConfirmActionSheetAction {
8
9
  disabled?: boolean;
9
10
  closeOnPress?: boolean;
10
11
  }
11
- export interface ConfirmActionSheetProps extends Omit<ViewProps, 'children'> {
12
+ export interface ConfirmActionSheetProps extends Omit<ViewProps, 'children'>, FrostedSurfaceProps {
12
13
  open: boolean;
13
14
  onOpenChange: (open: boolean) => void;
14
15
  title: string;
@@ -20,5 +21,5 @@ export interface ConfirmActionSheetProps extends Omit<ViewProps, 'children'> {
20
21
  onCancel?: () => void;
21
22
  destructive?: boolean;
22
23
  }
23
- export declare function ConfirmActionSheet({ open, onOpenChange, title, description, actions, confirmLabel, cancelLabel, onConfirm, onCancel, destructive, className, style, ...props }: ConfirmActionSheetProps): import("react/jsx-runtime").JSX.Element;
24
+ export declare function ConfirmActionSheet({ open, onOpenChange, title, description, actions, confirmLabel, cancelLabel, onConfirm, onCancel, destructive, className, style, frosted, blurIntensity, blurTintToken, ...props }: ConfirmActionSheetProps): import("react/jsx-runtime").JSX.Element;
24
25
  //# sourceMappingURL=confirm-action-sheet.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"confirm-action-sheet.d.ts","sourceRoot":"","sources":["../../../src/blocks/layout/confirm-action-sheet.tsx"],"names":[],"mappings":"AACA,OAAO,EAA0B,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAKtE,MAAM,MAAM,+BAA+B,GAAG,SAAS,GAAG,aAAa,GAAG,QAAQ,CAAC;AAEnF,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,+BAA+B,CAAC;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,uBAAwB,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC;IAC1E,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,wBAAwB,EAAE,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,kBAAkB,CAAC,EACjC,IAAI,EACJ,YAAY,EACZ,KAAK,EACL,WAAW,EACX,OAAO,EACP,YAAwB,EACxB,WAAsB,EACtB,SAAS,EACT,QAAQ,EACR,WAAkB,EAClB,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,uBAAuB,2CAoFzB"}
1
+ {"version":3,"file":"confirm-action-sheet.d.ts","sourceRoot":"","sources":["../../../src/blocks/layout/confirm-action-sheet.tsx"],"names":[],"mappings":"AACA,OAAO,EAKL,KAAK,SAAS,EAEf,MAAM,cAAc,CAAC;AAMtB,OAAO,EAAqB,KAAK,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAExF,MAAM,MAAM,+BAA+B,GAAG,SAAS,GAAG,aAAa,GAAG,QAAQ,CAAC;AAEnF,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,+BAA+B,CAAC;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,uBAAwB,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,mBAAmB;IAC/F,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,wBAAwB,EAAE,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,kBAAkB,CAAC,EACjC,IAAI,EACJ,YAAY,EACZ,KAAK,EACL,WAAW,EACX,OAAO,EACP,YAAwB,EACxB,WAAsB,EACtB,SAAS,EACT,QAAQ,EACR,WAAkB,EAClB,SAAS,EACT,KAAK,EACL,OAAe,EACf,aAAa,EACb,aAAa,EACb,GAAG,KAAK,EACT,EAAE,uBAAuB,2CA0GzB"}
@@ -1,11 +1,23 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useMemo } from 'react';
3
- import { Modal, Pressable, View } from 'react-native';
3
+ import { Modal, Pressable, View, } from 'react-native';
4
4
  import { useSafeAreaInsets } from 'react-native-safe-area-context';
5
5
  import { Text } from '../../components/text';
6
6
  import { cn } from '../../lib/cn';
7
- export function ConfirmActionSheet({ open, onOpenChange, title, description, actions, confirmLabel = 'Confirm', cancelLabel = 'Cancel', onConfirm, onCancel, destructive = true, className, style, ...props }) {
7
+ import { useThemeColors } from '../../lib/theme-colors';
8
+ import { useInteractionTokens, withInteractivePressableStyle } from '../../lib/interaction-tokens';
9
+ import { useFrostedSurface } from '../../lib/frosted-surface';
10
+ export function ConfirmActionSheet({ open, onOpenChange, title, description, actions, confirmLabel = 'Confirm', cancelLabel = 'Cancel', onConfirm, onCancel, destructive = true, className, style, frosted = false, blurIntensity, blurTintToken, ...props }) {
8
11
  const insets = useSafeAreaInsets();
12
+ const colors = useThemeColors();
13
+ const interaction = useInteractionTokens();
14
+ const frostedSurface = useFrostedSurface({
15
+ frosted,
16
+ blurIntensity,
17
+ blurTintToken,
18
+ defaultTintToken: 'surfaceTranslucent',
19
+ defaultBlurPreset: 'medium',
20
+ });
9
21
  const resolvedActions = useMemo(() => {
10
22
  if (actions && actions.length > 0) {
11
23
  return actions;
@@ -32,10 +44,17 @@ export function ConfirmActionSheet({ open, onOpenChange, title, description, act
32
44
  onOpenChange(false);
33
45
  }
34
46
  };
35
- return (_jsx(Modal, { visible: open, transparent: true, animationType: "fade", onRequestClose: handleClose, children: _jsxs(View, { className: "flex-1 justify-end bg-black/40", children: [_jsx(Pressable, { className: "flex-1", onPress: handleClose }), _jsxs(View, { className: cn('rounded-t-lg border border-border bg-background px-4 pt-4', className), style: [{ paddingBottom: Math.max(insets.bottom, 12) }, style], ...props, children: [_jsxs(View, { className: "mb-4 gap-1.5", children: [_jsx(Text, { className: "text-base font-semibold text-foreground", children: title }), description ? (_jsx(Text, { className: "text-sm text-muted-foreground", children: description })) : null] }), _jsx(View, { className: "gap-2", children: resolvedActions.map((action) => {
47
+ return (_jsx(Modal, { visible: open, transparent: true, animationType: "fade", onRequestClose: handleClose, children: _jsxs(View, { className: "flex-1 justify-end", style: { backgroundColor: colors.overlay }, children: [_jsx(Pressable, { className: "flex-1", onPress: handleClose }), _jsxs(View, { className: cn('rounded-t-lg border border-border px-4 pt-4 relative overflow-hidden', frosted ? 'bg-transparent' : 'bg-background', className), style: [
48
+ { paddingBottom: Math.max(insets.bottom, 12) },
49
+ frostedSurface.surfaceStyle,
50
+ style,
51
+ ], ...props, children: [frostedSurface.overlay, _jsxs(View, { className: "mb-4 gap-1.5", children: [_jsx(Text, { className: "text-base font-semibold text-foreground", children: title }), description ? (_jsx(Text, { className: "text-sm text-muted-foreground", children: description })) : null] }), _jsx(View, { className: "gap-2", children: resolvedActions.map((action) => {
36
52
  const isDestructive = action.variant === 'destructive';
37
53
  const isCancel = action.variant === 'cancel';
38
- return (_jsx(Pressable, { className: cn('min-h-11 items-center justify-center rounded-md border px-4 py-2 active:opacity-70', isCancel ? 'border-border bg-muted' : 'border-transparent bg-secondary', isDestructive && 'bg-destructive/10 border-destructive/30', action.disabled && 'opacity-50'), onPress: () => handleActionPress(action), disabled: action.disabled, accessibilityRole: "button", children: _jsx(Text, { className: cn('text-sm font-medium', isCancel ? 'text-foreground' : 'text-secondary-foreground', isDestructive && 'text-destructive'), children: action.label }) }, action.key));
54
+ return (_jsx(Pressable, { className: cn('min-h-11 items-center justify-center rounded-md border px-4 py-2', isCancel ? 'border-border bg-muted' : 'border-transparent bg-secondary', isDestructive && 'bg-destructive-soft border-destructive-soft-border', action.disabled && ''), style: withInteractivePressableStyle(undefined, interaction, {
55
+ disabled: Boolean(action.disabled),
56
+ pressedVariant: 'default',
57
+ }), onPress: () => handleActionPress(action), disabled: action.disabled, accessibilityRole: "button", children: _jsx(Text, { className: cn('text-sm font-medium', isCancel ? 'text-foreground' : 'text-secondary-foreground', isDestructive && 'text-destructive'), children: action.label }) }, action.key));
39
58
  }) })] })] }) }));
40
59
  }
41
60
  //# sourceMappingURL=confirm-action-sheet.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"confirm-action-sheet.js","sourceRoot":"","sources":["../../../src/blocks/layout/confirm-action-sheet.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"confirm-action-sheet.js","sourceRoot":"","sources":["../../../src/blocks/layout/confirm-action-sheet.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"form-modal-screen.d.ts","sourceRoot":"","sources":["../../../src/blocks/layout/form-modal-screen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAoD,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAMhG,MAAM,WAAW,oBAAqB,SAAQ,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8EAA8E;IAC9E,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gGAAgG;IAChG,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,OAAO,EACP,OAAe,EACf,MAAc,EACd,UAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,aAAoB,EACpB,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,oBAAoB,2CAoEtB;AAED,OAAO,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"form-modal-screen.d.ts","sourceRoot":"","sources":["../../../src/blocks/layout/form-modal-screen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAoD,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAQhG,MAAM,WAAW,oBAAqB,SAAQ,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8EAA8E;IAC9E,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gGAAgG;IAChG,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,OAAO,EACP,OAAe,EACf,MAAc,EACd,UAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,aAAoB,EACpB,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,oBAAoB,2CA0FtB;AAED,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -4,9 +4,31 @@ import { SafeAreaView, SafeAreaProvider } from 'react-native-safe-area-context';
4
4
  import { Text } from '../../components/text';
5
5
  import { Spinner } from '../../components/spinner';
6
6
  import { cn } from '../../lib/cn';
7
+ import { useInteractionTokens, withInteractivePressableStyle } from '../../lib/interaction-tokens';
8
+ import { useVisualTokens } from '../../lib/visual-tokens';
7
9
  function FormModalScreen({ className, title, subtitle, leftSlot, rightSlot, onClose, loading = false, saving = false, savingText = 'Saving...', loadingSpinnerColor, savingSpinnerColor, scrollEnabled = true, children, ...props }) {
8
10
  const { height: screenHeight } = useWindowDimensions();
9
- const content = loading ? (_jsx(SafeAreaView, { style: { flex: 1 }, className: "bg-background", edges: ['top'], children: _jsx(View, { style: { flex: 1 }, className: "items-center justify-center", children: _jsx(Spinner, { color: loadingSpinnerColor }) }) })) : (_jsxs(SafeAreaView, { style: { flex: 1 }, className: cn('bg-background', className), edges: ['top'], ...props, children: [_jsxs(View, { className: "flex-row items-center px-4 py-3 border-b border-border", children: [_jsx(View, { className: "w-12", children: leftSlot ? (leftSlot) : onClose ? (_jsx(Pressable, { onPress: onClose, disabled: saving, className: "p-2 -m-2 active:opacity-50 min-w-[44px] min-h-[44px] items-center justify-center", accessibilityRole: "button", accessibilityLabel: "Close", children: _jsx(Text, { className: "text-foreground text-xl font-medium", children: "\u00D7" }) })) : null }), _jsxs(View, { className: "flex-1 items-center", children: [_jsx(Text, { variant: "title", className: "text-center", children: title }), subtitle && (_jsx(Text, { variant: "caption", className: "text-center text-muted-foreground", children: subtitle }))] }), _jsx(View, { className: "w-12 items-end", children: rightSlot })] }), saving && (_jsxs(View, { className: "bg-primary px-4 py-2 flex-row items-center justify-center gap-2", children: [_jsx(Spinner, { size: "sm", color: savingSpinnerColor }), _jsx(Text, { className: "text-primary-foreground text-sm", children: savingText })] })), _jsx(ScrollView, { style: { flex: 1 }, contentContainerStyle: { padding: 16, minHeight: screenHeight * 0.4 }, scrollEnabled: !saving && scrollEnabled, keyboardShouldPersistTaps: "handled", children: children })] }));
11
+ const interaction = useInteractionTokens();
12
+ const visual = useVisualTokens();
13
+ const content = loading ? (_jsx(SafeAreaView, { style: { flex: 1 }, className: "bg-background", edges: ['top'], children: _jsx(View, { style: { flex: 1 }, className: "items-center justify-center", children: _jsx(Spinner, { color: loadingSpinnerColor }) }) })) : (_jsxs(SafeAreaView, { style: { flex: 1 }, className: cn('bg-background', className), edges: ['top'], ...props, children: [_jsxs(View, { className: "flex-row items-center px-4 py-3 border-b border-border", children: [_jsx(View, { className: "w-12", children: leftSlot ? (leftSlot) : onClose ? (_jsx(Pressable, { onPress: onClose, disabled: saving, className: "p-2 -m-2 items-center justify-center", style: (state) => {
14
+ const interactiveStyle = withInteractivePressableStyle(undefined, interaction, {
15
+ disabled: saving,
16
+ pressedVariant: 'default',
17
+ });
18
+ const resolved = typeof interactiveStyle === 'function'
19
+ ? interactiveStyle(state)
20
+ : interactiveStyle;
21
+ return [
22
+ {
23
+ minWidth: visual.touchTargetMinSize,
24
+ minHeight: visual.touchTargetMinSize,
25
+ },
26
+ resolved,
27
+ ];
28
+ }, accessibilityRole: "button", accessibilityLabel: "Close", children: _jsx(Text, { className: "text-foreground text-xl font-medium", children: "\u00D7" }) })) : null }), _jsxs(View, { className: "flex-1 items-center", children: [_jsx(Text, { variant: "title", className: "text-center", children: title }), subtitle && (_jsx(Text, { variant: "caption", className: "text-center text-muted-foreground", children: subtitle }))] }), _jsx(View, { className: "w-12 items-end", children: rightSlot })] }), saving && (_jsxs(View, { className: "bg-primary px-4 py-2 flex-row items-center justify-center gap-2", children: [_jsx(Spinner, { size: "sm", color: savingSpinnerColor }), _jsx(Text, { className: "text-primary-foreground text-sm", children: savingText })] })), _jsx(ScrollView, { style: { flex: 1 }, contentContainerStyle: {
29
+ padding: 16,
30
+ minHeight: screenHeight * visual.formModalContentMinHeightRatio,
31
+ }, scrollEnabled: !saving && scrollEnabled, keyboardShouldPersistTaps: "handled", children: children })] }));
10
32
  return (_jsx(SafeAreaProvider, { style: { flex: 1, minHeight: screenHeight }, children: content }));
11
33
  }
12
34
  export { FormModalScreen };
@@ -1 +1 @@
1
- {"version":3,"file":"form-modal-screen.js","sourceRoot":"","sources":["../../../src/blocks/layout/form-modal-screen.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,mBAAmB,EAAkB,MAAM,cAAc,CAAC;AAChG,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAChF,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAoBlC,SAAS,eAAe,CAAC,EACvB,SAAS,EACT,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,OAAO,EACP,OAAO,GAAG,KAAK,EACf,MAAM,GAAG,KAAK,EACd,UAAU,GAAG,WAAW,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,GAAG,IAAI,EACpB,QAAQ,EACR,GAAG,KAAK,EACa;IACrB,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,mBAAmB,EAAE,CAAC;IAEvD,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CACxB,KAAC,YAAY,IAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,SAAS,EAAC,eAAe,EAAC,KAAK,EAAE,CAAC,KAAK,CAAC,YACxE,KAAC,IAAI,IAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,SAAS,EAAC,6BAA6B,YAC/D,KAAC,OAAO,IAAC,KAAK,EAAE,mBAAmB,GAAI,GAClC,GACM,CAChB,CAAC,CAAC,CAAC,CACF,MAAC,YAAY,IACX,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAClB,SAAS,EAAE,EAAE,CAAC,eAAe,EAAE,SAAS,CAAC,EACzC,KAAK,EAAE,CAAC,KAAK,CAAC,KACV,KAAK,aAET,MAAC,IAAI,IAAC,SAAS,EAAC,wDAAwD,aACtE,KAAC,IAAI,IAAC,SAAS,EAAC,MAAM,YACnB,QAAQ,CAAC,CAAC,CAAC,CACV,QAAQ,CACT,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CACZ,KAAC,SAAS,IACR,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAC,kFAAkF,EAC5F,iBAAiB,EAAC,QAAQ,EAC1B,kBAAkB,EAAC,OAAO,YAE1B,KAAC,IAAI,IAAC,SAAS,EAAC,qCAAqC,uBAAS,GACpD,CACb,CAAC,CAAC,CAAC,IAAI,GACH,EAEP,MAAC,IAAI,IAAC,SAAS,EAAC,qBAAqB,aACnC,KAAC,IAAI,IAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,aAAa,YAC1C,KAAK,GACD,EACN,QAAQ,IAAI,CACX,KAAC,IAAI,IAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,mCAAmC,YAClE,QAAQ,GACJ,CACR,IACI,EAEP,KAAC,IAAI,IAAC,SAAS,EAAC,gBAAgB,YAAE,SAAS,GAAQ,IAC9C,EAEN,MAAM,IAAI,CACT,MAAC,IAAI,IAAC,SAAS,EAAC,iEAAiE,aAC/E,KAAC,OAAO,IAAC,IAAI,EAAC,IAAI,EAAC,KAAK,EAAE,kBAAkB,GAAI,EAChD,KAAC,IAAI,IAAC,SAAS,EAAC,iCAAiC,YAAE,UAAU,GAAQ,IAChE,CACR,EAED,KAAC,UAAU,IACT,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAClB,qBAAqB,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,YAAY,GAAG,GAAG,EAAE,EACrE,aAAa,EAAE,CAAC,MAAM,IAAI,aAAa,EACvC,yBAAyB,EAAC,SAAS,YAElC,QAAQ,GACE,IACA,CAChB,CAAC;IAEF,OAAO,CACL,KAAC,gBAAgB,IAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,YAAG,OAAO,GAAoB,CAC5F,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"form-modal-screen.js","sourceRoot":"","sources":["../../../src/blocks/layout/form-modal-screen.tsx"],"names":[],"mappings":"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"}
@@ -2,7 +2,8 @@ export { AppShell, type AppShellProps } from './app-shell';
2
2
  export { ActionBar, type ActionBarProps } from './action-bar';
3
3
  export { ConfirmActionSheet, type ConfirmActionSheetAction, type ConfirmActionSheetActionVariant, type ConfirmActionSheetProps, } from './confirm-action-sheet';
4
4
  export { ContentSkeleton, type ContentSkeletonProps } from './content-skeleton';
5
- export { PageSkeleton, type PageSkeletonProps, type PageSkeletonVariant, type PageSkeletonPadding, } from './page-skeleton';
5
+ export { PageSkeleton, type PageSkeletonProps, type PageSkeletonHeaderPlaceholder, type PageSkeletonVariant, type PageSkeletonPadding, } from './page-skeleton';
6
+ export { ScreenSkeleton, type ScreenSkeletonProps } from './screen-skeleton';
6
7
  export { ErrorBoundary, type ErrorBoundaryProps } from './error-boundary';
7
8
  export { EmptyState, type EmptyStateProps } from './empty-state';
8
9
  export { ErrorState, type ErrorStateProps } from './error-state';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/blocks/layout/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EACL,kBAAkB,EAClB,KAAK,wBAAwB,EAC7B,KAAK,+BAA+B,EACpC,KAAK,uBAAuB,GAC7B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,EACL,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,GACzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EACL,uBAAuB,EACvB,KAAK,4BAA4B,GAClC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACpF,YAAY,EACV,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,GAChB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EACL,gBAAgB,EAChB,KAAK,qBAAqB,EAC1B,KAAK,eAAe,GACrB,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/blocks/layout/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EACL,kBAAkB,EAClB,KAAK,wBAAwB,EAC7B,KAAK,+BAA+B,EACpC,KAAK,uBAAuB,GAC7B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,EACL,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,6BAA6B,EAClC,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,GACzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EACL,uBAAuB,EACvB,KAAK,4BAA4B,GAClC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACpF,YAAY,EACV,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,GAChB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EACL,gBAAgB,EAChB,KAAK,qBAAqB,EAC1B,KAAK,eAAe,GACrB,MAAM,qBAAqB,CAAC"}
@@ -3,6 +3,7 @@ export { ActionBar } from './action-bar';
3
3
  export { ConfirmActionSheet, } from './confirm-action-sheet';
4
4
  export { ContentSkeleton } from './content-skeleton';
5
5
  export { PageSkeleton, } from './page-skeleton';
6
+ export { ScreenSkeleton } from './screen-skeleton';
6
7
  export { ErrorBoundary } from './error-boundary';
7
8
  export { EmptyState } from './empty-state';
8
9
  export { ErrorState } from './error-state';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/blocks/layout/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAsB,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAuB,MAAM,cAAc,CAAC;AAC9D,OAAO,EACL,kBAAkB,GAInB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAA6B,MAAM,oBAAoB,CAAC;AAChF,OAAO,EACL,YAAY,GAIb,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,aAAa,EAA2B,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAwB,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,UAAU,EAAwB,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,eAAe,EAA6B,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,aAAa,EAA2B,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EACL,uBAAuB,GAExB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAQpF,OAAO,EAAE,UAAU,EAAwB,MAAM,eAAe,CAAC;AACjE,OAAO,EACL,gBAAgB,GAGjB,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/blocks/layout/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAsB,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAuB,MAAM,cAAc,CAAC;AAC9D,OAAO,EACL,kBAAkB,GAInB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAA6B,MAAM,oBAAoB,CAAC;AAChF,OAAO,EACL,YAAY,GAKb,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,cAAc,EAA4B,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAA2B,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAwB,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,UAAU,EAAwB,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,eAAe,EAA6B,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,aAAa,EAA2B,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EACL,uBAAuB,GAExB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAQpF,OAAO,EAAE,UAAU,EAAwB,MAAM,eAAe,CAAC;AACjE,OAAO,EACL,gBAAgB,GAGjB,MAAM,qBAAqB,CAAC"}
@@ -1,14 +1,20 @@
1
1
  import { type ViewProps } from 'react-native';
2
+ import { type ReactNode } from 'react';
2
3
  export type PageSkeletonVariant = 'dashboard' | 'list' | 'settings' | 'card' | 'generic';
3
4
  export type PageSkeletonPadding = 'none' | 'sm' | 'default' | 'lg';
5
+ export type PageSkeletonHeaderPlaceholder = 'compact' | 'default';
4
6
  export interface PageSkeletonProps extends ViewProps {
5
7
  variant: PageSkeletonVariant;
6
8
  /** Rows/items for list (default 3) or settings (default 4) variant. */
7
9
  count?: number;
8
10
  /** Container padding. */
9
11
  padding?: PageSkeletonPadding;
12
+ /** Optional header slot rendered above skeleton content. */
13
+ header?: ReactNode;
14
+ /** Optional placeholder header (when no real header is available yet). */
15
+ headerPlaceholder?: boolean | PageSkeletonHeaderPlaceholder;
10
16
  }
11
- export declare function PageSkeleton({ variant, count, padding, className, ...props }: PageSkeletonProps): import("react/jsx-runtime").JSX.Element;
17
+ export declare function PageSkeleton({ variant, count, padding, header, headerPlaceholder, className, ...props }: PageSkeletonProps): import("react/jsx-runtime").JSX.Element;
12
18
  export declare namespace PageSkeleton {
13
19
  var displayName: string;
14
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"page-skeleton.d.ts","sourceRoot":"","sources":["../../../src/blocks/layout/page-skeleton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAQpD,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC;AACzF,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAAC;AAEnE,MAAM,WAAW,iBAAkB,SAAQ,SAAS;IAClD,OAAO,EAAE,mBAAmB,CAAC;IAC7B,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yBAAyB;IACzB,OAAO,CAAC,EAAE,mBAAmB,CAAC;CAC/B;AAiJD,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,KAAK,EACL,OAAmB,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,iBAAiB,2CA8BnB;yBApCe,YAAY"}
1
+ {"version":3,"file":"page-skeleton.d.ts","sourceRoot":"","sources":["../../../src/blocks/layout/page-skeleton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAQvC,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC;AACzF,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAAC;AACnE,MAAM,MAAM,6BAA6B,GAAG,SAAS,GAAG,SAAS,CAAC;AAElE,MAAM,WAAW,iBAAkB,SAAQ,SAAS;IAClD,OAAO,EAAE,mBAAmB,CAAC;IAC7B,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yBAAyB;IACzB,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B,4DAA4D;IAC5D,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,0EAA0E;IAC1E,iBAAiB,CAAC,EAAE,OAAO,GAAG,6BAA6B,CAAC;CAC7D;AAoKD,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,KAAK,EACL,OAAmB,EACnB,MAAM,EACN,iBAAyB,EACzB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,iBAAiB,2CAqBnB;yBA7Be,YAAY"}
@@ -10,6 +10,10 @@ const PADDING_CLASS = {
10
10
  default: 'p-4',
11
11
  lg: 'p-6',
12
12
  };
13
+ function HeaderPlaceholder({ variant }) {
14
+ const compact = variant === 'compact';
15
+ return (_jsx(View, { className: cn(compact ? 'px-4 pt-3 pb-2' : 'px-4 pt-4 pb-3'), children: _jsxs(Row, { align: "center", justify: "between", children: [_jsxs(Row, { align: "center", gap: "sm", children: [_jsx(Skeleton, { className: cn('rounded-full', compact ? 'h-8 w-8' : 'h-10 w-10') }), _jsxs(Stack, { gap: "xs", children: [_jsx(Skeleton, { className: cn('h-3 rounded-full', compact ? 'w-24' : 'w-28') }), _jsx(Skeleton, { className: cn('h-3 rounded-full', compact ? 'w-16' : 'w-20') })] })] }), _jsx(Skeleton, { className: cn('rounded-full', compact ? 'h-8 w-8' : 'h-10 w-10') })] }) }));
16
+ }
13
17
  // ─── Variant internals ────────────────────────────────────────
14
18
  function DashboardVariant({ className, padding = 'default', ...props }) {
15
19
  return (_jsx(View, { className: cn(PADDING_CLASS[padding], className), ...props, children: _jsxs(Stack, { gap: "md", children: [_jsxs(View, { className: "rounded-2xl border border-border bg-card p-4", children: [_jsxs(Row, { className: "mb-3 gap-2", align: "center", children: [_jsx(Skeleton, { className: "h-6 w-16 rounded-full" }), _jsx(Skeleton, { className: "h-6 w-20 rounded-full" }), _jsx(Skeleton, { className: "h-6 w-14 rounded-full" })] }), _jsx(Skeleton, { className: "h-4 w-full" }), _jsx(Skeleton, { className: "mt-1 h-4 w-4/5" })] }), _jsx(Row, { gap: "sm", align: "stretch", children: [1, 2, 3].map((i) => (_jsxs(View, { className: "flex-1 rounded-2xl border border-border bg-card p-3", children: [_jsx(Skeleton, { className: "mb-2 h-3 w-2/3" }), _jsx(Skeleton, { className: "h-6 w-1/2" })] }, i))) }), _jsx(Skeleton, { className: "h-4 w-1/3" }), [1, 2, 3].map((i) => (_jsxs(Row, { className: "items-center gap-3 py-3", align: "center", children: [_jsx(Skeleton, { className: "h-10 w-10 shrink-0 rounded-full" }), _jsxs(Stack, { className: "flex-1", gap: "xs", children: [_jsx(Skeleton, { className: "h-4 w-3/4" }), _jsx(Skeleton, { className: "h-3 w-1/2" })] })] }, i)))] }) }));
@@ -27,20 +31,9 @@ function GenericVariant({ className, padding = 'default', ...props }) {
27
31
  return (_jsx(View, { className: cn(PADDING_CLASS[padding], className), ...props, children: _jsxs(Stack, { gap: "lg", children: [_jsx(Skeleton, { className: "h-6 w-1/2" }), _jsxs(Stack, { gap: "sm", children: [_jsx(Skeleton, { className: "h-4 w-full" }), _jsx(Skeleton, { className: "h-4 w-5/6" }), _jsx(Skeleton, { className: "h-4 w-4/5" })] })] }) }));
28
32
  }
29
33
  // ─── Component ───────────────────────────────────────────────
30
- export function PageSkeleton({ variant, count, padding = 'default', className, ...props }) {
31
- if (variant === 'dashboard') {
32
- return _jsx(DashboardVariant, { padding: padding, className: className, ...props });
33
- }
34
- if (variant === 'list') {
35
- return (_jsx(ListVariant, { variant: "list", count: count ?? 3, padding: padding, className: className, ...props }));
36
- }
37
- if (variant === 'settings') {
38
- return (_jsx(SettingsVariant, { variant: "settings", count: count ?? 4, padding: padding, className: className, ...props }));
39
- }
40
- if (variant === 'card') {
41
- return _jsx(CardVariant, { padding: padding, className: className, ...props });
42
- }
43
- return _jsx(GenericVariant, { padding: padding, className: className, ...props });
34
+ export function PageSkeleton({ variant, count, padding = 'default', header, headerPlaceholder = false, className, ...props }) {
35
+ const resolvedHeaderPlaceholder = headerPlaceholder === 'compact' ? 'compact' : 'default';
36
+ return (_jsxs(View, { className: cn('w-full', className), ...props, children: [header, !header && headerPlaceholder && _jsx(HeaderPlaceholder, { variant: resolvedHeaderPlaceholder }), variant === 'dashboard' ? (_jsx(DashboardVariant, { padding: padding })) : variant === 'list' ? (_jsx(ListVariant, { variant: "list", count: count ?? 3, padding: padding })) : variant === 'settings' ? (_jsx(SettingsVariant, { variant: "settings", count: count ?? 4, padding: padding })) : variant === 'card' ? (_jsx(CardVariant, { padding: padding })) : (_jsx(GenericVariant, { padding: padding }))] }));
44
37
  }
45
38
  PageSkeleton.displayName = 'PageSkeleton';
46
39
  //# sourceMappingURL=page-skeleton.js.map