@12-apps/ui 6.86.0 → 6.86.2

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 (376) hide show
  1. package/dist/_internal/components/data-display/Alert/Alert.js +2 -2
  2. package/dist/_internal/components/data-display/AsyncStateContainer/AsyncStateContainer.js +3 -3
  3. package/dist/_internal/components/data-display/Avatar/Avatar.js +2 -2
  4. package/dist/_internal/components/data-display/CardKit/CardKebab.js +3 -3
  5. package/dist/_internal/components/data-display/CardKit/card-actions-context.js +3 -3
  6. package/dist/_internal/components/data-display/CardKit/use-remove-confirm.js +7 -7
  7. package/dist/_internal/components/data-display/CardKit/use-row-confirm.js +3 -3
  8. package/dist/_internal/components/data-display/Carousel/Carousel.js +3 -3
  9. package/dist/_internal/components/data-display/Chart/Chart.js +4 -4
  10. package/dist/_internal/components/data-display/Chart/SpecChart.js +5 -5
  11. package/dist/_internal/components/data-display/Chart/chart-context.js +2 -2
  12. package/dist/_internal/components/data-display/Chart/chart-renderers.js +3 -3
  13. package/dist/_internal/components/data-display/Chip/Chip.js +3 -3
  14. package/dist/_internal/components/data-display/Chip/Chip.styles.js +2 -2
  15. package/dist/_internal/components/data-display/DataGrid/DataGrid.js +3 -3
  16. package/dist/_internal/components/data-display/DataViews/DataViewsGrid.js +36 -36
  17. package/dist/_internal/components/data-display/DataViews/DataViewsTableBase.js +46 -46
  18. package/dist/_internal/components/data-display/DataViews/DeleteViewDialog.js +3 -3
  19. package/dist/_internal/components/data-display/DataViews/ManageViewsDialog.js +4 -4
  20. package/dist/_internal/components/data-display/DataViews/SaveViewModal.js +3 -3
  21. package/dist/_internal/components/data-display/DataViews/base-list-card-geometry.js +3 -3
  22. package/dist/_internal/components/data-display/DataViews/base-list-card-layout.js +3 -3
  23. package/dist/_internal/components/data-display/DataViews/base-list-card-slots.js +2 -2
  24. package/dist/_internal/components/data-display/DataViews/base-list-card.js +4 -4
  25. package/dist/_internal/components/data-display/DataViews/data-views-card-body.js +4 -4
  26. package/dist/_internal/components/data-display/DataViews/data-views-columns.js +4 -4
  27. package/dist/_internal/components/data-display/DataViews/data-views-display-panel.js +4 -4
  28. package/dist/_internal/components/data-display/DataViews/data-views-empty.js +3 -3
  29. package/dist/_internal/components/data-display/DataViews/data-views-export.js +3 -3
  30. package/dist/_internal/components/data-display/DataViews/data-views-filter-panel.js +4 -4
  31. package/dist/_internal/components/data-display/DataViews/data-views-grid-bodies.js +11 -11
  32. package/dist/_internal/components/data-display/DataViews/data-views-grid-helpers.js +3 -3
  33. package/dist/_internal/components/data-display/DataViews/data-views-grid-parts.js +30 -30
  34. package/dist/_internal/components/data-display/DataViews/data-views-inline-bar.js +9 -9
  35. package/dist/_internal/components/data-display/DataViews/data-views-more-fields.js +5 -5
  36. package/dist/_internal/components/data-display/DataViews/data-views-more-filters.js +8 -8
  37. package/dist/_internal/components/data-display/DataViews/data-views-range-pill.js +3 -3
  38. package/dist/_internal/components/data-display/DataViews/data-views-scope-tabs.js +2 -2
  39. package/dist/_internal/components/data-display/DataViews/data-views-select-all-strip.js +3 -3
  40. package/dist/_internal/components/data-display/DataViews/data-views-shell-toolbar.js +8 -8
  41. package/dist/_internal/components/data-display/DataViews/data-views-table-parts.js +8 -8
  42. package/dist/_internal/components/data-display/DataViews/data-views-toolbar.js +7 -7
  43. package/dist/_internal/components/data-display/DataViews/data-views-view-nav.js +3 -3
  44. package/dist/_internal/components/data-display/DataViews/list-card-rails.js +2 -2
  45. package/dist/_internal/components/data-display/DataViews/use-data-views-state.js +7 -7
  46. package/dist/_internal/components/data-display/EmptyState/EmptyState.js +2 -2
  47. package/dist/_internal/components/data-display/FleetMap/FleetBody.js +11 -11
  48. package/dist/_internal/components/data-display/FleetMap/FleetCanvas.js +10 -10
  49. package/dist/_internal/components/data-display/FleetMap/FleetMap.js +14 -14
  50. package/dist/_internal/components/data-display/InteractiveTooltip/InteractiveTooltip.js +2 -2
  51. package/dist/_internal/components/data-display/Lightbox/Lightbox.js +7 -7
  52. package/dist/_internal/components/data-display/Lightbox/LightboxControls.js +2 -2
  53. package/dist/_internal/components/data-display/Lightbox/LightboxOverlay.js +3 -3
  54. package/dist/_internal/components/data-display/Lightbox/LightboxThumbnails.js +2 -2
  55. package/dist/_internal/components/data-display/MapPreview/MapDecorations.js +2 -2
  56. package/dist/_internal/components/data-display/MapPreview/MapLayers.js +2 -2
  57. package/dist/_internal/components/data-display/MapPreview/MapPreview.hooks.js +2 -2
  58. package/dist/_internal/components/data-display/MapPreview/MapPreview.js +9 -9
  59. package/dist/_internal/components/data-display/MapPreview/MapTiles.js +2 -2
  60. package/dist/_internal/components/data-display/MapPreview/StaticMapView.js +4 -4
  61. package/dist/_internal/components/data-display/MapPreview/useMapPreview.js +3 -3
  62. package/dist/_internal/components/data-display/RegionMap/RegionMap.js +4 -3
  63. package/dist/_internal/components/data-display/RegionMap/RegionMap.labels.js +12 -0
  64. package/dist/_internal/components/data-display/RegionMap/RegionMap.labels.js.map +1 -0
  65. package/dist/_internal/components/data-display/RegionMap/RegionMapDrawing.js +2 -1
  66. package/dist/_internal/components/data-display/SectionOnboarding/SectionOnboarding.js +3 -3
  67. package/dist/_internal/components/data-display/Sheet/Sheet.js +2 -2
  68. package/dist/_internal/components/data-display/Table/Table.js +2 -2
  69. package/dist/_internal/components/data-display/index.js +51 -50
  70. package/dist/_internal/components/feedback/ConfirmAction/ConfirmButton.js +3 -3
  71. package/dist/_internal/components/feedback/Modal/Modal.js +2 -2
  72. package/dist/_internal/components/feedback/NotificationStatusNotice/NotificationStatusNotice.js +5 -5
  73. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.js +6 -6
  74. package/dist/_internal/components/feedback/SequenceResolver/SequenceResolver.parts.js +5 -5
  75. package/dist/_internal/components/feedback/index.js +10 -10
  76. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocomplete.js +4 -4
  77. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocompleteField.js +2 -2
  78. package/dist/_internal/components/form/AddressAutocomplete/AddressSuggestionsPaper.js +1 -1
  79. package/dist/_internal/components/form/Autocomplete/Autocomplete.js +1 -1
  80. package/dist/_internal/components/form/Button/Button.js +2 -2
  81. package/dist/_internal/components/form/Calendar/Calendar.band.js +18 -0
  82. package/dist/_internal/components/form/Calendar/Calendar.band.js.map +1 -0
  83. package/dist/_internal/components/form/Calendar/Calendar.js +7 -5
  84. package/dist/_internal/components/form/Calendar/CalendarDay.js +4 -1
  85. package/dist/_internal/components/form/Calendar/CalendarDayCell.js +4 -2
  86. package/dist/_internal/components/form/Calendar/CalendarMonth.js +5 -3
  87. package/dist/_internal/components/form/Calendar/CalendarSelectorsMonth.js +6 -4
  88. package/dist/_internal/components/form/DateRangePicker/DateRangePicker.js +7 -6
  89. package/dist/_internal/components/form/index.js +14 -13
  90. package/dist/_internal/components/form/total-form/SubmitButton.js +3 -3
  91. package/dist/_internal/components/index.js +84 -82
  92. package/dist/_internal/components/layout/SettingCard/SettingCard.js +10 -10
  93. package/dist/_internal/components/layout/SettingCard/SettingCard.parts.js +6 -6
  94. package/dist/_internal/components/layout/SettingCard/SettingCard.summary.js +9 -9
  95. package/dist/_internal/components/layout/SettingCard/SettingGrid.js +7 -7
  96. package/dist/_internal/components/layout/SettingCard/SettingGroup.js +11 -11
  97. package/dist/_internal/components/layout/SettingCard/SettingSwitch.js +10 -10
  98. package/dist/_internal/components/layout/SettingCard/SettingToggle.js +11 -11
  99. package/dist/_internal/components/layout/index.js +14 -14
  100. package/dist/_internal/components/navigation/AppHeader/AppHeader.details.js +5 -5
  101. package/dist/_internal/components/navigation/CommandPalette/CommandPalette.helpers.js +2 -2
  102. package/dist/_internal/components/navigation/CommandPalette/CommandPalette.hooks.js +3 -3
  103. package/dist/_internal/components/navigation/CommandPalette/CommandPalette.js +5 -5
  104. package/dist/_internal/components/navigation/CommandPalette/CommandPaletteResults.js +2 -2
  105. package/dist/_internal/components/navigation/index.js +10 -10
  106. package/dist/_internal/en-US.navigation.js +1 -1
  107. package/dist/_internal/pt-BR.navigation.js +1 -1
  108. package/dist/_internal/social-login-button/social-login-button.js +3 -3
  109. package/dist/_internal/user-avatar/user-avatar.js +5 -5
  110. package/dist/charts.js +5 -5
  111. package/dist/{chunk-OPY2AGAU.js → chunk-2IHUFUTO.js} +2 -2
  112. package/dist/{chunk-33AVAYCR.js → chunk-2L6TANRY.js} +5 -5
  113. package/dist/{chunk-ENJOBJPK.js → chunk-2MT6VSS2.js} +2 -2
  114. package/dist/{chunk-QADTI63U.js → chunk-3JZ3KEQQ.js} +2 -2
  115. package/dist/{chunk-EOIRU62W.js → chunk-42D7KBDH.js} +2 -2
  116. package/dist/{chunk-LXIPBHNJ.js → chunk-42TOCPXB.js} +5 -5
  117. package/dist/{chunk-IFX5KP65.js → chunk-437HQPUN.js} +4 -4
  118. package/dist/{chunk-VYQZ5U3N.js → chunk-4NG3LTRX.js} +2 -2
  119. package/dist/{chunk-POUNFTG3.js → chunk-4OUJ4ZMK.js} +9 -3
  120. package/dist/chunk-4OUJ4ZMK.js.map +1 -0
  121. package/dist/{chunk-7YJYIMWP.js → chunk-4QR7LM5F.js} +6 -6
  122. package/dist/{chunk-KR4TN3OF.js → chunk-4ZQQUICR.js} +2 -2
  123. package/dist/{chunk-IYDXKLCE.js → chunk-5C3JSXBK.js} +2 -2
  124. package/dist/{chunk-T6QVM5Q5.js → chunk-5IMI2XNU.js} +6 -6
  125. package/dist/{chunk-JKIKHWD2.js → chunk-5NT2M2JI.js} +4 -4
  126. package/dist/{chunk-Q7XLTN2D.js → chunk-5VKHJ7PI.js} +3 -3
  127. package/dist/{chunk-BP3ZKIPE.js → chunk-64UNVW6D.js} +4 -4
  128. package/dist/{chunk-SSCEX5NY.js → chunk-656DBMWT.js} +3 -2
  129. package/dist/{chunk-SSCEX5NY.js.map → chunk-656DBMWT.js.map} +1 -1
  130. package/dist/{chunk-FCLON3MO.js → chunk-6HXNFNOB.js} +3 -3
  131. package/dist/{chunk-3OL2TSEJ.js → chunk-6IRZZYHF.js} +5 -5
  132. package/dist/{chunk-ZLVRCQPG.js → chunk-6X7PE5DH.js} +6 -6
  133. package/dist/{chunk-ABRVOPC2.js → chunk-7FFY4LJY.js} +2 -2
  134. package/dist/{chunk-U3HGQHEO.js → chunk-7WE432RQ.js} +13 -13
  135. package/dist/{chunk-VHGHF537.js → chunk-A3DDEKLV.js} +3 -3
  136. package/dist/{chunk-A63WU4UZ.js → chunk-AKE6KVQG.js} +70 -41
  137. package/dist/chunk-AKE6KVQG.js.map +1 -0
  138. package/dist/{chunk-KRPDBVUB.js → chunk-APSEM5AA.js} +3 -3
  139. package/dist/{chunk-5ZC7CNU4.js → chunk-AQPPSR4P.js} +2 -2
  140. package/dist/{chunk-AWUFS2ZC.js → chunk-BAC2PBOS.js} +6 -6
  141. package/dist/{chunk-OA6T2ME3.js → chunk-BLZDSCIZ.js} +4 -4
  142. package/dist/{chunk-OQN2FHEL.js → chunk-C4NSEUT5.js} +3 -3
  143. package/dist/{chunk-IEAPXS57.js → chunk-CJLZHW2Z.js} +2 -2
  144. package/dist/{chunk-I7JUAHUO.js → chunk-DILDC77M.js} +3 -3
  145. package/dist/{chunk-U4WAAZXJ.js → chunk-DVX4HDNP.js} +2 -2
  146. package/dist/{chunk-UTUYXH72.js → chunk-E5QOT7KK.js} +8 -8
  147. package/dist/{chunk-V6KQ5R4T.js → chunk-EAFZ3RDY.js} +5 -5
  148. package/dist/{chunk-C5RQBTRZ.js → chunk-EIOGJBJ5.js} +25 -5
  149. package/dist/chunk-EIOGJBJ5.js.map +1 -0
  150. package/dist/{chunk-CESGZRVQ.js → chunk-EMSMJRP3.js} +4 -4
  151. package/dist/{chunk-ULAZDF6D.js → chunk-FF22F7FA.js} +2 -2
  152. package/dist/{chunk-Z5WUSI47.js → chunk-G3JFESKD.js} +6 -6
  153. package/dist/{chunk-CARUHKZW.js → chunk-G4W6HR6Q.js} +9 -9
  154. package/dist/{chunk-KYTFGW4R.js → chunk-GMIMHQ6H.js} +2 -2
  155. package/dist/chunk-H2UUMZQR.js +74 -0
  156. package/dist/chunk-H2UUMZQR.js.map +1 -0
  157. package/dist/{chunk-UT545JBQ.js → chunk-HC6OZ7QK.js} +3 -3
  158. package/dist/{chunk-MVNFUIJS.js → chunk-HOPRZEBM.js} +4 -4
  159. package/dist/{chunk-Z445LLFN.js → chunk-I44XL4Z4.js} +7 -6
  160. package/dist/chunk-I44XL4Z4.js.map +1 -0
  161. package/dist/{chunk-FZUAB2KS.js → chunk-INFBO356.js} +2 -2
  162. package/dist/{chunk-XW44IFYE.js → chunk-IWMAFTXP.js} +2 -2
  163. package/dist/{chunk-2DDCRHJE.js → chunk-IX5ADKII.js} +2 -2
  164. package/dist/{chunk-N5OEDOJT.js → chunk-J2KVF5GO.js} +3 -3
  165. package/dist/chunk-J3AWGTJY.js +29 -0
  166. package/dist/chunk-J3AWGTJY.js.map +1 -0
  167. package/dist/{chunk-TZC6KIK2.js → chunk-JG733RMP.js} +5 -5
  168. package/dist/{chunk-PGYYDSNX.js → chunk-JH2XLVWM.js} +2 -2
  169. package/dist/{chunk-XNMU32XC.js → chunk-JHW35C6W.js} +5 -5
  170. package/dist/{chunk-4V37DAMA.js → chunk-JRBSTOMA.js} +3 -3
  171. package/dist/{chunk-K6VEN5VN.js → chunk-K3PMMW23.js} +4 -4
  172. package/dist/{chunk-JVTZ7FWR.js → chunk-K6FCSB6T.js} +7 -7
  173. package/dist/{chunk-FZEDQNUN.js → chunk-K7IDOTSU.js} +3 -3
  174. package/dist/{chunk-XMWTVDQN.js → chunk-LH43GKP2.js} +17 -17
  175. package/dist/{chunk-YHPSPFU5.js → chunk-LIN4A2BW.js} +4 -4
  176. package/dist/{chunk-LXMFHD7M.js → chunk-LTSVYILY.js} +4 -4
  177. package/dist/{chunk-QJLOWBFW.js → chunk-LXTNWQWF.js} +2 -2
  178. package/dist/{chunk-HI7JPDD6.js → chunk-M3XJVD5G.js} +2 -2
  179. package/dist/{chunk-FQMLTCXT.js → chunk-MAHY7PK3.js} +4 -4
  180. package/dist/{chunk-NTRWUDP6.js → chunk-MKVDHR3B.js} +2 -2
  181. package/dist/{chunk-C74PDNTF.js → chunk-NKEFH3RS.js} +4 -4
  182. package/dist/{chunk-T6YTDEY4.js → chunk-OFESNJKE.js} +3 -3
  183. package/dist/{chunk-GLR5MSU3.js → chunk-OY437NRJ.js} +2 -2
  184. package/dist/{chunk-NI67M453.js → chunk-PGANINQD.js} +5 -5
  185. package/dist/{chunk-LRQT4MQO.js → chunk-PJNIJIE6.js} +2 -2
  186. package/dist/{chunk-KRYOT3KB.js → chunk-PQGHYFUA.js} +2 -2
  187. package/dist/{chunk-5XTPEA3O.js → chunk-PXEIN3J4.js} +7 -7
  188. package/dist/{chunk-ARMKSYEQ.js → chunk-Q4QFYGPH.js} +2 -2
  189. package/dist/{chunk-TIM4PXWN.js → chunk-QHIWV55K.js} +2 -2
  190. package/dist/{chunk-DHAXUVMR.js → chunk-QN7FVZQD.js} +4 -4
  191. package/dist/{chunk-2WVHZIWP.js → chunk-QSRZOXQI.js} +2 -2
  192. package/dist/{chunk-IF5UY3CT.js → chunk-QVDEGBME.js} +4 -4
  193. package/dist/{chunk-6PTP5NID.js → chunk-R2ODLE6G.js} +2 -2
  194. package/dist/{chunk-XQJPR57I.js → chunk-T5RFH2T5.js} +2 -2
  195. package/dist/{chunk-WMAS6DZR.js → chunk-TLJVUWJ5.js} +2 -2
  196. package/dist/{chunk-MK6UXAWY.js → chunk-TSEBMVYY.js} +3 -3
  197. package/dist/{chunk-NEYZV6V5.js → chunk-UAOE3ZPC.js} +6 -6
  198. package/dist/{chunk-IMCSY2SI.js → chunk-UFGT2SFD.js} +6 -6
  199. package/dist/{chunk-WTOA52EQ.js → chunk-UKNMPGEM.js} +2 -2
  200. package/dist/{chunk-P772HCHI.js → chunk-W676GY42.js} +4 -4
  201. package/dist/{chunk-T2G4LDU5.js → chunk-WLLUARTC.js} +2 -2
  202. package/dist/{chunk-JZQYVGPV.js → chunk-WLSFBXGS.js} +3 -3
  203. package/dist/{chunk-52RHAAIH.js → chunk-X3EEV3OI.js} +3 -3
  204. package/dist/{chunk-DYRZRY2T.js → chunk-X4N6Q37Q.js} +4 -4
  205. package/dist/{chunk-HKGKQKQT.js → chunk-X5OGIT2F.js} +52 -20
  206. package/dist/chunk-X5OGIT2F.js.map +1 -0
  207. package/dist/{chunk-56GWNA5V.js → chunk-X6D5JEUV.js} +12 -5
  208. package/dist/chunk-X6D5JEUV.js.map +1 -0
  209. package/dist/{chunk-ZVZTQF7E.js → chunk-XS6QHZMD.js} +2 -2
  210. package/dist/{chunk-CPZGFIFH.js → chunk-YNVTUQ5B.js} +2 -2
  211. package/dist/{chunk-HJJR2WGL.js → chunk-YOXYSAUI.js} +4 -4
  212. package/dist/{chunk-D72GD4XC.js → chunk-YPW4HZ3Z.js} +6 -2
  213. package/dist/chunk-YPW4HZ3Z.js.map +1 -0
  214. package/dist/{chunk-G76PIGF7.js → chunk-ZHQAVW2V.js} +3 -2
  215. package/dist/chunk-ZHQAVW2V.js.map +1 -0
  216. package/dist/{chunk-HWPQKHN2.js → chunk-ZIHSCBMN.js} +13 -13
  217. package/dist/data-display/Alert.js +2 -2
  218. package/dist/data-display/AsyncStateContainer.js +3 -3
  219. package/dist/data-display/Avatar.js +2 -2
  220. package/dist/data-display/CardKit.js +18 -18
  221. package/dist/data-display/Carousel.js +3 -3
  222. package/dist/data-display/Chart.js +5 -5
  223. package/dist/data-display/Chip.js +3 -3
  224. package/dist/data-display/DataGrid.js +3 -3
  225. package/dist/data-display/DataViews.js +59 -59
  226. package/dist/data-display/EmptyState.js +2 -2
  227. package/dist/data-display/FleetMap.js +14 -14
  228. package/dist/data-display/InteractiveTooltip.js +2 -2
  229. package/dist/data-display/Lightbox.js +7 -7
  230. package/dist/data-display/MapPreview.js +9 -9
  231. package/dist/data-display/RegionMap.js +4 -3
  232. package/dist/data-display/SectionOnboarding.js +3 -3
  233. package/dist/data-display/Sheet.js +2 -2
  234. package/dist/data-display/Table.js +2 -2
  235. package/dist/en-US.js +1 -1
  236. package/dist/feedback/ConfirmAction.js +3 -3
  237. package/dist/feedback/Modal.js +2 -2
  238. package/dist/feedback/NotificationStatusNotice.js +5 -5
  239. package/dist/feedback/SequenceResolver.js +6 -6
  240. package/dist/form/AddressAutocomplete.js +4 -4
  241. package/dist/form/Autocomplete.js +1 -1
  242. package/dist/form/Button.js +2 -2
  243. package/dist/form/Calendar.js +7 -5
  244. package/dist/form/DateRangePicker.js +7 -6
  245. package/dist/form/total-form.js +3 -3
  246. package/dist/layout/SettingCard.js +14 -14
  247. package/dist/locales.js +2 -2
  248. package/dist/navigation/AppHeader.js +5 -5
  249. package/dist/navigation/CommandPalette.js +5 -5
  250. package/dist/pt-BR.js +1 -1
  251. package/dist/social-login-button.js +3 -3
  252. package/dist/types/components/data-display/RegionMap/RegionMap.labels.d.ts +42 -0
  253. package/dist/types/components/data-display/RegionMap/RegionMap.labels.d.ts.map +1 -0
  254. package/dist/types/components/data-display/RegionMap/RegionMapDrawing.d.ts.map +1 -1
  255. package/dist/types/components/form/AddressAutocomplete/AddressAutocompleteField.d.ts.map +1 -1
  256. package/dist/types/components/form/AddressAutocomplete/AddressSuggestionsPaper.d.ts +11 -1
  257. package/dist/types/components/form/AddressAutocomplete/AddressSuggestionsPaper.d.ts.map +1 -1
  258. package/dist/types/components/form/Calendar/Calendar.band.d.ts +44 -0
  259. package/dist/types/components/form/Calendar/Calendar.band.d.ts.map +1 -0
  260. package/dist/types/components/form/Calendar/CalendarDay.d.ts +2 -0
  261. package/dist/types/components/form/Calendar/CalendarDay.d.ts.map +1 -1
  262. package/dist/types/components/form/Calendar/CalendarDayCell.d.ts.map +1 -1
  263. package/dist/types/components/form/Calendar/CalendarMonth.d.ts +3 -2
  264. package/dist/types/components/form/Calendar/CalendarMonth.d.ts.map +1 -1
  265. package/dist/types/components/navigation/CommandPalette/CommandPalette.d.ts.map +1 -1
  266. package/dist/types/copy/navigation.d.ts +2 -0
  267. package/dist/types/copy/navigation.d.ts.map +1 -1
  268. package/dist/types/en-US.navigation.d.ts.map +1 -1
  269. package/dist/types/pt-BR.navigation.d.ts.map +1 -1
  270. package/dist/user-avatar.js +5 -5
  271. package/package.json +1 -1
  272. package/src/components/data-display/RegionMap/RegionMap.labels.ts +60 -0
  273. package/src/components/data-display/RegionMap/RegionMapDrawing.tsx +87 -45
  274. package/src/components/form/AddressAutocomplete/AddressAutocompleteField.tsx +17 -4
  275. package/src/components/form/AddressAutocomplete/AddressSuggestionsPaper.tsx +32 -3
  276. package/src/components/form/Calendar/Calendar.band.ts +118 -0
  277. package/src/components/form/Calendar/CalendarDay.tsx +73 -23
  278. package/src/components/form/Calendar/CalendarDayCell.tsx +2 -0
  279. package/src/components/form/Calendar/CalendarMonth.tsx +14 -4
  280. package/src/components/navigation/CommandPalette/CommandPalette.md +1 -0
  281. package/src/components/navigation/CommandPalette/CommandPalette.tsx +4 -2
  282. package/src/copy/navigation.ts +2 -0
  283. package/src/en-US.navigation.ts +1 -0
  284. package/src/pt-BR.navigation.ts +1 -0
  285. package/dist/chunk-56GWNA5V.js.map +0 -1
  286. package/dist/chunk-A63WU4UZ.js.map +0 -1
  287. package/dist/chunk-C5RQBTRZ.js.map +0 -1
  288. package/dist/chunk-D72GD4XC.js.map +0 -1
  289. package/dist/chunk-G76PIGF7.js.map +0 -1
  290. package/dist/chunk-HKGKQKQT.js.map +0 -1
  291. package/dist/chunk-POUNFTG3.js.map +0 -1
  292. package/dist/chunk-Z445LLFN.js.map +0 -1
  293. /package/dist/{chunk-OPY2AGAU.js.map → chunk-2IHUFUTO.js.map} +0 -0
  294. /package/dist/{chunk-33AVAYCR.js.map → chunk-2L6TANRY.js.map} +0 -0
  295. /package/dist/{chunk-ENJOBJPK.js.map → chunk-2MT6VSS2.js.map} +0 -0
  296. /package/dist/{chunk-QADTI63U.js.map → chunk-3JZ3KEQQ.js.map} +0 -0
  297. /package/dist/{chunk-EOIRU62W.js.map → chunk-42D7KBDH.js.map} +0 -0
  298. /package/dist/{chunk-LXIPBHNJ.js.map → chunk-42TOCPXB.js.map} +0 -0
  299. /package/dist/{chunk-IFX5KP65.js.map → chunk-437HQPUN.js.map} +0 -0
  300. /package/dist/{chunk-VYQZ5U3N.js.map → chunk-4NG3LTRX.js.map} +0 -0
  301. /package/dist/{chunk-7YJYIMWP.js.map → chunk-4QR7LM5F.js.map} +0 -0
  302. /package/dist/{chunk-KR4TN3OF.js.map → chunk-4ZQQUICR.js.map} +0 -0
  303. /package/dist/{chunk-IYDXKLCE.js.map → chunk-5C3JSXBK.js.map} +0 -0
  304. /package/dist/{chunk-T6QVM5Q5.js.map → chunk-5IMI2XNU.js.map} +0 -0
  305. /package/dist/{chunk-JKIKHWD2.js.map → chunk-5NT2M2JI.js.map} +0 -0
  306. /package/dist/{chunk-Q7XLTN2D.js.map → chunk-5VKHJ7PI.js.map} +0 -0
  307. /package/dist/{chunk-BP3ZKIPE.js.map → chunk-64UNVW6D.js.map} +0 -0
  308. /package/dist/{chunk-FCLON3MO.js.map → chunk-6HXNFNOB.js.map} +0 -0
  309. /package/dist/{chunk-3OL2TSEJ.js.map → chunk-6IRZZYHF.js.map} +0 -0
  310. /package/dist/{chunk-ZLVRCQPG.js.map → chunk-6X7PE5DH.js.map} +0 -0
  311. /package/dist/{chunk-ABRVOPC2.js.map → chunk-7FFY4LJY.js.map} +0 -0
  312. /package/dist/{chunk-U3HGQHEO.js.map → chunk-7WE432RQ.js.map} +0 -0
  313. /package/dist/{chunk-VHGHF537.js.map → chunk-A3DDEKLV.js.map} +0 -0
  314. /package/dist/{chunk-KRPDBVUB.js.map → chunk-APSEM5AA.js.map} +0 -0
  315. /package/dist/{chunk-5ZC7CNU4.js.map → chunk-AQPPSR4P.js.map} +0 -0
  316. /package/dist/{chunk-AWUFS2ZC.js.map → chunk-BAC2PBOS.js.map} +0 -0
  317. /package/dist/{chunk-OA6T2ME3.js.map → chunk-BLZDSCIZ.js.map} +0 -0
  318. /package/dist/{chunk-OQN2FHEL.js.map → chunk-C4NSEUT5.js.map} +0 -0
  319. /package/dist/{chunk-IEAPXS57.js.map → chunk-CJLZHW2Z.js.map} +0 -0
  320. /package/dist/{chunk-I7JUAHUO.js.map → chunk-DILDC77M.js.map} +0 -0
  321. /package/dist/{chunk-U4WAAZXJ.js.map → chunk-DVX4HDNP.js.map} +0 -0
  322. /package/dist/{chunk-UTUYXH72.js.map → chunk-E5QOT7KK.js.map} +0 -0
  323. /package/dist/{chunk-V6KQ5R4T.js.map → chunk-EAFZ3RDY.js.map} +0 -0
  324. /package/dist/{chunk-CESGZRVQ.js.map → chunk-EMSMJRP3.js.map} +0 -0
  325. /package/dist/{chunk-ULAZDF6D.js.map → chunk-FF22F7FA.js.map} +0 -0
  326. /package/dist/{chunk-Z5WUSI47.js.map → chunk-G3JFESKD.js.map} +0 -0
  327. /package/dist/{chunk-CARUHKZW.js.map → chunk-G4W6HR6Q.js.map} +0 -0
  328. /package/dist/{chunk-KYTFGW4R.js.map → chunk-GMIMHQ6H.js.map} +0 -0
  329. /package/dist/{chunk-UT545JBQ.js.map → chunk-HC6OZ7QK.js.map} +0 -0
  330. /package/dist/{chunk-MVNFUIJS.js.map → chunk-HOPRZEBM.js.map} +0 -0
  331. /package/dist/{chunk-FZUAB2KS.js.map → chunk-INFBO356.js.map} +0 -0
  332. /package/dist/{chunk-XW44IFYE.js.map → chunk-IWMAFTXP.js.map} +0 -0
  333. /package/dist/{chunk-2DDCRHJE.js.map → chunk-IX5ADKII.js.map} +0 -0
  334. /package/dist/{chunk-N5OEDOJT.js.map → chunk-J2KVF5GO.js.map} +0 -0
  335. /package/dist/{chunk-TZC6KIK2.js.map → chunk-JG733RMP.js.map} +0 -0
  336. /package/dist/{chunk-PGYYDSNX.js.map → chunk-JH2XLVWM.js.map} +0 -0
  337. /package/dist/{chunk-XNMU32XC.js.map → chunk-JHW35C6W.js.map} +0 -0
  338. /package/dist/{chunk-4V37DAMA.js.map → chunk-JRBSTOMA.js.map} +0 -0
  339. /package/dist/{chunk-K6VEN5VN.js.map → chunk-K3PMMW23.js.map} +0 -0
  340. /package/dist/{chunk-JVTZ7FWR.js.map → chunk-K6FCSB6T.js.map} +0 -0
  341. /package/dist/{chunk-FZEDQNUN.js.map → chunk-K7IDOTSU.js.map} +0 -0
  342. /package/dist/{chunk-XMWTVDQN.js.map → chunk-LH43GKP2.js.map} +0 -0
  343. /package/dist/{chunk-YHPSPFU5.js.map → chunk-LIN4A2BW.js.map} +0 -0
  344. /package/dist/{chunk-LXMFHD7M.js.map → chunk-LTSVYILY.js.map} +0 -0
  345. /package/dist/{chunk-QJLOWBFW.js.map → chunk-LXTNWQWF.js.map} +0 -0
  346. /package/dist/{chunk-HI7JPDD6.js.map → chunk-M3XJVD5G.js.map} +0 -0
  347. /package/dist/{chunk-FQMLTCXT.js.map → chunk-MAHY7PK3.js.map} +0 -0
  348. /package/dist/{chunk-NTRWUDP6.js.map → chunk-MKVDHR3B.js.map} +0 -0
  349. /package/dist/{chunk-C74PDNTF.js.map → chunk-NKEFH3RS.js.map} +0 -0
  350. /package/dist/{chunk-T6YTDEY4.js.map → chunk-OFESNJKE.js.map} +0 -0
  351. /package/dist/{chunk-GLR5MSU3.js.map → chunk-OY437NRJ.js.map} +0 -0
  352. /package/dist/{chunk-NI67M453.js.map → chunk-PGANINQD.js.map} +0 -0
  353. /package/dist/{chunk-LRQT4MQO.js.map → chunk-PJNIJIE6.js.map} +0 -0
  354. /package/dist/{chunk-KRYOT3KB.js.map → chunk-PQGHYFUA.js.map} +0 -0
  355. /package/dist/{chunk-5XTPEA3O.js.map → chunk-PXEIN3J4.js.map} +0 -0
  356. /package/dist/{chunk-ARMKSYEQ.js.map → chunk-Q4QFYGPH.js.map} +0 -0
  357. /package/dist/{chunk-TIM4PXWN.js.map → chunk-QHIWV55K.js.map} +0 -0
  358. /package/dist/{chunk-DHAXUVMR.js.map → chunk-QN7FVZQD.js.map} +0 -0
  359. /package/dist/{chunk-2WVHZIWP.js.map → chunk-QSRZOXQI.js.map} +0 -0
  360. /package/dist/{chunk-IF5UY3CT.js.map → chunk-QVDEGBME.js.map} +0 -0
  361. /package/dist/{chunk-6PTP5NID.js.map → chunk-R2ODLE6G.js.map} +0 -0
  362. /package/dist/{chunk-XQJPR57I.js.map → chunk-T5RFH2T5.js.map} +0 -0
  363. /package/dist/{chunk-WMAS6DZR.js.map → chunk-TLJVUWJ5.js.map} +0 -0
  364. /package/dist/{chunk-MK6UXAWY.js.map → chunk-TSEBMVYY.js.map} +0 -0
  365. /package/dist/{chunk-NEYZV6V5.js.map → chunk-UAOE3ZPC.js.map} +0 -0
  366. /package/dist/{chunk-IMCSY2SI.js.map → chunk-UFGT2SFD.js.map} +0 -0
  367. /package/dist/{chunk-WTOA52EQ.js.map → chunk-UKNMPGEM.js.map} +0 -0
  368. /package/dist/{chunk-P772HCHI.js.map → chunk-W676GY42.js.map} +0 -0
  369. /package/dist/{chunk-T2G4LDU5.js.map → chunk-WLLUARTC.js.map} +0 -0
  370. /package/dist/{chunk-JZQYVGPV.js.map → chunk-WLSFBXGS.js.map} +0 -0
  371. /package/dist/{chunk-52RHAAIH.js.map → chunk-X3EEV3OI.js.map} +0 -0
  372. /package/dist/{chunk-DYRZRY2T.js.map → chunk-X4N6Q37Q.js.map} +0 -0
  373. /package/dist/{chunk-ZVZTQF7E.js.map → chunk-XS6QHZMD.js.map} +0 -0
  374. /package/dist/{chunk-CPZGFIFH.js.map → chunk-YNVTUQ5B.js.map} +0 -0
  375. /package/dist/{chunk-HJJR2WGL.js.map → chunk-YOXYSAUI.js.map} +0 -0
  376. /package/dist/{chunk-HWPQKHN2.js.map → chunk-ZIHSCBMN.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/data-display/RegionMap/RegionMapDrawing.tsx"],"sourcesContent":["import Box from '@mui/material/Box/index.js';\nimport Typography from '@mui/material/Typography/index.js';\nimport { alpha, type Theme } from '@mui/material/styles/index.js';\nimport React from 'react';\n\nimport { rem, remPx } from '../../../tokens/relative';\n\nimport { labelPosition, type AreaGeometry, type DrawnRegion, type PlaneBox } from './RegionMap.helpers';\nimport type { RegionMapModel } from './RegionMap.hooks';\nimport { labelOrder, placeLabels } from './RegionMap.labels';\n\nexport interface RegionMapDrawingProps {\n model: RegionMapModel & { view: PlaneBox };\n showCenter: boolean;\n highlightedIds: readonly string[];\n maxHeight: string | undefined;\n label: string;\n tappable: boolean;\n testId: string;\n theme: Theme;\n}\n\n/**\n * The drawing: one `role=\"img\"`, square, with HTML labels laid over it.\n *\n * Strokes are `non-scaling-stroke` and labels are HTML at theme sizes, so the\n * picture reads the same at 320 px and 1600 px; `maxHeight` caps it on a wide\n * screen. Where it sits in a wider box is the host's call.\n *\n * The base areas are a memoised layer: a toggle changes `excluded`, not the\n * geometry, so only the hatch, highlight and label layers re-render.\n */\nexport function RegionMapDrawing({\n model,\n showCenter,\n highlightedIds,\n maxHeight,\n label,\n tappable,\n testId,\n theme,\n}: RegionMapDrawingProps): React.JSX.Element {\n const hatchId = `${React.useId().replace(/:/g, '')}-hatch`;\n const { view, drawn } = model;\n const wanted = new Set(highlightedIds);\n const highlighted = drawn.filter((d) => wanted.has(d.id));\n // Highlighted, then excluded, then larger, then by name: the order labels\n // claim their place in, so a collision hides the less important one.\n const labelled = labelOrder(drawn.filter((d) => d.excluded || wanted.has(d.id)), wanted);\n const boxRef = React.useRef<HTMLDivElement>(null);\n useLabelPlacement(boxRef, labelled.map((d) => d.id).join('|'), remPx(theme, 4));\n const base = drawn.map((d) => ({ id: d.id, name: d.name, geometry: d.geometry, outside: d.outside === true }));\n return (\n <Box\n sx={{\n position: 'relative',\n width: '100%',\n maxWidth: maxHeight,\n maxHeight,\n aspectRatio: '1 / 1',\n border: 1,\n borderColor: 'divider',\n borderRadius: 1,\n overflow: 'hidden',\n bgcolor: 'background.paper',\n }}\n data-testid={`${testId}-canvas`}\n ref={boxRef}\n >\n <svg\n viewBox={`${view.minX} ${view.minY} ${view.spanX} ${view.spanY}`}\n role=\"img\"\n aria-label={label}\n onPointerDown={model.onPointerDown}\n onClick={model.onClick}\n style={{ display: 'block', width: '100%', height: '100%', cursor: tappable ? 'pointer' : 'default' }}\n >\n <Hatch id={hatchId} pitch={view.spanX / 70} theme={theme} />\n <BaseAreas areas={base} testId={testId} theme={theme} />\n <ExcludedAreas drawn={drawn} hatchId={hatchId} testId={testId} theme={theme} />\n <Circles radii={model.radii} theme={theme} />\n <Highlights areas={highlighted} testId={testId} theme={theme} />\n {showCenter && (\n <circle\n cx={0}\n cy={0}\n r={view.spanX / 90}\n fill={theme.palette.primary.main}\n stroke={theme.palette.background.paper}\n strokeWidth={2}\n vectorEffect=\"non-scaling-stroke\"\n pointerEvents=\"none\"\n data-testid={`${testId}-center`}\n />\n )}\n </svg>\n {labelled.map((d) => (\n <AreaLabel key={`l-${d.id}`} area={d} view={view} testId={testId} theme={theme} />\n ))}\n </Box>\n );\n}\n\n/** The highlighted areas, drawn over everything but the centre. */\nfunction Highlights({\n areas,\n testId,\n theme,\n}: {\n areas: readonly DrawnRegion[];\n testId: string;\n theme: Theme;\n}): React.JSX.Element {\n return (\n <>\n {areas.map((d) => (\n <path\n key={`h-${d.id}`}\n d={d.geometry.path}\n fillRule=\"evenodd\"\n vectorEffect=\"non-scaling-stroke\"\n fill={alpha(theme.palette.primary.main, 0.3)}\n stroke={theme.palette.primary.main}\n strokeWidth={2.5}\n pointerEvents=\"none\"\n data-testid={`${testId}-highlight-${d.id}`}\n />\n ))}\n </>\n );\n}\n\n/** The hatch an excluded area is filled with: lines, not a colour. */\nfunction Hatch({ id, pitch, theme }: { id: string; pitch: number; theme: Theme }): React.JSX.Element {\n return (\n <defs>\n <pattern id={id} width={pitch} height={pitch} patternUnits=\"userSpaceOnUse\" patternTransform=\"rotate(45)\">\n <rect width={pitch} height={pitch} fill={alpha(theme.palette.text.primary, 0.1)} />\n <rect width={pitch / 3} height={pitch} fill={theme.palette.text.secondary} />\n </pattern>\n </defs>\n );\n}\n\ninterface BaseArea {\n id: string;\n name: string;\n geometry: AreaGeometry;\n outside: boolean;\n}\n\ninterface BaseAreasProps {\n areas: readonly BaseArea[];\n testId: string;\n theme: Theme;\n}\n\n/** Same areas, same geometry objects, same look: nothing to re-render. */\nfunction sameBase(a: BaseAreasProps, b: BaseAreasProps): boolean {\n if (a.theme !== b.theme || a.testId !== b.testId || a.areas.length !== b.areas.length) return false;\n return a.areas.every((area, i) => {\n const other = b.areas[i]!;\n return (\n area.id === other.id &&\n area.geometry === other.geometry &&\n area.outside === other.outside &&\n area.name === other.name\n );\n });\n}\n\n/** Every area's fill and border — the tap targets. Memoised: see `sameBase`. */\nconst BaseAreas = React.memo(function BaseAreas({ areas, testId, theme }: BaseAreasProps): React.JSX.Element {\n const { palette } = theme;\n return (\n <>\n {areas.map((d) => (\n <path\n key={d.id}\n d={d.geometry.path}\n fillRule=\"evenodd\"\n vectorEffect=\"non-scaling-stroke\"\n fill={d.outside ? palette.background.paper : palette.action.hover}\n stroke={palette.divider}\n strokeWidth={1}\n data-region-id={d.id}\n data-testid={`${testId}-area-${d.id}`}\n >\n <title>{d.name}</title>\n </path>\n ))}\n </>\n );\n}, sameBase);\n\n/** The hatch over every excluded area. */\nfunction ExcludedAreas({\n drawn,\n hatchId,\n testId,\n theme,\n}: {\n drawn: readonly DrawnRegion[];\n hatchId: string;\n testId: string;\n theme: Theme;\n}): React.JSX.Element {\n return (\n <>\n {drawn\n .filter((d) => d.excluded)\n .map((d) => (\n <path\n key={`x-${d.id}`}\n d={d.geometry.path}\n fillRule=\"evenodd\"\n vectorEffect=\"non-scaling-stroke\"\n fill={`url(#${hatchId})`}\n stroke={theme.palette.text.secondary}\n strokeWidth={1.5}\n pointerEvents=\"none\"\n data-testid={`${testId}-excluded-${d.id}`}\n />\n ))}\n </>\n );\n}\n\n/** The dashed circles around the centre. */\nfunction Circles({ radii, theme }: { radii: readonly number[]; theme: Theme }): React.JSX.Element {\n return (\n <>\n {radii.map((radius) => (\n <circle\n key={radius}\n cx={0}\n cy={0}\n r={radius}\n fill=\"none\"\n stroke={theme.palette.info.main}\n strokeWidth={1.75}\n strokeDasharray=\"7 5\"\n vectorEffect=\"non-scaling-stroke\"\n pointerEvents=\"none\"\n />\n ))}\n </>\n );\n}\n\n/**\n * Places every label the drawing carries, in their DOM order (the priority\n * order), and hides one that would overlap a label already drawn\n * (`placeLabels`). Measured by a ResizeObserver, never in a layout effect: its\n * first call comes after the browser's own layout, so mounting a label on a\n * tap forces no synchronous reflow of the drawing.\n */\nfunction useLabelPlacement(boxRef: React.RefObject<HTMLDivElement | null>, key: string, gap: number): void {\n React.useEffect(() => {\n const box = boxRef.current;\n if (!box || typeof ResizeObserver === 'undefined') return undefined;\n const labels = Array.from(box.querySelectorAll<HTMLElement>('[data-region-label]'));\n const place = (): void => {\n const spanX = box.clientWidth;\n const spanY = box.clientHeight;\n if (spanX === 0 || spanY === 0) return;\n const placed = placeLabels(\n labels.map((label) => ({\n fractionX: Number(label.dataset.fractionX),\n fractionY: Number(label.dataset.fractionY),\n spanX: label.offsetWidth,\n spanY: label.offsetHeight,\n })),\n { spanX, spanY },\n gap,\n );\n placed.forEach(({ x, y, visible }, index) => {\n const label = labels[index]!;\n label.style.left = `${(x / spanX) * 100}%`;\n label.style.top = `${(y / spanY) * 100}%`;\n label.style.visibility = visible ? 'visible' : 'hidden';\n label.dataset.hidden = visible ? 'false' : 'true';\n });\n };\n const observer = new ResizeObserver(place);\n observer.observe(box);\n for (const label of labels) observer.observe(label);\n return () => observer.disconnect();\n }, [boxRef, key, gap]);\n}\n\n/**\n * An area's name over the drawing, at the theme's type size whatever the\n * width. Placed — and hidden on a collision — by {@link useLabelPlacement}.\n * Decorative (`aria-hidden`): the area's name is its `<title>` and its row in\n * the list.\n */\nfunction AreaLabel({\n area,\n view,\n testId,\n theme,\n}: {\n area: DrawnRegion;\n view: PlaneBox;\n testId: string;\n theme: Theme;\n}): React.JSX.Element {\n const at = labelPosition(area.geometry.rings, view);\n const halo = `0 0 ${rem(theme, 3)} ${theme.palette.background.paper}`;\n return (\n <Typography\n component=\"span\"\n aria-hidden\n data-testid={`${testId}-label-${area.id}`}\n data-region-label=\"\"\n data-fraction-x={at.fractionX}\n data-fraction-y={at.fractionY}\n // Position as an inline style, not `sx`: a per-label class would insert\n // a new CSS rule (and a style recalculation) on every tap.\n style={{\n left: `${(at.fractionX * 100).toFixed(2)}%`,\n top: `${(at.fractionY * 100).toFixed(2)}%`,\n }}\n sx={{\n position: 'absolute',\n transform: 'translate(-50%, -50%)',\n fontSize: rem(theme, 12),\n fontWeight: 700,\n lineHeight: 1.1,\n textAlign: 'center',\n maxWidth: '45%',\n color: 'text.primary',\n pointerEvents: 'none',\n textShadow: `${halo}, ${halo}`,\n }}\n >\n {area.name}\n </Typography>\n );\n}\n"],"mappings":"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","names":["BaseAreas"]}
@@ -9,10 +9,10 @@ import {
9
9
  } from "./chunk-I4K5JMS4.js";
10
10
  import {
11
11
  CalendarSelectorsMonth
12
- } from "./chunk-IYDXKLCE.js";
12
+ } from "./chunk-5C3JSXBK.js";
13
13
  import {
14
14
  CalendarMonth
15
- } from "./chunk-POUNFTG3.js";
15
+ } from "./chunk-4OUJ4ZMK.js";
16
16
  import {
17
17
  resolveLabels
18
18
  } from "./chunk-LL2BWQPM.js";
