@12-apps/ui 6.42.0 → 6.43.1

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 (396) hide show
  1. package/dist/_internal/components/data-display/Alert/Alert.js +3 -3
  2. package/dist/_internal/components/data-display/Alert/Alert.metrics.js +3 -3
  3. package/dist/_internal/components/data-display/Alert/Alert.styles.js +3 -3
  4. package/dist/_internal/components/data-display/Badge/Badge.js +4 -4
  5. package/dist/_internal/components/data-display/Badge/Badge.styles.js +4 -4
  6. package/dist/_internal/components/data-display/Badge/BadgeContent.js +4 -4
  7. package/dist/_internal/components/data-display/Banner/Banner.js +3 -3
  8. package/dist/_internal/components/data-display/Banner/Banner.styles.js +3 -3
  9. package/dist/_internal/components/data-display/CardKit/CardKebab.js +3 -3
  10. package/dist/_internal/components/data-display/CardKit/card-actions-context.js +3 -3
  11. package/dist/_internal/components/data-display/CardKit/use-remove-confirm.js +3 -3
  12. package/dist/_internal/components/data-display/CardKit/use-row-confirm.js +3 -3
  13. package/dist/_internal/components/data-display/Carousel/Carousel.chrome.js +4 -4
  14. package/dist/_internal/components/data-display/Carousel/Carousel.js +4 -4
  15. package/dist/_internal/components/data-display/Carousel/Carousel.parts.js +4 -4
  16. package/dist/_internal/components/data-display/Carousel/Carousel.styles.js +4 -4
  17. package/dist/_internal/components/data-display/Chart/Chart.js +4 -4
  18. package/dist/_internal/components/data-display/Chart/SpecChart.js +4 -4
  19. package/dist/_internal/components/data-display/Chart/chart-context.js +4 -4
  20. package/dist/_internal/components/data-display/Chart/chart-internals.js +4 -4
  21. package/dist/_internal/components/data-display/Chart/chart-renderers.js +4 -4
  22. package/dist/_internal/components/data-display/DataGrid/DataGrid.js +11 -2
  23. package/dist/_internal/components/data-display/DataGrid/DataGrid.model.js +12 -1
  24. package/dist/_internal/components/data-display/DataViews/DataViewsBoard.js +6 -6
  25. package/dist/_internal/components/data-display/DataViews/DataViewsGrid.js +28 -27
  26. package/dist/_internal/components/data-display/DataViews/DataViewsTableBase.js +34 -33
  27. package/dist/_internal/components/data-display/DataViews/DeleteViewDialog.js +6 -6
  28. package/dist/_internal/components/data-display/DataViews/ManageViewsDialog.js +6 -6
  29. package/dist/_internal/components/data-display/DataViews/SaveViewModal.js +7 -7
  30. package/dist/_internal/components/data-display/DataViews/base-card.js +6 -6
  31. package/dist/_internal/components/data-display/DataViews/base-list-card-geometry.js +15 -10
  32. package/dist/_internal/components/data-display/DataViews/base-list-card-slots.js +14 -9
  33. package/dist/_internal/components/data-display/DataViews/base-list-card.js +16 -11
  34. package/dist/_internal/components/data-display/DataViews/data-views-bar-controls.js +1 -1
  35. package/dist/_internal/components/data-display/DataViews/data-views-category-pill.js +1 -1
  36. package/dist/_internal/components/data-display/DataViews/data-views-columns-tab.js +6 -6
  37. package/dist/_internal/components/data-display/DataViews/data-views-columns.js +3 -3
  38. package/dist/_internal/components/data-display/DataViews/data-views-day-input.js +1 -1
  39. package/dist/_internal/components/data-display/DataViews/data-views-display-panel.js +11 -10
  40. package/dist/_internal/components/data-display/DataViews/data-views-display-tabs.js +12 -7
  41. package/dist/_internal/components/data-display/DataViews/data-views-empty.js +6 -6
  42. package/dist/_internal/components/data-display/DataViews/data-views-export.js +6 -6
  43. package/dist/_internal/components/data-display/DataViews/data-views-filter-panel.js +1 -1
  44. package/dist/_internal/components/data-display/DataViews/data-views-grid-bodies.js +13 -12
  45. package/dist/_internal/components/data-display/DataViews/data-views-grid-helpers.js +3 -3
  46. package/dist/_internal/components/data-display/DataViews/data-views-grid-parts.js +27 -26
  47. package/dist/_internal/components/data-display/DataViews/data-views-header-row.js +6 -6
  48. package/dist/_internal/components/data-display/DataViews/data-views-inline-bar.js +8 -8
  49. package/dist/_internal/components/data-display/DataViews/data-views-layout-context.js +11 -1
  50. package/dist/_internal/components/data-display/DataViews/data-views-more-fields.js +6 -6
  51. package/dist/_internal/components/data-display/DataViews/data-views-more-filters.js +7 -7
  52. package/dist/_internal/components/data-display/DataViews/data-views-number-input.js +1 -1
  53. package/dist/_internal/components/data-display/DataViews/data-views-pagination.js +1 -1
  54. package/dist/_internal/components/data-display/DataViews/data-views-range-pill.js +1 -1
  55. package/dist/_internal/components/data-display/DataViews/data-views-scope-tabs.js +10 -2
  56. package/dist/_internal/components/data-display/DataViews/data-views-search.js +1 -1
  57. package/dist/_internal/components/data-display/DataViews/data-views-select-all-strip.js +6 -6
  58. package/dist/_internal/components/data-display/DataViews/data-views-shell-toolbar.js +14 -13
  59. package/dist/_internal/components/data-display/DataViews/data-views-table-parts.js +9 -9
  60. package/dist/_internal/components/data-display/DataViews/data-views-toolbar.js +13 -12
  61. package/dist/_internal/components/data-display/DataViews/data-views-view-nav.js +6 -6
  62. package/dist/_internal/components/data-display/DataViews/list-card-rails.js +10 -2
  63. package/dist/_internal/components/data-display/DataViews/save-view-preview.js +6 -6
  64. package/dist/_internal/components/data-display/DataViews/use-data-views-state.js +3 -3
  65. package/dist/_internal/components/data-display/DescriptionItem/DescriptionItem.js +6 -6
  66. package/dist/_internal/components/data-display/FleetMap/FleetBody.js +1 -1
  67. package/dist/_internal/components/data-display/FleetMap/FleetCanvas.js +1 -1
  68. package/dist/_internal/components/data-display/FleetMap/FleetMap.js +4 -4
  69. package/dist/_internal/components/data-display/MapPreview/MapLayers.js +1 -1
  70. package/dist/_internal/components/data-display/MapPreview/MapPreview.js +1 -1
  71. package/dist/_internal/components/data-display/MapPreview/MapSearchBar.js +1 -1
  72. package/dist/_internal/components/data-display/Progress/Progress.js +6 -6
  73. package/dist/_internal/components/data-display/Progress/Progress.metrics.js +4 -4
  74. package/dist/_internal/components/data-display/Progress/Progress.styles.js +5 -5
  75. package/dist/_internal/components/data-display/Sheet/Sheet.body.js +4 -4
  76. package/dist/_internal/components/data-display/Sheet/Sheet.js +4 -4
  77. package/dist/_internal/components/data-display/Sheet/Sheet.styles.js +4 -4
  78. package/dist/_internal/components/data-display/Table/Table.helpers.js +3 -1
  79. package/dist/_internal/components/data-display/Table/Table.js +11 -3
  80. package/dist/_internal/components/data-display/Table/TableParts.hooks.js +2 -2
  81. package/dist/_internal/components/data-display/Table/TableParts.js +2 -2
  82. package/dist/_internal/components/data-display/index.js +15 -15
  83. package/dist/_internal/components/feedback/ConfirmAction/ConfirmButton.js +3 -3
  84. package/dist/_internal/components/feedback/NotificationStatusNotice/NotificationStatusNotice.js +3 -3
  85. package/dist/_internal/components/feedback/index.js +3 -3
  86. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocomplete.js +1 -1
  87. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocompleteField.js +1 -1
  88. package/dist/_internal/components/form/AddressAutocomplete/AddressFallbackField.js +1 -1
  89. package/dist/_internal/components/form/AddressAutocomplete/AddressInputField.js +1 -1
  90. package/dist/_internal/components/form/AddressAutocomplete/AddressTextField.js +1 -1
  91. package/dist/_internal/components/form/Autocomplete/Autocomplete.js +1 -1
  92. package/dist/_internal/components/form/Autocomplete/Autocomplete.parts.js +1 -1
  93. package/dist/_internal/components/form/Button/Button.js +3 -3
  94. package/dist/_internal/components/form/Button/Button.styles.js +3 -3
  95. package/dist/_internal/components/form/CategorySelect/CategoryPanel.js +1 -1
  96. package/dist/_internal/components/form/CategorySelect/CategoryPanelFoot.js +1 -1
  97. package/dist/_internal/components/form/CategorySelect/CategoryPanelHead.js +1 -1
  98. package/dist/_internal/components/form/CategorySelect/CategoryPanelList.js +1 -1
  99. package/dist/_internal/components/form/CategorySelect/CategoryRows.js +1 -1
  100. package/dist/_internal/components/form/CategorySelect/CategorySelect.js +1 -1
  101. package/dist/_internal/components/form/CategorySelect/CategorySelect.styles.js +1 -1
  102. package/dist/_internal/components/form/CategorySelect/CategoryTrigger.js +1 -1
  103. package/dist/_internal/components/form/CepField/CepField.js +1 -1
  104. package/dist/_internal/components/form/Command/Command.js +4 -4
  105. package/dist/_internal/components/form/Command/Command.styles.js +4 -4
  106. package/dist/_internal/components/form/CreatableSelect/CreatableSelect.js +1 -1
  107. package/dist/_internal/components/form/DateRangePicker/DateRangePicker.hooks.js +1 -1
  108. package/dist/_internal/components/form/DateRangePicker/DateRangePicker.js +1 -1
  109. package/dist/_internal/components/form/DateRangePicker/DateRangePicker.range.js +1 -1
  110. package/dist/_internal/components/form/DateRangePicker/DateRangePickerFields.js +1 -1
  111. package/dist/_internal/components/form/Input/Input.js +1 -1
  112. package/dist/_internal/components/form/Input/Input.styles.js +1 -1
  113. package/dist/_internal/components/form/InputOTP/InputOTP.js +1 -1
  114. package/dist/_internal/components/form/InputOTP/InputOTP.styles.js +1 -1
  115. package/dist/_internal/components/form/Label/Label.js +4 -4
  116. package/dist/_internal/components/form/Label/Label.styles.js +4 -4
  117. package/dist/_internal/components/form/Menubar/Menubar.item.js +4 -4
  118. package/dist/_internal/components/form/Menubar/Menubar.js +4 -4
  119. package/dist/_internal/components/form/Menubar/Menubar.styles.js +4 -4
  120. package/dist/_internal/components/form/Menubar/Menubar.toolbar.js +4 -4
  121. package/dist/_internal/components/form/NumberField/NumberField.js +1 -1
  122. package/dist/_internal/components/form/PhoneInput/PhoneInput.js +1 -1
  123. package/dist/_internal/components/form/RadioGroup/RadioGroup.js +1 -1
  124. package/dist/_internal/components/form/RadioGroup/RadioGroup.styles.js +1 -1
  125. package/dist/_internal/components/form/RadioGroup/RadioGroup.variants.js +1 -1
  126. package/dist/_internal/components/form/Select/Select.js +1 -1
  127. package/dist/_internal/components/form/Switch/Switch.js +3 -3
  128. package/dist/_internal/components/form/Switch/Switch.parts.js +3 -3
  129. package/dist/_internal/components/form/Switch/Switch.styles.js +3 -3
  130. package/dist/_internal/components/form/Textarea/Textarea.js +2 -2
  131. package/dist/_internal/components/form/Textarea/TextareaRichEditor.js +1 -1
  132. package/dist/_internal/components/form/Toggle/Toggle.js +1 -1
  133. package/dist/_internal/components/form/Toggle/Toggle.styles.js +1 -1
  134. package/dist/_internal/components/form/ToggleGroup/ToggleGroup.js +1 -1
  135. package/dist/_internal/components/form/index.js +5 -5
  136. package/dist/_internal/components/form/total-form/Fields/CategoryField.js +1 -1
  137. package/dist/_internal/components/form/total-form/Fields/CepField.js +1 -1
  138. package/dist/_internal/components/form/total-form/Fields/SelectField.js +1 -1
  139. package/dist/_internal/components/form/total-form/Fields/TextField.js +1 -1
  140. package/dist/_internal/components/form/total-form/Fields/ToggleField.js +1 -1
  141. package/dist/_internal/components/form/total-form/Fields/index.js +1 -1
  142. package/dist/_internal/components/form/total-form/SubmitButton.js +3 -3
  143. package/dist/_internal/components/index.js +28 -28
  144. package/dist/_internal/components/layout/Box/Box.js +7 -7
  145. package/dist/_internal/components/layout/ContentToolbar/ColumnsMenu.js +1 -1
  146. package/dist/_internal/components/layout/ContentToolbar/FilterTrigger.js +1 -1
  147. package/dist/_internal/components/layout/ContentToolbar/MultiSelectDropdown.js +1 -1
  148. package/dist/_internal/components/layout/ContentToolbar/MultiSelectTriggers.js +1 -1
  149. package/dist/_internal/components/layout/ContentToolbar/SavedViewsMenu.js +1 -1
  150. package/dist/_internal/components/layout/ContentToolbar/SortByDropdown.js +1 -1
  151. package/dist/_internal/components/layout/ContentToolbar/ViewSelector.js +1 -1
  152. package/dist/_internal/components/layout/SettingCard/SettingCard.js +9 -9
  153. package/dist/_internal/components/layout/SettingCard/SettingCard.parts.js +8 -8
  154. package/dist/_internal/components/layout/SettingCard/SettingGrid.js +9 -9
  155. package/dist/_internal/components/layout/SettingCard/SettingGroup.js +10 -10
  156. package/dist/_internal/components/layout/SettingCard/SettingSwitch.js +9 -9
  157. package/dist/_internal/components/layout/SettingCard/SettingToggle.js +10 -10
  158. package/dist/_internal/components/layout/SettingsLayout/SettingsLayout.js +4 -4
  159. package/dist/_internal/components/layout/SettingsLayout/SettingsPanel.js +3 -3
  160. package/dist/_internal/components/layout/SettingsLayout/SettingsSectionChips.js +2 -2
  161. package/dist/_internal/components/layout/SettingsLayout/SettingsSectionChips.scroll.js +1 -1
  162. package/dist/_internal/components/layout/Stack/Stack.js +8 -8
  163. package/dist/_internal/components/layout/TableFilter/TableFilter.js +1 -1
  164. package/dist/_internal/components/layout/index.js +13 -13
  165. package/dist/_internal/components/navigation/AppHeader/AppHeader.details.js +4 -4
  166. package/dist/_internal/components/navigation/AppHeader/AppHeader.identity.js +4 -4
  167. package/dist/_internal/components/navigation/Pagination/Pagination.js +1 -1
  168. package/dist/_internal/components/navigation/Pagination/PaginationParts.js +1 -1
  169. package/dist/_internal/components/navigation/Tabs/Tabs.js +1 -1
  170. package/dist/_internal/components/navigation/Tabs/Tabs.styles.js +1 -1
  171. package/dist/_internal/components/navigation/index.js +4 -4
  172. package/dist/_internal/components/typography/Heading/Heading.js +6 -6
  173. package/dist/_internal/components/typography/Heading/Heading.metrics.js +4 -4
  174. package/dist/_internal/components/typography/Heading/Heading.styles.js +5 -5
  175. package/dist/_internal/components/typography/Text/Text.js +5 -5
  176. package/dist/_internal/components/typography/Text/Text.metrics.js +4 -4
  177. package/dist/_internal/components/typography/index.js +8 -8
  178. package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.helpers.js +4 -4
  179. package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.js +4 -4
  180. package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.parts.js +4 -4
  181. package/dist/_internal/components/utility/WorkflowStep/WorkflowStepRow.js +4 -4
  182. package/dist/_internal/components/utility/index.js +4 -4
  183. package/dist/_internal/icons/Icon.js +7 -7
  184. package/dist/_internal/provider/UiProvider.js +6 -6
  185. package/dist/_internal/provider/mui-bridge.js +5 -5
  186. package/dist/_internal/provider/use-ui-theme.js +6 -6
  187. package/dist/_internal/social-login-button/social-login-button.js +9 -9
  188. package/dist/_internal/tokens/density.js +1 -1
  189. package/dist/_internal/tokens/field-height.js +1 -1
  190. package/dist/_internal/tokens/theme.js +3 -3
  191. package/dist/_internal/user-avatar/user-avatar.js +6 -6
  192. package/dist/charts.js +4 -4
  193. package/dist/{chunk-YPIVLPXF.js → chunk-33NBMNTB.js} +2 -2
  194. package/dist/{chunk-JE6GQB5J.js → chunk-4Z2HIHA5.js} +4 -4
  195. package/dist/{chunk-FHW3ATT7.js → chunk-53HQNN3C.js} +2 -2
  196. package/dist/{chunk-53O2TNSR.js → chunk-5DAVXZPY.js} +3 -3
  197. package/dist/{chunk-DH5UJD2I.js → chunk-5FHPZOYK.js} +2 -2
  198. package/dist/{chunk-NSVSC6ZC.js → chunk-5PJM772Y.js} +4 -4
  199. package/dist/{chunk-VYM2GPR6.js → chunk-5PTCT3LF.js} +2 -2
  200. package/dist/{chunk-ZH2SZ6B3.js → chunk-652PYSML.js} +6 -6
  201. package/dist/{chunk-PEOOCQ2T.js → chunk-6IRJAIS4.js} +2 -2
  202. package/dist/{chunk-PAT2BQOQ.js → chunk-6IWO7CM2.js} +2 -2
  203. package/dist/{chunk-YFODI4KT.js → chunk-6WZUZHJM.js} +8 -8
  204. package/dist/{chunk-KCDNOMMT.js → chunk-6Z6PUG4C.js} +9 -3
  205. package/dist/chunk-6Z6PUG4C.js.map +1 -0
  206. package/dist/{chunk-QEI5DC6S.js → chunk-7KJOODQB.js} +1 -1
  207. package/dist/{chunk-6ZD3FI5P.js → chunk-AOFI3GDS.js} +4 -4
  208. package/dist/{chunk-H72YKEGD.js → chunk-AOKLEE64.js} +2 -2
  209. package/dist/{chunk-RDFPM2AQ.js → chunk-BJGUDLWZ.js} +4 -4
  210. package/dist/{chunk-TBMGYQJF.js → chunk-BKBELIUR.js} +2 -2
  211. package/dist/{chunk-X66E5WSX.js → chunk-C4QKXFZN.js} +3 -3
  212. package/dist/{chunk-OJUORFGO.js → chunk-C6JUGWAU.js} +4 -4
  213. package/dist/{chunk-DLWLIPCP.js → chunk-CKFZQQ6T.js} +2 -2
  214. package/dist/{chunk-Z2NN53E5.js → chunk-DCT2PKMQ.js} +2 -2
  215. package/dist/{chunk-JMEPGXJG.js → chunk-DHW5UMUG.js} +2 -2
  216. package/dist/{chunk-G6ZPQHBL.js → chunk-DSHM7VN6.js} +2 -2
  217. package/dist/{chunk-WV62BSWA.js → chunk-F5BYZNXY.js} +2 -2
  218. package/dist/{chunk-RDZGXJOD.js → chunk-F5GXWK6B.js} +2 -2
  219. package/dist/{chunk-4Z7GEO2R.js → chunk-G7RYAWPZ.js} +2 -2
  220. package/dist/{chunk-4S2LWZ7L.js → chunk-GO6XDMBB.js} +2 -2
  221. package/dist/{chunk-KHOAXZW2.js → chunk-H3GYVR7S.js} +3 -3
  222. package/dist/{chunk-XZJM6EPC.js → chunk-HUAQQ5ZL.js} +12 -2
  223. package/dist/chunk-HUAQQ5ZL.js.map +1 -0
  224. package/dist/{chunk-C6OVO6AT.js → chunk-I6MVJWUO.js} +2 -2
  225. package/dist/{chunk-4XHVGUOM.js → chunk-J2SFOLGZ.js} +2 -2
  226. package/dist/{chunk-7TE4TMS3.js → chunk-JSOJKHEI.js} +3 -3
  227. package/dist/{chunk-ZNBLGS66.js → chunk-K62RHTFB.js} +3 -3
  228. package/dist/{chunk-6N2EDWMG.js → chunk-KWU62UPM.js} +2 -2
  229. package/dist/{chunk-NHEWST3N.js → chunk-L3MRRAZM.js} +3 -2
  230. package/dist/chunk-L3MRRAZM.js.map +1 -0
  231. package/dist/{chunk-CJ45OL7L.js → chunk-M2GVHVE4.js} +2 -2
  232. package/dist/{chunk-BX7QWHKC.js → chunk-MBNXCCRG.js} +4 -4
  233. package/dist/{chunk-ZSTUKSTJ.js → chunk-MLUUF7OZ.js} +2 -2
  234. package/dist/{chunk-KW3H5FUS.js → chunk-MPYIEIBA.js} +2 -2
  235. package/dist/{chunk-DFI2RKVQ.js → chunk-MRWYKNBY.js} +2 -2
  236. package/dist/{chunk-AP4LSXRK.js → chunk-NYT3UVOH.js} +8 -8
  237. package/dist/{chunk-YWJDUJAR.js → chunk-O6IF4BZT.js} +2 -2
  238. package/dist/{chunk-3UEZ6NUI.js → chunk-OCQ6GDCF.js} +2 -2
  239. package/dist/{chunk-JAGAFEZL.js → chunk-OD3L6GX5.js} +2 -2
  240. package/dist/{chunk-RPBGUWNF.js → chunk-ON4TRXCM.js} +3 -3
  241. package/dist/{chunk-NOLSQK4J.js → chunk-PGV2FLE3.js} +2 -2
  242. package/dist/{chunk-GT2RCOHM.js → chunk-QLAFJZDS.js} +31 -13
  243. package/dist/chunk-QLAFJZDS.js.map +1 -0
  244. package/dist/{chunk-C2TERIB4.js → chunk-QSNLIWEB.js} +2 -2
  245. package/dist/{chunk-XZY7O7JJ.js → chunk-RHKT2XW2.js} +2 -2
  246. package/dist/{chunk-TDXEO2UI.js → chunk-RJ35IXFD.js} +2 -2
  247. package/dist/{chunk-4SHMSLFA.js → chunk-RRG75JJS.js} +2 -2
  248. package/dist/{chunk-6MD5QXXJ.js → chunk-RWRPF24F.js} +4 -4
  249. package/dist/{chunk-VPAOVEI2.js → chunk-SJGYMI6Y.js} +3 -3
  250. package/dist/{chunk-EQXIW5MQ.js → chunk-TCMH3FXD.js} +2 -2
  251. package/dist/{chunk-STTULW2K.js → chunk-TE3XYCX7.js} +2 -2
  252. package/dist/{chunk-TJ3334AJ.js → chunk-TMW7RBW7.js} +3 -3
  253. package/dist/{chunk-DGMDQHMI.js → chunk-U6DOF5CR.js} +14 -2
  254. package/dist/chunk-U6DOF5CR.js.map +1 -0
  255. package/dist/{chunk-3GYPZ5MI.js → chunk-UP7SSTCZ.js} +6 -6
  256. package/dist/{chunk-IWGW2E35.js → chunk-WF4XK5AS.js} +2 -2
  257. package/dist/{chunk-6REPQ352.js → chunk-WL7IG7TT.js} +2 -2
  258. package/dist/{chunk-U67ZQ6VM.js → chunk-YIWVHEPW.js} +2 -2
  259. package/dist/{chunk-DH77PLFF.js → chunk-YTVXT5TD.js} +2 -2
  260. package/dist/{chunk-MKLIMY3D.js → chunk-YZHX2HTC.js} +2 -2
  261. package/dist/{chunk-SQNQQTP7.js → chunk-Z6LTEJ7F.js} +7 -5
  262. package/dist/chunk-Z6LTEJ7F.js.map +1 -0
  263. package/dist/data-display/Alert.js +3 -3
  264. package/dist/data-display/Badge.js +4 -4
  265. package/dist/data-display/Banner.js +3 -3
  266. package/dist/data-display/CardKit.js +3 -3
  267. package/dist/data-display/Carousel.js +4 -4
  268. package/dist/data-display/Chart.js +4 -4
  269. package/dist/data-display/DataGrid.js +11 -2
  270. package/dist/data-display/DataViews.js +39 -38
  271. package/dist/data-display/DescriptionItem.js +6 -6
  272. package/dist/data-display/FleetMap.js +4 -4
  273. package/dist/data-display/MapPreview.js +1 -1
  274. package/dist/data-display/Progress.js +6 -6
  275. package/dist/data-display/Sheet.js +4 -4
  276. package/dist/data-display/Table.js +11 -3
  277. package/dist/feedback/ConfirmAction.js +3 -3
  278. package/dist/feedback/NotificationStatusNotice.js +3 -3
  279. package/dist/form/AddressAutocomplete.js +1 -1
  280. package/dist/form/Autocomplete.js +1 -1
  281. package/dist/form/Button.js +3 -3
  282. package/dist/form/CategorySelect.js +1 -1
  283. package/dist/form/CepField.js +1 -1
  284. package/dist/form/Command.js +4 -4
  285. package/dist/form/CreatableSelect.js +1 -1
  286. package/dist/form/DateRangePicker.js +1 -1
  287. package/dist/form/Input.js +1 -1
  288. package/dist/form/InputOTP.js +1 -1
  289. package/dist/form/Label.js +4 -4
  290. package/dist/form/Menubar.js +4 -4
  291. package/dist/form/NumberField.js +1 -1
  292. package/dist/form/PhoneInput.js +1 -1
  293. package/dist/form/RadioGroup.js +1 -1
  294. package/dist/form/Select.js +1 -1
  295. package/dist/form/Switch.js +3 -3
  296. package/dist/form/Textarea.js +2 -2
  297. package/dist/form/Toggle.js +1 -1
  298. package/dist/form/ToggleGroup.js +1 -1
  299. package/dist/form/total-form.js +3 -3
  300. package/dist/icons.js +7 -7
  301. package/dist/layout/Box.js +7 -7
  302. package/dist/layout/ContentToolbar.js +1 -1
  303. package/dist/layout/SettingCard.js +13 -13
  304. package/dist/layout/SettingsLayout.js +4 -4
  305. package/dist/layout/Stack.js +8 -8
  306. package/dist/layout/TableFilter.js +1 -1
  307. package/dist/navigation/AppHeader.js +4 -4
  308. package/dist/navigation/Pagination.js +1 -1
  309. package/dist/navigation/Tabs.js +1 -1
  310. package/dist/provider.js +7 -7
  311. package/dist/social-login-button.js +9 -9
  312. package/dist/tokens.js +15 -15
  313. package/dist/types/components/data-display/DataGrid/DataGrid.d.ts.map +1 -1
  314. package/dist/types/components/data-display/DataGrid/DataGrid.model.d.ts +19 -1
  315. package/dist/types/components/data-display/DataGrid/DataGrid.model.d.ts.map +1 -1
  316. package/dist/types/components/data-display/DataViews/data-views-layout-context.d.ts +12 -0
  317. package/dist/types/components/data-display/DataViews/data-views-layout-context.d.ts.map +1 -1
  318. package/dist/types/components/data-display/Table/Table.d.ts.map +1 -1
  319. package/dist/types/components/data-display/Table/Table.helpers.d.ts +10 -1
  320. package/dist/types/components/data-display/Table/Table.helpers.d.ts.map +1 -1
  321. package/dist/types/components/layout/SettingsLayout/SettingsSectionChips.scroll.d.ts.map +1 -1
  322. package/dist/typography/Heading.js +6 -6
  323. package/dist/typography/Text.js +5 -5
  324. package/dist/user-avatar.js +6 -6
  325. package/dist/utility/WorkflowStep.js +4 -4
  326. package/package.json +1 -1
  327. package/src/components/data-display/DataGrid/DataGrid.model.ts +30 -1
  328. package/src/components/data-display/DataGrid/DataGrid.tsx +9 -4
  329. package/src/components/data-display/DataViews/data-views-layout-context.tsx +24 -1
  330. package/src/components/data-display/Table/Table.helpers.ts +20 -2
  331. package/src/components/data-display/Table/Table.tsx +5 -2
  332. package/src/components/layout/SettingsLayout/SettingsSectionChips.scroll.ts +52 -16
  333. package/dist/chunk-DGMDQHMI.js.map +0 -1
  334. package/dist/chunk-GT2RCOHM.js.map +0 -1
  335. package/dist/chunk-KCDNOMMT.js.map +0 -1
  336. package/dist/chunk-NHEWST3N.js.map +0 -1
  337. package/dist/chunk-SQNQQTP7.js.map +0 -1
  338. package/dist/chunk-XZJM6EPC.js.map +0 -1
  339. /package/dist/{chunk-YPIVLPXF.js.map → chunk-33NBMNTB.js.map} +0 -0
  340. /package/dist/{chunk-JE6GQB5J.js.map → chunk-4Z2HIHA5.js.map} +0 -0
  341. /package/dist/{chunk-FHW3ATT7.js.map → chunk-53HQNN3C.js.map} +0 -0
  342. /package/dist/{chunk-53O2TNSR.js.map → chunk-5DAVXZPY.js.map} +0 -0
  343. /package/dist/{chunk-DH5UJD2I.js.map → chunk-5FHPZOYK.js.map} +0 -0
  344. /package/dist/{chunk-NSVSC6ZC.js.map → chunk-5PJM772Y.js.map} +0 -0
  345. /package/dist/{chunk-VYM2GPR6.js.map → chunk-5PTCT3LF.js.map} +0 -0
  346. /package/dist/{chunk-ZH2SZ6B3.js.map → chunk-652PYSML.js.map} +0 -0
  347. /package/dist/{chunk-PEOOCQ2T.js.map → chunk-6IRJAIS4.js.map} +0 -0
  348. /package/dist/{chunk-PAT2BQOQ.js.map → chunk-6IWO7CM2.js.map} +0 -0
  349. /package/dist/{chunk-YFODI4KT.js.map → chunk-6WZUZHJM.js.map} +0 -0
  350. /package/dist/{chunk-QEI5DC6S.js.map → chunk-7KJOODQB.js.map} +0 -0
  351. /package/dist/{chunk-6ZD3FI5P.js.map → chunk-AOFI3GDS.js.map} +0 -0
  352. /package/dist/{chunk-H72YKEGD.js.map → chunk-AOKLEE64.js.map} +0 -0
  353. /package/dist/{chunk-RDFPM2AQ.js.map → chunk-BJGUDLWZ.js.map} +0 -0
  354. /package/dist/{chunk-TBMGYQJF.js.map → chunk-BKBELIUR.js.map} +0 -0
  355. /package/dist/{chunk-X66E5WSX.js.map → chunk-C4QKXFZN.js.map} +0 -0
  356. /package/dist/{chunk-OJUORFGO.js.map → chunk-C6JUGWAU.js.map} +0 -0
  357. /package/dist/{chunk-DLWLIPCP.js.map → chunk-CKFZQQ6T.js.map} +0 -0
  358. /package/dist/{chunk-Z2NN53E5.js.map → chunk-DCT2PKMQ.js.map} +0 -0
  359. /package/dist/{chunk-JMEPGXJG.js.map → chunk-DHW5UMUG.js.map} +0 -0
  360. /package/dist/{chunk-G6ZPQHBL.js.map → chunk-DSHM7VN6.js.map} +0 -0
  361. /package/dist/{chunk-WV62BSWA.js.map → chunk-F5BYZNXY.js.map} +0 -0
  362. /package/dist/{chunk-RDZGXJOD.js.map → chunk-F5GXWK6B.js.map} +0 -0
  363. /package/dist/{chunk-4Z7GEO2R.js.map → chunk-G7RYAWPZ.js.map} +0 -0
  364. /package/dist/{chunk-4S2LWZ7L.js.map → chunk-GO6XDMBB.js.map} +0 -0
  365. /package/dist/{chunk-KHOAXZW2.js.map → chunk-H3GYVR7S.js.map} +0 -0
  366. /package/dist/{chunk-C6OVO6AT.js.map → chunk-I6MVJWUO.js.map} +0 -0
  367. /package/dist/{chunk-4XHVGUOM.js.map → chunk-J2SFOLGZ.js.map} +0 -0
  368. /package/dist/{chunk-7TE4TMS3.js.map → chunk-JSOJKHEI.js.map} +0 -0
  369. /package/dist/{chunk-ZNBLGS66.js.map → chunk-K62RHTFB.js.map} +0 -0
  370. /package/dist/{chunk-6N2EDWMG.js.map → chunk-KWU62UPM.js.map} +0 -0
  371. /package/dist/{chunk-CJ45OL7L.js.map → chunk-M2GVHVE4.js.map} +0 -0
  372. /package/dist/{chunk-BX7QWHKC.js.map → chunk-MBNXCCRG.js.map} +0 -0
  373. /package/dist/{chunk-ZSTUKSTJ.js.map → chunk-MLUUF7OZ.js.map} +0 -0
  374. /package/dist/{chunk-KW3H5FUS.js.map → chunk-MPYIEIBA.js.map} +0 -0
  375. /package/dist/{chunk-DFI2RKVQ.js.map → chunk-MRWYKNBY.js.map} +0 -0
  376. /package/dist/{chunk-AP4LSXRK.js.map → chunk-NYT3UVOH.js.map} +0 -0
  377. /package/dist/{chunk-YWJDUJAR.js.map → chunk-O6IF4BZT.js.map} +0 -0
  378. /package/dist/{chunk-3UEZ6NUI.js.map → chunk-OCQ6GDCF.js.map} +0 -0
  379. /package/dist/{chunk-JAGAFEZL.js.map → chunk-OD3L6GX5.js.map} +0 -0
  380. /package/dist/{chunk-RPBGUWNF.js.map → chunk-ON4TRXCM.js.map} +0 -0
  381. /package/dist/{chunk-NOLSQK4J.js.map → chunk-PGV2FLE3.js.map} +0 -0
  382. /package/dist/{chunk-C2TERIB4.js.map → chunk-QSNLIWEB.js.map} +0 -0
  383. /package/dist/{chunk-XZY7O7JJ.js.map → chunk-RHKT2XW2.js.map} +0 -0
  384. /package/dist/{chunk-TDXEO2UI.js.map → chunk-RJ35IXFD.js.map} +0 -0
  385. /package/dist/{chunk-4SHMSLFA.js.map → chunk-RRG75JJS.js.map} +0 -0
  386. /package/dist/{chunk-6MD5QXXJ.js.map → chunk-RWRPF24F.js.map} +0 -0
  387. /package/dist/{chunk-VPAOVEI2.js.map → chunk-SJGYMI6Y.js.map} +0 -0
  388. /package/dist/{chunk-EQXIW5MQ.js.map → chunk-TCMH3FXD.js.map} +0 -0
  389. /package/dist/{chunk-STTULW2K.js.map → chunk-TE3XYCX7.js.map} +0 -0
  390. /package/dist/{chunk-TJ3334AJ.js.map → chunk-TMW7RBW7.js.map} +0 -0
  391. /package/dist/{chunk-3GYPZ5MI.js.map → chunk-UP7SSTCZ.js.map} +0 -0
  392. /package/dist/{chunk-IWGW2E35.js.map → chunk-WF4XK5AS.js.map} +0 -0
  393. /package/dist/{chunk-6REPQ352.js.map → chunk-WL7IG7TT.js.map} +0 -0
  394. /package/dist/{chunk-U67ZQ6VM.js.map → chunk-YIWVHEPW.js.map} +0 -0
  395. /package/dist/{chunk-DH77PLFF.js.map → chunk-YTVXT5TD.js.map} +0 -0
  396. /package/dist/{chunk-MKLIMY3D.js.map → chunk-YZHX2HTC.js.map} +0 -0
