@multiplatform.one/components 7.79.0 → 7.81.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 (411) hide show
  1. package/dist/cjs/CheckGlyph/MenuCheckColumn.cjs +56 -0
  2. package/dist/cjs/CheckGlyph/MenuCheckColumn.native.js +60 -0
  3. package/dist/cjs/CheckGlyph/MenuCheckColumn.native.js.map +1 -0
  4. package/dist/cjs/CheckGlyph/index.cjs +40 -0
  5. package/dist/cjs/CheckGlyph/index.native.js +44 -0
  6. package/dist/cjs/CheckGlyph/index.native.js.map +1 -0
  7. package/dist/cjs/ContextMenu/index.cjs +5 -22
  8. package/dist/cjs/ContextMenu/index.native.js +7 -25
  9. package/dist/cjs/ContextMenu/index.native.js.map +1 -1
  10. package/dist/cjs/DropdownMenu/index.cjs +5 -17
  11. package/dist/cjs/DropdownMenu/index.native.js +7 -19
  12. package/dist/cjs/DropdownMenu/index.native.js.map +1 -1
  13. package/dist/cjs/Popover.cjs +2 -2
  14. package/dist/cjs/Popover.native.js +2 -2
  15. package/dist/cjs/Popover.native.js.map +1 -1
  16. package/dist/cjs/SchemeToggle/index.cjs +2 -2
  17. package/dist/cjs/SchemeToggle/index.native.js +2 -2
  18. package/dist/cjs/SchemeToggle/index.native.js.map +1 -1
  19. package/dist/cjs/SheetModal/index.cjs +4 -1
  20. package/dist/cjs/SheetModal/index.native.js +1 -1
  21. package/dist/cjs/SheetModal/index.native.js.map +1 -1
  22. package/dist/cjs/TreeSelect/index.cjs +2 -6
  23. package/dist/cjs/TreeSelect/index.native.js +2 -6
  24. package/dist/cjs/TreeSelect/index.native.js.map +1 -1
  25. package/dist/cjs/appShell/AppShell.cjs +438 -0
  26. package/dist/cjs/appShell/AppShell.native.js +505 -0
  27. package/dist/cjs/appShell/AppShell.native.js.map +1 -0
  28. package/dist/cjs/appShell/ScopeMenu.cjs +39 -16
  29. package/dist/cjs/appShell/ScopeMenu.native.js +43 -17
  30. package/dist/cjs/appShell/ScopeMenu.native.js.map +1 -1
  31. package/dist/cjs/appShell/TabHost.native.js +41 -10
  32. package/dist/cjs/appShell/TabHost.native.js.map +1 -1
  33. package/dist/cjs/appShell/index.cjs +1 -0
  34. package/dist/cjs/appShell/index.native.js +1 -0
  35. package/dist/cjs/appShell/index.native.js.map +1 -1
  36. package/dist/cjs/layouts/page.cjs +3 -0
  37. package/dist/cjs/layouts/page.native.js +3 -0
  38. package/dist/cjs/layouts/page.native.js.map +1 -1
  39. package/dist/cjs/layouts/screenScroll.cjs +55 -0
  40. package/dist/cjs/layouts/screenScroll.native.js +59 -0
  41. package/dist/cjs/layouts/screenScroll.native.js.map +1 -1
  42. package/dist/cjs/layouts/sidebar.cjs +74 -16
  43. package/dist/cjs/layouts/sidebar.native.js +78 -16
  44. package/dist/cjs/layouts/sidebar.native.js.map +1 -1
  45. package/dist/esm/Accordion/index.native.js.map +1 -1
  46. package/dist/esm/AnimateHeight/index.native.js.map +1 -1
  47. package/dist/esm/Avatar/getInitials.native.js.map +1 -1
  48. package/dist/esm/Avatar/index.native.js.map +1 -1
  49. package/dist/esm/Badge/index.native.js.map +1 -1
  50. package/dist/esm/Button.native.js.map +1 -1
  51. package/dist/esm/Carousel/index.native.js.map +1 -1
  52. package/dist/esm/CheckGlyph/MenuCheckColumn.mjs +31 -0
  53. package/dist/esm/CheckGlyph/MenuCheckColumn.mjs.map +1 -0
  54. package/dist/esm/CheckGlyph/MenuCheckColumn.native.js +32 -0
  55. package/dist/esm/CheckGlyph/MenuCheckColumn.native.js.map +1 -0
  56. package/dist/esm/CheckGlyph/index.mjs +15 -0
  57. package/dist/esm/CheckGlyph/index.mjs.map +1 -0
  58. package/dist/esm/CheckGlyph/index.native.js +16 -0
  59. package/dist/esm/CheckGlyph/index.native.js.map +1 -0
  60. package/dist/esm/Chip/index.native.js.map +1 -1
  61. package/dist/esm/Collapsible.native.js.map +1 -1
  62. package/dist/esm/ContextMenu/index.mjs +6 -23
  63. package/dist/esm/ContextMenu/index.mjs.map +1 -1
  64. package/dist/esm/ContextMenu/index.native.js +8 -26
  65. package/dist/esm/ContextMenu/index.native.js.map +1 -1
  66. package/dist/esm/CopyField/CopyMenuButton.native.js.map +1 -1
  67. package/dist/esm/CopyField/index.native.js.map +1 -1
  68. package/dist/esm/Dialog.native.js.map +1 -1
  69. package/dist/esm/Diff/diff.native.js.map +1 -1
  70. package/dist/esm/Diff/index.native.js.map +1 -1
  71. package/dist/esm/DotIndicator/index.native.js.map +1 -1
  72. package/dist/esm/DropdownMenu/index.mjs +6 -18
  73. package/dist/esm/DropdownMenu/index.mjs.map +1 -1
  74. package/dist/esm/DropdownMenu/index.native.js +8 -20
  75. package/dist/esm/DropdownMenu/index.native.js.map +1 -1
  76. package/dist/esm/DropdownMenu/menuSettle.native.js.map +1 -1
  77. package/dist/esm/ElapsedProgress/index.native.js.map +1 -1
  78. package/dist/esm/ErrorBoundary/index.native.js.map +1 -1
  79. package/dist/esm/Heading.native.js.map +1 -1
  80. package/dist/esm/Kbd/index.native.js.map +1 -1
  81. package/dist/esm/Kbd/keys.native.js.map +1 -1
  82. package/dist/esm/Lightbox/MediaControl.native.js.map +1 -1
  83. package/dist/esm/Lightbox/index.gnome.native.js.map +1 -1
  84. package/dist/esm/Lightbox/shared.native.js.map +1 -1
  85. package/dist/esm/Lightbox/useLightbox.native.js.map +1 -1
  86. package/dist/esm/MachineLiteral/index.native.js.map +1 -1
  87. package/dist/esm/Material/index.native.js.map +1 -1
  88. package/dist/esm/Meter/index.native.js.map +1 -1
  89. package/dist/esm/Meter/meter.native.js.map +1 -1
  90. package/dist/esm/OverflowRow/index.native.js.map +1 -1
  91. package/dist/esm/Pagination.native.js.map +1 -1
  92. package/dist/esm/Popover.mjs +2 -2
  93. package/dist/esm/Popover.mjs.map +1 -1
  94. package/dist/esm/Popover.native.js +2 -2
  95. package/dist/esm/Popover.native.js.map +1 -1
  96. package/dist/esm/ProgressSteps/index.native.js.map +1 -1
  97. package/dist/esm/Quote/index.native.js.map +1 -1
  98. package/dist/esm/SchemeToggle/index.mjs +3 -3
  99. package/dist/esm/SchemeToggle/index.mjs.map +1 -1
  100. package/dist/esm/SchemeToggle/index.native.js +3 -3
  101. package/dist/esm/SchemeToggle/index.native.js.map +1 -1
  102. package/dist/esm/ScrollView/revealFocusedField.native.js.map +1 -1
  103. package/dist/esm/Separator/index.native.js.map +1 -1
  104. package/dist/esm/Sheet.native.js.map +1 -1
  105. package/dist/esm/SheetModal/SheetHeader.native.js.map +1 -1
  106. package/dist/esm/SheetModal/SheetNavigation.native.js.map +1 -1
  107. package/dist/esm/SheetModal/detents.native.js.map +1 -1
  108. package/dist/esm/SheetModal/index.mjs +5 -2
  109. package/dist/esm/SheetModal/index.mjs.map +1 -1
  110. package/dist/esm/SheetModal/index.native.js +2 -2
  111. package/dist/esm/SheetModal/index.native.js.map +1 -1
  112. package/dist/esm/SheetModal/useSheetFrameFocus.native.js.map +1 -1
  113. package/dist/esm/Skeleton/index.native.js.map +1 -1
  114. package/dist/esm/SkipLink/index.native.js.map +1 -1
  115. package/dist/esm/SortableList/SortableHandle.native.js.map +1 -1
  116. package/dist/esm/SortableList/index.native.js.map +1 -1
  117. package/dist/esm/SortableList/useSortableRows.native.js.map +1 -1
  118. package/dist/esm/SortableList/useUserOrder.native.js.map +1 -1
  119. package/dist/esm/Tabs/index.native.js.map +1 -1
  120. package/dist/esm/Text.native.js.map +1 -1
  121. package/dist/esm/ThemePresetPicker/index.native.js.map +1 -1
  122. package/dist/esm/Toast/index.native.js.map +1 -1
  123. package/dist/esm/Toast/store.native.js.map +1 -1
  124. package/dist/esm/Tooltip/nativePress.native.js.map +1 -1
  125. package/dist/esm/Tooltip/tooltipShared.native.js.map +1 -1
  126. package/dist/esm/TreeSelect/index.mjs +4 -8
  127. package/dist/esm/TreeSelect/index.mjs.map +1 -1
  128. package/dist/esm/TreeSelect/index.native.js +4 -8
  129. package/dist/esm/TreeSelect/index.native.js.map +1 -1
  130. package/dist/esm/TreeSelect/treeSelectModel.native.js.map +1 -1
  131. package/dist/esm/Video/PlayerChrome.native.js.map +1 -1
  132. package/dist/esm/Video/VideoFrame.native.js.map +1 -1
  133. package/dist/esm/Video/types.native.js.map +1 -1
  134. package/dist/esm/Wheel/index.native.js.map +1 -1
  135. package/dist/esm/Wizard/index.native.js.map +1 -1
  136. package/dist/esm/actions/ActionBar.native.js.map +1 -1
  137. package/dist/esm/actions/DangerSection.native.js.map +1 -1
  138. package/dist/esm/actions/DestructiveAction.native.js.map +1 -1
  139. package/dist/esm/actions/HeaderActions.native.js.map +1 -1
  140. package/dist/esm/actions/StandardAction.native.js.map +1 -1
  141. package/dist/esm/actions/devWarn.native.js.map +1 -1
  142. package/dist/esm/actions/index.native.js.map +1 -1
  143. package/dist/esm/actions/severity.native.js.map +1 -1
  144. package/dist/esm/appShell/AppShell.mjs +412 -0
  145. package/dist/esm/appShell/AppShell.mjs.map +1 -0
  146. package/dist/esm/appShell/AppShell.native.js +476 -0
  147. package/dist/esm/appShell/AppShell.native.js.map +1 -0
  148. package/dist/esm/appShell/Dock.native.js.map +1 -1
  149. package/dist/esm/appShell/MpoTabHost.native.js.map +1 -1
  150. package/dist/esm/appShell/ScopeMenu.mjs +43 -20
  151. package/dist/esm/appShell/ScopeMenu.mjs.map +1 -1
  152. package/dist/esm/appShell/ScopeMenu.native.js +47 -21
  153. package/dist/esm/appShell/ScopeMenu.native.js.map +1 -1
  154. package/dist/esm/appShell/SettingsSplit.native.js.map +1 -1
  155. package/dist/esm/appShell/Springboard.native.js.map +1 -1
  156. package/dist/esm/appShell/SystemBar.native.js.map +1 -1
  157. package/dist/esm/appShell/TabBar.mjs.map +1 -1
  158. package/dist/esm/appShell/TabBar.native.js.map +1 -1
  159. package/dist/esm/appShell/TabHost.native.js +41 -12
  160. package/dist/esm/appShell/TabHost.native.js.map +1 -1
  161. package/dist/esm/appShell/appTile.native.js.map +1 -1
  162. package/dist/esm/appShell/bottomChrome.native.js.map +1 -1
  163. package/dist/esm/appShell/index.mjs +1 -0
  164. package/dist/esm/appShell/index.mjs.map +1 -1
  165. package/dist/esm/appShell/index.native.js +1 -0
  166. package/dist/esm/appShell/index.native.js.map +1 -1
  167. package/dist/esm/charts/Axis.native.js.map +1 -1
  168. package/dist/esm/charts/BarChart.native.js.map +1 -1
  169. package/dist/esm/charts/ChartDataView.native.js.map +1 -1
  170. package/dist/esm/charts/ChartSurface.native.js.map +1 -1
  171. package/dist/esm/charts/LineChart.native.js.map +1 -1
  172. package/dist/esm/charts/PieChart.native.js.map +1 -1
  173. package/dist/esm/charts/Sparkline.native.js.map +1 -1
  174. package/dist/esm/charts/accessibility.native.js.map +1 -1
  175. package/dist/esm/charts/chartHeight.native.js.map +1 -1
  176. package/dist/esm/charts/composeChart.native.js.map +1 -1
  177. package/dist/esm/charts/index.native.js.map +1 -1
  178. package/dist/esm/charts/math.native.js.map +1 -1
  179. package/dist/esm/charts/series.native.js.map +1 -1
  180. package/dist/esm/charts/svg.native.js.map +1 -1
  181. package/dist/esm/charts/types.native.js.map +1 -1
  182. package/dist/esm/charts/useChartTheme.native.js.map +1 -1
  183. package/dist/esm/code/Code/index.native.js.map +1 -1
  184. package/dist/esm/code/CodeBlock/index.native.js.map +1 -1
  185. package/dist/esm/code/HighlightedCode/index.native.js.map +1 -1
  186. package/dist/esm/code/Highlighter/houseSyntaxTheme.native.js.map +1 -1
  187. package/dist/esm/code/Highlighter/index.native.js.map +1 -1
  188. package/dist/esm/code/Highlighter/namedGroupMatchAll.native.js.map +1 -1
  189. package/dist/esm/code/Pre/index.native.js.map +1 -1
  190. package/dist/esm/code/index.native.js.map +1 -1
  191. package/dist/esm/componentColors.native.js.map +1 -1
  192. package/dist/esm/feedback/ConfirmDialog.native.js.map +1 -1
  193. package/dist/esm/feedback/NotifyHost.native.js.map +1 -1
  194. package/dist/esm/feedback/copy.native.js.map +1 -1
  195. package/dist/esm/feedback/index.native.js.map +1 -1
  196. package/dist/esm/feedback/notify.native.js.map +1 -1
  197. package/dist/esm/feedback/route.native.js.map +1 -1
  198. package/dist/esm/feedback/store.native.js.map +1 -1
  199. package/dist/esm/formLayouts/FormLayouts.native.js.map +1 -1
  200. package/dist/esm/formLayouts/PreferencePanel.native.js.map +1 -1
  201. package/dist/esm/formLayouts/index.native.js.map +1 -1
  202. package/dist/esm/hooks/index.native.js.map +1 -1
  203. package/dist/esm/hooks/useClipboard.native.js.map +1 -1
  204. package/dist/esm/hooks/useDocumentTitle.native.js.map +1 -1
  205. package/dist/esm/hooks/useHoldCue.native.js.map +1 -1
  206. package/dist/esm/icons/CheckRegular.native.js.map +1 -1
  207. package/dist/esm/icons/MinusRegular.native.js.map +1 -1
  208. package/dist/esm/icons/index.native.js.map +1 -1
  209. package/dist/esm/icons/lucide.native.js.map +1 -1
  210. package/dist/esm/icons/themed.native.js.map +1 -1
  211. package/dist/esm/images/Image/ImageFrame.native.js.map +1 -1
  212. package/dist/esm/images/Image/framing.native.js.map +1 -1
  213. package/dist/esm/images/Image/mediaRadius.native.js.map +1 -1
  214. package/dist/esm/images/Image/shared.native.js.map +1 -1
  215. package/dist/esm/images/Image/types.native.js.map +1 -1
  216. package/dist/esm/images/index.native.js.map +1 -1
  217. package/dist/esm/index.native.js.map +1 -1
  218. package/dist/esm/knobImmuneExports.native.js.map +1 -1
  219. package/dist/esm/layouts/AsyncBoundary.native.js.map +1 -1
  220. package/dist/esm/layouts/Debug/index.native.js.map +1 -1
  221. package/dist/esm/layouts/EmptyState.native.js.map +1 -1
  222. package/dist/esm/layouts/IdentityPlate.native.js.map +1 -1
  223. package/dist/esm/layouts/KeyboardAvoidingWrapper/behavior.native.js.map +1 -1
  224. package/dist/esm/layouts/PageTemplates.native.js.map +1 -1
  225. package/dist/esm/layouts/PaneScaffold.native.js.map +1 -1
  226. package/dist/esm/layouts/SafeAreaWrapper/insets.native.js.map +1 -1
  227. package/dist/esm/layouts/StatusDot.native.js.map +1 -1
  228. package/dist/esm/layouts/StatusGlyphStrip.native.js.map +1 -1
  229. package/dist/esm/layouts/ViewSwitcher.native.js.map +1 -1
  230. package/dist/esm/layouts/attachments.native.js.map +1 -1
  231. package/dist/esm/layouts/bottomAccessory.native.js.map +1 -1
  232. package/dist/esm/layouts/breadcrumbs.native.js.map +1 -1
  233. package/dist/esm/layouts/index.native.js.map +1 -1
  234. package/dist/esm/layouts/page.mjs +4 -2
  235. package/dist/esm/layouts/page.mjs.map +1 -1
  236. package/dist/esm/layouts/page.native.js +4 -2
  237. package/dist/esm/layouts/page.native.js.map +1 -1
  238. package/dist/esm/layouts/pageHeadingScope.native.js.map +1 -1
  239. package/dist/esm/layouts/screenScroll.mjs +53 -1
  240. package/dist/esm/layouts/screenScroll.mjs.map +1 -1
  241. package/dist/esm/layouts/screenScroll.native.js +57 -1
  242. package/dist/esm/layouts/screenScroll.native.js.map +1 -1
  243. package/dist/esm/layouts/shellSidebarSlot.native.js.map +1 -1
  244. package/dist/esm/layouts/sidebar.mjs +74 -19
  245. package/dist/esm/layouts/sidebar.mjs.map +1 -1
  246. package/dist/esm/layouts/sidebar.native.js +78 -19
  247. package/dist/esm/layouts/sidebar.native.js.map +1 -1
  248. package/dist/esm/layouts/tags.native.js.map +1 -1
  249. package/dist/esm/layouts/timeline.native.js.map +1 -1
  250. package/dist/esm/layouts/toolbar.native.js.map +1 -1
  251. package/dist/esm/shared/actionScan.native.js.map +1 -1
  252. package/dist/esm/shared/i18n.native.js.map +1 -1
  253. package/dist/esm/shared/restoreRetries.native.js.map +1 -1
  254. package/dist/esm/shared/t.native.js.map +1 -1
  255. package/dist/esm/shared/textRidesText.native.js.map +1 -1
  256. package/dist/esm/shared/useReturnFocusOnClose.native.js.map +1 -1
  257. package/dist/esm/surfaces.native.js.map +1 -1
  258. package/dist/esm/tamagui.native.js.map +1 -1
  259. package/dist/esm/testSetup.native.js.map +1 -1
  260. package/dist/esm/utils/setTinted.native.js.map +1 -1
  261. package/dist/esm/utils/unwrapText.native.js.map +1 -1
  262. package/dist/esm/views/Calendar.native.js.map +1 -1
  263. package/dist/esm/views/Dashboard.native.js.map +1 -1
  264. package/dist/esm/views/Gantt.native.js.map +1 -1
  265. package/dist/esm/views/GanttDateGrip.native.js.map +1 -1
  266. package/dist/esm/views/ImageGrid.native.js.map +1 -1
  267. package/dist/esm/views/List.native.js.map +1 -1
  268. package/dist/esm/views/ListGroup.native.js.map +1 -1
  269. package/dist/esm/views/ListRow.native.js.map +1 -1
  270. package/dist/esm/views/Matrix.native.js.map +1 -1
  271. package/dist/esm/views/ReportBuilder.native.js.map +1 -1
  272. package/dist/esm/views/ShortcutCard.native.js.map +1 -1
  273. package/dist/esm/views/TreeView.native.js.map +1 -1
  274. package/dist/esm/views/calendarMath.native.js.map +1 -1
  275. package/dist/esm/views/ganttIntervals.native.js.map +1 -1
  276. package/dist/esm/views/ganttMath.native.js.map +1 -1
  277. package/dist/esm/views/index.native.js.map +1 -1
  278. package/dist/esm/views/kanbanDnd.native.js.map +1 -1
  279. package/dist/esm/views/matrixMath.native.js.map +1 -1
  280. package/dist/esm/views/sameNameScope.native.js.map +1 -1
  281. package/dist/esm/views/treeViewDnd.native.js.map +1 -1
  282. package/dist/esm/views/treeViewLayout.native.js.map +1 -1
  283. package/dist/esm/views/treeViewMotion.native.js.map +1 -1
  284. package/dist/esm/views/treeViewReveal.native.js.map +1 -1
  285. package/dist/esm/views/usePageFlowLoadMore.native.js.map +1 -1
  286. package/dist/esm/views/widgetChrome.native.js.map +1 -1
  287. package/dist/jsx/CheckGlyph/MenuCheckColumn.mjs +31 -0
  288. package/dist/jsx/CheckGlyph/MenuCheckColumn.mjs.map +1 -0
  289. package/dist/jsx/CheckGlyph/MenuCheckColumn.native.js +60 -0
  290. package/dist/jsx/CheckGlyph/MenuCheckColumn.native.js.map +1 -0
  291. package/dist/jsx/CheckGlyph/index.mjs +15 -0
  292. package/dist/jsx/CheckGlyph/index.mjs.map +1 -0
  293. package/dist/jsx/CheckGlyph/index.native.js +44 -0
  294. package/dist/jsx/CheckGlyph/index.native.js.map +1 -0
  295. package/dist/jsx/ContextMenu/index.mjs +6 -23
  296. package/dist/jsx/ContextMenu/index.mjs.map +1 -1
  297. package/dist/jsx/ContextMenu/index.native.js +7 -25
  298. package/dist/jsx/ContextMenu/index.native.js.map +1 -1
  299. package/dist/jsx/DropdownMenu/index.mjs +6 -18
  300. package/dist/jsx/DropdownMenu/index.mjs.map +1 -1
  301. package/dist/jsx/DropdownMenu/index.native.js +7 -19
  302. package/dist/jsx/DropdownMenu/index.native.js.map +1 -1
  303. package/dist/jsx/Popover.mjs +2 -2
  304. package/dist/jsx/Popover.mjs.map +1 -1
  305. package/dist/jsx/Popover.native.js +2 -2
  306. package/dist/jsx/Popover.native.js.map +1 -1
  307. package/dist/jsx/SchemeToggle/index.mjs +3 -3
  308. package/dist/jsx/SchemeToggle/index.mjs.map +1 -1
  309. package/dist/jsx/SchemeToggle/index.native.js +2 -2
  310. package/dist/jsx/SchemeToggle/index.native.js.map +1 -1
  311. package/dist/jsx/SheetModal/index.mjs +5 -2
  312. package/dist/jsx/SheetModal/index.mjs.map +1 -1
  313. package/dist/jsx/SheetModal/index.native.js +1 -1
  314. package/dist/jsx/SheetModal/index.native.js.map +1 -1
  315. package/dist/jsx/TreeSelect/index.mjs +4 -8
  316. package/dist/jsx/TreeSelect/index.mjs.map +1 -1
  317. package/dist/jsx/TreeSelect/index.native.js +2 -6
  318. package/dist/jsx/TreeSelect/index.native.js.map +1 -1
  319. package/dist/jsx/appShell/AppShell.mjs +412 -0
  320. package/dist/jsx/appShell/AppShell.mjs.map +1 -0
  321. package/dist/jsx/appShell/AppShell.native.js +505 -0
  322. package/dist/jsx/appShell/AppShell.native.js.map +1 -0
  323. package/dist/jsx/appShell/ScopeMenu.mjs +43 -20
  324. package/dist/jsx/appShell/ScopeMenu.mjs.map +1 -1
  325. package/dist/jsx/appShell/ScopeMenu.native.js +43 -17
  326. package/dist/jsx/appShell/ScopeMenu.native.js.map +1 -1
  327. package/dist/jsx/appShell/TabBar.mjs.map +1 -1
  328. package/dist/jsx/appShell/TabBar.native.js.map +1 -1
  329. package/dist/jsx/appShell/TabHost.native.js +41 -10
  330. package/dist/jsx/appShell/TabHost.native.js.map +1 -1
  331. package/dist/jsx/appShell/index.mjs +1 -0
  332. package/dist/jsx/appShell/index.mjs.map +1 -1
  333. package/dist/jsx/appShell/index.native.js +1 -0
  334. package/dist/jsx/appShell/index.native.js.map +1 -1
  335. package/dist/jsx/feedback/NotifyHost.native.js +1 -1
  336. package/dist/jsx/formLayouts/PreferencePanel.native.js +1 -1
  337. package/dist/jsx/index.native.js +1 -1
  338. package/dist/jsx/layouts/AsyncBoundary.native.js +1 -1
  339. package/dist/jsx/layouts/AsyncBoundary.native.js.map +1 -1
  340. package/dist/jsx/layouts/page.mjs +4 -2
  341. package/dist/jsx/layouts/page.mjs.map +1 -1
  342. package/dist/jsx/layouts/page.native.js +3 -0
  343. package/dist/jsx/layouts/page.native.js.map +1 -1
  344. package/dist/jsx/layouts/screenScroll.mjs +53 -1
  345. package/dist/jsx/layouts/screenScroll.mjs.map +1 -1
  346. package/dist/jsx/layouts/screenScroll.native.js +59 -0
  347. package/dist/jsx/layouts/screenScroll.native.js.map +1 -1
  348. package/dist/jsx/layouts/sidebar.mjs +74 -19
  349. package/dist/jsx/layouts/sidebar.mjs.map +1 -1
  350. package/dist/jsx/layouts/sidebar.native.js +78 -16
  351. package/dist/jsx/layouts/sidebar.native.js.map +1 -1
  352. package/package.json +9 -9
  353. package/src/CheckGlyph/CheckGlyph.spec.tsx +46 -0
  354. package/src/CheckGlyph/MenuCheckColumn.tsx +32 -0
  355. package/src/CheckGlyph/index.tsx +12 -0
  356. package/src/ContextMenu/ContextMenu.spec.tsx +46 -1
  357. package/src/ContextMenu/index.tsx +5 -22
  358. package/src/DropdownMenu/DropdownMenu.avatarTrigger.spec.tsx +6 -9
  359. package/src/DropdownMenu/index.tsx +5 -18
  360. package/src/Popover.coverTrigger.spec.tsx +3 -3
  361. package/src/Popover.tsx +5 -5
  362. package/src/SchemeToggle/SchemeToggle.spec.tsx +5 -11
  363. package/src/SchemeToggle/SchemeToggle.stories.tsx +21 -0
  364. package/src/SchemeToggle/index.tsx +2 -1
  365. package/src/SheetModal/index.native.tsx +2 -1
  366. package/src/SheetModal/index.tsx +5 -2
  367. package/src/TreeSelect/index.tsx +2 -4
  368. package/src/appShell/AppShell.spec.tsx +289 -0
  369. package/src/appShell/AppShell.stories.tsx +112 -0
  370. package/src/appShell/AppShell.tsx +535 -0
  371. package/src/appShell/ScopeMenu.spec.tsx +22 -0
  372. package/src/appShell/ScopeMenu.tsx +57 -18
  373. package/src/appShell/TabBar.tsx +13 -3
  374. package/src/appShell/TabHost.native.spec.tsx +53 -6
  375. package/src/appShell/TabHost.native.tsx +50 -14
  376. package/src/appShell/TabHost.stories.tsx +72 -0
  377. package/src/appShell/index.ts +1 -0
  378. package/src/layouts/PageHeader.stories.tsx +3 -3
  379. package/src/layouts/Sidebar.spec.tsx +92 -1
  380. package/src/layouts/page.tsx +8 -0
  381. package/src/layouts/pageActionButton.spec.tsx +7 -3
  382. package/src/layouts/screenScroll.tsx +71 -0
  383. package/src/layouts/sidebar.tsx +102 -10
  384. package/types/CheckGlyph/MenuCheckColumn.d.ts +11 -0
  385. package/types/CheckGlyph/MenuCheckColumn.d.ts.map +1 -0
  386. package/types/CheckGlyph/index.d.ts +10 -0
  387. package/types/CheckGlyph/index.d.ts.map +1 -0
  388. package/types/ContextMenu/index.d.ts.map +1 -1
  389. package/types/DropdownMenu/index.d.ts.map +1 -1
  390. package/types/Popover.d.ts +1 -1
  391. package/types/Popover.d.ts.map +1 -1
  392. package/types/SchemeToggle/index.d.ts.map +1 -1
  393. package/types/SheetModal/index.d.ts.map +1 -1
  394. package/types/SheetModal/index.native.d.ts.map +1 -1
  395. package/types/TreeSelect/index.d.ts.map +1 -1
  396. package/types/appShell/AppShell.d.ts +47 -0
  397. package/types/appShell/AppShell.d.ts.map +1 -0
  398. package/types/appShell/ScopeMenu.d.ts +0 -18
  399. package/types/appShell/ScopeMenu.d.ts.map +1 -1
  400. package/types/appShell/TabBar.d.ts +12 -6
  401. package/types/appShell/TabBar.d.ts.map +1 -1
  402. package/types/appShell/TabHost.native.d.ts +23 -5
  403. package/types/appShell/TabHost.native.d.ts.map +1 -1
  404. package/types/appShell/index.d.ts +1 -0
  405. package/types/appShell/index.d.ts.map +1 -1
  406. package/types/layouts/page.d.ts +5 -0
  407. package/types/layouts/page.d.ts.map +1 -1
  408. package/types/layouts/screenScroll.d.ts +24 -0
  409. package/types/layouts/screenScroll.d.ts.map +1 -1
  410. package/types/layouts/sidebar.d.ts +37 -1
  411. package/types/layouts/sidebar.d.ts.map +1 -1