@@ -135,4 +135,4 @@ export {
135
135
  Calendar,
136
136
  Calendar_default
137
137
  };
138
- //# sourceMappingURL=chunk-KRPDBVUB.js.map
138
+ //# sourceMappingURL=chunk-APSEM5AA.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  GridToolbar
3
- } from "./chunk-AWUFS2ZC.js";
3
+ } from "./chunk-BAC2PBOS.js";
4
4
 
5
5
  // src/components/data-display/DataViews/data-views-shell-toolbar.tsx
6
6
  import { jsx } from "react/jsx-runtime";
@@ -68,4 +68,4 @@ function ShellToolbar({
68
68
  export {
69
69
  ShellToolbar
70
70
  };
71
- //# sourceMappingURL=chunk-5ZC7CNU4.js.map
71
+ //# sourceMappingURL=chunk-AQPPSR4P.js.map
@@ -1,15 +1,15 @@
1
- import {
2
- DataViewsDisplayPanel
3
- } from "./chunk-FCLON3MO.js";
4
1
  import {
5
2
  DataViewsExportMenu
6
- } from "./chunk-VYQZ5U3N.js";
3
+ } from "./chunk-4NG3LTRX.js";
4
+ import {
5
+ DataViewsDisplayPanel
6
+ } from "./chunk-6HXNFNOB.js";
7
7
  import {
8
8
  STICKY_BAR_ATTR
9
9
  } from "./chunk-4IE66GY2.js";
10
10
  import {
11
11
  renderBulkActions
12
- } from "./chunk-WTOA52EQ.js";
12
+ } from "./chunk-UKNMPGEM.js";
13
13
  import {
14
14
  useDataViewsCopy
15
15
  } from "./chunk-KHG57NAE.js";