@@ -13,7 +13,7 @@ import {
13
13
  } from "./chunk-K6LNHHSH.js";
14
14
  import {
15
15
  Text
16
- } from "./chunk-MKLIMY3D.js";
16
+ } from "./chunk-YZHX2HTC.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-DH5UJD2I.js.map
72
+ //# sourceMappingURL=chunk-5FHPZOYK.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  STACK_BREAK
3
- } from "./chunk-JE6GQB5J.js";
3
+ } from "./chunk-4Z2HIHA5.js";
4
4
  import {
5
5
  CARD_RADIUS,
6
6
  cardSurfaceStyles,
@@ -16,10 +16,10 @@ import {
16
16
  RAIL_GAP,
17
17
  railsTemplateFor,
18
18
  useListRails
19
- } from "./chunk-EQXIW5MQ.js";
19
+ } from "./chunk-TCMH3FXD.js";
20
20
  import {
21
21
  DENSITY_ROW_PADDING
22
- } from "./chunk-XZJM6EPC.js";
22
+ } from "./chunk-HUAQQ5ZL.js";
23
23
  import {
24
24
  rem
25
25
  } from "./chunk-YKCAJ2TN.js";
@@ -189,4 +189,4 @@ export {
189
189
  actionProps,
190
190
  rowStyles
191
191
  };
