@ankhorage/zora 2.5.3 → 2.5.5

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 (509) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +46 -5067
  3. package/dist/components/action-sheet/ActionSheet.d.ts +0 -2
  4. package/dist/components/action-sheet/ActionSheet.d.ts.map +1 -1
  5. package/dist/components/action-sheet/ActionSheet.js +0 -2
  6. package/dist/components/action-sheet/ActionSheet.js.map +1 -1
  7. package/dist/components/action-sheet/ActionSheetItem.d.ts +0 -2
  8. package/dist/components/action-sheet/ActionSheetItem.d.ts.map +1 -1
  9. package/dist/components/action-sheet/ActionSheetItem.js +0 -2
  10. package/dist/components/action-sheet/ActionSheetItem.js.map +1 -1
  11. package/dist/components/app-bar/AppBar.d.ts +0 -2
  12. package/dist/components/app-bar/AppBar.d.ts.map +1 -1
  13. package/dist/components/app-bar/AppBar.js +0 -2
  14. package/dist/components/app-bar/AppBar.js.map +1 -1
  15. package/dist/components/avatar/Avatar.d.ts +0 -2
  16. package/dist/components/avatar/Avatar.d.ts.map +1 -1
  17. package/dist/components/avatar/Avatar.js +0 -2
  18. package/dist/components/avatar/Avatar.js.map +1 -1
  19. package/dist/components/avatar-group/AvatarGroup.d.ts +0 -2
  20. package/dist/components/avatar-group/AvatarGroup.d.ts.map +1 -1
  21. package/dist/components/avatar-group/AvatarGroup.js +0 -2
  22. package/dist/components/avatar-group/AvatarGroup.js.map +1 -1
  23. package/dist/components/badge/Badge.d.ts +0 -2
  24. package/dist/components/badge/Badge.d.ts.map +1 -1
  25. package/dist/components/badge/Badge.js +0 -2
  26. package/dist/components/badge/Badge.js.map +1 -1
  27. package/dist/components/breadcrumbs/Breadcrumbs.d.ts +0 -2
  28. package/dist/components/breadcrumbs/Breadcrumbs.d.ts.map +1 -1
  29. package/dist/components/breadcrumbs/Breadcrumbs.js +0 -2
  30. package/dist/components/breadcrumbs/Breadcrumbs.js.map +1 -1
  31. package/dist/components/button/Button.d.ts +0 -1
  32. package/dist/components/button/Button.d.ts.map +1 -1
  33. package/dist/components/button/Button.js +0 -1
  34. package/dist/components/button/Button.js.map +1 -1
  35. package/dist/components/button-group/ButtonGroup.d.ts +0 -2
  36. package/dist/components/button-group/ButtonGroup.d.ts.map +1 -1
  37. package/dist/components/button-group/ButtonGroup.js +0 -2
  38. package/dist/components/button-group/ButtonGroup.js.map +1 -1
  39. package/dist/components/card/Card.d.ts +0 -1
  40. package/dist/components/card/Card.d.ts.map +1 -1
  41. package/dist/components/card/Card.js +0 -1
  42. package/dist/components/card/Card.js.map +1 -1
  43. package/dist/components/checkbox/Checkbox.d.ts +1 -1
  44. package/dist/components/checkbox/Checkbox.js +1 -1
  45. package/dist/components/checkbox/Checkbox.js.map +1 -1
  46. package/dist/components/checkbox/CheckboxGroup.d.ts +0 -2
  47. package/dist/components/checkbox/CheckboxGroup.d.ts.map +1 -1
  48. package/dist/components/checkbox/CheckboxGroup.js +0 -2
  49. package/dist/components/checkbox/CheckboxGroup.js.map +1 -1
  50. package/dist/components/chip/Chip.d.ts +0 -2
  51. package/dist/components/chip/Chip.d.ts.map +1 -1
  52. package/dist/components/chip/Chip.js +0 -2
  53. package/dist/components/chip/Chip.js.map +1 -1
  54. package/dist/components/chip-group/ChipGroup.d.ts +0 -2
  55. package/dist/components/chip-group/ChipGroup.d.ts.map +1 -1
  56. package/dist/components/chip-group/ChipGroup.js +0 -2
  57. package/dist/components/chip-group/ChipGroup.js.map +1 -1
  58. package/dist/components/data-table/DataTable.d.ts +0 -2
  59. package/dist/components/data-table/DataTable.d.ts.map +1 -1
  60. package/dist/components/data-table/DataTable.js +0 -2
  61. package/dist/components/data-table/DataTable.js.map +1 -1
  62. package/dist/components/date-picker/DatePicker.d.ts +0 -2
  63. package/dist/components/date-picker/DatePicker.d.ts.map +1 -1
  64. package/dist/components/date-picker/DatePicker.js +0 -2
  65. package/dist/components/date-picker/DatePicker.js.map +1 -1
  66. package/dist/components/drawer/Drawer.d.ts +0 -2
  67. package/dist/components/drawer/Drawer.d.ts.map +1 -1
  68. package/dist/components/drawer/Drawer.js +0 -2
  69. package/dist/components/drawer/Drawer.js.map +1 -1
  70. package/dist/components/form/Form.d.ts +0 -2
  71. package/dist/components/form/Form.d.ts.map +1 -1
  72. package/dist/components/form/Form.js +0 -2
  73. package/dist/components/form/Form.js.map +1 -1
  74. package/dist/components/form/FormActions.d.ts +0 -2
  75. package/dist/components/form/FormActions.d.ts.map +1 -1
  76. package/dist/components/form/FormActions.js +0 -2
  77. package/dist/components/form/FormActions.js.map +1 -1
  78. package/dist/components/form/FormError.d.ts +0 -2
  79. package/dist/components/form/FormError.d.ts.map +1 -1
  80. package/dist/components/form/FormError.js +0 -2
  81. package/dist/components/form/FormError.js.map +1 -1
  82. package/dist/components/form/FormField.d.ts +0 -2
  83. package/dist/components/form/FormField.d.ts.map +1 -1
  84. package/dist/components/form/FormField.js +0 -2
  85. package/dist/components/form/FormField.js.map +1 -1
  86. package/dist/components/gradient/Gradient.d.ts +10 -0
  87. package/dist/components/gradient/Gradient.d.ts.map +1 -0
  88. package/dist/components/gradient/Gradient.js +21 -0
  89. package/dist/components/gradient/Gradient.js.map +1 -0
  90. package/dist/components/gradient/index.d.ts +3 -0
  91. package/dist/components/gradient/index.d.ts.map +1 -0
  92. package/dist/components/gradient/index.js +2 -0
  93. package/dist/components/gradient/index.js.map +1 -0
  94. package/dist/components/gradient/meta.d.ts +9 -0
  95. package/dist/components/gradient/meta.d.ts.map +1 -0
  96. package/dist/components/gradient/meta.js +9 -0
  97. package/dist/components/gradient/meta.js.map +1 -0
  98. package/dist/components/gradient/types.d.ts +23 -0
  99. package/dist/components/gradient/types.d.ts.map +1 -0
  100. package/dist/components/gradient/types.js +2 -0
  101. package/dist/components/gradient/types.js.map +1 -0
  102. package/dist/components/heading/Heading.d.ts +0 -1
  103. package/dist/components/heading/Heading.d.ts.map +1 -1
  104. package/dist/components/heading/Heading.js +0 -1
  105. package/dist/components/heading/Heading.js.map +1 -1
  106. package/dist/components/icon/Icon.d.ts +0 -2
  107. package/dist/components/icon/Icon.d.ts.map +1 -1
  108. package/dist/components/icon/Icon.js +0 -2
  109. package/dist/components/icon/Icon.js.map +1 -1
  110. package/dist/components/icon-button/IconButton.d.ts +0 -2
  111. package/dist/components/icon-button/IconButton.d.ts.map +1 -1
  112. package/dist/components/icon-button/IconButton.js +0 -2
  113. package/dist/components/icon-button/IconButton.js.map +1 -1
  114. package/dist/components/image/Image.d.ts +1 -1
  115. package/dist/components/image/Image.js +1 -1
  116. package/dist/components/image/Image.js.map +1 -1
  117. package/dist/components/input/Input.d.ts +0 -1
  118. package/dist/components/input/Input.d.ts.map +1 -1
  119. package/dist/components/input/Input.js +0 -1
  120. package/dist/components/input/Input.js.map +1 -1
  121. package/dist/components/media-card/MediaCard.d.ts +0 -2
  122. package/dist/components/media-card/MediaCard.d.ts.map +1 -1
  123. package/dist/components/media-card/MediaCard.js +0 -2
  124. package/dist/components/media-card/MediaCard.js.map +1 -1
  125. package/dist/components/menu/DropdownMenu.d.ts +0 -2
  126. package/dist/components/menu/DropdownMenu.d.ts.map +1 -1
  127. package/dist/components/menu/DropdownMenu.js +0 -2
  128. package/dist/components/menu/DropdownMenu.js.map +1 -1
  129. package/dist/components/menu/Menu.d.ts +0 -2
  130. package/dist/components/menu/Menu.d.ts.map +1 -1
  131. package/dist/components/menu/Menu.js +0 -2
  132. package/dist/components/menu/Menu.js.map +1 -1
  133. package/dist/components/metric-card/MetricCard.d.ts +0 -2
  134. package/dist/components/metric-card/MetricCard.d.ts.map +1 -1
  135. package/dist/components/metric-card/MetricCard.js +0 -2
  136. package/dist/components/metric-card/MetricCard.js.map +1 -1
  137. package/dist/components/modal/Modal.d.ts +0 -2
  138. package/dist/components/modal/Modal.d.ts.map +1 -1
  139. package/dist/components/modal/Modal.js +0 -2
  140. package/dist/components/modal/Modal.js.map +1 -1
  141. package/dist/components/navigation-item/NavigationItem.d.ts +0 -2
  142. package/dist/components/navigation-item/NavigationItem.d.ts.map +1 -1
  143. package/dist/components/navigation-item/NavigationItem.js +0 -2
  144. package/dist/components/navigation-item/NavigationItem.js.map +1 -1
  145. package/dist/components/navigation-list/NavigationList.d.ts +0 -2
  146. package/dist/components/navigation-list/NavigationList.d.ts.map +1 -1
  147. package/dist/components/navigation-list/NavigationList.js +0 -2
  148. package/dist/components/navigation-list/NavigationList.js.map +1 -1
  149. package/dist/components/pagination/Pagination.d.ts +0 -2
  150. package/dist/components/pagination/Pagination.d.ts.map +1 -1
  151. package/dist/components/pagination/Pagination.js +0 -2
  152. package/dist/components/pagination/Pagination.js.map +1 -1
  153. package/dist/components/progress/Progress.d.ts +0 -2
  154. package/dist/components/progress/Progress.d.ts.map +1 -1
  155. package/dist/components/progress/Progress.js +0 -2
  156. package/dist/components/progress/Progress.js.map +1 -1
  157. package/dist/components/radio/Radio.d.ts +0 -2
  158. package/dist/components/radio/Radio.d.ts.map +1 -1
  159. package/dist/components/radio/Radio.js +0 -2
  160. package/dist/components/radio/Radio.js.map +1 -1
  161. package/dist/components/radio/RadioGroup.d.ts +0 -2
  162. package/dist/components/radio/RadioGroup.d.ts.map +1 -1
  163. package/dist/components/radio/RadioGroup.js +0 -2
  164. package/dist/components/radio/RadioGroup.js.map +1 -1
  165. package/dist/components/rating/Rating.d.ts +0 -2
  166. package/dist/components/rating/Rating.d.ts.map +1 -1
  167. package/dist/components/rating/Rating.js +0 -2
  168. package/dist/components/rating/Rating.js.map +1 -1
  169. package/dist/components/search-bar/SearchBar.d.ts +0 -2
  170. package/dist/components/search-bar/SearchBar.d.ts.map +1 -1
  171. package/dist/components/search-bar/SearchBar.js +0 -2
  172. package/dist/components/search-bar/SearchBar.js.map +1 -1
  173. package/dist/components/select/Select.d.ts +0 -2
  174. package/dist/components/select/Select.d.ts.map +1 -1
  175. package/dist/components/select/Select.js +0 -2
  176. package/dist/components/select/Select.js.map +1 -1
  177. package/dist/components/skeleton/Skeleton.d.ts +0 -2
  178. package/dist/components/skeleton/Skeleton.d.ts.map +1 -1
  179. package/dist/components/skeleton/Skeleton.js +0 -2
  180. package/dist/components/skeleton/Skeleton.js.map +1 -1
  181. package/dist/components/skeleton/SkeletonCard.d.ts +0 -2
  182. package/dist/components/skeleton/SkeletonCard.d.ts.map +1 -1
  183. package/dist/components/skeleton/SkeletonCard.js +0 -2
  184. package/dist/components/skeleton/SkeletonCard.js.map +1 -1
  185. package/dist/components/skeleton/SkeletonList.d.ts +1 -1
  186. package/dist/components/skeleton/SkeletonList.js +1 -1
  187. package/dist/components/skeleton/SkeletonList.js.map +1 -1
  188. package/dist/components/skeleton/SkeletonText.d.ts +1 -1
  189. package/dist/components/skeleton/SkeletonText.js +1 -1
  190. package/dist/components/skeleton/SkeletonText.js.map +1 -1
  191. package/dist/components/splash-screen/SplashScreen.d.ts +11 -0
  192. package/dist/components/splash-screen/SplashScreen.d.ts.map +1 -0
  193. package/dist/components/splash-screen/SplashScreen.js +54 -0
  194. package/dist/components/splash-screen/SplashScreen.js.map +1 -0
  195. package/dist/components/splash-screen/index.d.ts +3 -0
  196. package/dist/components/splash-screen/index.d.ts.map +1 -0
  197. package/dist/components/splash-screen/index.js +2 -0
  198. package/dist/components/splash-screen/index.js.map +1 -0
  199. package/dist/components/splash-screen/meta.d.ts +9 -0
  200. package/dist/components/splash-screen/meta.d.ts.map +1 -0
  201. package/dist/components/splash-screen/meta.js +9 -0
  202. package/dist/components/splash-screen/meta.js.map +1 -0
  203. package/dist/components/splash-screen/types.d.ts +16 -0
  204. package/dist/components/splash-screen/types.d.ts.map +1 -0
  205. package/dist/components/splash-screen/types.js +2 -0
  206. package/dist/components/splash-screen/types.js.map +1 -0
  207. package/dist/components/tabs/Tabs.d.ts +1 -1
  208. package/dist/components/tabs/Tabs.js +1 -1
  209. package/dist/components/tabs/Tabs.js.map +1 -1
  210. package/dist/components/text/Text.d.ts +1 -1
  211. package/dist/components/text/Text.js +1 -1
  212. package/dist/components/text/Text.js.map +1 -1
  213. package/dist/components/textarea/Textarea.d.ts +1 -1
  214. package/dist/components/textarea/Textarea.js +1 -1
  215. package/dist/components/textarea/Textarea.js.map +1 -1
  216. package/dist/components/time-picker/TimePicker.d.ts +1 -1
  217. package/dist/components/time-picker/TimePicker.js +1 -1
  218. package/dist/components/time-picker/TimePicker.js.map +1 -1
  219. package/dist/components/toast/Toast.d.ts +1 -1
  220. package/dist/components/toast/Toast.js +1 -1
  221. package/dist/components/toast/Toast.js.map +1 -1
  222. package/dist/components/toast/ToastProvider.d.ts +1 -1
  223. package/dist/components/toast/ToastProvider.js +1 -1
  224. package/dist/components/toast/ToastProvider.js.map +1 -1
  225. package/dist/components/toolbar/Toolbar.d.ts +1 -1
  226. package/dist/components/toolbar/Toolbar.js +1 -1
  227. package/dist/components/toolbar/Toolbar.js.map +1 -1
  228. package/dist/components/toolbar/ToolbarAction.d.ts +1 -1
  229. package/dist/components/toolbar/ToolbarAction.js +1 -1
  230. package/dist/components/toolbar/ToolbarAction.js.map +1 -1
  231. package/dist/foundation/Box.d.ts +1 -1
  232. package/dist/foundation/Box.js +1 -1
  233. package/dist/foundation/Box.js.map +1 -1
  234. package/dist/foundation/Center.d.ts +1 -1
  235. package/dist/foundation/Center.js +1 -1
  236. package/dist/foundation/Center.js.map +1 -1
  237. package/dist/foundation/Container.d.ts +1 -1
  238. package/dist/foundation/Container.js +1 -1
  239. package/dist/foundation/Container.js.map +1 -1
  240. package/dist/foundation/Divider.d.ts +1 -1
  241. package/dist/foundation/Divider.js +1 -1
  242. package/dist/foundation/Divider.js.map +1 -1
  243. package/dist/foundation/Grid.d.ts +1 -1
  244. package/dist/foundation/Grid.js +1 -1
  245. package/dist/foundation/Grid.js.map +1 -1
  246. package/dist/foundation/Inline.d.ts +1 -1
  247. package/dist/foundation/Inline.js +1 -1
  248. package/dist/foundation/Inline.js.map +1 -1
  249. package/dist/foundation/Show.d.ts +1 -1
  250. package/dist/foundation/Show.js +1 -1
  251. package/dist/foundation/Show.js.map +1 -1
  252. package/dist/foundation/Spacer.d.ts +1 -1
  253. package/dist/foundation/Spacer.js +1 -1
  254. package/dist/foundation/Spacer.js.map +1 -1
  255. package/dist/foundation/Stack.d.ts +1 -1
  256. package/dist/foundation/Stack.js +1 -1
  257. package/dist/foundation/Stack.js.map +1 -1
  258. package/dist/foundation/Surface.d.ts +1 -1
  259. package/dist/foundation/Surface.js +1 -1
  260. package/dist/foundation/Surface.js.map +1 -1
  261. package/dist/index.d.ts +4 -0
  262. package/dist/index.d.ts.map +1 -1
  263. package/dist/index.js +2 -0
  264. package/dist/index.js.map +1 -1
  265. package/dist/layout/app-shell/AppShell.d.ts +1 -1
  266. package/dist/layout/app-shell/AppShell.js +1 -1
  267. package/dist/layout/app-shell/AppShell.js.map +1 -1
  268. package/dist/layout/screen/Screen.d.ts +1 -1
  269. package/dist/layout/screen/Screen.js +1 -1
  270. package/dist/layout/screen/Screen.js.map +1 -1
  271. package/dist/layout/screen-section/ScreenSection.d.ts +1 -1
  272. package/dist/layout/screen-section/ScreenSection.js +1 -1
  273. package/dist/layout/screen-section/ScreenSection.js.map +1 -1
  274. package/dist/layout/settings-layout/SettingsLayout.d.ts +1 -1
  275. package/dist/layout/settings-layout/SettingsLayout.js +1 -1
  276. package/dist/layout/settings-layout/SettingsLayout.js.map +1 -1
  277. package/dist/layout/sidebar-layout/SidebarLayout.d.ts +1 -1
  278. package/dist/layout/sidebar-layout/SidebarLayout.js +1 -1
  279. package/dist/layout/sidebar-layout/SidebarLayout.js.map +1 -1
  280. package/dist/layout/topbar-layout/TopbarLayout.d.ts +1 -1
  281. package/dist/layout/topbar-layout/TopbarLayout.js +1 -1
  282. package/dist/layout/topbar-layout/TopbarLayout.js.map +1 -1
  283. package/dist/metadata/componentMeta.d.ts.map +1 -1
  284. package/dist/metadata/componentMeta.js +4 -0
  285. package/dist/metadata/componentMeta.js.map +1 -1
  286. package/dist/patterns/auth/ForgotPasswordForm.d.ts +1 -1
  287. package/dist/patterns/auth/ForgotPasswordForm.js +1 -1
  288. package/dist/patterns/auth/ForgotPasswordForm.js.map +1 -1
  289. package/dist/patterns/auth/OtpForm.d.ts +1 -1
  290. package/dist/patterns/auth/OtpForm.js +1 -1
  291. package/dist/patterns/auth/OtpForm.js.map +1 -1
  292. package/dist/patterns/auth/SignInForm.d.ts +1 -1
  293. package/dist/patterns/auth/SignInForm.js +1 -1
  294. package/dist/patterns/auth/SignInForm.js.map +1 -1
  295. package/dist/patterns/auth/SignUpForm.d.ts +1 -1
  296. package/dist/patterns/auth/SignUpForm.js +1 -1
  297. package/dist/patterns/auth/SignUpForm.js.map +1 -1
  298. package/dist/patterns/chat-list-item/ChatListItem.d.ts +1 -1
  299. package/dist/patterns/chat-list-item/ChatListItem.js +1 -1
  300. package/dist/patterns/chat-list-item/ChatListItem.js.map +1 -1
  301. package/dist/patterns/collection-editor/CollectionEditor.d.ts +1 -1
  302. package/dist/patterns/collection-editor/CollectionEditor.js +1 -1
  303. package/dist/patterns/collection-editor/CollectionEditor.js.map +1 -1
  304. package/dist/patterns/confirm-dialog/ConfirmDialog.d.ts +1 -1
  305. package/dist/patterns/confirm-dialog/ConfirmDialog.js +1 -1
  306. package/dist/patterns/confirm-dialog/ConfirmDialog.js.map +1 -1
  307. package/dist/patterns/disclosure-section/DisclosureSection.d.ts +1 -1
  308. package/dist/patterns/disclosure-section/DisclosureSection.js +1 -1
  309. package/dist/patterns/disclosure-section/DisclosureSection.js.map +1 -1
  310. package/dist/patterns/empty-state/EmptyState.d.ts +1 -1
  311. package/dist/patterns/empty-state/EmptyState.js +1 -1
  312. package/dist/patterns/empty-state/EmptyState.js.map +1 -1
  313. package/dist/patterns/filter-bar/FilterBar.d.ts +1 -1
  314. package/dist/patterns/filter-bar/FilterBar.js +1 -1
  315. package/dist/patterns/filter-bar/FilterBar.js.map +1 -1
  316. package/dist/patterns/hero/Hero.d.ts +1 -1
  317. package/dist/patterns/hero/Hero.js +1 -1
  318. package/dist/patterns/hero/Hero.js.map +1 -1
  319. package/dist/patterns/image-preview/ImagePreview.d.ts +1 -1
  320. package/dist/patterns/image-preview/ImagePreview.js +1 -1
  321. package/dist/patterns/image-preview/ImagePreview.js.map +1 -1
  322. package/dist/patterns/image-upload-field/ImageUploadField.d.ts +1 -1
  323. package/dist/patterns/image-upload-field/ImageUploadField.js +1 -1
  324. package/dist/patterns/image-upload-field/ImageUploadField.js.map +1 -1
  325. package/dist/patterns/inspector-field/InspectorField.d.ts +1 -1
  326. package/dist/patterns/inspector-field/InspectorField.js +1 -1
  327. package/dist/patterns/inspector-field/InspectorField.js.map +1 -1
  328. package/dist/patterns/list/List.d.ts +1 -1
  329. package/dist/patterns/list/List.js +1 -1
  330. package/dist/patterns/list/List.js.map +1 -1
  331. package/dist/patterns/list/ListRow.d.ts +1 -1
  332. package/dist/patterns/list/ListRow.js +1 -1
  333. package/dist/patterns/list/ListRow.js.map +1 -1
  334. package/dist/patterns/list/ListSection.d.ts +1 -1
  335. package/dist/patterns/list/ListSection.js +1 -1
  336. package/dist/patterns/list/ListSection.js.map +1 -1
  337. package/dist/patterns/message-bubble/MessageBubble.d.ts +1 -1
  338. package/dist/patterns/message-bubble/MessageBubble.js +1 -1
  339. package/dist/patterns/message-bubble/MessageBubble.js.map +1 -1
  340. package/dist/patterns/notice/Notice.d.ts +1 -1
  341. package/dist/patterns/notice/Notice.js +1 -1
  342. package/dist/patterns/notice/Notice.js.map +1 -1
  343. package/dist/patterns/panel/Panel.d.ts +1 -1
  344. package/dist/patterns/panel/Panel.js +1 -1
  345. package/dist/patterns/panel/Panel.js.map +1 -1
  346. package/dist/patterns/post-card/PostCard.d.ts +1 -1
  347. package/dist/patterns/post-card/PostCard.js +1 -1
  348. package/dist/patterns/post-card/PostCard.js.map +1 -1
  349. package/dist/patterns/responsive-panel/ResponsivePanel.d.ts +1 -1
  350. package/dist/patterns/responsive-panel/ResponsivePanel.js +1 -1
  351. package/dist/patterns/responsive-panel/ResponsivePanel.js.map +1 -1
  352. package/dist/patterns/section-header/SectionHeader.d.ts +1 -1
  353. package/dist/patterns/section-header/SectionHeader.js +1 -1
  354. package/dist/patterns/section-header/SectionHeader.js.map +1 -1
  355. package/dist/patterns/selection/SelectableItem.d.ts +1 -1
  356. package/dist/patterns/selection/SelectableItem.js +1 -1
  357. package/dist/patterns/selection/SelectableItem.js.map +1 -1
  358. package/dist/patterns/selection/SelectionProvider.d.ts +2 -2
  359. package/dist/patterns/selection/SelectionProvider.js +2 -2
  360. package/dist/patterns/selection/SelectionProvider.js.map +1 -1
  361. package/dist/patterns/settings-row/SettingsRow.d.ts +1 -1
  362. package/dist/patterns/settings-row/SettingsRow.js +1 -1
  363. package/dist/patterns/settings-row/SettingsRow.js.map +1 -1
  364. package/dist/patterns/switch-field/SwitchField.d.ts +1 -1
  365. package/dist/patterns/switch-field/SwitchField.js +1 -1
  366. package/dist/patterns/switch-field/SwitchField.js.map +1 -1
  367. package/dist/patterns/theme-composer/ThemeComposer.d.ts +1 -1
  368. package/dist/patterns/theme-composer/ThemeComposer.js +1 -1
  369. package/dist/patterns/theme-composer/ThemeComposer.js.map +1 -1
  370. package/dist/patterns/tile-grid/PaletteItem.d.ts +1 -1
  371. package/dist/patterns/tile-grid/PaletteItem.js +1 -1
  372. package/dist/patterns/tile-grid/PaletteItem.js.map +1 -1
  373. package/dist/patterns/tile-grid/TileGrid.d.ts +1 -1
  374. package/dist/patterns/tile-grid/TileGrid.js +1 -1
  375. package/dist/patterns/tile-grid/TileGrid.js.map +1 -1
  376. package/dist/patterns/timeline/Timeline.d.ts +1 -1
  377. package/dist/patterns/timeline/Timeline.js +1 -1
  378. package/dist/patterns/timeline/Timeline.js.map +1 -1
  379. package/dist/patterns/tree-view/TreeItem.d.ts +1 -1
  380. package/dist/patterns/tree-view/TreeItem.js +1 -1
  381. package/dist/patterns/tree-view/TreeItem.js.map +1 -1
  382. package/dist/patterns/tree-view/TreeView.d.ts +1 -1
  383. package/dist/patterns/tree-view/TreeView.js +1 -1
  384. package/dist/patterns/tree-view/TreeView.js.map +1 -1
  385. package/dist/patterns/zora-drawer-content/ZoraDrawerContent.d.ts +1 -1
  386. package/dist/patterns/zora-drawer-content/ZoraDrawerContent.js +1 -1
  387. package/dist/patterns/zora-drawer-content/ZoraDrawerContent.js.map +1 -1
  388. package/dist/patterns/zora-tab-bar/ZoraTabBar.d.ts +1 -1
  389. package/dist/patterns/zora-tab-bar/ZoraTabBar.js +1 -1
  390. package/dist/patterns/zora-tab-bar/ZoraTabBar.js.map +1 -1
  391. package/dist/theme/ZoraProvider.d.ts +0 -1
  392. package/dist/theme/ZoraProvider.d.ts.map +1 -1
  393. package/dist/theme/ZoraProvider.js +0 -1
  394. package/dist/theme/ZoraProvider.js.map +1 -1
  395. package/package.json +8 -3
  396. package/src/components/action-sheet/ActionSheet.tsx +0 -2
  397. package/src/components/action-sheet/ActionSheetItem.tsx +0 -2
  398. package/src/components/app-bar/AppBar.tsx +0 -2
  399. package/src/components/avatar/Avatar.tsx +0 -2
  400. package/src/components/avatar-group/AvatarGroup.tsx +0 -2
  401. package/src/components/badge/Badge.tsx +0 -2
  402. package/src/components/breadcrumbs/Breadcrumbs.tsx +0 -2
  403. package/src/components/button/Button.tsx +0 -1
  404. package/src/components/button-group/ButtonGroup.tsx +0 -2
  405. package/src/components/card/Card.tsx +0 -1
  406. package/src/components/checkbox/Checkbox.tsx +1 -1
  407. package/src/components/checkbox/CheckboxGroup.tsx +0 -2
  408. package/src/components/chip/Chip.tsx +0 -2
  409. package/src/components/chip-group/ChipGroup.tsx +0 -2
  410. package/src/components/data-table/DataTable.tsx +0 -2
  411. package/src/components/date-picker/DatePicker.tsx +0 -2
  412. package/src/components/drawer/Drawer.tsx +0 -2
  413. package/src/components/form/Form.tsx +0 -2
  414. package/src/components/form/FormActions.tsx +0 -2
  415. package/src/components/form/FormError.tsx +0 -2
  416. package/src/components/form/FormField.tsx +0 -2
  417. package/src/components/gradient/Gradient.tsx +53 -0
  418. package/src/components/gradient/index.ts +8 -0
  419. package/src/components/gradient/meta.ts +10 -0
  420. package/src/components/gradient/types.ts +26 -0
  421. package/src/components/heading/Heading.tsx +0 -1
  422. package/src/components/icon/Icon.tsx +0 -2
  423. package/src/components/icon-button/IconButton.tsx +0 -2
  424. package/src/components/image/Image.tsx +1 -1
  425. package/src/components/input/Input.tsx +0 -1
  426. package/src/components/media-card/MediaCard.tsx +0 -2
  427. package/src/components/menu/DropdownMenu.tsx +0 -2
  428. package/src/components/menu/Menu.tsx +0 -2
  429. package/src/components/metric-card/MetricCard.tsx +0 -2
  430. package/src/components/modal/Modal.tsx +0 -2
  431. package/src/components/navigation-item/NavigationItem.tsx +0 -2
  432. package/src/components/navigation-list/NavigationList.tsx +0 -2
  433. package/src/components/pagination/Pagination.tsx +0 -2
  434. package/src/components/progress/Progress.tsx +0 -2
  435. package/src/components/radio/Radio.tsx +0 -2
  436. package/src/components/radio/RadioGroup.tsx +0 -2
  437. package/src/components/rating/Rating.tsx +0 -2
  438. package/src/components/search-bar/SearchBar.tsx +0 -2
  439. package/src/components/select/Select.tsx +0 -2
  440. package/src/components/skeleton/Skeleton.tsx +0 -2
  441. package/src/components/skeleton/SkeletonCard.tsx +0 -2
  442. package/src/components/skeleton/SkeletonList.tsx +1 -1
  443. package/src/components/skeleton/SkeletonText.tsx +1 -1
  444. package/src/components/splash-screen/SplashScreen.tsx +98 -0
  445. package/src/components/splash-screen/index.ts +2 -0
  446. package/src/components/splash-screen/meta.ts +10 -0
  447. package/src/components/splash-screen/types.ts +18 -0
  448. package/src/components/tabs/Tabs.tsx +1 -1
  449. package/src/components/text/Text.tsx +1 -1
  450. package/src/components/textarea/Textarea.tsx +1 -1
  451. package/src/components/time-picker/TimePicker.tsx +1 -1
  452. package/src/components/toast/Toast.tsx +1 -1
  453. package/src/components/toast/ToastProvider.tsx +1 -1
  454. package/src/components/toolbar/Toolbar.tsx +1 -1
  455. package/src/components/toolbar/ToolbarAction.tsx +1 -1
  456. package/src/foundation/Box.tsx +1 -1
  457. package/src/foundation/Center.tsx +1 -1
  458. package/src/foundation/Container.tsx +1 -1
  459. package/src/foundation/Divider.tsx +1 -1
  460. package/src/foundation/Grid.tsx +1 -1
  461. package/src/foundation/Inline.tsx +1 -1
  462. package/src/foundation/Show.tsx +1 -1
  463. package/src/foundation/Spacer.tsx +1 -1
  464. package/src/foundation/Stack.tsx +1 -1
  465. package/src/foundation/Surface.tsx +1 -1
  466. package/src/index.ts +10 -0
  467. package/src/layout/app-shell/AppShell.tsx +1 -1
  468. package/src/layout/screen/Screen.tsx +1 -1
  469. package/src/layout/screen-section/ScreenSection.tsx +1 -1
  470. package/src/layout/settings-layout/SettingsLayout.tsx +1 -1
  471. package/src/layout/sidebar-layout/SidebarLayout.tsx +1 -1
  472. package/src/layout/topbar-layout/TopbarLayout.tsx +1 -1
  473. package/src/metadata/componentMeta.ts +4 -0
  474. package/src/patterns/auth/ForgotPasswordForm.tsx +1 -1
  475. package/src/patterns/auth/OtpForm.tsx +1 -1
  476. package/src/patterns/auth/SignInForm.tsx +1 -1
  477. package/src/patterns/auth/SignUpForm.tsx +1 -1
  478. package/src/patterns/chat-list-item/ChatListItem.tsx +1 -1
  479. package/src/patterns/collection-editor/CollectionEditor.tsx +1 -1
  480. package/src/patterns/confirm-dialog/ConfirmDialog.tsx +1 -1
  481. package/src/patterns/disclosure-section/DisclosureSection.tsx +1 -1
  482. package/src/patterns/empty-state/EmptyState.tsx +1 -1
  483. package/src/patterns/filter-bar/FilterBar.tsx +1 -1
  484. package/src/patterns/hero/Hero.tsx +1 -1
  485. package/src/patterns/image-preview/ImagePreview.tsx +1 -1
  486. package/src/patterns/image-upload-field/ImageUploadField.tsx +1 -1
  487. package/src/patterns/inspector-field/InspectorField.tsx +1 -1
  488. package/src/patterns/list/List.tsx +1 -1
  489. package/src/patterns/list/ListRow.tsx +1 -1
  490. package/src/patterns/list/ListSection.tsx +1 -1
  491. package/src/patterns/message-bubble/MessageBubble.tsx +1 -1
  492. package/src/patterns/notice/Notice.tsx +1 -1
  493. package/src/patterns/panel/Panel.tsx +1 -1
  494. package/src/patterns/post-card/PostCard.tsx +1 -1
  495. package/src/patterns/responsive-panel/ResponsivePanel.tsx +1 -1
  496. package/src/patterns/section-header/SectionHeader.tsx +1 -1
  497. package/src/patterns/selection/SelectableItem.tsx +1 -1
  498. package/src/patterns/selection/SelectionProvider.tsx +2 -2
  499. package/src/patterns/settings-row/SettingsRow.tsx +1 -1
  500. package/src/patterns/switch-field/SwitchField.tsx +1 -1
  501. package/src/patterns/theme-composer/ThemeComposer.tsx +1 -1
  502. package/src/patterns/tile-grid/PaletteItem.tsx +1 -1
  503. package/src/patterns/tile-grid/TileGrid.tsx +1 -1
  504. package/src/patterns/timeline/Timeline.tsx +1 -1
  505. package/src/patterns/tree-view/TreeItem.tsx +1 -1
  506. package/src/patterns/tree-view/TreeView.tsx +1 -1
  507. package/src/patterns/zora-drawer-content/ZoraDrawerContent.tsx +1 -1
  508. package/src/patterns/zora-tab-bar/ZoraTabBar.tsx +1 -1
  509. package/src/theme/ZoraProvider.tsx +0 -1