@@ -143,4 +143,4 @@ function GridToolbar(props) {
143
143
  export {
144
144
  GridToolbar
145
145
  };
146
- //# sourceMappingURL=chunk-AWUFS2ZC.js.map
146
+ //# sourceMappingURL=chunk-BAC2PBOS.js.map
@@ -1,3 +1,6 @@
1
+ import {
2
+ useDataGridModel
3
+ } from "./chunk-LDROG4QI.js";
1
4
  import {
2
5
  GridBody,
3
6
  GridHeader
@@ -7,9 +10,6 @@ import {
7
10
  DataGridError,
8
11
  DataGridLoading
9
12
  } from "./chunk-EARWC6PD.js";
10
- import {
11
- useDataGridModel
12
- } from "./chunk-LDROG4QI.js";
13
13
 
14
14
  // src/components/data-display/DataGrid/DataGrid.tsx
15
15
  import Paper from "@mui/material/Paper/index.js";
@@ -120,4 +120,4 @@ export {
120
120
  DataGrid,
121
121
  GRID_ONLY_PROPS
122
122
  };
123
- //# sourceMappingURL=chunk-OA6T2ME3.js.map
123
+ //# sourceMappingURL=chunk-BLZDSCIZ.js.map
@@ -2,7 +2,7 @@ import {
2
2
  MoreGroup,
3
3
  MoreQuick,
4
4
  fieldClearing
5
- } from "./chunk-V6KQ5R4T.js";
5
+ } from "./chunk-EAFZ3RDY.js";
6
6
  import {
7
7
  useDataViewsCopy
8
8
  } from "./chunk-KHG57NAE.js";
@@ -11,7 +11,7 @@ import {
11
11
  } from "./chunk-6DPAWXZ3.js";
12
12
  import {
13
13
  Button
14
- } from "./chunk-HJJR2WGL.js";
14
+ } from "./chunk-YOXYSAUI.js";
15
15
  import {
16
16
  Text
17
17
  } from "./chunk-AJBRO76D.js";
