@ankhorage/zora 22.1.4 → 23.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (241) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +1 -1
  3. package/dist/features/graph-view/adapters/inbound/web-artifact/GraphNodeOverlay.d.ts +2 -1
  4. package/dist/features/graph-view/adapters/inbound/web-artifact/GraphNodeOverlay.d.ts.map +1 -1
  5. package/dist/features/graph-view/adapters/inbound/web-artifact/GraphNodeOverlay.js +2 -1
  6. package/dist/features/graph-view/adapters/inbound/web-artifact/GraphNodeOverlay.js.map +1 -1
  7. package/dist/features/graph-view/adapters/inbound/web-artifact/GraphView.d.ts.map +1 -1
  8. package/dist/features/graph-view/adapters/inbound/web-artifact/GraphView.js +1 -1
  9. package/dist/features/graph-view/adapters/inbound/web-artifact/GraphView.js.map +1 -1
  10. package/dist/features/graph-view/adapters/inbound/web-artifact/bindGraphEvents.d.ts.map +1 -1
  11. package/dist/features/graph-view/adapters/inbound/web-artifact/bindGraphEvents.js +12 -4
  12. package/dist/features/graph-view/adapters/inbound/web-artifact/bindGraphEvents.js.map +1 -1
  13. package/dist/features/graph-view/adapters/inbound/web-artifact/createGraphRuntime.d.ts +2 -1
  14. package/dist/features/graph-view/adapters/inbound/web-artifact/createGraphRuntime.d.ts.map +1 -1
  15. package/dist/features/graph-view/adapters/inbound/web-artifact/createGraphRuntime.js +3 -3
  16. package/dist/features/graph-view/adapters/inbound/web-artifact/createGraphRuntime.js.map +1 -1
  17. package/dist/features/selection/adapters/inbound/SelectableItem.d.ts +1 -5
  18. package/dist/features/selection/adapters/inbound/SelectableItem.d.ts.map +1 -1
  19. package/dist/features/selection/adapters/inbound/SelectableItem.js +30 -54
  20. package/dist/features/selection/adapters/inbound/SelectableItem.js.map +1 -1
  21. package/dist/features/selection/adapters/inbound/SelectionProvider.d.ts +2 -6
  22. package/dist/features/selection/adapters/inbound/SelectionProvider.d.ts.map +1 -1
  23. package/dist/features/selection/adapters/inbound/SelectionProvider.js +36 -32
  24. package/dist/features/selection/adapters/inbound/SelectionProvider.js.map +1 -1
  25. package/dist/features/selection/application/resolveSelectionEventIntent.d.ts +5 -0
  26. package/dist/features/selection/application/resolveSelectionEventIntent.d.ts.map +1 -0
  27. package/dist/features/selection/application/resolveSelectionEventIntent.js +49 -0
  28. package/dist/features/selection/application/resolveSelectionEventIntent.js.map +1 -0
  29. package/dist/features/selection/public.d.ts +2 -0
  30. package/dist/features/selection/public.d.ts.map +1 -1
  31. package/dist/features/selection/public.js +1 -0
  32. package/dist/features/selection/public.js.map +1 -1
  33. package/dist/features/selection/utils/resolveSelectionNextIds.d.ts +4 -5
  34. package/dist/features/selection/utils/resolveSelectionNextIds.d.ts.map +1 -1
  35. package/dist/features/selection/utils/resolveSelectionNextIds.js +6 -13
  36. package/dist/features/selection/utils/resolveSelectionNextIds.js.map +1 -1
  37. package/dist/features/tree-view/adapters/inbound/TreeItem.d.ts +3 -2
  38. package/dist/features/tree-view/adapters/inbound/TreeItem.d.ts.map +1 -1
  39. package/dist/features/tree-view/adapters/inbound/TreeItem.js +11 -4
  40. package/dist/features/tree-view/adapters/inbound/TreeItem.js.map +1 -1
  41. package/dist/features/tree-view/adapters/inbound/TreeView.d.ts.map +1 -1
  42. package/dist/features/tree-view/adapters/inbound/TreeView.js +4 -5
  43. package/dist/features/tree-view/adapters/inbound/TreeView.js.map +1 -1
  44. package/dist/features/tree-view/adapters/inbound/web-artifact/TreeItemRow.d.ts +3 -2
  45. package/dist/features/tree-view/adapters/inbound/web-artifact/TreeItemRow.d.ts.map +1 -1
  46. package/dist/features/tree-view/adapters/inbound/web-artifact/TreeItemRow.js +17 -9
  47. package/dist/features/tree-view/adapters/inbound/web-artifact/TreeItemRow.js.map +1 -1
  48. package/dist/features/tree-view/adapters/inbound/web-artifact/TreeView.d.ts +4 -3
  49. package/dist/features/tree-view/adapters/inbound/web-artifact/TreeView.d.ts.map +1 -1
  50. package/dist/features/tree-view/adapters/inbound/web-artifact/TreeView.js +8 -8
  51. package/dist/features/tree-view/adapters/inbound/web-artifact/TreeView.js.map +1 -1
  52. package/dist/index.d.ts +1 -1
  53. package/dist/index.d.ts.map +1 -1
  54. package/dist/index.js.map +1 -1
  55. package/dist/types/graph-view.d.ts +2 -0
  56. package/dist/types/graph-view.d.ts.map +1 -1
  57. package/dist/types/graph-view.js.map +1 -1
  58. package/dist/types/selection.d.ts +3 -0
  59. package/dist/types/selection.d.ts.map +1 -1
  60. package/dist/types/selection.js.map +1 -1
  61. package/dist/types/tree-view.d.ts +3 -2
  62. package/dist/types/tree-view.d.ts.map +1 -1
  63. package/dist/types/tree-view.js.map +1 -1
  64. package/package.json +1 -1
  65. package/src/features/graph-view/adapters/inbound/web-artifact/GraphNodeOverlay.tsx +10 -2
  66. package/src/features/graph-view/adapters/inbound/web-artifact/GraphView.tsx +3 -1
  67. package/src/features/graph-view/adapters/inbound/web-artifact/bindGraphEvents.ts +22 -5
  68. package/src/features/graph-view/adapters/inbound/web-artifact/createGraphRuntime.test.ts +21 -0
  69. package/src/features/graph-view/adapters/inbound/web-artifact/createGraphRuntime.ts +10 -3
  70. package/src/features/selection/adapters/inbound/SelectableItem.tsx +33 -50
  71. package/src/features/selection/adapters/inbound/SelectionProvider.tsx +34 -35
  72. package/src/features/selection/application/resolveSelectionEventIntent.test.ts +35 -0
  73. package/src/features/selection/application/resolveSelectionEventIntent.ts +55 -0
  74. package/src/features/selection/public.ts +2 -0
  75. package/src/features/selection/utils/resolveSelectionNextIds.test.ts +1 -14
  76. package/src/features/selection/utils/resolveSelectionNextIds.ts +6 -28
  77. package/src/features/tree-view/adapters/inbound/TreeItem.tsx +25 -9
  78. package/src/features/tree-view/adapters/inbound/TreeView.tsx +4 -6
  79. package/src/features/tree-view/adapters/inbound/web-artifact/TreeItemRow.tsx +26 -8
  80. package/src/features/tree-view/adapters/inbound/web-artifact/TreeView.test.tsx +77 -7
  81. package/src/features/tree-view/adapters/inbound/web-artifact/TreeView.tsx +11 -9
  82. package/src/index.ts +1 -0
  83. package/src/types/graph-view.ts +2 -0
  84. package/src/types/selection.ts +3 -0
  85. package/src/types/tree-view.ts +3 -2
  86. package/web-dist/chunks/{Accordion-j2aw3d5b.js → Accordion-01e56hb5.js} +1 -1
  87. package/web-dist/chunks/{Accordion-emczc5rg.js → Accordion-09se459d.js} +4 -4
  88. package/web-dist/chunks/{Accordion-784f23tq.js → Accordion-14p7zanv.js} +1 -1
  89. package/web-dist/chunks/{Accordion-cecn51ry.js → Accordion-17pht8jd.js} +3 -3
  90. package/web-dist/chunks/Accordion-5df6cgyf.js +55 -0
  91. package/web-dist/chunks/{Accordion-sr353w95.js → Accordion-78mj69zp.js} +2 -2
  92. package/web-dist/chunks/{Accordion-mpnb4qqw.js → Accordion-83hfn3y4.js} +5 -5
  93. package/web-dist/chunks/{Accordion-07rdw2vh.js → Accordion-89q14src.js} +2 -2
  94. package/web-dist/chunks/{Accordion-ajydqhjp.js → Accordion-8xk2zmr5.js} +2 -2
  95. package/web-dist/chunks/{Accordion-qvt6qdqm.js → Accordion-b3ymabze.js} +4 -4
  96. package/web-dist/chunks/{Accordion-avmgvcef.js → Accordion-cn8tbdvk.js} +3 -3
  97. package/web-dist/chunks/{Accordion-8af800ts.js → Accordion-czmnsspb.js} +5 -5
  98. package/web-dist/chunks/{Accordion-nc5gnvnb.js → Accordion-dp638q63.js} +2 -2
  99. package/web-dist/chunks/{Accordion-2fm2tm5r.js → Accordion-e633pb7z.js} +1 -1
  100. package/web-dist/chunks/{Accordion-yz7b7njb.js → Accordion-f1t3rzgg.js} +4 -4
  101. package/web-dist/chunks/{Accordion-b3qy1trj.js → Accordion-fm3jxs1f.js} +8 -8
  102. package/web-dist/chunks/{Accordion-zf3kzvef.js → Accordion-gj63vb6b.js} +4 -4
  103. package/web-dist/chunks/{Accordion-mvfz28m8.js → Accordion-gkzhd3zk.js} +3 -3
  104. package/web-dist/chunks/{Accordion-jj3bg8c1.js → Accordion-k7wwyx5x.js} +4 -4
  105. package/web-dist/chunks/{Accordion-rkv7jyaj.js → Accordion-kemavggr.js} +1 -1
  106. package/web-dist/chunks/{Accordion-jhwsvx3g.js → Accordion-kpnwdpb5.js} +1 -1
  107. package/web-dist/chunks/{Accordion-yf6vseep.js → Accordion-q0st659f.js} +82 -89
  108. package/web-dist/chunks/{Accordion-555gnfmw.js → Accordion-q165k3az.js} +6 -6
  109. package/web-dist/chunks/{Accordion-9rnepkvk.js → Accordion-q3z741vt.js} +3 -3
  110. package/web-dist/chunks/{Accordion-z585n0mr.js → Accordion-rjgdrn7y.js} +1 -1
  111. package/web-dist/chunks/{Accordion-vmz8y01b.js → Accordion-rspy7gjb.js} +6 -6
  112. package/web-dist/chunks/{Accordion-ycmg06sq.js → Accordion-rx2gzadh.js} +1 -1
  113. package/web-dist/chunks/{Accordion-45ej9brb.js → Accordion-swys7qts.js} +3 -3
  114. package/web-dist/chunks/{Accordion-v1dtv6v0.js → Accordion-w0k7gnn9.js} +3 -3
  115. package/web-dist/chunks/{Accordion-pnvt10cv.js → Accordion-w1afjp87.js} +4 -4
  116. package/web-dist/chunks/{Accordion-tj61sa5s.js → Accordion-w7jv9y5t.js} +4 -4
  117. package/web-dist/chunks/{Accordion-s1jhv8gk.js → Accordion-x13vca75.js} +1 -1
  118. package/web-dist/chunks/{Accordion-73m7z73v.js → Accordion-x1dg1f47.js} +5 -5
  119. package/web-dist/chunks/{Accordion-1cgz6f8t.js → Accordion-x4rjd7yn.js} +1 -1
  120. package/web-dist/chunks/{Accordion-nn38n7q4.js → Accordion-xf8cj8z4.js} +3 -3
  121. package/web-dist/chunks/{Accordion-8hhvtcxp.js → Accordion-xzd0tx46.js} +1 -1
  122. package/web-dist/components/accordion/Accordion.js +5 -5
  123. package/web-dist/components/accordion-item/AccordionItem.js +5 -5
  124. package/web-dist/components/activity-indicator/ActivityIndicator.js +1 -1
  125. package/web-dist/components/app-bar/AppBar.js +7 -7
  126. package/web-dist/components/app-shell/AppShell.js +2 -2
  127. package/web-dist/components/avatar/Avatar.js +5 -5
  128. package/web-dist/components/avatar-group/AvatarGroup.js +5 -5
  129. package/web-dist/components/badge/Badge.js +2 -2
  130. package/web-dist/components/barcode-scanner-view/BarcodeScannerView.js +10 -10
  131. package/web-dist/components/bottom-sheet/BottomSheet.js +3 -3
  132. package/web-dist/components/bottom-sheet-flat-list/BottomSheetFlatList.js +3 -3
  133. package/web-dist/components/bottom-sheet-scroll-view/BottomSheetScrollView.js +3 -3
  134. package/web-dist/components/bottom-sheet-section-list/BottomSheetSectionList.js +3 -3
  135. package/web-dist/components/bottom-sheet-view/BottomSheetView.js +3 -3
  136. package/web-dist/components/bottom-sheet-virtualized-list/BottomSheetVirtualizedList.js +3 -3
  137. package/web-dist/components/breadcrumbs/Breadcrumbs.js +5 -5
  138. package/web-dist/components/button/Button.js +3 -3
  139. package/web-dist/components/button-group/ButtonGroup.js +3 -3
  140. package/web-dist/components/camera-permission-view/CameraPermissionView.js +10 -10
  141. package/web-dist/components/card/Card.js +9 -9
  142. package/web-dist/components/card-back/CardBack.js +2 -2
  143. package/web-dist/components/card-hand/CardHand.js +2 -2
  144. package/web-dist/components/chat-list-item/ChatListItem.js +7 -7
  145. package/web-dist/components/checkbox/Checkbox.js +4 -4
  146. package/web-dist/components/checkbox-group/CheckboxGroup.js +4 -4
  147. package/web-dist/components/chess-board/ChessBoard.js +2 -2
  148. package/web-dist/components/chip/Chip.js +5 -5
  149. package/web-dist/components/chip-group/ChipGroup.js +5 -5
  150. package/web-dist/components/collection-editor/CollectionEditor.js +9 -9
  151. package/web-dist/components/content-rail/ContentRail.js +4 -4
  152. package/web-dist/components/data-table/DataTable.js +14 -14
  153. package/web-dist/components/date-picker/DatePicker.js +5 -5
  154. package/web-dist/components/dialog/Dialog.js +4 -4
  155. package/web-dist/components/divider/Divider.js +2 -2
  156. package/web-dist/components/empty-state/EmptyState.js +10 -10
  157. package/web-dist/components/field/Field.js +4 -4
  158. package/web-dist/components/flat-list/FlatList.js +5 -5
  159. package/web-dist/components/forgot-password-form/ForgotPasswordForm.js +8 -8
  160. package/web-dist/components/form/Form.js +6 -6
  161. package/web-dist/components/form-actions/FormActions.js +6 -6
  162. package/web-dist/components/form-error/FormError.js +6 -6
  163. package/web-dist/components/game/Game.js +3 -3
  164. package/web-dist/components/game-entity/GameEntity.js +3 -3
  165. package/web-dist/components/game-field/GameField.js +3 -3
  166. package/web-dist/components/game-input-zone/GameInputZone.js +3 -3
  167. package/web-dist/components/game-measurement-probe/GameMeasurementProbe.js +3 -3
  168. package/web-dist/components/game-overlay/GameOverlay.js +3 -3
  169. package/web-dist/components/gradient/Gradient.js +3 -3
  170. package/web-dist/components/gradient-renderer-provider/GradientRendererProvider.js +3 -3
  171. package/web-dist/components/graph-view/GraphView.js +20 -11
  172. package/web-dist/components/graph-view/GraphView.types-0.d.ts +2 -0
  173. package/web-dist/components/grid/Grid.js +2 -2
  174. package/web-dist/components/heading/Heading.js +2 -2
  175. package/web-dist/components/hero/Hero.js +9 -9
  176. package/web-dist/components/icon/Icon.js +2 -2
  177. package/web-dist/components/icon-button/IconButton.js +3 -3
  178. package/web-dist/components/image/Image.js +4 -4
  179. package/web-dist/components/keyboard-avoiding-view/KeyboardAvoidingView.js +1 -1
  180. package/web-dist/components/list/List.js +5 -5
  181. package/web-dist/components/list-item/ListItem.js +5 -5
  182. package/web-dist/components/list-section/ListSection.js +5 -5
  183. package/web-dist/components/media-card/MediaCard.js +9 -9
  184. package/web-dist/components/message-bubble/MessageBubble.js +7 -7
  185. package/web-dist/components/metric-card/MetricCard.js +9 -9
  186. package/web-dist/components/missing-element/MissingElement.js +4 -4
  187. package/web-dist/components/o-auth-provider-button/OAuthProviderButton.js +8 -8
  188. package/web-dist/components/o-auth-provider-list/OAuthProviderList.js +8 -8
  189. package/web-dist/components/opening-book/OpeningBook.js +2 -2
  190. package/web-dist/components/otp-form/OtpForm.js +8 -8
  191. package/web-dist/components/pagination/Pagination.js +4 -4
  192. package/web-dist/components/palette-item/PaletteItem.js +9 -9
  193. package/web-dist/components/playing-card/PlayingCard.js +2 -2
  194. package/web-dist/components/poker-training-table/PokerTrainingTable.js +2 -2
  195. package/web-dist/components/popover-menu/PopoverMenu.js +4 -4
  196. package/web-dist/components/post-card/PostCard.js +9 -9
  197. package/web-dist/components/product-card/ProductCard.js +9 -9
  198. package/web-dist/components/progress/Progress.js +4 -4
  199. package/web-dist/components/progress-ring/ProgressRing.js +4 -4
  200. package/web-dist/components/radio/Radio.js +5 -5
  201. package/web-dist/components/radio-group/RadioGroup.js +5 -5
  202. package/web-dist/components/rating/Rating.js +3 -3
  203. package/web-dist/components/reader-surface/ReaderSurface.js +9 -9
  204. package/web-dist/components/scan-overlay/ScanOverlay.js +10 -10
  205. package/web-dist/components/screen/Screen.js +2 -2
  206. package/web-dist/components/screen-section/ScreenSection.js +4 -4
  207. package/web-dist/components/scroll-view/ScrollView.js +2 -2
  208. package/web-dist/components/search-input/SearchInput.js +4 -4
  209. package/web-dist/components/section-header/SectionHeader.js +4 -4
  210. package/web-dist/components/section-list/SectionList.js +5 -5
  211. package/web-dist/components/select/Select.js +4 -4
  212. package/web-dist/components/selectable-item/SelectableItem.js +1 -1
  213. package/web-dist/components/selection-provider/SelectionProvider.js +1 -1
  214. package/web-dist/components/sign-in-form/SignInForm.js +8 -8
  215. package/web-dist/components/sign-up-form/SignUpForm.js +8 -8
  216. package/web-dist/components/skeleton/Skeleton.js +12 -12
  217. package/web-dist/components/skeleton-card/SkeletonCard.js +12 -12
  218. package/web-dist/components/skeleton-list/SkeletonList.js +12 -12
  219. package/web-dist/components/skeleton-text/SkeletonText.js +12 -12
  220. package/web-dist/components/surface/Surface.js +2 -2
  221. package/web-dist/components/switch/Switch.js +1 -1
  222. package/web-dist/components/tab/Tab.js +2 -2
  223. package/web-dist/components/tab-list/TabList.js +2 -2
  224. package/web-dist/components/tab-panel/TabPanel.js +2 -2
  225. package/web-dist/components/tabletop-table/TabletopTable.js +2 -2
  226. package/web-dist/components/tabs/Tabs.js +2 -2
  227. package/web-dist/components/text/Text.js +2 -2
  228. package/web-dist/components/text-input/TextInput.js +4 -4
  229. package/web-dist/components/time-picker/TimePicker.js +5 -5
  230. package/web-dist/components/timeline/Timeline.js +4 -4
  231. package/web-dist/components/toast/Toast.js +2 -2
  232. package/web-dist/components/toast-provider/ToastProvider.js +2 -2
  233. package/web-dist/components/toolbar/Toolbar.js +9 -9
  234. package/web-dist/components/tree-item/TreeItem.js +41 -22
  235. package/web-dist/components/tree-view/TreeView.d.ts +4 -3
  236. package/web-dist/components/tree-view/TreeView.js +25 -12
  237. package/web-dist/components/uploader/Uploader.js +10 -10
  238. package/web-dist/components/view/View.js +2 -2
  239. package/web-dist/manifest.json +577 -568
  240. package/web-dist/runtime/ZoraProvider.js +3 -3
  241. /package/web-dist/chunks/{Accordion-k3bc4kad.js → Accordion-13y3zx87.js} +0 -0
