@ankhorage/zora 23.0.0 → 23.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +1 -1
  3. package/dist/constants/authoring.d.ts +4 -4
  4. package/dist/constants/authoring.d.ts.map +1 -1
  5. package/dist/constants/authoring.js +2 -0
  6. package/dist/constants/authoring.js.map +1 -1
  7. package/dist/features/accordion/accordionItemMeta.d.ts +1 -1
  8. package/dist/features/auth/adapters/inbound/AuthScreen.d.ts +10 -0
  9. package/dist/features/auth/adapters/inbound/AuthScreen.d.ts.map +1 -0
  10. package/dist/features/auth/adapters/inbound/AuthScreen.js +67 -0
  11. package/dist/features/auth/adapters/inbound/AuthScreen.js.map +1 -0
  12. package/dist/features/auth/authScreenMeta.d.ts +204 -0
  13. package/dist/features/auth/authScreenMeta.d.ts.map +1 -0
  14. package/dist/features/auth/authScreenMeta.js +112 -0
  15. package/dist/features/auth/authScreenMeta.js.map +1 -0
  16. package/dist/features/auth/public.d.ts +2 -1
  17. package/dist/features/auth/public.d.ts.map +1 -1
  18. package/dist/features/auth/public.js +1 -0
  19. package/dist/features/auth/public.js.map +1 -1
  20. package/dist/features/bottom-sheet/bottomSheetMeta.d.ts +1 -1
  21. package/dist/features/card/cardMeta.d.ts +1 -1
  22. package/dist/features/card/mediaCardMeta.d.ts +1 -1
  23. package/dist/features/card/postCardMeta.d.ts +1 -1
  24. package/dist/features/chat/messageBubbleMeta.d.ts +1 -1
  25. package/dist/features/dialog/dialogMeta.d.ts +2 -2
  26. package/dist/features/gradient/gradientMeta.d.ts +1 -1
  27. package/dist/features/keyboard-avoiding-view/keyboardAvoidingViewMeta.d.ts +1 -1
  28. package/dist/features/layout/gridMeta.d.ts +1 -1
  29. package/dist/features/layout/screenMeta.d.ts +1 -1
  30. package/dist/features/layout/scrollViewMeta.d.ts +1 -1
  31. package/dist/features/layout/viewMeta.d.ts +1 -1
  32. package/dist/features/list/flatListMeta.d.ts +1 -1
  33. package/dist/features/list/sectionListMeta.d.ts +1 -1
  34. package/dist/features/reader/meta.d.ts +2 -2
  35. package/dist/features/registry/ZORA_COMPONENT_REGISTRY.d.ts.map +1 -1
  36. package/dist/features/registry/ZORA_COMPONENT_REGISTRY.js +2 -1
  37. package/dist/features/registry/ZORA_COMPONENT_REGISTRY.js.map +1 -1
  38. package/dist/features/registry/bindableComponentMeta.d.ts +2 -2
  39. package/dist/features/registry/componentMeta.d.ts.map +1 -1
  40. package/dist/features/registry/componentMeta.js +2 -0
  41. package/dist/features/registry/componentMeta.js.map +1 -1
  42. package/dist/features/scanner/meta.d.ts +2 -2
  43. package/dist/features/section/screenSectionMeta.d.ts +1 -1
  44. package/dist/features/surface/surfaceMeta.d.ts +1 -1
  45. package/dist/features/tabs/tabPanelMeta.d.ts +1 -1
  46. package/dist/features/tree-view/adapters/inbound/TreeItem.d.ts.map +1 -1
  47. package/dist/features/tree-view/adapters/inbound/TreeItem.js +2 -1
  48. package/dist/features/tree-view/adapters/inbound/TreeItem.js.map +1 -1
  49. package/dist/features/tree-view/adapters/inbound/web-artifact/TreeItemRow.d.ts.map +1 -1
  50. package/dist/features/tree-view/adapters/inbound/web-artifact/TreeItemRow.js +5 -4
  51. package/dist/features/tree-view/adapters/inbound/web-artifact/TreeItemRow.js.map +1 -1
  52. package/dist/features/tree-view/adapters/inbound/web-artifact/TreeView.d.ts +1 -0
  53. package/dist/features/tree-view/adapters/inbound/web-artifact/TreeView.d.ts.map +1 -1
  54. package/dist/features/tree-view/adapters/inbound/web-artifact/TreeView.js.map +1 -1
  55. package/dist/index.d.ts +2 -2
  56. package/dist/index.d.ts.map +1 -1
  57. package/dist/index.js +1 -1
  58. package/dist/index.js.map +1 -1
  59. package/dist/types/auth.d.ts +19 -0
  60. package/dist/types/auth.d.ts.map +1 -1
  61. package/dist/types/auth.js.map +1 -1
  62. package/dist/types/tree-view.d.ts +1 -0
  63. package/dist/types/tree-view.d.ts.map +1 -1
  64. package/dist/types/tree-view.js.map +1 -1
  65. package/package.json +2 -2
  66. package/src/constants/authoring.ts +2 -0
  67. package/src/features/auth/adapters/inbound/AuthScreen.tsx +202 -0
  68. package/src/features/auth/authScreenMeta.ts +114 -0
  69. package/src/features/auth/public.test.ts +6 -0
  70. package/src/features/auth/public.ts +3 -0
  71. package/src/features/registry/ZORA_COMPONENT_REGISTRY.ts +2 -0
  72. package/src/features/registry/componentMeta.test.ts +1 -0
  73. package/src/features/registry/componentMeta.ts +2 -0
  74. package/src/features/tree-view/adapters/inbound/TreeItem.tsx +3 -2
  75. package/src/features/tree-view/adapters/inbound/web-artifact/TreeItemRow.tsx +12 -3
  76. package/src/features/tree-view/adapters/inbound/web-artifact/TreeView.test.tsx +19 -0
  77. package/src/features/tree-view/adapters/inbound/web-artifact/TreeView.tsx +1 -0
  78. package/src/index.ts +3 -0
  79. package/src/showcaseCoverage.test.ts +1 -0
  80. package/src/types/auth.ts +21 -0
  81. package/src/types/tree-view.ts +1 -0
  82. package/web-dist/chunks/{Accordion-q165k3az.js → Accordion-2ak69ntj.js} +9 -9
  83. package/web-dist/chunks/{Accordion-rx2gzadh.js → Accordion-46vwm9xv.js} +2 -2
  84. package/web-dist/chunks/{Accordion-xf8cj8z4.js → Accordion-4r9a9qny.js} +3 -3
  85. package/web-dist/chunks/{Accordion-w0k7gnn9.js → Accordion-5pskbqss.js} +5 -5
  86. package/web-dist/chunks/{Accordion-09se459d.js → Accordion-8xdet564.js} +13 -13
  87. package/web-dist/chunks/{Accordion-czmnsspb.js → Accordion-9n7h9hag.js} +6 -6
  88. package/web-dist/chunks/{Accordion-x1dg1f47.js → Accordion-b9myvfep.js} +3 -3
  89. package/web-dist/chunks/{Accordion-rspy7gjb.js → Accordion-bmp1ab7m.js} +494 -301
  90. package/web-dist/chunks/{Accordion-x13vca75.js → Accordion-cqgbx1pw.js} +3 -3
  91. package/web-dist/chunks/{Accordion-e633pb7z.js → Accordion-cydzrpk2.js} +1 -1
  92. package/web-dist/chunks/{Accordion-89q14src.js → Accordion-ejns5mga.js} +4 -4
  93. package/web-dist/chunks/{Accordion-f1t3rzgg.js → Accordion-ejy7gr0a.js} +4 -4
  94. package/web-dist/chunks/{Accordion-83hfn3y4.js → Accordion-f2mfgcx6.js} +13 -13
  95. package/web-dist/chunks/{Accordion-bsy1jrak.js → Accordion-ff583p4q.js} +2 -2
  96. package/web-dist/chunks/{Accordion-k7wwyx5x.js → Accordion-jksn8783.js} +3 -3
  97. package/web-dist/chunks/{Accordion-w7jv9y5t.js → Accordion-jnwa02s7.js} +2 -2
  98. package/web-dist/chunks/{Accordion-gkzhd3zk.js → Accordion-kmv2fp6m.js} +4 -4
  99. package/web-dist/chunks/{Accordion-cn8tbdvk.js → Accordion-mm4kx13n.js} +8 -8
  100. package/web-dist/chunks/{Accordion-b3ymabze.js → Accordion-nggjwm07.js} +3 -3
  101. package/web-dist/chunks/{Accordion-zx0jc0kg.js → Accordion-qb8ppq9t.js} +5 -5
  102. package/web-dist/chunks/Accordion-r23sx4gf.js +34 -0
  103. package/web-dist/chunks/{Accordion-q3z741vt.js → Accordion-rev0zb75.js} +4 -4
  104. package/web-dist/chunks/{Accordion-w1afjp87.js → Accordion-rnjt5z4y.js} +17 -17
  105. package/web-dist/chunks/{Accordion-swys7qts.js → Accordion-tyqds4zr.js} +4 -4
  106. package/web-dist/chunks/{Accordion-xzd0tx46.js → Accordion-v166qr59.js} +3 -3
  107. package/web-dist/chunks/{Accordion-gj63vb6b.js → Accordion-xw1gkpfk.js} +3 -3
  108. package/web-dist/chunks/{Accordion-dp638q63.js → Accordion-yms7x22j.js} +7 -7
  109. package/web-dist/chunks/{Accordion-fm3jxs1f.js → Accordion-z1trs7s1.js} +22 -22
  110. package/web-dist/chunks/{Accordion-5qmfa7vr.js → Accordion-z8h1hn96.js} +5 -5
  111. package/web-dist/components/accordion/Accordion.js +2 -2
  112. package/web-dist/components/accordion-item/AccordionItem.js +2 -2
  113. package/web-dist/components/app-bar/AppBar.js +6 -6
  114. package/web-dist/components/auth-screen/AuthScreen.d.ts +9 -0
  115. package/web-dist/components/auth-screen/AuthScreen.js +43 -0
  116. package/web-dist/components/auth-screen/index.d.ts +1 -0
  117. package/web-dist/components/auth-screen/index.js +2 -0
  118. package/web-dist/components/avatar/Avatar.js +2 -2
  119. package/web-dist/components/avatar-group/AvatarGroup.js +2 -2
  120. package/web-dist/components/badge/Badge.js +2 -2
  121. package/web-dist/components/barcode-scanner-view/BarcodeScannerView.js +8 -8
  122. package/web-dist/components/breadcrumbs/Breadcrumbs.js +8 -8
  123. package/web-dist/components/button/Button.js +3 -3
  124. package/web-dist/components/button-group/ButtonGroup.js +3 -3
  125. package/web-dist/components/camera-permission-view/CameraPermissionView.js +8 -8
  126. package/web-dist/components/card/Card.js +7 -7
  127. package/web-dist/components/chat-list-item/ChatListItem.js +6 -6
  128. package/web-dist/components/checkbox/Checkbox.js +4 -4
  129. package/web-dist/components/checkbox-group/CheckboxGroup.js +4 -4
  130. package/web-dist/components/chip/Chip.js +2 -2
  131. package/web-dist/components/chip-group/ChipGroup.js +2 -2
  132. package/web-dist/components/collection-editor/CollectionEditor.js +9 -9
  133. package/web-dist/components/content-rail/ContentRail.js +6 -6
  134. package/web-dist/components/data-table/DataTable.js +18 -18
  135. package/web-dist/components/date-picker/DatePicker.js +12 -12
  136. package/web-dist/components/dialog/Dialog.js +3 -3
  137. package/web-dist/components/empty-state/EmptyState.js +8 -8
  138. package/web-dist/components/field/Field.js +5 -5
  139. package/web-dist/components/flat-list/FlatList.js +5 -5
  140. package/web-dist/components/forgot-password-form/ForgotPasswordForm.d.ts +1 -0
  141. package/web-dist/components/forgot-password-form/ForgotPasswordForm.js +21 -16
  142. package/web-dist/components/form/Form.js +7 -7
  143. package/web-dist/components/form-actions/FormActions.js +7 -7
  144. package/web-dist/components/form-error/FormError.js +7 -7
  145. package/web-dist/components/heading/Heading.js +3 -3
  146. package/web-dist/components/hero/Hero.js +10 -10
  147. package/web-dist/components/icon-button/IconButton.js +3 -3
  148. package/web-dist/components/keyboard-avoiding-view/KeyboardAvoidingView.js +5 -32
  149. package/web-dist/components/list/List.js +5 -5
  150. package/web-dist/components/list-item/ListItem.js +5 -5
  151. package/web-dist/components/list-section/ListSection.js +5 -5
  152. package/web-dist/components/media-card/MediaCard.js +7 -7
  153. package/web-dist/components/message-bubble/MessageBubble.js +6 -6
  154. package/web-dist/components/metric-card/MetricCard.js +7 -7
  155. package/web-dist/components/missing-element/MissingElement.js +8 -8
  156. package/web-dist/components/o-auth-provider-button/OAuthProviderButton.d.ts +1 -0
  157. package/web-dist/components/o-auth-provider-button/OAuthProviderButton.js +21 -16
  158. package/web-dist/components/o-auth-provider-list/OAuthProviderList.d.ts +1 -0
  159. package/web-dist/components/o-auth-provider-list/OAuthProviderList.js +21 -16
  160. package/web-dist/components/otp-form/OtpForm.d.ts +1 -0
  161. package/web-dist/components/otp-form/OtpForm.js +21 -16
  162. package/web-dist/components/pagination/Pagination.js +6 -6
  163. package/web-dist/components/palette-item/PaletteItem.js +9 -9
  164. package/web-dist/components/popover-menu/PopoverMenu.js +3 -3
  165. package/web-dist/components/post-card/PostCard.js +7 -7
  166. package/web-dist/components/product-card/ProductCard.js +7 -7
  167. package/web-dist/components/progress/Progress.js +2 -2
  168. package/web-dist/components/progress-ring/ProgressRing.js +2 -2
  169. package/web-dist/components/radio/Radio.js +4 -4
  170. package/web-dist/components/radio-group/RadioGroup.js +4 -4
  171. package/web-dist/components/reader-surface/ReaderSurface.js +11 -11
  172. package/web-dist/components/scan-overlay/ScanOverlay.js +8 -8
  173. package/web-dist/components/screen-section/ScreenSection.js +2 -2
  174. package/web-dist/components/search-input/SearchInput.js +4 -4
  175. package/web-dist/components/section-header/SectionHeader.js +2 -2
  176. package/web-dist/components/section-list/SectionList.js +5 -5
  177. package/web-dist/components/select/Select.js +4 -4
  178. package/web-dist/components/sign-in-form/SignInForm.d.ts +1 -0
  179. package/web-dist/components/sign-in-form/SignInForm.js +21 -16
  180. package/web-dist/components/sign-up-form/SignUpForm.d.ts +1 -0
  181. package/web-dist/components/sign-up-form/SignUpForm.js +21 -16
  182. package/web-dist/components/skeleton/Skeleton.js +10 -10
  183. package/web-dist/components/skeleton-card/SkeletonCard.js +10 -10
  184. package/web-dist/components/skeleton-list/SkeletonList.js +10 -10
  185. package/web-dist/components/skeleton-text/SkeletonText.js +10 -10
  186. package/web-dist/components/switch/Switch.js +3 -3
  187. package/web-dist/components/tab/Tab.js +2 -2
  188. package/web-dist/components/tab-list/TabList.js +2 -2
  189. package/web-dist/components/tab-panel/TabPanel.js +2 -2
  190. package/web-dist/components/tabs/Tabs.js +2 -2
  191. package/web-dist/components/text/Text.js +3 -3
  192. package/web-dist/components/text-input/TextInput.js +4 -4
  193. package/web-dist/components/time-picker/TimePicker.js +10 -10
  194. package/web-dist/components/timeline/Timeline.js +4 -4
  195. package/web-dist/components/toast/Toast.js +3 -3
  196. package/web-dist/components/toast-provider/ToastProvider.js +3 -3
  197. package/web-dist/components/toolbar/Toolbar.js +7 -7
  198. package/web-dist/components/tree-item/TreeItem.js +10 -9
  199. package/web-dist/components/tree-view/TreeView.d.ts +1 -0
  200. package/web-dist/components/tree-view/TreeView.js +5 -2
  201. package/web-dist/components/uploader/Uploader.js +15 -15
  202. package/web-dist/manifest.json +444 -384
  203. package/web-dist/runtime/ZoraProvider.js +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"TreeItem.d.ts","sourceRoot":"","sources":["../../../../../src/features/tree-view/adapters/inbound/TreeItem.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAQrF,UAAU,aAAa,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,aAAa;IACxE,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,EAAE,SAAS,GAAG,QAAQ,CAAC;IACzC,WAAW,EAAE,SAAS,GAAG,EAAE,CAAC;IAC5B,WAAW,EAAE,SAAS,GAAG,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IACtD,cAAc,EAAE,CAAC,EAAE,EAAE,GAAG,KAAK,IAAI,CAAC;IAClC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;CACnE;AAmHD,oDAAoD;AACpD,eAAO,MAAM,QAAQ,GAjHE,GAAG,SAAS,MAAM,kEAiHgB,CAAC"}
