@12-apps/ui 6.14.0 → 6.15.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (480) hide show
  1. package/components-catalog.md +8 -1
  2. package/dist/_internal/components/data-display/Badge/Badge.js +2 -2
  3. package/dist/_internal/components/data-display/CardKit/CardKebab.js +3 -3
  4. package/dist/_internal/components/data-display/CardKit/use-remove-confirm.js +7 -7
  5. package/dist/_internal/components/data-display/CardKit/use-row-confirm.js +7 -7
  6. package/dist/_internal/components/data-display/Carousel/Carousel.js +2 -2
  7. package/dist/_internal/components/data-display/Chart/Chart.js +3 -3
  8. package/dist/_internal/components/data-display/Chart/SpecChart.js +6 -6
  9. package/dist/_internal/components/data-display/Chart/chart-renderers.js +2 -2
  10. package/dist/_internal/components/data-display/Chart/chart-spec.js +2 -2
  11. package/dist/_internal/components/data-display/DataGrid/DataGrid.js +3 -3
  12. package/dist/_internal/components/data-display/DataViews/DataViewsGrid.js +55 -54
  13. package/dist/_internal/components/data-display/DataViews/DataViewsTableBase.js +72 -71
  14. package/dist/_internal/components/data-display/DataViews/DeleteViewDialog.js +3 -3
  15. package/dist/_internal/components/data-display/DataViews/ManageViewsDialog.js +7 -7
  16. package/dist/_internal/components/data-display/DataViews/SaveViewModal.js +6 -5
  17. package/dist/_internal/components/data-display/DataViews/base-list-card-geometry.js +4 -4
  18. package/dist/_internal/components/data-display/DataViews/base-list-card-slots.js +3 -3
  19. package/dist/_internal/components/data-display/DataViews/base-list-card.js +6 -6
  20. package/dist/_internal/components/data-display/DataViews/data-views-category-pill.js +16 -15
  21. package/dist/_internal/components/data-display/DataViews/data-views-columns.js +4 -4
  22. package/dist/_internal/components/data-display/DataViews/data-views-display-panel.js +5 -5
  23. package/dist/_internal/components/data-display/DataViews/data-views-empty.js +3 -3
  24. package/dist/_internal/components/data-display/DataViews/data-views-export.js +3 -3
  25. package/dist/_internal/components/data-display/DataViews/data-views-filter-panel.js +22 -21
  26. package/dist/_internal/components/data-display/DataViews/data-views-grid-bodies.js +10 -10
  27. package/dist/_internal/components/data-display/DataViews/data-views-grid-helpers.js +3 -3
  28. package/dist/_internal/components/data-display/DataViews/data-views-grid-parts.js +50 -49
  29. package/dist/_internal/components/data-display/DataViews/data-views-inline-bar.js +24 -23
  30. package/dist/_internal/components/data-display/DataViews/data-views-more-fields.js +6 -6
  31. package/dist/_internal/components/data-display/DataViews/data-views-more-filters.js +9 -9
  32. package/dist/_internal/components/data-display/DataViews/data-views-range-pill.js +2 -2
  33. package/dist/_internal/components/data-display/DataViews/data-views-scope-tabs.js +2 -2
  34. package/dist/_internal/components/data-display/DataViews/data-views-select-all-strip.js +3 -3
  35. package/dist/_internal/components/data-display/DataViews/data-views-shell-toolbar.js +12 -12
  36. package/dist/_internal/components/data-display/DataViews/data-views-table-parts.js +15 -14
  37. package/dist/_internal/components/data-display/DataViews/data-views-toolbar.js +11 -11
  38. package/dist/_internal/components/data-display/DataViews/data-views-view-nav.js +3 -3
  39. package/dist/_internal/components/data-display/DataViews/list-card-rails.js +2 -2
  40. package/dist/_internal/components/data-display/DataViews/use-data-views-state.js +7 -7
  41. package/dist/_internal/components/data-display/HoverCard/HoverCard.js +2 -2
  42. package/dist/_internal/components/data-display/InteractiveTooltip/InteractiveTooltip.js +2 -2
  43. package/dist/_internal/components/data-display/Lightbox/Lightbox.js +6 -6
  44. package/dist/_internal/components/data-display/MapPreview/MapDecorations.js +2 -2
  45. package/dist/_internal/components/data-display/MapPreview/MapLayers.js +3 -3
  46. package/dist/_internal/components/data-display/MapPreview/MapPreview.hooks.js +2 -2
  47. package/dist/_internal/components/data-display/MapPreview/MapPreview.js +11 -11
  48. package/dist/_internal/components/data-display/MapPreview/MapTiles.js +2 -2
  49. package/dist/_internal/components/data-display/MapPreview/StaticMapView.js +4 -4
  50. package/dist/_internal/components/data-display/MapPreview/useMapPreview.js +3 -3
  51. package/dist/_internal/components/data-display/Sheet/Sheet.hooks.js +2 -2
  52. package/dist/_internal/components/data-display/Sheet/Sheet.js +4 -4
  53. package/dist/_internal/components/data-display/Table/Table.js +2 -2
  54. package/dist/_internal/components/data-display/index.js +45 -45
  55. package/dist/_internal/components/feedback/ConfirmAction/ConfirmAction.js +2 -2
  56. package/dist/_internal/components/feedback/ConfirmAction/ConfirmButton.js +5 -5
  57. package/dist/_internal/components/feedback/ConfirmAction/with-confirmation.js +2 -2
  58. package/dist/_internal/components/feedback/StackedModal/StackedModal.js +6 -6
  59. package/dist/_internal/components/feedback/index.js +15 -15
  60. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocomplete.hooks.js +2 -2
  61. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocomplete.js +10 -9
  62. package/dist/_internal/components/form/AddressAutocomplete/AddressAutocompleteField.js +5 -4
  63. package/dist/_internal/components/form/AddressAutocomplete/AddressFallbackField.js +3 -2
  64. package/dist/_internal/components/form/AddressAutocomplete/AddressInputField.js +3 -2
  65. package/dist/_internal/components/form/AddressAutocomplete/AddressTextField.js +2 -1
  66. package/dist/_internal/components/form/Autocomplete/Autocomplete.js +2 -2
  67. package/dist/_internal/components/form/Button/Button.js +2 -2
  68. package/dist/_internal/components/form/Calendar/Calendar.js +4 -4
  69. package/dist/_internal/components/form/Calendar/CalendarDayCell.js +2 -2
  70. package/dist/_internal/components/form/Calendar/CalendarMonth.js +3 -3
  71. package/dist/_internal/components/form/CategorySelect/CategoryPanel.js +8 -7
  72. package/dist/_internal/components/form/CategorySelect/CategoryPanelFoot.js +3 -2
  73. package/dist/_internal/components/form/CategorySelect/CategoryPanelHead.js +3 -2
  74. package/dist/_internal/components/form/CategorySelect/CategoryPanelList.js +5 -4
  75. package/dist/_internal/components/form/CategorySelect/CategoryRows.js +4 -3
  76. package/dist/_internal/components/form/CategorySelect/CategorySelect.js +12 -11
  77. package/dist/_internal/components/form/CategorySelect/CategorySelect.styles.js +2 -1
  78. package/dist/_internal/components/form/CategorySelect/CategoryTrigger.js +3 -2
  79. package/dist/_internal/components/form/CepField/CepField.js +4 -3
  80. package/dist/_internal/components/form/CodeEditor/CodeEditor.js +4 -3
  81. package/dist/_internal/components/form/CreatableSelect/CreatableSelect.js +2 -1
  82. package/dist/_internal/components/form/DateRangePicker/DateRangePicker.js +7 -7
  83. package/dist/_internal/components/form/HeaderActions/HeaderActions.js +11 -0
  84. package/dist/_internal/components/form/HeaderActions/HeaderActions.js.map +1 -0
  85. package/dist/_internal/components/form/HeaderActions/HeaderActions.types.js +1 -0
  86. package/dist/_internal/components/form/HeaderActions/HeaderActions.types.js.map +1 -0
  87. package/dist/_internal/components/form/Input/Input.js +3 -2
  88. package/dist/_internal/components/form/Input/Input.styles.js +2 -1
  89. package/dist/_internal/components/form/InputOTP/InputOTP.js +3 -2
  90. package/dist/_internal/components/form/InputOTP/InputOTP.styles.js +2 -1
  91. package/dist/_internal/components/form/Label/Label.js +2 -2
  92. package/dist/_internal/components/form/PhoneInput/PhoneInput.js +2 -1
  93. package/dist/_internal/components/form/RadioGroup/RadioGroup.js +4 -3
  94. package/dist/_internal/components/form/RadioGroup/RadioGroup.styles.js +2 -1
  95. package/dist/_internal/components/form/RadioGroup/RadioGroup.variants.js +3 -2
  96. package/dist/_internal/components/form/RichTextEditor/RichTextEditor.js +3 -2
  97. package/dist/_internal/components/form/Select/Select.js +2 -1
  98. package/dist/_internal/components/form/Textarea/Textarea.js +3 -2
  99. package/dist/_internal/components/form/Textarea/Textarea.styles.js +2 -1
  100. package/dist/_internal/components/form/Textarea/TextareaRichEditor.js +5 -2
  101. package/dist/_internal/components/form/Textarea/TextareaRichEditor.js.map +1 -1
  102. package/dist/_internal/components/form/Toggle/Toggle.js +3 -2
  103. package/dist/_internal/components/form/Toggle/Toggle.styles.js +2 -1
  104. package/dist/_internal/components/form/index.js +60 -59
  105. package/dist/_internal/components/form/total-form/Fields/CategoryField.js +13 -12
  106. package/dist/_internal/components/form/total-form/Fields/CepField.js +5 -4
  107. package/dist/_internal/components/form/total-form/Fields/SelectField.js +3 -2
  108. package/dist/_internal/components/form/total-form/Fields/TextField.js +4 -3
  109. package/dist/_internal/components/form/total-form/Fields/index.js +25 -24
  110. package/dist/_internal/components/form/total-form/SubmitButton.js +3 -3
  111. package/dist/_internal/components/index.js +160 -157
  112. package/dist/_internal/components/layout/Dashboard/Dashboard.js +4 -2
  113. package/dist/_internal/components/layout/Dashboard/DashboardParts.js +5 -1
  114. package/dist/_internal/components/layout/ScrollArea/ScrollArea.js +3 -3
  115. package/dist/_internal/components/layout/index.js +22 -20
  116. package/dist/_internal/components/navigation/AppHeader/AppHeader.details.js +7 -7
  117. package/dist/_internal/components/navigation/CommandPalette/CommandPalette.js +3 -3
  118. package/dist/_internal/components/navigation/NavigationMenu/NavigationMegaSection.js +3 -3
  119. package/dist/_internal/components/navigation/NavigationMenu/NavigationMenu.js +5 -5
  120. package/dist/_internal/components/navigation/NavigationMenu/NavigationMenuItem.js +2 -2
  121. package/dist/_internal/components/navigation/NavigationMenu/NavigationStandardBody.js +3 -3
  122. package/dist/_internal/components/navigation/index.js +19 -19
  123. package/dist/_internal/components/typography/index.js +3 -3
  124. package/dist/_internal/components/utility/InstallPrompt/InstallPrompt.js +2 -2
  125. package/dist/_internal/components/utility/index.js +7 -7
  126. package/dist/_internal/en-US.data-display.js +2 -2
  127. package/dist/_internal/social-login-button/social-login-button.js +3 -3
  128. package/dist/_internal/tokens/field-edge.js +10 -0
  129. package/dist/_internal/tokens/field-edge.js.map +1 -0
  130. package/dist/_internal/user-avatar/user-avatar.js +3 -3
  131. package/dist/charts.js +11 -11
  132. package/dist/{chunk-WQSL6MCA.js → chunk-23FCBIUN.js} +4 -4
  133. package/dist/{chunk-QIKTIKO6.js → chunk-24LW52EU.js} +2 -2
  134. package/dist/{chunk-4VPCZFF3.js → chunk-2W4CIWTW.js} +7 -4
  135. package/dist/chunk-2W4CIWTW.js.map +1 -0
  136. package/dist/{chunk-75KRWRJA.js → chunk-2ZDTGI5V.js} +7 -7
  137. package/dist/{chunk-XPS7FWZS.js → chunk-3LO5JWTC.js} +3 -3
  138. package/dist/{chunk-MYOFULG4.js → chunk-3ORFVLI3.js} +2 -2
  139. package/dist/{chunk-EIGELK2H.js → chunk-3P4THDBM.js} +4 -4
  140. package/dist/{chunk-SJIBPRPB.js → chunk-3T2I6BYA.js} +4 -4
  141. package/dist/{chunk-J72KWTHC.js → chunk-45N6LXUU.js} +5 -3
  142. package/dist/chunk-45N6LXUU.js.map +1 -0
  143. package/dist/{chunk-ZNGUDGKW.js → chunk-45OIUWGO.js} +9 -9
  144. package/dist/{chunk-4ETQRBZC.js → chunk-46UPILLK.js} +4 -4
  145. package/dist/{chunk-S7CAXRRP.js → chunk-4Y65Q3CR.js} +2 -2
  146. package/dist/{chunk-XN5AYC5S.js → chunk-5SYD23V4.js} +7 -4
  147. package/dist/chunk-5SYD23V4.js.map +1 -0
  148. package/dist/{chunk-2UCJJACD.js → chunk-5VVM2PPV.js} +12 -12
  149. package/dist/{chunk-JE6RZ5L6.js → chunk-5ZOJLYD2.js} +4 -4
  150. package/dist/{chunk-B2324WXJ.js → chunk-64IEKEMQ.js} +7 -4
  151. package/dist/chunk-64IEKEMQ.js.map +1 -0
  152. package/dist/{chunk-AVGTTWTE.js → chunk-65DLYC4S.js} +4 -4
  153. package/dist/{chunk-O6V7KKW7.js → chunk-6CBYPMYQ.js} +5 -5
  154. package/dist/{chunk-BPCYXLWY.js → chunk-6HNEEJES.js} +4 -4
  155. package/dist/{chunk-WXVHZHSJ.js → chunk-6RFL7HGI.js} +3 -3
  156. package/dist/{chunk-UENDC45F.js → chunk-6TYSEAAT.js} +3 -3
  157. package/dist/{chunk-FXMZMX5E.js → chunk-6XPNJLXE.js} +6 -2
  158. package/dist/chunk-6XPNJLXE.js.map +1 -0
  159. package/dist/{chunk-R7MX5KPJ.js → chunk-6YLAVHV4.js} +4 -4
  160. package/dist/{chunk-A43SJQYE.js → chunk-74LYLKO2.js} +4 -2
  161. package/dist/chunk-74LYLKO2.js.map +1 -0
  162. package/dist/{chunk-A2WJMZX5.js → chunk-7DBFEZRC.js} +5 -2
  163. package/dist/chunk-7DBFEZRC.js.map +1 -0
  164. package/dist/{chunk-RXSGHPCR.js → chunk-7FOOLP5H.js} +4 -4
  165. package/dist/{chunk-EICVL6GS.js → chunk-7HPPUO2A.js} +2 -2
  166. package/dist/{chunk-3BR2CLAM.js → chunk-A3KY6NUA.js} +2 -2
  167. package/dist/{chunk-5QQWAIZO.js → chunk-ACDYA5WC.js} +6 -2
  168. package/dist/chunk-ACDYA5WC.js.map +1 -0
  169. package/dist/{chunk-2I5B5NNT.js → chunk-AX7UFG2U.js} +2 -2
  170. package/dist/{chunk-7DNQHMDO.js → chunk-B6IURHSZ.js} +4 -4
  171. package/dist/{chunk-CZJLWCEG.js → chunk-BPYPUEM5.js} +2 -2
  172. package/dist/{chunk-5VZPVDUF.js → chunk-COSJTD6Z.js} +2 -2
  173. package/dist/{chunk-AP3PVR3T.js → chunk-CXA6UNFF.js} +5 -5
  174. package/dist/{chunk-MNZ2NT5A.js → chunk-DCEMUZJQ.js} +6 -2
  175. package/dist/chunk-DCEMUZJQ.js.map +1 -0
  176. package/dist/{chunk-LPNF4YJ7.js → chunk-DGMR3IMM.js} +6 -6
  177. package/dist/{chunk-MUFI3ZXS.js → chunk-DQIQKIEA.js} +2 -2
  178. package/dist/{chunk-LQR2IVSL.js → chunk-DWUMMMLR.js} +4 -4
  179. package/dist/{chunk-56SMIHWE.js → chunk-EE2LBAJH.js} +9 -9
  180. package/dist/{chunk-SHDIZSN5.js → chunk-EGRFMPGD.js} +6 -6
  181. package/dist/{chunk-M6365FGG.js → chunk-ELYLG4F7.js} +7 -7
  182. package/dist/{chunk-PHA3NFZM.js → chunk-ENK4XGKF.js} +4 -4
  183. package/dist/{chunk-XFUNJYFT.js → chunk-EPNUVSNK.js} +7 -7
  184. package/dist/{chunk-FLSSV4TH.js → chunk-EWGVRRUF.js} +23 -2
  185. package/dist/chunk-EWGVRRUF.js.map +1 -0
  186. package/dist/{chunk-QTPKACVO.js → chunk-EY4LPLIR.js} +2 -2
  187. package/dist/{chunk-XCT2ZLA6.js → chunk-FCOEJCUP.js} +6 -2
  188. package/dist/chunk-FCOEJCUP.js.map +1 -0
  189. package/dist/{chunk-GNAAHDCN.js → chunk-FF55LRSV.js} +2 -2
  190. package/dist/{chunk-L6KEVPXN.js → chunk-FH4VARZ7.js} +7 -7
  191. package/dist/{chunk-J4DDXHLB.js → chunk-FJHNNSD3.js} +6 -6
  192. package/dist/{chunk-ONZPM6FP.js → chunk-G7CFUI4I.js} +2 -2
  193. package/dist/{chunk-KDIWFARU.js → chunk-GBB6XQ56.js} +2 -2
  194. package/dist/{chunk-UHXNEXOC.js → chunk-GFBNUWT5.js} +3 -3
  195. package/dist/{chunk-PLOOVF43.js → chunk-GGE7Y53F.js} +2 -2
  196. package/dist/{chunk-R6SBP5M5.js → chunk-GOWBYHYW.js} +4 -4
  197. package/dist/{chunk-HDNK7BAX.js → chunk-GT7C6TSM.js} +3 -3
  198. package/dist/{chunk-7SZ3PFZW.js → chunk-HBAPVB7T.js} +2 -2
  199. package/dist/{chunk-V7TPSQOH.js → chunk-HBZIN6IQ.js} +2 -2
  200. package/dist/{chunk-LS42VJAI.js → chunk-HEDOL2RV.js} +2 -2
  201. package/dist/{chunk-RPWEXIAW.js → chunk-HEG7JIBM.js} +5 -5
  202. package/dist/{chunk-AZUFGKMQ.js → chunk-HJOABXKN.js} +4 -4
  203. package/dist/{chunk-6HLRXICF.js → chunk-IAQFQNBL.js} +4 -4
  204. package/dist/{chunk-PUBPZOQJ.js → chunk-IPE5FFFD.js} +2 -2
  205. package/dist/{chunk-FSMQF5P5.js → chunk-IXZ44HJF.js} +2 -2
  206. package/dist/{chunk-RRO2EOJB.js → chunk-JB67KPGM.js} +4 -4
  207. package/dist/{chunk-PDGAFQ6Z.js → chunk-JPDKRGYI.js} +3 -3
  208. package/dist/{chunk-MNJVOU7T.js → chunk-K2T2CQSZ.js} +4 -4
  209. package/dist/{chunk-LFB4H7Y6.js → chunk-KNNBIXWJ.js} +2 -2
  210. package/dist/{chunk-CKZFYGBY.js → chunk-KSF7TLXH.js} +7 -7
  211. package/dist/{chunk-IIUB4IOH.js → chunk-LKF5KQ2Q.js} +4 -4
  212. package/dist/{chunk-AZSFIQIA.js → chunk-LUWATXU4.js} +13 -13
  213. package/dist/{chunk-CZPU5TW3.js → chunk-LYSSO6WC.js} +4 -4
  214. package/dist/{chunk-J7VY6KNP.js → chunk-M3RIC6JI.js} +2 -2
  215. package/dist/{chunk-5ZZPQ3MT.js → chunk-MHFJBNDP.js} +10 -10
  216. package/dist/chunk-MLOWPVVW.js +44 -0
  217. package/dist/chunk-MLOWPVVW.js.map +1 -0
  218. package/dist/{chunk-V44U7H4M.js → chunk-MUAVYVDJ.js} +6 -6
  219. package/dist/chunk-N4JEQJBL.js +93 -0
  220. package/dist/chunk-N4JEQJBL.js.map +1 -0
  221. package/dist/{chunk-LPYB4Y7C.js → chunk-N4WANJI3.js} +5 -5
  222. package/dist/{chunk-ECIGNYSI.js → chunk-O3OU2PPT.js} +2 -2
  223. package/dist/{chunk-62WEMJV3.js → chunk-PLK7UGO6.js} +3 -3
  224. package/dist/{chunk-U7SO3N42.js → chunk-PMFW55F5.js} +3 -3
  225. package/dist/{chunk-AGYGNNOM.js → chunk-PQECNGDE.js} +2 -2
  226. package/dist/{chunk-GPVB3FQP.js → chunk-PU3AAKRR.js} +2 -2
  227. package/dist/{chunk-KEDI6IRA.js → chunk-QETBO7EC.js} +2 -2
  228. package/dist/{chunk-WBKWIFXA.js → chunk-QYNCPS5W.js} +6 -6
  229. package/dist/{chunk-DFLTUI7W.js → chunk-QZBUGUOY.js} +4 -4
  230. package/dist/{chunk-OLZTGVBT.js → chunk-REMK55JI.js} +4 -4
  231. package/dist/{chunk-3AEY5TYV.js → chunk-RMSH2I3O.js} +8 -4
  232. package/dist/chunk-RMSH2I3O.js.map +1 -0
  233. package/dist/{chunk-CPNSVIIB.js → chunk-RP3W6IQO.js} +5 -5
  234. package/dist/{chunk-4QQVIGRG.js → chunk-RQ4EQ5FJ.js} +2 -2
  235. package/dist/{chunk-BLT5ZBVL.js → chunk-RRX6ZTNX.js} +2 -2
  236. package/dist/{chunk-QL7L6RHR.js → chunk-RX6DWIIW.js} +2 -2
  237. package/dist/{chunk-RGBS6N72.js → chunk-SEH7KOVG.js} +2 -2
  238. package/dist/{chunk-GJQYM3PM.js → chunk-SHQWIDD5.js} +4 -4
  239. package/dist/chunk-SIZOJNB2.js +1 -0
  240. package/dist/chunk-SIZOJNB2.js.map +1 -0
  241. package/dist/{chunk-NQCYVYP3.js → chunk-SLYZMJEL.js} +2 -2
  242. package/dist/{chunk-HKROKM3Z.js → chunk-SM3NRN7L.js} +2 -2
  243. package/dist/{chunk-PMS3H3OO.js → chunk-T53L42XW.js} +10 -10
  244. package/dist/{chunk-LNIVT62P.js → chunk-TPUIIZN2.js} +13 -13
  245. package/dist/{chunk-U5RIDMMV.js → chunk-TUAIPMU7.js} +6 -6
  246. package/dist/{chunk-SQAU5QUY.js → chunk-UMDXGIRZ.js} +6 -3
  247. package/dist/chunk-UMDXGIRZ.js.map +1 -0
  248. package/dist/{chunk-ZYRW7FVY.js → chunk-URWGRPL7.js} +6 -2
  249. package/dist/chunk-URWGRPL7.js.map +1 -0
  250. package/dist/{chunk-7QVYJQN4.js → chunk-VJKRJYZL.js} +3 -3
  251. package/dist/{chunk-Q6HJMJBH.js → chunk-VSLUFBMT.js} +7 -3
  252. package/dist/chunk-VSLUFBMT.js.map +1 -0
  253. package/dist/{chunk-7EGHRNIA.js → chunk-VVXRIPV5.js} +8 -8
  254. package/dist/{chunk-2SWQ6HIK.js → chunk-W3FAKT3D.js} +4 -4
  255. package/dist/{chunk-ZOUWHGV3.js → chunk-WC3W36AM.js} +4 -4
  256. package/dist/{chunk-VJFH2AXT.js → chunk-WEH5TCPE.js} +8 -8
  257. package/dist/{chunk-CESQKLIR.js → chunk-WFX5GASM.js} +2 -2
  258. package/dist/{chunk-O6MZPB64.js → chunk-WR6F6J43.js} +4 -4
  259. package/dist/{chunk-V5P5Q6HM.js → chunk-X24P3ZYW.js} +10 -10
  260. package/dist/{chunk-BVGR7OYA.js → chunk-XULTDO56.js} +4 -4
  261. package/dist/{chunk-OGGHD64H.js → chunk-Y5UCOBQN.js} +4 -4
  262. package/dist/{chunk-2A3OMYCB.js → chunk-YRUCIKPO.js} +4 -4
  263. package/dist/{chunk-K25MT3GZ.js → chunk-YVW7VPK4.js} +2 -2
  264. package/dist/{chunk-XQ2BNVXL.js → chunk-ZBNTFWTG.js} +2 -2
  265. package/dist/{chunk-G5ZVD5IJ.js → chunk-ZDWU52DJ.js} +2 -2
  266. package/dist/data-display/Badge.js +2 -2
  267. package/dist/data-display/CardKit.js +15 -15
  268. package/dist/data-display/Carousel.js +2 -2
  269. package/dist/data-display/Chart.js +11 -11
  270. package/dist/data-display/DataGrid.js +3 -3
  271. package/dist/data-display/DataViews.js +91 -90
  272. package/dist/data-display/HoverCard.js +2 -2
  273. package/dist/data-display/InteractiveTooltip.js +2 -2
  274. package/dist/data-display/Lightbox.js +6 -6
  275. package/dist/data-display/MapPreview.js +11 -11
  276. package/dist/data-display/Sheet.js +4 -4
  277. package/dist/data-display/Table.js +2 -2
  278. package/dist/en-US.js +8 -8
  279. package/dist/feedback/ConfirmAction.js +9 -9
  280. package/dist/feedback/StackedModal.js +6 -6
  281. package/dist/form/AddressAutocomplete.js +10 -9
  282. package/dist/form/Autocomplete.js +2 -2
  283. package/dist/form/Button.js +2 -2
  284. package/dist/form/Calendar.js +4 -4
  285. package/dist/form/CategorySelect.js +12 -11
  286. package/dist/form/CepField.js +4 -3
  287. package/dist/form/CodeEditor.js +4 -3
  288. package/dist/form/CreatableSelect.js +2 -1
  289. package/dist/form/DateRangePicker.js +7 -7
  290. package/dist/form/HeaderActions.js +11 -0
  291. package/dist/form/HeaderActions.js.map +1 -0
  292. package/dist/form/Input.js +3 -2
  293. package/dist/form/InputOTP.js +3 -2
  294. package/dist/form/Label.js +2 -2
  295. package/dist/form/PhoneInput.js +2 -1
  296. package/dist/form/RadioGroup.js +4 -3
  297. package/dist/form/RichTextEditor.js +3 -2
  298. package/dist/form/Select.js +2 -1
  299. package/dist/form/Textarea.js +3 -2
  300. package/dist/form/Toggle.js +3 -2
  301. package/dist/form/total-form.js +31 -30
  302. package/dist/layout/ContentToolbar.js +9 -9
  303. package/dist/layout/Dashboard.js +4 -2
  304. package/dist/layout/ScrollArea.js +3 -3
  305. package/dist/locales.js +11 -11
  306. package/dist/navigation/AppHeader.js +7 -7
  307. package/dist/navigation/CommandPalette.js +3 -3
  308. package/dist/navigation/NavigationMenu.js +5 -5
  309. package/dist/pt-BR.js +4 -4
  310. package/dist/social-login-button.js +3 -3
  311. package/dist/types/components/form/AddressAutocomplete/AddressTextField.d.ts.map +1 -1
  312. package/dist/types/components/form/CategorySelect/CategorySelect.styles.d.ts.map +1 -1
  313. package/dist/types/components/form/CodeEditor/CodeEditor.d.ts.map +1 -1
  314. package/dist/types/components/form/CreatableSelect/CreatableSelect.d.ts.map +1 -1
  315. package/dist/types/components/form/HeaderActions/HeaderActions.d.ts +48 -0
  316. package/dist/types/components/form/HeaderActions/HeaderActions.d.ts.map +1 -0
  317. package/dist/types/components/form/HeaderActions/HeaderActions.types.d.ts +62 -0
  318. package/dist/types/components/form/HeaderActions/HeaderActions.types.d.ts.map +1 -0
  319. package/dist/types/components/form/HeaderActions/index.d.ts +3 -0
  320. package/dist/types/components/form/HeaderActions/index.d.ts.map +1 -0
  321. package/dist/types/components/form/Input/Input.styles.d.ts.map +1 -1
  322. package/dist/types/components/form/InputOTP/InputOTP.styles.d.ts.map +1 -1
  323. package/dist/types/components/form/PhoneInput/PhoneInput.d.ts.map +1 -1
  324. package/dist/types/components/form/RadioGroup/RadioGroup.styles.d.ts.map +1 -1
  325. package/dist/types/components/form/RichTextEditor/RichTextEditor.d.ts.map +1 -1
  326. package/dist/types/components/form/Select/Select.d.ts.map +1 -1
  327. package/dist/types/components/form/Textarea/Textarea.d.ts.map +1 -1
  328. package/dist/types/components/form/Textarea/Textarea.styles.d.ts.map +1 -1
  329. package/dist/types/components/form/Textarea/TextareaRichEditor.d.ts.map +1 -1
  330. package/dist/types/components/form/Toggle/Toggle.styles.d.ts.map +1 -1
  331. package/dist/types/components/layout/Dashboard/Dashboard.d.ts +4 -0
  332. package/dist/types/components/layout/Dashboard/Dashboard.d.ts.map +1 -1
  333. package/dist/types/components/layout/Dashboard/Dashboard.types.d.ts +10 -0
  334. package/dist/types/components/layout/Dashboard/Dashboard.types.d.ts.map +1 -1
  335. package/dist/types/components/layout/Dashboard/DashboardParts.d.ts +22 -1
  336. package/dist/types/components/layout/Dashboard/DashboardParts.d.ts.map +1 -1
  337. package/dist/types/components/layout/Dashboard/index.d.ts +1 -1
  338. package/dist/types/components/layout/Dashboard/index.d.ts.map +1 -1
  339. package/dist/types/tokens/field-edge.d.ts +80 -0
  340. package/dist/types/tokens/field-edge.d.ts.map +1 -0
  341. package/dist/user-avatar.js +3 -3
  342. package/dist/utility/InstallPrompt.js +2 -2
  343. package/package.json +5 -1
  344. package/src/components/form/AddressAutocomplete/AddressTextField.tsx +3 -1
  345. package/src/components/form/CategorySelect/CategorySelect.styles.ts +3 -1
  346. package/src/components/form/CodeEditor/CodeEditor.tsx +3 -1
  347. package/src/components/form/CreatableSelect/CreatableSelect.tsx +4 -2
  348. package/src/components/form/HeaderActions/HeaderActions.md +72 -0
  349. package/src/components/form/HeaderActions/HeaderActions.tsx +134 -0
  350. package/src/components/form/HeaderActions/HeaderActions.types.ts +64 -0
  351. package/src/components/form/HeaderActions/index.ts +2 -0
  352. package/src/components/form/Input/Input.styles.ts +5 -3
  353. package/src/components/form/InputOTP/InputOTP.styles.ts +3 -1
  354. package/src/components/form/PhoneInput/PhoneInput.tsx +3 -1
  355. package/src/components/form/RadioGroup/RadioGroup.styles.ts +4 -2
  356. package/src/components/form/RichTextEditor/RichTextEditor.tsx +3 -1
  357. package/src/components/form/Select/Select.tsx +4 -2
  358. package/src/components/form/Textarea/Textarea.styles.ts +3 -1
  359. package/src/components/form/Textarea/Textarea.tsx +4 -2
  360. package/src/components/form/Textarea/TextareaRichEditor.tsx +3 -1
  361. package/src/components/form/Toggle/Toggle.styles.ts +3 -1
  362. package/src/components/layout/Dashboard/Dashboard.md +9 -2
  363. package/src/components/layout/Dashboard/Dashboard.tsx +2 -0
  364. package/src/components/layout/Dashboard/Dashboard.types.ts +12 -0
  365. package/src/components/layout/Dashboard/DashboardParts.tsx +36 -0
  366. package/src/components/layout/Dashboard/index.ts +1 -0
  367. package/src/tokens/field-edge.ts +141 -0
  368. package/dist/chunk-3AEY5TYV.js.map +0 -1
  369. package/dist/chunk-4VPCZFF3.js.map +0 -1
  370. package/dist/chunk-5QQWAIZO.js.map +0 -1
  371. package/dist/chunk-A2WJMZX5.js.map +0 -1
  372. package/dist/chunk-A43SJQYE.js.map +0 -1
  373. package/dist/chunk-B2324WXJ.js.map +0 -1
  374. package/dist/chunk-FLSSV4TH.js.map +0 -1
  375. package/dist/chunk-FXMZMX5E.js.map +0 -1
  376. package/dist/chunk-J72KWTHC.js.map +0 -1
  377. package/dist/chunk-MNZ2NT5A.js.map +0 -1
  378. package/dist/chunk-Q6HJMJBH.js.map +0 -1
  379. package/dist/chunk-SQAU5QUY.js.map +0 -1
  380. package/dist/chunk-XCT2ZLA6.js.map +0 -1
  381. package/dist/chunk-XN5AYC5S.js.map +0 -1
  382. package/dist/chunk-ZYRW7FVY.js.map +0 -1
  383. /package/dist/{chunk-WQSL6MCA.js.map → chunk-23FCBIUN.js.map} +0 -0
  384. /package/dist/{chunk-QIKTIKO6.js.map → chunk-24LW52EU.js.map} +0 -0
  385. /package/dist/{chunk-75KRWRJA.js.map → chunk-2ZDTGI5V.js.map} +0 -0
  386. /package/dist/{chunk-XPS7FWZS.js.map → chunk-3LO5JWTC.js.map} +0 -0
  387. /package/dist/{chunk-MYOFULG4.js.map → chunk-3ORFVLI3.js.map} +0 -0
  388. /package/dist/{chunk-EIGELK2H.js.map → chunk-3P4THDBM.js.map} +0 -0
  389. /package/dist/{chunk-SJIBPRPB.js.map → chunk-3T2I6BYA.js.map} +0 -0
  390. /package/dist/{chunk-ZNGUDGKW.js.map → chunk-45OIUWGO.js.map} +0 -0
  391. /package/dist/{chunk-4ETQRBZC.js.map → chunk-46UPILLK.js.map} +0 -0
  392. /package/dist/{chunk-S7CAXRRP.js.map → chunk-4Y65Q3CR.js.map} +0 -0
  393. /package/dist/{chunk-2UCJJACD.js.map → chunk-5VVM2PPV.js.map} +0 -0
  394. /package/dist/{chunk-JE6RZ5L6.js.map → chunk-5ZOJLYD2.js.map} +0 -0
  395. /package/dist/{chunk-AVGTTWTE.js.map → chunk-65DLYC4S.js.map} +0 -0
  396. /package/dist/{chunk-O6V7KKW7.js.map → chunk-6CBYPMYQ.js.map} +0 -0
  397. /package/dist/{chunk-BPCYXLWY.js.map → chunk-6HNEEJES.js.map} +0 -0
  398. /package/dist/{chunk-WXVHZHSJ.js.map → chunk-6RFL7HGI.js.map} +0 -0
  399. /package/dist/{chunk-UENDC45F.js.map → chunk-6TYSEAAT.js.map} +0 -0
  400. /package/dist/{chunk-R7MX5KPJ.js.map → chunk-6YLAVHV4.js.map} +0 -0
  401. /package/dist/{chunk-RXSGHPCR.js.map → chunk-7FOOLP5H.js.map} +0 -0
  402. /package/dist/{chunk-EICVL6GS.js.map → chunk-7HPPUO2A.js.map} +0 -0
  403. /package/dist/{chunk-3BR2CLAM.js.map → chunk-A3KY6NUA.js.map} +0 -0
  404. /package/dist/{chunk-2I5B5NNT.js.map → chunk-AX7UFG2U.js.map} +0 -0
  405. /package/dist/{chunk-7DNQHMDO.js.map → chunk-B6IURHSZ.js.map} +0 -0
  406. /package/dist/{chunk-CZJLWCEG.js.map → chunk-BPYPUEM5.js.map} +0 -0
  407. /package/dist/{chunk-5VZPVDUF.js.map → chunk-COSJTD6Z.js.map} +0 -0
  408. /package/dist/{chunk-AP3PVR3T.js.map → chunk-CXA6UNFF.js.map} +0 -0
  409. /package/dist/{chunk-LPNF4YJ7.js.map → chunk-DGMR3IMM.js.map} +0 -0
  410. /package/dist/{chunk-MUFI3ZXS.js.map → chunk-DQIQKIEA.js.map} +0 -0
  411. /package/dist/{chunk-LQR2IVSL.js.map → chunk-DWUMMMLR.js.map} +0 -0
  412. /package/dist/{chunk-56SMIHWE.js.map → chunk-EE2LBAJH.js.map} +0 -0
  413. /package/dist/{chunk-SHDIZSN5.js.map → chunk-EGRFMPGD.js.map} +0 -0
  414. /package/dist/{chunk-M6365FGG.js.map → chunk-ELYLG4F7.js.map} +0 -0
  415. /package/dist/{chunk-PHA3NFZM.js.map → chunk-ENK4XGKF.js.map} +0 -0
  416. /package/dist/{chunk-XFUNJYFT.js.map → chunk-EPNUVSNK.js.map} +0 -0
  417. /package/dist/{chunk-QTPKACVO.js.map → chunk-EY4LPLIR.js.map} +0 -0
  418. /package/dist/{chunk-GNAAHDCN.js.map → chunk-FF55LRSV.js.map} +0 -0
  419. /package/dist/{chunk-L6KEVPXN.js.map → chunk-FH4VARZ7.js.map} +0 -0
  420. /package/dist/{chunk-J4DDXHLB.js.map → chunk-FJHNNSD3.js.map} +0 -0
  421. /package/dist/{chunk-ONZPM6FP.js.map → chunk-G7CFUI4I.js.map} +0 -0
  422. /package/dist/{chunk-KDIWFARU.js.map → chunk-GBB6XQ56.js.map} +0 -0
  423. /package/dist/{chunk-UHXNEXOC.js.map → chunk-GFBNUWT5.js.map} +0 -0
  424. /package/dist/{chunk-PLOOVF43.js.map → chunk-GGE7Y53F.js.map} +0 -0
  425. /package/dist/{chunk-R6SBP5M5.js.map → chunk-GOWBYHYW.js.map} +0 -0
  426. /package/dist/{chunk-HDNK7BAX.js.map → chunk-GT7C6TSM.js.map} +0 -0
  427. /package/dist/{chunk-7SZ3PFZW.js.map → chunk-HBAPVB7T.js.map} +0 -0
  428. /package/dist/{chunk-V7TPSQOH.js.map → chunk-HBZIN6IQ.js.map} +0 -0
  429. /package/dist/{chunk-LS42VJAI.js.map → chunk-HEDOL2RV.js.map} +0 -0
  430. /package/dist/{chunk-RPWEXIAW.js.map → chunk-HEG7JIBM.js.map} +0 -0
  431. /package/dist/{chunk-AZUFGKMQ.js.map → chunk-HJOABXKN.js.map} +0 -0
  432. /package/dist/{chunk-6HLRXICF.js.map → chunk-IAQFQNBL.js.map} +0 -0
  433. /package/dist/{chunk-PUBPZOQJ.js.map → chunk-IPE5FFFD.js.map} +0 -0
  434. /package/dist/{chunk-FSMQF5P5.js.map → chunk-IXZ44HJF.js.map} +0 -0
  435. /package/dist/{chunk-RRO2EOJB.js.map → chunk-JB67KPGM.js.map} +0 -0
  436. /package/dist/{chunk-PDGAFQ6Z.js.map → chunk-JPDKRGYI.js.map} +0 -0
  437. /package/dist/{chunk-MNJVOU7T.js.map → chunk-K2T2CQSZ.js.map} +0 -0
  438. /package/dist/{chunk-LFB4H7Y6.js.map → chunk-KNNBIXWJ.js.map} +0 -0
  439. /package/dist/{chunk-CKZFYGBY.js.map → chunk-KSF7TLXH.js.map} +0 -0
  440. /package/dist/{chunk-IIUB4IOH.js.map → chunk-LKF5KQ2Q.js.map} +0 -0
  441. /package/dist/{chunk-AZSFIQIA.js.map → chunk-LUWATXU4.js.map} +0 -0
  442. /package/dist/{chunk-CZPU5TW3.js.map → chunk-LYSSO6WC.js.map} +0 -0
  443. /package/dist/{chunk-J7VY6KNP.js.map → chunk-M3RIC6JI.js.map} +0 -0
  444. /package/dist/{chunk-5ZZPQ3MT.js.map → chunk-MHFJBNDP.js.map} +0 -0
  445. /package/dist/{chunk-V44U7H4M.js.map → chunk-MUAVYVDJ.js.map} +0 -0
  446. /package/dist/{chunk-LPYB4Y7C.js.map → chunk-N4WANJI3.js.map} +0 -0
  447. /package/dist/{chunk-ECIGNYSI.js.map → chunk-O3OU2PPT.js.map} +0 -0
  448. /package/dist/{chunk-62WEMJV3.js.map → chunk-PLK7UGO6.js.map} +0 -0
  449. /package/dist/{chunk-U7SO3N42.js.map → chunk-PMFW55F5.js.map} +0 -0
  450. /package/dist/{chunk-AGYGNNOM.js.map → chunk-PQECNGDE.js.map} +0 -0
  451. /package/dist/{chunk-GPVB3FQP.js.map → chunk-PU3AAKRR.js.map} +0 -0
  452. /package/dist/{chunk-KEDI6IRA.js.map → chunk-QETBO7EC.js.map} +0 -0
  453. /package/dist/{chunk-WBKWIFXA.js.map → chunk-QYNCPS5W.js.map} +0 -0
  454. /package/dist/{chunk-DFLTUI7W.js.map → chunk-QZBUGUOY.js.map} +0 -0
  455. /package/dist/{chunk-OLZTGVBT.js.map → chunk-REMK55JI.js.map} +0 -0
  456. /package/dist/{chunk-CPNSVIIB.js.map → chunk-RP3W6IQO.js.map} +0 -0
  457. /package/dist/{chunk-4QQVIGRG.js.map → chunk-RQ4EQ5FJ.js.map} +0 -0
  458. /package/dist/{chunk-BLT5ZBVL.js.map → chunk-RRX6ZTNX.js.map} +0 -0
  459. /package/dist/{chunk-QL7L6RHR.js.map → chunk-RX6DWIIW.js.map} +0 -0
  460. /package/dist/{chunk-RGBS6N72.js.map → chunk-SEH7KOVG.js.map} +0 -0
  461. /package/dist/{chunk-GJQYM3PM.js.map → chunk-SHQWIDD5.js.map} +0 -0
  462. /package/dist/{chunk-NQCYVYP3.js.map → chunk-SLYZMJEL.js.map} +0 -0
  463. /package/dist/{chunk-HKROKM3Z.js.map → chunk-SM3NRN7L.js.map} +0 -0
  464. /package/dist/{chunk-PMS3H3OO.js.map → chunk-T53L42XW.js.map} +0 -0
  465. /package/dist/{chunk-LNIVT62P.js.map → chunk-TPUIIZN2.js.map} +0 -0
  466. /package/dist/{chunk-U5RIDMMV.js.map → chunk-TUAIPMU7.js.map} +0 -0
  467. /package/dist/{chunk-7QVYJQN4.js.map → chunk-VJKRJYZL.js.map} +0 -0
  468. /package/dist/{chunk-7EGHRNIA.js.map → chunk-VVXRIPV5.js.map} +0 -0
  469. /package/dist/{chunk-2SWQ6HIK.js.map → chunk-W3FAKT3D.js.map} +0 -0
  470. /package/dist/{chunk-ZOUWHGV3.js.map → chunk-WC3W36AM.js.map} +0 -0
  471. /package/dist/{chunk-VJFH2AXT.js.map → chunk-WEH5TCPE.js.map} +0 -0
  472. /package/dist/{chunk-CESQKLIR.js.map → chunk-WFX5GASM.js.map} +0 -0
  473. /package/dist/{chunk-O6MZPB64.js.map → chunk-WR6F6J43.js.map} +0 -0
  474. /package/dist/{chunk-V5P5Q6HM.js.map → chunk-X24P3ZYW.js.map} +0 -0
  475. /package/dist/{chunk-BVGR7OYA.js.map → chunk-XULTDO56.js.map} +0 -0
  476. /package/dist/{chunk-OGGHD64H.js.map → chunk-Y5UCOBQN.js.map} +0 -0
  477. /package/dist/{chunk-2A3OMYCB.js.map → chunk-YRUCIKPO.js.map} +0 -0
  478. /package/dist/{chunk-K25MT3GZ.js.map → chunk-YVW7VPK4.js.map} +0 -0
  479. /package/dist/{chunk-XQ2BNVXL.js.map → chunk-ZBNTFWTG.js.map} +0 -0
  480. /package/dist/{chunk-G5ZVD5IJ.js.map → chunk-ZDWU52DJ.js.map} +0 -0
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-4XK6JQ4D.js";
4
4
  import {
5
5
  Select
6
- } from "./chunk-Q6HJMJBH.js";
6
+ } from "./chunk-VSLUFBMT.js";
7
7
  import {
8
8
  FormControl,
9
9
  FormLabel,
@@ -36,4 +36,4 @@ function SelectField({ name, options, label, placeholder }) {
36
36
  export {
37
37
  SelectField
38
38
  };
39
- //# sourceMappingURL=chunk-MYOFULG4.js.map
39
+ //# sourceMappingURL=chunk-3ORFVLI3.js.map
@@ -1,9 +1,9 @@
1
- import {
2
- useConfirmAction
3
- } from "./chunk-EMYESBIT.js";
4
1
  import {
5
2
  ConfirmActionDialog
6
3
  } from "./chunk-QQS3GQYS.js";
4
+ import {
5
+ useConfirmAction
6
+ } from "./chunk-EMYESBIT.js";
7
7
 
8
8
  // src/components/feedback/ConfirmAction/ConfirmAction.tsx
9
9
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
@@ -23,4 +23,4 @@ ConfirmAction.displayName = "ConfirmAction";
23
23
  export {
24
24
  ConfirmAction
25
25
  };
26
- //# sourceMappingURL=chunk-EIGELK2H.js.map
26
+ //# sourceMappingURL=chunk-3P4THDBM.js.map
@@ -1,9 +1,9 @@
1
- import {
2
- useConfirmAction
3
- } from "./chunk-EMYESBIT.js";
4
1
  import {
5
2
  ConfirmActionDialog
6
3
  } from "./chunk-QQS3GQYS.js";
4
+ import {
5
+ useConfirmAction
6
+ } from "./chunk-EMYESBIT.js";
7
7
 
8
8
  // src/components/data-display/CardKit/use-row-confirm.tsx
9
9
  import { useState } from "react";
@@ -43,4 +43,4 @@ function useRowConfirm({
43
43
  export {
44
44
  useRowConfirm
45
45
  };
46
- //# sourceMappingURL=chunk-SJIBPRPB.js.map
46
+ //# sourceMappingURL=chunk-3T2I6BYA.js.map
@@ -3,12 +3,14 @@ import {
3
3
  FormLabel,
4
4
  FormMessage
5
5
  } from "./chunk-VZO7VREP.js";
6
+ import {
7
+ fieldEdge
8
+ } from "./chunk-MLOWPVVW.js";
6
9
  import {
7
10
  stackedOverlayZIndex
8
11
  } from "./chunk-MFU4Y25U.js";
9
12
 
10
13
  // src/components/form/CreatableSelect/CreatableSelect.tsx
11
- import { alpha } from "@mui/material/styles/index.js";
12
14
  import Autocomplete, { createFilterOptions } from "@mui/material/Autocomplete/index.js";
13
15
  import CircularProgress from "@mui/material/CircularProgress/index.js";
14
16
  import TextField from "@mui/material/TextField/index.js";
@@ -21,7 +23,7 @@ var MUI_SIZE = { xs: "small", sm: "small", md: "medium", lg: "medium", xl: "medi
21
23
  var fieldSx = {
22
24
  "& .MuiOutlinedInput-root": {
23
25
  "& fieldset": {
24
- borderColor: (theme) => alpha(theme.palette.divider, 0.23)
26
+ borderColor: (theme) => fieldEdge(theme)
25
27
  },
26
28
  "&:hover fieldset": { borderColor: "primary.main" },
27
29
  "&.Mui-focused fieldset": { borderColor: "primary.main", borderWidth: 2 },
@@ -156,4 +158,4 @@ function CreatableSelect({
156
158
  export {
157
159
  CreatableSelect
158
160
  };
159
- //# sourceMappingURL=chunk-J72KWTHC.js.map
161
+ //# sourceMappingURL=chunk-45N6LXUU.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/CreatableSelect/CreatableSelect.tsx"],"sourcesContent":["'use client';\n\nimport type { Theme } from '@mui/material/styles/index.js';\nimport Autocomplete, { createFilterOptions } from '@mui/material/Autocomplete/index.js';\nimport type { AutocompleteRenderInputParams } from '@mui/material/Autocomplete/index.js';\nimport CircularProgress from '@mui/material/CircularProgress/index.js';\nimport TextField from '@mui/material/TextField/index.js';\nimport { useId, useMemo } from 'react';\n\nimport { stackedOverlayZIndex } from '../../../tokens/layers';\nimport { FormControl, FormLabel, FormMessage } from '../Form';\nimport type { CreatableSelectOption, CreatableSelectProps } from './CreatableSelect.types';\nimport type { SizeValue } from '../../../tokens/scales';\n\nimport { fieldEdge } from '../../../tokens/field-edge';\n\n/** Internal option shape: a real option, or the synthetic \"create new\" row. */\ninterface InternalOption extends CreatableSelectOption {\n /** True for the synthetic row that triggers {@link CreatableSelectProps.onCreate}. */\n isCreate?: boolean;\n}\n\n/** Prefix that marks a synthetic create-row value so it can never collide with a real one. */\nconst CREATE_PREFIX = ' create:';\n\nconst filterOptions = createFilterOptions<InternalOption>();\n\n/** How far one nesting level indents a dropdown row, in px. */\nconst INDENT_STEP = 16;\n\n/** `sm`/`md` → MUI's own scale, the same mapping {@link Input} uses. */\n// All five house stops onto MUI's two. `xs`/`sm` draw small; `md` and up draw\n// medium, because an autocomplete field has no third or fourth height to give.\nconst MUI_SIZE = { xs: 'small', sm: 'small', md: 'medium', lg: 'medium', xl: 'medium' } as const;\n\n/** Match the outlined border treatment of `Input` so siblings look identical. */\nconst fieldSx = {\n '& .MuiOutlinedInput-root': {\n '& fieldset': {\n borderColor: (theme: Theme) => fieldEdge(theme),\n },\n '&:hover fieldset': { borderColor: 'primary.main' },\n '&.Mui-focused fieldset': { borderColor: 'primary.main', borderWidth: 2 },\n '&.Mui-error fieldset': { borderColor: 'error.main' },\n },\n} as const;\n\n/**\n * The filter that appends the synthetic \"create\" row when the typed text matches\n * no existing option. Built per render from the two props it closes over.\n */\nfunction buildFilter(\n onCreate: CreatableSelectProps['onCreate'],\n createOptionLabel: (input: string) => string,\n) {\n return (available: InternalOption[], params: { inputValue: string }): InternalOption[] => {\n const filtered = filterOptions(available, params as Parameters<typeof filterOptions>[1]);\n const input = params.inputValue.trim();\n const alreadyExists = available.some(\n (option) => option.label.toLowerCase() === input.toLowerCase(),\n );\n if (input && !alreadyExists && onCreate) {\n filtered.push({\n value: `${CREATE_PREFIX}${input}`,\n label: createOptionLabel(input),\n isCreate: true,\n });\n }\n return filtered;\n };\n}\n\n/**\n * A nested option is indented on its ROW; the label itself stays the bare name,\n * so the closed field never shows the tree drawing (see `depth`).\n */\nfunction renderIndentedOption(\n props: React.HTMLAttributes<HTMLLIElement>,\n option: InternalOption,\n): React.JSX.Element {\n const { key, ...rest } = props as typeof props & { key?: string };\n return (\n <li\n key={key ?? option.value}\n {...rest}\n style={{ paddingLeft: INDENT_STEP * (1 + (option.depth ?? 0)) }}\n >\n {option.label}\n </li>\n );\n}\n\n/** The text field Autocomplete renders, with the library's border + a loading adornment. */\nfunction renderField(\n params: AutocompleteRenderInputParams,\n field: {\n inputId: string;\n placeholder?: string;\n error?: string;\n loading: boolean;\n size: SizeValue;\n dataTestId: string;\n },\n): React.JSX.Element {\n return (\n <TextField\n {...params}\n id={field.inputId}\n placeholder={field.placeholder}\n error={Boolean(field.error)}\n size={MUI_SIZE[field.size]}\n sx={fieldSx}\n inputProps={{ ...params.inputProps, 'data-testid': `${field.dataTestId}-input` }}\n slotProps={{\n input: {\n ...params.InputProps,\n endAdornment: (\n <>\n {field.loading ? <CircularProgress color=\"inherit\" size={18} /> : null}\n {params.InputProps.endAdornment}\n </>\n ),\n },\n }}\n />\n );\n}\n\n/**\n * The option list, plus the selected OBJECT MUI wants, from the controlled value.\n * `depth` is carried through: it is what {@link renderIndentedOption} draws.\n */\nfunction useInternalOptions(\n options: CreatableSelectOption[],\n value: string | null,\n): { items: InternalOption[]; selected: InternalOption | null } {\n const items = useMemo<InternalOption[]>(\n () => options.map(({ value: optionValue, label, depth }) => ({\n value: optionValue,\n label,\n depth,\n })),\n [options],\n );\n const selected = useMemo<InternalOption | null>(\n () => items.find((option) => option.value === value) ?? null,\n [items, value],\n );\n return { items, selected };\n}\n\n/** Route a picked row: cleared, the synthetic create row, or a real option. */\nfunction handlePick(\n next: InternalOption | null,\n onChange: CreatableSelectProps['onChange'],\n onCreate: CreatableSelectProps['onCreate'],\n): void {\n if (!next) {\n onChange(null);\n return;\n }\n if (next.isCreate) {\n void onCreate?.(next.value.slice(CREATE_PREFIX.length));\n return;\n }\n onChange(next.value);\n}\n\n/**\n * A single-select, searchable combobox that can create a new option on the fly.\n *\n * Type to filter {@link CreatableSelectProps.options}; when the typed text matches\n * no option and {@link CreatableSelectProps.onCreate} is provided, a \"create\" row\n * appears and selecting it (Enter or click) calls `onCreate` with the raw text —\n * the parent persists it, then feeds the new option back via `options`/`value`.\n *\n * Chrome matches the library's other form fields: an external {@link FormLabel}\n * above the control (not a floating label), the same outlined border treatment as\n * {@link Input} and the same `sm`/`md` scale, so it lines up with sibling fields\n * in a grid row.\n */\nexport function CreatableSelect({\n options,\n value,\n onChange,\n onCreate,\n label,\n error,\n placeholder,\n createOptionLabel,\n noOptionsText,\n disabled = false,\n loading = false,\n fullWidth = true,\n size = 'md',\n dataTestId = 'creatable-select',\n}: CreatableSelectProps): React.JSX.Element {\n const inputId = useId();\n const { items, selected } = useInternalOptions(options, value);\n\n return (\n <FormControl fullWidth={fullWidth} error={Boolean(error)}>\n {label && (\n <FormLabel htmlFor={inputId} error={Boolean(error)}>\n {label}\n </FormLabel>\n )}\n <Autocomplete<InternalOption, false, false, false>\n value={selected}\n options={items}\n disabled={disabled}\n loading={loading}\n fullWidth={fullWidth}\n size={MUI_SIZE[size]}\n handleHomeEndKeys\n selectOnFocus\n clearOnBlur\n data-testid={dataTestId}\n noOptionsText={noOptionsText}\n // Lift the dropdown above stacked modals: the default popup z-index is\n // `modal` (1300), but a stacked sheet at depth ≥2 sits at 1300 + depth*10,\n // which would otherwise cover the options. The height is the token's\n // now — this component used to be the only place the rule was written\n // down, which is how `CategorySelect` came to be missing it (12-57).\n slotProps={{ popper: { sx: { zIndex: stackedOverlayZIndex } } }}\n getOptionLabel={(option) => (typeof option === 'string' ? option : option.label)}\n isOptionEqualToValue={(option, current) => option.value === current.value}\n renderOption={renderIndentedOption}\n filterOptions={buildFilter(onCreate, createOptionLabel)}\n onChange={(_event, next) => handlePick(next, onChange, onCreate)}\n renderInput={(params) =>\n renderField(params, { inputId, placeholder, error, loading, size, dataTestId })\n }\n />\n {error && <FormMessage error dataTestId={`${dataTestId}-message`}>{error}</FormMessage>}\n </FormControl>\n );\n}\n"],"mappings":"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","names":[]}
@@ -1,21 +1,21 @@
1
- import {
2
- DataViewsDisplayPanel
3
- } from "./chunk-J4DDXHLB.js";
4
1
  import {
5
2
  DataViewsExportMenu
6
- } from "./chunk-NQCYVYP3.js";
3
+ } from "./chunk-SLYZMJEL.js";
4
+ import {
5
+ DataViewsDisplayPanel
6
+ } from "./chunk-FJHNNSD3.js";
7
7
  import {
8
8
  renderBulkActions
9
- } from "./chunk-5VZPVDUF.js";
9
+ } from "./chunk-COSJTD6Z.js";
10
10
  import {
11
11
  useDataViewsCopy
12
12
  } from "./chunk-KHG57NAE.js";
13
- import {
14
- FilterTrigger
15
- } from "./chunk-LVCUJ7YU.js";
16
13
  import {
17
14
  ContentToolbar
18
15
  } from "./chunk-TSPHRZ4U.js";
16
+ import {
17
+ FilterTrigger
18
+ } from "./chunk-LVCUJ7YU.js";
19
19
  import {
20
20
  default as default2
21
21
  } from "./chunk-6DPAWXZ3.js";
@@ -133,4 +133,4 @@ function GridToolbar(props) {
133
133
  export {
134
134
  GridToolbar
135
135
  };
136
- //# sourceMappingURL=chunk-ZNGUDGKW.js.map
136
+ //# sourceMappingURL=chunk-45OIUWGO.js.map
@@ -1,6 +1,3 @@
1
- import {
2
- geocode
3
- } from "./chunk-TUBCN4DJ.js";
4
1
  import {
5
2
  CITY_ZOOM,
6
3
  CLICK_JITTER_DEGREES,
@@ -9,6 +6,9 @@ import {
9
6
  MAX_ZOOM,
10
7
  MIN_ZOOM
11
8
  } from "./chunk-H2J2MTRE.js";
9
+ import {
10
+ geocode
11
+ } from "./chunk-TUBCN4DJ.js";
12
12
 
13
13
  // src/components/data-display/MapPreview/MapPreview.hooks.ts
14
14
  import { useCallback, useEffect, useRef, useState } from "react";
@@ -186,4 +186,4 @@ export {
186
186
  useMapSearch,
187
187
  useMapClick
188
188
  };
189
- //# sourceMappingURL=chunk-4ETQRBZC.js.map
189
+ //# sourceMappingURL=chunk-46UPILLK.js.map
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-6DPAWXZ3.js";
7
7
  import {
8
8
  Button
9
- } from "./chunk-6HLRXICF.js";
9
+ } from "./chunk-IAQFQNBL.js";
10
10
  import {
11
11
  Text
12
12
  } from "./chunk-VRHBJXZ7.js";
@@ -77,4 +77,4 @@ function DataViewsEmpty({
77
77
  export {
78
78
  DataViewsEmpty
79
79
  };
80
- //# sourceMappingURL=chunk-S7CAXRRP.js.map
80
+ //# sourceMappingURL=chunk-4Y65Q3CR.js.map
@@ -1,9 +1,12 @@
1
+ import {
2
+ useRichTextEditor
3
+ } from "./chunk-774B27QA.js";
1
4
  import {
2
5
  RichTextEditorToolbar
3
6
  } from "./chunk-SE6ERQY5.js";
4
7
  import {
5
- useRichTextEditor
6
- } from "./chunk-774B27QA.js";
8
+ fieldEdge
9
+ } from "./chunk-MLOWPVVW.js";
7
10
 
8
11
  // src/components/form/RichTextEditor/RichTextEditor.tsx
9
12
  import Box from "@mui/material/Box/index.js";
@@ -69,7 +72,7 @@ var editorContentSx = (theme, disabled, placeholder, height) => ({
69
72
  "& a": { color: theme.palette.primary.main, textDecoration: "underline" }
70
73
  });
71
74
  var shellSx = (theme, isFocused, disabled) => ({
72
- border: `1px solid ${alpha(theme.palette.divider, 0.12)}`,
75
+ border: `1px solid ${fieldEdge(theme)}`,
73
76
  borderRadius: 1,
74
77
  overflow: "hidden",
75
78
  transition: "border-color 0.2s ease-in-out",
@@ -164,4 +167,4 @@ export {
164
167
  RichTextEditor,
165
168
  RichTextEditor_default
166
169
  };
167
- //# sourceMappingURL=chunk-XN5AYC5S.js.map
170
+ //# sourceMappingURL=chunk-5SYD23V4.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/RichTextEditor/RichTextEditor.tsx"],"sourcesContent":["import 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 React, { forwardRef } from 'react';\n\nimport type { Theme } from '@mui/material/styles/index.js';\nimport { useRichTextEditor } from './RichTextEditor.hooks';\nimport type { RichTextEditorProps, ToolbarConfig } from './RichTextEditor.types';\nimport { RichTextEditorToolbar } from './RichTextEditorToolbar';\n\nimport { fieldEdge } from '../../../tokens/field-edge';\n\nconst DEFAULT_TOOLBAR: Required<Omit<ToolbarConfig, 'customItems'>> & Pick<ToolbarConfig, 'customItems'> = {\n bold: true,\n italic: true,\n underline: true,\n strikethrough: false,\n orderedList: true,\n unorderedList: true,\n link: true,\n image: false,\n codeBlock: false,\n quote: false,\n customItems: [] };\n\nconst RICH_TEXT_DEFAULTS: Partial<RichTextEditorProps> = {\n value: '',\n placeholder: 'Start typing...',\n disabled: false,\n readOnly: false,\n toolbar: {},\n height: 300 };\n\n// Strips explicitly-undefined props before the merge, so `prop={undefined}`\n// still falls back to the default as a destructuring default would.\nconst definedProps = (props: RichTextEditorProps): Partial<RichTextEditorProps> =>\n Object.fromEntries(\n Object.entries(props).filter(([, v]) => v !== undefined),\n ) as Partial<RichTextEditorProps>;\n\n// Simple inline formats are a tag swap; lists and the value-carrying formats\n// need their own handling. This was one nine-case switch.\nconst editorContentSx = (theme: Theme, disabled: boolean, placeholder?: string, height?: string | number) => ({\n minHeight: typeof height === 'number' ? `${height}px` : height,\n p: 2,\n outline: 'none',\n cursor: disabled ? 'not-allowed' : 'text',\n '&:empty::before': {\n content: `\"${placeholder}\"`,\n color: theme.palette.text.disabled,\n pointerEvents: 'none' },\n '& p': {\n margin: '8px 0',\n '&:first-of-type': { marginTop: 0 },\n '&:last-of-type': { marginBottom: 0 } },\n '& ul, & ol': { marginLeft: theme.spacing(2) },\n '& blockquote': {\n borderLeft: `4px solid ${theme.palette.primary.main}`,\n paddingLeft: theme.spacing(2),\n margin: `${theme.spacing(1)} 0`,\n fontStyle: 'italic',\n backgroundColor: alpha(theme.palette.primary.main, 0.05) },\n '& pre': {\n backgroundColor: alpha(theme.palette.text.primary, 0.08),\n padding: theme.spacing(1),\n borderRadius: 1,\n fontFamily: 'Monaco, Menlo, \"Ubuntu Mono\", monospace',\n fontSize: '0.875rem',\n overflow: 'auto' },\n '& a': { color: theme.palette.primary.main, textDecoration: 'underline' } });\n\nconst shellSx = (theme: Theme, isFocused: boolean, disabled: boolean) => ({\n border: `1px solid ${fieldEdge(theme)}`,\n borderRadius: 1,\n overflow: 'hidden',\n transition: 'border-color 0.2s ease-in-out',\n ...(isFocused && {\n borderColor: theme.palette.primary.main,\n boxShadow: `0 0 0 2px ${alpha(theme.palette.primary.main, 0.2)}` }),\n ...(disabled && {\n backgroundColor: theme.palette.action.disabledBackground,\n color: theme.palette.text.disabled }) });\n\nexport const RichTextEditor = forwardRef<HTMLDivElement, RichTextEditorProps>(\n (editorProps, ref) => {\n const {\n value,\n onChange,\n placeholder,\n disabled,\n readOnly,\n toolbar,\n height,\n maxLength,\n onFocus,\n onBlur,\n className,\n 'data-testid': testId,\n 'aria-label': ariaLabel,\n 'aria-describedby': ariaDescribedBy,\n ...props\n } = { ...RICH_TEXT_DEFAULTS, ...definedProps(editorProps) } as RichTextEditorProps;\n\n const theme = useTheme();\n const toolbarConfig = { ...DEFAULT_TOOLBAR, ...toolbar };\n const editor = useRichTextEditor({\n value,\n onChange,\n onFocus,\n onBlur,\n disabled,\n readOnly,\n maxLength });\n\n return (\n <Paper\n ref={ref}\n className={className}\n data-testid={testId || 'rich-text-editor'}\n elevation={1}\n sx={shellSx(theme, editor.isFocused, Boolean(disabled))}\n {...props}\n >\n <RichTextEditorToolbar\n config={toolbarConfig}\n disabled={Boolean(disabled)}\n readOnly={Boolean(readOnly)}\n maxLength={maxLength}\n characterCount={editor.characterCount}\n editorRef={editor.editorRef}\n onFormat={editor.applyFormat}\n />\n\n <Box\n ref={editor.editorRef}\n contentEditable={!disabled && !readOnly}\n onInput={editor.handleContentChange}\n onFocus={editor.handleFocus}\n onBlur={editor.handleBlur}\n role=\"textbox\"\n aria-label={ariaLabel || 'Rich text editor'}\n aria-describedby={ariaDescribedBy}\n aria-multiline=\"true\"\n tabIndex={disabled ? -1 : 0}\n data-testid=\"editor-content\"\n suppressContentEditableWarning\n sx={editorContentSx(theme, Boolean(disabled), placeholder, height)}\n />\n </Paper>\n );\n },\n);\n\nRichTextEditor.displayName = 'RichTextEditor';\n\nexport default RichTextEditor;"],"mappings":"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","names":[]}
@@ -1,10 +1,18 @@
1
1
  import {
2
2
  useColumnsWithActions,
3
3
  useRenderedColumns
4
- } from "./chunk-4QQVIGRG.js";
4
+ } from "./chunk-RQ4EQ5FJ.js";
5
5
  import {
6
6
  filterRows
7
7
  } from "./chunk-YGQX7BNI.js";
8
+ import {
9
+ resolveScope,
10
+ useScopeConfigChecks
11
+ } from "./chunk-LYKV3C7B.js";
12
+ import {
13
+ computeActiveFilterCount,
14
+ defaultSortFields
15
+ } from "./chunk-COSJTD6Z.js";
8
16
  import {
9
17
  serverDerived,
10
18
  useServerQuery
@@ -13,19 +21,11 @@ import {
13
21
  useSelection
14
22
  } from "./chunk-LLZWB32X.js";
15
23
  import {
16
- resolveScope,
17
- useScopeConfigChecks
18
- } from "./chunk-LYKV3C7B.js";
24
+ emptyViewState
25
+ } from "./chunk-LHHAYZ55.js";
19
26
  import {
20
27
  useStateWriters
21
28
  } from "./chunk-U5FOJBLG.js";
22
- import {
23
- computeActiveFilterCount,
24
- defaultSortFields
25
- } from "./chunk-5VZPVDUF.js";
26
- import {
27
- emptyViewState
28
- } from "./chunk-LHHAYZ55.js";
29
29
 
30
30
  // src/components/data-display/DataViews/use-data-views-state.ts
31
31
  import { useEffect, useMemo, useRef, useState } from "react";
@@ -172,4 +172,4 @@ function useDataViewsState({
172
172
  export {
173
173
  useDataViewsState
174
174
  };
175
- //# sourceMappingURL=chunk-2UCJJACD.js.map
175
+ //# sourceMappingURL=chunk-5VVM2PPV.js.map
@@ -1,9 +1,9 @@
1
- import {
2
- usePwaInstall
3
- } from "./chunk-5GMHJ7Y5.js";
4
1
  import {
5
2
  installPromptStyles
6
3
  } from "./chunk-GY62N32G.js";
4
+ import {
5
+ usePwaInstall
6
+ } from "./chunk-5GMHJ7Y5.js";
7
7
 
8
8
  // src/components/utility/InstallPrompt/InstallPrompt.tsx
9
9
  import Close from "@mui/icons-material/Close";
@@ -154,4 +154,4 @@ InstallPrompt.displayName = "InstallPrompt";
154
154
  export {
155
155
  InstallPrompt
156
156
  };
157
- //# sourceMappingURL=chunk-JE6RZ5L6.js.map
157
+ //# sourceMappingURL=chunk-5ZOJLYD2.js.map
@@ -1,3 +1,6 @@
1
+ import {
2
+ useCodeEditor
3
+ } from "./chunk-ZSXV3ERD.js";
1
4
  import {
2
5
  makeTestId,
3
6
  resolveCodeEditorProps
@@ -6,8 +9,8 @@ import {
6
9
  EditorToolbar
7
10
  } from "./chunk-4V7DBU4H.js";
8
11
  import {
9
- useCodeEditor
10
- } from "./chunk-ZSXV3ERD.js";
12
+ fieldEdge
13
+ } from "./chunk-MLOWPVVW.js";
11
14
 
12
15
  // src/components/form/CodeEditor/CodeEditor.tsx
13
16
  import Editor from "@monaco-editor/react";
@@ -22,7 +25,7 @@ var EditorContainer = styled(Paper)(({ theme }) => ({
22
25
  background: `linear-gradient(135deg, ${alpha(theme.palette.background.paper, 0.98)} 0%, ${alpha(theme.palette.background.paper, 0.95)} 100%)`,
23
26
  backdropFilter: "blur(10px)",
24
27
  WebkitBackdropFilter: "blur(10px)",
25
- border: `1px solid ${alpha(theme.palette.divider, 0.18)}`,
28
+ border: `1px solid ${fieldEdge(theme)}`,
26
29
  borderRadius: theme.shape.borderRadius * 2,
27
30
  overflow: "hidden"
28
31
  }));
@@ -164,4 +167,4 @@ var CodeEditor = (componentProps) => {
164
167
  export {
165
168
  CodeEditor
166
169
  };
167
- //# sourceMappingURL=chunk-B2324WXJ.js.map
170
+ //# sourceMappingURL=chunk-64IEKEMQ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/CodeEditor/CodeEditor.tsx"],"sourcesContent":["import Editor from '@monaco-editor/react';\nimport Box from '@mui/material/Box/index.js';\nimport Paper from '@mui/material/Paper/index.js';\nimport Typography from '@mui/material/Typography/index.js';\nimport { alpha, styled } from '@mui/material/styles/index.js';\nimport type { editor } from 'monaco-editor';\nimport type { FC} from 'react';\nimport React, { } from 'react';\n\nimport { makeTestId, resolveCodeEditorProps } from './CodeEditor.helpers';\nimport { useCodeEditor } from './CodeEditor.hooks';\nimport type { CodeEditorProps } from './CodeEditor.types';\nimport { EditorToolbar } from './CodeEditorToolbar';\n\nimport { fieldEdge } from '../../../tokens/field-edge';\n\n// Styled components\nconst EditorContainer = styled(Paper)(({ theme }) => ({\n display: 'flex',\n flexDirection: 'column',\n background: `linear-gradient(135deg, ${alpha(theme.palette.background.paper, 0.98)} 0%, ${alpha(theme.palette.background.paper, 0.95)} 100%)`,\n backdropFilter: 'blur(10px)',\n WebkitBackdropFilter: 'blur(10px)',\n border: `1px solid ${fieldEdge(theme)}`,\n borderRadius: theme.shape.borderRadius * 2,\n overflow: 'hidden' }));\n\nconst EditorWrapper = styled(Box, {\n shouldForwardProp: (prop) => prop !== 'fullscreen' })<{ fullscreen: boolean }>(({ theme, fullscreen }) => ({\n position: 'relative',\n flex: 1,\n minHeight: 200,\n ...(fullscreen && {\n position: 'fixed',\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n zIndex: theme.zIndex.modal,\n background: theme.palette.background.paper }) }));\n\nconst PlaceholderOverlay = styled(Box)(({ theme }) => ({\n position: 'absolute',\n top: theme.spacing(2),\n left: theme.spacing(8),\n color: theme.palette.text.disabled,\n fontFamily: 'Monaco, Menlo, \"Ubuntu Mono\", Consolas, source-code-pro, monospace',\n fontSize: '0.875rem',\n pointerEvents: 'none',\n userSelect: 'none' }));\n\n// Monaco editor themes\nconst EditorLoading: FC<{ label: string }> = ({ label }) => (\n <Box\n sx={{\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n height: '100%',\n color: 'text.secondary' }}\n >\n <Typography variant=\"body2\">{label}</Typography>\n </Box>\n);\n\nconst buildEditorOptions = ({\n minimap,\n fontSize,\n isWrapped,\n lineNumbers,\n readOnly }: {\n minimap?: boolean;\n fontSize: number;\n isWrapped: boolean;\n lineNumbers: boolean;\n readOnly: boolean;\n}): editor.IStandaloneEditorConstructionOptions => ({\n readOnly,\n // Explicitly convert minimap to boolean to ensure Monaco receives a definitive value\n // This prevents undefined from being interpreted differently in various environments\n minimap: { enabled: minimap === true },\n fontSize,\n wordWrap: isWrapped ? 'on' : 'off',\n lineNumbers: lineNumbers ? 'on' : 'off',\n scrollBeyondLastLine: false,\n automaticLayout: true,\n tabSize: 2,\n insertSpaces: true,\n folding: true,\n foldingStrategy: 'indentation',\n showFoldingControls: 'mouseover',\n smoothScrolling: true,\n cursorBlinking: 'smooth',\n cursorSmoothCaretAnimation: 'on',\n renderWhitespace: 'selection',\n renderLineHighlight: 'all',\n selectOnLineNumbers: true,\n roundedSelection: true,\n padding: { top: 16, bottom: 16 },\n fontFamily: 'Monaco, Menlo, \"Ubuntu Mono\", Consolas, source-code-pro, monospace',\n fontLigatures: true });\n\nexport const CodeEditor: FC<CodeEditorProps> = (componentProps) => {\n const {\n language,\n height,\n theme: themeProp,\n value,\n onChange,\n readOnly,\n lineNumbers,\n minimap,\n fontSize,\n wordWrap,\n showToolbar,\n autoFormat,\n placeholder,\n onSave,\n dataTestId,\n copy } = resolveCodeEditorProps(componentProps);\n\n const testId = makeTestId(dataTestId);\n const editor = useCodeEditor({ themeProp, wordWrap, autoFormat, readOnly, onSave });\n\n const editorOptions = buildEditorOptions({\n minimap,\n fontSize,\n isWrapped: editor.isWrapped,\n lineNumbers,\n readOnly });\n\n return (\n <EditorContainer elevation={2} data-testid={dataTestId || 'code-editor'}>\n {showToolbar && (\n <EditorToolbar\n copy={copy}\n language={language}\n readOnly={readOnly}\n isWrapped={editor.isWrapped}\n isCopied={editor.isCopied}\n isFullscreen={editor.isFullscreen}\n dataTestId={dataTestId}\n onFormat={editor.handleFormat}\n onCopy={editor.handleCopy}\n onWrapToggle={editor.handleWrapToggle}\n onFullscreenToggle={editor.handleFullscreenToggle}\n />\n )}\n\n <EditorWrapper fullscreen={editor.isFullscreen} data-testid={testId('editor-wrapper')}>\n {placeholder && !value && (\n <PlaceholderOverlay data-testid={testId('placeholder')}>{placeholder}</PlaceholderOverlay>\n )}\n\n <Editor\n height={editor.isFullscreen ? '100vh' : height}\n language={language}\n value={value}\n onChange={(newValue) => onChange?.(newValue || '')}\n theme={editor.editorTheme}\n options={editorOptions}\n onMount={editor.handleEditorDidMount}\n loading={<EditorLoading label={copy.loading} />}\n />\n </EditorWrapper>\n </EditorContainer>\n );\n};\n"],"mappings":"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","names":[]}
@@ -1,12 +1,12 @@
1
+ import {
2
+ useAutocomplete
3
+ } from "./chunk-362OGE5J.js";
1
4
  import {
2
5
  AutocompleteInput,
3
6
  ChipList,
4
7
  DefaultSuggestion,
5
8
  SuggestionListBox
6
9
  } from "./chunk-6TSP45KC.js";
7
- import {
8
- useAutocomplete
9
- } from "./chunk-362OGE5J.js";
10
10
  import {
11
11
  defaultGetKey,
12
12
  defaultGetLabel,
@@ -131,4 +131,4 @@ export {
131
131
  Autocomplete,
132
132
  Autocomplete_default
133
133
  };
134
- //# sourceMappingURL=chunk-AVGTTWTE.js.map
134
+ //# sourceMappingURL=chunk-65DLYC4S.js.map
@@ -1,3 +1,6 @@
1
+ import {
2
+ STACK_BREAK
3
+ } from "./chunk-7HPPUO2A.js";
1
4
  import {
2
5
  CARD_RADIUS,
3
6
  cardSurfaceStyles,
@@ -5,9 +8,6 @@ import {
5
8
  isSelectable,
6
9
  slotTestIds
7
10
  } from "./chunk-MQUU2XZB.js";
8
- import {
9
- STACK_BREAK
10
- } from "./chunk-EICVL6GS.js";
11
11
  import {
12
12
  useDragItem
13
13
  } from "./chunk-JCJGJX7V.js";
@@ -16,7 +16,7 @@ import {
16
16
  RAIL_GAP,
17
17
  railsTemplateFor,
18
18
  useListRails
19
- } from "./chunk-CZPU5TW3.js";
19
+ } from "./chunk-LYSSO6WC.js";
20
20
  import {
21
21
  DENSITY_ROW_PADDING
22
22
  } from "./chunk-ZPIMPOHV.js";
@@ -181,4 +181,4 @@ export {
181
181
  actionProps,
182
182
  rowStyles
183
183
  };
184
- //# sourceMappingURL=chunk-O6V7KKW7.js.map
184
+ //# sourceMappingURL=chunk-6CBYPMYQ.js.map
@@ -1,3 +1,6 @@
1
+ import {
2
+ containerStyles
3
+ } from "./chunk-Z56IO7OV.js";
1
4
  import {
2
5
  CarouselTrack
3
6
  } from "./chunk-WIXUMFU7.js";
@@ -7,9 +10,6 @@ import {
7
10
  import {
8
11
  CarouselChrome
9
12
  } from "./chunk-5QXSPLWU.js";
10
- import {
11
- containerStyles
12
- } from "./chunk-Z56IO7OV.js";
13
13
  import {
14
14
  withDefaults
15
15
  } from "./chunk-HPK33ACY.js";
@@ -152,4 +152,4 @@ var Carousel = (props) => {
152
152
  export {
153
153
  Carousel
154
154
  };
155
- //# sourceMappingURL=chunk-BPCYXLWY.js.map
155
+ //# sourceMappingURL=chunk-6HNEEJES.js.map
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  Sheet
3
- } from "./chunk-7EGHRNIA.js";
3
+ } from "./chunk-VVXRIPV5.js";
4
4
  import {
5
5
  Dialog
6
6
  } from "./chunk-S5LE2ARG.js";
7
7
  import {
8
8
  Button
9
- } from "./chunk-6HLRXICF.js";
9
+ } from "./chunk-IAQFQNBL.js";
10
10
  import {
11
11
  accentFor
12
12
  } from "./chunk-I6PZVHIT.js";
@@ -162,4 +162,4 @@ AppHeaderDetails.displayName = "AppHeaderDetails";
162
162
  export {
163
163
  AppHeaderDetails
164
164
  };
165
- //# sourceMappingURL=chunk-WXVHZHSJ.js.map
165
+ //# sourceMappingURL=chunk-6RFL7HGI.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  MoreGroup,
3
3
  fieldClearing
4
- } from "./chunk-QIKTIKO6.js";
4
+ } from "./chunk-24LW52EU.js";
5
5
  import {
6
6
  useDataViewsCopy
7
7
  } from "./chunk-KHG57NAE.js";
@@ -10,7 +10,7 @@ import {
10
10
  } from "./chunk-6DPAWXZ3.js";
11
11
  import {
12
12
  Button
13
- } from "./chunk-6HLRXICF.js";
13
+ } from "./chunk-IAQFQNBL.js";
14
14
  import {
15
15
  Text
16
16
  } from "./chunk-VRHBJXZ7.js";
@@ -180,4 +180,4 @@ function MoreFilters({
180
180
  export {
181
181
  MoreFilters
182
182
  };
183
- //# sourceMappingURL=chunk-UENDC45F.js.map
183
+ //# sourceMappingURL=chunk-6TYSEAAT.js.map
@@ -1,3 +1,7 @@
1
+ import {
2
+ fieldEdge
3
+ } from "./chunk-MLOWPVVW.js";
4
+
1
5
  // src/components/form/Textarea/Textarea.styles.ts
2
6
  import { alpha, keyframes } from "@mui/material/styles/index.js";
3
7
  var glowAnimation = keyframes`
@@ -60,7 +64,7 @@ var textareaEmphasisStyles = ({
60
64
  const glassStyles = glass ? {
61
65
  backgroundColor: alpha(theme.palette.background.paper, 0.1),
62
66
  backdropFilter: "blur(20px)",
63
- border: `1px solid ${alpha(theme.palette.divider, 0.2)}`,
67
+ border: `1px solid ${fieldEdge(theme)}`,
64
68
  "&:hover": {
65
69
  backgroundColor: alpha(theme.palette.background.paper, 0.15),
66
70
  backdropFilter: "blur(25px)"
@@ -91,4 +95,4 @@ export {
91
95
  getColorFromTheme,
92
96
  textareaEmphasisStyles
93
97
  };
94
- //# sourceMappingURL=chunk-FXMZMX5E.js.map
98
+ //# sourceMappingURL=chunk-6XPNJLXE.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/form/Textarea/Textarea.styles.ts"],"sourcesContent":["import { alpha, keyframes } from '@mui/material/styles/index.js';\nimport type { CSSObject, Theme } from '@mui/material/styles/index.js';\n\nimport { fieldEdge } from '../../../tokens/field-edge';\n\nconst glowAnimation = keyframes`\n 0% {\n box-shadow: 0 0 5px currentColor;\n }\n 50% {\n box-shadow: 0 0 20px currentColor, 0 0 30px currentColor;\n }\n 100% {\n box-shadow: 0 0 5px currentColor;\n }\n`;\n\n// Ripple animation for buttons (commented out - not currently used)\n// const rippleAnimation = keyframes`\n// 0% {\n// transform: scale(0);\n// opacity: 1;\n// }\n// 100% {\n// transform: scale(4);\n// opacity: 0;\n// }\n// `;\n\n// Float animation for rich text toolbar\nexport const floatAnimation = keyframes`\n 0% {\n transform: translateY(0px);\n }\n 50% {\n transform: translateY(-3px);\n }\n 100% {\n transform: translateY(0px);\n }\n`;\n\ntype ResolvedPalette = {\n main: string;\n dark: string;\n light: string;\n contrastText: string;\n};\n\ntype PartialPalette = { main: string; dark?: string; light?: string; contrastText?: string };\n\n// grey is indexed by weight rather than main/dark/light, so neutral is built by\n// hand. The literals are the MUI grey values, used if the theme omits a weight.\nconst neutralPalette = (theme: Theme): ResolvedPalette => {\n const grey = theme.palette.grey as unknown as Record<number, string>;\n\n return {\n main: grey?.[700] || '#616161',\n dark: grey?.[800] || '#424242',\n light: grey?.[500] || '#9e9e9e',\n contrastText: '#fff',\n };\n};\n\n// Each slot falls back to the palette's own main, then to primary — a custom\n// theme can define main without dark or light.\nconst pick = (...candidates: Array<string | undefined>): string =>\n candidates.find(Boolean) ?? '';\n\nconst withFallbacks = (theme: Theme, palette: PartialPalette): ResolvedPalette => ({\n main: pick(palette?.main, theme.palette.primary.main),\n dark: pick(palette?.dark, palette?.main, theme.palette.primary.dark),\n light: pick(palette?.light, palette?.main, theme.palette.primary.light),\n contrastText: pick(palette?.contrastText, '#fff'),\n});\n\nexport const getColorFromTheme = (theme: Theme, color: string): ResolvedPalette => {\n if (color === 'neutral') return neutralPalette(theme);\n\n const colorMap: Record<string, PartialPalette> = {\n primary: theme.palette.primary,\n secondary: theme.palette.secondary,\n success: theme.palette.success,\n warning: theme.palette.warning,\n info: theme.palette.info,\n danger: theme.palette.error,\n };\n\n return withFallbacks(theme, colorMap[color] || theme.palette.primary);\n};\n\n// glass, gradient and glow are independent flags that each layer styles onto the\n// base. Spelled out here rather than inline so the styled() callback keeps one\n// branch instead of three.\nexport const textareaEmphasisStyles = ({\n theme,\n colorPalette,\n glass,\n gradient,\n glow,\n}: {\n theme: Theme;\n colorPalette: { main: string; light?: string; dark?: string };\n glass?: boolean;\n gradient?: boolean;\n glow?: boolean;\n}): CSSObject => {\nconst glassStyles = glass\n ? {\n backgroundColor: alpha(theme.palette.background.paper, 0.1),\n backdropFilter: 'blur(20px)',\n border: `1px solid ${fieldEdge(theme)}`,\n '&:hover': {\n backgroundColor: alpha(theme.palette.background.paper, 0.15),\n backdropFilter: 'blur(25px)',\n },\n '&:focus': {\n backgroundColor: alpha(theme.palette.background.paper, 0.2),\n backdropFilter: 'blur(30px)',\n },\n }\n : {};\n\n// Gradient border effect\nconst gradientStyles = gradient\n ? {\n background: `linear-gradient(${theme.palette.background.paper}, ${theme.palette.background.paper}) padding-box,\n linear-gradient(135deg, ${colorPalette.main}, ${colorPalette.light}) border-box`,\n border: '2px solid transparent',\n '&:focus': {\n background: `linear-gradient(${theme.palette.background.paper}, ${theme.palette.background.paper}) padding-box,\n linear-gradient(135deg, ${colorPalette.main}, ${colorPalette.dark}) border-box`,\n },\n }\n : {};\n\n// Glow effect\nconst glowStyles = glow\n ? {\n animation: `${glowAnimation} 2s ease-in-out infinite`,\n boxShadow: `0 0 10px ${alpha(colorPalette.main, 0.3)}`,\n }\n : {};\n\n return { ...glassStyles, ...gradientStyles, ...glowStyles };\n};\n"],"mappings":";;;;;AAAA,SAAS,OAAO,iBAAiB;AAKjC,IAAM,gBAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAyBf,IAAM,iBAAiB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAuB9B,IAAM,iBAAiB,CAAC,UAAkC;AACxD,QAAM,OAAO,MAAM,QAAQ;AAE3B,SAAO;AAAA,IACL,MAAM,OAAO,GAAG,KAAK;AAAA,IACrB,MAAM,OAAO,GAAG,KAAK;AAAA,IACrB,OAAO,OAAO,GAAG,KAAK;AAAA,IACtB,cAAc;AAAA,EAChB;AACF;AAIA,IAAM,OAAO,IAAI,eACf,WAAW,KAAK,OAAO,KAAK;AAE9B,IAAM,gBAAgB,CAAC,OAAc,aAA8C;AAAA,EACjF,MAAM,KAAK,SAAS,MAAM,MAAM,QAAQ,QAAQ,IAAI;AAAA,EACpD,MAAM,KAAK,SAAS,MAAM,SAAS,MAAM,MAAM,QAAQ,QAAQ,IAAI;AAAA,EACnE,OAAO,KAAK,SAAS,OAAO,SAAS,MAAM,MAAM,QAAQ,QAAQ,KAAK;AAAA,EACtE,cAAc,KAAK,SAAS,cAAc,MAAM;AAClD;AAEO,IAAM,oBAAoB,CAAC,OAAc,UAAmC;AACjF,MAAI,UAAU,UAAW,QAAO,eAAe,KAAK;AAEpD,QAAM,WAA2C;AAAA,IAC/C,SAAS,MAAM,QAAQ;AAAA,IACvB,WAAW,MAAM,QAAQ;AAAA,IACzB,SAAS,MAAM,QAAQ;AAAA,IACvB,SAAS,MAAM,QAAQ;AAAA,IACvB,MAAM,MAAM,QAAQ;AAAA,IACpB,QAAQ,MAAM,QAAQ;AAAA,EACxB;AAEA,SAAO,cAAc,OAAO,SAAS,KAAK,KAAK,MAAM,QAAQ,OAAO;AACtE;AAKO,IAAM,yBAAyB,CAAC;AAAA,EACrC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAMiB;AACjB,QAAM,cAAc,QAChB;AAAA,IACE,iBAAiB,MAAM,MAAM,QAAQ,WAAW,OAAO,GAAG;AAAA,IAC1D,gBAAgB;AAAA,IAChB,QAAQ,aAAa,UAAU,KAAK,CAAC;AAAA,IACrC,WAAW;AAAA,MACT,iBAAiB,MAAM,MAAM,QAAQ,WAAW,OAAO,IAAI;AAAA,MAC3D,gBAAgB;AAAA,IAClB;AAAA,IACA,WAAW;AAAA,MACT,iBAAiB,MAAM,MAAM,QAAQ,WAAW,OAAO,GAAG;AAAA,MAC1D,gBAAgB;AAAA,IAClB;AAAA,EACF,IACA,CAAC;AAGL,QAAM,iBAAiB,WACnB;AAAA,IACE,YAAY,mBAAmB,MAAM,QAAQ,WAAW,KAAK,KAAK,MAAM,QAAQ,WAAW,KAAK;AAAA,yCAC7D,aAAa,IAAI,KAAK,aAAa,KAAK;AAAA,IAC3E,QAAQ;AAAA,IACR,WAAW;AAAA,MACT,YAAY,mBAAmB,MAAM,QAAQ,WAAW,KAAK,KAAK,MAAM,QAAQ,WAAW,KAAK;AAAA,2CAC7D,aAAa,IAAI,KAAK,aAAa,IAAI;AAAA,IAC5E;AAAA,EACF,IACA,CAAC;AAGL,QAAM,aAAa,OACf;AAAA,IACE,WAAW,GAAG,aAAa;AAAA,IAC3B,WAAW,YAAY,MAAM,aAAa,MAAM,GAAG,CAAC;AAAA,EACtD,IACA,CAAC;AAEH,SAAO,EAAE,GAAG,aAAa,GAAG,gBAAgB,GAAG,WAAW;AAC5D;","names":[]}
@@ -1,12 +1,12 @@
1
+ import {
2
+ ScrollViewport
3
+ } from "./chunk-C53C7C2X.js";
1
4
  import {
2
5
  ScrollAreaContent
3
6
  } from "./chunk-4OEKIFBC.js";
4
7
  import {
5
8
  resolveScrollAreaProps
6
9
  } from "./chunk-RHIDWUK7.js";
7
- import {
8
- ScrollViewport
9
- } from "./chunk-C53C7C2X.js";
10
10
 
11
11
  // src/components/layout/ScrollArea/ScrollArea.tsx
12
12
  import KeyboardArrowUp from "@mui/icons-material/KeyboardArrowUp";
@@ -237,4 +237,4 @@ var ScrollArea = (componentProps) => {
237
237
  export {
238
238
  ScrollArea
239
239
  };
240
- //# sourceMappingURL=chunk-R7MX5KPJ.js.map
240
+ //# sourceMappingURL=chunk-6YLAVHV4.js.map
@@ -1,11 +1,12 @@
1
1
  import {
2
2
  DashboardAction,
3
+ DashboardActions,
3
4
  DashboardExport,
4
5
  DashboardFilterToggle,
5
6
  DashboardInfo,
6
7
  DashboardSettings,
7
8
  DashboardSpacer
8
- } from "./chunk-FLSSV4TH.js";
9
+ } from "./chunk-EWGVRRUF.js";
9
10
  import {
10
11
  DashboardContext,
11
12
  useDashboardContext
@@ -197,6 +198,7 @@ Dashboard.FilterToggle = DashboardFilterToggle;
197
198
  Dashboard.Settings = DashboardSettings;
198
199
  Dashboard.Export = DashboardExport;
199
200
  Dashboard.Action = DashboardAction;
201
+ Dashboard.Actions = DashboardActions;
200
202
  Dashboard.Filters = DashboardFilters;
201
203
  Dashboard.MoreFilters = DashboardMoreFilters;
202
204
  Dashboard.Body = DashboardBody;
@@ -205,4 +207,4 @@ export {
205
207
  markDashboardSlot,
206
208
  Dashboard
207
209
  };
208
- //# sourceMappingURL=chunk-A43SJQYE.js.map
210
+ //# sourceMappingURL=chunk-74LYLKO2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/layout/Dashboard/Dashboard.tsx"],"sourcesContent":["'use client';\n\nimport ExpandLessIcon from '@mui/icons-material/ExpandLess';\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\nimport FilterIcon from '@mui/icons-material/FilterListRounded';\nimport NavigateNextIcon from '@mui/icons-material/NavigateNext';\nimport Box from '@mui/material/Box/index.js';\nimport MuiBreadcrumbs from '@mui/material/Breadcrumbs/index.js';\nimport Button from '@mui/material/Button/index.js';\nimport Collapse from '@mui/material/Collapse/index.js';\nimport MuiLink from '@mui/material/Link/index.js';\nimport Typography from '@mui/material/Typography/index.js';\nimport { styled } from '@mui/material/styles/index.js';\nimport React, { useMemo, useState } from 'react';\n\nimport { DashboardContext, useDashboardContext } from './DashboardContext';\nimport {\n DashboardAction,\n DashboardActions,\n DashboardExport,\n DashboardFilterToggle,\n DashboardInfo,\n DashboardSettings,\n DashboardSpacer,\n} from './DashboardParts';\nimport type {\n DashboardBodyProps,\n DashboardBreadcrumbProps,\n DashboardFiltersProps,\n DashboardHeaderProps,\n DashboardMoreFiltersProps,\n DashboardProps,\n} from './Dashboard.types';\n\n/**\n * Ordered slot keys. The root reorders composed children into this sequence so\n * authoring order in JSX never matters — a `<Dashboard.Filters>` placed above\n * a `<Dashboard.Header>` still renders below it.\n */\nconst SLOT_ORDER = ['breadcrumb', 'header', 'filters', 'body'] as const;\n/** A slot a component can occupy in the canonical Dashboard order. */\nexport type DashboardSlot = (typeof SLOT_ORDER)[number];\n\n/** Marker attached to each sub-component so the root can rank it by slot. */\ntype SlottedComponent = { dashboardSlot?: DashboardSlot };\n\n/**\n * Tag a component with the Dashboard slot it occupies so the root ranks it in\n * canonical order. The root inspects only its DIRECT children's `type`, so a\n * page that wraps a `<Dashboard.Header>` (or any part) in its own component MUST\n * mark that wrapper — otherwise it counts as an unrecognised child and sinks\n * below the body. Returns the component for convenient inline use.\n *\n * @example\n * ```tsx\n * function ProductsHeader(props) {\n * return <Dashboard.Header title=\"Products\">{/* … *\\/}</Dashboard.Header>;\n * }\n * markDashboardSlot(ProductsHeader, 'header');\n * ```\n */\nexport function markDashboardSlot<T>(component: T, slot: DashboardSlot): T {\n (component as SlottedComponent).dashboardSlot = slot;\n return component;\n}\n\nconst Root = styled(Box)(({ theme }) => ({\n display: 'flex',\n flexDirection: 'column',\n gap: theme.spacing(2),\n width: '100%',\n}));\n\nfunction slotRank(node: React.ReactNode): number {\n if (React.isValidElement(node)) {\n const slot = (node.type as SlottedComponent).dashboardSlot;\n if (slot) {\n const rank = SLOT_ORDER.indexOf(slot);\n if (rank >= 0) {\n return rank;\n }\n }\n }\n // Unknown / arbitrary children keep their relative position after the\n // recognised slots.\n return SLOT_ORDER.length;\n}\n\n/**\n * Composable page shell. `<Dashboard>` provides shared state through context\n * and renders whichever sub-components you compose — nothing is implied. Drop\n * in only the parts you need; omit `<Dashboard.Filters>` and there is simply no\n * filter UI.\n *\n * @example\n * ```tsx\n * <Dashboard activeFilterCount={2}>\n * <Dashboard.Breadcrumb items={[{ label: 'Admin', href: '/admin' }, { label: 'Products' }]} />\n * <Dashboard.Header title=\"Products\">\n * <Dashboard.Info>What this page does…</Dashboard.Info>\n * <Dashboard.FilterToggle />\n * <Dashboard.Settings>In development</Dashboard.Settings>\n * <Dashboard.Spacer />\n * <Dashboard.Export onExport={handleExport} />\n * <Dashboard.Action><Button variant=\"contained\">New product</Button></Dashboard.Action>\n * </Dashboard.Header>\n * <Dashboard.Filters>{/* search + pills *\\/}</Dashboard.Filters>\n * <Dashboard.Body>{table}</Dashboard.Body>\n * </Dashboard>\n * ```\n */\nexport const Dashboard = ({\n children,\n defaultFiltersVisible = true,\n activeFilterCount = 0,\n testIdPrefix = 'dashboard',\n className,\n}: DashboardProps): React.JSX.Element => {\n const [filtersVisible, setFiltersVisible] = useState(defaultFiltersVisible);\n const [moreFiltersOpen, setMoreFiltersOpen] = useState(false);\n\n const value = useMemo(\n () => ({\n filtersVisible,\n toggleFilters: () => setFiltersVisible((v) => !v),\n moreFiltersOpen,\n toggleMoreFilters: () => setMoreFiltersOpen((v) => !v),\n activeFilterCount,\n testIdPrefix,\n }),\n [filtersVisible, moreFiltersOpen, activeFilterCount, testIdPrefix],\n );\n\n // Stable sort recognised slots into canonical order, preserving the original\n // order of anything unrecognised.\n const ordered = useMemo(() => {\n const arr = React.Children.toArray(children);\n return arr\n .map((node, index) => ({ node, index, rank: slotRank(node) }))\n .sort((a, b) => (a.rank === b.rank ? a.index - b.index : a.rank - b.rank))\n .map((entry) => entry.node);\n }, [children]);\n\n return (\n <DashboardContext.Provider value={value}>\n <Root className={className} data-testid={testIdPrefix}>\n {ordered}\n </Root>\n </DashboardContext.Provider>\n );\n};\n\nDashboard.displayName = 'Dashboard';\n\n/* -------------------------------------------------------------------------- */\n/* Breadcrumb */\n/* -------------------------------------------------------------------------- */\n\nconst DashboardBreadcrumb = ({\n items,\n renderLink,\n className,\n}: DashboardBreadcrumbProps): React.JSX.Element => {\n const { testIdPrefix } = useDashboardContext();\n return (\n <MuiBreadcrumbs\n separator={<NavigateNextIcon fontSize=\"small\" />}\n className={className}\n aria-label=\"breadcrumb\"\n data-testid={`${testIdPrefix}-breadcrumb`}\n sx={{ fontSize: '0.875rem', color: 'text.secondary' }}\n >\n {items.map((item, index) => {\n const isLast = index === items.length - 1;\n if (isLast || !item.href) {\n return (\n <Typography\n key={`${item.label}-${index}`}\n component=\"span\"\n sx={{ fontSize: '0.875rem', color: isLast ? 'text.primary' : 'text.secondary' }}\n aria-current={isLast ? 'page' : undefined}\n >\n {item.label}\n </Typography>\n );\n }\n const linkContent = item.label;\n if (renderLink) {\n return <React.Fragment key={`${item.label}-${index}`}>{renderLink(item, linkContent)}</React.Fragment>;\n }\n return (\n <MuiLink\n key={`${item.label}-${index}`}\n href={item.href}\n underline=\"hover\"\n color=\"inherit\"\n sx={{ fontSize: '0.875rem' }}\n >\n {linkContent}\n </MuiLink>\n );\n })}\n </MuiBreadcrumbs>\n );\n};\nDashboardBreadcrumb.displayName = 'Dashboard.Breadcrumb';\n(DashboardBreadcrumb as SlottedComponent).dashboardSlot = 'breadcrumb';\n\n/* -------------------------------------------------------------------------- */\n/* Header + action parts */\n/* -------------------------------------------------------------------------- */\n\nconst DashboardHeader = ({ title, children, className }: DashboardHeaderProps): React.JSX.Element => {\n const { testIdPrefix } = useDashboardContext();\n return (\n <Box\n className={className}\n data-testid={`${testIdPrefix}-header`}\n sx={{ display: 'flex', alignItems: 'center', gap: 1, flexWrap: 'wrap', minHeight: 40 }}\n >\n <Typography variant=\"h5\" component=\"h1\" sx={{ fontWeight: 600, mr: 0.5 }}>\n {title}\n </Typography>\n {children}\n </Box>\n );\n};\nDashboardHeader.displayName = 'Dashboard.Header';\n(DashboardHeader as SlottedComponent).dashboardSlot = 'header';\n\n/** Flexible spacer — everything composed after it is pushed to the right. */\n/* -------------------------------------------------------------------------- */\n/* Filters */\n/* -------------------------------------------------------------------------- */\n\nconst DashboardFilters = ({ children, className }: DashboardFiltersProps): React.JSX.Element => {\n const { filtersVisible, testIdPrefix } = useDashboardContext();\n return (\n <Collapse in={filtersVisible} unmountOnExit data-testid={`${testIdPrefix}-filters`}>\n <Box\n className={className}\n sx={{\n display: 'flex',\n flexDirection: 'column',\n gap: 1.5,\n p: 2,\n borderRadius: 1,\n border: 1,\n borderColor: 'divider',\n bgcolor: 'action.hover',\n }}\n >\n {children}\n </Box>\n </Collapse>\n );\n};\nDashboardFilters.displayName = 'Dashboard.Filters';\n(DashboardFilters as SlottedComponent).dashboardSlot = 'filters';\n\nconst DashboardMoreFilters = ({ children, label = 'More filters' }: DashboardMoreFiltersProps): React.JSX.Element => {\n const { moreFiltersOpen, toggleMoreFilters, testIdPrefix } = useDashboardContext();\n return (\n <Box>\n <Button\n variant=\"text\"\n size=\"small\"\n startIcon={<FilterIcon fontSize=\"small\" />}\n endIcon={moreFiltersOpen ? <ExpandLessIcon fontSize=\"small\" /> : <ExpandMoreIcon fontSize=\"small\" />}\n onClick={toggleMoreFilters}\n aria-expanded={moreFiltersOpen}\n data-testid={`${testIdPrefix}-more-filters-toggle`}\n >\n {label}\n </Button>\n <Collapse in={moreFiltersOpen} unmountOnExit data-testid={`${testIdPrefix}-more-filters-panel`}>\n <Box sx={{ mt: 1.5, p: 2, borderRadius: 1, border: 1, borderColor: 'divider', bgcolor: 'background.paper' }}>\n {children}\n </Box>\n </Collapse>\n </Box>\n );\n};\nDashboardMoreFilters.displayName = 'Dashboard.MoreFilters';\n\n/* -------------------------------------------------------------------------- */\n/* Body */\n/* -------------------------------------------------------------------------- */\n\nconst DashboardBody = ({ children, className }: DashboardBodyProps): React.JSX.Element => {\n const { testIdPrefix } = useDashboardContext();\n return (\n <Box className={className} data-testid={`${testIdPrefix}-body`}>\n {children}\n </Box>\n );\n};\nDashboardBody.displayName = 'Dashboard.Body';\n(DashboardBody as SlottedComponent).dashboardSlot = 'body';\n\n/* -------------------------------------------------------------------------- */\n/* Attach sub-components as dot-notation parts */\n/* -------------------------------------------------------------------------- */\n\nDashboard.Breadcrumb = DashboardBreadcrumb;\nDashboard.Header = DashboardHeader;\nDashboard.Spacer = DashboardSpacer;\nDashboard.Info = DashboardInfo;\nDashboard.FilterToggle = DashboardFilterToggle;\nDashboard.Settings = DashboardSettings;\nDashboard.Export = DashboardExport;\nDashboard.Action = DashboardAction;\nDashboard.Actions = DashboardActions;\nDashboard.Filters = DashboardFilters;\nDashboard.MoreFilters = DashboardMoreFilters;\nDashboard.Body = DashboardBody;\n"],"mappings":"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","names":[]}
@@ -4,6 +4,9 @@ import {
4
4
  import {
5
5
  countries
6
6
  } from "./chunk-3JDP5OUR.js";
7
+ import {
8
+ fieldEdge
9
+ } from "./chunk-MLOWPVVW.js";
7
10
 
8
11
  // src/components/form/PhoneInput/PhoneInput.tsx
9
12
  import ArrowDropDown from "@mui/icons-material/ArrowDropDown";
@@ -23,7 +26,7 @@ var GlassTextField = styled(TextField)(({ theme }) => ({
23
26
  background: `linear-gradient(135deg, ${alpha(theme.palette.background.paper, 0.8)} 0%, ${alpha(theme.palette.background.paper, 0.6)} 100%)`,
24
27
  backdropFilter: "blur(10px)",
25
28
  WebkitBackdropFilter: "blur(10px)",
26
- border: `1px solid ${alpha(theme.palette.divider, 0.18)}`,
29
+ border: `1px solid ${fieldEdge(theme)}`,
27
30
  transition: theme.transitions.create(["border-color", "box-shadow", "background"]),
28
31
  "&:hover": {
29
32
  background: `linear-gradient(135deg, ${alpha(theme.palette.background.paper, 0.9)} 0%, ${alpha(theme.palette.background.paper, 0.7)} 100%)`,
@@ -331,4 +334,4 @@ export {
331
334
  PhoneInput,
332
335
  PhoneInput_default
333
336
  };
334
- //# sourceMappingURL=chunk-A2WJMZX5.js.map
337
+ //# sourceMappingURL=chunk-7DBFEZRC.js.map