@multiplatform.one/components 7.23.1 → 7.24.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 (557) hide show
  1. package/dist/cjs/Alert/index.cjs +1 -1
  2. package/dist/cjs/Alert/index.native.js +1 -1
  3. package/dist/cjs/Alert/index.native.js.map +1 -1
  4. package/dist/cjs/Avatar/index.cjs +6 -4
  5. package/dist/cjs/Avatar/index.native.js +6 -4
  6. package/dist/cjs/Avatar/index.native.js.map +1 -1
  7. package/dist/cjs/ContextMenu/index.cjs +1 -1
  8. package/dist/cjs/ContextMenu/index.native.js +1 -1
  9. package/dist/cjs/ContextMenu/index.native.js.map +1 -1
  10. package/dist/cjs/DropdownMenu/index.cjs +1 -1
  11. package/dist/cjs/DropdownMenu/index.native.js +1 -1
  12. package/dist/cjs/DropdownMenu/index.native.js.map +1 -1
  13. package/dist/cjs/ProgressSteps/index.cjs +16 -10
  14. package/dist/cjs/ProgressSteps/index.native.js +16 -10
  15. package/dist/cjs/ProgressSteps/index.native.js.map +1 -1
  16. package/dist/cjs/SheetModal/index.native.js +7 -0
  17. package/dist/cjs/SheetModal/index.native.js.map +1 -1
  18. package/dist/cjs/Tabs/index.cjs +2 -1
  19. package/dist/cjs/Tabs/index.native.js +2 -1
  20. package/dist/cjs/Tabs/index.native.js.map +1 -1
  21. package/dist/cjs/ThemePlayground/index.cjs +114 -0
  22. package/dist/cjs/ThemePlayground/index.native.js +33 -0
  23. package/dist/cjs/ThemePlayground/index.native.js.map +1 -0
  24. package/dist/cjs/Toast/index.cjs +2 -2
  25. package/dist/cjs/Toast/index.native.js +2 -2
  26. package/dist/cjs/Toast/index.native.js.map +1 -1
  27. package/dist/cjs/TreeSelect/index.cjs +0 -1
  28. package/dist/cjs/TreeSelect/index.native.js +0 -1
  29. package/dist/cjs/TreeSelect/index.native.js.map +1 -1
  30. package/dist/cjs/Video/PlayerChrome.cjs +2 -2
  31. package/dist/cjs/Video/PlayerChrome.native.js +2 -2
  32. package/dist/cjs/Video/PlayerChrome.native.js.map +1 -1
  33. package/dist/cjs/Wizard/index.cjs +33 -33
  34. package/dist/cjs/Wizard/index.native.js +33 -33
  35. package/dist/cjs/Wizard/index.native.js.map +1 -1
  36. package/dist/cjs/code/HighlightedCode/index.cjs +3 -2
  37. package/dist/cjs/code/HighlightedCode/index.native.js +3 -2
  38. package/dist/cjs/code/HighlightedCode/index.native.js.map +1 -1
  39. package/dist/cjs/index.cjs +1 -0
  40. package/dist/cjs/index.native.js +1 -0
  41. package/dist/cjs/index.native.js.map +1 -1
  42. package/dist/cjs/layouts/attachments.cjs +1 -1
  43. package/dist/cjs/layouts/attachments.native.js +1 -1
  44. package/dist/cjs/layouts/attachments.native.js.map +1 -1
  45. package/dist/cjs/layouts/page.cjs +18 -5
  46. package/dist/cjs/layouts/page.native.js +18 -6
  47. package/dist/cjs/layouts/page.native.js.map +1 -1
  48. package/dist/cjs/layouts/sidebar.cjs +20 -12
  49. package/dist/cjs/layouts/sidebar.native.js +22 -18
  50. package/dist/cjs/layouts/sidebar.native.js.map +1 -1
  51. package/dist/cjs/layouts/tags.cjs +4 -1
  52. package/dist/cjs/layouts/tags.native.js +4 -1
  53. package/dist/cjs/layouts/tags.native.js.map +1 -1
  54. package/dist/cjs/layouts/timeline.cjs +12 -7
  55. package/dist/cjs/layouts/timeline.native.js +15 -9
  56. package/dist/cjs/layouts/timeline.native.js.map +1 -1
  57. package/dist/cjs/layouts/toolbar.cjs +0 -1
  58. package/dist/cjs/layouts/toolbar.native.js +0 -1
  59. package/dist/cjs/layouts/toolbar.native.js.map +1 -1
  60. package/dist/cjs/views/Calendar.cjs +5 -5
  61. package/dist/cjs/views/Calendar.native.js +5 -5
  62. package/dist/cjs/views/Calendar.native.js.map +1 -1
  63. package/dist/cjs/views/Gantt.cjs +2 -2
  64. package/dist/cjs/views/Gantt.native.js +2 -2
  65. package/dist/cjs/views/Gantt.native.js.map +1 -1
  66. package/dist/cjs/views/ImageGrid.cjs +17 -10
  67. package/dist/cjs/views/ImageGrid.native.js +19 -10
  68. package/dist/cjs/views/ImageGrid.native.js.map +1 -1
  69. package/dist/cjs/views/TreeView.cjs +4 -1
  70. package/dist/cjs/views/TreeView.native.js +4 -1
  71. package/dist/cjs/views/TreeView.native.js.map +1 -1
  72. package/dist/esm/Accordion/index.native.js.map +1 -1
  73. package/dist/esm/Alert/index.mjs +1 -1
  74. package/dist/esm/Alert/index.mjs.map +1 -1
  75. package/dist/esm/Alert/index.native.js +1 -1
  76. package/dist/esm/Alert/index.native.js.map +1 -1
  77. package/dist/esm/AnimateHeight/index.native.js.map +1 -1
  78. package/dist/esm/Avatar/getInitials.native.js.map +1 -1
  79. package/dist/esm/Avatar/index.mjs +7 -5
  80. package/dist/esm/Avatar/index.mjs.map +1 -1
  81. package/dist/esm/Avatar/index.native.js +7 -5
  82. package/dist/esm/Avatar/index.native.js.map +1 -1
  83. package/dist/esm/Badge/index.native.js.map +1 -1
  84. package/dist/esm/Button.native.js.map +1 -1
  85. package/dist/esm/Carousel/index.native.js.map +1 -1
  86. package/dist/esm/Chip/index.native.js.map +1 -1
  87. package/dist/esm/Collapsible.native.js.map +1 -1
  88. package/dist/esm/ContextMenu/index.mjs +1 -1
  89. package/dist/esm/ContextMenu/index.mjs.map +1 -1
  90. package/dist/esm/ContextMenu/index.native.js +1 -1
  91. package/dist/esm/ContextMenu/index.native.js.map +1 -1
  92. package/dist/esm/CopyField/index.native.js.map +1 -1
  93. package/dist/esm/DotIndicator/index.native.js.map +1 -1
  94. package/dist/esm/DropdownMenu/index.mjs +1 -1
  95. package/dist/esm/DropdownMenu/index.mjs.map +1 -1
  96. package/dist/esm/DropdownMenu/index.native.js +1 -1
  97. package/dist/esm/DropdownMenu/index.native.js.map +1 -1
  98. package/dist/esm/ErrorBoundary/index.native.js.map +1 -1
  99. package/dist/esm/Heading.native.js.map +1 -1
  100. package/dist/esm/Meter/index.native.js.map +1 -1
  101. package/dist/esm/Meter/meter.native.js.map +1 -1
  102. package/dist/esm/Pagination.native.js.map +1 -1
  103. package/dist/esm/ProgressSteps/index.mjs +16 -10
  104. package/dist/esm/ProgressSteps/index.mjs.map +1 -1
  105. package/dist/esm/ProgressSteps/index.native.js +16 -10
  106. package/dist/esm/ProgressSteps/index.native.js.map +1 -1
  107. package/dist/esm/Quote/index.native.js.map +1 -1
  108. package/dist/esm/Separator/index.native.js.map +1 -1
  109. package/dist/esm/SheetModal/detents.native.js.map +1 -1
  110. package/dist/esm/SheetModal/index.native.js +7 -0
  111. package/dist/esm/SheetModal/index.native.js.map +1 -1
  112. package/dist/esm/Skeleton/index.native.js.map +1 -1
  113. package/dist/esm/SkipLink/index.native.js.map +1 -1
  114. package/dist/esm/SortableList/SortableHandle.native.js.map +1 -1
  115. package/dist/esm/SortableList/index.native.js.map +1 -1
  116. package/dist/esm/SortableList/useSortableRows.native.js.map +1 -1
  117. package/dist/esm/Tabs/index.mjs +2 -1
  118. package/dist/esm/Tabs/index.mjs.map +1 -1
  119. package/dist/esm/Tabs/index.native.js +2 -1
  120. package/dist/esm/Tabs/index.native.js.map +1 -1
  121. package/dist/esm/Text.native.js.map +1 -1
  122. package/dist/esm/ThemePlayground/index.mjs +78 -0
  123. package/dist/esm/ThemePlayground/index.mjs.map +1 -0
  124. package/dist/esm/ThemePlayground/index.native.js +5 -0
  125. package/dist/esm/ThemePlayground/index.native.js.map +1 -0
  126. package/dist/esm/Toast/index.mjs +2 -2
  127. package/dist/esm/Toast/index.mjs.map +1 -1
  128. package/dist/esm/Toast/index.native.js +2 -2
  129. package/dist/esm/Toast/index.native.js.map +1 -1
  130. package/dist/esm/Toast/store.native.js.map +1 -1
  131. package/dist/esm/Tooltip/nativePress.native.js.map +1 -1
  132. package/dist/esm/Tooltip/tooltipShared.native.js.map +1 -1
  133. package/dist/esm/TreeSelect/index.mjs +0 -1
  134. package/dist/esm/TreeSelect/index.mjs.map +1 -1
  135. package/dist/esm/TreeSelect/index.native.js +0 -1
  136. package/dist/esm/TreeSelect/index.native.js.map +1 -1
  137. package/dist/esm/TreeSelect/treeSelectModel.native.js.map +1 -1
  138. package/dist/esm/Video/PlayerChrome.mjs +2 -2
  139. package/dist/esm/Video/PlayerChrome.mjs.map +1 -1
  140. package/dist/esm/Video/PlayerChrome.native.js +2 -2
  141. package/dist/esm/Video/PlayerChrome.native.js.map +1 -1
  142. package/dist/esm/Video/VideoFrame.native.js.map +1 -1
  143. package/dist/esm/Video/types.native.js.map +1 -1
  144. package/dist/esm/Wheel/index.native.js.map +1 -1
  145. package/dist/esm/Wizard/index.mjs +33 -33
  146. package/dist/esm/Wizard/index.mjs.map +1 -1
  147. package/dist/esm/Wizard/index.native.js +33 -33
  148. package/dist/esm/Wizard/index.native.js.map +1 -1
  149. package/dist/esm/actions/ActionBar.native.js.map +1 -1
  150. package/dist/esm/actions/DestructiveAction.native.js.map +1 -1
  151. package/dist/esm/actions/devWarn.native.js.map +1 -1
  152. package/dist/esm/actions/index.native.js.map +1 -1
  153. package/dist/esm/actions/severity.native.js.map +1 -1
  154. package/dist/esm/charts/Axis.native.js.map +1 -1
  155. package/dist/esm/charts/BarChart.native.js.map +1 -1
  156. package/dist/esm/charts/ChartDataView.native.js.map +1 -1
  157. package/dist/esm/charts/ChartSurface.native.js.map +1 -1
  158. package/dist/esm/charts/LineChart.native.js.map +1 -1
  159. package/dist/esm/charts/PieChart.native.js.map +1 -1
  160. package/dist/esm/charts/Sparkline.native.js.map +1 -1
  161. package/dist/esm/charts/accessibility.native.js.map +1 -1
  162. package/dist/esm/charts/composeChart.native.js.map +1 -1
  163. package/dist/esm/charts/index.native.js.map +1 -1
  164. package/dist/esm/charts/math.native.js.map +1 -1
  165. package/dist/esm/charts/series.native.js.map +1 -1
  166. package/dist/esm/charts/svg.native.js.map +1 -1
  167. package/dist/esm/charts/types.native.js.map +1 -1
  168. package/dist/esm/charts/useChartTheme.native.js.map +1 -1
  169. package/dist/esm/code/Code/index.native.js.map +1 -1
  170. package/dist/esm/code/CodeBlock/index.native.js.map +1 -1
  171. package/dist/esm/code/HighlightedCode/index.mjs +4 -3
  172. package/dist/esm/code/HighlightedCode/index.mjs.map +1 -1
  173. package/dist/esm/code/HighlightedCode/index.native.js +4 -3
  174. package/dist/esm/code/HighlightedCode/index.native.js.map +1 -1
  175. package/dist/esm/code/Highlighter/index.native.js.map +1 -1
  176. package/dist/esm/code/Pre/index.native.js.map +1 -1
  177. package/dist/esm/code/index.native.js.map +1 -1
  178. package/dist/esm/componentColors.native.js.map +1 -1
  179. package/dist/esm/feedback/ConfirmDialog.native.js.map +1 -1
  180. package/dist/esm/feedback/NotifyHost.native.js.map +1 -1
  181. package/dist/esm/feedback/copy.native.js.map +1 -1
  182. package/dist/esm/feedback/index.native.js.map +1 -1
  183. package/dist/esm/feedback/notify.native.js.map +1 -1
  184. package/dist/esm/feedback/route.native.js.map +1 -1
  185. package/dist/esm/feedback/store.native.js.map +1 -1
  186. package/dist/esm/hooks/index.native.js.map +1 -1
  187. package/dist/esm/hooks/useClipboard.native.js.map +1 -1
  188. package/dist/esm/hooks/useDocumentTitle.native.js.map +1 -1
  189. package/dist/esm/icons/CheckRegular.native.js.map +1 -1
  190. package/dist/esm/icons/MinusRegular.native.js.map +1 -1
  191. package/dist/esm/icons/index.native.js.map +1 -1
  192. package/dist/esm/icons/lucide.native.js.map +1 -1
  193. package/dist/esm/icons/themed.native.js.map +1 -1
  194. package/dist/esm/images/Image/ImageFrame.native.js.map +1 -1
  195. package/dist/esm/images/Image/shared.native.js.map +1 -1
  196. package/dist/esm/images/Image/types.native.js.map +1 -1
  197. package/dist/esm/images/index.native.js.map +1 -1
  198. package/dist/esm/index.mjs +1 -0
  199. package/dist/esm/index.mjs.map +1 -1
  200. package/dist/esm/index.native.js +1 -0
  201. package/dist/esm/index.native.js.map +1 -1
  202. package/dist/esm/knobImmuneExports.native.js.map +1 -1
  203. package/dist/esm/layouts/AsyncBoundary.native.js.map +1 -1
  204. package/dist/esm/layouts/Debug/index.native.js.map +1 -1
  205. package/dist/esm/layouts/EmptyState.native.js.map +1 -1
  206. package/dist/esm/layouts/KeyboardAvoidingWrapper/behavior.native.js.map +1 -1
  207. package/dist/esm/layouts/PageTemplates.native.js.map +1 -1
  208. package/dist/esm/layouts/PaneScaffold.native.js.map +1 -1
  209. package/dist/esm/layouts/SafeAreaWrapper/insets.native.js.map +1 -1
  210. package/dist/esm/layouts/ViewSwitcher.native.js.map +1 -1
  211. package/dist/esm/layouts/attachments.mjs +1 -1
  212. package/dist/esm/layouts/attachments.mjs.map +1 -1
  213. package/dist/esm/layouts/attachments.native.js +1 -1
  214. package/dist/esm/layouts/attachments.native.js.map +1 -1
  215. package/dist/esm/layouts/breadcrumbs.native.js.map +1 -1
  216. package/dist/esm/layouts/index.native.js.map +1 -1
  217. package/dist/esm/layouts/page.mjs +18 -5
  218. package/dist/esm/layouts/page.mjs.map +1 -1
  219. package/dist/esm/layouts/page.native.js +18 -6
  220. package/dist/esm/layouts/page.native.js.map +1 -1
  221. package/dist/esm/layouts/pageHeadingScope.native.js.map +1 -1
  222. package/dist/esm/layouts/sidebar.mjs +20 -12
  223. package/dist/esm/layouts/sidebar.mjs.map +1 -1
  224. package/dist/esm/layouts/sidebar.native.js +22 -18
  225. package/dist/esm/layouts/sidebar.native.js.map +1 -1
  226. package/dist/esm/layouts/tags.mjs +5 -2
  227. package/dist/esm/layouts/tags.mjs.map +1 -1
  228. package/dist/esm/layouts/tags.native.js +5 -2
  229. package/dist/esm/layouts/tags.native.js.map +1 -1
  230. package/dist/esm/layouts/timeline.mjs +13 -8
  231. package/dist/esm/layouts/timeline.mjs.map +1 -1
  232. package/dist/esm/layouts/timeline.native.js +16 -10
  233. package/dist/esm/layouts/timeline.native.js.map +1 -1
  234. package/dist/esm/layouts/toolbar.mjs +0 -1
  235. package/dist/esm/layouts/toolbar.mjs.map +1 -1
  236. package/dist/esm/layouts/toolbar.native.js +0 -1
  237. package/dist/esm/layouts/toolbar.native.js.map +1 -1
  238. package/dist/esm/shared/actionScan.native.js.map +1 -1
  239. package/dist/esm/shared/i18n.native.js.map +1 -1
  240. package/dist/esm/shared/t.native.js.map +1 -1
  241. package/dist/esm/shared/textRidesText.native.js.map +1 -1
  242. package/dist/esm/shared/useReturnFocusOnClose.native.js.map +1 -1
  243. package/dist/esm/surfaces.native.js.map +1 -1
  244. package/dist/esm/tamagui.native.js.map +1 -1
  245. package/dist/esm/testSetup.native.js.map +1 -1
  246. package/dist/esm/utils/setTinted.native.js.map +1 -1
  247. package/dist/esm/utils/unwrapText.native.js.map +1 -1
  248. package/dist/esm/views/Calendar.mjs +5 -5
  249. package/dist/esm/views/Calendar.mjs.map +1 -1
  250. package/dist/esm/views/Calendar.native.js +5 -5
  251. package/dist/esm/views/Calendar.native.js.map +1 -1
  252. package/dist/esm/views/Dashboard.native.js.map +1 -1
  253. package/dist/esm/views/Gantt.mjs +2 -2
  254. package/dist/esm/views/Gantt.mjs.map +1 -1
  255. package/dist/esm/views/Gantt.native.js +2 -2
  256. package/dist/esm/views/Gantt.native.js.map +1 -1
  257. package/dist/esm/views/ImageGrid.mjs +17 -10
  258. package/dist/esm/views/ImageGrid.mjs.map +1 -1
  259. package/dist/esm/views/ImageGrid.native.js +19 -10
  260. package/dist/esm/views/ImageGrid.native.js.map +1 -1
  261. package/dist/esm/views/List.native.js.map +1 -1
  262. package/dist/esm/views/Matrix.native.js.map +1 -1
  263. package/dist/esm/views/ReportBuilder.native.js.map +1 -1
  264. package/dist/esm/views/TreeView.mjs +5 -2
  265. package/dist/esm/views/TreeView.mjs.map +1 -1
  266. package/dist/esm/views/TreeView.native.js +5 -2
  267. package/dist/esm/views/TreeView.native.js.map +1 -1
  268. package/dist/esm/views/calendarMath.native.js.map +1 -1
  269. package/dist/esm/views/ganttMath.native.js.map +1 -1
  270. package/dist/esm/views/index.native.js.map +1 -1
  271. package/dist/esm/views/kanbanDnd.native.js.map +1 -1
  272. package/dist/esm/views/matrixMath.native.js.map +1 -1
  273. package/dist/esm/views/treeViewDnd.native.js.map +1 -1
  274. package/dist/esm/views/treeViewLayout.native.js.map +1 -1
  275. package/dist/esm/views/treeViewMotion.native.js.map +1 -1
  276. package/dist/esm/views/treeViewReveal.native.js.map +1 -1
  277. package/dist/jsx/Accordion/index.native.js +1 -1
  278. package/dist/jsx/Accordion/index.native.js.map +1 -1
  279. package/dist/jsx/Alert/index.mjs +1 -1
  280. package/dist/jsx/Alert/index.mjs.map +1 -1
  281. package/dist/jsx/Alert/index.native.js +1 -1
  282. package/dist/jsx/Alert/index.native.js.map +1 -1
  283. package/dist/jsx/AnimateHeight/index.native.js.map +1 -1
  284. package/dist/jsx/Avatar/getInitials.native.js.map +1 -1
  285. package/dist/jsx/Avatar/index.mjs +7 -5
  286. package/dist/jsx/Avatar/index.mjs.map +1 -1
  287. package/dist/jsx/Avatar/index.native.js +6 -4
  288. package/dist/jsx/Avatar/index.native.js.map +1 -1
  289. package/dist/jsx/Badge/index.native.js.map +1 -1
  290. package/dist/jsx/Button.native.js.map +1 -1
  291. package/dist/jsx/Card.native.js.map +1 -1
  292. package/dist/jsx/CardFooter.native.js.map +1 -1
  293. package/dist/jsx/CardHeader.native.js.map +1 -1
  294. package/dist/jsx/Carousel/index.native.js +2 -2
  295. package/dist/jsx/Carousel/index.native.js.map +1 -1
  296. package/dist/jsx/Chip/index.native.js.map +1 -1
  297. package/dist/jsx/Collapsible.native.js.map +1 -1
  298. package/dist/jsx/ContextMenu/index.mjs +1 -1
  299. package/dist/jsx/ContextMenu/index.mjs.map +1 -1
  300. package/dist/jsx/ContextMenu/index.native.js +1 -1
  301. package/dist/jsx/ContextMenu/index.native.js.map +1 -1
  302. package/dist/jsx/CopyField/index.native.js.map +1 -1
  303. package/dist/jsx/DotIndicator/index.native.js.map +1 -1
  304. package/dist/jsx/DropdownMenu/index.mjs +1 -1
  305. package/dist/jsx/DropdownMenu/index.mjs.map +1 -1
  306. package/dist/jsx/DropdownMenu/index.native.js +1 -1
  307. package/dist/jsx/DropdownMenu/index.native.js.map +1 -1
  308. package/dist/jsx/ErrorBoundary/index.native.js.map +1 -1
  309. package/dist/jsx/Heading.native.js.map +1 -1
  310. package/dist/jsx/Meter/index.native.js +1 -1
  311. package/dist/jsx/Meter/index.native.js.map +1 -1
  312. package/dist/jsx/Meter/meter.native.js.map +1 -1
  313. package/dist/jsx/Pagination.native.js +1 -1
  314. package/dist/jsx/Pagination.native.js.map +1 -1
  315. package/dist/jsx/ProgressSteps/index.mjs +16 -10
  316. package/dist/jsx/ProgressSteps/index.mjs.map +1 -1
  317. package/dist/jsx/ProgressSteps/index.native.js +16 -10
  318. package/dist/jsx/ProgressSteps/index.native.js.map +1 -1
  319. package/dist/jsx/Quote/index.native.js.map +1 -1
  320. package/dist/jsx/Separator/index.native.js.map +1 -1
  321. package/dist/jsx/SheetModal/detents.native.js.map +1 -1
  322. package/dist/jsx/SheetModal/index.native.js +7 -0
  323. package/dist/jsx/SheetModal/index.native.js.map +1 -1
  324. package/dist/jsx/Skeleton/index.native.js.map +1 -1
  325. package/dist/jsx/SkipLink/index.native.js.map +1 -1
  326. package/dist/jsx/SortableList/SortableHandle.native.js.map +1 -1
  327. package/dist/jsx/SortableList/index.native.js.map +1 -1
  328. package/dist/jsx/SortableList/useSortableRows.native.js.map +1 -1
  329. package/dist/jsx/Tabs/index.mjs +2 -1
  330. package/dist/jsx/Tabs/index.mjs.map +1 -1
  331. package/dist/jsx/Tabs/index.native.js +3 -2
  332. package/dist/jsx/Tabs/index.native.js.map +1 -1
  333. package/dist/jsx/Text.native.js.map +1 -1
  334. package/dist/jsx/ThemePlayground/index.mjs +78 -0
  335. package/dist/jsx/ThemePlayground/index.mjs.map +1 -0
  336. package/dist/jsx/ThemePlayground/index.native.js +33 -0
  337. package/dist/jsx/ThemePlayground/index.native.js.map +1 -0
  338. package/dist/jsx/Toast/index.mjs +2 -2
  339. package/dist/jsx/Toast/index.mjs.map +1 -1
  340. package/dist/jsx/Toast/index.native.js +2 -2
  341. package/dist/jsx/Toast/index.native.js.map +1 -1
  342. package/dist/jsx/Toast/store.native.js.map +1 -1
  343. package/dist/jsx/Tooltip/nativePress.native.js.map +1 -1
  344. package/dist/jsx/Tooltip/tooltipShared.native.js.map +1 -1
  345. package/dist/jsx/TreeSelect/index.mjs +0 -1
  346. package/dist/jsx/TreeSelect/index.mjs.map +1 -1
  347. package/dist/jsx/TreeSelect/index.native.js +1 -2
  348. package/dist/jsx/TreeSelect/index.native.js.map +1 -1
  349. package/dist/jsx/TreeSelect/treeSelectModel.native.js.map +1 -1
  350. package/dist/jsx/Video/PlayerChrome.mjs +2 -2
  351. package/dist/jsx/Video/PlayerChrome.mjs.map +1 -1
  352. package/dist/jsx/Video/PlayerChrome.native.js +2 -2
  353. package/dist/jsx/Video/PlayerChrome.native.js.map +1 -1
  354. package/dist/jsx/Video/VideoFrame.native.js.map +1 -1
  355. package/dist/jsx/Video/types.native.js.map +1 -1
  356. package/dist/jsx/Wheel/index.native.js.map +1 -1
  357. package/dist/jsx/Wizard/index.mjs +33 -33
  358. package/dist/jsx/Wizard/index.mjs.map +1 -1
  359. package/dist/jsx/Wizard/index.native.js +35 -35
  360. package/dist/jsx/Wizard/index.native.js.map +1 -1
  361. package/dist/jsx/actions/ActionBar.native.js.map +1 -1
  362. package/dist/jsx/actions/DestructiveAction.native.js.map +1 -1
  363. package/dist/jsx/actions/devWarn.native.js.map +1 -1
  364. package/dist/jsx/actions/index.native.js.map +1 -1
  365. package/dist/jsx/actions/severity.native.js.map +1 -1
  366. package/dist/jsx/charts/Axis.native.js.map +1 -1
  367. package/dist/jsx/charts/BarChart.native.js.map +1 -1
  368. package/dist/jsx/charts/ChartDataView.native.js.map +1 -1
  369. package/dist/jsx/charts/ChartSurface.native.js.map +1 -1
  370. package/dist/jsx/charts/LineChart.native.js.map +1 -1
  371. package/dist/jsx/charts/PieChart.native.js.map +1 -1
  372. package/dist/jsx/charts/Sparkline.native.js.map +1 -1
  373. package/dist/jsx/charts/accessibility.native.js.map +1 -1
  374. package/dist/jsx/charts/composeChart.native.js.map +1 -1
  375. package/dist/jsx/charts/index.native.js.map +1 -1
  376. package/dist/jsx/charts/math.native.js.map +1 -1
  377. package/dist/jsx/charts/series.native.js.map +1 -1
  378. package/dist/jsx/charts/svg.native.js.map +1 -1
  379. package/dist/jsx/charts/types.native.js.map +1 -1
  380. package/dist/jsx/charts/useChartTheme.native.js.map +1 -1
  381. package/dist/jsx/code/Code/index.native.js.map +1 -1
  382. package/dist/jsx/code/CodeBlock/index.native.js +6 -6
  383. package/dist/jsx/code/CodeBlock/index.native.js.map +1 -1
  384. package/dist/jsx/code/HighlightedCode/index.mjs +4 -3
  385. package/dist/jsx/code/HighlightedCode/index.mjs.map +1 -1
  386. package/dist/jsx/code/HighlightedCode/index.native.js +3 -2
  387. package/dist/jsx/code/HighlightedCode/index.native.js.map +1 -1
  388. package/dist/jsx/code/Highlighter/index.native.js.map +1 -1
  389. package/dist/jsx/code/Pre/index.native.js.map +1 -1
  390. package/dist/jsx/code/index.native.js +5 -5
  391. package/dist/jsx/code/index.native.js.map +1 -1
  392. package/dist/jsx/componentColors.native.js.map +1 -1
  393. package/dist/jsx/feedback/ConfirmDialog.native.js.map +1 -1
  394. package/dist/jsx/feedback/NotifyHost.native.js +2 -2
  395. package/dist/jsx/feedback/NotifyHost.native.js.map +1 -1
  396. package/dist/jsx/feedback/copy.native.js.map +1 -1
  397. package/dist/jsx/feedback/index.native.js.map +1 -1
  398. package/dist/jsx/feedback/notify.native.js.map +1 -1
  399. package/dist/jsx/feedback/route.native.js.map +1 -1
  400. package/dist/jsx/feedback/store.native.js.map +1 -1
  401. package/dist/jsx/hooks/index.native.js +1 -1
  402. package/dist/jsx/hooks/index.native.js.map +1 -1
  403. package/dist/jsx/hooks/useClipboard.native.js.map +1 -1
  404. package/dist/jsx/hooks/useDocumentTitle.native.js.map +1 -1
  405. package/dist/jsx/icons/CheckRegular.native.js.map +1 -1
  406. package/dist/jsx/icons/MinusRegular.native.js.map +1 -1
  407. package/dist/jsx/icons/index.native.js.map +1 -1
  408. package/dist/jsx/icons/lucide.native.js.map +1 -1
  409. package/dist/jsx/icons/themed.native.js.map +1 -1
  410. package/dist/jsx/images/Image/ImageFrame.native.js +1 -1
  411. package/dist/jsx/images/Image/ImageFrame.native.js.map +1 -1
  412. package/dist/jsx/images/Image/index.native.js +1 -1
  413. package/dist/jsx/images/Image/shared.native.js +1 -1
  414. package/dist/jsx/images/Image/shared.native.js.map +1 -1
  415. package/dist/jsx/images/Image/types.native.js.map +1 -1
  416. package/dist/jsx/images/index.native.js.map +1 -1
  417. package/dist/jsx/index.js +1 -0
  418. package/dist/jsx/index.js.map +1 -1
  419. package/dist/jsx/index.mjs +1 -0
  420. package/dist/jsx/index.mjs.map +1 -1
  421. package/dist/jsx/index.native.js +30 -29
  422. package/dist/jsx/index.native.js.map +1 -1
  423. package/dist/jsx/knobImmuneExports.native.js.map +1 -1
  424. package/dist/jsx/layouts/AsyncBoundary.native.js +2 -2
  425. package/dist/jsx/layouts/AsyncBoundary.native.js.map +1 -1
  426. package/dist/jsx/layouts/Debug/index.native.js.map +1 -1
  427. package/dist/jsx/layouts/EmptyState.native.js.map +1 -1
  428. package/dist/jsx/layouts/KeyboardAvoidingWrapper/behavior.native.js.map +1 -1
  429. package/dist/jsx/layouts/PageTemplates.native.js.map +1 -1
  430. package/dist/jsx/layouts/PaneScaffold.native.js.map +1 -1
  431. package/dist/jsx/layouts/SafeAreaWrapper/insets.native.js.map +1 -1
  432. package/dist/jsx/layouts/ViewSwitcher.native.js.map +1 -1
  433. package/dist/jsx/layouts/attachments.mjs +1 -1
  434. package/dist/jsx/layouts/attachments.mjs.map +1 -1
  435. package/dist/jsx/layouts/attachments.native.js +2 -2
  436. package/dist/jsx/layouts/attachments.native.js.map +1 -1
  437. package/dist/jsx/layouts/breadcrumbs.native.js.map +1 -1
  438. package/dist/jsx/layouts/index.native.js +3 -3
  439. package/dist/jsx/layouts/index.native.js.map +1 -1
  440. package/dist/jsx/layouts/page.mjs +18 -5
  441. package/dist/jsx/layouts/page.mjs.map +1 -1
  442. package/dist/jsx/layouts/page.native.js +18 -6
  443. package/dist/jsx/layouts/page.native.js.map +1 -1
  444. package/dist/jsx/layouts/pageHeadingScope.native.js.map +1 -1
  445. package/dist/jsx/layouts/sidebar.mjs +20 -12
  446. package/dist/jsx/layouts/sidebar.mjs.map +1 -1
  447. package/dist/jsx/layouts/sidebar.native.js +22 -18
  448. package/dist/jsx/layouts/sidebar.native.js.map +1 -1
  449. package/dist/jsx/layouts/tags.mjs +5 -2
  450. package/dist/jsx/layouts/tags.mjs.map +1 -1
  451. package/dist/jsx/layouts/tags.native.js +5 -2
  452. package/dist/jsx/layouts/tags.native.js.map +1 -1
  453. package/dist/jsx/layouts/timeline.mjs +13 -8
  454. package/dist/jsx/layouts/timeline.mjs.map +1 -1
  455. package/dist/jsx/layouts/timeline.native.js +17 -11
  456. package/dist/jsx/layouts/timeline.native.js.map +1 -1
  457. package/dist/jsx/layouts/toolbar.mjs +0 -1
  458. package/dist/jsx/layouts/toolbar.mjs.map +1 -1
  459. package/dist/jsx/layouts/toolbar.native.js +0 -1
  460. package/dist/jsx/layouts/toolbar.native.js.map +1 -1
  461. package/dist/jsx/shared/actionScan.native.js.map +1 -1
  462. package/dist/jsx/shared/i18n.native.js.map +1 -1
  463. package/dist/jsx/shared/t.native.js.map +1 -1
  464. package/dist/jsx/shared/textRidesText.native.js.map +1 -1
  465. package/dist/jsx/shared/useReturnFocusOnClose.native.js.map +1 -1
  466. package/dist/jsx/surfaces.native.js +1 -1
  467. package/dist/jsx/surfaces.native.js.map +1 -1
  468. package/dist/jsx/tamagui.native.js +1 -1
  469. package/dist/jsx/tamagui.native.js.map +1 -1
  470. package/dist/jsx/testSetup.native.js.map +1 -1
  471. package/dist/jsx/utils/setTinted.native.js.map +1 -1
  472. package/dist/jsx/utils/unwrapText.native.js.map +1 -1
  473. package/dist/jsx/views/Calendar.mjs +5 -5
  474. package/dist/jsx/views/Calendar.mjs.map +1 -1
  475. package/dist/jsx/views/Calendar.native.js +5 -5
  476. package/dist/jsx/views/Calendar.native.js.map +1 -1
  477. package/dist/jsx/views/Dashboard.native.js +1 -1
  478. package/dist/jsx/views/Dashboard.native.js.map +1 -1
  479. package/dist/jsx/views/Gantt.mjs +2 -2
  480. package/dist/jsx/views/Gantt.mjs.map +1 -1
  481. package/dist/jsx/views/Gantt.native.js +3 -3
  482. package/dist/jsx/views/Gantt.native.js.map +1 -1
  483. package/dist/jsx/views/ImageGrid.mjs +17 -10
  484. package/dist/jsx/views/ImageGrid.mjs.map +1 -1
  485. package/dist/jsx/views/ImageGrid.native.js +20 -11
  486. package/dist/jsx/views/ImageGrid.native.js.map +1 -1
  487. package/dist/jsx/views/Kanban.native.js +1 -1
  488. package/dist/jsx/views/List.native.js.map +1 -1
  489. package/dist/jsx/views/Matrix.native.js +1 -1
  490. package/dist/jsx/views/Matrix.native.js.map +1 -1
  491. package/dist/jsx/views/ReportBuilder.native.js +1 -1
  492. package/dist/jsx/views/ReportBuilder.native.js.map +1 -1
  493. package/dist/jsx/views/TreeView.mjs +5 -2
  494. package/dist/jsx/views/TreeView.mjs.map +1 -1
  495. package/dist/jsx/views/TreeView.native.js +4 -1
  496. package/dist/jsx/views/TreeView.native.js.map +1 -1
  497. package/dist/jsx/views/calendarMath.native.js.map +1 -1
  498. package/dist/jsx/views/ganttMath.native.js.map +1 -1
  499. package/dist/jsx/views/index.native.js +1 -1
  500. package/dist/jsx/views/index.native.js.map +1 -1
  501. package/dist/jsx/views/kanbanDnd.native.js.map +1 -1
  502. package/dist/jsx/views/matrixMath.native.js.map +1 -1
  503. package/dist/jsx/views/treeViewDnd.native.js.map +1 -1
  504. package/dist/jsx/views/treeViewLayout.native.js.map +1 -1
  505. package/dist/jsx/views/treeViewMotion.native.js.map +1 -1
  506. package/dist/jsx/views/treeViewReveal.native.js.map +1 -1
  507. package/package.json +13 -9
  508. package/src/Alert/index.tsx +1 -1
  509. package/src/Avatar/index.tsx +10 -4
  510. package/src/ContextMenu/index.tsx +1 -1
  511. package/src/DropdownMenu/index.tsx +1 -1
  512. package/src/ProgressSteps/index.tsx +21 -14
  513. package/src/SheetModal/SheetModal.touch.spec.tsx +42 -1
  514. package/src/SheetModal/index.native.tsx +15 -1
  515. package/src/Tabs/index.tsx +6 -2
  516. package/src/ThemePlayground/ThemePlayground.spec.tsx +36 -0
  517. package/src/ThemePlayground/index.native.tsx +8 -0
  518. package/src/ThemePlayground/index.tsx +83 -0
  519. package/src/Toast/index.tsx +2 -2
  520. package/src/TreeSelect/index.tsx +1 -7
  521. package/src/Video/PlayerChrome.tsx +2 -2
  522. package/src/Wizard/index.tsx +34 -33
  523. package/src/code/HighlightedCode/index.tsx +4 -3
  524. package/src/index.ts +1 -0
  525. package/src/layouts/Timeline.stories.tsx +17 -16
  526. package/src/layouts/attachments.tsx +2 -1
  527. package/src/layouts/page.tsx +12 -9
  528. package/src/layouts/sidebar.tsx +21 -20
  529. package/src/layouts/tags.tsx +5 -2
  530. package/src/layouts/timeline.tsx +31 -26
  531. package/src/layouts/toolbar.tsx +0 -1
  532. package/src/views/Calendar.tsx +6 -15
  533. package/src/views/Gantt.tsx +2 -2
  534. package/src/views/ImageGrid.tsx +15 -16
  535. package/src/views/Kanban.stories.tsx +3 -3
  536. package/src/views/TreeView.tsx +5 -3
  537. package/types/Avatar/index.d.ts.map +1 -1
  538. package/types/ProgressSteps/index.d.ts.map +1 -1
  539. package/types/SheetModal/index.native.d.ts.map +1 -1
  540. package/types/Tabs/index.d.ts.map +1 -1
  541. package/types/ThemePlayground/index.d.ts +11 -0
  542. package/types/ThemePlayground/index.d.ts.map +1 -0
  543. package/types/ThemePlayground/index.native.d.ts +5 -0
  544. package/types/ThemePlayground/index.native.d.ts.map +1 -0
  545. package/types/TreeSelect/index.d.ts.map +1 -1
  546. package/types/Wizard/index.d.ts.map +1 -1
  547. package/types/code/HighlightedCode/index.d.ts.map +1 -1
  548. package/types/index.d.ts +1 -0
  549. package/types/index.d.ts.map +1 -1
  550. package/types/layouts/attachments.d.ts.map +1 -1
  551. package/types/layouts/page.d.ts.map +1 -1
  552. package/types/layouts/sidebar.d.ts.map +1 -1
  553. package/types/layouts/tags.d.ts.map +1 -1
  554. package/types/layouts/timeline.d.ts.map +1 -1
  555. package/types/views/Calendar.d.ts.map +1 -1
  556. package/types/views/ImageGrid.d.ts.map +1 -1
  557. package/types/views/TreeView.d.ts.map +1 -1
