@12-apps/ui 6.48.0 → 6.49.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 (483) hide show
  1. package/NATIVE.md +1 -1
  2. package/dist/_internal/components/data-display/AsyncStateContainer/AsyncStateContainer.js +4 -4
  3. package/dist/_internal/components/data-display/Avatar/Avatar.js +4 -4
  4. package/dist/_internal/components/data-display/Avatar/Avatar.view.js +2 -2
  5. package/dist/_internal/components/data-display/Badge/Badge.js +8 -6
  6. package/dist/_internal/components/data-display/Badge/Badge.styles.js +6 -4
  7. package/dist/_internal/components/data-display/Badge/BadgeContent.js +7 -5
  8. package/dist/_internal/components/data-display/CardKit/CardKebab.js +3 -3
  9. package/dist/_internal/components/data-display/CardKit/use-remove-confirm.js +3 -3
  10. package/dist/_internal/components/data-display/CardKit/use-row-confirm.js +3 -3
  11. package/dist/_internal/components/data-display/Carousel/Carousel.chrome.js +7 -5
  12. package/dist/_internal/components/data-display/Carousel/Carousel.js +10 -8
  13. package/dist/_internal/components/data-display/Carousel/Carousel.parts.js +6 -4
  14. package/dist/_internal/components/data-display/Carousel/Carousel.styles.js +6 -4
  15. package/dist/_internal/components/data-display/Chart/Chart.js +10 -8
  16. package/dist/_internal/components/data-display/Chart/SpecChart.js +14 -12
  17. package/dist/_internal/components/data-display/Chart/chart-context.js +7 -5
  18. package/dist/_internal/components/data-display/Chart/chart-internals.js +6 -4
  19. package/dist/_internal/components/data-display/Chart/chart-renderers.js +9 -7
  20. package/dist/_internal/components/data-display/Chart/chart-spec.js +2 -2
  21. package/dist/_internal/components/data-display/DataGrid/DataGrid.js +7 -5
  22. package/dist/_internal/components/data-display/DataGrid/DataGrid.model.js +5 -3
  23. package/dist/_internal/components/data-display/DataViews/DataViewsGrid.js +48 -46
  24. package/dist/_internal/components/data-display/DataViews/DataViewsTableBase.js +60 -58
  25. package/dist/_internal/components/data-display/DataViews/DeleteViewDialog.js +3 -3
  26. package/dist/_internal/components/data-display/DataViews/ManageViewsDialog.js +4 -4
  27. package/dist/_internal/components/data-display/DataViews/SaveViewModal.js +5 -5
  28. package/dist/_internal/components/data-display/DataViews/base-card.js +2 -2
  29. package/dist/_internal/components/data-display/DataViews/base-list-card-geometry.js +9 -7
  30. package/dist/_internal/components/data-display/DataViews/base-list-card-slots.js +8 -6
  31. package/dist/_internal/components/data-display/DataViews/base-list-card.js +11 -9
  32. package/dist/_internal/components/data-display/DataViews/data-views-category-pill.js +8 -8
  33. package/dist/_internal/components/data-display/DataViews/data-views-columns.js +4 -4
  34. package/dist/_internal/components/data-display/DataViews/data-views-display-panel.js +11 -9
  35. package/dist/_internal/components/data-display/DataViews/data-views-display-tabs.js +7 -5
  36. package/dist/_internal/components/data-display/DataViews/data-views-empty.js +3 -3
  37. package/dist/_internal/components/data-display/DataViews/data-views-export.js +3 -3
  38. package/dist/_internal/components/data-display/DataViews/data-views-filter-panel.js +11 -11
  39. package/dist/_internal/components/data-display/DataViews/data-views-grid-bodies.js +15 -13
  40. package/dist/_internal/components/data-display/DataViews/data-views-grid-helpers.js +3 -3
  41. package/dist/_internal/components/data-display/DataViews/data-views-grid-parts.js +44 -42
  42. package/dist/_internal/components/data-display/DataViews/data-views-inline-bar.js +15 -15
  43. package/dist/_internal/components/data-display/DataViews/data-views-layout-context.js +6 -4
  44. package/dist/_internal/components/data-display/DataViews/data-views-more-fields.js +11 -11
  45. package/dist/_internal/components/data-display/DataViews/data-views-more-filters.js +14 -14
  46. package/dist/_internal/components/data-display/DataViews/data-views-range-pill.js +2 -2
  47. package/dist/_internal/components/data-display/DataViews/data-views-scope-tabs.js +7 -5
  48. package/dist/_internal/components/data-display/DataViews/data-views-select-all-strip.js +3 -3
  49. package/dist/_internal/components/data-display/DataViews/data-views-shell-toolbar.js +18 -16
  50. package/dist/_internal/components/data-display/DataViews/data-views-table-parts.js +11 -11
  51. package/dist/_internal/components/data-display/DataViews/data-views-toolbar.js +17 -15
  52. package/dist/_internal/components/data-display/DataViews/data-views-view-nav.js +3 -3
  53. package/dist/_internal/components/data-display/DataViews/list-card-rails.js +7 -5
  54. package/dist/_internal/components/data-display/DataViews/use-data-views-state.js +7 -7
  55. package/dist/_internal/components/data-display/DataViews/use-saved-views-controller.js +2 -2
  56. package/dist/_internal/components/data-display/FleetMap/FleetBody.js +10 -10
  57. package/dist/_internal/components/data-display/FleetMap/FleetCanvas.js +5 -5
  58. package/dist/_internal/components/data-display/FleetMap/FleetMap.js +17 -15
  59. package/dist/_internal/components/data-display/FleetMap/FleetRoster.js +4 -4
  60. package/dist/_internal/components/data-display/LazyImage/LazyImage.js +3 -3
  61. package/dist/_internal/components/data-display/Lightbox/Lightbox.js +6 -6
  62. package/dist/_internal/components/data-display/Lightbox/LightboxControls.js +2 -2
  63. package/dist/_internal/components/data-display/Lightbox/LightboxOverlay.js +3 -3
  64. package/dist/_internal/components/data-display/Lightbox/LightboxThumbnails.js +2 -2
  65. package/dist/_internal/components/data-display/LoadingState/LoadingState.js +3 -3
  66. package/dist/_internal/components/data-display/MapPreview/MapMarkers.js +2 -2
  67. package/dist/_internal/components/data-display/MapPreview/MapPreview.js +4 -4
  68. package/dist/_internal/components/data-display/Progress/Progress.js +2 -2
  69. package/dist/_internal/components/data-display/Sheet/Sheet.body.js +5 -3
  70. package/dist/_internal/components/data-display/Sheet/Sheet.js +9 -7
  71. package/dist/_internal/components/data-display/Sheet/Sheet.styles.js +6 -4
  72. package/dist/_internal/components/data-display/StatCard/StatCard.js +3 -3
  73. package/dist/_internal/components/data-display/Table/Table.js +7 -5
  74. package/dist/_internal/components/data-display/index.js +68 -66
  75. package/dist/_internal/components/feedback/ConfirmAction/ConfirmButton.js +3 -3
  76. package/dist/_internal/components/feedback/NotificationStatusNotice/NotificationStatusNotice.js +3 -3
  77. package/dist/_internal/components/feedback/index.js +4 -4
  78. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocomplete.hooks.js +2 -2
  79. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocomplete.js +7 -7
  80. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocompleteField.js +3 -3
  81. package/dist/_internal/components/form/Button/Button.js +2 -2
  82. package/dist/_internal/components/form/Calendar/Calendar.hooks.js +2 -2
  83. package/dist/_internal/components/form/Calendar/Calendar.js +6 -6
  84. package/dist/_internal/components/form/Calendar/CalendarDayCell.js +2 -2
  85. package/dist/_internal/components/form/Calendar/CalendarMonth.js +3 -3
  86. package/dist/_internal/components/form/CategorySelect/CategoryPanel.js +2 -2
  87. package/dist/_internal/components/form/CategorySelect/CategorySelect.js +4 -4
  88. package/dist/_internal/components/form/CodeEditor/CodeEditor.js +3 -3
  89. package/dist/_internal/components/form/Command/Command.js +7 -5
  90. package/dist/_internal/components/form/Command/Command.styles.js +6 -4
  91. package/dist/_internal/components/form/DateRangePicker/DateRangePicker.js +7 -7
  92. package/dist/_internal/components/form/Label/Label.js +7 -5
  93. package/dist/_internal/components/form/Label/Label.styles.js +6 -4
  94. package/dist/_internal/components/form/Menubar/Menubar.item.js +7 -5
  95. package/dist/_internal/components/form/Menubar/Menubar.js +10 -8
  96. package/dist/_internal/components/form/Menubar/Menubar.styles.js +6 -4
  97. package/dist/_internal/components/form/Menubar/Menubar.toolbar.js +8 -6
  98. package/dist/_internal/components/form/RichTextEditor/RichTextEditor.js +2 -2
  99. package/dist/_internal/components/form/Switch/Switch.js +2 -2
  100. package/dist/_internal/components/form/index.js +37 -35
  101. package/dist/_internal/components/form/total-form/Fields/CategoryField.js +5 -5
  102. package/dist/_internal/components/form/total-form/Fields/index.js +8 -8
  103. package/dist/_internal/components/form/total-form/SubmitButton.js +3 -3
  104. package/dist/_internal/components/index.js +142 -140
  105. package/dist/_internal/components/layout/Box/Box.js +8 -6
  106. package/dist/_internal/components/layout/ScrollArea/ScrollArea.js +3 -3
  107. package/dist/_internal/components/layout/SettingCard/SettingCard.js +12 -10
  108. package/dist/_internal/components/layout/SettingCard/SettingCard.parts.js +11 -9
  109. package/dist/_internal/components/layout/SettingCard/SettingGrid.js +12 -10
  110. package/dist/_internal/components/layout/SettingCard/SettingGroup.js +17 -15
  111. package/dist/_internal/components/layout/SettingCard/SettingSwitch.js +15 -13
  112. package/dist/_internal/components/layout/SettingCard/SettingToggle.js +17 -15
  113. package/dist/_internal/components/layout/SettingsLayout/SettingsLayout.js +4 -4
  114. package/dist/_internal/components/layout/Skeleton/Skeleton.js +2 -2
  115. package/dist/_internal/components/layout/Stack/Stack.js +9 -7
  116. package/dist/_internal/components/layout/index.js +36 -34
  117. package/dist/_internal/components/navigation/AppHeader/AppHeader.details.js +12 -10
  118. package/dist/_internal/components/navigation/AppHeader/AppHeader.identity.js +6 -4
  119. package/dist/_internal/components/navigation/NavigationMenu/NavigationMegaSection.js +3 -3
  120. package/dist/_internal/components/navigation/NavigationMenu/NavigationMenu.js +5 -5
  121. package/dist/_internal/components/navigation/NavigationMenu/NavigationMenuItem.js +2 -2
  122. package/dist/_internal/components/navigation/NavigationMenu/NavigationStandardBody.js +3 -3
  123. package/dist/_internal/components/navigation/SectionNav/SectionNav.bar.js +12 -10
  124. package/dist/_internal/components/navigation/SectionNav/SectionNav.js +14 -12
  125. package/dist/_internal/components/navigation/SectionNav/SectionNav.parts.js +9 -7
  126. package/dist/_internal/components/navigation/SectionNav/SectionNav.primary.js +10 -8
  127. package/dist/_internal/components/navigation/SectionNav/SectionNav.rail.js +10 -8
  128. package/dist/_internal/components/navigation/SectionNav/SectionNav.sheet.js +10 -8
  129. package/dist/_internal/components/navigation/SectionNav/__stories__/fixtures.js +5 -3
  130. package/dist/_internal/components/navigation/SectionNav/__stories__/fixtures.js.map +1 -1
  131. package/dist/_internal/components/navigation/Tabs/Tabs.js +2 -2
  132. package/dist/_internal/components/navigation/index.js +31 -29
  133. package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.helpers.js +5 -3
  134. package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.js +5 -3
  135. package/dist/_internal/components/utility/WorkflowStep/WorkflowStep.parts.js +5 -3
  136. package/dist/_internal/components/utility/WorkflowStep/WorkflowStepRow.js +5 -3
  137. package/dist/_internal/components/utility/index.js +5 -3
  138. package/dist/_internal/icons/Icon.js +8 -6
  139. package/dist/_internal/provider/UiProvider.js +7 -5
  140. package/dist/_internal/provider/mui-bridge.js +6 -4
  141. package/dist/_internal/provider/use-ui-theme.js +7 -5
  142. package/dist/_internal/social-login-button/social-login-button.js +3 -3
  143. package/dist/_internal/tokens/density-overrides.js +20 -4
  144. package/dist/_internal/tokens/density-overrides.navigation.js +19 -0
  145. package/dist/_internal/tokens/density-overrides.navigation.js.map +1 -0
  146. package/dist/_internal/tokens/density-overrides.selection.js +11 -0
  147. package/dist/_internal/tokens/density-overrides.selection.js.map +1 -0
  148. package/dist/_internal/tokens/density.js +4 -2
  149. package/dist/_internal/user-avatar/user-avatar.js +7 -7
  150. package/dist/charts.js +22 -20
  151. package/dist/{chunk-ODFJTEIL.js → chunk-23YZEAUU.js} +4 -4
  152. package/dist/{chunk-OBID7SOG.js → chunk-2GAFEQ2T.js} +3 -3
  153. package/dist/{chunk-BIDPJNCG.js → chunk-2LQU7DRI.js} +25 -9
  154. package/dist/chunk-2LQU7DRI.js.map +1 -0
  155. package/dist/{chunk-NRSVI23L.js → chunk-2T7L6ZWF.js} +2 -2
  156. package/dist/{chunk-TMOC2XUE.js → chunk-2UPWKLHQ.js} +21 -5
  157. package/dist/chunk-2UPWKLHQ.js.map +1 -0
  158. package/dist/{chunk-2YKTB2IZ.js → chunk-32JMSHEA.js} +2 -2
  159. package/dist/{chunk-QFJ3JXXP.js → chunk-3IPPMWUA.js} +1 -1
  160. package/dist/{chunk-QFJ3JXXP.js.map → chunk-3IPPMWUA.js.map} +1 -1
  161. package/dist/{chunk-2NYVMLFQ.js → chunk-3YRPEZ3F.js} +2 -2
  162. package/dist/{chunk-CGL7R37P.js → chunk-43Q6CVPB.js} +4 -4
  163. package/dist/{chunk-G6II7SVX.js → chunk-44USLRMT.js} +4 -4
  164. package/dist/{chunk-E4GTZ26X.js → chunk-4CDZP6KD.js} +2 -2
  165. package/dist/{chunk-5D52CMNX.js → chunk-4ELI2MM3.js} +2 -52
  166. package/dist/chunk-4ELI2MM3.js.map +1 -0
  167. package/dist/{chunk-HISEWACT.js → chunk-4GRUNQNB.js} +2 -2
  168. package/dist/{chunk-AOKLEE64.js → chunk-4NDNV45Y.js} +2 -2
  169. package/dist/{chunk-LTJDZIYR.js → chunk-4O7X45T5.js} +7 -7
  170. package/dist/{chunk-H5XKBPKK.js → chunk-4UQY2DUN.js} +3 -3
  171. package/dist/{chunk-43UFSKEK.js → chunk-4WCYKU3S.js} +3 -3
  172. package/dist/{chunk-JAHWFJCW.js → chunk-5JCGBCFJ.js} +5 -5
  173. package/dist/{chunk-UJOFRJLX.js → chunk-5MW7OYBM.js} +2 -2
  174. package/dist/{chunk-4A7PSQB5.js → chunk-6EPXOVY3.js} +4 -4
  175. package/dist/{chunk-AQC67NQZ.js → chunk-6EXGL36F.js} +2 -2
  176. package/dist/{chunk-CMLIWUBW.js → chunk-6PPHALM3.js} +4 -4
  177. package/dist/{chunk-WHYVVKRS.js → chunk-6SI22JFV.js} +2 -2
  178. package/dist/{chunk-RZPYKTOG.js → chunk-6SM5ML75.js} +5 -5
  179. package/dist/{chunk-THCDUP6Q.js → chunk-6SXXW5GR.js} +6 -6
  180. package/dist/{chunk-5OX6KZIZ.js → chunk-6TLY2E24.js} +4 -4
  181. package/dist/{chunk-SAJ5H5VC.js → chunk-7JTTE4OY.js} +4 -4
  182. package/dist/{chunk-AG3DY5TH.js → chunk-ADSA76T7.js} +2 -2
  183. package/dist/{chunk-25OI5W6Y.js → chunk-AH4XGLE2.js} +2 -2
  184. package/dist/{chunk-CACBJ4CR.js → chunk-AJAPP56P.js} +2 -2
  185. package/dist/{chunk-GMC3F43L.js → chunk-AMSNWV7V.js} +3 -3
  186. package/dist/{chunk-MWPXKZ7O.js → chunk-AY5MY7HJ.js} +6 -6
  187. package/dist/{chunk-2LSJTQIL.js → chunk-B22NXESR.js} +2 -2
  188. package/dist/{chunk-E32YPPF5.js → chunk-B4Y6W3OU.js} +2 -2
  189. package/dist/{chunk-2K2B5QM2.js → chunk-BEGTLELZ.js} +5 -5
  190. package/dist/{chunk-6J32H2RN.js → chunk-C7GYSLPO.js} +4 -3
  191. package/dist/{chunk-6J32H2RN.js.map → chunk-C7GYSLPO.js.map} +1 -1
  192. package/dist/{chunk-33NBMNTB.js → chunk-CF25EQFU.js} +2 -2
  193. package/dist/{chunk-WDAEYLT5.js → chunk-D6ROYZ6H.js} +2 -2
  194. package/dist/{chunk-ZVJSY2OV.js → chunk-EF5XUS44.js} +4 -4
  195. package/dist/{chunk-6PU3JYVY.js → chunk-F3AYISXT.js} +4 -4
  196. package/dist/{chunk-ST36ZSAN.js → chunk-FRIUYEXD.js} +2 -2
  197. package/dist/{chunk-K6LNHHSH.js → chunk-GC5XJ7YB.js} +4 -4
  198. package/dist/{chunk-JYLOCXMV.js → chunk-GI63FQEJ.js} +4 -4
  199. package/dist/{chunk-FVKBP3UX.js → chunk-GLKQT2DS.js} +2 -2
  200. package/dist/{chunk-MEYKNJNI.js → chunk-GT6HPOS2.js} +8 -8
  201. package/dist/{chunk-XFAXRMWY.js → chunk-GUAK7QUR.js} +4 -4
  202. package/dist/{chunk-JUKA4NY5.js → chunk-GWONO2ML.js} +6 -6
  203. package/dist/{chunk-YRACC6BB.js → chunk-GWVJZ7SX.js} +4 -4
  204. package/dist/{chunk-5NFQKL7C.js → chunk-H6K3AP42.js} +6 -6
  205. package/dist/{chunk-VOG5IVQW.js → chunk-H6N7XXUB.js} +2 -2
  206. package/dist/{chunk-PP7CDKO4.js → chunk-HCBGCR4N.js} +3 -3
  207. package/dist/{chunk-5OEC546C.js → chunk-HDI37JLT.js} +2 -2
  208. package/dist/{chunk-LHTEAPYG.js → chunk-HDQMSZA7.js} +3 -3
  209. package/dist/{chunk-VU63PDWW.js → chunk-HOXWNOQV.js} +3 -3
  210. package/dist/{chunk-KESGVMHW.js → chunk-HUGXO5PE.js} +3 -3
  211. package/dist/{chunk-3CDU7DLD.js → chunk-IKXS2YVQ.js} +2 -2
  212. package/dist/{chunk-BU6TCB76.js → chunk-INCTNS4X.js} +2 -2
  213. package/dist/{chunk-FS7UVKEE.js → chunk-IR5A2BKL.js} +4 -4
  214. package/dist/{chunk-2ZRZTGWP.js → chunk-ISW5K72V.js} +5 -5
  215. package/dist/{chunk-VZ4VAQX3.js → chunk-IVJKILIX.js} +2 -2
  216. package/dist/{chunk-NRI2TZDS.js → chunk-JNX4B3EE.js} +2 -2
  217. package/dist/{chunk-JWJ77IMK.js → chunk-JRV3UFOJ.js} +8 -8
  218. package/dist/{chunk-ZRIWMIHK.js → chunk-JVOV5WAJ.js} +6 -6
  219. package/dist/chunk-K3YHXOWZ.js +126 -0
  220. package/dist/chunk-K3YHXOWZ.js.map +1 -0
  221. package/dist/{chunk-HR7YTBR7.js → chunk-K4N3V7YE.js} +4 -4
  222. package/dist/{chunk-WU2KXA6I.js → chunk-KC733FDV.js} +3 -3
  223. package/dist/{chunk-ZCXVTFYQ.js → chunk-KG64HV34.js} +2 -2
  224. package/dist/{chunk-LB27LKG3.js → chunk-KUNHGNGF.js} +4 -4
  225. package/dist/{chunk-FQT4C5R4.js → chunk-KWIR73YH.js} +12 -12
  226. package/dist/{chunk-IKZSQKOE.js → chunk-LFHAYETO.js} +3 -3
  227. package/dist/{chunk-NM2FLCPV.js → chunk-LO4M5D7T.js} +3 -3
  228. package/dist/{chunk-CGBUWNNQ.js → chunk-LWFJZ3Q5.js} +4 -4
  229. package/dist/{chunk-OCQ6GDCF.js → chunk-MH3XW3WR.js} +2 -2
  230. package/dist/{chunk-3WAAL3KN.js → chunk-MT2OCLGT.js} +7 -7
  231. package/dist/{chunk-QJK7BNH3.js → chunk-N7KUKE45.js} +3 -3
  232. package/dist/{chunk-WAD5VL6B.js → chunk-NBFP645M.js} +7 -7
  233. package/dist/{chunk-TTJTMDLI.js → chunk-NF42BHI5.js} +2 -2
  234. package/dist/{chunk-6MN5KOVM.js → chunk-NHMFBUBK.js} +2 -2
  235. package/dist/{chunk-N4HHFYPB.js → chunk-NND4UTWS.js} +2 -2
  236. package/dist/{chunk-EMEXXAQI.js → chunk-NYFGFELX.js} +7 -7
  237. package/dist/{chunk-Q2LQVYXY.js → chunk-OL2BEJZR.js} +2 -2
  238. package/dist/{chunk-KTX7XME6.js → chunk-PAICZOL5.js} +4 -4
  239. package/dist/{chunk-AJ4MRDKM.js → chunk-PAK25GQC.js} +4 -4
  240. package/dist/{chunk-KYQ4OORF.js → chunk-PJNA6STF.js} +6 -6
  241. package/dist/{chunk-BPOVRMVS.js → chunk-Q4PS47EB.js} +8 -8
  242. package/dist/{chunk-YXU45AVO.js → chunk-QBJBKXF4.js} +10 -10
  243. package/dist/{chunk-EKWH4LGM.js → chunk-QEHEYVOL.js} +2 -2
  244. package/dist/{chunk-XNTDEQEB.js → chunk-QMA7TNZJ.js} +4 -4
  245. package/dist/{chunk-P2OQ4IGP.js → chunk-QTMXGMM7.js} +2 -2
  246. package/dist/{chunk-NQ7NMCRI.js → chunk-QTN7G5T2.js} +2 -2
  247. package/dist/{chunk-DSDNGTH6.js → chunk-R4XZTIZG.js} +7 -7
  248. package/dist/{chunk-GOWBYHYW.js → chunk-R6SBP5M5.js} +4 -4
  249. package/dist/{chunk-F56VOHFW.js → chunk-RJTVUM5E.js} +2 -2
  250. package/dist/{chunk-KN7C6R6L.js → chunk-ROG7LMPK.js} +20 -20
  251. package/dist/{chunk-J44PPGBF.js → chunk-RX7J6VRI.js} +2 -2
  252. package/dist/{chunk-FIF4RQ4S.js → chunk-RXLD5XS2.js} +3 -3
  253. package/dist/{chunk-I2STNAIQ.js → chunk-RYWX6LK4.js} +2 -2
  254. package/dist/{chunk-HGRC635A.js → chunk-RZ4SBSLP.js} +2 -2
  255. package/dist/{chunk-S22XIXLL.js → chunk-SA2ERYVV.js} +5 -5
  256. package/dist/{chunk-6VKHS2BB.js → chunk-SDBNXZ2S.js} +2 -2
  257. package/dist/{chunk-KQS4ZJGS.js → chunk-SHAEK26Y.js} +4 -4
  258. package/dist/{chunk-PIUQYYOM.js → chunk-TBDAH7WC.js} +2 -2
  259. package/dist/{chunk-IHO2O44S.js → chunk-TE3XYCX7.js} +5 -5
  260. package/dist/{chunk-6DMUVVON.js → chunk-TJ7NQG7E.js} +4 -4
  261. package/dist/{chunk-Y6C4MYZE.js → chunk-TNQDSTIA.js} +7 -7
  262. package/dist/{chunk-UILH4OAZ.js → chunk-TOEBPWKG.js} +5 -5
  263. package/dist/{chunk-DWG5SEGW.js → chunk-TOMCXNAO.js} +2 -2
  264. package/dist/{chunk-YTIUFMRM.js → chunk-TU7ZXJX4.js} +3 -3
  265. package/dist/{chunk-P53KRCKW.js → chunk-TZASFX6G.js} +4 -4
  266. package/dist/{chunk-3CUWQXTG.js → chunk-UBUT2T5B.js} +2 -2
  267. package/dist/{chunk-ACU7LEFG.js → chunk-UDTA7YWD.js} +2 -2
  268. package/dist/{chunk-VYV3JOV5.js → chunk-UFGPKDF4.js} +2 -2
  269. package/dist/{chunk-WSYPM3SR.js → chunk-UI5O6J6R.js} +4 -4
  270. package/dist/{chunk-JQ6HDXKA.js → chunk-VFLNP2ZZ.js} +4 -4
  271. package/dist/{chunk-7PUSFB3T.js → chunk-W34CCOUM.js} +2 -2
  272. package/dist/{chunk-WDQRQIT7.js → chunk-WCVVM66J.js} +2 -2
  273. package/dist/{chunk-AEJ3FFNE.js → chunk-WQQON4RL.js} +5 -5
  274. package/dist/{chunk-H7DVH6KD.js → chunk-WT5SSBTU.js} +7 -7
  275. package/dist/{chunk-EWVJJ32N.js → chunk-WXAFPVMW.js} +5 -5
  276. package/dist/chunk-XK77FY42.js +59 -0
  277. package/dist/chunk-XK77FY42.js.map +1 -0
  278. package/dist/{chunk-6KLDYVRY.js → chunk-XKYOQOZK.js} +2 -2
  279. package/dist/{chunk-CKFZQQ6T.js → chunk-XNDMCT5G.js} +2 -2
  280. package/dist/{chunk-R53ZOW4B.js → chunk-XP522FFM.js} +3 -3
  281. package/dist/{chunk-WGNLG2W2.js → chunk-XRGJVS4P.js} +2 -2
  282. package/dist/{chunk-FPKVHR5L.js → chunk-XRUW7DMH.js} +2 -2
  283. package/dist/{chunk-IV7G7NK3.js → chunk-XZH22APJ.js} +4 -4
  284. package/dist/{chunk-ZL3GCUKC.js → chunk-ZAVMJL4S.js} +2 -2
  285. package/dist/{chunk-SV4FYSDL.js → chunk-ZDMQDTSH.js} +4 -4
  286. package/dist/{chunk-CKAVTWXP.js → chunk-ZGWEFOW6.js} +4 -4
  287. package/dist/{chunk-WC3W36AM.js → chunk-ZOUWHGV3.js} +4 -4
  288. package/dist/{chunk-4CBM7JNK.js → chunk-ZWIPJFUA.js} +4 -4
  289. package/dist/data-display/AsyncStateContainer.js +4 -4
  290. package/dist/data-display/Avatar.js +4 -4
  291. package/dist/data-display/Badge.js +8 -6
  292. package/dist/data-display/CardKit.js +6 -6
  293. package/dist/data-display/Carousel.js +10 -8
  294. package/dist/data-display/Chart.js +22 -20
  295. package/dist/data-display/DataGrid.js +7 -5
  296. package/dist/data-display/DataViews.js +76 -74
  297. package/dist/data-display/FleetMap.js +17 -15
  298. package/dist/data-display/LazyImage.js +3 -3
  299. package/dist/data-display/Lightbox.js +6 -6
  300. package/dist/data-display/LoadingState.js +3 -3
  301. package/dist/data-display/MapPreview.js +4 -4
  302. package/dist/data-display/Progress.js +2 -2
  303. package/dist/data-display/Sheet.js +9 -7
  304. package/dist/data-display/StatCard.js +3 -3
  305. package/dist/data-display/Table.js +7 -5
  306. package/dist/feedback/ConfirmAction.js +3 -3
  307. package/dist/feedback/NotificationStatusNotice.js +3 -3
  308. package/dist/form/AddressAutocomplete.js +7 -7
  309. package/dist/form/Button.js +2 -2
  310. package/dist/form/Calendar.js +6 -6
  311. package/dist/form/CategorySelect.js +4 -4
  312. package/dist/form/CodeEditor.js +3 -3
  313. package/dist/form/Command.js +7 -5
  314. package/dist/form/DateRangePicker.js +7 -7
  315. package/dist/form/Label.js +7 -5
  316. package/dist/form/Menubar.js +10 -8
  317. package/dist/form/RichTextEditor.js +2 -2
  318. package/dist/form/Switch.js +2 -2
  319. package/dist/form/total-form.js +14 -14
  320. package/dist/icons.js +8 -6
  321. package/dist/layout/Box.js +8 -6
  322. package/dist/layout/ContentToolbar.js +9 -9
  323. package/dist/layout/ScrollArea.js +3 -3
  324. package/dist/layout/SettingCard.js +22 -20
  325. package/dist/layout/SettingsLayout.js +4 -4
  326. package/dist/layout/Skeleton.js +2 -2
  327. package/dist/layout/Stack.js +9 -7
  328. package/dist/navigation/AppHeader.js +15 -13
  329. package/dist/navigation/NavigationMenu.js +5 -5
  330. package/dist/navigation/SectionNav.js +14 -12
  331. package/dist/navigation/Tabs.js +2 -2
  332. package/dist/provider.js +8 -6
  333. package/dist/social-login-button.js +3 -3
  334. package/dist/tokens.js +21 -5
  335. package/dist/types/provider/mui-bridge.d.ts.map +1 -1
  336. package/dist/types/tokens/density-overrides.d.ts +2 -14
  337. package/dist/types/tokens/density-overrides.d.ts.map +1 -1
  338. package/dist/types/tokens/density-overrides.navigation.d.ts +17 -0
  339. package/dist/types/tokens/density-overrides.navigation.d.ts.map +1 -0
  340. package/dist/types/tokens/density-overrides.selection.d.ts +16 -0
  341. package/dist/types/tokens/density-overrides.selection.d.ts.map +1 -0
  342. package/dist/types/tokens/density.d.ts +18 -11
  343. package/dist/types/tokens/density.d.ts.map +1 -1
  344. package/dist/types/tokens/scales.d.ts +1 -1
  345. package/dist/types/tokens/scales.d.ts.map +1 -1
  346. package/dist/user-avatar.js +7 -7
  347. package/dist/utility/WorkflowStep.js +5 -3
  348. package/package.json +1 -1
  349. package/src/components/data-display/LazyImage/LazyImage.md +38 -9
  350. package/src/components/data-display/LazyImage/LazyImage.tsx +6 -6
  351. package/src/provider/mui-bridge.ts +15 -3
  352. package/src/tokens/density-overrides.navigation.ts +226 -0
  353. package/src/tokens/density-overrides.selection.ts +210 -0
  354. package/src/tokens/density-overrides.ts +15 -208
  355. package/src/tokens/density.ts +30 -11
  356. package/src/tokens/scales.ts +10 -3
  357. package/dist/chunk-5D52CMNX.js.map +0 -1
  358. package/dist/chunk-BIDPJNCG.js.map +0 -1
  359. package/dist/chunk-TMOC2XUE.js.map +0 -1
  360. /package/dist/{chunk-ODFJTEIL.js.map → chunk-23YZEAUU.js.map} +0 -0
  361. /package/dist/{chunk-OBID7SOG.js.map → chunk-2GAFEQ2T.js.map} +0 -0
  362. /package/dist/{chunk-NRSVI23L.js.map → chunk-2T7L6ZWF.js.map} +0 -0
  363. /package/dist/{chunk-2YKTB2IZ.js.map → chunk-32JMSHEA.js.map} +0 -0
  364. /package/dist/{chunk-2NYVMLFQ.js.map → chunk-3YRPEZ3F.js.map} +0 -0
  365. /package/dist/{chunk-CGL7R37P.js.map → chunk-43Q6CVPB.js.map} +0 -0
  366. /package/dist/{chunk-G6II7SVX.js.map → chunk-44USLRMT.js.map} +0 -0
  367. /package/dist/{chunk-E4GTZ26X.js.map → chunk-4CDZP6KD.js.map} +0 -0
  368. /package/dist/{chunk-HISEWACT.js.map → chunk-4GRUNQNB.js.map} +0 -0
  369. /package/dist/{chunk-AOKLEE64.js.map → chunk-4NDNV45Y.js.map} +0 -0
  370. /package/dist/{chunk-LTJDZIYR.js.map → chunk-4O7X45T5.js.map} +0 -0
  371. /package/dist/{chunk-H5XKBPKK.js.map → chunk-4UQY2DUN.js.map} +0 -0
  372. /package/dist/{chunk-43UFSKEK.js.map → chunk-4WCYKU3S.js.map} +0 -0
  373. /package/dist/{chunk-JAHWFJCW.js.map → chunk-5JCGBCFJ.js.map} +0 -0
  374. /package/dist/{chunk-UJOFRJLX.js.map → chunk-5MW7OYBM.js.map} +0 -0
  375. /package/dist/{chunk-4A7PSQB5.js.map → chunk-6EPXOVY3.js.map} +0 -0
  376. /package/dist/{chunk-AQC67NQZ.js.map → chunk-6EXGL36F.js.map} +0 -0
  377. /package/dist/{chunk-CMLIWUBW.js.map → chunk-6PPHALM3.js.map} +0 -0
  378. /package/dist/{chunk-WHYVVKRS.js.map → chunk-6SI22JFV.js.map} +0 -0
  379. /package/dist/{chunk-RZPYKTOG.js.map → chunk-6SM5ML75.js.map} +0 -0
  380. /package/dist/{chunk-THCDUP6Q.js.map → chunk-6SXXW5GR.js.map} +0 -0
  381. /package/dist/{chunk-5OX6KZIZ.js.map → chunk-6TLY2E24.js.map} +0 -0
  382. /package/dist/{chunk-SAJ5H5VC.js.map → chunk-7JTTE4OY.js.map} +0 -0
  383. /package/dist/{chunk-AG3DY5TH.js.map → chunk-ADSA76T7.js.map} +0 -0
  384. /package/dist/{chunk-25OI5W6Y.js.map → chunk-AH4XGLE2.js.map} +0 -0
  385. /package/dist/{chunk-CACBJ4CR.js.map → chunk-AJAPP56P.js.map} +0 -0
  386. /package/dist/{chunk-GMC3F43L.js.map → chunk-AMSNWV7V.js.map} +0 -0
  387. /package/dist/{chunk-MWPXKZ7O.js.map → chunk-AY5MY7HJ.js.map} +0 -0
  388. /package/dist/{chunk-2LSJTQIL.js.map → chunk-B22NXESR.js.map} +0 -0
  389. /package/dist/{chunk-E32YPPF5.js.map → chunk-B4Y6W3OU.js.map} +0 -0
  390. /package/dist/{chunk-2K2B5QM2.js.map → chunk-BEGTLELZ.js.map} +0 -0
  391. /package/dist/{chunk-33NBMNTB.js.map → chunk-CF25EQFU.js.map} +0 -0
  392. /package/dist/{chunk-WDAEYLT5.js.map → chunk-D6ROYZ6H.js.map} +0 -0
  393. /package/dist/{chunk-ZVJSY2OV.js.map → chunk-EF5XUS44.js.map} +0 -0
  394. /package/dist/{chunk-6PU3JYVY.js.map → chunk-F3AYISXT.js.map} +0 -0
  395. /package/dist/{chunk-ST36ZSAN.js.map → chunk-FRIUYEXD.js.map} +0 -0
  396. /package/dist/{chunk-K6LNHHSH.js.map → chunk-GC5XJ7YB.js.map} +0 -0
  397. /package/dist/{chunk-JYLOCXMV.js.map → chunk-GI63FQEJ.js.map} +0 -0
  398. /package/dist/{chunk-FVKBP3UX.js.map → chunk-GLKQT2DS.js.map} +0 -0
  399. /package/dist/{chunk-MEYKNJNI.js.map → chunk-GT6HPOS2.js.map} +0 -0
  400. /package/dist/{chunk-XFAXRMWY.js.map → chunk-GUAK7QUR.js.map} +0 -0
  401. /package/dist/{chunk-JUKA4NY5.js.map → chunk-GWONO2ML.js.map} +0 -0
  402. /package/dist/{chunk-YRACC6BB.js.map → chunk-GWVJZ7SX.js.map} +0 -0
  403. /package/dist/{chunk-5NFQKL7C.js.map → chunk-H6K3AP42.js.map} +0 -0
  404. /package/dist/{chunk-VOG5IVQW.js.map → chunk-H6N7XXUB.js.map} +0 -0
  405. /package/dist/{chunk-PP7CDKO4.js.map → chunk-HCBGCR4N.js.map} +0 -0
  406. /package/dist/{chunk-5OEC546C.js.map → chunk-HDI37JLT.js.map} +0 -0
  407. /package/dist/{chunk-LHTEAPYG.js.map → chunk-HDQMSZA7.js.map} +0 -0
  408. /package/dist/{chunk-VU63PDWW.js.map → chunk-HOXWNOQV.js.map} +0 -0
  409. /package/dist/{chunk-KESGVMHW.js.map → chunk-HUGXO5PE.js.map} +0 -0
  410. /package/dist/{chunk-3CDU7DLD.js.map → chunk-IKXS2YVQ.js.map} +0 -0
  411. /package/dist/{chunk-BU6TCB76.js.map → chunk-INCTNS4X.js.map} +0 -0
  412. /package/dist/{chunk-FS7UVKEE.js.map → chunk-IR5A2BKL.js.map} +0 -0
  413. /package/dist/{chunk-2ZRZTGWP.js.map → chunk-ISW5K72V.js.map} +0 -0
  414. /package/dist/{chunk-VZ4VAQX3.js.map → chunk-IVJKILIX.js.map} +0 -0
  415. /package/dist/{chunk-NRI2TZDS.js.map → chunk-JNX4B3EE.js.map} +0 -0
  416. /package/dist/{chunk-JWJ77IMK.js.map → chunk-JRV3UFOJ.js.map} +0 -0
  417. /package/dist/{chunk-ZRIWMIHK.js.map → chunk-JVOV5WAJ.js.map} +0 -0
  418. /package/dist/{chunk-HR7YTBR7.js.map → chunk-K4N3V7YE.js.map} +0 -0
  419. /package/dist/{chunk-WU2KXA6I.js.map → chunk-KC733FDV.js.map} +0 -0
  420. /package/dist/{chunk-ZCXVTFYQ.js.map → chunk-KG64HV34.js.map} +0 -0
  421. /package/dist/{chunk-LB27LKG3.js.map → chunk-KUNHGNGF.js.map} +0 -0
  422. /package/dist/{chunk-FQT4C5R4.js.map → chunk-KWIR73YH.js.map} +0 -0
  423. /package/dist/{chunk-IKZSQKOE.js.map → chunk-LFHAYETO.js.map} +0 -0
  424. /package/dist/{chunk-NM2FLCPV.js.map → chunk-LO4M5D7T.js.map} +0 -0
  425. /package/dist/{chunk-CGBUWNNQ.js.map → chunk-LWFJZ3Q5.js.map} +0 -0
  426. /package/dist/{chunk-OCQ6GDCF.js.map → chunk-MH3XW3WR.js.map} +0 -0
  427. /package/dist/{chunk-3WAAL3KN.js.map → chunk-MT2OCLGT.js.map} +0 -0
  428. /package/dist/{chunk-QJK7BNH3.js.map → chunk-N7KUKE45.js.map} +0 -0
  429. /package/dist/{chunk-WAD5VL6B.js.map → chunk-NBFP645M.js.map} +0 -0
  430. /package/dist/{chunk-TTJTMDLI.js.map → chunk-NF42BHI5.js.map} +0 -0
  431. /package/dist/{chunk-6MN5KOVM.js.map → chunk-NHMFBUBK.js.map} +0 -0
  432. /package/dist/{chunk-N4HHFYPB.js.map → chunk-NND4UTWS.js.map} +0 -0
  433. /package/dist/{chunk-EMEXXAQI.js.map → chunk-NYFGFELX.js.map} +0 -0
  434. /package/dist/{chunk-Q2LQVYXY.js.map → chunk-OL2BEJZR.js.map} +0 -0
  435. /package/dist/{chunk-KTX7XME6.js.map → chunk-PAICZOL5.js.map} +0 -0
  436. /package/dist/{chunk-AJ4MRDKM.js.map → chunk-PAK25GQC.js.map} +0 -0
  437. /package/dist/{chunk-KYQ4OORF.js.map → chunk-PJNA6STF.js.map} +0 -0
  438. /package/dist/{chunk-BPOVRMVS.js.map → chunk-Q4PS47EB.js.map} +0 -0
  439. /package/dist/{chunk-YXU45AVO.js.map → chunk-QBJBKXF4.js.map} +0 -0
  440. /package/dist/{chunk-EKWH4LGM.js.map → chunk-QEHEYVOL.js.map} +0 -0
  441. /package/dist/{chunk-XNTDEQEB.js.map → chunk-QMA7TNZJ.js.map} +0 -0
  442. /package/dist/{chunk-P2OQ4IGP.js.map → chunk-QTMXGMM7.js.map} +0 -0
  443. /package/dist/{chunk-NQ7NMCRI.js.map → chunk-QTN7G5T2.js.map} +0 -0
  444. /package/dist/{chunk-DSDNGTH6.js.map → chunk-R4XZTIZG.js.map} +0 -0
  445. /package/dist/{chunk-GOWBYHYW.js.map → chunk-R6SBP5M5.js.map} +0 -0
  446. /package/dist/{chunk-F56VOHFW.js.map → chunk-RJTVUM5E.js.map} +0 -0
  447. /package/dist/{chunk-KN7C6R6L.js.map → chunk-ROG7LMPK.js.map} +0 -0
  448. /package/dist/{chunk-J44PPGBF.js.map → chunk-RX7J6VRI.js.map} +0 -0
  449. /package/dist/{chunk-FIF4RQ4S.js.map → chunk-RXLD5XS2.js.map} +0 -0
  450. /package/dist/{chunk-I2STNAIQ.js.map → chunk-RYWX6LK4.js.map} +0 -0
  451. /package/dist/{chunk-HGRC635A.js.map → chunk-RZ4SBSLP.js.map} +0 -0
  452. /package/dist/{chunk-S22XIXLL.js.map → chunk-SA2ERYVV.js.map} +0 -0
  453. /package/dist/{chunk-6VKHS2BB.js.map → chunk-SDBNXZ2S.js.map} +0 -0
  454. /package/dist/{chunk-KQS4ZJGS.js.map → chunk-SHAEK26Y.js.map} +0 -0
  455. /package/dist/{chunk-PIUQYYOM.js.map → chunk-TBDAH7WC.js.map} +0 -0
  456. /package/dist/{chunk-IHO2O44S.js.map → chunk-TE3XYCX7.js.map} +0 -0
  457. /package/dist/{chunk-6DMUVVON.js.map → chunk-TJ7NQG7E.js.map} +0 -0
  458. /package/dist/{chunk-Y6C4MYZE.js.map → chunk-TNQDSTIA.js.map} +0 -0
  459. /package/dist/{chunk-UILH4OAZ.js.map → chunk-TOEBPWKG.js.map} +0 -0
  460. /package/dist/{chunk-DWG5SEGW.js.map → chunk-TOMCXNAO.js.map} +0 -0
  461. /package/dist/{chunk-YTIUFMRM.js.map → chunk-TU7ZXJX4.js.map} +0 -0
  462. /package/dist/{chunk-P53KRCKW.js.map → chunk-TZASFX6G.js.map} +0 -0
  463. /package/dist/{chunk-3CUWQXTG.js.map → chunk-UBUT2T5B.js.map} +0 -0
  464. /package/dist/{chunk-ACU7LEFG.js.map → chunk-UDTA7YWD.js.map} +0 -0
  465. /package/dist/{chunk-VYV3JOV5.js.map → chunk-UFGPKDF4.js.map} +0 -0
  466. /package/dist/{chunk-WSYPM3SR.js.map → chunk-UI5O6J6R.js.map} +0 -0
  467. /package/dist/{chunk-JQ6HDXKA.js.map → chunk-VFLNP2ZZ.js.map} +0 -0
  468. /package/dist/{chunk-7PUSFB3T.js.map → chunk-W34CCOUM.js.map} +0 -0
  469. /package/dist/{chunk-WDQRQIT7.js.map → chunk-WCVVM66J.js.map} +0 -0
  470. /package/dist/{chunk-AEJ3FFNE.js.map → chunk-WQQON4RL.js.map} +0 -0
  471. /package/dist/{chunk-H7DVH6KD.js.map → chunk-WT5SSBTU.js.map} +0 -0
  472. /package/dist/{chunk-EWVJJ32N.js.map → chunk-WXAFPVMW.js.map} +0 -0
  473. /package/dist/{chunk-6KLDYVRY.js.map → chunk-XKYOQOZK.js.map} +0 -0
  474. /package/dist/{chunk-CKFZQQ6T.js.map → chunk-XNDMCT5G.js.map} +0 -0
  475. /package/dist/{chunk-R53ZOW4B.js.map → chunk-XP522FFM.js.map} +0 -0
  476. /package/dist/{chunk-WGNLG2W2.js.map → chunk-XRGJVS4P.js.map} +0 -0
  477. /package/dist/{chunk-FPKVHR5L.js.map → chunk-XRUW7DMH.js.map} +0 -0
  478. /package/dist/{chunk-IV7G7NK3.js.map → chunk-XZH22APJ.js.map} +0 -0
  479. /package/dist/{chunk-ZL3GCUKC.js.map → chunk-ZAVMJL4S.js.map} +0 -0
  480. /package/dist/{chunk-SV4FYSDL.js.map → chunk-ZDMQDTSH.js.map} +0 -0
  481. /package/dist/{chunk-CKAVTWXP.js.map → chunk-ZGWEFOW6.js.map} +0 -0
  482. /package/dist/{chunk-WC3W36AM.js.map → chunk-ZOUWHGV3.js.map} +0 -0
  483. /package/dist/{chunk-4CBM7JNK.js.map → chunk-ZWIPJFUA.js.map} +0 -0