@@ -1,29 +1,29 @@
1
1
  'use client';
2
2
  import"../../chunks/Accordion-kcx57mk5.js";
3
3
  import"../../chunks/Accordion-7hn324r1.js";
4
- import"../../chunks/Accordion-k3bc4kad.js";
4
+ import"../../chunks/Accordion-13y3zx87.js";
5
5
  import"../../chunks/Accordion-x5ny2aax.js";
6
6
  import"../../chunks/Accordion-r1epjp5y.js";
7
- import"../../chunks/Accordion-j2aw3d5b.js";
7
+ import"../../chunks/Accordion-01e56hb5.js";
8
8
  import {
9
9
  Skeleton2,
10
10
  SkeletonText2,
11
11
  SkeletonCard2,
12
12
  SkeletonList2
13
- } from "../../chunks/Accordion-73m7z73v.js";
13
+ } from "../../chunks/Accordion-x1dg1f47.js";
14
14
  import"../../chunks/Accordion-vq462y0x.js";
15
15
  import"../../chunks/Accordion-cdppbyad.js";
16
16
  import"../../chunks/Accordion-bsy1jrak.js";
17
- import"../../chunks/Accordion-nc5gnvnb.js";
17
+ import"../../chunks/Accordion-dp638q63.js";
18
18
  import"../../chunks/Accordion-13b6y37e.js";