192
- //# sourceMappingURL=chunk-NSVSC6ZC.js.map
192
+ //# sourceMappingURL=chunk-5PJM772Y.js.map
@@ -7,7 +7,7 @@ import {
7
7
  import {
8
8
  SettingSwitchBlock,
9
9
  useSettingSwitchIds
10
- } from "./chunk-RDZGXJOD.js";
10
+ } from "./chunk-F5GXWK6B.js";
11
11
  import {
12
12
  flatStyles,
13
13
  surfaceStyles,
@@ -44,4 +44,4 @@ SettingToggle.displayName = "SettingToggle";
44
44
  export {
45
45
  SettingToggle
46
46
  };
47
- //# sourceMappingURL=chunk-VYM2GPR6.js.map
47
+ //# sourceMappingURL=chunk-5PTCT3LF.js.map
@@ -16,11 +16,7 @@ import {
16
16
  TYPE_SIZES,
17
17
  WEB_FONT_FAMILY,
18
18
  WEB_MONOSPACE_FONT_FAMILY
19
- } from "./chunk-YFODI4KT.js";
20
- import {
21
- densityFontSize,
22
- resolveDensityFactor
23
- } from "./chunk-VBP46YP4.js";
19
+ } from "./chunk-6WZUZHJM.js";
24
20
  import {
25
21
  cssLengthToPx,
26
22
  cssTrackingToEm
@@ -28,6 +24,10 @@ import {
28
24
  import {
29
25
  HEADING_LEVELS
30
26
  } from "./chunk-FZXKH2ZT.js";
27
+ import {
28
+ densityFontSize,
29
+ resolveDensityFactor
30
+ } from "./chunk-VBP46YP4.js";
31
31
  import {
32
32
  resolveFieldHeight
33
33
  } from "./chunk-O6MJWHU5.js";
@@ -162,4 +162,4 @@ export {
162
162
  uiThemeFromMui,
163
163
  muiThemeOptionsFrom
164
164
  };
165
- //# sourceMappingURL=chunk-ZH2SZ6B3.js.map
165
+ //# sourceMappingURL=chunk-652PYSML.js.map
@@ -15,7 +15,7 @@ import {
15
15
  } from "./chunk-OZPLAOI4.js";
16
16
  import {
17
17
  Icon
18
- } from "./chunk-JAGAFEZL.js";
18
+ } from "./chunk-OD3L6GX5.js";
19
19
  import {
20
20
  Button
21
21
  } from "./chunk-K6LNHHSH.js";
@@ -137,4 +137,4 @@ export {
137
137
  PendingSpinner,
138
138
  LearnMore
139
139
  };
140
- //# sourceMappingURL=chunk-PEOOCQ2T.js.map
140
+ //# sourceMappingURL=chunk-6IRJAIS4.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  FONT_WEIGHTS,
3
3
  TYPE_SIZES
4
- } from "./chunk-YFODI4KT.js";
4
+ } from "./chunk-6WZUZHJM.js";
5
5
 