@@ -1,16 +1,16 @@
1
+ import {
2
+ useAsyncSwitch
3
+ } from "./chunk-SALQ65SM.js";
1
4
  import {
2
5
  SettingSwitchBlock,
3
6
  useSettingSwitchIds
4
- } from "./chunk-XFAXRMWY.js";
7
+ } from "./chunk-GUAK7QUR.js";
5
8
  import {
6
9
  SettingGroupContext
7
10
  } from "./chunk-XJQNSMGA.js";
8
- import {
9
- useAsyncSwitch
10
- } from "./chunk-SALQ65SM.js";
11
11
  import {
12
12
  partTestId
13
- } from "./chunk-H5XKBPKK.js";
13
+ } from "./chunk-4UQY2DUN.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-E4GTZ26X.js";
22
+ } from "./chunk-4CDZP6KD.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-LTJDZIYR.js.map
87
+ //# sourceMappingURL=chunk-4O7X45T5.js.map
@@ -15,10 +15,10 @@ import {
15
15
  } from "./chunk-OZPLAOI4.js";
16
16
  import {
17
17
  Icon
18
- } from "./chunk-E4GTZ26X.js";
18
+ } from "./chunk-4CDZP6KD.js";
19
19
  import {
20
20
  Button
21
- } from "./chunk-K6LNHHSH.js";
21
+ } from "./chunk-GC5XJ7YB.js";
22
22
  import {
23
23
  BUTTON_SIZES
24
24
  } from "./chunk-LN46DSMF.js";