1
+ {"version":3,"file":"TreeItem.d.ts","sourceRoot":"","sources":["../../../../../src/features/tree-view/adapters/inbound/TreeItem.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAQrF,UAAU,aAAa,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,aAAa;IACxE,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,EAAE,SAAS,GAAG,QAAQ,CAAC;IACzC,WAAW,EAAE,SAAS,GAAG,EAAE,CAAC;IAC5B,WAAW,EAAE,SAAS,GAAG,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IACtD,cAAc,EAAE,CAAC,EAAE,EAAE,GAAG,KAAK,IAAI,CAAC;IAClC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;CACnE;AAoHD,oDAAoD;AACpD,eAAO,MAAM,QAAQ,GAlHE,GAAG,SAAS,MAAM,kEAkHgB,CAAC"}
@@ -23,9 +23,10 @@ function TreeItemInner({ themeId: _themeId, mode: _mode, node, depth, expansionI
23
23
  hasChildren,
24
24
  });
25
25
  }
26
+ const nodeIcon = isExpanded ? (node.expandedIcon ?? node.icon) : node.icon;
26
27
  const listItemProps = {
27
28
  title: node.label,
28
- leading: expansionIndicator === 'folder' || node.icon === undefined ? undefined : (<Icon {...node.icon} size="s"/>),
29
+ leading: expansionIndicator === 'folder' || nodeIcon === undefined ? undefined : (<Icon {...nodeIcon} size={12}/>),
29
30
  meta: node.meta,
30
31
  disabled: node.disabled,
31
32
  selected: isSelected,
@@ -1 +1 @@
1
- {"version":3,"file":"TreeItem.js","sourceRoot":"","sources":["../../../../../src/features/tree-view/adapters/inbound/TreeItem.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Pressable } from '@ankhorage/surface';\nimport type { SelectionIntent } from '@ankhorage/utility/selection';\nimport React from 'react';\nimport { Platform } from 'react-native';\n\nimport type { ZoraBaseProps } from '../../../../types/base';\nimport type { TreeItemNode, TreeItemRenderProps } from '../../../../types/tree-view';\nimport { IconButton } from '../../../button/public';\nimport { Icon } from '../../../icon/public';\nimport { View } from '../../../layout/public';\nimport { ListItem } from '../../../list/public';\nimport { resolveSelectionEventIntent } from '../../../selection/public';\nimport { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';\n\ninterface TreeItemProps<TId extends string = string> extends ZoraBaseProps {\n node: TreeItemNode<TId>;\n depth: number;\n expansionIndicator: 'chevron' | 'folder';\n selectedIds: readonly TId[];\n expandedIds: readonly TId[];\n onSelect?: (id: TId, intent: SelectionIntent) => void;\n onToggleExpand: (id: TId) => void;\n renderItem?: (props: TreeItemRenderProps<TId>) => React.ReactNode;\n}\n\n/*** Render one recursive themed tree row and keep row selection separate from expansion controls. */\nfunction TreeItemInner<TId extends string = string>({\n themeId: _themeId,\n mode: _mode,\n node,\n depth,\n expansionIndicator,\n selectedIds,\n expandedIds,\n onSelect,\n onToggleExpand,\n renderItem,\n testID,\n interactionPolicy,\n}: TreeItemProps<TId>) {\n const hasChildren = node.children !== undefined && node.children.length > 0;\n const isExpanded = expandedIds.includes(node.id);\n const isSelected = selectedIds.includes(node.id);\n\n /*** Compose custom content or the selectable row independently of the expansion control. */\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 const listItemProps = {\n title: node.label,\n leading:\n expansionIndicator === 'folder' || node.icon === undefined ? undefined : (\n <Icon {...node.icon} size=\"s\" />\n ),\n meta: node.meta,\n disabled: node.disabled,\n selected: isSelected,\n trailing: node.actions,\n };\n\n if (onSelect === undefined) return <ListItem {...listItemProps} />;\n return (\n <Pressable\n accessibilityRole=\"button\"\n accessibilityState={{ disabled: node.disabled, selected: isSelected }}\n disabled={node.disabled}\n interactionPolicy={interactionPolicy}\n onPress={(event) =>\n onSelect(\n node.id,\n resolveSelectionEventIntent(event, Platform.OS === 'web' ? 'pointer' : 'touch'),\n )\n }\n >\n <ListItem {...listItemProps} />\n </Pressable>\n );\n };\n\n return (\n <View testID={testID}>\n <View direction=\"row\" align=\"center\" style={{ paddingLeft: depth * 16 }}>\n {hasChildren ? (\n <IconButton\n icon={{\n name:\n expansionIndicator === 'folder'\n ? isExpanded\n ? 'folder-open-outline'\n : 'folder-outline'\n : isExpanded\n ? 'chevron-down-outline'\n : 'chevron-forward-outline',\n }}\n disabled={node.disabled}\n interactionPolicy={interactionPolicy}\n label={isExpanded ? 'Collapse' : 'Expand'}\n onPress={() => onToggleExpand(node.id)}\n size=\"s\"\n variant=\"ghost\"\n />\n ) : (\n <View style={{ width: 32 }} align=\"center\">\n {expansionIndicator === 'folder' ? <Icon name=\"document-outline\" size=\"s\" /> : null}\n </View>\n )}\n <View style={{ flex: 1, minWidth: 0 }}>{renderContent()}</View>\n </View>\n {hasChildren && isExpanded ? (\n <View>\n {node.children?.map((child) => (\n <TreeItem\n key={child.id}\n depth={depth + 1}\n expandedIds={expandedIds}\n expansionIndicator={expansionIndicator}\n interactionPolicy={interactionPolicy}\n node={child}\n onSelect={onSelect}\n onToggleExpand={onToggleExpand}\n renderItem={renderItem}\n selectedIds={selectedIds}\n />\n ))}\n </View>\n ) : null}\n </View>\n );\n}\n\n/*** Single tree node row used within `TreeView`. */\nexport const TreeItem = withZoraThemeScope(TreeItemInner);\n"]}
1
+ {"version":3,"file":"TreeItem.js","sourceRoot":"","sources":["../../../../../src/features/tree-view/adapters/inbound/TreeItem.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Pressable } from '@ankhorage/surface';\nimport type { SelectionIntent } from '@ankhorage/utility/selection';\nimport React from 'react';\nimport { Platform } from 'react-native';\n\nimport type { ZoraBaseProps } from '../../../../types/base';\nimport type { TreeItemNode, TreeItemRenderProps } from '../../../../types/tree-view';\nimport { IconButton } from '../../../button/public';\nimport { Icon } from '../../../icon/public';\nimport { View } from '../../../layout/public';\nimport { ListItem } from '../../../list/public';\nimport { resolveSelectionEventIntent } from '../../../selection/public';\nimport { withZoraThemeScope } from '../../../theme/adapters/inbound/withZoraThemeScope';\n\ninterface TreeItemProps<TId extends string = string> extends ZoraBaseProps {\n node: TreeItemNode<TId>;\n depth: number;\n expansionIndicator: 'chevron' | 'folder';\n selectedIds: readonly TId[];\n expandedIds: readonly TId[];\n onSelect?: (id: TId, intent: SelectionIntent) => void;\n onToggleExpand: (id: TId) => void;\n renderItem?: (props: TreeItemRenderProps<TId>) => React.ReactNode;\n}\n\n/*** Render one recursive themed tree row and keep row selection separate from expansion controls. */\nfunction TreeItemInner<TId extends string = string>({\n themeId: _themeId,\n mode: _mode,\n node,\n depth,\n expansionIndicator,\n selectedIds,\n expandedIds,\n onSelect,\n onToggleExpand,\n renderItem,\n testID,\n interactionPolicy,\n}: TreeItemProps<TId>) {\n const hasChildren = node.children !== undefined && node.children.length > 0;\n const isExpanded = expandedIds.includes(node.id);\n const isSelected = selectedIds.includes(node.id);\n\n /*** Compose custom content or the selectable row independently of the expansion control. */\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 const nodeIcon = isExpanded ? (node.expandedIcon ?? node.icon) : node.icon;\n const listItemProps = {\n title: node.label,\n leading:\n expansionIndicator === 'folder' || nodeIcon === undefined ? undefined : (\n <Icon {...nodeIcon} size={12} />\n ),\n meta: node.meta,\n disabled: node.disabled,\n selected: isSelected,\n trailing: node.actions,\n };\n\n if (onSelect === undefined) return <ListItem {...listItemProps} />;\n return (\n <Pressable\n accessibilityRole=\"button\"\n accessibilityState={{ disabled: node.disabled, selected: isSelected }}\n disabled={node.disabled}\n interactionPolicy={interactionPolicy}\n onPress={(event) =>\n onSelect(\n node.id,\n resolveSelectionEventIntent(event, Platform.OS === 'web' ? 'pointer' : 'touch'),\n )\n }\n >\n <ListItem {...listItemProps} />\n </Pressable>\n );\n };\n\n return (\n <View testID={testID}>\n <View direction=\"row\" align=\"center\" style={{ paddingLeft: depth * 16 }}>\n {hasChildren ? (\n <IconButton\n icon={{\n name:\n expansionIndicator === 'folder'\n ? isExpanded\n ? 'folder-open-outline'\n : 'folder-outline'\n : isExpanded\n ? 'chevron-down-outline'\n : 'chevron-forward-outline',\n }}\n disabled={node.disabled}\n interactionPolicy={interactionPolicy}\n label={isExpanded ? 'Collapse' : 'Expand'}\n onPress={() => onToggleExpand(node.id)}\n size=\"s\"\n variant=\"ghost\"\n />\n ) : (\n <View style={{ width: 32 }} align=\"center\">\n {expansionIndicator === 'folder' ? <Icon name=\"document-outline\" size=\"s\" /> : null}\n </View>\n )}\n <View style={{ flex: 1, minWidth: 0 }}>{renderContent()}</View>\n </View>\n {hasChildren && isExpanded ? (\n <View>\n {node.children?.map((child) => (\n <TreeItem\n key={child.id}\n depth={depth + 1}\n expandedIds={expandedIds}\n expansionIndicator={expansionIndicator}\n interactionPolicy={interactionPolicy}\n node={child}\n onSelect={onSelect}\n onToggleExpand={onToggleExpand}\n renderItem={renderItem}\n selectedIds={selectedIds}\n />\n ))}\n </View>\n ) : null}\n </View>\n );\n}\n\n/*** Single tree node row used within `TreeView`. */\nexport const TreeItem = withZoraThemeScope(TreeItemInner);\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"TreeItemRow.d.ts","sourceRoot":"","sources":["../../../../../../src/features/tree-view/adapters/inbound/web-artifact/TreeItemRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEpE,gGAAgG;AAChG,wBAAgB,WAAW,CAAC,GAAG,SAAS,MAAM,EAAE,KAAK,EAAE,gBAAgB,CAAC,GAAG,CAAC,qBAwC3E;AAED,UAAU,gBAAgB,CAAC,GAAG,SAAS,MAAM;IAC3C,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,kBAAkB,EAAE,SAAS,GAAG,QAAQ,CAAC;IAClD,QAAQ,CAAC,WAAW,EAAE,SAAS,GAAG,EAAE,CAAC;IACrC,QAAQ,CAAC,WAAW,EAAE,SAAS,GAAG,EAAE,CAAC;IACrC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IAC/D,QAAQ,CAAC,cAAc,EAAE,CAAC,EAAE,EAAE,GAAG,KAAK,IAAI,CAAC;IAC3C,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;CAC5E"}
1
+ {"version":3,"file":"TreeItemRow.d.ts","sourceRoot":"","sources":["../../../../../../src/features/tree-view/adapters/inbound/web-artifact/TreeItemRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEpE,gGAAgG;AAChG,wBAAgB,WAAW,CAAC,GAAG,SAAS,MAAM,EAAE,KAAK,EAAE,gBAAgB,CAAC,GAAG,CAAC,qBA8C3E;AAED,UAAU,gBAAgB,CAAC,GAAG,SAAS,MAAM;IAC3C,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,kBAAkB,EAAE,SAAS,GAAG,QAAQ,CAAC;IAClD,QAAQ,CAAC,WAAW,EAAE,SAAS,GAAG,EAAE,CAAC;IACrC,QAAQ,CAAC,WAAW,EAAE,SAAS,GAAG,EAAE,CAAC;IACrC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IAC/D,QAAQ,CAAC,cAAc,EAAE,CAAC,EAAE,EAAE,GAAG,KAAK,IAAI,CAAC;IAC3C,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;CAC5E"}
@@ -13,7 +13,7 @@ export function TreeItemRow(props) {
13
13
  selected,
14
14
  expanded,
15
15
  hasChildren,
16
- }) ?? <TreeItemDefaultContent node={node} showIcon={props.expansionIndicator === 'chevron'}/>;
16
+ }) ?? (<TreeItemDefaultContent expanded={expanded} node={node} showIcon={props.expansionIndicator === 'chevron'}/>);
17
17
  return (<>
18
18
  <div aria-disabled={node.disabled === true ? true : undefined} aria-expanded={hasChildren ? expanded : undefined} aria-selected={selected} onPointerUp={(event) => selectNode(event, props)} onClick={(event) => selectNodeFromSyntheticClick(event, props)} onKeyDown={(event) => selectNodeFromKeyboard(event, props)} role="treeitem" tabIndex={node.disabled || props.onSelect === undefined ? undefined : 0} style={createRowStyle(props.depth, selected, node.disabled, props.onSelect !== undefined)}>
19
19
  <TreeItemExpander disabled={node.disabled} expanded={expanded} indicator={props.expansionIndicator} hasChildren={hasChildren} nodeId={node.id} onToggleExpand={props.onToggleExpand}/>
@@ -24,10 +24,11 @@ export function TreeItemRow(props) {
24
24
  </>);
25
25
  }
26
26
  /*** Render the default browser tree-row label, icon, and metadata. */
27
- function TreeItemDefaultContent({ node, showIcon, }) {
27
+ function TreeItemDefaultContent({ expanded, node, showIcon, }) {
28
+ const icon = expanded ? (node.expandedIcon ?? node.icon) : node.icon;
28
29
  return (<>
29
- {!showIcon || node.icon === undefined ? null : (<span aria-hidden="true" style={ICON_STYLE}>
30
- {node.icon}
30
+ {!showIcon || icon === undefined ? null : (<span aria-hidden="true" style={ICON_STYLE}>
31
+ {icon}
31
32
  </span>)}
32
33
  <span style={LABEL_STYLE}>{node.label}</span>
33
34
  {node.meta === undefined ? null : <span style={META_STYLE}>{node.meta}</span>}
@@ -1 +1 @@
1
- {"version":3,"file":"TreeItemRow.js","sourceRoot":"","sources":["../../../../../../src/features/tree-view/adapters/inbound/web-artifact/TreeItemRow.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { SelectionIntent } from '@ankhorage/utility/selection';\nimport React from 'react';\n\nimport { resolveSelectionEventIntent } from '../../../../selection/application/resolveSelectionEventIntent';\nimport { TreeExpansionIndicator } from './TreeExpansionIndicator';\nimport type { TreeItemNode, TreeItemRenderProps } from './TreeView';\n\n/*** Render one recursive browser tree row while keeping selection and expansion independent. */\nexport function TreeItemRow<TId extends string>(props: TreeItemRowProps<TId>) {\n const { node } = props;\n const hasChildren = node.children !== undefined && node.children.length > 0;\n const expanded = props.expandedIds.includes(node.id);\n const selected = props.selectedIds.includes(node.id);\n const content = props.renderItem?.({\n node,\n depth: props.depth,\n selected,\n expanded,\n hasChildren,\n }) ?? <TreeItemDefaultContent node={node} showIcon={props.expansionIndicator === 'chevron'} />;\n\n return (\n <>\n <div\n aria-disabled={node.disabled === true ? true : undefined}\n aria-expanded={hasChildren ? expanded : undefined}\n aria-selected={selected}\n onPointerUp={(event) => selectNode(event, props)}\n onClick={(event) => selectNodeFromSyntheticClick(event, props)}\n onKeyDown={(event) => selectNodeFromKeyboard(event, props)}\n role=\"treeitem\"\n tabIndex={node.disabled || props.onSelect === undefined ? undefined : 0}\n style={createRowStyle(props.depth, selected, node.disabled, props.onSelect !== undefined)}\n >\n <TreeItemExpander\n disabled={node.disabled}\n expanded={expanded}\n indicator={props.expansionIndicator}\n hasChildren={hasChildren}\n nodeId={node.id}\n onToggleExpand={props.onToggleExpand}\n />\n {content}\n <TreeItemActions actions={node.actions} />\n </div>\n {hasChildren && expanded ? <TreeItemChildren {...props} /> : null}\n </>\n );\n}\n\ninterface TreeItemRowProps<TId extends string> {\n readonly node: TreeItemNode<TId>;\n readonly depth: number;\n readonly expansionIndicator: 'chevron' | 'folder';\n readonly selectedIds: readonly TId[];\n readonly expandedIds: readonly TId[];\n readonly onSelect?: (id: TId, intent: SelectionIntent) => void;\n readonly onToggleExpand: (id: TId) => void;\n readonly renderItem?: (props: TreeItemRenderProps<TId>) => React.ReactNode;\n}\n\n/*** Render the default browser tree-row label, icon, and metadata. */\nfunction TreeItemDefaultContent<TId extends string>({\n node,\n showIcon,\n}: {\n readonly node: TreeItemNode<TId>;\n readonly showIcon: boolean;\n}) {\n return (\n <>\n {!showIcon || node.icon === undefined ? null : (\n <span aria-hidden=\"true\" style={ICON_STYLE}>\n {node.icon}\n </span>\n )}\n <span style={LABEL_STYLE}>{node.label}</span>\n {node.meta === undefined ? null : <span style={META_STYLE}>{node.meta}</span>}\n </>\n );\n}\n\n/*** Isolate optional row actions so their pointer and keyboard events do not select the tree item. */\nfunction TreeItemActions({ actions }: { readonly actions?: React.ReactNode }) {\n if (actions === undefined) return null;\n return (\n <span\n onClick={(event) => event.stopPropagation()}\n onPointerUp={(event) => event.stopPropagation()}\n onKeyDown={(event) => event.stopPropagation()}\n style={INLINE_STYLE}\n >\n {actions}\n </span>\n );\n}\n\n/*** Render the independent expansion control for a tree row with children. */\nfunction TreeItemExpander<TId extends string>(props: {\n readonly disabled?: boolean;\n readonly expanded: boolean;\n readonly indicator: 'chevron' | 'folder';\n readonly hasChildren: boolean;\n readonly nodeId: TId;\n readonly onToggleExpand: (id: TId) => void;\n}) {\n const indicator = (\n <TreeExpansionIndicator\n expanded={props.expanded}\n hasChildren={props.hasChildren}\n variant={props.indicator}\n />\n );\n if (!props.hasChildren)\n return (\n <span aria-hidden=\"true\" style={EXPANDER_STYLE}>\n {indicator}\n </span>\n );\n return (\n <button\n aria-label={props.expanded ? 'Collapse' : 'Expand'}\n disabled={props.disabled}\n onKeyDown={(event) => event.stopPropagation()}\n onPointerUp={(event) => event.stopPropagation()}\n onClick={(event) => {\n event.stopPropagation();\n props.onToggleExpand(props.nodeId);\n }}\n style={EXPANDER_STYLE}\n type=\"button\"\n >\n {indicator}\n </button>\n );\n}\n\n/*** Render expanded descendants recursively. */\nfunction TreeItemChildren<TId extends string>(props: TreeItemRowProps<TId>) {\n return (\n <div role=\"group\">\n {props.node.children?.map((child) => (\n <TreeItemRow {...props} key={child.id} depth={props.depth + 1} node={child} />\n ))}\n </div>\n );\n}\n\n/*** Select a row from pointer activation when it is interactive. */\nfunction selectNode<TId extends string>(\n event: React.PointerEvent<HTMLDivElement>,\n props: TreeItemRowProps<TId>,\n) {\n if (props.node.disabled) return;\n props.onSelect?.(props.node.id, resolveSelectionEventIntent(event, 'pointer'));\n}\n\n/*** Select a row from assistive or synthetic click activation without duplicating pointer clicks. */\nfunction selectNodeFromSyntheticClick<TId extends string>(\n event: React.MouseEvent<HTMLDivElement>,\n props: TreeItemRowProps<TId>,\n) {\n if (event.detail !== 0 || props.node.disabled) return;\n props.onSelect?.(props.node.id, resolveSelectionEventIntent(event, 'keyboard'));\n}\n\n/*** Select a row from keyboard activation while preserving native navigation keys. */\nfunction selectNodeFromKeyboard<TId extends string>(\n event: React.KeyboardEvent<HTMLDivElement>,\n props: TreeItemRowProps<TId>,\n) {\n if (props.node.disabled || (event.key !== 'Enter' && event.key !== ' ')) return;\n event.preventDefault();\n props.onSelect?.(props.node.id, resolveSelectionEventIntent(event, 'keyboard'));\n}\n\n/*** Resolve browser row presentation from the interaction state. */\nfunction createRowStyle(\n depth: number,\n selected: boolean,\n disabled: boolean | undefined,\n selectable: boolean,\n): React.CSSProperties {\n return {\n ...ROW_STYLE,\n background: selected ? 'color-mix(in srgb, currentColor 10%, transparent)' : 'transparent',\n cursor: disabled ? 'default' : selectable ? 'pointer' : 'inherit',\n opacity: disabled ? 0.5 : 1,\n paddingLeft: depth * 16 + 6,\n };\n}\n\nconst ROW_STYLE = {\n alignItems: 'center',\n borderRadius: 6,\n display: 'flex',\n gap: 6,\n minHeight: 28,\n paddingRight: 4,\n userSelect: 'none',\n} as const satisfies React.CSSProperties;\n\nconst INLINE_STYLE = {\n display: 'inline-flex',\n flexShrink: 0,\n} as const satisfies React.CSSProperties;\n\nconst ICON_STYLE = INLINE_STYLE;\n\nconst LABEL_STYLE = {\n flex: 1,\n minWidth: 0,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n} as const satisfies React.CSSProperties;\n\nconst META_STYLE = {\n flexShrink: 0,\n opacity: 0.65,\n} as const satisfies React.CSSProperties;\n\nconst EXPANDER_STYLE = {\n alignItems: 'center',\n appearance: 'none',\n background: 'transparent',\n border: 0,\n color: 'inherit',\n cursor: 'pointer',\n display: 'inline-flex',\n flexShrink: 0,\n font: 'inherit',\n height: 24,\n justifyContent: 'center',\n padding: 0,\n width: 24,\n} as const satisfies React.CSSProperties;\n"]}
1
+ {"version":3,"file":"TreeItemRow.js","sourceRoot":"","sources":["../../../../../../src/features/tree-view/adapters/inbound/web-artifact/TreeItemRow.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { SelectionIntent } from '@ankhorage/utility/selection';\nimport React from 'react';\n\nimport { resolveSelectionEventIntent } from '../../../../selection/application/resolveSelectionEventIntent';\nimport { TreeExpansionIndicator } from './TreeExpansionIndicator';\nimport type { TreeItemNode, TreeItemRenderProps } from './TreeView';\n\n/*** Render one recursive browser tree row while keeping selection and expansion independent. */\nexport function TreeItemRow<TId extends string>(props: TreeItemRowProps<TId>) {\n const { node } = props;\n const hasChildren = node.children !== undefined && node.children.length > 0;\n const expanded = props.expandedIds.includes(node.id);\n const selected = props.selectedIds.includes(node.id);\n const content = props.renderItem?.({\n node,\n depth: props.depth,\n selected,\n expanded,\n hasChildren,\n }) ?? (\n <TreeItemDefaultContent\n expanded={expanded}\n node={node}\n showIcon={props.expansionIndicator === 'chevron'}\n />\n );\n\n return (\n <>\n <div\n aria-disabled={node.disabled === true ? true : undefined}\n aria-expanded={hasChildren ? expanded : undefined}\n aria-selected={selected}\n onPointerUp={(event) => selectNode(event, props)}\n onClick={(event) => selectNodeFromSyntheticClick(event, props)}\n onKeyDown={(event) => selectNodeFromKeyboard(event, props)}\n role=\"treeitem\"\n tabIndex={node.disabled || props.onSelect === undefined ? undefined : 0}\n style={createRowStyle(props.depth, selected, node.disabled, props.onSelect !== undefined)}\n >\n <TreeItemExpander\n disabled={node.disabled}\n expanded={expanded}\n indicator={props.expansionIndicator}\n hasChildren={hasChildren}\n nodeId={node.id}\n onToggleExpand={props.onToggleExpand}\n />\n {content}\n <TreeItemActions actions={node.actions} />\n </div>\n {hasChildren && expanded ? <TreeItemChildren {...props} /> : null}\n </>\n );\n}\n\ninterface TreeItemRowProps<TId extends string> {\n readonly node: TreeItemNode<TId>;\n readonly depth: number;\n readonly expansionIndicator: 'chevron' | 'folder';\n readonly selectedIds: readonly TId[];\n readonly expandedIds: readonly TId[];\n readonly onSelect?: (id: TId, intent: SelectionIntent) => void;\n readonly onToggleExpand: (id: TId) => void;\n readonly renderItem?: (props: TreeItemRenderProps<TId>) => React.ReactNode;\n}\n\n/*** Render the default browser tree-row label, icon, and metadata. */\nfunction TreeItemDefaultContent<TId extends string>({\n expanded,\n node,\n showIcon,\n}: {\n readonly expanded: boolean;\n readonly node: TreeItemNode<TId>;\n readonly showIcon: boolean;\n}) {\n const icon = expanded ? (node.expandedIcon ?? node.icon) : node.icon;\n return (\n <>\n {!showIcon || icon === undefined ? null : (\n <span aria-hidden=\"true\" style={ICON_STYLE}>\n {icon}\n </span>\n )}\n <span style={LABEL_STYLE}>{node.label}</span>\n {node.meta === undefined ? null : <span style={META_STYLE}>{node.meta}</span>}\n </>\n );\n}\n\n/*** Isolate optional row actions so their pointer and keyboard events do not select the tree item. */\nfunction TreeItemActions({ actions }: { readonly actions?: React.ReactNode }) {\n if (actions === undefined) return null;\n return (\n <span\n onClick={(event) => event.stopPropagation()}\n onPointerUp={(event) => event.stopPropagation()}\n onKeyDown={(event) => event.stopPropagation()}\n style={INLINE_STYLE}\n >\n {actions}\n </span>\n );\n}\n\n/*** Render the independent expansion control for a tree row with children. */\nfunction TreeItemExpander<TId extends string>(props: {\n readonly disabled?: boolean;\n readonly expanded: boolean;\n readonly indicator: 'chevron' | 'folder';\n readonly hasChildren: boolean;\n readonly nodeId: TId;\n readonly onToggleExpand: (id: TId) => void;\n}) {\n const indicator = (\n <TreeExpansionIndicator\n expanded={props.expanded}\n hasChildren={props.hasChildren}\n variant={props.indicator}\n />\n );\n if (!props.hasChildren)\n return (\n <span aria-hidden=\"true\" style={EXPANDER_STYLE}>\n {indicator}\n </span>\n );\n return (\n <button\n aria-label={props.expanded ? 'Collapse' : 'Expand'}\n disabled={props.disabled}\n onKeyDown={(event) => event.stopPropagation()}\n onPointerUp={(event) => event.stopPropagation()}\n onClick={(event) => {\n event.stopPropagation();\n props.onToggleExpand(props.nodeId);\n }}\n style={EXPANDER_STYLE}\n type=\"button\"\n >\n {indicator}\n </button>\n );\n}\n\n/*** Render expanded descendants recursively. */\nfunction TreeItemChildren<TId extends string>(props: TreeItemRowProps<TId>) {\n return (\n <div role=\"group\">\n {props.node.children?.map((child) => (\n <TreeItemRow {...props} key={child.id} depth={props.depth + 1} node={child} />\n ))}\n </div>\n );\n}\n\n/*** Select a row from pointer activation when it is interactive. */\nfunction selectNode<TId extends string>(\n event: React.PointerEvent<HTMLDivElement>,\n props: TreeItemRowProps<TId>,\n) {\n if (props.node.disabled) return;\n props.onSelect?.(props.node.id, resolveSelectionEventIntent(event, 'pointer'));\n}\n\n/*** Select a row from assistive or synthetic click activation without duplicating pointer clicks. */\nfunction selectNodeFromSyntheticClick<TId extends string>(\n event: React.MouseEvent<HTMLDivElement>,\n props: TreeItemRowProps<TId>,\n) {\n if (event.detail !== 0 || props.node.disabled) return;\n props.onSelect?.(props.node.id, resolveSelectionEventIntent(event, 'keyboard'));\n}\n\n/*** Select a row from keyboard activation while preserving native navigation keys. */\nfunction selectNodeFromKeyboard<TId extends string>(\n event: React.KeyboardEvent<HTMLDivElement>,\n props: TreeItemRowProps<TId>,\n) {\n if (props.node.disabled || (event.key !== 'Enter' && event.key !== ' ')) return;\n event.preventDefault();\n props.onSelect?.(props.node.id, resolveSelectionEventIntent(event, 'keyboard'));\n}\n\n/*** Resolve browser row presentation from the interaction state. */\nfunction createRowStyle(\n depth: number,\n selected: boolean,\n disabled: boolean | undefined,\n selectable: boolean,\n): React.CSSProperties {\n return {\n ...ROW_STYLE,\n background: selected ? 'color-mix(in srgb, currentColor 10%, transparent)' : 'transparent',\n cursor: disabled ? 'default' : selectable ? 'pointer' : 'inherit',\n opacity: disabled ? 0.5 : 1,\n paddingLeft: depth * 16 + 6,\n };\n}\n\nconst ROW_STYLE = {\n alignItems: 'center',\n borderRadius: 6,\n display: 'flex',\n gap: 6,\n minHeight: 28,\n paddingRight: 4,\n userSelect: 'none',\n} as const satisfies React.CSSProperties;\n\nconst INLINE_STYLE = {\n display: 'inline-flex',\n flexShrink: 0,\n} as const satisfies React.CSSProperties;\n\nconst ICON_STYLE = INLINE_STYLE;\n\nconst LABEL_STYLE = {\n flex: 1,\n minWidth: 0,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n} as const satisfies React.CSSProperties;\n\nconst META_STYLE = {\n flexShrink: 0,\n opacity: 0.65,\n} as const satisfies React.CSSProperties;\n\nconst EXPANDER_STYLE = {\n alignItems: 'center',\n appearance: 'none',\n background: 'transparent',\n border: 0,\n color: 'inherit',\n cursor: 'pointer',\n display: 'inline-flex',\n flexShrink: 0,\n font: 'inherit',\n height: 24,\n justifyContent: 'center',\n padding: 0,\n width: 24,\n} as const satisfies React.CSSProperties;\n"]}
@@ -4,6 +4,7 @@ export interface TreeItemNode<TId extends string = string> {
4
4
  readonly id: TId;
5
5
  readonly label: React.ReactNode;
6
6
  readonly icon?: React.ReactNode;
7
+ readonly expandedIcon?: React.ReactNode;
7
8
  readonly children?: readonly TreeItemNode<TId>[];
8
9
  readonly disabled?: boolean;
9
10
  readonly meta?: React.ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"TreeView.d.ts","sourceRoot":"","sources":["../../../../../../src/features/tree-view/adapters/inbound/web-artifact/TreeView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,MAAM,WAAW,YAAY,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM;IACvD,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC;IACjB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;IACjD,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACpC;AAED,MAAM,WAAW,mBAAmB,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM;IAC9D,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,aAAa,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM;IACxD,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;IAC7C,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,GAAG,EAAE,CAAC;IACtC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,GAAG,EAAE,CAAC;IACtC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,GAAG,EAAE,CAAC;IAC7C,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IAC/D,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,SAAS,GAAG,EAAE,KAAK,IAAI,CAAC;IAC1D,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;IAC3E,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IACnD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM,EAAE,EACpD,KAAK,EACL,WAAgB,EAChB,WAAW,EAAE,qBAAqB,EAClC,kBAAkB,EAClB,QAAQ,EACR,gBAAgB,EAChB,UAAU,EACV,kBAA6B,EAC7B,SAAS,EACT,KAAK,EACL,SAAkB,GACnB,EAAE,aAAa,CAAC,GAAG,CAAC,qBAyCpB"}
1
+ {"version":3,"file":"TreeView.d.ts","sourceRoot":"","sources":["../../../../../../src/features/tree-view/adapters/inbound/web-artifact/TreeView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,MAAM,WAAW,YAAY,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM;IACvD,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC;IACjB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,QAAQ,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;IACjD,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACpC;AAED,MAAM,WAAW,mBAAmB,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM;IAC9D,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,aAAa,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM;IACxD,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;IAC7C,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,GAAG,EAAE,CAAC;IACtC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,GAAG,EAAE,CAAC;IACtC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,GAAG,EAAE,CAAC;IAC7C,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IAC/D,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,SAAS,GAAG,EAAE,KAAK,IAAI,CAAC;IAC1D,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;IAC3E,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IACnD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACrC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM,EAAE,EACpD,KAAK,EACL,WAAgB,EAChB,WAAW,EAAE,qBAAqB,EAClC,kBAAkB,EAClB,QAAQ,EACR,gBAAgB,EAChB,UAAU,EACV,kBAA6B,EAC7B,SAAS,EACT,KAAK,EACL,SAAkB,GACnB,EAAE,aAAa,CAAC,GAAG,CAAC,qBAyCpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"TreeView.js","sourceRoot":"","sources":["../../../../../../src/features/tree-view/adapters/inbound/web-artifact/TreeView.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { SelectionIntent } from '@ankhorage/utility/selection';\nimport React from 'react';\n\nimport { toggleExpandedIds } from '../../../utils/toggleExpandedIds';\nimport { TreeItemRow } from './TreeItemRow';\n\nexport interface TreeItemNode<TId extends string = string> {\n readonly id: TId;\n readonly label: React.ReactNode;\n readonly icon?: React.ReactNode;\n readonly children?: readonly TreeItemNode<TId>[];\n readonly disabled?: boolean;\n readonly meta?: React.ReactNode;\n readonly actions?: React.ReactNode;\n}\n\nexport interface TreeItemRenderProps<TId extends string = string> {\n readonly node: TreeItemNode<TId>;\n readonly depth: number;\n readonly selected: boolean;\n readonly expanded: boolean;\n readonly hasChildren: boolean;\n}\n\nexport interface TreeViewProps<TId extends string = string> {\n readonly nodes: readonly TreeItemNode<TId>[];\n readonly selectedIds?: readonly TId[];\n readonly expandedIds?: readonly TId[];\n readonly defaultExpandedIds?: readonly TId[];\n readonly onSelect?: (id: TId, intent: SelectionIntent) => void;\n readonly onExpandedChange?: (ids: readonly TId[]) => void;\n readonly renderItem?: (props: TreeItemRenderProps<TId>) => React.ReactNode;\n readonly expansionIndicator?: 'chevron' | 'folder';\n readonly className?: string;\n readonly style?: React.CSSProperties;\n readonly ariaLabel?: string;\n}\n\n/***\n * Render the standalone browser TreeView artifact without React Native runtime dependencies.\n * expansionIndicator Use `chevron` beside custom node icons, or `folder` (default) for\n * built-in folder/file indicators. Expansion is leading and independent from row selection.\n */\nexport function TreeView<TId extends string = string>({\n nodes,\n selectedIds = [],\n expandedIds: controlledExpandedIds,\n defaultExpandedIds,\n onSelect,\n onExpandedChange,\n renderItem,\n expansionIndicator = 'folder',\n className,\n style,\n ariaLabel = 'Tree',\n}: TreeViewProps<TId>) {\n const [internalExpandedIds, setInternalExpandedIds] = React.useState<readonly TId[]>(\n defaultExpandedIds ?? [],\n );\n const rootRef = React.useRef<HTMLDivElement | null>(null);\n const isControlled = controlledExpandedIds !== undefined;\n const expandedIds = isControlled ? controlledExpandedIds : internalExpandedIds;\n const handleToggleExpand = React.useCallback(\n (id: TId) => {\n const nextExpandedIds = toggleExpandedIds(expandedIds, id);\n if (!isControlled) setInternalExpandedIds(nextExpandedIds);\n onExpandedChange?.(nextExpandedIds);\n },\n [expandedIds, isControlled, onExpandedChange],\n );\n useSelectedTreeItemReveal(rootRef, selectedIds, expandedIds);\n\n return (\n <div\n ref={rootRef}\n aria-label={ariaLabel}\n aria-multiselectable=\"true\"\n className={className}\n role=\"tree\"\n style={{ ...TREE_STYLE, ...style }}\n >\n {nodes.map((node) => (\n <TreeItemRow\n key={node.id}\n depth={0}\n expandedIds={expandedIds}\n expansionIndicator={expansionIndicator}\n node={node}\n onSelect={onSelect}\n onToggleExpand={handleToggleExpand}\n renderItem={renderItem}\n selectedIds={selectedIds}\n />\n ))}\n </div>\n );\n}\n\n/*** Reveal the first controlled selection after it is rendered without changing expansion ownership. */\nfunction useSelectedTreeItemReveal<TId extends string>(\n rootRef: React.RefObject<HTMLDivElement | null>,\n selectedIds: readonly TId[],\n expandedIds: readonly TId[],\n) {\n React.useEffect(() => {\n if (selectedIds.length === 0) return;\n const root = rootRef.current as unknown as TreeViewQueryableElement | null;\n root\n ?.querySelector('[role=\"treeitem\"][aria-selected=\"true\"]')\n ?.scrollIntoView({ block: 'nearest', inline: 'nearest' });\n }, [expandedIds, rootRef, selectedIds]);\n}\n\nconst TREE_STYLE = {\n display: 'flex',\n flexDirection: 'column',\n minWidth: 0,\n} as const satisfies React.CSSProperties;\n\ninterface TreeViewQueryableElement {\n querySelector(selector: string): TreeViewRevealTarget | null;\n}\n\ninterface TreeViewRevealTarget {\n scrollIntoView(options: { readonly block: 'nearest'; readonly inline: 'nearest' }): void;\n}\n"]}
1
+ {"version":3,"file":"TreeView.js","sourceRoot":"","sources":["../../../../../../src/features/tree-view/adapters/inbound/web-artifact/TreeView.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { SelectionIntent } from '@ankhorage/utility/selection';\nimport React from 'react';\n\nimport { toggleExpandedIds } from '../../../utils/toggleExpandedIds';\nimport { TreeItemRow } from './TreeItemRow';\n\nexport interface TreeItemNode<TId extends string = string> {\n readonly id: TId;\n readonly label: React.ReactNode;\n readonly icon?: React.ReactNode;\n readonly expandedIcon?: React.ReactNode;\n readonly children?: readonly TreeItemNode<TId>[];\n readonly disabled?: boolean;\n readonly meta?: React.ReactNode;\n readonly actions?: React.ReactNode;\n}\n\nexport interface TreeItemRenderProps<TId extends string = string> {\n readonly node: TreeItemNode<TId>;\n readonly depth: number;\n readonly selected: boolean;\n readonly expanded: boolean;\n readonly hasChildren: boolean;\n}\n\nexport interface TreeViewProps<TId extends string = string> {\n readonly nodes: readonly TreeItemNode<TId>[];\n readonly selectedIds?: readonly TId[];\n readonly expandedIds?: readonly TId[];\n readonly defaultExpandedIds?: readonly TId[];\n readonly onSelect?: (id: TId, intent: SelectionIntent) => void;\n readonly onExpandedChange?: (ids: readonly TId[]) => void;\n readonly renderItem?: (props: TreeItemRenderProps<TId>) => React.ReactNode;\n readonly expansionIndicator?: 'chevron' | 'folder';\n readonly className?: string;\n readonly style?: React.CSSProperties;\n readonly ariaLabel?: string;\n}\n\n/***\n * Render the standalone browser TreeView artifact without React Native runtime dependencies.\n * expansionIndicator Use `chevron` beside custom node icons, or `folder` (default) for\n * built-in folder/file indicators. Expansion is leading and independent from row selection.\n */\nexport function TreeView<TId extends string = string>({\n nodes,\n selectedIds = [],\n expandedIds: controlledExpandedIds,\n defaultExpandedIds,\n onSelect,\n onExpandedChange,\n renderItem,\n expansionIndicator = 'folder',\n className,\n style,\n ariaLabel = 'Tree',\n}: TreeViewProps<TId>) {\n const [internalExpandedIds, setInternalExpandedIds] = React.useState<readonly TId[]>(\n defaultExpandedIds ?? [],\n );\n const rootRef = React.useRef<HTMLDivElement | null>(null);\n const isControlled = controlledExpandedIds !== undefined;\n const expandedIds = isControlled ? controlledExpandedIds : internalExpandedIds;\n const handleToggleExpand = React.useCallback(\n (id: TId) => {\n const nextExpandedIds = toggleExpandedIds(expandedIds, id);\n if (!isControlled) setInternalExpandedIds(nextExpandedIds);\n onExpandedChange?.(nextExpandedIds);\n },\n [expandedIds, isControlled, onExpandedChange],\n );\n useSelectedTreeItemReveal(rootRef, selectedIds, expandedIds);\n\n return (\n <div\n ref={rootRef}\n aria-label={ariaLabel}\n aria-multiselectable=\"true\"\n className={className}\n role=\"tree\"\n style={{ ...TREE_STYLE, ...style }}\n >\n {nodes.map((node) => (\n <TreeItemRow\n key={node.id}\n depth={0}\n expandedIds={expandedIds}\n expansionIndicator={expansionIndicator}\n node={node}\n onSelect={onSelect}\n onToggleExpand={handleToggleExpand}\n renderItem={renderItem}\n selectedIds={selectedIds}\n />\n ))}\n </div>\n );\n}\n\n/*** Reveal the first controlled selection after it is rendered without changing expansion ownership. */\nfunction useSelectedTreeItemReveal<TId extends string>(\n rootRef: React.RefObject<HTMLDivElement | null>,\n selectedIds: readonly TId[],\n expandedIds: readonly TId[],\n) {\n React.useEffect(() => {\n if (selectedIds.length === 0) return;\n const root = rootRef.current as unknown as TreeViewQueryableElement | null;\n root\n ?.querySelector('[role=\"treeitem\"][aria-selected=\"true\"]')\n ?.scrollIntoView({ block: 'nearest', inline: 'nearest' });\n }, [expandedIds, rootRef, selectedIds]);\n}\n\nconst TREE_STYLE = {\n display: 'flex',\n flexDirection: 'column',\n minWidth: 0,\n} as const satisfies React.CSSProperties;\n\ninterface TreeViewQueryableElement {\n querySelector(selector: string): TreeViewRevealTarget | null;\n}\n\ninterface TreeViewRevealTarget {\n scrollIntoView(options: { readonly block: 'nearest'; readonly inline: 'nearest' }): void;\n}\n"]}
package/dist/index.d.ts CHANGED
@@ -2,8 +2,8 @@ export { Accordion, AccordionItem, type AccordionItemProps, type AccordionMode,
2
2
  export { ActivityIndicator, type ActivityIndicatorProps, } from './features/activity-indicator/public';
3
3
  export type { AppBarMode, AppBarOverflowMenu, AppBarProps } from './features/app-bar/public';
4
4
  export { AppBar } from './features/app-bar/public';
5
- export type { AuthFormBaseProps, AuthIdentifierKind, ForgotPasswordFormProps, ForgotPasswordFormValues, OAuthProviderButtonProps, OAuthProviderIconSpec, OAuthProviderItem, OAuthProviderListLayout, OAuthProviderListProps, OtpFormProps, OtpFormValues, SignInFormProps, SignInFormValues, SignUpFormField, SignUpFormProps, SignUpFormValues, } from './features/auth/public';
6
- export { DEFAULT_OAUTH_PROVIDER_ICONS, ForgotPasswordForm, OAuthProviderButton, OAuthProviderList, OtpForm, resolveOAuthProviderIcon, resolveOAuthProviderLabel, SignInForm, SignUpForm, } from './features/auth/public';
5
+ export type { AuthFormBaseProps, AuthIdentifierKind, AuthScreenMode, AuthScreenProps, ForgotPasswordFormProps, ForgotPasswordFormValues, OAuthProviderButtonProps, OAuthProviderIconSpec, OAuthProviderItem, OAuthProviderListLayout, OAuthProviderListProps, OtpFormProps, OtpFormValues, SignInFormProps, SignInFormValues, SignUpFormField, SignUpFormProps, SignUpFormValues, } from './features/auth/public';
6
+ export { AuthScreen, DEFAULT_OAUTH_PROVIDER_ICONS, ForgotPasswordForm, OAuthProviderButton, OAuthProviderList, OtpForm, resolveOAuthProviderIcon, resolveOAuthProviderLabel, SignInForm, SignUpForm, } from './features/auth/public';
7
7
  export type { AvatarProps, AvatarShape, AvatarSize } from './features/avatar/public';
8
8
  export type { AvatarGroupItem, AvatarGroupProps } from './features/avatar/public';
9
9
  export { Avatar, resolveAvatarInitials } from './features/avatar/public';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  export { Accordion, AccordionItem, } from './features/accordion/public';
2
2
  export { ActivityIndicator, } from './features/activity-indicator/public';
3
3
  export { AppBar } from './features/app-bar/public';
4
- export { DEFAULT_OAUTH_PROVIDER_ICONS, ForgotPasswordForm, OAuthProviderButton, OAuthProviderList, OtpForm, resolveOAuthProviderIcon, resolveOAuthProviderLabel, SignInForm, SignUpForm, } from './features/auth/public';
4
+ export { AuthScreen, DEFAULT_OAUTH_PROVIDER_ICONS, ForgotPasswordForm, OAuthProviderButton, OAuthProviderList, OtpForm, resolveOAuthProviderIcon, resolveOAuthProviderLabel, SignInForm, SignUpForm, } from './features/auth/public';
5
5
  export { Avatar, resolveAvatarInitials } from './features/avatar/public';
6
6
  export { AvatarGroup } from './features/avatar/public';
7
7
  export { Badge } from './features/badge/public';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,aAAa,GAMd,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,iBAAiB,GAElB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAmBnD,OAAO,EACL,4BAA4B,EAC5B,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,OAAO,EACP,wBAAwB,EACxB,yBAAyB,EACzB,UAAU,EACV,UAAU,GACX,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAGL,WAAW,GAEZ,MAAM,+BAA+B,CAAC;AAQvC,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAYtD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAUrD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAoBrE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AACnG,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,2BAA2B,EAC3B,4BAA4B,EAC5B,eAAe,EACf,aAAa,EACb,aAAa,EACb,aAAa,EACb,eAAe,EACf,OAAO,GACR,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAKnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAUvE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAW7D,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EACL,UAAU,GAGX,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,MAAM,EAAoB,MAAM,0BAA0B,CAAC;AACpE,OAAO,EACL,UAAU,GAGX,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,QAAQ,EACR,aAAa,GAId,MAAM,iCAAiC,CAAC;AAgBzC,OAAO,EACL,KAAK,EACL,IAAI,EACJ,WAAW,EACX,SAAS,EACT,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,aAAa,GACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,KAAK,EACL,UAAU,GAIX,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,WAAW,EAAyB,MAAM,qCAAqC,CAAC;AACzF,OAAO,EAAE,MAAM,EAAuC,MAAM,+BAA+B,CAAC;AAC5F,OAAO,EAAE,MAAM,EAAoB,MAAM,+BAA+B,CAAC;AACzE,OAAO,EACL,SAAS,GAGV,MAAM,mCAAmC,CAAC;AAc3C,OAAO,EACL,IAAI,EACJ,UAAU,EACV,SAAS,EACT,aAAa,EACb,oBAAoB,EACpB,WAAW,GACZ,MAAM,wBAAwB,CAAC;AAWhC,OAAO,EAAE,QAAQ,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EACL,IAAI,GAML,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAChD,OAAO,EACL,oBAAoB,GAGrB,MAAM,0CAA0C,CAAC;AASlD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAc7F,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,cAAc,EAA4B,MAAM,mCAAmC,CAAC;AAC7F,OAAO,EAAE,UAAU,EAAwB,MAAM,8BAA8B,CAAC;AAEhF,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EACL,WAAW,GAIZ,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,QAAQ,EAER,YAAY,GAEb,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,MAAM,EAAoB,MAAM,0BAA0B,CAAC;AAcpE,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AA4BhF,OAAO,EACL,4BAA4B,EAC5B,mBAAmB,EACnB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAQrE,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAClG,OAAO,EACL,aAAa,EAEb,aAAa,GAEd,MAAM,2BAA2B,CAAC;AAUnC,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC9F,OAAO,EACL,QAAQ,EACR,YAAY,EAGZ,YAAY,EAKZ,YAAY,GAEb,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAyBpD,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,6BAA6B,EAC7B,yBAAyB,EACzB,uBAAuB,EACvB,WAAW,EACX,kBAAkB,EAClB,sBAAsB,EACtB,aAAa,EACb,iBAAiB,GAClB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,GAAG,EACH,OAAO,EAEP,QAAQ,EAGR,IAAI,GAEL,MAAM,wBAAwB,CAAC;AAOhC,OAAO,EACL,WAAW,EACX,aAAa,EACb,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,6BAA6B,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,OAAO,EACL,UAAU,GAGX,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAQtD,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAE,OAAO,EAAqB,MAAM,2BAA2B,CAAC;AAEvE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAkBjE,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AASpD,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC","sourcesContent":["export {\n Accordion,\n AccordionItem,\n type AccordionItemProps,\n type AccordionMode,\n type AccordionMultipleProps,\n type AccordionProps,\n type AccordionSingleProps,\n} from './features/accordion/public';\nexport {\n ActivityIndicator,\n type ActivityIndicatorProps,\n} from './features/activity-indicator/public';\nexport type { AppBarMode, AppBarOverflowMenu, AppBarProps } from './features/app-bar/public';\nexport { AppBar } from './features/app-bar/public';\nexport type {\n AuthFormBaseProps,\n AuthIdentifierKind,\n ForgotPasswordFormProps,\n ForgotPasswordFormValues,\n OAuthProviderButtonProps,\n OAuthProviderIconSpec,\n OAuthProviderItem,\n OAuthProviderListLayout,\n OAuthProviderListProps,\n OtpFormProps,\n OtpFormValues,\n SignInFormProps,\n SignInFormValues,\n SignUpFormField,\n SignUpFormProps,\n SignUpFormValues,\n} from './features/auth/public';\nexport {\n DEFAULT_OAUTH_PROVIDER_ICONS,\n ForgotPasswordForm,\n OAuthProviderButton,\n OAuthProviderList,\n OtpForm,\n resolveOAuthProviderIcon,\n resolveOAuthProviderLabel,\n SignInForm,\n SignUpForm,\n} from './features/auth/public';\nexport type { AvatarProps, AvatarShape, AvatarSize } from './features/avatar/public';\nexport type { AvatarGroupItem, AvatarGroupProps } from './features/avatar/public';\nexport { Avatar, resolveAvatarInitials } from './features/avatar/public';\nexport { AvatarGroup } from './features/avatar/public';\nexport type { BadgeProps } from './features/badge/public';\nexport { Badge } from './features/badge/public';\nexport type { BottomSheetProps } from './features/bottom-sheet/public';\nexport { BottomSheet } from './features/bottom-sheet/public';\nexport {\n type BreadcrumbItem,\n type BreadcrumbPressEvent,\n Breadcrumbs,\n type BreadcrumbsProps,\n} from './features/breadcrumbs/public';\nexport type { ButtonProps } from './features/button/public';\nexport type {\n ButtonGroupAlign,\n ButtonGroupOrientation,\n ButtonGroupProps,\n} from './features/button/public';\nexport type { IconButtonProps } from './features/button/public';\nexport { Button } from './features/button/public';\nexport { ButtonGroup } from './features/button/public';\nexport { IconButton } from './features/button/public';\nexport type { CardProps } from './features/card/public';\nexport type { MediaCardImageProps, MediaCardProps } from './features/card/public';\nexport type { MetricCardProps } from './features/card/public';\nexport type {\n PostAction,\n PostAuthor,\n PostAuthorAvatar,\n PostCardMedia,\n PostCardProps,\n} from './features/card/public';\nexport type { ProductCardProps } from './features/card/public';\nexport { Card } from './features/card/public';\nexport { MediaCard } from './features/card/public';\nexport { MetricCard } from './features/card/public';\nexport { PostCard } from './features/card/public';\nexport { ProductCard } from './features/card/public';\nexport type {\n ChatListAvatar,\n ChatListItemProps,\n MessageBubbleAuthor,\n MessageBubbleAvatar,\n MessageBubbleDirection,\n MessageBubbleProps,\n MessageBubbleStatus,\n} from './features/chat/public';\nexport { ChatListItem, MessageBubble } from './features/chat/public';\nexport type {\n ChessBoardColorOverrides,\n ChessBoardColorScheme,\n ChessBoardOrientation,\n ChessBoardProps,\n ChessMoveAttempt,\n ChessMoveResult,\n ChessPieceCode,\n ChessPieceRenderContext,\n ChessPieceRenderer,\n ChessPieceState,\n ChessPromotionPiece,\n ChessSquareId,\n OpeningBookColorOverrides,\n OpeningBookColorScheme,\n OpeningBookMove,\n OpeningBookProps,\n} from './features/chess/public';\nexport type { ChessColorThemeShape } from './features/chess/public';\nexport { ChessBoard, chessBoardMeta, OpeningBook, openingBookMeta } from './features/chess/public';\nexport {\n chessSquares,\n createBoardSquares,\n createChessBoardColorScheme,\n createOpeningBookColorScheme,\n getLegalTargets,\n getSquareFile,\n getSquareRank,\n isLightSquare,\n readChessPieces,\n tryMove,\n} from './features/chess/public';\nexport type { ChipProps } from './features/chip/public';\nexport type { ChipGroupItem, ChipGroupProps } from './features/chip/public';\nexport { Chip } from './features/chip/public';\nexport { ChipGroup } from './features/chip/public';\nexport type {\n CollectionEditorProps,\n CollectionEditorRenderItemProps,\n} from './features/collection-editor/public';\nexport { CollectionEditor } from './features/collection-editor/public';\nexport type {\n ContentRailControlPressEvent,\n ContentRailDirection,\n ContentRailItemSize,\n ContentRailMotion,\n ContentRailProps,\n ContentRailSpacing,\n ContentRailVisibleRangeChangeEvent,\n} from './features/content-rail/public';\nexport { ContentRail } from './features/content-rail/public';\nexport type {\n DataTableCellContext,\n DataTableColumn,\n DataTableColumnAlign,\n DataTableDensity,\n DataTableProps,\n DataTableRowAction,\n DataTableSortDirection,\n DataTableSortState,\n} from './features/data-table/public';\nexport { DataTable } from './features/data-table/public';\nexport {\n DatePicker,\n type DatePickerProps,\n type DatePickerValue,\n} from './features/date-picker/public';\nexport { Dialog, type DialogProps } from './features/dialog/public';\nexport {\n EmptyState,\n type EmptyStateAction,\n type EmptyStateProps,\n} from './features/empty-state/public';\nexport {\n Checkbox,\n CheckboxGroup,\n type CheckboxGroupOption,\n type CheckboxGroupProps,\n type CheckboxProps,\n} from './features/form/checkbox/public';\nexport type {\n FieldProps,\n FormActionsProps,\n FormErrorProps,\n FormErrors,\n FormFieldConfig,\n FormFieldInputType,\n FormProps,\n FormValidationErrors,\n FormValidationResult,\n FormValues,\n UseFormControllerOptions,\n UseFormControllerResult,\n ValidationRule,\n} from './features/form/public';\nexport {\n Field,\n Form,\n FormActions,\n FormError,\n hasRequiredRule,\n useFormController,\n validateField,\n validateFields,\n validateValue,\n} from './features/form/public';\nexport {\n Radio,\n RadioGroup,\n type RadioGroupOption,\n type RadioGroupProps,\n type RadioProps,\n} from './features/form/radio/public';\nexport { SearchInput, type SearchInputProps } from './features/form/search-input/public';\nexport { Select, type SelectOption, type SelectProps } from './features/form/select/public';\nexport { Switch, type SwitchProps } from './features/form/switch/public';\nexport {\n TextInput,\n type TextInputProps,\n type TextInputTrailingAction,\n} from './features/form/text-input/public';\nexport type {\n GameEntityEasing,\n GameEntityMotionProps,\n GameEntityProps,\n GameFieldProps,\n GameInputZoneProps,\n GameKeyboardBinding,\n GameMeasurementProbeProps,\n GameOverlayPlacement,\n GameOverlayProps,\n GamePointerEvents,\n GameProps,\n} from './features/game/public';\nexport {\n Game,\n GameEntity,\n GameField,\n GameInputZone,\n GameMeasurementProbe,\n GameOverlay,\n} from './features/game/public';\nexport type {\n GradientColor,\n GradientColors,\n GradientLocations,\n GradientPoint,\n GradientProps,\n GradientRenderer,\n GradientRendererProps,\n GradientRendererProviderProps,\n} from './features/gradient/public';\nexport { Gradient, GradientRendererProvider } from './features/gradient/public';\nexport {\n Hero,\n type HeroAction,\n type HeroAlign,\n type HeroLayout,\n type HeroProps,\n type HeroTone,\n} from './features/hero/public';\nexport type { IconProps } from './features/icon/public';\nexport { Icon } from './features/icon/public';\nexport type { ImageFit, ImageProps, SurfaceImageSource } from './features/image/public';\nexport { Image } from './features/image/public';\nexport {\n KeyboardAvoidingView,\n type KeyboardAvoidingViewBehavior,\n type KeyboardAvoidingViewProps,\n} from './features/keyboard-avoiding-view/public';\nexport type {\n AppShellProps,\n DividerProps,\n GridProps,\n ScreenProps,\n ScrollViewProps,\n ViewProps,\n} from './features/layout/public';\nexport { AppShell, Divider, Grid, Screen, ScrollView, View } from './features/layout/public';\nexport type {\n ManifestListProps,\n ManifestListSection,\n ManifestSectionListProps,\n} from './features/list/public';\nexport type {\n ListChildrenProps,\n ListItemProps,\n ListItemsProps,\n ListItemVariant,\n ListProps,\n ListSectionProps,\n} from './features/list/public';\nexport { FlatList, SectionList } from './features/list/public';\nexport { List, ListItem, ListSection } from './features/list/public';\nexport { MissingElement, type MissingElementProps } from './features/missing-element/public';\nexport { Pagination, type PaginationProps } from './features/pagination/public';\nexport type { PaletteItemProps } from './features/palette-item/public';\nexport { PaletteItem } from './features/palette-item/public';\nexport {\n PopoverMenu,\n type PopoverMenuAction,\n type PopoverMenuActionIntent,\n type PopoverMenuProps,\n} from './features/popover-menu/public';\nexport {\n Progress,\n type ProgressProps,\n ProgressRing,\n type ProgressRingProps,\n} from './features/progress/public';\nexport { Rating, type RatingProps } from './features/rating/public';\nexport type {\n ReaderColorScheme,\n ReaderDocumentFormat,\n ReaderErrorCode,\n ReaderErrorEvent,\n ReaderExternalLinkEvent,\n ReaderLineHeight,\n ReaderLocationChangeEvent,\n ReaderNavigationTrigger,\n ReaderResolvedSource,\n ReaderStatus,\n ReaderSurfaceProps,\n} from './features/reader/public';\nexport { ReaderSurface, resolveReaderProgress } from './features/reader/public';\nexport type {\n ZoraBindableComponentType,\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 ZoraThemeRecipeBooleanFieldMeta,\n ZoraThemeRecipeChoiceFieldMeta,\n ZoraThemeRecipeFieldMeta,\n ZoraThemeRecipeKind,\n ZoraThemeRecipeMeta,\n ZoraThemeRecipeMetaRegistry,\n ZoraThemeRecipeTokenFieldMeta,\n ZoraThemeTokenFamily,\n} from './features/registry';\nexport {\n ZORA_BINDABLE_COMPONENT_META,\n ZORA_COMPONENT_META,\n ZORA_THEME_RECIPE_META,\n ZORA_THEME_TOKEN_FAMILIES,\n} from './features/registry';\nexport { ZORA_COMPONENT_REGISTRY } from './features/registry/public';\nexport type {\n BarcodeScannerViewProps,\n BarcodeScanResult,\n CameraPermissionStatus,\n CameraPermissionViewProps,\n ScanOverlayProps,\n} from './features/scanner/public';\nexport { BarcodeScannerView, CameraPermissionView, ScanOverlay } from './features/scanner/public';\nexport {\n ScreenSection,\n type ScreenSectionProps,\n SectionHeader,\n type SectionHeaderProps,\n} from './features/section/public';\nexport type {\n SelectableItemProps,\n SelectableItemState,\n SelectionIntent,\n SelectionMode,\n SelectionProviderProps,\n SelectionTrigger,\n UseSelectionResult,\n} from './features/selection/public';\nexport { SelectableItem, SelectionProvider, useSelection } from './features/selection/public';\nexport {\n Skeleton,\n SkeletonCard,\n type SkeletonCardProps,\n type SkeletonDimension,\n SkeletonList,\n type SkeletonListProps,\n type SkeletonListVariant,\n type SkeletonProps,\n type SkeletonRadius,\n SkeletonText,\n type SkeletonTextProps,\n} from './features/skeleton/public';\nexport type { SurfaceProps, SurfaceVariant } from './features/surface/public';\nexport { Surface } from './features/surface/public';\nexport type {\n CardBackProps,\n CardHandProps,\n CreatePokerTrainingTableStateOptions,\n CreateTabletopGameSeatsInput,\n PlayingCardProps,\n PlayingCardSuit,\n PlayingCardValue,\n PokerTrainingPlayer,\n PokerTrainingTableProps,\n PokerTrainingTableSize,\n PokerTrainingTableState,\n PokerTrainingTaskTableData,\n TabletopCardSize,\n TabletopColorOverrides,\n TabletopColorScheme,\n TabletopGameParticipantState,\n TabletopGameSeatDefinition,\n TabletopGameSeatPresentation,\n TabletopSeatCount,\n TabletopSeatState,\n TabletopShape,\n TabletopTableProps,\n} from './features/tabletop/public';\nexport {\n CardBack,\n CardHand,\n createPokerTrainingTableState,\n createTabletopColorScheme,\n createTabletopGameSeats,\n PlayingCard,\n PokerTrainingTable,\n pokerTrainingTableMeta,\n TabletopTable,\n tabletopTableMeta,\n} from './features/tabletop/public';\nexport {\n Tab,\n TabList,\n type TabListProps,\n TabPanel,\n type TabPanelProps,\n type TabProps,\n Tabs,\n type TabsProps,\n} from './features/tabs/public';\nexport type {\n ZoraColor,\n ZoraEmphasis,\n ZoraPaletteColor,\n ZoraStatusColor,\n} from './features/theme/colorModel';\nexport {\n ZORA_COLORS,\n ZORA_EMPHASES,\n ZORA_PALETTE_COLORS,\n ZORA_STATUS_COLORS,\n} from './features/theme/colorModel';\nexport * from './features/theme/public';\nexport * from './features/theme/runtime';\nexport {\n TimePicker,\n type TimePickerProps,\n type TimePickerValue,\n} from './features/time-picker/public';\nexport type { TimelineItem, TimelineProps } from './features/timeline/public';\nexport { Timeline } from './features/timeline/public';\nexport type {\n ToastController,\n ToastOptions,\n ToastProps,\n ToastProviderProps,\n ToastStatus,\n} from './features/toast/public';\nexport { Toast, ToastProvider, useToast } from './features/toast/public';\nexport { Toolbar, type ToolbarProps } from './features/toolbar/public';\nexport type { TreeItemNode, TreeItemRenderProps, TreeViewProps } from './features/tree-view/public';\nexport { TreeItem, TreeView } from './features/tree-view/public';\nexport type {\n HeadingAlign,\n HeadingColor,\n HeadingEmphasis,\n HeadingLevel,\n HeadingProps,\n HeadingSize,\n HeadingWeight,\n} from './features/typography/public';\nexport type {\n TextAlign,\n TextColor,\n TextEmphasis,\n TextProps,\n TextVariant,\n TextWeight,\n} from './features/typography/public';\nexport { Heading } from './features/typography/public';\nexport { Text } from './features/typography/public';\nexport type {\n UploadAsset,\n UploadAssetBase,\n UploaderProps,\n UploadProgressContext,\n UploadType,\n ValidateUploadAssetInput,\n} from './features/uploader/public';\nexport { Uploader, validateUploadAsset } from './features/uploader/public';\nexport type { ZoraComponentRegistry } from './types/registry';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["export {\n Accordion,\n AccordionItem,\n type AccordionItemProps,\n type AccordionMode,\n type AccordionMultipleProps,\n type AccordionProps,\n type AccordionSingleProps,\n} from './features/accordion/public';\nexport {\n ActivityIndicator,\n type ActivityIndicatorProps,\n} from './features/activity-indicator/public';\nexport type { AppBarMode, AppBarOverflowMenu, AppBarProps } from './features/app-bar/public';\nexport { AppBar } from './features/app-bar/public';\nexport type {\n AuthFormBaseProps,\n AuthIdentifierKind,\n AuthScreenMode,\n AuthScreenProps,\n ForgotPasswordFormProps,\n ForgotPasswordFormValues,\n OAuthProviderButtonProps,\n OAuthProviderIconSpec,\n OAuthProviderItem,\n OAuthProviderListLayout,\n OAuthProviderListProps,\n OtpFormProps,\n OtpFormValues,\n SignInFormProps,\n SignInFormValues,\n SignUpFormField,\n SignUpFormProps,\n SignUpFormValues,\n} from './features/auth/public';\nexport {\n AuthScreen,\n DEFAULT_OAUTH_PROVIDER_ICONS,\n ForgotPasswordForm,\n OAuthProviderButton,\n OAuthProviderList,\n OtpForm,\n resolveOAuthProviderIcon,\n resolveOAuthProviderLabel,\n SignInForm,\n SignUpForm,\n} from './features/auth/public';\nexport type { AvatarProps, AvatarShape, AvatarSize } from './features/avatar/public';\nexport type { AvatarGroupItem, AvatarGroupProps } from './features/avatar/public';\nexport { Avatar, resolveAvatarInitials } from './features/avatar/public';\nexport { AvatarGroup } from './features/avatar/public';\nexport type { BadgeProps } from './features/badge/public';\nexport { Badge } from './features/badge/public';\nexport type { BottomSheetProps } from './features/bottom-sheet/public';\nexport { BottomSheet } from './features/bottom-sheet/public';\nexport {\n type BreadcrumbItem,\n type BreadcrumbPressEvent,\n Breadcrumbs,\n type BreadcrumbsProps,\n} from './features/breadcrumbs/public';\nexport type { ButtonProps } from './features/button/public';\nexport type {\n ButtonGroupAlign,\n ButtonGroupOrientation,\n ButtonGroupProps,\n} from './features/button/public';\nexport type { IconButtonProps } from './features/button/public';\nexport { Button } from './features/button/public';\nexport { ButtonGroup } from './features/button/public';\nexport { IconButton } from './features/button/public';\nexport type { CardProps } from './features/card/public';\nexport type { MediaCardImageProps, MediaCardProps } from './features/card/public';\nexport type { MetricCardProps } from './features/card/public';\nexport type {\n PostAction,\n PostAuthor,\n PostAuthorAvatar,\n PostCardMedia,\n PostCardProps,\n} from './features/card/public';\nexport type { ProductCardProps } from './features/card/public';\nexport { Card } from './features/card/public';\nexport { MediaCard } from './features/card/public';\nexport { MetricCard } from './features/card/public';\nexport { PostCard } from './features/card/public';\nexport { ProductCard } from './features/card/public';\nexport type {\n ChatListAvatar,\n ChatListItemProps,\n MessageBubbleAuthor,\n MessageBubbleAvatar,\n MessageBubbleDirection,\n MessageBubbleProps,\n MessageBubbleStatus,\n} from './features/chat/public';\nexport { ChatListItem, MessageBubble } from './features/chat/public';\nexport type {\n ChessBoardColorOverrides,\n ChessBoardColorScheme,\n ChessBoardOrientation,\n ChessBoardProps,\n ChessMoveAttempt,\n ChessMoveResult,\n ChessPieceCode,\n ChessPieceRenderContext,\n ChessPieceRenderer,\n ChessPieceState,\n ChessPromotionPiece,\n ChessSquareId,\n OpeningBookColorOverrides,\n OpeningBookColorScheme,\n OpeningBookMove,\n OpeningBookProps,\n} from './features/chess/public';\nexport type { ChessColorThemeShape } from './features/chess/public';\nexport { ChessBoard, chessBoardMeta, OpeningBook, openingBookMeta } from './features/chess/public';\nexport {\n chessSquares,\n createBoardSquares,\n createChessBoardColorScheme,\n createOpeningBookColorScheme,\n getLegalTargets,\n getSquareFile,\n getSquareRank,\n isLightSquare,\n readChessPieces,\n tryMove,\n} from './features/chess/public';\nexport type { ChipProps } from './features/chip/public';\nexport type { ChipGroupItem, ChipGroupProps } from './features/chip/public';\nexport { Chip } from './features/chip/public';\nexport { ChipGroup } from './features/chip/public';\nexport type {\n CollectionEditorProps,\n CollectionEditorRenderItemProps,\n} from './features/collection-editor/public';\nexport { CollectionEditor } from './features/collection-editor/public';\nexport type {\n ContentRailControlPressEvent,\n ContentRailDirection,\n ContentRailItemSize,\n ContentRailMotion,\n ContentRailProps,\n ContentRailSpacing,\n ContentRailVisibleRangeChangeEvent,\n} from './features/content-rail/public';\nexport { ContentRail } from './features/content-rail/public';\nexport type {\n DataTableCellContext,\n DataTableColumn,\n DataTableColumnAlign,\n DataTableDensity,\n DataTableProps,\n DataTableRowAction,\n DataTableSortDirection,\n DataTableSortState,\n} from './features/data-table/public';\nexport { DataTable } from './features/data-table/public';\nexport {\n DatePicker,\n type DatePickerProps,\n type DatePickerValue,\n} from './features/date-picker/public';\nexport { Dialog, type DialogProps } from './features/dialog/public';\nexport {\n EmptyState,\n type EmptyStateAction,\n type EmptyStateProps,\n} from './features/empty-state/public';\nexport {\n Checkbox,\n CheckboxGroup,\n type CheckboxGroupOption,\n type CheckboxGroupProps,\n type CheckboxProps,\n} from './features/form/checkbox/public';\nexport type {\n FieldProps,\n FormActionsProps,\n FormErrorProps,\n FormErrors,\n FormFieldConfig,\n FormFieldInputType,\n FormProps,\n FormValidationErrors,\n FormValidationResult,\n FormValues,\n UseFormControllerOptions,\n UseFormControllerResult,\n ValidationRule,\n} from './features/form/public';\nexport {\n Field,\n Form,\n FormActions,\n FormError,\n hasRequiredRule,\n useFormController,\n validateField,\n validateFields,\n validateValue,\n} from './features/form/public';\nexport {\n Radio,\n RadioGroup,\n type RadioGroupOption,\n type RadioGroupProps,\n type RadioProps,\n} from './features/form/radio/public';\nexport { SearchInput, type SearchInputProps } from './features/form/search-input/public';\nexport { Select, type SelectOption, type SelectProps } from './features/form/select/public';\nexport { Switch, type SwitchProps } from './features/form/switch/public';\nexport {\n TextInput,\n type TextInputProps,\n type TextInputTrailingAction,\n} from './features/form/text-input/public';\nexport type {\n GameEntityEasing,\n GameEntityMotionProps,\n GameEntityProps,\n GameFieldProps,\n GameInputZoneProps,\n GameKeyboardBinding,\n GameMeasurementProbeProps,\n GameOverlayPlacement,\n GameOverlayProps,\n GamePointerEvents,\n GameProps,\n} from './features/game/public';\nexport {\n Game,\n GameEntity,\n GameField,\n GameInputZone,\n GameMeasurementProbe,\n GameOverlay,\n} from './features/game/public';\nexport type {\n GradientColor,\n GradientColors,\n GradientLocations,\n GradientPoint,\n GradientProps,\n GradientRenderer,\n GradientRendererProps,\n GradientRendererProviderProps,\n} from './features/gradient/public';\nexport { Gradient, GradientRendererProvider } from './features/gradient/public';\nexport {\n Hero,\n type HeroAction,\n type HeroAlign,\n type HeroLayout,\n type HeroProps,\n type HeroTone,\n} from './features/hero/public';\nexport type { IconProps } from './features/icon/public';\nexport { Icon } from './features/icon/public';\nexport type { ImageFit, ImageProps, SurfaceImageSource } from './features/image/public';\nexport { Image } from './features/image/public';\nexport {\n KeyboardAvoidingView,\n type KeyboardAvoidingViewBehavior,\n type KeyboardAvoidingViewProps,\n} from './features/keyboard-avoiding-view/public';\nexport type {\n AppShellProps,\n DividerProps,\n GridProps,\n ScreenProps,\n ScrollViewProps,\n ViewProps,\n} from './features/layout/public';\nexport { AppShell, Divider, Grid, Screen, ScrollView, View } from './features/layout/public';\nexport type {\n ManifestListProps,\n ManifestListSection,\n ManifestSectionListProps,\n} from './features/list/public';\nexport type {\n ListChildrenProps,\n ListItemProps,\n ListItemsProps,\n ListItemVariant,\n ListProps,\n ListSectionProps,\n} from './features/list/public';\nexport { FlatList, SectionList } from './features/list/public';\nexport { List, ListItem, ListSection } from './features/list/public';\nexport { MissingElement, type MissingElementProps } from './features/missing-element/public';\nexport { Pagination, type PaginationProps } from './features/pagination/public';\nexport type { PaletteItemProps } from './features/palette-item/public';\nexport { PaletteItem } from './features/palette-item/public';\nexport {\n PopoverMenu,\n type PopoverMenuAction,\n type PopoverMenuActionIntent,\n type PopoverMenuProps,\n} from './features/popover-menu/public';\nexport {\n Progress,\n type ProgressProps,\n ProgressRing,\n type ProgressRingProps,\n} from './features/progress/public';\nexport { Rating, type RatingProps } from './features/rating/public';\nexport type {\n ReaderColorScheme,\n ReaderDocumentFormat,\n ReaderErrorCode,\n ReaderErrorEvent,\n ReaderExternalLinkEvent,\n ReaderLineHeight,\n ReaderLocationChangeEvent,\n ReaderNavigationTrigger,\n ReaderResolvedSource,\n ReaderStatus,\n ReaderSurfaceProps,\n} from './features/reader/public';\nexport { ReaderSurface, resolveReaderProgress } from './features/reader/public';\nexport type {\n ZoraBindableComponentType,\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 ZoraThemeRecipeBooleanFieldMeta,\n ZoraThemeRecipeChoiceFieldMeta,\n ZoraThemeRecipeFieldMeta,\n ZoraThemeRecipeKind,\n ZoraThemeRecipeMeta,\n ZoraThemeRecipeMetaRegistry,\n ZoraThemeRecipeTokenFieldMeta,\n ZoraThemeTokenFamily,\n} from './features/registry';\nexport {\n ZORA_BINDABLE_COMPONENT_META,\n ZORA_COMPONENT_META,\n ZORA_THEME_RECIPE_META,\n ZORA_THEME_TOKEN_FAMILIES,\n} from './features/registry';\nexport { ZORA_COMPONENT_REGISTRY } from './features/registry/public';\nexport type {\n BarcodeScannerViewProps,\n BarcodeScanResult,\n CameraPermissionStatus,\n CameraPermissionViewProps,\n ScanOverlayProps,\n} from './features/scanner/public';\nexport { BarcodeScannerView, CameraPermissionView, ScanOverlay } from './features/scanner/public';\nexport {\n ScreenSection,\n type ScreenSectionProps,\n SectionHeader,\n type SectionHeaderProps,\n} from './features/section/public';\nexport type {\n SelectableItemProps,\n SelectableItemState,\n SelectionIntent,\n SelectionMode,\n SelectionProviderProps,\n SelectionTrigger,\n UseSelectionResult,\n} from './features/selection/public';\nexport { SelectableItem, SelectionProvider, useSelection } from './features/selection/public';\nexport {\n Skeleton,\n SkeletonCard,\n type SkeletonCardProps,\n type SkeletonDimension,\n SkeletonList,\n type SkeletonListProps,\n type SkeletonListVariant,\n type SkeletonProps,\n type SkeletonRadius,\n SkeletonText,\n type SkeletonTextProps,\n} from './features/skeleton/public';\nexport type { SurfaceProps, SurfaceVariant } from './features/surface/public';\nexport { Surface } from './features/surface/public';\nexport type {\n CardBackProps,\n CardHandProps,\n CreatePokerTrainingTableStateOptions,\n CreateTabletopGameSeatsInput,\n PlayingCardProps,\n PlayingCardSuit,\n PlayingCardValue,\n PokerTrainingPlayer,\n PokerTrainingTableProps,\n PokerTrainingTableSize,\n PokerTrainingTableState,\n PokerTrainingTaskTableData,\n TabletopCardSize,\n TabletopColorOverrides,\n TabletopColorScheme,\n TabletopGameParticipantState,\n TabletopGameSeatDefinition,\n TabletopGameSeatPresentation,\n TabletopSeatCount,\n TabletopSeatState,\n TabletopShape,\n TabletopTableProps,\n} from './features/tabletop/public';\nexport {\n CardBack,\n CardHand,\n createPokerTrainingTableState,\n createTabletopColorScheme,\n createTabletopGameSeats,\n PlayingCard,\n PokerTrainingTable,\n pokerTrainingTableMeta,\n TabletopTable,\n tabletopTableMeta,\n} from './features/tabletop/public';\nexport {\n Tab,\n TabList,\n type TabListProps,\n TabPanel,\n type TabPanelProps,\n type TabProps,\n Tabs,\n type TabsProps,\n} from './features/tabs/public';\nexport type {\n ZoraColor,\n ZoraEmphasis,\n ZoraPaletteColor,\n ZoraStatusColor,\n} from './features/theme/colorModel';\nexport {\n ZORA_COLORS,\n ZORA_EMPHASES,\n ZORA_PALETTE_COLORS,\n ZORA_STATUS_COLORS,\n} from './features/theme/colorModel';\nexport * from './features/theme/public';\nexport * from './features/theme/runtime';\nexport {\n TimePicker,\n type TimePickerProps,\n type TimePickerValue,\n} from './features/time-picker/public';\nexport type { TimelineItem, TimelineProps } from './features/timeline/public';\nexport { Timeline } from './features/timeline/public';\nexport type {\n ToastController,\n ToastOptions,\n ToastProps,\n ToastProviderProps,\n ToastStatus,\n} from './features/toast/public';\nexport { Toast, ToastProvider, useToast } from './features/toast/public';\nexport { Toolbar, type ToolbarProps } from './features/toolbar/public';\nexport type { TreeItemNode, TreeItemRenderProps, TreeViewProps } from './features/tree-view/public';\nexport { TreeItem, TreeView } from './features/tree-view/public';\nexport type {\n HeadingAlign,\n HeadingColor,\n HeadingEmphasis,\n HeadingLevel,\n HeadingProps,\n HeadingSize,\n HeadingWeight,\n} from './features/typography/public';\nexport type {\n TextAlign,\n TextColor,\n TextEmphasis,\n TextProps,\n TextVariant,\n TextWeight,\n} from './features/typography/public';\nexport { Heading } from './features/typography/public';\nexport { Text } from './features/typography/public';\nexport type {\n UploadAsset,\n UploadAssetBase,\n UploaderProps,\n UploadProgressContext,\n UploadType,\n ValidateUploadAssetInput,\n} from './features/uploader/public';\nexport { Uploader, validateUploadAsset } from './features/uploader/public';\nexport type { ZoraComponentRegistry } from './types/registry';\n"]}
@@ -4,6 +4,25 @@ import type { ZoraBaseProps } from './base';
4
4
  import type { ButtonProps } from './button';
5
5
  import type { FormFieldConfig, FormValues } from './form';
6
6
  export type AuthIdentifierKind = 'email' | 'phone' | 'username';
7
+ export type AuthScreenMode = 'signIn' | 'signUp';
8
+ export interface AuthScreenProps extends ZoraBaseProps {
9
+ authMode: AuthScreenMode;
10
+ title?: React.ReactNode;
11
+ description?: React.ReactNode;
12
+ info?: React.ReactNode;
13
+ error?: React.ReactNode;
14
+ loading?: boolean;
15
+ disabled?: boolean;
16
+ identifiers?: readonly AuthIdentifierKind[];
17
+ identifierLabel?: React.ReactNode;
18
+ signUpFields?: readonly SignUpFormField[];
19
+ oauthProviders?: readonly OAuthProviderItem[];
20
+ oauthSeparatorLabel?: React.ReactNode;
21
+ onModeChange?: (mode: AuthScreenMode) => void | Promise<void>;
22
+ onOAuthProviderPress?: (providerId: string) => void | Promise<void>;
23
+ onSignInSubmit?: (values: SignInFormValues) => void | Promise<void>;
24
+ onSignUpSubmit?: (values: SignUpFormValues) => void | Promise<void>;
25
+ }
7
26
  export interface AuthFormBaseProps extends ZoraBaseProps {
8
27
  loading?: boolean;
9
28
  disabled?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/types/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/types/auth.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/types/auth.ts"],"names":[],"mappings":"","sourcesContent":["import type { ButtonIconSpec } from '@ankhorage/surface';\nimport type React from 'react';\n\nimport type { ZoraBaseProps } from './base';\nimport type { ButtonProps } from './button';\nimport type { FormFieldConfig, FormValues } from './form';\n\nexport type AuthIdentifierKind = 'email' | 'phone' | 'username';\n\nexport interface AuthFormBaseProps extends ZoraBaseProps {\n loading?: boolean;\n disabled?: boolean;\n error?: React.ReactNode;\n submitLabel?: React.ReactNode;\n}\n\nexport interface SignInFormValues {\n identifier: string;\n identifierKind: AuthIdentifierKind;\n secret: string;\n}\n\nexport interface SignInFormProps extends AuthFormBaseProps {\n identifiers?: readonly AuthIdentifierKind[];\n identifierLabel?: React.ReactNode;\n secretLabel?: React.ReactNode;\n forgotPasswordLabel?: React.ReactNode;\n signUpLabel?: React.ReactNode;\n onSubmit?: (values: SignInFormValues) => void | Promise<void>;\n onForgotPassword?: () => void | Promise<void>;\n onSignUp?: () => void | Promise<void>;\n}\n\nexport type SignUpFormValues = FormValues;\nexport type SignUpFormField = FormFieldConfig;\n\nexport interface SignUpFormProps extends AuthFormBaseProps {\n fields?: readonly SignUpFormField[];\n signInLabel?: React.ReactNode;\n onSubmit?: (values: SignUpFormValues) => void | Promise<void>;\n onSignIn?: () => void | Promise<void>;\n}\n\nexport interface ForgotPasswordFormValues {\n identifier: string;\n identifierKind: AuthIdentifierKind;\n}\n\nexport interface ForgotPasswordFormProps extends AuthFormBaseProps {\n identifiers?: readonly AuthIdentifierKind[];\n identifierLabel?: React.ReactNode;\n signInLabel?: React.ReactNode;\n onSubmit?: (values: ForgotPasswordFormValues) => void | Promise<void>;\n onSignIn?: () => void | Promise<void>;\n}\n\nexport interface OtpFormValues {\n otp: string;\n}\n\nexport interface OtpFormProps extends AuthFormBaseProps {\n length?: number;\n otpLabel?: React.ReactNode;\n resendLabel?: React.ReactNode;\n resendDisabled?: boolean;\n resendLoading?: boolean;\n onSubmit?: (values: OtpFormValues) => void | Promise<void>;\n onResend?: () => void | Promise<void>;\n}\n\nexport type OAuthProviderIconSpec = ButtonIconSpec;\n\nexport interface OAuthProviderItem {\n id: string;\n label?: React.ReactNode;\n icon?: OAuthProviderIconSpec;\n disabled?: boolean;\n loading?: boolean;\n}\n\nexport interface OAuthProviderButtonProps extends ZoraBaseProps {\n providerId: string;\n label?: React.ReactNode;\n icon?: OAuthProviderIconSpec;\n disabled?: boolean;\n loading?: boolean;\n fullWidth?: boolean;\n size?: ButtonProps['size'];\n variant?: ButtonProps['variant'];\n color?: ButtonProps['color'];\n onPress?: (providerId: string) => void | Promise<void>;\n}\n\nexport type OAuthProviderListLayout = 'stack' | 'inline';\n\nexport interface OAuthProviderListProps extends ZoraBaseProps {\n providers: readonly OAuthProviderItem[];\n disabled?: boolean;\n loading?: boolean;\n fullWidth?: boolean;\n layout?: OAuthProviderListLayout;\n size?: ButtonProps['size'];\n variant?: ButtonProps['variant'];\n color?: ButtonProps['color'];\n onProviderPress?: (providerId: string) => void | Promise<void>;\n}\n"]}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/types/auth.ts"],"names":[],"mappings":"","sourcesContent":["import type { ButtonIconSpec } from '@ankhorage/surface';\nimport type React from 'react';\n\nimport type { ZoraBaseProps } from './base';\nimport type { ButtonProps } from './button';\nimport type { FormFieldConfig, FormValues } from './form';\n\nexport type AuthIdentifierKind = 'email' | 'phone' | 'username';\n\nexport type AuthScreenMode = 'signIn' | 'signUp';\n\nexport interface AuthScreenProps extends ZoraBaseProps {\n authMode: AuthScreenMode;\n title?: React.ReactNode;\n description?: React.ReactNode;\n info?: React.ReactNode;\n error?: React.ReactNode;\n loading?: boolean;\n disabled?: boolean;\n identifiers?: readonly AuthIdentifierKind[];\n identifierLabel?: React.ReactNode;\n signUpFields?: readonly SignUpFormField[];\n oauthProviders?: readonly OAuthProviderItem[];\n oauthSeparatorLabel?: React.ReactNode;\n onModeChange?: (mode: AuthScreenMode) => void | Promise<void>;\n onOAuthProviderPress?: (providerId: string) => void | Promise<void>;\n onSignInSubmit?: (values: SignInFormValues) => void | Promise<void>;\n onSignUpSubmit?: (values: SignUpFormValues) => void | Promise<void>;\n}\n\nexport interface AuthFormBaseProps extends ZoraBaseProps {\n loading?: boolean;\n disabled?: boolean;\n error?: React.ReactNode;\n submitLabel?: React.ReactNode;\n}\n\nexport interface SignInFormValues {\n identifier: string;\n identifierKind: AuthIdentifierKind;\n secret: string;\n}\n\nexport interface SignInFormProps extends AuthFormBaseProps {\n identifiers?: readonly AuthIdentifierKind[];\n identifierLabel?: React.ReactNode;\n secretLabel?: React.ReactNode;\n forgotPasswordLabel?: React.ReactNode;\n signUpLabel?: React.ReactNode;\n onSubmit?: (values: SignInFormValues) => void | Promise<void>;\n onForgotPassword?: () => void | Promise<void>;\n onSignUp?: () => void | Promise<void>;\n}\n\nexport type SignUpFormValues = FormValues;\nexport type SignUpFormField = FormFieldConfig;\n\nexport interface SignUpFormProps extends AuthFormBaseProps {\n fields?: readonly SignUpFormField[];\n signInLabel?: React.ReactNode;\n onSubmit?: (values: SignUpFormValues) => void | Promise<void>;\n onSignIn?: () => void | Promise<void>;\n}\n\nexport interface ForgotPasswordFormValues {\n identifier: string;\n identifierKind: AuthIdentifierKind;\n}\n\nexport interface ForgotPasswordFormProps extends AuthFormBaseProps {\n identifiers?: readonly AuthIdentifierKind[];\n identifierLabel?: React.ReactNode;\n signInLabel?: React.ReactNode;\n onSubmit?: (values: ForgotPasswordFormValues) => void | Promise<void>;\n onSignIn?: () => void | Promise<void>;\n}\n\nexport interface OtpFormValues {\n otp: string;\n}\n\nexport interface OtpFormProps extends AuthFormBaseProps {\n length?: number;\n otpLabel?: React.ReactNode;\n resendLabel?: React.ReactNode;\n resendDisabled?: boolean;\n resendLoading?: boolean;\n onSubmit?: (values: OtpFormValues) => void | Promise<void>;\n onResend?: () => void | Promise<void>;\n}\n\nexport type OAuthProviderIconSpec = ButtonIconSpec;\n\nexport interface OAuthProviderItem {\n id: string;\n label?: React.ReactNode;\n icon?: OAuthProviderIconSpec;\n disabled?: boolean;\n loading?: boolean;\n}\n\nexport interface OAuthProviderButtonProps extends ZoraBaseProps {\n providerId: string;\n label?: React.ReactNode;\n icon?: OAuthProviderIconSpec;\n disabled?: boolean;\n loading?: boolean;\n fullWidth?: boolean;\n size?: ButtonProps['size'];\n variant?: ButtonProps['variant'];\n color?: ButtonProps['color'];\n onPress?: (providerId: string) => void | Promise<void>;\n}\n\nexport type OAuthProviderListLayout = 'stack' | 'inline';\n\nexport interface OAuthProviderListProps extends ZoraBaseProps {\n providers: readonly OAuthProviderItem[];\n disabled?: boolean;\n loading?: boolean;\n fullWidth?: boolean;\n layout?: OAuthProviderListLayout;\n size?: ButtonProps['size'];\n variant?: ButtonProps['variant'];\n color?: ButtonProps['color'];\n onProviderPress?: (providerId: string) => void | Promise<void>;\n}\n"]}
@@ -6,6 +6,7 @@ export interface TreeItemNode<TId extends string = string> {
6
6
  id: TId;
7
7
  label: ReactNode;
8
8
  icon?: ButtonIconSpec;
9
+ expandedIcon?: ButtonIconSpec;
9
10
  children?: readonly TreeItemNode<TId>[];
10
11
  disabled?: boolean;
11
12
  meta?: ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"tree-view.d.ts","sourceRoot":"","sources":["../../src/types/tree-view.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAE5C,MAAM,WAAW,YAAY,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM;IACvD,EAAE,EAAE,GAAG,CAAC;IACR,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,QAAQ,CAAC,EAAE,SAAS,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM;IAC9D,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,aAAa,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,aAAa;IAC/E,KAAK,EAAE,SAAS,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;IACpC,WAAW,CAAC,EAAE,SAAS,GAAG,EAAE,CAAC;IAC7B,WAAW,CAAC,EAAE,SAAS,GAAG,EAAE,CAAC;IAC7B,kBAAkB,CAAC,EAAE,SAAS,GAAG,EAAE,CAAC;IACpC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IACtD,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,SAAS,GAAG,EAAE,KAAK,IAAI,CAAC;IACjD,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC;IAC5D,kBAAkB,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;CAC3C"}
1
+ {"version":3,"file":"tree-view.d.ts","sourceRoot":"","sources":["../../src/types/tree-view.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAE5C,MAAM,WAAW,YAAY,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM;IACvD,EAAE,EAAE,GAAG,CAAC;IACR,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,YAAY,CAAC,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,EAAE,SAAS,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM;IAC9D,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,aAAa,CAAC,GAAG,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,aAAa;IAC/E,KAAK,EAAE,SAAS,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;IACpC,WAAW,CAAC,EAAE,SAAS,GAAG,EAAE,CAAC;IAC7B,WAAW,CAAC,EAAE,SAAS,GAAG,EAAE,CAAC;IAC7B,kBAAkB,CAAC,EAAE,SAAS,GAAG,EAAE,CAAC;IACpC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IACtD,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,SAAS,GAAG,EAAE,KAAK,IAAI,CAAC;IACjD,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC;IAC5D,kBAAkB,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;CAC3C"}
@@ -1 +1 @@
1
- {"version":3,"file":"tree-view.js","sourceRoot":"","sources":["../../src/types/tree-view.ts"],"names":[],"mappings":"","sourcesContent":["import type { ButtonIconSpec } from '@ankhorage/surface';\nimport type { SelectionIntent } from '@ankhorage/utility/selection';\nimport type { ReactNode } from 'react';\n\nimport type { ZoraBaseProps } from './base';\n\nexport interface TreeItemNode<TId extends string = string> {\n id: TId;\n label: ReactNode;\n icon?: ButtonIconSpec;\n children?: readonly TreeItemNode<TId>[];\n disabled?: boolean;\n meta?: ReactNode;\n actions?: ReactNode;\n}\n\nexport interface TreeItemRenderProps<TId extends string = string> {\n node: TreeItemNode<TId>;\n depth: number;\n selected: boolean;\n expanded: boolean;\n hasChildren: boolean;\n}\n\nexport interface TreeViewProps<TId extends string = string> extends ZoraBaseProps {\n nodes: readonly TreeItemNode<TId>[];\n selectedIds?: readonly TId[];\n expandedIds?: readonly TId[];\n defaultExpandedIds?: readonly TId[];\n onSelect?: (id: TId, intent: SelectionIntent) => void;\n onExpandedChange?: (ids: readonly TId[]) => void;\n renderItem?: (props: TreeItemRenderProps<TId>) => ReactNode;\n expansionIndicator?: 'chevron' | 'folder';\n}\n"]}
1
+ {"version":3,"file":"tree-view.js","sourceRoot":"","sources":["../../src/types/tree-view.ts"],"names":[],"mappings":"","sourcesContent":["import type { ButtonIconSpec } from '@ankhorage/surface';\nimport type { SelectionIntent } from '@ankhorage/utility/selection';\nimport type { ReactNode } from 'react';\n\nimport type { ZoraBaseProps } from './base';\n\nexport interface TreeItemNode<TId extends string = string> {\n id: TId;\n label: ReactNode;\n icon?: ButtonIconSpec;\n expandedIcon?: ButtonIconSpec;\n children?: readonly TreeItemNode<TId>[];\n disabled?: boolean;\n meta?: ReactNode;\n actions?: ReactNode;\n}\n\nexport interface TreeItemRenderProps<TId extends string = string> {\n node: TreeItemNode<TId>;\n depth: number;\n selected: boolean;\n expanded: boolean;\n hasChildren: boolean;\n}\n\nexport interface TreeViewProps<TId extends string = string> extends ZoraBaseProps {\n nodes: readonly TreeItemNode<TId>[];\n selectedIds?: readonly TId[];\n expandedIds?: readonly TId[];\n defaultExpandedIds?: readonly TId[];\n onSelect?: (id: TId, intent: SelectionIntent) => void;\n onExpandedChange?: (ids: readonly TId[]) => void;\n renderItem?: (props: TreeItemRenderProps<TId>) => ReactNode;\n expansionIndicator?: 'chevron' | 'folder';\n}\n"]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@ankhorage/zora",
3
3
  "type": "module",
4
- "version": "23.0.0",
4
+ "version": "23.2.0",
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": {
@@ -124,7 +124,7 @@
124
124
  "version-packages": "ankhorage-changeset version"
125
125
  },
126
126
  "devDependencies": {
127
- "@ankhorage/devtools": "^2.1.8",
127
+ "@ankhorage/devtools": "^2.1.9",
128
128
  "@ankhorage/paradox": "^0.2.28",
129
129
  "@react-native-vector-icons/fontawesome": "^13.1.4",
130
130
  "@react-native-vector-icons/fontawesome5": "^13.1.4",
@@ -6,6 +6,7 @@ export const COMPONENT_THEME_AUTHORING = {
6
6
 
7
7
  export const FEATURE_MANIFEST_ELEMENTS = {
8
8
  auth: [
9
+ 'AuthScreen',
9
10
  'ForgotPasswordForm',
10
11
  'OAuthProviderButton',
11
12
  'OAuthProviderList',
@@ -47,6 +48,7 @@ export const FEATURE_MANIFEST_ELEMENTS = {
47
48
 
48
49
  export const CONTAINER_ALLOWED_CHILDREN = [
49
50
  'ActivityIndicator',
51
+ 'AuthScreen',
50
52
  'ForgotPasswordForm',
51
53
  'OAuthProviderButton',
52
54
  'OAuthProviderList',