6
6
  // src/components/typography/Text/Text.metrics.ts
7
7
  var TEXT_SIZES = TYPE_SIZES;
@@ -31,4 +31,4 @@ export {
31
31
  CODE_PADDING,
32
32
  CODE_RADIUS_FACTOR
33
33
  };
34
- //# sourceMappingURL=chunk-PAT2BQOQ.js.map
34
+ //# sourceMappingURL=chunk-6IWO7CM2.js.map
@@ -1,8 +1,3 @@
1
- import {
2
- densityFieldHeight,
3
- densitySpacingUnit,
4
- resolveDensityFactor
5
- } from "./chunk-VBP46YP4.js";
6
1
  import {
7
2
  DARK_TEXT_PRIMARY,
8
3
  contrastText
@@ -15,11 +10,16 @@ import {
15
10
  HEADING_SCALE
16
11
  } from "./chunk-FZXKH2ZT.js";
17
12
  import {
18
- DEFAULT_FIELD_RADIUS
19
- } from "./chunk-26X4CZVR.js";
13
+ densityFieldHeight,
14
+ densitySpacingUnit,
15
+ resolveDensityFactor
16
+ } from "./chunk-VBP46YP4.js";
20
17
  import {
21
18
  resolveFieldHeight
22
19
  } from "./chunk-O6MJWHU5.js";
20
+ import {
21
+ DEFAULT_FIELD_RADIUS
22
+ } from "./chunk-26X4CZVR.js";
23
23
  import {
24
24
  darken,
25
25
  lighten
@@ -189,4 +189,4 @@ export {
189
189
  createUiTheme,
190
190
  DEFAULT_UI_THEME
191
191
  };
192
- //# sourceMappingURL=chunk-YFODI4KT.js.map
192
+ //# sourceMappingURL=chunk-6WZUZHJM.js.map
@@ -9,20 +9,24 @@ import {
9
9
  import {
10
10
  EnhancedTableBody,
11
11
  EnhancedTableHeader
12
- } from "./chunk-FHW3ATT7.js";
12
+ } from "./chunk-53HQNN3C.js";
13
13
  import {
14
14
  TABLE_DEFAULTS,
15
15
  containerStyle,
16
16
  definedProps,
17
17
  headerRefFor,
18
+ resolveTableDensity,
18
19
  scrollerRadiusStyle,
19
20
  tableDomProps,
20
21
  tableRowHeight,
21
22
  virtualHeight
22
- } from "./chunk-NHEWST3N.js";
23
+ } from "./chunk-L3MRRAZM.js";
23
24
  import {
24
25
  tableStyles
25
26
  } from "./chunk-BVHIKXCN.js";
27
+ import {
28
+ useDensity
29
+ } from "./chunk-DJKVSUXH.js";
26
30
  import {
27
31
  rem
28
32
  } from "./chunk-YKCAJ2TN.js";
@@ -244,7 +248,9 @@ var TableLoadingState = ({ shell, loadingComponent, columns }) => /* @__PURE__ *
244
248
  var TableEmptyState = ({ shell, emptyStateComponent, emptyText, colSpan }) => /* @__PURE__ */ jsx(TableShell, { ...shell, children: /* @__PURE__ */ jsx(EmptyRow, { colSpan, children: emptyStateComponent || /* @__PURE__ */ jsx(NoDataPlaceholder, { emptyText }) }) });
