@ankhorage/zora 25.3.0 → 25.5.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 (113) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +2 -1
  3. package/dist/features/registry/ZORA_COMPONENT_REGISTRY.d.ts.map +1 -1
  4. package/dist/features/registry/ZORA_COMPONENT_REGISTRY.js +4 -0
  5. package/dist/features/registry/ZORA_COMPONENT_REGISTRY.js.map +1 -1
  6. package/dist/features/registry/componentMeta.d.ts.map +1 -1
  7. package/dist/features/registry/componentMeta.js +4 -0
  8. package/dist/features/registry/componentMeta.js.map +1 -1
  9. package/dist/features/spatial-grid/adapters/inbound/SpatialGrid.d.ts +5 -0
  10. package/dist/features/spatial-grid/adapters/inbound/SpatialGrid.d.ts.map +1 -0
  11. package/dist/features/spatial-grid/adapters/inbound/SpatialGrid.js +38 -0
  12. package/dist/features/spatial-grid/adapters/inbound/SpatialGrid.js.map +1 -0
  13. package/dist/features/spatial-grid/application/sortSpatialGridItems.d.ts +4 -0
  14. package/dist/features/spatial-grid/application/sortSpatialGridItems.d.ts.map +1 -0
  15. package/dist/features/spatial-grid/application/sortSpatialGridItems.js +8 -0
  16. package/dist/features/spatial-grid/application/sortSpatialGridItems.js.map +1 -0
  17. package/dist/features/spatial-grid/meta.d.ts +11 -0
  18. package/dist/features/spatial-grid/meta.d.ts.map +1 -0
  19. package/dist/features/spatial-grid/meta.js +11 -0
  20. package/dist/features/spatial-grid/meta.js.map +1 -0
  21. package/dist/features/spatial-grid/public.d.ts +3 -0
  22. package/dist/features/spatial-grid/public.d.ts.map +1 -0
  23. package/dist/features/spatial-grid/public.js +2 -0
  24. package/dist/features/spatial-grid/public.js.map +1 -0
  25. package/dist/features/time-grid/adapters/inbound/TimeGrid.d.ts +5 -0
  26. package/dist/features/time-grid/adapters/inbound/TimeGrid.d.ts.map +1 -0
  27. package/dist/features/time-grid/adapters/inbound/TimeGrid.js +107 -0
  28. package/dist/features/time-grid/adapters/inbound/TimeGrid.js.map +1 -0
  29. package/dist/features/time-grid/adapters/inbound/TimeGridKeyboardProxy.d.ts +9 -0
  30. package/dist/features/time-grid/adapters/inbound/TimeGridKeyboardProxy.d.ts.map +1 -0
  31. package/dist/features/time-grid/adapters/inbound/TimeGridKeyboardProxy.js +5 -0
  32. package/dist/features/time-grid/adapters/inbound/TimeGridKeyboardProxy.js.map +1 -0
  33. package/dist/features/time-grid/adapters/inbound/TimeGridKeyboardProxy.native.d.ts +9 -0
  34. package/dist/features/time-grid/adapters/inbound/TimeGridKeyboardProxy.native.d.ts.map +1 -0
  35. package/dist/features/time-grid/adapters/inbound/TimeGridKeyboardProxy.native.js +5 -0
  36. package/dist/features/time-grid/adapters/inbound/TimeGridKeyboardProxy.native.js.map +1 -0
  37. package/dist/features/time-grid/adapters/inbound/TimeGridKeyboardProxy.web.d.ts +9 -0
  38. package/dist/features/time-grid/adapters/inbound/TimeGridKeyboardProxy.web.d.ts.map +1 -0
  39. package/dist/features/time-grid/adapters/inbound/TimeGridKeyboardProxy.web.js +10 -0
  40. package/dist/features/time-grid/adapters/inbound/TimeGridKeyboardProxy.web.js.map +1 -0
  41. package/dist/features/time-grid/application/resolveTimeGridNextFocusId.d.ts +4 -0
  42. package/dist/features/time-grid/application/resolveTimeGridNextFocusId.d.ts.map +1 -0
  43. package/dist/features/time-grid/application/resolveTimeGridNextFocusId.js +31 -0
  44. package/dist/features/time-grid/application/resolveTimeGridNextFocusId.js.map +1 -0
  45. package/dist/features/time-grid/application/resolveTimeGridVisibleIntervals.d.ts +5 -0
  46. package/dist/features/time-grid/application/resolveTimeGridVisibleIntervals.d.ts.map +1 -0
  47. package/dist/features/time-grid/application/resolveTimeGridVisibleIntervals.js +6 -0
  48. package/dist/features/time-grid/application/resolveTimeGridVisibleIntervals.js.map +1 -0
  49. package/dist/features/time-grid/meta.d.ts +11 -0
  50. package/dist/features/time-grid/meta.d.ts.map +1 -0
  51. package/dist/features/time-grid/meta.js +11 -0
  52. package/dist/features/time-grid/meta.js.map +1 -0
  53. package/dist/features/time-grid/public.d.ts +5 -0
  54. package/dist/features/time-grid/public.d.ts.map +1 -0
  55. package/dist/features/time-grid/public.js +4 -0
  56. package/dist/features/time-grid/public.js.map +1 -0
  57. package/dist/index.d.ts +4 -0
  58. package/dist/index.d.ts.map +1 -1
  59. package/dist/index.js +2 -0
  60. package/dist/index.js.map +1 -1
  61. package/dist/types/spatial-grid.d.ts +41 -0
  62. package/dist/types/spatial-grid.d.ts.map +1 -0
  63. package/dist/types/spatial-grid.js +2 -0
  64. package/dist/types/spatial-grid.js.map +1 -0
  65. package/dist/types/time-grid.d.ts +30 -0
  66. package/dist/types/time-grid.d.ts.map +1 -0
  67. package/dist/types/time-grid.js +2 -0
  68. package/dist/types/time-grid.js.map +1 -0
  69. package/package.json +3 -3
  70. package/src/features/registry/ZORA_COMPONENT_REGISTRY.ts +4 -0
  71. package/src/features/registry/componentMeta.ts +4 -0
  72. package/src/features/spatial-grid/adapters/inbound/SpatialGrid.test.tsx +248 -0
  73. package/src/features/spatial-grid/adapters/inbound/SpatialGrid.tsx +112 -0
  74. package/src/features/spatial-grid/application/sortSpatialGridItems.test.ts +42 -0
  75. package/src/features/spatial-grid/application/sortSpatialGridItems.ts +14 -0
  76. package/src/features/spatial-grid/meta.ts +12 -0
  77. package/src/features/spatial-grid/public.ts +6 -0
  78. package/src/features/time-grid/adapters/inbound/TimeGrid.test.tsx +131 -0
  79. package/src/features/time-grid/adapters/inbound/TimeGrid.tsx +197 -0
  80. package/src/features/time-grid/adapters/inbound/TimeGridKeyboardProxy.native.tsx +11 -0
  81. package/src/features/time-grid/adapters/inbound/TimeGridKeyboardProxy.tsx +11 -0
  82. package/src/features/time-grid/adapters/inbound/TimeGridKeyboardProxy.web.tsx +20 -0
  83. package/src/features/time-grid/application/resolveTimeGridNextFocusId.test.ts +46 -0
  84. package/src/features/time-grid/application/resolveTimeGridNextFocusId.ts +41 -0
  85. package/src/features/time-grid/application/resolveTimeGridVisibleIntervals.test.ts +33 -0
  86. package/src/features/time-grid/application/resolveTimeGridVisibleIntervals.ts +13 -0
  87. package/src/features/time-grid/meta.ts +12 -0
  88. package/src/features/time-grid/public.ts +4 -0
  89. package/src/index.ts +8 -0
  90. package/src/types/spatial-grid.ts +44 -0
  91. package/src/types/time-grid.ts +33 -0
  92. package/web-dist/chunks/{Accordion-e6ddpz5v.js → Accordion-0my2z6qe.js} +85 -1
  93. package/web-dist/chunks/{Accordion-e9ewv367.js → Accordion-7qfd4cb4.js} +1 -1
  94. package/web-dist/chunks/{Accordion-689w7frk.js → Accordion-d6azgz09.js} +1 -1
  95. package/web-dist/chunks/{Accordion-q2z00p5r.js → Accordion-gxj5qbpr.js} +1 -1
  96. package/web-dist/components/explorer/Explorer.js +2 -2
  97. package/web-dist/components/file-explorer/FileExplorer.js +2 -2
  98. package/web-dist/components/grid-line-overlay/GridLineOverlay.js +1 -1
  99. package/web-dist/components/grid-ruler/GridRuler.js +1 -1
  100. package/web-dist/components/grid-view/GridView.js +1 -1
  101. package/web-dist/components/media-explorer/MediaExplorer.js +2 -2
  102. package/web-dist/components/reader/Reader.js +1 -1
  103. package/web-dist/components/spatial-grid/SpatialGrid.d.ts +3 -0
  104. package/web-dist/components/spatial-grid/SpatialGrid.js +102 -0
  105. package/web-dist/components/spatial-grid/index.d.ts +1 -0
  106. package/web-dist/components/spatial-grid/index.js +2 -0
  107. package/web-dist/components/tile-grid/TileGrid.js +1 -1
  108. package/web-dist/components/time-grid/TimeGrid.d.ts +3 -0
  109. package/web-dist/components/time-grid/TimeGrid.js +208 -0
  110. package/web-dist/components/time-grid/index.d.ts +1 -0
  111. package/web-dist/components/time-grid/index.js +2 -0
  112. package/web-dist/components/uploader/Uploader.js +2 -2
  113. package/web-dist/manifest.json +52 -20
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## 25.5.0
4
+
5
+ ### Minor Changes
6
+
7
+ - e6b7784: Add virtualized TimeGrid interval lanes for generic timeline, DAW, and scheduler code APIs.
8
+
9
+ ## 25.4.0
10
+
11
+ ### Minor Changes
12
+
13
+ - 1a3af1d: Add a virtualized SpatialGrid for accessible free-placement boards.
14
+
3
15
  ## 25.3.0
4
16
 
5
17
  ### Minor Changes
package/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
  # @ankhorage/zora
5
5
 
6
- ![license: MIT](././paradox/badges/license.svg) ![npm: v25.3.0](././paradox/badges/npm.svg) ![runtime: bun](././paradox/badges/runtime.svg) ![typescript: strict](././paradox/badges/typescript.svg) ![eslint: checked](././paradox/badges/eslint.svg) ![prettier: checked](././paradox/badges/prettier.svg) ![build: checked](././paradox/badges/build.svg) ![tests: checked](././paradox/badges/tests.svg) ![paradox: warnings](././paradox/badges/docs.svg)
6
+ ![license: MIT](././paradox/badges/license.svg) ![npm: v25.5.0](././paradox/badges/npm.svg) ![runtime: bun](././paradox/badges/runtime.svg) ![typescript: strict](././paradox/badges/typescript.svg) ![eslint: checked](././paradox/badges/eslint.svg) ![prettier: checked](././paradox/badges/prettier.svg) ![build: checked](././paradox/badges/build.svg) ![tests: checked](././paradox/badges/tests.svg) ![paradox: warnings](././paradox/badges/docs.svg)
7
7
 
8
8
  Opinionated React Native and React Native Web UI kit built on @ankhorage/surface.
9
9
 
@@ -71,6 +71,7 @@ This package contains 6 additional examples. See the generated documentation for
71
71
  - [resolveGridRulerMarks sequence](././paradox/diagrams/sequences/resolve-grid-ruler-marks.mmd)
72
72
  - [resolveOAuthProviderIcon sequence](././paradox/diagrams/sequences/resolve-oauth-provider-icon.mmd)
73
73
  - [resolveOAuthProviderLabel sequence](././paradox/diagrams/sequences/resolve-oauth-provider-label.mmd)
74
+ - [resolveTimeGridVisibleIntervals sequence](././paradox/diagrams/sequences/resolve-time-grid-visible-intervals.mmd)
74
75
  - [SelectionProvider sequence](././paradox/diagrams/sequences/selection-provider.mmd)
75
76
  - [tryMove sequence](././paradox/diagrams/sequences/try-move.mmd)
76
77
  - [useZoraTheme sequence](././paradox/diagrams/sequences/use-zora-theme.mmd)
