@ankhorage/zora 19.0.0 → 19.0.1

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 (1285) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +1 -2
  3. package/dist/features/accordion/accordionItemMeta.js +1 -1
  4. package/dist/features/accordion/accordionItemMeta.js.map +1 -1
  5. package/dist/features/accordion/accordionMeta.js.map +1 -1
  6. package/dist/features/accordion/adapters/inbound/Accordion.d.ts.map +1 -1
  7. package/dist/features/accordion/adapters/inbound/Accordion.js +1 -1
  8. package/dist/features/accordion/adapters/inbound/Accordion.js.map +1 -1
  9. package/dist/features/accordion/adapters/inbound/AccordionItem.d.ts.map +1 -1
  10. package/dist/features/accordion/adapters/inbound/AccordionItem.js +1 -1
  11. package/dist/features/accordion/adapters/inbound/AccordionItem.js.map +1 -1
  12. package/dist/features/activity-indicator/activityIndicatorMeta.js.map +1 -1
  13. package/dist/features/activity-indicator/adapters/inbound/ActivityIndicator.d.ts.map +1 -1
  14. package/dist/features/activity-indicator/adapters/inbound/ActivityIndicator.js +2 -2
  15. package/dist/features/activity-indicator/adapters/inbound/ActivityIndicator.js.map +1 -1
  16. package/dist/features/app-bar/adapters/inbound/AppBar.d.ts.map +1 -1
  17. package/dist/features/app-bar/adapters/inbound/AppBar.js +2 -2
  18. package/dist/features/app-bar/adapters/inbound/AppBar.js.map +1 -1
  19. package/dist/features/app-bar/appBarMeta.js.map +1 -1
  20. package/dist/features/auth/adapters/inbound/AuthForm.d.ts +1 -1
  21. package/dist/features/auth/adapters/inbound/AuthForm.d.ts.map +1 -1
  22. package/dist/features/auth/adapters/inbound/AuthForm.js.map +1 -1
  23. package/dist/features/auth/adapters/inbound/AuthFormField.d.ts +1 -1
  24. package/dist/features/auth/adapters/inbound/AuthFormField.d.ts.map +1 -1
  25. package/dist/features/auth/adapters/inbound/AuthFormField.js.map +1 -1
  26. package/dist/features/auth/adapters/inbound/ForgotPasswordForm.d.ts.map +1 -1
  27. package/dist/features/auth/adapters/inbound/ForgotPasswordForm.js +1 -1
  28. package/dist/features/auth/adapters/inbound/ForgotPasswordForm.js.map +1 -1
  29. package/dist/features/auth/adapters/inbound/OAuthProviderButton.d.ts.map +1 -1
  30. package/dist/features/auth/adapters/inbound/OAuthProviderButton.js +1 -1
  31. package/dist/features/auth/adapters/inbound/OAuthProviderButton.js.map +1 -1
  32. package/dist/features/auth/adapters/inbound/OAuthProviderList.d.ts.map +1 -1
  33. package/dist/features/auth/adapters/inbound/OAuthProviderList.js +1 -1
  34. package/dist/features/auth/adapters/inbound/OAuthProviderList.js.map +1 -1
  35. package/dist/features/auth/adapters/inbound/OtpForm.d.ts.map +1 -1
  36. package/dist/features/auth/adapters/inbound/OtpForm.js +1 -1
  37. package/dist/features/auth/adapters/inbound/OtpForm.js.map +1 -1
  38. package/dist/features/auth/adapters/inbound/SignInForm.d.ts.map +1 -1
  39. package/dist/features/auth/adapters/inbound/SignInForm.js +1 -1
  40. package/dist/features/auth/adapters/inbound/SignInForm.js.map +1 -1
  41. package/dist/features/auth/adapters/inbound/SignUpForm.d.ts.map +1 -1
  42. package/dist/features/auth/adapters/inbound/SignUpForm.js +1 -1
  43. package/dist/features/auth/adapters/inbound/SignUpForm.js.map +1 -1
  44. package/dist/features/auth/forgotPasswordFormMeta.js.map +1 -1
  45. package/dist/features/auth/oauthProviderButtonMeta.js +1 -1
  46. package/dist/features/auth/oauthProviderButtonMeta.js.map +1 -1
  47. package/dist/features/auth/oauthProviderListMeta.js +1 -1
  48. package/dist/features/auth/oauthProviderListMeta.js.map +1 -1
  49. package/dist/features/auth/otpFormMeta.js.map +1 -1
  50. package/dist/features/auth/signInFormMeta.js.map +1 -1
  51. package/dist/features/auth/signUpFormMeta.js.map +1 -1
  52. package/dist/features/authoring/allowedChildren.d.ts.map +1 -0
  53. package/dist/features/authoring/allowedChildren.js.map +1 -0
  54. package/dist/{metadata → features/authoring}/bindableComponentMeta.d.ts.map +1 -1
  55. package/dist/{metadata → features/authoring}/bindableComponentMeta.js +2 -2
  56. package/dist/features/authoring/bindableComponentMeta.js.map +1 -0
  57. package/dist/features/authoring/componentMeta.d.ts +3 -0
  58. package/dist/features/authoring/componentMeta.d.ts.map +1 -0
  59. package/dist/features/authoring/componentMeta.js +184 -0
  60. package/dist/features/authoring/componentMeta.js.map +1 -0
  61. package/dist/{constants.d.ts → features/authoring/constants.d.ts} +1 -0
  62. package/dist/features/authoring/constants.d.ts.map +1 -0
  63. package/dist/{constants.js → features/authoring/constants.js} +7 -0
  64. package/dist/features/authoring/constants.js.map +1 -0
  65. package/dist/{metadata → features/authoring}/index.d.ts +7 -6
  66. package/dist/features/authoring/index.d.ts.map +1 -0
  67. package/dist/features/authoring/index.js +8 -0
  68. package/dist/features/authoring/index.js.map +1 -0
  69. package/dist/features/authoring/themeRecipeMeta.d.ts +3 -0
  70. package/dist/features/authoring/themeRecipeMeta.d.ts.map +1 -0
  71. package/dist/features/authoring/themeRecipeMeta.js +13 -0
  72. package/dist/features/authoring/themeRecipeMeta.js.map +1 -0
  73. package/dist/{utils → features/authoring/utils}/createManifestBindings.d.ts +1 -1
  74. package/dist/features/authoring/utils/createManifestBindings.d.ts.map +1 -0
  75. package/dist/features/authoring/utils/createManifestBindings.js.map +1 -0
  76. package/dist/{utils → features/authoring/utils}/finalizeFeatureMetadata.d.ts +1 -1
  77. package/dist/features/authoring/utils/finalizeFeatureMetadata.d.ts.map +1 -0
  78. package/dist/features/authoring/utils/finalizeFeatureMetadata.js.map +1 -0
  79. package/dist/features/avatar/adapters/inbound/Avatar.d.ts.map +1 -1
  80. package/dist/features/avatar/adapters/inbound/Avatar.js +2 -2
  81. package/dist/features/avatar/adapters/inbound/Avatar.js.map +1 -1
  82. package/dist/features/avatar/adapters/inbound/AvatarGroup.d.ts.map +1 -1
  83. package/dist/features/avatar/adapters/inbound/AvatarGroup.js +2 -2
  84. package/dist/features/avatar/adapters/inbound/AvatarGroup.js.map +1 -1
  85. package/dist/features/avatar/avatarGroupMeta.js.map +1 -1
  86. package/dist/features/avatar/avatarMeta.js.map +1 -1
  87. package/dist/features/badge/adapters/inbound/Badge.d.ts.map +1 -1
  88. package/dist/features/badge/adapters/inbound/Badge.js +2 -2
  89. package/dist/features/badge/adapters/inbound/Badge.js.map +1 -1
  90. package/dist/features/badge/badgeMeta.js.map +1 -1
  91. package/dist/features/badge/utils/resolveBadgeRecipe.d.ts +10 -0
  92. package/dist/features/badge/utils/resolveBadgeRecipe.d.ts.map +1 -0
  93. package/dist/features/badge/utils/resolveBadgeRecipe.js +4 -0
  94. package/dist/features/badge/utils/resolveBadgeRecipe.js.map +1 -0
  95. package/dist/features/bottom-sheet/adapters/inbound/BottomSheet.d.ts.map +1 -1
  96. package/dist/features/bottom-sheet/adapters/inbound/BottomSheet.js +3 -3
  97. package/dist/features/bottom-sheet/adapters/inbound/BottomSheet.js.map +1 -1
  98. package/dist/features/bottom-sheet/bottomSheetMeta.js +1 -1
  99. package/dist/features/bottom-sheet/bottomSheetMeta.js.map +1 -1
  100. package/dist/features/breadcrumbs/adapters/inbound/Breadcrumbs.d.ts.map +1 -1
  101. package/dist/features/breadcrumbs/adapters/inbound/Breadcrumbs.js +3 -3
  102. package/dist/features/breadcrumbs/adapters/inbound/Breadcrumbs.js.map +1 -1
  103. package/dist/features/breadcrumbs/breadcrumbsMeta.js.map +1 -1
  104. package/dist/features/button/adapters/inbound/Button.d.ts.map +1 -1
  105. package/dist/features/button/adapters/inbound/Button.js +2 -2
  106. package/dist/features/button/adapters/inbound/Button.js.map +1 -1
  107. package/dist/features/button/adapters/inbound/ButtonGroup.d.ts.map +1 -1
  108. package/dist/features/button/adapters/inbound/ButtonGroup.js +1 -1
  109. package/dist/features/button/adapters/inbound/ButtonGroup.js.map +1 -1
  110. package/dist/features/button/adapters/inbound/IconButton.d.ts.map +1 -1
  111. package/dist/features/button/adapters/inbound/IconButton.js +2 -2
  112. package/dist/features/button/adapters/inbound/IconButton.js.map +1 -1
  113. package/dist/features/button/buttonGroupMeta.js.map +1 -1
  114. package/dist/features/button/buttonMeta.js +2 -2
  115. package/dist/features/button/buttonMeta.js.map +1 -1
  116. package/dist/features/button/iconButtonMeta.js.map +1 -1
  117. package/dist/features/button/utils/resolveButtonRecipe.d.ts +10 -0
  118. package/dist/features/button/utils/resolveButtonRecipe.d.ts.map +1 -0
  119. package/dist/features/button/utils/resolveButtonRecipe.js +4 -0
  120. package/dist/features/button/utils/resolveButtonRecipe.js.map +1 -0
  121. package/dist/features/button/utils/resolveButtonThemeRecipe.d.ts +4 -2
  122. package/dist/features/button/utils/resolveButtonThemeRecipe.d.ts.map +1 -1
  123. package/dist/features/button/utils/resolveButtonThemeRecipe.js +1 -1
  124. package/dist/features/button/utils/resolveButtonThemeRecipe.js.map +1 -1
  125. package/dist/features/button/utils/themeRecipeMeta.js +1 -1
  126. package/dist/features/button/utils/themeRecipeMeta.js.map +1 -1
  127. package/dist/features/card/adapters/inbound/Card.d.ts.map +1 -1
  128. package/dist/features/card/adapters/inbound/Card.js +3 -3
  129. package/dist/features/card/adapters/inbound/Card.js.map +1 -1
  130. package/dist/features/card/adapters/inbound/MediaCard.d.ts.map +1 -1
  131. package/dist/features/card/adapters/inbound/MediaCard.js +2 -2
  132. package/dist/features/card/adapters/inbound/MediaCard.js.map +1 -1
  133. package/dist/features/card/adapters/inbound/MetricCard.d.ts.map +1 -1
  134. package/dist/features/card/adapters/inbound/MetricCard.js +4 -3
  135. package/dist/features/card/adapters/inbound/MetricCard.js.map +1 -1
  136. package/dist/features/card/adapters/inbound/PostCard.d.ts.map +1 -1
  137. package/dist/features/card/adapters/inbound/PostCard.js +2 -2
  138. package/dist/features/card/adapters/inbound/PostCard.js.map +1 -1
  139. package/dist/features/card/adapters/inbound/ProductCard.d.ts +1 -1
  140. package/dist/features/card/adapters/inbound/ProductCard.d.ts.map +1 -1
  141. package/dist/features/card/adapters/inbound/ProductCard.js +1 -1
  142. package/dist/features/card/adapters/inbound/ProductCard.js.map +1 -1
  143. package/dist/features/card/cardMeta.js +2 -2
  144. package/dist/features/card/cardMeta.js.map +1 -1
  145. package/dist/features/card/mediaCardMeta.js +1 -1
  146. package/dist/features/card/mediaCardMeta.js.map +1 -1
  147. package/dist/features/card/metricCardMeta.js.map +1 -1
  148. package/dist/features/card/postCardMeta.js +1 -1
  149. package/dist/features/card/postCardMeta.js.map +1 -1
  150. package/dist/features/card/productCardMeta.js.map +1 -1
  151. package/dist/features/card/utils/resolveCardThemeRecipe.d.ts +1 -1
  152. package/dist/features/card/utils/resolveCardThemeRecipe.d.ts.map +1 -1
  153. package/dist/features/card/utils/resolveCardThemeRecipe.js.map +1 -1
  154. package/dist/features/card/utils/resolveCardVariant.d.ts +4 -0
  155. package/dist/features/card/utils/resolveCardVariant.d.ts.map +1 -0
  156. package/dist/features/card/utils/resolveCardVariant.js +12 -0
  157. package/dist/features/card/utils/resolveCardVariant.js.map +1 -0
  158. package/dist/features/card/utils/themeRecipeMeta.js.map +1 -1
  159. package/dist/features/chat/adapters/inbound/ChatListItem.d.ts.map +1 -1
  160. package/dist/features/chat/adapters/inbound/ChatListItem.js +2 -2
  161. package/dist/features/chat/adapters/inbound/ChatListItem.js.map +1 -1
  162. package/dist/features/chat/adapters/inbound/MessageBubble.d.ts.map +1 -1
  163. package/dist/features/chat/adapters/inbound/MessageBubble.js +2 -2
  164. package/dist/features/chat/adapters/inbound/MessageBubble.js.map +1 -1
  165. package/dist/features/chat/chatListItemMeta.js.map +1 -1
  166. package/dist/features/chat/messageBubbleMeta.js +1 -1
  167. package/dist/features/chat/messageBubbleMeta.js.map +1 -1
  168. package/dist/features/chip/adapters/inbound/Chip.d.ts.map +1 -1
  169. package/dist/features/chip/adapters/inbound/Chip.js +3 -3
  170. package/dist/features/chip/adapters/inbound/Chip.js.map +1 -1
  171. package/dist/features/chip/adapters/inbound/ChipGroup.d.ts.map +1 -1
  172. package/dist/features/chip/adapters/inbound/ChipGroup.js +1 -1
  173. package/dist/features/chip/adapters/inbound/ChipGroup.js.map +1 -1
  174. package/dist/features/chip/chipGroupMeta.js.map +1 -1
  175. package/dist/features/chip/chipMeta.js.map +1 -1
  176. package/dist/features/chip/utils/resolveChipColors.d.ts +1 -1
  177. package/dist/features/chip/utils/resolveChipColors.d.ts.map +1 -1
  178. package/dist/features/chip/utils/resolveChipColors.js.map +1 -1
  179. package/dist/features/collection-editor/adapters/inbound/CollectionEditor.d.ts.map +1 -1
  180. package/dist/features/collection-editor/adapters/inbound/CollectionEditor.js +1 -1
  181. package/dist/features/collection-editor/adapters/inbound/CollectionEditor.js.map +1 -1
  182. package/dist/features/collection-editor/meta.js.map +1 -1
  183. package/dist/features/content-rail/adapters/inbound/ContentRail.d.ts.map +1 -1
  184. package/dist/features/content-rail/adapters/inbound/ContentRail.js +2 -2
  185. package/dist/features/content-rail/adapters/inbound/ContentRail.js.map +1 -1
  186. package/dist/features/content-rail/adapters/inbound/ContentRailFlow.d.ts.map +1 -1
  187. package/dist/features/content-rail/adapters/inbound/ContentRailFlow.js +1 -1
  188. package/dist/features/content-rail/adapters/inbound/ContentRailFlow.js.map +1 -1
  189. package/dist/features/content-rail/contentRailMeta.js +1 -1
  190. package/dist/features/content-rail/contentRailMeta.js.map +1 -1
  191. package/dist/features/data-table/adapters/inbound/DataTable.d.ts.map +1 -1
  192. package/dist/features/data-table/adapters/inbound/DataTable.js +1 -1
  193. package/dist/features/data-table/adapters/inbound/DataTable.js.map +1 -1
  194. package/dist/features/data-table/dataTableMeta.js.map +1 -1
  195. package/dist/features/date-picker/adapters/inbound/DatePicker.native.d.ts.map +1 -1
  196. package/dist/features/date-picker/adapters/inbound/DatePicker.native.js +1 -1
  197. package/dist/features/date-picker/adapters/inbound/DatePicker.native.js.map +1 -1
  198. package/dist/features/date-picker/adapters/inbound/DatePicker.web.d.ts.map +1 -1
  199. package/dist/features/date-picker/adapters/inbound/DatePicker.web.js +1 -1
  200. package/dist/features/date-picker/adapters/inbound/DatePicker.web.js.map +1 -1
  201. package/dist/features/date-picker/datePickerMeta.js.map +1 -1
  202. package/dist/features/dialog/adapters/inbound/Dialog.d.ts.map +1 -1
  203. package/dist/features/dialog/adapters/inbound/Dialog.js +2 -2
  204. package/dist/features/dialog/adapters/inbound/Dialog.js.map +1 -1
  205. package/dist/features/dialog/dialogMeta.js +1 -1
  206. package/dist/features/dialog/dialogMeta.js.map +1 -1
  207. package/dist/features/dialog/utils/resolveDialogWidth.d.ts +3 -0
  208. package/dist/features/dialog/utils/resolveDialogWidth.d.ts.map +1 -0
  209. package/dist/features/dialog/utils/resolveDialogWidth.js +12 -0
  210. package/dist/features/dialog/utils/resolveDialogWidth.js.map +1 -0
  211. package/dist/features/empty-state/adapters/inbound/EmptyState.d.ts.map +1 -1
  212. package/dist/features/empty-state/adapters/inbound/EmptyState.js +1 -1
  213. package/dist/features/empty-state/adapters/inbound/EmptyState.js.map +1 -1
  214. package/dist/features/empty-state/emptyStateMeta.js.map +1 -1
  215. package/dist/features/form/adapters/inbound/Form.d.ts.map +1 -1
  216. package/dist/features/form/adapters/inbound/Form.js +1 -1
  217. package/dist/features/form/adapters/inbound/Form.js.map +1 -1
  218. package/dist/features/form/adapters/inbound/FormActions.d.ts.map +1 -1
  219. package/dist/features/form/adapters/inbound/FormActions.js +1 -1
  220. package/dist/features/form/adapters/inbound/FormActions.js.map +1 -1
  221. package/dist/features/form/adapters/inbound/FormError.d.ts.map +1 -1
  222. package/dist/features/form/adapters/inbound/FormError.js +2 -2
  223. package/dist/features/form/adapters/inbound/FormError.js.map +1 -1
  224. package/dist/features/form/checkbox/adapters/inbound/Checkbox.d.ts.map +1 -1
  225. package/dist/features/form/checkbox/adapters/inbound/Checkbox.js +1 -1
  226. package/dist/features/form/checkbox/adapters/inbound/Checkbox.js.map +1 -1
  227. package/dist/features/form/checkbox/adapters/inbound/CheckboxGroup.d.ts.map +1 -1
  228. package/dist/features/form/checkbox/adapters/inbound/CheckboxGroup.js +1 -1
  229. package/dist/features/form/checkbox/adapters/inbound/CheckboxGroup.js.map +1 -1
  230. package/dist/features/form/checkbox/checkboxMeta.js.map +1 -1
  231. package/dist/features/form/field/adapters/inbound/Field.d.ts.map +1 -1
  232. package/dist/features/form/field/adapters/inbound/Field.js +1 -1
  233. package/dist/features/form/field/adapters/inbound/Field.js.map +1 -1
  234. package/dist/features/form/field/meta.js.map +1 -1
  235. package/dist/features/form/formActionsMeta.js.map +1 -1
  236. package/dist/features/form/formErrorMeta.js.map +1 -1
  237. package/dist/features/form/formMeta.js.map +1 -1
  238. package/dist/features/form/radio/adapters/inbound/Radio.d.ts.map +1 -1
  239. package/dist/features/form/radio/adapters/inbound/Radio.js +1 -1
  240. package/dist/features/form/radio/adapters/inbound/Radio.js.map +1 -1
  241. package/dist/features/form/radio/adapters/inbound/RadioGroup.d.ts.map +1 -1
  242. package/dist/features/form/radio/adapters/inbound/RadioGroup.js +2 -2
  243. package/dist/features/form/radio/adapters/inbound/RadioGroup.js.map +1 -1
  244. package/dist/{constants/keyboard.d.ts → features/form/radio/constants.d.ts} +1 -1
  245. package/dist/features/form/radio/constants.d.ts.map +1 -0
  246. package/dist/{constants/keyboard.js → features/form/radio/constants.js} +1 -1
  247. package/dist/features/form/radio/constants.js.map +1 -0
  248. package/dist/features/form/radio/radioMeta.js +1 -1
  249. package/dist/features/form/radio/radioMeta.js.map +1 -1
  250. package/dist/features/form/radio/themeRecipeMeta.js +1 -1
  251. package/dist/features/form/radio/themeRecipeMeta.js.map +1 -1
  252. package/dist/features/form/radio/utils/handleRadioOptionKeyDown.js +1 -1
  253. package/dist/features/form/radio/utils/handleRadioOptionKeyDown.js.map +1 -1
  254. package/dist/features/form/radio/utils/resolveRadioGroupThemeRecipe.d.ts +2 -2
  255. package/dist/features/form/radio/utils/resolveRadioGroupThemeRecipe.d.ts.map +1 -1
  256. package/dist/features/form/radio/utils/resolveRadioGroupThemeRecipe.js.map +1 -1
  257. package/dist/features/form/search-input/adapters/inbound/SearchInput.d.ts.map +1 -1
  258. package/dist/features/form/search-input/adapters/inbound/SearchInput.js +1 -1
  259. package/dist/features/form/search-input/adapters/inbound/SearchInput.js.map +1 -1
  260. package/dist/features/form/search-input/searchInputMeta.js.map +1 -1
  261. package/dist/features/form/select/adapters/inbound/Select.native.d.ts.map +1 -1
  262. package/dist/features/form/select/adapters/inbound/Select.native.js +1 -1
  263. package/dist/features/form/select/adapters/inbound/Select.native.js.map +1 -1
  264. package/dist/features/form/select/adapters/inbound/Select.web.d.ts.map +1 -1
  265. package/dist/features/form/select/adapters/inbound/Select.web.js +1 -1
  266. package/dist/features/form/select/adapters/inbound/Select.web.js.map +1 -1
  267. package/dist/features/form/select/selectMeta.js.map +1 -1
  268. package/dist/features/form/switch/adapters/inbound/Switch.d.ts.map +1 -1
  269. package/dist/features/form/switch/adapters/inbound/Switch.js +1 -1
  270. package/dist/features/form/switch/adapters/inbound/Switch.js.map +1 -1
  271. package/dist/features/form/switch/switchMeta.js.map +1 -1
  272. package/dist/features/form/text-input/adapters/inbound/TextInput.d.ts.map +1 -1
  273. package/dist/features/form/text-input/adapters/inbound/TextInput.js +3 -3
  274. package/dist/features/form/text-input/adapters/inbound/TextInput.js.map +1 -1
  275. package/dist/features/form/text-input/textInputMeta.js.map +1 -1
  276. package/dist/features/gradient/adapters/inbound/Gradient.d.ts.map +1 -1
  277. package/dist/features/gradient/adapters/inbound/Gradient.js +1 -1
  278. package/dist/features/gradient/adapters/inbound/Gradient.js.map +1 -1
  279. package/dist/features/gradient/gradientMeta.js +1 -1
  280. package/dist/features/gradient/gradientMeta.js.map +1 -1
  281. package/dist/features/hero/adapters/inbound/Hero.d.ts.map +1 -1
  282. package/dist/features/hero/adapters/inbound/Hero.js +1 -1
  283. package/dist/features/hero/adapters/inbound/Hero.js.map +1 -1
  284. package/dist/features/hero/heroMeta.js.map +1 -1
  285. package/dist/features/icon/adapters/inbound/Icon.d.ts.map +1 -1
  286. package/dist/features/icon/adapters/inbound/Icon.js +1 -1
  287. package/dist/features/icon/adapters/inbound/Icon.js.map +1 -1
  288. package/dist/features/icon/iconMeta.js.map +1 -1
  289. package/dist/features/icon/utils/resolveIconSize.d.ts +3 -0
  290. package/dist/features/icon/utils/resolveIconSize.d.ts.map +1 -0
  291. package/dist/features/icon/utils/resolveIconSize.js +12 -0
  292. package/dist/features/icon/utils/resolveIconSize.js.map +1 -0
  293. package/dist/features/image/adapters/inbound/Image.d.ts.map +1 -1
  294. package/dist/features/image/adapters/inbound/Image.js +2 -2
  295. package/dist/features/image/adapters/inbound/Image.js.map +1 -1
  296. package/dist/features/image/imageMeta.js.map +1 -1
  297. package/dist/features/keyboard-avoiding-view/adapters/inbound/KeyboardAvoidingView.d.ts.map +1 -1
  298. package/dist/features/keyboard-avoiding-view/adapters/inbound/KeyboardAvoidingView.js +1 -1
  299. package/dist/features/keyboard-avoiding-view/adapters/inbound/KeyboardAvoidingView.js.map +1 -1
  300. package/dist/features/keyboard-avoiding-view/keyboardAvoidingViewMeta.js +1 -1
  301. package/dist/features/keyboard-avoiding-view/keyboardAvoidingViewMeta.js.map +1 -1
  302. package/dist/features/layout/adapters/inbound/AppShell.d.ts.map +1 -1
  303. package/dist/features/layout/adapters/inbound/AppShell.js +1 -1
  304. package/dist/features/layout/adapters/inbound/AppShell.js.map +1 -1
  305. package/dist/features/layout/adapters/inbound/Divider.d.ts.map +1 -1
  306. package/dist/features/layout/adapters/inbound/Divider.js +1 -1
  307. package/dist/features/layout/adapters/inbound/Divider.js.map +1 -1
  308. package/dist/features/layout/adapters/inbound/Grid.d.ts.map +1 -1
  309. package/dist/features/layout/adapters/inbound/Grid.js +1 -1
  310. package/dist/features/layout/adapters/inbound/Grid.js.map +1 -1
  311. package/dist/features/layout/adapters/inbound/Screen.d.ts.map +1 -1
  312. package/dist/features/layout/adapters/inbound/Screen.js +2 -2
  313. package/dist/features/layout/adapters/inbound/Screen.js.map +1 -1
  314. package/dist/features/layout/adapters/inbound/ScrollView.d.ts.map +1 -1
  315. package/dist/features/layout/adapters/inbound/ScrollView.js +1 -1
  316. package/dist/features/layout/adapters/inbound/ScrollView.js.map +1 -1
  317. package/dist/features/layout/adapters/inbound/View.d.ts.map +1 -1
  318. package/dist/features/layout/adapters/inbound/View.js +1 -1
  319. package/dist/features/layout/adapters/inbound/View.js.map +1 -1
  320. package/dist/features/layout/appShellMeta.js.map +1 -1
  321. package/dist/features/layout/constants.js.map +1 -1
  322. package/dist/features/layout/dividerMeta.js.map +1 -1
  323. package/dist/features/layout/gridMeta.js +1 -1
  324. package/dist/features/layout/gridMeta.js.map +1 -1
  325. package/dist/features/layout/screenMeta.js +1 -1
  326. package/dist/features/layout/screenMeta.js.map +1 -1
  327. package/dist/features/layout/scrollViewMeta.js +1 -1
  328. package/dist/features/layout/scrollViewMeta.js.map +1 -1
  329. package/dist/features/layout/utils/resolvePageMaxWidth.d.ts +3 -0
  330. package/dist/features/layout/utils/resolvePageMaxWidth.d.ts.map +1 -0
  331. package/dist/features/layout/utils/resolvePageMaxWidth.js +12 -0
  332. package/dist/features/layout/utils/resolvePageMaxWidth.js.map +1 -0
  333. package/dist/features/layout/viewMeta.js +1 -1
  334. package/dist/features/layout/viewMeta.js.map +1 -1
  335. package/dist/features/list/adapters/inbound/FlatList.d.ts.map +1 -1
  336. package/dist/features/list/adapters/inbound/FlatList.js +1 -1
  337. package/dist/features/list/adapters/inbound/FlatList.js.map +1 -1
  338. package/dist/features/list/adapters/inbound/List.d.ts.map +1 -1
  339. package/dist/features/list/adapters/inbound/List.js +1 -1
  340. package/dist/features/list/adapters/inbound/List.js.map +1 -1
  341. package/dist/features/list/adapters/inbound/ListItem.d.ts.map +1 -1
  342. package/dist/features/list/adapters/inbound/ListItem.js +2 -2
  343. package/dist/features/list/adapters/inbound/ListItem.js.map +1 -1
  344. package/dist/features/list/adapters/inbound/ListSection.d.ts.map +1 -1
  345. package/dist/features/list/adapters/inbound/ListSection.js +1 -1
  346. package/dist/features/list/adapters/inbound/ListSection.js.map +1 -1
  347. package/dist/features/list/adapters/inbound/SectionList.d.ts.map +1 -1
  348. package/dist/features/list/adapters/inbound/SectionList.js +1 -1
  349. package/dist/features/list/adapters/inbound/SectionList.js.map +1 -1
  350. package/dist/features/list/flatListMeta.js +1 -1
  351. package/dist/features/list/flatListMeta.js.map +1 -1
  352. package/dist/features/list/meta.js.map +1 -1
  353. package/dist/features/list/sectionListMeta.js.map +1 -1
  354. package/dist/features/missing-element/adapters/inbound/MissingElement.d.ts.map +1 -1
  355. package/dist/features/missing-element/adapters/inbound/MissingElement.js +2 -2
  356. package/dist/features/missing-element/adapters/inbound/MissingElement.js.map +1 -1
  357. package/dist/features/missing-element/missingElementMeta.js.map +1 -1
  358. package/dist/features/pagination/adapters/inbound/Pagination.d.ts.map +1 -1
  359. package/dist/features/pagination/adapters/inbound/Pagination.js +1 -1
  360. package/dist/features/pagination/adapters/inbound/Pagination.js.map +1 -1
  361. package/dist/features/pagination/paginationMeta.js.map +1 -1
  362. package/dist/features/palette-item/adapters/inbound/PaletteItem.d.ts.map +1 -1
  363. package/dist/features/palette-item/adapters/inbound/PaletteItem.js +2 -2
  364. package/dist/features/palette-item/adapters/inbound/PaletteItem.js.map +1 -1
  365. package/dist/features/palette-item/paletteItemMeta.js.map +1 -1
  366. package/dist/{corePlugin.d.ts → features/plugin/ZORA_CORE_PLUGIN.d.ts} +2 -2
  367. package/dist/features/plugin/ZORA_CORE_PLUGIN.d.ts.map +1 -0
  368. package/dist/{corePlugin.js → features/plugin/ZORA_CORE_PLUGIN.js} +3 -3
  369. package/dist/features/plugin/ZORA_CORE_PLUGIN.js.map +1 -0
  370. package/dist/features/plugin/ZORA_CORE_PLUGIN_METADATA.d.ts +3 -0
  371. package/dist/features/plugin/ZORA_CORE_PLUGIN_METADATA.d.ts.map +1 -0
  372. package/dist/{corePluginMetadata.js → features/plugin/ZORA_CORE_PLUGIN_METADATA.js} +3 -3
  373. package/dist/features/plugin/ZORA_CORE_PLUGIN_METADATA.js.map +1 -0
  374. package/dist/features/plugin/application/use-cases/composeZoraPluginMetadata.d.ts +4 -0
  375. package/dist/features/plugin/application/use-cases/composeZoraPluginMetadata.d.ts.map +1 -0
  376. package/dist/{pluginComposition.js → features/plugin/application/use-cases/composeZoraPluginMetadata.js} +4 -51
  377. package/dist/features/plugin/application/use-cases/composeZoraPluginMetadata.js.map +1 -0
  378. package/dist/features/plugin/application/use-cases/composeZoraPlugins.d.ts +4 -0
  379. package/dist/features/plugin/application/use-cases/composeZoraPlugins.d.ts.map +1 -0
  380. package/dist/features/plugin/application/use-cases/composeZoraPlugins.js +41 -0
  381. package/dist/features/plugin/application/use-cases/composeZoraPlugins.js.map +1 -0
  382. package/dist/features/plugin/domain/ZoraPluginCompositionError.d.ts +14 -0
  383. package/dist/features/plugin/domain/ZoraPluginCompositionError.d.ts.map +1 -0
  384. package/dist/features/plugin/domain/ZoraPluginCompositionError.js +14 -0
  385. package/dist/features/plugin/domain/ZoraPluginCompositionError.js.map +1 -0
  386. package/dist/features/plugin/public.d.ts +4 -0
  387. package/dist/features/plugin/public.d.ts.map +1 -0
  388. package/dist/features/plugin/public.js +4 -0
  389. package/dist/features/plugin/public.js.map +1 -0
  390. package/dist/features/plugin/runtime.d.ts +3 -0
  391. package/dist/features/plugin/runtime.d.ts.map +1 -0
  392. package/dist/features/plugin/runtime.js +3 -0
  393. package/dist/features/plugin/runtime.js.map +1 -0
  394. package/dist/features/popover-menu/adapters/inbound/PopoverMenu.d.ts.map +1 -1
  395. package/dist/features/popover-menu/adapters/inbound/PopoverMenu.js +3 -3
  396. package/dist/features/popover-menu/adapters/inbound/PopoverMenu.js.map +1 -1
  397. package/dist/features/popover-menu/popoverMenuMeta.js.map +1 -1
  398. package/dist/features/progress/adapters/inbound/Progress.d.ts.map +1 -1
  399. package/dist/features/progress/adapters/inbound/Progress.js +2 -2
  400. package/dist/features/progress/adapters/inbound/Progress.js.map +1 -1
  401. package/dist/features/progress/adapters/inbound/ProgressRing.d.ts.map +1 -1
  402. package/dist/features/progress/adapters/inbound/ProgressRing.js +2 -2
  403. package/dist/features/progress/adapters/inbound/ProgressRing.js.map +1 -1
  404. package/dist/features/progress/progressMeta.js +1 -1
  405. package/dist/features/progress/progressMeta.js.map +1 -1
  406. package/dist/features/rating/adapters/inbound/Rating.d.ts.map +1 -1
  407. package/dist/features/rating/adapters/inbound/Rating.js +3 -3
  408. package/dist/features/rating/adapters/inbound/Rating.js.map +1 -1
  409. package/dist/features/rating/ratingMeta.js.map +1 -1
  410. package/dist/features/reader/adapters/inbound/ReaderSurface.d.ts.map +1 -1
  411. package/dist/features/reader/adapters/inbound/ReaderSurface.js +2 -2
  412. package/dist/features/reader/adapters/inbound/ReaderSurface.js.map +1 -1
  413. package/dist/features/reader/meta.js +1 -1
  414. package/dist/features/reader/meta.js.map +1 -1
  415. package/dist/features/registry/ZORA_COMPONENT_REGISTRY.d.ts +3 -0
  416. package/dist/features/registry/ZORA_COMPONENT_REGISTRY.d.ts.map +1 -0
  417. package/dist/features/registry/ZORA_COMPONENT_REGISTRY.js +151 -0
  418. package/dist/features/registry/ZORA_COMPONENT_REGISTRY.js.map +1 -0
  419. package/dist/features/registry/public.d.ts +2 -0
  420. package/dist/features/registry/public.d.ts.map +1 -0
  421. package/dist/features/registry/public.js +2 -0
  422. package/dist/features/registry/public.js.map +1 -0
  423. package/dist/features/scanner/adapters/inbound/BarcodeScannerView.d.ts.map +1 -1
  424. package/dist/features/scanner/adapters/inbound/BarcodeScannerView.js +2 -2
  425. package/dist/features/scanner/adapters/inbound/BarcodeScannerView.js.map +1 -1
  426. package/dist/features/scanner/adapters/inbound/CameraPermissionView.d.ts.map +1 -1
  427. package/dist/features/scanner/adapters/inbound/CameraPermissionView.js +1 -1
  428. package/dist/features/scanner/adapters/inbound/CameraPermissionView.js.map +1 -1
  429. package/dist/features/scanner/adapters/inbound/ScanOverlay.d.ts.map +1 -1
  430. package/dist/features/scanner/adapters/inbound/ScanOverlay.js +2 -2
  431. package/dist/features/scanner/adapters/inbound/ScanOverlay.js.map +1 -1
  432. package/dist/features/scanner/meta.js +1 -1
  433. package/dist/features/scanner/meta.js.map +1 -1
  434. package/dist/features/section/adapters/inbound/ScreenSection.d.ts.map +1 -1
  435. package/dist/features/section/adapters/inbound/ScreenSection.js +1 -1
  436. package/dist/features/section/adapters/inbound/ScreenSection.js.map +1 -1
  437. package/dist/features/section/adapters/inbound/SectionHeader.d.ts.map +1 -1
  438. package/dist/features/section/adapters/inbound/SectionHeader.js +1 -1
  439. package/dist/features/section/adapters/inbound/SectionHeader.js.map +1 -1
  440. package/dist/features/section/screenSectionMeta.js +1 -1
  441. package/dist/features/section/screenSectionMeta.js.map +1 -1
  442. package/dist/features/section/sectionHeaderMeta.js.map +1 -1
  443. package/dist/features/selection/meta.js.map +1 -1
  444. package/dist/features/skeleton/adapters/inbound/Skeleton.d.ts.map +1 -1
  445. package/dist/features/skeleton/adapters/inbound/Skeleton.js +2 -2
  446. package/dist/features/skeleton/adapters/inbound/Skeleton.js.map +1 -1
  447. package/dist/features/skeleton/adapters/inbound/SkeletonCard.d.ts.map +1 -1
  448. package/dist/features/skeleton/adapters/inbound/SkeletonCard.js +1 -1
  449. package/dist/features/skeleton/adapters/inbound/SkeletonCard.js.map +1 -1
  450. package/dist/features/skeleton/adapters/inbound/SkeletonList.d.ts.map +1 -1
  451. package/dist/features/skeleton/adapters/inbound/SkeletonList.js +1 -1
  452. package/dist/features/skeleton/adapters/inbound/SkeletonList.js.map +1 -1
  453. package/dist/features/skeleton/adapters/inbound/SkeletonText.d.ts.map +1 -1
  454. package/dist/features/skeleton/adapters/inbound/SkeletonText.js +1 -1
  455. package/dist/features/skeleton/adapters/inbound/SkeletonText.js.map +1 -1
  456. package/dist/features/skeleton/skeletonMeta.js.map +1 -1
  457. package/dist/features/surface/adapters/inbound/Surface.d.ts.map +1 -1
  458. package/dist/features/surface/adapters/inbound/Surface.js +1 -1
  459. package/dist/features/surface/adapters/inbound/Surface.js.map +1 -1
  460. package/dist/features/surface/surfaceMeta.js +1 -1
  461. package/dist/features/surface/surfaceMeta.js.map +1 -1
  462. package/dist/features/tabs/adapters/inbound/Tab.d.ts.map +1 -1
  463. package/dist/features/tabs/adapters/inbound/Tab.js +1 -1
  464. package/dist/features/tabs/adapters/inbound/Tab.js.map +1 -1
  465. package/dist/features/tabs/adapters/inbound/TabList.d.ts.map +1 -1
  466. package/dist/features/tabs/adapters/inbound/TabList.js +1 -1
  467. package/dist/features/tabs/adapters/inbound/TabList.js.map +1 -1
  468. package/dist/features/tabs/adapters/inbound/TabPanel.d.ts.map +1 -1
  469. package/dist/features/tabs/adapters/inbound/TabPanel.js +1 -1
  470. package/dist/features/tabs/adapters/inbound/TabPanel.js.map +1 -1
  471. package/dist/features/tabs/adapters/inbound/Tabs.d.ts.map +1 -1
  472. package/dist/features/tabs/adapters/inbound/Tabs.js +1 -1
  473. package/dist/features/tabs/adapters/inbound/Tabs.js.map +1 -1
  474. package/dist/features/tabs/tabListMeta.js.map +1 -1
  475. package/dist/features/tabs/tabMeta.js.map +1 -1
  476. package/dist/features/tabs/tabPanelMeta.js +1 -1
  477. package/dist/features/tabs/tabPanelMeta.js.map +1 -1
  478. package/dist/features/tabs/tabsMeta.js.map +1 -1
  479. package/dist/features/theme/ThemeModeToggle.meta.d.ts.map +1 -0
  480. package/dist/features/theme/ThemeModeToggle.meta.js.map +1 -0
  481. package/dist/{theme → features/theme/adapters/inbound}/ThemeModeToggle.d.ts +1 -1
  482. package/dist/features/theme/adapters/inbound/ThemeModeToggle.d.ts.map +1 -0
  483. package/dist/{theme → features/theme/adapters/inbound}/ThemeModeToggle.js +3 -3
  484. package/dist/features/theme/adapters/inbound/ThemeModeToggle.js.map +1 -0
  485. package/dist/{theme → features/theme/adapters/inbound}/ZoraProvider.d.ts +2 -2
  486. package/dist/features/theme/adapters/inbound/ZoraProvider.d.ts.map +1 -0
  487. package/dist/{theme → features/theme/adapters/inbound}/ZoraProvider.js +4 -4
  488. package/dist/features/theme/adapters/inbound/ZoraProvider.js.map +1 -0
  489. package/dist/{theme → features/theme/adapters/inbound}/ZoraThemeScope.d.ts +2 -2
  490. package/dist/features/theme/adapters/inbound/ZoraThemeScope.d.ts.map +1 -0
  491. package/dist/features/theme/adapters/inbound/ZoraThemeScope.js +24 -0
  492. package/dist/features/theme/adapters/inbound/ZoraThemeScope.js.map +1 -0
  493. package/dist/{theme → features/theme/adapters/inbound}/withZoraThemeScope.d.ts +1 -1
  494. package/dist/features/theme/adapters/inbound/withZoraThemeScope.d.ts.map +1 -0
  495. package/dist/features/theme/adapters/inbound/withZoraThemeScope.js.map +1 -0
  496. package/dist/{theme → features/theme/application/use-cases}/compileZoraTheme.d.ts +1 -1
  497. package/dist/features/theme/application/use-cases/compileZoraTheme.d.ts.map +1 -0
  498. package/dist/{theme → features/theme/application/use-cases}/compileZoraTheme.js +2 -1
  499. package/dist/features/theme/application/use-cases/compileZoraTheme.js.map +1 -0
  500. package/dist/{theme → features/theme/application/use-cases}/createZoraThemeConfig.d.ts +1 -1
  501. package/dist/features/theme/application/use-cases/createZoraThemeConfig.d.ts.map +1 -0
  502. package/dist/{theme → features/theme/application/use-cases}/createZoraThemeConfig.js +1 -1
  503. package/dist/features/theme/application/use-cases/createZoraThemeConfig.js.map +1 -0
  504. package/dist/{internal → features/theme}/colorModel.d.ts +1 -5
  505. package/dist/features/theme/colorModel.d.ts.map +1 -0
  506. package/dist/features/theme/colorModel.js +6 -0
  507. package/dist/features/theme/colorModel.js.map +1 -0
  508. package/dist/features/theme/composition/ZoraRuntimeCapabilities.d.ts.map +1 -0
  509. package/dist/features/theme/composition/ZoraRuntimeCapabilities.js.map +1 -0
  510. package/dist/{theme → features/theme/composition}/ZoraRuntimeCapabilities.native.d.ts +1 -1
  511. package/dist/features/theme/composition/ZoraRuntimeCapabilities.native.d.ts.map +1 -0
  512. package/dist/features/theme/composition/ZoraRuntimeCapabilities.native.js.map +1 -0
  513. package/dist/{theme → features/theme/composition}/ZoraRuntimeCapabilities.web.d.ts +1 -1
  514. package/dist/features/theme/composition/ZoraRuntimeCapabilities.web.d.ts.map +1 -0
  515. package/dist/features/theme/composition/ZoraRuntimeCapabilities.web.js.map +1 -0
  516. package/dist/{theme → features/theme/composition}/ZoraThemeRuntimeContext.d.ts +1 -1
  517. package/dist/features/theme/composition/ZoraThemeRuntimeContext.d.ts.map +1 -0
  518. package/dist/{theme → features/theme/composition}/ZoraThemeRuntimeContext.js +1 -1
  519. package/dist/features/theme/composition/ZoraThemeRuntimeContext.js.map +1 -0
  520. package/dist/features/theme/composition/useZoraTheme.d.ts +2 -0
  521. package/dist/features/theme/composition/useZoraTheme.d.ts.map +1 -0
  522. package/dist/features/theme/composition/useZoraTheme.js.map +1 -0
  523. package/dist/features/theme/composition/useZoraThemeRecipe.d.ts.map +1 -0
  524. package/dist/{theme → features/theme/composition}/useZoraThemeRecipe.js +1 -1
  525. package/dist/features/theme/composition/useZoraThemeRecipe.js.map +1 -0
  526. package/dist/{theme → features/theme}/public.d.ts +3 -3
  527. package/dist/features/theme/public.d.ts.map +1 -0
  528. package/dist/features/theme/public.js +4 -0
  529. package/dist/features/theme/public.js.map +1 -0
  530. package/dist/features/theme/runtime.d.ts +10 -0
  531. package/dist/features/theme/runtime.d.ts.map +1 -0
  532. package/dist/features/theme/runtime.js +6 -0
  533. package/dist/features/theme/runtime.js.map +1 -0
  534. package/dist/{theme → features/theme/utils}/resolveThemeModeToggleState.d.ts +1 -1
  535. package/dist/features/theme/utils/resolveThemeModeToggleState.d.ts.map +1 -0
  536. package/dist/features/theme/utils/resolveThemeModeToggleState.js.map +1 -0
  537. package/dist/{theme → features/theme/utils}/resolveZoraScopedThemeId.d.ts +1 -1
  538. package/dist/features/theme/utils/resolveZoraScopedThemeId.d.ts.map +1 -0
  539. package/dist/features/theme/utils/resolveZoraScopedThemeId.js.map +1 -0
  540. package/dist/features/theme/utils/resolveZoraThemeRecipe.d.ts.map +1 -0
  541. package/dist/{theme → features/theme/utils}/resolveZoraThemeRecipe.js +1 -1
  542. package/dist/features/theme/utils/resolveZoraThemeRecipe.js.map +1 -0
  543. package/dist/features/theme/zoraDefaultTheme.d.ts +3 -0
  544. package/dist/features/theme/zoraDefaultTheme.d.ts.map +1 -0
  545. package/dist/features/theme/zoraDefaultTheme.js.map +1 -0
  546. package/dist/features/time-picker/adapters/inbound/TimePicker.native.d.ts.map +1 -1
  547. package/dist/features/time-picker/adapters/inbound/TimePicker.native.js +1 -1
  548. package/dist/features/time-picker/adapters/inbound/TimePicker.native.js.map +1 -1
  549. package/dist/features/time-picker/adapters/inbound/TimePicker.web.d.ts.map +1 -1
  550. package/dist/features/time-picker/adapters/inbound/TimePicker.web.js +1 -1
  551. package/dist/features/time-picker/adapters/inbound/TimePicker.web.js.map +1 -1
  552. package/dist/features/time-picker/timePickerMeta.js.map +1 -1
  553. package/dist/features/timeline/adapters/inbound/Timeline.d.ts.map +1 -1
  554. package/dist/features/timeline/adapters/inbound/Timeline.js +3 -3
  555. package/dist/features/timeline/adapters/inbound/Timeline.js.map +1 -1
  556. package/dist/features/timeline/meta.js.map +1 -1
  557. package/dist/features/toast/adapters/inbound/Toast.d.ts.map +1 -1
  558. package/dist/features/toast/adapters/inbound/Toast.js +1 -1
  559. package/dist/features/toast/adapters/inbound/Toast.js.map +1 -1
  560. package/dist/features/toast/toastMeta.js.map +1 -1
  561. package/dist/features/toast/toastProviderMeta.js.map +1 -1
  562. package/dist/features/toolbar/adapters/inbound/Toolbar.d.ts.map +1 -1
  563. package/dist/features/toolbar/adapters/inbound/Toolbar.js +1 -1
  564. package/dist/features/toolbar/adapters/inbound/Toolbar.js.map +1 -1
  565. package/dist/features/toolbar/toolbarMeta.js.map +1 -1
  566. package/dist/features/tree-view/adapters/inbound/TreeItem.d.ts +1 -1
  567. package/dist/features/tree-view/adapters/inbound/TreeItem.d.ts.map +1 -1
  568. package/dist/features/tree-view/adapters/inbound/TreeItem.js +1 -1
  569. package/dist/features/tree-view/adapters/inbound/TreeItem.js.map +1 -1
  570. package/dist/features/tree-view/adapters/inbound/TreeView.d.ts.map +1 -1
  571. package/dist/features/tree-view/adapters/inbound/TreeView.js +1 -1
  572. package/dist/features/tree-view/adapters/inbound/TreeView.js.map +1 -1
  573. package/dist/features/tree-view/meta.js.map +1 -1
  574. package/dist/features/typography/adapters/inbound/Heading.d.ts.map +1 -1
  575. package/dist/features/typography/adapters/inbound/Heading.js +3 -3
  576. package/dist/features/typography/adapters/inbound/Heading.js.map +1 -1
  577. package/dist/features/typography/adapters/inbound/Text.d.ts.map +1 -1
  578. package/dist/features/typography/adapters/inbound/Text.js +3 -3
  579. package/dist/features/typography/adapters/inbound/Text.js.map +1 -1
  580. package/dist/features/typography/headingMeta.js +2 -2
  581. package/dist/features/typography/headingMeta.js.map +1 -1
  582. package/dist/features/typography/textMeta.js +2 -2
  583. package/dist/features/typography/textMeta.js.map +1 -1
  584. package/dist/features/typography/utils/headingThemeRecipeMeta.js +1 -1
  585. package/dist/features/typography/utils/headingThemeRecipeMeta.js.map +1 -1
  586. package/dist/features/typography/utils/resolveHeadingThemeRecipe.d.ts +1 -1
  587. package/dist/features/typography/utils/resolveTextThemeRecipe.d.ts +1 -1
  588. package/dist/features/typography/utils/textThemeRecipeMeta.js +1 -1
  589. package/dist/features/typography/utils/textThemeRecipeMeta.js.map +1 -1
  590. package/dist/features/uploader/adapters/inbound/Uploader.d.ts.map +1 -1
  591. package/dist/features/uploader/adapters/inbound/Uploader.js +1 -1
  592. package/dist/features/uploader/adapters/inbound/Uploader.js.map +1 -1
  593. package/dist/features/uploader/uploaderMeta.js.map +1 -1
  594. package/dist/index.d.ts +11 -11
  595. package/dist/index.d.ts.map +1 -1
  596. package/dist/index.js +7 -7
  597. package/dist/index.js.map +1 -1
  598. package/dist/types/accordion.d.ts +1 -1
  599. package/dist/types/accordion.d.ts.map +1 -1
  600. package/dist/types/accordion.js.map +1 -1
  601. package/dist/types/activity-indicator.d.ts +1 -1
  602. package/dist/types/activity-indicator.d.ts.map +1 -1
  603. package/dist/types/activity-indicator.js.map +1 -1
  604. package/dist/types/app-bar.d.ts +1 -1
  605. package/dist/types/app-bar.d.ts.map +1 -1
  606. package/dist/types/app-bar.js.map +1 -1
  607. package/dist/types/auth.d.ts +1 -1
  608. package/dist/types/auth.d.ts.map +1 -1
  609. package/dist/types/auth.js.map +1 -1
  610. package/dist/{metadata/types.d.ts → types/authoring.d.ts} +1 -1
  611. package/dist/types/authoring.d.ts.map +1 -0
  612. package/dist/types/authoring.js +2 -0
  613. package/dist/types/authoring.js.map +1 -0
  614. package/dist/types/avatar-group.d.ts +2 -2
  615. package/dist/types/avatar-group.d.ts.map +1 -1
  616. package/dist/types/avatar-group.js.map +1 -1
  617. package/dist/types/avatar.d.ts +2 -2
  618. package/dist/types/avatar.d.ts.map +1 -1
  619. package/dist/types/avatar.js.map +1 -1
  620. package/dist/types/badge.d.ts +4 -2
  621. package/dist/types/badge.d.ts.map +1 -1
  622. package/dist/types/badge.js.map +1 -1
  623. package/dist/{theme/ZoraBaseProps.d.ts → types/base.d.ts} +2 -2
  624. package/dist/types/base.d.ts.map +1 -0
  625. package/dist/types/base.js +2 -0
  626. package/dist/types/base.js.map +1 -0
  627. package/dist/types/breadcrumbs.d.ts +1 -1
  628. package/dist/types/breadcrumbs.d.ts.map +1 -1
  629. package/dist/types/breadcrumbs.js.map +1 -1
  630. package/dist/types/button-group.d.ts +1 -1
  631. package/dist/types/button-group.d.ts.map +1 -1
  632. package/dist/types/button-group.js.map +1 -1
  633. package/dist/types/button.d.ts +4 -2
  634. package/dist/types/button.d.ts.map +1 -1
  635. package/dist/types/button.js.map +1 -1
  636. package/dist/types/card.d.ts +2 -2
  637. package/dist/types/card.d.ts.map +1 -1
  638. package/dist/types/card.js.map +1 -1
  639. package/dist/types/chat.d.ts +2 -2
  640. package/dist/types/chat.d.ts.map +1 -1
  641. package/dist/types/chat.js.map +1 -1
  642. package/dist/types/checkbox.d.ts +1 -1
  643. package/dist/types/checkbox.d.ts.map +1 -1
  644. package/dist/types/checkbox.js.map +1 -1
  645. package/dist/types/chip-group.d.ts +3 -2
  646. package/dist/types/chip-group.d.ts.map +1 -1
  647. package/dist/types/chip-group.js.map +1 -1
  648. package/dist/types/chip.d.ts +3 -2
  649. package/dist/types/chip.d.ts.map +1 -1
  650. package/dist/types/chip.js.map +1 -1
  651. package/dist/types/collection-editor.d.ts +1 -1
  652. package/dist/types/collection-editor.d.ts.map +1 -1
  653. package/dist/types/collection-editor.js.map +1 -1
  654. package/dist/types/content-rail.d.ts +1 -1
  655. package/dist/types/content-rail.d.ts.map +1 -1
  656. package/dist/types/content-rail.js.map +1 -1
  657. package/dist/types/control.d.ts +3 -0
  658. package/dist/types/control.d.ts.map +1 -0
  659. package/dist/types/control.js +2 -0
  660. package/dist/types/control.js.map +1 -0
  661. package/dist/types/data-table.d.ts +1 -1
  662. package/dist/types/data-table.d.ts.map +1 -1
  663. package/dist/types/data-table.js.map +1 -1
  664. package/dist/types/date-picker.d.ts +1 -1
  665. package/dist/types/date-picker.d.ts.map +1 -1
  666. package/dist/types/date-picker.js.map +1 -1
  667. package/dist/types/dialog.d.ts +2 -2
  668. package/dist/types/dialog.d.ts.map +1 -1
  669. package/dist/types/dialog.js.map +1 -1
  670. package/dist/types/empty-state.d.ts +3 -2
  671. package/dist/types/empty-state.d.ts.map +1 -1
  672. package/dist/types/empty-state.js.map +1 -1
  673. package/dist/types/form.d.ts +1 -1
  674. package/dist/types/form.d.ts.map +1 -1
  675. package/dist/types/form.js.map +1 -1
  676. package/dist/types/gradient.d.ts +1 -1
  677. package/dist/types/gradient.d.ts.map +1 -1
  678. package/dist/types/gradient.js.map +1 -1
  679. package/dist/types/heading.d.ts +2 -2
  680. package/dist/types/heading.d.ts.map +1 -1
  681. package/dist/types/heading.js.map +1 -1
  682. package/dist/types/hero.d.ts +3 -2
  683. package/dist/types/hero.d.ts.map +1 -1
  684. package/dist/types/hero.js.map +1 -1
  685. package/dist/types/icon-button.d.ts +4 -2
  686. package/dist/types/icon-button.d.ts.map +1 -1
  687. package/dist/types/icon-button.js.map +1 -1
  688. package/dist/types/icon.d.ts +1 -1
  689. package/dist/types/icon.d.ts.map +1 -1
  690. package/dist/types/icon.js.map +1 -1
  691. package/dist/types/image.d.ts +1 -1
  692. package/dist/types/image.d.ts.map +1 -1
  693. package/dist/types/image.js.map +1 -1
  694. package/dist/types/keyboard-avoiding-view.d.ts +1 -1
  695. package/dist/types/keyboard-avoiding-view.d.ts.map +1 -1
  696. package/dist/types/keyboard-avoiding-view.js.map +1 -1
  697. package/dist/types/layout.d.ts +2 -2
  698. package/dist/types/layout.d.ts.map +1 -1
  699. package/dist/types/layout.js.map +1 -1
  700. package/dist/types/list.d.ts +1 -1
  701. package/dist/types/list.d.ts.map +1 -1
  702. package/dist/types/list.js.map +1 -1
  703. package/dist/types/manifest-bottom-sheet.d.ts +1 -1
  704. package/dist/types/manifest-bottom-sheet.d.ts.map +1 -1
  705. package/dist/types/manifest-bottom-sheet.js.map +1 -1
  706. package/dist/types/manifest-list.d.ts +1 -1
  707. package/dist/types/manifest-list.d.ts.map +1 -1
  708. package/dist/types/manifest-list.js.map +1 -1
  709. package/dist/types/media-card.d.ts +2 -2
  710. package/dist/types/media-card.d.ts.map +1 -1
  711. package/dist/types/media-card.js.map +1 -1
  712. package/dist/types/metric-card.d.ts +3 -2
  713. package/dist/types/metric-card.d.ts.map +1 -1
  714. package/dist/types/metric-card.js.map +1 -1
  715. package/dist/types/missing-element.d.ts +1 -1
  716. package/dist/types/missing-element.d.ts.map +1 -1
  717. package/dist/types/missing-element.js.map +1 -1
  718. package/dist/types/pagination.d.ts +1 -1
  719. package/dist/types/pagination.d.ts.map +1 -1
  720. package/dist/types/pagination.js.map +1 -1
  721. package/dist/types/palette-item.d.ts +1 -1
  722. package/dist/types/palette-item.d.ts.map +1 -1
  723. package/dist/types/palette-item.js.map +1 -1
  724. package/dist/{pluginComposition.d.ts → types/plugin.d.ts} +2 -18
  725. package/dist/types/plugin.d.ts.map +1 -0
  726. package/dist/types/plugin.js +2 -0
  727. package/dist/types/plugin.js.map +1 -0
  728. package/dist/types/popover-menu.d.ts +1 -1
  729. package/dist/types/popover-menu.d.ts.map +1 -1
  730. package/dist/types/popover-menu.js.map +1 -1
  731. package/dist/types/post-card.d.ts +3 -2
  732. package/dist/types/post-card.d.ts.map +1 -1
  733. package/dist/types/post-card.js.map +1 -1
  734. package/dist/types/product-card.d.ts +1 -1
  735. package/dist/types/product-card.d.ts.map +1 -1
  736. package/dist/types/product-card.js.map +1 -1
  737. package/dist/types/progress.d.ts +3 -2
  738. package/dist/types/progress.d.ts.map +1 -1
  739. package/dist/types/progress.js.map +1 -1
  740. package/dist/types/provider.d.ts +1 -1
  741. package/dist/types/provider.d.ts.map +1 -1
  742. package/dist/types/provider.js.map +1 -1
  743. package/dist/types/radio.d.ts +1 -1
  744. package/dist/types/radio.d.ts.map +1 -1
  745. package/dist/types/radio.js.map +1 -1
  746. package/dist/types/rating.d.ts +3 -2
  747. package/dist/types/rating.d.ts.map +1 -1
  748. package/dist/types/rating.js.map +1 -1
  749. package/dist/types/reader.d.ts +1 -1
  750. package/dist/types/reader.d.ts.map +1 -1
  751. package/dist/types/reader.js.map +1 -1
  752. package/dist/{registry.d.ts → types/registry.d.ts} +0 -1
  753. package/dist/types/registry.d.ts.map +1 -0
  754. package/dist/types/registry.js +2 -0
  755. package/dist/types/registry.js.map +1 -0
  756. package/dist/types/scanner.d.ts +1 -1
  757. package/dist/types/scanner.d.ts.map +1 -1
  758. package/dist/types/scanner.js.map +1 -1
  759. package/dist/types/search-input.d.ts +2 -2
  760. package/dist/types/search-input.d.ts.map +1 -1
  761. package/dist/types/search-input.js.map +1 -1
  762. package/dist/types/section.d.ts +1 -1
  763. package/dist/types/section.d.ts.map +1 -1
  764. package/dist/types/section.js.map +1 -1
  765. package/dist/types/select.d.ts +1 -1
  766. package/dist/types/select.d.ts.map +1 -1
  767. package/dist/types/select.js.map +1 -1
  768. package/dist/types/skeleton.d.ts +1 -1
  769. package/dist/types/skeleton.d.ts.map +1 -1
  770. package/dist/types/skeleton.js.map +1 -1
  771. package/dist/types/surface.d.ts +1 -1
  772. package/dist/types/surface.d.ts.map +1 -1
  773. package/dist/types/surface.js.map +1 -1
  774. package/dist/types/switch.d.ts +1 -1
  775. package/dist/types/switch.d.ts.map +1 -1
  776. package/dist/types/switch.js.map +1 -1
  777. package/dist/types/tabs.d.ts +1 -1
  778. package/dist/types/tabs.d.ts.map +1 -1
  779. package/dist/types/tabs.js.map +1 -1
  780. package/dist/types/text-input.d.ts +2 -2
  781. package/dist/types/text-input.d.ts.map +1 -1
  782. package/dist/types/text-input.js.map +1 -1
  783. package/dist/types/text.d.ts +2 -2
  784. package/dist/types/text.d.ts.map +1 -1
  785. package/dist/types/text.js.map +1 -1
  786. package/dist/{theme/ThemeModeToggleProps.d.ts → types/theme-mode-toggle.d.ts} +1 -1
  787. package/dist/types/theme-mode-toggle.d.ts.map +1 -0
  788. package/dist/types/theme-mode-toggle.js +2 -0
  789. package/dist/types/theme-mode-toggle.js.map +1 -0
  790. package/dist/{metadata/themeRecipeTypes.d.ts → types/theme-recipe.d.ts} +2 -3
  791. package/dist/types/theme-recipe.d.ts.map +1 -0
  792. package/dist/types/theme-recipe.js +2 -0
  793. package/dist/types/theme-recipe.js.map +1 -0
  794. package/dist/{theme/types.d.ts → types/theme.d.ts} +6 -1
  795. package/dist/types/theme.d.ts.map +1 -0
  796. package/dist/types/theme.js +2 -0
  797. package/dist/types/theme.js.map +1 -0
  798. package/dist/types/time-picker.d.ts +1 -1
  799. package/dist/types/time-picker.d.ts.map +1 -1
  800. package/dist/types/time-picker.js.map +1 -1
  801. package/dist/types/timeline.d.ts +2 -2
  802. package/dist/types/timeline.d.ts.map +1 -1
  803. package/dist/types/timeline.js.map +1 -1
  804. package/dist/types/toast.d.ts +1 -1
  805. package/dist/types/toast.d.ts.map +1 -1
  806. package/dist/types/toast.js.map +1 -1
  807. package/dist/types/toolbar.d.ts +1 -1
  808. package/dist/types/toolbar.d.ts.map +1 -1
  809. package/dist/types/toolbar.js.map +1 -1
  810. package/dist/types/tree-view.d.ts +1 -1
  811. package/dist/types/tree-view.d.ts.map +1 -1
  812. package/dist/types/tree-view.js.map +1 -1
  813. package/dist/types/upload.d.ts +1 -1
  814. package/dist/types/upload.d.ts.map +1 -1
  815. package/dist/types/upload.js.map +1 -1
  816. package/package.json +14 -14
  817. package/src/audit.test.ts +1 -1
  818. package/src/features/accordion/accordionItemMeta.ts +2 -2
  819. package/src/features/accordion/accordionMeta.ts +1 -1
  820. package/src/features/accordion/adapters/inbound/Accordion.tsx +1 -1
  821. package/src/features/accordion/adapters/inbound/AccordionItem.tsx +1 -1
  822. package/src/features/activity-indicator/activityIndicatorMeta.ts +1 -1
  823. package/src/features/activity-indicator/adapters/inbound/ActivityIndicator.tsx +2 -2
  824. package/src/features/app-bar/adapters/inbound/AppBar.tsx +2 -2
  825. package/src/features/app-bar/appBarMeta.ts +1 -1
  826. package/src/features/auth/adapters/inbound/AuthForm.tsx +1 -1
  827. package/src/features/auth/adapters/inbound/AuthFormField.tsx +1 -1
  828. package/src/features/auth/adapters/inbound/ForgotPasswordForm.tsx +1 -1
  829. package/src/features/auth/adapters/inbound/OAuthProviderButton.tsx +1 -1
  830. package/src/features/auth/adapters/inbound/OAuthProviderList.tsx +1 -1
  831. package/src/features/auth/adapters/inbound/OtpForm.tsx +1 -1
  832. package/src/features/auth/adapters/inbound/SignInForm.tsx +1 -1
  833. package/src/features/auth/adapters/inbound/SignUpForm.tsx +1 -1
  834. package/src/features/auth/forgotPasswordFormMeta.ts +1 -1
  835. package/src/features/auth/oauthProviderButtonMeta.ts +2 -2
  836. package/src/features/auth/oauthProviderListMeta.ts +2 -2
  837. package/src/features/auth/otpFormMeta.ts +1 -1
  838. package/src/features/auth/public.test.ts +1 -1
  839. package/src/features/auth/signInFormMeta.ts +1 -1
  840. package/src/features/auth/signUpFormMeta.ts +1 -1
  841. package/src/{metadata → features/authoring}/bindableComponentMeta.ts +2 -2
  842. package/src/features/authoring/componentMeta.ts +190 -0
  843. package/src/{constants.ts → features/authoring/constants.ts} +10 -0
  844. package/src/{featureManifest.test.ts → features/authoring/featureManifest.test.ts} +2 -2
  845. package/src/{metadata → features/authoring}/index.ts +24 -23
  846. package/src/features/authoring/themeRecipeMeta.ts +14 -0
  847. package/src/{utils → features/authoring/utils}/createManifestBindings.ts +1 -1
  848. package/src/{utils → features/authoring/utils}/finalizeFeatureMetadata.ts +1 -1
  849. package/src/features/avatar/adapters/inbound/Avatar.tsx +3 -3
  850. package/src/features/avatar/adapters/inbound/AvatarGroup.tsx +2 -2
  851. package/src/features/avatar/avatarGroupMeta.ts +1 -1
  852. package/src/features/avatar/avatarMeta.ts +1 -1
  853. package/src/features/badge/adapters/inbound/Badge.tsx +2 -2
  854. package/src/features/badge/badgeMeta.ts +1 -1
  855. package/src/features/badge/utils/resolveBadgeRecipe.test.ts +9 -0
  856. package/src/features/badge/utils/resolveBadgeRecipe.ts +17 -0
  857. package/src/features/bottom-sheet/adapters/inbound/BottomSheet.tsx +3 -3
  858. package/src/features/bottom-sheet/bottomSheetMeta.ts +2 -2
  859. package/src/features/bottom-sheet/public.test.ts +3 -3
  860. package/src/features/breadcrumbs/adapters/inbound/Breadcrumbs.tsx +3 -3
  861. package/src/features/breadcrumbs/breadcrumbsMeta.ts +1 -1
  862. package/src/features/button/adapters/inbound/Button.tsx +2 -2
  863. package/src/features/button/adapters/inbound/ButtonGroup.tsx +1 -1
  864. package/src/features/button/adapters/inbound/IconButton.tsx +2 -2
  865. package/src/features/button/buttonGroupMeta.ts +1 -1
  866. package/src/features/button/buttonMeta.ts +3 -3
  867. package/src/features/button/iconButtonMeta.ts +1 -1
  868. package/src/features/button/utils/resolveButtonRecipe.test.ts +9 -0
  869. package/src/features/button/utils/resolveButtonRecipe.ts +17 -0
  870. package/src/features/button/utils/resolveButtonThemeRecipe.ts +4 -6
  871. package/src/features/button/utils/themeRecipeMeta.ts +2 -2
  872. package/src/features/card/adapters/inbound/Card.tsx +3 -3
  873. package/src/features/card/adapters/inbound/MediaCard.tsx +2 -2
  874. package/src/features/card/adapters/inbound/MetricCard.tsx +4 -3
  875. package/src/features/card/adapters/inbound/PostCard.test.tsx +1 -1
  876. package/src/features/card/adapters/inbound/PostCard.tsx +2 -2
  877. package/src/features/card/adapters/inbound/ProductCard.test.tsx +1 -1
  878. package/src/features/card/adapters/inbound/ProductCard.tsx +2 -2
  879. package/src/features/card/cardMeta.ts +3 -3
  880. package/src/features/card/mediaCardMeta.ts +2 -2
  881. package/src/features/card/metricCardMeta.ts +1 -1
  882. package/src/features/card/postCardMeta.ts +2 -2
  883. package/src/features/card/productCardMeta.ts +1 -1
  884. package/src/features/card/utils/resolveCardThemeRecipe.ts +1 -1
  885. package/src/features/card/utils/resolveCardVariant.test.ts +11 -0
  886. package/src/features/card/utils/resolveCardVariant.ts +15 -0
  887. package/src/features/card/utils/themeRecipeMeta.ts +1 -1
  888. package/src/features/chat/adapters/inbound/ChatListItem.test.tsx +1 -1
  889. package/src/features/chat/adapters/inbound/ChatListItem.tsx +2 -2
  890. package/src/features/chat/adapters/inbound/MessageBubble.tsx +2 -2
  891. package/src/features/chat/chatListItemMeta.ts +1 -1
  892. package/src/features/chat/messageBubbleMeta.ts +2 -2
  893. package/src/features/chip/adapters/inbound/Chip.tsx +3 -3
  894. package/src/features/chip/adapters/inbound/ChipGroup.tsx +1 -1
  895. package/src/features/chip/chipGroupMeta.ts +1 -1
  896. package/src/features/chip/chipMeta.ts +1 -1
  897. package/src/features/chip/utils/resolveChipColors.ts +1 -1
  898. package/src/features/collection-editor/adapters/inbound/CollectionEditor.tsx +1 -1
  899. package/src/features/collection-editor/meta.ts +1 -1
  900. package/src/features/content-rail/adapters/inbound/ContentRail.tsx +2 -2
  901. package/src/features/content-rail/adapters/inbound/ContentRailFlow.tsx +1 -1
  902. package/src/features/content-rail/contentRailMeta.ts +2 -2
  903. package/src/features/data-table/adapters/inbound/DataTable.tsx +1 -1
  904. package/src/features/data-table/dataTableMeta.ts +1 -1
  905. package/src/features/date-picker/adapters/inbound/DatePicker.native.tsx +1 -1
  906. package/src/features/date-picker/adapters/inbound/DatePicker.web.tsx +1 -1
  907. package/src/features/date-picker/datePickerMeta.ts +1 -1
  908. package/src/features/date-picker/public.test.ts +1 -1
  909. package/src/features/dialog/adapters/inbound/Dialog.tsx +2 -2
  910. package/src/features/dialog/dialogMeta.ts +2 -2
  911. package/src/features/dialog/utils/resolveDialogWidth.test.ts +10 -0
  912. package/src/features/dialog/utils/resolveDialogWidth.ts +13 -0
  913. package/src/features/empty-state/adapters/inbound/EmptyState.tsx +1 -1
  914. package/src/features/empty-state/emptyStateMeta.ts +1 -1
  915. package/src/features/form/adapters/inbound/Form.tsx +1 -1
  916. package/src/features/form/adapters/inbound/FormActions.tsx +1 -1
  917. package/src/features/form/adapters/inbound/FormError.tsx +2 -2
  918. package/src/features/form/checkbox/adapters/inbound/Checkbox.tsx +1 -1
  919. package/src/features/form/checkbox/adapters/inbound/CheckboxGroup.tsx +1 -1
  920. package/src/features/form/checkbox/checkboxMeta.ts +1 -1
  921. package/src/features/form/field/adapters/inbound/Field.tsx +1 -1
  922. package/src/features/form/field/meta.ts +1 -1
  923. package/src/features/form/formActionsMeta.ts +1 -1
  924. package/src/features/form/formErrorMeta.ts +1 -1
  925. package/src/features/form/formMeta.ts +1 -1
  926. package/src/features/form/radio/adapters/inbound/Radio.tsx +1 -1
  927. package/src/features/form/radio/adapters/inbound/RadioGroup.tsx +2 -2
  928. package/src/features/form/radio/radioMeta.ts +2 -2
  929. package/src/features/form/radio/themeRecipeMeta.ts +2 -2
  930. package/src/features/form/radio/utils/handleRadioOptionKeyDown.test.ts +1 -1
  931. package/src/features/form/radio/utils/handleRadioOptionKeyDown.ts +1 -1
  932. package/src/features/form/radio/utils/resolveRadioGroupThemeRecipe.ts +1 -1
  933. package/src/features/form/search-input/adapters/inbound/SearchInput.tsx +1 -1
  934. package/src/features/form/search-input/searchInputMeta.ts +1 -1
  935. package/src/features/form/select/adapters/inbound/Select.native.tsx +1 -1
  936. package/src/features/form/select/adapters/inbound/Select.web.tsx +1 -1
  937. package/src/features/form/select/selectMeta.ts +1 -1
  938. package/src/features/form/switch/adapters/inbound/Switch.tsx +1 -1
  939. package/src/features/form/switch/switchMeta.ts +1 -1
  940. package/src/features/form/text-input/adapters/inbound/TextInput.tsx +3 -3
  941. package/src/features/form/text-input/textInputMeta.ts +1 -1
  942. package/src/features/gradient/adapters/inbound/Gradient.tsx +1 -1
  943. package/src/features/gradient/gradientMeta.ts +2 -2
  944. package/src/features/gradient/public.test.ts +1 -1
  945. package/src/features/hero/adapters/inbound/Hero.tsx +1 -1
  946. package/src/features/hero/heroMeta.ts +1 -1
  947. package/src/features/icon/adapters/inbound/Icon.tsx +1 -1
  948. package/src/features/icon/iconMeta.ts +1 -1
  949. package/src/features/icon/utils/meta.test.ts +1 -1
  950. package/src/features/icon/utils/resolveIconSize.test.ts +11 -0
  951. package/src/features/icon/utils/resolveIconSize.ts +13 -0
  952. package/src/features/image/adapters/inbound/Image.tsx +2 -2
  953. package/src/features/image/imageMeta.ts +1 -1
  954. package/src/features/keyboard-avoiding-view/adapters/inbound/KeyboardAvoidingView.tsx +1 -1
  955. package/src/features/keyboard-avoiding-view/keyboardAvoidingViewMeta.ts +2 -2
  956. package/src/features/layout/adapters/inbound/AppShell.tsx +1 -1
  957. package/src/features/layout/adapters/inbound/Divider.tsx +1 -1
  958. package/src/features/layout/adapters/inbound/Grid.tsx +1 -1
  959. package/src/features/layout/adapters/inbound/Screen.tsx +2 -2
  960. package/src/features/layout/adapters/inbound/ScrollView.tsx +1 -1
  961. package/src/features/layout/adapters/inbound/View.tsx +1 -1
  962. package/src/features/layout/appShellMeta.ts +1 -1
  963. package/src/features/layout/constants.ts +1 -1
  964. package/src/features/layout/dividerMeta.ts +1 -1
  965. package/src/features/layout/gridMeta.ts +2 -2
  966. package/src/features/layout/screenMeta.ts +2 -2
  967. package/src/features/layout/scrollViewMeta.ts +2 -2
  968. package/src/features/layout/utils/resolvePageMaxWidth.test.ts +10 -0
  969. package/src/features/layout/utils/resolvePageMaxWidth.ts +13 -0
  970. package/src/features/layout/viewMeta.ts +2 -2
  971. package/src/features/list/adapters/inbound/FlatList.tsx +1 -1
  972. package/src/features/list/adapters/inbound/List.tsx +1 -1
  973. package/src/features/list/adapters/inbound/ListItem.tsx +2 -2
  974. package/src/features/list/adapters/inbound/ListSection.tsx +1 -1
  975. package/src/features/list/adapters/inbound/SectionList.tsx +1 -1
  976. package/src/features/list/flatListMeta.ts +2 -2
  977. package/src/features/list/meta.ts +1 -1
  978. package/src/features/list/sectionListMeta.ts +1 -1
  979. package/src/features/missing-element/MissingElement.test.ts +1 -1
  980. package/src/features/missing-element/adapters/inbound/MissingElement.tsx +2 -2
  981. package/src/features/missing-element/missingElementMeta.ts +1 -1
  982. package/src/features/pagination/adapters/inbound/Pagination.tsx +1 -1
  983. package/src/features/pagination/paginationMeta.ts +1 -1
  984. package/src/features/palette-item/adapters/inbound/PaletteItem.tsx +2 -2
  985. package/src/features/palette-item/paletteItemMeta.ts +1 -1
  986. package/src/{corePlugin.ts → features/plugin/ZORA_CORE_PLUGIN.ts} +3 -3
  987. package/src/{corePluginMetadata.ts → features/plugin/ZORA_CORE_PLUGIN_METADATA.ts} +4 -4
  988. package/src/{pluginComposition.ts → features/plugin/application/use-cases/composeZoraPluginMetadata.ts} +10 -122
  989. package/src/features/plugin/application/use-cases/composeZoraPlugins.ts +76 -0
  990. package/src/features/plugin/domain/ZoraPluginCompositionError.ts +21 -0
  991. package/src/{pluginComposition.test.ts → features/plugin/pluginComposition.test.ts} +4 -6
  992. package/src/features/plugin/public.ts +3 -0
  993. package/src/features/plugin/runtime.ts +2 -0
  994. package/src/features/popover-menu/adapters/inbound/PopoverMenu.tsx +3 -3
  995. package/src/features/popover-menu/popoverMenuMeta.ts +1 -1
  996. package/src/features/progress/adapters/inbound/Progress.tsx +2 -2
  997. package/src/features/progress/adapters/inbound/ProgressRing.tsx +2 -2
  998. package/src/features/progress/progressMeta.ts +2 -2
  999. package/src/features/rating/adapters/inbound/Rating.tsx +4 -4
  1000. package/src/features/rating/ratingMeta.ts +1 -1
  1001. package/src/features/reader/adapters/inbound/ReaderSurface.tsx +2 -2
  1002. package/src/features/reader/meta.ts +2 -2
  1003. package/src/features/registry/ZORA_COMPONENT_REGISTRY.ts +186 -0
  1004. package/src/features/registry/public.ts +1 -0
  1005. package/src/{registry.test.ts → features/registry/registry.test.ts} +6 -3
  1006. package/src/features/scanner/adapters/inbound/BarcodeScannerView.tsx +2 -2
  1007. package/src/features/scanner/adapters/inbound/CameraPermissionView.tsx +1 -1
  1008. package/src/features/scanner/adapters/inbound/ScanOverlay.tsx +2 -2
  1009. package/src/features/scanner/meta.ts +2 -2
  1010. package/src/features/section/adapters/inbound/ScreenSection.tsx +1 -1
  1011. package/src/features/section/adapters/inbound/SectionHeader.tsx +1 -1
  1012. package/src/features/section/screenSectionMeta.ts +2 -2
  1013. package/src/features/section/sectionHeaderMeta.ts +1 -1
  1014. package/src/features/selection/meta.ts +1 -1
  1015. package/src/features/skeleton/adapters/inbound/Skeleton.tsx +2 -2
  1016. package/src/features/skeleton/adapters/inbound/SkeletonCard.tsx +1 -1
  1017. package/src/features/skeleton/adapters/inbound/SkeletonList.tsx +1 -1
  1018. package/src/features/skeleton/adapters/inbound/SkeletonText.tsx +1 -1
  1019. package/src/features/skeleton/public.test.ts +1 -1
  1020. package/src/features/skeleton/skeletonMeta.ts +1 -1
  1021. package/src/features/surface/adapters/inbound/Surface.tsx +1 -1
  1022. package/src/features/surface/surfaceMeta.ts +2 -2
  1023. package/src/features/tabs/adapters/inbound/Tab.tsx +1 -1
  1024. package/src/features/tabs/adapters/inbound/TabList.tsx +1 -1
  1025. package/src/features/tabs/adapters/inbound/TabPanel.tsx +1 -1
  1026. package/src/features/tabs/adapters/inbound/Tabs.tsx +1 -1
  1027. package/src/features/tabs/tabListMeta.ts +1 -1
  1028. package/src/features/tabs/tabMeta.ts +1 -1
  1029. package/src/features/tabs/tabPanelMeta.ts +2 -2
  1030. package/src/features/tabs/tabsMeta.ts +1 -1
  1031. package/src/{theme → features/theme}/ThemeModeToggle.meta.ts +1 -1
  1032. package/src/{theme → features/theme/adapters/inbound}/ThemeModeToggle.tsx +4 -4
  1033. package/src/{theme → features/theme/adapters/inbound}/ZoraProvider.tsx +6 -6
  1034. package/src/features/theme/adapters/inbound/ZoraThemeScope.tsx +41 -0
  1035. package/src/{theme → features/theme/adapters/inbound}/withZoraThemeScope.tsx +1 -1
  1036. package/src/{theme → features/theme/application/use-cases}/compileZoraTheme.test.ts +5 -1
  1037. package/src/{theme → features/theme/application/use-cases}/compileZoraTheme.ts +3 -2
  1038. package/src/{theme → features/theme/application/use-cases}/createZoraThemeConfig.test.ts +1 -1
  1039. package/src/{theme → features/theme/application/use-cases}/createZoraThemeConfig.ts +2 -2
  1040. package/src/features/theme/colorModel.ts +13 -0
  1041. package/src/{theme → features/theme/composition}/ZoraRuntimeCapabilities.native.tsx +1 -1
  1042. package/src/{theme → features/theme/composition}/ZoraRuntimeCapabilities.web.tsx +1 -1
  1043. package/src/{theme → features/theme/composition}/ZoraThemeRuntimeContext.tsx +2 -2
  1044. package/src/{theme → features/theme/composition}/useZoraThemeRecipe.ts +1 -1
  1045. package/src/{theme → features/theme}/public.ts +3 -3
  1046. package/src/features/theme/runtime.ts +9 -0
  1047. package/src/{theme → features/theme}/themeConfigScope.test.ts +16 -7
  1048. package/src/{theme → features/theme}/themeScopeStructure.test.ts +16 -9
  1049. package/src/{theme → features/theme/utils}/resolveThemeModeToggleState.ts +1 -1
  1050. package/src/{theme → features/theme/utils}/resolveZoraScopedThemeId.ts +1 -1
  1051. package/src/{theme → features/theme/utils}/resolveZoraThemeRecipe.ts +2 -2
  1052. package/src/{theme → features/theme}/zoraDefaultTheme.ts +1 -1
  1053. package/src/features/time-picker/adapters/inbound/TimePicker.native.tsx +1 -1
  1054. package/src/features/time-picker/adapters/inbound/TimePicker.web.tsx +1 -1
  1055. package/src/features/time-picker/public.test.ts +1 -1
  1056. package/src/features/time-picker/timePickerMeta.ts +1 -1
  1057. package/src/features/timeline/adapters/inbound/Timeline.tsx +4 -4
  1058. package/src/features/timeline/meta.ts +1 -1
  1059. package/src/features/toast/adapters/inbound/Toast.tsx +1 -1
  1060. package/src/features/toast/public.test.ts +4 -4
  1061. package/src/features/toast/toastMeta.ts +1 -1
  1062. package/src/features/toast/toastProviderMeta.ts +1 -1
  1063. package/src/features/toolbar/adapters/inbound/Toolbar.tsx +1 -1
  1064. package/src/features/toolbar/toolbarMeta.ts +1 -1
  1065. package/src/features/tree-view/adapters/inbound/TreeItem.tsx +2 -2
  1066. package/src/features/tree-view/adapters/inbound/TreeView.tsx +1 -1
  1067. package/src/features/tree-view/meta.ts +1 -1
  1068. package/src/features/typography/adapters/inbound/Heading.tsx +3 -3
  1069. package/src/features/typography/adapters/inbound/Text.tsx +3 -3
  1070. package/src/features/typography/headingMeta.ts +3 -3
  1071. package/src/features/typography/textMeta.ts +3 -3
  1072. package/src/features/typography/utils/headingThemeRecipeMeta.ts +2 -2
  1073. package/src/features/typography/utils/textThemeRecipeMeta.ts +2 -2
  1074. package/src/features/uploader/adapters/inbound/Uploader.tsx +1 -1
  1075. package/src/features/uploader/public.test.ts +2 -2
  1076. package/src/features/uploader/uploaderMeta.ts +1 -1
  1077. package/src/index.ts +56 -56
  1078. package/src/interactionPolicy.test.ts +3 -3
  1079. package/src/structureOwnership.test.ts +71 -0
  1080. package/src/types/accordion.ts +1 -1
  1081. package/src/types/activity-indicator.ts +1 -1
  1082. package/src/types/app-bar.ts +1 -1
  1083. package/src/types/auth.ts +1 -1
  1084. package/src/types/avatar-group.ts +2 -2
  1085. package/src/types/avatar.ts +2 -2
  1086. package/src/types/badge.ts +5 -2
  1087. package/src/{theme/ZoraBaseProps.ts → types/base.ts} +1 -1
  1088. package/src/types/breadcrumbs.ts +1 -1
  1089. package/src/types/button-group.ts +1 -1
  1090. package/src/types/button.ts +5 -2
  1091. package/src/types/card.ts +3 -2
  1092. package/src/types/chat.ts +2 -2
  1093. package/src/types/checkbox.ts +1 -1
  1094. package/src/types/chip-group.ts +3 -2
  1095. package/src/types/chip.ts +3 -2
  1096. package/src/types/collection-editor.ts +1 -1
  1097. package/src/types/content-rail.ts +1 -1
  1098. package/src/types/control.ts +3 -0
  1099. package/src/types/data-table.ts +1 -1
  1100. package/src/types/date-picker.ts +1 -1
  1101. package/src/types/dialog.ts +2 -2
  1102. package/src/types/empty-state.ts +3 -2
  1103. package/src/types/form.ts +1 -1
  1104. package/src/types/gradient.ts +1 -1
  1105. package/src/types/heading.ts +2 -2
  1106. package/src/types/hero.ts +3 -2
  1107. package/src/types/icon-button.ts +4 -2
  1108. package/src/types/icon.ts +1 -1
  1109. package/src/types/image.ts +1 -1
  1110. package/src/types/keyboard-avoiding-view.ts +1 -1
  1111. package/src/types/layout.ts +3 -2
  1112. package/src/types/list.ts +1 -1
  1113. package/src/types/manifest-bottom-sheet.ts +1 -1
  1114. package/src/types/manifest-list.ts +1 -1
  1115. package/src/types/media-card.ts +2 -2
  1116. package/src/types/metric-card.ts +3 -2
  1117. package/src/types/missing-element.ts +1 -1
  1118. package/src/types/pagination.ts +1 -1
  1119. package/src/types/palette-item.ts +1 -1
  1120. package/src/types/plugin.ts +43 -0
  1121. package/src/types/popover-menu.ts +1 -1
  1122. package/src/types/post-card.ts +3 -2
  1123. package/src/types/product-card.ts +1 -1
  1124. package/src/types/progress.ts +3 -2
  1125. package/src/types/provider.ts +1 -1
  1126. package/src/types/radio.ts +1 -1
  1127. package/src/types/rating.ts +3 -2
  1128. package/src/types/reader.ts +1 -1
  1129. package/src/types/registry.ts +3 -0
  1130. package/src/types/scanner.ts +1 -1
  1131. package/src/types/search-input.ts +2 -2
  1132. package/src/types/section.ts +1 -1
  1133. package/src/types/select.ts +1 -1
  1134. package/src/types/skeleton.ts +1 -1
  1135. package/src/types/surface.ts +1 -1
  1136. package/src/types/switch.ts +1 -1
  1137. package/src/types/tabs.ts +1 -1
  1138. package/src/types/text-input.ts +2 -2
  1139. package/src/types/text.ts +2 -2
  1140. package/src/{metadata/themeRecipeTypes.ts → types/theme-recipe.ts} +1 -9
  1141. package/src/{theme/types.ts → types/theme.ts} +11 -0
  1142. package/src/types/time-picker.ts +1 -1
  1143. package/src/types/timeline.ts +2 -2
  1144. package/src/types/toast.ts +1 -1
  1145. package/src/types/toolbar.ts +1 -1
  1146. package/src/types/tree-view.ts +1 -1
  1147. package/src/types/upload.ts +1 -1
  1148. package/dist/constants/keyboard.d.ts.map +0 -1
  1149. package/dist/constants/keyboard.js.map +0 -1
  1150. package/dist/constants.d.ts.map +0 -1
  1151. package/dist/constants.js.map +0 -1
  1152. package/dist/corePlugin.d.ts.map +0 -1
  1153. package/dist/corePlugin.js.map +0 -1
  1154. package/dist/corePluginMetadata.d.ts +0 -3
  1155. package/dist/corePluginMetadata.d.ts.map +0 -1
  1156. package/dist/corePluginMetadata.js.map +0 -1
  1157. package/dist/internal/colorModel.d.ts.map +0 -1
  1158. package/dist/internal/colorModel.js +0 -25
  1159. package/dist/internal/colorModel.js.map +0 -1
  1160. package/dist/internal/recipes.d.ts +0 -23
  1161. package/dist/internal/recipes.d.ts.map +0 -1
  1162. package/dist/internal/recipes.js +0 -59
  1163. package/dist/internal/recipes.js.map +0 -1
  1164. package/dist/metadata/allowedChildren.d.ts.map +0 -1
  1165. package/dist/metadata/allowedChildren.js.map +0 -1
  1166. package/dist/metadata/bindableComponentMeta.js.map +0 -1
  1167. package/dist/metadata/componentMeta.d.ts +0 -3
  1168. package/dist/metadata/componentMeta.d.ts.map +0 -1
  1169. package/dist/metadata/componentMeta.js +0 -184
  1170. package/dist/metadata/componentMeta.js.map +0 -1
  1171. package/dist/metadata/index.d.ts.map +0 -1
  1172. package/dist/metadata/index.js +0 -7
  1173. package/dist/metadata/index.js.map +0 -1
  1174. package/dist/metadata/themeRecipeMeta.d.ts +0 -3
  1175. package/dist/metadata/themeRecipeMeta.d.ts.map +0 -1
  1176. package/dist/metadata/themeRecipeMeta.js +0 -13
  1177. package/dist/metadata/themeRecipeMeta.js.map +0 -1
  1178. package/dist/metadata/themeRecipeTypes.d.ts.map +0 -1
  1179. package/dist/metadata/themeRecipeTypes.js +0 -8
  1180. package/dist/metadata/themeRecipeTypes.js.map +0 -1
  1181. package/dist/metadata/types.d.ts.map +0 -1
  1182. package/dist/metadata/types.js +0 -2
  1183. package/dist/metadata/types.js.map +0 -1
  1184. package/dist/pluginComposition.d.ts.map +0 -1
  1185. package/dist/pluginComposition.js.map +0 -1
  1186. package/dist/registry.d.ts.map +0 -1
  1187. package/dist/registry.js +0 -161
  1188. package/dist/registry.js.map +0 -1
  1189. package/dist/theme/ThemeModeToggle.d.ts.map +0 -1
  1190. package/dist/theme/ThemeModeToggle.js.map +0 -1
  1191. package/dist/theme/ThemeModeToggle.meta.d.ts.map +0 -1
  1192. package/dist/theme/ThemeModeToggle.meta.js.map +0 -1
  1193. package/dist/theme/ThemeModeToggleProps.d.ts.map +0 -1
  1194. package/dist/theme/ThemeModeToggleProps.js +0 -2
  1195. package/dist/theme/ThemeModeToggleProps.js.map +0 -1
  1196. package/dist/theme/ZoraBaseProps.d.ts.map +0 -1
  1197. package/dist/theme/ZoraBaseProps.js +0 -2
  1198. package/dist/theme/ZoraBaseProps.js.map +0 -1
  1199. package/dist/theme/ZoraProvider.d.ts.map +0 -1
  1200. package/dist/theme/ZoraProvider.js.map +0 -1
  1201. package/dist/theme/ZoraRuntimeCapabilities.d.ts.map +0 -1
  1202. package/dist/theme/ZoraRuntimeCapabilities.js.map +0 -1
  1203. package/dist/theme/ZoraRuntimeCapabilities.native.d.ts.map +0 -1
  1204. package/dist/theme/ZoraRuntimeCapabilities.native.js.map +0 -1
  1205. package/dist/theme/ZoraRuntimeCapabilities.web.d.ts.map +0 -1
  1206. package/dist/theme/ZoraRuntimeCapabilities.web.js.map +0 -1
  1207. package/dist/theme/ZoraThemeRuntimeContext.d.ts.map +0 -1
  1208. package/dist/theme/ZoraThemeRuntimeContext.js.map +0 -1
  1209. package/dist/theme/ZoraThemeScope.d.ts.map +0 -1
  1210. package/dist/theme/ZoraThemeScope.js +0 -37
  1211. package/dist/theme/ZoraThemeScope.js.map +0 -1
  1212. package/dist/theme/compileZoraTheme.d.ts.map +0 -1
  1213. package/dist/theme/compileZoraTheme.js.map +0 -1
  1214. package/dist/theme/createZoraThemeConfig.d.ts.map +0 -1
  1215. package/dist/theme/createZoraThemeConfig.js.map +0 -1
  1216. package/dist/theme/index.d.ts +0 -11
  1217. package/dist/theme/index.d.ts.map +0 -1
  1218. package/dist/theme/index.js +0 -7
  1219. package/dist/theme/index.js.map +0 -1
  1220. package/dist/theme/public.d.ts.map +0 -1
  1221. package/dist/theme/public.js +0 -4
  1222. package/dist/theme/public.js.map +0 -1
  1223. package/dist/theme/resolveThemeModeToggleState.d.ts.map +0 -1
  1224. package/dist/theme/resolveThemeModeToggleState.js.map +0 -1
  1225. package/dist/theme/resolveZoraScopedThemeId.d.ts.map +0 -1
  1226. package/dist/theme/resolveZoraScopedThemeId.js.map +0 -1
  1227. package/dist/theme/resolveZoraThemeRecipe.d.ts.map +0 -1
  1228. package/dist/theme/resolveZoraThemeRecipe.js.map +0 -1
  1229. package/dist/theme/types.d.ts.map +0 -1
  1230. package/dist/theme/types.js +0 -2
  1231. package/dist/theme/types.js.map +0 -1
  1232. package/dist/theme/useZoraTheme.d.ts +0 -8
  1233. package/dist/theme/useZoraTheme.d.ts.map +0 -1
  1234. package/dist/theme/useZoraTheme.js.map +0 -1
  1235. package/dist/theme/useZoraThemeRecipe.d.ts.map +0 -1
  1236. package/dist/theme/useZoraThemeRecipe.js.map +0 -1
  1237. package/dist/theme/withZoraThemeScope.d.ts.map +0 -1
  1238. package/dist/theme/withZoraThemeScope.js.map +0 -1
  1239. package/dist/theme/zoraDefaultTheme.d.ts +0 -3
  1240. package/dist/theme/zoraDefaultTheme.d.ts.map +0 -1
  1241. package/dist/theme/zoraDefaultTheme.js.map +0 -1
  1242. package/dist/utils/createManifestBindings.d.ts.map +0 -1
  1243. package/dist/utils/createManifestBindings.js.map +0 -1
  1244. package/dist/utils/finalizeFeatureMetadata.d.ts.map +0 -1
  1245. package/dist/utils/finalizeFeatureMetadata.js.map +0 -1
  1246. package/src/internal/colorModel.ts +0 -39
  1247. package/src/internal/recipes.test.ts +0 -46
  1248. package/src/internal/recipes.ts +0 -92
  1249. package/src/metadata/componentMeta.ts +0 -194
  1250. package/src/metadata/themeRecipeMeta.ts +0 -14
  1251. package/src/registry.ts +0 -197
  1252. package/src/theme/ZoraThemeScope.tsx +0 -56
  1253. package/src/theme/index.ts +0 -10
  1254. /package/dist/{metadata → features/authoring}/allowedChildren.d.ts +0 -0
  1255. /package/dist/{metadata → features/authoring}/allowedChildren.js +0 -0
  1256. /package/dist/{metadata → features/authoring}/bindableComponentMeta.d.ts +0 -0
  1257. /package/dist/{utils → features/authoring/utils}/createManifestBindings.js +0 -0
  1258. /package/dist/{utils → features/authoring/utils}/finalizeFeatureMetadata.js +0 -0
  1259. /package/dist/{theme → features/theme}/ThemeModeToggle.meta.d.ts +0 -0
  1260. /package/dist/{theme → features/theme}/ThemeModeToggle.meta.js +0 -0
  1261. /package/dist/{theme → features/theme/adapters/inbound}/withZoraThemeScope.js +0 -0
  1262. /package/dist/{theme → features/theme/composition}/ZoraRuntimeCapabilities.d.ts +0 -0
  1263. /package/dist/{theme → features/theme/composition}/ZoraRuntimeCapabilities.js +0 -0
  1264. /package/dist/{theme → features/theme/composition}/ZoraRuntimeCapabilities.native.js +0 -0
  1265. /package/dist/{theme → features/theme/composition}/ZoraRuntimeCapabilities.web.js +0 -0
  1266. /package/dist/{theme → features/theme/composition}/useZoraTheme.js +0 -0
  1267. /package/dist/{theme → features/theme/composition}/useZoraThemeRecipe.d.ts +0 -0
  1268. /package/dist/{theme → features/theme/utils}/resolveThemeModeToggleState.js +0 -0
  1269. /package/dist/{theme → features/theme/utils}/resolveZoraScopedThemeId.js +0 -0
  1270. /package/dist/{theme → features/theme/utils}/resolveZoraThemeRecipe.d.ts +0 -0
  1271. /package/dist/{theme → features/theme}/zoraDefaultTheme.js +0 -0
  1272. /package/src/{metadata → features/authoring}/allowedChildren.ts +0 -0
  1273. /package/src/{metadata → features/authoring}/authoringMeta.test.ts +0 -0
  1274. /package/src/{metadata → features/authoring}/bindableComponentMeta.test.ts +0 -0
  1275. /package/src/{metadata → features/authoring}/componentMeta.test.ts +0 -0
  1276. /package/src/{metadata → features/authoring}/radioGroupReachability.test.ts +0 -0
  1277. /package/src/{metadata → features/authoring}/themeRecipeMeta.test.ts +0 -0
  1278. /package/src/{constants/keyboard.ts → features/form/radio/constants.ts} +0 -0
  1279. /package/src/{theme → features/theme/composition}/ZoraRuntimeCapabilities.tsx +0 -0
  1280. /package/src/{theme → features/theme/composition}/useZoraTheme.ts +0 -0
  1281. /package/src/{theme → features/theme/utils}/resolveThemeModeToggleState.test.ts +0 -0
  1282. /package/src/{theme → features/theme/utils}/resolveZoraScopedThemeId.test.ts +0 -0
  1283. /package/src/{theme → features/theme/utils}/resolveZoraThemeRecipe.test.ts +0 -0
  1284. /package/src/{metadata/types.ts → types/authoring.ts} +0 -0
  1285. /package/src/{theme/ThemeModeToggleProps.ts → types/theme-mode-toggle.ts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/features/authoring/constants.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,SAAS,EAAE,OAAO;IAClB,KAAK,EAAE,WAAW;IAClB,qBAAqB,EAAE,IAAI;CACnB,CAAC;AAEX,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,IAAI,EAAE;QACJ,oBAAoB;QACpB,qBAAqB;QACrB,mBAAmB;QACnB,SAAS;QACT,YAAY;QACZ,YAAY;KACb;IACD,OAAO,EAAE,CAAC,SAAS,CAAC;IACpB,MAAM,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC;IACjC,KAAK,EAAE,CAAC,OAAO,CAAC;IAChB,IAAI,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,CAAC;IACpE,IAAI,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;IAC3B,YAAY,EAAE,CAAC,WAAW,CAAC;IAC3B,aAAa,EAAE,CAAC,YAAY,CAAC;IAC7B,MAAM,EAAE,CAAC,QAAQ,CAAC;IAClB,IAAI,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC;IACpC,QAAQ,EAAE,CAAC,UAAU,CAAC;IACtB,MAAM,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,aAAa,CAAC;IAC/C,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,KAAK,EAAE,CAAC,OAAO,CAAC;IAChB,wBAAwB,EAAE,CAAC,sBAAsB,CAAC;IAClD,cAAc,EAAE,CAAC,aAAa,CAAC;IAC/B,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,CAAC;IAC3D,OAAO,EAAE,CAAC,eAAe,EAAE,eAAe,CAAC;IAC3C,IAAI,EAAE,CAAC,UAAU,EAAE,aAAa,CAAC;IACjC,UAAU,EAAE,CAAC,YAAY,CAAC;IAC1B,MAAM,EAAE,CAAC,QAAQ,CAAC;IAClB,QAAQ,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,CAAC;IACtE,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,CAAC;IAC5C,OAAO,EAAE,CAAC,SAAS,CAAC;IACpB,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC;IAC/B,aAAa,EAAE,CAAC,YAAY,CAAC;IAC7B,QAAQ,EAAE,CAAC,UAAU,CAAC;IACtB,cAAc,EAAE,CAAC,aAAa,CAAC;CACvB,CAAC;AAEX,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,QAAQ;IACR,SAAS;IACT,OAAO;IACP,YAAY;IACZ,SAAS;CACyC,CAAC","sourcesContent":["import type { ZoraThemeTokenFamily } from '../../types/theme-recipe';\n\nexport const COMPONENT_THEME_AUTHORING = {\n authority: 'theme',\n scope: 'component',\n allowInstanceOverride: true,\n} as const;\n\nexport const FEATURE_MANIFEST_ELEMENTS = {\n auth: [\n 'ForgotPasswordForm',\n 'OAuthProviderButton',\n 'OAuthProviderList',\n 'OtpForm',\n 'SignInForm',\n 'SignUpForm',\n ],\n surface: ['Surface'],\n avatar: ['Avatar', 'AvatarGroup'],\n badge: ['Badge'],\n card: ['Card', 'MediaCard', 'MetricCard', 'PostCard', 'ProductCard'],\n chip: ['Chip', 'ChipGroup'],\n 'data-table': ['DataTable'],\n 'date-picker': ['DatePicker'],\n dialog: ['Dialog'],\n form: ['Form', 'FormError', 'Field'],\n gradient: ['Gradient'],\n button: ['Button', 'IconButton', 'ButtonGroup'],\n icon: ['Icon'],\n image: ['Image'],\n 'keyboard-avoiding-view': ['KeyboardAvoidingView'],\n 'content-rail': ['ContentRail'],\n layout: ['Divider', 'Grid', 'Screen', 'ScrollView', 'View'],\n section: ['ScreenSection', 'SectionHeader'],\n list: ['FlatList', 'SectionList'],\n pagination: ['Pagination'],\n rating: ['Rating'],\n skeleton: ['Skeleton', 'SkeletonCard', 'SkeletonList', 'SkeletonText'],\n tabs: ['Tabs', 'TabList', 'Tab', 'TabPanel'],\n toolbar: ['Toolbar'],\n typography: ['Heading', 'Text'],\n 'time-picker': ['TimePicker'],\n uploader: ['Uploader'],\n 'bottom-sheet': ['BottomSheet'],\n} as const;\n\nexport const ZORA_THEME_TOKEN_FAMILIES = [\n 'colors',\n 'spacing',\n 'radii',\n 'typography',\n 'shadows',\n] as const satisfies readonly ZoraThemeTokenFamily[];\n"]}
@@ -1,11 +1,12 @@
1
- export { ZORA_CORE_PLUGIN_METADATA } from '../corePluginMetadata';
2
- export type { ComposedZoraPluginMetadataCatalog, ZoraPluginMetadata, ZoraPluginPlacement, } from '../pluginComposition';
3
- export { composeZoraPluginMetadata, ZoraPluginCompositionError } from '../pluginComposition';
1
+ export type { ZoraComponentBlueprint, ZoraComponentCategory, ZoraComponentEventMeta, ZoraComponentEventPayloadFieldMeta, ZoraComponentEventPayloadFieldType, ZoraComponentEventPayloadKind, ZoraComponentI18nMeta, ZoraComponentManifestPolicy, ZoraComponentMeta, ZoraComponentMetaRegistry, ZoraComponentPropArrayItemSchema, ZoraComponentPropAuthoring, ZoraComponentPropSchema, ZoraComponentPropType, ZoraComponentPropValue, ZoraComponentSlotMeta, } from '../../types/authoring';
2
+ export type { ComposedZoraPluginMetadataCatalog, ZoraPluginMetadata, ZoraPluginPlacement, } from '../../types/plugin';
3
+ export type { ZoraThemeRecipeBooleanFieldMeta, ZoraThemeRecipeChoiceFieldMeta, ZoraThemeRecipeFieldMeta, ZoraThemeRecipeKind, ZoraThemeRecipeMeta, ZoraThemeRecipeMetaRegistry, ZoraThemeRecipeTokenFieldMeta, ZoraThemeTokenFamily, } from '../../types/theme-recipe';
4
+ export { composeZoraPluginMetadata } from '../plugin/application/use-cases/composeZoraPluginMetadata';
5
+ export { ZoraPluginCompositionError } from '../plugin/domain/ZoraPluginCompositionError';
6
+ export { ZORA_CORE_PLUGIN_METADATA } from '../plugin/ZORA_CORE_PLUGIN_METADATA';
4
7
  export type { ZoraBindableComponentType } from './bindableComponentMeta';
5
8
  export { ZORA_BINDABLE_COMPONENT_META } from './bindableComponentMeta';
6
9
  export { ZORA_COMPONENT_META } from './componentMeta';
10
+ export { ZORA_THEME_TOKEN_FAMILIES } from './constants';
7
11
  export { ZORA_THEME_RECIPE_META } from './themeRecipeMeta';
8
- export type { ZoraThemeRecipeBooleanFieldMeta, ZoraThemeRecipeChoiceFieldMeta, ZoraThemeRecipeFieldMeta, ZoraThemeRecipeKind, ZoraThemeRecipeMeta, ZoraThemeRecipeMetaRegistry, ZoraThemeRecipeTokenFieldMeta, ZoraThemeTokenFamily, } from './themeRecipeTypes';
9
- export { ZORA_THEME_TOKEN_FAMILIES } from './themeRecipeTypes';
10
- export type { ZoraComponentBlueprint, ZoraComponentCategory, ZoraComponentEventMeta, ZoraComponentEventPayloadFieldMeta, ZoraComponentEventPayloadFieldType, ZoraComponentEventPayloadKind, ZoraComponentI18nMeta, ZoraComponentManifestPolicy, ZoraComponentMeta, ZoraComponentMetaRegistry, ZoraComponentPropArrayItemSchema, ZoraComponentPropAuthoring, ZoraComponentPropSchema, ZoraComponentPropType, ZoraComponentPropValue, ZoraComponentSlotMeta, } from './types';
11
12
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/features/authoring/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,kCAAkC,EAClC,kCAAkC,EAClC,6BAA6B,EAC7B,qBAAqB,EACrB,2BAA2B,EAC3B,iBAAiB,EACjB,yBAAyB,EACzB,gCAAgC,EAChC,0BAA0B,EAC1B,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,iCAAiC,EACjC,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,+BAA+B,EAC/B,8BAA8B,EAC9B,wBAAwB,EACxB,mBAAmB,EACnB,mBAAmB,EACnB,2BAA2B,EAC3B,6BAA6B,EAC7B,oBAAoB,GACrB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,yBAAyB,EAAE,MAAM,2DAA2D,CAAC;AACtG,OAAO,EAAE,0BAA0B,EAAE,MAAM,6CAA6C,CAAC;AACzF,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAChF,YAAY,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,8 @@
1
+ export { composeZoraPluginMetadata } from '../plugin/application/use-cases/composeZoraPluginMetadata';
2
+ export { ZoraPluginCompositionError } from '../plugin/domain/ZoraPluginCompositionError';
3
+ export { ZORA_CORE_PLUGIN_METADATA } from '../plugin/ZORA_CORE_PLUGIN_METADATA';
4
+ export { ZORA_BINDABLE_COMPONENT_META } from './bindableComponentMeta';
5
+ export { ZORA_COMPONENT_META } from './componentMeta';
6
+ export { ZORA_THEME_TOKEN_FAMILIES } from './constants';
7
+ export { ZORA_THEME_RECIPE_META } from './themeRecipeMeta';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/features/authoring/index.ts"],"names":[],"mappings":"AAiCA,OAAO,EAAE,yBAAyB,EAAE,MAAM,2DAA2D,CAAC;AACtG,OAAO,EAAE,0BAA0B,EAAE,MAAM,6CAA6C,CAAC;AACzF,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAEhF,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC","sourcesContent":["export type {\n ZoraComponentBlueprint,\n ZoraComponentCategory,\n ZoraComponentEventMeta,\n ZoraComponentEventPayloadFieldMeta,\n ZoraComponentEventPayloadFieldType,\n ZoraComponentEventPayloadKind,\n ZoraComponentI18nMeta,\n ZoraComponentManifestPolicy,\n ZoraComponentMeta,\n ZoraComponentMetaRegistry,\n ZoraComponentPropArrayItemSchema,\n ZoraComponentPropAuthoring,\n ZoraComponentPropSchema,\n ZoraComponentPropType,\n ZoraComponentPropValue,\n ZoraComponentSlotMeta,\n} from '../../types/authoring';\nexport type {\n ComposedZoraPluginMetadataCatalog,\n ZoraPluginMetadata,\n ZoraPluginPlacement,\n} from '../../types/plugin';\nexport type {\n ZoraThemeRecipeBooleanFieldMeta,\n ZoraThemeRecipeChoiceFieldMeta,\n ZoraThemeRecipeFieldMeta,\n ZoraThemeRecipeKind,\n ZoraThemeRecipeMeta,\n ZoraThemeRecipeMetaRegistry,\n ZoraThemeRecipeTokenFieldMeta,\n ZoraThemeTokenFamily,\n} from '../../types/theme-recipe';\nexport { composeZoraPluginMetadata } from '../plugin/application/use-cases/composeZoraPluginMetadata';\nexport { ZoraPluginCompositionError } from '../plugin/domain/ZoraPluginCompositionError';\nexport { ZORA_CORE_PLUGIN_METADATA } from '../plugin/ZORA_CORE_PLUGIN_METADATA';\nexport type { ZoraBindableComponentType } from './bindableComponentMeta';\nexport { ZORA_BINDABLE_COMPONENT_META } from './bindableComponentMeta';\nexport { ZORA_COMPONENT_META } from './componentMeta';\nexport { ZORA_THEME_TOKEN_FAMILIES } from './constants';\nexport { ZORA_THEME_RECIPE_META } from './themeRecipeMeta';\n"]}
@@ -0,0 +1,3 @@
1
+ import type { ZoraThemeRecipeMetaRegistry } from '../../types/theme-recipe';
2
+ export declare const ZORA_THEME_RECIPE_META: ZoraThemeRecipeMetaRegistry;
3
+ //# sourceMappingURL=themeRecipeMeta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"themeRecipeMeta.d.ts","sourceRoot":"","sources":["../../../src/features/authoring/themeRecipeMeta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAO5E,eAAO,MAAM,sBAAsB,EAAE,2BAMpC,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { buttonThemeRecipeMeta } from '../button/utils/themeRecipeMeta';
2
+ import { cardThemeRecipeMeta } from '../card/utils/themeRecipeMeta';
3
+ import { radioGroupThemeRecipeMeta } from '../form/radio/themeRecipeMeta';
4
+ import { headingThemeRecipeMeta } from '../typography/utils/headingThemeRecipeMeta';
5
+ import { textThemeRecipeMeta } from '../typography/utils/textThemeRecipeMeta';
6
+ export const ZORA_THEME_RECIPE_META = {
7
+ Button: buttonThemeRecipeMeta,
8
+ Card: cardThemeRecipeMeta,
9
+ Heading: headingThemeRecipeMeta,
10
+ RadioGroup: radioGroupThemeRecipeMeta,
11
+ Text: textThemeRecipeMeta,
12
+ };
13
+ //# sourceMappingURL=themeRecipeMeta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"themeRecipeMeta.js","sourceRoot":"","sources":["../../../src/features/authoring/themeRecipeMeta.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AAE9E,MAAM,CAAC,MAAM,sBAAsB,GAAgC;IACjE,MAAM,EAAE,qBAAqB;IAC7B,IAAI,EAAE,mBAAmB;IACzB,OAAO,EAAE,sBAAsB;IAC/B,UAAU,EAAE,yBAAyB;IACrC,IAAI,EAAE,mBAAmB;CAC1B,CAAC","sourcesContent":["import type { ZoraThemeRecipeMetaRegistry } from '../../types/theme-recipe';\nimport { buttonThemeRecipeMeta } from '../button/utils/themeRecipeMeta';\nimport { cardThemeRecipeMeta } from '../card/utils/themeRecipeMeta';\nimport { radioGroupThemeRecipeMeta } from '../form/radio/themeRecipeMeta';\nimport { headingThemeRecipeMeta } from '../typography/utils/headingThemeRecipeMeta';\nimport { textThemeRecipeMeta } from '../typography/utils/textThemeRecipeMeta';\n\nexport const ZORA_THEME_RECIPE_META: ZoraThemeRecipeMetaRegistry = {\n Button: buttonThemeRecipeMeta,\n Card: cardThemeRecipeMeta,\n Heading: headingThemeRecipeMeta,\n RadioGroup: radioGroupThemeRecipeMeta,\n Text: textThemeRecipeMeta,\n};\n"]}
@@ -1,5 +1,5 @@
1
1
  import type { UiComponentBindingMeta } from '@ankhorage/contracts';
2
- import type { ZoraComponentMeta } from '../metadata/types';
2
+ import type { ZoraComponentMeta } from '../../../types/authoring';
3
3
  /*** Derives scalar bindings and normalized events from explicit component authoring schemas. */
4
4
  export declare function createManifestBindings(props: ZoraComponentMeta['props'], events?: ZoraComponentMeta['events']): UiComponentBindingMeta;
5
5
  //# sourceMappingURL=createManifestBindings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createManifestBindings.d.ts","sourceRoot":"","sources":["../../../../src/features/authoring/utils/createManifestBindings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAEnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAElE,gGAAgG;AAChG,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,iBAAiB,CAAC,OAAO,CAAC,EACjC,MAAM,GAAE,iBAAiB,CAAC,QAAQ,CAAM,GACvC,sBAAsB,CAsCxB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createManifestBindings.js","sourceRoot":"","sources":["../../../../src/features/authoring/utils/createManifestBindings.ts"],"names":[],"mappings":"AAIA,gGAAgG;AAChG,MAAM,UAAU,sBAAsB,CACpC,KAAiC,EACjC,SAAsC,EAAE;IAExC,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;aAClB,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC;aAChD,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;YACtB,GAAG;YACH;gBACE,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,GAAG;gBAC1B,eAAe,EAAE,IAAI;gBACrB,iBAAiB,EAAE,IAAI;gBACvB,KAAK,EAAE;oBACL,IAAI,EACF,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO;wBAC9E,CAAC,CAAC,MAAM,CAAC,IAAI;wBACb,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,MAAM,CAAC,IAAI,KAAK,YAAY;4BACvD,CAAC,CAAC,YAAY;4BACd,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ;gCACrD,CAAC,CAAC,SAAS;gCACX,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM;oCACpB,MAAM,CAAC,IAAI,EAAE,MAAM;oCACnB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC;oCACzD,CAAC,CAAC,QAAQ;oCACV,CAAC,CAAC,QAAQ;iBACrB;aACF;SACF,CAAC,CACL;QACD,MAAM,EAAE,MAAM,CAAC,WAAW,CACxB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;YAC3C,GAAG;YACH;gBACE,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,OAAO,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,aAAa,IAAI,EAAE,EAAE;aAC3E;SACF,CAAC,CACH;KACF,CAAC;AACJ,CAAC","sourcesContent":["import type { UiComponentBindingMeta } from '@ankhorage/contracts';\n\nimport type { ZoraComponentMeta } from '../../../types/authoring';\n\n/*** Derives scalar bindings and normalized events from explicit component authoring schemas. */\nexport function createManifestBindings(\n props: ZoraComponentMeta['props'],\n events: ZoraComponentMeta['events'] = {},\n): UiComponentBindingMeta {\n return {\n props: Object.fromEntries(\n Object.entries(props)\n .filter(([, schema]) => schema.type !== 'action')\n .map(([key, schema]) => [\n key,\n {\n label: schema.label ?? key,\n acceptsFallback: true,\n acceptsTransforms: true,\n value: {\n type:\n schema.type === 'boolean' || schema.type === 'number' || schema.type === 'array'\n ? schema.type\n : schema.type === 'media' || schema.type === 'imageAsset'\n ? 'imageAsset'\n : schema.type === 'spacing' || schema.type === 'radius'\n ? 'unknown'\n : schema.type === 'enum' &&\n schema.enum?.length &&\n schema.enum.every((value) => typeof value === 'number')\n ? 'number'\n : 'string',\n },\n },\n ]),\n ),\n events: Object.fromEntries(\n Object.entries(events).map(([key, event]) => [\n key,\n {\n label: event.label,\n payload: { eventType: event.eventType, fields: event.payloadFields ?? [] },\n },\n ]),\n ),\n };\n}\n"]}
@@ -1,4 +1,4 @@
1
- import type { ZoraComponentMetaRegistry } from '../metadata/types';
1
+ import type { ZoraComponentMetaRegistry } from '../../../types/authoring';
2
2
  /*** Completes feature bindings while preserving each component's explicit value contracts. */
3
3
  export declare function finalizeFeatureMetadata(registry: ZoraComponentMetaRegistry): ZoraComponentMetaRegistry;
4
4
  //# sourceMappingURL=finalizeFeatureMetadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"finalizeFeatureMetadata.d.ts","sourceRoot":"","sources":["../../../../src/features/authoring/utils/finalizeFeatureMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAI1E,8FAA8F;AAC9F,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,yBAAyB,GAClC,yBAAyB,CAkB3B"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"finalizeFeatureMetadata.js","sourceRoot":"","sources":["../../../../src/features/authoring/utils/finalizeFeatureMetadata.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,8FAA8F;AAC9F,MAAM,UAAU,uBAAuB,CACrC,QAAmC;IAEnC,MAAM,KAAK,GAAwB,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5F,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE;QAC5C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,sBAAsB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACjE,OAAO;YACL,IAAI;YACJ;gBACE,GAAG,IAAI;gBACP,QAAQ,EAAE;oBACR,KAAK,EAAE,EAAE,GAAG,QAAQ,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE;oBACrD,MAAM,EAAE,EAAE,GAAG,QAAQ,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE;iBACzD;aACF;SACF,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;AACJ,CAAC","sourcesContent":["import type { ZoraComponentMetaRegistry } from '../../../types/authoring';\nimport { FEATURE_MANIFEST_ELEMENTS } from '../constants';\nimport { createManifestBindings } from './createManifestBindings';\n\n/*** Completes feature bindings while preserving each component's explicit value contracts. */\nexport function finalizeFeatureMetadata(\n registry: ZoraComponentMetaRegistry,\n): ZoraComponentMetaRegistry {\n const names: ReadonlySet<string> = new Set(Object.values(FEATURE_MANIFEST_ELEMENTS).flat());\n return Object.fromEntries(\n Object.entries(registry).map(([name, meta]) => {\n if (!names.has(name)) return [name, meta];\n const bindings = createManifestBindings(meta.props, meta.events);\n return [\n name,\n {\n ...meta,\n bindings: {\n props: { ...bindings.props, ...meta.bindings?.props },\n events: { ...bindings.events, ...meta.bindings?.events },\n },\n },\n ];\n }),\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../../../../../src/features/avatar/adapters/inbound/Avatar.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,KAAK,EAAE,WAAW,EAA2B,MAAM,0BAA0B,CAAC;AAKrF;;GAEG;AACH,eAAO,MAAM,MAAM,mDAAkC,CAAC"}
1
+ {"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../../../../../src/features/avatar/adapters/inbound/Avatar.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,WAAW,EAA2B,MAAM,0BAA0B,CAAC;AAQrF;;GAEG;AACH,eAAO,MAAM,MAAM,mDAAkC,CAAC"}
@@ -1,9 +1,9 @@
1
1
  import React from 'react';
2
2
  import { Image } from 'react-native';
3
- import { useZoraTheme } from '../../../../theme/useZoraTheme';
4
- import { withZoraThemeScope } from '../../../../theme/withZoraThemeScope';
5
3
  import { Icon } from '../../../icon/public';
6
4
  import { View } from '../../../layout/public';
5
+ import { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';
6
+ import { useZoraTheme } from '../../../theme/composition/useZoraTheme';
7
7
  import { Text } from '../../../typography/public';
8
8
  import { resolveAvatarInitials } from '../../utils/resolveAvatarInitials';
9
9
  /***
@@ -1 +1 @@
1
- {"version":3,"file":"Avatar.js","sourceRoot":"","sources":["../../../../../src/features/avatar/adapters/inbound/Avatar.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { RoleSemantics, SurfaceTheme } from '@ankhorage/surface';\nimport React from 'react';\nimport { Image } from 'react-native';\n\nimport type { ZoraColor } from '../../../../internal/recipes';\nimport { useZoraTheme } from '../../../../theme/useZoraTheme';\nimport { withZoraThemeScope } from '../../../../theme/withZoraThemeScope';\nimport type { AvatarProps, AvatarShape, AvatarSize } from '../../../../types/avatar';\nimport { Icon } from '../../../icon/public';\nimport { View } from '../../../layout/public';\nimport { Text, type TextVariant } from '../../../typography/public';\nimport { resolveAvatarInitials } from '../../utils/resolveAvatarInitials';\n/***\n * Displays a user or entity avatar with image support and initials fallback.\n */\nexport const Avatar = withZoraThemeScope(AvatarInner);\n\nfunction resolveAvatarSize(size: AvatarSize): number {\n switch (size) {\n case 'xs':\n return 24;\n case 's':\n return 32;\n case 'l':\n return 48;\n case 'xl':\n return 64;\n case 'm':\n default:\n return 40;\n }\n}\n\nfunction resolveRoleSemantics(theme: SurfaceTheme, color: ZoraColor): RoleSemantics {\n switch (color) {\n case 'secondary':\n return theme.semantics.secondary;\n case 'tertiary':\n return theme.semantics.accent;\n case 'quaternary':\n return theme.semantics.highlight;\n case 'primary':\n return theme.semantics.action.primary;\n case 'error':\n return theme.semantics.error;\n case 'info':\n return theme.semantics.info;\n case 'danger':\n return theme.semantics.action.danger;\n case 'success':\n return theme.semantics.success;\n case 'warning':\n return theme.semantics.warning;\n case 'neutral':\n default:\n return theme.semantics.action.neutral;\n }\n}\n\nfunction resolveTextColor(color: ZoraColor): ZoraColor | undefined {\n return color === 'neutral' ? undefined : color;\n}\n\nfunction resolveTextVariant(size: AvatarSize): TextVariant {\n switch (size) {\n case 'xs':\n case 's':\n return 'caption';\n case 'l':\n return 'bodySmall';\n case 'xl':\n return 'lead';\n case 'm':\n default:\n return 'label';\n }\n}\n\nfunction resolveRadius(shape: AvatarShape): 'full' | 'l' {\n return shape === 'circle' ? 'full' : 'l';\n}\n\nfunction AvatarInner({\n themeId: _themeId,\n mode: _mode,\n testID,\n source,\n name,\n initials,\n iconFallback,\n label,\n size = 'm',\n shape = 'circle',\n color = 'neutral',\n interactionPolicy: _interactionPolicy,\n}: AvatarProps) {\n const { theme } = useZoraTheme();\n const resolvedSize = resolveAvatarSize(size);\n const resolvedInitials = initials ?? resolveAvatarInitials(name);\n const role = resolveRoleSemantics(theme, color);\n const backgroundColor = color === 'neutral' ? theme.semantics.neutral.surface : role.softBg;\n const contentColor = color === 'neutral' ? theme.semantics.content.default : role.base;\n const radius = resolveRadius(shape);\n\n const renderFallback = () => {\n if (resolvedInitials) {\n return (\n <Text color={resolveTextColor(color)} variant={resolveTextVariant(size)} weight=\"semiBold\">\n {resolvedInitials}\n </Text>\n );\n }\n\n if (iconFallback) {\n const iconSize = Math.max(16, Math.round(resolvedSize * 0.48));\n return <Icon {...iconFallback} color={contentColor} size={iconSize} />;\n }\n\n return null;\n };\n\n return (\n <View\n accessibilityLabel={label}\n bg={backgroundColor}\n height={resolvedSize}\n radius={radius}\n testID={testID}\n width={resolvedSize}\n style={{\n alignItems: 'center',\n justifyContent: 'center',\n overflow: 'hidden',\n }}\n >\n {source ? (\n <Image\n accessibilityLabel={label}\n source={source}\n style={{ height: '100%', width: '100%' }}\n />\n ) : (\n renderFallback()\n )}\n </View>\n );\n}\n"]}
1
+ {"version":3,"file":"Avatar.js","sourceRoot":"","sources":["../../../../../src/features/avatar/adapters/inbound/Avatar.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { RoleSemantics, SurfaceTheme } from '@ankhorage/surface';\nimport React from 'react';\nimport { Image } from 'react-native';\n\nimport type { AvatarProps, AvatarShape, AvatarSize } from '../../../../types/avatar';\nimport type { ZoraColor } from '../../../../types/theme';\nimport { Icon } from '../../../icon/public';\nimport { View } from '../../../layout/public';\nimport { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';\nimport { useZoraTheme } from '../../../theme/composition/useZoraTheme';\nimport { Text, type TextVariant } from '../../../typography/public';\nimport { resolveAvatarInitials } from '../../utils/resolveAvatarInitials';\n/***\n * Displays a user or entity avatar with image support and initials fallback.\n */\nexport const Avatar = withZoraThemeScope(AvatarInner);\n\nfunction resolveAvatarSize(size: AvatarSize): number {\n switch (size) {\n case 'xs':\n return 24;\n case 's':\n return 32;\n case 'l':\n return 48;\n case 'xl':\n return 64;\n case 'm':\n default:\n return 40;\n }\n}\n\nfunction resolveRoleSemantics(theme: SurfaceTheme, color: ZoraColor): RoleSemantics {\n switch (color) {\n case 'secondary':\n return theme.semantics.secondary;\n case 'tertiary':\n return theme.semantics.accent;\n case 'quaternary':\n return theme.semantics.highlight;\n case 'primary':\n return theme.semantics.action.primary;\n case 'error':\n return theme.semantics.error;\n case 'info':\n return theme.semantics.info;\n case 'danger':\n return theme.semantics.action.danger;\n case 'success':\n return theme.semantics.success;\n case 'warning':\n return theme.semantics.warning;\n case 'neutral':\n default:\n return theme.semantics.action.neutral;\n }\n}\n\nfunction resolveTextColor(color: ZoraColor): ZoraColor | undefined {\n return color === 'neutral' ? undefined : color;\n}\n\nfunction resolveTextVariant(size: AvatarSize): TextVariant {\n switch (size) {\n case 'xs':\n case 's':\n return 'caption';\n case 'l':\n return 'bodySmall';\n case 'xl':\n return 'lead';\n case 'm':\n default:\n return 'label';\n }\n}\n\nfunction resolveRadius(shape: AvatarShape): 'full' | 'l' {\n return shape === 'circle' ? 'full' : 'l';\n}\n\nfunction AvatarInner({\n themeId: _themeId,\n mode: _mode,\n testID,\n source,\n name,\n initials,\n iconFallback,\n label,\n size = 'm',\n shape = 'circle',\n color = 'neutral',\n interactionPolicy: _interactionPolicy,\n}: AvatarProps) {\n const { theme } = useZoraTheme();\n const resolvedSize = resolveAvatarSize(size);\n const resolvedInitials = initials ?? resolveAvatarInitials(name);\n const role = resolveRoleSemantics(theme, color);\n const backgroundColor = color === 'neutral' ? theme.semantics.neutral.surface : role.softBg;\n const contentColor = color === 'neutral' ? theme.semantics.content.default : role.base;\n const radius = resolveRadius(shape);\n\n const renderFallback = () => {\n if (resolvedInitials) {\n return (\n <Text color={resolveTextColor(color)} variant={resolveTextVariant(size)} weight=\"semiBold\">\n {resolvedInitials}\n </Text>\n );\n }\n\n if (iconFallback) {\n const iconSize = Math.max(16, Math.round(resolvedSize * 0.48));\n return <Icon {...iconFallback} color={contentColor} size={iconSize} />;\n }\n\n return null;\n };\n\n return (\n <View\n accessibilityLabel={label}\n bg={backgroundColor}\n height={resolvedSize}\n radius={radius}\n testID={testID}\n width={resolvedSize}\n style={{\n alignItems: 'center',\n justifyContent: 'center',\n overflow: 'hidden',\n }}\n >\n {source ? (\n <Image\n accessibilityLabel={label}\n source={source}\n style={{ height: '100%', width: '100%' }}\n />\n ) : (\n renderFallback()\n )}\n </View>\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AvatarGroup.d.ts","sourceRoot":"","sources":["../../../../../src/features/avatar/adapters/inbound/AvatarGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAmB,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAGxF;;GAEG;AACH,eAAO,MAAM,WAAW,wDAAuC,CAAC"}
1
+ {"version":3,"file":"AvatarGroup.d.ts","sourceRoot":"","sources":["../../../../../src/features/avatar/adapters/inbound/AvatarGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAmB,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAKxF;;GAEG;AACH,eAAO,MAAM,WAAW,wDAAuC,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
- import { useZoraTheme } from '../../../../theme/useZoraTheme';
3
- import { withZoraThemeScope } from '../../../../theme/withZoraThemeScope';
4
2
  import { View } from '../../../layout/public';
3
+ import { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';
4
+ import { useZoraTheme } from '../../../theme/composition/useZoraTheme';
5
5
  import { Avatar } from '../../public';
6
6
  /***
7
7
  * Renders a compact group of avatars with optional overflow handling.
@@ -1 +1 @@
1
- {"version":3,"file":"AvatarGroup.js","sourceRoot":"","sources":["../../../../../src/features/avatar/adapters/inbound/AvatarGroup.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { useZoraTheme } from '../../../../theme/useZoraTheme';\nimport { withZoraThemeScope } from '../../../../theme/withZoraThemeScope';\nimport type { AvatarGroupItem, AvatarGroupProps } from '../../../../types/avatar-group';\nimport { View } from '../../../layout/public';\nimport { Avatar } from '../../public';\n/***\n * Renders a compact group of avatars with optional overflow handling.\n */\nexport const AvatarGroup = withZoraThemeScope(AvatarGroupInner);\n\nfunction defaultOverflowLabel(overflowCount: number): string {\n return `+${overflowCount}`;\n}\n\nfunction AvatarGroupInner({\n themeId: _themeId,\n mode: _mode,\n interactionPolicy: _interactionPolicy,\n testID,\n items,\n max = 4,\n size = 's',\n shape = 'circle',\n overflowLabel = defaultOverflowLabel,\n}: AvatarGroupProps) {\n const { theme } = useZoraTheme();\n\n const visibleItems = items.slice(0, max);\n const overflowCount = Math.max(0, items.length - visibleItems.length);\n const overlap =\n size === 'xs' ? 8 : size === 's' ? 10 : size === 'm' ? 12 : size === 'l' ? 14 : 16;\n const borderColor = theme.semantics.surface.default;\n\n const renderItem = (item: AvatarGroupItem, index: number) => (\n <View\n key={item.id ?? `${index}`}\n ml={index === 0 ? 0 : -overlap}\n radius=\"full\"\n borderWidth={2}\n borderColor={borderColor}\n >\n <Avatar\n iconFallback={item.iconFallback}\n initials={item.initials}\n label={item.label}\n name={item.name}\n shape={shape}\n size={size}\n source={item.source}\n color={item.color}\n />\n </View>\n );\n\n return (\n <View align=\"center\" direction=\"row\" testID={testID} wrap=\"nowrap\">\n {visibleItems.map(renderItem)}\n {overflowCount > 0 ? (\n <View\n ml={visibleItems.length === 0 ? 0 : -overlap}\n radius=\"full\"\n borderWidth={2}\n borderColor={borderColor}\n >\n <Avatar\n initials={overflowLabel(overflowCount)}\n size={size}\n shape={shape}\n color=\"neutral\"\n />\n </View>\n ) : null}\n </View>\n );\n}\n"]}
1
+ {"version":3,"file":"AvatarGroup.js","sourceRoot":"","sources":["../../../../../src/features/avatar/adapters/inbound/AvatarGroup.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport type { AvatarGroupItem, AvatarGroupProps } from '../../../../types/avatar-group';\nimport { View } from '../../../layout/public';\nimport { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';\nimport { useZoraTheme } from '../../../theme/composition/useZoraTheme';\nimport { Avatar } from '../../public';\n/***\n * Renders a compact group of avatars with optional overflow handling.\n */\nexport const AvatarGroup = withZoraThemeScope(AvatarGroupInner);\n\nfunction defaultOverflowLabel(overflowCount: number): string {\n return `+${overflowCount}`;\n}\n\nfunction AvatarGroupInner({\n themeId: _themeId,\n mode: _mode,\n interactionPolicy: _interactionPolicy,\n testID,\n items,\n max = 4,\n size = 's',\n shape = 'circle',\n overflowLabel = defaultOverflowLabel,\n}: AvatarGroupProps) {\n const { theme } = useZoraTheme();\n\n const visibleItems = items.slice(0, max);\n const overflowCount = Math.max(0, items.length - visibleItems.length);\n const overlap =\n size === 'xs' ? 8 : size === 's' ? 10 : size === 'm' ? 12 : size === 'l' ? 14 : 16;\n const borderColor = theme.semantics.surface.default;\n\n const renderItem = (item: AvatarGroupItem, index: number) => (\n <View\n key={item.id ?? `${index}`}\n ml={index === 0 ? 0 : -overlap}\n radius=\"full\"\n borderWidth={2}\n borderColor={borderColor}\n >\n <Avatar\n iconFallback={item.iconFallback}\n initials={item.initials}\n label={item.label}\n name={item.name}\n shape={shape}\n size={size}\n source={item.source}\n color={item.color}\n />\n </View>\n );\n\n return (\n <View align=\"center\" direction=\"row\" testID={testID} wrap=\"nowrap\">\n {visibleItems.map(renderItem)}\n {overflowCount > 0 ? (\n <View\n ml={visibleItems.length === 0 ? 0 : -overlap}\n radius=\"full\"\n borderWidth={2}\n borderColor={borderColor}\n >\n <Avatar\n initials={overflowLabel(overflowCount)}\n size={size}\n shape={shape}\n color=\"neutral\"\n />\n </View>\n ) : null}\n </View>\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"avatarGroupMeta.js","sourceRoot":"","sources":["../../../src/features/avatar/avatarGroupMeta.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE,WAAW;IACrB,kBAAkB,EAAE,IAAI;IACxB,eAAe,EAAE,EAAE;IACnB,SAAS,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;IACjE,KAAK,EAAE;QACL,KAAK,EAAE;YACL,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,SAAS;YACnB,UAAU,EAAE;gBACV,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE;gBAC/D,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC;qBAChC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,OAAO,CAAC;qBACpD,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;aAC7C;SACF;QACD,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE;QAC3C,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI;QAC3B,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK;KAC9B;CACmC,CAAC","sourcesContent":["import type { ZoraComponentMeta } from '../../metadata/types';\nimport { avatarMeta } from './avatarMeta';\n\nexport const avatarGroupMeta = {\n name: 'AvatarGroup',\n category: 'component',\n directManifestNode: true,\n allowedChildren: [],\n blueprint: { label: 'Avatar group', defaultProps: { items: [] } },\n props: {\n items: {\n type: 'array',\n category: 'Content',\n itemSchema: [\n { key: 'id', schema: { type: 'string', category: 'Identity' } },\n ...Object.entries(avatarMeta.props)\n .filter(([key]) => key !== 'size' && key !== 'shape')\n .map(([key, schema]) => ({ key, schema })),\n ],\n },\n max: { type: 'number', category: 'Layout' },\n size: avatarMeta.props.size,\n shape: avatarMeta.props.shape,\n },\n} as const satisfies ZoraComponentMeta;\n"]}
1
+ {"version":3,"file":"avatarGroupMeta.js","sourceRoot":"","sources":["../../../src/features/avatar/avatarGroupMeta.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE,WAAW;IACrB,kBAAkB,EAAE,IAAI;IACxB,eAAe,EAAE,EAAE;IACnB,SAAS,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;IACjE,KAAK,EAAE;QACL,KAAK,EAAE;YACL,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,SAAS;YACnB,UAAU,EAAE;gBACV,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE;gBAC/D,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC;qBAChC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,OAAO,CAAC;qBACpD,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;aAC7C;SACF;QACD,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE;QAC3C,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI;QAC3B,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK;KAC9B;CACmC,CAAC","sourcesContent":["import type { ZoraComponentMeta } from '../../types/authoring';\nimport { avatarMeta } from './avatarMeta';\n\nexport const avatarGroupMeta = {\n name: 'AvatarGroup',\n category: 'component',\n directManifestNode: true,\n allowedChildren: [],\n blueprint: { label: 'Avatar group', defaultProps: { items: [] } },\n props: {\n items: {\n type: 'array',\n category: 'Content',\n itemSchema: [\n { key: 'id', schema: { type: 'string', category: 'Identity' } },\n ...Object.entries(avatarMeta.props)\n .filter(([key]) => key !== 'size' && key !== 'shape')\n .map(([key, schema]) => ({ key, schema })),\n ],\n },\n max: { type: 'number', category: 'Layout' },\n size: avatarMeta.props.size,\n shape: avatarMeta.props.shape,\n },\n} as const satisfies ZoraComponentMeta;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"avatarMeta.js","sourceRoot":"","sources":["../../../src/features/avatar/avatarMeta.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,WAAW;IACrB,kBAAkB,EAAE,IAAI;IACxB,eAAe,EAAE,EAAE;IACnB,KAAK,EAAE;QACL,MAAM,EAAE;YACN,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,SAAS;YACnB,UAAU,EAAE,CAAC,OAAO,CAAC;SACtB;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,SAAS;SACpB;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,SAAS;SACpB;QACD,KAAK,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,eAAe;SAC1B;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC;SAClC;QACD,KAAK,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;SAC5B;QACD,KAAK,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC;SAClF;KACF;CACmC,CAAC","sourcesContent":["import type { ZoraComponentMeta } from '../../metadata/types';\n\nexport const avatarMeta = {\n name: 'Avatar',\n category: 'component',\n directManifestNode: true,\n allowedChildren: [],\n props: {\n source: {\n type: 'media',\n category: 'Content',\n mediaKinds: ['image'],\n },\n name: {\n type: 'string',\n category: 'Content',\n },\n initials: {\n type: 'string',\n category: 'Content',\n },\n label: {\n type: 'string',\n category: 'Accessibility',\n },\n size: {\n type: 'enum',\n category: 'Style',\n enum: ['xs', 's', 'm', 'l', 'xl'],\n },\n shape: {\n type: 'enum',\n category: 'Style',\n enum: ['circle', 'rounded'],\n },\n color: {\n type: 'enum',\n category: 'Style',\n enum: ['primary', 'secondary', 'neutral', 'success', 'warning', 'danger', 'info'],\n },\n },\n} as const satisfies ZoraComponentMeta;\n"]}
1
+ {"version":3,"file":"avatarMeta.js","sourceRoot":"","sources":["../../../src/features/avatar/avatarMeta.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,WAAW;IACrB,kBAAkB,EAAE,IAAI;IACxB,eAAe,EAAE,EAAE;IACnB,KAAK,EAAE;QACL,MAAM,EAAE;YACN,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,SAAS;YACnB,UAAU,EAAE,CAAC,OAAO,CAAC;SACtB;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,SAAS;SACpB;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,SAAS;SACpB;QACD,KAAK,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,eAAe;SAC1B;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC;SAClC;QACD,KAAK,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;SAC5B;QACD,KAAK,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC;SAClF;KACF;CACmC,CAAC","sourcesContent":["import type { ZoraComponentMeta } from '../../types/authoring';\n\nexport const avatarMeta = {\n name: 'Avatar',\n category: 'component',\n directManifestNode: true,\n allowedChildren: [],\n props: {\n source: {\n type: 'media',\n category: 'Content',\n mediaKinds: ['image'],\n },\n name: {\n type: 'string',\n category: 'Content',\n },\n initials: {\n type: 'string',\n category: 'Content',\n },\n label: {\n type: 'string',\n category: 'Accessibility',\n },\n size: {\n type: 'enum',\n category: 'Style',\n enum: ['xs', 's', 'm', 'l', 'xl'],\n },\n shape: {\n type: 'enum',\n category: 'Style',\n enum: ['circle', 'rounded'],\n },\n color: {\n type: 'enum',\n category: 'Style',\n enum: ['primary', 'secondary', 'neutral', 'success', 'warning', 'danger', 'info'],\n },\n },\n} as const satisfies ZoraComponentMeta;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../../../../src/features/badge/adapters/inbound/Badge.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D;;GAEG;AACH,eAAO,MAAM,KAAK,kDAAiC,CAAC"}
1
+ {"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../../../../src/features/badge/adapters/inbound/Badge.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAG1D;;GAEG;AACH,eAAO,MAAM,KAAK,kDAAiC,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { Badge as SurfaceBadge } from '@ankhorage/surface';
2
2
  import React from 'react';
3
- import { resolveBadgeRecipe } from '../../../../internal/recipes';
4
- import { withZoraThemeScope } from '../../../../theme/withZoraThemeScope';
3
+ import { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';
4
+ import { resolveBadgeRecipe } from '../../utils/resolveBadgeRecipe';
5
5
  /***
6
6
  * Shows a small status, label, or count indicator.
7
7
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Badge.js","sourceRoot":"","sources":["../../../../../src/features/badge/adapters/inbound/Badge.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E;;GAEG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;AAEpD,SAAS,UAAU,CAAC,EAClB,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,KAAK,EACX,iBAAiB,EAAE,kBAAkB,EACrC,QAAQ,EACR,KAAK,EACL,OAAO,EACP,IAAI,EACJ,GAAG,KAAK,EACG;IACX,MAAM,MAAM,GAAG,kBAAkB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAE5D,OAAO,CACL,CAAC,YAAY,CACX,IAAI,KAAK,CAAC,CACV,OAAO,CAAC,CAAC,QAAQ,CAAC,CAClB,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACpB,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAClB,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EACxB,CACH,CAAC;AACJ,CAAC","sourcesContent":["import { Badge as SurfaceBadge } from '@ankhorage/surface';\nimport React from 'react';\n\nimport { resolveBadgeRecipe } from '../../../../internal/recipes';\nimport { withZoraThemeScope } from '../../../../theme/withZoraThemeScope';\nimport type { BadgeProps } from '../../../../types/badge';\n/***\n * Shows a small status, label, or count indicator.\n */\nexport const Badge = withZoraThemeScope(BadgeInner);\n\nfunction BadgeInner({\n themeId: _themeId,\n mode: _mode,\n interactionPolicy: _interactionPolicy,\n children,\n color,\n variant,\n size,\n ...props\n}: BadgeProps) {\n const recipe = resolveBadgeRecipe({ color, variant, size });\n\n return (\n <SurfaceBadge\n {...props}\n content={children}\n color={recipe.color}\n size={recipe.size}\n variant={recipe.variant}\n />\n );\n}\n"]}
1
+ {"version":3,"file":"Badge.js","sourceRoot":"","sources":["../../../../../src/features/badge/adapters/inbound/Badge.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE;;GAEG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;AAEpD,SAAS,UAAU,CAAC,EAClB,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,KAAK,EACX,iBAAiB,EAAE,kBAAkB,EACrC,QAAQ,EACR,KAAK,EACL,OAAO,EACP,IAAI,EACJ,GAAG,KAAK,EACG;IACX,MAAM,MAAM,GAAG,kBAAkB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAE5D,OAAO,CACL,CAAC,YAAY,CACX,IAAI,KAAK,CAAC,CACV,OAAO,CAAC,CAAC,QAAQ,CAAC,CAClB,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACpB,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAClB,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EACxB,CACH,CAAC;AACJ,CAAC","sourcesContent":["import { Badge as SurfaceBadge } from '@ankhorage/surface';\nimport React from 'react';\n\nimport type { BadgeProps } from '../../../../types/badge';\nimport { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';\nimport { resolveBadgeRecipe } from '../../utils/resolveBadgeRecipe';\n/***\n * Shows a small status, label, or count indicator.\n */\nexport const Badge = withZoraThemeScope(BadgeInner);\n\nfunction BadgeInner({\n themeId: _themeId,\n mode: _mode,\n interactionPolicy: _interactionPolicy,\n children,\n color,\n variant,\n size,\n ...props\n}: BadgeProps) {\n const recipe = resolveBadgeRecipe({ color, variant, size });\n\n return (\n <SurfaceBadge\n {...props}\n content={children}\n color={recipe.color}\n size={recipe.size}\n variant={recipe.variant}\n />\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"badgeMeta.js","sourceRoot":"","sources":["../../../src/features/badge/badgeMeta.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,IAAI,EAAE,OAAO;IACb,QAAQ,EAAE,WAAW;IACrB,kBAAkB,EAAE,IAAI;IACxB,eAAe,EAAE,EAAE;IACnB,KAAK,EAAE;QACL,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,SAAS;SACpB;QACD,KAAK,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC;SAClF;QACD,OAAO,EAAE;YACP,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC;SACnC;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;SACtB;KACF;CACmC,CAAC","sourcesContent":["import type { ZoraComponentMeta } from '../../metadata/types';\n\nexport const badgeMeta = {\n name: 'Badge',\n category: 'component',\n directManifestNode: true,\n allowedChildren: [],\n props: {\n children: {\n type: 'string',\n category: 'Content',\n },\n color: {\n type: 'enum',\n category: 'Style',\n enum: ['primary', 'secondary', 'neutral', 'success', 'warning', 'danger', 'info'],\n },\n variant: {\n type: 'enum',\n category: 'Style',\n enum: ['solid', 'soft', 'outline'],\n },\n size: {\n type: 'enum',\n category: 'Style',\n enum: ['s', 'm', 'l'],\n },\n },\n} as const satisfies ZoraComponentMeta;\n"]}
1
+ {"version":3,"file":"badgeMeta.js","sourceRoot":"","sources":["../../../src/features/badge/badgeMeta.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,IAAI,EAAE,OAAO;IACb,QAAQ,EAAE,WAAW;IACrB,kBAAkB,EAAE,IAAI;IACxB,eAAe,EAAE,EAAE;IACnB,KAAK,EAAE;QACL,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,SAAS;SACpB;QACD,KAAK,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC;SAClF;QACD,OAAO,EAAE;YACP,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC;SACnC;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;SACtB;KACF;CACmC,CAAC","sourcesContent":["import type { ZoraComponentMeta } from '../../types/authoring';\n\nexport const badgeMeta = {\n name: 'Badge',\n category: 'component',\n directManifestNode: true,\n allowedChildren: [],\n props: {\n children: {\n type: 'string',\n category: 'Content',\n },\n color: {\n type: 'enum',\n category: 'Style',\n enum: ['primary', 'secondary', 'neutral', 'success', 'warning', 'danger', 'info'],\n },\n variant: {\n type: 'enum',\n category: 'Style',\n enum: ['solid', 'soft', 'outline'],\n },\n size: {\n type: 'enum',\n category: 'Style',\n enum: ['s', 'm', 'l'],\n },\n },\n} as const satisfies ZoraComponentMeta;\n"]}
@@ -0,0 +1,10 @@
1
+ import type { BadgeProps as SurfaceBadgeProps } from '@ankhorage/surface';
2
+ import type { ZoraBadgeVariant } from '../../../types/badge';
3
+ import type { ZoraControlSize } from '../../../types/control';
4
+ import type { ZoraColor } from '../../../types/theme';
5
+ export declare function resolveBadgeRecipe({ color, variant, size, }: {
6
+ color?: ZoraColor;
7
+ variant?: ZoraBadgeVariant;
8
+ size?: ZoraControlSize;
9
+ }): Pick<SurfaceBadgeProps, 'size' | 'color' | 'variant'>;
10
+ //# sourceMappingURL=resolveBadgeRecipe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveBadgeRecipe.d.ts","sourceRoot":"","sources":["../../../../src/features/badge/utils/resolveBadgeRecipe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,IAAI,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE1E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEtD,wBAAgB,kBAAkB,CAAC,EACjC,KAAiB,EACjB,OAAgB,EAChB,IAAU,GACX,EAAE;IACD,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,IAAI,CAAC,EAAE,eAAe,CAAC;CACxB,GAAG,IAAI,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,CAExD"}
@@ -0,0 +1,4 @@
1
+ export function resolveBadgeRecipe({ color = 'primary', variant = 'soft', size = 'm', }) {
2
+ return { size, color, variant };
3
+ }
4
+ //# sourceMappingURL=resolveBadgeRecipe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveBadgeRecipe.js","sourceRoot":"","sources":["../../../../src/features/badge/utils/resolveBadgeRecipe.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,kBAAkB,CAAC,EACjC,KAAK,GAAG,SAAS,EACjB,OAAO,GAAG,MAAM,EAChB,IAAI,GAAG,GAAG,GAKX;IACC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAClC,CAAC","sourcesContent":["import type { BadgeProps as SurfaceBadgeProps } from '@ankhorage/surface';\n\nimport type { ZoraBadgeVariant } from '../../../types/badge';\nimport type { ZoraControlSize } from '../../../types/control';\nimport type { ZoraColor } from '../../../types/theme';\n\nexport function resolveBadgeRecipe({\n color = 'primary',\n variant = 'soft',\n size = 'm',\n}: {\n color?: ZoraColor;\n variant?: ZoraBadgeVariant;\n size?: ZoraControlSize;\n}): Pick<SurfaceBadgeProps, 'size' | 'color' | 'variant'> {\n return { size, color, variant };\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"BottomSheet.d.ts","sourceRoot":"","sources":["../../../../../src/features/bottom-sheet/adapters/inbound/BottomSheet.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAGhF,qFAAqF;AACrF,eAAO,MAAM,WAAW,wDAAuC,CAAC"}
1
+ {"version":3,"file":"BottomSheet.d.ts","sourceRoot":"","sources":["../../../../../src/features/bottom-sheet/adapters/inbound/BottomSheet.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAMhF,qFAAqF;AACrF,eAAO,MAAM,WAAW,wDAAuC,CAAC"}
@@ -1,9 +1,9 @@
1
1
  import { useBottomSheet } from '@ankhorage/surface/bottom-sheet';
2
2
  import React from 'react';
3
- import { useZoraTheme } from '../../../../theme/useZoraTheme';
4
- import { withZoraThemeScope } from '../../../../theme/withZoraThemeScope';
5
- import { useZoraThemeRuntime } from '../../../../theme/ZoraThemeRuntimeContext';
6
3
  import { View } from '../../../layout/public';
4
+ import { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';
5
+ import { useZoraTheme } from '../../../theme/composition/useZoraTheme';
6
+ import { useZoraThemeRuntime } from '../../../theme/composition/ZoraThemeRuntimeContext';
7
7
  /*** Presents declarative manifest children through the shared Surface sheet host. */
8
8
  export const BottomSheet = withZoraThemeScope(BottomSheetInner);
9
9
  /*** Bridges the declarative lifecycle and inherited theme into the shared modal host. */
@@ -1 +1 @@
1
- {"version":3,"file":"BottomSheet.js","sourceRoot":"","sources":["../../../../../src/features/bottom-sheet/adapters/inbound/BottomSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAEhF,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C,qFAAqF;AACrF,MAAM,CAAC,MAAM,WAAW,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;AAEhE,yFAAyF;AACzF,SAAS,gBAAgB,CAAC,EACxB,IAAI,EAAE,KAAK,EACX,OAAO,EAAE,QAAQ,EACjB,QAAQ,EACR,IAAI,GAAG,KAAK,EACZ,iBAAiB,EACjB,MAAM,EACN,UAAU,EACV,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,oBAAoB,EACpB,SAAS,EACT,aAAa,GACI;IACjB,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;IAC9C,MAAM,EAAE,IAAI,EAAE,GAAG,YAAY,EAAE,CAAC;IAChC,MAAM,EAAE,OAAO,EAAE,GAAG,mBAAmB,EAAE,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAI,IAAI,iBAAiB,KAAK,SAAS,CAAC;IACvD,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEtC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,OAAO,GAAG,EAAE;YACV,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAEtB,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC,OAAO;YAAE,OAAO;QACzC,OAAO,CAAC;YACN,OAAO,EAAE,CACP,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CACjD;UAAA,CAAC,QAAQ,CACX;QAAA,EAAE,IAAI,CAAC,CACR;YACD,UAAU;YACV,YAAY;YACZ,mBAAmB;YACnB,oBAAoB;YACpB,sBAAsB;YACtB,gBAAgB;YAChB,oBAAoB;YACpB,SAAS,EAAE,GAAG,EAAE;gBACd,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;gBACzB,SAAS,EAAE,EAAE,CAAC;YAChB,CAAC;YACD,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;SACrD,CAAC,CAAC;IACL,CAAC,EAAE;QACD,MAAM;QACN,QAAQ;QACR,sBAAsB;QACtB,mBAAmB;QACnB,oBAAoB;QACpB,YAAY;QACZ,gBAAgB;QAChB,oBAAoB;QACpB,IAAI;QACJ,SAAS;QACT,aAAa;QACb,OAAO;QACP,UAAU;QACV,MAAM;QACN,OAAO;KACR,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["import { useBottomSheet } from '@ankhorage/surface/bottom-sheet';\nimport React from 'react';\n\nimport { useZoraTheme } from '../../../../theme/useZoraTheme';\nimport { withZoraThemeScope } from '../../../../theme/withZoraThemeScope';\nimport { useZoraThemeRuntime } from '../../../../theme/ZoraThemeRuntimeContext';\nimport type { BottomSheetProps } from '../../../../types/manifest-bottom-sheet';\nimport { View } from '../../../layout/public';\n\n/*** Presents declarative manifest children through the shared Surface sheet host. */\nexport const BottomSheet = withZoraThemeScope(BottomSheetInner);\n\n/*** Bridges the declarative lifecycle and inherited theme into the shared modal host. */\nfunction BottomSheetInner({\n mode: _mode,\n themeId: _themeId,\n children,\n open = false,\n interactionPolicy,\n testID,\n snapPoints,\n initialIndex,\n enableDynamicSizing,\n enablePanDownToClose,\n dismissOnBackdropPress,\n keyboardBehavior,\n keyboardBlurBehavior,\n onDismiss,\n onIndexChange,\n}: BottomSheetProps) {\n const { present, dismiss } = useBottomSheet();\n const { mode } = useZoraTheme();\n const { themeId } = useZoraThemeRuntime();\n const active = open && interactionPolicy !== 'passive';\n const dismissed = React.useRef(false);\n\n React.useEffect(() => {\n dismissed.current = false;\n if (!active) return;\n return () => {\n dismiss();\n };\n }, [active, dismiss]);\n\n React.useEffect(() => {\n if (!active || dismissed.current) return;\n present({\n content: (\n <View mode={mode} themeId={themeId} testID={testID}>\n {children}\n </View>\n ),\n snapPoints,\n initialIndex,\n enableDynamicSizing,\n enablePanDownToClose,\n dismissOnBackdropPress,\n keyboardBehavior,\n keyboardBlurBehavior,\n onDismiss: () => {\n dismissed.current = true;\n onDismiss?.();\n },\n onIndexChange: (index) => onIndexChange?.({ index }),\n });\n }, [\n active,\n children,\n dismissOnBackdropPress,\n enableDynamicSizing,\n enablePanDownToClose,\n initialIndex,\n keyboardBehavior,\n keyboardBlurBehavior,\n mode,\n onDismiss,\n onIndexChange,\n present,\n snapPoints,\n testID,\n themeId,\n ]);\n\n return null;\n}\n"]}
1
+ {"version":3,"file":"BottomSheet.js","sourceRoot":"","sources":["../../../../../src/features/bottom-sheet/adapters/inbound/BottomSheet.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AACxF,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAC;AAEzF,qFAAqF;AACrF,MAAM,CAAC,MAAM,WAAW,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;AAEhE,yFAAyF;AACzF,SAAS,gBAAgB,CAAC,EACxB,IAAI,EAAE,KAAK,EACX,OAAO,EAAE,QAAQ,EACjB,QAAQ,EACR,IAAI,GAAG,KAAK,EACZ,iBAAiB,EACjB,MAAM,EACN,UAAU,EACV,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,oBAAoB,EACpB,SAAS,EACT,aAAa,GACI;IACjB,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;IAC9C,MAAM,EAAE,IAAI,EAAE,GAAG,YAAY,EAAE,CAAC;IAChC,MAAM,EAAE,OAAO,EAAE,GAAG,mBAAmB,EAAE,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAI,IAAI,iBAAiB,KAAK,SAAS,CAAC;IACvD,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEtC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,OAAO,GAAG,EAAE;YACV,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAEtB,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC,OAAO;YAAE,OAAO;QACzC,OAAO,CAAC;YACN,OAAO,EAAE,CACP,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CACjD;UAAA,CAAC,QAAQ,CACX;QAAA,EAAE,IAAI,CAAC,CACR;YACD,UAAU;YACV,YAAY;YACZ,mBAAmB;YACnB,oBAAoB;YACpB,sBAAsB;YACtB,gBAAgB;YAChB,oBAAoB;YACpB,SAAS,EAAE,GAAG,EAAE;gBACd,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;gBACzB,SAAS,EAAE,EAAE,CAAC;YAChB,CAAC;YACD,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;SACrD,CAAC,CAAC;IACL,CAAC,EAAE;QACD,MAAM;QACN,QAAQ;QACR,sBAAsB;QACtB,mBAAmB;QACnB,oBAAoB;QACpB,YAAY;QACZ,gBAAgB;QAChB,oBAAoB;QACpB,IAAI;QACJ,SAAS;QACT,aAAa;QACb,OAAO;QACP,UAAU;QACV,MAAM;QACN,OAAO;KACR,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["import { useBottomSheet } from '@ankhorage/surface/bottom-sheet';\nimport React from 'react';\n\nimport type { BottomSheetProps } from '../../../../types/manifest-bottom-sheet';\nimport { View } from '../../../layout/public';\nimport { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';\nimport { useZoraTheme } from '../../../theme/composition/useZoraTheme';\nimport { useZoraThemeRuntime } from '../../../theme/composition/ZoraThemeRuntimeContext';\n\n/*** Presents declarative manifest children through the shared Surface sheet host. */\nexport const BottomSheet = withZoraThemeScope(BottomSheetInner);\n\n/*** Bridges the declarative lifecycle and inherited theme into the shared modal host. */\nfunction BottomSheetInner({\n mode: _mode,\n themeId: _themeId,\n children,\n open = false,\n interactionPolicy,\n testID,\n snapPoints,\n initialIndex,\n enableDynamicSizing,\n enablePanDownToClose,\n dismissOnBackdropPress,\n keyboardBehavior,\n keyboardBlurBehavior,\n onDismiss,\n onIndexChange,\n}: BottomSheetProps) {\n const { present, dismiss } = useBottomSheet();\n const { mode } = useZoraTheme();\n const { themeId } = useZoraThemeRuntime();\n const active = open && interactionPolicy !== 'passive';\n const dismissed = React.useRef(false);\n\n React.useEffect(() => {\n dismissed.current = false;\n if (!active) return;\n return () => {\n dismiss();\n };\n }, [active, dismiss]);\n\n React.useEffect(() => {\n if (!active || dismissed.current) return;\n present({\n content: (\n <View mode={mode} themeId={themeId} testID={testID}>\n {children}\n </View>\n ),\n snapPoints,\n initialIndex,\n enableDynamicSizing,\n enablePanDownToClose,\n dismissOnBackdropPress,\n keyboardBehavior,\n keyboardBlurBehavior,\n onDismiss: () => {\n dismissed.current = true;\n onDismiss?.();\n },\n onIndexChange: (index) => onIndexChange?.({ index }),\n });\n }, [\n active,\n children,\n dismissOnBackdropPress,\n enableDynamicSizing,\n enablePanDownToClose,\n initialIndex,\n keyboardBehavior,\n keyboardBlurBehavior,\n mode,\n onDismiss,\n onIndexChange,\n present,\n snapPoints,\n testID,\n themeId,\n ]);\n\n return null;\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { CONTAINER_ALLOWED_CHILDREN } from '../../metadata/allowedChildren';
1
+ import { CONTAINER_ALLOWED_CHILDREN } from '../authoring/allowedChildren';
2
2
  export const bottomSheetMeta = {
3
3
  name: 'BottomSheet',
4
4
  category: 'layout',
@@ -1 +1 @@
1
- {"version":3,"file":"bottomSheetMeta.js","sourceRoot":"","sources":["../../../src/features/bottom-sheet/bottomSheetMeta.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAG5E,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE,QAAQ;IAClB,kBAAkB,EAAE,IAAI;IACxB,eAAe,EAAE,CAAC,GAAG,0BAA0B,CAAC;IAChD,WAAW,EACT,2FAA2F;IAC7F,MAAM,EAAE;QACN,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,qBAAqB,EAAE,aAAa,EAAE,EAAE,EAAE;QAClF,WAAW,EAAE;YACX,KAAK,EAAE,cAAc;YACrB,SAAS,EAAE,yBAAyB;YACpC,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;SACnD;KACF;IACD,KAAK,EAAE;QACL,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC5D,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE;QACjD,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE;QACnD,mBAAmB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE;QAC5D,oBAAoB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE;QAC/D,sBAAsB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE;QACjE,gBAAgB,EAAE;YAChB,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,aAAa,CAAC;SAC9C;QACD,oBAAoB,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE;KACxF;CACmC,CAAC","sourcesContent":["import { CONTAINER_ALLOWED_CHILDREN } from '../../metadata/allowedChildren';\nimport type { ZoraComponentMeta } from '../../metadata/types';\n\nexport const bottomSheetMeta = {\n name: 'BottomSheet',\n category: 'layout',\n directManifestNode: true,\n allowedChildren: [...CONTAINER_ALLOWED_CHILDREN],\n description:\n 'Controlled presentation through the shared single-sheet host. Bind dismiss to clear open.',\n events: {\n dismiss: { label: 'Dismiss', eventType: 'bottomSheet.dismiss', payloadFields: [] },\n indexChange: {\n label: 'Index change',\n eventType: 'bottomSheet.indexChange',\n payloadFields: [{ path: 'index', type: 'number' }],\n },\n },\n props: {\n open: { type: 'boolean', category: 'State', default: false },\n snapPoints: { type: 'array', category: 'Layout' },\n initialIndex: { type: 'number', category: 'State' },\n enableDynamicSizing: { type: 'boolean', category: 'Layout' },\n enablePanDownToClose: { type: 'boolean', category: 'Behavior' },\n dismissOnBackdropPress: { type: 'boolean', category: 'Behavior' },\n keyboardBehavior: {\n type: 'enum',\n category: 'Behavior',\n enum: ['extend', 'fillParent', 'interactive'],\n },\n keyboardBlurBehavior: { type: 'enum', category: 'Behavior', enum: ['none', 'restore'] },\n },\n} as const satisfies ZoraComponentMeta;\n"]}
1
+ {"version":3,"file":"bottomSheetMeta.js","sourceRoot":"","sources":["../../../src/features/bottom-sheet/bottomSheetMeta.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAE1E,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE,QAAQ;IAClB,kBAAkB,EAAE,IAAI;IACxB,eAAe,EAAE,CAAC,GAAG,0BAA0B,CAAC;IAChD,WAAW,EACT,2FAA2F;IAC7F,MAAM,EAAE;QACN,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,qBAAqB,EAAE,aAAa,EAAE,EAAE,EAAE;QAClF,WAAW,EAAE;YACX,KAAK,EAAE,cAAc;YACrB,SAAS,EAAE,yBAAyB;YACpC,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;SACnD;KACF;IACD,KAAK,EAAE;QACL,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC5D,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE;QACjD,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE;QACnD,mBAAmB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE;QAC5D,oBAAoB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE;QAC/D,sBAAsB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE;QACjE,gBAAgB,EAAE;YAChB,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,aAAa,CAAC;SAC9C;QACD,oBAAoB,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE;KACxF;CACmC,CAAC","sourcesContent":["import type { ZoraComponentMeta } from '../../types/authoring';\nimport { CONTAINER_ALLOWED_CHILDREN } from '../authoring/allowedChildren';\n\nexport const bottomSheetMeta = {\n name: 'BottomSheet',\n category: 'layout',\n directManifestNode: true,\n allowedChildren: [...CONTAINER_ALLOWED_CHILDREN],\n description:\n 'Controlled presentation through the shared single-sheet host. Bind dismiss to clear open.',\n events: {\n dismiss: { label: 'Dismiss', eventType: 'bottomSheet.dismiss', payloadFields: [] },\n indexChange: {\n label: 'Index change',\n eventType: 'bottomSheet.indexChange',\n payloadFields: [{ path: 'index', type: 'number' }],\n },\n },\n props: {\n open: { type: 'boolean', category: 'State', default: false },\n snapPoints: { type: 'array', category: 'Layout' },\n initialIndex: { type: 'number', category: 'State' },\n enableDynamicSizing: { type: 'boolean', category: 'Layout' },\n enablePanDownToClose: { type: 'boolean', category: 'Behavior' },\n dismissOnBackdropPress: { type: 'boolean', category: 'Behavior' },\n keyboardBehavior: {\n type: 'enum',\n category: 'Behavior',\n enum: ['extend', 'fillParent', 'interactive'],\n },\n keyboardBlurBehavior: { type: 'enum', category: 'Behavior', enum: ['none', 'restore'] },\n },\n} as const satisfies ZoraComponentMeta;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Breadcrumbs.d.ts","sourceRoot":"","sources":["../../../../../src/features/breadcrumbs/adapters/inbound/Breadcrumbs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,KAAK,EAGV,gBAAgB,EACjB,MAAM,+BAA+B,CAAC;AAMvC,oFAAoF;AACpF,eAAO,MAAM,WAAW,wDAAuC,CAAC"}
1
+ {"version":3,"file":"Breadcrumbs.d.ts","sourceRoot":"","sources":["../../../../../src/features/breadcrumbs/adapters/inbound/Breadcrumbs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAGV,gBAAgB,EACjB,MAAM,+BAA+B,CAAC;AASvC,oFAAoF;AACpF,eAAO,MAAM,WAAW,wDAAuC,CAAC"}
@@ -1,10 +1,10 @@
1
1
  import React from 'react';
2
- import { resolveIconSize } from '../../../../internal/recipes';
3
- import { useZoraTheme } from '../../../../theme/useZoraTheme';
4
- import { withZoraThemeScope } from '../../../../theme/withZoraThemeScope';
5
2
  import { Button } from '../../../button/public';
6
3
  import { Icon } from '../../../icon/public';
4
+ import { resolveIconSize } from '../../../icon/utils/resolveIconSize';
7
5
  import { View } from '../../../layout/public';
6
+ import { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';
7
+ import { useZoraTheme } from '../../../theme/composition/useZoraTheme';
8
8
  import { Text } from '../../../typography/public';
9
9
  /*** Renders a breadcrumb trail whose final item represents the current location. */
10
10
  export const Breadcrumbs = withZoraThemeScope(BreadcrumbsInner);
@@ -1 +1 @@
1
- {"version":3,"file":"Breadcrumbs.js","sourceRoot":"","sources":["../../../../../src/features/breadcrumbs/adapters/inbound/Breadcrumbs.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { resolveIconSize } from '../../../../internal/recipes';\nimport { useZoraTheme } from '../../../../theme/useZoraTheme';\nimport { withZoraThemeScope } from '../../../../theme/withZoraThemeScope';\nimport type {\n BreadcrumbItem,\n BreadcrumbPressEvent,\n BreadcrumbsProps,\n} from '../../../../types/breadcrumbs';\nimport { Button } from '../../../button/public';\nimport { Icon } from '../../../icon/public';\nimport { View } from '../../../layout/public';\nimport { Text } from '../../../typography/public';\n\n/*** Renders a breadcrumb trail whose final item represents the current location. */\nexport const Breadcrumbs = withZoraThemeScope(BreadcrumbsInner);\n\ntype BreadcrumbRenderItem =\n | {\n item: BreadcrumbItem;\n type: 'item';\n }\n | {\n type: 'ellipsis';\n };\n\n/*** Connects serializable breadcrumb items to the component-level item press event. */\nfunction BreadcrumbsInner({\n themeId: _themeId,\n mode: _mode,\n interactionPolicy,\n items,\n separator = '/',\n maxItems,\n compact = false,\n disabled = false,\n onItemPress,\n testID,\n}: BreadcrumbsProps) {\n const normalizedMaxItems = normalizeMaxItems(maxItems);\n const renderItems = createRenderItems(items, normalizedMaxItems);\n const currentItemId = items.at(-1)?.id;\n\n if (items.length === 0) return null;\n\n return (\n <View direction=\"row\" align=\"center\" gap={compact ? 'xs' : 's'} testID={testID} wrap=\"wrap\">\n {renderItems.map((renderItem, index) => {\n const showSeparator = index !== renderItems.length - 1;\n\n if (renderItem.type === 'ellipsis') {\n return (\n <React.Fragment key=\"ellipsis\">\n <Text emphasis=\"muted\" variant={compact ? 'caption' : 'bodySmall'}>\n …\n </Text>\n {showSeparator ? renderSeparator(separator) : null}\n </React.Fragment>\n );\n }\n\n return (\n <BreadcrumbItemView\n compact={compact}\n current={renderItem.item.id === currentItemId}\n disabled={disabled}\n interactionPolicy={interactionPolicy}\n item={renderItem.item}\n key={renderItem.item.id}\n onItemPress={onItemPress}\n separator={showSeparator ? separator : undefined}\n testID={testID}\n />\n );\n })}\n </View>\n );\n}\n\n/*** Renders one breadcrumb item and its optional following separator. */\nfunction BreadcrumbItemView({\n compact,\n current,\n disabled,\n interactionPolicy,\n item,\n onItemPress,\n separator,\n testID,\n}: {\n compact: boolean;\n current: boolean;\n disabled: boolean;\n interactionPolicy: BreadcrumbsProps['interactionPolicy'];\n item: BreadcrumbItem;\n onItemPress: ((event: BreadcrumbPressEvent) => void) | undefined;\n separator: string | undefined;\n testID: string | undefined;\n}) {\n const interactive = !current && !disabled && !item.disabled && onItemPress !== undefined;\n\n return (\n <>\n {interactive ? (\n <Button\n color=\"neutral\"\n interactionPolicy={interactionPolicy}\n leadingIcon={item.icon}\n onPress={() => onItemPress({ id: item.id })}\n size={compact ? 's' : 'm'}\n testID={testID ? `${testID}-item-${item.id}` : undefined}\n variant=\"ghost\"\n >\n {item.label}\n </Button>\n ) : (\n <BreadcrumbLabel compact={compact} item={item} />\n )}\n {separator === undefined ? null : renderSeparator(separator)}\n </>\n );\n}\n\n/*** Renders one non-interactive breadcrumb label. */\nfunction BreadcrumbLabel({ item, compact }: { item: BreadcrumbItem; compact: boolean }) {\n const { theme } = useZoraTheme();\n\n return (\n <View direction=\"row\" align=\"center\" gap=\"xs\" wrap=\"nowrap\">\n {item.icon ? (\n <Icon\n {...item.icon}\n color={theme.semantics.content.muted}\n size={resolveIconSize(compact ? 's' : 'm')}\n />\n ) : null}\n <Text emphasis=\"muted\" variant={compact ? 'caption' : 'bodySmall'}>\n {item.label}\n </Text>\n </View>\n );\n}\n\n/*** Renders the configured separator with muted breadcrumb styling. */\nfunction renderSeparator(separator: string): React.ReactNode {\n return (\n <Text emphasis=\"muted\" variant=\"bodySmall\">\n {separator}\n </Text>\n );\n}\n\n/*** Normalizes an optional maximum breadcrumb item count. */\nfunction normalizeMaxItems(value: number | undefined): number | undefined {\n if (value === undefined || !Number.isFinite(value)) return undefined;\n return Math.max(0, Math.trunc(value));\n}\n\n/*** Collapses middle breadcrumb items into one ellipsis when required. */\nfunction createRenderItems(\n items: readonly BreadcrumbItem[],\n maxItems: number | undefined,\n): readonly BreadcrumbRenderItem[] {\n if (maxItems === undefined || maxItems === 0 || items.length <= maxItems || maxItems < 3) {\n return items.map((item) => ({ item, type: 'item' }));\n }\n\n const firstItem = items.at(0);\n if (firstItem === undefined) return [];\n\n const trailingCount = maxItems - 2;\n const trailingItems = items.slice(items.length - trailingCount);\n return [\n { item: firstItem, type: 'item' },\n { type: 'ellipsis' },\n ...trailingItems.map((item) => ({ item, type: 'item' }) satisfies BreadcrumbRenderItem),\n ];\n}\n"]}
1
+ {"version":3,"file":"Breadcrumbs.js","sourceRoot":"","sources":["../../../../../src/features/breadcrumbs/adapters/inbound/Breadcrumbs.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport type {\n BreadcrumbItem,\n BreadcrumbPressEvent,\n BreadcrumbsProps,\n} from '../../../../types/breadcrumbs';\nimport { Button } from '../../../button/public';\nimport { Icon } from '../../../icon/public';\nimport { resolveIconSize } from '../../../icon/utils/resolveIconSize';\nimport { View } from '../../../layout/public';\nimport { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';\nimport { useZoraTheme } from '../../../theme/composition/useZoraTheme';\nimport { Text } from '../../../typography/public';\n\n/*** Renders a breadcrumb trail whose final item represents the current location. */\nexport const Breadcrumbs = withZoraThemeScope(BreadcrumbsInner);\n\ntype BreadcrumbRenderItem =\n | {\n item: BreadcrumbItem;\n type: 'item';\n }\n | {\n type: 'ellipsis';\n };\n\n/*** Connects serializable breadcrumb items to the component-level item press event. */\nfunction BreadcrumbsInner({\n themeId: _themeId,\n mode: _mode,\n interactionPolicy,\n items,\n separator = '/',\n maxItems,\n compact = false,\n disabled = false,\n onItemPress,\n testID,\n}: BreadcrumbsProps) {\n const normalizedMaxItems = normalizeMaxItems(maxItems);\n const renderItems = createRenderItems(items, normalizedMaxItems);\n const currentItemId = items.at(-1)?.id;\n\n if (items.length === 0) return null;\n\n return (\n <View direction=\"row\" align=\"center\" gap={compact ? 'xs' : 's'} testID={testID} wrap=\"wrap\">\n {renderItems.map((renderItem, index) => {\n const showSeparator = index !== renderItems.length - 1;\n\n if (renderItem.type === 'ellipsis') {\n return (\n <React.Fragment key=\"ellipsis\">\n <Text emphasis=\"muted\" variant={compact ? 'caption' : 'bodySmall'}>\n …\n </Text>\n {showSeparator ? renderSeparator(separator) : null}\n </React.Fragment>\n );\n }\n\n return (\n <BreadcrumbItemView\n compact={compact}\n current={renderItem.item.id === currentItemId}\n disabled={disabled}\n interactionPolicy={interactionPolicy}\n item={renderItem.item}\n key={renderItem.item.id}\n onItemPress={onItemPress}\n separator={showSeparator ? separator : undefined}\n testID={testID}\n />\n );\n })}\n </View>\n );\n}\n\n/*** Renders one breadcrumb item and its optional following separator. */\nfunction BreadcrumbItemView({\n compact,\n current,\n disabled,\n interactionPolicy,\n item,\n onItemPress,\n separator,\n testID,\n}: {\n compact: boolean;\n current: boolean;\n disabled: boolean;\n interactionPolicy: BreadcrumbsProps['interactionPolicy'];\n item: BreadcrumbItem;\n onItemPress: ((event: BreadcrumbPressEvent) => void) | undefined;\n separator: string | undefined;\n testID: string | undefined;\n}) {\n const interactive = !current && !disabled && !item.disabled && onItemPress !== undefined;\n\n return (\n <>\n {interactive ? (\n <Button\n color=\"neutral\"\n interactionPolicy={interactionPolicy}\n leadingIcon={item.icon}\n onPress={() => onItemPress({ id: item.id })}\n size={compact ? 's' : 'm'}\n testID={testID ? `${testID}-item-${item.id}` : undefined}\n variant=\"ghost\"\n >\n {item.label}\n </Button>\n ) : (\n <BreadcrumbLabel compact={compact} item={item} />\n )}\n {separator === undefined ? null : renderSeparator(separator)}\n </>\n );\n}\n\n/*** Renders one non-interactive breadcrumb label. */\nfunction BreadcrumbLabel({ item, compact }: { item: BreadcrumbItem; compact: boolean }) {\n const { theme } = useZoraTheme();\n\n return (\n <View direction=\"row\" align=\"center\" gap=\"xs\" wrap=\"nowrap\">\n {item.icon ? (\n <Icon\n {...item.icon}\n color={theme.semantics.content.muted}\n size={resolveIconSize(compact ? 's' : 'm')}\n />\n ) : null}\n <Text emphasis=\"muted\" variant={compact ? 'caption' : 'bodySmall'}>\n {item.label}\n </Text>\n </View>\n );\n}\n\n/*** Renders the configured separator with muted breadcrumb styling. */\nfunction renderSeparator(separator: string): React.ReactNode {\n return (\n <Text emphasis=\"muted\" variant=\"bodySmall\">\n {separator}\n </Text>\n );\n}\n\n/*** Normalizes an optional maximum breadcrumb item count. */\nfunction normalizeMaxItems(value: number | undefined): number | undefined {\n if (value === undefined || !Number.isFinite(value)) return undefined;\n return Math.max(0, Math.trunc(value));\n}\n\n/*** Collapses middle breadcrumb items into one ellipsis when required. */\nfunction createRenderItems(\n items: readonly BreadcrumbItem[],\n maxItems: number | undefined,\n): readonly BreadcrumbRenderItem[] {\n if (maxItems === undefined || maxItems === 0 || items.length <= maxItems || maxItems < 3) {\n return items.map((item) => ({ item, type: 'item' }));\n }\n\n const firstItem = items.at(0);\n if (firstItem === undefined) return [];\n\n const trailingCount = maxItems - 2;\n const trailingItems = items.slice(items.length - trailingCount);\n return [\n { item: firstItem, type: 'item' },\n { type: 'ellipsis' },\n ...trailingItems.map((item) => ({ item, type: 'item' }) satisfies BreadcrumbRenderItem),\n ];\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"breadcrumbsMeta.js","sourceRoot":"","sources":["../../../src/features/breadcrumbs/breadcrumbsMeta.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,kFAAkF;IAC/F,kBAAkB,EAAE,IAAI;IACxB,eAAe,EAAE,EAAE;IACnB,SAAS,EAAE;QACT,KAAK,EAAE,aAAa;QACpB,YAAY,EAAE;YACZ,KAAK,EAAE;gBACL,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;gBACrC,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;aACpC;YACD,SAAS,EAAE,GAAG;YACd,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,KAAK;SAChB;KACF;IACD,QAAQ,EAAE;QACR,MAAM,EAAE;YACN,SAAS,EAAE;gBACT,KAAK,EAAE,YAAY;gBACnB,WAAW,EAAE,qDAAqD;gBAClE,OAAO,EAAE;oBACP,SAAS,EAAE,uBAAuB;oBAClC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;iBAC3D;aACF;SACF;KACF;IACD,MAAM,EAAE;QACN,SAAS,EAAE;YACT,KAAK,EAAE,YAAY;YACnB,SAAS,EAAE,uBAAuB;YAClC,WAAW,EAAE,wDAAwD;YACrE,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;SAClE;KACF;IACD,KAAK,EAAE;QACL,KAAK,EAAE;YACL,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,OAAO;YACd,UAAU,EAAE;gBACV;oBACE,GAAG,EAAE,IAAI;oBACT,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE;iBAC7D;gBACD;oBACE,GAAG,EAAE,OAAO;oBACZ,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE;iBAChE;gBACD;oBACE,GAAG,EAAE,UAAU;oBACf,MAAM,EAAE;wBACN,IAAI,EAAE,SAAS;wBACf,QAAQ,EAAE,OAAO;wBACjB,KAAK,EAAE,UAAU;wBACjB,OAAO,EAAE,KAAK;qBACf;iBACF;aACF;YACD,SAAS,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE;SACrC;QACD,SAAS,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,WAAW;YAClB,OAAO,EAAE,GAAG;YACZ,SAAS,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE;SACrC;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,QAAQ;YAClB,KAAK,EAAE,eAAe;YACtB,SAAS,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE;SACrC;QACD,OAAO,EAAE;YACP,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,QAAQ;YAClB,KAAK,EAAE,SAAS;YAChB,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE;SACrC;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,UAAU;YACjB,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE;SACrC;KACF;CACmC,CAAC","sourcesContent":["import type { ZoraComponentMeta } from '../../metadata';\n\nexport const breadcrumbsMeta = {\n name: 'Breadcrumbs',\n category: 'component',\n description: 'Hierarchical route context where the final item represents the current location.',\n directManifestNode: true,\n allowedChildren: [],\n blueprint: {\n label: 'Breadcrumbs',\n defaultProps: {\n items: [\n { id: 'settings', label: 'Settings' },\n { id: 'general', label: 'General' },\n ],\n separator: '/',\n compact: false,\n disabled: false,\n },\n },\n bindings: {\n events: {\n itemPress: {\n label: 'Item press',\n description: 'Runs when a non-current breadcrumb item is pressed.',\n payload: {\n eventType: 'breadcrumbs.itemPress',\n fields: [{ path: 'id', type: 'string', label: 'Item id' }],\n },\n },\n },\n },\n events: {\n itemPress: {\n label: 'Item press',\n eventType: 'breadcrumbs.itemPress',\n description: 'Emitted when a non-current breadcrumb item is pressed.',\n payloadFields: [{ path: 'id', type: 'string', label: 'Item id' }],\n },\n },\n props: {\n items: {\n type: 'array',\n category: 'Content',\n label: 'Items',\n itemSchema: [\n {\n key: 'id',\n schema: { type: 'string', category: 'Content', label: 'Id' },\n },\n {\n key: 'label',\n schema: { type: 'string', category: 'Content', label: 'Label' },\n },\n {\n key: 'disabled',\n schema: {\n type: 'boolean',\n category: 'State',\n label: 'Disabled',\n default: false,\n },\n },\n ],\n authoring: { authority: 'instance' },\n },\n separator: {\n type: 'string',\n category: 'Content',\n label: 'Separator',\n default: '/',\n authoring: { authority: 'instance' },\n },\n maxItems: {\n type: 'number',\n category: 'Layout',\n label: 'Maximum items',\n authoring: { authority: 'instance' },\n },\n compact: {\n type: 'boolean',\n category: 'Layout',\n label: 'Compact',\n default: false,\n authoring: { authority: 'instance' },\n },\n disabled: {\n type: 'boolean',\n category: 'State',\n label: 'Disabled',\n default: false,\n authoring: { authority: 'instance' },\n },\n },\n} as const satisfies ZoraComponentMeta;\n"]}
1
+ {"version":3,"file":"breadcrumbsMeta.js","sourceRoot":"","sources":["../../../src/features/breadcrumbs/breadcrumbsMeta.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE,WAAW;IACrB,WAAW,EAAE,kFAAkF;IAC/F,kBAAkB,EAAE,IAAI;IACxB,eAAe,EAAE,EAAE;IACnB,SAAS,EAAE;QACT,KAAK,EAAE,aAAa;QACpB,YAAY,EAAE;YACZ,KAAK,EAAE;gBACL,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;gBACrC,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;aACpC;YACD,SAAS,EAAE,GAAG;YACd,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,KAAK;SAChB;KACF;IACD,QAAQ,EAAE;QACR,MAAM,EAAE;YACN,SAAS,EAAE;gBACT,KAAK,EAAE,YAAY;gBACnB,WAAW,EAAE,qDAAqD;gBAClE,OAAO,EAAE;oBACP,SAAS,EAAE,uBAAuB;oBAClC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;iBAC3D;aACF;SACF;KACF;IACD,MAAM,EAAE;QACN,SAAS,EAAE;YACT,KAAK,EAAE,YAAY;YACnB,SAAS,EAAE,uBAAuB;YAClC,WAAW,EAAE,wDAAwD;YACrE,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;SAClE;KACF;IACD,KAAK,EAAE;QACL,KAAK,EAAE;YACL,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,OAAO;YACd,UAAU,EAAE;gBACV;oBACE,GAAG,EAAE,IAAI;oBACT,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE;iBAC7D;gBACD;oBACE,GAAG,EAAE,OAAO;oBACZ,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE;iBAChE;gBACD;oBACE,GAAG,EAAE,UAAU;oBACf,MAAM,EAAE;wBACN,IAAI,EAAE,SAAS;wBACf,QAAQ,EAAE,OAAO;wBACjB,KAAK,EAAE,UAAU;wBACjB,OAAO,EAAE,KAAK;qBACf;iBACF;aACF;YACD,SAAS,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE;SACrC;QACD,SAAS,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,WAAW;YAClB,OAAO,EAAE,GAAG;YACZ,SAAS,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE;SACrC;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,QAAQ;YAClB,KAAK,EAAE,eAAe;YACtB,SAAS,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE;SACrC;QACD,OAAO,EAAE;YACP,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,QAAQ;YAClB,KAAK,EAAE,SAAS;YAChB,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE;SACrC;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,UAAU;YACjB,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE;SACrC;KACF;CACmC,CAAC","sourcesContent":["import type { ZoraComponentMeta } from '../authoring';\n\nexport const breadcrumbsMeta = {\n name: 'Breadcrumbs',\n category: 'component',\n description: 'Hierarchical route context where the final item represents the current location.',\n directManifestNode: true,\n allowedChildren: [],\n blueprint: {\n label: 'Breadcrumbs',\n defaultProps: {\n items: [\n { id: 'settings', label: 'Settings' },\n { id: 'general', label: 'General' },\n ],\n separator: '/',\n compact: false,\n disabled: false,\n },\n },\n bindings: {\n events: {\n itemPress: {\n label: 'Item press',\n description: 'Runs when a non-current breadcrumb item is pressed.',\n payload: {\n eventType: 'breadcrumbs.itemPress',\n fields: [{ path: 'id', type: 'string', label: 'Item id' }],\n },\n },\n },\n },\n events: {\n itemPress: {\n label: 'Item press',\n eventType: 'breadcrumbs.itemPress',\n description: 'Emitted when a non-current breadcrumb item is pressed.',\n payloadFields: [{ path: 'id', type: 'string', label: 'Item id' }],\n },\n },\n props: {\n items: {\n type: 'array',\n category: 'Content',\n label: 'Items',\n itemSchema: [\n {\n key: 'id',\n schema: { type: 'string', category: 'Content', label: 'Id' },\n },\n {\n key: 'label',\n schema: { type: 'string', category: 'Content', label: 'Label' },\n },\n {\n key: 'disabled',\n schema: {\n type: 'boolean',\n category: 'State',\n label: 'Disabled',\n default: false,\n },\n },\n ],\n authoring: { authority: 'instance' },\n },\n separator: {\n type: 'string',\n category: 'Content',\n label: 'Separator',\n default: '/',\n authoring: { authority: 'instance' },\n },\n maxItems: {\n type: 'number',\n category: 'Layout',\n label: 'Maximum items',\n authoring: { authority: 'instance' },\n },\n compact: {\n type: 'boolean',\n category: 'Layout',\n label: 'Compact',\n default: false,\n authoring: { authority: 'instance' },\n },\n disabled: {\n type: 'boolean',\n category: 'State',\n label: 'Disabled',\n default: false,\n authoring: { authority: 'instance' },\n },\n },\n} as const satisfies ZoraComponentMeta;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../../src/features/button/adapters/inbound/Button.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D;;;;;;;;;;GAUG;AACH,eAAO,MAAM,MAAM,mDAAkC,CAAC"}
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../../src/features/button/adapters/inbound/Button.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAI5D;;;;;;;;;;GAUG;AACH,eAAO,MAAM,MAAM,mDAAkC,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { Button as SurfaceButton } from '@ankhorage/surface';
2
2
  import React from 'react';
3
- import { useZoraThemeRecipe } from '../../../../theme/useZoraThemeRecipe';
4
- import { withZoraThemeScope } from '../../../../theme/withZoraThemeScope';
3
+ import { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';
4
+ import { useZoraThemeRecipe } from '../../../theme/composition/useZoraThemeRecipe';
5
5
  import { resolveButtonThemeRecipe } from '../../utils/resolveButtonThemeRecipe';
6
6
  /***
7
7
  * Theme-aware action control for primary, secondary, destructive, and neutral actions.
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../../../src/features/button/adapters/inbound/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAChF;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;AAEtD,SAAS,WAAW,CAAC,EACnB,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,KAAK,EACX,KAAK,EACL,OAAO,EACP,IAAI,EACJ,iBAAiB,EACjB,GAAG,KAAK,EACI;IACZ,MAAM,WAAW,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,wBAAwB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;IAE/E,OAAO,CACL,CAAC,aAAa,CACZ,IAAI,KAAK,CAAC,CACV,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACpB,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAClB,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CACxB,iBAAiB,CAAC,CAAC,iBAAiB,CAAC,EACrC,CACH,CAAC;AACJ,CAAC","sourcesContent":["import { Button as SurfaceButton } from '@ankhorage/surface';\nimport React from 'react';\n\nimport { useZoraThemeRecipe } from '../../../../theme/useZoraThemeRecipe';\nimport { withZoraThemeScope } from '../../../../theme/withZoraThemeScope';\nimport type { ButtonProps } from '../../../../types/button';\nimport { resolveButtonThemeRecipe } from '../../utils/resolveButtonThemeRecipe';\n/***\n * Theme-aware action control for primary, secondary, destructive, and neutral actions.\n *\n * Use `Button` for explicit user actions that should follow ZORA's semantic color,\n * variant, and size recipes across React Native and React Native Web.\n *\n * @example Basic action\n * ```tsx\n * <Button color=\"primary\" variant=\"solid\" onPress={save}>Save</Button>\n * ```\n */\nexport const Button = withZoraThemeScope(ButtonInner);\n\nfunction ButtonInner({\n themeId: _themeId,\n mode: _mode,\n color,\n variant,\n size,\n interactionPolicy,\n ...props\n}: ButtonProps) {\n const themeFields = useZoraThemeRecipe('Button');\n const recipe = resolveButtonThemeRecipe({ color, variant, size, themeFields });\n\n return (\n <SurfaceButton\n {...props}\n color={recipe.color}\n size={recipe.size}\n variant={recipe.variant}\n interactionPolicy={interactionPolicy}\n />\n );\n}\n"]}
1
+ {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../../../src/features/button/adapters/inbound/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AACnF,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAChF;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;AAEtD,SAAS,WAAW,CAAC,EACnB,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,KAAK,EACX,KAAK,EACL,OAAO,EACP,IAAI,EACJ,iBAAiB,EACjB,GAAG,KAAK,EACI;IACZ,MAAM,WAAW,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,wBAAwB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;IAE/E,OAAO,CACL,CAAC,aAAa,CACZ,IAAI,KAAK,CAAC,CACV,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACpB,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAClB,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CACxB,iBAAiB,CAAC,CAAC,iBAAiB,CAAC,EACrC,CACH,CAAC;AACJ,CAAC","sourcesContent":["import { Button as SurfaceButton } from '@ankhorage/surface';\nimport React from 'react';\n\nimport type { ButtonProps } from '../../../../types/button';\nimport { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';\nimport { useZoraThemeRecipe } from '../../../theme/composition/useZoraThemeRecipe';\nimport { resolveButtonThemeRecipe } from '../../utils/resolveButtonThemeRecipe';\n/***\n * Theme-aware action control for primary, secondary, destructive, and neutral actions.\n *\n * Use `Button` for explicit user actions that should follow ZORA's semantic color,\n * variant, and size recipes across React Native and React Native Web.\n *\n * @example Basic action\n * ```tsx\n * <Button color=\"primary\" variant=\"solid\" onPress={save}>Save</Button>\n * ```\n */\nexport const Button = withZoraThemeScope(ButtonInner);\n\nfunction ButtonInner({\n themeId: _themeId,\n mode: _mode,\n color,\n variant,\n size,\n interactionPolicy,\n ...props\n}: ButtonProps) {\n const themeFields = useZoraThemeRecipe('Button');\n const recipe = resolveButtonThemeRecipe({ color, variant, size, themeFields });\n\n return (\n <SurfaceButton\n {...props}\n color={recipe.color}\n size={recipe.size}\n variant={recipe.variant}\n interactionPolicy={interactionPolicy}\n />\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonGroup.d.ts","sourceRoot":"","sources":["../../../../../src/features/button/adapters/inbound/ButtonGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAGV,gBAAgB,EACjB,MAAM,gCAAgC,CAAC;AAExC;;GAEG;AACH,eAAO,MAAM,WAAW,wDAAuC,CAAC"}
1
+ {"version":3,"file":"ButtonGroup.d.ts","sourceRoot":"","sources":["../../../../../src/features/button/adapters/inbound/ButtonGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAGV,gBAAgB,EACjB,MAAM,gCAAgC,CAAC;AAGxC;;GAEG;AACH,eAAO,MAAM,WAAW,wDAAuC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import { withZoraThemeScope } from '../../../../theme/withZoraThemeScope';
3
2
  import { View } from '../../../layout/public';
3
+ import { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';
4
4
  /***
5
5
  * Groups multiple `Button` elements with consistent spacing and alignment.
6
6
  */