245
249
  var Table = React.forwardRef(
246
250
  (tableProps, ref) => {
251
+ const themeDensity = useDensity();
247
252
  const resolved = { ...TABLE_DEFAULTS, ...definedProps(tableProps) };
253
+ resolved.density = resolveTableDensity(resolved.density, themeDensity.level);
248
254
  const {
249
255
  columns,
250
256
  data,
@@ -305,4 +311,4 @@ Table.displayName = "Table";
305
311
  export {
306
312
  Table
307
313
  };
308
- //# sourceMappingURL=chunk-KCDNOMMT.js.map
314
+ //# sourceMappingURL=chunk-6Z6PUG4C.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/data-display/Table/Table.tsx"],"sourcesContent":["import MoreVertIcon from '@mui/icons-material/MoreVert';\nimport Box from '@mui/material/Box/index.js';\nimport FormControlLabel from '@mui/material/FormControlLabel/index.js';\nimport IconButton from '@mui/material/IconButton/index.js';\nimport Menu from '@mui/material/Menu/index.js';\nimport MenuItem from '@mui/material/MenuItem/index.js';\nimport Skeleton from '@mui/material/Skeleton/index.js';\nimport Switch from '@mui/material/Switch/index.js';\nimport MuiTable from '@mui/material/Table/index.js';\nimport TableBody from '@mui/material/TableBody/index.js';\nimport TableCell from '@mui/material/TableCell/index.js';\nimport TableContainer from '@mui/material/TableContainer/index.js';\nimport TableRow from '@mui/material/TableRow/index.js';\nimport { styled, useTheme } from '@mui/material/styles/index.js';\nimport React from 'react';\n\nimport type {\n ColumnConfig,\n TableDensity,\n TableProps,\n TableStripeColor} from './Table.types';\nimport {\n TABLE_DEFAULTS,\n containerStyle,\n definedProps,\n headerRefFor,\n resolveTableDensity,\n scrollerRadiusStyle,\n tableDomProps,\n tableRowHeight,\n virtualHeight,\n} from './Table.helpers';\nimport { useTableSelection, useVirtualScrolling } from './Table.hooks';\nimport { EnhancedTableBody, EnhancedTableHeader } from './TableParts';\nimport { EmptyRow, NoDataPlaceholder } from './TableStates';\nimport { tableStyles } from './Table.styles';\nimport { rem } from '../../../tokens/relative';\nimport { useDensity } from '../../../tokens/density';\n\n// Helper function to get stripe color from theme\nconst StyledTable = styled(MuiTable, {\n shouldForwardProp: (prop) =>\n !['customVariant', 'glow', 'pulse', 'hoverable', 'density', 'stickyHeader', 'stripeColor', 'virtualised'].includes(prop as string) })<{\n customVariant?: string;\n glow?: boolean;\n pulse?: boolean;\n hoverable?: boolean;\n density?: TableDensity;\n stickyHeader?: boolean;\n stripeColor?: TableStripeColor;\n virtualised?: boolean;\n}>(({ theme, customVariant, glow, pulse, hoverable, density, stickyHeader, stripeColor = 'neutral', virtualised }) => {\n return tableStyles({\n theme,\n customVariant,\n glow,\n pulse,\n hoverable,\n density,\n stickyHeader,\n stripeColor,\n virtualised });\n});\n\n// Virtual Scrolling Hook\nconst TableShell: React.FC<{\n innerRef: React.Ref<globalThis.HTMLTableElement>;\n variant?: string;\n stripeColor?: TableStripeColor;\n glow?: boolean;\n pulse?: boolean;\n hoverable?: boolean;\n density?: TableDensity;\n stickyHeader?: boolean;\n header: React.ReactNode;\n rest: Record<string, unknown>;\n children: React.ReactNode;\n}> = ({\n innerRef,\n variant,\n stripeColor,\n glow,\n pulse,\n hoverable,\n density,\n stickyHeader,\n header,\n rest,\n children }) => (\n // The loading and empty shells are not scrollers (no `containerHeight`), so\n // they get only the rounded clip `stickyHeader` moves off the `<table>`,\n // never a height (FUT-2677).\n <TableContainer style={scrollerRadiusStyle(useTheme(), stickyHeader)}>\n <StyledTable\n ref={innerRef}\n customVariant={variant}\n stripeColor={stripeColor}\n glow={glow}\n pulse={pulse}\n hoverable={hoverable}\n density={density}\n stickyHeader={stickyHeader}\n {...rest}\n >\n {header}\n {children}\n </StyledTable>\n </TableContainer>\n);\n\nconst SKELETON_ROW_COUNT = 5;\n\nconst LoadingSkeletonRows: React.FC<{ columns?: ColumnConfig[] }> = ({ columns }) => {\n const theme = useTheme();\n return (\n <>\n {Array.from({ length: SKELETON_ROW_COUNT }, (_, index) => (\n <TableRow key={index}>\n {columns?.map((column) => (\n <TableCell key={column.key}>\n <Skeleton height={rem(theme, 20)} />\n </TableCell>\n ))}\n </TableRow>\n ))}\n </>\n );\n};\n\nexport type TableShellProps = Omit<React.ComponentProps<typeof TableShell>, 'children'>;\n\ntype Selection = ReturnType<typeof useTableSelection>;\n\ninterface RendererProps {\n resolved: TableProps;\n selection: Selection;\n innerRef: React.Ref<globalThis.HTMLTableElement>;\n rest: Record<string, unknown>;\n}\n\n// The column-visibility control, shown only when responsive mode has actually\n// hidden something on a narrow viewport.\nconst ColumnToggleMenu: React.FC<{\n columns: ColumnConfig[];\n hiddenColumns: number[];\n anchor: HTMLElement | null;\n setAnchor: (element: HTMLElement | null) => void;\n setHiddenColumns: (next: number[]) => void;\n}> = ({ columns, hiddenColumns, anchor, setAnchor, setHiddenColumns }) => (\n <Box position=\"absolute\" top={8} right={8}>\n <IconButton onClick={(event) => setAnchor(event.currentTarget)} size=\"small\">\n <MoreVertIcon />\n </IconButton>\n <Menu anchorEl={anchor} open={Boolean(anchor)} onClose={() => setAnchor(null)}>\n {columns.map((column, index) => (\n <MenuItem key={column.key}>\n <FormControlLabel\n control={\n <Switch\n checked={!hiddenColumns.includes(index)}\n onChange={(event) =>\n setHiddenColumns(\n event.target.checked\n ? hiddenColumns.filter((i: number) => i !== index)\n : [...hiddenColumns, index],\n )\n }\n size=\"small\"\n />\n }\n label={column.label}\n />\n </MenuItem>\n ))}\n </Menu>\n </Box>\n);\n\n// The populated table. Local because StyledTable cannot cross a module\n// boundary (TS2742).\nconst columnsFor = (resolved: TableProps, selection: Selection): ColumnConfig[] =>\n (resolved.responsive ? selection.visibleColumns : resolved.columns) ?? [];\n\n// The toggle only earns its place when responsive mode has actually hidden\n// something on a narrow viewport.\nconst showsColumnToggle = (resolved: TableProps, selection: Selection): boolean =>\n Boolean(\n resolved.responsive &&\n selection.isMobile &&\n resolved.showColumnToggle &&\n selection.hiddenColumns.length > 0,\n );\n\n// The virtual window lives here, with the one scroller whose offset drives it;\n// the header's ref lets it subtract the height the `<thead>` pushes the body down.\nconst AdvancedTable: React.FC<RendererProps> = ({ resolved: p, selection, innerRef, rest }) => {\n const theme = useTheme();\n const finalColumns = columnsFor(p, selection);\n const showToggle = showsColumnToggle(p, selection);\n const headRef = React.useRef<globalThis.HTMLTableSectionElement>(null);\n const windowHeight = virtualHeight(p);\n const { visibleItems, handleScroll } = useVirtualScrolling(\n p.data ?? [],\n tableRowHeight(p.rowHeight) || 40,\n windowHeight ?? 400,\n p.overscan,\n headerRefFor(windowHeight, headRef),\n );\n\n return (\n <Box position=\"relative\">\n <TableContainer\n style={containerStyle(theme, p)}\n onScroll={windowHeight ? handleScroll : undefined}\n >\n <StyledTable\n ref={innerRef}\n customVariant={p.variant}\n stripeColor={p.stripeColor}\n glow={p.glow}\n pulse={p.pulse}\n hoverable={p.hoverable}\n density={p.density}\n stickyHeader={p.stickyHeader}\n virtualised={Boolean(windowHeight)}\n {...rest}\n >\n <EnhancedTableHeader\n columns={finalColumns}\n data={p.data ?? []}\n sortable={p.sortable}\n sortConfig={p.sortConfig}\n onSortChange={p.onSortChange}\n selectable={p.selectable}\n selectedRows={p.selectedRows}\n onSelectAll={selection.handleSelectAll}\n density={p.density}\n stickyHeader={p.stickyHeader}\n headRef={headRef}\n />\n <EnhancedTableBody\n data={p.data ?? []}\n columns={finalColumns}\n selectedRows={p.selectedRows}\n onRowClick={p.onRowClick}\n onRowFocus={p.onRowFocus}\n onRowBlur={p.onRowBlur}\n onSelectionChange={selection.handleSelectionChange}\n rowKeyExtractor={p.rowKeyExtractor}\n density={p.density}\n selectable={p.selectable}\n hoverable={p.hoverable}\n renderRow={p.renderRow}\n renderCell={p.renderCell}\n virtualWindow={windowHeight ? visibleItems : undefined}\n rowHeight={p.rowHeight}\n />\n </StyledTable>\n </TableContainer>\n\n {showToggle && (\n <ColumnToggleMenu\n columns={p.columns ?? []}\n hiddenColumns={selection.hiddenColumns}\n anchor={selection.columnMenuAnchor}\n setAnchor={selection.setColumnMenuAnchor}\n setHiddenColumns={selection.setHiddenColumns}\n />\n )}\n </Box>\n );\n};\n\n// The loading and empty states render the same shell as the populated table, so\n// they share TableShell rather than repeating it three times.\nconst buildShell = ({\n resolved,\n selection,\n innerRef,\n rest,\n finalColumns }: RendererProps & { finalColumns?: ColumnConfig[] }) => ({\n innerRef,\n variant: resolved.variant,\n stripeColor: resolved.stripeColor,\n glow: resolved.glow,\n pulse: resolved.pulse,\n hoverable: resolved.hoverable,\n density: resolved.density,\n stickyHeader: resolved.stickyHeader,\n header: resolved.columns ? (\n <EnhancedTableHeader\n columns={finalColumns ?? []}\n data={[]}\n sortable={resolved.sortable}\n sortConfig={resolved.sortConfig}\n onSortChange={resolved.onSortChange}\n selectable={resolved.selectable}\n selectedRows={resolved.selectedRows}\n onSelectAll={selection.handleSelectAll}\n density={resolved.density}\n stickyHeader={resolved.stickyHeader}\n />\n ) : null,\n rest: rest as Record<string, unknown> });\n\nconst TableLoadingState: React.FC<{\n shell: TableShellProps;\n loadingComponent?: React.ReactNode;\n columns?: ColumnConfig[];\n}> = ({ shell, loadingComponent, columns }) => (\n <TableShell {...shell}>\n <TableBody data-testid=\"table-loading\">\n {loadingComponent || <LoadingSkeletonRows columns={columns} />}\n </TableBody>\n </TableShell>\n);\n\nconst TableEmptyState: React.FC<{\n shell: TableShellProps;\n emptyStateComponent?: React.ReactNode;\n emptyText: string;\n colSpan: number;\n}> = ({ shell, emptyStateComponent, emptyText, colSpan }) => (\n <TableShell {...shell}>\n <EmptyRow colSpan={colSpan}>\n {emptyStateComponent || <NoDataPlaceholder emptyText={emptyText} />}\n </EmptyRow>\n </TableShell>\n);\n\nexport const Table = React.forwardRef<globalThis.HTMLTableElement, TableProps>(\n (tableProps, ref) => {\n const themeDensity = useDensity(); // FUT-2769 — density's default; see resolveTableDensity\n const resolved = { ...TABLE_DEFAULTS, ...definedProps(tableProps) } as TableProps;\n resolved.density = resolveTableDensity(resolved.density, themeDensity.level);\n const {\n columns,\n data,\n responsive,\n loading,\n loadingComponent,\n emptyStateComponent,\n emptyText,\n children,\n } = resolved;\n\n const selection = useTableSelection({\n columns,\n data,\n responsive,\n columnPriorities: resolved.columnPriorities,\n selectedRows: resolved.selectedRows ?? [],\n rowKeyExtractor: resolved.rowKeyExtractor,\n onSelectionChange: resolved.onSelectionChange });\n\n // Only MUI's and the DOM's own props reach the `<table>` (FUT-2658).\n const rest = tableDomProps(tableProps);\n const renderer: RendererProps = { resolved, selection, innerRef: ref, rest };\n const finalColumns = responsive ? selection.visibleColumns : columns;\n const shell = buildShell({ ...renderer, finalColumns });\n\n if (loading) {\n return (\n <TableLoadingState shell={shell} loadingComponent={loadingComponent} columns={columns} />\n );\n }\n\n if (data && data.length === 0) {\n return (\n <TableEmptyState\n shell={shell}\n emptyStateComponent={emptyStateComponent}\n emptyText={emptyText}\n colSpan={finalColumns?.length || 1}\n />\n );\n }\n\n if (columns && data) return <AdvancedTable {...renderer} />;\n\n // Basic table (backward compatibility)\n return (\n <StyledTable\n ref={ref}\n customVariant={resolved.variant}\n stripeColor={resolved.stripeColor}\n glow={resolved.glow}\n pulse={resolved.pulse}\n hoverable={resolved.hoverable}\n density={resolved.density}\n stickyHeader={resolved.stickyHeader}\n {...rest}\n >\n {children}\n </StyledTable>\n );\n },\n);\n\nTable.displayName = 'Table';"],"mappings":"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","names":[]}
@@ -225,4 +225,4 @@ Textarea.displayName = "Textarea";
225
225
  export {
226
226
  Textarea
227
227
  };
228
- //# sourceMappingURL=chunk-QEI5DC6S.js.map
228
+ //# sourceMappingURL=chunk-7KJOODQB.js.map
@@ -8,13 +8,13 @@ import {
8
8
  metaShape,
9
9
  rowStyles,
10
10
  useRowShell
11
- } from "./chunk-NSVSC6ZC.js";
11
+ } from "./chunk-5PJM772Y.js";
12
12
  import {
13
13
  ListCardActions,
14
14
  ListCardCaption,
15
15
  ListCardMeta,
16
16
  ListCardTail
17
- } from "./chunk-JE6GQB5J.js";
17
+ } from "./chunk-4Z2HIHA5.js";
18
18
  import {
19
19
  useDisclosure
20
20
  } from "./chunk-2JCRNWHE.js";
@@ -23,7 +23,7 @@ import {
23
23
  } from "./chunk-K4EKTMTC.js";
24
24
  import {
25
25
  cellRailsTemplate
26
- } from "./chunk-EQXIW5MQ.js";
26
+ } from "./chunk-TCMH3FXD.js";
27
27
  import {
28
28
  ListCardCells,
29
29
  cellTracks,
@@ -179,4 +179,4 @@ function BaseListCard(props) {
179
179
  export {
180
180
  BaseListCard
181
181
  };
182
- //# sourceMappingURL=chunk-6ZD3FI5P.js.map
182
+ //# sourceMappingURL=chunk-AOFI3GDS.js.map
@@ -9,7 +9,7 @@ import {
9
9
  } from "./chunk-K6LNHHSH.js";
10
10
  import {
11
11
  Text
12
- } from "./chunk-MKLIMY3D.js";
12
+ } from "./chunk-YZHX2HTC.js";
13
13
 
14
14
  // src/components/data-display/DataViews/data-views-select-all-strip.tsx
15
15
  import Checkbox from "@mui/material/Checkbox/index.js";
@@ -85,4 +85,4 @@ function SelectAllStrip({
85
85
  export {
86
86
  SelectAllStrip
87
87
  };
88
- //# sourceMappingURL=chunk-H72YKEGD.js.map
88
+ //# sourceMappingURL=chunk-AOKLEE64.js.map
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  DataViewsExportMenu
3
- } from "./chunk-DLWLIPCP.js";
3
+ } from "./chunk-CKFZQQ6T.js";
4
4
  import {
5
5
  DataViewsDisplayPanel
6
- } from "./chunk-6MD5QXXJ.js";
6
+ } from "./chunk-RWRPF24F.js";
7
7
  import {
8
8
  renderBulkActions
9
9
  } from "./chunk-NQ7NMCRI.js";