@@ -61,13 +61,17 @@ function ImageGridSkeleton({
61
61
  }, i))
62
62
  });
63
63
  }
64
+ const tileTrack = {
65
+ flexGrow: 1,
66
+ flexShrink: 1,
67
+ flexBasis: 0,
68
+ minWidth: 0
69
+ };
64
70
  function ImageGridTile({
65
71
  id,
66
72
  isFocused,
67
73
  showRing,
68
74
  clickable,
69
- cellPadding,
70
- columns,
71
75
  colIndex,
72
76
  rowIndex,
73
77
  radiusFragment,
@@ -77,8 +81,7 @@ function ImageGridTile({
77
81
  const radius = radiusFragment.borderRadius;
78
82
  const [hovered, setHovered] = (0, import_react.useState)(false);
79
83
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
80
- width: `${100 / columns}%`,
81
- padding: cellPadding,
84
+ ...tileTrack,
82
85
  role: "presentation",
83
86
  children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.View, {
84
87
  id,
@@ -261,15 +264,16 @@ function ImageGrid({
261
264
  } : void 0
262
265
  } : null),
263
266
  children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
264
- margin: -cellPadding,
267
+ gap: gutter,
265
268
  children: Array.from({
266
269
  length: rowCount
267
270
  }, (_, row) => {
268
271
  const start = row * columns;
269
272
  const rowItems = items.slice(start, start + columns);
270
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
273
+ return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
271
274
  role: "row",
272
- children: rowItems.map((item, col) => {
275
+ gap: gutter,
276
+ children: [rowItems.map((item, col) => {
273
277
  const index = start + col;
274
278
  const isFocused = effectiveFocused === index;
275
279
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ImageGridTile, {
@@ -277,8 +281,6 @@ function ImageGrid({
277
281
  isFocused,
278
282
  showRing: isFocused && showKeyboardRing,
279
283
  clickable: Boolean(onItemClick),
280
- cellPadding,
281
- columns,
282
284
  colIndex: col + 1,
283
285
  rowIndex: row + 1,
284
286
  radiusFragment,
@@ -288,7 +290,12 @@ function ImageGrid({
288
290
  } : void 0,
289
291
  children: renderItem(item)
290
292
  }, `${gridId}-item-${index}`);
291
- })
293
+ }), Array.from({
294
+ length: columns - rowItems.length
295
+ }, (_2, pad) => /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
296
+ ...tileTrack,
297
+ "aria-hidden": true
298
+ }, `${gridId}-pad-${row}-${pad}`))]
292
299
  }, `${gridId}-row-${row}`);
293
300
  })
294
301
  }), isLoading && items.length > 0 && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