@@ -3,7 +3,7 @@ import type { TileGridProps } from './types';
3
3
  /***
4
4
  * Responsive grid layout for arranging tile content.
5
5
  *
6
- * @readme
6
+
7
7
  */
8
8
  export declare const TileGrid: (props: TileGridProps) => React.ReactElement | null;
9
9
  //# sourceMappingURL=TileGrid.d.ts.map
@@ -27,7 +27,7 @@ function TileGridInner({ themeId: _themeId, mode: _mode, children, columns = 're
27
27
  /***
28
28
  * Responsive grid layout for arranging tile content.
29
29
  *
30
- * @readme
30
+
31
31
  */
32
32
  export const TileGrid = withZoraThemeScope(TileGridInner);
33
33
  //# sourceMappingURL=TileGrid.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TileGrid.js","sourceRoot":"","sources":["../../../src/patterns/tile-grid/TileGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE,SAAS,aAAa,CAAC,EACrB,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,KAAK,EACX,QAAQ,EACR,OAAO,GAAG,YAAY,EACtB,OAAO,GAAG,KAAK,EACf,MAAM,GACQ;IACd,OAAO,CACL,CAAC,GAAG,CACF,MAAM,CAAC,CAAC,MAAM,CAAC,CACf,KAAK,CAAC,CAAC;YACL,aAAa,EAAE,KAAK;YACpB,QAAQ,EAAE,MAAM;YAChB,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;SACtB,CAAC,CAEF;MAAA,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;YACtC,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAC;YAExB,OAAO,CACL,CAAC,GAAG,CACF,KAAK,CAAC,CACJ,OAAO,KAAK,YAAY;oBACtB,CAAC,CAAC;wBACE,SAAS,EAAE,KAAK;wBAChB,QAAQ,EAAE,CAAC;wBACX,QAAQ,EAAE,GAAG;qBACd;oBACH,CAAC,CAAC;wBACE,KAAK,EAAE,GAAG,GAAG,GAAG,OAAO,GAAG;qBAElC,CAAC,CAED;YAAA,CAAC,KAAK,CACR;UAAA,EAAE,GAAG,CAAC,CACP,CAAC;QACJ,CAAC,CAAC,CACJ;IAAA,EAAE,GAAG,CAAC,CACP,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC","sourcesContent":["import React from 'react';\n\nimport { Box } from '../../foundation';\nimport { withZoraThemeScope } from '../../theme/withZoraThemeScope';\nimport type { TileGridProps } from './types';\n\nfunction TileGridInner({\n themeId: _themeId,\n mode: _mode,\n children,\n columns = 'responsive',\n compact = false,\n testID,\n}: TileGridProps) {\n return (\n <Box\n testID={testID}\n style={{\n flexDirection: 'row',\n flexWrap: 'wrap',\n gap: compact ? 8 : 16,\n }}\n >\n {React.Children.map(children, (child) => {\n if (!child) return null;\n\n return (\n <Box\n style={\n columns === 'responsive'\n ? {\n flexBasis: '30%',\n flexGrow: 1,\n minWidth: 120,\n }\n : {\n width: `${100 / columns}%`,\n }\n }\n >\n {child}\n </Box>\n );\n })}\n </Box>\n );\n}\n\n/***\n * Responsive grid layout for arranging tile content.\n *\n * @readme\n */\nexport const TileGrid = withZoraThemeScope(TileGridInner);\n"]}
1
+ {"version":3,"file":"TileGrid.js","sourceRoot":"","sources":["../../../src/patterns/tile-grid/TileGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE,SAAS,aAAa,CAAC,EACrB,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,KAAK,EACX,QAAQ,EACR,OAAO,GAAG,YAAY,EACtB,OAAO,GAAG,KAAK,EACf,MAAM,GACQ;IACd,OAAO,CACL,CAAC,GAAG,CACF,MAAM,CAAC,CAAC,MAAM,CAAC,CACf,KAAK,CAAC,CAAC;YACL,aAAa,EAAE,KAAK;YACpB,QAAQ,EAAE,MAAM;YAChB,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;SACtB,CAAC,CAEF;MAAA,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;YACtC,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAC;YAExB,OAAO,CACL,CAAC,GAAG,CACF,KAAK,CAAC,CACJ,OAAO,KAAK,YAAY;oBACtB,CAAC,CAAC;wBACE,SAAS,EAAE,KAAK;wBAChB,QAAQ,EAAE,CAAC;wBACX,QAAQ,EAAE,GAAG;qBACd;oBACH,CAAC,CAAC;wBACE,KAAK,EAAE,GAAG,GAAG,GAAG,OAAO,GAAG;qBAElC,CAAC,CAED;YAAA,CAAC,KAAK,CACR;UAAA,EAAE,GAAG,CAAC,CACP,CAAC;QACJ,CAAC,CAAC,CACJ;IAAA,EAAE,GAAG,CAAC,CACP,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC","sourcesContent":["import React from 'react';\n\nimport { Box } from '../../foundation';\nimport { withZoraThemeScope } from '../../theme/withZoraThemeScope';\nimport type { TileGridProps } from './types';\n\nfunction TileGridInner({\n themeId: _themeId,\n mode: _mode,\n children,\n columns = 'responsive',\n compact = false,\n testID,\n}: TileGridProps) {\n return (\n <Box\n testID={testID}\n style={{\n flexDirection: 'row',\n flexWrap: 'wrap',\n gap: compact ? 8 : 16,\n }}\n >\n {React.Children.map(children, (child) => {\n if (!child) return null;\n\n return (\n <Box\n style={\n columns === 'responsive'\n ? {\n flexBasis: '30%',\n flexGrow: 1,\n minWidth: 120,\n }\n : {\n width: `${100 / columns}%`,\n }\n }\n >\n {child}\n </Box>\n );\n })}\n </Box>\n );\n}\n\n/***\n * Responsive grid layout for arranging tile content.\n *\n \n */\nexport const TileGrid = withZoraThemeScope(TileGridInner);\n"]}
@@ -3,7 +3,7 @@ import type { TimelineProps } from './types';
3
3
  /***
4
4
  * Timeline pattern for displaying a sequence of events.
5
5
  *
6
- * @readme
6
+
7
7
  */
8
8
  export declare const Timeline: (props: TimelineProps) => React.ReactElement | null;
9
9
  //# sourceMappingURL=Timeline.d.ts.map
@@ -69,7 +69,7 @@ function TimelineInner({ themeId: _themeId, mode: _mode, testID, items, compact
69
69
  /***
70
70
  * Timeline pattern for displaying a sequence of events.
71
71
  *
72
- * @readme
72
+
73
73
  */
74
74
  export const Timeline = withZoraThemeScope(TimelineInner);
75
75
  //# sourceMappingURL=Timeline.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Timeline.js","sourceRoot":"","sources":["../../../src/patterns/timeline/Timeline.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { RoleSemantics, SurfaceTheme } from '@ankhorage/surface';\nimport React from 'react';\n\nimport { Heading } from '../../components/heading';\nimport { Icon } from '../../components/icon';\nimport { Text } from '../../components/text';\nimport { Box, Inline, Stack } from '../../foundation';\nimport type { ZoraColor } from '../../internal/recipes';\nimport { resolveIconSize } from '../../internal/recipes';\nimport { useZoraTheme } from '../../theme/useZoraTheme';\nimport { withZoraThemeScope } from '../../theme/withZoraThemeScope';\nimport type { TimelineItem, TimelineProps } from './types';\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 'error':\n return theme.semantics.error;\n case 'info':\n return theme.semantics.info;\n case 'primary':\n return theme.semantics.action.primary;\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 TimelineInner({\n themeId: _themeId,\n mode: _mode,\n testID,\n items,\n compact = false,\n}: TimelineProps) {\n const { theme } = useZoraTheme();\n const gap = compact ? 'm' : 'l';\n const connectorHeight = compact ? 20 : 36;\n\n const renderItem = (item: TimelineItem, index: number) => {\n const status = item.status ?? 'neutral';\n const role = resolveRoleSemantics(theme, status);\n const showConnector = index < items.length - 1;\n const iconSize = Math.max(12, resolveIconSize('s'));\n\n return (\n <Inline key={item.id} align=\"flex-start\" gap=\"m\" testID={item.testID} wrap=\"nowrap\">\n <Stack align=\"center\" flexShrink={0} gap=\"xs\" style={{ width: 24 }}>\n <Box\n bg={status === 'neutral' ? theme.semantics.neutral.surface : role.softBg}\n borderColor={status === 'neutral' ? theme.semantics.neutral.divider : role.base}\n borderWidth={1}\n height={20}\n radius=\"full\"\n width={20}\n style={{ alignItems: 'center', justifyContent: 'center' }}\n >\n {item.icon ? (\n <Icon\n color={status === 'neutral' ? theme.semantics.content.muted : role.base}\n name={item.icon.name}\n provider={item.icon.provider}\n size={iconSize}\n />\n ) : null}\n </Box>\n\n {showConnector ? (\n <Box\n bg={theme.semantics.neutral.divider}\n height={connectorHeight}\n radius=\"full\"\n style={{ width: 2 }}\n />\n ) : null}\n </Stack>\n\n <Stack flex={1} gap=\"xs\" testID={testID}>\n <Inline align=\"flex-start\" gap=\"s\" justify=\"space-between\" wrap=\"wrap\">\n <Heading level={compact ? 4 : 3}>{item.title}</Heading>\n {item.meta ? (\n <Text emphasis=\"muted\" variant=\"caption\">\n {item.meta}\n </Text>\n ) : null}\n </Inline>\n {item.description ? (\n <Text emphasis=\"muted\" variant=\"bodySmall\">\n {item.description}\n </Text>\n ) : null}\n </Stack>\n </Inline>\n );\n };\n\n return (\n <Stack gap={gap} testID={testID}>\n {items.map(renderItem)}\n </Stack>\n );\n}\n\n/***\n * Timeline pattern for displaying a sequence of events.\n *\n * @readme\n */\nexport const Timeline = withZoraThemeScope(TimelineInner);\n"]}
1
+ {"version":3,"file":"Timeline.js","sourceRoot":"","sources":["../../../src/patterns/timeline/Timeline.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { RoleSemantics, SurfaceTheme } from '@ankhorage/surface';\nimport React from 'react';\n\nimport { Heading } from '../../components/heading';\nimport { Icon } from '../../components/icon';\nimport { Text } from '../../components/text';\nimport { Box, Inline, Stack } from '../../foundation';\nimport type { ZoraColor } from '../../internal/recipes';\nimport { resolveIconSize } from '../../internal/recipes';\nimport { useZoraTheme } from '../../theme/useZoraTheme';\nimport { withZoraThemeScope } from '../../theme/withZoraThemeScope';\nimport type { TimelineItem, TimelineProps } from './types';\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 'error':\n return theme.semantics.error;\n case 'info':\n return theme.semantics.info;\n case 'primary':\n return theme.semantics.action.primary;\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 TimelineInner({\n themeId: _themeId,\n mode: _mode,\n testID,\n items,\n compact = false,\n}: TimelineProps) {\n const { theme } = useZoraTheme();\n const gap = compact ? 'm' : 'l';\n const connectorHeight = compact ? 20 : 36;\n\n const renderItem = (item: TimelineItem, index: number) => {\n const status = item.status ?? 'neutral';\n const role = resolveRoleSemantics(theme, status);\n const showConnector = index < items.length - 1;\n const iconSize = Math.max(12, resolveIconSize('s'));\n\n return (\n <Inline key={item.id} align=\"flex-start\" gap=\"m\" testID={item.testID} wrap=\"nowrap\">\n <Stack align=\"center\" flexShrink={0} gap=\"xs\" style={{ width: 24 }}>\n <Box\n bg={status === 'neutral' ? theme.semantics.neutral.surface : role.softBg}\n borderColor={status === 'neutral' ? theme.semantics.neutral.divider : role.base}\n borderWidth={1}\n height={20}\n radius=\"full\"\n width={20}\n style={{ alignItems: 'center', justifyContent: 'center' }}\n >\n {item.icon ? (\n <Icon\n color={status === 'neutral' ? theme.semantics.content.muted : role.base}\n name={item.icon.name}\n provider={item.icon.provider}\n size={iconSize}\n />\n ) : null}\n </Box>\n\n {showConnector ? (\n <Box\n bg={theme.semantics.neutral.divider}\n height={connectorHeight}\n radius=\"full\"\n style={{ width: 2 }}\n />\n ) : null}\n </Stack>\n\n <Stack flex={1} gap=\"xs\" testID={testID}>\n <Inline align=\"flex-start\" gap=\"s\" justify=\"space-between\" wrap=\"wrap\">\n <Heading level={compact ? 4 : 3}>{item.title}</Heading>\n {item.meta ? (\n <Text emphasis=\"muted\" variant=\"caption\">\n {item.meta}\n </Text>\n ) : null}\n </Inline>\n {item.description ? (\n <Text emphasis=\"muted\" variant=\"bodySmall\">\n {item.description}\n </Text>\n ) : null}\n </Stack>\n </Inline>\n );\n };\n\n return (\n <Stack gap={gap} testID={testID}>\n {items.map(renderItem)}\n </Stack>\n );\n}\n\n/***\n * Timeline pattern for displaying a sequence of events.\n *\n \n */\nexport const Timeline = withZoraThemeScope(TimelineInner);\n"]}
@@ -13,7 +13,7 @@ interface TreeItemProps<TId extends string = string> extends ZoraBaseProps {
13
13
  /***
14
14
  * Single tree node row used within `TreeView`.
15
15
  *
16
- * @readme
16
+
17
17
  */
18
18
  export declare const TreeItem: <TId extends string = string>(props: TreeItemProps<TId>) => React.ReactElement | null;
19
19
  export {};
@@ -32,7 +32,7 @@ function TreeItemInner({ themeId: _themeId, mode: _mode, node, depth, selectedId
32
32
  /***
33
33
  * Single tree node row used within `TreeView`.
34
34
  *
35
- * @readme
35
+
36
36
  */
37
37
  export const TreeItem = withZoraThemeScope(TreeItemInner);
38
38
  //# sourceMappingURL=TreeItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TreeItem.js","sourceRoot":"","sources":["../../../src/patterns/tree-view/TreeItem.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { IconButton } from '../../components/icon-button';\nimport { Box, Stack } from '../../foundation';\nimport { withZoraThemeScope } from '../../theme/withZoraThemeScope';\nimport type { ZoraBaseProps } from '../../theme/ZoraBaseProps';\nimport { SettingsRow } from '../settings-row';\nimport type { TreeItemNode, TreeItemRenderProps } from './types';\n\ninterface TreeItemProps<TId extends string = string> extends ZoraBaseProps {\n node: TreeItemNode<TId>;\n depth: number;\n selectedId?: TId;\n expandedIds: readonly TId[];\n onSelect?: (id: TId) => void;\n onToggleExpand: (id: TId) => void;\n renderItem?: (props: TreeItemRenderProps<TId>) => React.ReactNode;\n}\n\nfunction TreeItemInner<TId extends string = string>({\n themeId: _themeId,\n mode: _mode,\n node,\n depth,\n selectedId,\n expandedIds,\n onSelect,\n onToggleExpand,\n renderItem,\n testID,\n}: TreeItemProps<TId>) {\n const hasChildren = node.children !== undefined && node.children.length > 0;\n const isExpanded = expandedIds.includes(node.id);\n const isSelected = selectedId === node.id;\n\n const renderContent = () => {\n if (renderItem) {\n return renderItem({\n node,\n depth,\n selected: isSelected,\n expanded: isExpanded,\n hasChildren,\n });\n }\n\n return (\n <SettingsRow\n title={node.label}\n control={\n <Stack direction=\"row\" gap=\"xs\" align=\"center\">\n {node.actions}\n {hasChildren ? (\n <IconButton\n icon={{ name: isExpanded ? 'chevron-down-outline' : 'chevron-forward-outline' }}\n label={isExpanded ? 'Collapse' : 'Expand'}\n onPress={() => onToggleExpand(node.id)}\n size=\"s\"\n variant=\"ghost\"\n />\n ) : null}\n </Stack>\n }\n meta={node.meta}\n disabled={node.disabled}\n />\n );\n };\n\n return (\n <Box testID={testID}>\n <Box style={{ paddingLeft: depth * 16 }}>{renderContent()}</Box>\n {hasChildren && isExpanded ? (\n <Box>\n {node.children?.map((child) => (\n <TreeItem\n key={child.id}\n depth={depth + 1}\n expandedIds={expandedIds}\n node={child}\n onSelect={onSelect}\n onToggleExpand={onToggleExpand}\n renderItem={renderItem}\n selectedId={selectedId}\n />\n ))}\n </Box>\n ) : null}\n </Box>\n );\n}\n\n/***\n * Single tree node row used within `TreeView`.\n *\n * @readme\n */\nexport const TreeItem = withZoraThemeScope(TreeItemInner);\n"]}
1
+ {"version":3,"file":"TreeItem.js","sourceRoot":"","sources":["../../../src/patterns/tree-view/TreeItem.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { IconButton } from '../../components/icon-button';\nimport { Box, Stack } from '../../foundation';\nimport { withZoraThemeScope } from '../../theme/withZoraThemeScope';\nimport type { ZoraBaseProps } from '../../theme/ZoraBaseProps';\nimport { SettingsRow } from '../settings-row';\nimport type { TreeItemNode, TreeItemRenderProps } from './types';\n\ninterface TreeItemProps<TId extends string = string> extends ZoraBaseProps {\n node: TreeItemNode<TId>;\n depth: number;\n selectedId?: TId;\n expandedIds: readonly TId[];\n onSelect?: (id: TId) => void;\n onToggleExpand: (id: TId) => void;\n renderItem?: (props: TreeItemRenderProps<TId>) => React.ReactNode;\n}\n\nfunction TreeItemInner<TId extends string = string>({\n themeId: _themeId,\n mode: _mode,\n node,\n depth,\n selectedId,\n expandedIds,\n onSelect,\n onToggleExpand,\n renderItem,\n testID,\n}: TreeItemProps<TId>) {\n const hasChildren = node.children !== undefined && node.children.length > 0;\n const isExpanded = expandedIds.includes(node.id);\n const isSelected = selectedId === node.id;\n\n const renderContent = () => {\n if (renderItem) {\n return renderItem({\n node,\n depth,\n selected: isSelected,\n expanded: isExpanded,\n hasChildren,\n });\n }\n\n return (\n <SettingsRow\n title={node.label}\n control={\n <Stack direction=\"row\" gap=\"xs\" align=\"center\">\n {node.actions}\n {hasChildren ? (\n <IconButton\n icon={{ name: isExpanded ? 'chevron-down-outline' : 'chevron-forward-outline' }}\n label={isExpanded ? 'Collapse' : 'Expand'}\n onPress={() => onToggleExpand(node.id)}\n size=\"s\"\n variant=\"ghost\"\n />\n ) : null}\n </Stack>\n }\n meta={node.meta}\n disabled={node.disabled}\n />\n );\n };\n\n return (\n <Box testID={testID}>\n <Box style={{ paddingLeft: depth * 16 }}>{renderContent()}</Box>\n {hasChildren && isExpanded ? (\n <Box>\n {node.children?.map((child) => (\n <TreeItem\n key={child.id}\n depth={depth + 1}\n expandedIds={expandedIds}\n node={child}\n onSelect={onSelect}\n onToggleExpand={onToggleExpand}\n renderItem={renderItem}\n selectedId={selectedId}\n />\n ))}\n </Box>\n ) : null}\n </Box>\n );\n}\n\n/***\n * Single tree node row used within `TreeView`.\n *\n \n */\nexport const TreeItem = withZoraThemeScope(TreeItemInner);\n"]}
@@ -3,7 +3,7 @@ import type { TreeViewProps } from './types';
3
3
  /***
4
4
  * Tree view pattern for hierarchical navigation and expandable lists.
5
5
  *
6
- * @readme
6
+
7
7
  */
8
8
  export declare const TreeView: <TId extends string = string>(props: TreeViewProps<TId>) => React.ReactElement | null;
9
9
  //# sourceMappingURL=TreeView.d.ts.map
@@ -21,7 +21,7 @@ function TreeViewInner({ themeId: _themeId, mode: _mode, nodes, selectedId, expa
21
21
  /***
22
22
  * Tree view pattern for hierarchical navigation and expandable lists.
23
23
  *
24
- * @readme
24
+
25
25
  */
26
26
  export const TreeView = withZoraThemeScope(TreeViewInner);
27
27
  //# sourceMappingURL=TreeView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TreeView.js","sourceRoot":"","sources":["../../../src/patterns/tree-view/TreeView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,SAAS,aAAa,CAA8B,EAClD,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,KAAK,EACX,KAAK,EACL,UAAU,EACV,WAAW,EAAE,qBAAqB,EAClC,kBAAkB,EAClB,QAAQ,EACR,gBAAgB,EAChB,UAAU,EACV,MAAM,GACa;IACnB,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAClE,kBAAkB,IAAI,EAAE,CACzB,CAAC;IAEF,MAAM,YAAY,GAAG,qBAAqB,KAAK,SAAS,CAAC;IACzD,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,mBAAmB,CAAC;IAE/E,MAAM,kBAAkB,GAAG,CAAC,EAAO,EAAE,EAAE;QACrC,MAAM,UAAU,GAAG,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,EAAE,EAAE,CAAC,CAAC;QAE3F,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,sBAAsB,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC;QACD,gBAAgB,EAAE,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC,CAAC;IAEF,OAAO,CACL,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAC/B;MAAA,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,CAAC,QAAQ,CACP,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CACb,KAAK,CAAC,CAAC,CAAC,CAAC,CACT,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,IAAI,CAAC,CAAC,IAAI,CAAC,CACX,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,cAAc,CAAC,CAAC,kBAAkB,CAAC,CACnC,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,UAAU,CAAC,CAAC,UAAU,CAAC,EACvB,CACH,CAAC,CACJ;IAAA,EAAE,KAAK,CAAC,CACT,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC","sourcesContent":["import React from 'react';\n\nimport { Stack } from '../../foundation';\nimport { withZoraThemeScope } from '../../theme/withZoraThemeScope';\nimport { TreeItem } from './TreeItem';\nimport type { TreeViewProps } from './types';\n\nfunction TreeViewInner<TId extends string = string>({\n themeId: _themeId,\n mode: _mode,\n nodes,\n selectedId,\n expandedIds: controlledExpandedIds,\n defaultExpandedIds,\n onSelect,\n onExpandedChange,\n renderItem,\n testID,\n}: TreeViewProps<TId>) {\n const [internalExpandedIds, setInternalExpandedIds] = React.useState<readonly TId[]>(\n defaultExpandedIds ?? [],\n );\n\n const isControlled = controlledExpandedIds !== undefined;\n const expandedIds = isControlled ? controlledExpandedIds : internalExpandedIds;\n\n const handleToggleExpand = (id: TId) => {\n const isExpanded = expandedIds.includes(id);\n const newIds = isExpanded ? expandedIds.filter((eid) => eid !== id) : [...expandedIds, id];\n\n if (!isControlled) {\n setInternalExpandedIds(newIds);\n }\n onExpandedChange?.(newIds);\n };\n\n return (\n <Stack gap=\"none\" testID={testID}>\n {nodes.map((node) => (\n <TreeItem\n key={node.id}\n depth={0}\n expandedIds={expandedIds}\n node={node}\n onSelect={onSelect}\n onToggleExpand={handleToggleExpand}\n renderItem={renderItem}\n selectedId={selectedId}\n />\n ))}\n </Stack>\n );\n}\n\n/***\n * Tree view pattern for hierarchical navigation and expandable lists.\n *\n * @readme\n */\nexport const TreeView = withZoraThemeScope(TreeViewInner);\n"]}
1
+ {"version":3,"file":"TreeView.js","sourceRoot":"","sources":["../../../src/patterns/tree-view/TreeView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,SAAS,aAAa,CAA8B,EAClD,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,KAAK,EACX,KAAK,EACL,UAAU,EACV,WAAW,EAAE,qBAAqB,EAClC,kBAAkB,EAClB,QAAQ,EACR,gBAAgB,EAChB,UAAU,EACV,MAAM,GACa;IACnB,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAClE,kBAAkB,IAAI,EAAE,CACzB,CAAC;IAEF,MAAM,YAAY,GAAG,qBAAqB,KAAK,SAAS,CAAC;IACzD,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,mBAAmB,CAAC;IAE/E,MAAM,kBAAkB,GAAG,CAAC,EAAO,EAAE,EAAE;QACrC,MAAM,UAAU,GAAG,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,EAAE,EAAE,CAAC,CAAC;QAE3F,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,sBAAsB,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC;QACD,gBAAgB,EAAE,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC,CAAC;IAEF,OAAO,CACL,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAC/B;MAAA,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,CAAC,QAAQ,CACP,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CACb,KAAK,CAAC,CAAC,CAAC,CAAC,CACT,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,IAAI,CAAC,CAAC,IAAI,CAAC,CACX,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,cAAc,CAAC,CAAC,kBAAkB,CAAC,CACnC,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,UAAU,CAAC,CAAC,UAAU,CAAC,EACvB,CACH,CAAC,CACJ;IAAA,EAAE,KAAK,CAAC,CACT,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC","sourcesContent":["import React from 'react';\n\nimport { Stack } from '../../foundation';\nimport { withZoraThemeScope } from '../../theme/withZoraThemeScope';\nimport { TreeItem } from './TreeItem';\nimport type { TreeViewProps } from './types';\n\nfunction TreeViewInner<TId extends string = string>({\n themeId: _themeId,\n mode: _mode,\n nodes,\n selectedId,\n expandedIds: controlledExpandedIds,\n defaultExpandedIds,\n onSelect,\n onExpandedChange,\n renderItem,\n testID,\n}: TreeViewProps<TId>) {\n const [internalExpandedIds, setInternalExpandedIds] = React.useState<readonly TId[]>(\n defaultExpandedIds ?? [],\n );\n\n const isControlled = controlledExpandedIds !== undefined;\n const expandedIds = isControlled ? controlledExpandedIds : internalExpandedIds;\n\n const handleToggleExpand = (id: TId) => {\n const isExpanded = expandedIds.includes(id);\n const newIds = isExpanded ? expandedIds.filter((eid) => eid !== id) : [...expandedIds, id];\n\n if (!isControlled) {\n setInternalExpandedIds(newIds);\n }\n onExpandedChange?.(newIds);\n };\n\n return (\n <Stack gap=\"none\" testID={testID}>\n {nodes.map((node) => (\n <TreeItem\n key={node.id}\n depth={0}\n expandedIds={expandedIds}\n node={node}\n onSelect={onSelect}\n onToggleExpand={handleToggleExpand}\n renderItem={renderItem}\n selectedId={selectedId}\n />\n ))}\n </Stack>\n );\n}\n\n/***\n * Tree view pattern for hierarchical navigation and expandable lists.\n *\n \n */\nexport const TreeView = withZoraThemeScope(TreeViewInner);\n"]}
@@ -3,7 +3,7 @@ import type { ZoraDrawerContentProps } from './types';
3
3
  /***
4
4
  * Standard drawer content pattern for ZORA navigation lists.
5
5
  *
6
- * @readme
6
+
7
7
  */
8
8
  export declare const ZoraDrawerContent: (props: ZoraDrawerContentProps) => React.ReactElement | null;
9
9
  //# sourceMappingURL=ZoraDrawerContent.d.ts.map
@@ -25,7 +25,7 @@ function ZoraDrawerContentInner({ themeId: _themeId, mode: _mode, state, navigat
25
25
  /***
26
26
  * Standard drawer content pattern for ZORA navigation lists.
27
27
  *
28
- * @readme
28
+
29
29
  */
30
30
  export const ZoraDrawerContent = withZoraThemeScope(ZoraDrawerContentInner);
31
31
  //# sourceMappingURL=ZoraDrawerContent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ZoraDrawerContent.js","sourceRoot":"","sources":["../../../src/patterns/zora-drawer-content/ZoraDrawerContent.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,IAAI,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AACjF,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EACL,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE,SAAS,sBAAsB,CAAC,EAC9B,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,KAAK,EACX,KAAK,EACL,UAAU,EACV,WAAW,EACX,QAAQ,EACR,OAAO,GAAG,KAAK,EACf,MAAM,EACN,MAAM,EACN,MAAM,GACiB;IACvB,MAAM,QAAQ,GAAG,sBAAsB,CAAC;QACtC,KAAK;QACL,WAAW;QACX,QAAQ;QACR,IAAI,EAAE,QAAQ;KACf,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACpC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG;QAClB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI;QACzB,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK;QAC3B,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,OAAO,EAAE,4BAA4B,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;QAC3D,kBAAkB,EAAE,IAAI,CAAC,QAAQ,EAAE,kBAAkB;QACrD,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM;KAC9B,CAAC,CAAC,CAAC;IAEJ,OAAO,CACL,CAAC,uBAAuB,CACtB,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,MAAM,CAAC,CAAC,MAAM,CAAC,CACf,MAAM,CAAC,CAAC,MAAM,CAAC,CACf,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,MAAM,CAAC,CAAC,MAAM,CAAC,EACf,CACH,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,sBAAsB,CAAC,CAAC","sourcesContent":["import { DrawerNavigation as SurfaceDrawerNavigation } from '@ankhorage/surface';\nimport React from 'react';\n\nimport {\n createDrawerItemPressHandler,\n resolveNavigationItems,\n} from '../../internal/resolveZoraNavigationItems';\nimport { withZoraThemeScope } from '../../theme/withZoraThemeScope';\nimport type { ZoraDrawerContentProps } from './types';\n\nfunction ZoraDrawerContentInner({\n themeId: _themeId,\n mode: _mode,\n state,\n navigation,\n descriptors,\n routeMap,\n compact = false,\n header,\n footer,\n testID,\n}: ZoraDrawerContentProps) {\n const resolved = resolveNavigationItems({\n state,\n descriptors,\n routeMap,\n kind: 'drawer',\n });\n\n const items = resolved.map((item) => ({\n id: item.route.key,\n label: item.label,\n icon: item.metadata?.icon,\n badge: item.metadata?.badge,\n active: item.active,\n disabled: item.disabled,\n onPress: createDrawerItemPressHandler({ item, navigation }),\n accessibilityLabel: item.metadata?.accessibilityLabel,\n testID: item.metadata?.testID,\n }));\n\n return (\n <SurfaceDrawerNavigation\n compact={compact}\n footer={footer}\n header={header}\n items={items}\n testID={testID}\n />\n );\n}\n\n/***\n * Standard drawer content pattern for ZORA navigation lists.\n *\n * @readme\n */\nexport const ZoraDrawerContent = withZoraThemeScope(ZoraDrawerContentInner);\n"]}
1
+ {"version":3,"file":"ZoraDrawerContent.js","sourceRoot":"","sources":["../../../src/patterns/zora-drawer-content/ZoraDrawerContent.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,IAAI,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AACjF,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EACL,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE,SAAS,sBAAsB,CAAC,EAC9B,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,KAAK,EACX,KAAK,EACL,UAAU,EACV,WAAW,EACX,QAAQ,EACR,OAAO,GAAG,KAAK,EACf,MAAM,EACN,MAAM,EACN,MAAM,GACiB;IACvB,MAAM,QAAQ,GAAG,sBAAsB,CAAC;QACtC,KAAK;QACL,WAAW;QACX,QAAQ;QACR,IAAI,EAAE,QAAQ;KACf,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACpC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG;QAClB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI;QACzB,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK;QAC3B,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,OAAO,EAAE,4BAA4B,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;QAC3D,kBAAkB,EAAE,IAAI,CAAC,QAAQ,EAAE,kBAAkB;QACrD,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM;KAC9B,CAAC,CAAC,CAAC;IAEJ,OAAO,CACL,CAAC,uBAAuB,CACtB,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,MAAM,CAAC,CAAC,MAAM,CAAC,CACf,MAAM,CAAC,CAAC,MAAM,CAAC,CACf,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,MAAM,CAAC,CAAC,MAAM,CAAC,EACf,CACH,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,sBAAsB,CAAC,CAAC","sourcesContent":["import { DrawerNavigation as SurfaceDrawerNavigation } from '@ankhorage/surface';\nimport React from 'react';\n\nimport {\n createDrawerItemPressHandler,\n resolveNavigationItems,\n} from '../../internal/resolveZoraNavigationItems';\nimport { withZoraThemeScope } from '../../theme/withZoraThemeScope';\nimport type { ZoraDrawerContentProps } from './types';\n\nfunction ZoraDrawerContentInner({\n themeId: _themeId,\n mode: _mode,\n state,\n navigation,\n descriptors,\n routeMap,\n compact = false,\n header,\n footer,\n testID,\n}: ZoraDrawerContentProps) {\n const resolved = resolveNavigationItems({\n state,\n descriptors,\n routeMap,\n kind: 'drawer',\n });\n\n const items = resolved.map((item) => ({\n id: item.route.key,\n label: item.label,\n icon: item.metadata?.icon,\n badge: item.metadata?.badge,\n active: item.active,\n disabled: item.disabled,\n onPress: createDrawerItemPressHandler({ item, navigation }),\n accessibilityLabel: item.metadata?.accessibilityLabel,\n testID: item.metadata?.testID,\n }));\n\n return (\n <SurfaceDrawerNavigation\n compact={compact}\n footer={footer}\n header={header}\n items={items}\n testID={testID}\n />\n );\n}\n\n/***\n * Standard drawer content pattern for ZORA navigation lists.\n *\n \n */\nexport const ZoraDrawerContent = withZoraThemeScope(ZoraDrawerContentInner);\n"]}
@@ -3,7 +3,7 @@ import type { ZoraTabBarProps } from './types';
3
3
  /***
4
4
  * Bottom tab bar pattern with badge support and active state styling.
5
5
  *
6
- * @readme
6
+
7
7
  */
8
8
  export declare const ZoraTabBar: (props: ZoraTabBarProps) => React.ReactElement | null;
9
9
  //# sourceMappingURL=ZoraTabBar.d.ts.map
@@ -81,7 +81,7 @@ function ZoraTabBarInner({ themeId: _themeId, mode: _mode, state, navigation, de
81
81
  /***
82
82
  * Bottom tab bar pattern with badge support and active state styling.
83
83
  *
84
- * @readme
84
+
85
85
  */
86
86
  export const ZoraTabBar = withZoraThemeScope(ZoraTabBarInner);
87
87
  //# sourceMappingURL=ZoraTabBar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ZoraTabBar.js","sourceRoot":"","sources":["../../../src/patterns/zora-tab-bar/ZoraTabBar.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { Pressable, Text as ReactNativeText } from 'react-native';\n\nimport { Icon } from '../../components/icon';\nimport { Box, Surface } from '../../foundation';\nimport {\n createTabBarItemPressHandler,\n resolveNavigationItems,\n} from '../../internal/resolveZoraNavigationItems';\nimport { useZoraTheme } from '../../theme/useZoraTheme';\nimport { withZoraThemeScope } from '../../theme/withZoraThemeScope';\nimport type { ZoraTabBarProps } from './types';\n\nfunction resolveAccessibilityLabel(\n label: React.ReactNode,\n explicitLabel?: string,\n): string | undefined {\n if (explicitLabel !== undefined) {\n return explicitLabel;\n }\n\n if (typeof label === 'string') {\n return label;\n }\n\n if (typeof label === 'number') {\n return String(label);\n }\n\n return undefined;\n}\n\nfunction ZoraTabBarInner({\n themeId: _themeId,\n mode: _mode,\n state,\n navigation,\n descriptors,\n insets,\n routeMap,\n compact = false,\n chrome = 'raised',\n testID,\n}: ZoraTabBarProps) {\n const { theme } = useZoraTheme();\n const resolved = resolveNavigationItems({\n state,\n descriptors,\n routeMap,\n kind: 'tab',\n });\n\n const bottomInset = insets?.bottom ?? 0;\n const minHeight = compact ? 56 : 64;\n const labelSize = compact ? theme.typography.sizes.xs : theme.typography.sizes.s;\n const labelWeight = theme.typography.weights.medium;\n const content = (\n <Box\n bg=\"surface\"\n style={{\n borderTopColor: theme.semantics.border.default,\n borderTopWidth: 1,\n flexDirection: 'row',\n minHeight: minHeight + bottomInset,\n paddingBottom: bottomInset,\n }}\n testID={testID}\n >\n {resolved.map((item) => {\n const { active } = item;\n const { disabled } = item;\n const contentColor = disabled\n ? theme.semantics.content.subtle\n : active\n ? theme.semantics.action.primary.base\n : theme.semantics.content.muted;\n const backgroundColor = active\n ? theme.semantics.action.primary.softBg\n : theme.semantics.surface.default;\n\n return (\n <Pressable\n accessibilityLabel={resolveAccessibilityLabel(\n item.label,\n item.metadata?.accessibilityLabel,\n )}\n accessibilityRole=\"tab\"\n accessibilityState={{ selected: active, disabled }}\n disabled={disabled}\n key={item.route.key}\n onPress={createTabBarItemPressHandler({ item, navigation })}\n style={{\n alignItems: 'center',\n backgroundColor,\n flex: 1,\n justifyContent: 'center',\n minHeight,\n opacity: disabled ? 0.48 : 1,\n paddingHorizontal: theme.spacing.s,\n paddingVertical: compact ? theme.spacing.xs : theme.spacing.s,\n }}\n testID={\n item.metadata?.testID ?? (testID ? `${testID}-item-${item.route.key}` : undefined)\n }\n >\n {item.metadata?.icon ? (\n <Icon\n color={contentColor}\n name={item.metadata.icon.name}\n provider={item.metadata.icon.provider}\n size={compact ? theme.spacing.m : theme.spacing.l}\n />\n ) : null}\n <ReactNativeText\n numberOfLines={1}\n style={{\n color: contentColor,\n fontSize: labelSize,\n fontWeight: labelWeight,\n lineHeight: compact ? 16 : 20,\n marginTop: item.metadata?.icon ? theme.spacing.xs : 0,\n textAlign: 'center',\n }}\n >\n {item.label}\n </ReactNativeText>\n </Pressable>\n );\n })}\n </Box>\n );\n\n if (chrome === 'none') {\n return content;\n }\n\n return (\n <Surface variant=\"raised\" testID={testID ? `${testID}-chrome` : undefined}>\n {content}\n </Surface>\n );\n}\n\n/***\n * Bottom tab bar pattern with badge support and active state styling.\n *\n * @readme\n */\nexport const ZoraTabBar = withZoraThemeScope(ZoraTabBarInner);\n"]}
1
+ {"version":3,"file":"ZoraTabBar.js","sourceRoot":"","sources":["../../../src/patterns/zora-tab-bar/ZoraTabBar.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { Pressable, Text as ReactNativeText } from 'react-native';\n\nimport { Icon } from '../../components/icon';\nimport { Box, Surface } from '../../foundation';\nimport {\n createTabBarItemPressHandler,\n resolveNavigationItems,\n} from '../../internal/resolveZoraNavigationItems';\nimport { useZoraTheme } from '../../theme/useZoraTheme';\nimport { withZoraThemeScope } from '../../theme/withZoraThemeScope';\nimport type { ZoraTabBarProps } from './types';\n\nfunction resolveAccessibilityLabel(\n label: React.ReactNode,\n explicitLabel?: string,\n): string | undefined {\n if (explicitLabel !== undefined) {\n return explicitLabel;\n }\n\n if (typeof label === 'string') {\n return label;\n }\n\n if (typeof label === 'number') {\n return String(label);\n }\n\n return undefined;\n}\n\nfunction ZoraTabBarInner({\n themeId: _themeId,\n mode: _mode,\n state,\n navigation,\n descriptors,\n insets,\n routeMap,\n compact = false,\n chrome = 'raised',\n testID,\n}: ZoraTabBarProps) {\n const { theme } = useZoraTheme();\n const resolved = resolveNavigationItems({\n state,\n descriptors,\n routeMap,\n kind: 'tab',\n });\n\n const bottomInset = insets?.bottom ?? 0;\n const minHeight = compact ? 56 : 64;\n const labelSize = compact ? theme.typography.sizes.xs : theme.typography.sizes.s;\n const labelWeight = theme.typography.weights.medium;\n const content = (\n <Box\n bg=\"surface\"\n style={{\n borderTopColor: theme.semantics.border.default,\n borderTopWidth: 1,\n flexDirection: 'row',\n minHeight: minHeight + bottomInset,\n paddingBottom: bottomInset,\n }}\n testID={testID}\n >\n {resolved.map((item) => {\n const { active } = item;\n const { disabled } = item;\n const contentColor = disabled\n ? theme.semantics.content.subtle\n : active\n ? theme.semantics.action.primary.base\n : theme.semantics.content.muted;\n const backgroundColor = active\n ? theme.semantics.action.primary.softBg\n : theme.semantics.surface.default;\n\n return (\n <Pressable\n accessibilityLabel={resolveAccessibilityLabel(\n item.label,\n item.metadata?.accessibilityLabel,\n )}\n accessibilityRole=\"tab\"\n accessibilityState={{ selected: active, disabled }}\n disabled={disabled}\n key={item.route.key}\n onPress={createTabBarItemPressHandler({ item, navigation })}\n style={{\n alignItems: 'center',\n backgroundColor,\n flex: 1,\n justifyContent: 'center',\n minHeight,\n opacity: disabled ? 0.48 : 1,\n paddingHorizontal: theme.spacing.s,\n paddingVertical: compact ? theme.spacing.xs : theme.spacing.s,\n }}\n testID={\n item.metadata?.testID ?? (testID ? `${testID}-item-${item.route.key}` : undefined)\n }\n >\n {item.metadata?.icon ? (\n <Icon\n color={contentColor}\n name={item.metadata.icon.name}\n provider={item.metadata.icon.provider}\n size={compact ? theme.spacing.m : theme.spacing.l}\n />\n ) : null}\n <ReactNativeText\n numberOfLines={1}\n style={{\n color: contentColor,\n fontSize: labelSize,\n fontWeight: labelWeight,\n lineHeight: compact ? 16 : 20,\n marginTop: item.metadata?.icon ? theme.spacing.xs : 0,\n textAlign: 'center',\n }}\n >\n {item.label}\n </ReactNativeText>\n </Pressable>\n );\n })}\n </Box>\n );\n\n if (chrome === 'none') {\n return content;\n }\n\n return (\n <Surface variant=\"raised\" testID={testID ? `${testID}-chrome` : undefined}>\n {content}\n </Surface>\n );\n}\n\n/***\n * Bottom tab bar pattern with badge support and active state styling.\n *\n \n */\nexport const ZoraTabBar = withZoraThemeScope(ZoraTabBarInner);\n"]}
@@ -11,7 +11,6 @@ export interface ZoraProviderProps {
11
11
  * Wrap an app with `ZoraProvider` once near the root so components, patterns,
12
12
  * layouts, and theme hooks resolve the same design tokens and color mode.
13
13
  *
14
- * @readme
15
14
  * @example App provider
16
15
  * ```tsx
17
16
  * <ZoraProvider initialMode="light"><App /></ZoraProvider>
@@ -1 +1 @@
1
- {"version":3,"file":"ZoraProvider.d.ts","sourceRoot":"","sources":["../../src/theme/ZoraProvider.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAIxD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,WAAW,CAAC,EAAE,aAAa,CAAC;CAC7B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,KAAwB,EACxB,WAAqB,GACtB,EAAE,iBAAiB,qBAUnB"}
1
+ {"version":3,"file":"ZoraProvider.d.ts","sourceRoot":"","sources":["../../src/theme/ZoraProvider.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAIxD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,WAAW,CAAC,EAAE,aAAa,CAAC;CAC7B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,KAAwB,EACxB,WAAqB,GACtB,EAAE,iBAAiB,qBAUnB"}
@@ -9,7 +9,6 @@ import { ZoraThemeRuntimeContext } from './ZoraThemeRuntimeContext';
9
9
  * Wrap an app with `ZoraProvider` once near the root so components, patterns,
10
10
  * layouts, and theme hooks resolve the same design tokens and color mode.
11
11
  *
12
- * @readme
13
12
  * @example App provider
14
13
  * ```tsx
15
14
  * <ZoraProvider initialMode="light"><App /></ZoraProvider>
@@ -1 +1 @@
1
- {"version":3,"file":"ZoraProvider.js","sourceRoot":"","sources":["../../src/theme/ZoraProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAQpE;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,YAAY,CAAC,EAC3B,QAAQ,EACR,KAAK,GAAG,gBAAgB,EACxB,WAAW,GAAG,OAAO,GACH;IAClB,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAE/F,OAAO,CACL,CAAC,uBAAuB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CACpD;MAAA,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CACnF;QAAA,CAAC,QAAQ,CACX;MAAA,EAAE,aAAa,CACjB;IAAA,EAAE,uBAAuB,CAAC,QAAQ,CAAC,CACpC,CAAC;AACJ,CAAC","sourcesContent":["import { ThemeProvider } from '@ankhorage/surface';\nimport React from 'react';\n\nimport { createZoraThemeConfig } from './createZoraThemeConfig';\nimport type { ZoraTheme, ZoraThemeMode } from './types';\nimport { zoraDefaultTheme } from './zoraDefaultTheme';\nimport { ZoraThemeRuntimeContext } from './ZoraThemeRuntimeContext';\n\nexport interface ZoraProviderProps {\n children: React.ReactNode;\n theme?: ZoraTheme;\n initialMode?: ZoraThemeMode;\n}\n\n/***\n * Installs the ZORA theme runtime and underlying Surface theme provider.\n *\n * Wrap an app with `ZoraProvider` once near the root so components, patterns,\n * layouts, and theme hooks resolve the same design tokens and color mode.\n *\n * @readme\n * @example App provider\n * ```tsx\n * <ZoraProvider initialMode=\"light\"><App /></ZoraProvider>\n * ```\n */\nexport function ZoraProvider({\n children,\n theme = zoraDefaultTheme,\n initialMode = 'light',\n}: ZoraProviderProps) {\n const runtimeValue = React.useMemo(() => ({ sourceTheme: theme, themeId: theme.id }), [theme]);\n\n return (\n <ZoraThemeRuntimeContext.Provider value={runtimeValue}>\n <ThemeProvider initialConfig={createZoraThemeConfig(theme)} initialMode={initialMode}>\n {children}\n </ThemeProvider>\n </ZoraThemeRuntimeContext.Provider>\n );\n}\n"]}
1
+ {"version":3,"file":"ZoraProvider.js","sourceRoot":"","sources":["../../src/theme/ZoraProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAQpE;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAAC,EAC3B,QAAQ,EACR,KAAK,GAAG,gBAAgB,EACxB,WAAW,GAAG,OAAO,GACH;IAClB,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAE/F,OAAO,CACL,CAAC,uBAAuB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CACpD;MAAA,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CACnF;QAAA,CAAC,QAAQ,CACX;MAAA,EAAE,aAAa,CACjB;IAAA,EAAE,uBAAuB,CAAC,QAAQ,CAAC,CACpC,CAAC;AACJ,CAAC","sourcesContent":["import { ThemeProvider } from '@ankhorage/surface';\nimport React from 'react';\n\nimport { createZoraThemeConfig } from './createZoraThemeConfig';\nimport type { ZoraTheme, ZoraThemeMode } from './types';\nimport { zoraDefaultTheme } from './zoraDefaultTheme';\nimport { ZoraThemeRuntimeContext } from './ZoraThemeRuntimeContext';\n\nexport interface ZoraProviderProps {\n children: React.ReactNode;\n theme?: ZoraTheme;\n initialMode?: ZoraThemeMode;\n}\n\n/***\n * Installs the ZORA theme runtime and underlying Surface theme provider.\n *\n * Wrap an app with `ZoraProvider` once near the root so components, patterns,\n * layouts, and theme hooks resolve the same design tokens and color mode.\n *\n * @example App provider\n * ```tsx\n * <ZoraProvider initialMode=\"light\"><App /></ZoraProvider>\n * ```\n */\nexport function ZoraProvider({\n children,\n theme = zoraDefaultTheme,\n initialMode = 'light',\n}: ZoraProviderProps) {\n const runtimeValue = React.useMemo(() => ({ sourceTheme: theme, themeId: theme.id }), [theme]);\n\n return (\n <ZoraThemeRuntimeContext.Provider value={runtimeValue}>\n <ThemeProvider initialConfig={createZoraThemeConfig(theme)} initialMode={initialMode}>\n {children}\n </ThemeProvider>\n </ZoraThemeRuntimeContext.Provider>\n );\n}\n"]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@ankhorage/zora",
3
3
  "type": "module",
4
- "version": "2.5.3",
4
+ "version": "2.5.5",
5
5
  "description": "Opinionated React Native and React Native Web UI kit built on @ankhorage/surface.",
6
6
  "homepage": "https://github.com/ankhorage/zora#readme",
7
7
  "bugs": {
@@ -28,6 +28,7 @@
28
28
  "@expo/vector-icons": ">=14.0.0",
29
29
  "@react-native-picker/picker": ">=2.0.0",
30
30
  "expo-font": "^55.0.6",
31
+ "expo-linear-gradient": ">=14.0.0",
31
32
  "react": ">=18.2.0",
32
33
  "react-native": ">=0.72.0"
33
34
  },
@@ -40,11 +41,14 @@
40
41
  },
41
42
  "expo-font": {
42
43
  "optional": true
44
+ },
45
+ "expo-linear-gradient": {
46
+ "optional": true
43
47
  }
44
48
  },
45
49
  "dependencies": {
46
50
  "@ankhorage/color-theory": "^0.0.7",
47
- "@ankhorage/contracts": "^1.12.0",
51
+ "@ankhorage/contracts": "^1.13.0",
48
52
  "@ankhorage/surface": "^2.0.2"
49
53
  },
50
54
  "files": [
@@ -92,13 +96,14 @@
92
96
  },
93
97
  "devDependencies": {
94
98
  "@ankhorage/devtools": "^1.0.6",
95
- "@ankhorage/paradox": "^0.1.7",
99
+ "@ankhorage/paradox": "^0.1.10",
96
100
  "@changesets/cli": "^2.31.0",
97
101
  "@expo/vector-icons": "^15.1.1",
98
102
  "@react-native-picker/picker": "^2.11.4",
99
103
  "@types/bun": "^1.3.13",
100
104
  "@types/node": "^25.6.0",
101
105
  "@types/react": "^19.2.14",
106
+ "expo-linear-gradient": "^15.0.8",
102
107
  "react": "19.1.0",
103
108
  "react-native": "0.81.5",
104
109
  "typescript": "^5.9.3"
@@ -10,7 +10,5 @@ function ActionSheetInner({ mode: _mode, themeId: _themeId, ...props }: ActionSh
10
10
 
11
11
  /***
12
12
  * Presents a modal bottom sheet with a list of actions.
13
- *
14
- * @readme
15
13
  */
16
14
  export const ActionSheet = withZoraThemeScope(ActionSheetInner);
@@ -31,7 +31,5 @@ function ActionSheetItemInner({
31
31
 
32
32
  /***
33
33
  * Renders a single selectable action row within an `ActionSheet`.
34
- *
35
- * @readme
36
34
  */
37
35
  export const ActionSheetItem = withZoraThemeScope(ActionSheetItemInner);
@@ -132,7 +132,5 @@ function AppBarInner({
132
132
 
133
133
  /***
134
134
  * Renders a top app bar with title/subtitle and optional leading/trailing actions.
135
- *
136
- * @readme
137
135
  */
138
136
  export const AppBar = withZoraThemeScope(AppBarInner);
@@ -142,7 +142,5 @@ function AvatarInner({
142
142
 
143
143
  /***
144
144
  * Displays a user or entity avatar with image support and initials fallback.
145
- *
146
- * @readme
147
145
  */
148
146
  export const Avatar = withZoraThemeScope(AvatarInner);
@@ -73,7 +73,5 @@ function AvatarGroupInner({
73
73
 
74
74
  /***
75
75
  * Renders a compact group of avatars with optional overflow handling.
76
- *
77
- * @readme
78
76
  */
79
77
  export const AvatarGroup = withZoraThemeScope(AvatarGroupInner);
@@ -29,7 +29,5 @@ function BadgeInner({
29
29
 
30
30
  /***
31
31
  * Shows a small status, label, or count indicator.
32
- *
33
- * @readme
34
32
  */
35
33
  export const Badge = withZoraThemeScope(BadgeInner);
@@ -142,7 +142,5 @@ function BreadcrumbsInner({
142
142
 
143
143
  /***
144
144
  * Renders a breadcrumb trail for hierarchical navigation.
145
- *
146
- * @readme
147
145
  */
148
146
  export const Breadcrumbs = withZoraThemeScope(BreadcrumbsInner);
@@ -26,7 +26,6 @@ function ButtonInner({
26
26
  * Use `Button` for explicit user actions that should follow ZORA's semantic color,
27
27
  * variant, and size recipes across React Native and React Native Web.
28
28
  *
29
- * @readme
30
29
  * @example Basic action
31
30
  * ```tsx
32
31
  * <Button color="primary" variant="solid" onPress={save}>Save</Button>
@@ -104,7 +104,5 @@ function ButtonGroupInner({
104
104
 
105
105
  /***
106
106
  * Groups multiple `Button` elements with consistent spacing and alignment.
107
- *
108
- * @readme
109
107
  */
110
108
  export const ButtonGroup = withZoraThemeScope(ButtonGroupInner);
@@ -76,7 +76,6 @@ function CardInner({
76
76
  * Use `Card` for reusable content blocks that should inherit ZORA spacing,
77
77
  * radius, tone, and responsive header layout without hand-assembling primitives.
78
78
  *
79
- * @readme
80
79
  * @example Content card
81
80
  * ```tsx
82
81
  * <Card title="Project" description="Latest activity">...</Card>
@@ -11,6 +11,6 @@ function CheckboxInner({ themeId: _themeId, mode: _mode, ...props }: CheckboxPro
11
11
  /***
12
12
  * Binary selection control for toggling a value on or off.
13
13
  *
14
- * @readme
14
+
15
15
  */
16
16
  export const Checkbox = withZoraThemeScope(CheckboxInner);
@@ -59,8 +59,6 @@ function CheckboxGroupInner<TValue extends string>({
59
59
 
60
60
  /***
61
61
  * Renders a group of checkboxes for multi-select values.
62
- *
63
- * @readme
64
62
  */
65
63
  export const CheckboxGroup = withZoraThemeScope(CheckboxGroupInner);
66
64
 
@@ -93,7 +93,5 @@ function ChipInner({
93
93
 
94
94
  /***
95
95
  * Compact pill-like control for filters, tags, and quick selections.
96
- *
97
- * @readme
98
96
  */
99
97
  export const Chip = withZoraThemeScope(ChipInner);
@@ -65,7 +65,5 @@ function ChipGroupInner<TValue extends string = string>({
65
65
 
66
66
  /***
67
67
  * Renders a row or wrap layout of `Chip` items.
68
- *
69
- * @readme
70
68
  */
71
69
  export const ChipGroup = withZoraThemeScope(ChipGroupInner);
@@ -387,7 +387,5 @@ function DataTableInner<TRow extends object>({
387
387
 
388
388
  /***
389
389
  * Displays structured tabular data with responsive desktop/mobile layouts.
390
- *
391
- * @readme
392
390
  */
393
391
  export const DataTable = withZoraThemeScope(DataTableInner);
@@ -241,7 +241,5 @@ function DatePickerInner({
241
241
 
242
242
  /***
243
243
  * Date input control with calendar selection and formatted display value.
244
- *
245
- * @readme
246
244
  */
247
245
  export const DatePicker = withZoraThemeScope(DatePickerInner);
@@ -54,7 +54,5 @@ function DrawerInner({
54
54
 
55
55
  /***
56
56
  * Side panel overlay for navigation, settings, and secondary content.
57
- *
58
- * @readme
59
57
  */
60
58
  export const Drawer = withZoraThemeScope(DrawerInner);
@@ -65,7 +65,5 @@ function FormInner<TName extends string = string>({
65
65
 
66
66
  /***
67
67
  * Composes fields and actions into a validated form layout.
68
- *
69
- * @readme
70
68
  */
71
69
  export const Form = withZoraThemeScope(FormInner);
@@ -27,7 +27,5 @@ function FormActionsInner({
27
27
 
28
28
  /***
29
29
  * Standard submit/action area for forms.
30
- *
31
- * @readme
32
30
  */
33
31
  export const FormActions = withZoraThemeScope(FormActionsInner);
@@ -24,7 +24,5 @@ function FormErrorInner({ themeId: _themeId, mode: _mode, error, testID }: FormE
24
24
 
25
25
  /***
26
26
  * Displays a form-level validation or submission error message.
27
- *
28
- * @readme
29
27
  */
30
28
  export const FormError = withZoraThemeScope(FormErrorInner);
@@ -150,7 +150,5 @@ function FormFieldInner<TName extends string = string>(props: FormFieldProps<TNa
150
150
 
151
151
  /***
152
152
  * Connects a controlled form value to a labeled input field with error handling.
153
- *
154
- * @readme
155
153
  */
156
154
  export const FormField = withZoraThemeScope(FormFieldInner);