@@ -21,7 +21,7 @@ import {
21
21
  } from "./chunk-6DPAWXZ3.js";
22
22
  import {
23
23
  Text
24
- } from "./chunk-MKLIMY3D.js";
24
+ } from "./chunk-YZHX2HTC.js";
25
25
  import {
26
26
  sxRem
27
27
  } from "./chunk-YKCAJ2TN.js";
@@ -136,4 +136,4 @@ function GridToolbar(props) {
136
136
  export {
137
137
  GridToolbar
138
138
  };
139
- //# sourceMappingURL=chunk-RDFPM2AQ.js.map
139
+ //# sourceMappingURL=chunk-BJGUDLWZ.js.map
@@ -8,7 +8,7 @@ import {
8
8
  physicalScrollLeft,
9
9
  toRawScrollLeft,
10
10
  watchVisitorScroll
11
- } from "./chunk-GT2RCOHM.js";
11
+ } from "./chunk-QLAFJZDS.js";
12
12
  import {
13
13
  rem,
14
14
  sxRem
@@ -186,4 +186,4 @@ SettingsSectionChips.displayName = "SettingsSectionChips";
186
186
  export {
187
187
  SettingsSectionChips
188
188
  };
189
- //# sourceMappingURL=chunk-TBMGYQJF.js.map
189
+ //# sourceMappingURL=chunk-BKBELIUR.js.map
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  headingSx
3
- } from "./chunk-IWGW2E35.js";
3
+ } from "./chunk-WF4XK5AS.js";
4
4
  import {
5
5
  HEADING_DEFAULT_COLOR,
6
6
  HEADING_DEFAULT_LEVEL,
7
7
  HEADING_DEFAULT_WEIGHT,
8
8
  HEADING_RANK,
9
9
  stepOf
10
- } from "./chunk-CJ45OL7L.js";
10
+ } from "./chunk-M2GVHVE4.js";
11
11
  import {
12
12
  resolveTestId,
13
13
  withoutTestIdProps
@@ -61,4 +61,4 @@ Heading.displayName = "Heading";
61
61
  export {
62
62
  Heading
63
63
  };
64
- //# sourceMappingURL=chunk-X66E5WSX.js.map
64
+ //# sourceMappingURL=chunk-C4QKXFZN.js.map
@@ -7,10 +7,10 @@ import {
7
7
  import {
8
8
  SettingSwitchBlock,
9
9
  useSettingSwitchIds
10
- } from "./chunk-RDZGXJOD.js";
10
+ } from "./chunk-F5GXWK6B.js";
11
11
  import {
12
12
  partTestId
13
- } from "./chunk-PEOOCQ2T.js";
13
+ } from "./chunk-6IRJAIS4.js";
14
14
  import {
15
15
  dependentsStyles,
16
16
  hintStyles,
@@ -19,7 +19,7 @@ import {
19
19
  } from "./chunk-3DO5AJCG.js";
20
20
  import {
21
21
  Icon
22
- } from "./chunk-JAGAFEZL.js";
22
+ } from "./chunk-OD3L6GX5.js";
23
23
 
24
24
  // src/components/layout/SettingCard/SettingGroup.tsx
25
25
  import Box from "@mui/material/Box/index.js";
@@ -84,4 +84,4 @@ SettingGroup.displayName = "SettingGroup";
84
84
  export {
85
85
  SettingGroup
86
86
  };
87
- //# sourceMappingURL=chunk-OJUORFGO.js.map
87
+ //# sourceMappingURL=chunk-C6JUGWAU.js.map
@@ -9,7 +9,7 @@ import {
9
9
  } from "./chunk-K6LNHHSH.js";
10
10
  import {
11
11
  Text
12
- } from "./chunk-MKLIMY3D.js";
12
+ } from "./chunk-YZHX2HTC.js";
13
13
  import {
14
14
  rem,
15
15
  sxRem
@@ -176,4 +176,4 @@ function DataViewsExportMenu({
176
176
  export {
177
177
  DataViewsExportMenu
178
178
  };
179
- //# sourceMappingURL=chunk-DLWLIPCP.js.map
179
+ //# sourceMappingURL=chunk-CKFZQQ6T.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-4GGH6ZQ7.js";
4
4
  import {
5
5
  Box
6
- } from "./chunk-4Z7GEO2R.js";
6
+ } from "./chunk-G7RYAWPZ.js";
7
7
 
8
8
  // src/components/layout/Stack/Stack.tsx
9
9
  import * as React from "react";
@@ -16,4 +16,4 @@ Stack.displayName = "Stack";
16
16
  export {
17
17
  Stack
18
18
  };
19
- //# sourceMappingURL=chunk-Z2NN53E5.js.map
19
+ //# sourceMappingURL=chunk-DCT2PKMQ.js.map
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-BXC6GRLE.js";
8
8
  import {
9
9
  SettingsPanel
10
- } from "./chunk-TDXEO2UI.js";
10
+ } from "./chunk-RJ35IXFD.js";
11
11
  import {
12
12
  atLeastRail
13
13
  } from "./chunk-NYFNF7I5.js";
@@ -135,4 +135,4 @@ SettingsLayout.displayName = "SettingsLayout";
135
135
  export {
136
136
  SettingsLayout
137
137
  };
138
- //# sourceMappingURL=chunk-JMEPGXJG.js.map
138
+ //# sourceMappingURL=chunk-DHW5UMUG.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Text
3
- } from "./chunk-MKLIMY3D.js";
3
+ } from "./chunk-YZHX2HTC.js";
4
4
  import {
5
5
  rem
6
6
  } from "./chunk-YKCAJ2TN.js";
@@ -66,4 +66,4 @@ DescriptionItem.displayName = "DescriptionItem";
66
66
  export {
67
67
  DescriptionItem
68
68
  };
69
- //# sourceMappingURL=chunk-G6ZPQHBL.js.map
69
+ //# sourceMappingURL=chunk-DSHM7VN6.js.map
@@ -9,7 +9,7 @@ import {
9
9
  } from "./chunk-WEBEOBN5.js";
10
10
  import {
11
11
  Text
12
- } from "./chunk-MKLIMY3D.js";
12
+ } from "./chunk-YZHX2HTC.js";
13
13
  import {
14
14
  sxRem
15
15
  } from "./chunk-YKCAJ2TN.js";