@@ -137,4 +137,4 @@ export {
137
137
  PendingSpinner,
138
138
  LearnMore
139
139
  };
140
- //# sourceMappingURL=chunk-H5XKBPKK.js.map
140
+ //# sourceMappingURL=chunk-4UQY2DUN.js.map
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  FleetCanvas
3
- } from "./chunk-2NYVMLFQ.js";
3
+ } from "./chunk-3YRPEZ3F.js";
4
4
  import {
5
5
  FleetRoster
6
- } from "./chunk-JAHWFJCW.js";
6
+ } from "./chunk-5JCGBCFJ.js";
7
7
  import {
8
8
  rem
9
9
  } from "./chunk-YKCAJ2TN.js";
@@ -79,4 +79,4 @@ function FleetBody({
79
79
  export {
80
80
  FleetBody
81
81
  };
82
- //# sourceMappingURL=chunk-43UFSKEK.js.map
82
+ //# sourceMappingURL=chunk-4WCYKU3S.js.map
@@ -1,15 +1,15 @@
1
- import {
2
- freshnessOf
3
- } from "./chunk-XPMGFAJ3.js";
4
1
  import {
5
2
  FLEET_DOT,
6
3
  FLEET_ROSTER,
7
4
  FLEET_ROW,
8
5
  FLEET_SKELETON
9
6
  } from "./chunk-BTQZ3EX3.js";
7
+ import {
8
+ freshnessOf
9
+ } from "./chunk-XPMGFAJ3.js";
10
10
  import {
11
11
  Skeleton
12
- } from "./chunk-2K2B5QM2.js";
12
+ } from "./chunk-BEGTLELZ.js";
13
13
  import {
14
14
  rem
15
15
  } from "./chunk-YKCAJ2TN.js";
@@ -220,4 +220,4 @@ function FleetRoster({
220
220
  export {
221
221
  FleetRoster
222
222
  };
223
- //# sourceMappingURL=chunk-JAHWFJCW.js.map
223
+ //# sourceMappingURL=chunk-5JCGBCFJ.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-PBMCRDZI.js";
4
4
  import {
5
5
  LoadingState
6
- } from "./chunk-Q2LQVYXY.js";
6
+ } from "./chunk-OL2BEJZR.js";
7
7
  import {
8
8
  EmptyState
9
9
  } from "./chunk-HN3PZTUK.js";
@@ -65,4 +65,4 @@ export {
65
65
  AsyncStateContainer,
66
66
  AsyncStateContainer_default
67
67
  };
68
- //# sourceMappingURL=chunk-UJOFRJLX.js.map
68
+ //# sourceMappingURL=chunk-5MW7OYBM.js.map
@@ -7,7 +7,7 @@ import {
7
7
  SaveError,
8
8
  SettingHeader,
9
9
  partTestId
10
- } from "./chunk-H5XKBPKK.js";
10
+ } from "./chunk-4UQY2DUN.js";
11
11
  import {
12
12
  SETTING_CARD_OPEN_ATTR,
13
13
  actionsStyles,
@@ -17,10 +17,10 @@ import {
17
17
  } from "./chunk-3DO5AJCG.js";
18
18
  import {
19
19
  Icon
20
- } from "./chunk-E4GTZ26X.js";
20
+ } from "./chunk-4CDZP6KD.js";
21
21
  import {
22
22
  Button
23
- } from "./chunk-K6LNHHSH.js";
23
+ } from "./chunk-GC5XJ7YB.js";
24
24
 