@@ -77,14 +77,18 @@ function ImageGridSkeleton(param) {
77
77
  })
78
78
  });
79
79
  }
80
+ var tileTrack = {
81
+ flexGrow: 1,
82
+ flexShrink: 1,
83
+ flexBasis: 0,
84
+ minWidth: 0
85
+ };
80
86
  function ImageGridTile(param) {
81
87
  var {
82
88
  id,
83
89
  isFocused,
84
90
  showRing,
85
91
  clickable,
86
- cellPadding,
87
- columns,
88
92
  colIndex,
89
93
  rowIndex,
90
94
  radiusFragment,
@@ -94,8 +98,7 @@ function ImageGridTile(param) {
94
98
  var radius = radiusFragment.borderRadius;
95
99
  var [hovered, setHovered] = (0, import_react.useState)(false);
96
100
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
97
- width: `${100 / columns}%`,
98
- padding: cellPadding,
101
+ ...tileTrack,
99
102
  role: "presentation",
100
103
  children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.View, {
101
104
  id,
@@ -307,15 +310,16 @@ function ImageGrid(param) {
307
310
  } : void 0
308
311
  } : null),
309
312
  children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
310
- margin: -cellPadding,
313
+ gap: gutter,
311
314
  children: Array.from({
312
315
  length: rowCount
313
316
  }, function (_, row) {
314
317
  var start = row * columns;
315
318
  var rowItems = items.slice(start, start + columns);
316
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
319
+ return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
317
320
  role: "row",
318
- children: rowItems.map(function (item, col) {
321
+ gap: gutter,
322
+ children: [rowItems.map(function (item, col) {
319
323
  var index = start + col;
320
324
  var isFocused = effectiveFocused === index;
321
325
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(ImageGridTile, {
@@ -323,8 +327,6 @@ function ImageGrid(param) {
323
327
  isFocused,
324
328
  showRing: isFocused && showKeyboardRing,
325
329
  clickable: Boolean(onItemClick),
326
- cellPadding,
327
- columns,
328
330
  colIndex: col + 1,
329
331
  rowIndex: row + 1,
330
332
  radiusFragment,
@@ -334,7 +336,14 @@ function ImageGrid(param) {
334
336
  } : void 0,
335
337
  children: renderItem(item)
336
338
  }, `${gridId}-item-${index}`);
337
- })
339
+ }), Array.from({
340
+ length: columns - rowItems.length
341
+ }, function (_2, pad) {
342
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
343
+ ...tileTrack,
344
+ "aria-hidden": true
345
+ }, `${gridId}-pad-${row}-${pad}`);
346
+ })]
338
347
  }, `${gridId}-row-${row}`);
339
348
  })