19
- import"../../chunks/Accordion-b3qy1trj.js";
20
- import"../../chunks/Accordion-ycmg06sq.js";
21
- import"../../chunks/Accordion-s1jhv8gk.js";
22
- import"../../chunks/Accordion-1cgz6f8t.js";
23
- import"../../chunks/Accordion-jj3bg8c1.js";
24
- import"../../chunks/Accordion-cecn51ry.js";
25
- import"../../chunks/Accordion-pnvt10cv.js";
26
- import"../../chunks/Accordion-45ej9brb.js";
19
+ import"../../chunks/Accordion-fm3jxs1f.js";
20
+ import"../../chunks/Accordion-rx2gzadh.js";
21
+ import"../../chunks/Accordion-x13vca75.js";
22
+ import"../../chunks/Accordion-x4rjd7yn.js";
23
+ import"../../chunks/Accordion-k7wwyx5x.js";
24
+ import"../../chunks/Accordion-17pht8jd.js";
25
+ import"../../chunks/Accordion-w1afjp87.js";
26
+ import"../../chunks/Accordion-swys7qts.js";
27
27
  import"../../chunks/Accordion-eqvdv7tt.js";
28
28
  import"../../chunks/Accordion-61e19g3e.js";
29
29
  import"../../chunks/Accordion-e1nn8m46.js";