25
25
  // src/components/layout/SettingCard/SettingCard.tsx
26
26
  import Box from "@mui/material/Box/index.js";
@@ -165,4 +165,4 @@ SettingCard.displayName = "SettingCard";
165
165
  export {
166
166
  SettingCard
167
167
  };
168
- //# sourceMappingURL=chunk-4A7PSQB5.js.map
168
+ //# sourceMappingURL=chunk-6EPXOVY3.js.map
@@ -15,7 +15,7 @@ import {
15
15
  } from "./chunk-FRAVVI4A.js";
16
16
  import {
17
17
  Calendar
18
- } from "./chunk-R53ZOW4B.js";
18
+ } from "./chunk-XP522FFM.js";
19
19
 
20
20
  // src/components/form/DateRangePicker/DateRangePicker.tsx
21
21
  import Box from "@mui/material/Box/index.js";
@@ -181,4 +181,4 @@ export {
181
181
  DateRangePicker,
182
182
  DateRangePicker_default
183
183
  };
184
- //# sourceMappingURL=chunk-AQC67NQZ.js.map
184
+ //# sourceMappingURL=chunk-6EXGL36F.js.map
@@ -1,9 +1,9 @@
1
- import {
2
- CustomTabPanel
3
- } from "./chunk-GNCSDUGY.js";
4
1
  import {
5
2
  tabsRootStyles
6
3
  } from "./chunk-QMHS6ZDI.js";