340
349
  }), isLoading && items.length > 0 && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
@@ -1 +1 @@
1
- {"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","ImageGrid_exports","ImageGrid","module","exports","import_jsx_runtime","require","import_AsyncBoundary","import_Skeleton","import_useDirection","import_forms","import_theme","import_react_hotkeys","import_react","import_i18n","import_tamagui","ImageGridSkeleton","param","columns","cellPadding","aspect","loadingLabel","jsx","XStack","flexWrap","margin","children","Array","length","map","_","i","View","width","padding","Skeleton","variant","aspectRatio","ImageGridTile","id","isFocused","showRing","clickable","colIndex","rowIndex","radiusFragment","onPress","radius","borderRadius","hovered","setHovered","useState","role","jsxs","position","borderWidth","cursor","keyboardFocusRingProps","outlineWidth","onHoverIn","onHoverOut","overflow","inset","pointerEvents","backgroundColor","opacity","items","renderItem","onItemClick","onLoadMore","hasMore","isLoading","error","onRetry","columnsProp","tileSize","mediaAspect","estimateSize","_estimateSize","overscan","_overscan","height","heightProp","emptyMessage","emptyMessageProp","hotkeys","hotkeyOverrides","stackProps","_getTokenValue","_ref","_ref1","_ref2","_ref3","_ref4","_ref5","_ref6","t","useTranslation","knobProps","useResolvedKnobs","component","isRTL","useDirection","gapToken","gap","gutter","getTokenValue","windowWidth","useWindowDimensions","columnsBySizeClass","compact","medium","expanded","large","xl","tileColumnsForWidth","tileSizeLadder","getLayoutSizeClass","gridId","useId","containerRef","useRef","sentinelRef","focusedIndex","setFocusedIndex","document","ensureKeyboardModalityTracking","handleContainerFocus","useCallback","wasKeyboardFocus","prev","scrollToIndex","index","_document_getElementById","getElementById","scrollIntoView","block","moveFocus","delta","next","Math","max","min","hotkeyOpts","useHotkey","right","left","down","up","activateFocused","select","first","last","useEffect","IntersectionObserver","el","current","observer","entries","some","entry","isIntersecting","observe","disconnect","hasError","resolveAsyncStatus","effectiveFocused","showKeyboardRing","rowCount","ceil","gridBody","ref","tabIndex","focusStyle","focusVisibleStyle","onFocus","style","overflowY","onScroll","scrollTop","clientHeight","scrollHeight","YStack","row","start","rowItems","slice","item","col","Boolean","alignItems","Spinner","size","AsyncBoundary","errorTitle","emptyTitle","loading","resolveMediaAspect","empty"],"sources":["ImageGrid.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar ImageGrid_exports = {};\n__export(ImageGrid_exports, {\n ImageGrid: () => ImageGrid\n});\nmodule.exports = __toCommonJS(ImageGrid_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_AsyncBoundary = require(\"../layouts/AsyncBoundary\");\nvar import_Skeleton = require(\"../Skeleton\");\nvar import_useDirection = require(\"../hooks/useDirection\");\nvar import_forms = require(\"@multiplatform.one/forms\");\nvar import_theme = require(\"@multiplatform.one/theme\");\nvar import_react_hotkeys = require(\"@tanstack/react-hotkeys\");\nvar import_react = __toESM(require(\"react\"));\nvar import_i18n = require(\"../shared/i18n\");\nvar import_tamagui = require(\"tamagui\");\nfunction ImageGridSkeleton(param) {\n var { columns, cellPadding, aspect, loadingLabel } = param;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.XStack, {\n flexWrap: \"wrap\",\n margin: -cellPadding,\n \"data-async-skeleton\": \"image-grid\",\n \"data-media-aspect\": aspect,\n \"aria-busy\": true,\n \"aria-label\": loadingLabel,\n children: Array.from({\n length: columns * 2\n }).map(function(_, i) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n width: `${100 / columns}%`,\n padding: cellPadding,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Skeleton.Skeleton, {\n variant: \"rounded\",\n width: \"100%\",\n aspectRatio: aspect\n })\n }, i);\n })\n });\n}\nfunction ImageGridTile(param) {\n var { id, isFocused, showRing, clickable, cellPadding, columns, colIndex, rowIndex, radiusFragment, onPress, children } = param;\n var radius = radiusFragment.borderRadius;\n var [hovered, setHovered] = (0, import_react.useState)(false);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n width: `${100 / columns}%`,\n padding: cellPadding,\n role: \"presentation\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n id,\n // \"gridcell\" is a valid ARIA role but outside RN's `Role` union;\n // forwarded to the DOM node on web (house Record cast).\n ...{\n role: \"gridcell\"\n },\n \"aria-colindex\": colIndex,\n \"aria-rowindex\": rowIndex,\n \"aria-selected\": isFocused,\n \"data-focused\": isFocused || void 0,\n \"data-media-tile\": \"image-grid\",\n position: \"relative\",\n ...radiusFragment,\n borderWidth: 0,\n cursor: clickable ? \"pointer\" : void 0,\n ...showRing ? import_theme.keyboardFocusRingProps : {\n outlineWidth: 0\n },\n // Tamagui forwards onHoverIn/onHoverOut at runtime; the RN-flavored\n // View prop type omits them (house Record cast).\n ...{\n onHoverIn: function onHoverIn() {\n return setHovered(true);\n },\n onHoverOut: function onHoverOut() {\n return setHovered(false);\n }\n },\n onPress,\n children: [\n /* Clip media to the radius; keep overflow off the ring node so\n LC-71 outline is not severed (same split as Input.Box). */\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n borderRadius: radius,\n overflow: \"hidden\",\n children\n }),\n hovered && !showRing ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n position: \"absolute\",\n inset: 0,\n pointerEvents: \"none\",\n backgroundColor: \"$color12\",\n opacity: 0.08,\n borderRadius: radius\n }) : null\n ]\n })\n });\n}\nfunction ImageGrid(param) {\n var { items, renderItem, onItemClick, onLoadMore, hasMore = false, isLoading = false, error = null, onRetry, columns: columnsProp, tileSize, mediaAspect, estimateSize: _estimateSize, overscan: _overscan, height: heightProp, emptyMessage: emptyMessageProp, hotkeys: hotkeyOverrides, ...stackProps } = param;\n var _getTokenValue, _ref, _ref1, _ref2, _ref3, _ref4, _ref5, _ref6;\n var { t } = (0, import_i18n.useTranslation)();\n var emptyMessage = emptyMessageProp !== null && emptyMessageProp !== void 0 ? emptyMessageProp : t(\"No items found\");\n var { knobProps } = (0, import_theme.useResolvedKnobs)({\n component: \"ImageGrid\"\n });\n var isRTL = (0, import_useDirection.useDirection)() === \"rtl\";\n var gapToken = knobProps.gap.gap;\n var gutter = typeof gapToken === \"number\" ? gapToken : (_getTokenValue = (0, import_tamagui.getTokenValue)(gapToken, \"space\")) !== null && _getTokenValue !== void 0 ? _getTokenValue : 16;\n var cellPadding = gutter / 2;\n var { width: windowWidth } = (0, import_tamagui.useWindowDimensions)();\n var columnsBySizeClass = {\n compact: 2,\n medium: 3,\n expanded: 4,\n large: 5,\n xl: 5\n };\n var columns = columnsProp !== null && columnsProp !== void 0 ? columnsProp : tileSize ? (0, import_theme.tileColumnsForWidth)(windowWidth, import_theme.tileSizeLadder[tileSize], gutter) : columnsBySizeClass[(0, import_theme.getLayoutSizeClass)(windowWidth)];\n var height = heightProp;\n var gridId = (0, import_react.useId)();\n var containerRef = (0, import_react.useRef)(null);\n var sentinelRef = (0, import_react.useRef)(null);\n var [focusedIndex, setFocusedIndex] = (0, import_react.useState)(-1);\n if (typeof document !== \"undefined\") (0, import_theme.ensureKeyboardModalityTracking)();\n var handleContainerFocus = (0, import_react.useCallback)(function() {\n if (!(0, import_theme.wasKeyboardFocus)()) return;\n setFocusedIndex(function(prev) {\n return prev < 0 ? 0 : prev;\n });\n }, []);\n var scrollToIndex = (0, import_react.useCallback)(function(index) {\n if (index >= 0 && index < items.length) {\n var _document_getElementById;\n (_document_getElementById = document.getElementById(`${gridId}-item-${index}`)) === null || _document_getElementById === void 0 ? void 0 : _document_getElementById.scrollIntoView({\n block: \"nearest\"\n });\n }\n }, [\n gridId,\n items.length\n ]);\n var moveFocus = (0, import_react.useCallback)(function(delta) {\n setFocusedIndex(function(prev) {\n if (items.length === 0) return prev;\n if (prev < 0) {\n scrollToIndex(0);\n return 0;\n }\n var next = Math.max(0, Math.min(items.length - 1, prev + delta));\n scrollToIndex(next);\n return next;\n });\n }, [\n items.length,\n scrollToIndex\n ]);\n var hotkeyOpts = {\n target: containerRef\n };\n (0, import_react_hotkeys.useHotkey)((_ref = hotkeyOverrides === null || hotkeyOverrides === void 0 ? void 0 : hotkeyOverrides.right) !== null && _ref !== void 0 ? _ref : \"ArrowRight\", function() {\n return moveFocus(isRTL ? -1 : 1);\n }, hotkeyOpts);\n (0, import_react_hotkeys.useHotkey)((_ref1 = hotkeyOverrides === null || hotkeyOverrides === void 0 ? void 0 : hotkeyOverrides.left) !== null && _ref1 !== void 0 ? _ref1 : \"ArrowLeft\", function() {\n return moveFocus(isRTL ? 1 : -1);\n }, hotkeyOpts);\n (0, import_react_hotkeys.useHotkey)((_ref2 = hotkeyOverrides === null || hotkeyOverrides === void 0 ? void 0 : hotkeyOverrides.down) !== null && _ref2 !== void 0 ? _ref2 : \"ArrowDown\", function() {\n return moveFocus(columns);\n }, hotkeyOpts);\n (0, import_react_hotkeys.useHotkey)((_ref3 = hotkeyOverrides === null || hotkeyOverrides === void 0 ? void 0 : hotkeyOverrides.up) !== null && _ref3 !== void 0 ? _ref3 : \"ArrowUp\", function() {\n return moveFocus(-columns);\n }, hotkeyOpts);\n var activateFocused = (0, import_react.useCallback)(function() {\n if (focusedIndex >= 0 && focusedIndex < items.length) {\n onItemClick === null || onItemClick === void 0 ? void 0 : onItemClick(items[focusedIndex]);\n }\n }, [\n focusedIndex,\n items,\n onItemClick\n ]);\n (0, import_react_hotkeys.useHotkey)((_ref4 = hotkeyOverrides === null || hotkeyOverrides === void 0 ? void 0 : hotkeyOverrides.select) !== null && _ref4 !== void 0 ? _ref4 : \"Enter\", activateFocused, hotkeyOpts);\n (0, import_react_hotkeys.useHotkey)(\"Space\", activateFocused, hotkeyOpts);\n (0, import_react_hotkeys.useHotkey)((_ref5 = hotkeyOverrides === null || hotkeyOverrides === void 0 ? void 0 : hotkeyOverrides.first) !== null && _ref5 !== void 0 ? _ref5 : \"Home\", function() {\n if (items.length === 0) return;\n setFocusedIndex(0);\n scrollToIndex(0);\n }, hotkeyOpts);\n (0, import_react_hotkeys.useHotkey)((_ref6 = hotkeyOverrides === null || hotkeyOverrides === void 0 ? void 0 : hotkeyOverrides.last) !== null && _ref6 !== void 0 ? _ref6 : \"End\", function() {\n if (items.length === 0) return;\n var last = items.length - 1;\n setFocusedIndex(last);\n scrollToIndex(last);\n }, hotkeyOpts);\n (0, import_react.useEffect)(function() {\n if (height !== void 0 || !onLoadMore || !hasMore || isLoading) return;\n if (typeof IntersectionObserver === \"undefined\") return;\n var el = sentinelRef.current;\n if (!el) return;\n var observer = new IntersectionObserver(function(entries) {\n if (entries.some(function(entry) {\n return entry.isIntersecting;\n })) onLoadMore();\n });\n observer.observe(el);\n return function() {\n return observer.disconnect();\n };\n }, [\n height,\n onLoadMore,\n hasMore,\n isLoading\n ]);\n var hasError = (0, import_AsyncBoundary.resolveAsyncStatus)({\n error\n }) === \"error\";\n var effectiveFocused = focusedIndex >= items.length ? -1 : focusedIndex;\n var showKeyboardRing = effectiveFocused >= 0 && (0, import_theme.wasKeyboardFocus)();\n var rowCount = Math.ceil(items.length / columns);\n var radiusFragment = knobProps.borderRadius;\n var gridBody = items.length === 0 ? null : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n ref: containerRef,\n role: \"grid\",\n \"aria-label\": t(\"Image grid\"),\n \"aria-colcount\": columns,\n \"aria-rowcount\": rowCount,\n \"aria-activedescendant\": effectiveFocused >= 0 ? `${gridId}-item-${effectiveFocused}` : void 0,\n tabIndex: 0,\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: {\n outlineWidth: 0\n },\n onFocus: handleContainerFocus,\n ...height !== void 0 ? {\n style: {\n height,\n overflowY: \"auto\"\n },\n onScroll: onLoadMore && hasMore && !isLoading ? function() {\n var el = containerRef.current;\n if (el && el.scrollTop + el.clientHeight >= el.scrollHeight - 50) {\n onLoadMore();\n }\n } : void 0\n } : null,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.YStack, {\n margin: -cellPadding,\n children: Array.from({\n length: rowCount\n }, function(_, row) {\n var start = row * columns;\n var rowItems = items.slice(start, start + columns);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.XStack, {\n role: \"row\",\n children: rowItems.map(function(item, col) {\n var index = start + col;\n var isFocused = effectiveFocused === index;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ImageGridTile, {\n id: `${gridId}-item-${index}`,\n isFocused,\n showRing: isFocused && showKeyboardRing,\n clickable: Boolean(onItemClick),\n cellPadding,\n columns,\n colIndex: col + 1,\n rowIndex: row + 1,\n radiusFragment,\n onPress: onItemClick ? function() {\n setFocusedIndex(index);\n onItemClick(item);\n } : void 0,\n children: renderItem(item)\n }, `${gridId}-item-${index}`);\n })\n }, `${gridId}-row-${row}`);\n })\n }),\n isLoading && items.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.YStack, {\n padding: \"$2\",\n alignItems: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_forms.Spinner, {\n size: \"small\"\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ref: sentinelRef,\n height: 1\n })\n ]\n });\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_AsyncBoundary.AsyncBoundary, {\n compact: true,\n error,\n onRetry,\n errorTitle: t(\"Couldn't load images\"),\n emptyTitle: emptyMessage,\n loading: !hasError && isLoading && items.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ImageGridSkeleton, {\n columns,\n cellPadding,\n aspect: (0, import_theme.resolveMediaAspect)(mediaAspect),\n loadingLabel: t(\"Loading\")\n }) : false,\n empty: !hasError && items.length === 0,\n ...stackProps,\n children: gridBody\n });\n}\n//# sourceMappingURL=ImageGrid.js.map\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","ImageGrid_exports","ImageGrid","module","exports","import_jsx_runtime","require","import_AsyncBoundary","import_Skeleton","import_useDirection","import_forms","import_theme","import_react_hotkeys","import_react","import_i18n","import_tamagui","ImageGridSkeleton","param","columns","cellPadding","aspect","loadingLabel","jsx","XStack","flexWrap","margin","children","Array","length","map","_","i","View","width","padding","Skeleton","variant","aspectRatio","tileTrack","flexGrow","flexShrink","flexBasis","minWidth","ImageGridTile","id","isFocused","showRing","clickable","colIndex","rowIndex","radiusFragment","onPress","radius","borderRadius","hovered","setHovered","useState","role","jsxs","position","borderWidth","cursor","keyboardFocusRingProps","outlineWidth","onHoverIn","onHoverOut","overflow","inset","pointerEvents","backgroundColor","opacity","items","renderItem","onItemClick","onLoadMore","hasMore","isLoading","error","onRetry","columnsProp","tileSize","mediaAspect","estimateSize","_estimateSize","overscan","_overscan","height","heightProp","emptyMessage","emptyMessageProp","hotkeys","hotkeyOverrides","stackProps","_getTokenValue","_ref","_ref1","_ref2","_ref3","_ref4","_ref5","_ref6","t","useTranslation","knobProps","useResolvedKnobs","component","isRTL","useDirection","gapToken","gap","gutter","getTokenValue","windowWidth","useWindowDimensions","columnsBySizeClass","compact","medium","expanded","large","xl","tileColumnsForWidth","tileSizeLadder","getLayoutSizeClass","gridId","useId","containerRef","useRef","sentinelRef","focusedIndex","setFocusedIndex","document","ensureKeyboardModalityTracking","handleContainerFocus","useCallback","wasKeyboardFocus","prev","scrollToIndex","index","_document_getElementById","getElementById","scrollIntoView","block","moveFocus","delta","next","Math","max","min","hotkeyOpts","useHotkey","right","left","down","up","activateFocused","select","first","last","useEffect","IntersectionObserver","el","current","observer","entries","some","entry","isIntersecting","observe","disconnect","hasError","resolveAsyncStatus","effectiveFocused","showKeyboardRing","rowCount","ceil","gridBody","ref","tabIndex","focusStyle","focusVisibleStyle","onFocus","style","overflowY","onScroll","scrollTop","clientHeight","scrollHeight","YStack","row","start","rowItems","slice","item","col","Boolean","_2","pad","alignItems","Spinner","size","AsyncBoundary","errorTitle","emptyTitle","loading","resolveMediaAspect","empty"],"sources":["ImageGrid.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar ImageGrid_exports = {};\n__export(ImageGrid_exports, {\n ImageGrid: () => ImageGrid\n});\nmodule.exports = __toCommonJS(ImageGrid_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_AsyncBoundary = require(\"../layouts/AsyncBoundary\");\nvar import_Skeleton = require(\"../Skeleton\");\nvar import_useDirection = require(\"../hooks/useDirection\");\nvar import_forms = require(\"@multiplatform.one/forms\");\nvar import_theme = require(\"@multiplatform.one/theme\");\nvar import_react_hotkeys = require(\"@tanstack/react-hotkeys\");\nvar import_react = __toESM(require(\"react\"));\nvar import_i18n = require(\"../shared/i18n\");\nvar import_tamagui = require(\"tamagui\");\nfunction ImageGridSkeleton(param) {\n var { columns, cellPadding, aspect, loadingLabel } = param;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.XStack, {\n flexWrap: \"wrap\",\n margin: -cellPadding,\n \"data-async-skeleton\": \"image-grid\",\n \"data-media-aspect\": aspect,\n \"aria-busy\": true,\n \"aria-label\": loadingLabel,\n children: Array.from({\n length: columns * 2\n }).map(function(_, i) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n width: `${100 / columns}%`,\n padding: cellPadding,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Skeleton.Skeleton, {\n variant: \"rounded\",\n width: \"100%\",\n aspectRatio: aspect\n })\n }, i);\n })\n });\n}\nvar tileTrack = {\n flexGrow: 1,\n flexShrink: 1,\n flexBasis: 0,\n minWidth: 0\n};\nfunction ImageGridTile(param) {\n var { id, isFocused, showRing, clickable, colIndex, rowIndex, radiusFragment, onPress, children } = param;\n var radius = radiusFragment.borderRadius;\n var [hovered, setHovered] = (0, import_react.useState)(false);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...tileTrack,\n role: \"presentation\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n id,\n // \"gridcell\" is a valid ARIA role but outside RN's `Role` union;\n // forwarded to the DOM node on web (house Record cast).\n ...{\n role: \"gridcell\"\n },\n \"aria-colindex\": colIndex,\n \"aria-rowindex\": rowIndex,\n \"aria-selected\": isFocused,\n \"data-focused\": isFocused || void 0,\n \"data-media-tile\": \"image-grid\",\n position: \"relative\",\n ...radiusFragment,\n borderWidth: 0,\n cursor: clickable ? \"pointer\" : void 0,\n ...showRing ? import_theme.keyboardFocusRingProps : {\n outlineWidth: 0\n },\n // Tamagui forwards onHoverIn/onHoverOut at runtime; the RN-flavored\n // View prop type omits them (house Record cast).\n ...{\n onHoverIn: function onHoverIn() {\n return setHovered(true);\n },\n onHoverOut: function onHoverOut() {\n return setHovered(false);\n }\n },\n onPress,\n children: [\n /* Clip media to the radius; keep overflow off the ring node so\n LC-71 outline is not severed (same split as Input.Box). */\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n borderRadius: radius,\n overflow: \"hidden\",\n children\n }),\n hovered && !showRing ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n position: \"absolute\",\n inset: 0,\n pointerEvents: \"none\",\n backgroundColor: \"$color12\",\n opacity: 0.08,\n borderRadius: radius\n }) : null\n ]\n })\n });\n}\nfunction ImageGrid(param) {\n var { items, renderItem, onItemClick, onLoadMore, hasMore = false, isLoading = false, error = null, onRetry, columns: columnsProp, tileSize, mediaAspect, estimateSize: _estimateSize, overscan: _overscan, height: heightProp, emptyMessage: emptyMessageProp, hotkeys: hotkeyOverrides, ...stackProps } = param;\n var _getTokenValue, _ref, _ref1, _ref2, _ref3, _ref4, _ref5, _ref6;\n var { t } = (0, import_i18n.useTranslation)();\n var emptyMessage = emptyMessageProp !== null && emptyMessageProp !== void 0 ? emptyMessageProp : t(\"No items found\");\n var { knobProps } = (0, import_theme.useResolvedKnobs)({\n component: \"ImageGrid\"\n });\n var isRTL = (0, import_useDirection.useDirection)() === \"rtl\";\n var gapToken = knobProps.gap.gap;\n var gutter = typeof gapToken === \"number\" ? gapToken : (_getTokenValue = (0, import_tamagui.getTokenValue)(gapToken, \"space\")) !== null && _getTokenValue !== void 0 ? _getTokenValue : 16;\n var cellPadding = gutter / 2;\n var { width: windowWidth } = (0, import_tamagui.useWindowDimensions)();\n var columnsBySizeClass = {\n compact: 2,\n medium: 3,\n expanded: 4,\n large: 5,\n xl: 5\n };\n var columns = columnsProp !== null && columnsProp !== void 0 ? columnsProp : tileSize ? (0, import_theme.tileColumnsForWidth)(windowWidth, import_theme.tileSizeLadder[tileSize], gutter) : columnsBySizeClass[(0, import_theme.getLayoutSizeClass)(windowWidth)];\n var height = heightProp;\n var gridId = (0, import_react.useId)();\n var containerRef = (0, import_react.useRef)(null);\n var sentinelRef = (0, import_react.useRef)(null);\n var [focusedIndex, setFocusedIndex] = (0, import_react.useState)(-1);\n if (typeof document !== \"undefined\") (0, import_theme.ensureKeyboardModalityTracking)();\n var handleContainerFocus = (0, import_react.useCallback)(function() {\n if (!(0, import_theme.wasKeyboardFocus)()) return;\n setFocusedIndex(function(prev) {\n return prev < 0 ? 0 : prev;\n });\n }, []);\n var scrollToIndex = (0, import_react.useCallback)(function(index) {\n if (index >= 0 && index < items.length) {\n var _document_getElementById;\n (_document_getElementById = document.getElementById(`${gridId}-item-${index}`)) === null || _document_getElementById === void 0 ? void 0 : _document_getElementById.scrollIntoView({\n block: \"nearest\"\n });\n }\n }, [\n gridId,\n items.length\n ]);\n var moveFocus = (0, import_react.useCallback)(function(delta) {\n setFocusedIndex(function(prev) {\n if (items.length === 0) return prev;\n if (prev < 0) {\n scrollToIndex(0);\n return 0;\n }\n var next = Math.max(0, Math.min(items.length - 1, prev + delta));\n scrollToIndex(next);\n return next;\n });\n }, [\n items.length,\n scrollToIndex\n ]);\n var hotkeyOpts = {\n target: containerRef\n };\n (0, import_react_hotkeys.useHotkey)((_ref = hotkeyOverrides === null || hotkeyOverrides === void 0 ? void 0 : hotkeyOverrides.right) !== null && _ref !== void 0 ? _ref : \"ArrowRight\", function() {\n return moveFocus(isRTL ? -1 : 1);\n }, hotkeyOpts);\n (0, import_react_hotkeys.useHotkey)((_ref1 = hotkeyOverrides === null || hotkeyOverrides === void 0 ? void 0 : hotkeyOverrides.left) !== null && _ref1 !== void 0 ? _ref1 : \"ArrowLeft\", function() {\n return moveFocus(isRTL ? 1 : -1);\n }, hotkeyOpts);\n (0, import_react_hotkeys.useHotkey)((_ref2 = hotkeyOverrides === null || hotkeyOverrides === void 0 ? void 0 : hotkeyOverrides.down) !== null && _ref2 !== void 0 ? _ref2 : \"ArrowDown\", function() {\n return moveFocus(columns);\n }, hotkeyOpts);\n (0, import_react_hotkeys.useHotkey)((_ref3 = hotkeyOverrides === null || hotkeyOverrides === void 0 ? void 0 : hotkeyOverrides.up) !== null && _ref3 !== void 0 ? _ref3 : \"ArrowUp\", function() {\n return moveFocus(-columns);\n }, hotkeyOpts);\n var activateFocused = (0, import_react.useCallback)(function() {\n if (focusedIndex >= 0 && focusedIndex < items.length) {\n onItemClick === null || onItemClick === void 0 ? void 0 : onItemClick(items[focusedIndex]);\n }\n }, [\n focusedIndex,\n items,\n onItemClick\n ]);\n (0, import_react_hotkeys.useHotkey)((_ref4 = hotkeyOverrides === null || hotkeyOverrides === void 0 ? void 0 : hotkeyOverrides.select) !== null && _ref4 !== void 0 ? _ref4 : \"Enter\", activateFocused, hotkeyOpts);\n (0, import_react_hotkeys.useHotkey)(\"Space\", activateFocused, hotkeyOpts);\n (0, import_react_hotkeys.useHotkey)((_ref5 = hotkeyOverrides === null || hotkeyOverrides === void 0 ? void 0 : hotkeyOverrides.first) !== null && _ref5 !== void 0 ? _ref5 : \"Home\", function() {\n if (items.length === 0) return;\n setFocusedIndex(0);\n scrollToIndex(0);\n }, hotkeyOpts);\n (0, import_react_hotkeys.useHotkey)((_ref6 = hotkeyOverrides === null || hotkeyOverrides === void 0 ? void 0 : hotkeyOverrides.last) !== null && _ref6 !== void 0 ? _ref6 : \"End\", function() {\n if (items.length === 0) return;\n var last = items.length - 1;\n setFocusedIndex(last);\n scrollToIndex(last);\n }, hotkeyOpts);\n (0, import_react.useEffect)(function() {\n if (height !== void 0 || !onLoadMore || !hasMore || isLoading) return;\n if (typeof IntersectionObserver === \"undefined\") return;\n var el = sentinelRef.current;\n if (!el) return;\n var observer = new IntersectionObserver(function(entries) {\n if (entries.some(function(entry) {\n return entry.isIntersecting;\n })) onLoadMore();\n });\n observer.observe(el);\n return function() {\n return observer.disconnect();\n };\n }, [\n height,\n onLoadMore,\n hasMore,\n isLoading\n ]);\n var hasError = (0, import_AsyncBoundary.resolveAsyncStatus)({\n error\n }) === \"error\";\n var effectiveFocused = focusedIndex >= items.length ? -1 : focusedIndex;\n var showKeyboardRing = effectiveFocused >= 0 && (0, import_theme.wasKeyboardFocus)();\n var rowCount = Math.ceil(items.length / columns);\n var radiusFragment = knobProps.borderRadius;\n var gridBody = items.length === 0 ? null : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.View, {\n ref: containerRef,\n role: \"grid\",\n \"aria-label\": t(\"Image grid\"),\n \"aria-colcount\": columns,\n \"aria-rowcount\": rowCount,\n \"aria-activedescendant\": effectiveFocused >= 0 ? `${gridId}-item-${effectiveFocused}` : void 0,\n tabIndex: 0,\n outlineWidth: 0,\n focusStyle: {\n outlineWidth: 0\n },\n focusVisibleStyle: {\n outlineWidth: 0\n },\n onFocus: handleContainerFocus,\n ...height !== void 0 ? {\n style: {\n height,\n overflowY: \"auto\"\n },\n onScroll: onLoadMore && hasMore && !isLoading ? function() {\n var el = containerRef.current;\n if (el && el.scrollTop + el.clientHeight >= el.scrollHeight - 50) {\n onLoadMore();\n }\n } : void 0\n } : null,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.YStack, {\n gap: gutter,\n children: Array.from({\n length: rowCount\n }, function(_, row) {\n var start = row * columns;\n var rowItems = items.slice(start, start + columns);\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {\n role: \"row\",\n gap: gutter,\n children: [\n rowItems.map(function(item, col) {\n var index = start + col;\n var isFocused = effectiveFocused === index;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ImageGridTile, {\n id: `${gridId}-item-${index}`,\n isFocused,\n showRing: isFocused && showKeyboardRing,\n clickable: Boolean(onItemClick),\n colIndex: col + 1,\n rowIndex: row + 1,\n radiusFragment,\n onPress: onItemClick ? function() {\n setFocusedIndex(index);\n onItemClick(item);\n } : void 0,\n children: renderItem(item)\n }, `${gridId}-item-${index}`);\n }),\n Array.from({\n length: columns - rowItems.length\n }, function(_2, pad) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ...tileTrack,\n \"aria-hidden\": true\n }, `${gridId}-pad-${row}-${pad}`);\n })\n ]\n }, `${gridId}-row-${row}`);\n })\n }),\n isLoading && items.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.YStack, {\n padding: \"$2\",\n alignItems: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_forms.Spinner, {\n size: \"small\"\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.View, {\n ref: sentinelRef,\n height: 1\n })\n ]\n });\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_AsyncBoundary.AsyncBoundary, {\n compact: true,\n error,\n onRetry,\n errorTitle: t(\"Couldn't load images\"),\n emptyTitle: emptyMessage,\n loading: !hasError && isLoading && items.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ImageGridSkeleton, {\n columns,\n cellPadding,\n aspect: (0, import_theme.resolveMediaAspect)(mediaAspect),\n loadingLabel: t(\"Loading\")\n }) : false,\n empty: !hasError && items.length === 0,\n ...stackProps,\n children: gridBody\n });\n}\n//# sourceMappingURL=ImageGrid.js.map\n"],"mappings":"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","ignoreList":[]}
@@ -41,6 +41,9 @@ var import_treeViewMotion = require("./treeViewMotion.cjs");
41
41
  var import_treeViewReveal = require("./treeViewReveal.cjs");