@@ -1,29 +1,29 @@
1
1
  'use client';
2
2
  import"../../chunks/Accordion-kcx57mk5.js";
3
3
  import"../../chunks/Accordion-7hn324r1.js";
4
- import"../../chunks/Accordion-k3bc4kad.js";
4
+ import"../../chunks/Accordion-13y3zx87.js";
5
5
  import"../../chunks/Accordion-x5ny2aax.js";
6
6
  import"../../chunks/Accordion-r1epjp5y.js";
7
- import"../../chunks/Accordion-j2aw3d5b.js";
7
+ import"../../chunks/Accordion-01e56hb5.js";
8
8
  import {
9
9
  Skeleton2,
10
10
  SkeletonText2,
11
11
  SkeletonCard2,
12
12
  SkeletonList2
13
- } from "../../chunks/Accordion-73m7z73v.js";
13
+ } from "../../chunks/Accordion-x1dg1f47.js";
14
14
  import"../../chunks/Accordion-vq462y0x.js";
15
15
  import"../../chunks/Accordion-cdppbyad.js";
16
16
  import"../../chunks/Accordion-bsy1jrak.js";
17
- import"../../chunks/Accordion-nc5gnvnb.js";
17
+ import"../../chunks/Accordion-dp638q63.js";
18
18
  import"../../chunks/Accordion-13b6y37e.js";
19
- import"../../chunks/Accordion-b3qy1trj.js";
20
- import"../../chunks/Accordion-ycmg06sq.js";
21
- import"../../chunks/Accordion-s1jhv8gk.js";
22
- import"../../chunks/Accordion-1cgz6f8t.js";
23
- import"../../chunks/Accordion-jj3bg8c1.js";
24
- import"../../chunks/Accordion-cecn51ry.js";
25
- import"../../chunks/Accordion-pnvt10cv.js";
26
- import"../../chunks/Accordion-45ej9brb.js";
19
+ import"../../chunks/Accordion-fm3jxs1f.js";
20
+ import"../../chunks/Accordion-rx2gzadh.js";
21
+ import"../../chunks/Accordion-x13vca75.js";
22
+ import"../../chunks/Accordion-x4rjd7yn.js";
23
+ import"../../chunks/Accordion-k7wwyx5x.js";
24
+ import"../../chunks/Accordion-17pht8jd.js";
25
+ import"../../chunks/Accordion-w1afjp87.js";
26
+ import"../../chunks/Accordion-swys7qts.js";
27
27
  import"../../chunks/Accordion-eqvdv7tt.js";
28
28
  import"../../chunks/Accordion-61e19g3e.js";
29
29
  import"../../chunks/Accordion-e1nn8m46.js";
@@ -4,10 +4,10 @@ import"../../chunks/Accordion-r1epjp5y.js";
4
4
  import"../../chunks/Accordion-7hn324r1.js";
5
5
  import"../../chunks/Accordion-13b6y37e.js";
6
6
  import"../../chunks/Accordion-kcx57mk5.js";
7
- import"../../chunks/Accordion-k3bc4kad.js";
7
+ import"../../chunks/Accordion-13y3zx87.js";
8
8
  import {
9
9
  Surface2
10
- } from "../../chunks/Accordion-rkv7jyaj.js";
10
+ } from "../../chunks/Accordion-kemavggr.js";
11
11
  import"../../chunks/Accordion-ys214jt5.js";
