@multiplatform.one/components 7.84.0 → 7.84.2

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 (295) hide show
  1. package/dist/cjs/Accordion/index.native.js +1 -1
  2. package/dist/cjs/Accordion/index.native.js.map +1 -1
  3. package/dist/cjs/Alert/index.native.js.map +1 -1
  4. package/dist/cjs/AnimateHeight/index.native.js.map +1 -1
  5. package/dist/cjs/Avatar/getInitials.native.js.map +1 -1
  6. package/dist/cjs/Avatar/index.native.js.map +1 -1
  7. package/dist/cjs/Badge/index.native.js.map +1 -1
  8. package/dist/cjs/Button.native.js.map +1 -1
  9. package/dist/cjs/Card.native.js.map +1 -1
  10. package/dist/cjs/CardFooter.native.js.map +1 -1
  11. package/dist/cjs/CardHeader.native.js.map +1 -1
  12. package/dist/cjs/Carousel/index.native.js +3 -3
  13. package/dist/cjs/Carousel/index.native.js.map +1 -1
  14. package/dist/cjs/CheckGlyph/MenuCheckColumn.native.js.map +1 -1
  15. package/dist/cjs/CheckGlyph/index.native.js.map +1 -1
  16. package/dist/cjs/Chip/index.native.js.map +1 -1
  17. package/dist/cjs/Collapsible.native.js.map +1 -1
  18. package/dist/cjs/ContextMenu/index.native.js.map +1 -1
  19. package/dist/cjs/CopyField/CopyMenuButton.cjs +1 -3
  20. package/dist/cjs/CopyField/CopyMenuButton.native.js +2 -4
  21. package/dist/cjs/CopyField/CopyMenuButton.native.js.map +1 -1
  22. package/dist/cjs/CopyField/index.native.js.map +1 -1
  23. package/dist/cjs/Dialog.native.js.map +1 -1
  24. package/dist/cjs/Diff/diff.native.js.map +1 -1
  25. package/dist/cjs/Diff/index.native.js.map +1 -1
  26. package/dist/cjs/DotIndicator/index.native.js.map +1 -1
  27. package/dist/cjs/DropdownMenu/index.native.js.map +1 -1
  28. package/dist/cjs/DropdownMenu/menuSettle.native.js.map +1 -1
  29. package/dist/cjs/ElapsedProgress/index.native.js.map +1 -1
  30. package/dist/cjs/ErrorBoundary/index.native.js.map +1 -1
  31. package/dist/cjs/Heading.native.js.map +1 -1
  32. package/dist/cjs/Kbd/index.native.js.map +1 -1
  33. package/dist/cjs/Kbd/keys.native.js.map +1 -1
  34. package/dist/cjs/Lightbox/MediaControl.native.js.map +1 -1
  35. package/dist/cjs/Lightbox/index.gnome.native.js.map +1 -1
  36. package/dist/cjs/Lightbox/index.native.js +1 -1
  37. package/dist/cjs/Lightbox/shared.native.js.map +1 -1
  38. package/dist/cjs/Lightbox/useLightbox.native.js.map +1 -1
  39. package/dist/cjs/MachineLiteral/index.native.js.map +1 -1
  40. package/dist/cjs/Material/index.native.js.map +1 -1
  41. package/dist/cjs/Meter/index.native.js +1 -1
  42. package/dist/cjs/Meter/index.native.js.map +1 -1
  43. package/dist/cjs/Meter/meter.native.js.map +1 -1
  44. package/dist/cjs/OverflowRow/index.native.js +1 -1
  45. package/dist/cjs/OverflowRow/index.native.js.map +1 -1
  46. package/dist/cjs/Pagination.native.js +1 -1
  47. package/dist/cjs/Pagination.native.js.map +1 -1
  48. package/dist/cjs/Popover.native.js +1 -1
  49. package/dist/cjs/Popover.native.js.map +1 -1
  50. package/dist/cjs/ProgressSteps/index.native.js.map +1 -1
  51. package/dist/cjs/Quote/index.native.js.map +1 -1
  52. package/dist/cjs/SchemeToggle/index.native.js +1 -1
  53. package/dist/cjs/SchemeToggle/index.native.js.map +1 -1
  54. package/dist/cjs/ScrollView/revealFocusedField.native.js.map +1 -1
  55. package/dist/cjs/Separator/index.native.js.map +1 -1
  56. package/dist/cjs/Sheet.native.js.map +1 -1
  57. package/dist/cjs/SheetModal/SheetHeader.native.js.map +1 -1
  58. package/dist/cjs/SheetModal/SheetNavigation.native.js.map +1 -1
  59. package/dist/cjs/SheetModal/detents.native.js.map +1 -1
  60. package/dist/cjs/SheetModal/useSheetFrameFocus.native.js.map +1 -1
  61. package/dist/cjs/Skeleton/index.native.js.map +1 -1
  62. package/dist/cjs/SkipLink/index.cjs +1 -2
  63. package/dist/cjs/SkipLink/index.native.js +1 -2
  64. package/dist/cjs/SkipLink/index.native.js.map +1 -1
  65. package/dist/cjs/SortableList/SortableHandle.native.js.map +1 -1
  66. package/dist/cjs/SortableList/index.native.js.map +1 -1
  67. package/dist/cjs/SortableList/useSortableRows.native.js.map +1 -1
  68. package/dist/cjs/SortableList/useUserOrder.native.js.map +1 -1
  69. package/dist/cjs/Tabs/index.native.js +1 -1
  70. package/dist/cjs/Tabs/index.native.js.map +1 -1
  71. package/dist/cjs/Text.native.js.map +1 -1
  72. package/dist/cjs/ThemePresetPicker/index.native.js +2 -2
  73. package/dist/cjs/ThemePresetPicker/index.native.js.map +1 -1
  74. package/dist/cjs/Toast/index.native.js.map +1 -1
  75. package/dist/cjs/Toast/store.native.js.map +1 -1
  76. package/dist/cjs/Tooltip/nativePress.native.js.map +1 -1
  77. package/dist/cjs/Tooltip/tooltipShared.native.js.map +1 -1
  78. package/dist/cjs/TreeSelect/index.native.js +2 -2
  79. package/dist/cjs/TreeSelect/index.native.js.map +1 -1
  80. package/dist/cjs/TreeSelect/treeSelectModel.native.js.map +1 -1
  81. package/dist/cjs/Video/PlayerChrome.native.js.map +1 -1
  82. package/dist/cjs/Video/VideoFrame.native.js.map +1 -1
  83. package/dist/cjs/Video/types.native.js.map +1 -1
  84. package/dist/cjs/Wheel/index.native.js.map +1 -1
  85. package/dist/cjs/Wizard/index.native.js +2 -2
  86. package/dist/cjs/Wizard/index.native.js.map +1 -1
  87. package/dist/cjs/actions/ActionBar.native.js.map +1 -1
  88. package/dist/cjs/actions/DangerSection.native.js.map +1 -1
  89. package/dist/cjs/actions/DestructiveAction.native.js.map +1 -1
  90. package/dist/cjs/actions/HeaderActions.native.js +2 -2
  91. package/dist/cjs/actions/HeaderActions.native.js.map +1 -1
  92. package/dist/cjs/actions/StandardAction.native.js +1 -1
  93. package/dist/cjs/actions/StandardAction.native.js.map +1 -1
  94. package/dist/cjs/actions/devWarn.native.js.map +1 -1
  95. package/dist/cjs/actions/index.native.js.map +1 -1
  96. package/dist/cjs/actions/severity.native.js.map +1 -1
  97. package/dist/cjs/appShell/AppShell.native.js +1 -1
  98. package/dist/cjs/appShell/AppShell.native.js.map +1 -1
  99. package/dist/cjs/appShell/BottomChromeClearance.native.js.map +1 -1
  100. package/dist/cjs/appShell/Dock.native.js.map +1 -1
  101. package/dist/cjs/appShell/MpoTabHost.native.js.map +1 -1
  102. package/dist/cjs/appShell/ScopeMenu.native.js +1 -1
  103. package/dist/cjs/appShell/ScopeMenu.native.js.map +1 -1
  104. package/dist/cjs/appShell/SettingsSplit.native.js +1 -1
  105. package/dist/cjs/appShell/SettingsSplit.native.js.map +1 -1
  106. package/dist/cjs/appShell/Springboard.native.js +1 -1
  107. package/dist/cjs/appShell/Springboard.native.js.map +1 -1
  108. package/dist/cjs/appShell/SystemBar.native.js.map +1 -1
  109. package/dist/cjs/appShell/TabBar.native.js +1 -1
  110. package/dist/cjs/appShell/TabBar.native.js.map +1 -1
  111. package/dist/cjs/appShell/appTile.native.js +1 -1
  112. package/dist/cjs/appShell/appTile.native.js.map +1 -1
  113. package/dist/cjs/appShell/bottomChrome.native.js.map +1 -1
  114. package/dist/cjs/appShell/index.native.js.map +1 -1
  115. package/dist/cjs/charts/Axis.native.js.map +1 -1
  116. package/dist/cjs/charts/BarChart.native.js.map +1 -1
  117. package/dist/cjs/charts/ChartDataView.native.js +2 -2
  118. package/dist/cjs/charts/ChartDataView.native.js.map +1 -1
  119. package/dist/cjs/charts/ChartSurface.native.js.map +1 -1
  120. package/dist/cjs/charts/LineChart.native.js.map +1 -1
  121. package/dist/cjs/charts/PieChart.native.js.map +1 -1
  122. package/dist/cjs/charts/Sparkline.native.js.map +1 -1
  123. package/dist/cjs/charts/accessibility.native.js.map +1 -1
  124. package/dist/cjs/charts/chartHeight.native.js.map +1 -1
  125. package/dist/cjs/charts/composeChart.native.js.map +1 -1
  126. package/dist/cjs/charts/index.native.js.map +1 -1
  127. package/dist/cjs/charts/math.native.js.map +1 -1
  128. package/dist/cjs/charts/series.native.js.map +1 -1
  129. package/dist/cjs/charts/svg.native.js.map +1 -1
  130. package/dist/cjs/charts/types.native.js.map +1 -1
  131. package/dist/cjs/charts/useChartTheme.native.js.map +1 -1
  132. package/dist/cjs/code/Code/index.native.js.map +1 -1
  133. package/dist/cjs/code/CodeBlock/index.native.js +7 -7
  134. package/dist/cjs/code/CodeBlock/index.native.js.map +1 -1
  135. package/dist/cjs/code/HighlightedCode/index.native.js.map +1 -1
  136. package/dist/cjs/code/Highlighter/houseSyntaxTheme.native.js.map +1 -1
  137. package/dist/cjs/code/Highlighter/index.native.js.map +1 -1
  138. package/dist/cjs/code/Highlighter/namedGroupMatchAll.native.js.map +1 -1
  139. package/dist/cjs/code/LogView.native.js.map +1 -1
  140. package/dist/cjs/code/Pre/index.native.js.map +1 -1
  141. package/dist/cjs/code/index.native.js +5 -5
  142. package/dist/cjs/code/index.native.js.map +1 -1
  143. package/dist/cjs/componentColors.native.js.map +1 -1
  144. package/dist/cjs/feedback/ConfirmDialog.native.js.map +1 -1
  145. package/dist/cjs/feedback/NotifyHost.native.js +2 -2
  146. package/dist/cjs/feedback/NotifyHost.native.js.map +1 -1
  147. package/dist/cjs/feedback/copy.native.js.map +1 -1
  148. package/dist/cjs/feedback/index.native.js.map +1 -1
  149. package/dist/cjs/feedback/notify.native.js.map +1 -1
  150. package/dist/cjs/feedback/route.native.js.map +1 -1
  151. package/dist/cjs/feedback/store.native.js.map +1 -1
  152. package/dist/cjs/formLayouts/FormLayouts.native.js +1 -1
  153. package/dist/cjs/formLayouts/FormLayouts.native.js.map +1 -1
  154. package/dist/cjs/formLayouts/PreferencePanel.native.js +2 -2
  155. package/dist/cjs/formLayouts/PreferencePanel.native.js.map +1 -1
  156. package/dist/cjs/formLayouts/index.native.js.map +1 -1
  157. package/dist/cjs/hooks/index.native.js +1 -1
  158. package/dist/cjs/hooks/index.native.js.map +1 -1
  159. package/dist/cjs/hooks/useClipboard.native.js.map +1 -1
  160. package/dist/cjs/hooks/useDocumentTitle.native.js.map +1 -1
  161. package/dist/cjs/hooks/useHoldCue.native.js.map +1 -1
  162. package/dist/cjs/icons/CheckRegular.native.js.map +1 -1
  163. package/dist/cjs/icons/MinusRegular.native.js.map +1 -1
  164. package/dist/cjs/icons/index.native.js.map +1 -1
  165. package/dist/cjs/icons/lucide.native.js.map +1 -1
  166. package/dist/cjs/icons/themed.native.js.map +1 -1
  167. package/dist/cjs/images/Image/ImageFrame.native.js +1 -1
  168. package/dist/cjs/images/Image/ImageFrame.native.js.map +1 -1
  169. package/dist/cjs/images/Image/framing.native.js.map +1 -1
  170. package/dist/cjs/images/Image/index.native.js +1 -1
  171. package/dist/cjs/images/Image/mediaRadius.native.js.map +1 -1
  172. package/dist/cjs/images/Image/shared.native.js +1 -1
  173. package/dist/cjs/images/Image/shared.native.js.map +1 -1
  174. package/dist/cjs/images/Image/types.native.js.map +1 -1
  175. package/dist/cjs/images/index.native.js.map +1 -1
  176. package/dist/cjs/index.native.js +39 -39
  177. package/dist/cjs/index.native.js.map +1 -1
  178. package/dist/cjs/knobImmuneExports.native.js.map +1 -1
  179. package/dist/cjs/layouts/AsyncBoundary.native.js +2 -2
  180. package/dist/cjs/layouts/AsyncBoundary.native.js.map +1 -1
  181. package/dist/cjs/layouts/Debug/index.native.js.map +1 -1
  182. package/dist/cjs/layouts/EmptyState.native.js +1 -1
  183. package/dist/cjs/layouts/EmptyState.native.js.map +1 -1
  184. package/dist/cjs/layouts/IdentityPlate.native.js.map +1 -1
  185. package/dist/cjs/layouts/KeyboardAvoidingWrapper/behavior.native.js.map +1 -1
  186. package/dist/cjs/layouts/PageTemplates.native.js.map +1 -1
  187. package/dist/cjs/layouts/PaneScaffold.native.js.map +1 -1
  188. package/dist/cjs/layouts/SafeAreaWrapper/insets.native.js.map +1 -1
  189. package/dist/cjs/layouts/StatusDot.native.js.map +1 -1
  190. package/dist/cjs/layouts/StatusGlyphStrip.native.js +1 -1
  191. package/dist/cjs/layouts/StatusGlyphStrip.native.js.map +1 -1
  192. package/dist/cjs/layouts/ViewSwitcher.cjs +12 -2
  193. package/dist/cjs/layouts/ViewSwitcher.native.js +15 -2
  194. package/dist/cjs/layouts/ViewSwitcher.native.js.map +1 -1
  195. package/dist/cjs/layouts/attachments.native.js +1 -1
  196. package/dist/cjs/layouts/attachments.native.js.map +1 -1
  197. package/dist/cjs/layouts/barTitleSpan.native.js.map +1 -1
  198. package/dist/cjs/layouts/bottomAccessory.native.js.map +1 -1
  199. package/dist/cjs/layouts/breadcrumbs.native.js.map +1 -1
  200. package/dist/cjs/layouts/index.native.js +3 -3
  201. package/dist/cjs/layouts/index.native.js.map +1 -1
  202. package/dist/cjs/layouts/page.native.js +2 -2
  203. package/dist/cjs/layouts/page.native.js.map +1 -1
  204. package/dist/cjs/layouts/pageHeadingScope.native.js.map +1 -1
  205. package/dist/cjs/layouts/screenScroll.native.js.map +1 -1
  206. package/dist/cjs/layouts/shellSidebarSlot.native.js.map +1 -1
  207. package/dist/cjs/layouts/sidebar.native.js +1 -1
  208. package/dist/cjs/layouts/sidebar.native.js.map +1 -1
  209. package/dist/cjs/layouts/tags.native.js +2 -2
  210. package/dist/cjs/layouts/tags.native.js.map +1 -1
  211. package/dist/cjs/layouts/timeline.native.js +2 -2
  212. package/dist/cjs/layouts/timeline.native.js.map +1 -1
  213. package/dist/cjs/layouts/toolbar.native.js +1 -1
  214. package/dist/cjs/layouts/toolbar.native.js.map +1 -1
  215. package/dist/cjs/shared/actionScan.native.js.map +1 -1
  216. package/dist/cjs/shared/i18n.native.js.map +1 -1
  217. package/dist/cjs/shared/restoreRetries.native.js.map +1 -1
  218. package/dist/cjs/shared/t.native.js.map +1 -1
  219. package/dist/cjs/shared/textRidesText.native.js.map +1 -1
  220. package/dist/cjs/shared/useReturnFocusOnClose.native.js.map +1 -1
  221. package/dist/cjs/surfaces.native.js +1 -1
  222. package/dist/cjs/surfaces.native.js.map +1 -1
  223. package/dist/cjs/tamagui.native.js +1 -1
  224. package/dist/cjs/tamagui.native.js.map +1 -1
  225. package/dist/cjs/testSetup.native.js.map +1 -1
  226. package/dist/cjs/utils/setTinted.native.js.map +1 -1
  227. package/dist/cjs/utils/unwrapText.native.js.map +1 -1
  228. package/dist/cjs/views/Calendar.native.js +1 -1
  229. package/dist/cjs/views/Calendar.native.js.map +1 -1
  230. package/dist/cjs/views/Dashboard.native.js +2 -2
  231. package/dist/cjs/views/Dashboard.native.js.map +1 -1
  232. package/dist/cjs/views/Gantt.native.js +2 -2
  233. package/dist/cjs/views/Gantt.native.js.map +1 -1
  234. package/dist/cjs/views/GanttDateGrip.native.js.map +1 -1
  235. package/dist/cjs/views/ImageGrid.native.js +2 -2
  236. package/dist/cjs/views/ImageGrid.native.js.map +1 -1
  237. package/dist/cjs/views/Kanban.native.js +1 -1
  238. package/dist/cjs/views/List.native.js.map +1 -1
  239. package/dist/cjs/views/ListGroup.native.js.map +1 -1
  240. package/dist/cjs/views/ListRow.native.js.map +1 -1
  241. package/dist/cjs/views/Matrix.native.js +2 -2
  242. package/dist/cjs/views/Matrix.native.js.map +1 -1
  243. package/dist/cjs/views/ReportBuilder.native.js +2 -2
  244. package/dist/cjs/views/ReportBuilder.native.js.map +1 -1
  245. package/dist/cjs/views/ShortcutCard.native.js.map +1 -1
  246. package/dist/cjs/views/TreeView.native.js.map +1 -1
  247. package/dist/cjs/views/calendarMath.native.js.map +1 -1
  248. package/dist/cjs/views/ganttIntervals.native.js.map +1 -1
  249. package/dist/cjs/views/ganttMath.native.js.map +1 -1
  250. package/dist/cjs/views/index.native.js +1 -1
  251. package/dist/cjs/views/index.native.js.map +1 -1
  252. package/dist/cjs/views/kanbanDnd.native.js.map +1 -1
  253. package/dist/cjs/views/matrixMath.native.js.map +1 -1
  254. package/dist/cjs/views/sameNameScope.native.js.map +1 -1
  255. package/dist/cjs/views/treeViewDnd.native.js.map +1 -1
  256. package/dist/cjs/views/treeViewLayout.native.js.map +1 -1
  257. package/dist/cjs/views/treeViewMotion.native.js.map +1 -1
  258. package/dist/cjs/views/treeViewReveal.native.js.map +1 -1
  259. package/dist/cjs/views/usePageFlowLoadMore.native.js.map +1 -1
  260. package/dist/cjs/views/widgetChrome.native.js.map +1 -1
  261. package/dist/esm/CopyField/CopyMenuButton.mjs +1 -3
  262. package/dist/esm/CopyField/CopyMenuButton.mjs.map +1 -1
  263. package/dist/esm/CopyField/CopyMenuButton.native.js +1 -3
  264. package/dist/esm/CopyField/CopyMenuButton.native.js.map +1 -1
  265. package/dist/esm/SkipLink/index.mjs +2 -3
  266. package/dist/esm/SkipLink/index.mjs.map +1 -1
  267. package/dist/esm/SkipLink/index.native.js +2 -3
  268. package/dist/esm/SkipLink/index.native.js.map +1 -1
  269. package/dist/esm/layouts/ViewSwitcher.mjs +12 -2
  270. package/dist/esm/layouts/ViewSwitcher.mjs.map +1 -1
  271. package/dist/esm/layouts/ViewSwitcher.native.js +15 -2
  272. package/dist/esm/layouts/ViewSwitcher.native.js.map +1 -1
  273. package/dist/jsx/CopyField/CopyMenuButton.mjs +1 -3
  274. package/dist/jsx/CopyField/CopyMenuButton.mjs.map +1 -1
  275. package/dist/jsx/CopyField/CopyMenuButton.native.js +1 -3
  276. package/dist/jsx/CopyField/CopyMenuButton.native.js.map +1 -1
  277. package/dist/jsx/SkipLink/index.mjs +2 -3
  278. package/dist/jsx/SkipLink/index.mjs.map +1 -1
  279. package/dist/jsx/SkipLink/index.native.js +1 -2
  280. package/dist/jsx/SkipLink/index.native.js.map +1 -1
  281. package/dist/jsx/layouts/ViewSwitcher.mjs +12 -2
  282. package/dist/jsx/layouts/ViewSwitcher.mjs.map +1 -1
  283. package/dist/jsx/layouts/ViewSwitcher.native.js +15 -2
  284. package/dist/jsx/layouts/ViewSwitcher.native.js.map +1 -1
  285. package/package.json +11 -11
  286. package/src/CopyField/CopyMenuButton.spec.tsx +2 -0
  287. package/src/CopyField/CopyMenuButton.tsx +1 -8
  288. package/src/SkipLink/index.tsx +3 -8
  289. package/src/SkipLink/weightKnob.spec.tsx +53 -0
  290. package/src/layouts/DensePageLayout.spec.tsx +105 -0
  291. package/src/layouts/ViewSwitcher.native-press.spec.tsx +55 -0
  292. package/src/layouts/ViewSwitcher.tsx +13 -2
  293. package/types/CopyField/CopyMenuButton.d.ts.map +1 -1
  294. package/types/SkipLink/index.d.ts.map +1 -1
  295. package/types/layouts/ViewSwitcher.d.ts.map +1 -1