4
+ import {
5
+ CustomTabPanel
6
+ } from "./chunk-GNCSDUGY.js";
7
7
  import {
8
8
  rem,
9
9
  sxRem
@@ -250,4 +250,4 @@ Tabs.displayName = "Tabs";
250
250
  export {
251
251
  Tabs
252
252
  };
253
- //# sourceMappingURL=chunk-CMLIWUBW.js.map
253
+ //# sourceMappingURL=chunk-6PPHALM3.js.map
@@ -13,7 +13,7 @@ import {
13
13
  } from "./chunk-OP5JR5Q5.js";
14
14
  import {
15
15
  Button
16
- } from "./chunk-K6LNHHSH.js";
16
+ } from "./chunk-GC5XJ7YB.js";
17
17
  import {
18
18
  Text
19
19
  } from "./chunk-YZHX2HTC.js";
@@ -217,4 +217,4 @@ export {
217
217
  SocialLoginButton,
218
218
  SocialLoginContainer
219
219
  };
220
- //# sourceMappingURL=chunk-WHYVVKRS.js.map
220
+ //# sourceMappingURL=chunk-6SI22JFV.js.map
@@ -1,9 +1,9 @@
1
- import {
2
- DATA_VIEWS_LAYOUTS
3
- } from "./chunk-LHHAYZ55.js";
4
1
  import {
5
2
  useDataViewsCopy
6
3
  } from "./chunk-KHG57NAE.js";
4
+ import {
5
+ DATA_VIEWS_LAYOUTS
6
+ } from "./chunk-LHHAYZ55.js";
7
7
  import {
8
8
  Slider
9
9
  } from "./chunk-MNHIK2OR.js";
@@ -12,7 +12,7 @@ import {
12
12
  } from "./chunk-6DPAWXZ3.js";
13
13
  import {
14
14
  useDensity
15
- } from "./chunk-TMOC2XUE.js";
15
+ } from "./chunk-2UPWKLHQ.js";
16
16
  import {
17
17
  sxRem
18
18
  } from "./chunk-YKCAJ2TN.js";
@@ -196,4 +196,4 @@ export {
196
196
  useDataViewsLayout,
197
197
  DataViewsZoomSlider
198
198
  };
199
- //# sourceMappingURL=chunk-RZPYKTOG.js.map
199
+ //# sourceMappingURL=chunk-6SM5ML75.js.map
@@ -1,17 +1,17 @@
1
+ import {
2
+ glassStyles,
3
+ resolveMapPreviewProps
4
+ } from "./chunk-4NQXHPQR.js";
1
5
  import {
2
6
  MapCoordinates,
3
7
  MapMarkers
4
- } from "./chunk-ODFJTEIL.js";
8
+ } from "./chunk-23YZEAUU.js";
5
9
  import {
6
10
  MapLayers
7
11
  } from "./chunk-CO4MSWTV.js";
8
12
  import {
9
13
  StaticMapView
10
14
  } from "./chunk-RSDYS5B3.js";
11
- import {
12
- glassStyles,
13
- resolveMapPreviewProps
14
- } from "./chunk-4NQXHPQR.js";
15
15
  import {
16
16
  useMapPreview
17
17
  } from "./chunk-QSRZOXQI.js";
@@ -108,4 +108,4 @@ export {
108
108
  MapPreview,
109
109
  MapPreview_default
110
110
  };
111
- //# sourceMappingURL=chunk-THCDUP6Q.js.map
111
+ //# sourceMappingURL=chunk-6SXXW5GR.js.map
@@ -4,13 +4,13 @@ import {
4
4
  import {
5
5
  DisplayTab,
6
6
  SortTab
7
- } from "./chunk-EKWH4LGM.js";
7
+ } from "./chunk-QEHEYVOL.js";
8
8
  import {
9
9
  ViewActions,
10
10
  ViewFooter,
11
11
  ViewHeader,
12
12
  ViewsList
13
- } from "./chunk-33NBMNTB.js";
13
+ } from "./chunk-CF25EQFU.js";
14
14
  import {
15
15
  useDataViewsCopy
16
16
  } from "./chunk-KHG57NAE.js";
@@ -19,7 +19,7 @@ import {
19
19
  } from "./chunk-6DPAWXZ3.js";
20
20
  import {
21
21
  Button
22
- } from "./chunk-K6LNHHSH.js";
22
+ } from "./chunk-GC5XJ7YB.js";
23
23
  import {
24
24
  rem,
25
25
  sxRem
@@ -265,4 +265,4 @@ function DataViewsDisplayPanel({
265
265
  export {
266
266
  DataViewsDisplayPanel
267
267
  };
268
- //# sourceMappingURL=chunk-5OX6KZIZ.js.map
268
+ //# sourceMappingURL=chunk-6TLY2E24.js.map
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  Sheet
3
- } from "./chunk-WAD5VL6B.js";
3
+ } from "./chunk-NBFP645M.js";
4
4
  import {
5
5
  Dialog
6
6
  } from "./chunk-MQ277OLB.js";
7
7
  import {
8
8
  Button
9
- } from "./chunk-K6LNHHSH.js";
9
+ } from "./chunk-GC5XJ7YB.js";
10
10
  import {
11
11
  accentFor
12
- } from "./chunk-QFJ3JXXP.js";
12
+ } from "./chunk-3IPPMWUA.js";
13
13
  import {
14
14
  rem,
15
15
  sxRem
@@ -166,4 +166,4 @@ AppHeaderDetails.displayName = "AppHeaderDetails";
166
166
  export {
167
167
  AppHeaderDetails
168
168
  };
169
- //# sourceMappingURL=chunk-SAJ5H5VC.js.map
169
+ //# sourceMappingURL=chunk-7JTTE4OY.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  CalendarDayCell
3
- } from "./chunk-6PU3JYVY.js";
3
+ } from "./chunk-F3AYISXT.js";
4
4
  import {
5
5
  getMonthName
6
6
  } from "./chunk-TERT6TIS.js";