@@ -0,0 +1,412 @@
1
+ import { zIndex } from "@multiplatform.one/forms";
2
+ import { isWeb } from "@multiplatform.one/platform";
3
+ import { MIN_PRESS_TARGET, Surface, hairline, transitionProps, useLayoutSizeClass, useResolvedKnobs } from "@multiplatform.one/theme";
4
+ import { ListIcon } from "@phosphor-icons/react";
5
+ import { createElement, useEffect, useMemo, useState } from "react";
6
+ import { SizableText, XStack, YStack } from "tamagui";
7
+ import { componentColors } from "../componentColors.mjs";
8
+ import { DropdownMenu } from "../DropdownMenu/index.mjs";
9
+ import { PageBackButton, PageBarButton, READABLE_MAX_WIDTH } from "../layouts/page.mjs";
10
+ import { ShellScrollReportScope, useShellScrollReports } from "../layouts/screenScroll.mjs";
11
+ import { ShellSidebarSlotProvider, useShellSidebarSlotState } from "../layouts/shellSidebarSlot.mjs";
12
+ import { BottomAccessory } from "../layouts/bottomAccessory.mjs";
13
+ import { Sidebar } from "../layouts/sidebar.mjs";
14
+ import { useTranslation } from "../shared/i18n.mjs";
15
+ import { TabHost } from "./TabHost.mjs";
16
+ import { useBottomChromeInset, useFloatingBarMounted } from "./bottomChrome.mjs";
17
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
18
+ function underKey(path, key) {
19
+ if (key === "/") return path === "/";
20
+ return path === key || path.startsWith(`${key}/`);
21
+ }
22
+ function appShellRoute(destinations, path) {
23
+ const normal = path.length > 1 ? path.replace(/\/+$/, "") : path;
24
+ let destination;
25
+ for (const candidate of destinations) {
26
+ if (candidate.onPress || !underKey(normal, candidate.key)) continue;
27
+ if (!destination || candidate.key.length > destination.key.length) destination = candidate;
28
+ }
29
+ return {
30
+ destination,
31
+ pushed: Boolean(destination && normal !== destination.key)
32
+ };
33
+ }
34
+ function useDocumentScrolled(enabled) {
35
+ const [scrolled, setScrolled] = useState(false);
36
+ useEffect(() => {
37
+ if (!enabled || typeof document === "undefined") return;
38
+ const sync = () => setScrolled(window.scrollY > 1);
39
+ sync();
40
+ window.addEventListener("scroll", sync, {
41
+ passive: true
42
+ });
43
+ return () => window.removeEventListener("scroll", sync);
44
+ }, [enabled]);
45
+ return scrolled;
46
+ }
47
+ const sticky = edge => isWeb ? {
48
+ position: "sticky",
49
+ [edge]: 0,
50
+ zIndex: zIndex.stickyHeader
51
+ } : null;
52
+ function HomeControl({
53
+ title,
54
+ onPress,
55
+ children
56
+ }) {
57
+ return /* @__PURE__ */jsx(XStack, {
58
+ role: "link",
59
+ "aria-label": title,
60
+ alignItems: "center",
61
+ minHeight: MIN_PRESS_TARGET,
62
+ flexShrink: 1,
63
+ minWidth: 0,
64
+ gap: "$2",
65
+ cursor: "pointer",
66
+ onPress,
67
+ "data-testid": "app-shell-home",
68
+ children
69
+ });
70
+ }
71
+ function AppShellNavBar({
72
+ maxWidth,
73
+ leading,
74
+ trailing,
75
+ title,
76
+ showTitle,
77
+ scrolled
78
+ }) {
79
+ const {
80
+ knobProps
81
+ } = useResolvedKnobs({
82
+ component: "ScreenToolbar"
83
+ });
84
+ const [sides, setSides] = useState({
85
+ leading: 0,
86
+ trailing: 0
87
+ });
88
+ const measure = side => event => {
89
+ const width = Math.ceil(event.nativeEvent.layout.width);
90
+ setSides(prev => prev[side] === width ? prev : {
91
+ ...prev,
92
+ [side]: width
93
+ });
94
+ };
95
+ const motion = transitionProps(knobProps.motion.control);
96
+ const clearance = Math.max(sides.leading, sides.trailing);
97
+ return /* @__PURE__ */jsx(Surface, {
98
+ bar: true,
99
+ children: /* @__PURE__ */jsx(YStack, {
100
+ role: "banner",
101
+ "data-testid": "app-shell-bar",
102
+ "data-scroll-edge": scrolled ? "" : void 0,
103
+ backgroundColor: "$background",
104
+ flexShrink: 0,
105
+ ...hairline.bottom,
106
+ borderColor: scrolled ? componentColors.divider : "transparent",
107
+ ...motion,
108
+ ...sticky("top"),
109
+ children: /* @__PURE__ */jsxs(XStack, {
110
+ position: "relative",
111
+ width: "100%",
112
+ ...(maxWidth ? {
113
+ maxWidth,
114
+ alignSelf: "center"
115
+ } : null),
116
+ minHeight: MIN_PRESS_TARGET,
117
+ alignItems: "center",
118
+ flexWrap: "nowrap",
119
+ paddingHorizontal: knobProps.panelPadding.padding,
120
+ ...knobProps.gap,
121
+ children: [/* @__PURE__ */jsx(XStack, {
122
+ alignItems: "center",
123
+ flexShrink: 1e3,
124
+ minWidth: 0,
125
+ ...knobProps.gap,
126
+ onLayout: measure("leading"),
127
+ children: leading
128
+ }), /* @__PURE__ */jsx(XStack, {
129
+ flexGrow: 1
130
+ }), /* @__PURE__ */jsx(XStack, {
131
+ alignItems: "center",
132
+ flexShrink: 1,
133
+ minWidth: 0,
134
+ justifyContent: "flex-end",
135
+ ...knobProps.gap,
136
+ onLayout: measure("trailing"),
137
+ children: trailing
138
+ }), title ? /* @__PURE__ */jsx(XStack, {
139
+ position: "absolute",
140
+ top: 0,
141
+ bottom: 0,
142
+ left: clearance,
143
+ right: clearance,
144
+ alignItems: "center",
145
+ justifyContent: "center",
146
+ pointerEvents: "none",
147
+ "aria-hidden": !showTitle,
148
+ "data-testid": "app-shell-bar-title",
149
+ opacity: showTitle ? 1 : 0,
150
+ ...motion,
151
+ children: /* @__PURE__ */jsx(SizableText, {
152
+ ...knobProps.body,
153
+ fontWeight: "600",
154
+ color: "$color12",
155
+ numberOfLines: 1,
156
+ children: title
157
+ })
158
+ }) : null]
159
+ })
160
+ })
161
+ });
162
+ }
163
+ function StackedPanel({
164
+ panel
165
+ }) {
166
+ const {
167
+ knobProps
168
+ } = useResolvedKnobs();
169
+ return /* @__PURE__ */jsxs(YStack, {
170
+ paddingHorizontal: knobProps.panelPadding.padding,
171
+ ...knobProps.gap,
172
+ "data-testid": "app-shell-page-panel",
173
+ children: [/* @__PURE__ */jsx(SizableText, {
174
+ ...knobProps.body,
175
+ size: "$2",
176
+ textTransform: "uppercase",
177
+ color: knobProps.textAccentColor,
178
+ numberOfLines: 1,
179
+ children: panel.title
180
+ }), panel.content]
181
+ });
182
+ }
183
+ function AppShell({
184
+ destinations,
185
+ path,
186
+ onNavigate,
187
+ title,
188
+ logo,
189
+ onTitlePress,
190
+ actions,
191
+ onBack,
192
+ accessory,
193
+ ownChrome = [],
194
+ children,
195
+ testID = "app-shell"
196
+ }) {
197
+ const {
198
+ t
199
+ } = useTranslation();
200
+ const {
201
+ knobProps
202
+ } = useResolvedKnobs();
203
+ const compact = useLayoutSizeClass() === "compact";
204
+ const {
205
+ report,
206
+ reporter
207
+ } = useShellScrollReports();
208
+ const sidebarSlot = useShellSidebarSlotState();
209
+ const documentScrolled = useDocumentScrolled(isWeb);
210
+ const chromeInset = useBottomChromeInset();
211
+ const floatingBar = useFloatingBarMounted();
212
+ const {
213
+ destination,
214
+ pushed
215
+ } = appShellRoute(destinations, path);
216
+ const ownsChrome = ownChrome.some(prefix => underKey(path, prefix));
217
+ const go = item => item.onPress ? item.onPress() : onNavigate(item.key);
218
+ const goHome = onTitlePress ?? (() => destinations[0] && go(destinations[0]));
219
+ const tabs = useMemo(() => destinations.filter(item => (item.placement ?? "tab") === "tab"), [destinations]);
220
+ const more = useMemo(() => destinations.filter(item => item.placement === "more"), [destinations]);
221
+ const showTabs = compact && Boolean(destination && tabs.includes(destination));
222
+ const tabItems = tabs.map(({
223
+ key,
224
+ label,
225
+ icon,
226
+ nativeIcon
227
+ }) => ({
228
+ key,
229
+ label,
230
+ icon,
231
+ nativeIcon
232
+ }));
233
+ const onTabPress = key => {
234
+ const item = tabs.find(tab => tab.key === key);
235
+ if (item) go(item);
236
+ };
237
+ if (ownsChrome) {
238
+ return /* @__PURE__ */jsx(YStack, {
239
+ flex: 1,
240
+ minHeight: 0,
241
+ backgroundColor: "$background",
242
+ ...(isWeb ? {
243
+ height: "100dvh"
244
+ } : null),
245
+ "data-testid": testID,
246
+ "data-chrome": "own",
247
+ children: showTabs ? /* @__PURE__ */jsx(TabHost, {
248
+ items: tabItems,
249
+ activeKey: destination?.key,
250
+ onTabPress,
251
+ children
252
+ }) : children
253
+ });
254
+ }
255
+ const pageBar = Boolean(report?.ownTopBar);
256
+ const scrolled = isWeb ? documentScrolled : Boolean(report?.scrolled);
257
+ const largeTitle = report?.title ?? null;
258
+ const barTitle = largeTitle ?? destination?.label ?? null;
259
+ const showTitle = largeTitle ? Boolean(report?.collapsed) : Boolean(barTitle);
260
+ const back = pushed && onBack && destination && !pageBar ? /* @__PURE__ */jsx(PageBackButton, {
261
+ label: destination.label,
262
+ onPress: () => onBack(destination.key)
263
+ }) : null;
264
+ const showBar = compact ? !pageBar : Boolean(back);
265
+ const moreMenu = compact && more.length > 0 ? /* @__PURE__ */jsx(DropdownMenu, {
266
+ placement: "bottom-end",
267
+ items: more.map(item => ({
268
+ key: item.key,
269
+ label: item.label,
270
+ icon: createElement(item.icon),
271
+ onSelect: () => go(item)
272
+ })),
273
+ children: /* @__PURE__ */jsx(PageBarButton, {
274
+ edge: "end",
275
+ icon: ListIcon,
276
+ "aria-label": t("More"),
277
+ "data-testid": "app-shell-more"
278
+ })
279
+ }) : null;
280
+ const bar = showBar ? /* @__PURE__ */jsx(AppShellNavBar, {
281
+ leading: back ?? (compact && logo ? /* @__PURE__ */jsx(HomeControl, {
282
+ title,
283
+ onPress: goHome,
284
+ children: logo
285
+ }) : null),
286
+ trailing: compact ? /* @__PURE__ */jsxs(Fragment, {
287
+ children: [actions, moreMenu]
288
+ }) : null,
289
+ maxWidth: compact ? void 0 : READABLE_MAX_WIDTH,
290
+ title: barTitle,
291
+ showTitle,
292
+ scrolled
293
+ }) : null;
294
+ const content = /* @__PURE__ */jsx(YStack, {
295
+ role: "main",
296
+ flex: 1,
297
+ minWidth: 0,
298
+ ...(isWeb ? null : {
299
+ minHeight: 0
300
+ }),
301
+ "data-testid": "app-shell-content",
302
+ children: compact ? children : /* @__PURE__ */jsx(YStack, {
303
+ flex: 1,
304
+ width: "100%",
305
+ maxWidth: READABLE_MAX_WIDTH,
306
+ alignSelf: "center",
307
+ ...(isWeb ? null : {
308
+ minHeight: 0
309
+ }),
310
+ "data-testid": "app-shell-readable",
311
+ children
312
+ })
313
+ });
314
+ const pageAccessory = accessory ? /* @__PURE__ */jsx(YStack, {
315
+ flexShrink: 0,
316
+ ...(isWeb || floatingBar ? null : {
317
+ paddingBottom: chromeInset
318
+ }),
319
+ children: /* @__PURE__ */jsx(BottomAccessory, {
320
+ children: accessory
321
+ })
322
+ }) : null;
323
+ const frame = compact ? /* @__PURE__ */jsxs(YStack, {
324
+ flex: 1,
325
+ backgroundColor: "$background",
326
+ ...(isWeb ? {
327
+ minHeight: "100dvh"
328
+ } : null),
329
+ "data-testid": testID,
330
+ "data-size": "compact",
331
+ children: [bar, tabItems.length > 0 ? /* @__PURE__ */jsxs(TabHost, {
332
+ items: tabItems,
333
+ activeKey: showTabs ? destination?.key : void 0,
334
+ onTabPress,
335
+ children: [content, pageAccessory]
336
+ }) : /* @__PURE__ */jsxs(Fragment, {
337
+ children: [content, pageAccessory]
338
+ })]
339
+ }) : /* @__PURE__ */jsxs(XStack, {
340
+ flex: 1,
341
+ backgroundColor: "$background",
342
+ ...(isWeb ? {
343
+ minHeight: "100dvh"
344
+ } : null),
345
+ "data-testid": testID,
346
+ "data-size": "regular",
347
+ children: [/* @__PURE__ */jsx(YStack, {
348
+ flexShrink: 0,
349
+ alignSelf: "stretch",
350
+ ...(isWeb ? {
351
+ position: "sticky",
352
+ top: 0,
353
+ height: "100dvh"
354
+ } : null),
355
+ "data-testid": "app-shell-sidebar",
356
+ children: /* @__PURE__ */jsx(Sidebar, {
357
+ material: true,
358
+ "aria-label": title,
359
+ header: /* @__PURE__ */jsx(XStack, {
360
+ paddingHorizontal: knobProps.panelPadding.padding,
361
+ alignItems: "center",
362
+ minHeight: MIN_PRESS_TARGET,
363
+ children: /* @__PURE__ */jsxs(HomeControl, {
364
+ title,
365
+ onPress: goHome,
366
+ children: [logo, /* @__PURE__ */jsx(SizableText, {
367
+ ...knobProps.heading,
368
+ fontWeight: "700",
369
+ color: "$color12",
370
+ numberOfLines: 1,
371
+ children: title
372
+ })]
373
+ })
374
+ }),
375
+ footer: actions ? /* @__PURE__ */jsx(XStack, {
376
+ paddingHorizontal: knobProps.panelPadding.padding,
377
+ alignItems: "center",
378
+ minHeight: MIN_PRESS_TARGET,
379
+ flexWrap: "wrap",
380
+ ...knobProps.gap,
381
+ "data-testid": "app-shell-sidebar-actions",
382
+ children: actions
383
+ }) : void 0,
384
+ sections: [{
385
+ items: destinations.map(item => ({
386
+ label: item.label,
387
+ value: item.key,
388
+ icon: createElement(item.icon),
389
+ active: item === destination,
390
+ onPress: () => go(item)
391
+ }))
392
+ }],
393
+ children: sidebarSlot.panel ? /* @__PURE__ */jsx(StackedPanel, {
394
+ panel: sidebarSlot.panel
395
+ }) : null
396
+ })
397
+ }), /* @__PURE__ */jsxs(YStack, {
398
+ flex: 1,
399
+ minWidth: 0,
400
+ children: [bar, content, pageAccessory]
401
+ })]
402
+ });
403
+ return /* @__PURE__ */jsx(ShellSidebarSlotProvider, {
404
+ value: compact ? null : sidebarSlot.value,
405
+ children: /* @__PURE__ */jsx(ShellScrollReportScope, {
406
+ reporter,
407
+ children: frame
408
+ })
409
+ });
410
+ }
411
+ export { AppShell, appShellRoute };
412
+ //# sourceMappingURL=AppShell.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["zIndex","isWeb","MIN_PRESS_TARGET","Surface","hairline","transitionProps","useLayoutSizeClass","useResolvedKnobs","ListIcon","createElement","useEffect","useMemo","useState","SizableText","XStack","YStack","componentColors","DropdownMenu","PageBackButton","PageBarButton","READABLE_MAX_WIDTH","ShellScrollReportScope","useShellScrollReports","ShellSidebarSlotProvider","useShellSidebarSlotState","BottomAccessory","Sidebar","useTranslation","TabHost","useBottomChromeInset","useFloatingBarMounted","Fragment","jsx","jsxs","underKey","path","key","startsWith","appShellRoute","destinations","normal","length","replace","destination","candidate","onPress","pushed","Boolean","useDocumentScrolled","enabled","scrolled","setScrolled","document","sync","window","scrollY","addEventListener","passive","removeEventListener","sticky","edge","position","stickyHeader","HomeControl","title","children","role","alignItems","minHeight","flexShrink","minWidth","gap","cursor","AppShellNavBar","maxWidth","leading","trailing","showTitle","knobProps","component","sides","setSides","measure","side","event","width","Math","ceil","nativeEvent","layout","prev","motion","control","clearance","max","bar","backgroundColor","bottom","borderColor","divider","alignSelf","flexWrap","paddingHorizontal","panelPadding","padding","onLayout","flexGrow","justifyContent","top","left","right","pointerEvents","opacity","body","fontWeight","color","numberOfLines","StackedPanel","panel","size","textTransform","textAccentColor","content","AppShell","onNavigate","logo","onTitlePress","actions","onBack","accessory","ownChrome","testID","t","compact","report","reporter","sidebarSlot","documentScrolled","chromeInset","floatingBar","ownsChrome","some","prefix","go","item","goHome","tabs","filter","placement","more","showTabs","includes","tabItems","map","label","icon","nativeIcon","onTabPress","find","tab","flex","height","items","activeKey","pageBar","ownTopBar","largeTitle","barTitle","collapsed","back","showBar","moreMenu","onSelect","pageAccessory","paddingBottom","frame","material","header","heading","footer","sections","value","active"],"sources":["../../../src/appShell/AppShell.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}