@@ -54,4 +54,4 @@ function PreviewBox({ preview, testIdPrefix }) {
54
54
  export {
55
55
  PreviewBox
56
56
  };
57
- //# sourceMappingURL=chunk-WV62BSWA.js.map
57
+ //# sourceMappingURL=chunk-F5BYZNXY.js.map
@@ -3,7 +3,7 @@ import {
3
3
  SaveError,
4
4
  SettingHeader,
5
5
  partTestId
6
- } from "./chunk-PEOOCQ2T.js";
6
+ } from "./chunk-6IRJAIS4.js";
7
7
  import {
8
8
  descriptionStyles
9
9
  } from "./chunk-3DO5AJCG.js";
@@ -71,4 +71,4 @@ export {
71
71
  useSettingSwitchIds,
72
72
  SettingSwitchBlock
73
73
  };
74
- //# sourceMappingURL=chunk-RDZGXJOD.js.map
74
+ //# sourceMappingURL=chunk-F5GXWK6B.js.map
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-7V6ZRQYW.js";
5
5
  import {
6
6
  useUiTheme
7
- } from "./chunk-C2TERIB4.js";
7
+ } from "./chunk-QSNLIWEB.js";
8
8
  import {
9
9
  resolveTestId
10
10
  } from "./chunk-TYJR4GOF.js";
@@ -63,4 +63,4 @@ export {
63
63
  layoutToSx,
64
64
  Box
65
65
  };
66
- //# sourceMappingURL=chunk-4Z7GEO2R.js.map
66
+ //# sourceMappingURL=chunk-G7RYAWPZ.js.map
@@ -26,7 +26,7 @@ import {
26
26
  } from "./chunk-WN5PNP6F.js";
27
27
  import {
28
28
  Text
29
- } from "./chunk-MKLIMY3D.js";
29
+ } from "./chunk-YZHX2HTC.js";
30
30
  import {
31
31
  rem,
32
32
  sxRem
@@ -268,4 +268,4 @@ function BaseCard(props) {
268
268
  export {
269
269
  BaseCard
270
270
  };
271
- //# sourceMappingURL=chunk-4S2LWZ7L.js.map
271
+ //# sourceMappingURL=chunk-GO6XDMBB.js.map
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  SaveViewModal
3
- } from "./chunk-53O2TNSR.js";
3
+ } from "./chunk-5DAVXZPY.js";
4
4
  import {
5
5
  ManageViewsDialog
6
- } from "./chunk-XZY7O7JJ.js";
6
+ } from "./chunk-RHKT2XW2.js";
7
7
  import {
8
8
  useDataViewsCopy
9
9
  } from "./chunk-KHG57NAE.js";
@@ -121,4 +121,4 @@ export {
121
121
  ViewsMenuSlot,
122
122
  ViewDialogs
123
123
  };
