@ankhorage/zora 10.0.0 → 12.0.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 (401) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/README.md +2 -1
  3. package/dist/constants.d.ts +4 -0
  4. package/dist/constants.d.ts.map +1 -1
  5. package/dist/constants.js +4 -0
  6. package/dist/constants.js.map +1 -1
  7. package/dist/features/bottom-sheet/bottomSheetMeta.d.ts +1 -1
  8. package/dist/features/card/cardMeta.d.ts +1 -1
  9. package/dist/features/card/mediaCardMeta.d.ts +1 -1
  10. package/dist/features/card/postCardMeta.d.ts +1 -1
  11. package/dist/features/data-table/adapters/inbound/DataTable.d.ts.map +1 -1
  12. package/dist/features/data-table/adapters/inbound/DataTable.js +1 -1
  13. package/dist/features/data-table/adapters/inbound/DataTable.js.map +1 -1
  14. package/dist/{components/date-picker → features/date-picker/adapters/inbound}/DatePicker.d.ts +1 -1
  15. package/dist/features/date-picker/adapters/inbound/DatePicker.d.ts.map +1 -0
  16. package/dist/{components/date-picker → features/date-picker/adapters/inbound}/DatePicker.js +23 -26
  17. package/dist/features/date-picker/adapters/inbound/DatePicker.js.map +1 -0
  18. package/dist/features/date-picker/datePickerMeta.d.ts +83 -0
  19. package/dist/features/date-picker/datePickerMeta.d.ts.map +1 -0
  20. package/dist/features/date-picker/datePickerMeta.js +57 -0
  21. package/dist/features/date-picker/datePickerMeta.js.map +1 -0
  22. package/dist/features/date-picker/public.d.ts +3 -0
  23. package/dist/features/date-picker/public.d.ts.map +1 -0
  24. package/dist/features/date-picker/public.js +2 -0
  25. package/dist/features/date-picker/public.js.map +1 -0
  26. package/dist/features/date-picker/utils/localDate.d.ts +5 -0
  27. package/dist/features/date-picker/utils/localDate.d.ts.map +1 -0
  28. package/dist/features/date-picker/utils/localDate.js +27 -0
  29. package/dist/features/date-picker/utils/localDate.js.map +1 -0
  30. package/dist/features/form/adapters/inbound/Form.d.ts +5 -0
  31. package/dist/features/form/adapters/inbound/Form.d.ts.map +1 -0
  32. package/dist/features/form/adapters/inbound/Form.js +18 -0
  33. package/dist/features/form/adapters/inbound/Form.js.map +1 -0
  34. package/dist/{components/form → features/form/adapters/inbound}/FormActions.d.ts +1 -1
  35. package/dist/features/form/adapters/inbound/FormActions.d.ts.map +1 -0
  36. package/dist/{components/form → features/form/adapters/inbound}/FormActions.js +3 -3
  37. package/dist/features/form/adapters/inbound/FormActions.js.map +1 -0
  38. package/dist/features/form/adapters/inbound/FormError.d.ts +5 -0
  39. package/dist/features/form/adapters/inbound/FormError.d.ts.map +1 -0
  40. package/dist/features/form/adapters/inbound/FormError.js +18 -0
  41. package/dist/features/form/adapters/inbound/FormError.js.map +1 -0
  42. package/dist/features/form/adapters/inbound/FormField.d.ts +5 -0
  43. package/dist/features/form/adapters/inbound/FormField.d.ts.map +1 -0
  44. package/dist/{patterns/form-field → features/form/adapters/inbound}/FormField.js +5 -4
  45. package/dist/features/form/adapters/inbound/FormField.js.map +1 -0
  46. package/dist/features/form/formActionsMeta.d.ts +9 -0
  47. package/dist/features/form/formActionsMeta.d.ts.map +1 -0
  48. package/dist/features/form/formActionsMeta.js +9 -0
  49. package/dist/features/form/formActionsMeta.js.map +1 -0
  50. package/dist/features/form/formErrorMeta.d.ts +32 -0
  51. package/dist/features/form/formErrorMeta.d.ts.map +1 -0
  52. package/dist/features/form/formErrorMeta.js +19 -0
  53. package/dist/features/form/formErrorMeta.js.map +1 -0
  54. package/dist/{components/form/meta.d.ts → features/form/formFieldMeta.d.ts} +28 -39
  55. package/dist/features/form/formFieldMeta.d.ts.map +1 -0
  56. package/dist/features/form/formFieldMeta.js +35 -0
  57. package/dist/features/form/formFieldMeta.js.map +1 -0
  58. package/dist/features/form/formMeta.d.ts +61 -0
  59. package/dist/features/form/formMeta.d.ts.map +1 -0
  60. package/dist/features/form/formMeta.js +34 -0
  61. package/dist/features/form/formMeta.js.map +1 -0
  62. package/dist/features/form/public.d.ts +8 -0
  63. package/dist/features/form/public.d.ts.map +1 -0
  64. package/dist/features/form/public.js +7 -0
  65. package/dist/features/form/public.js.map +1 -0
  66. package/dist/{components → features}/form/useFormController.d.ts +1 -1
  67. package/dist/features/form/useFormController.d.ts.map +1 -0
  68. package/dist/{components → features}/form/useFormController.js +1 -1
  69. package/dist/features/form/useFormController.js.map +1 -0
  70. package/dist/{components/form → features/form/utils}/validation.d.ts +1 -1
  71. package/dist/features/form/utils/validation.d.ts.map +1 -0
  72. package/dist/{components/form → features/form/utils}/validation.js +2 -4
  73. package/dist/features/form/utils/validation.js.map +1 -0
  74. package/dist/{patterns/hero → features/hero/adapters/inbound}/Hero.d.ts +1 -1
  75. package/dist/features/hero/adapters/inbound/Hero.d.ts.map +1 -0
  76. package/dist/{patterns/hero → features/hero/adapters/inbound}/Hero.js +5 -6
  77. package/dist/features/hero/adapters/inbound/Hero.js.map +1 -0
  78. package/dist/{patterns/hero/meta.d.ts → features/hero/heroMeta.d.ts} +1 -1
  79. package/dist/features/hero/heroMeta.d.ts.map +1 -0
  80. package/dist/{patterns/hero/meta.js → features/hero/heroMeta.js} +1 -1
  81. package/dist/features/hero/heroMeta.js.map +1 -0
  82. package/dist/features/hero/public.d.ts +3 -0
  83. package/dist/features/hero/public.d.ts.map +1 -0
  84. package/dist/features/hero/public.js +2 -0
  85. package/dist/features/hero/public.js.map +1 -0
  86. package/dist/features/keyboard-avoiding-view/keyboardAvoidingViewMeta.d.ts +1 -1
  87. package/dist/features/layout/boxMeta.d.ts +1 -1
  88. package/dist/features/layout/containerMeta.d.ts +1 -1
  89. package/dist/features/layout/gridMeta.d.ts +1 -1
  90. package/dist/features/layout/stackMeta.d.ts +1 -1
  91. package/dist/features/list/flatListMeta.d.ts +1 -1
  92. package/dist/features/list/sectionListMeta.d.ts +1 -1
  93. package/dist/{patterns/missing-element → features/missing-element/adapters/inbound}/MissingElement.d.ts +1 -1
  94. package/dist/features/missing-element/adapters/inbound/MissingElement.d.ts.map +1 -0
  95. package/dist/{patterns/missing-element → features/missing-element/adapters/inbound}/MissingElement.js +5 -5
  96. package/dist/features/missing-element/adapters/inbound/MissingElement.js.map +1 -0
  97. package/dist/{patterns/missing-element/meta.d.ts → features/missing-element/missingElementMeta.d.ts} +1 -1
  98. package/dist/features/missing-element/missingElementMeta.d.ts.map +1 -0
  99. package/dist/{patterns/missing-element/meta.js → features/missing-element/missingElementMeta.js} +1 -1
  100. package/dist/features/missing-element/missingElementMeta.js.map +1 -0
  101. package/dist/features/missing-element/public.d.ts +3 -0
  102. package/dist/features/missing-element/public.d.ts.map +1 -0
  103. package/dist/features/missing-element/public.js +2 -0
  104. package/dist/features/missing-element/public.js.map +1 -0
  105. package/dist/{components/skeleton → features/skeleton/adapters/inbound}/Skeleton.d.ts +1 -1
  106. package/dist/features/skeleton/adapters/inbound/Skeleton.d.ts.map +1 -0
  107. package/dist/{components/skeleton → features/skeleton/adapters/inbound}/Skeleton.js +3 -3
  108. package/dist/features/skeleton/adapters/inbound/Skeleton.js.map +1 -0
  109. package/dist/{components/skeleton → features/skeleton/adapters/inbound}/SkeletonCard.d.ts +1 -1
  110. package/dist/features/skeleton/adapters/inbound/SkeletonCard.d.ts.map +1 -0
  111. package/dist/{components/skeleton → features/skeleton/adapters/inbound}/SkeletonCard.js +4 -4
  112. package/dist/features/skeleton/adapters/inbound/SkeletonCard.js.map +1 -0
  113. package/dist/{components/skeleton → features/skeleton/adapters/inbound}/SkeletonList.d.ts +1 -1
  114. package/dist/features/skeleton/adapters/inbound/SkeletonList.d.ts.map +1 -0
  115. package/dist/{components/skeleton → features/skeleton/adapters/inbound}/SkeletonList.js +2 -2
  116. package/dist/features/skeleton/adapters/inbound/SkeletonList.js.map +1 -0
  117. package/dist/{components/skeleton → features/skeleton/adapters/inbound}/SkeletonText.d.ts +1 -1
  118. package/dist/features/skeleton/adapters/inbound/SkeletonText.d.ts.map +1 -0
  119. package/dist/{components/skeleton → features/skeleton/adapters/inbound}/SkeletonText.js +2 -2
  120. package/dist/features/skeleton/adapters/inbound/SkeletonText.js.map +1 -0
  121. package/dist/features/skeleton/public.d.ts +6 -0
  122. package/dist/features/skeleton/public.d.ts.map +1 -0
  123. package/dist/features/skeleton/public.js +5 -0
  124. package/dist/features/skeleton/public.js.map +1 -0
  125. package/dist/features/skeleton/skeletonMeta.d.ts +178 -0
  126. package/dist/features/skeleton/skeletonMeta.d.ts.map +1 -0
  127. package/dist/features/skeleton/skeletonMeta.js +84 -0
  128. package/dist/features/skeleton/skeletonMeta.js.map +1 -0
  129. package/dist/features/surface/surfaceMeta.d.ts +1 -1
  130. package/dist/{components/time-picker → features/time-picker/adapters/inbound}/TimePicker.d.ts +1 -1
  131. package/dist/features/time-picker/adapters/inbound/TimePicker.d.ts.map +1 -0
  132. package/dist/{components/time-picker → features/time-picker/adapters/inbound}/TimePicker.js +8 -11
  133. package/dist/features/time-picker/adapters/inbound/TimePicker.js.map +1 -0
  134. package/dist/features/time-picker/public.d.ts +3 -0
  135. package/dist/features/time-picker/public.d.ts.map +1 -0
  136. package/dist/features/time-picker/public.js +2 -0
  137. package/dist/features/time-picker/public.js.map +1 -0
  138. package/dist/features/time-picker/timePickerMeta.d.ts +90 -0
  139. package/dist/features/time-picker/timePickerMeta.d.ts.map +1 -0
  140. package/dist/features/time-picker/timePickerMeta.js +64 -0
  141. package/dist/features/time-picker/timePickerMeta.js.map +1 -0
  142. package/dist/features/uploader/adapters/inbound/Uploader.d.ts.map +1 -1
  143. package/dist/features/uploader/adapters/inbound/Uploader.js +1 -1
  144. package/dist/features/uploader/adapters/inbound/Uploader.js.map +1 -1
  145. package/dist/index.d.ts +7 -12
  146. package/dist/index.d.ts.map +1 -1
  147. package/dist/index.js +6 -6
  148. package/dist/index.js.map +1 -1
  149. package/dist/layout/screen/meta.d.ts +1 -1
  150. package/dist/layout/screen-section/meta.d.ts +1 -1
  151. package/dist/metadata/allowedChildren.d.ts +3 -3
  152. package/dist/metadata/allowedChildren.d.ts.map +1 -1
  153. package/dist/metadata/allowedChildren.js +8 -1
  154. package/dist/metadata/allowedChildren.js.map +1 -1
  155. package/dist/metadata/bindableComponentMeta.d.ts +2 -2
  156. package/dist/metadata/componentMeta.d.ts.map +1 -1
  157. package/dist/metadata/componentMeta.js +9 -6
  158. package/dist/metadata/componentMeta.js.map +1 -1
  159. package/dist/patterns/auth/AuthForm.d.ts +21 -0
  160. package/dist/patterns/auth/AuthForm.d.ts.map +1 -0
  161. package/dist/patterns/auth/AuthForm.js +19 -0
  162. package/dist/patterns/auth/AuthForm.js.map +1 -0
  163. package/dist/patterns/auth/AuthFormField.d.ts +16 -0
  164. package/dist/patterns/auth/AuthFormField.d.ts.map +1 -0
  165. package/dist/patterns/auth/AuthFormField.js +38 -0
  166. package/dist/patterns/auth/AuthFormField.js.map +1 -0
  167. package/dist/patterns/auth/ForgotPasswordForm.d.ts.map +1 -1
  168. package/dist/patterns/auth/ForgotPasswordForm.js +2 -2
  169. package/dist/patterns/auth/ForgotPasswordForm.js.map +1 -1
  170. package/dist/patterns/auth/OtpForm.d.ts.map +1 -1
  171. package/dist/patterns/auth/OtpForm.js +2 -2
  172. package/dist/patterns/auth/OtpForm.js.map +1 -1
  173. package/dist/patterns/auth/SignInForm.d.ts.map +1 -1
  174. package/dist/patterns/auth/SignInForm.js +2 -2
  175. package/dist/patterns/auth/SignInForm.js.map +1 -1
  176. package/dist/patterns/auth/SignUpForm.d.ts.map +1 -1
  177. package/dist/patterns/auth/SignUpForm.js +2 -2
  178. package/dist/patterns/auth/SignUpForm.js.map +1 -1
  179. package/dist/patterns/auth/types.d.ts +1 -1
  180. package/dist/patterns/auth/types.d.ts.map +1 -1
  181. package/dist/patterns/auth/types.js.map +1 -1
  182. package/dist/patterns/auth/utils.d.ts +1 -1
  183. package/dist/patterns/auth/utils.d.ts.map +1 -1
  184. package/dist/patterns/auth/utils.js.map +1 -1
  185. package/dist/patterns/inspector-field/InspectorField.js +1 -1
  186. package/dist/patterns/inspector-field/InspectorField.js.map +1 -1
  187. package/dist/patterns/message-bubble/meta.d.ts +1 -1
  188. package/dist/patterns/notice/meta.d.ts +1 -1
  189. package/dist/patterns/panel/meta.d.ts +1 -1
  190. package/dist/patterns/reader/meta.d.ts +2 -2
  191. package/dist/patterns/scanner/meta.d.ts +2 -2
  192. package/dist/registry.js +6 -6
  193. package/dist/registry.js.map +1 -1
  194. package/dist/{components/date-picker/types.d.ts → types/date-picker.d.ts} +6 -6
  195. package/dist/types/date-picker.d.ts.map +1 -0
  196. package/dist/types/date-picker.js +2 -0
  197. package/dist/types/date-picker.js.map +1 -0
  198. package/dist/{components/form/types.d.ts → types/form.d.ts} +12 -28
  199. package/dist/types/form.d.ts.map +1 -0
  200. package/dist/types/form.js +2 -0
  201. package/dist/types/form.js.map +1 -0
  202. package/dist/{patterns/hero/types.d.ts → types/hero.d.ts} +3 -3
  203. package/dist/types/hero.d.ts.map +1 -0
  204. package/dist/types/hero.js +2 -0
  205. package/dist/types/hero.js.map +1 -0
  206. package/dist/{patterns/missing-element/types.d.ts → types/missing-element.d.ts} +2 -2
  207. package/dist/types/missing-element.d.ts.map +1 -0
  208. package/dist/types/missing-element.js +2 -0
  209. package/dist/types/missing-element.js.map +1 -0
  210. package/dist/{components/skeleton/types.d.ts → types/skeleton.d.ts} +3 -3
  211. package/dist/types/skeleton.d.ts.map +1 -0
  212. package/dist/types/skeleton.js +2 -0
  213. package/dist/types/skeleton.js.map +1 -0
  214. package/dist/{components/time-picker/types.d.ts → types/time-picker.d.ts} +2 -2
  215. package/dist/types/time-picker.d.ts.map +1 -0
  216. package/dist/types/time-picker.js +2 -0
  217. package/dist/types/time-picker.js.map +1 -0
  218. package/package.json +2 -1
  219. package/src/audit.test.ts +2 -4
  220. package/src/constants.ts +4 -0
  221. package/src/featureManifest.test.ts +19 -0
  222. package/src/features/bottom-sheet/public.test.ts +2 -2
  223. package/src/features/data-table/adapters/inbound/DataTable.tsx +1 -1
  224. package/src/{components/date-picker → features/date-picker/adapters/inbound}/DatePicker.tsx +41 -32
  225. package/src/features/date-picker/datePickerMeta.ts +58 -0
  226. package/src/features/date-picker/public.test.ts +15 -0
  227. package/src/features/date-picker/public.ts +2 -0
  228. package/src/features/date-picker/utils/localDate.test.ts +18 -0
  229. package/src/features/date-picker/utils/localDate.ts +29 -0
  230. package/src/features/form/adapters/inbound/Form.tsx +39 -0
  231. package/src/{components/form → features/form/adapters/inbound}/FormActions.tsx +4 -4
  232. package/src/features/form/adapters/inbound/FormError.tsx +22 -0
  233. package/src/{patterns/form-field → features/form/adapters/inbound}/FormField.tsx +6 -4
  234. package/src/{components/date-picker/meta.ts → features/form/formActionsMeta.ts} +3 -4
  235. package/src/features/form/formErrorMeta.ts +19 -0
  236. package/src/features/form/formFieldMeta.ts +35 -0
  237. package/src/features/form/formMeta.ts +34 -0
  238. package/src/{components/form/index.ts → features/form/public.ts} +6 -7
  239. package/src/{components → features}/form/useFormController.ts +2 -2
  240. package/src/{components/form → features/form/utils}/validation.test.ts +4 -1
  241. package/src/{components/form → features/form/utils}/validation.ts +4 -8
  242. package/src/{patterns/hero → features/hero/adapters/inbound}/Hero.tsx +6 -7
  243. package/src/features/hero/public.ts +2 -0
  244. package/src/{patterns → features}/missing-element/MissingElement.test.ts +6 -4
  245. package/src/{patterns/missing-element → features/missing-element/adapters/inbound}/MissingElement.tsx +6 -6
  246. package/src/features/missing-element/public.ts +2 -0
  247. package/src/{components/skeleton → features/skeleton/adapters/inbound}/Skeleton.tsx +4 -4
  248. package/src/{components/skeleton → features/skeleton/adapters/inbound}/SkeletonCard.tsx +5 -5
  249. package/src/{components/skeleton → features/skeleton/adapters/inbound}/SkeletonList.tsx +3 -3
  250. package/src/{components/skeleton → features/skeleton/adapters/inbound}/SkeletonText.tsx +3 -3
  251. package/src/features/skeleton/public.test.ts +24 -0
  252. package/src/features/skeleton/public.ts +13 -0
  253. package/src/features/skeleton/skeletonMeta.ts +88 -0
  254. package/src/{components/time-picker → features/time-picker/adapters/inbound}/TimePicker.tsx +9 -12
  255. package/src/features/time-picker/public.test.ts +14 -0
  256. package/src/features/time-picker/public.ts +2 -0
  257. package/src/features/time-picker/timePickerMeta.ts +65 -0
  258. package/src/features/uploader/adapters/inbound/Uploader.tsx +1 -1
  259. package/src/index.ts +58 -45
  260. package/src/interactionPolicy.test.ts +3 -3
  261. package/src/metadata/allowedChildren.ts +8 -1
  262. package/src/metadata/componentMeta.test.ts +24 -1
  263. package/src/metadata/componentMeta.ts +14 -11
  264. package/src/patterns/auth/AuthForm.tsx +68 -0
  265. package/src/patterns/auth/AuthFormField.tsx +81 -0
  266. package/src/patterns/auth/ForgotPasswordForm.tsx +3 -2
  267. package/src/patterns/auth/OtpForm.tsx +3 -2
  268. package/src/patterns/auth/SignInForm.tsx +3 -2
  269. package/src/patterns/auth/SignUpForm.tsx +3 -2
  270. package/src/patterns/auth/types.ts +1 -1
  271. package/src/patterns/auth/utils.ts +1 -1
  272. package/src/patterns/inspector-field/InspectorField.tsx +1 -1
  273. package/src/registry.ts +6 -6
  274. package/src/theme/themeScopeStructure.test.ts +5 -7
  275. package/src/{components/date-picker/types.ts → types/date-picker.ts} +5 -5
  276. package/src/{components/form/types.ts → types/form.ts} +12 -36
  277. package/src/{patterns/hero/types.ts → types/hero.ts} +2 -2
  278. package/src/{patterns/missing-element/types.ts → types/missing-element.ts} +1 -1
  279. package/src/{components/skeleton/types.ts → types/skeleton.ts} +2 -2
  280. package/src/{components/time-picker/types.ts → types/time-picker.ts} +1 -1
  281. package/dist/components/date-picker/DatePicker.d.ts.map +0 -1
  282. package/dist/components/date-picker/DatePicker.js.map +0 -1
  283. package/dist/components/date-picker/index.d.ts +0 -3
  284. package/dist/components/date-picker/index.d.ts.map +0 -1
  285. package/dist/components/date-picker/index.js +0 -2
  286. package/dist/components/date-picker/index.js.map +0 -1
  287. package/dist/components/date-picker/meta.d.ts +0 -9
  288. package/dist/components/date-picker/meta.d.ts.map +0 -1
  289. package/dist/components/date-picker/meta.js +0 -9
  290. package/dist/components/date-picker/meta.js.map +0 -1
  291. package/dist/components/date-picker/types.d.ts.map +0 -1
  292. package/dist/components/date-picker/types.js +0 -2
  293. package/dist/components/date-picker/types.js.map +0 -1
  294. package/dist/components/form/Form.d.ts +0 -7
  295. package/dist/components/form/Form.d.ts.map +0 -1
  296. package/dist/components/form/Form.js +0 -34
  297. package/dist/components/form/Form.js.map +0 -1
  298. package/dist/components/form/FormActions.d.ts.map +0 -1
  299. package/dist/components/form/FormActions.js.map +0 -1
  300. package/dist/components/form/FormError.d.ts +0 -7
  301. package/dist/components/form/FormError.d.ts.map +0 -1
  302. package/dist/components/form/FormError.js +0 -21
  303. package/dist/components/form/FormError.js.map +0 -1
  304. package/dist/components/form/FormField.d.ts +0 -7
  305. package/dist/components/form/FormField.d.ts.map +0 -1
  306. package/dist/components/form/FormField.js +0 -81
  307. package/dist/components/form/FormField.js.map +0 -1
  308. package/dist/components/form/index.d.ts +0 -8
  309. package/dist/components/form/index.d.ts.map +0 -1
  310. package/dist/components/form/index.js +0 -7
  311. package/dist/components/form/index.js.map +0 -1
  312. package/dist/components/form/meta.d.ts.map +0 -1
  313. package/dist/components/form/meta.js +0 -94
  314. package/dist/components/form/meta.js.map +0 -1
  315. package/dist/components/form/types.d.ts.map +0 -1
  316. package/dist/components/form/types.js +0 -2
  317. package/dist/components/form/types.js.map +0 -1
  318. package/dist/components/form/useFormController.d.ts.map +0 -1
  319. package/dist/components/form/useFormController.js.map +0 -1
  320. package/dist/components/form/validation.d.ts.map +0 -1
  321. package/dist/components/form/validation.js.map +0 -1
  322. package/dist/components/skeleton/Skeleton.d.ts.map +0 -1
  323. package/dist/components/skeleton/Skeleton.js.map +0 -1
  324. package/dist/components/skeleton/SkeletonCard.d.ts.map +0 -1
  325. package/dist/components/skeleton/SkeletonCard.js.map +0 -1
  326. package/dist/components/skeleton/SkeletonList.d.ts.map +0 -1
  327. package/dist/components/skeleton/SkeletonList.js.map +0 -1
  328. package/dist/components/skeleton/SkeletonText.d.ts.map +0 -1
  329. package/dist/components/skeleton/SkeletonText.js.map +0 -1
  330. package/dist/components/skeleton/index.d.ts +0 -6
  331. package/dist/components/skeleton/index.d.ts.map +0 -1
  332. package/dist/components/skeleton/index.js +0 -5
  333. package/dist/components/skeleton/index.js.map +0 -1
  334. package/dist/components/skeleton/meta.d.ts +0 -33
  335. package/dist/components/skeleton/meta.d.ts.map +0 -1
  336. package/dist/components/skeleton/meta.js +0 -33
  337. package/dist/components/skeleton/meta.js.map +0 -1
  338. package/dist/components/skeleton/types.d.ts.map +0 -1
  339. package/dist/components/skeleton/types.js +0 -2
  340. package/dist/components/skeleton/types.js.map +0 -1
  341. package/dist/components/time-picker/TimePicker.d.ts.map +0 -1
  342. package/dist/components/time-picker/TimePicker.js.map +0 -1
  343. package/dist/components/time-picker/index.d.ts +0 -3
  344. package/dist/components/time-picker/index.d.ts.map +0 -1
  345. package/dist/components/time-picker/index.js +0 -2
  346. package/dist/components/time-picker/index.js.map +0 -1
  347. package/dist/components/time-picker/meta.d.ts +0 -9
  348. package/dist/components/time-picker/meta.d.ts.map +0 -1
  349. package/dist/components/time-picker/meta.js +0 -9
  350. package/dist/components/time-picker/meta.js.map +0 -1
  351. package/dist/components/time-picker/types.d.ts.map +0 -1
  352. package/dist/components/time-picker/types.js +0 -2
  353. package/dist/components/time-picker/types.js.map +0 -1
  354. package/dist/patterns/form-field/FormField.d.ts +0 -4
  355. package/dist/patterns/form-field/FormField.d.ts.map +0 -1
  356. package/dist/patterns/form-field/FormField.js.map +0 -1
  357. package/dist/patterns/form-field/index.d.ts +0 -2
  358. package/dist/patterns/form-field/index.d.ts.map +0 -1
  359. package/dist/patterns/form-field/index.js +0 -2
  360. package/dist/patterns/form-field/index.js.map +0 -1
  361. package/dist/patterns/form-field/types.d.ts +0 -9
  362. package/dist/patterns/form-field/types.d.ts.map +0 -1
  363. package/dist/patterns/form-field/types.js +0 -2
  364. package/dist/patterns/form-field/types.js.map +0 -1
  365. package/dist/patterns/hero/Hero.d.ts.map +0 -1
  366. package/dist/patterns/hero/Hero.js.map +0 -1
  367. package/dist/patterns/hero/index.d.ts +0 -3
  368. package/dist/patterns/hero/index.d.ts.map +0 -1
  369. package/dist/patterns/hero/index.js +0 -2
  370. package/dist/patterns/hero/index.js.map +0 -1
  371. package/dist/patterns/hero/meta.d.ts.map +0 -1
  372. package/dist/patterns/hero/meta.js.map +0 -1
  373. package/dist/patterns/hero/types.d.ts.map +0 -1
  374. package/dist/patterns/hero/types.js +0 -2
  375. package/dist/patterns/hero/types.js.map +0 -1
  376. package/dist/patterns/missing-element/MissingElement.d.ts.map +0 -1
  377. package/dist/patterns/missing-element/MissingElement.js.map +0 -1
  378. package/dist/patterns/missing-element/index.d.ts +0 -3
  379. package/dist/patterns/missing-element/index.d.ts.map +0 -1
  380. package/dist/patterns/missing-element/index.js +0 -2
  381. package/dist/patterns/missing-element/index.js.map +0 -1
  382. package/dist/patterns/missing-element/meta.d.ts.map +0 -1
  383. package/dist/patterns/missing-element/meta.js.map +0 -1
  384. package/dist/patterns/missing-element/types.d.ts.map +0 -1
  385. package/dist/patterns/missing-element/types.js +0 -2
  386. package/dist/patterns/missing-element/types.js.map +0 -1
  387. package/src/components/date-picker/index.ts +0 -2
  388. package/src/components/form/Form.tsx +0 -74
  389. package/src/components/form/FormError.tsx +0 -34
  390. package/src/components/form/FormField.tsx +0 -157
  391. package/src/components/form/meta.ts +0 -98
  392. package/src/components/skeleton/index.ts +0 -13
  393. package/src/components/skeleton/meta.ts +0 -37
  394. package/src/components/time-picker/index.ts +0 -2
  395. package/src/components/time-picker/meta.ts +0 -10
  396. package/src/patterns/form-field/index.ts +0 -1
  397. package/src/patterns/form-field/types.ts +0 -16
  398. package/src/patterns/hero/index.ts +0 -2
  399. package/src/patterns/missing-element/index.ts +0 -2
  400. /package/src/{patterns/hero/meta.ts → features/hero/heroMeta.ts} +0 -0
  401. /package/src/{patterns/missing-element/meta.ts → features/missing-element/missingElementMeta.ts} +0 -0