@@ -194,4 +194,4 @@ function MoreFilters({
194
194
  export {
195
195
  MoreFilters
196
196
  };
197
- //# sourceMappingURL=chunk-OQN2FHEL.js.map
197
+ //# sourceMappingURL=chunk-C4NSEUT5.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  MapPreview
3
- } from "./chunk-IMCSY2SI.js";
3
+ } from "./chunk-UFGT2SFD.js";
4
4
 
5
5
  // src/components/data-display/FleetMap/FleetCanvas.tsx
6
6
  import Box from "@mui/material/Box/index.js";
@@ -38,4 +38,4 @@ function FleetCanvas({
38
38
  export {
39
39
  FleetCanvas
40
40
  };
41
- //# sourceMappingURL=chunk-IEAPXS57.js.map
41
+ //# sourceMappingURL=chunk-CJLZHW2Z.js.map
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  GridShell
3
- } from "./chunk-XMWTVDQN.js";
3
+ } from "./chunk-LH43GKP2.js";
4
4
  import {
5
5
  useDataViewsState
6
- } from "./chunk-U3HGQHEO.js";
6
+ } from "./chunk-7WE432RQ.js";
7
7
 
8
8
  // src/components/data-display/DataViews/DataViewsGrid.tsx
9
9
  import { useEffect, useRef } from "react";