12
12
  import"../../chunks/Accordion-rgyg9bw8.js";
13
13
  import"../../chunks/Accordion-fre84yaq.js";
@@ -18,7 +18,7 @@ import {
18
18
  import"../../chunks/Accordion-kcx57mk5.js";
19
19
  import {
20
20
  withZoraThemeScope
21
- } from "../../chunks/Accordion-k3bc4kad.js";
21
+ } from "../../chunks/Accordion-13y3zx87.js";
22
22
  import"../../chunks/Accordion-61e19g3e.js";
23
23
  import"../../chunks/Accordion-ys214jt5.js";
24
24
  import {
@@ -8,9 +8,9 @@ import {
8
8
  TabList2,
9
9
  TabPanel2,
10
10
  Tabs2
11
- } from "../../chunks/Accordion-8hhvtcxp.js";
11
+ } from "../../chunks/Accordion-xzd0tx46.js";
12
12
  import"../../chunks/Accordion-kcx57mk5.js";
13
- import"../../chunks/Accordion-k3bc4kad.js";
13
+ import"../../chunks/Accordion-13y3zx87.js";
14
14
  import"../../chunks/Accordion-6zb9d92y.js";
15
15
  import"../../chunks/Accordion-mnac2z83.js";
16
16
  import"../../chunks/Accordion-ys214jt5.js";
@@ -8,9 +8,9 @@ import {
8
8
  TabList2,
9
9
  TabPanel2,
10
10
  Tabs2
11
- } from "../../chunks/Accordion-8hhvtcxp.js";
11
+ } from "../../chunks/Accordion-xzd0tx46.js";
12
12
  import"../../chunks/Accordion-kcx57mk5.js";
13
- import"../../chunks/Accordion-k3bc4kad.js";
13
+ import"../../chunks/Accordion-13y3zx87.js";
14
14
  import"../../chunks/Accordion-6zb9d92y.js";
15
15
  import"../../chunks/Accordion-mnac2z83.js";
16
16
  import"../../chunks/Accordion-ys214jt5.js";
@@ -8,9 +8,9 @@ import {
8
8
  TabList2,
9
9
  TabPanel2,
10
10
  Tabs2
11
- } from "../../chunks/Accordion-8hhvtcxp.js";
11
+ } from "../../chunks/Accordion-xzd0tx46.js";
12
12
  import"../../chunks/Accordion-kcx57mk5.js";
13
- import"../../chunks/Accordion-k3bc4kad.js";
13
+ import"../../chunks/Accordion-13y3zx87.js";
14
14
  import"../../chunks/Accordion-6zb9d92y.js";
15
15
  import"../../chunks/Accordion-mnac2z83.js";
16
16
  import"../../chunks/Accordion-ys214jt5.js";
@@ -1,14 +1,14 @@
1
1
  'use client';
2
2
  import"../../chunks/Accordion-kcx57mk5.js";
3
3
  import"../../chunks/Accordion-7hn324r1.js";
4
- import"../../chunks/Accordion-k3bc4kad.js";
4
+ import"../../chunks/Accordion-13y3zx87.js";
5
5
  import {
6
6
  CardBack2,
7
7
  PlayingCard2,
8
8
  CardHand2,
9
9
  TabletopTable2,
10
10
  PokerTrainingTable2
11
- } from "../../chunks/Accordion-z585n0mr.js";
11
+ } from "../../chunks/Accordion-rjgdrn7y.js";
12
12
  import"../../chunks/Accordion-7zfskq1s.js";
13
13
  export {
14
14
  CardBack2 as CardBack,
@@ -8,9 +8,9 @@ import {
8
8
  TabList2,
9
9
  TabPanel2,
10
10
  Tabs2
11
- } from "../../chunks/Accordion-8hhvtcxp.js";
11
+ } from "../../chunks/Accordion-xzd0tx46.js";
12
12
  import"../../chunks/Accordion-kcx57mk5.js";
13
- import"../../chunks/Accordion-k3bc4kad.js";
13
+ import"../../chunks/Accordion-13y3zx87.js";
14
14
  import"../../chunks/Accordion-6zb9d92y.js";
15
15
  import"../../chunks/Accordion-mnac2z83.js";
16
16
  import"../../chunks/Accordion-ys214jt5.js";
@@ -2,11 +2,11 @@
2
2
  import"../../chunks/Accordion-x5ny2aax.js";
3
3
  import"../../chunks/Accordion-kcx57mk5.js";
4
4
  import"../../chunks/Accordion-7hn324r1.js";
5
- import"../../chunks/Accordion-k3bc4kad.js";
5
+ import"../../chunks/Accordion-13y3zx87.js";
6
6
  import {
7
7
  Heading2,
8
8
  Text2
9
- } from "../../chunks/Accordion-ycmg06sq.js";
9
+ } from "../../chunks/Accordion-rx2gzadh.js";
10
10
  import"../../chunks/Accordion-e1nn8m46.js";
11
11
  import"../../chunks/Accordion-7zfskq1s.js";
12
12
  export {
@@ -3,15 +3,15 @@ import"../../chunks/Accordion-7hn324r1.js";
3
3
  import"../../chunks/Accordion-vq462y0x.js";
4
4
  import {
5
5
  TextInput2
6
- } from "../../chunks/Accordion-07rdw2vh.js";
6
+ } from "../../chunks/Accordion-89q14src.js";
7
7
  import"../../chunks/Accordion-x5ny2aax.js";
8
8
  import"../../chunks/Accordion-r1epjp5y.js";
9
9
  import"../../chunks/Accordion-cdppbyad.js";
10
10
  import"../../chunks/Accordion-bsy1jrak.js";
11
- import"../../chunks/Accordion-nc5gnvnb.js";
11
+ import"../../chunks/Accordion-dp638q63.js";
12
12
  import"../../chunks/Accordion-kcx57mk5.js";
13
- import"../../chunks/Accordion-k3bc4kad.js";
14
- import"../../chunks/Accordion-j2aw3d5b.js";
13
+ import"../../chunks/Accordion-13y3zx87.js";
14
+ import"../../chunks/Accordion-01e56hb5.js";
15
15
  import"../../chunks/Accordion-61e19g3e.js";
16
16
  import"../../chunks/Accordion-e1nn8m46.js";
17
17
  import"../../chunks/Accordion-7zfskq1s.js";
@@ -13,22 +13,22 @@ import"../../chunks/Accordion-13b6y37e.js";
13
13
  import"../../chunks/Accordion-kcx57mk5.js";
14
14
  import {
15
15
  withZoraThemeScope
16
- } from "../../chunks/Accordion-k3bc4kad.js";
16
+ } from "../../chunks/Accordion-13y3zx87.js";
17
17
  import {
18
18
  Surface2
19
- } from "../../chunks/Accordion-rkv7jyaj.js";
19
+ } from "../../chunks/Accordion-kemavggr.js";
20
20
  import"../../chunks/Accordion-vq462y0x.js";