@@ -1,33 +0,0 @@
1
- export declare const skeletonMeta: {
2
- readonly name: "Skeleton";
3
- readonly category: "component";
4
- readonly directManifestNode: false;
5
- readonly allowedChildren: readonly [];
6
- readonly note: "Loading placeholder primitive; not represented as a manifest node in v1.";
7
- readonly props: {};
8
- };
9
- export declare const skeletonTextMeta: {
10
- readonly name: "SkeletonText";
11
- readonly category: "component";
12
- readonly directManifestNode: false;
13
- readonly allowedChildren: readonly [];
14
- readonly note: "Loading placeholder text composition; not represented as a manifest node in v1.";
15
- readonly props: {};
16
- };
17
- export declare const skeletonCardMeta: {
18
- readonly name: "SkeletonCard";
19
- readonly category: "component";
20
- readonly directManifestNode: false;
21
- readonly allowedChildren: readonly [];
22
- readonly note: "Loading placeholder card composition; not represented as a manifest node in v1.";
23
- readonly props: {};
24
- };
25
- export declare const skeletonListMeta: {
26
- readonly name: "SkeletonList";
27
- readonly category: "component";
28
- readonly directManifestNode: false;
29
- readonly allowedChildren: readonly [];
30
- readonly note: "Loading placeholder list composition; not represented as a manifest node in v1.";
31
- readonly props: {};
32
- };
33
- //# sourceMappingURL=meta.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/components/skeleton/meta.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY;;;;;;;CAOa,CAAC;AAEvC,eAAO,MAAM,gBAAgB;;;;;;;CAOS,CAAC;AAEvC,eAAO,MAAM,gBAAgB;;;;;;;CAOS,CAAC;AAEvC,eAAO,MAAM,gBAAgB;;;;;;;CAOS,CAAC"}
@@ -1,33 +0,0 @@
1
- export const skeletonMeta = {
2
- name: 'Skeleton',
3
- category: 'component',
4
- directManifestNode: false,
5
- allowedChildren: [],
6
- note: 'Loading placeholder primitive; not represented as a manifest node in v1.',
7
- props: {},
8
- };
9
- export const skeletonTextMeta = {
10
- name: 'SkeletonText',
11
- category: 'component',
12
- directManifestNode: false,
13
- allowedChildren: [],
14
- note: 'Loading placeholder text composition; not represented as a manifest node in v1.',
15
- props: {},
16
- };
17
- export const skeletonCardMeta = {
18
- name: 'SkeletonCard',
19
- category: 'component',
20
- directManifestNode: false,
21
- allowedChildren: [],
22
- note: 'Loading placeholder card composition; not represented as a manifest node in v1.',
23
- props: {},
24
- };
25
- export const skeletonListMeta = {
26
- name: 'SkeletonList',
27
- category: 'component',
28
- directManifestNode: false,
29
- allowedChildren: [],
30
- note: 'Loading placeholder list composition; not represented as a manifest node in v1.',
31
- props: {},
32
- };
33
- //# sourceMappingURL=meta.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"meta.js","sourceRoot":"","sources":["../../../src/components/skeleton/meta.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE,WAAW;IACrB,kBAAkB,EAAE,KAAK;IACzB,eAAe,EAAE,EAAE;IACnB,IAAI,EAAE,0EAA0E;IAChF,KAAK,EAAE,EAAE;CAC2B,CAAC;AAEvC,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,IAAI,EAAE,cAAc;IACpB,QAAQ,EAAE,WAAW;IACrB,kBAAkB,EAAE,KAAK;IACzB,eAAe,EAAE,EAAE;IACnB,IAAI,EAAE,iFAAiF;IACvF,KAAK,EAAE,EAAE;CAC2B,CAAC;AAEvC,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,IAAI,EAAE,cAAc;IACpB,QAAQ,EAAE,WAAW;IACrB,kBAAkB,EAAE,KAAK;IACzB,eAAe,EAAE,EAAE;IACnB,IAAI,EAAE,iFAAiF;IACvF,KAAK,EAAE,EAAE;CAC2B,CAAC;AAEvC,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,IAAI,EAAE,cAAc;IACpB,QAAQ,EAAE,WAAW;IACrB,kBAAkB,EAAE,KAAK;IACzB,eAAe,EAAE,EAAE;IACnB,IAAI,EAAE,iFAAiF;IACvF,KAAK,EAAE,EAAE;CAC2B,CAAC","sourcesContent":["import type { ZoraComponentMeta } from '../../metadata';\n\nexport const skeletonMeta = {\n name: 'Skeleton',\n category: 'component',\n directManifestNode: false,\n allowedChildren: [],\n note: 'Loading placeholder primitive; not represented as a manifest node in v1.',\n props: {},\n} as const satisfies ZoraComponentMeta;\n\nexport const skeletonTextMeta = {\n name: 'SkeletonText',\n category: 'component',\n directManifestNode: false,\n allowedChildren: [],\n note: 'Loading placeholder text composition; not represented as a manifest node in v1.',\n props: {},\n} as const satisfies ZoraComponentMeta;\n\nexport const skeletonCardMeta = {\n name: 'SkeletonCard',\n category: 'component',\n directManifestNode: false,\n allowedChildren: [],\n note: 'Loading placeholder card composition; not represented as a manifest node in v1.',\n props: {},\n} as const satisfies ZoraComponentMeta;\n\nexport const skeletonListMeta = {\n name: 'SkeletonList',\n category: 'component',\n directManifestNode: false,\n allowedChildren: [],\n note: 'Loading placeholder list composition; not represented as a manifest node in v1.',\n props: {},\n} as const satisfies ZoraComponentMeta;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/skeleton/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,MAAM,MAAM,cAAc,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;AAChD,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;AAClD,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,MAAM,CAAC;AAErD,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,MAAM,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC5B,MAAM,CAAC,EAAE,cAAc,CAAC;CACzB;AAED,MAAM,WAAW,iBAAkB,SAAQ,aAAa;IACtD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;IACxB,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,aAAa,CAAC,EAAE,iBAAiB,CAAC;CACnC;AAED,MAAM,WAAW,iBAAkB,SAAQ,aAAa;IACtD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,iBAAkB,SAAQ,aAAa;IACtD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/skeleton/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { BoxProps, StackProps } from '../../features/layout/public';\nimport type { ZoraBaseProps } from '../../theme/ZoraBaseProps';\n\nexport type SkeletonRadius = BoxProps['radius'];\nexport type SkeletonDimension = BoxProps['width'];\nexport type SkeletonListVariant = 'divider' | 'card';\n\nexport interface SkeletonProps extends ZoraBaseProps {\n width?: SkeletonDimension;\n height?: BoxProps['height'];\n radius?: SkeletonRadius;\n}\n\nexport interface SkeletonTextProps extends ZoraBaseProps {\n lines?: number;\n lineHeight?: number;\n gap?: StackProps['gap'];\n width?: SkeletonDimension;\n lastLineWidth?: SkeletonDimension;\n}\n\nexport interface SkeletonCardProps extends ZoraBaseProps {\n media?: boolean;\n actions?: boolean;\n lines?: number;\n compact?: boolean;\n}\n\nexport interface SkeletonListProps extends ZoraBaseProps {\n rows?: number;\n avatar?: boolean;\n media?: boolean;\n lines?: number;\n variant?: SkeletonListVariant;\n compact?: boolean;\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"TimePicker.d.ts","sourceRoot":"","sources":["../../../src/components/time-picker/TimePicker.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAwP/C;;GAEG;AACH,eAAO,MAAM,UAAU,uDAAsC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"TimePicker.js","sourceRoot":"","sources":["../../../src/components/time-picker/TimePicker.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Field } from '@ankhorage/surface';\nimport React from 'react';\nimport { ScrollView, StyleSheet } from 'react-native';\n\nimport { useBottomSheet } from '../../features/bottom-sheet/public';\nimport { Button } from '../../features/button/public';\nimport { Stack } from '../../features/layout/public';\nimport { Text } from '../../features/typography/public';\nimport { withZoraThemeScope } from '../../theme/withZoraThemeScope';\nimport type { TimePickerProps } from './types';\n\nconst MINUTES_PER_DAY = 24 * 60;\nconst DEFAULT_STEP_MINUTES = 30;\n\n/*** Render the field label and optional supporting description. */\nfunction renderLabel(label: React.ReactNode, description: React.ReactNode | undefined) {\n return (\n <Stack gap=\"xs\">\n <Text variant=\"label\" weight=\"semiBold\">\n {label}\n </Text>\n {description ? (\n <Text emphasis=\"muted\" variant=\"bodySmall\">\n {description}\n </Text>\n ) : null}\n </Stack>\n );\n}\n\n/*** Parse one HH:mm value to minutes since midnight. */\nfunction parseTimeToMinutes(value: string | undefined): number | undefined {\n if (!value) return undefined;\n const match = /^(\\d{2}):(\\d{2})$/.exec(value);\n if (!match) return undefined;\n\n const hours = Number(match[1]);\n const minutes = Number(match[2]);\n if (hours < 0 || hours > 23 || minutes < 0 || minutes > 59) return undefined;\n return hours * 60 + minutes;\n}\n\n/*** Format minutes since midnight as HH:mm. */\nfunction formatMinutes(value: number): string {\n const hours = Math.floor(value / 60);\n const minutes = value % 60;\n return `${String(hours).padStart(2, '0')}:${String(minutes).padStart(2, '0')}`;\n}\n\n/*** Normalize the configured time step to a positive whole minute. */\nfunction resolveStepMinutes(stepMinutes: number | undefined): number {\n if (stepMinutes === undefined || !Number.isFinite(stepMinutes) || stepMinutes <= 0) {\n return DEFAULT_STEP_MINUTES;\n }\n return Math.max(1, Math.floor(stepMinutes));\n}\n\n/*** Generate selectable HH:mm values within the configured range. */\nfunction generateTimeOptions({\n minTime,\n maxTime,\n stepMinutes,\n}: Pick<TimePickerProps, 'maxTime' | 'minTime' | 'stepMinutes'>): string[] {\n const step = resolveStepMinutes(stepMinutes);\n const min = parseTimeToMinutes(minTime) ?? 0;\n const max = parseTimeToMinutes(maxTime) ?? MINUTES_PER_DAY - 1;\n const options: string[] = [];\n\n for (let minute = 0; minute < MINUTES_PER_DAY; minute += step) {\n if (minute >= min && minute <= max) options.push(formatMinutes(minute));\n }\n return options;\n}\n\nfunction TimePickerInner({\n themeId: _themeId,\n mode: _mode,\n value,\n onValueChange,\n label,\n description,\n error,\n placeholder = 'Choose time',\n minTime,\n maxTime,\n stepMinutes,\n disabled = false,\n required = false,\n formatTime,\n testID,\n interactionPolicy,\n}: TimePickerProps) {\n const { dismiss, present } = useBottomSheet();\n const passive = interactionPolicy === 'passive';\n const displayValue = value ? (formatTime ? formatTime(value) : value) : placeholder;\n\n /*** Present the time options through the shared BottomSheet controller. */\n function openPicker() {\n if (passive) return;\n present({\n content: (\n <TimePickerSheet\n description={description}\n formatTime={formatTime}\n interactionPolicy={interactionPolicy}\n label={label}\n maxTime={maxTime}\n minTime={minTime}\n onDismiss={dismiss}\n onSelect={(time) => {\n onValueChange?.(time);\n dismiss();\n }}\n stepMinutes={stepMinutes}\n testID={testID}\n value={value}\n />\n ),\n });\n }\n\n return (\n <Field\n disabled={disabled}\n errorText={error}\n invalid={Boolean(error)}\n label={label ? renderLabel(label, description) : undefined}\n required={required}\n testID={testID}\n >\n <Button\n disabled={disabled}\n interactionPolicy={interactionPolicy}\n onPress={openPicker}\n testID={testID ? `${testID}-trigger` : undefined}\n trailingIcon={{ name: 'chevron-down-outline' }}\n variant=\"outline\"\n >\n {displayValue}\n </Button>\n </Field>\n );\n}\n\ninterface TimePickerSheetProps extends Pick<\n TimePickerProps,\n | 'description'\n | 'formatTime'\n | 'interactionPolicy'\n | 'label'\n | 'maxTime'\n | 'minTime'\n | 'stepMinutes'\n | 'testID'\n | 'value'\n> {\n onDismiss: () => void;\n onSelect: (value: string) => void;\n}\n\n/*** Render time selection content inside the shared BottomSheet host. */\nfunction TimePickerSheet({\n description,\n formatTime,\n interactionPolicy,\n label,\n maxTime,\n minTime,\n onDismiss,\n onSelect,\n stepMinutes,\n testID,\n value,\n}: TimePickerSheetProps) {\n const options = React.useMemo(\n () => generateTimeOptions({ maxTime, minTime, stepMinutes }),\n [maxTime, minTime, stepMinutes],\n );\n\n return (\n <Stack gap=\"m\" p=\"m\" testID={testID ? `${testID}-sheet` : undefined}>\n <PickerSheetHeader description={description} title={label ?? 'Choose time'} />\n <ScrollView style={styles.options}>\n <Stack gap=\"xxs\">\n {options.map((option) => (\n <TimePickerOption\n formatTime={formatTime}\n interactionPolicy={interactionPolicy}\n key={option}\n onSelect={onSelect}\n option={option}\n selected={option === value}\n testID={testID}\n />\n ))}\n </Stack>\n </ScrollView>\n <Button fullWidth interactionPolicy={interactionPolicy} onPress={onDismiss} variant=\"ghost\">\n Cancel\n </Button>\n </Stack>\n );\n}\n\n/*** Render the shared title block used by the time sheet. */\nfunction PickerSheetHeader({\n description,\n title,\n}: {\n description: React.ReactNode | undefined;\n title: React.ReactNode;\n}) {\n return (\n <Stack gap=\"xxs\">\n <Text align=\"center\" variant=\"label\" weight=\"semiBold\">\n {title}\n </Text>\n {description ? (\n <Text align=\"center\" emphasis=\"muted\" variant=\"bodySmall\">\n {description}\n </Text>\n ) : null}\n </Stack>\n );\n}\n\n/*** Render one accessible selectable time option. */\nfunction TimePickerOption({\n formatTime,\n interactionPolicy,\n onSelect,\n option,\n selected,\n testID,\n}: Pick<TimePickerSheetProps, 'formatTime' | 'interactionPolicy' | 'testID'> & {\n onSelect: (value: string) => void;\n option: string;\n selected: boolean;\n}) {\n return (\n <Button\n accessibilityState={{ selected }}\n fullWidth\n interactionPolicy={interactionPolicy}\n onPress={() => onSelect(option)}\n testID={testID ? `${testID}-option-${option}` : undefined}\n variant={selected ? 'soft' : 'ghost'}\n >\n {formatTime ? formatTime(option) : option}\n </Button>\n );\n}\n\nconst styles = StyleSheet.create({\n options: { maxHeight: 360 },\n});\n\n/***\n * Time input control with bottom-sheet selection and formatted display value.\n */\nexport const TimePicker = withZoraThemeScope(TimePickerInner);\n"]}
@@ -1,3 +0,0 @@
1
- export { TimePicker } from './TimePicker';
2
- export type { TimePickerProps, TimePickerValue } from './types';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/time-picker/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC"}
@@ -1,2 +0,0 @@
1
- export { TimePicker } from './TimePicker';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/time-picker/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC","sourcesContent":["export { TimePicker } from './TimePicker';\nexport type { TimePickerProps, TimePickerValue } from './types';\n"]}
@@ -1,9 +0,0 @@
1
- export declare const timePickerMeta: {
2
- readonly name: "TimePicker";
3
- readonly category: "component";
4
- readonly directManifestNode: false;
5
- readonly allowedChildren: readonly [];
6
- readonly note: "Code-facing BottomSheet-backed time picker; not represented as a manifest node in v1.";
7
- readonly props: {};
8
- };
9
- //# sourceMappingURL=meta.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/components/time-picker/meta.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc;;;;;;;CAOW,CAAC"}
@@ -1,9 +0,0 @@
1
- export const timePickerMeta = {
2
- name: 'TimePicker',
3
- category: 'component',
4
- directManifestNode: false,
5
- allowedChildren: [],
6
- note: 'Code-facing BottomSheet-backed time picker; not represented as a manifest node in v1.',
7
- props: {},
8
- };
9
- //# sourceMappingURL=meta.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"meta.js","sourceRoot":"","sources":["../../../src/components/time-picker/meta.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,IAAI,EAAE,YAAY;IAClB,QAAQ,EAAE,WAAW;IACrB,kBAAkB,EAAE,KAAK;IACzB,eAAe,EAAE,EAAE;IACnB,IAAI,EAAE,uFAAuF;IAC7F,KAAK,EAAE,EAAE;CAC2B,CAAC","sourcesContent":["import type { ZoraComponentMeta } from '../../metadata';\n\nexport const timePickerMeta = {\n name: 'TimePicker',\n category: 'component',\n directManifestNode: false,\n allowedChildren: [],\n note: 'Code-facing BottomSheet-backed time picker; not represented as a manifest node in v1.',\n props: {},\n} as const satisfies ZoraComponentMeta;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/time-picker/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,IAAI,CAAC;AAE5C,MAAM,WAAW,eAAgB,SAAQ,aAAa;IACpD,KAAK,EAAE,eAAe,CAAC;IACvB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IACjD,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/time-picker/types.ts"],"names":[],"mappings":"","sourcesContent":["import type React from 'react';\n\nimport type { ZoraBaseProps } from '../../theme/ZoraBaseProps';\n\nexport type TimePickerValue = string | null;\n\nexport interface TimePickerProps extends ZoraBaseProps {\n value: TimePickerValue;\n onValueChange?: (value: TimePickerValue) => void;\n label?: React.ReactNode;\n description?: React.ReactNode;\n error?: React.ReactNode;\n placeholder?: React.ReactNode;\n minTime?: string;\n maxTime?: string;\n stepMinutes?: number;\n disabled?: boolean;\n required?: boolean;\n formatTime?: (value: string) => React.ReactNode;\n testID?: string;\n}\n"]}
@@ -1,4 +0,0 @@
1
- import React from 'react';
2
- import type { FormFieldProps } from './types';
3
- export declare const FormField: (props: FormFieldProps) => React.ReactElement | null;
4
- //# sourceMappingURL=FormField.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FormField.d.ts","sourceRoot":"","sources":["../../../src/patterns/form-field/FormField.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAiC9C,eAAO,MAAM,SAAS,sDAAqC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"FormField.js","sourceRoot":"","sources":["../../../src/patterns/form-field/FormField.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,kCAAkC,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE,SAAS,cAAc,CAAC,EACtB,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,KAAK,EACX,KAAK,EACL,WAAW,EACX,UAAU,EACV,QAAQ,EACR,GAAG,KAAK,EACO;IACf,OAAO,CACL,CAAC,KAAK,CACJ,IAAI,KAAK,CAAC,CACV,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,KAAK,CAAC,CACJ,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CACb;UAAA,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CACrC;YAAA,CAAC,KAAK,CACR;UAAA,EAAE,IAAI,CACN;UAAA,CAAC,WAAW,CAAC,CAAC,CAAC,CACb,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CACxC;cAAA,CAAC,WAAW,CACd;YAAA,EAAE,IAAI,CAAC,CACR,CAAC,CAAC,CAAC,IAAI,CACV;QAAA,EAAE,KAAK,CACT,CAAC,CAED;MAAA,CAAC,QAAQ,CACX;IAAA,EAAE,KAAK,CAAC,CACT,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAC","sourcesContent":["import { Field } from '@ankhorage/surface';\nimport React from 'react';\n\nimport { Stack } from '../../features/layout/public';\nimport { Text } from '../../features/typography/public';\nimport { withZoraThemeScope } from '../../theme/withZoraThemeScope';\nimport type { FormFieldProps } from './types';\n\nfunction FormFieldInner({\n themeId: _themeId,\n mode: _mode,\n label,\n description,\n helperText,\n children,\n ...props\n}: FormFieldProps) {\n return (\n <Field\n {...props}\n helperText={helperText}\n label={\n <Stack gap=\"xs\">\n <Text variant=\"label\" weight=\"semiBold\">\n {label}\n </Text>\n {description ? (\n <Text emphasis=\"muted\" variant=\"bodySmall\">\n {description}\n </Text>\n ) : null}\n </Stack>\n }\n >\n {children}\n </Field>\n );\n}\n\nexport const FormField = withZoraThemeScope(FormFieldInner);\n"]}
@@ -1,2 +0,0 @@
1
- export { FormField } from './FormField';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/patterns/form-field/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
@@ -1,2 +0,0 @@
1
- export { FormField } from './FormField';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/patterns/form-field/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC","sourcesContent":["export { FormField } from './FormField';\n"]}
@@ -1,9 +0,0 @@
1
- import type { FieldProps as SurfaceFieldProps } from '@ankhorage/surface';
2
- import type React from 'react';
3
- import type { ZoraBaseProps } from '../../theme/ZoraBaseProps';
4
- export interface FormFieldProps extends ZoraBaseProps, Pick<Omit<SurfaceFieldProps, 'mode' | 'themeId'>, 'children' | 'disabled' | 'errorText' | 'invalid' | 'readOnly' | 'required'> {
5
- label: React.ReactNode;
6
- description?: React.ReactNode;
7
- helperText?: React.ReactNode;
8
- }
9
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/patterns/form-field/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,IAAI,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,MAAM,WAAW,cACf,SACE,aAAa,EACb,IAAI,CACF,IAAI,CAAC,iBAAiB,EAAE,MAAM,GAAG,SAAS,CAAC,EAC3C,UAAU,GAAG,UAAU,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,CAC5E;IACH,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC9B"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/patterns/form-field/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { FieldProps as SurfaceFieldProps } from '@ankhorage/surface';\nimport type React from 'react';\n\nimport type { ZoraBaseProps } from '../../theme/ZoraBaseProps';\n\nexport interface FormFieldProps\n extends\n ZoraBaseProps,\n Pick<\n Omit<SurfaceFieldProps, 'mode' | 'themeId'>,\n 'children' | 'disabled' | 'errorText' | 'invalid' | 'readOnly' | 'required'\n > {\n label: React.ReactNode;\n description?: React.ReactNode;\n helperText?: React.ReactNode;\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Hero.d.ts","sourceRoot":"","sources":["../../../src/patterns/hero/Hero.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,KAAK,EAAyB,SAAS,EAAE,MAAM,SAAS,CAAC;AAqHhE;;;;GAIG;AACH,eAAO,MAAM,IAAI,iDAAgC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Hero.js","sourceRoot":"","sources":["../../../src/patterns/hero/Hero.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { Button } from '../../features/button/public';\nimport { Card } from '../../features/card/public';\nimport { Box, Grid, Stack } from '../../features/layout/public';\nimport { Heading } from '../../features/typography/public';\nimport { Text } from '../../features/typography/public';\nimport { withZoraThemeScope } from '../../theme/withZoraThemeScope';\nimport type { HeroAction, HeroAlign, HeroProps } from './types';\n\nfunction HeroInner({\n themeId: _themeId,\n mode: _mode,\n interactionPolicy,\n title,\n description,\n eyebrow,\n primaryAction,\n secondaryAction,\n media,\n footer,\n align = 'start',\n layout = 'split',\n tone = 'subtle',\n compact = false,\n testID,\n}: HeroProps) {\n const hasActions = primaryAction !== undefined || secondaryAction !== undefined;\n const hasMedia = media !== undefined;\n const contentAlign = resolveContentAlign(align);\n const textAlign = align === 'center' ? 'center' : undefined;\n const mediaFirst = layout === 'mediaFirst';\n\n const content = (\n <Box width=\"100%\">\n <Stack align={contentAlign} gap={compact ? 's' : 'm'}>\n <Stack align={contentAlign} gap=\"xs\">\n {eyebrow !== undefined ? (\n <Text align={textAlign} color=\"primary\" variant=\"eyebrow\">\n {eyebrow}\n </Text>\n ) : null}\n <Heading\n align={textAlign}\n level={1}\n size={{ base: 'h2', md: compact ? 'h2' : 'display' }}\n >\n {title}\n </Heading>\n {description !== undefined ? (\n <Text\n align={textAlign}\n emphasis=\"muted\"\n variant={{ base: 'body', md: compact ? 'body' : 'lead' }}\n >\n {description}\n </Text>\n ) : null}\n </Stack>\n\n {hasActions ? (\n <Stack\n align={contentAlign}\n direction={{ base: 'column', md: 'row' }}\n gap=\"s\"\n justify={align === 'center' ? 'center' : 'flex-start'}\n >\n {primaryAction !== undefined\n ? renderAction(primaryAction, 'primary', interactionPolicy)\n : null}\n {secondaryAction !== undefined\n ? renderAction(secondaryAction, 'secondary', interactionPolicy)\n : null}\n </Stack>\n ) : null}\n\n {footer}\n </Stack>\n </Box>\n );\n\n const mediaSlot = hasMedia ? <Box width=\"100%\">{media}</Box> : null;\n\n const body =\n hasMedia && layout !== 'stack' ? (\n <Grid cols={{ base: 1, md: 2 }} gap={compact ? 'm' : 'l'}>\n {mediaFirst ? mediaSlot : content}\n {mediaFirst ? content : mediaSlot}\n </Grid>\n ) : (\n <Stack align=\"center\" direction=\"column\" gap={compact ? 'm' : 'l'}>\n {mediaFirst ? mediaSlot : content}\n {mediaFirst ? content : mediaSlot}\n </Stack>\n );\n\n return (\n <Card compact={compact} interactionPolicy={interactionPolicy} testID={testID} tone={tone}>\n {body}\n </Card>\n );\n}\n\nfunction renderAction(\n action: HeroAction,\n role: 'primary' | 'secondary',\n interactionPolicy: HeroProps['interactionPolicy'],\n) {\n return (\n <Button\n disabled={action.disabled}\n interactionPolicy={interactionPolicy}\n variant={action.variant ?? (role === 'primary' ? 'solid' : 'soft')}\n onPress={action.onPress}\n color={action.color ?? (role === 'primary' ? 'primary' : 'neutral')}\n >\n {action.label}\n </Button>\n );\n}\n\nfunction resolveContentAlign(align: HeroAlign) {\n return align === 'center' ? 'center' : 'flex-start';\n}\n\n/***\n * Hero section pattern for prominent page introductions with actions.\n *\n \n */\nexport const Hero = withZoraThemeScope(HeroInner);\n"]}
@@ -1,3 +0,0 @@
1
- export { Hero } from './Hero';
2
- export type { HeroAction, HeroAlign, HeroLayout, HeroProps, HeroTone } from './types';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/patterns/hero/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC"}
@@ -1,2 +0,0 @@
1
- export { Hero } from './Hero';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/patterns/hero/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC","sourcesContent":["export { Hero } from './Hero';\nexport type { HeroAction, HeroAlign, HeroLayout, HeroProps, HeroTone } from './types';\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/patterns/hero/meta.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4FiB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"meta.js","sourceRoot":"","sources":["../../../src/patterns/hero/meta.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,SAAS;IACnB,WAAW,EAAE,6EAA6E;IAC1F,kBAAkB,EAAE,IAAI;IACxB,eAAe,EAAE,EAAE;IACnB,SAAS,EAAE;QACT,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE;QAClC,YAAY,EAAE;YACZ,OAAO,EAAE,aAAa;YACtB,KAAK,EAAE,8BAA8B;YACrC,WAAW,EAAE,4EAA4E;YACzF,KAAK,EAAE,OAAO;YACd,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,QAAQ;SACf;KACF;IACD,IAAI,EAAE;QACJ,MAAM,EAAE;YACN,EAAE,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,SAAS,EAAE;YACzD,EAAE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,OAAO,EAAE;YACrD,EAAE,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,aAAa,EAAE;SAClE;KACF;IACD,KAAK,EAAE;QACL,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;YACd,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,CAAC;SAC9D;QACD,MAAM,EAAE;YACN,KAAK,EAAE,QAAQ;YACf,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC;SAClD;KACF;IACD,KAAK,EAAE;QACL,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,SAAS;YAChB,OAAO,EAAE,aAAa;SACvB;QACD,KAAK,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,OAAO;YACd,OAAO,EAAE,8BAA8B;SACxC;QACD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,aAAa;YACpB,OAAO,EAAE,4EAA4E;SACtF;QACD,KAAK,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,QAAQ;YAClB,KAAK,EAAE,WAAW;YAClB,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;YACzB,OAAO,EAAE,OAAO;SACjB;QACD,MAAM,EAAE;YACN,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,QAAQ;YAClB,KAAK,EAAE,QAAQ;YACf,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC;YACtC,OAAO,EAAE,OAAO;SACjB;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,YAAY;YACtB,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC;YACtC,OAAO,EAAE,QAAQ;SAClB;QACD,OAAO,EAAE;YACP,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,QAAQ;YAClB,KAAK,EAAE,SAAS;YAChB,OAAO,EAAE,KAAK;SACf;QACD,aAAa,EAAE;YACb,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,gBAAgB;SACxB;QACD,eAAe,EAAE;YACf,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,kBAAkB;SAC1B;KACF;CACmC,CAAC","sourcesContent":["import type { ZoraComponentMeta } from '../../metadata';\n\nexport const heroMeta = {\n name: 'Hero',\n category: 'pattern',\n description: 'Landing-page and section hero with title copy, actions, and optional media.',\n directManifestNode: true,\n allowedChildren: [],\n blueprint: {\n label: 'Hero',\n icon: { name: 'sparkles-outline' },\n defaultProps: {\n eyebrow: 'New release',\n title: 'Build product screens faster',\n description: 'Use a responsive hero pattern with strong defaults and structured actions.',\n align: 'start',\n layout: 'split',\n tone: 'subtle',\n },\n },\n i18n: {\n fields: [\n { keyProp: 'eyebrowI18nKey', defaultTextProp: 'eyebrow' },\n { keyProp: 'titleI18nKey', defaultTextProp: 'title' },\n { keyProp: 'descriptionI18nKey', defaultTextProp: 'description' },\n ],\n },\n slots: {\n media: {\n label: 'Media',\n allowedChildren: ['Image', 'Card', 'MetricCard', 'MediaCard'],\n },\n footer: {\n label: 'Footer',\n allowedChildren: ['Badge', 'Text', 'AvatarGroup'],\n },\n },\n props: {\n eyebrow: {\n type: 'string',\n category: 'Content',\n label: 'Eyebrow',\n default: 'New release',\n },\n title: {\n type: 'string',\n category: 'Content',\n label: 'Title',\n default: 'Build product screens faster',\n },\n description: {\n type: 'string',\n category: 'Content',\n label: 'Description',\n default: 'Use a responsive hero pattern with strong defaults and structured actions.',\n },\n align: {\n type: 'enum',\n category: 'Layout',\n label: 'Alignment',\n enum: ['start', 'center'],\n default: 'start',\n },\n layout: {\n type: 'enum',\n category: 'Layout',\n label: 'Layout',\n enum: ['stack', 'split', 'mediaFirst'],\n default: 'split',\n },\n tone: {\n type: 'enum',\n category: 'Appearance',\n label: 'Tone',\n enum: ['default', 'subtle', 'outline'],\n default: 'subtle',\n },\n compact: {\n type: 'boolean',\n category: 'Layout',\n label: 'Compact',\n default: false,\n },\n primaryAction: {\n type: 'action',\n category: 'Actions',\n label: 'Primary action',\n },\n secondaryAction: {\n type: 'action',\n category: 'Actions',\n label: 'Secondary action',\n },\n },\n} as const satisfies ZoraComponentMeta;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/patterns/hero/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAC3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;AAC3C,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,YAAY,CAAC;AAC1D,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;AAExD,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,SAAU,SAAQ,aAAa;IAC9C,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,aAAa,CAAC,EAAE,UAAU,CAAC;IAC3B,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/patterns/hero/types.ts"],"names":[],"mappings":"","sourcesContent":["import type React from 'react';\n\nimport type { ZoraButtonVariant, ZoraColor } from '../../internal/recipes';\nimport type { ZoraBaseProps } from '../../theme/ZoraBaseProps';\n\nexport type HeroAlign = 'start' | 'center';\nexport type HeroLayout = 'stack' | 'split' | 'mediaFirst';\nexport type HeroTone = 'default' | 'subtle' | 'outline';\n\nexport interface HeroAction {\n label: React.ReactNode;\n onPress: () => void;\n color?: ZoraColor;\n variant?: ZoraButtonVariant;\n disabled?: boolean;\n}\n\nexport interface HeroProps extends ZoraBaseProps {\n title: React.ReactNode;\n description?: React.ReactNode;\n eyebrow?: React.ReactNode;\n primaryAction?: HeroAction;\n secondaryAction?: HeroAction;\n media?: React.ReactNode;\n footer?: React.ReactNode;\n align?: HeroAlign;\n layout?: HeroLayout;\n tone?: HeroTone;\n compact?: boolean;\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"MissingElement.d.ts","sourceRoot":"","sources":["../../../src/patterns/missing-element/MissingElement.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AA0DnD;;;;;GAKG;AACH,eAAO,MAAM,cAAc,2DAA0C,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"MissingElement.js","sourceRoot":"","sources":["../../../src/patterns/missing-element/MissingElement.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACpD,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,IAAI,EAAE,MAAM,kCAAkC,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE;;GAEG;AACH,SAAS,mBAAmB,CAAC,EAC3B,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,KAAK,EACX,iBAAiB,EAAE,kBAAkB,EACrC,mBAAmB,EACnB,MAAM,EACN,UAAU,EACV,YAAY,EACZ,aAAa,EACb,MAAM,GACc;IACpB,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,EAAE,CAAC;IACjC,MAAM,kBAAkB,GAAG,oBAAoB,mBAAmB,KAAK,MAAM,EAAE,CAAC;IAEhF,OAAO,CACL,CAAC,GAAG,CACF,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,CACvC,iBAAiB,CAAC,MAAM,CACxB,UAAU,CACV,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CACnC,WAAW,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAC1C,WAAW,CAAC,CAAC,CAAC,CAAC,CACf,SAAS,CAAC,CAAC,aAAa,CAAC,CACzB,QAAQ,CAAC,CAAC,YAAY,CAAC,CACvB,CAAC,CAAC,GAAG,CACL,MAAM,CAAC,GAAG,CACV,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CACnB,MAAM,CAAC,CAAC,MAAM,CAAC,CAEf;MAAA,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CACb;QAAA,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,eAAe,EAAE,KAAK,CAC7C;QAAA,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CACrC;UAAA,CAAC,mBAAmB,CACtB;QAAA,EAAE,IAAI,CACN;QAAA,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CACxC;UAAA,CAAC,MAAM,CACT;QAAA,EAAE,IAAI,CACN;QAAA,CAAC,UAAU,CAAC,CAAC,CAAC,CACZ,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CACvC;sBAAU,CAAC,UAAU,CACvB;UAAA,EAAE,IAAI,CAAC,CACR,CAAC,CAAC,CAAC,IAAI,CACV;MAAA,EAAE,KAAK,CACT;IAAA,EAAE,GAAG,CAAC,CACP,CAAC;AACJ,CAAC;AAED,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,IAAI,EAAE;QACJ,WAAW,EAAE,QAAQ;KACtB;CACF,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAAC,mBAAmB,CAAC,CAAC","sourcesContent":["import React from 'react';\nimport { StyleSheet } from 'react-native';\n\nimport { Badge } from '../../features/badge/public';\nimport { Box, Stack } from '../../features/layout/public';\nimport { Text } from '../../features/typography/public';\nimport { useZoraTheme } from '../../theme/useZoraTheme';\nimport { withZoraThemeScope } from '../../theme/withZoraThemeScope';\nimport type { MissingElementProps } from './types';\n\n/***\n * Renders the visible, non-interactive body of a draft missing-element marker.\n */\nfunction MissingElementInner({\n themeId: _themeId,\n mode: _mode,\n interactionPolicy: _interactionPolicy,\n requestedCapability,\n reason,\n evidenceId,\n minimumWidth,\n minimumHeight,\n testID,\n}: MissingElementProps) {\n const { theme } = useZoraTheme();\n const accessibilityLabel = `Missing element: ${requestedCapability}. ${reason}`;\n\n return (\n <Box\n accessibilityLabel={accessibilityLabel}\n accessibilityRole=\"text\"\n accessible\n bg={theme.semantics.warning.softBg}\n borderColor={theme.semantics.warning.base}\n borderWidth={1}\n minHeight={minimumHeight}\n minWidth={minimumWidth}\n p=\"m\"\n radius=\"m\"\n style={styles.root}\n testID={testID}\n >\n <Stack gap=\"xs\">\n <Badge color=\"warning\">Missing element</Badge>\n <Text variant=\"label\" weight=\"semiBold\">\n {requestedCapability}\n </Text>\n <Text emphasis=\"muted\" variant=\"bodySmall\">\n {reason}\n </Text>\n {evidenceId ? (\n <Text emphasis=\"subtle\" variant=\"caption\">\n Evidence: {evidenceId}\n </Text>\n ) : null}\n </Stack>\n </Box>\n );\n}\n\nconst styles = StyleSheet.create({\n root: {\n borderStyle: 'dashed',\n },\n});\n\n/***\n * Draft-only marker that preserves an unsupported manifest region without faking its capability.\n *\n * `MissingElement` is intentionally non-interactive and release-blocking in component metadata.\n * Replace it with a released semantic ZORA element before publishing a production template.\n */\nexport const MissingElement = withZoraThemeScope(MissingElementInner);\n"]}
@@ -1,3 +0,0 @@
1
- export { MissingElement } from './MissingElement';
2
- export type { MissingElementProps } from './types';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/patterns/missing-element/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC"}
@@ -1,2 +0,0 @@
1
- export { MissingElement } from './MissingElement';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/patterns/missing-element/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC","sourcesContent":["export { MissingElement } from './MissingElement';\nexport type { MissingElementProps } from './types';\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/patterns/missing-element/meta.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDO,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"meta.js","sourceRoot":"","sources":["../../../src/patterns/missing-element/meta.ts"],"names":[],"mappings":"AAEA,MAAM,iBAAiB,GAAG,EAAE,SAAS,EAAE,UAAU,EAAW,CAAC;AAE7D,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,IAAI,EAAE,gBAAgB;IACtB,QAAQ,EAAE,SAAS;IACnB,WAAW,EACT,oGAAoG;IACtG,kBAAkB,EAAE,IAAI;IACxB,eAAe,EAAE,EAAE;IACnB,cAAc,EAAE;QACd,IAAI,EAAE,oBAAoB;QAC1B,YAAY,EAAE,YAAY;QAC1B,WAAW,EAAE,SAAS;KACvB;IACD,SAAS,EAAE;QACT,KAAK,EAAE,iBAAiB;QACxB,YAAY,EAAE;YACZ,mBAAmB,EAAE,iCAAiC;YACtD,MAAM,EAAE,wCAAwC;YAChD,YAAY,EAAE,GAAG;YACjB,aAAa,EAAE,GAAG;SACnB;KACF;IACD,KAAK,EAAE;QACL,mBAAmB,EAAE;YACnB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,sBAAsB;YAC7B,OAAO,EAAE,iCAAiC;YAC1C,SAAS,EAAE,iBAAiB;SAC7B;QACD,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,QAAQ;YACf,OAAO,EAAE,wCAAwC;YACjD,SAAS,EAAE,iBAAiB;SAC7B;QACD,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,UAAU;YACpB,KAAK,EAAE,aAAa;YACpB,SAAS,EAAE,iBAAiB;SAC7B;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,QAAQ;YAClB,KAAK,EAAE,eAAe;YACtB,OAAO,EAAE,GAAG;YACZ,SAAS,EAAE,iBAAiB;SAC7B;QACD,aAAa,EAAE;YACb,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,QAAQ;YAClB,KAAK,EAAE,gBAAgB;YACvB,OAAO,EAAE,GAAG;YACZ,SAAS,EAAE,iBAAiB;SAC7B;KACF;CACmC,CAAC","sourcesContent":["import type { ZoraComponentMeta } from '../../metadata';\n\nconst instanceAuthoring = { authority: 'instance' } as const;\n\nexport const missingElementMeta = {\n name: 'MissingElement',\n category: 'pattern',\n description:\n 'Draft-only marker for an unresolved semantic ZORA capability that must be replaced before release.',\n directManifestNode: true,\n allowedChildren: [],\n manifestPolicy: {\n kind: 'unresolved-element',\n availability: 'draft-only',\n releaseGate: 'blocked',\n },\n blueprint: {\n label: 'Missing element',\n defaultProps: {\n requestedCapability: 'Unresolved interface capability',\n reason: 'No matching ZORA element is available.',\n minimumWidth: 240,\n minimumHeight: 160,\n },\n },\n props: {\n requestedCapability: {\n type: 'string',\n category: 'Gap',\n label: 'Requested capability',\n default: 'Unresolved interface capability',\n authoring: instanceAuthoring,\n },\n reason: {\n type: 'string',\n category: 'Gap',\n label: 'Reason',\n default: 'No matching ZORA element is available.',\n authoring: instanceAuthoring,\n },\n evidenceId: {\n type: 'string',\n category: 'Evidence',\n label: 'Evidence ID',\n authoring: instanceAuthoring,\n },\n minimumWidth: {\n type: 'number',\n category: 'Layout',\n label: 'Minimum width',\n default: 240,\n authoring: instanceAuthoring,\n },\n minimumHeight: {\n type: 'number',\n category: 'Layout',\n label: 'Minimum height',\n default: 160,\n authoring: instanceAuthoring,\n },\n },\n} as const satisfies ZoraComponentMeta;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/patterns/missing-element/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,MAAM,WAAW,mBAAoB,SAAQ,aAAa;IACxD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/patterns/missing-element/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { ZoraBaseProps } from '../../theme/ZoraBaseProps';\n\nexport interface MissingElementProps extends ZoraBaseProps {\n requestedCapability: string;\n reason: string;\n evidenceId?: string;\n minimumWidth?: number;\n minimumHeight?: number;\n}\n"]}
@@ -1,2 +0,0 @@
1
- export { DatePicker } from './DatePicker';
2
- export type { DatePickerProps, DatePickerValue } from './types';
@@ -1,74 +0,0 @@
1
- import React from 'react';
2
-
3
- import { Box, Stack } from '../../features/layout/public';
4
- import { withZoraThemeScope } from '../../theme/withZoraThemeScope';
5
- import { FormActions } from './FormActions';
6
- import { FormError } from './FormError';
7
- import { FormField } from './FormField';
8
- import type { FormProps } from './types';
9
- import { useFormController } from './useFormController';
10
-
11
- function FormInner<TName extends string = string>({
12
- themeId: _themeId,
13
- mode: _mode,
14
- fields,
15
- values,
16
- onChange,
17
- onSubmit,
18
- errors,
19
- error,
20
- loading = false,
21
- disabled = false,
22
- submitLabel = 'Submit',
23
- actions,
24
- footer,
25
- validateOnChange = false,
26
- testID,
27
- interactionPolicy,
28
- }: FormProps<TName>) {
29
- const controller = useFormController({
30
- fields,
31
- values,
32
- errors,
33
- onChange,
34
- onSubmit,
35
- validateOnChange,
36
- });
37
-
38
- return (
39
- <Stack gap="m" testID={testID}>
40
- <FormError error={error} />
41
- {fields.map((field) => (
42
- <FormField
43
- key={field.name}
44
- disabled={disabled}
45
- error={controller.errors[field.name]}
46
- field={field}
47
- interactionPolicy={interactionPolicy}
48
- loading={loading}
49
- onChange={controller.setFieldValue}
50
- value={values[field.name]}
51
- />
52
- ))}
53
- <FormActions
54
- disabled={disabled}
55
- interactionPolicy={interactionPolicy}
56
- loading={loading}
57
- onSubmit={() => {
58
- if (interactionPolicy === 'passive') return;
59
-
60
- void controller.handleSubmit();
61
- }}
62
- submitLabel={submitLabel}
63
- >
64
- {actions}
65
- </FormActions>
66
- {footer ? <Box>{footer}</Box> : null}
67
- </Stack>
68
- );
69
- }
70
-
71
- /***
72
- * Composes fields and actions into a validated form layout.
73
- */
74
- export const Form = withZoraThemeScope(FormInner);
@@ -1,34 +0,0 @@
1
- import React from 'react';
2
-
3
- import { Box } from '../../features/layout/public';
4
- import { Text } from '../../features/typography/public';
5
- import { useZoraTheme } from '../../theme/useZoraTheme';
6
- import { withZoraThemeScope } from '../../theme/withZoraThemeScope';
7
- import type { FormErrorProps } from './types';
8
-
9
- function FormErrorInner({
10
- themeId: _themeId,
11
- mode: _mode,
12
- error,
13
- testID,
14
- interactionPolicy: _interactionPolicy,
15
- }: FormErrorProps) {
16
- const { theme } = useZoraTheme();
17
-
18
- if (!error) {
19
- return null;
20
- }
21
-
22
- return (
23
- <Box borderColor={theme.colors.error} borderWidth={1} p="s" radius="m" testID={testID}>
24
- <Text color="error" variant="bodySmall">
25
- {error}
26
- </Text>
27
- </Box>
28
- );
29
- }
30
-
31
- /***
32
- * Displays a form-level validation or submission error message.
33
- */
34
- export const FormError = withZoraThemeScope(FormErrorInner);