124
- //# sourceMappingURL=chunk-KHOAXZW2.js.map
124
+ //# sourceMappingURL=chunk-H3GYVR7S.js.map
@@ -10,6 +10,9 @@ import {
10
10
  import {
11
11
  default as default2
12
12
  } from "./chunk-6DPAWXZ3.js";
13
+ import {
14
+ useDensity
15
+ } from "./chunk-DJKVSUXH.js";
13
16
  import {
14
17
  sxRem
15
18
  } from "./chunk-YKCAJ2TN.js";
@@ -55,6 +58,11 @@ function isLayout(value) {
55
58
  function isDensity(value) {
56
59
  return DENSITIES.includes(value);
57
60
  }
61
+ function mapThemeToDataViewsDensity(level) {
62
+ if (level === "compact") return "compact";
63
+ if (level === "comfortable") return "comfortable";
64
+ return "cozy";
65
+ }
58
66
  function readStoredDensity() {
59
67
  try {
60
68
  if (typeof window === "undefined") return void 0;
@@ -96,6 +104,7 @@ function DataViewsLayoutProvider({
96
104
  children
97
105
  }) {
98
106
  const availability = { canUseCards, canUseList, canUseBoard };
107
+ const themeDensity = useDensity();
99
108
  const [layout, setLayoutState] = useState(
100
109
  () => pinLayout(
101
110
  viewLayout ?? (ignoreStoredLayout ? void 0 : readStoredLayout()) ?? defaultLayout,
@@ -103,7 +112,7 @@ function DataViewsLayoutProvider({
103
112
  )
104
113
  );
105
114
  const [density, setDensityState] = useState(
106
- () => (ignoreStoredLayout ? void 0 : readStoredDensity()) ?? "cozy"
115
+ () => (ignoreStoredLayout ? void 0 : readStoredDensity()) ?? mapThemeToDataViewsDensity(themeDensity.level ?? "normal")
107
116
  );
108
117
  const [zoom, setZoom] = useState(DEFAULT_ZOOM);
109
118
  useEffect(() => {
@@ -182,8 +191,9 @@ export {
182
191
  DENSITY_BOARD_SCALE,
183
192
  cardScaleForZoom,
184
193
  cardMinWidthForZoom,
194
+ mapThemeToDataViewsDensity,
185
195
  DataViewsLayoutProvider,
186
196
  useDataViewsLayout,
187
197
  DataViewsZoomSlider
188
198
  };
189
- //# sourceMappingURL=chunk-XZJM6EPC.js.map
199
+ //# sourceMappingURL=chunk-HUAQQ5ZL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/data-display/DataViews/data-views-layout-context.tsx"],"sourcesContent":["\"use client\";\n\nimport { createContext, useContext, useEffect, useMemo, useState, type ReactNode } from \"react\";\n\nimport GridViewOutlinedIcon from \"@mui/icons-material/GridViewOutlined\";\n\nimport { Slider } from \"../../form/Slider\";\nimport { Box } from \"../../../mui/Box\";\nimport { sxRem } from \"../../../tokens/relative\";\nimport { useDensity, type DensityLevel } from \"../../../tokens/density\";\n\nimport { useDataViewsCopy } from \"./data-views-copy-context\";\nimport { DATA_VIEWS_LAYOUTS, type DataViewsLayout } from \"./data-views-types\";\n\n/**\n * The DataViews layout (view type): the dense \"Tabela\" grid, the \"Grade\" of\n * cards, the \"Lista\" of full-width rows, or the \"Quadro\" board of state columns.\n * Shared across the toolbar (the toggle) and the body (the selector) via context\n * so a single source of truth drives what renders — each layout only appears\n * when the table opts into it (`renderCard` for the grade, `renderListRow` for\n * the lista, `board` + `renderCard` for the quadro).\n */\nexport type { DataViewsLayout };\n\ninterface DataViewsLayoutValue {\n layout: DataViewsLayout;\n setLayout: (layout: DataViewsLayout) => void;\n /** How much air each record gets — see {@link DataViewsDensity}. */\n density: DataViewsDensity;\n setDensity: (density: DataViewsDensity) => void;\n /** Whether the cards layout is available (a `renderCard` was supplied). */\n canUseCards: boolean;\n /** Whether the list layout is available (a `renderListRow` was supplied). */\n canUseList: boolean;\n /** Whether the board layout is available (a `board` config AND a `renderCard`). */\n canUseBoard: boolean;\n /** Card-size zoom (0–100); drives the card grid's min column width. */\n zoom: number;\n setZoom: (zoom: number) => void;\n}\n\nconst DataViewsLayoutContext = createContext<DataViewsLayoutValue | null>(null);\n\n/** Default card zoom (0–100). */\nconst DEFAULT_ZOOM = 35;\n/** The size multiplier the zoom slider spans (0.75× to 2×). */\nconst CARD_SCALE_RANGE = { min: 0.75, max: 2 } as const;\n\n/**\n * Where the user's layout preference is remembered. ONE key for every DataViews\n * table in the app, on purpose: picking \"Grade\" on Produtos is a statement about\n * how this operator likes to read lists, not about that one screen. Every other\n * screen that CAN render cards then opens in cards, and one that cannot falls\n * back without forgetting the preference.\n */\nconst LAYOUT_STORAGE_KEY = \"dataviews:layout\";\n\n/**\n * The density preference, remembered app-wide for the same reason as the layout:\n * an operator who wants tight rows wants them on every list, not on one.\n */\nconst DENSITY_STORAGE_KEY = \"dataviews:density\";\n\n/**\n * How much room each record gets. It means different things per layout, and\n * that is the point — one control, phrased in the terms of what is on screen:\n *\n * - table / list → row height (\"Baixa / Média / Alta\")\n * - cards → how many fit per row (\"Muitos / Médio / Poucos\")\n *\n * The board is unaffected: its cards are already sized by the zoom slider.\n */\nexport type DataViewsDensity = \"compact\" | \"cozy\" | \"comfortable\";\n\n/** Every density this build knows — the guard's single source. */\nconst DENSITIES: readonly DataViewsDensity[] = [\"compact\", \"cozy\", \"comfortable\"];\n\n/** Vertical padding (theme spacing units) per density, for a table or list row. */\nexport const DENSITY_ROW_PADDING: Record<DataViewsDensity, number> = {\n compact: 0.25,\n cozy: 0.75,\n comfortable: 1.5,\n};\n\n/**\n * The card WIDTH each density aims for, as a multiple of the base card width.\n *\n * Density used to cap the column COUNT, with a track floor of\n * `max(baseWidth, 100% / count)`. That base is a constant, so wherever it won\n * the arithmetic every density produced an identical track — \"Muitos\" and\n * \"Medio\" both drew 3 cards of 279px at md — and where the percentage won\n * instead, on a wide screen, the count was pinned and each card grew to a share\n * of the viewport: ~430px of card holding one chip and two lines of text.\n *\n * One width per density fixes both, because the number `auto-fill` divides by\n * now differs per density at every size. The spread is chosen so the three land\n * on DIFFERENT column counts across the range rather than by eye — 4/3/2 at md,\n * 6/4/3 at lg, 7/5/4 at xl, 13/9/8 at 2560.\n */\nexport const DENSITY_CARD_SCALE: Record<DataViewsDensity, number> = {\n compact: 0.84,\n cozy: 1.15,\n comfortable: 1.4,\n};\n\n/** The width a card aims for, in design px: the base width, scaled by zoom, then by density. */\nexport function cardTargetWidthFor(zoom: number, density: DataViewsDensity): number {\n return Math.round(cardMinWidthForZoom(zoom) * DENSITY_CARD_SCALE[density]);\n}\n\n/**\n * The BOARD's column-width multiplier per density.\n *\n * Density means \"how much air a record gets\", and on a board that is the column\n * width — narrow columns fit more etapas on screen, wide ones give each card\n * room to be read. Without this the board was the one layout the Exibição tab\n * offered nothing for: the format tile switched to Quadro and the whole density\n * section vanished, which reads as a control that broke rather than one that\n * does not apply.\n *\n * The spread is deliberately narrower than the card grid's. A board column has\n * a hard floor (`MIN_COLUMN_WIDTH` — a card below it stops being readable), so\n * a multiplier that undershoots it buys nothing and makes \"Estreita\" a tile\n * that does nothing on a phone.\n */\nexport const DENSITY_BOARD_SCALE: Record<DataViewsDensity, number> = {\n compact: 0.95,\n cozy: 1,\n comfortable: 1.25,\n};\n\n/**\n * Map the 0–100 zoom to the card SIZE multiplier. This is the single knob: the\n * card's width is its 180 design px × scale and its padding + typography\n * scale by the same factor, so the whole card grows together (scale 2 → twice\n * the size, proportion preserved by the aspect ratio). Passed to a card via\n * `DataViewCardSelection.scale`.\n */\nexport function cardScaleForZoom(zoom: number): number {\n const clamped = Math.max(0, Math.min(100, zoom));\n return CARD_SCALE_RANGE.min + (clamped / 100) * (CARD_SCALE_RANGE.max - CARD_SCALE_RANGE.min);\n}\n\n/**\n * The card grid's min column width in DESIGN px: the card's width at scale 1 —\n * 180 — times the zoom size multiplier. Drawn through `rem` where the track is\n * built (`cardGridTracks`), so it scales with the theme's type scale.\n */\nexport function cardMinWidthForZoom(zoom: number): number {\n return Math.round(180 * cardScaleForZoom(zoom));\n}\n\n/** Which layouts this table can actually render. */\ninterface LayoutAvailability {\n canUseCards: boolean;\n canUseList: boolean;\n canUseBoard: boolean;\n}\n\n/** Is this a layout string this build knows? Guards whatever is in storage. */\nfunction isLayout(value: unknown): value is DataViewsLayout {\n return DATA_VIEWS_LAYOUTS.includes(value as DataViewsLayout);\n}\n\n/** Is this a density this build knows? Guards whatever is in storage. */\nfunction isDensity(value: unknown): value is DataViewsDensity {\n return DENSITIES.includes(value as DataViewsDensity);\n}\n\n/**\n * The theme's density level, aliased to `DataViewsDensity` (FUT-2769 —\n * umbrella Decision 7, non-breaking): `DataViewsDensity`'s three names are not\n * the theme's three names, so this is an alias table rather than a verbatim\n * read. `'normal'` (the theme's own default, and what a theme with no density\n * at all resolves to) maps to `'cozy'` — today's literal default, unchanged —\n * so the mapping is a no-op exactly when nothing about density has been said.\n * The STORED per-viewer preference still wins over this default, unchanged\n * from today (below).\n */\nexport function mapThemeToDataViewsDensity(level: DensityLevel): DataViewsDensity {\n if (level === 'compact') return 'compact';\n if (level === 'comfortable') return 'comfortable';\n return 'cozy';\n}\n\n/** The remembered density, or undefined (no window, no value, junk). */\nfunction readStoredDensity(): DataViewsDensity | undefined {\n try {\n if (typeof window === \"undefined\") return undefined;\n const stored = window.localStorage.getItem(DENSITY_STORAGE_KEY);\n return isDensity(stored) ? stored : undefined;\n } catch {\n return undefined;\n }\n}\n\n/**\n * Pin a layout to one this table can render. \"Tabela\" is always available, so it\n * is the floor: a page with no `renderCard` never renders a cards body, one with\n * no `renderListRow` never renders a list, and one with no `board` config never\n * renders a board — whatever is stored, saved in a view, or requested.\n */\nfunction pinLayout(layout: DataViewsLayout, available: LayoutAvailability): DataViewsLayout {\n if (layout === \"cards\") return available.canUseCards ? \"cards\" : \"table\";\n if (layout === \"list\") return available.canUseList ? \"list\" : \"table\";\n if (layout === \"board\") return available.canUseBoard ? \"board\" : \"table\";\n return \"table\";\n}\n\n/** The stored cross-screen preference, or undefined (no window, no value, junk). */\nfunction readStoredLayout(): DataViewsLayout | undefined {\n // Guarded rather than assumed: this module is also imported in Node (tests,\n // any SSR host), and a `localStorage` access can throw outright under a\n // restrictive privacy setting — a thrown read must not take the grid with it.\n try {\n if (typeof window === \"undefined\") return undefined;\n const stored = window.localStorage.getItem(LAYOUT_STORAGE_KEY);\n return isLayout(stored) ? stored : undefined;\n } catch {\n return undefined;\n }\n}\n\n/** Remember a preference for every other screen. A failed write is not an error. */\nfunction writeStored(key: string, value: string): void {\n try {\n if (typeof window === \"undefined\") return;\n window.localStorage.setItem(key, value);\n } catch {\n // Private mode / quota / disabled storage: the preference simply does not\n // survive the session. Nothing about the current view depends on it.\n }\n}\n\ninterface LayoutProviderProps extends Partial<LayoutAvailability> {\n /** Which layout to show first when the user has expressed no preference. */\n defaultLayout?: DataViewsLayout;\n /**\n * The layout an APPLIED SAVED VIEW pins, when it stored one. It wins over the\n * remembered preference for as long as that view is applied — the view is a\n * snapshot someone chose to keep — but it does NOT overwrite the preference:\n * only the toggle does that, because only the toggle is the user saying so.\n */\n viewLayout?: DataViewsLayout;\n /**\n * Ignore — and stop writing — the remembered cross-screen preference, making\n * `defaultLayout` authoritative for this table.\n *\n * For a table that exists to SHOW a particular layout rather than to be\n * browsed: a Storybook story called \"Board\", a docs example, a screenshot\n * harness. Without it the remembered preference wins, so opening \"Board\"\n * after having clicked Tabela anywhere renders a table — the demonstration\n * silently showing the wrong thing, and a shared link doing it for everyone\n * whose preference differs.\n *\n * A real screen leaves this off: remembering how someone likes to read\n * lists is the point.\n */\n ignoreStoredLayout?: boolean;\n children: ReactNode;\n}\n\n/**\n * Provides the view-type state, seeded from (in order) the applied saved view's\n * layout, the user's remembered cross-screen preference, then `defaultLayout` —\n * each pinned to what this table can actually render.\n */\nexport function DataViewsLayoutProvider({\n canUseCards = false,\n canUseList = false,\n canUseBoard = false,\n defaultLayout = \"table\",\n viewLayout,\n ignoreStoredLayout = false,\n children,\n}: LayoutProviderProps): React.JSX.Element {\n const availability = { canUseCards, canUseList, canUseBoard };\n // Read once, outside the lazy initializer below: a hook cannot be called\n // from inside one (FUT-2769 — the theme is only a fallback when nothing is\n // stored, same precedence as before this ticket).\n const themeDensity = useDensity();\n const [layout, setLayoutState] = useState<DataViewsLayout>(() =>\n pinLayout(\n viewLayout ?? (ignoreStoredLayout ? undefined : readStoredLayout()) ?? defaultLayout,\n availability,\n ),\n );\n const [density, setDensityState] = useState<DataViewsDensity>(\n () =>\n (ignoreStoredLayout ? undefined : readStoredDensity()) ??\n mapThemeToDataViewsDensity(themeDensity.level ?? \"normal\"),\n );\n const [zoom, setZoom] = useState(DEFAULT_ZOOM);\n // A newly applied view carrying a layout switches to it (its reference-change\n // is the signal, exactly as `appliedState` works for the filters).\n useEffect(() => {\n if (viewLayout) setLayoutState(pinLayout(viewLayout, availability));\n // Availability is derived from props that do not change for a mounted table.\n }, [viewLayout]);\n // Pin again on read: `canUseCards`/`canUseBoard` can flip for a mounted table\n // (a page that supplies `renderCard` only once its card data has loaded), and\n // a stale \"cards\" would otherwise render a cards body with no renderer.\n const effective = pinLayout(layout, availability);\n\n const value = useMemo<DataViewsLayoutValue>(\n () => ({\n layout: effective,\n setLayout: (next: DataViewsLayout) => {\n const pinned = pinLayout(next, availability);\n setLayoutState(pinned);\n // Remember the user's own choice across every screen — see LAYOUT_STORAGE_KEY.\n // A table pinned to a layout does not write: it would teach the\n // preference a value the operator never chose.\n if (!ignoreStoredLayout) writeStored(LAYOUT_STORAGE_KEY, pinned);\n },\n density,\n setDensity: (next: DataViewsDensity) => {\n setDensityState(next);\n if (!ignoreStoredLayout) writeStored(DENSITY_STORAGE_KEY, next);\n },\n canUseCards,\n canUseList,\n canUseBoard,\n zoom,\n setZoom,\n }),\n [effective, density, canUseCards, canUseList, canUseBoard, zoom],\n );\n return <DataViewsLayoutContext.Provider value={value}>{children}</DataViewsLayoutContext.Provider>;\n}\n\n/** Read the current DataViews layout. Throws outside a provider. */\nexport function useDataViewsLayout(): DataViewsLayoutValue {\n const ctx = useContext(DataViewsLayoutContext);\n if (!ctx) {\n throw new Error(\"useDataViewsLayout must be used within a DataViewsLayoutProvider\");\n }\n return ctx;\n}\n\n/**\n * Card-size slider for the toolbar — shown in the CARD-BASED layouts (\"Grade\"\n * and \"Quadro\"), mirroring the tabwoah view-selector's zoom. The board reuses\n * the same `renderCard`, so the same knob scales both.\n *\n * Deliberately ABSENT in \"Lista\" and \"Tabela\" (FUT-733): a list row is\n * full-width and sized by its content, so a card-size multiplier has nothing to\n * act on — a slider that moved and changed nothing would be worse than none.\n */\nexport function DataViewsZoomSlider({ testIdPrefix }: { testIdPrefix: string }): React.JSX.Element | null {\n const { layout, zoom, setZoom } = useDataViewsLayout();\n const copy = useDataViewsCopy();\n if (layout !== \"cards\" && layout !== \"board\") return null;\n return (\n <Box\n sx={{\n display: { xs: \"none\", sm: \"flex\" },\n alignItems: \"center\",\n gap: 1,\n color: \"text.secondary\",\n }}\n >\n <GridViewOutlinedIcon sx={{ fontSize: sxRem(14) }} />\n <Box sx={{ width: sxRem(88), display: \"flex\", alignItems: \"center\" }}>\n <Slider\n size=\"sm\"\n showValue={false}\n value={zoom}\n min={0}\n max={100}\n step={5}\n onChange={(_event, next) => setZoom(Array.isArray(next) ? (next[0] ?? 0) : next)}\n aria-label={copy.display.cardZoom}\n data-testid={`${testIdPrefix}-card-zoom`}\n />\n </Box>\n <GridViewOutlinedIcon sx={{ fontSize: sxRem(20) }} />\n </Box>\n );\n}\n"],"mappings":"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","names":["default"]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  GridToolbar
3
- } from "./chunk-RDFPM2AQ.js";
3
+ } from "./chunk-BJGUDLWZ.js";
4
4
 
5
5
  // src/components/data-display/DataViews/data-views-shell-toolbar.tsx
6
6
  import { jsx } from "react/jsx-runtime";
@@ -64,4 +64,4 @@ function ShellToolbar({
64
64
  export {
65
65
  ShellToolbar
66
66
  };
67
- //# sourceMappingURL=chunk-C6OVO6AT.js.map
67
+ //# sourceMappingURL=chunk-I6MVJWUO.js.map