@@ -27,4 +27,4 @@ function DataViewsGrid(props) {
27
27
  export {
28
28
  DataViewsGrid
29
29
  };
30
- //# sourceMappingURL=chunk-I7JUAHUO.js.map
30
+ //# sourceMappingURL=chunk-DILDC77M.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  useCardActions
3
- } from "./chunk-LRQT4MQO.js";
3
+ } from "./chunk-PJNIJIE6.js";
4
4
  import {
5
5
  ConfirmActionDialog
6
6
  } from "./chunk-7W5X3KQ2.js";
@@ -50,4 +50,4 @@ function useRemoveConfirm({
50
50
  export {
51
51
  useRemoveConfirm
52
52
  };
53
- //# sourceMappingURL=chunk-U4WAAZXJ.js.map
53
+ //# sourceMappingURL=chunk-DVX4HDNP.js.map
@@ -6,13 +6,6 @@ import {
6
6
  EnhancedTableBody,
7
7
  EnhancedTableHeader
8
8
  } from "./chunk-L5KPBMMF.js";
9
- import {
10
- tableStyles
11
- } from "./chunk-BVHIKXCN.js";
12
- import {
13
- useTableSelection,
14
- useVirtualScrolling
15
- } from "./chunk-RZSMRBOX.js";
16
9
  import {
17
10
  TABLE_DEFAULTS,
18
11
  containerStyle,
@@ -24,6 +17,13 @@ import {
24
17
  tableRowHeight,
25
18
  virtualHeight
26
19
  } from "./chunk-Y3DV7LGC.js";
20
+ import {
21
+ tableStyles
22
+ } from "./chunk-BVHIKXCN.js";
23
+ import {
24
+ useTableSelection,
25
+ useVirtualScrolling
26
+ } from "./chunk-RZSMRBOX.js";
27
27
  import {
28
28
  rem
29
29
  } from "./chunk-YKCAJ2TN.js";
@@ -310,4 +310,4 @@ Table.displayName = "Table";
310
310
  export {
311
311
  Table
312
312
  };
313
- //# sourceMappingURL=chunk-UTUYXH72.js.map
313
+ //# sourceMappingURL=chunk-E5QOT7KK.js.map
@@ -6,13 +6,13 @@ import {
6
6
  } from "./chunk-KYUEO2IO.js";
7
7
  import {
8
8
  RangeBounds
9
- } from "./chunk-CARUHKZW.js";
10
- import {
11
- QuickRow
12
- } from "./chunk-AT6UKTH4.js";
9
+ } from "./chunk-G4W6HR6Q.js";
13
10
  import {
14
11
  isRangeSet
15
12
  } from "./chunk-GCZJH4XL.js";
13
+ import {
14
+ QuickRow
15
+ } from "./chunk-AT6UKTH4.js";
16
16
  import {
17
17
  useDataViewsCopy
18
18
  } from "./chunk-KHG57NAE.js";
@@ -227,4 +227,4 @@ export {
227
227
  MoreQuick,
228
228
  MoreGroup
229
229
  };
230
- //# sourceMappingURL=chunk-V6KQ5R4T.js.map
230
+ //# sourceMappingURL=chunk-EAFZ3RDY.js.map
@@ -3,12 +3,19 @@ import {
3
3
  } from "./chunk-YKCAJ2TN.js";
4
4
 
5
5
  // src/components/form/AddressAutocomplete/AddressSuggestionsPaper.tsx
6
+ import Box from "@mui/material/Box/index.js";
6
7
  import Paper from "@mui/material/Paper/index.js";
7
8
  import { alpha, useTheme } from "@mui/material/styles/index.js";
8
- import { jsx } from "react/jsx-runtime";
9
- var AddressSuggestionsPaper = (props) => {
9
+ import { Children } from "react";
10
+ import { jsx, jsxs } from "react/jsx-runtime";
11
+ var AddressSuggestionsPaper = ({
12
+ emptyText,
13
+ children,
14
+ ...props
15
+ }) => {
10
16
  const theme = useTheme();
11
- return /* @__PURE__ */ jsx(
17
+ const empty = Children.toArray(children).length === 0;
18
+ return /* @__PURE__ */ jsxs(
12
19
  Paper,
13
20
  {
14
21
  ...props,
@@ -20,7 +27,20 @@ var AddressSuggestionsPaper = (props) => {
20
27
  backdropFilter: `blur(${rem(theme, 20)})`,
21
28
  WebkitBackdropFilter: `blur(${rem(theme, 20)})`,
22
29
  border: `1px solid ${alpha(theme.palette.divider, 0.18)}`
23
- }
30
+ },
31
+ children: [
32
+ children,
33
+ empty && emptyText && /* @__PURE__ */ jsx(
34
+ Box,
35
+ {
36
+ role: "presentation",
37
+ "data-testid": "address-suggestions-empty",
38
+ onMouseDown: (event) => event.preventDefault(),
39
+ sx: { px: 2, py: 1.5, color: "text.secondary" },
40
+ children: emptyText
41
+ }
42
+ )
43
+ ]
24
44
  }
25
45
  );
26
46
  };
@@ -28,4 +48,4 @@ var AddressSuggestionsPaper = (props) => {
28
48
  export {
29
49
  AddressSuggestionsPaper
30
50
  };
31
- //# sourceMappingURL=chunk-C5RQBTRZ.js.map
51
+ //# sourceMappingURL=chunk-EIOGJBJ5.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/AddressAutocomplete/AddressSuggestionsPaper.tsx"],"sourcesContent":["import type { PaperProps } from '@mui/material/Paper/index.js';\nimport Box from '@mui/material/Box/index.js';\nimport Paper from '@mui/material/Paper/index.js';\nimport { alpha, useTheme } from '@mui/material/styles/index.js';\nimport type { FC } from 'react';\nimport React, { Children } from 'react';\n\nimport { rem } from '../../../tokens/relative';\n\nexport interface AddressSuggestionsPaperProps extends PaperProps {\n /**\n * Said when the list is open with nothing in it. MUI never renders its own\n * `noOptionsText` for a `freeSolo` field, so an empty list was a blank strip\n * (FUT-4162): the paper says it instead, exactly when MUI gave it no content\n * (no suggestions and no loading row).\n */\n emptyText?: React.ReactNode;\n}\n\n// The dropdown surface, frosted to match the glass field.\nexport const AddressSuggestionsPaper: FC<AddressSuggestionsPaperProps> = ({\n emptyText,\n children,\n ...props\n}) => {\n const theme = useTheme();\n const empty = Children.toArray(children).length === 0;\n\n return (\n <Paper\n {...props}\n elevation={8}\n data-testid=\"address-suggestions-dropdown\"\n sx={{\n mt: 1,\n background: `linear-gradient(135deg, ${alpha(theme.palette.background.paper, 0.98)} 0%, ${alpha(theme.palette.background.paper, 0.95)} 100%)`,\n backdropFilter: `blur(${rem(theme, 20)})`,\n WebkitBackdropFilter: `blur(${rem(theme, 20)})`,\n border: `1px solid ${alpha(theme.palette.divider, 0.18)}`,\n }}\n >\n {children}\n {empty && emptyText && (\n <Box\n role=\"presentation\"\n data-testid=\"address-suggestions-empty\"\n // Keeps the input focused, as MUI's own no-options row does.\n onMouseDown={(event) => event.preventDefault()}\n sx={{ px: 2, py: 1.5, color: 'text.secondary' }}\n >\n {emptyText}\n </Box>\n )}\n </Paper>\n );\n};\n"],"mappings":";;;;;AACA,OAAO,SAAS;AAChB,OAAO,WAAW;AAClB,SAAS,OAAO,gBAAgB;AAEhC,SAAgB,gBAAgB;AAwB5B,SAcI,KAdJ;AATG,IAAM,0BAA4D,CAAC;AAAA,EACxE;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,QAAQ,SAAS;AACvB,QAAM,QAAQ,SAAS,QAAQ,QAAQ,EAAE,WAAW;AAEpD,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ,WAAW;AAAA,MACX,eAAY;AAAA,MACZ,IAAI;AAAA,QACF,IAAI;AAAA,QACJ,YAAY,2BAA2B,MAAM,MAAM,QAAQ,WAAW,OAAO,IAAI,CAAC,QAAQ,MAAM,MAAM,QAAQ,WAAW,OAAO,IAAI,CAAC;AAAA,QACrI,gBAAgB,QAAQ,IAAI,OAAO,EAAE,CAAC;AAAA,QACtC,sBAAsB,QAAQ,IAAI,OAAO,EAAE,CAAC;AAAA,QAC5C,QAAQ,aAAa,MAAM,MAAM,QAAQ,SAAS,IAAI,CAAC;AAAA,MACzD;AAAA,MAEC;AAAA;AAAA,QACA,SAAS,aACR;AAAA,UAAC;AAAA;AAAA,YACC,MAAK;AAAA,YACL,eAAY;AAAA,YAEZ,aAAa,CAAC,UAAU,MAAM,eAAe;AAAA,YAC7C,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,OAAO,iBAAiB;AAAA,YAE7C;AAAA;AAAA,QACH;AAAA;AAAA;AAAA,EAEJ;AAEJ;","names":[]}
@@ -1,9 +1,9 @@
1
- import {
2
- TILE_WORLD_UNITS
3
- } from "./chunk-CB6DTWD5.js";
4
1
  import {
5
2
  tileBackground
6
3
  } from "./chunk-4YYFZ6TE.js";
4
+ import {
5
+ TILE_WORLD_UNITS
6
+ } from "./chunk-CB6DTWD5.js";
7
7
  import {
8
8
  rem
9
9
  } from "./chunk-YKCAJ2TN.js";
@@ -68,4 +68,4 @@ var MapTiles = ({ origin, zoom, mapType, panOffset }) => {
68
68
  export {
69
69
  MapTiles
70
70
  };
71
- //# sourceMappingURL=chunk-CESGZRVQ.js.map
71
+ //# sourceMappingURL=chunk-EMSMJRP3.js.map
@@ -2,7 +2,7 @@ import {
2
2
  buildGridColumns,
3
3
  buildRowActionsColumn,
4
4
  isActionsColumn
5
- } from "./chunk-WTOA52EQ.js";
5
+ } from "./chunk-UKNMPGEM.js";
6
6
 
7
7
  // src/components/data-display/DataViews/data-views-columns.ts
8
8
  import { useTheme } from "@mui/material/styles/index.js";
@@ -62,4 +62,4 @@ export {
62
62
  useColumnsWithActions,
63
63
  useRenderedColumns
64
64
  };
65
- //# sourceMappingURL=chunk-ULAZDF6D.js.map
65
+ //# sourceMappingURL=chunk-FF22F7FA.js.map
@@ -1,3 +1,8 @@
1
+ import {
2
+ resolveTooltipProps,
3
+ useHoverOpen,
4
+ usePinnedTooltip
5
+ } from "./chunk-QYJ25FWM.js";
1
6
  import {
2
7
  arrowColor,
3
8
  emphasisStyles,
@@ -5,11 +10,6 @@ import {
5
10
  tooltipCap,
6
11
  variantStyles
7
12
  } from "./chunk-BCWL7HUO.js";
8
- import {
9
- resolveTooltipProps,
10
- useHoverOpen,
11
- usePinnedTooltip
12
- } from "./chunk-QYJ25FWM.js";
13
13
 
14
14
  // src/components/data-display/InteractiveTooltip/InteractiveTooltip.tsx
15
15
  import MuiTooltip from "@mui/material/Tooltip/index.js";
@@ -96,4 +96,4 @@ InteractiveTooltip.displayName = "InteractiveTooltip";
96
96
  export {
97
97
  InteractiveTooltip
98
98
  };
99
- //# sourceMappingURL=chunk-Z5WUSI47.js.map
99
+ //# sourceMappingURL=chunk-G3JFESKD.js.map
@@ -1,21 +1,21 @@
1
- import {
2
- NumberBoundInput
3
- } from "./chunk-FJ3UZ4RC.js";
4
- import {
5
- useOutsideResetKey
6
- } from "./chunk-YOPMXGHY.js";
7
1
  import {
8
2
  RangePresets
9
3
  } from "./chunk-7D7CJRL7.js";
10
4
  import {
11
- presetsFor
12
- } from "./chunk-CBOB5AV6.js";
5
+ NumberBoundInput
6
+ } from "./chunk-FJ3UZ4RC.js";
13
7
  import {
14
8
  isRangeInverted,
15
9
  isRangeSet,
16
10
  numericRange,
17
11
  rangeChipLabel
18
12
  } from "./chunk-GCZJH4XL.js";
13
+ import {
14
+ useOutsideResetKey
15
+ } from "./chunk-YOPMXGHY.js";
16
+ import {
17
+ presetsFor
18
+ } from "./chunk-CBOB5AV6.js";
19
19
  import {
20
20
  useDataViewsCopy
21
21
  } from "./chunk-KHG57NAE.js";
@@ -298,4 +298,4 @@ export {
298
298
  RangePill,
299
299
  PanelRangeField
300
300
  };
301
- //# sourceMappingURL=chunk-CARUHKZW.js.map
301
+ //# sourceMappingURL=chunk-G4W6HR6Q.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  EN_US_COMMAND_PALETTE_COPY
3
- } from "./chunk-SSCEX5NY.js";
3
+ } from "./chunk-656DBMWT.js";
4
4
 
5
5
  // src/components/navigation/CommandPalette/CommandPalette.helpers.ts
6
6
  var filterCommands = ({
@@ -60,4 +60,4 @@ export {
60
60
  groupByCategory,
61
61
  createPaletteKeyHandler
62
62
  };
63
- //# sourceMappingURL=chunk-KYTFGW4R.js.map
63
+ //# sourceMappingURL=chunk-GMIMHQ6H.js.map
@@ -0,0 +1,74 @@
1
+ import {
2
+ isSameDay
3
+ } from "./chunk-QWOI5BZV.js";
4
+ import {
5
+ alpha,
6
+ blend,
7
+ darken,
8
+ decomposeColor,
9
+ getContrastRatio,
10
+ getLuminance,
11
+ lighten
12
+ } from "./chunk-F5H2ZXST.js";
13
+
14
+ // src/components/form/Calendar/Calendar.band.ts
15
+ var otherEnd = (range, hoveredDate, isDisabled) => range.end ?? (hoveredDate && !isDisabled(hoveredDate) ? hoveredDate : null);
16
+ var endpointBand = (date, start, other) => {
17
+ const [first, last] = start < other ? [start, other] : [other, start];
18
+ if (isSameDay(date, first)) return "after";
19
+ if (isSameDay(date, last)) return "before";
20
+ return "none";
21
+ };
22
+ var bandFor = ({
23
+ args,
24
+ selectionMode,
25
+ range,
26
+ hoveredDate,
27
+ isDisabled
28
+ }) => {
29
+ if (selectionMode !== "range") return "none";
30
+ if (args.inRange) return "full";
31
+ const other = otherEnd(range, hoveredDate, isDisabled);
32
+ if (!range.start || !other || isSameDay(range.start, other)) return "none";
33
+ return endpointBand(args.date, range.start, other);
34
+ };
35
+ var BAND_OPACITY = 0.25;
36
+ var bandColor = (theme) => alpha(theme.palette.primary.main, BAND_OPACITY);
37
+ var ENDPOINT_MIN_CONTRAST = 4.55;
38
+ var STEP = 0.01;
39
+ var readsAt = (ink, fill) => {
40
+ const [, , , opacity = 1] = decomposeColor(ink).values;
41
+ return getContrastRatio(opacity < 1 ? blend(fill, ink, opacity) : ink, fill);
42
+ };
43
+ var awayFromInk = (ink) => getLuminance(ink) > 0.5 ? darken : lighten;
44
+ var endpointFill = (theme) => {
45
+ const { main, contrastText } = theme.palette.primary;
46
+ try {
47
+ if (readsAt(contrastText, main) >= ENDPOINT_MIN_CONTRAST) return main;
48
+ const move = awayFromInk(contrastText);
49
+ for (let coefficient = STEP; coefficient < 1; coefficient += STEP) {
50
+ const fill = move(main, coefficient);
51
+ if (readsAt(contrastText, fill) >= ENDPOINT_MIN_CONTRAST) return fill;
52
+ }
53
+ return move(main, 1);
54
+ } catch {
55
+ return main;
56
+ }
57
+ };
58
+ var endpointHoverFill = (theme) => {
59
+ const fill = endpointFill(theme);
60
+ try {
61
+ return awayFromInk(theme.palette.primary.contrastText)(fill, 0.15);
62
+ } catch {
63
+ return fill;
64
+ }
65
+ };
66
+
67
+ export {
68
+ bandFor,
69
+ BAND_OPACITY,
70
+ bandColor,
71
+ endpointFill,
72
+ endpointHoverFill
73
+ };
74
+ //# sourceMappingURL=chunk-H2UUMZQR.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/Calendar/Calendar.band.ts"],"sourcesContent":["import type { Theme } from '@mui/material/styles/index.js';\n\nimport { alpha, blend, darken, decomposeColor, getContrastRatio, getLuminance, lighten } from '../../../tokens/color';\n\nimport { isSameDay } from './Calendar.dates';\nimport type { DateRange, DayRenderArgs, SelectionMode } from './Calendar.types';\n\n/**\n * WHERE A DAY SITS ON THE RANGE BAND (FUT-4162).\n *\n * A selected range is ONE band behind its days, not a tile per day: the grid\n * has no column gap and each day paints its share of the band. A day strictly\n * inside the range paints all of it (`full`); the first and last day paint the\n * half that faces the rest of the range (`after` / `before`), so the band runs\n * into the round endpoint and stops at its centre. A range of one day, or no\n * range, paints none.\n *\n * While only the start is chosen, the hovered day stands in for the end, the\n * same preview `isDateInRange` draws.\n */\nexport type DayBand = 'none' | 'full' | 'after' | 'before';\n\n// The other end of the range: its end, or while only the start is chosen, the\n// hovered day standing in for it.\nconst otherEnd = (range: DateRange, hoveredDate: Date | null, isDisabled: (date: Date) => boolean) =>\n range.end ?? (hoveredDate && !isDisabled(hoveredDate) ? hoveredDate : null);\n\n// The half an endpoint paints: towards the rest of the range.\nconst endpointBand = (date: Date, start: Date, other: Date): DayBand => {\n const [first, last] = start < other ? [start, other] : [other, start];\n if (isSameDay(date, first)) return 'after';\n if (isSameDay(date, last)) return 'before';\n return 'none';\n};\n\nexport const bandFor = ({\n args,\n selectionMode,\n range,\n hoveredDate,\n isDisabled,\n}: {\n args: DayRenderArgs;\n selectionMode: SelectionMode;\n range: DateRange;\n hoveredDate: Date | null;\n isDisabled: (date: Date) => boolean;\n}): DayBand => {\n if (selectionMode !== 'range') return 'none';\n if (args.inRange) return 'full';\n\n const other = otherEnd(range, hoveredDate, isDisabled);\n if (!range.start || !other || isSameDay(range.start, other)) return 'none';\n return endpointBand(args.date, range.start, other);\n};\n\n/**\n * The band: the brand at a quarter strength, so it reads as the brand's tint on\n * any ground (on white it is the brand three quarters of the way to white).\n */\nexport const BAND_OPACITY = 0.25;\n\nexport const bandColor = (theme: Theme): string => alpha(theme.palette.primary.main, BAND_OPACITY);\n\n/**\n * WCAG AA for body text, plus a margin: `getLuminance` rounds to three\n * places, which can move a ratio by about a hundredth either way.\n */\nconst ENDPOINT_MIN_CONTRAST = 4.55;\nconst STEP = 0.01;\n\n// The ink as it reads ON the fill: MUI's dark ink is 87% black, so it is laid\n// over the fill before it is measured, rather than taken as solid black.\nconst readsAt = (ink: string, fill: string): number => {\n const [, , , opacity = 1] = decomposeColor(ink).values;\n return getContrastRatio(opacity < 1 ? blend(fill, ink, opacity) : ink, fill);\n};\n\n// Light ink (white) wants a darker fill; dark ink a lighter one.\nconst awayFromInk = (ink: string): ((color: string, coefficient: number) => string) =>\n getLuminance(ink) > 0.5 ? darken : lighten;\n\n/**\n * An endpoint's fill: the brand, moved away from its own ink JUST far enough\n * for that ink to read at AA (FUT-4162).\n *\n * The ink is the palette's `primary.contrastText`, which MUI picks at 3:1, so\n * a brand can ship an ink that reads at 3 to 4.5:1 on it — the default indigo\n * is 4.47:1 under white. Rather than change the ink (every other component\n * shares it), the fill gives way: darker under white ink, lighter under dark\n * ink. A brand that already passes is returned unchanged; the default indigo\n * moves by one percent, which no one can see.\n */\nexport const endpointFill = (theme: Theme): string => {\n const { main, contrastText } = theme.palette.primary;\n try {\n if (readsAt(contrastText, main) >= ENDPOINT_MIN_CONTRAST) return main;\n const move = awayFromInk(contrastText);\n for (let coefficient = STEP; coefficient < 1; coefficient += STEP) {\n const fill = move(main, coefficient);\n if (readsAt(contrastText, fill) >= ENDPOINT_MIN_CONTRAST) return fill;\n }\n return move(main, 1);\n } catch {\n // A colour format the helpers cannot decompose: the brand as it is.\n return main;\n }\n};\n\n/** A hovered endpoint: one more step the same way, so it only gains contrast. */\nexport const endpointHoverFill = (theme: Theme): string => {\n const fill = endpointFill(theme);\n try {\n return awayFromInk(theme.palette.primary.contrastText)(fill, 0.15);\n } catch {\n return fill;\n }\n};\n"],"mappings":";;;;;;;;;;;;;;AAwBA,IAAM,WAAW,CAAC,OAAkB,aAA0B,eAC5D,MAAM,QAAQ,eAAe,CAAC,WAAW,WAAW,IAAI,cAAc;AAGxE,IAAM,eAAe,CAAC,MAAY,OAAa,UAAyB;AACtE,QAAM,CAAC,OAAO,IAAI,IAAI,QAAQ,QAAQ,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,KAAK;AACpE,MAAI,UAAU,MAAM,KAAK,EAAG,QAAO;AACnC,MAAI,UAAU,MAAM,IAAI,EAAG,QAAO;AAClC,SAAO;AACT;AAEO,IAAM,UAAU,CAAC;AAAA,EACtB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAMe;AACb,MAAI,kBAAkB,QAAS,QAAO;AACtC,MAAI,KAAK,QAAS,QAAO;AAEzB,QAAM,QAAQ,SAAS,OAAO,aAAa,UAAU;AACrD,MAAI,CAAC,MAAM,SAAS,CAAC,SAAS,UAAU,MAAM,OAAO,KAAK,EAAG,QAAO;AACpE,SAAO,aAAa,KAAK,MAAM,MAAM,OAAO,KAAK;AACnD;AAMO,IAAM,eAAe;AAErB,IAAM,YAAY,CAAC,UAAyB,MAAM,MAAM,QAAQ,QAAQ,MAAM,YAAY;AAMjG,IAAM,wBAAwB;AAC9B,IAAM,OAAO;AAIb,IAAM,UAAU,CAAC,KAAa,SAAyB;AACrD,QAAM,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,IAAI,eAAe,GAAG,EAAE;AAChD,SAAO,iBAAiB,UAAU,IAAI,MAAM,MAAM,KAAK,OAAO,IAAI,KAAK,IAAI;AAC7E;AAGA,IAAM,cAAc,CAAC,QACnB,aAAa,GAAG,IAAI,MAAM,SAAS;AAa9B,IAAM,eAAe,CAAC,UAAyB;AACpD,QAAM,EAAE,MAAM,aAAa,IAAI,MAAM,QAAQ;AAC7C,MAAI;AACF,QAAI,QAAQ,cAAc,IAAI,KAAK,sBAAuB,QAAO;AACjE,UAAM,OAAO,YAAY,YAAY;AACrC,aAAS,cAAc,MAAM,cAAc,GAAG,eAAe,MAAM;AACjE,YAAM,OAAO,KAAK,MAAM,WAAW;AACnC,UAAI,QAAQ,cAAc,IAAI,KAAK,sBAAuB,QAAO;AAAA,IACnE;AACA,WAAO,KAAK,MAAM,CAAC;AAAA,EACrB,QAAQ;AAEN,WAAO;AAAA,EACT;AACF;AAGO,IAAM,oBAAoB,CAAC,UAAyB;AACzD,QAAM,OAAO,aAAa,KAAK;AAC/B,MAAI;AACF,WAAO,YAAY,MAAM,QAAQ,QAAQ,YAAY,EAAE,MAAM,IAAI;AAAA,EACnE,QAAQ;AACN,WAAO;AAAA,EACT;AACF;","names":[]}
@@ -12,13 +12,13 @@ import {
12
12
  } from "./chunk-JYWF76Z5.js";
13
13
  import {
14
14
  Chip
15
- } from "./chunk-NI67M453.js";
15
+ } from "./chunk-PGANINQD.js";
16
16
  import {
17
17
  Icon
18
18
  } from "./chunk-YEKPQAOW.js";
19
19
  import {
20
20
  Button
21
- } from "./chunk-HJJR2WGL.js";
21
+ } from "./chunk-YOXYSAUI.js";
22
22
  import {
23
23
  BUTTON_SIZES
24
24
  } from "./chunk-G2FUZALJ.js";
@@ -139,4 +139,4 @@ export {
139
139
  PendingSpinner,
140
140
  LearnMore
141
141
  };
142
- //# sourceMappingURL=chunk-UT545JBQ.js.map
142
+ //# sourceMappingURL=chunk-HC6OZ7QK.js.map
@@ -3,14 +3,14 @@ import {
3
3
  } from "./chunk-SALQ65SM.js";
4
4
  import {
5
5
  useSummaryInfo
6
- } from "./chunk-MK6UXAWY.js";
6
+ } from "./chunk-TSEBMVYY.js";
7
7
  import {
8
8
  LearnMore,
9
9
  PendingSpinner,
10
10
  SaveError,
11
11
  SettingHeader,
12
12
  partTestId
13
- } from "./chunk-UT545JBQ.js";
13
+ } from "./chunk-HC6OZ7QK.js";
14
14
  import {
15
15
  SETTING_CARD_OPEN_ATTR,
16
16
  actionsStyles,
@@ -23,7 +23,7 @@ import {
23
23
  } from "./chunk-YEKPQAOW.js";
24
24
  import {
25
25
  Button
26
- } from "./chunk-HJJR2WGL.js";
26
+ } from "./chunk-YOXYSAUI.js";
27
27
 