@@ -94,7 +94,12 @@ function ViewSwitcher(param) {
94
94
  overflow: "hidden",
95
95
  focusStyle: groupRing,
96
96
  focusVisibleStyle: groupRing,
97
- focusWithinStyle: groupRing,
97
+ // FZ-8991: on native a focusWithinStyle hands every descendant focus
98
+ // events, and the segment's label then takes the touch, so the segment's
99
+ // onPress never runs. The ring is a keyboard affordance: web only.
100
+ ...(import_tamagui.isWeb ? {
101
+ focusWithinStyle: groupRing
102
+ } : void 0),
98
103
  // Carbon / Apple equal-width: inline style so Tamagui's flex class
99
104
  // cannot drop `gridAutoFlow` (a Tamagui `display="grid"` prop did).
100
105
  ...(import_tamagui.isWeb ? {
@@ -128,7 +133,15 @@ function ViewSwitcher(param) {
128
133
  value: view.type,
129
134
  ...(import_tamagui.isWeb ? {
130
135
  tabIndex: isTabStop ? 0 : -1
131
- } : void 0),
136
+ } : {
137
+ accessible: true,
138
+ role: "button",
139
+ accessibilityRole: "button",
140
+ accessibilityLabel: view.label,
141
+ accessibilityState: {
142
+ selected: isSelected
143
+ }
144
+ }),
132
145
  paddingHorizontal: knobProps.tab.paddingHorizontal,
133
146
  width: "auto",
134
147
  height: knobProps.tab.height,
@@ -1 +1 @@
1
- {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","ViewSwitcher_exports","ViewSwitcher","module","exports","import_jsx_runtime","require","import_theme","import_theme2","import_react","import_tamagui","param","views","currentView","onViewChange","testID","knobProps","useResolvedKnobs","kbFocusValue","setKbFocusValue","useState","focusValue","setFocusValue","isWeb","ensureKeyboardModalityTracking","selectedChip","backgroundColor","segmentHitSlop","tabHitSlop","groupRing","ensureFocusVisibleRing","radius","borderRadius","count","length","restSegment","borderWidth","borderColor","margin","hoverWash","pressWash","jsx","ToggleGroup","type","orientation","flexDirection","alignSelf","gap","disableDeactivation","onValueChange","val","inputSurface","sizeToken","overflow","focusStyle","focusVisibleStyle","focusWithinStyle","style","display","gridAutoFlow","gridAutoColumns","children","map","view","viewIndex","Icon","icon","anchorIndex","focusIdx","findIndex","v","activeIdx","isTabStop","isSelected","groupedRadius","stackRadiusProps","getGroupPosition","fill","Item","tabIndex","paddingHorizontal","tab","width","height","hitSlop","flexGrow","flexShrink","alignItems","justifyContent","cursor","userSelect","label","transitionProps","motion","control","hoverStyle","pressStyle","outlineWidth","keyboardFocusRingProps","onFocus","wasKeyboardFocus","onBlur","prev"],"sources":["../../../src/layouts/ViewSwitcher.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","ViewSwitcher_exports","ViewSwitcher","module","exports","import_jsx_runtime","require","import_theme","import_theme2","import_react","import_tamagui","param","views","currentView","onViewChange","testID","knobProps","useResolvedKnobs","kbFocusValue","setKbFocusValue","useState","focusValue","setFocusValue","isWeb","ensureKeyboardModalityTracking","selectedChip","backgroundColor","segmentHitSlop","tabHitSlop","groupRing","ensureFocusVisibleRing","radius","borderRadius","count","length","restSegment","borderWidth","borderColor","margin","hoverWash","pressWash","jsx","ToggleGroup","type","orientation","flexDirection","alignSelf","gap","disableDeactivation","onValueChange","val","inputSurface","sizeToken","overflow","focusStyle","focusVisibleStyle","focusWithinStyle","style","display","gridAutoFlow","gridAutoColumns","children","map","view","viewIndex","Icon","icon","anchorIndex","focusIdx","findIndex","v","activeIdx","isTabStop","isSelected","groupedRadius","stackRadiusProps","getGroupPosition","fill","Item","tabIndex","accessible","role","accessibilityRole","accessibilityLabel","label","accessibilityState","selected","paddingHorizontal","tab","width","height","hitSlop","flexGrow","flexShrink","alignItems","justifyContent","cursor","userSelect","transitionProps","motion","control","hoverStyle","pressStyle","outlineWidth","keyboardFocusRingProps","onFocus","wasKeyboardFocus","onBlur","prev"],"sources":["../../../src/layouts/ViewSwitcher.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@multiplatform.one/components",
3
- "version": "7.84.0",
3
+ "version": "7.84.2",
4
4
  "description": "multiplatform.one ui components",
5
5
  "keywords": [
6
6
  "components",
@@ -58,11 +58,11 @@
58
58
  },
59
59
  "dependencies": {
60
60
  "@floating-ui/react": "^0.27.20",
61
- "@multiplatform.one/forms": "^7.84.0",
62
- "@multiplatform.one/i18n": "^7.84.0",
63
- "@multiplatform.one/platform": "^7.84.0",
64
- "@multiplatform.one/router": "^7.84.0",
65
- "@multiplatform.one/theme": "^7.84.0",
61
+ "@multiplatform.one/forms": "^7.84.2",
62
+ "@multiplatform.one/i18n": "^7.84.2",
63
+ "@multiplatform.one/platform": "^7.84.2",
64
+ "@multiplatform.one/router": "^7.84.2",
65
+ "@multiplatform.one/theme": "^7.84.2",
66
66
  "@phosphor-icons/react": "^2.1.10",
67
67
  "@shopify/flash-list": "^2.3.1",
68
68
  "@tamagui/colors": "2.7.6",
@@ -89,16 +89,16 @@
89
89
  "tamagui": "2.7.6"
90
90
  },
91
91
  "devDependencies": {
92
- "@multiplatform.one/config": "7.84.0",
93
- "@multiplatform.one/storybook": "7.84.0",
94
- "@multiplatform.one/test-utils": "7.84.0",
92
+ "@multiplatform.one/config": "7.84.2",
93
+ "@multiplatform.one/storybook": "7.84.2",
94
+ "@multiplatform.one/test-utils": "7.84.2",
95
95
  "@tamagui/build": "2.7.6",
96
96
  "@testing-library/jest-dom": "^7.0.1",
97
97
  "@testing-library/react": "^16.3.3",
98
98
  "@types/d3-scale": "^4.0.9",
99
99
  "@types/d3-shape": "^3.2.0",
100
100
  "@vitejs/plugin-react": "^6.1.2",
101
- "@vitest/coverage-v8": "^4.1.5",
101
+ "@vitest/coverage-v8": "^4.1.12",
102
102
  "expo-blur": "~55.0.18",
103
103
  "expo-video": "~55.0.19",
104
104
  "matchmedia-polyfill": "^0.3.2",
@@ -109,7 +109,7 @@
109
109
  "react-native-reanimated": "~4.3.0",
110
110
  "react-native-svg": "15.15.4",
111
111
  "react-native-web": "^0.21.2",
112
- "vitest": "^4.1.5"
112
+ "vitest": "^4.1.12"
113
113
  },
114
114
  "peerDependencies": {
115
115
  "@mdx-js/mdx": "^3.1.1",
@@ -21,6 +21,8 @@ describe("CopyMenuButton (LC-169)", () => {
21
21
  />,
22
22
  );
23
23
  const trigger = result.getByLabelText("Copy");
24
+ // LC-176 (FZ-8044): the glyph beside an identifier is the inline accent glyph.
25
+ expect(trigger.getAttribute("data-mp-icon-button")).toBe("inline");
24
26
  fireEvent.click(trigger);
25
27
  await waitFor(() => expect(result.getByText("Copy discovery URL")).toBeTruthy());
26
28
  expect(result.getByText("Copy issuer")).toBeTruthy();
@@ -37,14 +37,7 @@ export function CopyMenuButton({ items, "aria-label": ariaLabel }: CopyMenuButto
37
37
  onSelect: () => void copy(item.value),
38
38
  }))}
39
39
  >
40
- <Button
41
- nested
42
- chromeless
43
- circular
44
- flexShrink={0}
45
- icon={<CopyIcon />}
46
- aria-label={ariaLabel ?? t("Copy")}
47
- />
40
+ <Button inline flexShrink={0} icon={<CopyIcon />} aria-label={ariaLabel ?? t("Copy")} />
48
41
  </DropdownMenu>
49
42
  );
50
43
  }