21
21
  import"../../chunks/Accordion-cdppbyad.js";
22
22
  import"../../chunks/Accordion-bsy1jrak.js";
23
23
  import {
24
24
  Button2
25
- } from "../../chunks/Accordion-nc5gnvnb.js";
25
+ } from "../../chunks/Accordion-dp638q63.js";
26
26
  import {
27
27
  View2
28
- } from "../../chunks/Accordion-j2aw3d5b.js";
28
+ } from "../../chunks/Accordion-01e56hb5.js";
29
29
  import {
30
30
  Text2
31
- } from "../../chunks/Accordion-ycmg06sq.js";
31
+ } from "../../chunks/Accordion-rx2gzadh.js";
32
32
  import {
33
33
  Field3
34
34
  } from "../../chunks/Accordion-zx0jc0kg.js";
@@ -4,19 +4,19 @@ import"../../chunks/Accordion-vq462y0x.js";
4
4
  import"../../chunks/Accordion-kcx57mk5.js";
5
5
  import {
6
6
  withZoraThemeScope
7
- } from "../../chunks/Accordion-k3bc4kad.js";
7
+ } from "../../chunks/Accordion-13y3zx87.js";
8
8
  import {
9
9
  Icon2
10
- } from "../../chunks/Accordion-1cgz6f8t.js";
10
+ } from "../../chunks/Accordion-x4rjd7yn.js";
11
11
  import"../../chunks/Accordion-x5ny2aax.js";
12
12
  import"../../chunks/Accordion-r1epjp5y.js";
13
13
  import {
14
14
  View2
15
- } from "../../chunks/Accordion-j2aw3d5b.js";
15
+ } from "../../chunks/Accordion-01e56hb5.js";
16
16
  import {
17
17
  Heading2,
18
18
  Text2
19
- } from "../../chunks/Accordion-ycmg06sq.js";
19
+ } from "../../chunks/Accordion-rx2gzadh.js";
20
20
  import {
21
21
  resolveIconSize
22
22
  } from "../../chunks/Accordion-961ncx4e.js";
@@ -6,11 +6,11 @@ import"../../chunks/Accordion-13b6y37e.js";
6
6
  import"../../chunks/Accordion-bsy1jrak.js";
7
7
  import"../../chunks/Accordion-5qmfa7vr.js";
8
8
  import"../../chunks/Accordion-kcx57mk5.js";
9
- import"../../chunks/Accordion-k3bc4kad.js";
9
+ import"../../chunks/Accordion-13y3zx87.js";
10
10
  import {
11
11
  Toast2,
12
12
  ToastProvider2
13
- } from "../../chunks/Accordion-2fm2tm5r.js";
13
+ } from "../../chunks/Accordion-e633pb7z.js";
14
14
  import"../../chunks/Accordion-99cj85ez.js";
15
15
  import"../../chunks/Accordion-eqvdv7tt.js";
16
16
  import"../../chunks/Accordion-ys214jt5.js";
@@ -6,11 +6,11 @@ import"../../chunks/Accordion-13b6y37e.js";
6
6
  import"../../chunks/Accordion-bsy1jrak.js";
7
7
  import"../../chunks/Accordion-5qmfa7vr.js";
8
8
  import"../../chunks/Accordion-kcx57mk5.js";
9
- import"../../chunks/Accordion-k3bc4kad.js";
9
+ import"../../chunks/Accordion-13y3zx87.js";
10
10
  import {
11
11
  Toast2,
12
12
  ToastProvider2
13
- } from "../../chunks/Accordion-2fm2tm5r.js";
13
+ } from "../../chunks/Accordion-e633pb7z.js";
14
14
  import"../../chunks/Accordion-99cj85ez.js";
15
15
  import"../../chunks/Accordion-eqvdv7tt.js";
16
16
  import"../../chunks/Accordion-ys214jt5.js";
@@ -6,22 +6,22 @@ import"../../chunks/Accordion-r1epjp5y.js";
6
6
  import"../../chunks/Accordion-13b6y37e.js";
7
7
  import {
8
8
  Card2
9
- } from "../../chunks/Accordion-b3qy1trj.js";
9
+ } from "../../chunks/Accordion-fm3jxs1f.js";
10
10
  import"../../chunks/Accordion-kcx57mk5.js";
11
11
  import {
12
12
  withZoraThemeScope
13
- } from "../../chunks/Accordion-k3bc4kad.js";
13
+ } from "../../chunks/Accordion-13y3zx87.js";
14
14
  import {
15
15
  View2
16
- } from "../../chunks/Accordion-j2aw3d5b.js";
17
- import"../../chunks/Accordion-ycmg06sq.js";
16
+ } from "../../chunks/Accordion-01e56hb5.js";
17
+ import"../../chunks/Accordion-rx2gzadh.js";
18
18
  import"../../chunks/Accordion-bsy1jrak.js";
19
- import"../../chunks/Accordion-s1jhv8gk.js";
19
+ import"../../chunks/Accordion-x13vca75.js";
20
20
  import"../../chunks/Accordion-vq462y0x.js";
21
- import"../../chunks/Accordion-1cgz6f8t.js";
22
- import"../../chunks/Accordion-jj3bg8c1.js";
23
- import"../../chunks/Accordion-nc5gnvnb.js";
24
- import"../../chunks/Accordion-cecn51ry.js";
21
+ import"../../chunks/Accordion-x4rjd7yn.js";
22
+ import"../../chunks/Accordion-k7wwyx5x.js";
23
+ import"../../chunks/Accordion-dp638q63.js";
24
+ import"../../chunks/Accordion-17pht8jd.js";
25
25
  import"../../chunks/Accordion-eqvdv7tt.js";
26
26
  import"../../chunks/Accordion-61e19g3e.js";
27
27
  import"../../chunks/Accordion-e1nn8m46.js";
@@ -1,39 +1,51 @@
1
1
  'use client';
2
- import"../../chunks/Accordion-7hn324r1.js";
3
- import"../../chunks/Accordion-vq462y0x.js";
4
2
  import"../../chunks/Accordion-x5ny2aax.js";
3
+ import {
4
+ require_cjs
5
+ } from "../../chunks/Accordion-7hn324r1.js";
6
+ import {
7
+ Pressable
8
+ } from "../../chunks/Accordion-cdppbyad.js";
9
+ import"../../chunks/Accordion-vq462y0x.js";
5
10
  import"../../chunks/Accordion-r1epjp5y.js";
6
- import"../../chunks/Accordion-cdppbyad.js";
7
11
  import"../../chunks/Accordion-bsy1jrak.js";
