@multiplatform.one/components 7.11.0 → 7.15.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 (413) hide show
  1. package/README.md +2 -2
  2. package/dist/cjs/Accordion/index.cjs +2 -6
  3. package/dist/cjs/Accordion/index.native.js +2 -6
  4. package/dist/cjs/Accordion/index.native.js.map +1 -1
  5. package/dist/cjs/AnimateHeight/index.cjs +1 -3
  6. package/dist/cjs/AnimateHeight/index.native.js +1 -3
  7. package/dist/cjs/AnimateHeight/index.native.js.map +1 -1
  8. package/dist/cjs/Chip/index.cjs +8 -1
  9. package/dist/cjs/Chip/index.native.js +8 -1
  10. package/dist/cjs/Chip/index.native.js.map +1 -1
  11. package/dist/cjs/SheetModal/index.native.js +70 -22
  12. package/dist/cjs/SheetModal/index.native.js.map +1 -1
  13. package/dist/cjs/Tabs/index.cjs +2 -6
  14. package/dist/cjs/Tabs/index.native.js +2 -6
  15. package/dist/cjs/Tabs/index.native.js.map +1 -1
  16. package/dist/cjs/Text.cjs +2 -0
  17. package/dist/cjs/Text.native.js +2 -0
  18. package/dist/cjs/Text.native.js.map +1 -1
  19. package/dist/cjs/TreeSelect/index.cjs +55 -52
  20. package/dist/cjs/TreeSelect/index.native.js +55 -52
  21. package/dist/cjs/TreeSelect/index.native.js.map +1 -1
  22. package/dist/cjs/Video/PlayerChrome.cjs +3 -9
  23. package/dist/cjs/Video/PlayerChrome.native.js +3 -9
  24. package/dist/cjs/Video/PlayerChrome.native.js.map +1 -1
  25. package/dist/cjs/code/Code/index.cjs +6 -0
  26. package/dist/cjs/code/Code/index.native.js +7 -4
  27. package/dist/cjs/code/Code/index.native.js.map +1 -1
  28. package/dist/cjs/code/CodeBlock/index.cjs +4 -5
  29. package/dist/cjs/code/CodeBlock/index.native.js +4 -5
  30. package/dist/cjs/code/CodeBlock/index.native.js.map +1 -1
  31. package/dist/cjs/icons/themed.cjs +2 -1
  32. package/dist/cjs/icons/themed.native.js +2 -1
  33. package/dist/cjs/icons/themed.native.js.map +1 -1
  34. package/dist/cjs/knobImmuneExports.cjs +3 -3
  35. package/dist/cjs/knobImmuneExports.native.js +3 -3
  36. package/dist/cjs/layouts/PaneScaffold.cjs +70 -42
  37. package/dist/cjs/layouts/PaneScaffold.native.js +75 -48
  38. package/dist/cjs/layouts/PaneScaffold.native.js.map +1 -1
  39. package/dist/cjs/layouts/page.cjs +2 -1
  40. package/dist/cjs/layouts/page.native.js +2 -1
  41. package/dist/cjs/layouts/page.native.js.map +1 -1
  42. package/dist/cjs/layouts/sidebar.cjs +1 -3
  43. package/dist/cjs/layouts/sidebar.native.js +1 -3
  44. package/dist/cjs/layouts/sidebar.native.js.map +1 -1
  45. package/dist/cjs/surfaces.cjs +0 -32
  46. package/dist/cjs/surfaces.native.js +0 -32
  47. package/dist/cjs/surfaces.native.js.map +1 -1
  48. package/dist/cjs/views/List.cjs +1 -3
  49. package/dist/cjs/views/List.native.js +1 -3
  50. package/dist/cjs/views/List.native.js.map +1 -1
  51. package/dist/cjs/views/Matrix.cjs +568 -0
  52. package/dist/cjs/views/Matrix.native.js +612 -0
  53. package/dist/cjs/views/Matrix.native.js.map +1 -0
  54. package/dist/cjs/views/ganttMath.cjs +2 -0
  55. package/dist/cjs/views/ganttMath.native.js +2 -0
  56. package/dist/cjs/views/ganttMath.native.js.map +1 -1
  57. package/dist/cjs/views/index.cjs +16 -0
  58. package/dist/cjs/views/index.native.js +16 -0
  59. package/dist/cjs/views/index.native.js.map +1 -1
  60. package/dist/cjs/views/matrixMath.cjs +157 -0
  61. package/dist/cjs/views/matrixMath.native.js +229 -0
  62. package/dist/cjs/views/matrixMath.native.js.map +1 -0
  63. package/dist/esm/Accordion/index.mjs +3 -7
  64. package/dist/esm/Accordion/index.mjs.map +1 -1
  65. package/dist/esm/Accordion/index.native.js +3 -7
  66. package/dist/esm/Accordion/index.native.js.map +1 -1
  67. package/dist/esm/AnimateHeight/index.mjs +2 -4
  68. package/dist/esm/AnimateHeight/index.mjs.map +1 -1
  69. package/dist/esm/AnimateHeight/index.native.js +2 -4
  70. package/dist/esm/AnimateHeight/index.native.js.map +1 -1
  71. package/dist/esm/Avatar/getInitials.native.js.map +1 -1
  72. package/dist/esm/Avatar/index.native.js.map +1 -1
  73. package/dist/esm/Badge/index.native.js.map +1 -1
  74. package/dist/esm/Button.native.js.map +1 -1
  75. package/dist/esm/Carousel/index.native.js.map +1 -1
  76. package/dist/esm/Chip/index.mjs +9 -2
  77. package/dist/esm/Chip/index.mjs.map +1 -1
  78. package/dist/esm/Chip/index.native.js +9 -2
  79. package/dist/esm/Chip/index.native.js.map +1 -1
  80. package/dist/esm/Collapsible.native.js.map +1 -1
  81. package/dist/esm/ContextMenu/index.native.js.map +1 -1
  82. package/dist/esm/CopyField/index.native.js.map +1 -1
  83. package/dist/esm/DotIndicator/index.native.js.map +1 -1
  84. package/dist/esm/DropdownMenu/index.native.js.map +1 -1
  85. package/dist/esm/ErrorBoundary/index.native.js.map +1 -1
  86. package/dist/esm/Heading.native.js.map +1 -1
  87. package/dist/esm/Meter/index.native.js.map +1 -1
  88. package/dist/esm/Meter/meter.native.js.map +1 -1
  89. package/dist/esm/Pagination.native.js.map +1 -1
  90. package/dist/esm/ProgressSteps/index.native.js.map +1 -1
  91. package/dist/esm/Quote/index.native.js.map +1 -1
  92. package/dist/esm/Separator/index.native.js.map +1 -1
  93. package/dist/esm/SheetModal/detents.native.js.map +1 -1
  94. package/dist/esm/SheetModal/index.native.js +71 -23
  95. package/dist/esm/SheetModal/index.native.js.map +1 -1
  96. package/dist/esm/Skeleton/index.native.js.map +1 -1
  97. package/dist/esm/SkipLink/index.native.js.map +1 -1
  98. package/dist/esm/SortableList/SortableHandle.native.js.map +1 -1
  99. package/dist/esm/SortableList/index.native.js.map +1 -1
  100. package/dist/esm/SortableList/useSortableRows.native.js.map +1 -1
  101. package/dist/esm/Tabs/index.mjs +3 -7
  102. package/dist/esm/Tabs/index.mjs.map +1 -1
  103. package/dist/esm/Tabs/index.native.js +3 -7
  104. package/dist/esm/Tabs/index.native.js.map +1 -1
  105. package/dist/esm/Text.mjs +3 -1
  106. package/dist/esm/Text.mjs.map +1 -1
  107. package/dist/esm/Text.native.js +3 -1
  108. package/dist/esm/Text.native.js.map +1 -1
  109. package/dist/esm/Toast/index.native.js.map +1 -1
  110. package/dist/esm/Toast/store.native.js.map +1 -1
  111. package/dist/esm/Tooltip/nativePress.native.js.map +1 -1
  112. package/dist/esm/Tooltip/tooltipShared.native.js.map +1 -1
  113. package/dist/esm/TreeSelect/index.mjs +56 -53
  114. package/dist/esm/TreeSelect/index.mjs.map +1 -1
  115. package/dist/esm/TreeSelect/index.native.js +56 -53
  116. package/dist/esm/TreeSelect/index.native.js.map +1 -1
  117. package/dist/esm/TreeSelect/treeSelectModel.native.js.map +1 -1
  118. package/dist/esm/Video/PlayerChrome.mjs +4 -10
  119. package/dist/esm/Video/PlayerChrome.mjs.map +1 -1
  120. package/dist/esm/Video/PlayerChrome.native.js +4 -10
  121. package/dist/esm/Video/PlayerChrome.native.js.map +1 -1
  122. package/dist/esm/Video/VideoFrame.native.js.map +1 -1
  123. package/dist/esm/Video/types.native.js.map +1 -1
  124. package/dist/esm/Wheel/index.native.js.map +1 -1
  125. package/dist/esm/Wizard/index.native.js.map +1 -1
  126. package/dist/esm/actions/ActionBar.native.js.map +1 -1
  127. package/dist/esm/actions/DestructiveAction.native.js.map +1 -1
  128. package/dist/esm/actions/devWarn.native.js.map +1 -1
  129. package/dist/esm/actions/index.native.js.map +1 -1
  130. package/dist/esm/actions/severity.native.js.map +1 -1
  131. package/dist/esm/charts/Axis.native.js.map +1 -1
  132. package/dist/esm/charts/BarChart.native.js.map +1 -1
  133. package/dist/esm/charts/ChartDataView.native.js.map +1 -1
  134. package/dist/esm/charts/ChartSurface.native.js.map +1 -1
  135. package/dist/esm/charts/LineChart.native.js.map +1 -1
  136. package/dist/esm/charts/PieChart.native.js.map +1 -1
  137. package/dist/esm/charts/Sparkline.native.js.map +1 -1
  138. package/dist/esm/charts/accessibility.native.js.map +1 -1
  139. package/dist/esm/charts/composeChart.native.js.map +1 -1
  140. package/dist/esm/charts/index.native.js.map +1 -1
  141. package/dist/esm/charts/math.native.js.map +1 -1
  142. package/dist/esm/charts/series.native.js.map +1 -1
  143. package/dist/esm/charts/svg.native.js.map +1 -1
  144. package/dist/esm/charts/types.native.js.map +1 -1
  145. package/dist/esm/charts/useChartTheme.native.js.map +1 -1
  146. package/dist/esm/code/Code/index.mjs +6 -0
  147. package/dist/esm/code/Code/index.mjs.map +1 -1
  148. package/dist/esm/code/Code/index.native.js +10 -7
  149. package/dist/esm/code/Code/index.native.js.map +1 -1
  150. package/dist/esm/code/CodeBlock/index.mjs +5 -6
  151. package/dist/esm/code/CodeBlock/index.mjs.map +1 -1
  152. package/dist/esm/code/CodeBlock/index.native.js +5 -6
  153. package/dist/esm/code/CodeBlock/index.native.js.map +1 -1
  154. package/dist/esm/code/HighlightedCode/index.native.js.map +1 -1
  155. package/dist/esm/code/Highlighter/index.native.js.map +1 -1
  156. package/dist/esm/code/Pre/index.native.js.map +1 -1
  157. package/dist/esm/code/index.native.js.map +1 -1
  158. package/dist/esm/componentColors.native.js.map +1 -1
  159. package/dist/esm/feedback/ConfirmDialog.native.js.map +1 -1
  160. package/dist/esm/feedback/NotifyHost.native.js.map +1 -1
  161. package/dist/esm/feedback/copy.native.js.map +1 -1
  162. package/dist/esm/feedback/index.native.js.map +1 -1
  163. package/dist/esm/feedback/notify.native.js.map +1 -1
  164. package/dist/esm/feedback/route.native.js.map +1 -1
  165. package/dist/esm/feedback/store.native.js.map +1 -1
  166. package/dist/esm/hooks/index.native.js.map +1 -1
  167. package/dist/esm/hooks/useClipboard.native.js.map +1 -1
  168. package/dist/esm/hooks/useDocumentTitle.native.js.map +1 -1
  169. package/dist/esm/icons/CheckRegular.native.js.map +1 -1
  170. package/dist/esm/icons/MinusRegular.native.js.map +1 -1
  171. package/dist/esm/icons/index.native.js.map +1 -1
  172. package/dist/esm/icons/lucide.native.js.map +1 -1
  173. package/dist/esm/icons/themed.mjs +3 -2
  174. package/dist/esm/icons/themed.mjs.map +1 -1
  175. package/dist/esm/icons/themed.native.js +3 -2
  176. package/dist/esm/icons/themed.native.js.map +1 -1
  177. package/dist/esm/images/Image/ImageFrame.native.js.map +1 -1
  178. package/dist/esm/images/Image/shared.native.js.map +1 -1
  179. package/dist/esm/images/Image/types.native.js.map +1 -1
  180. package/dist/esm/images/index.native.js.map +1 -1
  181. package/dist/esm/index.native.js.map +1 -1
  182. package/dist/esm/knobImmuneExports.mjs +3 -3
  183. package/dist/esm/knobImmuneExports.native.js +3 -3
  184. package/dist/esm/knobImmuneExports.native.js.map +1 -1
  185. package/dist/esm/layouts/AsyncBoundary.native.js.map +1 -1
  186. package/dist/esm/layouts/Debug/index.native.js.map +1 -1
  187. package/dist/esm/layouts/EmptyState.native.js.map +1 -1
  188. package/dist/esm/layouts/KeyboardAvoidingWrapper/behavior.native.js.map +1 -1
  189. package/dist/esm/layouts/PageTemplates.native.js.map +1 -1
  190. package/dist/esm/layouts/PaneScaffold.mjs +70 -42
  191. package/dist/esm/layouts/PaneScaffold.mjs.map +1 -1
  192. package/dist/esm/layouts/PaneScaffold.native.js +75 -48
  193. package/dist/esm/layouts/PaneScaffold.native.js.map +1 -1
  194. package/dist/esm/layouts/SafeAreaWrapper/insets.native.js.map +1 -1
  195. package/dist/esm/layouts/ViewSwitcher.native.js.map +1 -1
  196. package/dist/esm/layouts/attachments.native.js.map +1 -1
  197. package/dist/esm/layouts/breadcrumbs.native.js.map +1 -1
  198. package/dist/esm/layouts/index.native.js.map +1 -1
  199. package/dist/esm/layouts/page.mjs +3 -2
  200. package/dist/esm/layouts/page.mjs.map +1 -1
  201. package/dist/esm/layouts/page.native.js +3 -2
  202. package/dist/esm/layouts/page.native.js.map +1 -1
  203. package/dist/esm/layouts/pageHeadingScope.native.js.map +1 -1
  204. package/dist/esm/layouts/sidebar.mjs +2 -4
  205. package/dist/esm/layouts/sidebar.mjs.map +1 -1
  206. package/dist/esm/layouts/sidebar.native.js +2 -4
  207. package/dist/esm/layouts/sidebar.native.js.map +1 -1
  208. package/dist/esm/layouts/tags.native.js.map +1 -1
  209. package/dist/esm/layouts/timeline.native.js.map +1 -1
  210. package/dist/esm/layouts/toolbar.native.js.map +1 -1
  211. package/dist/esm/shared/actionScan.native.js.map +1 -1
  212. package/dist/esm/shared/i18n.native.js.map +1 -1
  213. package/dist/esm/shared/t.native.js.map +1 -1
  214. package/dist/esm/shared/textRidesText.native.js.map +1 -1
  215. package/dist/esm/shared/useReturnFocusOnClose.native.js.map +1 -1
  216. package/dist/esm/surfaces.mjs +1 -33
  217. package/dist/esm/surfaces.mjs.map +1 -1
  218. package/dist/esm/surfaces.native.js +1 -33
  219. package/dist/esm/surfaces.native.js.map +1 -1
  220. package/dist/esm/tamagui.native.js.map +1 -1
  221. package/dist/esm/testSetup.native.js.map +1 -1
  222. package/dist/esm/utils/setTinted.native.js.map +1 -1
  223. package/dist/esm/utils/unwrapText.native.js.map +1 -1
  224. package/dist/esm/views/Calendar.native.js.map +1 -1
  225. package/dist/esm/views/Dashboard.native.js.map +1 -1
  226. package/dist/esm/views/Gantt.native.js.map +1 -1
  227. package/dist/esm/views/ImageGrid.native.js.map +1 -1
  228. package/dist/esm/views/List.mjs +2 -4
  229. package/dist/esm/views/List.mjs.map +1 -1
  230. package/dist/esm/views/List.native.js +2 -4
  231. package/dist/esm/views/List.native.js.map +1 -1
  232. package/dist/esm/views/Matrix.mjs +543 -0
  233. package/dist/esm/views/Matrix.mjs.map +1 -0
  234. package/dist/esm/views/Matrix.native.js +573 -0
  235. package/dist/esm/views/Matrix.native.js.map +1 -0
  236. package/dist/esm/views/ReportBuilder.native.js.map +1 -1
  237. package/dist/esm/views/TreeView.native.js.map +1 -1
  238. package/dist/esm/views/calendarMath.native.js.map +1 -1
  239. package/dist/esm/views/ganttMath.mjs +1 -1
  240. package/dist/esm/views/ganttMath.mjs.map +1 -1
  241. package/dist/esm/views/ganttMath.native.js +1 -1
  242. package/dist/esm/views/ganttMath.native.js.map +1 -1
  243. package/dist/esm/views/index.mjs +4 -2
  244. package/dist/esm/views/index.mjs.map +1 -1
  245. package/dist/esm/views/index.native.js +4 -2
  246. package/dist/esm/views/index.native.js.map +1 -1
  247. package/dist/esm/views/kanbanDnd.native.js.map +1 -1
  248. package/dist/esm/views/matrixMath.mjs +122 -0
  249. package/dist/esm/views/matrixMath.mjs.map +1 -0
  250. package/dist/esm/views/matrixMath.native.js +191 -0
  251. package/dist/esm/views/matrixMath.native.js.map +1 -0
  252. package/dist/esm/views/treeViewDnd.native.js.map +1 -1
  253. package/dist/esm/views/treeViewLayout.native.js.map +1 -1
  254. package/dist/esm/views/treeViewMotion.native.js.map +1 -1
  255. package/dist/esm/views/treeViewReveal.native.js.map +1 -1
  256. package/dist/jsx/Accordion/index.mjs +3 -7
  257. package/dist/jsx/Accordion/index.mjs.map +1 -1
  258. package/dist/jsx/Accordion/index.native.js +2 -6
  259. package/dist/jsx/Accordion/index.native.js.map +1 -1
  260. package/dist/jsx/AnimateHeight/index.mjs +2 -4
  261. package/dist/jsx/AnimateHeight/index.mjs.map +1 -1
  262. package/dist/jsx/AnimateHeight/index.native.js +1 -3
  263. package/dist/jsx/AnimateHeight/index.native.js.map +1 -1
  264. package/dist/jsx/Chip/index.mjs +9 -2
  265. package/dist/jsx/Chip/index.mjs.map +1 -1
  266. package/dist/jsx/Chip/index.native.js +8 -1
  267. package/dist/jsx/Chip/index.native.js.map +1 -1
  268. package/dist/jsx/SheetModal/index.native.js +70 -22
  269. package/dist/jsx/SheetModal/index.native.js.map +1 -1
  270. package/dist/jsx/Tabs/index.mjs +3 -7
  271. package/dist/jsx/Tabs/index.mjs.map +1 -1
  272. package/dist/jsx/Tabs/index.native.js +2 -6
  273. package/dist/jsx/Tabs/index.native.js.map +1 -1
  274. package/dist/jsx/Text.mjs +3 -1
  275. package/dist/jsx/Text.mjs.map +1 -1
  276. package/dist/jsx/Text.native.js +2 -0
  277. package/dist/jsx/Text.native.js.map +1 -1
  278. package/dist/jsx/TreeSelect/index.mjs +56 -53
  279. package/dist/jsx/TreeSelect/index.mjs.map +1 -1
  280. package/dist/jsx/TreeSelect/index.native.js +55 -52
  281. package/dist/jsx/TreeSelect/index.native.js.map +1 -1
  282. package/dist/jsx/Video/PlayerChrome.mjs +4 -10
  283. package/dist/jsx/Video/PlayerChrome.mjs.map +1 -1
  284. package/dist/jsx/Video/PlayerChrome.native.js +3 -9
  285. package/dist/jsx/Video/PlayerChrome.native.js.map +1 -1
  286. package/dist/jsx/code/Code/index.mjs +6 -0
  287. package/dist/jsx/code/Code/index.mjs.map +1 -1
  288. package/dist/jsx/code/Code/index.native.js +7 -4
  289. package/dist/jsx/code/Code/index.native.js.map +1 -1
  290. package/dist/jsx/code/CodeBlock/index.mjs +5 -6
  291. package/dist/jsx/code/CodeBlock/index.mjs.map +1 -1
  292. package/dist/jsx/code/CodeBlock/index.native.js +4 -5
  293. package/dist/jsx/code/CodeBlock/index.native.js.map +1 -1
  294. package/dist/jsx/icons/themed.mjs +3 -2
  295. package/dist/jsx/icons/themed.mjs.map +1 -1
  296. package/dist/jsx/icons/themed.native.js +2 -1
  297. package/dist/jsx/icons/themed.native.js.map +1 -1
  298. package/dist/jsx/knobImmuneExports.mjs +3 -3
  299. package/dist/jsx/knobImmuneExports.native.js +3 -3
  300. package/dist/jsx/layouts/PaneScaffold.mjs +70 -42
  301. package/dist/jsx/layouts/PaneScaffold.mjs.map +1 -1
  302. package/dist/jsx/layouts/PaneScaffold.native.js +75 -48
  303. package/dist/jsx/layouts/PaneScaffold.native.js.map +1 -1
  304. package/dist/jsx/layouts/page.mjs +3 -2
  305. package/dist/jsx/layouts/page.mjs.map +1 -1
  306. package/dist/jsx/layouts/page.native.js +2 -1
  307. package/dist/jsx/layouts/page.native.js.map +1 -1
  308. package/dist/jsx/layouts/sidebar.mjs +2 -4
  309. package/dist/jsx/layouts/sidebar.mjs.map +1 -1
  310. package/dist/jsx/layouts/sidebar.native.js +1 -3
  311. package/dist/jsx/layouts/sidebar.native.js.map +1 -1
  312. package/dist/jsx/surfaces.mjs +1 -33
  313. package/dist/jsx/surfaces.mjs.map +1 -1
  314. package/dist/jsx/surfaces.native.js +0 -32
  315. package/dist/jsx/surfaces.native.js.map +1 -1
  316. package/dist/jsx/views/List.mjs +2 -4
  317. package/dist/jsx/views/List.mjs.map +1 -1
  318. package/dist/jsx/views/List.native.js +1 -3
  319. package/dist/jsx/views/List.native.js.map +1 -1
  320. package/dist/jsx/views/Matrix.mjs +543 -0
  321. package/dist/jsx/views/Matrix.mjs.map +1 -0
  322. package/dist/jsx/views/Matrix.native.js +612 -0
  323. package/dist/jsx/views/Matrix.native.js.map +1 -0
  324. package/dist/jsx/views/ganttMath.mjs +1 -1
  325. package/dist/jsx/views/ganttMath.mjs.map +1 -1
  326. package/dist/jsx/views/ganttMath.native.js +2 -0
  327. package/dist/jsx/views/ganttMath.native.js.map +1 -1
  328. package/dist/jsx/views/index.mjs +4 -2
  329. package/dist/jsx/views/index.mjs.map +1 -1
  330. package/dist/jsx/views/index.native.js +16 -0
  331. package/dist/jsx/views/index.native.js.map +1 -1
  332. package/dist/jsx/views/matrixMath.mjs +122 -0
  333. package/dist/jsx/views/matrixMath.mjs.map +1 -0
  334. package/dist/jsx/views/matrixMath.native.js +229 -0
  335. package/dist/jsx/views/matrixMath.native.js.map +1 -0
  336. package/package.json +10 -10
  337. package/src/Accordion/Accordion.spec.tsx +20 -0
  338. package/src/Accordion/index.tsx +7 -3
  339. package/src/AnimateHeight/index.tsx +143 -142
  340. package/src/Chip/Chip.borderLadder.spec.tsx +54 -0
  341. package/src/Chip/Chip.pressSlop.spec.tsx +57 -0
  342. package/src/Chip/index.tsx +15 -1
  343. package/src/Heading.native.spec.tsx +1 -1
  344. package/src/Separator/index.tsx +3 -3
  345. package/src/SheetModal/SheetModal.detentLayout.spec.tsx +173 -0
  346. package/src/SheetModal/SheetModal.touch.spec.tsx +63 -0
  347. package/src/SheetModal/index.native.tsx +95 -17
  348. package/src/Tabs/Tabs.hydration.spec.tsx +123 -0
  349. package/src/Tabs/index.tsx +3 -2
  350. package/src/Text.spec.tsx +32 -2
  351. package/src/Text.tsx +7 -6
  352. package/src/Toast/Toast.spec.tsx +50 -0
  353. package/src/Tooltip/Tooltip.spec.tsx +55 -2
  354. package/src/TreeSelect/TreeSelect.spec.tsx +15 -15
  355. package/src/TreeSelect/index.tsx +53 -50
  356. package/src/Video/PlayerChrome.tsx +4 -3
  357. package/src/Wheel/Wheel.spec.tsx +4 -4
  358. package/src/adjacency.l1.spec.tsx +175 -0
  359. package/src/code/Code/code.spec.tsx +2 -19
  360. package/src/code/Code/index.tsx +0 -6
  361. package/src/code/CodeBlock/index.tsx +5 -3
  362. package/src/code/highlightedCode.spec.tsx +2 -2
  363. package/src/code/hostProps.spec.tsx +55 -0
  364. package/src/icons/themed.hydration.spec.tsx +60 -0
  365. package/src/icons/themed.tsx +3 -6
  366. package/src/knobImmuneExports.ts +3 -3
  367. package/src/layouts/PaneScaffold.spec.tsx +148 -2
  368. package/src/layouts/PaneScaffold.stories.tsx +33 -1
  369. package/src/layouts/PaneScaffold.tsx +101 -48
  370. package/src/layouts/page.designLaw.spec.tsx +20 -0
  371. package/src/layouts/page.tsx +2 -0
  372. package/src/layouts/sidebar.tsx +2 -3
  373. package/src/overlayElevation.spec.tsx +39 -51
  374. package/src/surfaces.spec.tsx +13 -10
  375. package/src/surfaces.tsx +4 -33
  376. package/src/tamagui.spec.ts +4 -3
  377. package/src/textAccentSecondary.spec.tsx +100 -2
  378. package/src/views/List.tsx +2 -1
  379. package/src/views/Matrix.spec.tsx +339 -0
  380. package/src/views/Matrix.stories.spec.tsx +68 -0
  381. package/src/views/Matrix.stories.tsx +153 -0
  382. package/src/views/Matrix.tsx +738 -0
  383. package/src/views/ganttMath.ts +4 -2
  384. package/src/views/index.ts +30 -0
  385. package/src/views/matrixMath.spec.ts +237 -0
  386. package/src/views/matrixMath.ts +251 -0
  387. package/src/views/views.spec.tsx +3 -1
  388. package/types/Accordion/index.d.ts.map +1 -1
  389. package/types/AnimateHeight/index.d.ts.map +1 -1
  390. package/types/Chip/index.d.ts.map +1 -1
  391. package/types/Separator/index.d.ts +3 -3
  392. package/types/SheetModal/index.native.d.ts.map +1 -1
  393. package/types/Tabs/index.d.ts.map +1 -1
  394. package/types/Text.d.ts.map +1 -1
  395. package/types/TreeSelect/index.d.ts.map +1 -1
  396. package/types/Video/PlayerChrome.d.ts.map +1 -1
  397. package/types/code/Code/index.d.ts.map +1 -1
  398. package/types/code/CodeBlock/index.d.ts.map +1 -1
  399. package/types/icons/themed.d.ts.map +1 -1
  400. package/types/layouts/PaneScaffold.d.ts +14 -1
  401. package/types/layouts/PaneScaffold.d.ts.map +1 -1
  402. package/types/layouts/page.d.ts.map +1 -1
  403. package/types/layouts/sidebar.d.ts.map +1 -1
  404. package/types/surfaces.d.ts.map +1 -1
  405. package/types/views/List.d.ts.map +1 -1
  406. package/types/views/Matrix.d.ts +102 -0
  407. package/types/views/Matrix.d.ts.map +1 -0
  408. package/types/views/ganttMath.d.ts +4 -0
  409. package/types/views/ganttMath.d.ts.map +1 -1
  410. package/types/views/index.d.ts +3 -1
  411. package/types/views/index.d.ts.map +1 -1
  412. package/types/views/matrixMath.d.ts +114 -0
  413. package/types/views/matrixMath.d.ts.map +1 -0
