@12-apps/ui 6.37.0 → 6.39.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 (917) hide show
  1. package/dist/_internal/components/data-display/AsyncStateContainer/AsyncStateContainer.js +4 -4
  2. package/dist/_internal/components/data-display/CardKit/CardKebab.js +2 -2
  3. package/dist/_internal/components/data-display/DataGrid/DataGrid.body.js +3 -2
  4. package/dist/_internal/components/data-display/DataGrid/DataGrid.cells.js +2 -1
  5. package/dist/_internal/components/data-display/DataGrid/DataGrid.js +4 -4
  6. package/dist/_internal/components/data-display/DataGrid/DataGrid.model.js +2 -1
  7. package/dist/_internal/components/data-display/DataViews/DataViewsBoard.js +2 -2
  8. package/dist/_internal/components/data-display/DataViews/DataViewsGrid.js +49 -49
  9. package/dist/_internal/components/data-display/DataViews/DataViewsTableBase.js +61 -62
  10. package/dist/_internal/components/data-display/DataViews/DeleteViewDialog.js +4 -5
  11. package/dist/_internal/components/data-display/DataViews/ManageViewsDialog.js +4 -5
  12. package/dist/_internal/components/data-display/DataViews/SaveViewModal.js +9 -10
  13. package/dist/_internal/components/data-display/DataViews/base-card.js +4 -5
  14. package/dist/_internal/components/data-display/DataViews/base-list-card-geometry.js +6 -6
  15. package/dist/_internal/components/data-display/DataViews/base-list-card-slots.js +5 -5
  16. package/dist/_internal/components/data-display/DataViews/base-list-card.js +9 -10
  17. package/dist/_internal/components/data-display/DataViews/data-views-category-pill.js +8 -8
  18. package/dist/_internal/components/data-display/DataViews/data-views-columns-tab.js +2 -2
  19. package/dist/_internal/components/data-display/DataViews/data-views-columns.js +3 -3
  20. package/dist/_internal/components/data-display/DataViews/data-views-display-panel.js +6 -6
  21. package/dist/_internal/components/data-display/DataViews/data-views-display-tabs.js +3 -3
  22. package/dist/_internal/components/data-display/DataViews/data-views-empty.js +2 -2
  23. package/dist/_internal/components/data-display/DataViews/data-views-export.js +2 -2
  24. package/dist/_internal/components/data-display/DataViews/data-views-filter-panel.js +14 -14
  25. package/dist/_internal/components/data-display/DataViews/data-views-grid-bodies.js +12 -12
  26. package/dist/_internal/components/data-display/DataViews/data-views-grid-helpers.js +2 -2
  27. package/dist/_internal/components/data-display/DataViews/data-views-grid-parts.js +46 -46
  28. package/dist/_internal/components/data-display/DataViews/data-views-header-row.js +2 -2
  29. package/dist/_internal/components/data-display/DataViews/data-views-inline-bar.js +14 -14
  30. package/dist/_internal/components/data-display/DataViews/data-views-layout-context.js +1 -1
  31. package/dist/_internal/components/data-display/DataViews/data-views-more-fields.js +11 -11
  32. package/dist/_internal/components/data-display/DataViews/data-views-more-filters.js +12 -12
  33. package/dist/_internal/components/data-display/DataViews/data-views-overflow-costs.js +4 -3
  34. package/dist/_internal/components/data-display/DataViews/data-views-overflow.js +3 -2
  35. package/dist/_internal/components/data-display/DataViews/data-views-pagination.js +4 -4
  36. package/dist/_internal/components/data-display/DataViews/data-views-range-pill.js +2 -2
  37. package/dist/_internal/components/data-display/DataViews/data-views-scope-tabs.js +2 -2
  38. package/dist/_internal/components/data-display/DataViews/data-views-select-all-strip.js +2 -2
  39. package/dist/_internal/components/data-display/DataViews/data-views-shell-toolbar.js +18 -18
  40. package/dist/_internal/components/data-display/DataViews/data-views-table-parts.js +18 -19
  41. package/dist/_internal/components/data-display/DataViews/data-views-toolbar.js +17 -17
  42. package/dist/_internal/components/data-display/DataViews/data-views-view-nav.js +2 -2
  43. package/dist/_internal/components/data-display/DataViews/list-card-rails.js +2 -2
  44. package/dist/_internal/components/data-display/DataViews/save-view-preview.js +2 -2
  45. package/dist/_internal/components/data-display/DataViews/use-data-views-state.js +4 -4
  46. package/dist/_internal/components/data-display/DescriptionItem/DescriptionItem.js +2 -2
  47. package/dist/_internal/components/data-display/FleetMap/FleetBody.js +12 -12
  48. package/dist/_internal/components/data-display/FleetMap/FleetCanvas.js +8 -8
  49. package/dist/_internal/components/data-display/FleetMap/FleetMap.js +13 -13
  50. package/dist/_internal/components/data-display/FleetMap/FleetRoster.js +3 -3
  51. package/dist/_internal/components/data-display/LazyImage/LazyImage.js +3 -3
  52. package/dist/_internal/components/data-display/LoadingState/LoadingState.js +3 -3
  53. package/dist/_internal/components/data-display/MapPreview/MapDecorations.js +2 -2
  54. package/dist/_internal/components/data-display/MapPreview/MapPreview.hooks.js +2 -2
  55. package/dist/_internal/components/data-display/MapPreview/MapPreview.js +7 -7
  56. package/dist/_internal/components/data-display/MapPreview/MapTiles.js +2 -2
  57. package/dist/_internal/components/data-display/MapPreview/StaticMapView.js +4 -4
  58. package/dist/_internal/components/data-display/MapPreview/mapProjection.js +3 -3
  59. package/dist/_internal/components/data-display/MapPreview/useMapPreview.js +3 -3
  60. package/dist/_internal/components/data-display/StatCard/StatCard.js +3 -3
  61. package/dist/_internal/components/data-display/Table/Table.helpers.js +5 -3
  62. package/dist/_internal/components/data-display/Table/Table.hooks.js +2 -1
  63. package/dist/_internal/components/data-display/Table/Table.js +4 -4
  64. package/dist/_internal/components/data-display/Table/TableParts.hooks.js +4 -2
  65. package/dist/_internal/components/data-display/Table/TableParts.js +4 -2
  66. package/dist/_internal/components/data-display/index.js +27 -27
  67. package/dist/_internal/components/feedback/Dialog/Dialog.js +3 -3
  68. package/dist/_internal/components/feedback/Dialog/Dialog.styles.js +2 -2
  69. package/dist/_internal/components/feedback/Modal/Modal.js +3 -2
  70. package/dist/_internal/components/feedback/Modal/Modal.styles.js +2 -1
  71. package/dist/_internal/components/feedback/Sonner/Sonner.js +2 -2
  72. package/dist/_internal/components/feedback/Sonner/SonnerToast.js +1 -1
  73. package/dist/_internal/components/feedback/StackedModal/StackedModal.js +4 -3
  74. package/dist/_internal/components/feedback/StackedModal/StackedModal.parts.js +3 -2
  75. package/dist/_internal/components/feedback/StackedModal/StackedModal.styles.js +2 -1
  76. package/dist/_internal/components/feedback/Toast/Toast.js +2 -1
  77. package/dist/_internal/components/feedback/TutorialOverlay/TutorialOverlay.geometry.js +1 -1
  78. package/dist/_internal/components/feedback/TutorialOverlay/TutorialOverlay.hooks.js +3 -2
  79. package/dist/_internal/components/feedback/TutorialOverlay/TutorialOverlay.js +5 -4
  80. package/dist/_internal/components/feedback/TutorialOverlay/TutorialStepBody.js +2 -1
  81. package/dist/_internal/components/feedback/index.js +14 -15
  82. package/dist/_internal/components/form/Calendar/Calendar.js +5 -4
  83. package/dist/_internal/components/form/Calendar/CalendarDay.js +2 -1
  84. package/dist/_internal/components/form/Calendar/CalendarDayCell.js +3 -2
  85. package/dist/_internal/components/form/Calendar/CalendarMonth.js +4 -3
  86. package/dist/_internal/components/form/DateRangePicker/DateRangePicker.js +5 -5
  87. package/dist/_internal/components/form/Switch/Switch.js +4 -4
  88. package/dist/_internal/components/form/Switch/Switch.metrics.js +5 -1
  89. package/dist/_internal/components/form/Switch/Switch.parts.js +3 -3
  90. package/dist/_internal/components/form/Switch/Switch.styles.js +2 -2
  91. package/dist/_internal/components/form/index.js +9 -9
  92. package/dist/_internal/components/form/total-form/FormErrorSnackbar.js +3 -2
  93. package/dist/_internal/components/index.js +117 -118
  94. package/dist/_internal/components/layout/Accordion/Accordion.js +3 -2
  95. package/dist/_internal/components/layout/Accordion/Accordion.styles.js +2 -1
  96. package/dist/_internal/components/layout/Box/Box.js +1 -1
  97. package/dist/_internal/components/layout/Card/Card.js +3 -3
  98. package/dist/_internal/components/layout/Card/Card.styles.js +2 -2
  99. package/dist/_internal/components/layout/CardGrid/CardGrid.js +2 -1
  100. package/dist/_internal/components/layout/Collapsible/Collapsible.helpers.js +2 -1
  101. package/dist/_internal/components/layout/Collapsible/Collapsible.js +3 -2
  102. package/dist/_internal/components/layout/ContentToolbar/ColumnsMenu.js +1 -1
  103. package/dist/_internal/components/layout/ContentToolbar/ContentToolbar.js +1 -1
  104. package/dist/_internal/components/layout/ContentToolbar/FilterTrigger.js +1 -1
  105. package/dist/_internal/components/layout/ContentToolbar/MultiSelectDropdown.js +1 -1
  106. package/dist/_internal/components/layout/ContentToolbar/SavedViewsMenu.js +1 -1
  107. package/dist/_internal/components/layout/ContentToolbar/SortByDropdown.js +1 -1
  108. package/dist/_internal/components/layout/ContentToolbar/ViewSelector.js +1 -1
  109. package/dist/_internal/components/layout/Dashboard/Dashboard.js +2 -2
  110. package/dist/_internal/components/layout/Dashboard/DashboardParts.js +1 -1
  111. package/dist/_internal/components/layout/Drawer/Drawer.js +2 -1
  112. package/dist/_internal/components/layout/Resizable/Resizable.helpers.js +8 -3
  113. package/dist/_internal/components/layout/Resizable/Resizable.hooks.js +3 -2
  114. package/dist/_internal/components/layout/Resizable/Resizable.js +4 -3
  115. package/dist/_internal/components/layout/ScrollArea/ScrollArea.helpers.js +1 -1
  116. package/dist/_internal/components/layout/ScrollArea/ScrollArea.js +6 -5
  117. package/dist/_internal/components/layout/ScrollArea/ScrollArea.styles.js +6 -3
  118. package/dist/_internal/components/layout/ScrollArea/ScrollAreaContent.js +2 -1
  119. package/dist/_internal/components/layout/ScrollArea/ScrollViewport.js +3 -2
  120. package/dist/_internal/components/layout/Separator/Separator.js +4 -2
  121. package/dist/_internal/components/layout/Separator/Separator.styles.js +3 -1
  122. package/dist/_internal/components/layout/SettingsLayout/SettingsLayout.items.js +3 -3
  123. package/dist/_internal/components/layout/SettingsLayout/SettingsLayout.js +8 -8
  124. package/dist/_internal/components/layout/SettingsLayout/SettingsLayout.rail.js +4 -4
  125. package/dist/_internal/components/layout/SettingsLayout/SettingsLayout.styles.js +6 -5
  126. package/dist/_internal/components/layout/SettingsLayout/SettingsPanel.js +5 -5
  127. package/dist/_internal/components/layout/SettingsLayout/SettingsSectionChips.js +3 -3
  128. package/dist/_internal/components/layout/SettingsLayout/SettingsSectionHeader.js +2 -2
  129. package/dist/_internal/components/layout/SettingsLayout/SettingsStatusMarker.js +2 -2
  130. package/dist/_internal/components/layout/Sidebar/Sidebar.js +2 -1
  131. package/dist/_internal/components/layout/Skeleton/Skeleton.js +3 -2
  132. package/dist/_internal/components/layout/Skeleton/Skeleton.styles.js +6 -3
  133. package/dist/_internal/components/layout/Spacer/Spacer.js +2 -1
  134. package/dist/_internal/components/layout/Stack/Stack.js +2 -2
  135. package/dist/_internal/components/layout/TableFilter/TableFilter.js +1 -1
  136. package/dist/_internal/components/layout/index.js +31 -32
  137. package/dist/_internal/components/navigation/AppHeader/AppHeader.brand.js +1 -1
  138. package/dist/_internal/components/navigation/AppHeader/AppHeader.details.js +3 -4
  139. package/dist/_internal/components/navigation/AppHeader/AppHeader.identity.js +2 -2
  140. package/dist/_internal/components/navigation/AppHeader/AppHeader.js +1 -1
  141. package/dist/_internal/components/navigation/Breadcrumbs/BreadcrumbEntry.js +2 -2
  142. package/dist/_internal/components/navigation/Breadcrumbs/Breadcrumbs.js +3 -3
  143. package/dist/_internal/components/navigation/Breadcrumbs/Breadcrumbs.styles.js +1 -1
  144. package/dist/_internal/components/navigation/CommandPalette/CommandPalette.js +3 -3
  145. package/dist/_internal/components/navigation/CommandPalette/CommandPaletteResults.js +2 -2
  146. package/dist/_internal/components/navigation/CommandPalette/ShortcutChip.js +1 -1
  147. package/dist/_internal/components/navigation/ContextMenu/ContextMenu.js +1 -1
  148. package/dist/_internal/components/navigation/DropdownMenu/DropdownMenu.js +1 -1
  149. package/dist/_internal/components/navigation/NavigationMenu/NavigationMegaSection.js +4 -4
  150. package/dist/_internal/components/navigation/NavigationMenu/NavigationMenu.js +6 -6
  151. package/dist/_internal/components/navigation/NavigationMenu/NavigationMenu.shell.js +2 -2
  152. package/dist/_internal/components/navigation/NavigationMenu/NavigationMenu.styles.js +1 -1
  153. package/dist/_internal/components/navigation/NavigationMenu/NavigationMenuItem.js +2 -2
  154. package/dist/_internal/components/navigation/NavigationMenu/NavigationStandardBody.js +4 -4
  155. package/dist/_internal/components/navigation/Pagination/Pagination.js +3 -3
  156. package/dist/_internal/components/navigation/Pagination/Pagination.styles.js +1 -1
  157. package/dist/_internal/components/navigation/Pagination/PaginationParts.js +2 -1
  158. package/dist/_internal/components/navigation/Tabs/Tabs.js +10 -3
  159. package/dist/_internal/components/navigation/Tabs/Tabs.styles.js +8 -1
  160. package/dist/_internal/components/navigation/Tabs/TabsPanel.js +2 -1
  161. package/dist/_internal/components/navigation/index.js +26 -27
  162. package/dist/_internal/components/typography/Blockquote/Blockquote.js +1 -1
  163. package/dist/_internal/components/typography/Code/Code.js +1 -1
  164. package/dist/_internal/components/typography/Text/Text.js +1 -1
  165. package/dist/_internal/components/typography/index.js +3 -3
  166. package/dist/_internal/components/utility/AnimatedIcon/AnimatedIcon.animations.js +2 -1
  167. package/dist/_internal/components/utility/AnimatedIcon/AnimatedIcon.js +3 -3
  168. package/dist/_internal/components/utility/AnimatedIcon/AnimatedIcon.styles.js +2 -2
  169. package/dist/_internal/components/utility/AspectRatio/AspectRatio.js +2 -1
  170. package/dist/_internal/components/utility/InfiniteScroll/InfiniteScroll.hooks.js +1 -1
  171. package/dist/_internal/components/utility/InfiniteScroll/InfiniteScroll.js +4 -3
  172. package/dist/_internal/components/utility/InfiniteScroll/InfiniteScroll.parts.js +2 -1
  173. package/dist/_internal/components/utility/VirtualList/VirtualList.hooks.js +6 -3
  174. package/dist/_internal/components/utility/VirtualList/VirtualList.js +3 -2
  175. package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.js +3 -3
  176. package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.parts.js +1 -1
  177. package/dist/_internal/components/utility/WorkflowStep/WorkflowStepRow.js +2 -2
  178. package/dist/_internal/components/utility/index.js +12 -12
  179. package/dist/_internal/social-login-button/social-login-button.js +6 -7
  180. package/dist/_internal/tokens/shadow.js +19 -8
  181. package/dist/_internal/tokens/shadow.js.map +1 -1
  182. package/dist/_internal/user-avatar/user-avatar.js +4 -5
  183. package/dist/{chunk-J2DAQQQH.js → chunk-222HN7GK.js} +33 -64
  184. package/dist/chunk-222HN7GK.js.map +1 -0
  185. package/dist/{chunk-2BIVCYTO.js → chunk-27LOJVR3.js} +5 -5
  186. package/dist/{chunk-BLJDCMFU.js → chunk-2ARVNCVU.js} +7 -7
  187. package/dist/chunk-2ARVNCVU.js.map +1 -0
  188. package/dist/{chunk-CRZXSZ5O.js → chunk-2S752BIJ.js} +2 -2
  189. package/dist/{chunk-IYTBTK2M.js → chunk-2WU52FLP.js} +19 -30
  190. package/dist/chunk-2WU52FLP.js.map +1 -0
  191. package/dist/{chunk-RSQMPCCR.js → chunk-34643ATX.js} +10 -4
  192. package/dist/chunk-34643ATX.js.map +1 -0
  193. package/dist/{chunk-6GRZ77IS.js → chunk-3AIRFAI3.js} +13 -12
  194. package/dist/chunk-3AIRFAI3.js.map +1 -0
  195. package/dist/{chunk-Q73PTVNO.js → chunk-3FNXOCBD.js} +24 -12
  196. package/dist/chunk-3FNXOCBD.js.map +1 -0
  197. package/dist/{chunk-BAQBUKDU.js → chunk-3KREF4ZF.js} +2 -2
  198. package/dist/{chunk-EL7CMURV.js → chunk-3LSIFHQK.js} +3 -3
  199. package/dist/chunk-3LSIFHQK.js.map +1 -0
  200. package/dist/{chunk-MP4VSWHK.js → chunk-3NJMNMWB.js} +12 -2
  201. package/dist/chunk-3NJMNMWB.js.map +1 -0
  202. package/dist/{chunk-N52O2OKZ.js → chunk-3NNO6YIH.js} +8 -3
  203. package/dist/chunk-3NNO6YIH.js.map +1 -0
  204. package/dist/{chunk-SYN46YL6.js → chunk-3RMDIO4G.js} +3 -3
  205. package/dist/{chunk-S3D5VBHW.js → chunk-3YOXVNO4.js} +7 -7
  206. package/dist/{chunk-MJ3BVWPZ.js → chunk-43G3WMYN.js} +12 -7
  207. package/dist/chunk-43G3WMYN.js.map +1 -0
  208. package/dist/{chunk-E7MSDXED.js → chunk-43H66TVT.js} +12 -5
  209. package/dist/chunk-43H66TVT.js.map +1 -0
  210. package/dist/{chunk-IL7JZKXY.js → chunk-442FSG7G.js} +3 -3
  211. package/dist/{chunk-JL75FJRG.js → chunk-4ALF5PB5.js} +4 -4
  212. package/dist/{chunk-DYVAOEW4.js → chunk-4D4LLSQC.js} +6 -5
  213. package/dist/chunk-4D4LLSQC.js.map +1 -0
  214. package/dist/{chunk-NEGCJNGJ.js → chunk-4G47KBTP.js} +9 -9
  215. package/dist/chunk-4G47KBTP.js.map +1 -0
  216. package/dist/{chunk-MVXFMIVZ.js → chunk-4GB46HLK.js} +8 -4
  217. package/dist/chunk-4GB46HLK.js.map +1 -0
  218. package/dist/{chunk-CS3KOKL3.js → chunk-4GWHYLEB.js} +2 -2
  219. package/dist/{chunk-XJPJ6ESI.js → chunk-4OAKGKK5.js} +3 -3
  220. package/dist/{chunk-4OEKIFBC.js → chunk-4VMFS3VJ.js} +6 -3
  221. package/dist/chunk-4VMFS3VJ.js.map +1 -0
  222. package/dist/{chunk-6CTPDNNX.js → chunk-52G2KRL4.js} +14 -14
  223. package/dist/chunk-52G2KRL4.js.map +1 -0
  224. package/dist/{chunk-4CHROSWR.js → chunk-5ETBB2DG.js} +2 -2
  225. package/dist/{chunk-E7T3A4IR.js → chunk-5JCGBCFJ.js} +2 -2
  226. package/dist/{chunk-ATSHKSSD.js → chunk-5KNDAC24.js} +20 -7
  227. package/dist/chunk-5KNDAC24.js.map +1 -0
  228. package/dist/{chunk-ULTOQ6ZV.js → chunk-5LWB4BYX.js} +80 -89
  229. package/dist/chunk-5LWB4BYX.js.map +1 -0
  230. package/dist/{chunk-FC7NQ6XM.js → chunk-5MW7OYBM.js} +2 -2
  231. package/dist/{chunk-46UPILLK.js → chunk-5NT2M2JI.js} +2 -2
  232. package/dist/{chunk-MK4CH4VT.js → chunk-5OUEKIWQ.js} +14 -12
  233. package/dist/chunk-5OUEKIWQ.js.map +1 -0
  234. package/dist/{chunk-GHXFCMFP.js → chunk-5QAJ3Y5F.js} +3 -3
  235. package/dist/{chunk-GHXFCMFP.js.map → chunk-5QAJ3Y5F.js.map} +1 -1
  236. package/dist/{chunk-CPTY6UZ6.js → chunk-6KEXHOIF.js} +5 -4
  237. package/dist/chunk-6KEXHOIF.js.map +1 -0
  238. package/dist/{chunk-H5BEWPEY.js → chunk-6N2EDWMG.js} +2 -2
  239. package/dist/{chunk-BW62QQAG.js → chunk-6N4AA2Y7.js} +2 -2
  240. package/dist/{chunk-EFHIMCJN.js → chunk-6P2OFMBX.js} +11 -9
  241. package/dist/chunk-6P2OFMBX.js.map +1 -0
  242. package/dist/{chunk-GJQYM3PM.js → chunk-6PU3JYVY.js} +2 -2
  243. package/dist/{chunk-GUW5BUK7.js → chunk-6WBKOM5K.js} +15 -7
  244. package/dist/chunk-6WBKOM5K.js.map +1 -0
  245. package/dist/{chunk-7EIOXZWL.js → chunk-74P3YX7R.js} +4 -4
  246. package/dist/{chunk-VYSFKR32.js → chunk-75CGLX6Q.js} +3 -3
  247. package/dist/{chunk-VYSFKR32.js.map → chunk-75CGLX6Q.js.map} +1 -1
  248. package/dist/{chunk-LVEG6XQL.js → chunk-76X6JRVI.js} +19 -33
  249. package/dist/chunk-76X6JRVI.js.map +1 -0
  250. package/dist/{chunk-2NLYGZP3.js → chunk-77JL5XVD.js} +13 -9
  251. package/dist/chunk-77JL5XVD.js.map +1 -0
  252. package/dist/{chunk-PUBPZOQJ.js → chunk-AG3DY5TH.js} +8 -5
  253. package/dist/chunk-AG3DY5TH.js.map +1 -0
  254. package/dist/{chunk-T3WHW7ZC.js → chunk-BAZXVFLR.js} +10 -6
  255. package/dist/chunk-BAZXVFLR.js.map +1 -0
  256. package/dist/{chunk-7F7TTOYN.js → chunk-BEGTLELZ.js} +7 -6
  257. package/dist/chunk-BEGTLELZ.js.map +1 -0
  258. package/dist/{chunk-VT5HQ2AD.js → chunk-BFMDA6UO.js} +3 -3
  259. package/dist/{chunk-R75DZ3AK.js → chunk-BVLMKSHX.js} +2 -2
  260. package/dist/{chunk-75LOTMSN.js → chunk-BWHOCNGW.js} +5 -5
  261. package/dist/chunk-BWHOCNGW.js.map +1 -0
  262. package/dist/{chunk-PMP6WJJS.js → chunk-BWMHGENX.js} +20 -19
  263. package/dist/chunk-BWMHGENX.js.map +1 -0
  264. package/dist/{chunk-TUBCN4DJ.js → chunk-CB6DTWD5.js} +7 -7
  265. package/dist/chunk-CB6DTWD5.js.map +1 -0
  266. package/dist/{chunk-CAHWCSRE.js → chunk-D46SLMCX.js} +22 -8
  267. package/dist/chunk-D46SLMCX.js.map +1 -0
  268. package/dist/{chunk-FFOQZRFC.js → chunk-D4FZ3ANG.js} +15 -5
  269. package/dist/chunk-D4FZ3ANG.js.map +1 -0
  270. package/dist/{chunk-2OIP3T5O.js → chunk-DBFRCTI5.js} +4 -4
  271. package/dist/{chunk-2OIP3T5O.js.map → chunk-DBFRCTI5.js.map} +1 -1
  272. package/dist/{chunk-HNPWZ3W2.js → chunk-DDRKYNPB.js} +4 -4
  273. package/dist/{chunk-DLJGBJZW.js → chunk-DGMDQHMI.js} +16 -9
  274. package/dist/chunk-DGMDQHMI.js.map +1 -0
  275. package/dist/{chunk-IAGOUTI6.js → chunk-DNT5PZLF.js} +21 -12
  276. package/dist/chunk-DNT5PZLF.js.map +1 -0
  277. package/dist/{chunk-HU7TX7RB.js → chunk-DUBTI4DI.js} +4 -4
  278. package/dist/{chunk-DZA7RSLX.js → chunk-DVSO3EG6.js} +19 -11
  279. package/dist/chunk-DVSO3EG6.js.map +1 -0
  280. package/dist/{chunk-RMCNEKBZ.js → chunk-DW6F7354.js} +2 -2
  281. package/dist/{chunk-Q4BQYYPU.js → chunk-E2QIKJX2.js} +11 -5
  282. package/dist/chunk-E2QIKJX2.js.map +1 -0
  283. package/dist/{chunk-XJUEHG72.js → chunk-EERUSI52.js} +2 -2
  284. package/dist/{chunk-NDNYD4FG.js → chunk-EHYI2WCJ.js} +5 -5
  285. package/dist/{chunk-NB3FGWU4.js → chunk-EQXIW5MQ.js} +2 -2
  286. package/dist/{chunk-QAP3FW33.js → chunk-ERY6D2OV.js} +35 -23
  287. package/dist/chunk-ERY6D2OV.js.map +1 -0
  288. package/dist/{chunk-NPP44TQG.js → chunk-EYZ6QBTV.js} +2 -2
  289. package/dist/{chunk-NPP44TQG.js.map → chunk-EYZ6QBTV.js.map} +1 -1
  290. package/dist/{chunk-2ZIHZLF5.js → chunk-F44R7US6.js} +4 -4
  291. package/dist/{chunk-AROBXRC5.js → chunk-F7JTIHV5.js} +18 -7
  292. package/dist/chunk-F7JTIHV5.js.map +1 -0
  293. package/dist/{chunk-U342T7ZR.js → chunk-FOCU4QT5.js} +13 -10
  294. package/dist/chunk-FOCU4QT5.js.map +1 -0
  295. package/dist/{chunk-35S6QI5G.js → chunk-FX26DAFF.js} +2 -2
  296. package/dist/{chunk-FYTLKHEN.js → chunk-FYKFQPVT.js} +19 -18
  297. package/dist/chunk-FYKFQPVT.js.map +1 -0
  298. package/dist/{chunk-TVL5V2JK.js → chunk-GGMB6LJH.js} +7 -3
  299. package/dist/chunk-GGMB6LJH.js.map +1 -0
  300. package/dist/{chunk-AYLEZM6T.js → chunk-GLFTIGOF.js} +3 -3
  301. package/dist/{chunk-QEG3P5D4.js → chunk-GLHNMTP6.js} +13 -13
  302. package/dist/{chunk-7UZ2TFIK.js → chunk-GNCSDUGY.js} +12 -4
  303. package/dist/chunk-GNCSDUGY.js.map +1 -0
  304. package/dist/{chunk-L4UP5VYS.js → chunk-GVH7C2PT.js} +2 -2
  305. package/dist/{chunk-MBSYD3ZU.js → chunk-GWFAINQ7.js} +3 -3
  306. package/dist/chunk-GWFAINQ7.js.map +1 -0
  307. package/dist/{chunk-YU26GBNX.js → chunk-H3AQQOTI.js} +9 -4
  308. package/dist/chunk-H3AQQOTI.js.map +1 -0
  309. package/dist/{chunk-HTZNB6IV.js → chunk-H5ZTIELC.js} +23 -8
  310. package/dist/chunk-H5ZTIELC.js.map +1 -0
  311. package/dist/{chunk-AER4245J.js → chunk-H67EL3CG.js} +6 -6
  312. package/dist/{chunk-GSFNH4C5.js → chunk-HBP2OU4Q.js} +15 -8
  313. package/dist/chunk-HBP2OU4Q.js.map +1 -0
  314. package/dist/{chunk-57JLS55D.js → chunk-HBRQPG7H.js} +7 -7
  315. package/dist/{chunk-3D6HXKZM.js → chunk-HDJQDMHB.js} +18 -13
  316. package/dist/chunk-HDJQDMHB.js.map +1 -0
  317. package/dist/{chunk-HGMBY5LP.js → chunk-HQWJUHR4.js} +18 -11
  318. package/dist/chunk-HQWJUHR4.js.map +1 -0
  319. package/dist/{chunk-UZ6AUTE6.js → chunk-I3F4C5SS.js} +7 -7
  320. package/dist/{chunk-L7SFH3ED.js → chunk-I7GSRTGQ.js} +37 -28
  321. package/dist/chunk-I7GSRTGQ.js.map +1 -0
  322. package/dist/{chunk-Q4CAZ2TP.js → chunk-IG23YZZR.js} +6 -5
  323. package/dist/chunk-IG23YZZR.js.map +1 -0
  324. package/dist/{chunk-5W4BLTDI.js → chunk-IWFENXST.js} +7 -6
  325. package/dist/chunk-IWFENXST.js.map +1 -0
  326. package/dist/{chunk-HXEBKOSM.js → chunk-J5UZB6Y6.js} +2 -2
  327. package/dist/chunk-J5UZB6Y6.js.map +1 -0
  328. package/dist/{chunk-4CXEWFKO.js → chunk-J5VWGQSR.js} +2 -2
  329. package/dist/{chunk-AJ5SDHX5.js → chunk-JCL7WK4G.js} +2 -2
  330. package/dist/{chunk-MTFCPPZ5.js → chunk-JWZJSXI5.js} +3 -2
  331. package/dist/chunk-JWZJSXI5.js.map +1 -0
  332. package/dist/{chunk-5CKDRLRN.js → chunk-JXECOCNA.js} +35 -19
  333. package/dist/chunk-JXECOCNA.js.map +1 -0
  334. package/dist/{chunk-WUTHROII.js → chunk-JYWF76Z5.js} +11 -5
  335. package/dist/chunk-JYWF76Z5.js.map +1 -0
  336. package/dist/{chunk-B76QCDCE.js → chunk-K4L42FF6.js} +6 -3
  337. package/dist/chunk-K4L42FF6.js.map +1 -0
  338. package/dist/{chunk-4JFL62K3.js → chunk-K7FSTB2K.js} +3 -3
  339. package/dist/{chunk-WE3LJPRN.js → chunk-KE473LK6.js} +2 -2
  340. package/dist/{chunk-TBF2CPJW.js → chunk-KIHGTL2D.js} +21 -11
  341. package/dist/chunk-KIHGTL2D.js.map +1 -0
  342. package/dist/{chunk-3T5Z5HXF.js → chunk-KM3Y5TCG.js} +40 -36
  343. package/dist/chunk-KM3Y5TCG.js.map +1 -0
  344. package/dist/{chunk-C55AWF3U.js → chunk-KRQUPE4K.js} +4 -4
  345. package/dist/{chunk-SJO3K7SB.js → chunk-KXLUMEDX.js} +4 -4
  346. package/dist/{chunk-RWTFZ7J5.js → chunk-L4G5BZFF.js} +22 -13
  347. package/dist/chunk-L4G5BZFF.js.map +1 -0
  348. package/dist/{chunk-HB7ISSLK.js → chunk-L5RQIQIP.js} +26 -22
  349. package/dist/chunk-L5RQIQIP.js.map +1 -0
  350. package/dist/{chunk-CQPFSEJB.js → chunk-L7NQCLFU.js} +2 -2
  351. package/dist/{chunk-DVAAUWTC.js → chunk-LCHCE2G5.js} +2 -2
  352. package/dist/{chunk-G4HBNILE.js → chunk-LEHMWJNZ.js} +3 -3
  353. package/dist/{chunk-OATHOXIU.js → chunk-MC4KYGSX.js} +8 -8
  354. package/dist/chunk-MC4KYGSX.js.map +1 -0
  355. package/dist/{chunk-P6TNXBDA.js → chunk-MYKWJCR7.js} +9 -9
  356. package/dist/chunk-MYKWJCR7.js.map +1 -0
  357. package/dist/{chunk-YVUD3MY4.js → chunk-N23GCN5U.js} +7 -4
  358. package/dist/chunk-N23GCN5U.js.map +1 -0
  359. package/dist/{chunk-2TJOCI54.js → chunk-NCEQWEXT.js} +3 -3
  360. package/dist/{chunk-2TJOCI54.js.map → chunk-NCEQWEXT.js.map} +1 -1
  361. package/dist/{chunk-IVIHRZEY.js → chunk-NDMPXMW2.js} +12 -8
  362. package/dist/chunk-NDMPXMW2.js.map +1 -0
  363. package/dist/{chunk-UUUMNJPP.js → chunk-NLYNRE7L.js} +10 -10
  364. package/dist/chunk-NLYNRE7L.js.map +1 -0
  365. package/dist/{chunk-KLWW67WP.js → chunk-NOKN4HRK.js} +12 -11
  366. package/dist/chunk-NOKN4HRK.js.map +1 -0
  367. package/dist/{chunk-LIG7TKIB.js → chunk-NYFNF7I5.js} +11 -6
  368. package/dist/chunk-NYFNF7I5.js.map +1 -0
  369. package/dist/{chunk-KK57AHWS.js → chunk-OAEYCKBN.js} +2 -2
  370. package/dist/{chunk-JGRE56GQ.js → chunk-OB56SZGL.js} +2 -2
  371. package/dist/{chunk-TQ6FPOPD.js → chunk-ODW2D5PN.js} +39 -30
  372. package/dist/chunk-ODW2D5PN.js.map +1 -0
  373. package/dist/{chunk-VRDNUY4H.js → chunk-OHC3F7GJ.js} +4 -4
  374. package/dist/chunk-OHC3F7GJ.js.map +1 -0
  375. package/dist/{chunk-E4TNDTWV.js → chunk-OL2BEJZR.js} +2 -2
  376. package/dist/{chunk-ZTYUKEN3.js → chunk-OVXSQQDK.js} +12 -7
  377. package/dist/chunk-OVXSQQDK.js.map +1 -0
  378. package/dist/{chunk-ZQL5RXVE.js → chunk-PA3AA55Q.js} +2 -2
  379. package/dist/{chunk-ZQL5RXVE.js.map → chunk-PA3AA55Q.js.map} +1 -1
  380. package/dist/{chunk-IKLOIONQ.js → chunk-PCBZYORN.js} +3 -3
  381. package/dist/{chunk-CQLPDY2J.js → chunk-PRIBOWX4.js} +3 -3
  382. package/dist/{chunk-F42MJOHM.js → chunk-PVM7XTLZ.js} +64 -62
  383. package/dist/chunk-PVM7XTLZ.js.map +1 -0
  384. package/dist/{chunk-LT4NEKXB.js → chunk-QA2ZGCRL.js} +3 -3
  385. package/dist/{chunk-3TDVGZZN.js → chunk-QBTBRJ2Q.js} +37 -13
  386. package/dist/chunk-QBTBRJ2Q.js.map +1 -0
  387. package/dist/{chunk-2E2WOBID.js → chunk-QGFBIUOK.js} +5 -5
  388. package/dist/chunk-QGFBIUOK.js.map +1 -0
  389. package/dist/{chunk-2WFDHFK4.js → chunk-QNCWSDXE.js} +26 -11
  390. package/dist/chunk-QNCWSDXE.js.map +1 -0
  391. package/dist/{chunk-PQECNGDE.js → chunk-QSRZOXQI.js} +2 -2
  392. package/dist/{chunk-RHIDWUK7.js → chunk-QUWK7SYN.js} +1 -2
  393. package/dist/chunk-QUWK7SYN.js.map +1 -0
  394. package/dist/{chunk-ROT57BP4.js → chunk-R2XVTUVR.js} +2 -2
  395. package/dist/{chunk-UN5INW6K.js → chunk-R53ZOW4B.js} +8 -4
  396. package/dist/chunk-R53ZOW4B.js.map +1 -0
  397. package/dist/{chunk-MVKYNDT2.js → chunk-RKROWJVF.js} +11 -9
  398. package/dist/chunk-RKROWJVF.js.map +1 -0
  399. package/dist/{chunk-DCJSHYE5.js → chunk-RSDYS5B3.js} +4 -4
  400. package/dist/{chunk-NYZO3JNB.js → chunk-RXJQA3FQ.js} +2 -3
  401. package/dist/chunk-RXJQA3FQ.js.map +1 -0
  402. package/dist/{chunk-N5GVW6RO.js → chunk-S6IWKDWT.js} +2 -2
  403. package/dist/{chunk-DB2ZFZVW.js → chunk-SBIZXZPP.js} +3 -3
  404. package/dist/{chunk-NCPWLHZT.js → chunk-SKT2V2OX.js} +3 -3
  405. package/dist/{chunk-EOW2ECB3.js → chunk-SNURSSTN.js} +2 -2
  406. package/dist/{chunk-GRDPGHQJ.js → chunk-SV6JGFHG.js} +9 -5
  407. package/dist/chunk-SV6JGFHG.js.map +1 -0
  408. package/dist/{chunk-CZBND7AY.js → chunk-T7DE44SP.js} +2 -2
  409. package/dist/{chunk-D5SZXH7Q.js → chunk-TNBJ4DK4.js} +7 -3
  410. package/dist/chunk-TNBJ4DK4.js.map +1 -0
  411. package/dist/{chunk-3CVTQZQJ.js → chunk-TNYKM4UU.js} +13 -9
  412. package/dist/chunk-TNYKM4UU.js.map +1 -0
  413. package/dist/{chunk-3VMGE7CU.js → chunk-TZFBJ47T.js} +3 -3
  414. package/dist/chunk-TZFBJ47T.js.map +1 -0
  415. package/dist/{chunk-VFHGILXI.js → chunk-U3DBQXPI.js} +20 -17
  416. package/dist/chunk-U3DBQXPI.js.map +1 -0
  417. package/dist/{chunk-QKPD322X.js → chunk-UFNIS7KC.js} +2 -2
  418. package/dist/chunk-UFNIS7KC.js.map +1 -0
  419. package/dist/{chunk-BNEWMFVB.js → chunk-UGGJ3KDT.js} +2 -2
  420. package/dist/{chunk-L4QCIUTJ.js → chunk-UMNXSQ7I.js} +3 -3
  421. package/dist/{chunk-L4QCIUTJ.js.map → chunk-UMNXSQ7I.js.map} +1 -1
  422. package/dist/{chunk-2CTTASUD.js → chunk-V5EWCJBT.js} +7 -4
  423. package/dist/chunk-V5EWCJBT.js.map +1 -0
  424. package/dist/{chunk-236V2GRH.js → chunk-VCBV5JM7.js} +49 -41
  425. package/dist/chunk-VCBV5JM7.js.map +1 -0
  426. package/dist/{chunk-KREWQAEV.js → chunk-VIRYHNEM.js} +2 -2
  427. package/dist/{chunk-PT2XADGH.js → chunk-VPRNKJHP.js} +9 -6
  428. package/dist/chunk-VPRNKJHP.js.map +1 -0
  429. package/dist/{chunk-JXUWWPZR.js → chunk-VQYR64QB.js} +14 -8
  430. package/dist/chunk-VQYR64QB.js.map +1 -0
  431. package/dist/{chunk-72DKEBJM.js → chunk-VRPREI27.js} +3 -3
  432. package/dist/chunk-VRPREI27.js.map +1 -0
  433. package/dist/{chunk-N6CSXHFJ.js → chunk-WN5PNP6F.js} +2 -2
  434. package/dist/{chunk-6QLPSMTA.js → chunk-XEWMY4ZM.js} +52 -47
  435. package/dist/chunk-XEWMY4ZM.js.map +1 -0
  436. package/dist/{chunk-XR46FSOH.js → chunk-XIG3DXXX.js} +2 -2
  437. package/dist/{chunk-GHTBUJ6E.js → chunk-XRUW7DMH.js} +2 -2
  438. package/dist/{chunk-CSTAQX2B.js → chunk-XWZJLXJT.js} +7 -6
  439. package/dist/chunk-XWZJLXJT.js.map +1 -0
  440. package/dist/{chunk-PMOEG36E.js → chunk-XZJM6EPC.js} +8 -6
  441. package/dist/chunk-XZJM6EPC.js.map +1 -0
  442. package/dist/{chunk-QF6LTUCE.js → chunk-Y2X7LYIN.js} +4 -4
  443. package/dist/chunk-Y2X7LYIN.js.map +1 -0
  444. package/dist/{chunk-MBC55H6M.js → chunk-Y5UTYBZW.js} +12 -6
  445. package/dist/chunk-Y5UTYBZW.js.map +1 -0
  446. package/dist/{chunk-WTOYEWW6.js → chunk-YBH4SPMM.js} +4 -3
  447. package/dist/chunk-YBH4SPMM.js.map +1 -0
  448. package/dist/{chunk-JLQGRZMN.js → chunk-YCCY77W5.js} +3 -3
  449. package/dist/{chunk-5QWQR7XT.js → chunk-YHGOPZXW.js} +11 -8
  450. package/dist/chunk-YHGOPZXW.js.map +1 -0
  451. package/dist/{chunk-6BDYC4RA.js → chunk-YRSR5LVZ.js} +3 -3
  452. package/dist/{chunk-57JY4OI2.js → chunk-YUXDVW62.js} +3 -3
  453. package/dist/chunk-YUXDVW62.js.map +1 -0
  454. package/dist/{chunk-DF4K5XVW.js → chunk-YZVR5ROE.js} +14 -6
  455. package/dist/chunk-YZVR5ROE.js.map +1 -0
  456. package/dist/{chunk-RNEYZTE4.js → chunk-Z6MCTGIK.js} +2 -2
  457. package/dist/{chunk-RNEYZTE4.js.map → chunk-Z6MCTGIK.js.map} +1 -1
  458. package/dist/{chunk-AUSUCZYR.js → chunk-ZBVU2YWV.js} +5 -5
  459. package/dist/chunk-ZBVU2YWV.js.map +1 -0
  460. package/dist/{chunk-VZIB5W5L.js → chunk-ZGCPDA3F.js} +2 -2
  461. package/dist/data-display/AsyncStateContainer.js +4 -4
  462. package/dist/data-display/CardKit.js +2 -2
  463. package/dist/data-display/DataGrid.js +4 -4
  464. package/dist/data-display/DataViews.js +68 -69
  465. package/dist/data-display/DescriptionItem.js +2 -2
  466. package/dist/data-display/FleetMap.js +13 -13
  467. package/dist/data-display/LazyImage.js +3 -3
  468. package/dist/data-display/LoadingState.js +3 -3
  469. package/dist/data-display/MapPreview.js +7 -7
  470. package/dist/data-display/StatCard.js +3 -3
  471. package/dist/data-display/Table.js +4 -4
  472. package/dist/feedback/Dialog.js +3 -3
  473. package/dist/feedback/Modal.js +3 -2
  474. package/dist/feedback/Sonner.js +2 -2
  475. package/dist/feedback/StackedModal.js +4 -3
  476. package/dist/feedback/Toast.js +2 -1
  477. package/dist/feedback/TutorialOverlay.js +5 -4
  478. package/dist/form/Calendar.js +5 -4
  479. package/dist/form/DateRangePicker.js +5 -5
  480. package/dist/form/Switch.js +4 -4
  481. package/dist/form/total-form.js +2 -2
  482. package/dist/layout/Accordion.js +3 -2
  483. package/dist/layout/Box.js +1 -1
  484. package/dist/layout/Card.js +3 -3
  485. package/dist/layout/CardGrid.js +2 -1
  486. package/dist/layout/Collapsible.js +3 -2
  487. package/dist/layout/ContentToolbar.js +7 -7
  488. package/dist/layout/Dashboard.js +2 -2
  489. package/dist/layout/Drawer.js +2 -1
  490. package/dist/layout/Resizable.js +4 -3
  491. package/dist/layout/ScrollArea.js +6 -5
  492. package/dist/layout/Separator.js +4 -2
  493. package/dist/layout/SettingsLayout.js +8 -8
  494. package/dist/layout/Sidebar.js +2 -1
  495. package/dist/layout/Skeleton.js +3 -2
  496. package/dist/layout/Spacer.js +2 -1
  497. package/dist/layout/Stack.js +2 -2
  498. package/dist/layout/TableFilter.js +1 -1
  499. package/dist/native/form/Switch.js +3 -1
  500. package/dist/native/form/Switch.js.map +1 -1
  501. package/dist/navigation/AppHeader.js +6 -7
  502. package/dist/navigation/Breadcrumbs.js +3 -3
  503. package/dist/navigation/CommandPalette.js +3 -3
  504. package/dist/navigation/ContextMenu.js +1 -1
  505. package/dist/navigation/DropdownMenu.js +1 -1
  506. package/dist/navigation/NavigationMenu.js +6 -6
  507. package/dist/navigation/Pagination.js +3 -3
  508. package/dist/navigation/Tabs.js +10 -3
  509. package/dist/social-login-button.js +6 -7
  510. package/dist/types/components/data-display/DataGrid/DataGrid.body.d.ts.map +1 -1
  511. package/dist/types/components/data-display/DataGrid/DataGrid.cells.d.ts +4 -2
  512. package/dist/types/components/data-display/DataGrid/DataGrid.cells.d.ts.map +1 -1
  513. package/dist/types/components/data-display/DataGrid/DataGrid.model.d.ts +7 -1
  514. package/dist/types/components/data-display/DataGrid/DataGrid.model.d.ts.map +1 -1
  515. package/dist/types/components/data-display/DataGrid/DataGrid.types.d.ts +10 -4
  516. package/dist/types/components/data-display/DataGrid/DataGrid.types.d.ts.map +1 -1
  517. package/dist/types/components/data-display/DataViews/data-views-columns.d.ts.map +1 -1
  518. package/dist/types/components/data-display/DataViews/data-views-grid-helpers.d.ts +2 -0
  519. package/dist/types/components/data-display/DataViews/data-views-grid-helpers.d.ts.map +1 -1
  520. package/dist/types/components/data-display/DataViews/data-views-layout-context.d.ts +7 -3
  521. package/dist/types/components/data-display/DataViews/data-views-layout-context.d.ts.map +1 -1
  522. package/dist/types/components/data-display/DataViews/data-views-overflow-costs.d.ts +19 -9
  523. package/dist/types/components/data-display/DataViews/data-views-overflow-costs.d.ts.map +1 -1
  524. package/dist/types/components/data-display/DataViews/data-views-overflow.d.ts.map +1 -1
  525. package/dist/types/components/data-display/MapPreview/MapTiles.d.ts.map +1 -1
  526. package/dist/types/components/data-display/MapPreview/mapProjection.d.ts +6 -1
  527. package/dist/types/components/data-display/MapPreview/mapProjection.d.ts.map +1 -1
  528. package/dist/types/components/data-display/Table/Table.helpers.d.ts +6 -0
  529. package/dist/types/components/data-display/Table/Table.helpers.d.ts.map +1 -1
  530. package/dist/types/components/data-display/Table/Table.hooks.d.ts +9 -1
  531. package/dist/types/components/data-display/Table/Table.hooks.d.ts.map +1 -1
  532. package/dist/types/components/data-display/Table/Table.types.d.ts +6 -2
  533. package/dist/types/components/data-display/Table/Table.types.d.ts.map +1 -1
  534. package/dist/types/components/data-display/Table/TableParts.d.ts +2 -0
  535. package/dist/types/components/data-display/Table/TableParts.d.ts.map +1 -1
  536. package/dist/types/components/feedback/Dialog/Dialog.styles.d.ts.map +1 -1
  537. package/dist/types/components/feedback/Modal/Modal.d.ts.map +1 -1
  538. package/dist/types/components/feedback/Modal/Modal.styles.d.ts.map +1 -1
  539. package/dist/types/components/feedback/StackedModal/StackedModal.parts.d.ts.map +1 -1
  540. package/dist/types/components/feedback/StackedModal/StackedModal.styles.d.ts.map +1 -1
  541. package/dist/types/components/feedback/Toast/Toast.d.ts.map +1 -1
  542. package/dist/types/components/feedback/TutorialOverlay/TutorialOverlay.d.ts.map +1 -1
  543. package/dist/types/components/feedback/TutorialOverlay/TutorialOverlay.geometry.d.ts +3 -1
  544. package/dist/types/components/feedback/TutorialOverlay/TutorialOverlay.geometry.d.ts.map +1 -1
  545. package/dist/types/components/feedback/TutorialOverlay/TutorialOverlay.hooks.d.ts.map +1 -1
  546. package/dist/types/components/feedback/TutorialOverlay/TutorialStepBody.d.ts.map +1 -1
  547. package/dist/types/components/form/Calendar/Calendar.d.ts.map +1 -1
  548. package/dist/types/components/form/Calendar/CalendarDay.d.ts.map +1 -1
  549. package/dist/types/components/form/Calendar/CalendarMonth.d.ts.map +1 -1
  550. package/dist/types/components/form/Switch/Switch.metrics.d.ts +13 -3
  551. package/dist/types/components/form/Switch/Switch.metrics.d.ts.map +1 -1
  552. package/dist/types/components/form/Switch/Switch.styles.d.ts.map +1 -1
  553. package/dist/types/components/layout/Accordion/Accordion.d.ts.map +1 -1
  554. package/dist/types/components/layout/Accordion/Accordion.styles.d.ts.map +1 -1
  555. package/dist/types/components/layout/Box/Box.d.ts +2 -1
  556. package/dist/types/components/layout/Box/Box.d.ts.map +1 -1
  557. package/dist/types/components/layout/Card/Card.styles.d.ts.map +1 -1
  558. package/dist/types/components/layout/CardGrid/CardGrid.d.ts +9 -7
  559. package/dist/types/components/layout/CardGrid/CardGrid.d.ts.map +1 -1
  560. package/dist/types/components/layout/Collapsible/Collapsible.d.ts.map +1 -1
  561. package/dist/types/components/layout/Collapsible/Collapsible.helpers.d.ts +1 -1
  562. package/dist/types/components/layout/Collapsible/Collapsible.helpers.d.ts.map +1 -1
  563. package/dist/types/components/layout/Drawer/Drawer.d.ts.map +1 -1
  564. package/dist/types/components/layout/Resizable/Resizable.d.ts.map +1 -1
  565. package/dist/types/components/layout/Resizable/Resizable.helpers.d.ts +21 -9
  566. package/dist/types/components/layout/Resizable/Resizable.helpers.d.ts.map +1 -1
  567. package/dist/types/components/layout/Resizable/Resizable.hooks.d.ts +13 -3
  568. package/dist/types/components/layout/Resizable/Resizable.hooks.d.ts.map +1 -1
  569. package/dist/types/components/layout/Resizable/Resizable.types.d.ts +10 -0
  570. package/dist/types/components/layout/Resizable/Resizable.types.d.ts.map +1 -1
  571. package/dist/types/components/layout/ScrollArea/ScrollArea.d.ts.map +1 -1
  572. package/dist/types/components/layout/ScrollArea/ScrollArea.helpers.d.ts +1 -1
  573. package/dist/types/components/layout/ScrollArea/ScrollArea.helpers.d.ts.map +1 -1
  574. package/dist/types/components/layout/ScrollArea/ScrollArea.styles.d.ts +6 -0
  575. package/dist/types/components/layout/ScrollArea/ScrollArea.styles.d.ts.map +1 -1
  576. package/dist/types/components/layout/ScrollArea/ScrollArea.types.d.ts +4 -1
  577. package/dist/types/components/layout/ScrollArea/ScrollArea.types.d.ts.map +1 -1
  578. package/dist/types/components/layout/ScrollArea/ScrollViewport.d.ts.map +1 -1
  579. package/dist/types/components/layout/Separator/Separator.d.ts.map +1 -1
  580. package/dist/types/components/layout/Separator/Separator.styles.d.ts +7 -4
  581. package/dist/types/components/layout/Separator/Separator.styles.d.ts.map +1 -1
  582. package/dist/types/components/layout/SettingsLayout/SettingsLayout.items.d.ts.map +1 -1
  583. package/dist/types/components/layout/SettingsLayout/SettingsLayout.rail.d.ts.map +1 -1
  584. package/dist/types/components/layout/SettingsLayout/SettingsLayout.styles.d.ts +4 -4
  585. package/dist/types/components/layout/SettingsLayout/SettingsLayout.styles.d.ts.map +1 -1
  586. package/dist/types/components/layout/Sidebar/Sidebar.d.ts.map +1 -1
  587. package/dist/types/components/layout/Skeleton/Skeleton.d.ts.map +1 -1
  588. package/dist/types/components/layout/Skeleton/Skeleton.styles.d.ts +8 -1
  589. package/dist/types/components/layout/Skeleton/Skeleton.styles.d.ts.map +1 -1
  590. package/dist/types/components/layout/Spacer/Spacer.d.ts.map +1 -1
  591. package/dist/types/components/layout/TableFilter/TableFilter.d.ts.map +1 -1
  592. package/dist/types/components/navigation/AppHeader/AppHeader.d.ts.map +1 -1
  593. package/dist/types/components/navigation/AppHeader/AppHeader.details.d.ts.map +1 -1
  594. package/dist/types/components/navigation/AppHeader/AppHeader.identity.d.ts.map +1 -1
  595. package/dist/types/components/navigation/Breadcrumbs/Breadcrumbs.styles.d.ts +2 -2
  596. package/dist/types/components/navigation/Breadcrumbs/Breadcrumbs.styles.d.ts.map +1 -1
  597. package/dist/types/components/navigation/DropdownMenu/DropdownMenu.d.ts.map +1 -1
  598. package/dist/types/components/navigation/NavigationMenu/NavigationMegaSection.d.ts.map +1 -1
  599. package/dist/types/components/navigation/NavigationMenu/NavigationMenu.d.ts.map +1 -1
  600. package/dist/types/components/navigation/NavigationMenu/NavigationMenu.shell.d.ts.map +1 -1
  601. package/dist/types/components/navigation/NavigationMenu/NavigationMenu.styles.d.ts +2 -2
  602. package/dist/types/components/navigation/NavigationMenu/NavigationMenu.styles.d.ts.map +1 -1
  603. package/dist/types/components/navigation/NavigationMenu/NavigationStandardBody.d.ts.map +1 -1
  604. package/dist/types/components/navigation/Pagination/Pagination.d.ts.map +1 -1
  605. package/dist/types/components/navigation/Pagination/PaginationParts.d.ts.map +1 -1
  606. package/dist/types/components/navigation/Tabs/Tabs.d.ts.map +1 -1
  607. package/dist/types/components/navigation/Tabs/Tabs.styles.d.ts.map +1 -1
  608. package/dist/types/components/navigation/Tabs/TabsPanel.d.ts.map +1 -1
  609. package/dist/types/components/utility/AnimatedIcon/AnimatedIcon.animations.d.ts +9 -8
  610. package/dist/types/components/utility/AnimatedIcon/AnimatedIcon.animations.d.ts.map +1 -1
  611. package/dist/types/components/utility/AnimatedIcon/AnimatedIcon.styles.d.ts +1 -1
  612. package/dist/types/components/utility/AnimatedIcon/AnimatedIcon.styles.d.ts.map +1 -1
  613. package/dist/types/components/utility/AspectRatio/AspectRatio.d.ts.map +1 -1
  614. package/dist/types/components/utility/InfiniteScroll/InfiniteScroll.d.ts.map +1 -1
  615. package/dist/types/components/utility/InfiniteScroll/InfiniteScroll.hooks.d.ts +3 -2
  616. package/dist/types/components/utility/InfiniteScroll/InfiniteScroll.hooks.d.ts.map +1 -1
  617. package/dist/types/components/utility/InfiniteScroll/InfiniteScroll.parts.d.ts +3 -2
  618. package/dist/types/components/utility/InfiniteScroll/InfiniteScroll.parts.d.ts.map +1 -1
  619. package/dist/types/components/utility/InfiniteScroll/InfiniteScroll.types.d.ts +9 -0
  620. package/dist/types/components/utility/InfiniteScroll/InfiniteScroll.types.d.ts.map +1 -1
  621. package/dist/types/components/utility/VirtualList/VirtualList.d.ts.map +1 -1
  622. package/dist/types/components/utility/VirtualList/VirtualList.hooks.d.ts +24 -28
  623. package/dist/types/components/utility/VirtualList/VirtualList.hooks.d.ts.map +1 -1
  624. package/dist/types/components/utility/VirtualList/VirtualList.types.d.ts +17 -0
  625. package/dist/types/components/utility/VirtualList/VirtualList.types.d.ts.map +1 -1
  626. package/dist/types/social-login-button/social-login-button.d.ts.map +1 -1
  627. package/dist/types-native/components/form/Switch/Switch.metrics.d.ts +13 -3
  628. package/dist/types-native/components/form/Switch/Switch.metrics.d.ts.map +1 -1
  629. package/dist/typography/Blockquote.js +1 -1
  630. package/dist/typography/Code.js +1 -1
  631. package/dist/typography/Text.js +1 -1
  632. package/dist/user-avatar.js +4 -5
  633. package/dist/utility/AnimatedIcon.js +3 -3
  634. package/dist/utility/AspectRatio.js +2 -1
  635. package/dist/utility/InfiniteScroll.js +4 -3
  636. package/dist/utility/VirtualList.js +3 -2
  637. package/dist/utility/WorkflowStep.js +3 -3
  638. package/package.json +1 -1
  639. package/src/components/data-display/DataGrid/DataGrid.body.tsx +27 -7
  640. package/src/components/data-display/DataGrid/DataGrid.cells.tsx +33 -9
  641. package/src/components/data-display/DataGrid/DataGrid.model.ts +24 -11
  642. package/src/components/data-display/DataGrid/DataGrid.types.ts +12 -6
  643. package/src/components/data-display/DataViews/data-views-columns.ts +14 -3
  644. package/src/components/data-display/DataViews/data-views-grid-helpers.tsx +5 -3
  645. package/src/components/data-display/DataViews/data-views-layout-context.tsx +12 -9
  646. package/src/components/data-display/DataViews/data-views-overflow-costs.ts +32 -14
  647. package/src/components/data-display/DataViews/data-views-overflow.ts +40 -26
  648. package/src/components/data-display/MapPreview/MapTiles.tsx +16 -9
  649. package/src/components/data-display/MapPreview/mapProjection.ts +10 -5
  650. package/src/components/data-display/Table/Table.helpers.ts +7 -1
  651. package/src/components/data-display/Table/Table.hooks.ts +16 -5
  652. package/src/components/data-display/Table/Table.types.ts +6 -2
  653. package/src/components/data-display/Table/TableParts.tsx +38 -42
  654. package/src/components/feedback/Dialog/Dialog.styles.ts +16 -28
  655. package/src/components/feedback/Modal/Modal.styles.ts +9 -8
  656. package/src/components/feedback/Modal/Modal.tsx +3 -2
  657. package/src/components/feedback/Sonner/Sonner.tsx +4 -4
  658. package/src/components/feedback/Sonner/SonnerToast.tsx +9 -9
  659. package/src/components/feedback/StackedModal/StackedModal.parts.tsx +26 -19
  660. package/src/components/feedback/StackedModal/StackedModal.styles.ts +11 -9
  661. package/src/components/feedback/Toast/Toast.tsx +11 -7
  662. package/src/components/feedback/TutorialOverlay/TutorialOverlay.geometry.ts +2 -3
  663. package/src/components/feedback/TutorialOverlay/TutorialOverlay.hooks.ts +6 -1
  664. package/src/components/feedback/TutorialOverlay/TutorialOverlay.tsx +43 -37
  665. package/src/components/feedback/TutorialOverlay/TutorialStepBody.tsx +3 -2
  666. package/src/components/form/Calendar/Calendar.tsx +4 -2
  667. package/src/components/form/Calendar/CalendarDay.tsx +6 -3
  668. package/src/components/form/Calendar/CalendarMonth.tsx +6 -3
  669. package/src/components/form/Switch/Switch.metrics.ts +19 -5
  670. package/src/components/form/Switch/Switch.styles.ts +5 -3
  671. package/src/components/layout/Accordion/Accordion.styles.ts +8 -6
  672. package/src/components/layout/Accordion/Accordion.tsx +10 -8
  673. package/src/components/layout/Box/Box.tsx +18 -5
  674. package/src/components/layout/Card/Card.styles.ts +22 -30
  675. package/src/components/layout/CardGrid/CardGrid.tsx +37 -24
  676. package/src/components/layout/Collapsible/Collapsible.helpers.ts +4 -2
  677. package/src/components/layout/Collapsible/Collapsible.tsx +8 -4
  678. package/src/components/layout/ContentToolbar/ColumnsMenu.tsx +1 -1
  679. package/src/components/layout/ContentToolbar/ContentToolbar.tsx +2 -2
  680. package/src/components/layout/ContentToolbar/FilterTrigger.tsx +2 -2
  681. package/src/components/layout/ContentToolbar/MultiSelectDropdown.tsx +1 -1
  682. package/src/components/layout/ContentToolbar/SavedViewsMenu.tsx +2 -2
  683. package/src/components/layout/ContentToolbar/SortByDropdown.tsx +2 -2
  684. package/src/components/layout/ContentToolbar/ViewSelector.tsx +2 -2
  685. package/src/components/layout/Dashboard/Dashboard.tsx +1 -1
  686. package/src/components/layout/Dashboard/DashboardParts.tsx +1 -1
  687. package/src/components/layout/Drawer/Drawer.tsx +23 -10
  688. package/src/components/layout/Resizable/Resizable.helpers.ts +43 -21
  689. package/src/components/layout/Resizable/Resizable.hooks.ts +17 -9
  690. package/src/components/layout/Resizable/Resizable.md +9 -5
  691. package/src/components/layout/Resizable/Resizable.tsx +20 -8
  692. package/src/components/layout/Resizable/Resizable.types.ts +10 -0
  693. package/src/components/layout/ScrollArea/ScrollArea.helpers.ts +0 -2
  694. package/src/components/layout/ScrollArea/ScrollArea.styles.ts +45 -32
  695. package/src/components/layout/ScrollArea/ScrollArea.tsx +35 -18
  696. package/src/components/layout/ScrollArea/ScrollArea.types.ts +4 -1
  697. package/src/components/layout/ScrollArea/ScrollAreaContent.tsx +2 -2
  698. package/src/components/layout/ScrollArea/ScrollViewport.tsx +6 -4
  699. package/src/components/layout/Separator/Separator.styles.ts +30 -9
  700. package/src/components/layout/Separator/Separator.tsx +4 -3
  701. package/src/components/layout/SettingsLayout/SettingsLayout.items.tsx +4 -2
  702. package/src/components/layout/SettingsLayout/SettingsLayout.rail.tsx +6 -5
  703. package/src/components/layout/SettingsLayout/SettingsLayout.styles.ts +9 -7
  704. package/src/components/layout/SettingsLayout/SettingsLayout.tsx +2 -2
  705. package/src/components/layout/SettingsLayout/SettingsPanel.tsx +1 -1
  706. package/src/components/layout/SettingsLayout/SettingsSectionChips.tsx +3 -3
  707. package/src/components/layout/SettingsLayout/SettingsSectionHeader.tsx +3 -3
  708. package/src/components/layout/SettingsLayout/SettingsStatusMarker.tsx +2 -2
  709. package/src/components/layout/Sidebar/Sidebar.tsx +16 -6
  710. package/src/components/layout/Skeleton/Skeleton.styles.ts +13 -3
  711. package/src/components/layout/Skeleton/Skeleton.tsx +6 -4
  712. package/src/components/layout/Spacer/Spacer.tsx +16 -1
  713. package/src/components/layout/TableFilter/TableFilter.tsx +2 -1
  714. package/src/components/navigation/AppHeader/AppHeader.brand.tsx +2 -2
  715. package/src/components/navigation/AppHeader/AppHeader.details.tsx +9 -7
  716. package/src/components/navigation/AppHeader/AppHeader.identity.tsx +28 -15
  717. package/src/components/navigation/AppHeader/AppHeader.tsx +18 -6
  718. package/src/components/navigation/Breadcrumbs/BreadcrumbEntry.tsx +4 -4
  719. package/src/components/navigation/Breadcrumbs/Breadcrumbs.styles.tsx +15 -15
  720. package/src/components/navigation/CommandPalette/CommandPalette.tsx +7 -7
  721. package/src/components/navigation/CommandPalette/CommandPaletteResults.tsx +5 -5
  722. package/src/components/navigation/CommandPalette/ShortcutChip.tsx +1 -1
  723. package/src/components/navigation/ContextMenu/ContextMenu.tsx +8 -8
  724. package/src/components/navigation/DropdownMenu/DropdownMenu.tsx +25 -16
  725. package/src/components/navigation/NavigationMenu/NavigationMegaSection.tsx +5 -4
  726. package/src/components/navigation/NavigationMenu/NavigationMenu.shell.tsx +22 -20
  727. package/src/components/navigation/NavigationMenu/NavigationMenu.styles.ts +11 -11
  728. package/src/components/navigation/NavigationMenu/NavigationMenu.tsx +7 -2
  729. package/src/components/navigation/NavigationMenu/NavigationMenuItem.tsx +12 -12
  730. package/src/components/navigation/NavigationMenu/NavigationStandardBody.tsx +3 -2
  731. package/src/components/navigation/Pagination/Pagination.styles.ts +18 -18
  732. package/src/components/navigation/Pagination/Pagination.tsx +2 -1
  733. package/src/components/navigation/Pagination/PaginationParts.tsx +4 -3
  734. package/src/components/navigation/Tabs/Tabs.styles.ts +14 -12
  735. package/src/components/navigation/Tabs/Tabs.tsx +11 -9
  736. package/src/components/navigation/Tabs/TabsPanel.tsx +10 -3
  737. package/src/components/typography/Blockquote/Blockquote.tsx +8 -8
  738. package/src/components/typography/Code/Code.tsx +17 -17
  739. package/src/components/typography/Text/Text.tsx +2 -2
  740. package/src/components/utility/AnimatedIcon/AnimatedIcon.animations.ts +38 -35
  741. package/src/components/utility/AnimatedIcon/AnimatedIcon.styles.ts +51 -46
  742. package/src/components/utility/AnimatedIcon/AnimatedIcon.tsx +1 -1
  743. package/src/components/utility/AspectRatio/AspectRatio.tsx +13 -2
  744. package/src/components/utility/InfiniteScroll/InfiniteScroll.hooks.ts +5 -4
  745. package/src/components/utility/InfiniteScroll/InfiniteScroll.parts.tsx +29 -12
  746. package/src/components/utility/InfiniteScroll/InfiniteScroll.tsx +11 -5
  747. package/src/components/utility/InfiniteScroll/InfiniteScroll.types.ts +10 -2
  748. package/src/components/utility/VirtualList/VirtualList.hooks.ts +101 -112
  749. package/src/components/utility/VirtualList/VirtualList.tsx +36 -65
  750. package/src/components/utility/VirtualList/VirtualList.types.ts +20 -3
  751. package/src/components/utility/WorkflowStep/WorkflowStep.parts.tsx +7 -7
  752. package/src/social-login-button/social-login-button.tsx +25 -8
  753. package/dist/chunk-236V2GRH.js.map +0 -1
  754. package/dist/chunk-2CTTASUD.js.map +0 -1
  755. package/dist/chunk-2E2WOBID.js.map +0 -1
  756. package/dist/chunk-2NLYGZP3.js.map +0 -1
  757. package/dist/chunk-2WFDHFK4.js.map +0 -1
  758. package/dist/chunk-3CVTQZQJ.js.map +0 -1
  759. package/dist/chunk-3D6HXKZM.js.map +0 -1
  760. package/dist/chunk-3T5Z5HXF.js.map +0 -1
  761. package/dist/chunk-3TDVGZZN.js.map +0 -1
  762. package/dist/chunk-3VMGE7CU.js.map +0 -1
  763. package/dist/chunk-4OEKIFBC.js.map +0 -1
  764. package/dist/chunk-57JY4OI2.js.map +0 -1
  765. package/dist/chunk-5CKDRLRN.js.map +0 -1
  766. package/dist/chunk-5QWQR7XT.js.map +0 -1
  767. package/dist/chunk-5W4BLTDI.js.map +0 -1
  768. package/dist/chunk-6CTPDNNX.js.map +0 -1
  769. package/dist/chunk-6GRZ77IS.js.map +0 -1
  770. package/dist/chunk-6QLPSMTA.js.map +0 -1
  771. package/dist/chunk-72DKEBJM.js.map +0 -1
  772. package/dist/chunk-73BEVJCS.js +0 -28
  773. package/dist/chunk-73BEVJCS.js.map +0 -1
  774. package/dist/chunk-75LOTMSN.js.map +0 -1
  775. package/dist/chunk-7F7TTOYN.js.map +0 -1
  776. package/dist/chunk-7UZ2TFIK.js.map +0 -1
  777. package/dist/chunk-AROBXRC5.js.map +0 -1
  778. package/dist/chunk-ATSHKSSD.js.map +0 -1
  779. package/dist/chunk-AUSUCZYR.js.map +0 -1
  780. package/dist/chunk-B76QCDCE.js.map +0 -1
  781. package/dist/chunk-BLJDCMFU.js.map +0 -1
  782. package/dist/chunk-CAHWCSRE.js.map +0 -1
  783. package/dist/chunk-CPTY6UZ6.js.map +0 -1
  784. package/dist/chunk-CSTAQX2B.js.map +0 -1
  785. package/dist/chunk-D5SZXH7Q.js.map +0 -1
  786. package/dist/chunk-DF4K5XVW.js.map +0 -1
  787. package/dist/chunk-DLJGBJZW.js.map +0 -1
  788. package/dist/chunk-DYVAOEW4.js.map +0 -1
  789. package/dist/chunk-DZA7RSLX.js.map +0 -1
  790. package/dist/chunk-E7MSDXED.js.map +0 -1
  791. package/dist/chunk-EFHIMCJN.js.map +0 -1
  792. package/dist/chunk-EL7CMURV.js.map +0 -1
  793. package/dist/chunk-F42MJOHM.js.map +0 -1
  794. package/dist/chunk-FFOQZRFC.js.map +0 -1
  795. package/dist/chunk-FYTLKHEN.js.map +0 -1
  796. package/dist/chunk-GRDPGHQJ.js.map +0 -1
  797. package/dist/chunk-GSFNH4C5.js.map +0 -1
  798. package/dist/chunk-GUW5BUK7.js.map +0 -1
  799. package/dist/chunk-HB7ISSLK.js.map +0 -1
  800. package/dist/chunk-HGMBY5LP.js.map +0 -1
  801. package/dist/chunk-HTZNB6IV.js.map +0 -1
  802. package/dist/chunk-HXEBKOSM.js.map +0 -1
  803. package/dist/chunk-IAGOUTI6.js.map +0 -1
  804. package/dist/chunk-IVIHRZEY.js.map +0 -1
  805. package/dist/chunk-IYTBTK2M.js.map +0 -1
  806. package/dist/chunk-J2DAQQQH.js.map +0 -1
  807. package/dist/chunk-JXUWWPZR.js.map +0 -1
  808. package/dist/chunk-KLWW67WP.js.map +0 -1
  809. package/dist/chunk-L7SFH3ED.js.map +0 -1
  810. package/dist/chunk-LIG7TKIB.js.map +0 -1
  811. package/dist/chunk-LVEG6XQL.js.map +0 -1
  812. package/dist/chunk-MBC55H6M.js.map +0 -1
  813. package/dist/chunk-MBSYD3ZU.js.map +0 -1
  814. package/dist/chunk-MJ3BVWPZ.js.map +0 -1
  815. package/dist/chunk-MK4CH4VT.js.map +0 -1
  816. package/dist/chunk-MP4VSWHK.js.map +0 -1
  817. package/dist/chunk-MTFCPPZ5.js.map +0 -1
  818. package/dist/chunk-MVKYNDT2.js.map +0 -1
  819. package/dist/chunk-MVXFMIVZ.js.map +0 -1
  820. package/dist/chunk-N52O2OKZ.js.map +0 -1
  821. package/dist/chunk-NEGCJNGJ.js.map +0 -1
  822. package/dist/chunk-NYZO3JNB.js.map +0 -1
  823. package/dist/chunk-OATHOXIU.js.map +0 -1
  824. package/dist/chunk-P6TNXBDA.js.map +0 -1
  825. package/dist/chunk-PMOEG36E.js.map +0 -1
  826. package/dist/chunk-PMP6WJJS.js.map +0 -1
  827. package/dist/chunk-PT2XADGH.js.map +0 -1
  828. package/dist/chunk-PUBPZOQJ.js.map +0 -1
  829. package/dist/chunk-Q4BQYYPU.js.map +0 -1
  830. package/dist/chunk-Q4CAZ2TP.js.map +0 -1
  831. package/dist/chunk-Q73PTVNO.js.map +0 -1
  832. package/dist/chunk-QAP3FW33.js.map +0 -1
  833. package/dist/chunk-QF6LTUCE.js.map +0 -1
  834. package/dist/chunk-QKPD322X.js.map +0 -1
  835. package/dist/chunk-RHIDWUK7.js.map +0 -1
  836. package/dist/chunk-RSQMPCCR.js.map +0 -1
  837. package/dist/chunk-RWTFZ7J5.js.map +0 -1
  838. package/dist/chunk-T3WHW7ZC.js.map +0 -1
  839. package/dist/chunk-TBF2CPJW.js.map +0 -1
  840. package/dist/chunk-TQ6FPOPD.js.map +0 -1
  841. package/dist/chunk-TUBCN4DJ.js.map +0 -1
  842. package/dist/chunk-TVL5V2JK.js.map +0 -1
  843. package/dist/chunk-U342T7ZR.js.map +0 -1
  844. package/dist/chunk-ULTOQ6ZV.js.map +0 -1
  845. package/dist/chunk-UN5INW6K.js.map +0 -1
  846. package/dist/chunk-UUUMNJPP.js.map +0 -1
  847. package/dist/chunk-VFHGILXI.js.map +0 -1
  848. package/dist/chunk-VRDNUY4H.js.map +0 -1
  849. package/dist/chunk-WTOYEWW6.js.map +0 -1
  850. package/dist/chunk-WUTHROII.js.map +0 -1
  851. package/dist/chunk-YU26GBNX.js.map +0 -1
  852. package/dist/chunk-YVUD3MY4.js.map +0 -1
  853. package/dist/chunk-ZTYUKEN3.js.map +0 -1
  854. /package/dist/{chunk-2BIVCYTO.js.map → chunk-27LOJVR3.js.map} +0 -0
  855. /package/dist/{chunk-CRZXSZ5O.js.map → chunk-2S752BIJ.js.map} +0 -0
  856. /package/dist/{chunk-BAQBUKDU.js.map → chunk-3KREF4ZF.js.map} +0 -0
  857. /package/dist/{chunk-SYN46YL6.js.map → chunk-3RMDIO4G.js.map} +0 -0
  858. /package/dist/{chunk-S3D5VBHW.js.map → chunk-3YOXVNO4.js.map} +0 -0
  859. /package/dist/{chunk-IL7JZKXY.js.map → chunk-442FSG7G.js.map} +0 -0
  860. /package/dist/{chunk-JL75FJRG.js.map → chunk-4ALF5PB5.js.map} +0 -0
  861. /package/dist/{chunk-CS3KOKL3.js.map → chunk-4GWHYLEB.js.map} +0 -0
  862. /package/dist/{chunk-XJPJ6ESI.js.map → chunk-4OAKGKK5.js.map} +0 -0
  863. /package/dist/{chunk-4CHROSWR.js.map → chunk-5ETBB2DG.js.map} +0 -0
  864. /package/dist/{chunk-E7T3A4IR.js.map → chunk-5JCGBCFJ.js.map} +0 -0
  865. /package/dist/{chunk-FC7NQ6XM.js.map → chunk-5MW7OYBM.js.map} +0 -0
  866. /package/dist/{chunk-46UPILLK.js.map → chunk-5NT2M2JI.js.map} +0 -0
  867. /package/dist/{chunk-H5BEWPEY.js.map → chunk-6N2EDWMG.js.map} +0 -0
  868. /package/dist/{chunk-BW62QQAG.js.map → chunk-6N4AA2Y7.js.map} +0 -0
  869. /package/dist/{chunk-GJQYM3PM.js.map → chunk-6PU3JYVY.js.map} +0 -0
  870. /package/dist/{chunk-7EIOXZWL.js.map → chunk-74P3YX7R.js.map} +0 -0
  871. /package/dist/{chunk-VT5HQ2AD.js.map → chunk-BFMDA6UO.js.map} +0 -0
  872. /package/dist/{chunk-R75DZ3AK.js.map → chunk-BVLMKSHX.js.map} +0 -0
  873. /package/dist/{chunk-HNPWZ3W2.js.map → chunk-DDRKYNPB.js.map} +0 -0
  874. /package/dist/{chunk-HU7TX7RB.js.map → chunk-DUBTI4DI.js.map} +0 -0
  875. /package/dist/{chunk-RMCNEKBZ.js.map → chunk-DW6F7354.js.map} +0 -0
  876. /package/dist/{chunk-XJUEHG72.js.map → chunk-EERUSI52.js.map} +0 -0
  877. /package/dist/{chunk-NDNYD4FG.js.map → chunk-EHYI2WCJ.js.map} +0 -0
  878. /package/dist/{chunk-NB3FGWU4.js.map → chunk-EQXIW5MQ.js.map} +0 -0
  879. /package/dist/{chunk-2ZIHZLF5.js.map → chunk-F44R7US6.js.map} +0 -0
  880. /package/dist/{chunk-35S6QI5G.js.map → chunk-FX26DAFF.js.map} +0 -0
  881. /package/dist/{chunk-AYLEZM6T.js.map → chunk-GLFTIGOF.js.map} +0 -0
  882. /package/dist/{chunk-QEG3P5D4.js.map → chunk-GLHNMTP6.js.map} +0 -0
  883. /package/dist/{chunk-L4UP5VYS.js.map → chunk-GVH7C2PT.js.map} +0 -0
  884. /package/dist/{chunk-AER4245J.js.map → chunk-H67EL3CG.js.map} +0 -0
  885. /package/dist/{chunk-57JLS55D.js.map → chunk-HBRQPG7H.js.map} +0 -0
  886. /package/dist/{chunk-UZ6AUTE6.js.map → chunk-I3F4C5SS.js.map} +0 -0
  887. /package/dist/{chunk-4CXEWFKO.js.map → chunk-J5VWGQSR.js.map} +0 -0
  888. /package/dist/{chunk-AJ5SDHX5.js.map → chunk-JCL7WK4G.js.map} +0 -0
  889. /package/dist/{chunk-4JFL62K3.js.map → chunk-K7FSTB2K.js.map} +0 -0
  890. /package/dist/{chunk-WE3LJPRN.js.map → chunk-KE473LK6.js.map} +0 -0
  891. /package/dist/{chunk-C55AWF3U.js.map → chunk-KRQUPE4K.js.map} +0 -0
  892. /package/dist/{chunk-SJO3K7SB.js.map → chunk-KXLUMEDX.js.map} +0 -0
  893. /package/dist/{chunk-CQPFSEJB.js.map → chunk-L7NQCLFU.js.map} +0 -0
  894. /package/dist/{chunk-DVAAUWTC.js.map → chunk-LCHCE2G5.js.map} +0 -0
  895. /package/dist/{chunk-G4HBNILE.js.map → chunk-LEHMWJNZ.js.map} +0 -0
  896. /package/dist/{chunk-KK57AHWS.js.map → chunk-OAEYCKBN.js.map} +0 -0
  897. /package/dist/{chunk-JGRE56GQ.js.map → chunk-OB56SZGL.js.map} +0 -0
  898. /package/dist/{chunk-E4TNDTWV.js.map → chunk-OL2BEJZR.js.map} +0 -0
  899. /package/dist/{chunk-IKLOIONQ.js.map → chunk-PCBZYORN.js.map} +0 -0
  900. /package/dist/{chunk-CQLPDY2J.js.map → chunk-PRIBOWX4.js.map} +0 -0
  901. /package/dist/{chunk-LT4NEKXB.js.map → chunk-QA2ZGCRL.js.map} +0 -0
  902. /package/dist/{chunk-PQECNGDE.js.map → chunk-QSRZOXQI.js.map} +0 -0
  903. /package/dist/{chunk-ROT57BP4.js.map → chunk-R2XVTUVR.js.map} +0 -0
  904. /package/dist/{chunk-DCJSHYE5.js.map → chunk-RSDYS5B3.js.map} +0 -0
  905. /package/dist/{chunk-N5GVW6RO.js.map → chunk-S6IWKDWT.js.map} +0 -0
  906. /package/dist/{chunk-DB2ZFZVW.js.map → chunk-SBIZXZPP.js.map} +0 -0
  907. /package/dist/{chunk-NCPWLHZT.js.map → chunk-SKT2V2OX.js.map} +0 -0
  908. /package/dist/{chunk-EOW2ECB3.js.map → chunk-SNURSSTN.js.map} +0 -0
  909. /package/dist/{chunk-CZBND7AY.js.map → chunk-T7DE44SP.js.map} +0 -0
  910. /package/dist/{chunk-BNEWMFVB.js.map → chunk-UGGJ3KDT.js.map} +0 -0
  911. /package/dist/{chunk-KREWQAEV.js.map → chunk-VIRYHNEM.js.map} +0 -0
  912. /package/dist/{chunk-N6CSXHFJ.js.map → chunk-WN5PNP6F.js.map} +0 -0
  913. /package/dist/{chunk-XR46FSOH.js.map → chunk-XIG3DXXX.js.map} +0 -0
  914. /package/dist/{chunk-GHTBUJ6E.js.map → chunk-XRUW7DMH.js.map} +0 -0
  915. /package/dist/{chunk-JLQGRZMN.js.map → chunk-YCCY77W5.js.map} +0 -0
  916. /package/dist/{chunk-6BDYC4RA.js.map → chunk-YRSR5LVZ.js.map} +0 -0
  917. /package/dist/{chunk-VZIB5W5L.js.map → chunk-ZGCPDA3F.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/layout/Skeleton/Skeleton.tsx"],"sourcesContent":["import Box from '@mui/material/Box/index.js';\nimport MuiSkeleton from '@mui/material/Skeleton/index.js';\nimport Stack from '@mui/material/Stack/index.js';\nimport { useTheme } from '@mui/material/styles/index.js';\nimport React from 'react';\n\nimport { resolveSkeletonProps, skeletonInstanceTestId } from './Skeleton.helpers';\nimport {\n defaultDimensions,\n muiAnimationFor,\n muiVariantFor,\n skeletonLength,\n skeletonSx,\n} from './Skeleton.styles';\nimport type { SkeletonProps } from './Skeleton.types';\nimport { resolveTestId, withoutTestIdProps } from '../../../platform/test-id';\n\nexport const Skeleton: React.FC<SkeletonProps> = React.memo((rawProps) => {\n const {\n variant,\n animation,\n width,\n height,\n count,\n spacing,\n borderRadius,\n className,\n intensity,\n glassmorphism,\n shimmer,\n style,\n ...others\n } = resolveSkeletonProps(rawProps);\n // `testID` and `dataTestId` are the shared contract's spellings; the DOM\n // wants `data-testid`, and must not see the other two as attributes.\n const dataTestId = resolveTestId(others);\n const props = withoutTestIdProps(others);\n const theme = useTheme();\n\n const defaults = defaultDimensions(variant);\n const finalWidth = width ?? defaults.width;\n const finalHeight = height ?? defaults.height;\n\n // Handle edge case: count of 0 should render nothing\n if (count === 0) {\n return null;\n }\n\n const singleSkeleton = (\n <MuiSkeleton\n variant={muiVariantFor(variant)}\n animation={muiAnimationFor(variant, animation)}\n // A `0` stays `0`: MUI reads a falsy size as \"size from children\".\n width={finalWidth === 0 ? 0 : skeletonLength(theme, finalWidth)}\n height={finalHeight === 0 ? 0 : skeletonLength(theme, finalHeight)}\n sx={skeletonSx(theme, {\n intensity,\n borderRadius,\n glassmorphism,\n shimmer,\n style,\n })}\n className={className}\n data-testid={dataTestId}\n aria-hidden=\"true\"\n {...props}\n />\n );\n\n if (count === 1) {\n return singleSkeleton;\n }\n\n return (\n <Stack spacing={spacing}>\n {Array.from({ length: count }).map((_, index) => (\n <Box key={`skeleton-${index}`}>\n {React.cloneElement(singleSkeleton, {\n 'data-testid': skeletonInstanceTestId(dataTestId, index),\n })}\n </Box>\n ))}\n </Stack>\n );\n});\n\nSkeleton.displayName = 'Skeleton';\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA,OAAO,SAAS;AAChB,OAAO,iBAAiB;AACxB,OAAO,WAAW;AAClB,SAAS,gBAAgB;AACzB,OAAO,WAAW;AA6Cd;AAhCG,IAAM,WAAoC,MAAM,KAAK,CAAC,aAAa;AACxE,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EACL,IAAI,qBAAqB,QAAQ;AAGjC,QAAM,aAAa,cAAc,MAAM;AACvC,QAAM,QAAQ,mBAAmB,MAAM;AACvC,QAAM,QAAQ,SAAS;AAEvB,QAAM,WAAW,kBAAkB,OAAO;AAC1C,QAAM,aAAa,SAAS,SAAS;AACrC,QAAM,cAAc,UAAU,SAAS;AAGvC,MAAI,UAAU,GAAG;AACf,WAAO;AAAA,EACT;AAEA,QAAM,iBACJ;AAAA,IAAC;AAAA;AAAA,MACC,SAAS,cAAc,OAAO;AAAA,MAC9B,WAAW,gBAAgB,SAAS,SAAS;AAAA,MAE7C,OAAO,eAAe,IAAI,IAAI,eAAe,OAAO,UAAU;AAAA,MAC9D,QAAQ,gBAAgB,IAAI,IAAI,eAAe,OAAO,WAAW;AAAA,MACjE,IAAI,WAAW,OAAO;AAAA,QACpB;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,CAAC;AAAA,MACD;AAAA,MACA,eAAa;AAAA,MACb,eAAY;AAAA,MACX,GAAG;AAAA;AAAA,EACN;AAGF,MAAI,UAAU,GAAG;AACf,WAAO;AAAA,EACT;AAEA,SACE,oBAAC,SAAM,SACJ,gBAAM,KAAK,EAAE,QAAQ,MAAM,CAAC,EAAE,IAAI,CAAC,GAAG,UACrC,oBAAC,OACE,gBAAM,aAAa,gBAAgB;AAAA,IAClC,eAAe,uBAAuB,YAAY,KAAK;AAAA,EACzD,CAAC,KAHO,YAAY,KAAK,EAI3B,CACD,GACH;AAEJ,CAAC;AAED,SAAS,cAAc;","names":[]}
@@ -4,7 +4,7 @@ import {
4
4
  import {
5
5
  Dialog,
6
6
  DialogContent
7
- } from "./chunk-L4UP5VYS.js";
7
+ } from "./chunk-GVH7C2PT.js";
8
8
  import {
9
9
  default as default2
10
10
  } from "./chunk-WEBEOBN5.js";
@@ -13,7 +13,7 @@ import {
13
13
  } from "./chunk-2EAAWOZ2.js";
14
14
  import {
15
15
  Text
16
- } from "./chunk-WTOYEWW6.js";
16
+ } from "./chunk-YBH4SPMM.js";
17
17
 
18
18
  // src/components/data-display/DataViews/DeleteViewDialog.tsx
19
19
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -69,4 +69,4 @@ function DeleteViewDialog({
69
69
  export {
70
70
  DeleteViewDialog
71
71
  };
72
- //# sourceMappingURL=chunk-VT5HQ2AD.js.map
72
+ //# sourceMappingURL=chunk-BFMDA6UO.js.map
@@ -3,7 +3,7 @@ import {
3
3
  StepContentComponent,
4
4
  StepIndicatorComponent,
5
5
  StepItemRow
6
- } from "./chunk-OATHOXIU.js";
6
+ } from "./chunk-MC4KYGSX.js";
7
7
 
8
8
  // src/components/utility/WorkflowStep/WorkflowStepRow.tsx
9
9
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -78,4 +78,4 @@ var StepRow = ({
78
78
  export {
79
79
  StepRow
80
80
  };
81
- //# sourceMappingURL=chunk-R75DZ3AK.js.map
81
+ //# sourceMappingURL=chunk-BVLMKSHX.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-KHG57NAE.js";
4
4
  import {
5
5
  DropdownMenu
6
- } from "./chunk-VFHGILXI.js";
6
+ } from "./chunk-U3DBQXPI.js";
7
7
  import {
8
8
  default as default2
9
9
  } from "./chunk-6DPAWXZ3.js";
@@ -42,7 +42,7 @@ function buildGridColumns(columns, visibleColumns, onRowClick) {
42
42
  });
43
43
  }
44
44
  function buildRowActionsColumn(config) {
45
- const { rowActions, leading, testIdPrefix, getRowId, renderRowMenu } = config;
45
+ const { theme, rowActions, leading, testIdPrefix, getRowId, renderRowMenu } = config;
46
46
  const kebabActions = rowActions.filter((action) => action.row !== false);
47
47
  return {
48
48
  id: "actions",
@@ -51,8 +51,8 @@ function buildRowActionsColumn(config) {
51
51
  enableSort: false,
52
52
  hideable: false,
53
53
  // Narrow: the column only holds the "⋮" kebab (plus an optional leading icon),
54
- // so it needs room for just one or two icons.
55
- width: leading ? 72 : 44,
54
+ // so it needs room for just one or two icons — 72 or 44 design px.
55
+ width: rem(theme, leading ? 72 : 44),
56
56
  cell: ({ row }) => /* @__PURE__ */ jsxs(default2, { component: "span", sx: { display: "inline-flex", alignItems: "center", gap: sxRem(2), justifyContent: "flex-end" }, children: [
57
57
  leading?.(row),
58
58
  renderRowMenu ? renderRowMenu(row) : renderAutoKebab(kebabActions, row, testIdPrefix, getRowId)
@@ -166,4 +166,4 @@ export {
166
166
  togglePillValues,
167
167
  cardGridTracks
168
168
  };
169
- //# sourceMappingURL=chunk-75LOTMSN.js.map
169
+ //# sourceMappingURL=chunk-BWHOCNGW.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/data-display/DataViews/data-views-grid-helpers.tsx"],"sourcesContent":["\"use client\";\n\nimport type { Theme } from \"@mui/material/styles/index.js\";\n\nimport { useDataViewsCopy } from \"./data-views-copy-context\";\nimport { type GridColumn } from \"../DataGrid\";\nimport { type SortFieldDefinition } from \"../../layout/ContentToolbar\";\nimport { Box } from \"../../../mui/Box\";\nimport { rem, sxRem } from \"../../../tokens/relative\";\nimport { Button } from \"../../form/Button\";\nimport { DropdownMenu, type DropdownMenuItem } from \"../../navigation/DropdownMenu\";\n\nimport type {\n DataViewColumn,\n DataViewState,\n FilterFieldConfig,\n RangeFieldConfig,\n RowAction,\n} from \"./data-views-types\";\n\n/** Is this the non-clickable actions column? */\nexport function isActionsColumn<T extends Record<string, unknown>>(col: GridColumn<T>): boolean {\n return col.type === \"actions\" || col.id === \"actions\";\n}\n\n/**\n * Map the DataView columns to grid columns, applying visibility and — when a row\n * click handler is present — wrapping each non-actions cell so clicking opens the row.\n */\nexport function buildGridColumns<T extends Record<string, unknown>>(\n columns: DataViewColumn<T>[],\n visibleColumns: string[],\n onRowClick: ((row: T) => void) | undefined,\n): GridColumn<T>[] {\n return columns.map((col) => {\n const hidden = col.hideable !== false && !visibleColumns.includes(col.id);\n if (!onRowClick || isActionsColumn(col)) return { ...col, hidden };\n return {\n ...col,\n hidden,\n cell: (ctx) => {\n const content = col.cell ? col.cell(ctx) : ctx.value == null ? \"\" : String(ctx.value);\n return (\n <Box\n onClick={() => onRowClick(ctx.row)}\n sx={{ cursor: \"pointer\", width: \"100%\", height: \"100%\", display: \"flex\", alignItems: \"center\" }}\n >\n {content}\n </Box>\n );\n },\n };\n });\n}\n\ninterface ActionsColumnConfig<T extends Record<string, unknown>> {\n /** Whose type scale the column's width is drawn at. */\n theme: Theme;\n /** Actions that build the auto \"⋮\" kebab. Ignored when `renderRowMenu` is set. */\n rowActions: RowAction<T>[];\n /** Optional leading slot (e.g. a favourite star) rendered before the kebab. */\n leading?: (row: T) => React.ReactNode;\n testIdPrefix: string;\n getRowId: (row: T) => string | number;\n /**\n * Escape hatch: render a bespoke per-row menu (e.g. an entity's self-contained\n * 3-dots menu that owns its own popups) INSTEAD of the auto kebab built from\n * `rowActions`. This is how the table row and the card share ONE menu component.\n * `rowActions`/`bulkActions` still drive the multi-row bulk menu, which a\n * single-row menu intentionally does not replace.\n */\n renderRowMenu?: (row: T) => React.ReactNode;\n}\n\n/**\n * The auto \"⋮\" kebab actions column built from the reusable `rowActions` — the\n * SAME definitions that feed the bulk menu, so the two never drift. Each item\n * acts on just this row; `rowLabel` provides a per-row label when set. An\n * optional `leading` slot (e.g. a favourite star) renders before the kebab.\n * When `renderRowMenu` is supplied, the cell renders that bespoke menu instead.\n */\nexport function buildRowActionsColumn<T extends Record<string, unknown>>(\n config: ActionsColumnConfig<T>,\n): DataViewColumn<T> {\n const { theme, rowActions, leading, testIdPrefix, getRowId, renderRowMenu } = config;\n const kebabActions = rowActions.filter((action) => action.row !== false);\n return {\n id: \"actions\",\n header: \"\",\n type: \"actions\",\n enableSort: false,\n hideable: false,\n // Narrow: the column only holds the \"⋮\" kebab (plus an optional leading icon),\n // so it needs room for just one or two icons — 72 or 44 design px.\n width: rem(theme, leading ? 72 : 44),\n cell: ({ row }) => (\n <Box component=\"span\" sx={{ display: \"inline-flex\", alignItems: \"center\", gap: sxRem(2), justifyContent: \"flex-end\" }}>\n {leading?.(row)}\n {renderRowMenu\n ? renderRowMenu(row)\n : renderAutoKebab(kebabActions, row, testIdPrefix, getRowId)}\n </Box>\n ),\n };\n}\n\n/** The built-in kebab menu for one row, derived from `rowActions`. */\nfunction renderAutoKebab<T extends Record<string, unknown>>(\n kebabActions: RowAction<T>[],\n row: T,\n testIdPrefix: string,\n getRowId: (row: T) => string | number,\n): React.ReactNode {\n const copy = useDataViewsCopy();\n const items: DropdownMenuItem[] = kebabActions\n .filter((action) => action.isVisible?.(row) ?? true)\n .map((action) => ({\n id: action.id,\n label: action.rowLabel ? action.rowLabel(row) : action.label,\n color: action.color,\n onClick: () => void action.onSelect([row]),\n }));\n if (items.length === 0) return null;\n return (\n <DropdownMenu\n size=\"sm\"\n items={items}\n trigger={\n <Button variant=\"text\" size=\"sm\" dataTestId={`${testIdPrefix}-actions-${getRowId(row)}`} aria-label={copy.grid.rowActions}>\n ⋮\n </Button>\n }\n />\n );\n}\n\n/** Sort options derived from the sortable columns when a page supplies none. */\nexport function defaultSortFields<T extends Record<string, unknown>>(\n columns: DataViewColumn<T>[],\n): SortFieldDefinition[] {\n return columns\n .filter(\n (col) =>\n col.enableSort !== false &&\n col.type !== \"actions\" &&\n col.id !== \"actions\" &&\n typeof col.header === \"string\" &&\n col.header !== \"\",\n )\n .map((col) => ({\n value: col.id,\n label: col.header as string,\n orderOptions: [\n { value: \"asc\", label: \"Crescente\" },\n { value: \"desc\", label: \"Decrescente\" },\n ],\n }));\n}\n\n/** Count active filters (search + selected pills + bounded ranges) for the badge. */\nexport function computeActiveFilterCount<T extends Record<string, unknown>>(\n state: DataViewState,\n fields: FilterFieldConfig<T>[],\n rangeFields: RangeFieldConfig<T>[],\n): number {\n const ranges = state.ranges ?? {};\n const pillCount = fields.reduce((n, field) => n + ((state.pills[field.id]?.length ?? 0) > 0 ? 1 : 0), 0);\n const rangeCount = rangeFields.reduce((n, field) => {\n const range = ranges[field.id];\n return n + (range && (range.min != null || range.max != null) ? 1 : 0);\n }, 0);\n return (state.search.trim() ? 1 : 0) + pillCount + rangeCount;\n}\n\nfunction bulkMenuItems<T extends Record<string, unknown>>(\n rowActions: RowAction<T>[],\n selectedRows: T[],\n clearSelection: () => void,\n): DropdownMenuItem[] {\n return rowActions\n .filter((action) => action.bulk !== false)\n .map((action) => {\n // State-machine guards: the action runs only on the rows it applies to,\n // and disappears from the menu when none of the selection qualifies.\n const targets = action.isVisible ? selectedRows.filter(action.isVisible) : selectedRows;\n return { action, targets };\n })\n .filter(({ targets }) => targets.length > 0)\n .map(({ action, targets }) => ({\n id: action.id,\n label: action.label,\n color: action.color,\n onClick: () => {\n // Run the (possibly async) handler on the captured selection, then clear\n // it — but only once the work settles. On failure keep the selection so\n // the user can see which rows still need action and retry.\n const result = action.onSelect(targets);\n if (result instanceof Promise) {\n void result.then(\n () => clearSelection(),\n () => {\n /* keep the selection on failure so the user can retry */\n },\n );\n } else {\n clearSelection();\n }\n },\n }));\n}\n\ninterface RenderBulkArgs<T extends Record<string, unknown>> {\n rowActions: RowAction<T>[] | undefined;\n bulkActions: ((selectedRows: T[], clearSelection: () => void) => React.ReactNode) | undefined;\n selectedRows: T[];\n clearSelection: () => void;\n testIdPrefix: string;\n}\n\n/**\n * The selection bulk control shown in the toolbar. Prefers the reusable\n * `rowActions` (an \"Ações\" dropdown mirroring the row kebab); falls back to the\n * low-level `bulkActions` render prop. Renders nothing with no selection.\n */\nexport function renderBulkActions<T extends Record<string, unknown>>({\n rowActions,\n bulkActions,\n selectedRows,\n clearSelection,\n testIdPrefix,\n}: RenderBulkArgs<T>): React.ReactNode {\n const copy = useDataViewsCopy();\n if (selectedRows.length === 0) return undefined;\n if (rowActions) {\n const items = bulkMenuItems(rowActions, selectedRows, clearSelection);\n if (items.length === 0) return undefined;\n return (\n <DropdownMenu\n size=\"sm\"\n items={items}\n trigger={\n <Button variant=\"outline\" size=\"sm\" dataTestId={`${testIdPrefix}-bulk-actions`}>\n {copy.grid.bulkActions(selectedRows.length)}\n </Button>\n }\n />\n );\n }\n return bulkActions ? bulkActions(selectedRows, clearSelection) : undefined;\n}\n\n/** Toggle a single value in a pill's selected-list (returns the next list). */\nexport function togglePillValues(current: string[] | undefined, value: string, checked: boolean): string[] {\n const list = current ?? [];\n return checked ? [...list, value] : list.filter((v) => v !== value);\n}\n\n/**\n * The card grid's `grid-template-columns`, as an sx fragment.\n *\n * One rule at every width: each card asks for `targetWidth` and `auto-fill`\n * decides how many fit. Density moves the target, so it changes the count at\n * every size — which the previous column-count cap could not do, because its\n * track floor bottomed out at a constant shared by all three densities.\n *\n * Below `sm` this is a single column, and no target changes that. That is why\n * the density control hides itself there rather than offering three settings\n * that all draw the same thing.\n */\nexport function cardGridTracks(targetWidth: number) {\n return {\n gridTemplateColumns: (theme: Theme) => ({\n xs: \"1fr\",\n sm: `repeat(auto-fill, minmax(${rem(theme, targetWidth)}, 1fr))`,\n }),\n };\n}\n"],"mappings":"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","names":["default"]}
@@ -1,5 +1,6 @@
1
1
  import {
2
- rem
2
+ rem,
3
+ rems
3
4
  } from "./chunk-YKCAJ2TN.js";
4
5
 
5
6
  // src/components/navigation/Pagination/Pagination.styles.ts
@@ -7,14 +8,14 @@ import { alpha } from "@mui/material/styles/index.js";
7
8
  var ITEM_SIZE_STYLES = {
8
9
  sm: (theme) => ({
9
10
  fontSize: rem(theme, 14),
10
- minWidth: 28,
11
- height: 28,
11
+ minWidth: rem(theme, 28),
12
+ height: rem(theme, 28),
12
13
  padding: theme.spacing(0.25, 0.5)
13
14
  }),
14
15
  lg: (theme) => ({
15
16
  fontSize: rem(theme, 18),
16
- minWidth: 44,
17
- height: 44,
17
+ minWidth: rem(theme, 44),
18
+ height: rem(theme, 44),
18
19
  padding: theme.spacing(1, 1.5)
19
20
  })
20
21
  };
@@ -23,33 +24,33 @@ var ITEM_VARIANTS = {
23
24
  borderRadius: theme.spacing(1),
24
25
  "&:hover": {
25
26
  backgroundColor: alpha(theme.palette.primary.main, 0.08),
26
- transform: "translateY(-1px)",
27
- boxShadow: `0 2px 8px ${alpha(theme.palette.primary.main, 0.15)}`
27
+ transform: `translateY(${rem(theme, -1)})`,
28
+ boxShadow: `0 ${rems(theme, 2, 8)} ${alpha(theme.palette.primary.main, 0.15)}`
28
29
  },
29
30
  "&.Mui-selected": {
30
31
  backgroundColor: theme.palette.primary.main,
31
32
  color: theme.palette.primary.contrastText,
32
- boxShadow: `0 4px 12px ${alpha(theme.palette.primary.main, 0.3)}`,
33
+ boxShadow: `0 ${rems(theme, 4, 12)} ${alpha(theme.palette.primary.main, 0.3)}`,
33
34
  "&:hover": {
34
35
  backgroundColor: theme.palette.primary.dark,
35
- transform: "translateY(-2px)"
36
+ transform: `translateY(${rem(theme, -2)})`
36
37
  }
37
38
  }
38
39
  }),
39
40
  rounded: (theme, customSize) => ({
40
41
  borderRadius: "50%",
41
- minWidth: customSize === "sm" ? 28 : customSize === "lg" ? 44 : 36,
42
- width: customSize === "sm" ? 28 : customSize === "lg" ? 44 : 36,
42
+ minWidth: rem(theme, customSize === "sm" ? 28 : customSize === "lg" ? 44 : 36),
43
+ width: rem(theme, customSize === "sm" ? 28 : customSize === "lg" ? 44 : 36),
43
44
  "&:hover": {
44
45
  backgroundColor: alpha(theme.palette.primary.main, 0.08),
45
46
  transform: "scale(1.1)",
46
- boxShadow: `0 4px 16px ${alpha(theme.palette.primary.main, 0.2)}`
47
+ boxShadow: `0 ${rems(theme, 4, 16)} ${alpha(theme.palette.primary.main, 0.2)}`
47
48
  },
48
49
  "&.Mui-selected": {
49
50
  backgroundColor: theme.palette.primary.main,
50
51
  color: theme.palette.primary.contrastText,
51
52
  transform: "scale(1.05)",
52
- boxShadow: `0 6px 20px ${alpha(theme.palette.primary.main, 0.3)}`,
53
+ boxShadow: `0 ${rems(theme, 6, 20)} ${alpha(theme.palette.primary.main, 0.3)}`,
53
54
  "&:hover": {
54
55
  backgroundColor: theme.palette.primary.dark,
55
56
  transform: "scale(1.15)"
@@ -58,9 +59,9 @@ var ITEM_VARIANTS = {
58
59
  }),
59
60
  dots: (theme, customSize) => ({
60
61
  borderRadius: "50%",
61
- minWidth: customSize === "sm" ? 8 : customSize === "lg" ? 12 : 10,
62
- width: customSize === "sm" ? 8 : customSize === "lg" ? 12 : 10,
63
- height: customSize === "sm" ? 8 : customSize === "lg" ? 12 : 10,
62
+ minWidth: rem(theme, customSize === "sm" ? 8 : customSize === "lg" ? 12 : 10),
63
+ width: rem(theme, customSize === "sm" ? 8 : customSize === "lg" ? 12 : 10),
64
+ height: rem(theme, customSize === "sm" ? 8 : customSize === "lg" ? 12 : 10),
64
65
  fontSize: 0,
65
66
  backgroundColor: alpha(theme.palette.text.secondary, 0.3),
66
67
  "&:hover": {
@@ -100,9 +101,9 @@ var ITEM_VARIANTS = {
100
101
  left: "50%",
101
102
  transform: "translateX(-50%)",
102
103
  width: "60%",
103
- height: 2,
104
+ height: rem(theme, 2),
104
105
  backgroundColor: theme.palette.primary.main,
105
- borderRadius: 1
106
+ borderRadius: rem(theme, 1)
106
107
  }
107
108
  }
108
109
  })
@@ -138,4 +139,4 @@ var paginationStyles = ({
138
139
  export {
139
140
  paginationStyles
140
141
  };
141
- //# sourceMappingURL=chunk-PMP6WJJS.js.map
142
+ //# sourceMappingURL=chunk-BWMHGENX.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/navigation/Pagination/Pagination.styles.ts"],"sourcesContent":["import { alpha } from '@mui/material/styles/index.js';\nimport type { CSSObject, Theme } from '@mui/material/styles/index.js';\nimport { rem, rems } from '../../../tokens/relative';\n\nconst ITEM_SIZE_STYLES: Record<string, (theme: Theme) => CSSObject> = {\n sm: (theme) => ({\n fontSize: rem(theme, 14),\n minWidth: rem(theme, 28),\n height: rem(theme, 28),\n padding: theme.spacing(0.25, 0.5) }),\n lg: (theme) => ({\n fontSize: rem(theme, 18),\n minWidth: rem(theme, 44),\n height: rem(theme, 44),\n padding: theme.spacing(1, 1.5) }) };\n\n// One variant applies at a time, so a lookup replaces the mutually exclusive\n// spreads.\nconst ITEM_VARIANTS: Record<string, (theme: Theme, customSize?: string) => CSSObject> = {\n default: (theme, _customSize) => ({\n borderRadius: theme.spacing(1),\n '&:hover': {\n backgroundColor: alpha(theme.palette.primary.main, 0.08),\n transform: `translateY(${rem(theme, -1)})`,\n boxShadow: `0 ${rems(theme, 2, 8)} ${alpha(theme.palette.primary.main, 0.15)}` },\n '&.Mui-selected': {\n backgroundColor: theme.palette.primary.main,\n color: theme.palette.primary.contrastText,\n boxShadow: `0 ${rems(theme, 4, 12)} ${alpha(theme.palette.primary.main, 0.3)}`,\n '&:hover': {\n backgroundColor: theme.palette.primary.dark,\n transform: `translateY(${rem(theme, -2)})` } } }),\n rounded: (theme, customSize) => ({\n borderRadius: '50%',\n minWidth: rem(theme, customSize === 'sm' ? 28 : customSize === 'lg' ? 44 : 36),\n width: rem(theme, customSize === 'sm' ? 28 : customSize === 'lg' ? 44 : 36),\n '&:hover': {\n backgroundColor: alpha(theme.palette.primary.main, 0.08),\n transform: 'scale(1.1)',\n boxShadow: `0 ${rems(theme, 4, 16)} ${alpha(theme.palette.primary.main, 0.2)}` },\n '&.Mui-selected': {\n backgroundColor: theme.palette.primary.main,\n color: theme.palette.primary.contrastText,\n transform: 'scale(1.05)',\n boxShadow: `0 ${rems(theme, 6, 20)} ${alpha(theme.palette.primary.main, 0.3)}`,\n '&:hover': {\n backgroundColor: theme.palette.primary.dark,\n transform: 'scale(1.15)' } } }),\n dots: (theme, customSize) => ({\n borderRadius: '50%',\n minWidth: rem(theme, customSize === 'sm' ? 8 : customSize === 'lg' ? 12 : 10),\n width: rem(theme, customSize === 'sm' ? 8 : customSize === 'lg' ? 12 : 10),\n height: rem(theme, customSize === 'sm' ? 8 : customSize === 'lg' ? 12 : 10),\n fontSize: 0,\n backgroundColor: alpha(theme.palette.text.secondary, 0.3),\n '&:hover': {\n backgroundColor: alpha(theme.palette.primary.main, 0.5),\n transform: 'scale(1.3)' },\n '&.Mui-selected': {\n backgroundColor: theme.palette.primary.main,\n transform: 'scale(1.2)',\n '&:hover': {\n backgroundColor: theme.palette.primary.dark,\n transform: 'scale(1.4)' } },\n '&.MuiPaginationItem-previousNext, &.MuiPaginationItem-firstLast': {\n display: 'none' } }),\n minimal: (theme, _customSize) => ({\n borderRadius: theme.spacing(0.5),\n backgroundColor: 'transparent',\n color: theme.palette.text.secondary,\n padding: theme.spacing(0.5, 1),\n '&:hover': {\n backgroundColor: alpha(theme.palette.primary.main, 0.04),\n color: theme.palette.primary.main },\n '&.Mui-selected': {\n backgroundColor: 'transparent',\n color: theme.palette.primary.main,\n fontWeight: 600,\n position: 'relative',\n '&::after': {\n content: '\"\"',\n position: 'absolute',\n bottom: 0,\n left: '50%',\n transform: 'translateX(-50%)',\n width: '60%',\n height: rem(theme, 2),\n backgroundColor: theme.palette.primary.main,\n borderRadius: rem(theme, 1) } } }) };\n\nconst itemSizeStyles = (theme: Theme, customSize?: string): CSSObject =>\n customSize ? (ITEM_SIZE_STYLES[customSize]?.(theme) ?? {}) : {};\n\nconst itemVariantStyles = (theme: Theme, customVariant?: string, customSize?: string): CSSObject =>\n customVariant ? (ITEM_VARIANTS[customVariant]?.(theme, customSize) ?? {}) : {};\n\n// The pagination list's own styling, lifted out so the styled() callback is a\n// single spread.\nexport const paginationStyles = ({\n theme,\n customVariant,\n customSize }: {\n theme: Theme;\n customVariant?: string;\n customSize?: string;\n}): CSSObject => ({\n '& .MuiPagination-ul': {\n gap: customVariant === 'minimal' ? theme.spacing(0.5) : theme.spacing(1) },\n\n '& .MuiPaginationItem-root': {\n ...itemSizeStyles(theme, customSize),\n ...itemVariantStyles(theme, customVariant, customSize),\n transition: 'all 0.2s ease',\n fontWeight: 500,\n\n\n\n\n\n // Default variant (flat design)\n\n\n // Rounded variant\n\n\n // Dots variant (minimal circular dots)\n\n\n // Minimal variant (text-only)\n\n },\n\n // Hide ellipsis for dots variant\n ...(customVariant === 'dots' && {\n '& .MuiPaginationItem-ellipsis': {\n display: 'none' } }) });\n"],"mappings":"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","names":[]}
@@ -1,5 +1,5 @@
1
1
  // src/components/data-display/MapPreview/mapProjection.ts
2
- var TILE_SIZE = 256;
2
+ var TILE_WORLD_UNITS = 256;
3
3
  var EQUATOR_METRES_PER_PIXEL = 156543.03392;
4
4
  var SCALE_BAR_PIXELS = 100;
5
5
  var GEOCODE_DELAY_MS = 300;
@@ -7,16 +7,16 @@ var project = (lat, lng) => {
7
7
  const siny = Math.sin(lat * Math.PI / 180);
8
8
  const boundedSiny = Math.max(-0.9999, Math.min(0.9999, siny));
9
9
  return {
10
- x: TILE_SIZE * (0.5 + lng / 360),
11
- y: TILE_SIZE * (0.5 - Math.log((1 + boundedSiny) / (1 - boundedSiny)) / (4 * Math.PI))
10
+ x: TILE_WORLD_UNITS * (0.5 + lng / 360),
11
+ y: TILE_WORLD_UNITS * (0.5 - Math.log((1 + boundedSiny) / (1 - boundedSiny)) / (4 * Math.PI))
12
12
  };
13
13
  };
14
14
  var getTileCoordinates = (lat, lng, zoom) => {
15
15
  const scale = 1 << zoom;
16
16
  const world = project(lat, lng);
17
17
  return {
18
- x: Math.floor(Math.floor(world.x * scale) / TILE_SIZE),
19
- y: Math.floor(Math.floor(world.y * scale) / TILE_SIZE)
18
+ x: Math.floor(Math.floor(world.x * scale) / TILE_WORLD_UNITS),
19
+ y: Math.floor(Math.floor(world.y * scale) / TILE_WORLD_UNITS)
20
20
  };
21
21
  };
22
22
  var getScaleDistance = (zoom) => {
@@ -38,9 +38,9 @@ var geocode = async (address) => {
38
38
  };
39
39
 
40
40
  export {
41
- TILE_SIZE,
41
+ TILE_WORLD_UNITS,
42
42
  getTileCoordinates,
43
43
  getScaleDistance,
44
44
  geocode
45
45
  };
46
- //# sourceMappingURL=chunk-TUBCN4DJ.js.map
46
+ //# sourceMappingURL=chunk-CB6DTWD5.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/data-display/MapPreview/mapProjection.ts"],"sourcesContent":["/**\n * One tile's extent in Web Mercator's world units at zoom 0 — the projection's\n * own coordinate space, not a drawn length: the tile index it yields is the\n * same at any drawn size. `MapTiles` draws one world unit as one design px.\n */\nexport const TILE_WORLD_UNITS = 256;\n\n// Metres covered by one pixel at zoom 0 on the equator; each zoom level halves it.\nconst EQUATOR_METRES_PER_PIXEL = 156543.03392;\nconst SCALE_BAR_PIXELS = 100;\nconst GEOCODE_DELAY_MS = 300;\n\n// Web Mercator. Longitude maps linearly; latitude goes through the log of the\n// tangent, clamped just short of the poles where that diverges.\nconst project = (lat: number, lng: number) => {\n const siny = Math.sin((lat * Math.PI) / 180);\n const boundedSiny = Math.max(-0.9999, Math.min(0.9999, siny));\n\n return {\n x: TILE_WORLD_UNITS * (0.5 + lng / 360),\n y: TILE_WORLD_UNITS * (0.5 - Math.log((1 + boundedSiny) / (1 - boundedSiny)) / (4 * Math.PI)),\n };\n};\n\nexport const getTileCoordinates = (lat: number, lng: number, zoom: number) => {\n const scale = 1 << zoom;\n const world = project(lat, lng);\n\n return {\n x: Math.floor(Math.floor(world.x * scale) / TILE_WORLD_UNITS),\n y: Math.floor(Math.floor(world.y * scale) / TILE_WORLD_UNITS),\n };\n};\n\nexport const getScaleDistance = (zoom: number): string => {\n const distance = (EQUATOR_METRES_PER_PIXEL / Math.pow(2, zoom)) * SCALE_BAR_PIXELS;\n\n if (distance >= 1000) return `${Math.round(distance / 1000)} km`;\n // Round to the nearest 100m so the bar reads as a round number.\n if (distance >= 100) return `${Math.round(distance / 100) * 100} m`;\n return `${Math.round(distance)} m`;\n};\n\nconst MOCK_GEOCODE_RESULTS: Record<string, { lat: number; lng: number }> = {\n 'san francisco': { lat: 37.7749, lng: -122.4194 },\n 'new york': { lat: 40.7128, lng: -74.006 },\n london: { lat: 51.5074, lng: -0.1278 },\n tokyo: { lat: 35.6762, lng: 139.6503 },\n paris: { lat: 48.8566, lng: 2.3522 },\n};\n\n// Stands in for a Places lookup, delay included so the disabled search field is\n// actually observable.\nexport const geocode = async (address: string): Promise<{ lat: number; lng: number } | null> => {\n await new Promise((resolve) => window.setTimeout(resolve, GEOCODE_DELAY_MS));\n return MOCK_GEOCODE_RESULTS[address.toLowerCase().trim()] || null;\n};\n"],"mappings":";AAKO,IAAM,mBAAmB;AAGhC,IAAM,2BAA2B;AACjC,IAAM,mBAAmB;AACzB,IAAM,mBAAmB;AAIzB,IAAM,UAAU,CAAC,KAAa,QAAgB;AAC5C,QAAM,OAAO,KAAK,IAAK,MAAM,KAAK,KAAM,GAAG;AAC3C,QAAM,cAAc,KAAK,IAAI,SAAS,KAAK,IAAI,QAAQ,IAAI,CAAC;AAE5D,SAAO;AAAA,IACL,GAAG,oBAAoB,MAAM,MAAM;AAAA,IACnC,GAAG,oBAAoB,MAAM,KAAK,KAAK,IAAI,gBAAgB,IAAI,YAAY,KAAK,IAAI,KAAK;AAAA,EAC3F;AACF;AAEO,IAAM,qBAAqB,CAAC,KAAa,KAAa,SAAiB;AAC5E,QAAM,QAAQ,KAAK;AACnB,QAAM,QAAQ,QAAQ,KAAK,GAAG;AAE9B,SAAO;AAAA,IACL,GAAG,KAAK,MAAM,KAAK,MAAM,MAAM,IAAI,KAAK,IAAI,gBAAgB;AAAA,IAC5D,GAAG,KAAK,MAAM,KAAK,MAAM,MAAM,IAAI,KAAK,IAAI,gBAAgB;AAAA,EAC9D;AACF;AAEO,IAAM,mBAAmB,CAAC,SAAyB;AACxD,QAAM,WAAY,2BAA2B,KAAK,IAAI,GAAG,IAAI,IAAK;AAElE,MAAI,YAAY,IAAM,QAAO,GAAG,KAAK,MAAM,WAAW,GAAI,CAAC;AAE3D,MAAI,YAAY,IAAK,QAAO,GAAG,KAAK,MAAM,WAAW,GAAG,IAAI,GAAG;AAC/D,SAAO,GAAG,KAAK,MAAM,QAAQ,CAAC;AAChC;AAEA,IAAM,uBAAqE;AAAA,EACzE,iBAAiB,EAAE,KAAK,SAAS,KAAK,UAAU;AAAA,EAChD,YAAY,EAAE,KAAK,SAAS,KAAK,QAAQ;AAAA,EACzC,QAAQ,EAAE,KAAK,SAAS,KAAK,QAAQ;AAAA,EACrC,OAAO,EAAE,KAAK,SAAS,KAAK,SAAS;AAAA,EACrC,OAAO,EAAE,KAAK,SAAS,KAAK,OAAO;AACrC;AAIO,IAAM,UAAU,OAAO,YAAkE;AAC9F,QAAM,IAAI,QAAQ,CAAC,YAAY,OAAO,WAAW,SAAS,gBAAgB,CAAC;AAC3E,SAAO,qBAAqB,QAAQ,YAAY,EAAE,KAAK,CAAC,KAAK;AAC/D;","names":[]}
@@ -1,3 +1,10 @@
1
+ import {
2
+ FIELD_BORDER_WIDTH
3
+ } from "./chunk-PZBK3F52.js";
4
+ import {
5
+ rem
6
+ } from "./chunk-YKCAJ2TN.js";
7
+
1
8
  // src/components/layout/Separator/Separator.styles.ts
2
9
  var THICKNESS_PX = {
3
10
  xs: 1,
@@ -53,21 +60,28 @@ var borderEdges = (isHorizontal, thickness, style, color) => {
53
60
  [`border${leading}Color`]: color
54
61
  };
55
62
  };
56
- var separatorBlockMargin = (size, margin, isHorizontal) => {
63
+ var separatorBlockMargin = (theme, size, margin, isHorizontal) => {
57
64
  const value = separatorMargin(size, margin);
58
- const length = typeof value === "string" ? value : `${value}px`;
65
+ const length = typeof value === "string" ? value : rem(theme, value);
59
66
  return isHorizontal ? `${length} 0` : `0 ${length}`;
60
67
  };
61
- var separatorStyles = (theme, { variant, orientation, size, color, margin, length }) => {
68
+ var ruleLength = (theme, length) => {
69
+ if (!length) return "100%";
70
+ if (typeof length === "string") return length;
71
+ return length <= 1 ? `${length * 100}%` : rem(theme, length);
72
+ };
73
+ var separatorStyles = (theme, { variant, orientation, size, color, blockMargin, length }) => {
62
74
  const isHorizontal = orientation === "horizontal";
63
- const thickness = separatorThickness(size);
75
+ const thicknessPx = separatorThickness(size);
76
+ const thickness = thicknessPx === FIELD_BORDER_WIDTH ? `${FIELD_BORDER_WIDTH}px` : rem(theme, thicknessPx);
77
+ const along = ruleLength(theme, length);
64
78
  const resolvedColor = color || theme.palette.divider;
65
79
  const baseStyles = {
66
80
  display: "flex",
67
81
  alignItems: "center",
68
- margin: separatorBlockMargin(size, margin, isHorizontal),
69
- width: isHorizontal ? length || "100%" : `${thickness}px`,
70
- height: isHorizontal ? `${thickness}px` : length || "100%",
82
+ margin: blockMargin,
83
+ width: isHorizontal ? along : thickness,
84
+ height: isHorizontal ? thickness : along,
71
85
  boxSizing: "border-box"
72
86
  };
73
87
  if (variant === "gradient") {
@@ -88,4 +102,4 @@ export {
88
102
  separatorBlockMargin,
89
103
  separatorStyles
90
104
  };
91
- //# sourceMappingURL=chunk-CAHWCSRE.js.map
105
+ //# sourceMappingURL=chunk-D46SLMCX.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/layout/Separator/Separator.styles.ts"],"sourcesContent":["import type { CSSObject, Theme } from '@mui/material/styles/index.js';\n\nimport type {\n SeparatorOrientation,\n SeparatorProps,\n SeparatorSize,\n SeparatorVariant,\n} from './Separator.types';\nimport { FIELD_BORDER_WIDTH } from '../../../tokens/field-height.core';\nimport { rem } from '../../../tokens/relative';\n\nconst THICKNESS_PX: Record<SeparatorSize, number> = {\n xs: 1,\n sm: 2,\n md: 3,\n lg: 4,\n xl: 6,\n};\n\nconst MARGIN_PX: Record<SeparatorSize, number> = {\n xs: 4,\n sm: 8,\n md: 16,\n lg: 24,\n xl: 32,\n};\n\nconst separatorThickness = (size: SeparatorSize): number =>\n THICKNESS_PX[size] ?? THICKNESS_PX.md;\n\n/** An explicit `margin` wins; otherwise the size picks one. */\nexport const separatorMargin = (\n size: SeparatorSize,\n margin?: number | string,\n): number | string => margin ?? MARGIN_PX[size] ?? MARGIN_PX.md;\n\n// `gradient` paints a background rather than a border, so it draws its line as a\n// solid border of zero visual consequence.\nconst borderStyleFor = (variant: SeparatorVariant): 'dashed' | 'dotted' | 'solid' => {\n switch (variant) {\n case 'dashed':\n return 'dashed';\n case 'dotted':\n return 'dotted';\n default:\n return 'solid';\n }\n};\n\nconst gradientBackground = (\n variant: SeparatorVariant,\n orientation: SeparatorOrientation,\n color: string,\n): string | undefined => {\n if (variant !== 'gradient') return undefined;\n const angle = orientation === 'horizontal' ? '90deg' : '180deg';\n return `linear-gradient(${angle}, transparent 0%, ${color} 50%, transparent 100%)`;\n};\n\n// Only the leading edge carries the rule; the other three are zeroed explicitly so\n// a parent's border shorthand cannot leak through.\nconst borderEdges = (\n isHorizontal: boolean,\n thickness: string,\n style: 'dashed' | 'dotted' | 'solid',\n color: string,\n): CSSObject => {\n const leading = isHorizontal ? 'Top' : 'Left';\n const blank: CSSObject = {\n borderTopWidth: 0,\n borderBottomWidth: 0,\n borderLeftWidth: 0,\n borderRightWidth: 0,\n borderTopStyle: 'none',\n borderBottomStyle: 'none',\n borderLeftStyle: 'none',\n borderRightStyle: 'none',\n borderTopColor: 'transparent',\n borderBottomColor: 'transparent',\n borderLeftColor: 'transparent',\n borderRightColor: 'transparent',\n };\n\n return {\n ...blank,\n [`border${leading}Width`]: thickness,\n [`border${leading}Style`]: style,\n [`border${leading}Color`]: color,\n };\n};\n\ntype SeparatorStyleArgs = Required<\n Pick<SeparatorProps, 'variant' | 'orientation' | 'size'>\n> &\n Pick<SeparatorProps, 'color' | 'length'> & {\n /** From {@link separatorBlockMargin}, which both the plain and the labelled separator read. */\n blockMargin: string;\n };\n\n/**\n * The separator's margin, on the axis it separates along only: above and below\n * a horizontal rule, either side of a vertical one. A margin given as a string\n * carries its own units; a number is design px, through the type scale.\n *\n * The LABELLED separator uses this too. It used to hand the number straight to\n * `sx.margin`, where a number is SPACING UNITS — `md`'s 16 drew 128px on all\n * four sides, against 16px above and below for the unlabelled one.\n */\nexport const separatorBlockMargin = (\n theme: Theme,\n size: SeparatorSize,\n margin: number | string | undefined,\n isHorizontal: boolean,\n): string => {\n const value = separatorMargin(size, margin);\n const length = typeof value === 'string' ? value : rem(theme, value);\n return isHorizontal ? `${length} 0` : `0 ${length}`;\n};\n\n/**\n * The rule's extent along its axis. It lands in `sx`, which reads a number of 1\n * or less as a fraction of the parent, and that stays so; any other number is\n * design px, through the type scale. Unset (or `0`/`''`) is the full run.\n */\nconst ruleLength = (theme: Theme, length: SeparatorProps['length']): string => {\n if (!length) return '100%';\n if (typeof length === 'string') return length;\n return length <= 1 ? `${length * 100}%` : rem(theme, length);\n};\n\nexport const separatorStyles = (\n theme: Theme,\n { variant, orientation, size, color, blockMargin, length }: SeparatorStyleArgs,\n): CSSObject => {\n const isHorizontal = orientation === 'horizontal';\n // `xs` is the 1px hairline: it stays one device-independent pixel at every\n // root size, like every other hairline in the package; heavier rules scale.\n const thicknessPx = separatorThickness(size);\n const thickness = thicknessPx === FIELD_BORDER_WIDTH ? `${FIELD_BORDER_WIDTH}px` : rem(theme, thicknessPx);\n const along = ruleLength(theme, length);\n const resolvedColor = color || theme.palette.divider;\n\n const baseStyles: CSSObject = {\n display: 'flex',\n alignItems: 'center',\n margin: blockMargin,\n width: isHorizontal ? along : thickness,\n height: isHorizontal ? thickness : along,\n boxSizing: 'border-box',\n };\n\n if (variant === 'gradient') {\n return {\n ...baseStyles,\n background: gradientBackground(variant, orientation, resolvedColor),\n };\n }\n\n return {\n ...baseStyles,\n backgroundColor: 'transparent',\n ...borderEdges(isHorizontal, thickness, borderStyleFor(variant), resolvedColor),\n };\n};\n"],"mappings":";;;;;;;;AAWA,IAAM,eAA8C;AAAA,EAClD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAEA,IAAM,YAA2C;AAAA,EAC/C,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAEA,IAAM,qBAAqB,CAAC,SAC1B,aAAa,IAAI,KAAK,aAAa;AAG9B,IAAM,kBAAkB,CAC7B,MACA,WACoB,UAAU,UAAU,IAAI,KAAK,UAAU;AAI7D,IAAM,iBAAiB,CAAC,YAA6D;AACnF,UAAQ,SAAS;AAAA,IACf,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO;AAAA,EACX;AACF;AAEA,IAAM,qBAAqB,CACzB,SACA,aACA,UACuB;AACvB,MAAI,YAAY,WAAY,QAAO;AACnC,QAAM,QAAQ,gBAAgB,eAAe,UAAU;AACvD,SAAO,mBAAmB,KAAK,qBAAqB,KAAK;AAC3D;AAIA,IAAM,cAAc,CAClB,cACA,WACA,OACA,UACc;AACd,QAAM,UAAU,eAAe,QAAQ;AACvC,QAAM,QAAmB;AAAA,IACvB,gBAAgB;AAAA,IAChB,mBAAmB;AAAA,IACnB,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,IAClB,gBAAgB;AAAA,IAChB,mBAAmB;AAAA,IACnB,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,IAClB,gBAAgB;AAAA,IAChB,mBAAmB;AAAA,IACnB,iBAAiB;AAAA,IACjB,kBAAkB;AAAA,EACpB;AAEA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,CAAC,SAAS,OAAO,OAAO,GAAG;AAAA,IAC3B,CAAC,SAAS,OAAO,OAAO,GAAG;AAAA,IAC3B,CAAC,SAAS,OAAO,OAAO,GAAG;AAAA,EAC7B;AACF;AAmBO,IAAM,uBAAuB,CAClC,OACA,MACA,QACA,iBACW;AACX,QAAM,QAAQ,gBAAgB,MAAM,MAAM;AAC1C,QAAM,SAAS,OAAO,UAAU,WAAW,QAAQ,IAAI,OAAO,KAAK;AACnE,SAAO,eAAe,GAAG,MAAM,OAAO,KAAK,MAAM;AACnD;AAOA,IAAM,aAAa,CAAC,OAAc,WAA6C;AAC7E,MAAI,CAAC,OAAQ,QAAO;AACpB,MAAI,OAAO,WAAW,SAAU,QAAO;AACvC,SAAO,UAAU,IAAI,GAAG,SAAS,GAAG,MAAM,IAAI,OAAO,MAAM;AAC7D;AAEO,IAAM,kBAAkB,CAC7B,OACA,EAAE,SAAS,aAAa,MAAM,OAAO,aAAa,OAAO,MAC3C;AACd,QAAM,eAAe,gBAAgB;AAGrC,QAAM,cAAc,mBAAmB,IAAI;AAC3C,QAAM,YAAY,gBAAgB,qBAAqB,GAAG,kBAAkB,OAAO,IAAI,OAAO,WAAW;AACzG,QAAM,QAAQ,WAAW,OAAO,MAAM;AACtC,QAAM,gBAAgB,SAAS,MAAM,QAAQ;AAE7C,QAAM,aAAwB;AAAA,IAC5B,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,QAAQ;AAAA,IACR,OAAO,eAAe,QAAQ;AAAA,IAC9B,QAAQ,eAAe,YAAY;AAAA,IACnC,WAAW;AAAA,EACb;AAEA,MAAI,YAAY,YAAY;AAC1B,WAAO;AAAA,MACL,GAAG;AAAA,MACH,YAAY,mBAAmB,SAAS,aAAa,aAAa;AAAA,IACpE;AAAA,EACF;AAEA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,iBAAiB;AAAA,IACjB,GAAG,YAAY,cAAc,WAAW,eAAe,OAAO,GAAG,aAAa;AAAA,EAChF;AACF;","names":[]}
@@ -2,19 +2,21 @@ import {
2
2
  buildGridColumns,
3
3
  buildRowActionsColumn,
4
4
  isActionsColumn
5
- } from "./chunk-75LOTMSN.js";
5
+ } from "./chunk-BWHOCNGW.js";
6
6
 
7
7
  // src/components/data-display/DataViews/data-views-columns.ts
8
+ import { useTheme } from "@mui/material/styles/index.js";
8
9
  import { useMemo } from "react";
9
10
  function computeHideableColumns(columns) {
10
11
  return columns.filter((col) => col.hideable !== false && typeof col.header === "string" && col.header !== "").map((col) => ({ id: col.id, label: col.header }));
11
12
  }
12
13
  function appendActionsColumn(columns, opts) {
13
- const { rowActions, rowActionsLeading, renderRowMenu, testIdPrefix, getRowId } = opts;
14
+ const { theme, rowActions, rowActionsLeading, renderRowMenu, testIdPrefix, getRowId } = opts;
14
15
  if (!rowActions && !renderRowMenu || columns.some(isActionsColumn)) return columns;
15
16
  return [
16
17
  ...columns,
17
18
  buildRowActionsColumn({
19
+ theme,
18
20
  rowActions: rowActions ?? [],
19
21
  leading: rowActionsLeading,
20
22
  testIdPrefix,
@@ -25,9 +27,17 @@ function appendActionsColumn(columns, opts) {
25
27
  }
26
28
  function useColumnsWithActions(columns, opts) {
27
29
  const { rowActions, rowActionsLeading, renderRowMenu, testIdPrefix, getRowId } = opts;
30
+ const theme = useTheme();
28
31
  const columnsWithActions = useMemo(
29
- () => appendActionsColumn(columns, { rowActions, rowActionsLeading, renderRowMenu, testIdPrefix, getRowId }),
30
- [columns, rowActions, rowActionsLeading, renderRowMenu, testIdPrefix, getRowId]
32
+ () => appendActionsColumn(columns, {
33
+ theme,
34
+ rowActions,
35
+ rowActionsLeading,
36
+ renderRowMenu,
37
+ testIdPrefix,
38
+ getRowId
39
+ }),
40
+ [columns, theme, rowActions, rowActionsLeading, renderRowMenu, testIdPrefix, getRowId]
31
41
  );
32
42
  const allColumnIds = useMemo(() => columnsWithActions.map((col) => col.id), [columnsWithActions]);
33
43
  return { columnsWithActions, allColumnIds };
@@ -52,4 +62,4 @@ export {
52
62
  useColumnsWithActions,
53
63
  useRenderedColumns
54
64
  };
55
- //# sourceMappingURL=chunk-FFOQZRFC.js.map
65
+ //# sourceMappingURL=chunk-D4FZ3ANG.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/data-display/DataViews/data-views-columns.ts"],"sourcesContent":["\"use client\";\n\nimport { useTheme, type Theme } from \"@mui/material/styles/index.js\";\nimport { useMemo } from \"react\";\n\nimport { type GridColumn } from \"../DataGrid\";\n\nimport {\n buildGridColumns,\n buildRowActionsColumn,\n isActionsColumn,\n} from \"./data-views-grid-helpers\";\nimport type { DataViewColumn, RowAction } from \"./data-views-types\";\n\n/**\n * Every column derivation the DataViews grid needs, in one place: the auto kebab\n * actions column, the id list that seeds a pristine view state, what the grid\n * actually renders once visibility is applied, and the show/hide menu's list.\n */\n\n/** A column the user may show/hide via the toolbar's ColumnsMenu. */\nexport interface HideableColumn {\n id: string;\n label: string;\n}\n\n/**\n * The columns the user may show/hide: explicitly hideable (not `hideable:false`,\n * which marks structural columns like the image thumbnail or actions kebab) and\n * carrying a text header to label the checkbox.\n */\nfunction computeHideableColumns<T extends Record<string, unknown>>(\n columns: DataViewColumn<T>[],\n): HideableColumn[] {\n return columns\n .filter((col) => col.hideable !== false && typeof col.header === \"string\" && col.header !== \"\")\n .map((col) => ({ id: col.id, label: col.header as string }));\n}\n\n/**\n * Append the auto kebab actions column unless the page already defines one. The\n * column is added when there are `rowActions` OR a bespoke `renderRowMenu` (an\n * entity's self-contained menu that owns its own popups).\n */\nfunction appendActionsColumn<T extends Record<string, unknown>>(\n columns: DataViewColumn<T>[],\n opts: {\n theme: Theme;\n rowActions?: RowAction<T>[];\n rowActionsLeading?: (row: T) => React.ReactNode;\n renderRowMenu?: (row: T) => React.ReactNode;\n testIdPrefix: string;\n getRowId: (row: T) => string | number;\n },\n): DataViewColumn<T>[] {\n const { theme, rowActions, rowActionsLeading, renderRowMenu, testIdPrefix, getRowId } = opts;\n if ((!rowActions && !renderRowMenu) || columns.some(isActionsColumn)) return columns;\n return [\n ...columns,\n buildRowActionsColumn({\n theme,\n rowActions: rowActions ?? [],\n leading: rowActionsLeading,\n testIdPrefix,\n getRowId,\n renderRowMenu,\n }),\n ];\n}\n\n/** Options {@link appendActionsColumn} needs to build the auto kebab column. */\ntype ActionsColumnOpts<T extends Record<string, unknown>> = {\n rowActions?: RowAction<T>[];\n rowActionsLeading?: (row: T) => React.ReactNode;\n renderRowMenu?: (row: T) => React.ReactNode;\n testIdPrefix: string;\n getRowId: (row: T) => string | number;\n};\n\n/**\n * The declared columns plus the auto kebab column (unless the page defines its\n * own), and every column id — which is what seeds a pristine view state's\n * `visibleColumns`, so it is derived BEFORE the state exists.\n */\nexport function useColumnsWithActions<T extends Record<string, unknown>>(\n columns: DataViewColumn<T>[],\n opts: ActionsColumnOpts<T>,\n): { columnsWithActions: DataViewColumn<T>[]; allColumnIds: string[] } {\n const { rowActions, rowActionsLeading, renderRowMenu, testIdPrefix, getRowId } = opts;\n const theme = useTheme();\n const columnsWithActions = useMemo(\n () =>\n appendActionsColumn(columns, {\n theme,\n rowActions,\n rowActionsLeading,\n renderRowMenu,\n testIdPrefix,\n getRowId,\n }),\n [columns, theme, rowActions, rowActionsLeading, renderRowMenu, testIdPrefix, getRowId],\n );\n const allColumnIds = useMemo(() => columnsWithActions.map((col) => col.id), [columnsWithActions]);\n return { columnsWithActions, allColumnIds };\n}\n\n/**\n * Apply a stored column ORDER, tolerantly.\n *\n * A stored list goes stale in both directions and neither may lose a column: an\n * id the table no longer declares is dropped, and a column the table declares\n * but the list never mentioned (added since the view was saved) falls in AFTER\n * the ordered ones rather than vanishing. Absent order ⇒ declaration order.\n */\nfunction applyOrder<T extends Record<string, unknown>>(\n columns: DataViewColumn<T>[],\n order: string[] | undefined,\n): DataViewColumn<T>[] {\n if (!order || order.length === 0) return columns;\n const byId = new Map(columns.map((column) => [column.id, column]));\n const ordered = order.map((id) => byId.get(id)).filter((c): c is DataViewColumn<T> => Boolean(c));\n const seen = new Set(ordered.map((column) => column.id));\n return [...ordered, ...columns.filter((column) => !seen.has(column.id))];\n}\n\n/** What the grid actually renders: order + visibility applied, plus the menu's list. */\nexport function useRenderedColumns<T extends Record<string, unknown>>(\n columnsWithActions: DataViewColumn<T>[],\n visibleColumns: string[],\n onRowClick: ((row: T) => void) | undefined,\n order?: string[],\n): { gridColumns: GridColumn<T>[]; hideableColumns: HideableColumn[] } {\n const gridColumns = useMemo(\n () => buildGridColumns(applyOrder(columnsWithActions, order), visibleColumns, onRowClick),\n [columnsWithActions, onRowClick, visibleColumns, order],\n );\n const hideableColumns = useMemo(() => computeHideableColumns(columnsWithActions), [columnsWithActions]);\n return { gridColumns, hideableColumns };\n}\n\n"],"mappings":";;;;;;;AAEA,SAAS,gBAA4B;AACrC,SAAS,eAAe;AA4BxB,SAAS,uBACP,SACkB;AAClB,SAAO,QACJ,OAAO,CAAC,QAAQ,IAAI,aAAa,SAAS,OAAO,IAAI,WAAW,YAAY,IAAI,WAAW,EAAE,EAC7F,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,IAAI,OAAO,IAAI,OAAiB,EAAE;AAC/D;AAOA,SAAS,oBACP,SACA,MAQqB;AACrB,QAAM,EAAE,OAAO,YAAY,mBAAmB,eAAe,cAAc,SAAS,IAAI;AACxF,MAAK,CAAC,cAAc,CAAC,iBAAkB,QAAQ,KAAK,eAAe,EAAG,QAAO;AAC7E,SAAO;AAAA,IACL,GAAG;AAAA,IACH,sBAAsB;AAAA,MACpB;AAAA,MACA,YAAY,cAAc,CAAC;AAAA,MAC3B,SAAS;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AACF;AAgBO,SAAS,sBACd,SACA,MACqE;AACrE,QAAM,EAAE,YAAY,mBAAmB,eAAe,cAAc,SAAS,IAAI;AACjF,QAAM,QAAQ,SAAS;AACvB,QAAM,qBAAqB;AAAA,IACzB,MACE,oBAAoB,SAAS;AAAA,MAC3B;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,IACH,CAAC,SAAS,OAAO,YAAY,mBAAmB,eAAe,cAAc,QAAQ;AAAA,EACvF;AACA,QAAM,eAAe,QAAQ,MAAM,mBAAmB,IAAI,CAAC,QAAQ,IAAI,EAAE,GAAG,CAAC,kBAAkB,CAAC;AAChG,SAAO,EAAE,oBAAoB,aAAa;AAC5C;AAUA,SAAS,WACP,SACA,OACqB;AACrB,MAAI,CAAC,SAAS,MAAM,WAAW,EAAG,QAAO;AACzC,QAAM,OAAO,IAAI,IAAI,QAAQ,IAAI,CAAC,WAAW,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC;AACjE,QAAM,UAAU,MAAM,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,MAA8B,QAAQ,CAAC,CAAC;AAChG,QAAM,OAAO,IAAI,IAAI,QAAQ,IAAI,CAAC,WAAW,OAAO,EAAE,CAAC;AACvD,SAAO,CAAC,GAAG,SAAS,GAAG,QAAQ,OAAO,CAAC,WAAW,CAAC,KAAK,IAAI,OAAO,EAAE,CAAC,CAAC;AACzE;AAGO,SAAS,mBACd,oBACA,gBACA,YACA,OACqE;AACrE,QAAM,cAAc;AAAA,IAClB,MAAM,iBAAiB,WAAW,oBAAoB,KAAK,GAAG,gBAAgB,UAAU;AAAA,IACxF,CAAC,oBAAoB,YAAY,gBAAgB,KAAK;AAAA,EACxD;AACA,QAAM,kBAAkB,QAAQ,MAAM,uBAAuB,kBAAkB,GAAG,CAAC,kBAAkB,CAAC;AACtG,SAAO,EAAE,aAAa,gBAAgB;AACxC;","names":[]}
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  SR_ONLY_SX,
3
3
  STATUS_COLOR
4
- } from "./chunk-LIG7TKIB.js";
4
+ } from "./chunk-NYFNF7I5.js";
5
5
  import {
6
6
  sxRem
7
7
  } from "./chunk-YKCAJ2TN.js";
@@ -44,8 +44,8 @@ function SettingsStatusMarker({
44
44
  {
45
45
  component: "span",
46
46
  sx: {
47
- width: 8,
48
- height: 8,
47
+ width: sxRem(8),
48
+ height: sxRem(8),
49
49
  borderRadius: "50%",
50
50
  flex: "0 0 auto",
51
51
  bgcolor: STATUS_COLOR[status]
@@ -62,4 +62,4 @@ SettingsStatusMarker.displayName = "SettingsStatusMarker";
62
62
  export {
63
63
  SettingsStatusMarker
64
64
  };
65
- //# sourceMappingURL=chunk-2OIP3T5O.js.map
65
+ //# sourceMappingURL=chunk-DBFRCTI5.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/layout/SettingsLayout/SettingsStatusMarker.tsx"],"sourcesContent":["'use client';\n\nimport LockOutlinedIcon from '@mui/icons-material/LockOutlined';\nimport Box from '@mui/material/Box/index.js';\nimport React from 'react';\n\nimport { SR_ONLY_SX, STATUS_COLOR } from './SettingsLayout.styles';\nimport type { SettingsNavStatus } from './SettingsLayout.types';\nimport { sxRem } from '../../../tokens/relative';\n\nexport interface SettingsStatusMarkerProps {\n /** Which situation to draw. */\n status: SettingsNavStatus;\n /** What it means, in the host's language — the only carrier a screen reader gets. */\n label?: string;\n /** `data-testid` for the marker element. */\n testId?: string;\n}\n\n/**\n * The situation marker beside a settings entry: a coloured dot, or a padlock\n * when the plan does not include the section.\n *\n * The label is rendered as visually-hidden text INSIDE the marker rather than as\n * an `aria-label` on it, so it lands in the accessible name of the row that\n * contains it. A row reading \"Endereço, ligado\" is one utterance; a decorative\n * dot with a title attribute beside it is two, and the second one is skipped.\n *\n * Colour alone never says which of the three states this is — that is the whole\n * reason `label` exists, and why a marker without one is a marker with no\n * meaning attached.\n */\nexport function SettingsStatusMarker({\n status,\n label,\n testId,\n}: SettingsStatusMarkerProps): React.JSX.Element {\n const hidden = label ? <Box component=\"span\" sx={SR_ONLY_SX}>{label}</Box> : null;\n\n if (status === 'locked') {\n return (\n <Box\n component=\"span\"\n data-testid={testId}\n data-status={status}\n sx={{ display: 'inline-flex', alignItems: 'center', color: 'text.disabled' }}\n >\n <LockOutlinedIcon sx={{ fontSize: sxRem(16) }} />\n {hidden}\n </Box>\n );\n }\n\n return (\n <Box\n component=\"span\"\n data-testid={testId}\n data-status={status}\n sx={{ display: 'inline-flex', alignItems: 'center' }}\n >\n <Box\n component=\"span\"\n sx={{\n width: 8,\n height: 8,\n borderRadius: '50%',\n flex: '0 0 auto',\n bgcolor: STATUS_COLOR[status],\n }}\n />\n {hidden}\n </Box>\n );\n}\n\nSettingsStatusMarker.displayName = 'SettingsStatusMarker';\n"],"mappings":";;;;;;;;;AAEA,OAAO,sBAAsB;AAC7B,OAAO,SAAS;AAkCS,cAInB,YAJmB;AALlB,SAAS,qBAAqB;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AACF,GAAiD;AAC/C,QAAM,SAAS,QAAQ,oBAAC,OAAI,WAAU,QAAO,IAAI,YAAa,iBAAM,IAAS;AAE7E,MAAI,WAAW,UAAU;AACvB,WACE;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACV,eAAa;AAAA,QACb,eAAa;AAAA,QACb,IAAI,EAAE,SAAS,eAAe,YAAY,UAAU,OAAO,gBAAgB;AAAA,QAE3E;AAAA,8BAAC,oBAAiB,IAAI,EAAE,UAAU,MAAM,EAAE,EAAE,GAAG;AAAA,UAC9C;AAAA;AAAA;AAAA,IACH;AAAA,EAEJ;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,eAAa;AAAA,MACb,eAAa;AAAA,MACb,IAAI,EAAE,SAAS,eAAe,YAAY,SAAS;AAAA,MAEnD;AAAA;AAAA,UAAC;AAAA;AAAA,YACC,WAAU;AAAA,YACV,IAAI;AAAA,cACF,OAAO;AAAA,cACP,QAAQ;AAAA,cACR,cAAc;AAAA,cACd,MAAM;AAAA,cACN,SAAS,aAAa,MAAM;AAAA,YAC9B;AAAA;AAAA,QACF;AAAA,QACC;AAAA;AAAA;AAAA,EACH;AAEJ;AAEA,qBAAqB,cAAc;","names":[]}
1
+ {"version":3,"sources":["../src/components/layout/SettingsLayout/SettingsStatusMarker.tsx"],"sourcesContent":["'use client';\n\nimport LockOutlinedIcon from '@mui/icons-material/LockOutlined';\nimport Box from '@mui/material/Box/index.js';\nimport React from 'react';\n\nimport { SR_ONLY_SX, STATUS_COLOR } from './SettingsLayout.styles';\nimport type { SettingsNavStatus } from './SettingsLayout.types';\nimport { sxRem } from '../../../tokens/relative';\n\nexport interface SettingsStatusMarkerProps {\n /** Which situation to draw. */\n status: SettingsNavStatus;\n /** What it means, in the host's language — the only carrier a screen reader gets. */\n label?: string;\n /** `data-testid` for the marker element. */\n testId?: string;\n}\n\n/**\n * The situation marker beside a settings entry: a coloured dot, or a padlock\n * when the plan does not include the section.\n *\n * The label is rendered as visually-hidden text INSIDE the marker rather than as\n * an `aria-label` on it, so it lands in the accessible name of the row that\n * contains it. A row reading \"Endereço, ligado\" is one utterance; a decorative\n * dot with a title attribute beside it is two, and the second one is skipped.\n *\n * Colour alone never says which of the three states this is — that is the whole\n * reason `label` exists, and why a marker without one is a marker with no\n * meaning attached.\n */\nexport function SettingsStatusMarker({\n status,\n label,\n testId,\n}: SettingsStatusMarkerProps): React.JSX.Element {\n const hidden = label ? <Box component=\"span\" sx={SR_ONLY_SX}>{label}</Box> : null;\n\n if (status === 'locked') {\n return (\n <Box\n component=\"span\"\n data-testid={testId}\n data-status={status}\n sx={{ display: 'inline-flex', alignItems: 'center', color: 'text.disabled' }}\n >\n <LockOutlinedIcon sx={{ fontSize: sxRem(16) }} />\n {hidden}\n </Box>\n );\n }\n\n return (\n <Box\n component=\"span\"\n data-testid={testId}\n data-status={status}\n sx={{ display: 'inline-flex', alignItems: 'center' }}\n >\n <Box\n component=\"span\"\n sx={{\n width: sxRem(8),\n height: sxRem(8),\n borderRadius: '50%',\n flex: '0 0 auto',\n bgcolor: STATUS_COLOR[status],\n }}\n />\n {hidden}\n </Box>\n );\n}\n\nSettingsStatusMarker.displayName = 'SettingsStatusMarker';\n"],"mappings":";;;;;;;;;AAEA,OAAO,sBAAsB;AAC7B,OAAO,SAAS;AAkCS,cAInB,YAJmB;AALlB,SAAS,qBAAqB;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AACF,GAAiD;AAC/C,QAAM,SAAS,QAAQ,oBAAC,OAAI,WAAU,QAAO,IAAI,YAAa,iBAAM,IAAS;AAE7E,MAAI,WAAW,UAAU;AACvB,WACE;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACV,eAAa;AAAA,QACb,eAAa;AAAA,QACb,IAAI,EAAE,SAAS,eAAe,YAAY,UAAU,OAAO,gBAAgB;AAAA,QAE3E;AAAA,8BAAC,oBAAiB,IAAI,EAAE,UAAU,MAAM,EAAE,EAAE,GAAG;AAAA,UAC9C;AAAA;AAAA;AAAA,IACH;AAAA,EAEJ;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,eAAa;AAAA,MACb,eAAa;AAAA,MACb,IAAI,EAAE,SAAS,eAAe,YAAY,SAAS;AAAA,MAEnD;AAAA;AAAA,UAAC;AAAA;AAAA,YACC,WAAU;AAAA,YACV,IAAI;AAAA,cACF,OAAO,MAAM,CAAC;AAAA,cACd,QAAQ,MAAM,CAAC;AAAA,cACf,cAAc;AAAA,cACd,MAAM;AAAA,cACN,SAAS,aAAa,MAAM;AAAA,YAC9B;AAAA;AAAA,QACF;AAAA,QACC;AAAA;AAAA;AAAA,EACH;AAEJ;AAEA,qBAAqB,cAAc;","names":[]}
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  ColumnsTab
3
- } from "./chunk-ROT57BP4.js";
3
+ } from "./chunk-R2XVTUVR.js";
4
4
  import {
5
5
  DisplayTab,
6
6
  SortTab
7
- } from "./chunk-JLQGRZMN.js";
7
+ } from "./chunk-YCCY77W5.js";
8
8
  import {
9
9
  ViewActions,
10
10
  ViewFooter,
11
11
  ViewHeader,
12
12
  ViewsList
13
- } from "./chunk-XR46FSOH.js";
13
+ } from "./chunk-XIG3DXXX.js";
14
14
  import {
15
15
  useDataViewsCopy
16
16
  } from "./chunk-KHG57NAE.js";
@@ -265,4 +265,4 @@ function DataViewsDisplayPanel({
265
265
  export {
266
266
  DataViewsDisplayPanel
267
267
  };
268
- //# sourceMappingURL=chunk-HNPWZ3W2.js.map
268
+ //# sourceMappingURL=chunk-DDRKYNPB.js.map
@@ -1,10 +1,14 @@
1
1
  import {
2
2
  processRows
3
3
  } from "./chunk-G3E66C6J.js";
4
+ import {
5
+ rem,
6
+ remPx
7
+ } from "./chunk-YKCAJ2TN.js";
4
8
 
5
9
  // src/components/data-display/DataGrid/DataGrid.model.ts
10
+ import { useTheme } from "@mui/material/styles/index.js";
6
11
  import { useCallback, useEffect, useMemo, useRef, useState } from "react";
7
- var DEFAULT_ROW_HEIGHT = 52;
8
12
  var DEFAULT_PAGE_SIZE = 50;
9
13
  var OVERSCAN_COUNT = 20;
10
14
  var VIRTUALIZATION_THRESHOLD = 100;
@@ -46,7 +50,7 @@ function useProcessedRows(props, columnMap, sortBy, filters) {
46
50
  ]
47
51
  );
48
52
  }
49
- function useRowWindow(rowCount, rowHeight, enabled) {
53
+ function useRowWindow(rowCount, rowPitch, enabled) {
50
54
  const [range, setRange] = useState({ start: 0, end: INITIAL_WINDOW });
51
55
  const rafRef = useRef(null);
52
56
  useEffect(() => {
@@ -64,8 +68,8 @@ function useRowWindow(rowCount, rowHeight, enabled) {
64
68
  const { scrollTop, clientHeight } = event.currentTarget;
65
69
  if (rafRef.current !== null) window.cancelAnimationFrame(rafRef.current);
66
70
  rafRef.current = window.requestAnimationFrame(() => {
67
- const first = Math.floor(scrollTop / rowHeight);
68
- const visible = Math.ceil(clientHeight / rowHeight);
71
+ const first = Math.floor(scrollTop / rowPitch);
72
+ const visible = Math.ceil(clientHeight / rowPitch);
69
73
  const start = Math.max(0, first - OVERSCAN_COUNT);
70
74
  const end = Math.min(first + visible + OVERSCAN_COUNT, rowCount);
71
75
  setRange(
@@ -74,7 +78,7 @@ function useRowWindow(rowCount, rowHeight, enabled) {
74
78
  rafRef.current = null;
75
79
  });
76
80
  },
77
- [enabled, rowHeight, rowCount]
81
+ [enabled, rowPitch, rowCount]
78
82
  );
79
83
  return { range, onScroll };
80
84
  }
@@ -151,10 +155,12 @@ function useSortAndFilter(props) {
151
155
  }
152
156
  function useDataGridModel(props) {
153
157
  const { columns } = props;
158
+ const theme = useTheme();
154
159
  const containerRef = useRef(null);
155
160
  const [editingCell, setEditingCell] = useState(null);
156
161
  const { sortBy, filters, setInternalSortBy } = useSortAndFilter(props);
157
- const rowHeight = densityHeight(props.rowHeight ?? DEFAULT_ROW_HEIGHT, props.density);
162
+ const designRowHeight = densityHeight(props.rowHeight ?? 52, props.density);
163
+ const rowPitch = remPx(theme, designRowHeight);
158
164
  const columnMap = useMemo(
159
165
  () => new Map(columns.map((column) => [column.id, column])),
160
166
  [columns]
@@ -162,11 +168,12 @@ function useDataGridModel(props) {
162
168
  const visibleColumns = useMemo(() => columns.filter((column) => !column.hidden), [columns]);
163
169
  const processedRows = useProcessedRows(props, columnMap, sortBy, filters);
164
170
  const virtualized = (props.virtualizeRows ?? true) && processedRows.length > VIRTUALIZATION_THRESHOLD;
165
- const { range, onScroll } = useRowWindow(processedRows.length, rowHeight, virtualized);
171
+ const { range, onScroll } = useRowWindow(processedRows.length, rowPitch, virtualized);
166
172
  const onSort = useSortHandler(props, sortBy, filters, setInternalSortBy);
167
173
  return {
168
174
  containerRef,
169
- rowHeight,
175
+ rowHeight: rem(theme, designRowHeight),
176
+ rowPitch,
170
177
  visibleColumns,
171
178
  processedRows,
172
179
  visibleRows: virtualized ? processedRows.slice(range.start, range.end) : processedRows,
@@ -184,4 +191,4 @@ function useDataGridModel(props) {
184
191
  export {
185
192
  useDataGridModel
186
193
  };
187
- //# sourceMappingURL=chunk-DLJGBJZW.js.map
194
+ //# sourceMappingURL=chunk-DGMDQHMI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/data-display/DataGrid/DataGrid.model.ts"],"sourcesContent":["/**\n * The DataGrid's STATE, in one hook.\n *\n * The component used to hold all of it inline, which made its body 700 lines\n * long and put the row pipeline, the virtualization window and the JSX in one\n * scope where any of them could reach any other. Split out, each piece is a\n * hook with named inputs and the render is left with nothing to do but render.\n *\n * Controlled/uncontrolled is resolved in ONE place per feature: a caller that\n * passes `sorting.sortBy` owns the sort, and a caller that does not gets the\n * internal state — the component never holds a second, divergent copy.\n */\nimport { useTheme } from '@mui/material/styles/index.js';\nimport { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport type React from 'react';\n\nimport { rem, remPx } from '../../../tokens/relative';\n\nimport { processRows } from './DataGrid.rows';\nimport type {\n DataGridProps,\n GridColumn,\n GridFilter,\n GridSort,\n SortDirection,\n} from './DataGrid.types';\n\nconst DEFAULT_PAGE_SIZE = 50;\n/** Rows rendered on either side of the window, so a fast scroll stays filled. */\nconst OVERSCAN_COUNT = 20;\n/** Below this many rows, virtualization costs more than it saves. */\nconst VIRTUALIZATION_THRESHOLD = 100;\n/** The initial (and reset) window size, before a scroll has measured anything. */\nconst INITIAL_WINDOW = 50;\n/** Re-window only past this much drift, so a scroll is not one setState per pixel. */\nconst WINDOW_DRIFT = 5;\n\n/** Which id is being edited, or `null`. */\nexport interface EditingCell {\n rowId: string | number;\n colId: string;\n}\n\n/** The visible slice of a virtualized body. */\nexport interface VisibleRange {\n start: number;\n end: number;\n}\n\n/** Everything the render needs, and nothing it has to derive. */\nexport interface DataGridModel<T extends Record<string, unknown>> {\n containerRef: React.RefObject<HTMLDivElement | null>;\n /** A row's height as CSS: the design height, density applied, through `rem`. */\n rowHeight: string;\n /**\n * The same height in px (`remPx`) — what the window divides `scrollTop` by.\n * One design number drawn two ways, so the rows and the window never disagree.\n */\n rowPitch: number;\n visibleColumns: GridColumn<T>[];\n processedRows: T[];\n visibleRows: T[];\n visibleRange: VisibleRange;\n virtualized: boolean;\n sortBy: readonly GridSort[];\n selectedRowIds: Array<string | number>;\n selectedRowIdsSet: ReadonlySet<string | number>;\n expandedRowIdsSet: ReadonlySet<string | number>;\n editingCell: EditingCell | null;\n setEditingCell: (cell: EditingCell | null) => void;\n setSelectedRowIds: (ids: Array<string | number>) => void;\n onSort: (columnId: string) => void;\n onToggleRow: (rowId: string | number, isSelected: boolean) => void;\n onToggleExpansion: (rowId: string | number) => void;\n onScroll: (event: React.UIEvent<HTMLDivElement>) => void;\n}\n\n/** The row height a density implies, in design px. */\nfunction densityHeight(base: number, density: DataGridProps['density']): number {\n if (density === 'compact') return Math.max(base * 0.8, 32);\n if (density === 'spacious') return base * 1.2;\n return base;\n}\n\n/** The rows this render should show, with every client-mode step resolved. */\nfunction useProcessedRows<T extends Record<string, unknown>>(\n props: DataGridProps<T>,\n columnMap: ReadonlyMap<string, GridColumn<T>>,\n sortBy: readonly GridSort[],\n filters: readonly GridFilter[],\n): T[] {\n const { rows, filtering = {}, sorting = {}, pagination, virtualizeRows = true } = props;\n const pageIndex = pagination?.pageIndex ?? 0;\n const pageSize = pagination?.pageSize ?? DEFAULT_PAGE_SIZE;\n return useMemo(\n () =>\n processRows({\n rows,\n columnMap,\n filters,\n sortBy,\n needsFiltering: filtering.mode === 'client' && filters.length > 0,\n needsSorting: sorting.mode === 'client' && sortBy.length > 0,\n // Virtualization already slices; doing both would page a page.\n needsPagination: pagination?.mode === 'client' && !virtualizeRows,\n pageIndex,\n pageSize,\n }),\n [\n rows,\n columnMap,\n filters,\n sortBy,\n filtering.mode,\n sorting.mode,\n pagination?.mode,\n virtualizeRows,\n pageIndex,\n pageSize,\n ],\n );\n}\n\n/**\n * The virtualization window and the scroll handler that moves it. `rowPitch` is\n * px, like the `scrollTop` and `clientHeight` it is divided into.\n *\n * Throttled through `requestAnimationFrame`, and only committed once the window\n * has drifted meaningfully — a `setState` per scroll event re-renders every\n * visible row for a movement the eye cannot see.\n */\nfunction useRowWindow(\n rowCount: number,\n rowPitch: number,\n enabled: boolean,\n): { range: VisibleRange; onScroll: (event: React.UIEvent<HTMLDivElement>) => void } {\n const [range, setRange] = useState<VisibleRange>({ start: 0, end: INITIAL_WINDOW });\n const rafRef = useRef<number | null>(null);\n\n useEffect(() => {\n if (rowCount < range.end) setRange({ start: 0, end: Math.min(INITIAL_WINDOW, rowCount) });\n }, [rowCount, range.end]);\n\n useEffect(\n () => () => {\n if (rafRef.current !== null) window.cancelAnimationFrame(rafRef.current);\n },\n [],\n );\n\n const onScroll = useCallback(\n (event: React.UIEvent<HTMLDivElement>) => {\n if (!enabled) return;\n const { scrollTop, clientHeight } = event.currentTarget;\n if (rafRef.current !== null) window.cancelAnimationFrame(rafRef.current);\n rafRef.current = window.requestAnimationFrame(() => {\n const first = Math.floor(scrollTop / rowPitch);\n const visible = Math.ceil(clientHeight / rowPitch);\n const start = Math.max(0, first - OVERSCAN_COUNT);\n const end = Math.min(first + visible + OVERSCAN_COUNT, rowCount);\n setRange((current) =>\n Math.abs(start - current.start) > WINDOW_DRIFT ||\n Math.abs(end - current.end) > WINDOW_DRIFT\n ? { start, end }\n : current,\n );\n rafRef.current = null;\n });\n },\n [enabled, rowPitch, rowCount],\n );\n\n return { range, onScroll };\n}\n\n/** The next `sortBy` for a header press: asc → desc → unsorted. */\nfunction nextSortBy(current: readonly GridSort[], columnId: string): GridSort[] {\n const existing = current.find((sort) => sort.id === columnId);\n let dir: SortDirection = 'asc';\n if (existing?.dir === 'asc') dir = 'desc';\n else if (existing?.dir === 'desc') dir = null;\n return dir ? [{ id: columnId, dir }] : current.filter((sort) => sort.id !== columnId);\n}\n\n/** Selection + expansion, each resolved once against its controlled prop. */\nfunction useRowFlags<T extends Record<string, unknown>>(\n props: DataGridProps<T>,\n): Pick<\n DataGridModel<T>,\n | 'selectedRowIds'\n | 'selectedRowIdsSet'\n | 'expandedRowIdsSet'\n | 'setSelectedRowIds'\n | 'onToggleRow'\n | 'onToggleExpansion'\n> {\n const { selection = { mode: 'none' }, expansion } = props;\n const [internalSelected, setInternalSelected] = useState(selection.defaultSelectedRowIds ?? []);\n const [internalExpanded, setInternalExpanded] = useState(expansion?.defaultExpandedRowIds ?? []);\n const selectedRowIds = selection.selectedRowIds ?? internalSelected;\n const expandedRowIds = expansion?.expandedRowIds ?? internalExpanded;\n\n const commitSelected = useCallback(\n (ids: Array<string | number>) => {\n if (selection.onChangeSelected) selection.onChangeSelected(ids);\n else setInternalSelected(ids);\n },\n [selection],\n );\n\n return {\n selectedRowIds,\n selectedRowIdsSet: useMemo(() => new Set(selectedRowIds), [selectedRowIds]),\n expandedRowIdsSet: useMemo(() => new Set(expandedRowIds), [expandedRowIds]),\n setSelectedRowIds: commitSelected,\n onToggleRow: (rowId, isSelected) => {\n if (selection.mode === 'single') commitSelected(isSelected ? [rowId] : []);\n else if (selection.mode === 'multi') {\n commitSelected(\n isSelected\n ? [...selectedRowIds, rowId]\n : selectedRowIds.filter((id) => id !== rowId),\n );\n }\n },\n onToggleExpansion: (rowId) => {\n if (!expansion) return;\n const next = expandedRowIds.includes(rowId)\n ? expandedRowIds.filter((id) => id !== rowId)\n : [...expandedRowIds, rowId];\n if (expansion.onChangeExpanded) expansion.onChangeExpanded(next);\n else setInternalExpanded(next);\n },\n };\n}\n\n/**\n * A header press, routed to whoever owns the sort: the server (which must\n * re-query — sorting the current page locally would reorder one page of a\n * dataset and call it sorted), the caller's `onChangeSortBy`, or internal state.\n */\nfunction useSortHandler<T extends Record<string, unknown>>(\n props: DataGridProps<T>,\n sortBy: readonly GridSort[],\n filters: readonly GridFilter[],\n setInternalSortBy: (next: GridSort[]) => void,\n): (columnId: string) => void {\n const { sorting = {}, pagination, onRequestData } = props;\n return useCallback(\n (columnId: string) => {\n const next = nextSortBy(sortBy, columnId);\n if (sorting.mode === 'server' && onRequestData) {\n onRequestData({\n pageIndex: pagination?.pageIndex ?? 0,\n pageSize: pagination?.pageSize ?? DEFAULT_PAGE_SIZE,\n sortBy: next,\n filters: [...filters],\n });\n return;\n }\n if (sorting.onChangeSortBy) sorting.onChangeSortBy(next);\n else setInternalSortBy(next);\n },\n [sortBy, sorting, onRequestData, pagination, filters, setInternalSortBy],\n );\n}\n\n/**\n * Sort and filter, each resolved ONCE against its controlled prop: a caller\n * that passes `sorting.sortBy` owns the sort, and one that does not gets the\n * internal state. The grid never holds a second, divergent copy.\n */\nfunction useSortAndFilter<T extends Record<string, unknown>>(\n props: DataGridProps<T>,\n): {\n sortBy: readonly GridSort[];\n filters: readonly GridFilter[];\n setInternalSortBy: (next: GridSort[]) => void;\n} {\n const { sorting = {}, filtering = {} } = props;\n const [internalSortBy, setInternalSortBy] = useState<GridSort[]>(sorting.defaultSortBy ?? []);\n const [internalFilters] = useState<GridFilter[]>(filtering.defaultFilters ?? []);\n return {\n sortBy: sorting.sortBy ?? internalSortBy,\n filters: filtering.filters ?? internalFilters,\n setInternalSortBy,\n };\n}\n\nexport function useDataGridModel<T extends Record<string, unknown>>(\n props: DataGridProps<T>,\n): DataGridModel<T> {\n const { columns } = props;\n const theme = useTheme();\n const containerRef = useRef<HTMLDivElement>(null);\n const [editingCell, setEditingCell] = useState<EditingCell | null>(null);\n const { sortBy, filters, setInternalSortBy } = useSortAndFilter(props);\n // 52 design px unless the caller says; the density scales it, then the type scale does.\n const designRowHeight = densityHeight(props.rowHeight ?? 52, props.density);\n const rowPitch = remPx(theme, designRowHeight);\n const columnMap = useMemo(\n () => new Map(columns.map((column) => [column.id, column])),\n [columns],\n );\n const visibleColumns = useMemo(() => columns.filter((column) => !column.hidden), [columns]);\n const processedRows = useProcessedRows(props, columnMap, sortBy, filters);\n const virtualized =\n (props.virtualizeRows ?? true) && processedRows.length > VIRTUALIZATION_THRESHOLD;\n const { range, onScroll } = useRowWindow(processedRows.length, rowPitch, virtualized);\n const onSort = useSortHandler(props, sortBy, filters, setInternalSortBy);\n\n return {\n containerRef,\n rowHeight: rem(theme, designRowHeight),\n rowPitch,\n visibleColumns,\n processedRows,\n visibleRows: virtualized ? processedRows.slice(range.start, range.end) : processedRows,\n visibleRange: range,\n virtualized,\n sortBy,\n editingCell,\n setEditingCell,\n onSort,\n onScroll,\n ...useRowFlags(props),\n };\n}\n"],"mappings":"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","names":[]}