28
28
  // src/components/layout/SettingCard/SettingCard.tsx
29
29
  import Box from "@mui/material/Box/index.js";
@@ -170,4 +170,4 @@ SettingCard.displayName = "SettingCard";
170
170
  export {
171
171
  SettingCard
172
172
  };
173
- //# sourceMappingURL=chunk-MVNFUIJS.js.map
173
+ //# sourceMappingURL=chunk-HOPRZEBM.js.map
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  PaletteResults
3
- } from "./chunk-FZUAB2KS.js";
3
+ } from "./chunk-INFBO356.js";
4
4
  import {
5
5
  ShortcutChip
6
6
  } from "./chunk-Z6MCTGIK.js";
7
7
  import {
8
8
  useCommandPalette
9
- } from "./chunk-QJLOWBFW.js";
9
+ } from "./chunk-LXTNWQWF.js";
10
10
  import {
11
11
  EN_US_COMMAND_PALETTE_COPY
12
- } from "./chunk-SSCEX5NY.js";
12
+ } from "./chunk-656DBMWT.js";
13
13
  import {
14
14
  resolveLabels
15
15
  } from "./chunk-LL2BWQPM.js";
@@ -88,7 +88,7 @@ var Transition = React.forwardRef(
88
88
  return /* @__PURE__ */ jsx(Slide, { direction: "down", ref, ...props });
89
89
  }