@@ -104,4 +104,4 @@ var CalendarMonth = ({
104
104
  export {
105
105
  CalendarMonth
106
106
  };
107
- //# sourceMappingURL=chunk-AG3DY5TH.js.map
107
+ //# sourceMappingURL=chunk-ADSA76T7.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-GWFAINQ7.js";
4
4
  import {
5
5
  accentFor
6
- } from "./chunk-QFJ3JXXP.js";
6
+ } from "./chunk-3IPPMWUA.js";
7
7
  import {
8
8
  rem,
9
9
  sxRem
@@ -258,4 +258,4 @@ export {
258
258
  AppHeaderStatus,
259
259
  AppHeaderIdentity
260
260
  };
261
- //# sourceMappingURL=chunk-25OI5W6Y.js.map
261
+ //# sourceMappingURL=chunk-AH4XGLE2.js.map
@@ -2,7 +2,7 @@ import {
2
2
  CarouselArrows,
3
3
  CarouselIndicators,
4
4
  CarouselThumbnails
5
- } from "./chunk-DWG5SEGW.js";
5
+ } from "./chunk-TOMCXNAO.js";
6
6
 
7
7
  // src/components/data-display/Carousel/Carousel.chrome.tsx
8
8
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
@@ -59,4 +59,4 @@ var CarouselChrome = ({
59
59
  export {
60
60
  CarouselChrome
61
61
  };
62
- //# sourceMappingURL=chunk-CACBJ4CR.js.map
62
+ //# sourceMappingURL=chunk-AJAPP56P.js.map
@@ -6,11 +6,11 @@ import {
6
6
  } from "./chunk-6C5D6O3D.js";
7
7
  import {
8
8
  buildBadgeContent
9
- } from "./chunk-WDQRQIT7.js";
9
+ } from "./chunk-WCVVM66J.js";
10
10
  import {
11
11
  badgeStyles,
12
12
  getAnchorOrigin
13
- } from "./chunk-ZCXVTFYQ.js";
13
+ } from "./chunk-KG64HV34.js";
14
14
  import {
15
15
  CLOSE_DELAY_MS,
16
16
  MOUNT_ANIMATION_MS
@@ -180,4 +180,4 @@ Badge.displayName = "Badge";
180
180
  export {
181
181
  Badge
182
182
  };
183
- //# sourceMappingURL=chunk-GMC3F43L.js.map
183
+ //# sourceMappingURL=chunk-AMSNWV7V.js.map
@@ -1,15 +1,15 @@
1
- import {
2
- resolveScrollAreaProps
3
- } from "./chunk-QUWK7SYN.js";
4
1
  import {
5
2
  ScrollViewport
6
3
  } from "./chunk-BAZXVFLR.js";
4
+ import {
5
+ ScrollAreaContent
6
+ } from "./chunk-4VMFS3VJ.js";
7
7
  import {
8
8
  sizeCss
9
9
  } from "./chunk-I7GSRTGQ.js";
10
10
  import {
11
- ScrollAreaContent
12
- } from "./chunk-4VMFS3VJ.js";
11
+ resolveScrollAreaProps
12
+ } from "./chunk-QUWK7SYN.js";
13
13
  import {
14
14
  rem,
15
15
  remPx,
@@ -249,4 +249,4 @@ var ScrollArea = (componentProps) => {
249
249
  export {
250
250
  ScrollArea
251
251
  };
252
- //# sourceMappingURL=chunk-MWPXKZ7O.js.map
252
+ //# sourceMappingURL=chunk-AY5MY7HJ.js.map
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-3XS37SQT.js";
7
7
  import {
8
8
  CategorySelect
9
- } from "./chunk-CGBUWNNQ.js";
9
+ } from "./chunk-LWFJZ3Q5.js";
10
10
 
11
11
  // src/components/data-display/DataViews/data-views-category-pill.tsx
12
12
  import { jsx } from "react/jsx-runtime";
@@ -79,4 +79,4 @@ export {
79
79
  emitPillDiff,
80
80
  PillControl
81
81
  };
82
- //# sourceMappingURL=chunk-2LSJTQIL.js.map
82
+ //# sourceMappingURL=chunk-B22NXESR.js.map
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-7V6ZRQYW.js";
5
5
  import {
6
6
  useUiTheme
7
- } from "./chunk-I2STNAIQ.js";
7
+ } from "./chunk-RYWX6LK4.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-E32YPPF5.js.map
66
+ //# sourceMappingURL=chunk-B4Y6W3OU.js.map
@@ -1,7 +1,3 @@
1
- import {
2
- resolveSkeletonProps,
3
- skeletonInstanceTestId
4
- } from "./chunk-7WDPC46N.js";
5
1
  import {
6
2
  defaultDimensions,
7
3
  muiAnimationFor,
@@ -9,6 +5,10 @@ import {
9
5
  skeletonLength,
10
6
  skeletonSx
11
7
  } from "./chunk-E2QIKJX2.js";
8
+ import {
9
+ resolveSkeletonProps,
10
+ skeletonInstanceTestId
11
+ } from "./chunk-7WDPC46N.js";
12
12
  import {
13
13
  resolveTestId,
14
14
  withoutTestIdProps
@@ -78,4 +78,4 @@ Skeleton.displayName = "Skeleton";
78
78
  export {
79
79
  Skeleton
80
80
  };
81
- //# sourceMappingURL=chunk-2K2B5QM2.js.map
81
+ //# sourceMappingURL=chunk-BEGTLELZ.js.map
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-2TSGRQ2J.js";
6
6
  import {
7
7
  Skeleton
8
- } from "./chunk-2K2B5QM2.js";
8
+ } from "./chunk-BEGTLELZ.js";
9
9
  import {
10
10
  fieldHeight
11
11
  } from "./chunk-M47ZOUGF.js";
@@ -64,7 +64,8 @@ var sxLength = (theme, value) => isFraction(value) ? `${value * 100}%` : styleLe
64
64
  var innerLength = (theme, value) => isFraction(value) ? "100%" : styleLength(theme, value);
65
65
  var orDefault = (value, fallback) => value === void 0 || value === "" ? fallback : value;
66
66
  var emptyToUnset = (value) => value === "" ? void 0 : value;
67
- var isRelativeLength = (value) => isFraction(value) || typeof value === "string" && value.trim().endsWith("%");
67
+ var RELATIVE_LENGTH_UNIT = /[\d.]+(?:%|[dsl]?v(?:w|h|i|b|min|max)|cq(?:w|h|i|b|min|max))(?![a-zA-Z])/;
68
+ var isRelativeLength = (value) => isFraction(value) || typeof value === "string" && RELATIVE_LENGTH_UNIT.test(value);
68
69
  var placeholderAxis = (theme, width, height, resolve) => {
69
70
  const w = emptyToUnset(width);
70
71
  const h = height === "auto" ? void 0 : emptyToUnset(height);
@@ -274,4 +275,4 @@ LazyImage.displayName = "LazyImage";
274
275
  export {
275
276
  LazyImage
276
277
  };
277
- //# sourceMappingURL=chunk-6J32H2RN.js.map
278
+ //# sourceMappingURL=chunk-C7GYSLPO.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/data-display/LazyImage/LazyImage.tsx"],"sourcesContent":["import Box from '@mui/material/Box/index.js';\nimport CircularProgress from '@mui/material/CircularProgress/index.js';\nimport { styled, useTheme, type Theme } from '@mui/material/styles/index.js';\nimport React from 'react';\nimport { Skeleton } from '../../layout/Skeleton';\nimport type { ResolvedLazyImageProps } from './LazyImage.hooks';\nimport { imgPassThrough, resolveLazyImageProps, useLazyImage } from './LazyImage.hooks';\nimport type { LazyImageProps } from './LazyImage.types';\nimport { sheen } from '../../../tokens/ink';\nimport { rem } from '../../../tokens/relative';\nimport { fieldHeight } from '../../../tokens/field-height';\n\nconst ImageContainer = styled(Box)(() => ({\n position: 'relative',\n display: 'inline-block',\n overflow: 'hidden',\n}));\n\nconst StyledImage = styled('img')<{\n fadeIn?: boolean;\n fadeInDuration?: number;\n isLoaded?: boolean;\n}>(({ fadeIn, fadeInDuration = 300, isLoaded }) => ({\n display: 'block',\n maxWidth: '100%',\n height: 'auto',\n opacity: fadeIn ? (isLoaded ? 1 : 0) : 1,\n transition: fadeIn ? `opacity ${fadeInDuration}ms ease-in-out` : 'none',\n}));\n\nconst SpinnerOverlay = styled(Box)(({ theme }) => ({\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%, -50%)',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: sheen(theme, 0.8),\n borderRadius: '50%',\n padding: theme.spacing(1),\n}));\n\nconst FallbackContainer = styled(Box)(({ theme }) => ({\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: theme.palette.action.disabledBackground,\n color: theme.palette.text.secondary,\n width: '100%',\n height: '100%',\n position: 'absolute',\n top: 0,\n left: 0,\n}));\n\ntype Length = number | string | undefined;\n\n/** A length prop as React `style` and MUI's `Skeleton` read it: a number is design px. */\nconst styleLength = (theme: Theme, value: Length): string | undefined =>\n typeof value === 'number' ? rem(theme, value) : value;\n\n/**\n * A width or height above 0 and up to 1 is a fraction of the container's parent, as in `sx`.\n * A negative number is no fraction: it stays a (negative, so invalid) length.\n */\nconst isFraction = (value: Length): value is number =>\n typeof value === 'number' && value > 0 && value <= 1;\n\n/**\n * A length prop as `sx` reads it on a width or height: a number of 1 or less is\n * a fraction of the parent, and that stays so; any other number is design px.\n */\nconst sxLength = (theme: Theme, value: Length): string | undefined =>\n isFraction(value) ? `${value * 100}%` : styleLength(theme, value);\n\n/**\n * A width or height for what is drawn inside the container. The container alone\n * takes a fraction, so everything in it fills it: a percentage here is measured\n * against the container and would stack (FUT-2666). Otherwise the same as `styleLength`.\n */\nconst innerLength = (theme: Theme, value: Length): string | undefined =>\n isFraction(value) ? '100%' : styleLength(theme, value);\n\n/**\n * A width or height with its default. Only an unset or empty size takes it: `0`\n * is a size, which `||` read as unset (FUT-2669), and `sx` reads `''` as `0%`.\n */\nconst orDefault = (value: Length, fallback: number | string): number | string =>\n value === undefined || value === '' ? fallback : value;\n\n/**\n * A width/height as `metrics` and the `ReactNode` `ErrorFallback` read it\n * (FUT-2774 #4): an explicit empty string is normalized to \"as if unset\"\n * rather than mapped to a component-wide default. Unlike `SkeletonIndicator`\n * (a content-less box with nothing else to size by, hence its own deliberate\n * `'100%'`/`'auto'` fallback), these draw the real image or a `ReactNode`\n * fallback — both have their own intrinsic size, so leaving an unset width\n * unset lets it size naturally (`brand-link.tsx`'s logo relies on exactly\n * this: an unset width capped by its own `sx.maxWidth`).\n */\nconst emptyToUnset = (value: Length): Length => (value === '' ? undefined : value);\n\n/** A length, already resolved to CSS — {@link innerLength} or {@link sxLength}. */\ntype LengthResolver = (theme: Theme, value: Length) => string | undefined;\n\n/**\n * Whether a length is a PERCENTAGE (a numeric {@link isFraction} or a `%`\n * string) — copying it onto the OTHER axis re-creates this ticket's own\n * collapse either way (width%/height% measure different boxes; Chromium-confirmed).\n */\nconst isRelativeLength = (value: Length): boolean =>\n isFraction(value) || (typeof value === 'string' && value.trim().endsWith('%'));\n\n/** A resolved axis pair; `aspectRatio` is set when the OTHER axis comes from CSS, not a length. */\ntype AxisPair = { width: string | undefined; height: string | undefined; aspectRatio?: string };\n\n/**\n * The unset-axis DEFAULT for a PLACEHOLDER only (skeleton, `ReactNode`\n * fallback) — never the real image/`metrics` (an unset width sizes it\n * naturally; `brand-link.tsx`'s logo relies on that). Decision (FUT-2805): an\n * unset axis borrows the set one (a square); neither set, both take the\n * theme's field height; both set stays unchanged. `resolve` is `innerLength`\n * (skeleton) or `sxLength` (the container). A RELATIVE single axis\n * ({@link isRelativeLength}) cannot borrow the same way: it keeps its value\n * and squares up via `aspectRatio: '1 / 1'`, the other axis explicitly\n * `'auto'` (never `undefined` — `Skeleton`'s own default, a fixed `40`,\n * would silently win otherwise).\n */\nconst placeholderAxis = (theme: Theme, width: Length, height: Length, resolve: LengthResolver): AxisPair => {\n const w = emptyToUnset(width);\n // `height` always arrives defaulted to the literal `'auto'` when unset\n // (`LAZY_IMAGE_DEFAULTS`) — indistinguishable from an explicit `\"auto\"`,\n // and no distinction is needed: both mean \"no fixed height requested\".\n const h = height === 'auto' ? undefined : emptyToUnset(height);\n\n if (w === undefined && h === undefined) {\n const field = fieldHeight(theme);\n return { width: field, height: field };\n }\n if (h === undefined) {\n if (isRelativeLength(w)) return { width: resolve(theme, w), height: 'auto', aspectRatio: '1 / 1' };\n const resolved = resolve(theme, w);\n return { width: resolved, height: resolved };\n }\n if (w === undefined) {\n if (isRelativeLength(h)) return { width: 'auto', height: resolve(theme, h), aspectRatio: '1 / 1' };\n const resolved = resolve(theme, h);\n return { width: resolved, height: resolved };\n }\n return { width: resolve(theme, w), height: resolve(theme, h) };\n};\n\n/**\n * `ImageContainer`'s own axis: the ordinary `orDefault(...,'auto')` in every\n * state, except a ReactNode `fallback` while showing — the one case where\n * the container is the only thing that CAN fix its own collapse\n * (`FallbackContainer` is `position: absolute`, never feeding shrink-to-fit).\n */\nconst containerAxisFor = (theme: Theme, props: ResolvedLazyImageProps, hasError: boolean): AxisPair => {\n const { width, height, fallback } = props;\n const needsPlaceholderSize = hasError && Boolean(fallback) && typeof fallback !== 'string';\n return needsPlaceholderSize\n ? placeholderAxis(theme, width, height, sxLength)\n : { width: sxLength(theme, orDefault(width, 'auto')), height: sxLength(theme, orDefault(height, 'auto')) };\n};\n\n/** The box the image occupies, as CSS, shared by the real image and every stand-in for it. */\ninterface BoxMetrics {\n width?: string;\n height?: string;\n objectFit: NonNullable<LazyImageProps['objectFit']>;\n objectPosition: string;\n borderRadius?: string;\n}\n\ninterface IndicatorProps {\n props: ResolvedLazyImageProps;\n metrics: BoxMetrics;\n}\n\nconst SkeletonIndicator: React.FC<IndicatorProps> = ({ props }) => {\n const theme = useTheme();\n // FUT-2805: replaces the old literal `'100%'`/`'auto'` fallbacks, which\n // collapsed to 0 in a shrink-to-fit `ImageContainer` with nothing to\n // resolve against.\n const { width, height, aspectRatio } = placeholderAxis(theme, props.width, props.height, innerLength);\n return (\n <Skeleton\n // FUT-2774 #5: `skeletonProps.variant` was typed but never read — the\n // variant was hard-coded regardless of what a caller passed.\n variant={props.skeletonProps.variant ?? 'rectangular'}\n width={width}\n height={height}\n style={aspectRatio ? { aspectRatio } : undefined}\n // FUT-2774 #5: `||` reads a caller's `false` the same as \"unset\", so\n // `skeletonProps.animation={false}` could never turn the animation off.\n animation={props.skeletonProps.animation ?? 'pulse'}\n intensity={props.skeletonProps.intensity}\n borderRadius={styleLength(theme, props.borderRadius)}\n data-testid={`${props['data-testid']}-skeleton`}\n />\n );\n};\n\nconst SpinnerIndicator: React.FC<IndicatorProps> = ({ props }) => {\n const theme = useTheme();\n const { spinnerProps } = props;\n\n return (\n <SpinnerOverlay>\n <CircularProgress\n // FUT-2774 #5: `||` read `spinnerProps.size`/`thickness` of `0` the\n // same as unset — the same class of bug FUT-2669 fixed for\n // `width`/`height`, missed here.\n size={styleLength(theme, spinnerProps.size ?? 40)}\n thickness={spinnerProps.thickness ?? 4}\n sx={{ color: spinnerProps.color || theme.palette.primary.main }}\n data-testid={`${props['data-testid']}-spinner`}\n />\n </SpinnerOverlay>\n );\n};\n\n/**\n * The placeholder sits in the box's flow and gives the box its size: the box's\n * own when one is set, the placeholder's when not. The real image is drawn over\n * it (`OVER_PLACEHOLDER`) until it has faded in. Its load and error are not the\n * image's, so neither reaches the caller; a failing one just retires.\n */\nconst PlaceholderIndicator: React.FC<IndicatorProps & { onError: () => void }> = ({\n props,\n metrics,\n onError,\n}) => {\n if (!props.placeholder) return null;\n\n return (\n <StyledImage\n src={props.placeholder}\n alt={`${props.alt} (loading)`}\n style={metrics}\n decoding={props.decoding}\n loading={props.lazy ? 'lazy' : props.loading}\n onError={onError}\n data-testid={`${props['data-testid']}-placeholder`}\n />\n );\n};\n\nconst LoadingIndicator: React.FC<\n IndicatorProps & { kind: NonNullable<LazyImageProps['loadingState']>; onPlaceholderError: () => void }\n> = ({ kind, onPlaceholderError, ...rest }) => {\n switch (kind) {\n case 'skeleton':\n return <SkeletonIndicator {...rest} />;\n case 'spinner':\n return <SpinnerIndicator {...rest} />;\n case 'placeholder':\n return <PlaceholderIndicator {...rest} onError={onPlaceholderError} />;\n default:\n return null;\n }\n};\n\n/**\n * The real image while the placeholder is up: laid over it and cropped by\n * `objectFit`, so the box never grows to hold both. It takes the flow back\n * when the placeholder goes.\n */\nconst OVER_PLACEHOLDER: React.CSSProperties = {\n position: 'absolute',\n inset: 0,\n width: '100%',\n height: '100%',\n};\n\nconst ErrorFallback: React.FC<IndicatorProps> = ({ props, metrics }) => {\n const theme = useTheme();\n const { alt, fallback, width, height, borderRadius } = props;\n const testId = props['data-testid'];\n\n if (!fallback) return null;\n\n if (typeof fallback === 'string') {\n return (\n <StyledImage\n src={fallback}\n alt={`${alt} (fallback)`}\n style={metrics}\n fadeIn={false}\n isLoaded={true}\n data-testid={`${testId}-fallback`}\n />\n );\n }\n\n return (\n <FallbackContainer\n sx={{\n // FUT-2774 #4 (see `emptyToUnset`); the collapse is fixed by\n // `LazyImage` giving `ImageContainer` ITSELF a size now\n // (`containerAxisFor`) — this `position: absolute` box just fills it.\n width: innerLength(theme, emptyToUnset(width)),\n height: innerLength(theme, orDefault(height, 'auto')),\n borderRadius: styleLength(theme, borderRadius),\n }}\n data-testid={`${testId}-fallback`}\n >\n {fallback}\n </FallbackContainer>\n );\n};\n\n/**\n * LazyImage component with enhanced features for optimized image loading\n * Supports lazy loading, placeholders, error handling, and various loading states\n */\nexport const LazyImage = React.memo<LazyImageProps>(function LazyImage(rawProps) {\n const props = resolveLazyImageProps(rawProps);\n const theme = useTheme();\n const {\n state,\n containerRef,\n effectiveLoadingState,\n handleImageLoad,\n handleImageError,\n handlePlaceholderError,\n showImage,\n showLoading,\n showPlaceholder,\n } = useLazyImage(props);\n\n const { width, height, borderRadius, alt } = props;\n const testId = props['data-testid'];\n const metrics: BoxMetrics = {\n // FUT-2774 #4 (see `emptyToUnset`): `metrics` also sizes the REAL `<img>`,\n // where an unset width means \"the image's own intrinsic size\" —\n // `brand-link.tsx`'s logo relies on exactly that. `height`'s `'auto'`\n // fallback has no such live case to protect: a percentage height against\n // an auto-height containing block computes to `auto` regardless, so\n // sharing `SkeletonIndicator`'s fallback changes nothing observable.\n width: innerLength(theme, emptyToUnset(width)),\n height: innerLength(theme, orDefault(height, 'auto')),\n objectFit: props.objectFit,\n objectPosition: props.objectPosition,\n borderRadius: styleLength(theme, borderRadius),\n };\n\n const containerAxis = containerAxisFor(theme, props, state.hasError);\n\n return (\n <ImageContainer\n ref={containerRef}\n className={props.className}\n sx={{\n width: containerAxis.width,\n height: containerAxis.height,\n aspectRatio: containerAxis.aspectRatio,\n // The same px length the image gets (`metrics`): in `sx` a bare number\n // would be a multiple of `shape.borderRadius`, and this box clips (FUT-2656).\n borderRadius: metrics.borderRadius,\n }}\n data-testid={testId}\n >\n {showLoading && (\n <LoadingIndicator\n kind={effectiveLoadingState}\n props={props}\n metrics={metrics}\n onPlaceholderError={handlePlaceholderError}\n />\n )}\n\n {showImage && (\n <StyledImage\n src={state.currentSrc || undefined}\n alt={alt}\n onLoad={handleImageLoad}\n onError={handleImageError}\n fadeIn={props.fadeIn}\n fadeInDuration={props.fadeInDuration}\n isLoaded={!state.isLoading}\n decoding={props.decoding}\n loading={props.lazy ? 'lazy' : props.loading}\n style={{ ...metrics, ...props.sx, ...(showPlaceholder && OVER_PLACEHOLDER) }}\n aria-label={props['aria-label'] || alt}\n aria-describedby={props['aria-describedby']}\n role={props.role}\n data-testid={`${testId}-img`}\n {...imgPassThrough(props)}\n />\n )}\n\n {state.hasError && <ErrorFallback props={props} metrics={metrics} />}\n </ImageContainer>\n );\n});\n\nLazyImage.displayName = 'LazyImage';\n"],"mappings":"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","names":["LazyImage"]}
1
+ {"version":3,"sources":["../src/components/data-display/LazyImage/LazyImage.tsx"],"sourcesContent":["import Box from '@mui/material/Box/index.js';\nimport CircularProgress from '@mui/material/CircularProgress/index.js';\nimport { styled, useTheme, type Theme } from '@mui/material/styles/index.js';\nimport React from 'react';\nimport { Skeleton } from '../../layout/Skeleton';\nimport type { ResolvedLazyImageProps } from './LazyImage.hooks';\nimport { imgPassThrough, resolveLazyImageProps, useLazyImage } from './LazyImage.hooks';\nimport type { LazyImageProps } from './LazyImage.types';\nimport { sheen } from '../../../tokens/ink';\nimport { rem } from '../../../tokens/relative';\nimport { fieldHeight } from '../../../tokens/field-height';\n\nconst ImageContainer = styled(Box)(() => ({\n position: 'relative',\n display: 'inline-block',\n overflow: 'hidden',\n}));\n\nconst StyledImage = styled('img')<{\n fadeIn?: boolean;\n fadeInDuration?: number;\n isLoaded?: boolean;\n}>(({ fadeIn, fadeInDuration = 300, isLoaded }) => ({\n display: 'block',\n maxWidth: '100%',\n height: 'auto',\n opacity: fadeIn ? (isLoaded ? 1 : 0) : 1,\n transition: fadeIn ? `opacity ${fadeInDuration}ms ease-in-out` : 'none',\n}));\n\nconst SpinnerOverlay = styled(Box)(({ theme }) => ({\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%, -50%)',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: sheen(theme, 0.8),\n borderRadius: '50%',\n padding: theme.spacing(1),\n}));\n\nconst FallbackContainer = styled(Box)(({ theme }) => ({\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: theme.palette.action.disabledBackground,\n color: theme.palette.text.secondary,\n width: '100%',\n height: '100%',\n position: 'absolute',\n top: 0,\n left: 0,\n}));\n\ntype Length = number | string | undefined;\n\n/** A length prop as React `style` and MUI's `Skeleton` read it: a number is design px. */\nconst styleLength = (theme: Theme, value: Length): string | undefined =>\n typeof value === 'number' ? rem(theme, value) : value;\n\n/**\n * A width or height above 0 and up to 1 is a fraction of the container's parent, as in `sx`.\n * A negative number is no fraction: it stays a (negative, so invalid) length.\n */\nconst isFraction = (value: Length): value is number =>\n typeof value === 'number' && value > 0 && value <= 1;\n\n/**\n * A length prop as `sx` reads it on a width or height: a number of 1 or less is\n * a fraction of the parent, and that stays so; any other number is design px.\n */\nconst sxLength = (theme: Theme, value: Length): string | undefined =>\n isFraction(value) ? `${value * 100}%` : styleLength(theme, value);\n\n/**\n * A width or height for what is drawn inside the container. The container alone\n * takes a fraction, so everything in it fills it: a percentage here is measured\n * against the container and would stack (FUT-2666). Otherwise the same as `styleLength`.\n */\nconst innerLength = (theme: Theme, value: Length): string | undefined =>\n isFraction(value) ? '100%' : styleLength(theme, value);\n\n/**\n * A width or height with its default. Only an unset or empty size takes it: `0`\n * is a size, which `||` read as unset (FUT-2669), and `sx` reads `''` as `0%`.\n */\nconst orDefault = (value: Length, fallback: number | string): number | string =>\n value === undefined || value === '' ? fallback : value;\n\n/**\n * A width/height as `metrics` and the `ReactNode` `ErrorFallback` read it\n * (FUT-2774 #4): an explicit empty string is normalized to \"as if unset\"\n * rather than mapped to a component-wide default. Unlike `SkeletonIndicator`\n * (a content-less box with nothing else to size by, hence its own deliberate\n * `'100%'`/`'auto'` fallback), these draw the real image or a `ReactNode`\n * fallback — both have their own intrinsic size, so leaving an unset width\n * unset lets it size naturally (`brand-link.tsx`'s logo relies on exactly\n * this: an unset width capped by its own `sx.maxWidth`).\n */\nconst emptyToUnset = (value: Length): Length => (value === '' ? undefined : value);\n\n/** A length, already resolved to CSS — {@link innerLength} or {@link sxLength}. */\ntype LengthResolver = (theme: Theme, value: Length) => string | undefined;\n\n// A number + `%`, a (small/large/dynamic) viewport unit, or a container-query\n// unit, anywhere in a string, even nested in `calc()`/`min()`/`max()`/`clamp()`.\nconst RELATIVE_LENGTH_UNIT = /[\\d.]+(?:%|[dsl]?v(?:w|h|i|b|min|max)|cq(?:w|h|i|b|min|max))(?![a-zA-Z])/;\n// RELATIVE: {@link isFraction}, or that unit anywhere — borrowing it onto the\n// OTHER axis re-creates this collapse (all these units square, `LazyImage.md`).\nconst isRelativeLength = (value: Length): boolean =>\n isFraction(value) || (typeof value === 'string' && RELATIVE_LENGTH_UNIT.test(value));\n\n/** A resolved axis pair; `aspectRatio` is set when the OTHER axis comes from CSS, not a length. */\ntype AxisPair = { width: string | undefined; height: string | undefined; aspectRatio?: string };\n\n/**\n * The unset-axis DEFAULT for a PLACEHOLDER only (skeleton, `ReactNode`\n * fallback) — never the real image/`metrics` (an unset width sizes it\n * naturally; `brand-link.tsx`'s logo relies on that). Decision (FUT-2805): an\n * unset axis borrows the set one (a square); neither set, both take the\n * theme's field height; both set stays unchanged. `resolve` is `innerLength`\n * (skeleton) or `sxLength` (the container). A RELATIVE single axis\n * ({@link isRelativeLength}) cannot borrow the same way: it keeps its value\n * and squares up via `aspectRatio: '1 / 1'`, the other axis explicitly\n * `'auto'` (never `undefined` — `Skeleton`'s own default, a fixed `40`,\n * would silently win otherwise).\n */\nconst placeholderAxis = (theme: Theme, width: Length, height: Length, resolve: LengthResolver): AxisPair => {\n const w = emptyToUnset(width);\n // `height` always arrives defaulted to the literal `'auto'` when unset\n // (`LAZY_IMAGE_DEFAULTS`) — indistinguishable from an explicit `\"auto\"`,\n // and no distinction is needed: both mean \"no fixed height requested\".\n const h = height === 'auto' ? undefined : emptyToUnset(height);\n\n if (w === undefined && h === undefined) {\n const field = fieldHeight(theme);\n return { width: field, height: field };\n }\n if (h === undefined) {\n if (isRelativeLength(w)) return { width: resolve(theme, w), height: 'auto', aspectRatio: '1 / 1' };\n const resolved = resolve(theme, w);\n return { width: resolved, height: resolved };\n }\n if (w === undefined) {\n if (isRelativeLength(h)) return { width: 'auto', height: resolve(theme, h), aspectRatio: '1 / 1' };\n const resolved = resolve(theme, h);\n return { width: resolved, height: resolved };\n }\n return { width: resolve(theme, w), height: resolve(theme, h) };\n};\n\n/**\n * `ImageContainer`'s own axis: the ordinary `orDefault(...,'auto')` in every\n * state, except a ReactNode `fallback` while showing — the one case where\n * the container is the only thing that CAN fix its own collapse\n * (`FallbackContainer` is `position: absolute`, never feeding shrink-to-fit).\n */\nconst containerAxisFor = (theme: Theme, props: ResolvedLazyImageProps, hasError: boolean): AxisPair => {\n const { width, height, fallback } = props;\n const needsPlaceholderSize = hasError && Boolean(fallback) && typeof fallback !== 'string';\n return needsPlaceholderSize\n ? placeholderAxis(theme, width, height, sxLength)\n : { width: sxLength(theme, orDefault(width, 'auto')), height: sxLength(theme, orDefault(height, 'auto')) };\n};\n\n/** The box the image occupies, as CSS, shared by the real image and every stand-in for it. */\ninterface BoxMetrics {\n width?: string;\n height?: string;\n objectFit: NonNullable<LazyImageProps['objectFit']>;\n objectPosition: string;\n borderRadius?: string;\n}\n\ninterface IndicatorProps {\n props: ResolvedLazyImageProps;\n metrics: BoxMetrics;\n}\n\nconst SkeletonIndicator: React.FC<IndicatorProps> = ({ props }) => {\n const theme = useTheme();\n // FUT-2805: replaces the old literal `'100%'`/`'auto'` fallbacks, which\n // collapsed to 0 in a shrink-to-fit `ImageContainer` with nothing to\n // resolve against.\n const { width, height, aspectRatio } = placeholderAxis(theme, props.width, props.height, innerLength);\n return (\n <Skeleton\n // FUT-2774 #5: `skeletonProps.variant` was typed but never read — the\n // variant was hard-coded regardless of what a caller passed.\n variant={props.skeletonProps.variant ?? 'rectangular'}\n width={width}\n height={height}\n style={aspectRatio ? { aspectRatio } : undefined}\n // FUT-2774 #5: `||` reads a caller's `false` the same as \"unset\", so\n // `skeletonProps.animation={false}` could never turn the animation off.\n animation={props.skeletonProps.animation ?? 'pulse'}\n intensity={props.skeletonProps.intensity}\n borderRadius={styleLength(theme, props.borderRadius)}\n data-testid={`${props['data-testid']}-skeleton`}\n />\n );\n};\n\nconst SpinnerIndicator: React.FC<IndicatorProps> = ({ props }) => {\n const theme = useTheme();\n const { spinnerProps } = props;\n\n return (\n <SpinnerOverlay>\n <CircularProgress\n // FUT-2774 #5: `||` read `spinnerProps.size`/`thickness` of `0` the\n // same as unset — the same class of bug FUT-2669 fixed for\n // `width`/`height`, missed here.\n size={styleLength(theme, spinnerProps.size ?? 40)}\n thickness={spinnerProps.thickness ?? 4}\n sx={{ color: spinnerProps.color || theme.palette.primary.main }}\n data-testid={`${props['data-testid']}-spinner`}\n />\n </SpinnerOverlay>\n );\n};\n\n/**\n * The placeholder sits in the box's flow and gives the box its size: the box's\n * own when one is set, the placeholder's when not. The real image is drawn over\n * it (`OVER_PLACEHOLDER`) until it has faded in. Its load and error are not the\n * image's, so neither reaches the caller; a failing one just retires.\n */\nconst PlaceholderIndicator: React.FC<IndicatorProps & { onError: () => void }> = ({\n props,\n metrics,\n onError,\n}) => {\n if (!props.placeholder) return null;\n\n return (\n <StyledImage\n src={props.placeholder}\n alt={`${props.alt} (loading)`}\n style={metrics}\n decoding={props.decoding}\n loading={props.lazy ? 'lazy' : props.loading}\n onError={onError}\n data-testid={`${props['data-testid']}-placeholder`}\n />\n );\n};\n\nconst LoadingIndicator: React.FC<\n IndicatorProps & { kind: NonNullable<LazyImageProps['loadingState']>; onPlaceholderError: () => void }\n> = ({ kind, onPlaceholderError, ...rest }) => {\n switch (kind) {\n case 'skeleton':\n return <SkeletonIndicator {...rest} />;\n case 'spinner':\n return <SpinnerIndicator {...rest} />;\n case 'placeholder':\n return <PlaceholderIndicator {...rest} onError={onPlaceholderError} />;\n default:\n return null;\n }\n};\n\n/**\n * The real image while the placeholder is up: laid over it and cropped by\n * `objectFit`, so the box never grows to hold both. It takes the flow back\n * when the placeholder goes.\n */\nconst OVER_PLACEHOLDER: React.CSSProperties = {\n position: 'absolute',\n inset: 0,\n width: '100%',\n height: '100%',\n};\n\nconst ErrorFallback: React.FC<IndicatorProps> = ({ props, metrics }) => {\n const theme = useTheme();\n const { alt, fallback, width, height, borderRadius } = props;\n const testId = props['data-testid'];\n\n if (!fallback) return null;\n\n if (typeof fallback === 'string') {\n return (\n <StyledImage\n src={fallback}\n alt={`${alt} (fallback)`}\n style={metrics}\n fadeIn={false}\n isLoaded={true}\n data-testid={`${testId}-fallback`}\n />\n );\n }\n\n return (\n <FallbackContainer\n sx={{\n // FUT-2774 #4 (see `emptyToUnset`); the collapse is fixed by\n // `LazyImage` giving `ImageContainer` ITSELF a size now\n // (`containerAxisFor`) — this `position: absolute` box just fills it.\n width: innerLength(theme, emptyToUnset(width)),\n height: innerLength(theme, orDefault(height, 'auto')),\n borderRadius: styleLength(theme, borderRadius),\n }}\n data-testid={`${testId}-fallback`}\n >\n {fallback}\n </FallbackContainer>\n );\n};\n\n/**\n * LazyImage component with enhanced features for optimized image loading\n * Supports lazy loading, placeholders, error handling, and various loading states\n */\nexport const LazyImage = React.memo<LazyImageProps>(function LazyImage(rawProps) {\n const props = resolveLazyImageProps(rawProps);\n const theme = useTheme();\n const {\n state,\n containerRef,\n effectiveLoadingState,\n handleImageLoad,\n handleImageError,\n handlePlaceholderError,\n showImage,\n showLoading,\n showPlaceholder,\n } = useLazyImage(props);\n\n const { width, height, borderRadius, alt } = props;\n const testId = props['data-testid'];\n const metrics: BoxMetrics = {\n // FUT-2774 #4 (see `emptyToUnset`): `metrics` also sizes the REAL `<img>`,\n // where an unset width means \"the image's own intrinsic size\" —\n // `brand-link.tsx`'s logo relies on exactly that. `height`'s `'auto'`\n // fallback has no such live case to protect: a percentage height against\n // an auto-height containing block computes to `auto` regardless, so\n // sharing `SkeletonIndicator`'s fallback changes nothing observable.\n width: innerLength(theme, emptyToUnset(width)),\n height: innerLength(theme, orDefault(height, 'auto')),\n objectFit: props.objectFit,\n objectPosition: props.objectPosition,\n borderRadius: styleLength(theme, borderRadius),\n };\n\n const containerAxis = containerAxisFor(theme, props, state.hasError);\n\n return (\n <ImageContainer\n ref={containerRef}\n className={props.className}\n sx={{\n width: containerAxis.width,\n height: containerAxis.height,\n aspectRatio: containerAxis.aspectRatio,\n // The same px length the image gets (`metrics`): in `sx` a bare number\n // would be a multiple of `shape.borderRadius`, and this box clips (FUT-2656).\n borderRadius: metrics.borderRadius,\n }}\n data-testid={testId}\n >\n {showLoading && (\n <LoadingIndicator\n kind={effectiveLoadingState}\n props={props}\n metrics={metrics}\n onPlaceholderError={handlePlaceholderError}\n />\n )}\n\n {showImage && (\n <StyledImage\n src={state.currentSrc || undefined}\n alt={alt}\n onLoad={handleImageLoad}\n onError={handleImageError}\n fadeIn={props.fadeIn}\n fadeInDuration={props.fadeInDuration}\n isLoaded={!state.isLoading}\n decoding={props.decoding}\n loading={props.lazy ? 'lazy' : props.loading}\n style={{ ...metrics, ...props.sx, ...(showPlaceholder && OVER_PLACEHOLDER) }}\n aria-label={props['aria-label'] || alt}\n aria-describedby={props['aria-describedby']}\n role={props.role}\n data-testid={`${testId}-img`}\n {...imgPassThrough(props)}\n />\n )}\n\n {state.hasError && <ErrorFallback props={props} metrics={metrics} />}\n </ImageContainer>\n );\n});\n\nLazyImage.displayName = 'LazyImage';\n"],"mappings":"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","names":["LazyImage"]}
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-6DPAWXZ3.js";
7
7
  import {
8
8
  Button
9
- } from "./chunk-K6LNHHSH.js";
9
+ } from "./chunk-GC5XJ7YB.js";
10
10
  import {
11
11
  Text
12
12
  } from "./chunk-YZHX2HTC.js";
@@ -297,4 +297,4 @@ export {
297
297
  ViewHeader,
298
298
  ViewFooter
299
299
  };
300
- //# sourceMappingURL=chunk-33NBMNTB.js.map
300
+ //# sourceMappingURL=chunk-CF25EQFU.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  RAIL_GAP_PX
3
- } from "./chunk-YRACC6BB.js";
3
+ } from "./chunk-GWVJZ7SX.js";
4
4
  import {
5
5
  DescriptionItem
6
6
  } from "./chunk-DSHM7VN6.js";
@@ -226,4 +226,4 @@ export {
226
226
  ListCardActions,
227
227
  ListCardTail
228
228
  };
229
- //# sourceMappingURL=chunk-WDAEYLT5.js.map
229
+ //# sourceMappingURL=chunk-D6ROYZ6H.js.map
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  Chart
3
- } from "./chunk-5NFQKL7C.js";
3
+ } from "./chunk-H6K3AP42.js";
4
4
  import {
5
5
  CHART_SEMANTIC_COLORS,
6
6
  specToChartProps
7
- } from "./chunk-GOWBYHYW.js";
7
+ } from "./chunk-R6SBP5M5.js";
8
8
  import {
9
9
  accentFor
10
- } from "./chunk-QFJ3JXXP.js";
10
+ } from "./chunk-3IPPMWUA.js";
11
11
 
12
12
  // src/components/data-display/Chart/SpecChart.tsx
13
13
  import { useTheme } from "@mui/material/styles/index.js";
@@ -46,4 +46,4 @@ var SpecChart = ({
46
46
  export {
47
47
  SpecChart
48
48
  };
49
- //# sourceMappingURL=chunk-ZVJSY2OV.js.map
49
+ //# sourceMappingURL=chunk-EF5XUS44.js.map