@@ -3,10 +3,11 @@ import { zIndex } from "@multiplatform.one/forms";
3
3
  import {
4
4
  FOCUS_RING_MIN_WIDTH,
5
5
  FOCUS_VISIBLE_RING,
6
+ SizableText,
6
7
  useResolvedKnobs,
7
8
  } from "@multiplatform.one/theme";
8
9
  import type { GetProps } from "tamagui";
9
- import { SizableText, YStack, getTokenValue, isWeb, styled } from "tamagui";
10
+ import { YStack, getTokenValue, isWeb, styled } from "tamagui";
10
11
 
11
12
  // ── Types ─────────────────────────────────────────────────────
12
13
 
@@ -178,13 +179,7 @@ export function SkipLink({
178
179
  {...knobProps.elevatedSurface}
179
180
  elevation={knobProps.elevatedSurface.elevation ?? "$2"}
180
181
  >
181
- <SizableText
182
- {...knobProps.body}
183
- {...knobProps.label}
184
- fontWeight="400"
185
- color="$color12"
186
- whiteSpace="nowrap"
187
- >
182
+ <SizableText {...knobProps.body} {...knobProps.label} color="$color12" whiteSpace="nowrap">
188
183
  {children}
189
184
  </SizableText>
190
185
  </SkipLinkSurface>
@@ -0,0 +1,53 @@
1
+ /**
2
+ * MPO-469 (FZ-1858): the skip link's label takes the fontWeight knob. It was
3
+ * tamagui's raw SizableText with fontWeight="400" written after the label
4
+ * fragment, so it stayed 400 under Weight bold. K13 (Round 51) rules chrome
5
+ * labels honour the knob, and the link now rides the house SizableText.
6
+ */
7
+
8
+ import { renderWithProviders } from "@multiplatform.one/test-utils";
9
+ import { Preset } from "@multiplatform.one/theme";
10
+ import { cleanup, screen } from "@testing-library/react";
11
+ import { readFileSync } from "node:fs";
12
+ import { resolve } from "node:path";
13
+ import { Text as RawText } from "tamagui";
14
+ import { afterEach, describe, expect, it } from "vitest";
15
+ import { SkipLink } from "./index";
16
+
17
+ afterEach(cleanup);
18
+
19
+ function weightClasses(el: Element): string[] {
20
+ return String(el.className || "")
21
+ .split(" ")
22
+ .filter((c) => c.startsWith("_fow-"))
23
+ .sort();
24
+ }
25
+
26
+ function explicit(weight: string): string[] {
27
+ renderWithProviders(<RawText fontWeight={weight as never}>probe</RawText>);
28
+ const got = weightClasses(screen.getByText("probe"));
29
+ cleanup();
30
+ return got;
31
+ }
32
+
33
+ describe("SkipLink label follows the fontWeight knob (MPO-469)", () => {
34
+ it.each([
35
+ ["regular", "400"],
36
+ ["bold", "700"],
37
+ ] as const)("paints the knob weight at %s", (fontWeight, want) => {
38
+ const expected = explicit(want);
39
+ renderWithProviders(
40
+ <Preset overrides={{ fontWeight }}>
41
+ <SkipLink targetId="main-content">Skip to results</SkipLink>
42
+ </Preset>,
43
+ );
44
+ expect(weightClasses(screen.getByText("Skip to results"))).toEqual(expected);
45
+ });
46
+
47
+ it("imports no typography from tamagui", () => {
48
+ const src = readFileSync(resolve(__dirname, "index.tsx"), "utf-8");
49
+ expect(src).not.toMatch(
50
+ /import\s*\{[^}]*\b(Text|SizableText|Paragraph)\b[^}]*\}\s*from\s*"tamagui"/,
51
+ );
52
+ });
53
+ });
@@ -0,0 +1,105 @@
1
+ import { cleanup, screen } from "@testing-library/react";
2
+ import { renderWithProviders } from "@multiplatform.one/test-utils";
3
+ import { layoutBreakpoints } from "@multiplatform.one/theme";
4
+ import { afterEach, describe, expect, it, vi } from "vitest";
5
+ import { Button, Paragraph } from "tamagui";
6
+ import { CONTENT_MAX_WIDTH } from "./page";
7
+ import { DensePageLayout } from "./PageTemplates";
8
+
9
+ const size = vi.hoisted(() => ({ value: "medium" as string }));
10
+ vi.mock("@multiplatform.one/theme", async (importOriginal) => ({
11
+ ...(await importOriginal<typeof import("@multiplatform.one/theme")>()),
12
+ useLayoutSizeClass: () => size.value,
13
+ }));
14
+
15
+ afterEach(() => {
16
+ cleanup();
17
+ size.value = "medium";
18
+ });
19
+
20
+ function Log(props: Partial<Parameters<typeof DensePageLayout>[0]>) {
21
+ return (
22
+ <DensePageLayout
23
+ kind="log"
24
+ title="Sync worker"
25
+ status={<Paragraph>Running</Paragraph>}
26
+ actions={<Button aria-label="Pause the stream">Pause</Button>}
27
+ data-testid="dense-shell"
28
+ {...props}
29
+ >
30
+ <Paragraph>log rows</Paragraph>
31
+ </DensePageLayout>
32
+ );
33
+ }
34
+
35
+ /** Tamagui's atomic classes on web: `_pl-t-space-4` is paddingLeft $4. */
36
+ function atom(el: HTMLElement, prefix: string) {
37
+ return el.className.split(" ").find((name) => name.startsWith(prefix)) ?? null;
38
+ }
39
+
40
+ function surface(kind: string) {
41
+ return document.querySelector(`[data-dense-surface="${kind}"]`) as HTMLElement;
42
+ }
43
+
44
+ describe("DensePageLayout (LC-215)", () => {
45
+ it("keeps the page head and gives the surface the rest of the page", () => {
46
+ renderWithProviders(<Log />);
47
+ expect(screen.getByRole("heading", { name: "Sync worker" })).toBeTruthy();
48
+ expect(screen.getByText("Running")).toBeTruthy();
49
+ expect(screen.getByLabelText("Pause the stream")).toBeTruthy();
50
+ const region = surface("log");
51
+ expect(region.textContent).toBe("log rows");
52
+ expect(region.contains(screen.getByText("Sync worker"))).toBe(false);
53
+ expect(region).toHaveStyle({ flexGrow: "1", minHeight: "0px" });
54
+ });
55
+
56
+ it("from medium up holds a log to the page column and a chart to the readable measure", () => {
57
+ renderWithProviders(<Log />);
58
+ expect(screen.getByTestId("dense-shell")).toHaveStyle({ maxWidth: `${CONTENT_MAX_WIDTH}px` });
59
+ const log = surface("log");
60
+ expect(atom(log, "_ox-")).toBe("_ox-hidden");
61
+ expect(atom(log, "_btlr-")).toMatch(/^_btlr-t-radius-/);
62
+ cleanup();
63
+ renderWithProviders(<Log kind="chart" measure="readable" />);
64
+ expect(screen.getByTestId("dense-shell")).toHaveStyle({
65
+ maxWidth: `${layoutBreakpoints.expanded}px`,
66
+ });
67
+ });
68
+
69
+ it("on a phone bleeds the surface to both edges, with a gutter only when asked", () => {
70
+ size.value = "compact";
71
+ renderWithProviders(<Log />);
72
+ const shell = screen.getByTestId("dense-shell");
73
+ expect(getComputedStyle(shell).maxWidth).not.toBe(`${CONTENT_MAX_WIDTH}px`);
74
+ const region = surface("log");
75
+ expect([atom(region, "_pl-"), atom(region, "_pr-"), atom(region, "_ox-")]).toEqual([
76
+ null,
77
+ null,
78
+ null,
79
+ ]);
80
+ expect(region.contains(screen.getByText("Sync worker"))).toBe(false);
81
+ cleanup();
82
+ renderWithProviders(<Log kind="chart" gutter />);
83
+ const chart = surface("chart");
84
+ expect(atom(chart, "_pl-")).toMatch(/^_pl-t-space-/);
85
+ expect(atom(chart, "_pl-")?.slice(4)).toBe(atom(chart, "_pr-")?.slice(4));
86
+ });
87
+
88
+ it("takes a caller's header in place of its own, and draws none with nothing to show", () => {
89
+ renderWithProviders(
90
+ <DensePageLayout kind="log" header={<Paragraph>Custom head</Paragraph>}>
91
+ <Paragraph>rows</Paragraph>
92
+ </DensePageLayout>,
93
+ );
94
+ expect(screen.getByText("Custom head")).toBeTruthy();
95
+ expect(screen.queryByRole("heading")).toBeNull();
96
+ cleanup();
97
+ renderWithProviders(
98
+ <DensePageLayout kind="log">
99
+ <Paragraph>rows</Paragraph>
100
+ </DensePageLayout>,
101
+ );
102
+ expect(screen.queryByRole("heading")).toBeNull();
103
+ expect(surface("log").textContent).toBe("rows");
104
+ });
105
+ });
@@ -0,0 +1,55 @@
1
+ /**
2
+ * FZ-8991, under tamagui's NATIVE build (vitest.native.config.mjs). On the iOS
3
+ * simulator One's Moves list ignored every tap on the ViewSwitcher's Table
4
+ * segment, so a phone user could never reach the table view. A press on a
5
+ * segment's label has to reach the segment and switch the view.
6
+ */
7
+ import { cleanup, fireEvent, screen } from "@testing-library/react";
8
+ import { renderWithProviders } from "@multiplatform.one/test-utils";
9
+ import { isWeb } from "tamagui";
10
+ import { afterEach, describe, expect, it, vi } from "vitest";
11
+ import { ViewSwitcher } from "./ViewSwitcher";
12
+
13
+ afterEach(cleanup);
14
+
15
+ const views = [
16
+ { type: "list", label: "List" },
17
+ { type: "table", label: "Table" },
18
+ ];
19
+
20
+ function press(el: Element) {
21
+ fireEvent.mouseDown(el, { button: 0, buttons: 1 });
22
+ fireEvent.mouseUp(el, { button: 0, buttons: 0 });
23
+ }
24
+
25
+ describe("ViewSwitcher press on native", () => {
26
+ it("runs tamagui's native build", () => {
27
+ expect(isWeb).toBe(false);
28
+ });
29
+
30
+ it("a press on the Table segment switches to table", () => {
31
+ const onViewChange = vi.fn();
32
+ renderWithProviders(
33
+ <ViewSwitcher views={views} currentView="list" onViewChange={onViewChange} />,
34
+ );
35
+ press(screen.getByText("Table"));
36
+ expect(onViewChange).toHaveBeenCalledWith("table");
37
+ });
38
+
39
+ it("a press on the List segment switches back to list", () => {
40
+ const onViewChange = vi.fn();
41
+ renderWithProviders(
42
+ <ViewSwitcher views={views} currentView="table" onViewChange={onViewChange} />,
43
+ );
44
+ press(screen.getByText("List"));
45
+ expect(onViewChange).toHaveBeenCalledWith("list");
46
+ });
47
+
48
+ // The selected state rides accessibilityState, which this DOM shim does not
49
+ // render; the simulator's accessibility tree is where that is checked.
50
+ it("each segment is a named button", () => {
51
+ renderWithProviders(<ViewSwitcher views={views} currentView="list" onViewChange={() => {}} />);
52
+ const buttons = screen.getAllByRole("button");
53
+ expect(buttons.map((b) => b.getAttribute("aria-label"))).toEqual(["List", "Table"]);
54
+ });
55
+ });
@@ -126,7 +126,10 @@ export function ViewSwitcher({
126
126
  overflow="hidden"
127
127
  focusStyle={groupRing}
128
128
  focusVisibleStyle={groupRing}
129
- focusWithinStyle={groupRing}
129
+ // FZ-8991: on native a focusWithinStyle hands every descendant focus
130
+ // events, and the segment's label then takes the touch, so the segment's
131
+ // onPress never runs. The ring is a keyboard affordance: web only.
132
+ {...(isWeb ? { focusWithinStyle: groupRing } : undefined)}
130
133
  // Carbon / Apple equal-width: inline style so Tamagui's flex class
131
134
  // cannot drop `gridAutoFlow` (a Tamagui `display="grid"` prop did).
132
135
  {...(isWeb
@@ -167,7 +170,15 @@ export function ViewSwitcher({
167
170
  <ToggleGroup.Item
168
171
  key={view.type}
169
172
  value={view.type}
170
- {...(isWeb ? { tabIndex: isTabStop ? 0 : -1 } : undefined)}
173
+ {...(isWeb
174
+ ? { tabIndex: isTabStop ? 0 : -1 }
175
+ : {
176
+ accessible: true,
177
+ role: "button" as const,
178
+ accessibilityRole: "button" as const,
179
+ accessibilityLabel: view.label,
180
+ accessibilityState: { selected: isSelected },
181
+ })}
171
182
  paddingHorizontal={knobProps.tab.paddingHorizontal}
172
183
  width="auto"
173
184
  height={knobProps.tab.height}
@@ -1 +1 @@
1
- {"version":3,"file":"CopyMenuButton.d.ts","sourceRoot":"","sources":["../../src/CopyField/CopyMenuButton.tsx"],"names":[],"mappings":"AAcA,MAAM,WAAW,YAAY;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IAC/B,oDAAoD;IACpD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,mBAAmB,2CAsBrF"}
1
+ {"version":3,"file":"CopyMenuButton.d.ts","sourceRoot":"","sources":["../../src/CopyField/CopyMenuButton.tsx"],"names":[],"mappings":"AAcA,MAAM,WAAW,YAAY;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IAC/B,oDAAoD;IACpD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,mBAAmB,2CAerF"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/SkipLink/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuC,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAO5F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAKxC,MAAM,WAAW,aAAa;IAC5B,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;IACnE,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,uDAAuD;IACvD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;CAC/C;AAKD,QAAA,MAAM,eAAe;;;6CAInB,CAAC;AA+FH;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,EACvB,QAAQ,EACR,SAAS,EACT,QAA4B,EAC5B,MAAM,GACP,EAAE,aAAa,kDAuDf;AAED,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC,OAAO,eAAe,CAAC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/SkipLink/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuC,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAQ5F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAKxC,MAAM,WAAW,aAAa;IAC5B,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;IACnE,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,uDAAuD;IACvD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;CAC/C;AAKD,QAAA,MAAM,eAAe;;;6CAInB,CAAC;AA+FH;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,EACvB,QAAQ,EACR,SAAS,EACT,QAA4B,EAC5B,MAAM,GACP,EAAE,aAAa,kDAiDf;AAED,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC,OAAO,eAAe,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ViewSwitcher.d.ts","sourceRoot":"","sources":["../../src/layouts/ViewSwitcher.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,WAAW,UAAU;IACzB,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,+BAA+B;IAC/B,IAAI,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9C,uFAAuF;IACvF,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,6BAA6B;IAC7B,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,qCAAqC;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,WAAW,EACX,YAAY,EACZ,MAAwB,GACzB,EAAE,iBAAiB,2CAgNnB"}
1
+ {"version":3,"file":"ViewSwitcher.d.ts","sourceRoot":"","sources":["../../src/layouts/ViewSwitcher.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,WAAW,UAAU;IACzB,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,+BAA+B;IAC/B,IAAI,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9C,uFAAuF;IACvF,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,6BAA6B;IAC7B,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,qCAAqC;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,WAAW,EACX,YAAY,EACZ,MAAwB,GACzB,EAAE,iBAAiB,2CA2NnB"}