@@ -1 +1 @@
1
- {"version":3,"file":"ZORA_COMPONENT_REGISTRY.d.ts","sourceRoot":"","sources":["../../../src/features/registry/ZORA_COMPONENT_REGISTRY.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAiOlE,eAAO,MAAM,uBAAuB,EAAE,qBAAgD,CAAC"}
1
+ {"version":3,"file":"ZORA_COMPONENT_REGISTRY.d.ts","sourceRoot":"","sources":["../../../src/features/registry/ZORA_COMPONENT_REGISTRY.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAqOlE,eAAO,MAAM,uBAAuB,EAAE,qBAAgD,CAAC"}
@@ -47,10 +47,12 @@ import { BarcodeScannerView, CameraPermissionView, ScanOverlay } from '../scanne
47
47
  import { ScreenSection, SectionHeader } from '../section/public';
48
48
  import { SelectableItem } from '../selection/public';
49
49
  import { Skeleton, SkeletonCard, SkeletonList, SkeletonText } from '../skeleton/public';
50
+ import { SpatialGrid } from '../spatial-grid/public';
50
51
  import { Surface } from '../surface/public';
51
52
  import { CardBack, CardHand, PlayingCard, PokerTrainingTable, TabletopTable, } from '../tabletop/public';
52
53
  import { Tab, TabList, TabPanel, Tabs } from '../tabs/public';
53
54
  import { ThemeModeToggle } from '../theme/adapters/inbound/ThemeModeToggle';
55
+ import { TimeGrid } from '../time-grid/public';
54
56
  import { TimePicker } from '../time-picker/public';
55
57
  import { Timeline } from '../timeline/public';
56
58
  import { Toast } from '../toast/public';
@@ -150,6 +152,7 @@ const _ZORA_COMPONENT_REGISTRY = {
150
152
  GridRuler,
151
153
  GridView,
152
154
  TileGrid,
155
+ TimeGrid,
153
156
  MediaExplorer,
154
157
  Hero,
155
158
  List,
@@ -166,6 +169,7 @@ const _ZORA_COMPONENT_REGISTRY = {
166
169
  ScanOverlay,
167
170
  SectionHeader,
168
171
  SelectableItem,
172
+ SpatialGrid,
169
173
  PaletteItem,
170
174
  CardBack,
171
175
  CardHand,
@@ -1 +1 @@
1
- {"version":3,"file":"ZORA_COMPONENT_REGISTRY.js","sourceRoot":"","sources":["../../../src/features/registry/ZORA_COMPONENT_REGISTRY.ts"],"names":[],"mappings":"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","sourcesContent":["import type { InteractionPolicyProps } from '@ankhorage/surface';\nimport type React from 'react';\n\nimport type { ZoraComponentRegistry } from '../../types/registry';\nimport { Accordion, AccordionItem } from '../accordion/public';\nimport { ActivityIndicator } from '../activity-indicator/public';\nimport { AppBar } from '../app-bar/public';\nimport { AppHeader } from '../app-header/public';\nimport {\n AuthScreen,\n ForgotPasswordForm,\n OAuthProviderButton,\n OAuthProviderList,\n OtpForm,\n SignInForm,\n SignUpForm,\n} from '../auth/public';\nimport { Avatar, AvatarGroup } from '../avatar/public';\nimport { Badge } from '../badge/public';\nimport { BottomSheet } from '../bottom-sheet/public';\nimport { Breadcrumbs } from '../breadcrumbs/public';\nimport { Button, ButtonGroup, IconButton } from '../button/public';\nimport { Card, MediaCard, MetricCard, PostCard, ProductCard } from '../card/public';\nimport { ChatListItem, MessageBubble } from '../chat/public';\nimport { ChessBoard, OpeningBook } from '../chess/public';\nimport { Chip, ChipGroup } from '../chip/public';\nimport { CollectionEditor } from '../collection-editor/public';\nimport { ContentRail } from '../content-rail/public';\nimport { DataTable } from '../data-table/public';\nimport { DatePicker } from '../date-picker/public';\nimport { Dialog } from '../dialog/public';\nimport { EmptyState } from '../empty-state/public';\nimport { Explorer, FileExplorer, MediaExplorer } from '../explorer/public';\nimport { Checkbox, CheckboxGroup } from '../form/checkbox/public';\nimport { Field, Form, FormActions, FormError } from '../form/public';\nimport { Radio, RadioGroup } from '../form/radio/public';\nimport { SearchInput } from '../form/search-input/public';\nimport { Select } from '../form/select/public';\nimport { Switch } from '../form/switch/public';\nimport { TextInput } from '../form/text-input/public';\nimport {\n Game,\n GameEntity,\n GameField,\n GameInputZone,\n GameMeasurementProbe,\n GameOverlay,\n} from '../game/public';\nimport { Gradient } from '../gradient/public';\nimport { GridLineOverlay, GridRuler } from '../grid-rulers/public';\nimport { GridView, TileGrid } from '../grid-view/public';\nimport { Hero } from '../hero/public';\nimport { Icon } from '../icon/public';\nimport { Image } from '../image/public';\nimport { KeyboardAvoidingView } from '../keyboard-avoiding-view/public';\nimport { AppShell, Divider, Grid, Screen, ScrollView, View } from '../layout/public';\nimport { FlatList, List, ListItem, ListSection, SectionList } from '../list/public';\nimport { MissingElement } from '../missing-element/public';\nimport { Pagination } from '../pagination/public';\nimport { PaletteItem } from '../palette-item/public';\nimport { PopoverMenu } from '../popover-menu/public';\nimport { Progress, ProgressRing } from '../progress/public';\nimport { Rating } from '../rating/public';\nimport { Reader } from '../reader/public';\nimport { BarcodeScannerView, CameraPermissionView, ScanOverlay } from '../scanner/public';\nimport { ScreenSection, SectionHeader } from '../section/public';\nimport { SelectableItem } from '../selection/public';\nimport { Skeleton, SkeletonCard, SkeletonList, SkeletonText } from '../skeleton/public';\nimport { Surface } from '../surface/public';\nimport {\n CardBack,\n CardHand,\n PlayingCard,\n PokerTrainingTable,\n TabletopTable,\n} from '../tabletop/public';\nimport { Tab, TabList, TabPanel, Tabs } from '../tabs/public';\nimport { ThemeModeToggle } from '../theme/adapters/inbound/ThemeModeToggle';\nimport { TimePicker } from '../time-picker/public';\nimport { Timeline } from '../timeline/public';\nimport { Toast } from '../toast/public';\nimport { Toolbar } from '../toolbar/public';\nimport { TreeItem, TreeView } from '../tree-view/public';\nimport { Heading, Text } from '../typography/public';\nimport { Uploader } from '../uploader/public';\n\ntype ComponentPropsFor<K extends keyof typeof _ZORA_COMPONENT_REGISTRY> = React.ComponentProps<\n (typeof _ZORA_COMPONENT_REGISTRY)[K]\n>;\n\ntype AcceptsSurfaceInteractionPolicyProps<P> = 'interactionPolicy' extends keyof P\n ? InteractionPolicyProps extends Pick<P, 'interactionPolicy'>\n ? Pick<P, 'interactionPolicy'> extends InteractionPolicyProps\n ? true\n : false\n : false\n : false;\n\ntype RegistryInteractionPolicyContract = {\n [K in keyof typeof _ZORA_COMPONENT_REGISTRY]: AcceptsSurfaceInteractionPolicyProps<\n ComponentPropsFor<K>\n >;\n};\n\ntype _AssertTrue<T extends true> = T;\ntype _RegistryInteractionPolicyCheck = _AssertTrue<\n RegistryInteractionPolicyContract[keyof typeof _ZORA_COMPONENT_REGISTRY]\n>;\n\nconst _ZORA_COMPONENT_REGISTRY = {\n Accordion,\n AccordionItem,\n ActivityIndicator,\n AppBar,\n AppHeader,\n Avatar,\n AvatarGroup,\n Badge,\n Breadcrumbs,\n Button,\n ButtonGroup,\n Card,\n Checkbox,\n CheckboxGroup,\n Chip,\n ChipGroup,\n DataTable,\n DatePicker,\n Dialog,\n Form,\n FormActions,\n FormError,\n Field,\n Gradient,\n Game,\n GameEntity,\n GameField,\n GameInputZone,\n GameMeasurementProbe,\n GameOverlay,\n Heading,\n Icon,\n IconButton,\n Image,\n KeyboardAvoidingView,\n TextInput,\n MediaCard,\n MetricCard,\n Pagination,\n PopoverMenu,\n Progress,\n ProgressRing,\n Radio,\n RadioGroup,\n Rating,\n SearchInput,\n Select,\n Switch,\n Skeleton,\n SkeletonCard,\n SkeletonList,\n SkeletonText,\n Tab,\n TabList,\n TabPanel,\n Tabs,\n Text,\n TimePicker,\n Toast,\n Toolbar,\n Uploader,\n BottomSheet,\n FlatList,\n SectionList,\n ScrollView,\n View,\n ThemeModeToggle,\n Divider,\n Grid,\n Surface,\n AppShell,\n Screen,\n ScreenSection,\n AuthScreen,\n ForgotPasswordForm,\n OAuthProviderButton,\n OAuthProviderList,\n OtpForm,\n SignInForm,\n SignUpForm,\n ChatListItem,\n ChessBoard,\n CollectionEditor,\n ContentRail,\n EmptyState,\n Explorer,\n FileExplorer,\n GridLineOverlay,\n GridRuler,\n GridView,\n TileGrid,\n MediaExplorer,\n Hero,\n List,\n ListItem,\n ListSection,\n MessageBubble,\n OpeningBook,\n MissingElement,\n PostCard,\n ProductCard,\n Reader,\n BarcodeScannerView,\n CameraPermissionView,\n ScanOverlay,\n SectionHeader,\n SelectableItem,\n PaletteItem,\n CardBack,\n CardHand,\n PlayingCard,\n TabletopTable,\n PokerTrainingTable,\n Timeline,\n TreeItem,\n TreeView,\n} as const satisfies ZoraComponentRegistry;\n\nexport const ZORA_COMPONENT_REGISTRY: ZoraComponentRegistry = _ZORA_COMPONENT_REGISTRY;\n"]}
1
+ {"version":3,"file":"ZORA_COMPONENT_REGISTRY.js","sourceRoot":"","sources":["../../../src/features/registry/ZORA_COMPONENT_REGISTRY.ts"],"names":[],"mappings":"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","sourcesContent":["import type { InteractionPolicyProps } from '@ankhorage/surface';\nimport type React from 'react';\n\nimport type { ZoraComponentRegistry } from '../../types/registry';\nimport { Accordion, AccordionItem } from '../accordion/public';\nimport { ActivityIndicator } from '../activity-indicator/public';\nimport { AppBar } from '../app-bar/public';\nimport { AppHeader } from '../app-header/public';\nimport {\n AuthScreen,\n ForgotPasswordForm,\n OAuthProviderButton,\n OAuthProviderList,\n OtpForm,\n SignInForm,\n SignUpForm,\n} from '../auth/public';\nimport { Avatar, AvatarGroup } from '../avatar/public';\nimport { Badge } from '../badge/public';\nimport { BottomSheet } from '../bottom-sheet/public';\nimport { Breadcrumbs } from '../breadcrumbs/public';\nimport { Button, ButtonGroup, IconButton } from '../button/public';\nimport { Card, MediaCard, MetricCard, PostCard, ProductCard } from '../card/public';\nimport { ChatListItem, MessageBubble } from '../chat/public';\nimport { ChessBoard, OpeningBook } from '../chess/public';\nimport { Chip, ChipGroup } from '../chip/public';\nimport { CollectionEditor } from '../collection-editor/public';\nimport { ContentRail } from '../content-rail/public';\nimport { DataTable } from '../data-table/public';\nimport { DatePicker } from '../date-picker/public';\nimport { Dialog } from '../dialog/public';\nimport { EmptyState } from '../empty-state/public';\nimport { Explorer, FileExplorer, MediaExplorer } from '../explorer/public';\nimport { Checkbox, CheckboxGroup } from '../form/checkbox/public';\nimport { Field, Form, FormActions, FormError } from '../form/public';\nimport { Radio, RadioGroup } from '../form/radio/public';\nimport { SearchInput } from '../form/search-input/public';\nimport { Select } from '../form/select/public';\nimport { Switch } from '../form/switch/public';\nimport { TextInput } from '../form/text-input/public';\nimport {\n Game,\n GameEntity,\n GameField,\n GameInputZone,\n GameMeasurementProbe,\n GameOverlay,\n} from '../game/public';\nimport { Gradient } from '../gradient/public';\nimport { GridLineOverlay, GridRuler } from '../grid-rulers/public';\nimport { GridView, TileGrid } from '../grid-view/public';\nimport { Hero } from '../hero/public';\nimport { Icon } from '../icon/public';\nimport { Image } from '../image/public';\nimport { KeyboardAvoidingView } from '../keyboard-avoiding-view/public';\nimport { AppShell, Divider, Grid, Screen, ScrollView, View } from '../layout/public';\nimport { FlatList, List, ListItem, ListSection, SectionList } from '../list/public';\nimport { MissingElement } from '../missing-element/public';\nimport { Pagination } from '../pagination/public';\nimport { PaletteItem } from '../palette-item/public';\nimport { PopoverMenu } from '../popover-menu/public';\nimport { Progress, ProgressRing } from '../progress/public';\nimport { Rating } from '../rating/public';\nimport { Reader } from '../reader/public';\nimport { BarcodeScannerView, CameraPermissionView, ScanOverlay } from '../scanner/public';\nimport { ScreenSection, SectionHeader } from '../section/public';\nimport { SelectableItem } from '../selection/public';\nimport { Skeleton, SkeletonCard, SkeletonList, SkeletonText } from '../skeleton/public';\nimport { SpatialGrid } from '../spatial-grid/public';\nimport { Surface } from '../surface/public';\nimport {\n CardBack,\n CardHand,\n PlayingCard,\n PokerTrainingTable,\n TabletopTable,\n} from '../tabletop/public';\nimport { Tab, TabList, TabPanel, Tabs } from '../tabs/public';\nimport { ThemeModeToggle } from '../theme/adapters/inbound/ThemeModeToggle';\nimport { TimeGrid } from '../time-grid/public';\nimport { TimePicker } from '../time-picker/public';\nimport { Timeline } from '../timeline/public';\nimport { Toast } from '../toast/public';\nimport { Toolbar } from '../toolbar/public';\nimport { TreeItem, TreeView } from '../tree-view/public';\nimport { Heading, Text } from '../typography/public';\nimport { Uploader } from '../uploader/public';\n\ntype ComponentPropsFor<K extends keyof typeof _ZORA_COMPONENT_REGISTRY> = React.ComponentProps<\n (typeof _ZORA_COMPONENT_REGISTRY)[K]\n>;\n\ntype AcceptsSurfaceInteractionPolicyProps<P> = 'interactionPolicy' extends keyof P\n ? InteractionPolicyProps extends Pick<P, 'interactionPolicy'>\n ? Pick<P, 'interactionPolicy'> extends InteractionPolicyProps\n ? true\n : false\n : false\n : false;\n\ntype RegistryInteractionPolicyContract = {\n [K in keyof typeof _ZORA_COMPONENT_REGISTRY]: AcceptsSurfaceInteractionPolicyProps<\n ComponentPropsFor<K>\n >;\n};\n\ntype _AssertTrue<T extends true> = T;\ntype _RegistryInteractionPolicyCheck = _AssertTrue<\n RegistryInteractionPolicyContract[keyof typeof _ZORA_COMPONENT_REGISTRY]\n>;\n\nconst _ZORA_COMPONENT_REGISTRY = {\n Accordion,\n AccordionItem,\n ActivityIndicator,\n AppBar,\n AppHeader,\n Avatar,\n AvatarGroup,\n Badge,\n Breadcrumbs,\n Button,\n ButtonGroup,\n Card,\n Checkbox,\n CheckboxGroup,\n Chip,\n ChipGroup,\n DataTable,\n DatePicker,\n Dialog,\n Form,\n FormActions,\n FormError,\n Field,\n Gradient,\n Game,\n GameEntity,\n GameField,\n GameInputZone,\n GameMeasurementProbe,\n GameOverlay,\n Heading,\n Icon,\n IconButton,\n Image,\n KeyboardAvoidingView,\n TextInput,\n MediaCard,\n MetricCard,\n Pagination,\n PopoverMenu,\n Progress,\n ProgressRing,\n Radio,\n RadioGroup,\n Rating,\n SearchInput,\n Select,\n Switch,\n Skeleton,\n SkeletonCard,\n SkeletonList,\n SkeletonText,\n Tab,\n TabList,\n TabPanel,\n Tabs,\n Text,\n TimePicker,\n Toast,\n Toolbar,\n Uploader,\n BottomSheet,\n FlatList,\n SectionList,\n ScrollView,\n View,\n ThemeModeToggle,\n Divider,\n Grid,\n Surface,\n AppShell,\n Screen,\n ScreenSection,\n AuthScreen,\n ForgotPasswordForm,\n OAuthProviderButton,\n OAuthProviderList,\n OtpForm,\n SignInForm,\n SignUpForm,\n ChatListItem,\n ChessBoard,\n CollectionEditor,\n ContentRail,\n EmptyState,\n Explorer,\n FileExplorer,\n GridLineOverlay,\n GridRuler,\n GridView,\n TileGrid,\n TimeGrid,\n MediaExplorer,\n Hero,\n List,\n ListItem,\n ListSection,\n MessageBubble,\n OpeningBook,\n MissingElement,\n PostCard,\n ProductCard,\n Reader,\n BarcodeScannerView,\n CameraPermissionView,\n ScanOverlay,\n SectionHeader,\n SelectableItem,\n SpatialGrid,\n PaletteItem,\n CardBack,\n CardHand,\n PlayingCard,\n TabletopTable,\n PokerTrainingTable,\n Timeline,\n TreeItem,\n TreeView,\n} as const satisfies ZoraComponentRegistry;\n\nexport const ZORA_COMPONENT_REGISTRY: ZoraComponentRegistry = _ZORA_COMPONENT_REGISTRY;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"componentMeta.d.ts","sourceRoot":"","sources":["../../../src/features/registry/componentMeta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AA+GvE,eAAO,MAAM,mBAAmB,EAAE,yBAuHhC,CAAC"}
1
+ {"version":3,"file":"componentMeta.d.ts","sourceRoot":"","sources":["../../../src/features/registry/componentMeta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAiHvE,eAAO,MAAM,mBAAmB,EAAE,yBAyHhC,CAAC"}
@@ -79,6 +79,7 @@ import { screenSectionMeta } from '../section/screenSectionMeta';
79
79
  import { sectionHeaderMeta } from '../section/sectionHeaderMeta';
80
80
  import { selectableItemMeta, selectionProviderMeta } from '../selection/meta';
81
81
  import { skeletonCardMeta, skeletonListMeta, skeletonMeta, skeletonTextMeta, } from '../skeleton/skeletonMeta';
82
+ import { spatialGridMeta } from '../spatial-grid/meta';
82
83
  import { surfaceMeta } from '../surface/surfaceMeta';
83
84
  import { cardBackMeta, cardHandMeta, playingCardMeta, pokerTrainingTableMeta, tabletopTableMeta, } from '../tabletop/meta';
84
85
  import { tabListMeta } from '../tabs/tabListMeta';
@@ -86,6 +87,7 @@ import { tabMeta } from '../tabs/tabMeta';
86
87
  import { tabPanelMeta } from '../tabs/tabPanelMeta';
87
88
  import { tabsMeta } from '../tabs/tabsMeta';
88
89
  import { themeModeToggleMeta } from '../theme/ThemeModeToggle.meta';
90
+ import { timeGridMeta } from '../time-grid/meta';
89
91
  import { timePickerMeta } from '../time-picker/timePickerMeta';
90
92
  import { timelineMeta } from '../timeline/meta';
91
93
  import { toastMeta } from '../toast/toastMeta';
@@ -190,6 +192,7 @@ export const ZORA_COMPONENT_META = finalizeFeatureMetadata({
190
192
  GridRuler: gridRulerMeta,
191
193
  GridView: gridViewMeta,
192
194
  TileGrid: tileGridMeta,
195
+ TimeGrid: timeGridMeta,
193
196
  Hero: heroMeta,
194
197
  List: listMeta,
195
198
  ListItem: listItemMeta,
@@ -205,6 +208,7 @@ export const ZORA_COMPONENT_META = finalizeFeatureMetadata({
205
208
  ScanOverlay: scanOverlayMeta,
206
209
  SectionHeader: sectionHeaderMeta,
207
210
  SelectableItem: selectableItemMeta,
211
+ SpatialGrid: spatialGridMeta,
208
212
  SelectionProvider: selectionProviderMeta,
209
213
  PaletteItem: paletteItemMeta,
210
214
  Timeline: timelineMeta,
@@ -1 +1 @@
1
- {"version":3,"file":"componentMeta.js","sourceRoot":"","sources":["../../../src/features/registry/componentMeta.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ZoraComponentMetaRegistry } from '../../types/authoring';\nimport { accordionItemMeta } from '../accordion/accordionItemMeta';\nimport { accordionMeta } from '../accordion/accordionMeta';\nimport { activityIndicatorMeta } from '../activity-indicator/activityIndicatorMeta';\nimport { appBarMeta } from '../app-bar/appBarMeta';\nimport { appHeaderMeta } from '../app-header/appHeaderMeta';\nimport { authScreenMeta } from '../auth/authScreenMeta';\nimport { forgotPasswordFormMeta } from '../auth/forgotPasswordFormMeta';\nimport { oauthProviderButtonMeta } from '../auth/oauthProviderButtonMeta';\nimport { oauthProviderListMeta } from '../auth/oauthProviderListMeta';\nimport { otpFormMeta } from '../auth/otpFormMeta';\nimport { signInFormMeta } from '../auth/signInFormMeta';\nimport { signUpFormMeta } from '../auth/signUpFormMeta';\nimport { avatarGroupMeta } from '../avatar/avatarGroupMeta';\nimport { avatarMeta } from '../avatar/avatarMeta';\nimport { badgeMeta } from '../badge/badgeMeta';\nimport { bottomSheetMeta } from '../bottom-sheet/bottomSheetMeta';\nimport { breadcrumbsMeta } from '../breadcrumbs/breadcrumbsMeta';\nimport { buttonGroupMeta } from '../button/buttonGroupMeta';\nimport { buttonMeta } from '../button/buttonMeta';\nimport { iconButtonMeta } from '../button/iconButtonMeta';\nimport { cardMeta } from '../card/cardMeta';\nimport { mediaCardMeta } from '../card/mediaCardMeta';\nimport { metricCardMeta } from '../card/metricCardMeta';\nimport { postCardMeta } from '../card/postCardMeta';\nimport { productCardMeta } from '../card/productCardMeta';\nimport { chatListItemMeta } from '../chat/chatListItemMeta';\nimport { messageBubbleMeta } from '../chat/messageBubbleMeta';\nimport { chessBoardMeta, openingBookMeta } from '../chess/meta';\nimport { chipGroupMeta } from '../chip/chipGroupMeta';\nimport { chipMeta } from '../chip/chipMeta';\nimport { collectionEditorMeta } from '../collection-editor/meta';\nimport { contentRailMeta } from '../content-rail/contentRailMeta';\nimport { dataTableMeta } from '../data-table/dataTableMeta';\nimport { datePickerMeta } from '../date-picker/datePickerMeta';\nimport { dialogMeta } from '../dialog/dialogMeta';\nimport { emptyStateMeta } from '../empty-state/emptyStateMeta';\nimport { explorerMeta, fileExplorerMeta, mediaExplorerMeta } from '../explorer/meta';\nimport { checkboxGroupMeta, checkboxMeta } from '../form/checkbox/checkboxMeta';\nimport { fieldMeta } from '../form/field/meta';\nimport { formActionsMeta } from '../form/formActionsMeta';\nimport { formErrorMeta } from '../form/formErrorMeta';\nimport { formMeta } from '../form/formMeta';\nimport { radioGroupMeta, radioMeta } from '../form/radio/radioMeta';\nimport { searchInputMeta } from '../form/search-input/searchInputMeta';\nimport { selectMeta } from '../form/select/selectMeta';\nimport { switchMeta } from '../form/switch/switchMeta';\nimport { textInputMeta } from '../form/text-input/textInputMeta';\nimport { gameEntityMeta } from '../game/meta/gameEntityMeta';\nimport { gameFieldMeta } from '../game/meta/gameFieldMeta';\nimport { gameInputZoneMeta } from '../game/meta/gameInputZoneMeta';\nimport { gameMeasurementProbeMeta } from '../game/meta/gameMeasurementProbeMeta';\nimport { gameMeta } from '../game/meta/gameMeta';\nimport { gameOverlayMeta } from '../game/meta/gameOverlayMeta';\nimport { gradientMeta } from '../gradient/gradientMeta';\nimport { gridLineOverlayMeta, gridRulerMeta } from '../grid-rulers/meta';\nimport { gridViewMeta, tileGridMeta } from '../grid-view/meta';\nimport { heroMeta } from '../hero/heroMeta';\nimport { iconMeta } from '../icon/iconMeta';\nimport { imageMeta } from '../image/imageMeta';\nimport { keyboardAvoidingViewMeta } from '../keyboard-avoiding-view/keyboardAvoidingViewMeta';\nimport { appShellMeta } from '../layout/appShellMeta';\nimport { dividerMeta } from '../layout/dividerMeta';\nimport { gridMeta } from '../layout/gridMeta';\nimport { screenMeta } from '../layout/screenMeta';\nimport { scrollViewMeta } from '../layout/scrollViewMeta';\nimport { viewMeta } from '../layout/viewMeta';\nimport { flatListMeta } from '../list/flatListMeta';\nimport { listItemMeta, listMeta, listSectionMeta } from '../list/meta';\nimport { sectionListMeta } from '../list/sectionListMeta';\nimport { missingElementMeta } from '../missing-element/missingElementMeta';\nimport { paginationMeta } from '../pagination/paginationMeta';\nimport { paletteItemMeta } from '../palette-item/paletteItemMeta';\nimport { popoverMenuMeta } from '../popover-menu/popoverMenuMeta';\nimport { progressMeta, progressRingMeta } from '../progress/progressMeta';\nimport { ratingMeta } from '../rating/ratingMeta';\nimport { readerMeta } from '../reader/meta';\nimport { barcodeScannerViewMeta, cameraPermissionViewMeta, scanOverlayMeta } from '../scanner/meta';\nimport { screenSectionMeta } from '../section/screenSectionMeta';\nimport { sectionHeaderMeta } from '../section/sectionHeaderMeta';\nimport { selectableItemMeta, selectionProviderMeta } from '../selection/meta';\nimport {\n skeletonCardMeta,\n skeletonListMeta,\n skeletonMeta,\n skeletonTextMeta,\n} from '../skeleton/skeletonMeta';\nimport { surfaceMeta } from '../surface/surfaceMeta';\nimport {\n cardBackMeta,\n cardHandMeta,\n playingCardMeta,\n pokerTrainingTableMeta,\n tabletopTableMeta,\n} from '../tabletop/meta';\nimport { tabListMeta } from '../tabs/tabListMeta';\nimport { tabMeta } from '../tabs/tabMeta';\nimport { tabPanelMeta } from '../tabs/tabPanelMeta';\nimport { tabsMeta } from '../tabs/tabsMeta';\nimport { themeModeToggleMeta } from '../theme/ThemeModeToggle.meta';\nimport { timePickerMeta } from '../time-picker/timePickerMeta';\nimport { timelineMeta } from '../timeline/meta';\nimport { toastMeta } from '../toast/toastMeta';\nimport { toastProviderMeta } from '../toast/toastProviderMeta';\nimport { toolbarMeta } from '../toolbar/toolbarMeta';\nimport { treeItemMeta, treeViewMeta } from '../tree-view/meta';\nimport { headingMeta } from '../typography/headingMeta';\nimport { textMeta } from '../typography/textMeta';\nimport { uploaderMeta } from '../uploader/uploaderMeta';\nimport { finalizeFeatureMetadata } from './finalizeFeatureMetadata';\n\nexport const ZORA_COMPONENT_META: ZoraComponentMetaRegistry = finalizeFeatureMetadata({\n Accordion: accordionMeta,\n AccordionItem: accordionItemMeta,\n ActivityIndicator: activityIndicatorMeta,\n View: viewMeta,\n ScrollView: scrollViewMeta,\n Grid: gridMeta,\n Divider: dividerMeta,\n Surface: surfaceMeta,\n AppBar: appBarMeta,\n AppHeader: appHeaderMeta,\n Avatar: avatarMeta,\n AvatarGroup: avatarGroupMeta,\n Badge: badgeMeta,\n Breadcrumbs: breadcrumbsMeta,\n Button: buttonMeta,\n ButtonGroup: buttonGroupMeta,\n Card: cardMeta,\n Checkbox: checkboxMeta,\n CheckboxGroup: checkboxGroupMeta,\n Chip: chipMeta,\n ChipGroup: chipGroupMeta,\n DataTable: dataTableMeta,\n DatePicker: datePickerMeta,\n Dialog: dialogMeta,\n Form: formMeta,\n FormActions: formActionsMeta,\n FormError: formErrorMeta,\n Field: fieldMeta,\n Gradient: gradientMeta,\n Game: gameMeta,\n GameField: gameFieldMeta,\n GameEntity: gameEntityMeta,\n GameInputZone: gameInputZoneMeta,\n GameMeasurementProbe: gameMeasurementProbeMeta,\n GameOverlay: gameOverlayMeta,\n Heading: headingMeta,\n Icon: iconMeta,\n IconButton: iconButtonMeta,\n Image: imageMeta,\n KeyboardAvoidingView: keyboardAvoidingViewMeta,\n TextInput: textInputMeta,\n MediaCard: mediaCardMeta,\n MetricCard: metricCardMeta,\n Pagination: paginationMeta,\n PopoverMenu: popoverMenuMeta,\n Progress: progressMeta,\n ProgressRing: progressRingMeta,\n Radio: radioMeta,\n RadioGroup: radioGroupMeta,\n Rating: ratingMeta,\n SearchInput: searchInputMeta,\n Select: selectMeta,\n Switch: switchMeta,\n Skeleton: skeletonMeta,\n SkeletonCard: skeletonCardMeta,\n SkeletonList: skeletonListMeta,\n SkeletonText: skeletonTextMeta,\n Tab: tabMeta,\n TabList: tabListMeta,\n TabPanel: tabPanelMeta,\n Tabs: tabsMeta,\n Text: textMeta,\n TimePicker: timePickerMeta,\n Toast: toastMeta,\n ToastProvider: toastProviderMeta,\n Toolbar: toolbarMeta,\n Uploader: uploaderMeta,\n BottomSheet: bottomSheetMeta,\n FlatList: flatListMeta,\n SectionList: sectionListMeta,\n ThemeModeToggle: themeModeToggleMeta,\n AppShell: appShellMeta,\n Screen: screenMeta,\n ScreenSection: screenSectionMeta,\n AuthScreen: authScreenMeta,\n ForgotPasswordForm: forgotPasswordFormMeta,\n OAuthProviderButton: oauthProviderButtonMeta,\n OAuthProviderList: oauthProviderListMeta,\n OtpForm: otpFormMeta,\n SignInForm: signInFormMeta,\n SignUpForm: signUpFormMeta,\n ChatListItem: chatListItemMeta,\n ChessBoard: chessBoardMeta,\n CollectionEditor: collectionEditorMeta,\n ContentRail: contentRailMeta,\n EmptyState: emptyStateMeta,\n Explorer: explorerMeta,\n FileExplorer: fileExplorerMeta,\n MediaExplorer: mediaExplorerMeta,\n GridLineOverlay: gridLineOverlayMeta,\n GridRuler: gridRulerMeta,\n GridView: gridViewMeta,\n TileGrid: tileGridMeta,\n Hero: heroMeta,\n List: listMeta,\n ListItem: listItemMeta,\n ListSection: listSectionMeta,\n MessageBubble: messageBubbleMeta,\n OpeningBook: openingBookMeta,\n MissingElement: missingElementMeta,\n PostCard: postCardMeta,\n ProductCard: productCardMeta,\n Reader: readerMeta,\n BarcodeScannerView: barcodeScannerViewMeta,\n CameraPermissionView: cameraPermissionViewMeta,\n ScanOverlay: scanOverlayMeta,\n SectionHeader: sectionHeaderMeta,\n SelectableItem: selectableItemMeta,\n SelectionProvider: selectionProviderMeta,\n PaletteItem: paletteItemMeta,\n Timeline: timelineMeta,\n CardBack: cardBackMeta,\n CardHand: cardHandMeta,\n PlayingCard: playingCardMeta,\n TabletopTable: tabletopTableMeta,\n PokerTrainingTable: pokerTrainingTableMeta,\n TreeItem: treeItemMeta,\n TreeView: treeViewMeta,\n});\n"]}
1
+ {"version":3,"file":"componentMeta.js","sourceRoot":"","sources":["../../../src/features/registry/componentMeta.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ZoraComponentMetaRegistry } from '../../types/authoring';\nimport { accordionItemMeta } from '../accordion/accordionItemMeta';\nimport { accordionMeta } from '../accordion/accordionMeta';\nimport { activityIndicatorMeta } from '../activity-indicator/activityIndicatorMeta';\nimport { appBarMeta } from '../app-bar/appBarMeta';\nimport { appHeaderMeta } from '../app-header/appHeaderMeta';\nimport { authScreenMeta } from '../auth/authScreenMeta';\nimport { forgotPasswordFormMeta } from '../auth/forgotPasswordFormMeta';\nimport { oauthProviderButtonMeta } from '../auth/oauthProviderButtonMeta';\nimport { oauthProviderListMeta } from '../auth/oauthProviderListMeta';\nimport { otpFormMeta } from '../auth/otpFormMeta';\nimport { signInFormMeta } from '../auth/signInFormMeta';\nimport { signUpFormMeta } from '../auth/signUpFormMeta';\nimport { avatarGroupMeta } from '../avatar/avatarGroupMeta';\nimport { avatarMeta } from '../avatar/avatarMeta';\nimport { badgeMeta } from '../badge/badgeMeta';\nimport { bottomSheetMeta } from '../bottom-sheet/bottomSheetMeta';\nimport { breadcrumbsMeta } from '../breadcrumbs/breadcrumbsMeta';\nimport { buttonGroupMeta } from '../button/buttonGroupMeta';\nimport { buttonMeta } from '../button/buttonMeta';\nimport { iconButtonMeta } from '../button/iconButtonMeta';\nimport { cardMeta } from '../card/cardMeta';\nimport { mediaCardMeta } from '../card/mediaCardMeta';\nimport { metricCardMeta } from '../card/metricCardMeta';\nimport { postCardMeta } from '../card/postCardMeta';\nimport { productCardMeta } from '../card/productCardMeta';\nimport { chatListItemMeta } from '../chat/chatListItemMeta';\nimport { messageBubbleMeta } from '../chat/messageBubbleMeta';\nimport { chessBoardMeta, openingBookMeta } from '../chess/meta';\nimport { chipGroupMeta } from '../chip/chipGroupMeta';\nimport { chipMeta } from '../chip/chipMeta';\nimport { collectionEditorMeta } from '../collection-editor/meta';\nimport { contentRailMeta } from '../content-rail/contentRailMeta';\nimport { dataTableMeta } from '../data-table/dataTableMeta';\nimport { datePickerMeta } from '../date-picker/datePickerMeta';\nimport { dialogMeta } from '../dialog/dialogMeta';\nimport { emptyStateMeta } from '../empty-state/emptyStateMeta';\nimport { explorerMeta, fileExplorerMeta, mediaExplorerMeta } from '../explorer/meta';\nimport { checkboxGroupMeta, checkboxMeta } from '../form/checkbox/checkboxMeta';\nimport { fieldMeta } from '../form/field/meta';\nimport { formActionsMeta } from '../form/formActionsMeta';\nimport { formErrorMeta } from '../form/formErrorMeta';\nimport { formMeta } from '../form/formMeta';\nimport { radioGroupMeta, radioMeta } from '../form/radio/radioMeta';\nimport { searchInputMeta } from '../form/search-input/searchInputMeta';\nimport { selectMeta } from '../form/select/selectMeta';\nimport { switchMeta } from '../form/switch/switchMeta';\nimport { textInputMeta } from '../form/text-input/textInputMeta';\nimport { gameEntityMeta } from '../game/meta/gameEntityMeta';\nimport { gameFieldMeta } from '../game/meta/gameFieldMeta';\nimport { gameInputZoneMeta } from '../game/meta/gameInputZoneMeta';\nimport { gameMeasurementProbeMeta } from '../game/meta/gameMeasurementProbeMeta';\nimport { gameMeta } from '../game/meta/gameMeta';\nimport { gameOverlayMeta } from '../game/meta/gameOverlayMeta';\nimport { gradientMeta } from '../gradient/gradientMeta';\nimport { gridLineOverlayMeta, gridRulerMeta } from '../grid-rulers/meta';\nimport { gridViewMeta, tileGridMeta } from '../grid-view/meta';\nimport { heroMeta } from '../hero/heroMeta';\nimport { iconMeta } from '../icon/iconMeta';\nimport { imageMeta } from '../image/imageMeta';\nimport { keyboardAvoidingViewMeta } from '../keyboard-avoiding-view/keyboardAvoidingViewMeta';\nimport { appShellMeta } from '../layout/appShellMeta';\nimport { dividerMeta } from '../layout/dividerMeta';\nimport { gridMeta } from '../layout/gridMeta';\nimport { screenMeta } from '../layout/screenMeta';\nimport { scrollViewMeta } from '../layout/scrollViewMeta';\nimport { viewMeta } from '../layout/viewMeta';\nimport { flatListMeta } from '../list/flatListMeta';\nimport { listItemMeta, listMeta, listSectionMeta } from '../list/meta';\nimport { sectionListMeta } from '../list/sectionListMeta';\nimport { missingElementMeta } from '../missing-element/missingElementMeta';\nimport { paginationMeta } from '../pagination/paginationMeta';\nimport { paletteItemMeta } from '../palette-item/paletteItemMeta';\nimport { popoverMenuMeta } from '../popover-menu/popoverMenuMeta';\nimport { progressMeta, progressRingMeta } from '../progress/progressMeta';\nimport { ratingMeta } from '../rating/ratingMeta';\nimport { readerMeta } from '../reader/meta';\nimport { barcodeScannerViewMeta, cameraPermissionViewMeta, scanOverlayMeta } from '../scanner/meta';\nimport { screenSectionMeta } from '../section/screenSectionMeta';\nimport { sectionHeaderMeta } from '../section/sectionHeaderMeta';\nimport { selectableItemMeta, selectionProviderMeta } from '../selection/meta';\nimport {\n skeletonCardMeta,\n skeletonListMeta,\n skeletonMeta,\n skeletonTextMeta,\n} from '../skeleton/skeletonMeta';\nimport { spatialGridMeta } from '../spatial-grid/meta';\nimport { surfaceMeta } from '../surface/surfaceMeta';\nimport {\n cardBackMeta,\n cardHandMeta,\n playingCardMeta,\n pokerTrainingTableMeta,\n tabletopTableMeta,\n} from '../tabletop/meta';\nimport { tabListMeta } from '../tabs/tabListMeta';\nimport { tabMeta } from '../tabs/tabMeta';\nimport { tabPanelMeta } from '../tabs/tabPanelMeta';\nimport { tabsMeta } from '../tabs/tabsMeta';\nimport { themeModeToggleMeta } from '../theme/ThemeModeToggle.meta';\nimport { timeGridMeta } from '../time-grid/meta';\nimport { timePickerMeta } from '../time-picker/timePickerMeta';\nimport { timelineMeta } from '../timeline/meta';\nimport { toastMeta } from '../toast/toastMeta';\nimport { toastProviderMeta } from '../toast/toastProviderMeta';\nimport { toolbarMeta } from '../toolbar/toolbarMeta';\nimport { treeItemMeta, treeViewMeta } from '../tree-view/meta';\nimport { headingMeta } from '../typography/headingMeta';\nimport { textMeta } from '../typography/textMeta';\nimport { uploaderMeta } from '../uploader/uploaderMeta';\nimport { finalizeFeatureMetadata } from './finalizeFeatureMetadata';\n\nexport const ZORA_COMPONENT_META: ZoraComponentMetaRegistry = finalizeFeatureMetadata({\n Accordion: accordionMeta,\n AccordionItem: accordionItemMeta,\n ActivityIndicator: activityIndicatorMeta,\n View: viewMeta,\n ScrollView: scrollViewMeta,\n Grid: gridMeta,\n Divider: dividerMeta,\n Surface: surfaceMeta,\n AppBar: appBarMeta,\n AppHeader: appHeaderMeta,\n Avatar: avatarMeta,\n AvatarGroup: avatarGroupMeta,\n Badge: badgeMeta,\n Breadcrumbs: breadcrumbsMeta,\n Button: buttonMeta,\n ButtonGroup: buttonGroupMeta,\n Card: cardMeta,\n Checkbox: checkboxMeta,\n CheckboxGroup: checkboxGroupMeta,\n Chip: chipMeta,\n ChipGroup: chipGroupMeta,\n DataTable: dataTableMeta,\n DatePicker: datePickerMeta,\n Dialog: dialogMeta,\n Form: formMeta,\n FormActions: formActionsMeta,\n FormError: formErrorMeta,\n Field: fieldMeta,\n Gradient: gradientMeta,\n Game: gameMeta,\n GameField: gameFieldMeta,\n GameEntity: gameEntityMeta,\n GameInputZone: gameInputZoneMeta,\n GameMeasurementProbe: gameMeasurementProbeMeta,\n GameOverlay: gameOverlayMeta,\n Heading: headingMeta,\n Icon: iconMeta,\n IconButton: iconButtonMeta,\n Image: imageMeta,\n KeyboardAvoidingView: keyboardAvoidingViewMeta,\n TextInput: textInputMeta,\n MediaCard: mediaCardMeta,\n MetricCard: metricCardMeta,\n Pagination: paginationMeta,\n PopoverMenu: popoverMenuMeta,\n Progress: progressMeta,\n ProgressRing: progressRingMeta,\n Radio: radioMeta,\n RadioGroup: radioGroupMeta,\n Rating: ratingMeta,\n SearchInput: searchInputMeta,\n Select: selectMeta,\n Switch: switchMeta,\n Skeleton: skeletonMeta,\n SkeletonCard: skeletonCardMeta,\n SkeletonList: skeletonListMeta,\n SkeletonText: skeletonTextMeta,\n Tab: tabMeta,\n TabList: tabListMeta,\n TabPanel: tabPanelMeta,\n Tabs: tabsMeta,\n Text: textMeta,\n TimePicker: timePickerMeta,\n Toast: toastMeta,\n ToastProvider: toastProviderMeta,\n Toolbar: toolbarMeta,\n Uploader: uploaderMeta,\n BottomSheet: bottomSheetMeta,\n FlatList: flatListMeta,\n SectionList: sectionListMeta,\n ThemeModeToggle: themeModeToggleMeta,\n AppShell: appShellMeta,\n Screen: screenMeta,\n ScreenSection: screenSectionMeta,\n AuthScreen: authScreenMeta,\n ForgotPasswordForm: forgotPasswordFormMeta,\n OAuthProviderButton: oauthProviderButtonMeta,\n OAuthProviderList: oauthProviderListMeta,\n OtpForm: otpFormMeta,\n SignInForm: signInFormMeta,\n SignUpForm: signUpFormMeta,\n ChatListItem: chatListItemMeta,\n ChessBoard: chessBoardMeta,\n CollectionEditor: collectionEditorMeta,\n ContentRail: contentRailMeta,\n EmptyState: emptyStateMeta,\n Explorer: explorerMeta,\n FileExplorer: fileExplorerMeta,\n MediaExplorer: mediaExplorerMeta,\n GridLineOverlay: gridLineOverlayMeta,\n GridRuler: gridRulerMeta,\n GridView: gridViewMeta,\n TileGrid: tileGridMeta,\n TimeGrid: timeGridMeta,\n Hero: heroMeta,\n List: listMeta,\n ListItem: listItemMeta,\n ListSection: listSectionMeta,\n MessageBubble: messageBubbleMeta,\n OpeningBook: openingBookMeta,\n MissingElement: missingElementMeta,\n PostCard: postCardMeta,\n ProductCard: productCardMeta,\n Reader: readerMeta,\n BarcodeScannerView: barcodeScannerViewMeta,\n CameraPermissionView: cameraPermissionViewMeta,\n ScanOverlay: scanOverlayMeta,\n SectionHeader: sectionHeaderMeta,\n SelectableItem: selectableItemMeta,\n SpatialGrid: spatialGridMeta,\n SelectionProvider: selectionProviderMeta,\n PaletteItem: paletteItemMeta,\n Timeline: timelineMeta,\n CardBack: cardBackMeta,\n CardHand: cardHandMeta,\n PlayingCard: playingCardMeta,\n TabletopTable: tabletopTableMeta,\n PokerTrainingTable: pokerTrainingTableMeta,\n TreeItem: treeItemMeta,\n TreeView: treeViewMeta,\n});\n"]}
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import type { SpatialGridProps } from '../../../../types/spatial-grid';
3
+ /** Renders virtualized free-placement items without owning geometry, pan, zoom, or drag orchestration. */
4
+ export declare function SpatialGrid({ items, contentWidth, contentHeight, width, height, zoom, overscanPixels, selectedItemId, focusedItemId, revealPaddingPixels, disabled, readOnly, interactionPolicy, onSelectionChange, onActivation, onFocusChange, onViewportChange, onVisibleItemIdsChange, renderItem, testID, }: SpatialGridProps): React.JSX.Element;
5
+ //# sourceMappingURL=SpatialGrid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SpatialGrid.d.ts","sourceRoot":"","sources":["../../../../../src/features/spatial-grid/adapters/inbound/SpatialGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAmB,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAIxF,0GAA0G;AAC1G,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,YAAY,EACZ,aAAa,EACb,KAAK,EACL,MAAM,EACN,IAAI,EACJ,cAAc,EACd,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,QAAgB,EAChB,QAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,sBAAsB,EACtB,UAAU,EACV,MAAM,GACP,EAAE,gBAAgB,qBA0ClB"}
@@ -0,0 +1,38 @@
1
+ import React from 'react';
2
+ import { Pressable as NativePressable, View as NativeView } from 'react-native';
3
+ import { GridView } from '../../../grid-view/public';
4
+ import { sortSpatialGridItems } from '../../application/sortSpatialGridItems';
5
+ /** Renders virtualized free-placement items without owning geometry, pan, zoom, or drag orchestration. */
6
+ export function SpatialGrid({ items, contentWidth, contentHeight, width, height, zoom, overscanPixels, selectedItemId, focusedItemId, revealPaddingPixels, disabled = false, readOnly = false, interactionPolicy, onSelectionChange, onActivation, onFocusChange, onViewportChange, onVisibleItemIdsChange, renderItem, testID, }) {
7
+ const orderedItems = React.useMemo(() => sortSpatialGridItems(items), [items]);
8
+ const itemLookup = React.useMemo(() => new Map(orderedItems.map((item) => [item.id, item])), [orderedItems]);
9
+ const interactionBlocked = disabled || interactionPolicy === 'passive';
10
+ return (<NativeView style={{ height, overflow: 'hidden', width }} testID={testID}>
11
+ <GridView contentHeight={contentHeight} contentWidth={contentWidth} focusedItemId={focusedItemId ?? selectedItemId} height={height} interactionPolicy={interactionPolicy} items={orderedItems} onViewportChange={onViewportChange} onVisibleItemIdsChange={onVisibleItemIdsChange} overscanPixels={overscanPixels} renderItem={(gridItem) => {
12
+ const item = itemLookup.get(gridItem.id);
13
+ if (!item)
14
+ return null;
15
+ return renderSpatialGridItem(item, item.id === selectedItemId, item.id === focusedItemId, interactionBlocked, readOnly, onSelectionChange, onActivation, onFocusChange, renderItem, testID);
16
+ }} revealPaddingPixels={revealPaddingPixels} width={width} zoom={zoom}/>
17
+ </NativeView>);
18
+ }
19
+ /** Adds serializable selection, activation, and focus boundaries around a caller-rendered item. */
20
+ function renderSpatialGridItem(item, selected, focused, interactionBlocked, readOnly, onSelectionChange, onActivation, onFocusChange, renderItem, testID) {
21
+ const interactionDisabled = interactionBlocked || item.disabled === true;
22
+ const editingDisabled = interactionDisabled || readOnly;
23
+ return (<NativePressable accessibilityLabel={item.accessibilityLabel ?? `Spatial grid item ${item.id}`} accessibilityRole="button" accessibilityState={{ disabled: editingDisabled, selected }} disabled={interactionDisabled} style={{ height: '100%', width: '100%' }} testID={testID === undefined ? undefined : `${testID}-item-${item.id}`} onFocus={() => {
24
+ if (!interactionDisabled)
25
+ onFocusChange?.(item.id);
26
+ }} onLongPress={() => {
27
+ if (!editingDisabled)
28
+ onActivation?.(item.id);
29
+ }} onPress={() => {
30
+ if (editingDisabled)
31
+ return;
32
+ onSelectionChange?.(item.id);
33
+ onActivation?.(item.id);
34
+ }}>
35
+ {renderItem(item, { disabled: editingDisabled, focused, selected })}
36
+ </NativePressable>);
37
+ }
38
+ //# sourceMappingURL=SpatialGrid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SpatialGrid.js","sourceRoot":"","sources":["../../../../../src/features/spatial-grid/adapters/inbound/SpatialGrid.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { Pressable as NativePressable, View as NativeView } from 'react-native';\n\nimport type { SpatialGridItem, SpatialGridProps } from '../../../../types/spatial-grid';\nimport { GridView } from '../../../grid-view/public';\nimport { sortSpatialGridItems } from '../../application/sortSpatialGridItems';\n\n/** Renders virtualized free-placement items without owning geometry, pan, zoom, or drag orchestration. */\nexport function SpatialGrid({\n items,\n contentWidth,\n contentHeight,\n width,\n height,\n zoom,\n overscanPixels,\n selectedItemId,\n focusedItemId,\n revealPaddingPixels,\n disabled = false,\n readOnly = false,\n interactionPolicy,\n onSelectionChange,\n onActivation,\n onFocusChange,\n onViewportChange,\n onVisibleItemIdsChange,\n renderItem,\n testID,\n}: SpatialGridProps) {\n const orderedItems = React.useMemo(() => sortSpatialGridItems(items), [items]);\n const itemLookup = React.useMemo(\n () => new Map(orderedItems.map((item) => [item.id, item])),\n [orderedItems],\n );\n const interactionBlocked = disabled || interactionPolicy === 'passive';\n\n return (\n <NativeView style={{ height, overflow: 'hidden', width }} testID={testID}>\n <GridView\n contentHeight={contentHeight}\n contentWidth={contentWidth}\n focusedItemId={focusedItemId ?? selectedItemId}\n height={height}\n interactionPolicy={interactionPolicy}\n items={orderedItems}\n onViewportChange={onViewportChange}\n onVisibleItemIdsChange={onVisibleItemIdsChange}\n overscanPixels={overscanPixels}\n renderItem={(gridItem) => {\n const item = itemLookup.get(gridItem.id);\n if (!item) return null;\n return renderSpatialGridItem(\n item,\n item.id === selectedItemId,\n item.id === focusedItemId,\n interactionBlocked,\n readOnly,\n onSelectionChange,\n onActivation,\n onFocusChange,\n renderItem,\n testID,\n );\n }}\n revealPaddingPixels={revealPaddingPixels}\n width={width}\n zoom={zoom}\n />\n </NativeView>\n );\n}\n\n/** Adds serializable selection, activation, and focus boundaries around a caller-rendered item. */\nfunction renderSpatialGridItem(\n item: SpatialGridItem,\n selected: boolean,\n focused: boolean,\n interactionBlocked: boolean,\n readOnly: boolean,\n onSelectionChange: SpatialGridProps['onSelectionChange'],\n onActivation: SpatialGridProps['onActivation'],\n onFocusChange: SpatialGridProps['onFocusChange'],\n renderItem: SpatialGridProps['renderItem'],\n testID: string | undefined,\n) {\n const interactionDisabled = interactionBlocked || item.disabled === true;\n const editingDisabled = interactionDisabled || readOnly;\n return (\n <NativePressable\n accessibilityLabel={item.accessibilityLabel ?? `Spatial grid item ${item.id}`}\n accessibilityRole=\"button\"\n accessibilityState={{ disabled: editingDisabled, selected }}\n disabled={interactionDisabled}\n style={{ height: '100%', width: '100%' }}\n testID={testID === undefined ? undefined : `${testID}-item-${item.id}`}\n onFocus={() => {\n if (!interactionDisabled) onFocusChange?.(item.id);\n }}\n onLongPress={() => {\n if (!editingDisabled) onActivation?.(item.id);\n }}\n onPress={() => {\n if (editingDisabled) return;\n onSelectionChange?.(item.id);\n onActivation?.(item.id);\n }}\n >\n {renderItem(item, { disabled: editingDisabled, focused, selected })}\n </NativePressable>\n );\n}\n"]}
@@ -0,0 +1,4 @@
1
+ import type { SpatialGridItem } from '../../../types/spatial-grid';
2
+ /** Orders free-placement items for deterministic paint and overlap hit-testing. */
3
+ export declare function sortSpatialGridItems(items: readonly SpatialGridItem[]): readonly SpatialGridItem[];
4
+ //# sourceMappingURL=sortSpatialGridItems.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sortSpatialGridItems.d.ts","sourceRoot":"","sources":["../../../../src/features/spatial-grid/application/sortSpatialGridItems.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAEnE,mFAAmF;AACnF,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,SAAS,eAAe,EAAE,GAChC,SAAS,eAAe,EAAE,CAQ5B"}
@@ -0,0 +1,8 @@
1
+ /** Orders free-placement items for deterministic paint and overlap hit-testing. */
2
+ export function sortSpatialGridItems(items) {
3
+ return [...items]
4
+ .map((item, index) => ({ index, item }))
5
+ .sort((left, right) => (left.item.zIndex ?? 0) - (right.item.zIndex ?? 0) || left.index - right.index)
6
+ .map(({ item }) => item);
7
+ }
8
+ //# sourceMappingURL=sortSpatialGridItems.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sortSpatialGridItems.js","sourceRoot":"","sources":["../../../../src/features/spatial-grid/application/sortSpatialGridItems.ts"],"names":[],"mappings":"AAEA,mFAAmF;AACnF,MAAM,UAAU,oBAAoB,CAClC,KAAiC;IAEjC,OAAO,CAAC,GAAG,KAAK,CAAC;SACd,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;SACvC,IAAI,CACH,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACd,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CACjF;SACA,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC","sourcesContent":["import type { SpatialGridItem } from '../../../types/spatial-grid';\n\n/** Orders free-placement items for deterministic paint and overlap hit-testing. */\nexport function sortSpatialGridItems(\n items: readonly SpatialGridItem[],\n): readonly SpatialGridItem[] {\n return [...items]\n .map((item, index) => ({ index, item }))\n .sort(\n (left, right) =>\n (left.item.zIndex ?? 0) - (right.item.zIndex ?? 0) || left.index - right.index,\n )\n .map(({ item }) => item);\n}\n"]}
@@ -0,0 +1,11 @@
1
+ /** Free-placement rendering requires a caller-owned React renderer and is therefore code-only. */
2
+ export declare const spatialGridMeta: {
3
+ readonly name: "SpatialGrid";
4
+ readonly category: "foundation";
5
+ readonly description: "Virtualized free-placement board. Item rendering belongs to the code API.";
6
+ readonly directManifestNode: false;
7
+ readonly note: "SpatialGrid requires a caller-owned React item renderer and cannot be serialized as a manifest node.";
8
+ readonly allowedChildren: readonly [];
9
+ readonly props: {};
10
+ };
11
+ //# sourceMappingURL=meta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/features/spatial-grid/meta.ts"],"names":[],"mappings":"AAEA,kGAAkG;AAClG,eAAO,MAAM,eAAe;;;;;;;;CAQU,CAAC"}
@@ -0,0 +1,11 @@
1
+ /** Free-placement rendering requires a caller-owned React renderer and is therefore code-only. */
2
+ export const spatialGridMeta = {
3
+ name: 'SpatialGrid',
4
+ category: 'foundation',
5
+ description: 'Virtualized free-placement board. Item rendering belongs to the code API.',
6
+ directManifestNode: false,
7
+ note: 'SpatialGrid requires a caller-owned React item renderer and cannot be serialized as a manifest node.',
8
+ allowedChildren: [],
9
+ props: {},
10
+ };
11
+ //# sourceMappingURL=meta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta.js","sourceRoot":"","sources":["../../../src/features/spatial-grid/meta.ts"],"names":[],"mappings":"AAEA,kGAAkG;AAClG,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE,YAAY;IACtB,WAAW,EAAE,2EAA2E;IACxF,kBAAkB,EAAE,KAAK;IACzB,IAAI,EAAE,sGAAsG;IAC5G,eAAe,EAAE,EAAE;IACnB,KAAK,EAAE,EAAE;CAC2B,CAAC","sourcesContent":["import type { ZoraComponentMeta } from '../../types/authoring';\n\n/** Free-placement rendering requires a caller-owned React renderer and is therefore code-only. */\nexport const spatialGridMeta = {\n name: 'SpatialGrid',\n category: 'foundation',\n description: 'Virtualized free-placement board. Item rendering belongs to the code API.',\n directManifestNode: false,\n note: 'SpatialGrid requires a caller-owned React item renderer and cannot be serialized as a manifest node.',\n allowedChildren: [],\n props: {},\n} as const satisfies ZoraComponentMeta;\n"]}
@@ -0,0 +1,3 @@
1
+ export type { SpatialGridItem, SpatialGridItemState, SpatialGridProps, } from '../../types/spatial-grid';
2
+ export { SpatialGrid } from './adapters/inbound/SpatialGrid';
3
+ //# sourceMappingURL=public.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../../src/features/spatial-grid/public.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,eAAe,EACf,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { SpatialGrid } from './adapters/inbound/SpatialGrid';
2
+ //# sourceMappingURL=public.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public.js","sourceRoot":"","sources":["../../../src/features/spatial-grid/public.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC","sourcesContent":["export type {\n SpatialGridItem,\n SpatialGridItemState,\n SpatialGridProps,\n} from '../../types/spatial-grid';\nexport { SpatialGrid } from './adapters/inbound/SpatialGrid';\n"]}
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import type { TimeGridProps } from '../../../../types/time-grid';
3
+ /*** Presents virtualized variable-height interval lanes through ZORA's shared GridView renderer. */
4
+ export declare function TimeGrid({ contentWidth, focusedIntervalId, height, interactionPolicy, intervals, lanes, onFocusedIntervalIdChange, onIntervalPress, onViewportChange, onVisibleIntervalIdsChange, overscanPixels, renderInterval, renderLaneLabel, revealPaddingPixels, selectedIntervalIds, testID, width, zoom, }: TimeGridProps): React.JSX.Element;
5
+ //# sourceMappingURL=TimeGrid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimeGrid.d.ts","sourceRoot":"","sources":["../../../../../src/features/time-grid/adapters/inbound/TimeGrid.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAMjE,oGAAoG;AACpG,wBAAgB,QAAQ,CAAC,EACvB,YAAY,EACZ,iBAAiB,EACjB,MAAM,EACN,iBAAiB,EACjB,SAAS,EACT,KAAK,EACL,yBAAyB,EACzB,eAAe,EACf,gBAAgB,EAChB,0BAA0B,EAC1B,cAAc,EACd,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,mBAAwB,EACxB,MAAM,EACN,KAAK,EACL,IAAI,GACL,EAAE,aAAa,qBA6Jf"}
@@ -0,0 +1,107 @@
1
+ import { getLaneIntervalPlacement } from '@ankhorage/grid-view';
2
+ import React from 'react';
3
+ import { Pressable, View } from 'react-native';
4
+ import { GridView } from '../../../grid-view/public';
5
+ import { resolveTimeGridNextFocusId } from '../../application/resolveTimeGridNextFocusId';
6
+ import { resolveTimeGridVisibleIntervals } from '../../application/resolveTimeGridVisibleIntervals';
7
+ import { TimeGridKeyboardProxy } from './TimeGridKeyboardProxy';
8
+ /*** Presents virtualized variable-height interval lanes through ZORA's shared GridView renderer. */
9
+ export function TimeGrid({ contentWidth, focusedIntervalId, height, interactionPolicy, intervals, lanes, onFocusedIntervalIdChange, onIntervalPress, onViewportChange, onVisibleIntervalIdsChange, overscanPixels, renderInterval, renderLaneLabel, revealPaddingPixels, selectedIntervalIds = [], testID, width, zoom, }) {
10
+ const scale = Math.max(0.01, zoom ?? 1);
11
+ const [scrollOffsets, setScrollOffsets] = React.useState(() => ({
12
+ offsetX: 0,
13
+ offsetY: 0,
14
+ }));
15
+ const viewport = React.useMemo(() => ({
16
+ ...scrollOffsets,
17
+ height,
18
+ pixelsPerUnitX: scale,
19
+ pixelsPerUnitY: scale,
20
+ width,
21
+ }), [height, scale, scrollOffsets, width]);
22
+ const intervalById = React.useMemo(() => new Map(intervals.map((interval) => [interval.id, interval])), [intervals]);
23
+ const selectedIds = React.useMemo(() => new Set(selectedIntervalIds), [selectedIntervalIds]);
24
+ const contentHeight = React.useMemo(() => lanes.reduce((total, lane) => total + lane.height, 0), [lanes]);
25
+ const visibleIntervals = React.useMemo(() => resolveTimeGridVisibleIntervals(lanes, intervals, viewport, overscanPixels), [intervals, lanes, overscanPixels, viewport]);
26
+ const focusedPlacement = React.useMemo(() => {
27
+ const focusedInterval = intervals.find((interval) => interval.id === focusedIntervalId);
28
+ return focusedInterval ? getLaneIntervalPlacement(lanes, focusedInterval) : undefined;
29
+ }, [focusedIntervalId, intervals, lanes]);
30
+ const gridItems = React.useMemo(() => focusedPlacement && !visibleIntervals.some((interval) => interval.id === focusedPlacement.id)
31
+ ? [...visibleIntervals, focusedPlacement]
32
+ : visibleIntervals, [focusedPlacement, visibleIntervals]);
33
+ const labelIntervals = React.useMemo(() => lanes.map((lane) => ({
34
+ extent: contentWidth,
35
+ id: `lane-label-${lane.id}`,
36
+ laneId: lane.id,
37
+ start: 0,
38
+ })), [contentWidth, lanes]);
39
+ const visibleLabels = React.useMemo(() => resolveTimeGridVisibleIntervals(lanes, labelIntervals, viewport, overscanPixels), [labelIntervals, lanes, overscanPixels, viewport]);
40
+ const handleViewportChange = React.useCallback((nextViewport) => {
41
+ setScrollOffsets((current) => current.offsetX === nextViewport.offsetX && current.offsetY === nextViewport.offsetY
42
+ ? current
43
+ : { offsetX: nextViewport.offsetX, offsetY: nextViewport.offsetY });
44
+ onViewportChange?.(nextViewport);
45
+ }, [onViewportChange]);
46
+ const resolveNextFocusId = React.useCallback((intervalId, direction) => {
47
+ const allIntervals = resolveTimeGridVisibleIntervals(lanes, intervals, {
48
+ height: contentHeight,
49
+ offsetX: 0,
50
+ offsetY: 0,
51
+ pixelsPerUnitX: 1,
52
+ pixelsPerUnitY: 1,
53
+ width: contentWidth,
54
+ });
55
+ return resolveTimeGridNextFocusId(allIntervals, intervalId, direction);
56
+ }, [contentHeight, contentWidth, intervals, lanes]);
57
+ return (<View style={{ flexDirection: 'row', height, width }} testID={testID}>
58
+ {renderLaneLabel ? (<View accessibilityElementsHidden pointerEvents="none" style={{ height, overflow: 'hidden' }}>
59
+ {visibleLabels.map((placement) => {
60
+ const lane = lanes[placement.laneIndex];
61
+ if (!lane)
62
+ return null;
63
+ return (<View key={lane.id} style={{
64
+ height: placement.height * scale,
65
+ position: 'absolute',
66
+ top: (placement.y - viewport.offsetY) * scale,
67
+ }} testID={testID === undefined ? undefined : `${testID}-lane-label-${lane.id}`}>
68
+ {renderLaneLabel(lane)}
69
+ </View>);
70
+ })}
71
+ </View>) : null}
72
+ <GridView contentHeight={contentHeight} contentWidth={contentWidth} focusedItemId={focusedIntervalId} height={height} interactionPolicy={interactionPolicy} items={gridItems} onViewportChange={handleViewportChange} onVisibleItemIdsChange={onVisibleIntervalIdsChange} overscanPixels={overscanPixels} renderItem={(placement) => {
73
+ const interval = intervalById.get(placement.id);
74
+ if (!interval)
75
+ return null;
76
+ const selected = selectedIds.has(interval.id);
77
+ return (<TimeGridKeyboardProxy onKeyDown={(key) => {
78
+ const direction = resolveKeyboardDirection(key);
79
+ const nextId = direction === undefined ? undefined : resolveNextFocusId(interval.id, direction);
80
+ if (!nextId)
81
+ return false;
82
+ onFocusedIntervalIdChange?.(nextId);
83
+ return true;
84
+ }}>
85
+ <Pressable accessibilityLabel={`Interval ${interval.id}`} accessibilityRole="button" disabled={interactionPolicy === 'passive'} onPress={() => {
86
+ onFocusedIntervalIdChange?.(interval.id);
87
+ onIntervalPress?.(interval);
88
+ }} style={{ flex: 1 }} testID={testID === undefined ? undefined : `${testID}-interval-${interval.id}`}>
89
+ {renderInterval(interval, selected)}
90
+ </Pressable>
91
+ </TimeGridKeyboardProxy>);
92
+ }} revealPaddingPixels={revealPaddingPixels} testID={testID === undefined ? undefined : `${testID}-viewport`} width={width} zoom={zoom}/>
93
+ </View>);
94
+ }
95
+ /*** Maps desktop arrow keys to the platform-neutral interval navigation directions. */
96
+ function resolveKeyboardDirection(key) {
97
+ if (key === 'ArrowDown')
98
+ return 'down';
99
+ if (key === 'ArrowLeft')
100
+ return 'left';
101
+ if (key === 'ArrowRight')
102
+ return 'right';
103
+ if (key === 'ArrowUp')
104
+ return 'up';
105
+ return undefined;
106
+ }
107
+ //# sourceMappingURL=TimeGrid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimeGrid.js","sourceRoot":"","sources":["../../../../../src/features/time-grid/adapters/inbound/TimeGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAqB,MAAM,sBAAsB,CAAC;AACnF,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAG/C,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8CAA8C,CAAC;AAC1F,OAAO,EAAE,+BAA+B,EAAE,MAAM,mDAAmD,CAAC;AACpG,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,oGAAoG;AACpG,MAAM,UAAU,QAAQ,CAAC,EACvB,YAAY,EACZ,iBAAiB,EACjB,MAAM,EACN,iBAAiB,EACjB,SAAS,EACT,KAAK,EACL,yBAAyB,EACzB,eAAe,EACf,gBAAgB,EAChB,0BAA0B,EAC1B,cAAc,EACd,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,mBAAmB,GAAG,EAAE,EACxB,MAAM,EACN,KAAK,EACL,IAAI,GACU;IACd,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC;IACxC,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;QAC9D,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,CAAC;KACX,CAAC,CAAC,CAAC;IACJ,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAC5B,GAAG,EAAE,CAAC,CAAC;QACL,GAAG,aAAa;QAChB,MAAM;QACN,cAAc,EAAE,KAAK;QACrB,cAAc,EAAE,KAAK;QACrB,KAAK;KACN,CAAC,EACF,CAAC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,CACtC,CAAC;IACF,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAChC,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,EACnE,CAAC,SAAS,CAAC,CACZ,CAAC;IACF,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,mBAAmB,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAC7F,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CACjC,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,EAC3D,CAAC,KAAK,CAAC,CACR,CAAC;IACF,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CACpC,GAAG,EAAE,CAAC,+BAA+B,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,CAAC,EACjF,CAAC,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,CAAC,CAC7C,CAAC;IACF,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAC1C,MAAM,eAAe,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,iBAAiB,CAAC,CAAC;QACxF,OAAO,eAAe,CAAC,CAAC,CAAC,wBAAwB,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACxF,CAAC,EAAE,CAAC,iBAAiB,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAC7B,GAAG,EAAE,CACH,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,gBAAgB,CAAC,EAAE,CAAC;QAC3F,CAAC,CAAC,CAAC,GAAG,gBAAgB,EAAE,gBAAgB,CAAC;QACzC,CAAC,CAAC,gBAAgB,EACtB,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CACrC,CAAC;IACF,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAClC,GAAG,EAAE,CACH,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACnB,MAAM,EAAE,YAAY;QACpB,EAAE,EAAE,cAAc,IAAI,CAAC,EAAE,EAAE;QAC3B,MAAM,EAAE,IAAI,CAAC,EAAE;QACf,KAAK,EAAE,CAAC;KACT,CAAC,CAAC,EACL,CAAC,YAAY,EAAE,KAAK,CAAC,CACtB,CAAC;IACF,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CACjC,GAAG,EAAE,CAAC,+BAA+B,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,cAAc,CAAC,EACtF,CAAC,cAAc,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,CAAC,CAClD,CAAC;IAEF,MAAM,oBAAoB,GAAG,KAAK,CAAC,WAAW,CAC5C,CAAC,YAA0B,EAAE,EAAE;QAC7B,gBAAgB,CAAC,CAAC,OAAO,EAAE,EAAE,CAC3B,OAAO,CAAC,OAAO,KAAK,YAAY,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,KAAK,YAAY,CAAC,OAAO;YAClF,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,CACrE,CAAC;QACF,gBAAgB,EAAE,CAAC,YAAY,CAAC,CAAC;IACnC,CAAC,EACD,CAAC,gBAAgB,CAAC,CACnB,CAAC;IAEF,MAAM,kBAAkB,GAAG,KAAK,CAAC,WAAW,CAC1C,CAAC,UAAkB,EAAE,SAA2C,EAAE,EAAE;QAClE,MAAM,YAAY,GAAG,+BAA+B,CAAC,KAAK,EAAE,SAAS,EAAE;YACrE,MAAM,EAAE,aAAa;YACrB,OAAO,EAAE,CAAC;YACV,OAAO,EAAE,CAAC;YACV,cAAc,EAAE,CAAC;YACjB,cAAc,EAAE,CAAC;YACjB,KAAK,EAAE,YAAY;SACpB,CAAC,CAAC;QACH,OAAO,0BAA0B,CAAC,YAAY,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;IACzE,CAAC,EACD,CAAC,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK,CAAC,CAChD,CAAC;IAEF,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CACnE;MAAA,CAAC,eAAe,CAAC,CAAC,CAAC,CACjB,CAAC,IAAI,CACH,2BAA2B,CAC3B,aAAa,CAAC,MAAM,CACpB,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAEtC;UAAA,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;gBAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;gBACxC,IAAI,CAAC,IAAI;oBAAE,OAAO,IAAI,CAAC;gBACvB,OAAO,CACL,CAAC,IAAI,CACH,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CACb,KAAK,CAAC,CAAC;wBACL,MAAM,EAAE,SAAS,CAAC,MAAM,GAAG,KAAK;wBAChC,QAAQ,EAAE,UAAU;wBACpB,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,KAAK;qBAC9C,CAAC,CACF,MAAM,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,MAAM,eAAe,IAAI,CAAC,EAAE,EAAE,CAAC,CAE7E;gBAAA,CAAC,eAAe,CAAC,IAAI,CAAC,CACxB;cAAA,EAAE,IAAI,CAAC,CACR,CAAC;YACJ,CAAC,CAAC,CACJ;QAAA,EAAE,IAAI,CAAC,CACR,CAAC,CAAC,CAAC,IAAI,CACR;MAAA,CAAC,QAAQ,CACP,aAAa,CAAC,CAAC,aAAa,CAAC,CAC7B,YAAY,CAAC,CAAC,YAAY,CAAC,CAC3B,aAAa,CAAC,CAAC,iBAAiB,CAAC,CACjC,MAAM,CAAC,CAAC,MAAM,CAAC,CACf,iBAAiB,CAAC,CAAC,iBAAiB,CAAC,CACrC,KAAK,CAAC,CAAC,SAAS,CAAC,CACjB,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,CACvC,sBAAsB,CAAC,CAAC,0BAA0B,CAAC,CACnD,cAAc,CAAC,CAAC,cAAc,CAAC,CAC/B,UAAU,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE;YACxB,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAChD,IAAI,CAAC,QAAQ;gBAAE,OAAO,IAAI,CAAC;YAC3B,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC9C,OAAO,CACL,CAAC,qBAAqB,CACpB,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE;oBACjB,MAAM,SAAS,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC;oBAChD,MAAM,MAAM,GACV,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;oBACnF,IAAI,CAAC,MAAM;wBAAE,OAAO,KAAK,CAAC;oBAC1B,yBAAyB,EAAE,CAAC,MAAM,CAAC,CAAC;oBACpC,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC,CAEF;cAAA,CAAC,SAAS,CACR,kBAAkB,CAAC,CAAC,YAAY,QAAQ,CAAC,EAAE,EAAE,CAAC,CAC9C,iBAAiB,CAAC,QAAQ,CAC1B,QAAQ,CAAC,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAC1C,OAAO,CAAC,CAAC,GAAG,EAAE;oBACZ,yBAAyB,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;oBACzC,eAAe,EAAE,CAAC,QAAQ,CAAC,CAAC;gBAC9B,CAAC,CAAC,CACF,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CACnB,MAAM,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,MAAM,aAAa,QAAQ,CAAC,EAAE,EAAE,CAAC,CAE/E;gBAAA,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CACrC;cAAA,EAAE,SAAS,CACb;YAAA,EAAE,qBAAqB,CAAC,CACzB,CAAC;QACJ,CAAC,CAAC,CACF,mBAAmB,CAAC,CAAC,mBAAmB,CAAC,CACzC,MAAM,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,MAAM,WAAW,CAAC,CAChE,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,IAAI,CAAC,CAAC,IAAI,CAAC,EAEf;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC;AAED,uFAAuF;AACvF,SAAS,wBAAwB,CAAC,GAAW;IAC3C,IAAI,GAAG,KAAK,WAAW;QAAE,OAAO,MAAM,CAAC;IACvC,IAAI,GAAG,KAAK,WAAW;QAAE,OAAO,MAAM,CAAC;IACvC,IAAI,GAAG,KAAK,YAAY;QAAE,OAAO,OAAO,CAAC;IACzC,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACnC,OAAO,SAAS,CAAC;AACnB,CAAC","sourcesContent":["import { getLaneIntervalPlacement, type GridViewport } from '@ankhorage/grid-view';\nimport React from 'react';\nimport { Pressable, View } from 'react-native';\n\nimport type { TimeGridProps } from '../../../../types/time-grid';\nimport { GridView } from '../../../grid-view/public';\nimport { resolveTimeGridNextFocusId } from '../../application/resolveTimeGridNextFocusId';\nimport { resolveTimeGridVisibleIntervals } from '../../application/resolveTimeGridVisibleIntervals';\nimport { TimeGridKeyboardProxy } from './TimeGridKeyboardProxy';\n\n/*** Presents virtualized variable-height interval lanes through ZORA's shared GridView renderer. */\nexport function TimeGrid({\n contentWidth,\n focusedIntervalId,\n height,\n interactionPolicy,\n intervals,\n lanes,\n onFocusedIntervalIdChange,\n onIntervalPress,\n onViewportChange,\n onVisibleIntervalIdsChange,\n overscanPixels,\n renderInterval,\n renderLaneLabel,\n revealPaddingPixels,\n selectedIntervalIds = [],\n testID,\n width,\n zoom,\n}: TimeGridProps) {\n const scale = Math.max(0.01, zoom ?? 1);\n const [scrollOffsets, setScrollOffsets] = React.useState(() => ({\n offsetX: 0,\n offsetY: 0,\n }));\n const viewport = React.useMemo<GridViewport>(\n () => ({\n ...scrollOffsets,\n height,\n pixelsPerUnitX: scale,\n pixelsPerUnitY: scale,\n width,\n }),\n [height, scale, scrollOffsets, width],\n );\n const intervalById = React.useMemo(\n () => new Map(intervals.map((interval) => [interval.id, interval])),\n [intervals],\n );\n const selectedIds = React.useMemo(() => new Set(selectedIntervalIds), [selectedIntervalIds]);\n const contentHeight = React.useMemo(\n () => lanes.reduce((total, lane) => total + lane.height, 0),\n [lanes],\n );\n const visibleIntervals = React.useMemo(\n () => resolveTimeGridVisibleIntervals(lanes, intervals, viewport, overscanPixels),\n [intervals, lanes, overscanPixels, viewport],\n );\n const focusedPlacement = React.useMemo(() => {\n const focusedInterval = intervals.find((interval) => interval.id === focusedIntervalId);\n return focusedInterval ? getLaneIntervalPlacement(lanes, focusedInterval) : undefined;\n }, [focusedIntervalId, intervals, lanes]);\n const gridItems = React.useMemo(\n () =>\n focusedPlacement && !visibleIntervals.some((interval) => interval.id === focusedPlacement.id)\n ? [...visibleIntervals, focusedPlacement]\n : visibleIntervals,\n [focusedPlacement, visibleIntervals],\n );\n const labelIntervals = React.useMemo(\n () =>\n lanes.map((lane) => ({\n extent: contentWidth,\n id: `lane-label-${lane.id}`,\n laneId: lane.id,\n start: 0,\n })),\n [contentWidth, lanes],\n );\n const visibleLabels = React.useMemo(\n () => resolveTimeGridVisibleIntervals(lanes, labelIntervals, viewport, overscanPixels),\n [labelIntervals, lanes, overscanPixels, viewport],\n );\n\n const handleViewportChange = React.useCallback(\n (nextViewport: GridViewport) => {\n setScrollOffsets((current) =>\n current.offsetX === nextViewport.offsetX && current.offsetY === nextViewport.offsetY\n ? current\n : { offsetX: nextViewport.offsetX, offsetY: nextViewport.offsetY },\n );\n onViewportChange?.(nextViewport);\n },\n [onViewportChange],\n );\n\n const resolveNextFocusId = React.useCallback(\n (intervalId: string, direction: 'down' | 'left' | 'right' | 'up') => {\n const allIntervals = resolveTimeGridVisibleIntervals(lanes, intervals, {\n height: contentHeight,\n offsetX: 0,\n offsetY: 0,\n pixelsPerUnitX: 1,\n pixelsPerUnitY: 1,\n width: contentWidth,\n });\n return resolveTimeGridNextFocusId(allIntervals, intervalId, direction);\n },\n [contentHeight, contentWidth, intervals, lanes],\n );\n\n return (\n <View style={{ flexDirection: 'row', height, width }} testID={testID}>\n {renderLaneLabel ? (\n <View\n accessibilityElementsHidden\n pointerEvents=\"none\"\n style={{ height, overflow: 'hidden' }}\n >\n {visibleLabels.map((placement) => {\n const lane = lanes[placement.laneIndex];\n if (!lane) return null;\n return (\n <View\n key={lane.id}\n style={{\n height: placement.height * scale,\n position: 'absolute',\n top: (placement.y - viewport.offsetY) * scale,\n }}\n testID={testID === undefined ? undefined : `${testID}-lane-label-${lane.id}`}\n >\n {renderLaneLabel(lane)}\n </View>\n );\n })}\n </View>\n ) : null}\n <GridView\n contentHeight={contentHeight}\n contentWidth={contentWidth}\n focusedItemId={focusedIntervalId}\n height={height}\n interactionPolicy={interactionPolicy}\n items={gridItems}\n onViewportChange={handleViewportChange}\n onVisibleItemIdsChange={onVisibleIntervalIdsChange}\n overscanPixels={overscanPixels}\n renderItem={(placement) => {\n const interval = intervalById.get(placement.id);\n if (!interval) return null;\n const selected = selectedIds.has(interval.id);\n return (\n <TimeGridKeyboardProxy\n onKeyDown={(key) => {\n const direction = resolveKeyboardDirection(key);\n const nextId =\n direction === undefined ? undefined : resolveNextFocusId(interval.id, direction);\n if (!nextId) return false;\n onFocusedIntervalIdChange?.(nextId);\n return true;\n }}\n >\n <Pressable\n accessibilityLabel={`Interval ${interval.id}`}\n accessibilityRole=\"button\"\n disabled={interactionPolicy === 'passive'}\n onPress={() => {\n onFocusedIntervalIdChange?.(interval.id);\n onIntervalPress?.(interval);\n }}\n style={{ flex: 1 }}\n testID={testID === undefined ? undefined : `${testID}-interval-${interval.id}`}\n >\n {renderInterval(interval, selected)}\n </Pressable>\n </TimeGridKeyboardProxy>\n );\n }}\n revealPaddingPixels={revealPaddingPixels}\n testID={testID === undefined ? undefined : `${testID}-viewport`}\n width={width}\n zoom={zoom}\n />\n </View>\n );\n}\n\n/*** Maps desktop arrow keys to the platform-neutral interval navigation directions. */\nfunction resolveKeyboardDirection(key: string): 'down' | 'left' | 'right' | 'up' | undefined {\n if (key === 'ArrowDown') return 'down';\n if (key === 'ArrowLeft') return 'left';\n if (key === 'ArrowRight') return 'right';\n if (key === 'ArrowUp') return 'up';\n return undefined;\n}\n"]}
@@ -0,0 +1,9 @@
1
+ import type React from 'react';
2
+ /*** Provides the native fallback type surface; React Native Web resolves the DOM adapter at runtime. */
3
+ export declare function TimeGridKeyboardProxy({ children }: TimeGridKeyboardProxyProps): React.JSX.Element;
4
+ interface TimeGridKeyboardProxyProps {
5
+ readonly children: React.ReactNode;
6
+ readonly onKeyDown: (key: string) => boolean;
7
+ }
8
+ export {};
9
+ //# sourceMappingURL=TimeGridKeyboardProxy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimeGridKeyboardProxy.d.ts","sourceRoot":"","sources":["../../../../../src/features/time-grid/adapters/inbound/TimeGridKeyboardProxy.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,wGAAwG;AACxG,wBAAgB,qBAAqB,CAAC,EAAE,QAAQ,EAAE,EAAE,0BAA0B,qBAE7E;AAED,UAAU,0BAA0B;IAClC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IACnC,QAAQ,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;CAC9C"}
@@ -0,0 +1,5 @@
1
+ /*** Provides the native fallback type surface; React Native Web resolves the DOM adapter at runtime. */
2
+ export function TimeGridKeyboardProxy({ children }) {
3
+ return <>{children}</>;
4
+ }
5
+ //# sourceMappingURL=TimeGridKeyboardProxy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimeGridKeyboardProxy.js","sourceRoot":"","sources":["../../../../../src/features/time-grid/adapters/inbound/TimeGridKeyboardProxy.tsx"],"names":[],"mappings":"AAEA,wGAAwG;AACxG,MAAM,UAAU,qBAAqB,CAAC,EAAE,QAAQ,EAA8B;IAC5E,OAAO,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC;AACzB,CAAC","sourcesContent":["import type React from 'react';\n\n/*** Provides the native fallback type surface; React Native Web resolves the DOM adapter at runtime. */\nexport function TimeGridKeyboardProxy({ children }: TimeGridKeyboardProxyProps) {\n return <>{children}</>;\n}\n\ninterface TimeGridKeyboardProxyProps {\n readonly children: React.ReactNode;\n readonly onKeyDown: (key: string) => boolean;\n}\n"]}
@@ -0,0 +1,9 @@
1
+ import type React from 'react';
2
+ /*** Preserves native activation and touch interaction where DOM arrow-key events do not exist. */
3
+ export declare function TimeGridKeyboardProxy({ children }: TimeGridKeyboardProxyProps): React.JSX.Element;
4
+ interface TimeGridKeyboardProxyProps {
5
+ readonly children: React.ReactNode;
6
+ readonly onKeyDown: (key: string) => boolean;
7
+ }
8
+ export {};
9
+ //# sourceMappingURL=TimeGridKeyboardProxy.native.d.ts.map