90
90
  );
91
- var PaletteSearch = ({ inputRef, placeholder, value, dataTestId, onChange, onClose }) => /* @__PURE__ */ jsxs(SearchContainer, { children: [
91
+ var PaletteSearch = ({ inputRef, placeholder, value, dataTestId, closeLabel, onChange, onClose }) => /* @__PURE__ */ jsxs(SearchContainer, { children: [
92
92
  /* @__PURE__ */ jsx(SearchIcon, { sx: { color: "text.secondary", mr: 1 } }),
93
93
  /* @__PURE__ */ jsx(
94
94
  SearchInput,
@@ -104,7 +104,7 @@ var PaletteSearch = ({ inputRef, placeholder, value, dataTestId, onChange, onClo
104
104
  inputProps: { "data-testid": `${dataTestId}-input` }
105
105
  }
106
106
  ),
107
- /* @__PURE__ */ jsx(IconButton, { size: "small", onClick: onClose, sx: { ml: 1 }, children: /* @__PURE__ */ jsx(CloseIcon, { fontSize: "small" }) })
107
+ /* @__PURE__ */ jsx(IconButton, { size: "small", onClick: onClose, "aria-label": closeLabel, sx: { ml: 1 }, children: /* @__PURE__ */ jsx(CloseIcon, { fontSize: "small" }) })
108
108
  ] });
109
109
  var PaletteFooter = ({
110
110
  commandCount,
@@ -198,6 +198,7 @@ var CommandPalette = ({
198
198
  placeholder: placeholder ?? text.placeholder,
199
199
  value: searchQuery,
200
200
  dataTestId,
201
+ closeLabel: text.closeSearch,
201
202
  onChange: handleSearchChange,
202
203
  onClose
203
204
  }
@@ -230,4 +231,4 @@ export {
230
231
  CommandPalette,
231
232
  CommandPalette_default
232
233
  };
233
- //# sourceMappingURL=chunk-Z445LLFN.js.map
234
+ //# sourceMappingURL=chunk-I44XL4Z4.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/navigation/CommandPalette/CommandPalette.tsx"],"sourcesContent":["import { EN_US_COMMAND_PALETTE_COPY } from '../../../en-US.navigation';\nimport { resolveLabels } from '../../../utils/resolve-labels';\nimport CloseIcon from '@mui/icons-material/Close';\nimport EnterIcon from '@mui/icons-material/KeyboardReturn';\nimport SearchIcon from '@mui/icons-material/Search';\nimport Box from '@mui/material/Box/index.js';\nimport Dialog from '@mui/material/Dialog/index.js';\nimport DialogContent from '@mui/material/DialogContent/index.js';\nimport IconButton from '@mui/material/IconButton/index.js';\nimport InputBase from '@mui/material/InputBase/index.js';\nimport Paper from '@mui/material/Paper/index.js';\nimport Slide from '@mui/material/Slide/index.js';\nimport Typography from '@mui/material/Typography/index.js';\nimport { alpha, styled, useTheme } from '@mui/material/styles/index.js';\nimport type { TransitionProps } from '@mui/material/transitions/index.js';\nimport type { FC} from 'react';\nimport React, { } from 'react';\n\nimport { useCommandPalette } from './CommandPalette.hooks';\nimport { PaletteResults } from './CommandPaletteResults';\nimport { ShortcutChip } from './ShortcutChip';\nimport type { CommandPaletteProps } from './CommandPalette.types';\nimport type { CommandPaletteCopy } from '../../../copy';\nimport { scrim } from '../../../tokens/ink';\nimport { rem, sxRem } from '../../../tokens/relative';\n\n// Styled components\nconst StyledDialog = styled(Dialog)(({ theme }) => ({\n '& .MuiBackdrop-root': {\n backgroundColor: scrim(theme, 0.6),\n backdropFilter: `blur(${rem(theme, 4)})` },\n '& .MuiDialog-paper': {\n position: 'fixed',\n top: '20%',\n margin: 0,\n maxHeight: 'none',\n background: 'transparent',\n boxShadow: 'none',\n overflow: 'visible' } }));\n\nconst PaletteContainer = styled(Paper)(({ theme }) => ({\n width: '100%',\n // 640 is the desktop width (FUT-3347); below it the palette takes the dialog's\n // own width, which already keeps MUI's 32px gutters, so a phone sees it whole.\n maxWidth: `min(${rem(theme, 640)}, 100%)`,\n background: `linear-gradient(135deg, ${alpha(theme.palette.background.paper, 0.98)} 0%, ${alpha(theme.palette.background.paper, 0.95)} 100%)`,\n backdropFilter: `blur(${rem(theme, 20)})`,\n WebkitBackdropFilter: `blur(${rem(theme, 20)})`,\n border: `1px solid ${alpha(theme.palette.divider, 0.18)}`,\n borderRadius: theme.shape.borderRadius * 2,\n overflow: 'hidden',\n boxShadow: theme.shadows[24] }));\n\nconst SearchContainer = styled(Box)(({ theme }) => ({\n display: 'flex',\n alignItems: 'center',\n padding: theme.spacing(2),\n borderBottom: `1px solid ${alpha(theme.palette.divider, 0.12)}`,\n background: alpha(theme.palette.background.default, 0.4) }));\n\nconst SearchInput = styled(InputBase)(({ theme }) => ({\n flex: 1,\n fontSize: rem(theme, 18),\n fontWeight: 400,\n '& input': {\n padding: theme.spacing(0, 1),\n '&::placeholder': {\n color: theme.palette.text.secondary,\n opacity: 0.8 } } }));\n\nconst Transition = React.forwardRef<unknown, TransitionProps & { children: React.ReactElement }>(\n function Transition(props, ref) {\n return <Slide direction=\"down\" ref={ref} {...props} />;\n },\n);\n\n// Main component\nconst PaletteSearch: React.FC<{\n inputRef: React.Ref<HTMLInputElement>;\n placeholder?: string;\n value: string;\n dataTestId?: string;\n closeLabel: string;\n onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;\n onClose: () => void;\n}> = ({ inputRef, placeholder, value, dataTestId, closeLabel, onChange, onClose }) => (\n <SearchContainer>\n <SearchIcon sx={{ color: 'text.secondary', mr: 1 }} />\n <SearchInput\n ref={inputRef}\n placeholder={placeholder}\n value={value}\n onChange={onChange}\n autoComplete=\"off\"\n autoCorrect=\"off\"\n autoCapitalize=\"off\"\n spellCheck=\"false\"\n inputProps={{ 'data-testid': `${dataTestId}-input` }}\n />\n <IconButton size=\"small\" onClick={onClose} aria-label={closeLabel} sx={{ ml: 1 }}>\n <CloseIcon fontSize=\"small\" />\n </IconButton>\n </SearchContainer>\n);\n\nconst PaletteFooter: React.FC<{ commandCount: number; copy: CommandPaletteCopy }> = ({\n commandCount,\n copy,\n}) => {\n const theme = useTheme();\n const text = resolveLabels(EN_US_COMMAND_PALETTE_COPY, copy);\n\n return (\n <Box\n sx={{\n display: 'flex',\n // Wraps the count under the hints on a phone; one row on desktop.\n flexWrap: 'wrap',\n gap: 1,\n justifyContent: 'space-between',\n alignItems: 'center',\n padding: 1,\n borderTop: `1px solid ${alpha(theme.palette.divider, 0.12)}`,\n background: alpha(theme.palette.background.default, 0.4) }}\n >\n <Box sx={{ display: 'flex', flexWrap: 'wrap', gap: 1 }}>\n <ShortcutChip\n icon={<EnterIcon sx={{ fontSize: sxRem(12) }} />}\n label={copy.execute}\n size=\"small\"\n />\n <ShortcutChip label={copy.navigate} size=\"small\" />\n <ShortcutChip label={copy.close} size=\"small\" />\n </Box>\n <Typography variant=\"caption\" color=\"text.secondary\">\n {text.commandCount(commandCount)}\n </Typography>\n </Box>\n );\n};\n\nexport const CommandPalette: FC<CommandPaletteProps> = ({\n copy,\n open,\n onClose,\n commands,\n placeholder,\n width,\n maxHeight,\n showRecent = true,\n recentCommands = [],\n onCommandExecute,\n dataTestId = 'command-palette' }) => {\n const text = resolveLabels(EN_US_COMMAND_PALETTE_COPY, copy);\n const {\n searchQuery,\n setSearchQuery,\n selectedIndex,\n setSelectedIndex,\n searchInputRef,\n listRef,\n filteredCommands,\n groupedCommands,\n executeCommand,\n recentCommandIds } = useCommandPalette({\n open,\n commands,\n showRecent,\n recentCommands,\n onCommandExecute,\n onClose,\n generalLabel: text.general });\n\n const handleSearchChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n setSearchQuery(event.target.value);\n };\n\n return (\n <StyledDialog\n open={open}\n onClose={onClose}\n TransitionComponent={Transition}\n maxWidth={false}\n fullWidth\n data-testid={dataTestId}\n >\n <DialogContent sx={{ overflow: 'visible', p: 0 }}>\n <PaletteContainer elevation={24} sx={{ width: width ?? sxRem(640), maxHeight: maxHeight ?? sxRem(400) }}>\n <PaletteSearch\n inputRef={searchInputRef}\n placeholder={placeholder ?? text.placeholder}\n value={searchQuery}\n dataTestId={dataTestId}\n closeLabel={text.closeSearch}\n onChange={handleSearchChange}\n onClose={onClose}\n />\n\n <PaletteResults\n copy={copy}\n listRef={listRef}\n dataTestId={dataTestId}\n searchQuery={searchQuery}\n showRecent={showRecent}\n commands={commands}\n recentCommandIds={recentCommandIds}\n filteredCommands={filteredCommands}\n groupedCommands={groupedCommands}\n selectedIndex={selectedIndex}\n onSelect={setSelectedIndex}\n onExecute={executeCommand}\n />\n\n <PaletteFooter copy={copy} commandCount={filteredCommands.length} />\n </PaletteContainer>\n </DialogContent>\n </StyledDialog>\n );\n};\n\n// Export default\nexport default CommandPalette;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAO,eAAe;AACtB,OAAO,eAAe;AACtB,OAAO,gBAAgB;AACvB,OAAO,SAAS;AAChB,OAAO,YAAY;AACnB,OAAO,mBAAmB;AAC1B,OAAO,gBAAgB;AACvB,OAAO,eAAe;AACtB,OAAO,WAAW;AAClB,OAAO,WAAW;AAClB,OAAO,gBAAgB;AACvB,SAAS,OAAO,QAAQ,gBAAgB;AAGxC,OAAO,WAAiB;AAwDb,cAcT,YAdS;AA7CX,IAAM,eAAe,OAAO,MAAM,EAAE,CAAC,EAAE,MAAM,OAAO;AAAA,EAClD,uBAAuB;AAAA,IACrB,iBAAiB,MAAM,OAAO,GAAG;AAAA,IACjC,gBAAgB,QAAQ,IAAI,OAAO,CAAC,CAAC;AAAA,EAAI;AAAA,EAC3C,sBAAsB;AAAA,IACpB,UAAU;AAAA,IACV,KAAK;AAAA,IACL,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,YAAY;AAAA,IACZ,WAAW;AAAA,IACX,UAAU;AAAA,EAAU;AAAE,EAAE;AAE5B,IAAM,mBAAmB,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,OAAO;AAAA,EACrD,OAAO;AAAA;AAAA;AAAA,EAGP,UAAU,OAAO,IAAI,OAAO,GAAG,CAAC;AAAA,EAChC,YAAY,2BAA2B,MAAM,MAAM,QAAQ,WAAW,OAAO,IAAI,CAAC,QAAQ,MAAM,MAAM,QAAQ,WAAW,OAAO,IAAI,CAAC;AAAA,EACrI,gBAAgB,QAAQ,IAAI,OAAO,EAAE,CAAC;AAAA,EACtC,sBAAsB,QAAQ,IAAI,OAAO,EAAE,CAAC;AAAA,EAC5C,QAAQ,aAAa,MAAM,MAAM,QAAQ,SAAS,IAAI,CAAC;AAAA,EACvD,cAAc,MAAM,MAAM,eAAe;AAAA,EACzC,UAAU;AAAA,EACV,WAAW,MAAM,QAAQ,EAAE;AAAE,EAAE;AAEjC,IAAM,kBAAkB,OAAO,GAAG,EAAE,CAAC,EAAE,MAAM,OAAO;AAAA,EAClD,SAAS;AAAA,EACT,YAAY;AAAA,EACZ,SAAS,MAAM,QAAQ,CAAC;AAAA,EACxB,cAAc,aAAa,MAAM,MAAM,QAAQ,SAAS,IAAI,CAAC;AAAA,EAC7D,YAAY,MAAM,MAAM,QAAQ,WAAW,SAAS,GAAG;AAAE,EAAE;AAE7D,IAAM,cAAc,OAAO,SAAS,EAAE,CAAC,EAAE,MAAM,OAAO;AAAA,EACpD,MAAM;AAAA,EACN,UAAU,IAAI,OAAO,EAAE;AAAA,EACvB,YAAY;AAAA,EACZ,WAAW;AAAA,IACT,SAAS,MAAM,QAAQ,GAAG,CAAC;AAAA,IAC3B,kBAAkB;AAAA,MAChB,OAAO,MAAM,QAAQ,KAAK;AAAA,MAC1B,SAAS;AAAA,IAAI;AAAA,EAAE;AAAE,EAAE;AAEzB,IAAM,aAAa,MAAM;AAAA,EACvB,SAASA,YAAW,OAAO,KAAK;AAC9B,WAAO,oBAAC,SAAM,WAAU,QAAO,KAAW,GAAG,OAAO;AAAA,EACtD;AACF;AAGA,IAAM,gBAQD,CAAC,EAAE,UAAU,aAAa,OAAO,YAAY,YAAY,UAAU,QAAQ,MAC9E,qBAAC,mBACC;AAAA,sBAAC,cAAW,IAAI,EAAE,OAAO,kBAAkB,IAAI,EAAE,GAAG;AAAA,EACpD;AAAA,IAAC;AAAA;AAAA,MACC,KAAK;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA,cAAa;AAAA,MACb,aAAY;AAAA,MACZ,gBAAe;AAAA,MACf,YAAW;AAAA,MACX,YAAY,EAAE,eAAe,GAAG,UAAU,SAAS;AAAA;AAAA,EACrD;AAAA,EACA,oBAAC,cAAW,MAAK,SAAQ,SAAS,SAAS,cAAY,YAAY,IAAI,EAAE,IAAI,EAAE,GAC7E,8BAAC,aAAU,UAAS,SAAQ,GAC9B;AAAA,GACF;AAGF,IAAM,gBAA8E,CAAC;AAAA,EACnF;AAAA,EACA;AACF,MAAM;AACJ,QAAM,QAAQ,SAAS;AACvB,QAAM,OAAO,cAAc,4BAA4B,IAAI;AAE3D,SACE;AAAA,IAAC;AAAA;AAAA,MACC,IAAI;AAAA,QACF,SAAS;AAAA;AAAA,QAET,UAAU;AAAA,QACV,KAAK;AAAA,QACL,gBAAgB;AAAA,QAChB,YAAY;AAAA,QACZ,SAAS;AAAA,QACT,WAAW,aAAa,MAAM,MAAM,QAAQ,SAAS,IAAI,CAAC;AAAA,QAC1D,YAAY,MAAM,MAAM,QAAQ,WAAW,SAAS,GAAG;AAAA,MAAE;AAAA,MAE3D;AAAA,6BAAC,OAAI,IAAI,EAAE,SAAS,QAAQ,UAAU,QAAQ,KAAK,EAAE,GACnD;AAAA;AAAA,YAAC;AAAA;AAAA,cACC,MAAM,oBAAC,aAAU,IAAI,EAAE,UAAU,MAAM,EAAE,EAAE,GAAG;AAAA,cAC9C,OAAO,KAAK;AAAA,cACZ,MAAK;AAAA;AAAA,UACP;AAAA,UACA,oBAAC,gBAAa,OAAO,KAAK,UAAU,MAAK,SAAQ;AAAA,UACjD,oBAAC,gBAAa,OAAO,KAAK,OAAO,MAAK,SAAQ;AAAA,WAChD;AAAA,QACA,oBAAC,cAAW,SAAQ,WAAU,OAAM,kBACjC,eAAK,aAAa,YAAY,GACjC;AAAA;AAAA;AAAA,EACF;AAEJ;AAEO,IAAM,iBAA0C,CAAC;AAAA,EACtD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,aAAa;AAAA,EACb,iBAAiB,CAAC;AAAA,EAClB;AAAA,EACA,aAAa;AAAkB,MAAM;AACrC,QAAM,OAAO,cAAc,4BAA4B,IAAI;AAC3D,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAiB,IAAI,kBAAkB;AAAA,IACvC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,cAAc,KAAK;AAAA,EAAQ,CAAC;AAE9B,QAAM,qBAAqB,CAAC,UAA+C;AACzE,mBAAe,MAAM,OAAO,KAAK;AAAA,EACnC;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA,qBAAqB;AAAA,MACrB,UAAU;AAAA,MACV,WAAS;AAAA,MACT,eAAa;AAAA,MAEb,8BAAC,iBAAc,IAAI,EAAE,UAAU,WAAW,GAAG,EAAE,GAC7C,+BAAC,oBAAiB,WAAW,IAAI,IAAI,EAAE,OAAO,SAAS,MAAM,GAAG,GAAG,WAAW,aAAa,MAAM,GAAG,EAAE,GACpG;AAAA;AAAA,UAAC;AAAA;AAAA,YACC,UAAU;AAAA,YACV,aAAa,eAAe,KAAK;AAAA,YACjC,OAAO;AAAA,YACP;AAAA,YACA,YAAY,KAAK;AAAA,YACjB,UAAU;AAAA,YACV;AAAA;AAAA,QACF;AAAA,QAEA;AAAA,UAAC;AAAA;AAAA,YACD;AAAA,YACE;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA,UAAU;AAAA,YACV,WAAW;AAAA;AAAA,QACb;AAAA,QAEA,oBAAC,iBAAc,MAAY,cAAc,iBAAiB,QAAQ;AAAA,SACpE,GACF;AAAA;AAAA,EACF;AAEJ;AAGA,IAAO,yBAAQ;","names":["Transition"]}