42
42
  var import_treeViewLayout = require("./treeViewLayout.cjs");
43
43
  var import_jsx_runtime = require("react/jsx-runtime");
44
+ const DragHandleTarget = (0, import_tamagui.styled)(import_tamagui.View, {
45
+ name: "DragHandleTarget"
46
+ });
44
47
  const ENTER_RISE_PX = -4;
45
48
  const DRAG_THRESHOLD_PX = 4;
46
49
  const TOUCH_LONG_PRESS_MS = 200;
@@ -1175,7 +1178,7 @@ function TreeView({
1175
1178
  minWidth: 0,
1176
1179
  justifyContent: "center",
1177
1180
  children: labelContent
1178
- }), canReorder ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
1181
+ }), canReorder ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(DragHandleTarget, {
1179
1182
  ...{
1180
1183
  "data-treeview-handle": node.id
1181
1184
  },
@@ -54,6 +54,9 @@ var import_treeViewDnd = require("./treeViewDnd.native.js");
54
54
  var import_treeViewMotion = require("./treeViewMotion.native.js");
55
55
  var import_treeViewReveal = require("./treeViewReveal.native.js");
56
56
  var import_treeViewLayout = require("./treeViewLayout.native.js");
57
+ var DragHandleTarget = (0, import_tamagui.styled)(import_tamagui.View, {
58
+ name: "DragHandleTarget"
59
+ });
57
60
  var ENTER_RISE_PX = -4;
58
61
  var DRAG_THRESHOLD_PX = 4;
59
62
  var TOUCH_LONG_PRESS_MS = 200;
@@ -1331,7 +1334,7 @@ function TreeView(param) {
1331
1334
  minWidth: 0,
1332
1335
  justifyContent: "center",
1333
1336
  children: labelContent
1334
- }), canReorder ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
1337
+ }), canReorder ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(DragHandleTarget, {
1335
1338
  "data-treeview-handle": node.id,
1336
1339
  role: "button",
1337
1340
  "aria-label": t("Drag {{label}} to reorder", {