8
12
  import {
9
13
  IconButton2
10
- } from "../../chunks/Accordion-nc5gnvnb.js";
14
+ } from "../../chunks/Accordion-dp638q63.js";
11
15
  import"../../chunks/Accordion-kcx57mk5.js";
12
16
  import {
13
17
  withZoraThemeScope
14
- } from "../../chunks/Accordion-k3bc4kad.js";
18
+ } from "../../chunks/Accordion-13y3zx87.js";
15
19
  import {
16
20
  View2
17
- } from "../../chunks/Accordion-j2aw3d5b.js";
21
+ } from "../../chunks/Accordion-01e56hb5.js";
18
22
  import {
19
23
  Icon2
20
- } from "../../chunks/Accordion-1cgz6f8t.js";
21
- import"../../chunks/Accordion-ycmg06sq.js";
24
+ } from "../../chunks/Accordion-x4rjd7yn.js";
25
+ import"../../chunks/Accordion-rx2gzadh.js";
22
26
  import {
23
27
  ListItem2
24
- } from "../../chunks/Accordion-pnvt10cv.js";
25
- import"../../chunks/Accordion-45ej9brb.js";
28
+ } from "../../chunks/Accordion-w1afjp87.js";
29
+ import"../../chunks/Accordion-swys7qts.js";
30
+ import"../../chunks/Accordion-q0st659f.js";
26
31
  import {
27
32
  toggleExpandedIds
28
33
  } from "../../chunks/Accordion-52fg6h9t.js";
34
+ import {
35
+ resolveSelectionEventIntent
36
+ } from "../../chunks/Accordion-5df6cgyf.js";
29
37
  import"../../chunks/Accordion-61e19g3e.js";
30
38
  import"../../chunks/Accordion-e1nn8m46.js";
31
39
  import"../../chunks/Accordion-7zfskq1s.js";
32
40
  import"../../chunks/Accordion-ys214jt5.js";
33
41
  import"../../chunks/Accordion-rgyg9bw8.js";
34
42
  import"../../chunks/Accordion-fre84yaq.js";
43
+ import {
44
+ __toESM
45
+ } from "../../chunks/Accordion-9qvmwkxe.js";
35
46
 
36
47
  // src/features/tree-view/adapters/inbound/TreeItem.tsx
48
+ var import_react_native = __toESM(require_cjs(), 1);
37
49
  import { jsx, jsxs } from "react/jsx-runtime";