@@ -0,0 +1,612 @@
1
+ "use strict";
2
+
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all) __defProp(target, name, {
11
+ get: all[name],
12
+ enumerable: true
13
+ });
14
+ };
15
+ var __copyProps = (to, from, except, desc) => {
16
+ if (from && typeof from === "object" || typeof from === "function") {
17
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
18
+ get: () => from[key],
19
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
20
+ });
21
+ }
22
+ return to;
23
+ };
24
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
25
+ // If the importer is in node compatibility mode or this is not an ESM
26
+ // file that has been converted to a CommonJS file using a Babel-
27
+ // compatible transform (i.e. "__esModule" has not been set), then set
28
+ // "default" to the CommonJS "module.exports" for node compatibility.
29
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
30
+ value: mod,
31
+ enumerable: true
32
+ }) : target, mod));
33
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
34
+ value: true
35
+ }), mod);
36
+ var Matrix_exports = {};
37
+ __export(Matrix_exports, {
38
+ MatrixView: () => MatrixView
39
+ });
40
+ module.exports = __toCommonJS(Matrix_exports);
41
+ var import_jsx_runtime = require("react/jsx-runtime");
42
+ var import_componentColors = require("../componentColors.native.js");
43
+ var import_AsyncBoundary = require("../layouts/AsyncBoundary.native.js");
44
+ var import_Skeleton = require("../Skeleton/index.native.js");
45
+ var import_ViewSwitcher = require("../layouts/ViewSwitcher.native.js");
46
+ var import_t = require("../shared/t.native.js");
47
+ var import_theme = require("@multiplatform.one/theme");
48
+ var import_react = __toESM(require("react"));
49
+ var import_i18n = require("../shared/i18n.native.js");
50
+ var import_react_native = require("react-native");
51
+ var import_tamagui = require("tamagui");
52
+ var import_ganttMath = require("./ganttMath.native.js");
53
+ var import_matrixMath = require("./matrixMath.native.js");
54
+ var CanvasScroller = import_tamagui.isWeb ? import_tamagui.ScrollView : import_react_native.ScrollView;
55
+ var hairlineEnd = import_tamagui.isWeb ? {
56
+ borderInlineEndWidth: import_theme.hairlineWidth,
57
+ borderInlineEndStyle: "solid",
58
+ className: "mp-hairline-ie"
59
+ } : {
60
+ borderEndWidth: import_theme.hairlineWidth
61
+ };
62
+ var FILL_FLOOR = 0.14;
63
+ var ON_FILL_INK_FROM = 0.55;
64
+ var LEGEND_STEPS = [0, 0.25, 0.5, 0.75, 1];
65
+ function CellIntentWrap(param) {
66
+ var {
67
+ intent,
68
+ children
69
+ } = param;
70
+ if (!intent || intent === "accent") return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {
71
+ children
72
+ });
73
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_theme.Intent, {
74
+ name: intent,
75
+ children
76
+ });
77
+ }
78
+ function resolveFill(color, intent) {
79
+ return color !== null && color !== void 0 ? color : intent && intent !== "accent" ? "$color9" : "$accentBackground";
80
+ }
81
+ function fillOpacity(intensity) {
82
+ return FILL_FLOOR + (1 - FILL_FLOOR) * intensity;
83
+ }
84
+ function MatrixCellBox(param) {
85
+ var {
86
+ row,
87
+ bucket,
88
+ summary,
89
+ intensity,
90
+ fill,
91
+ text,
92
+ name,
93
+ width,
94
+ height,
95
+ lastColumn,
96
+ onPress
97
+ } = param;
98
+ var {
99
+ knobProps
100
+ } = (0, import_theme.useResolvedKnobs)();
101
+ var readable = (0, import_theme.useReadableTextOn)(fill);
102
+ var [keyboardRing, setKeyboardRing] = (0, import_react.useState)(false);
103
+ var empty = summary === void 0;
104
+ var state = summary === void 0 ? "empty" : summary.value === 0 ? "zero" : "value";
105
+ var ink = !empty && intensity >= ON_FILL_INK_FROM && readable ? readable : "$color";
106
+ var pressable = onPress !== void 0;
107
+ return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {
108
+ width,
109
+ height,
110
+ alignItems: "center",
111
+ justifyContent: "center",
112
+ position: "relative",
113
+ overflow: "hidden",
114
+ ...(lastColumn ? null : hairlineEnd),
115
+ borderColor: import_componentColors.componentColors.divider,
116
+ cursor: pressable ? "pointer" : void 0,
117
+ hoverStyle: pressable ? {
118
+ backgroundColor: import_componentColors.componentColors.interactive.hover
119
+ } : void 0,
120
+ pressStyle: pressable ? {
121
+ opacity: 0.8
122
+ } : void 0,
123
+ role: pressable ? "button" : void 0,
124
+ tabIndex: pressable ? 0 : void 0,
125
+ "aria-label": name,
126
+ // LC-71: one ring on the cell (the perceived control), keyboard-only.
127
+ ...(keyboardRing ? import_theme.keyboardFocusRingProps : {
128
+ outlineWidth: 0
129
+ }),
130
+ onFocus: pressable ? function () {
131
+ return setKeyboardRing((0, import_theme.wasKeyboardFocus)());
132
+ } : void 0,
133
+ onBlur: pressable ? function () {
134
+ return setKeyboardRing(false);
135
+ } : void 0,
136
+ onPress,
137
+ onKeyDown: pressable ? function (ke) {
138
+ var _ke_preventDefault;
139
+ if (ke.key !== "Enter" && ke.key !== " ") return;
140
+ (_ke_preventDefault = ke.preventDefault) === null || _ke_preventDefault === void 0 ? void 0 : _ke_preventDefault.call(ke);
141
+ onPress();
142
+ } : void 0,
143
+ "data-matrix-cell": `${row.id}:${bucket.key}`,
144
+ "data-matrix-cell-state": state,
145
+ ...((summary === null || summary === void 0 ? void 0 : summary.intent) ? {
146
+ "data-matrix-cell-intent": summary.intent
147
+ } : null),
148
+ children: [!empty && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
149
+ position: "absolute",
150
+ top: 0,
151
+ left: 0,
152
+ right: 0,
153
+ bottom: 0,
154
+ backgroundColor: fill,
155
+ opacity: fillOpacity(intensity),
156
+ pointerEvents: "none",
157
+ "data-matrix-fill": String(intensity)
158
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
159
+ ...knobProps.label,
160
+ color: empty ? import_componentColors.componentColors.text.subtle : ink,
161
+ numberOfLines: 1,
162
+ pointerEvents: "none",
163
+ zIndex: 1,
164
+ "aria-hidden": true,
165
+ children: empty ? "\xB7" : text
166
+ })]
167
+ });
168
+ }
169
+ function LegendSwatch(param) {
170
+ var {
171
+ intensity,
172
+ fill,
173
+ empty
174
+ } = param;
175
+ var {
176
+ knobProps
177
+ } = (0, import_theme.useResolvedKnobs)();
178
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
179
+ width: 14,
180
+ height: 14,
181
+ ...knobProps.borderRadius,
182
+ position: "relative",
183
+ overflow: "hidden",
184
+ alignItems: "center",
185
+ justifyContent: "center",
186
+ borderWidth: import_theme.hairlineWidth,
187
+ borderColor: import_componentColors.componentColors.surface.border,
188
+ "data-matrix-legend-swatch": empty ? "empty" : String(intensity !== null && intensity !== void 0 ? intensity : 1),
189
+ children: empty ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
190
+ fontSize: 10,
191
+ lineHeight: 10,
192
+ color: import_componentColors.componentColors.text.subtle,
193
+ "aria-hidden": true,
194
+ children: "\xB7"
195
+ }) : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
196
+ position: "absolute",
197
+ top: 0,
198
+ left: 0,
199
+ right: 0,
200
+ bottom: 0,
201
+ backgroundColor: fill !== null && fill !== void 0 ? fill : "$accentBackground",
202
+ opacity: fillOpacity(intensity !== null && intensity !== void 0 ? intensity : 1)
203
+ })
204
+ });
205
+ }
206
+ var SKELETON_ROWS = [96, 72, 112, 64, 88];
207
+ function MatrixSkeleton(param) {
208
+ var {
209
+ labelWidth,
210
+ columnWidth,
211
+ rowHeight
212
+ } = param;
213
+ var {
214
+ t
215
+ } = (0, import_i18n.useTranslation)();
216
+ var {
217
+ knobProps
218
+ } = (0, import_theme.useResolvedKnobs)();
219
+ var edgePad = knobProps.panelPadding.padding;
220
+ var columns = [0, 1, 2, 3, 4, 5];
221
+ return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {
222
+ width: "100%",
223
+ "aria-busy": true,
224
+ "aria-label": t("Loading"),
225
+ "data-matrix-skeleton": "true",
226
+ "data-async-skeleton": "matrix",
227
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
228
+ height: rowHeight,
229
+ alignItems: "center",
230
+ ...import_theme.hairline.bottom,
231
+ borderColor: "$borderColor",
232
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
233
+ width: labelWidth,
234
+ paddingHorizontal: edgePad,
235
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_Skeleton.Skeleton, {
236
+ width: 64,
237
+ height: 12
238
+ })
239
+ }), columns.map(function (column) {
240
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
241
+ width: columnWidth,
242
+ justifyContent: "center",
243
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_Skeleton.Skeleton, {
244
+ width: Math.max(24, columnWidth - 24),
245
+ height: 12
246
+ })
247
+ }, column);
248
+ })]
249
+ }), SKELETON_ROWS.map(function (labelSkeletonWidth, index) {
250
+ return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
251
+ height: rowHeight,
252
+ alignItems: "center",
253
+ ...(index < SKELETON_ROWS.length - 1 ? import_theme.hairline.bottom : null),
254
+ borderColor: import_componentColors.componentColors.divider,
255
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
256
+ width: labelWidth,
257
+ paddingHorizontal: edgePad,
258
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_Skeleton.Skeleton, {
259
+ width: labelSkeletonWidth,
260
+ height: 12
261
+ })
262
+ }), columns.map(function (column) {
263
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
264
+ width: columnWidth,
265
+ justifyContent: "center",
266
+ children: (column + index) % 3 === 0 ? null : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_Skeleton.Skeleton, {
267
+ variant: "rounded",
268
+ width: Math.max(16, columnWidth - 16),
269
+ height: Math.max(10, rowHeight - 20)
270
+ })
271
+ }, column);
272
+ })]
273
+ }, index);
274
+ })]
275
+ });
276
+ }
277
+ function MatrixView(param) {
278
+ var {
279
+ rows,
280
+ cells,
281
+ rule: initialRule = "month",
282
+ onRuleChange,
283
+ range: rangeProp,
284
+ firstDayOfWeek = 0,
285
+ onCellPress,
286
+ formatCell,
287
+ isLoading = false,
288
+ error = null,
289
+ onRetry,
290
+ emptyTitle,
291
+ emptyDescription,
292
+ height: heightProp,
293
+ labelWidth = 180,
294
+ columnWidth: columnWidthProp,
295
+ subjectLabel,
296
+ showRuleSwitcher = true,
297
+ showLegend = true,
298
+ legendItems,
299
+ ...stackProps
300
+ } = param;
301
+ var {
302
+ t
303
+ } = (0, import_i18n.useTranslation)();
304
+ var {
305
+ knobProps
306
+ } = (0, import_theme.useResolvedKnobs)();
307
+ var [rule, setRule] = (0, import_react.useState)(initialRule);
308
+ if (typeof document !== "undefined") (0, import_theme.ensureKeyboardModalityTracking)();
309
+ var sz = knobProps.sizeToken;
310
+ var height = heightProp !== null && heightProp !== void 0 ? heightProp : sz === "$3" ? 400 : sz === "$5" ? 560 : 480;
311
+ var rowHeight = Math.max(import_theme.MIN_PRESS_TARGET, sz === "$3" ? 44 : sz === "$5" ? 56 : 48);
312
+ var columnWidth = Math.max(import_theme.MIN_PRESS_TARGET, columnWidthProp !== null && columnWidthProp !== void 0 ? columnWidthProp : sz === "$3" ? 56 : sz === "$5" ? 72 : 64);
313
+ var axisHeight = sz === "$3" ? 40 : sz === "$5" ? 52 : 46;
314
+ var range = (0, import_react.useMemo)(function () {
315
+ return rangeProp ? (0, import_matrixMath.alignMatrixRange)(rangeProp, rule, firstDayOfWeek) : (0, import_matrixMath.computeMatrixRange)(cells.map(function (cell) {
316
+ return cell.date;
317
+ }), rule, firstDayOfWeek);
318
+ }, [rangeProp, cells, rule, firstDayOfWeek]);
319
+ var buckets = (0, import_react.useMemo)(function () {
320
+ return (0, import_matrixMath.generateBuckets)(range, rule, firstDayOfWeek);
321
+ }, [range, rule, firstDayOfWeek]);
322
+ var summaries = (0, import_react.useMemo)(function () {
323
+ return (0, import_matrixMath.summarizeMatrixCells)(cells, rule, firstDayOfWeek);
324
+ }, [cells, rule, firstDayOfWeek]);
325
+ var maxValue = (0, import_react.useMemo)(function () {
326
+ var rowIds = new Set(rows.map(function (row) {
327
+ return row.id;
328
+ }));
329
+ var bucketKeys = new Set(buckets.map(function (bucket) {
330
+ return bucket.key;
331
+ }));
332
+ return (0, import_matrixMath.matrixMaxValue)(Array.from(summaries.values()).filter(function (summary) {
333
+ return rowIds.has(summary.rowId) && bucketKeys.has(summary.bucketKey);
334
+ }));
335
+ }, [summaries, rows, buckets]);
336
+ var gridWidth = buckets.length * columnWidth;
337
+ var rangeLabel = (0, import_react.useMemo)(function () {
338
+ return (0, import_ganttMath.formatRangeLabel)(range);
339
+ }, [range]);
340
+ var changeRule = (0, import_react.useCallback)(function (next) {
341
+ setRule(next);
342
+ onRuleChange === null || onRuleChange === void 0 ? void 0 : onRuleChange(next);
343
+ }, [onRuleChange]);
344
+ var cellText = (0, import_react.useCallback)(function (summary) {
345
+ var _summary_value;
346
+ if (formatCell) return formatCell(summary);
347
+ if (summary.label !== void 0) return summary.label;
348
+ return (0, import_theme.formatNumber)((_summary_value = summary.value) !== null && _summary_value !== void 0 ? _summary_value : summary.count);
349
+ }, [formatCell]);
350
+ var axisScrollRef = (0, import_react.useRef)(null);
351
+ var handleCanvasScroll = (0, import_react.useCallback)(function (event) {
352
+ var _ref;
353
+ var _event_nativeEvent_contentOffset, _event_nativeEvent, _axisScrollRef_current_scrollTo, _axisScrollRef_current;
354
+ var x = (_ref = event === null || event === void 0 ? void 0 : (_event_nativeEvent = event.nativeEvent) === null || _event_nativeEvent === void 0 ? void 0 : (_event_nativeEvent_contentOffset = _event_nativeEvent.contentOffset) === null || _event_nativeEvent_contentOffset === void 0 ? void 0 : _event_nativeEvent_contentOffset.x) !== null && _ref !== void 0 ? _ref : 0;
355
+ (_axisScrollRef_current = axisScrollRef.current) === null || _axisScrollRef_current === void 0 ? void 0 : (_axisScrollRef_current_scrollTo = _axisScrollRef_current.scrollTo) === null || _axisScrollRef_current_scrollTo === void 0 ? void 0 : _axisScrollRef_current_scrollTo.call(_axisScrollRef_current, {
356
+ x,
357
+ animated: false
358
+ });
359
+ }, []);
360
+ var scrollerDirection = {
361
+ direction: "ltr"
362
+ };
363
+ var showSkeleton = !error && isLoading && rows.length === 0;
364
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_AsyncBoundary.AsyncBoundary, {
365
+ loading: showSkeleton ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(MatrixSkeleton, {
366
+ labelWidth,
367
+ columnWidth,
368
+ rowHeight
369
+ }) : false,
370
+ empty: !error && !isLoading && rows.length === 0,
371
+ error,
372
+ onRetry,
373
+ emptyTitle: emptyTitle !== null && emptyTitle !== void 0 ? emptyTitle : t("No subjects"),
374
+ emptyDescription,
375
+ ...stackProps,
376
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {
377
+ height,
378
+ overflow: "hidden",
379
+ backgroundColor: "$background",
380
+ elevation: knobProps.elevation,
381
+ ...knobProps.containerRadius,
382
+ "data-matrix-view": rule,
383
+ "data-size": knobProps.size,
384
+ "data-density": knobProps.density,
385
+ children: [/* Header */
386
+ /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
387
+ ...knobProps.panelPadding,
388
+ alignItems: "center",
389
+ justifyContent: "space-between",
390
+ ...knobProps.gap,
391
+ ...import_theme.hairline.bottom,
392
+ borderColor: "$borderColor",
393
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
394
+ ...knobProps.heading,
395
+ ...import_componentColors.sectionHeading,
396
+ numberOfLines: 1,
397
+ children: rangeLabel
398
+ }), showRuleSwitcher && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ViewSwitcher.ViewSwitcher, {
399
+ views: [{
400
+ type: "day",
401
+ label: t("Day")
402
+ }, {
403
+ type: "week",
404
+ label: t("Week")
405
+ }, {
406
+ type: "month",
407
+ label: t("Month")
408
+ }],
409
+ currentView: rule,
410
+ onViewChange: function onViewChange(val) {
411
+ return changeRule(val);
412
+ }
413
+ })]
414
+ }),
415
+ /* Pinned axis row: the subject header cell + the bucket header strip
416
+ stay put while rows scroll vertically. The strip follows the grid
417
+ scroller, so headers and cells can never drift apart. */
418
+ /* @__PURE__ */
419
+ (0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
420
+ ...import_theme.hairline.bottom,
421
+ borderColor: "$borderColor",
422
+ "data-matrix-axis-row": "true",
423
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
424
+ width: labelWidth,
425
+ flexShrink: 0,
426
+ height: axisHeight,
427
+ alignItems: "center",
428
+ paddingHorizontal: knobProps.panelPadding.padding,
429
+ ...hairlineEnd,
430
+ borderColor: "$borderColor",
431
+ backgroundColor: import_componentColors.componentColors.surface.background,
432
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
433
+ ...knobProps.label,
434
+ color: knobProps.textAccentColor,
435
+ numberOfLines: 1,
436
+ children: subjectLabel !== null && subjectLabel !== void 0 ? subjectLabel : t("Subject")
437
+ })
438
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.ScrollView, {
439
+ ref: axisScrollRef,
440
+ horizontal: true,
441
+ flex: 1,
442
+ scrollEnabled: false,
443
+ showsHorizontalScrollIndicator: false,
444
+ style: scrollerDirection,
445
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
446
+ width: gridWidth,
447
+ height: axisHeight,
448
+ backgroundColor: import_componentColors.componentColors.surface.background,
449
+ "data-matrix-axis": rule,
450
+ children: buckets.map(function (bucket, index) {
451
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
452
+ width: columnWidth,
453
+ height: axisHeight,
454
+ alignItems: "center",
455
+ justifyContent: "center",
456
+ ...(index === buckets.length - 1 ? null : hairlineEnd),
457
+ borderColor: import_componentColors.componentColors.divider,
458
+ "aria-label": bucket.name,
459
+ "data-matrix-column": bucket.key,
460
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
461
+ ...knobProps.label,
462
+ color: knobProps.textAccentColor,
463
+ numberOfLines: 1,
464
+ children: bucket.label
465
+ })
466
+ }, bucket.key);
467
+ })
468
+ })
469
+ })]
470
+ }),
471
+ /* Body: subject labels + grid share one vertical scroller so rows stay
472
+ aligned; the grid owns its horizontal scroller (LC-10). */
473
+ /* @__PURE__ */
474
+ (0, import_jsx_runtime.jsx)(import_tamagui.ScrollView, {
475
+ flex: 1,
476
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
477
+ "data-matrix-scroll-body": "true",
478
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
479
+ width: labelWidth,
480
+ flexShrink: 0,
481
+ ...hairlineEnd,
482
+ borderColor: "$borderColor",
483
+ "data-matrix-labels": "true",
484
+ children: rows.map(function (row, index) {
485
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
486
+ height: rowHeight,
487
+ alignItems: "center",
488
+ paddingHorizontal: knobProps.panelPadding.padding,
489
+ ...(index === rows.length - 1 ? null : import_theme.hairline.bottom),
490
+ borderColor: import_componentColors.componentColors.divider,
491
+ "data-matrix-row-label": row.id,
492
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
493
+ ...knobProps.body,
494
+ numberOfLines: 1,
495
+ color: "$color",
496
+ children: row.label
497
+ })
498
+ }, row.id);
499
+ })
500
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(CanvasScroller, {
501
+ horizontal: true,
502
+ ...(import_tamagui.isWeb ? {
503
+ flex: 1
504
+ } : null),
505
+ showsHorizontalScrollIndicator: true,
506
+ onScroll: handleCanvasScroll,
507
+ scrollEventThrottle: 16,
508
+ style: import_tamagui.isWeb ? scrollerDirection : [{
509
+ flex: 1
510
+ }, scrollerDirection],
511
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
512
+ width: gridWidth,
513
+ "data-matrix-canvas": "true",
514
+ children: rows.map(function (row, rowIndex) {
515
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
516
+ height: rowHeight,
517
+ ...(rowIndex === rows.length - 1 ? null : import_theme.hairline.bottom),
518
+ borderColor: import_componentColors.componentColors.divider,
519
+ "data-matrix-row": row.id,
520
+ children: buckets.map(function (bucket, columnIndex) {
521
+ var summary = summaries.get((0, import_matrixMath.matrixCellKey)(row.id, bucket.key));
522
+ var intensity = summary ? (0, import_matrixMath.matrixCellIntensity)(summary, maxValue) : 0;
523
+ var fill = resolveFill(summary === null || summary === void 0 ? void 0 : summary.color, summary === null || summary === void 0 ? void 0 : summary.intent);
524
+ var text = summary ? cellText(summary) : t("No data");
525
+ var name = (0, import_t.withInterp)(t("{{subject}}, {{bucket}}: {{value}}"), {
526
+ subject: row.label,
527
+ bucket: bucket.name,
528
+ value: text
529
+ });
530
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(CellIntentWrap, {
531
+ intent: (summary === null || summary === void 0 ? void 0 : summary.color) ? void 0 : summary === null || summary === void 0 ? void 0 : summary.intent,
532
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(MatrixCellBox, {
533
+ row,
534
+ bucket,
535
+ summary,
536
+ intensity,
537
+ fill,
538
+ text,
539
+ name,
540
+ width: columnWidth,
541
+ height: rowHeight,
542
+ lastColumn: columnIndex === buckets.length - 1,
543
+ onPress: onCellPress ? function () {
544
+ return onCellPress({
545
+ row,
546
+ bucket,
547
+ summary
548
+ });
549
+ } : void 0
550
+ })
551
+ }, bucket.key);
552
+ })
553
+ }, row.id);
554
+ })
555
+ })
556
+ })]
557
+ })
558
+ }), showLegend && /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
559
+ ...knobProps.panelPadding,
560
+ alignItems: "center",
561
+ flexWrap: "wrap",
562
+ ...knobProps.gap,
563
+ ...import_theme.hairline.top,
564
+ borderColor: "$borderColor",
565
+ "data-matrix-legend": "true",
566
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
567
+ alignItems: "center",
568
+ gap: "$1.5",
569
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(LegendSwatch, {
570
+ empty: true
571
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
572
+ ...knobProps.label,
573
+ color: knobProps.textAccentColor,
574
+ children: t("No data")
575
+ })]
576
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
577
+ alignItems: "center",
578
+ gap: "$1.5",
579
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
580
+ ...knobProps.label,
581
+ color: knobProps.textAccentColor,
582
+ children: t("Less")
583
+ }), LEGEND_STEPS.map(function (step) {
584
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(LegendSwatch, {
585
+ intensity: step
586
+ }, step);
587
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
588
+ ...knobProps.label,
589
+ color: knobProps.textAccentColor,
590
+ children: t("More")
591
+ })]
592
+ }), legendItems === null || legendItems === void 0 ? void 0 : legendItems.map(function (item, index) {
593
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(CellIntentWrap, {
594
+ intent: item.color ? void 0 : item.intent,
595
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
596
+ alignItems: "center",
597
+ gap: "$1.5",
598
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(LegendSwatch, {
599
+ fill: resolveFill(item.color, item.intent)
600
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
601
+ ...knobProps.label,
602
+ color: knobProps.textAccentColor,
603
+ children: item.label
604
+ })]
605
+ })
606
+ }, `${item.label}-${index}`);
607
+ })]
608
+ })]
609
+ })
610
+ });
611
+ }
612
+ //# sourceMappingURL=Matrix.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["to","__toESM","mod","isNodeMode","target","__create","__getProtoOf","__copyProps","__esModule","__defProp","value","enumerable","__toCommonJS","Matrix_exports","__export","MatrixView","module","exports","import_jsx_runtime","require","import_componentColors","import_AsyncBoundary","import_Skeleton","import_ViewSwitcher","import_t","import_theme","import_react","import_i18n","import_react_native","import_tamagui","import_ganttMath","import_matrixMath","CanvasScroller","isWeb","ScrollView","hairlineEnd","borderInlineEndWidth","hairlineWidth","borderInlineEndStyle","className","borderEndWidth","FILL_FLOOR","ON_FILL_INK_FROM","LEGEND_STEPS","CellIntentWrap","param","intent","children","jsx","Fragment","Intent","name","resolveFill","color","fillOpacity","intensity","MatrixCellBox","row","bucket","summary","fill","text","width","height","lastColumn","onPress","knobProps","useResolvedKnobs","readable","useReadableTextOn","keyboardRing","setKeyboardRing","useState","empty","state","ink","pressable","jsxs","YStack","alignItems","justifyContent","position","overflow","borderColor","componentColors","divider","cursor","hoverStyle","backgroundColor","interactive","hover","pressStyle","opacity","role","tabIndex","keyboardFocusRingProps","outlineWidth","onFocus","wasKeyboardFocus","onBlur","onKeyDown","ke","_ke_preventDefault","key","preventDefault","call","id","top","left","right","bottom","pointerEvents","String","Text","label","subtle","numberOfLines","zIndex","LegendSwatch","borderRadius","borderWidth","surface","border","fontSize","lineHeight","SKELETON_ROWS","MatrixSkeleton","labelWidth","columnWidth","rowHeight","t","useTranslation","edgePad","panelPadding","padding","columns","XStack","hairline","paddingHorizontal","Skeleton","map","column","Math","max","labelSkeletonWidth","index","length","variant","rows","cells","rule","initialRule","onRuleChange","range","rangeProp","firstDayOfWeek","onCellPress","formatCell","isLoading","error","onRetry","emptyTitle","emptyDescription","heightProp","columnWidthProp","subjectLabel","showRuleSwitcher","showLegend","legendItems","stackProps","setRule","document","ensureKeyboardModalityTracking","sz","sizeToken","MIN_PRESS_TARGET","axisHeight","useMemo","alignMatrixRange","computeMatrixRange","cell","date","buckets","generateBuckets","summaries","summarizeMatrixCells","maxValue","rowIds","Set","bucketKeys","matrixMaxValue","Array","from","values","filter","has","rowId","bucketKey","gridWidth","rangeLabel","formatRangeLabel","changeRule","useCallback","next","cellText","_summary_value","formatNumber","count","axisScrollRef","useRef","handleCanvasScroll","event","_ref","_event_nativeEvent_contentOffset","_event_nativeEvent","_axisScrollRef_current_scrollTo","_axisScrollRef_current","x","nativeEvent","contentOffset","current","scrollTo","animated","scrollerDirection","direction","showSkeleton","AsyncBoundary","loading","elevation","containerRadius","size","density","gap","heading","sectionHeading","ViewSwitcher","views","type","currentView","onViewChange","val","flexShrink","background","textAccentColor","ref","horizontal","flex","scrollEnabled","showsHorizontalScrollIndicator","style","body","onScroll","scrollEventThrottle","rowIndex","columnIndex","get","matrixCellKey","matrixCellIntensity","withInterp","subject"],"sources":["../../../src/views/Matrix.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -48,6 +48,8 @@ __export(ganttMath_exports, {
48
48
  shiftSpanByDays: () => shiftSpanByDays,
49
49
  spanInclusiveDays: () => spanInclusiveDays,
50
50
  startOfDay: () => startOfDay,
51
+ startOfMonth: () => startOfMonth,
52
+ startOfWeek: () => startOfWeek,
51
53
  todayLineX: () => todayLineX,
52
54
  xToDate: () => xToDate
53
55
  });
@@ -50,6 +50,8 @@ __export(ganttMath_exports, {
50
50
  shiftSpanByDays: () => shiftSpanByDays,
51
51
  spanInclusiveDays: () => spanInclusiveDays,
52
52
  startOfDay: () => startOfDay,
53
+ startOfMonth: () => startOfMonth,
54
+ startOfWeek: () => startOfWeek,
53
55
  todayLineX: () => todayLineX,
54
56
  xToDate: () => xToDate
55
57
  });