38
50
  function TreeItemInner({
39
51
  themeId: _themeId,
@@ -41,7 +53,7 @@ function TreeItemInner({
41
53
  node,
42
54
  depth,
43
55
  expansionIndicator,
44
- selectedId,
56
+ selectedIds,
45
57
  expandedIds,
46
58
  onSelect,
47
59
  onToggleExpand,
@@ -51,7 +63,7 @@ function TreeItemInner({
51
63
  }) {
52
64
  const hasChildren = node.children !== undefined && node.children.length > 0;
53
65
  const isExpanded = expandedIds.includes(node.id);
54
- const isSelected = selectedId === node.id;
66
+ const isSelected = selectedIds.includes(node.id);
55
67
  const renderContent = () => {
56
68
  if (renderItem) {
57
69
  return renderItem({
@@ -73,11 +85,19 @@ function TreeItemInner({
73
85
  selected: isSelected,
74
86
  trailing: node.actions
75
87
  };
76
- return onSelect === undefined ? /* @__PURE__ */ jsx(ListItem2, {
77
- ...listItemProps
78
- }) : /* @__PURE__ */ jsx(ListItem2, {
79
- ...listItemProps,
80
- onPress: () => onSelect(node.id)
88
+ if (onSelect === undefined)
89
+ return /* @__PURE__ */ jsx(ListItem2, {
90
+ ...listItemProps
91
+ });
92
+ return /* @__PURE__ */ jsx(Pressable, {
93
+ accessibilityRole: "button",
94
+ accessibilityState: { disabled: node.disabled, selected: isSelected },
95
+ disabled: node.disabled,
96
+ interactionPolicy,
97
+ onPress: (event) => onSelect(node.id, resolveSelectionEventIntent(event, import_react_native.Platform.OS === "web" ? "pointer" : "touch")),
98
+ children: /* @__PURE__ */ jsx(ListItem2, {
99
+ ...listItemProps
100
+ })
81
101
  });
82
102
  };
83
103
  return /* @__PURE__ */ jsxs(View2, {
@@ -122,7 +142,7 @@ function TreeItemInner({
122
142
  onSelect,
123
143
  onToggleExpand,
124
144
  renderItem,
125
- selectedId
145
+ selectedIds
126
146
  }, child.id))
127
147
  }) : null
128
148
  ]
@@ -136,7 +156,7 @@ function TreeViewInner({
136
156
  themeId: _themeId,
137
157
  mode: _mode,
138
158
  nodes,
139
- selectedId,
159
+ selectedIds = [],
140
160
  expandedIds: controlledExpandedIds,
141
161
  defaultExpandedIds,
142
162
  onSelect,
@@ -153,9 +173,8 @@ function TreeViewInner({
153
173
  if (interactionPolicy === "passive")
154
174
  return;
155
175
  const nextExpandedIds = toggleExpandedIds(expandedIds, id);
156
- if (!isControlled) {
176
+ if (!isControlled)
157
177
  setInternalExpandedIds(nextExpandedIds);
158
- }
159
178
  onExpandedChange?.(nextExpandedIds);
160
179
  };
161
180
  return /* @__PURE__ */ jsx2(View2, {
@@ -169,7 +188,7 @@ function TreeViewInner({
169
188
  onSelect,
170
189
  onToggleExpand: handleToggleExpand,
171
190
  renderItem,
172
- selectedId,
191
+ selectedIds,
173
192
  interactionPolicy
174
193
  }, node.id))
175
194
  });
@@ -1,3 +1,4 @@
1
+ import type { SelectionIntent } from '@ankhorage/utility/selection';
1
2
  import React from 'react';
2
3
  export interface TreeItemNode<TId extends string = string> {
3
4
  readonly id: TId;
@@ -17,10 +18,10 @@ export interface TreeItemRenderProps<TId extends string = string> {
17
18
  }
18
19
  export interface TreeViewProps<TId extends string = string> {
19
20
  readonly nodes: readonly TreeItemNode<TId>[];
20
- readonly selectedId?: TId;
21
+ readonly selectedIds?: readonly TId[];
21
22
  readonly expandedIds?: readonly TId[];
22
23
  readonly defaultExpandedIds?: readonly TId[];
23
- readonly onSelect?: (id: TId) => void;
24
+ readonly onSelect?: (id: TId, intent: SelectionIntent) => void;
24
25
  readonly onExpandedChange?: (ids: readonly TId[]) => void;
25
26
  readonly renderItem?: (props: TreeItemRenderProps<TId>) => React.ReactNode;
26
27
  readonly expansionIndicator?: 'chevron' | 'folder';
@@ -33,5 +34,5 @@ export interface TreeViewProps<TId extends string = string> {
33
34
  * expansionIndicator Use `chevron` beside custom node icons, or `folder` (default) for
34
35
  * built-in folder/file indicators. Expansion is leading and independent from row selection.
35
36
  */
36
- export declare function TreeView<TId extends string = string>({ nodes, selectedId, expandedIds: controlledExpandedIds, defaultExpandedIds, onSelect, onExpandedChange, renderItem, expansionIndicator, className, style, ariaLabel, }: TreeViewProps<TId>): React.JSX.Element;
37
+ export declare function TreeView<TId extends string = string>({ nodes, selectedIds, expandedIds: controlledExpandedIds, defaultExpandedIds, onSelect, onExpandedChange, renderItem, expansionIndicator, className, style, ariaLabel, }: TreeViewProps<TId>): React.JSX.Element;
37
38
  //# sourceMappingURL=TreeView.d.ts.map
@@ -2,6 +2,9 @@
2
2
  import {
3
3
  toggleExpandedIds
4
4
  } from "../../chunks/Accordion-52fg6h9t.js";
5
+ import {
6
+ resolveSelectionEventIntent
7
+ } from "../../chunks/Accordion-5df6cgyf.js";
5
8
 
6
9
  // src/features/tree-view/adapters/inbound/web-artifact/TreeView.tsx
7
10
  import React2 from "react";
@@ -42,7 +45,7 @@ function TreeItemRow(props) {
42
45
  const { node } = props;
43
46
  const hasChildren = node.children !== undefined && node.children.length > 0;
44
47
  const expanded = props.expandedIds.includes(node.id);
45
- const selected = props.selectedId === node.id;
48
+ const selected = props.selectedIds.includes(node.id);
46
49
  const content = props.renderItem?.({
47
50
  node,
48
51
  depth: props.depth,
@@ -59,7 +62,8 @@ function TreeItemRow(props) {
59
62
  "aria-disabled": node.disabled === true ? true : undefined,
60
63
  "aria-expanded": hasChildren ? expanded : undefined,
61
64
  "aria-selected": selected,
62
- onClick: () => selectNode(props),
65
+ onPointerUp: (event) => selectNode(event, props),
66
+ onClick: (event) => selectNodeFromSyntheticClick(event, props),
63
67
  onKeyDown: (event) => selectNodeFromKeyboard(event, props),
64
68
  role: "treeitem",
65
69
  tabIndex: node.disabled || props.onSelect === undefined ? undefined : 0,
@@ -112,6 +116,7 @@ function TreeItemActions({ actions }) {
112
116
  return null;
113
117
  return /* @__PURE__ */ jsx2("span", {
114
118
  onClick: (event) => event.stopPropagation(),
119
+ onPointerUp: (event) => event.stopPropagation(),
115
120
  onKeyDown: (event) => event.stopPropagation(),
116
121
  style: INLINE_STYLE,
117
122
  children: actions
@@ -133,6 +138,7 @@ function TreeItemExpander(props) {
133
138
  "aria-label": props.expanded ? "Collapse" : "Expand",
134
139
  disabled: props.disabled,
135
140
  onKeyDown: (event) => event.stopPropagation(),
141
+ onPointerUp: (event) => event.stopPropagation(),
136
142
  onClick: (event) => {
137
143
  event.stopPropagation();
138
144
  props.onToggleExpand(props.nodeId);
@@ -153,15 +159,21 @@ function TreeItemChildren(props) {
153
159
  }))
154
160
  });
155
161
  }
156
- function selectNode(props) {
157
- if (!props.node.disabled)
158
- props.onSelect?.(props.node.id);
162
+ function selectNode(event, props) {
163
+ if (props.node.disabled)
164
+ return;
165
+ props.onSelect?.(props.node.id, resolveSelectionEventIntent(event, "pointer"));
166
+ }
167
+ function selectNodeFromSyntheticClick(event, props) {
168
+ if (event.detail !== 0 || props.node.disabled)
169
+ return;
170
+ props.onSelect?.(props.node.id, resolveSelectionEventIntent(event, "keyboard"));
159
171
  }
160
172
  function selectNodeFromKeyboard(event, props) {
161
173
  if (props.node.disabled || event.key !== "Enter" && event.key !== " ")
162
174
  return;
163
175
  event.preventDefault();
164
- props.onSelect?.(props.node.id);
176
+ props.onSelect?.(props.node.id, resolveSelectionEventIntent(event, "keyboard"));
165
177
  }
166
178
  function createRowStyle(depth, selected, disabled, selectable) {
167
179
  return {
@@ -217,7 +229,7 @@ var EXPANDER_STYLE = {
217
229
  import { jsx as jsx3 } from "react/jsx-runtime";
218
230
  function TreeView({
219
231
  nodes,
220
- selectedId,
232
+ selectedIds = [],
221
233
  expandedIds: controlledExpandedIds,
222
234
  defaultExpandedIds,
223
235
  onSelect,
@@ -238,10 +250,11 @@ function TreeView({
238
250
  setInternalExpandedIds(nextExpandedIds);
239
251
  onExpandedChange?.(nextExpandedIds);
240
252
  }, [expandedIds, isControlled, onExpandedChange]);
241
- useSelectedTreeItemReveal(rootRef, selectedId, expandedIds);
253
+ useSelectedTreeItemReveal(rootRef, selectedIds, expandedIds);
242
254
  return /* @__PURE__ */ jsx3("div", {
243
255
  ref: rootRef,
244
256
  "aria-label": ariaLabel,
257
+ "aria-multiselectable": "true",
245
258
  className,
246
259
  role: "tree",
247
260
  style: { ...TREE_STYLE, ...style },
@@ -253,17 +266,17 @@ function TreeView({
253
266
  onSelect,
254
267
  onToggleExpand: handleToggleExpand,
255
268
  renderItem,
256
- selectedId
269
+ selectedIds
257
270
  }, node.id))
258
271
  });
259
272
  }
260
- function useSelectedTreeItemReveal(rootRef, selectedId, expandedIds) {
273
+ function useSelectedTreeItemReveal(rootRef, selectedIds, expandedIds) {
261
274
  React2.useEffect(() => {
262
- if (selectedId === undefined)
275
+ if (selectedIds.length === 0)
263
276
  return;
264
277
  const root = rootRef.current;
265
278
  root?.querySelector('[role="treeitem"][aria-selected="true"]')?.scrollIntoView({ block: "nearest", inline: "nearest" });
266
- }, [expandedIds, rootRef, selectedId]);
279
+ }, [expandedIds, rootRef, selectedIds]);
267
280
  }
268
281
  var TREE_STYLE = {
269
282
  display: "flex",