@12-apps/ui 6.46.1 → 6.47.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components-catalog.md +1 -1
- package/dist/_internal/components/data-display/Avatar/Avatar.js +3 -3
- package/dist/_internal/components/data-display/Avatar/Avatar.view.js +2 -2
- package/dist/_internal/components/data-display/Badge/Badge.js +2 -2
- package/dist/_internal/components/data-display/CardKit/use-remove-confirm.js +1 -1
- package/dist/_internal/components/data-display/CardKit/use-row-confirm.js +1 -1
- package/dist/_internal/components/data-display/Chart/Chart.js +4 -4
- package/dist/_internal/components/data-display/Chart/SpecChart.js +7 -7
- package/dist/_internal/components/data-display/Chart/chart-context.js +2 -2
- package/dist/_internal/components/data-display/Chart/chart-renderers.js +3 -3
- package/dist/_internal/components/data-display/Chart/chart-spec.js +2 -2
- package/dist/_internal/components/data-display/DataViews/DataViewsGrid.js +29 -29
- package/dist/_internal/components/data-display/DataViews/DataViewsTableBase.js +38 -38
- package/dist/_internal/components/data-display/DataViews/ManageViewsDialog.js +1 -1
- package/dist/_internal/components/data-display/DataViews/SaveViewModal.js +3 -3
- package/dist/_internal/components/data-display/DataViews/base-list-card-geometry.js +4 -4
- package/dist/_internal/components/data-display/DataViews/base-list-card-slots.js +3 -3
- package/dist/_internal/components/data-display/DataViews/base-list-card.js +7 -7
- package/dist/_internal/components/data-display/DataViews/data-views-category-pill.js +9 -9
- package/dist/_internal/components/data-display/DataViews/data-views-display-panel.js +1 -1
- package/dist/_internal/components/data-display/DataViews/data-views-filter-panel.js +12 -12
- package/dist/_internal/components/data-display/DataViews/data-views-grid-bodies.js +5 -5
- package/dist/_internal/components/data-display/DataViews/data-views-grid-parts.js +26 -26
- package/dist/_internal/components/data-display/DataViews/data-views-inline-bar.js +14 -14
- package/dist/_internal/components/data-display/DataViews/data-views-more-fields.js +12 -12
- package/dist/_internal/components/data-display/DataViews/data-views-more-filters.js +13 -13
- package/dist/_internal/components/data-display/DataViews/data-views-range-pill.js +2 -2
- package/dist/_internal/components/data-display/DataViews/data-views-scope-tabs.js +2 -2
- package/dist/_internal/components/data-display/DataViews/data-views-shell-toolbar.js +2 -2
- package/dist/_internal/components/data-display/DataViews/data-views-table-parts.js +5 -5
- package/dist/_internal/components/data-display/DataViews/data-views-toolbar.js +2 -2
- package/dist/_internal/components/data-display/DataViews/list-card-rails.js +2 -2
- package/dist/_internal/components/data-display/DataViews/use-data-views-state.js +2 -2
- package/dist/_internal/components/data-display/FleetMap/FleetBody.js +11 -11
- package/dist/_internal/components/data-display/FleetMap/FleetCanvas.js +8 -8
- package/dist/_internal/components/data-display/FleetMap/FleetMap.js +12 -12
- package/dist/_internal/components/data-display/FleetMap/FleetRoster.js +2 -2
- package/dist/_internal/components/data-display/HoverCard/HoverCard.js +3 -3
- package/dist/_internal/components/data-display/Lightbox/Lightbox.js +3 -3
- package/dist/_internal/components/data-display/MapPreview/MapLayers.js +2 -2
- package/dist/_internal/components/data-display/MapPreview/MapPreview.js +7 -7
- package/dist/_internal/components/data-display/Progress/Progress.js +2 -2
- package/dist/_internal/components/data-display/Sheet/Sheet.js +4 -4
- package/dist/_internal/components/data-display/Table/Table.js +3 -3
- package/dist/_internal/components/data-display/index.js +42 -42
- package/dist/_internal/components/feedback/TutorialOverlay/TutorialOverlay.js +2 -2
- package/dist/_internal/components/feedback/index.js +5 -5
- package/dist/_internal/components/form/AddressAutocomplete/AddressAutocomplete.hooks.js +4 -4
- package/dist/_internal/components/form/AddressAutocomplete/AddressAutocomplete.js +7 -7
- package/dist/_internal/components/form/Autocomplete/Autocomplete.js +2 -2
- package/dist/_internal/components/form/Calendar/Calendar.hooks.js +2 -2
- package/dist/_internal/components/form/Calendar/Calendar.js +3 -3
- package/dist/_internal/components/form/CategorySelect/CategoryPanel.js +4 -4
- package/dist/_internal/components/form/CategorySelect/CategoryPanelList.js +3 -3
- package/dist/_internal/components/form/CategorySelect/CategoryRows.js +2 -2
- package/dist/_internal/components/form/CategorySelect/CategorySelect.js +8 -8
- package/dist/_internal/components/form/CepField/CepField.js +3 -3
- package/dist/_internal/components/form/CodeEditor/CodeEditor.js +2 -2
- package/dist/_internal/components/form/Command/Command.js +2 -2
- package/dist/_internal/components/form/DateRangePicker/DateRangePicker.js +5 -5
- package/dist/_internal/components/form/Input/Input.js +2 -2
- package/dist/_internal/components/form/NumberField/NumberField.js +3 -3
- package/dist/_internal/components/form/Select/Select.js +5 -2
- package/dist/_internal/components/form/Select/Select.metrics.js +5 -1
- package/dist/_internal/components/form/Select/Select.searchable.js +28 -0
- package/dist/_internal/components/form/Select/Select.searchable.js.map +1 -0
- package/dist/_internal/components/form/Select/Select.styles.js +25 -0
- package/dist/_internal/components/form/Select/Select.styles.js.map +1 -0
- package/dist/_internal/components/form/index.js +32 -29
- package/dist/_internal/components/form/total-form/Fields/CategoryField.js +9 -9
- package/dist/_internal/components/form/total-form/Fields/CepField.js +4 -4
- package/dist/_internal/components/form/total-form/Fields/SelectField.js +6 -3
- package/dist/_internal/components/form/total-form/Fields/TextField.js +3 -3
- package/dist/_internal/components/form/total-form/Fields/index.js +20 -18
- package/dist/_internal/components/index.js +85 -83
- package/dist/_internal/components/navigation/AppHeader/AppHeader.details.js +4 -4
- package/dist/_internal/components/navigation/SectionNav/SectionNav.bar.js +6 -6
- package/dist/_internal/components/navigation/SectionNav/SectionNav.js +8 -8
- package/dist/_internal/components/navigation/SectionNav/SectionNav.parts.js +3 -3
- package/dist/_internal/components/navigation/SectionNav/SectionNav.primary.js +4 -4
- package/dist/_internal/components/navigation/SectionNav/SectionNav.rail.js +4 -4
- package/dist/_internal/components/navigation/SectionNav/SectionNav.sheet.js +4 -4
- package/dist/_internal/components/navigation/index.js +12 -12
- package/dist/_internal/user-avatar/user-avatar.js +4 -4
- package/dist/charts.js +10 -10
- package/dist/{chunk-A64MQ7GW.js → chunk-2LSJTQIL.js} +2 -2
- package/dist/{chunk-EU76OQGR.js → chunk-2NYVMLFQ.js} +2 -2
- package/dist/{chunk-CJPP4OUK.js → chunk-2YKTB2IZ.js} +2 -2
- package/dist/{chunk-ISW5K72V.js → chunk-2ZRZTGWP.js} +5 -5
- package/dist/{chunk-LQRUTHJY.js → chunk-3CDU7DLD.js} +5 -5
- package/dist/{chunk-72FPUWD6.js → chunk-3IPQANXY.js} +2 -2
- package/dist/{chunk-56QYSVLI.js → chunk-3WAAL3KN.js} +7 -7
- package/dist/{chunk-JO4UMHWR.js → chunk-43UFSKEK.js} +3 -3
- package/dist/{chunk-N2XQKTXX.js → chunk-5NFQKL7C.js} +5 -5
- package/dist/{chunk-PCHUIDMT.js → chunk-5OEC546C.js} +2 -2
- package/dist/{chunk-JBGCGYEC.js → chunk-6EJF3BUR.js} +4 -4
- package/dist/{chunk-P3XEF26U.js → chunk-A5ODDTGU.js} +3 -3
- package/dist/{chunk-RVOYCPKF.js → chunk-ACU7LEFG.js} +5 -5
- package/dist/{chunk-OARM5RX4.js → chunk-AQC67NQZ.js} +5 -5
- package/dist/{chunk-QQUNZH3L.js → chunk-AS2PWQIU.js} +3 -3
- package/dist/chunk-AV6NNCRO.js +111 -0
- package/dist/chunk-AV6NNCRO.js.map +1 -0
- package/dist/{chunk-V54LG3QG.js → chunk-B3QWQG62.js} +2 -2
- package/dist/{chunk-J2JWWGMT.js → chunk-BPOVRMVS.js} +7 -7
- package/dist/{chunk-V4R6Q5ED.js → chunk-CGBUWNNQ.js} +11 -11
- package/dist/{chunk-ZCEXSYAJ.js → chunk-CGL7R37P.js} +4 -4
- package/dist/{chunk-GYZUJ7HH.js → chunk-CO4MSWTV.js} +5 -5
- package/dist/chunk-EISPWFYO.js +146 -0
- package/dist/chunk-EISPWFYO.js.map +1 -0
- package/dist/{chunk-PGPPN63I.js → chunk-EMEXXAQI.js} +2 -2
- package/dist/{chunk-2HPNN5XA.js → chunk-FIF4RQ4S.js} +2 -2
- package/dist/{chunk-T6HVNVFI.js → chunk-FQT4C5R4.js} +9 -9
- package/dist/{chunk-BWURMQWZ.js → chunk-FS7UVKEE.js} +4 -4
- package/dist/{chunk-LUPHXDEU.js → chunk-FVKBP3UX.js} +2 -2
- package/dist/{chunk-TPPFWETI.js → chunk-G6II7SVX.js} +7 -7
- package/dist/{chunk-LV2SZFXK.js → chunk-GMC3F43L.js} +7 -7
- package/dist/{chunk-R6SBP5M5.js → chunk-GOWBYHYW.js} +4 -4
- package/dist/{chunk-AA7QTFMB.js → chunk-HGRC635A.js} +2 -2
- package/dist/{chunk-TE3XYCX7.js → chunk-IHO2O44S.js} +5 -5
- package/dist/{chunk-VPH47OIV.js → chunk-IKZSQKOE.js} +2 -2
- package/dist/{chunk-IPI3OU2P.js → chunk-IV7G7NK3.js} +5 -5
- package/dist/{chunk-JTWRI4WD.js → chunk-IX3U3XPP.js} +14 -14
- package/dist/{chunk-WYXNFH5Y.js → chunk-IYC7NPX7.js} +14 -2
- package/dist/{chunk-WYXNFH5Y.js.map → chunk-IYC7NPX7.js.map} +1 -1
- package/dist/{chunk-HC2AO3RT.js → chunk-J44PPGBF.js} +2 -2
- package/dist/{chunk-V2GHNHP6.js → chunk-JAHWFJCW.js} +4 -4
- package/dist/{chunk-HAFLKWWU.js → chunk-JQ6HDXKA.js} +2 -2
- package/dist/{chunk-SPZAEMGW.js → chunk-JWJ77IMK.js} +4 -4
- package/dist/{chunk-HYNDC3FP.js → chunk-JYLOCXMV.js} +5 -5
- package/dist/{chunk-ILKNYENU.js → chunk-LB27LKG3.js} +4 -4
- package/dist/{chunk-IWYTOCCV.js → chunk-LHTEAPYG.js} +4 -4
- package/dist/{chunk-TPVSHO75.js → chunk-NLEO5YI4.js} +7 -7
- package/dist/{chunk-K45ML7M7.js → chunk-NU55QUMO.js} +2 -2
- package/dist/{chunk-KN3WYEH2.js → chunk-NYHZUVLC.js} +4 -4
- package/dist/{chunk-U2UT2NDH.js → chunk-OBID7SOG.js} +2 -2
- package/dist/{chunk-UUJ7J7NE.js → chunk-PP7CDKO4.js} +2 -2
- package/dist/{chunk-6L2FKTBO.js → chunk-PQS3IPMD.js} +10 -91
- package/dist/chunk-PQS3IPMD.js.map +1 -0
- package/dist/{chunk-PARTZ7XI.js → chunk-R53ZOW4B.js} +2 -2
- package/dist/{chunk-BWXPO2SE.js → chunk-S22XIXLL.js} +3 -3
- package/dist/{chunk-QL7NPQOP.js → chunk-SAJ5H5VC.js} +2 -2
- package/dist/{chunk-6GAZAJXB.js → chunk-SDKOOVEX.js} +4 -4
- package/dist/{chunk-ETCS6OBJ.js → chunk-THCDUP6Q.js} +9 -9
- package/dist/{chunk-CMFJQH6A.js → chunk-UG636FEL.js} +4 -4
- package/dist/{chunk-NFA7STJA.js → chunk-UILH4OAZ.js} +5 -5
- package/dist/{chunk-X5F4FRH7.js → chunk-VNOXUWK7.js} +4 -4
- package/dist/{chunk-MD3ND6DT.js → chunk-VU63PDWW.js} +3 -3
- package/dist/{chunk-RBLBXJR7.js → chunk-WAD5VL6B.js} +7 -7
- package/dist/{chunk-4MGFUPQT.js → chunk-WC3W36AM.js} +7 -7
- package/dist/{chunk-Z3L2EGXW.js → chunk-WDAEYLT5.js} +2 -2
- package/dist/{chunk-BEX3FLHB.js → chunk-X3C3VTYS.js} +2 -2
- package/dist/{chunk-NFTFP6WO.js → chunk-XNTDEQEB.js} +5 -5
- package/dist/{chunk-TWVRPT7J.js → chunk-XXL4PM4M.js} +2 -2
- package/dist/{chunk-6OQHZVK6.js → chunk-XXNLBO4Q.js} +3 -3
- package/dist/{chunk-TNQDSTIA.js → chunk-Y6C4MYZE.js} +7 -7
- package/dist/{chunk-NRKAJHBB.js → chunk-YRACC6BB.js} +4 -4
- package/dist/{chunk-RSQYWGMU.js → chunk-YTIUFMRM.js} +5 -5
- package/dist/{chunk-FQ637IDM.js → chunk-YXU45AVO.js} +5 -5
- package/dist/{chunk-YDU2YPQA.js → chunk-ZVJSY2OV.js} +3 -3
- package/dist/data-display/Avatar.js +3 -3
- package/dist/data-display/Badge.js +2 -2
- package/dist/data-display/CardKit.js +10 -10
- package/dist/data-display/Chart.js +10 -10
- package/dist/data-display/DataViews.js +55 -55
- package/dist/data-display/FleetMap.js +12 -12
- package/dist/data-display/HoverCard.js +3 -3
- package/dist/data-display/Lightbox.js +3 -3
- package/dist/data-display/MapPreview.js +7 -7
- package/dist/data-display/Progress.js +2 -2
- package/dist/data-display/Sheet.js +4 -4
- package/dist/data-display/Table.js +3 -3
- package/dist/feedback/ConfirmAction.js +3 -3
- package/dist/feedback/TutorialOverlay.js +2 -2
- package/dist/form/AddressAutocomplete.js +7 -7
- package/dist/form/Autocomplete.js +2 -2
- package/dist/form/Calendar.js +3 -3
- package/dist/form/CategorySelect.js +8 -8
- package/dist/form/CepField.js +3 -3
- package/dist/form/CodeEditor.js +2 -2
- package/dist/form/Command.js +2 -2
- package/dist/form/DateRangePicker.js +10 -10
- package/dist/form/Input.js +2 -2
- package/dist/form/NumberField.js +3 -3
- package/dist/form/Select.js +5 -2
- package/dist/form/total-form.js +20 -18
- package/dist/native/form/Select.js.map +1 -1
- package/dist/navigation/AppHeader.js +4 -4
- package/dist/navigation/SectionNav.js +8 -8
- package/dist/types/components/form/Select/Select.base.d.ts +15 -0
- package/dist/types/components/form/Select/Select.base.d.ts.map +1 -1
- package/dist/types/components/form/Select/Select.d.ts +5 -0
- package/dist/types/components/form/Select/Select.d.ts.map +1 -1
- package/dist/types/components/form/Select/Select.metrics.d.ts +20 -0
- package/dist/types/components/form/Select/Select.metrics.d.ts.map +1 -1
- package/dist/types/components/form/Select/Select.searchable.d.ts +23 -0
- package/dist/types/components/form/Select/Select.searchable.d.ts.map +1 -0
- package/dist/types/components/form/Select/Select.styles.d.ts +27 -0
- package/dist/types/components/form/Select/Select.styles.d.ts.map +1 -0
- package/dist/types-native/components/form/Select/Select.base.d.ts +15 -0
- package/dist/types-native/components/form/Select/Select.base.d.ts.map +1 -1
- package/dist/types-native/components/form/Select/Select.metrics.d.ts +20 -0
- package/dist/types-native/components/form/Select/Select.metrics.d.ts.map +1 -1
- package/dist/user-avatar.js +4 -4
- package/package.json +1 -1
- package/src/components/form/Select/Select.base.ts +15 -0
- package/src/components/form/Select/Select.md +31 -1
- package/src/components/form/Select/Select.metrics.ts +22 -0
- package/src/components/form/Select/Select.searchable.tsx +203 -0
- package/src/components/form/Select/Select.styles.tsx +195 -0
- package/src/components/form/Select/Select.tsx +20 -166
- package/dist/chunk-6L2FKTBO.js.map +0 -1
- /package/dist/{chunk-A64MQ7GW.js.map → chunk-2LSJTQIL.js.map} +0 -0
- /package/dist/{chunk-EU76OQGR.js.map → chunk-2NYVMLFQ.js.map} +0 -0
- /package/dist/{chunk-CJPP4OUK.js.map → chunk-2YKTB2IZ.js.map} +0 -0
- /package/dist/{chunk-ISW5K72V.js.map → chunk-2ZRZTGWP.js.map} +0 -0
- /package/dist/{chunk-LQRUTHJY.js.map → chunk-3CDU7DLD.js.map} +0 -0
- /package/dist/{chunk-72FPUWD6.js.map → chunk-3IPQANXY.js.map} +0 -0
- /package/dist/{chunk-56QYSVLI.js.map → chunk-3WAAL3KN.js.map} +0 -0
- /package/dist/{chunk-JO4UMHWR.js.map → chunk-43UFSKEK.js.map} +0 -0
- /package/dist/{chunk-N2XQKTXX.js.map → chunk-5NFQKL7C.js.map} +0 -0
- /package/dist/{chunk-PCHUIDMT.js.map → chunk-5OEC546C.js.map} +0 -0
- /package/dist/{chunk-JBGCGYEC.js.map → chunk-6EJF3BUR.js.map} +0 -0
- /package/dist/{chunk-P3XEF26U.js.map → chunk-A5ODDTGU.js.map} +0 -0
- /package/dist/{chunk-RVOYCPKF.js.map → chunk-ACU7LEFG.js.map} +0 -0
- /package/dist/{chunk-OARM5RX4.js.map → chunk-AQC67NQZ.js.map} +0 -0
- /package/dist/{chunk-QQUNZH3L.js.map → chunk-AS2PWQIU.js.map} +0 -0
- /package/dist/{chunk-V54LG3QG.js.map → chunk-B3QWQG62.js.map} +0 -0
- /package/dist/{chunk-J2JWWGMT.js.map → chunk-BPOVRMVS.js.map} +0 -0
- /package/dist/{chunk-V4R6Q5ED.js.map → chunk-CGBUWNNQ.js.map} +0 -0
- /package/dist/{chunk-ZCEXSYAJ.js.map → chunk-CGL7R37P.js.map} +0 -0
- /package/dist/{chunk-GYZUJ7HH.js.map → chunk-CO4MSWTV.js.map} +0 -0
- /package/dist/{chunk-PGPPN63I.js.map → chunk-EMEXXAQI.js.map} +0 -0
- /package/dist/{chunk-2HPNN5XA.js.map → chunk-FIF4RQ4S.js.map} +0 -0
- /package/dist/{chunk-T6HVNVFI.js.map → chunk-FQT4C5R4.js.map} +0 -0
- /package/dist/{chunk-BWURMQWZ.js.map → chunk-FS7UVKEE.js.map} +0 -0
- /package/dist/{chunk-LUPHXDEU.js.map → chunk-FVKBP3UX.js.map} +0 -0
- /package/dist/{chunk-TPPFWETI.js.map → chunk-G6II7SVX.js.map} +0 -0
- /package/dist/{chunk-LV2SZFXK.js.map → chunk-GMC3F43L.js.map} +0 -0
- /package/dist/{chunk-R6SBP5M5.js.map → chunk-GOWBYHYW.js.map} +0 -0
- /package/dist/{chunk-AA7QTFMB.js.map → chunk-HGRC635A.js.map} +0 -0
- /package/dist/{chunk-TE3XYCX7.js.map → chunk-IHO2O44S.js.map} +0 -0
- /package/dist/{chunk-VPH47OIV.js.map → chunk-IKZSQKOE.js.map} +0 -0
- /package/dist/{chunk-IPI3OU2P.js.map → chunk-IV7G7NK3.js.map} +0 -0
- /package/dist/{chunk-JTWRI4WD.js.map → chunk-IX3U3XPP.js.map} +0 -0
- /package/dist/{chunk-HC2AO3RT.js.map → chunk-J44PPGBF.js.map} +0 -0
- /package/dist/{chunk-V2GHNHP6.js.map → chunk-JAHWFJCW.js.map} +0 -0
- /package/dist/{chunk-HAFLKWWU.js.map → chunk-JQ6HDXKA.js.map} +0 -0
- /package/dist/{chunk-SPZAEMGW.js.map → chunk-JWJ77IMK.js.map} +0 -0
- /package/dist/{chunk-HYNDC3FP.js.map → chunk-JYLOCXMV.js.map} +0 -0
- /package/dist/{chunk-ILKNYENU.js.map → chunk-LB27LKG3.js.map} +0 -0
- /package/dist/{chunk-IWYTOCCV.js.map → chunk-LHTEAPYG.js.map} +0 -0
- /package/dist/{chunk-TPVSHO75.js.map → chunk-NLEO5YI4.js.map} +0 -0
- /package/dist/{chunk-K45ML7M7.js.map → chunk-NU55QUMO.js.map} +0 -0
- /package/dist/{chunk-KN3WYEH2.js.map → chunk-NYHZUVLC.js.map} +0 -0
- /package/dist/{chunk-U2UT2NDH.js.map → chunk-OBID7SOG.js.map} +0 -0
- /package/dist/{chunk-UUJ7J7NE.js.map → chunk-PP7CDKO4.js.map} +0 -0
- /package/dist/{chunk-PARTZ7XI.js.map → chunk-R53ZOW4B.js.map} +0 -0
- /package/dist/{chunk-BWXPO2SE.js.map → chunk-S22XIXLL.js.map} +0 -0
- /package/dist/{chunk-QL7NPQOP.js.map → chunk-SAJ5H5VC.js.map} +0 -0
- /package/dist/{chunk-6GAZAJXB.js.map → chunk-SDKOOVEX.js.map} +0 -0
- /package/dist/{chunk-ETCS6OBJ.js.map → chunk-THCDUP6Q.js.map} +0 -0
- /package/dist/{chunk-CMFJQH6A.js.map → chunk-UG636FEL.js.map} +0 -0
- /package/dist/{chunk-NFA7STJA.js.map → chunk-UILH4OAZ.js.map} +0 -0
- /package/dist/{chunk-X5F4FRH7.js.map → chunk-VNOXUWK7.js.map} +0 -0
- /package/dist/{chunk-MD3ND6DT.js.map → chunk-VU63PDWW.js.map} +0 -0
- /package/dist/{chunk-RBLBXJR7.js.map → chunk-WAD5VL6B.js.map} +0 -0
- /package/dist/{chunk-4MGFUPQT.js.map → chunk-WC3W36AM.js.map} +0 -0
- /package/dist/{chunk-Z3L2EGXW.js.map → chunk-WDAEYLT5.js.map} +0 -0
- /package/dist/{chunk-BEX3FLHB.js.map → chunk-X3C3VTYS.js.map} +0 -0
- /package/dist/{chunk-NFTFP6WO.js.map → chunk-XNTDEQEB.js.map} +0 -0
- /package/dist/{chunk-TWVRPT7J.js.map → chunk-XXL4PM4M.js.map} +0 -0
- /package/dist/{chunk-6OQHZVK6.js.map → chunk-XXNLBO4Q.js.map} +0 -0
- /package/dist/{chunk-TNQDSTIA.js.map → chunk-Y6C4MYZE.js.map} +0 -0
- /package/dist/{chunk-NRKAJHBB.js.map → chunk-YRACC6BB.js.map} +0 -0
- /package/dist/{chunk-RSQYWGMU.js.map → chunk-YTIUFMRM.js.map} +0 -0
- /package/dist/{chunk-FQ637IDM.js.map → chunk-YXU45AVO.js.map} +0 -0
- /package/dist/{chunk-YDU2YPQA.js.map → chunk-ZVJSY2OV.js.map} +0 -0
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import {
|
|
2
|
+
SelectFieldControl,
|
|
3
|
+
formControlSize
|
|
4
|
+
} from "./chunk-PQS3IPMD.js";
|
|
5
|
+
import {
|
|
6
|
+
SEARCHABLE_MIN_OPTIONS,
|
|
7
|
+
SELECT_SEARCH
|
|
8
|
+
} from "./chunk-IYC7NPX7.js";
|
|
9
|
+
import {
|
|
10
|
+
splitTestId
|
|
11
|
+
} from "./chunk-TYJR4GOF.js";
|
|
12
|
+
import {
|
|
13
|
+
asFieldSize
|
|
14
|
+
} from "./chunk-M47ZOUGF.js";
|
|
15
|
+
import {
|
|
16
|
+
rem
|
|
17
|
+
} from "./chunk-YKCAJ2TN.js";
|
|
18
|
+
import {
|
|
19
|
+
stackedOverlayZIndex
|
|
20
|
+
} from "./chunk-MFU4Y25U.js";
|
|
21
|
+
|
|
22
|
+
// src/components/form/Select/Select.searchable.tsx
|
|
23
|
+
import Autocomplete from "@mui/material/Autocomplete/index.js";
|
|
24
|
+
import { useTheme } from "@mui/material/styles/index.js";
|
|
25
|
+
import TextField from "@mui/material/TextField/index.js";
|
|
26
|
+
import React from "react";
|
|
27
|
+
import { jsx } from "react/jsx-runtime";
|
|
28
|
+
function shouldSearch(props) {
|
|
29
|
+
if (props.multiple || props.renderValue) return false;
|
|
30
|
+
if (props.searchable !== void 0) return props.searchable;
|
|
31
|
+
return props.options.length >= SEARCHABLE_MIN_OPTIONS;
|
|
32
|
+
}
|
|
33
|
+
function selectChange(value, name) {
|
|
34
|
+
return { target: { value, name: name ?? "" } };
|
|
35
|
+
}
|
|
36
|
+
function renderOption(props, option, optionTestId) {
|
|
37
|
+
const { key, ...rest } = props;
|
|
38
|
+
return /* @__PURE__ */ jsx("li", { ...rest, "data-testid": optionTestId(option.value), children: option.label }, key ?? option.value);
|
|
39
|
+
}
|
|
40
|
+
function renderField({ params, field, ariaLabel, disabled, triggerTestId }) {
|
|
41
|
+
return /* @__PURE__ */ jsx(
|
|
42
|
+
TextField,
|
|
43
|
+
{
|
|
44
|
+
...params,
|
|
45
|
+
label: field.label,
|
|
46
|
+
placeholder: field.placeholder,
|
|
47
|
+
helperText: field.helperText,
|
|
48
|
+
error: field.error,
|
|
49
|
+
name: field.name,
|
|
50
|
+
required: field.required,
|
|
51
|
+
autoFocus: field.autoFocus,
|
|
52
|
+
onBlur: field.onBlur,
|
|
53
|
+
onFocus: field.onFocus,
|
|
54
|
+
slotProps: field.placeholder ? { inputLabel: { shrink: true } } : void 0,
|
|
55
|
+
inputProps: {
|
|
56
|
+
...params.inputProps,
|
|
57
|
+
"aria-label": ariaLabel,
|
|
58
|
+
// The menu's display div carried `aria-disabled`; the input keeps it.
|
|
59
|
+
"aria-disabled": disabled ? true : void 0,
|
|
60
|
+
"data-testid": triggerTestId
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
);
|
|
64
|
+
}
|
|
65
|
+
function useSelectedOption(options, value, defaultValue) {
|
|
66
|
+
const [own, setOwn] = React.useState(defaultValue ?? "");
|
|
67
|
+
const current = value === void 0 ? own : value;
|
|
68
|
+
const match = options.find((option) => String(option.value) === String(current ?? "")) ?? null;
|
|
69
|
+
const key = match === null ? null : `${String(match.value)}\0${match.label}\0${match.disabled === true}`;
|
|
70
|
+
const stable = React.useMemo(() => match, [key]);
|
|
71
|
+
return [stable, (next) => setOwn(next.value)];
|
|
72
|
+
}
|
|
73
|
+
function intrinsicWidth(theme, options, fullWidth) {
|
|
74
|
+
if (fullWidth) return void 0;
|
|
75
|
+
const longest = options.reduce((max, option) => Math.max(max, option.label.length), 0);
|
|
76
|
+
return { minWidth: `calc(${longest}ch + ${rem(theme, SELECT_SEARCH.fieldChrome)})` };
|
|
77
|
+
}
|
|
78
|
+
var SearchableSelect = React.forwardRef((props, ref) => {
|
|
79
|
+
const { variant, options, fullWidth = true, size, error, glow, pulse, value, defaultValue } = props;
|
|
80
|
+
const { onChange, disabled, name, noOptionsText, sx, className, style, id } = props;
|
|
81
|
+
const { testId: dataTestId } = splitTestId(props);
|
|
82
|
+
const [selected, setOwn] = useSelectedOption(options, value, defaultValue);
|
|
83
|
+
const theme = useTheme();
|
|
84
|
+
const optionTestId = (optionValue) => dataTestId ? `${dataTestId}-option-${optionValue}` : `option-${optionValue}`;
|
|
85
|
+
return /* @__PURE__ */ jsx(
|
|
86
|
+
SelectFieldControl,
|
|
87
|
+
{
|
|
88
|
+
fullWidth,
|
|
89
|
+
size: formControlSize(size),
|
|
90
|
+
error,
|
|
91
|
+
customVariant: variant,
|
|
92
|
+
fieldSize: asFieldSize(size),
|
|
93
|
+
glow,
|
|
94
|
+
pulse,
|
|
95
|
+
ref,
|
|
96
|
+
sx,
|
|
97
|
+
className,
|
|
98
|
+
style: { ...intrinsicWidth(theme, options, fullWidth), ...style },
|
|
99
|
+
"data-testid": dataTestId,
|
|
100
|
+
children: /* @__PURE__ */ jsx(
|
|
101
|
+
Autocomplete,
|
|
102
|
+
{
|
|
103
|
+
id,
|
|
104
|
+
value: selected,
|
|
105
|
+
options,
|
|
106
|
+
disabled,
|
|
107
|
+
disableClearable: true,
|
|
108
|
+
autoHighlight: true,
|
|
109
|
+
handleHomeEndKeys: true,
|
|
110
|
+
size: formControlSize(size),
|
|
111
|
+
noOptionsText: noOptionsText ?? null,
|
|
112
|
+
getOptionLabel: (option) => option.label,
|
|
113
|
+
getOptionKey: (option) => String(option.value),
|
|
114
|
+
getOptionDisabled: (option) => option.disabled === true,
|
|
115
|
+
isOptionEqualToValue: (option, current) => String(option.value) === String(current.value),
|
|
116
|
+
onChange: (_event, next) => {
|
|
117
|
+
setOwn(next);
|
|
118
|
+
onChange?.(selectChange(next.value, name), null);
|
|
119
|
+
},
|
|
120
|
+
renderOption: (optionProps, option) => renderOption(optionProps, option, optionTestId),
|
|
121
|
+
slotProps: {
|
|
122
|
+
// Above stacked sheets and dialogs, as `CreatableSelect` does.
|
|
123
|
+
popper: { sx: { zIndex: stackedOverlayZIndex } },
|
|
124
|
+
// THE bounded height: MUI's own default is 40vh, which on a tall
|
|
125
|
+
// screen is the whole page again.
|
|
126
|
+
listbox: { sx: (theme2) => ({ maxHeight: rem(theme2, SELECT_SEARCH.listMaxHeight) }) }
|
|
127
|
+
},
|
|
128
|
+
renderInput: (params) => renderField({
|
|
129
|
+
params,
|
|
130
|
+
field: props,
|
|
131
|
+
ariaLabel: props["aria-label"],
|
|
132
|
+
disabled,
|
|
133
|
+
triggerTestId: dataTestId ? `${dataTestId}-select` : "select"
|
|
134
|
+
})
|
|
135
|
+
}
|
|
136
|
+
)
|
|
137
|
+
}
|
|
138
|
+
);
|
|
139
|
+
});
|
|
140
|
+
SearchableSelect.displayName = "SearchableSelect";
|
|
141
|
+
|
|
142
|
+
export {
|
|
143
|
+
shouldSearch,
|
|
144
|
+
SearchableSelect
|
|
145
|
+
};
|
|
146
|
+
//# sourceMappingURL=chunk-EISPWFYO.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/form/Select/Select.searchable.tsx"],"sourcesContent":["import Autocomplete from '@mui/material/Autocomplete/index.js';\nimport type { AutocompleteRenderInputParams } from '@mui/material/Autocomplete/index.js';\nimport type { SelectChangeEvent } from '@mui/material/Select/index.js';\nimport { useTheme } from '@mui/material/styles/index.js';\nimport type { Theme } from '@mui/material/styles/index.js';\nimport TextField from '@mui/material/TextField/index.js';\nimport React from 'react';\n\nimport { SEARCHABLE_MIN_OPTIONS, SELECT_SEARCH } from './Select.metrics';\nimport { formControlSize, SelectFieldControl } from './Select.styles';\nimport type { SelectOption, SelectProps } from './Select.types';\n\nimport { splitTestId } from '../../../platform/test-id';\nimport { asFieldSize } from '../../../tokens/field-height';\nimport { stackedOverlayZIndex } from '../../../tokens/layers';\nimport { rem } from '../../../tokens/relative';\n\n/**\n * THE SELECT, PAST FIVE OPTIONS: a search box over a list of bounded height.\n *\n * Same engine as `CreatableSelect` — MUI `Autocomplete` — so every searchable\n * dropdown in the library types, filters and scrolls the same way. What it\n * keeps from `Select` is the whole CONTRACT, so a call site cannot tell which\n * one it got until it opens it:\n *\n * - the field chrome ({@link SelectFieldControl}: variant, size, glow, pulse);\n * - the floating label, placeholder, helper text and error;\n * - `onChange(event)` with `event.target.value` — the option's value, a number\n * staying a number, exactly what MUI's `Select` hands its handlers;\n * - disabled options, and the `-select` / `-option-<value>` test ids.\n *\n * It cannot be cleared (a `Select` has no \"none\" either — its placeholder is\n * disabled), and it never accepts text that is not an option.\n */\n\n/** Whether `props` should render as a search box. */\nexport function shouldSearch(props: SelectProps): boolean {\n if (props.multiple || props.renderValue) return false;\n if (props.searchable !== undefined) return props.searchable;\n return props.options.length >= SEARCHABLE_MIN_OPTIONS;\n}\n\n/**\n * The change MUI's `Select` would have emitted: handlers read\n * `event.target.value` (and sometimes `.name`), so that is what they get.\n */\nfunction selectChange(value: SelectOption['value'], name: string | undefined): SelectChangeEvent<unknown> {\n return { target: { value, name: name ?? '' } } as unknown as SelectChangeEvent<unknown>;\n}\n\nfunction renderOption(\n props: React.HTMLAttributes<HTMLLIElement>,\n option: SelectOption,\n optionTestId: (value: SelectOption['value']) => string,\n): React.JSX.Element {\n const { key, ...rest } = props as typeof props & { key?: React.Key };\n return (\n <li key={key ?? option.value} {...rest} data-testid={optionTestId(option.value)}>\n {option.label}\n </li>\n );\n}\n\ninterface FieldProps {\n params: AutocompleteRenderInputParams;\n field: Pick<SelectProps, 'label' | 'placeholder' | 'helperText' | 'error' | 'name' | 'required' | 'autoFocus' | 'onBlur' | 'onFocus'>;\n ariaLabel: string | undefined;\n disabled: boolean | undefined;\n triggerTestId: string;\n}\n\nfunction renderField({ params, field, ariaLabel, disabled, triggerTestId }: FieldProps): React.JSX.Element {\n return (\n <TextField\n {...params}\n label={field.label}\n placeholder={field.placeholder}\n helperText={field.helperText}\n error={field.error}\n name={field.name}\n required={field.required}\n autoFocus={field.autoFocus}\n onBlur={field.onBlur as React.FocusEventHandler<HTMLInputElement | HTMLTextAreaElement> | undefined}\n onFocus={field.onFocus as React.FocusEventHandler<HTMLInputElement | HTMLTextAreaElement> | undefined}\n // The menu drew its placeholder under a shrunk label (`displayEmpty`);\n // a floating label left down would hide it until focus.\n slotProps={field.placeholder ? { inputLabel: { shrink: true } } : undefined}\n inputProps={{\n ...params.inputProps,\n 'aria-label': ariaLabel,\n // The menu's display div carried `aria-disabled`; the input keeps it.\n 'aria-disabled': disabled ? true : undefined,\n 'data-testid': triggerTestId,\n }}\n />\n );\n}\n\n/**\n * The option the field shows, KEPT STABLE while it is the same one.\n *\n * Consumers build `options` inline (`xs.map(...)`), so a fresh `find` returns a\n * new object on every parent render, which MUI reads as a changed value and\n * answers by resetting the typed text — a refetch mid-search wiped the query.\n * Uncontrolled use (`defaultValue`, no `value`) keeps its own state, as MUI's\n * Select did.\n */\nfunction useSelectedOption(\n options: SelectOption[],\n value: unknown,\n defaultValue: unknown,\n): [SelectOption | null, (next: SelectOption) => void] {\n const [own, setOwn] = React.useState<unknown>(defaultValue ?? '');\n const current = value === undefined ? own : value;\n const match = options.find((option) => String(option.value) === String(current ?? '')) ?? null;\n const key = match === null ? null : `${String(match.value)}\\u0000${match.label}\\u0000${match.disabled === true}`;\n // Keyed on the option's identity, not the object `find` just returned.\n const stable = React.useMemo(() => match, [key]);\n return [stable, (next) => setOwn(next.value)];\n}\n\n/**\n * A field that does not fill its row sizes to its longest option, the way the\n * menu sized to its selected text: MUI's Autocomplete input is `width: 0`, so\n * without this a `fullWidth={false}` select collapsed to its arrow.\n */\nfunction intrinsicWidth(\n theme: Theme,\n options: SelectOption[],\n fullWidth: boolean,\n): React.CSSProperties | undefined {\n if (fullWidth) return undefined;\n const longest = options.reduce((max, option) => Math.max(max, option.label.length), 0);\n // The label in `ch`, plus the field's inline padding and the arrow's slot.\n return { minWidth: `calc(${longest}ch + ${rem(theme, SELECT_SEARCH.fieldChrome)})` };\n}\n\nexport const SearchableSelect = React.forwardRef<HTMLDivElement, SelectProps>((props, ref) => {\n const { variant, options, fullWidth = true, size, error, glow, pulse, value, defaultValue } = props;\n const { onChange, disabled, name, noOptionsText, sx, className, style, id } = props;\n const { testId: dataTestId } = splitTestId(props as unknown as Record<string, unknown>);\n const [selected, setOwn] = useSelectedOption(options, value, defaultValue);\n const theme = useTheme();\n const optionTestId = (optionValue: SelectOption['value']): string =>\n dataTestId ? `${dataTestId}-option-${optionValue}` : `option-${optionValue}`;\n\n return (\n <SelectFieldControl\n fullWidth={fullWidth}\n size={formControlSize(size)}\n error={error}\n customVariant={variant}\n fieldSize={asFieldSize(size)}\n glow={glow}\n pulse={pulse}\n ref={ref}\n sx={sx}\n className={className}\n style={{ ...intrinsicWidth(theme, options, fullWidth), ...style }}\n data-testid={dataTestId}\n >\n <Autocomplete<SelectOption, false, true, false>\n id={id}\n value={selected as SelectOption}\n options={options}\n disabled={disabled}\n disableClearable\n autoHighlight\n handleHomeEndKeys\n size={formControlSize(size)}\n noOptionsText={noOptionsText ?? null}\n getOptionLabel={(option) => option.label}\n // Two people may share a name; the value is what tells them apart.\n getOptionKey={(option) => String(option.value)}\n getOptionDisabled={(option) => option.disabled === true}\n isOptionEqualToValue={(option, current) => String(option.value) === String(current.value)}\n onChange={(_event, next) => {\n setOwn(next);\n onChange?.(selectChange(next.value, name), null);\n }}\n renderOption={(optionProps, option) => renderOption(optionProps, option, optionTestId)}\n slotProps={{\n // Above stacked sheets and dialogs, as `CreatableSelect` does.\n popper: { sx: { zIndex: stackedOverlayZIndex } },\n // THE bounded height: MUI's own default is 40vh, which on a tall\n // screen is the whole page again.\n listbox: { sx: (theme) => ({ maxHeight: rem(theme, SELECT_SEARCH.listMaxHeight) }) },\n }}\n renderInput={(params) =>\n renderField({\n params,\n field: props,\n ariaLabel: props['aria-label'],\n disabled,\n triggerTestId: dataTestId ? `${dataTestId}-select` : 'select',\n })\n }\n />\n </SelectFieldControl>\n );\n});\n\nSearchableSelect.displayName = 'SearchableSelect';\n"],"mappings":"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","names":["theme"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AvatarView
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-Y6C4MYZE.js";
|
|
4
4
|
import {
|
|
5
5
|
BORDER_WIDTH,
|
|
6
6
|
GROUP_HOVER,
|
|
@@ -175,4 +175,4 @@ export {
|
|
|
175
175
|
Avatar,
|
|
176
176
|
AvatarGroup
|
|
177
177
|
};
|
|
178
|
-
//# sourceMappingURL=chunk-
|
|
178
|
+
//# sourceMappingURL=chunk-EMEXXAQI.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
MoreGroup,
|
|
3
3
|
fieldClearing
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-VU63PDWW.js";
|
|
5
5
|
import {
|
|
6
6
|
useDataViewsCopy
|
|
7
7
|
} from "./chunk-KHG57NAE.js";
|
|
@@ -184,4 +184,4 @@ function MoreFilters({
|
|
|
184
184
|
export {
|
|
185
185
|
MoreFilters
|
|
186
186
|
};
|
|
187
|
-
//# sourceMappingURL=chunk-
|
|
187
|
+
//# sourceMappingURL=chunk-FIF4RQ4S.js.map
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
import {
|
|
2
|
+
EnhancedTableBody,
|
|
3
|
+
EnhancedTableHeader
|
|
4
|
+
} from "./chunk-53HQNN3C.js";
|
|
1
5
|
import {
|
|
2
6
|
tableStyles
|
|
3
7
|
} from "./chunk-BVHIKXCN.js";
|
|
@@ -5,14 +9,6 @@ import {
|
|
|
5
9
|
useTableSelection,
|
|
6
10
|
useVirtualScrolling
|
|
7
11
|
} from "./chunk-RZSMRBOX.js";
|
|
8
|
-
import {
|
|
9
|
-
EmptyRow,
|
|
10
|
-
NoDataPlaceholder
|
|
11
|
-
} from "./chunk-XIXR2L3L.js";
|
|
12
|
-
import {
|
|
13
|
-
EnhancedTableBody,
|
|
14
|
-
EnhancedTableHeader
|
|
15
|
-
} from "./chunk-53HQNN3C.js";
|
|
16
12
|
import {
|
|
17
13
|
TABLE_DEFAULTS,
|
|
18
14
|
containerStyle,
|
|
@@ -24,6 +20,10 @@ import {
|
|
|
24
20
|
tableRowHeight,
|
|
25
21
|
virtualHeight
|
|
26
22
|
} from "./chunk-L3MRRAZM.js";
|
|
23
|
+
import {
|
|
24
|
+
EmptyRow,
|
|
25
|
+
NoDataPlaceholder
|
|
26
|
+
} from "./chunk-XIXR2L3L.js";
|
|
27
27
|
import {
|
|
28
28
|
useDensity
|
|
29
29
|
} from "./chunk-TMOC2XUE.js";
|
|
@@ -311,4 +311,4 @@ Table.displayName = "Table";
|
|
|
311
311
|
export {
|
|
312
312
|
Table
|
|
313
313
|
};
|
|
314
|
-
//# sourceMappingURL=chunk-
|
|
314
|
+
//# sourceMappingURL=chunk-FQT4C5R4.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
DataViewsScopeTabs
|
|
3
|
-
} from "./chunk-PL2AB5HJ.js";
|
|
4
1
|
import {
|
|
5
2
|
useDataViewsLayout
|
|
6
3
|
} from "./chunk-RZPYKTOG.js";
|
|
4
|
+
import {
|
|
5
|
+
DataViewsScopeTabs
|
|
6
|
+
} from "./chunk-PL2AB5HJ.js";
|
|
7
7
|
|
|
8
8
|
// src/components/data-display/DataViews/data-views-scope-tabs.tsx
|
|
9
9
|
import { jsx } from "react/jsx-runtime";
|
|
@@ -34,4 +34,4 @@ function ScopeTabsSlot({
|
|
|
34
34
|
export {
|
|
35
35
|
ScopeTabsSlot
|
|
36
36
|
};
|
|
37
|
-
//# sourceMappingURL=chunk-
|
|
37
|
+
//# sourceMappingURL=chunk-FS7UVKEE.js.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-VHVI3D4R.js";
|
|
4
4
|
import {
|
|
5
5
|
Badge
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-GMC3F43L.js";
|
|
7
7
|
import {
|
|
8
8
|
rem
|
|
9
9
|
} from "./chunk-YKCAJ2TN.js";
|
|
@@ -70,4 +70,4 @@ export {
|
|
|
70
70
|
controlProps,
|
|
71
71
|
CONTROL_RESET
|
|
72
72
|
};
|
|
73
|
-
//# sourceMappingURL=chunk-
|
|
73
|
+
//# sourceMappingURL=chunk-FVKBP3UX.js.map
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import {
|
|
2
2
|
NumberBoundInput
|
|
3
3
|
} from "./chunk-YRUX7XMQ.js";
|
|
4
|
-
import {
|
|
5
|
-
RangePresets
|
|
6
|
-
} from "./chunk-7D7CJRL7.js";
|
|
7
|
-
import {
|
|
8
|
-
presetsFor
|
|
9
|
-
} from "./chunk-CBOB5AV6.js";
|
|
10
4
|
import {
|
|
11
5
|
isRangeInverted,
|
|
12
6
|
isRangeSet,
|
|
13
7
|
numericRange,
|
|
14
8
|
rangeChipLabel
|
|
15
9
|
} from "./chunk-GCZJH4XL.js";
|
|
10
|
+
import {
|
|
11
|
+
RangePresets
|
|
12
|
+
} from "./chunk-7D7CJRL7.js";
|
|
13
|
+
import {
|
|
14
|
+
presetsFor
|
|
15
|
+
} from "./chunk-CBOB5AV6.js";
|
|
16
16
|
import {
|
|
17
17
|
useDataViewsCopy
|
|
18
18
|
} from "./chunk-KHG57NAE.js";
|
|
@@ -291,4 +291,4 @@ export {
|
|
|
291
291
|
RangePill,
|
|
292
292
|
PanelRangeField
|
|
293
293
|
};
|
|
294
|
-
//# sourceMappingURL=chunk-
|
|
294
|
+
//# sourceMappingURL=chunk-G6II7SVX.js.map
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
import {
|
|
2
|
+
badgeContentOf,
|
|
3
|
+
definedAria,
|
|
4
|
+
formatCount,
|
|
5
|
+
resolveBadgeProps
|
|
6
|
+
} from "./chunk-6C5D6O3D.js";
|
|
1
7
|
import {
|
|
2
8
|
buildBadgeContent
|
|
3
9
|
} from "./chunk-WDQRQIT7.js";
|
|
@@ -5,12 +11,6 @@ import {
|
|
|
5
11
|
badgeStyles,
|
|
6
12
|
getAnchorOrigin
|
|
7
13
|
} from "./chunk-ZCXVTFYQ.js";
|
|
8
|
-
import {
|
|
9
|
-
badgeContentOf,
|
|
10
|
-
definedAria,
|
|
11
|
-
formatCount,
|
|
12
|
-
resolveBadgeProps
|
|
13
|
-
} from "./chunk-6C5D6O3D.js";
|
|
14
14
|
import {
|
|
15
15
|
CLOSE_DELAY_MS,
|
|
16
16
|
MOUNT_ANIMATION_MS
|
|
@@ -180,4 +180,4 @@ Badge.displayName = "Badge";
|
|
|
180
180
|
export {
|
|
181
181
|
Badge
|
|
182
182
|
};
|
|
183
|
-
//# sourceMappingURL=chunk-
|
|
183
|
+
//# sourceMappingURL=chunk-GMC3F43L.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
+
import {
|
|
2
|
+
chartValueFormatter
|
|
3
|
+
} from "./chunk-QVWNK4JO.js";
|
|
1
4
|
import {
|
|
2
5
|
getChartSpecRenderer,
|
|
3
6
|
getRegisteredChartSpecTypes
|
|
4
7
|
} from "./chunk-WKUA6P3W.js";
|
|
5
|
-
import {
|
|
6
|
-
chartValueFormatter
|
|
7
|
-
} from "./chunk-QVWNK4JO.js";
|
|
8
8
|
|
|
9
9
|
// src/components/data-display/Chart/chart-spec.ts
|
|
10
10
|
var CHART_SEMANTIC_COLORS = [
|
|
@@ -149,4 +149,4 @@ export {
|
|
|
149
149
|
parseChartSpec,
|
|
150
150
|
specToChartProps
|
|
151
151
|
};
|
|
152
|
-
//# sourceMappingURL=chunk-
|
|
152
|
+
//# sourceMappingURL=chunk-GOWBYHYW.js.map
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
Box,
|
|
3
3
|
CONTROL_RESET,
|
|
4
4
|
focusRing
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-FVKBP3UX.js";
|
|
6
6
|
import {
|
|
7
7
|
rem
|
|
8
8
|
} from "./chunk-YKCAJ2TN.js";
|
|
@@ -59,4 +59,4 @@ function RaisedActionButton({
|
|
|
59
59
|
export {
|
|
60
60
|
RaisedActionButton
|
|
61
61
|
};
|
|
62
|
-
//# sourceMappingURL=chunk-
|
|
62
|
+
//# sourceMappingURL=chunk-HGRC635A.js.map
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
import {
|
|
2
|
+
progressLabelText,
|
|
3
|
+
resolveProgressProps
|
|
4
|
+
} from "./chunk-5JEOLUWJ.js";
|
|
1
5
|
import {
|
|
2
6
|
barEmphasisStyles,
|
|
3
7
|
barVariantStyles,
|
|
@@ -6,10 +10,6 @@ import {
|
|
|
6
10
|
getSizeStyles,
|
|
7
11
|
pulseAnimation
|
|
8
12
|
} from "./chunk-WL7IG7TT.js";
|
|
9
|
-
import {
|
|
10
|
-
progressLabelText,
|
|
11
|
-
resolveProgressProps
|
|
12
|
-
} from "./chunk-5JEOLUWJ.js";
|
|
13
13
|
import {
|
|
14
14
|
rem,
|
|
15
15
|
rems
|
|
@@ -243,4 +243,4 @@ Progress.displayName = "Progress";
|
|
|
243
243
|
export {
|
|
244
244
|
Progress
|
|
245
245
|
};
|
|
246
|
-
//# sourceMappingURL=chunk-
|
|
246
|
+
//# sourceMappingURL=chunk-IHO2O44S.js.map
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
} from "./chunk-KQS4ZJGS.js";
|
|
13
13
|
import {
|
|
14
14
|
Input
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-SDKOOVEX.js";
|
|
16
16
|
import {
|
|
17
17
|
Dialog,
|
|
18
18
|
DialogContent
|
|
@@ -268,4 +268,4 @@ function SaveViewModal({
|
|
|
268
268
|
export {
|
|
269
269
|
SaveViewModal
|
|
270
270
|
};
|
|
271
|
-
//# sourceMappingURL=chunk-
|
|
271
|
+
//# sourceMappingURL=chunk-IKZSQKOE.js.map
|
|
@@ -3,16 +3,16 @@ import {
|
|
|
3
3
|
} from "./chunk-QDELBNL3.js";
|
|
4
4
|
import {
|
|
5
5
|
TextField
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-NU55QUMO.js";
|
|
7
7
|
import {
|
|
8
8
|
SelectField
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-3IPQANXY.js";
|
|
10
10
|
import {
|
|
11
11
|
CepField
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-XXL4PM4M.js";
|
|
13
13
|
import {
|
|
14
14
|
CategoryField
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-5OEC546C.js";
|
|
16
16
|
import {
|
|
17
17
|
__export
|
|
18
18
|
} from "./chunk-PZ5AY32C.js";
|
|
@@ -30,4 +30,4 @@ __export(Fields_exports, {
|
|
|
30
30
|
export {
|
|
31
31
|
Fields_exports
|
|
32
32
|
};
|
|
33
|
-
//# sourceMappingURL=chunk-
|
|
33
|
+
//# sourceMappingURL=chunk-IV7G7NK3.js.map
|
|
@@ -1,16 +1,20 @@
|
|
|
1
1
|
import {
|
|
2
2
|
GridMain
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-BPOVRMVS.js";
|
|
4
4
|
import {
|
|
5
5
|
FilterDialog,
|
|
6
6
|
GridFilterPanel
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-XXNLBO4Q.js";
|
|
8
8
|
import {
|
|
9
9
|
DataViewsEmpty
|
|
10
10
|
} from "./chunk-OCQ6GDCF.js";
|
|
11
|
+
import {
|
|
12
|
+
toOverflowFields,
|
|
13
|
+
useFilterOverflow
|
|
14
|
+
} from "./chunk-6QYKZMEE.js";
|
|
11
15
|
import {
|
|
12
16
|
InlineFilterControls
|
|
13
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-LB27LKG3.js";
|
|
14
18
|
import {
|
|
15
19
|
GridHeaderRow
|
|
16
20
|
} from "./chunk-MPYIEIBA.js";
|
|
@@ -18,25 +22,21 @@ import {
|
|
|
18
22
|
DataViewsPagination
|
|
19
23
|
} from "./chunk-NF4GHTZ4.js";
|
|
20
24
|
import {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
} from "./chunk-6QYKZMEE.js";
|
|
25
|
+
ShellToolbar
|
|
26
|
+
} from "./chunk-ZL3GCUKC.js";
|
|
24
27
|
import {
|
|
25
28
|
resolveSelectionExtra
|
|
26
29
|
} from "./chunk-KX75HM5U.js";
|
|
27
30
|
import {
|
|
28
31
|
ScopeTabsSlot
|
|
29
|
-
} from "./chunk-
|
|
30
|
-
import {
|
|
31
|
-
ShellToolbar
|
|
32
|
-
} from "./chunk-ZL3GCUKC.js";
|
|
33
|
-
import {
|
|
34
|
-
togglePillValues
|
|
35
|
-
} from "./chunk-NQ7NMCRI.js";
|
|
32
|
+
} from "./chunk-FS7UVKEE.js";
|
|
36
33
|
import {
|
|
37
34
|
DataViewsLayoutProvider,
|
|
38
35
|
useDataViewsLayout
|
|
39
36
|
} from "./chunk-RZPYKTOG.js";
|
|
37
|
+
import {
|
|
38
|
+
togglePillValues
|
|
39
|
+
} from "./chunk-NQ7NMCRI.js";
|
|
40
40
|
import {
|
|
41
41
|
useDataViewsCopy
|
|
42
42
|
} from "./chunk-KHG57NAE.js";
|
|
@@ -238,4 +238,4 @@ function GridShell(props) {
|
|
|
238
238
|
export {
|
|
239
239
|
GridShell
|
|
240
240
|
};
|
|
241
|
-
//# sourceMappingURL=chunk-
|
|
241
|
+
//# sourceMappingURL=chunk-IX3U3XPP.js.map
|
|
@@ -28,6 +28,16 @@ var SELECT_MENU = {
|
|
|
28
28
|
};
|
|
29
29
|
var MUI_MENU_SHADOW = ELEVATION_SHADOWS[8];
|
|
30
30
|
var selectedWashAlpha = (theme) => theme.mode === "dark" ? SELECT_MENU.selectedAlpha.dark : SELECT_MENU.selectedAlpha.light;
|
|
31
|
+
var SEARCHABLE_MIN_OPTIONS = 6;
|
|
32
|
+
var SELECT_SEARCH = {
|
|
33
|
+
/** px — six 40px rows and half of the seventh. */
|
|
34
|
+
listMaxHeight: 260,
|
|
35
|
+
/**
|
|
36
|
+
* px — what a field that does not fill its row adds to its longest label:
|
|
37
|
+
* the input's inline padding and the arrow's slot.
|
|
38
|
+
*/
|
|
39
|
+
fieldChrome: 72
|
|
40
|
+
};
|
|
31
41
|
|
|
32
42
|
export {
|
|
33
43
|
inputVariantFor,
|
|
@@ -37,6 +47,8 @@ export {
|
|
|
37
47
|
SELECT_DISPLAY_MIN_HEIGHT,
|
|
38
48
|
SELECT_MENU,
|
|
39
49
|
MUI_MENU_SHADOW,
|
|
40
|
-
selectedWashAlpha
|
|
50
|
+
selectedWashAlpha,
|
|
51
|
+
SEARCHABLE_MIN_OPTIONS,
|
|
52
|
+
SELECT_SEARCH
|
|
41
53
|
};
|
|
42
|
-
//# sourceMappingURL=chunk-
|
|
54
|
+
//# sourceMappingURL=chunk-IYC7NPX7.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/form/Select/Select.metrics.ts"],"sourcesContent":["import type { SelectVariant } from './Select.base';\nimport type { InputVariant } from '../Input/Input.base';\nimport { ICON_SIZES } from '../../../icons/Icon.types';\nimport { ELEVATION_SHADOWS } from '../../../tokens/ink.core';\nimport type { UiTheme } from '../../../tokens/theme';\nimport type { SizeValue } from '../../../tokens/vocabulary';\n\n/**\n * THE NUMBERS BOTH `Select` RENDERERS DRAW WITH.\n *\n * A `Select` on the web IS an `OutlinedInput` with a display slot and an arrow\n * where the value would be typed, so the box's own numbers — the padding, the\n * border, the radius, the field edge — are `Input.metrics.ts`'s, read through\n * {@link inputVariantFor} rather than restated. What is here is what a select\n * has and a text field does not: the arrow, the option list, and the two\n * heights MUI's `FormControl` offers.\n */\n\n/** Our three variants onto the `Input` variant that draws the same box. */\nexport const inputVariantFor = (variant: SelectVariant): InputVariant =>\n variant === 'default' ? 'outlined' : variant;\n\n/**\n * The house scale as a `FormControl` size.\n *\n * Not `muiSize`: that collapses five onto MUI's three, and a FormControl takes\n * only two — `sm` draws small and EVERY other step, `xs` included, draws\n * medium. Restated from `Select.tsx`'s `formControlSize` so the native side\n * reads the same lossy map rather than inventing a kinder one.\n */\nexport const selectInputSize = (size: SizeValue | undefined): 'sm' | 'md' =>\n size === 'sm' ? 'sm' : 'md';\n\n/**\n * The arrow: MUI's `ArrowDropDown` at `SvgIcon`'s medium size, 7px from the\n * right edge, turned over while the list is open. The display slot reserves\n * 32px for it, so the flow-laid glyph takes the difference as a margin.\n */\nexport const SELECT_ICON = {\n size: ICON_SIZES.md,\n right: 7,\n displayPaddingRight: 32,\n openRotateDeg: 180,\n} as const;\n\n/** What the glyph leaves between itself and the value: 32 - 24 - 7. */\nexport const SELECT_ICON_GAP =\n SELECT_ICON.displayPaddingRight - SELECT_ICON.size - SELECT_ICON.right;\n\n/** `.MuiSelect-select`'s floor, MUI's `1.4375em` at the 16px body size. */\nexport const SELECT_DISPLAY_MIN_HEIGHT = 23;\n\n/**\n * The option list: MUI's `Menu` over a `MenuList` of `MenuItem`s.\n *\n * `selectedAlpha` is `palette.action.selectedOpacity`, which MUI doubles in\n * dark mode; `disabledOpacity` is `palette.action.disabledOpacity`. Neither is\n * on `UiTheme`, whose `action` carries colours rather than opacities.\n */\nexport const SELECT_MENU = {\n itemMinHeight: 48,\n itemPaddingVertical: 6,\n itemPaddingHorizontal: 16,\n listPaddingVertical: 8,\n selectedAlpha: { light: 0.08, dark: 0.16 },\n disabledOpacity: 0.38,\n /** MUI's `Menu` paper is `calc(100% - 96px)` tall at most. */\n maxHeightInset: 96,\n} as const;\n\n/** MUI's `theme.shadows[8]`, the elevation a `Menu` paper rests at. */\nexport const MUI_MENU_SHADOW = ELEVATION_SHADOWS[8];\n\n/** The wash behind the option the value currently names. */\nexport const selectedWashAlpha = (theme: UiTheme): number =>\n theme.mode === 'dark' ? SELECT_MENU.selectedAlpha.dark : SELECT_MENU.selectedAlpha.light;\n\n/**\n * The box a select draws IS the input's box, so these are the input's tables\n * under this component's names — the border widths, the glass and gradient\n * alphas, the halo and the pulse. Restating them here is how the two controls\n * would come to disagree about what an outlined field looks like.\n */\nexport {\n INPUT_BORDER as SELECT_BORDER,\n INPUT_GLASS as SELECT_GLASS,\n INPUT_GLOW as SELECT_GLOW,\n INPUT_GRADIENT as SELECT_GRADIENT,\n INPUT_PULSE as SELECT_PULSE,\n} from '../Input/Input.metrics';\n"],"mappings":";;;;;;;;AAmBO,IAAM,kBAAkB,CAAC,YAC9B,YAAY,YAAY,aAAa;AAUhC,IAAM,kBAAkB,CAAC,SAC9B,SAAS,OAAO,OAAO;AAOlB,IAAM,cAAc;AAAA,EACzB,MAAM,WAAW;AAAA,EACjB,OAAO;AAAA,EACP,qBAAqB;AAAA,EACrB,eAAe;AACjB;AAGO,IAAM,kBACX,YAAY,sBAAsB,YAAY,OAAO,YAAY;AAG5D,IAAM,4BAA4B;AASlC,IAAM,cAAc;AAAA,EACzB,eAAe;AAAA,EACf,qBAAqB;AAAA,EACrB,uBAAuB;AAAA,EACvB,qBAAqB;AAAA,EACrB,eAAe,EAAE,OAAO,MAAM,MAAM,KAAK;AAAA,EACzC,iBAAiB;AAAA;AAAA,EAEjB,gBAAgB;AAClB;AAGO,IAAM,kBAAkB,kBAAkB,CAAC;AAG3C,IAAM,oBAAoB,CAAC,UAChC,MAAM,SAAS,SAAS,YAAY,cAAc,OAAO,YAAY,cAAc;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../src/components/form/Select/Select.metrics.ts"],"sourcesContent":["import type { SelectVariant } from './Select.base';\nimport type { InputVariant } from '../Input/Input.base';\nimport { ICON_SIZES } from '../../../icons/Icon.types';\nimport { ELEVATION_SHADOWS } from '../../../tokens/ink.core';\nimport type { UiTheme } from '../../../tokens/theme';\nimport type { SizeValue } from '../../../tokens/vocabulary';\n\n/**\n * THE NUMBERS BOTH `Select` RENDERERS DRAW WITH.\n *\n * A `Select` on the web IS an `OutlinedInput` with a display slot and an arrow\n * where the value would be typed, so the box's own numbers — the padding, the\n * border, the radius, the field edge — are `Input.metrics.ts`'s, read through\n * {@link inputVariantFor} rather than restated. What is here is what a select\n * has and a text field does not: the arrow, the option list, and the two\n * heights MUI's `FormControl` offers.\n */\n\n/** Our three variants onto the `Input` variant that draws the same box. */\nexport const inputVariantFor = (variant: SelectVariant): InputVariant =>\n variant === 'default' ? 'outlined' : variant;\n\n/**\n * The house scale as a `FormControl` size.\n *\n * Not `muiSize`: that collapses five onto MUI's three, and a FormControl takes\n * only two — `sm` draws small and EVERY other step, `xs` included, draws\n * medium. Restated from `Select.tsx`'s `formControlSize` so the native side\n * reads the same lossy map rather than inventing a kinder one.\n */\nexport const selectInputSize = (size: SizeValue | undefined): 'sm' | 'md' =>\n size === 'sm' ? 'sm' : 'md';\n\n/**\n * The arrow: MUI's `ArrowDropDown` at `SvgIcon`'s medium size, 7px from the\n * right edge, turned over while the list is open. The display slot reserves\n * 32px for it, so the flow-laid glyph takes the difference as a margin.\n */\nexport const SELECT_ICON = {\n size: ICON_SIZES.md,\n right: 7,\n displayPaddingRight: 32,\n openRotateDeg: 180,\n} as const;\n\n/** What the glyph leaves between itself and the value: 32 - 24 - 7. */\nexport const SELECT_ICON_GAP =\n SELECT_ICON.displayPaddingRight - SELECT_ICON.size - SELECT_ICON.right;\n\n/** `.MuiSelect-select`'s floor, MUI's `1.4375em` at the 16px body size. */\nexport const SELECT_DISPLAY_MIN_HEIGHT = 23;\n\n/**\n * The option list: MUI's `Menu` over a `MenuList` of `MenuItem`s.\n *\n * `selectedAlpha` is `palette.action.selectedOpacity`, which MUI doubles in\n * dark mode; `disabledOpacity` is `palette.action.disabledOpacity`. Neither is\n * on `UiTheme`, whose `action` carries colours rather than opacities.\n */\nexport const SELECT_MENU = {\n itemMinHeight: 48,\n itemPaddingVertical: 6,\n itemPaddingHorizontal: 16,\n listPaddingVertical: 8,\n selectedAlpha: { light: 0.08, dark: 0.16 },\n disabledOpacity: 0.38,\n /** MUI's `Menu` paper is `calc(100% - 96px)` tall at most. */\n maxHeightInset: 96,\n} as const;\n\n/** MUI's `theme.shadows[8]`, the elevation a `Menu` paper rests at. */\nexport const MUI_MENU_SHADOW = ELEVATION_SHADOWS[8];\n\n/** The wash behind the option the value currently names. */\nexport const selectedWashAlpha = (theme: UiTheme): number =>\n theme.mode === 'dark' ? SELECT_MENU.selectedAlpha.dark : SELECT_MENU.selectedAlpha.light;\n\n/**\n * The box a select draws IS the input's box, so these are the input's tables\n * under this component's names — the border widths, the glass and gradient\n * alphas, the halo and the pulse. Restating them here is how the two controls\n * would come to disagree about what an outlined field looks like.\n */\nexport {\n INPUT_BORDER as SELECT_BORDER,\n INPUT_GLASS as SELECT_GLASS,\n INPUT_GLOW as SELECT_GLOW,\n INPUT_GRADIENT as SELECT_GRADIENT,\n INPUT_PULSE as SELECT_PULSE,\n} from '../Input/Input.metrics';\n\n/**\n * WHEN A `Select` BECOMES A SEARCH BOX, AND HOW TALL ITS LIST MAY GROW.\n *\n * Past five options a menu stops being scannable at a glance and starts being\n * scrolled — and MUI's menu grows to the viewport's height to show them all, so\n * a staff picker covered the whole screen. From six options on the field turns\n * into the searchable dropdown (`CreatableSelect`'s engine, MUI `Autocomplete`)\n * and its list stops at {@link SELECT_SEARCH.listMaxHeight}: about six rows,\n * the seventh cut in half so the list reads as scrollable.\n */\nexport const SEARCHABLE_MIN_OPTIONS = 6;\n\nexport const SELECT_SEARCH = {\n /** px — six 40px rows and half of the seventh. */\n listMaxHeight: 260,\n /**\n * px — what a field that does not fill its row adds to its longest label:\n * the input's inline padding and the arrow's slot.\n */\n fieldChrome: 72,\n} as const;\n"],"mappings":";;;;;;;;AAmBO,IAAM,kBAAkB,CAAC,YAC9B,YAAY,YAAY,aAAa;AAUhC,IAAM,kBAAkB,CAAC,SAC9B,SAAS,OAAO,OAAO;AAOlB,IAAM,cAAc;AAAA,EACzB,MAAM,WAAW;AAAA,EACjB,OAAO;AAAA,EACP,qBAAqB;AAAA,EACrB,eAAe;AACjB;AAGO,IAAM,kBACX,YAAY,sBAAsB,YAAY,OAAO,YAAY;AAG5D,IAAM,4BAA4B;AASlC,IAAM,cAAc;AAAA,EACzB,eAAe;AAAA,EACf,qBAAqB;AAAA,EACrB,uBAAuB;AAAA,EACvB,qBAAqB;AAAA,EACrB,eAAe,EAAE,OAAO,MAAM,MAAM,KAAK;AAAA,EACzC,iBAAiB;AAAA;AAAA,EAEjB,gBAAgB;AAClB;AAGO,IAAM,kBAAkB,kBAAkB,CAAC;AAG3C,IAAM,oBAAoB,CAAC,UAChC,MAAM,SAAS,SAAS,YAAY,cAAc,OAAO,YAAY,cAAc;AA0B9E,IAAM,yBAAyB;AAE/B,IAAM,gBAAgB;AAAA;AAAA,EAE3B,eAAe;AAAA;AAAA;AAAA;AAAA;AAAA,EAKf,aAAa;AACf;","names":[]}
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
CountedIcon,
|
|
5
5
|
controlProps,
|
|
6
6
|
focusRing
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-FVKBP3UX.js";
|
|
8
8
|
import {
|
|
9
9
|
rem
|
|
10
10
|
} from "./chunk-YKCAJ2TN.js";
|
|
@@ -165,4 +165,4 @@ function SectionNavRail({
|
|
|
165
165
|
export {
|
|
166
166
|
SectionNavRail
|
|
167
167
|
};
|
|
168
|
-
//# sourceMappingURL=chunk-
|
|
168
|
+
//# sourceMappingURL=chunk-J44PPGBF.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
+
import {
|
|
2
|
+
freshnessOf
|
|
3
|
+
} from "./chunk-XPMGFAJ3.js";
|
|
1
4
|
import {
|
|
2
5
|
FLEET_DOT,
|
|
3
6
|
FLEET_ROSTER,
|
|
4
7
|
FLEET_ROW,
|
|
5
8
|
FLEET_SKELETON
|
|
6
9
|
} from "./chunk-BTQZ3EX3.js";
|
|
7
|
-
import {
|
|
8
|
-
freshnessOf
|
|
9
|
-
} from "./chunk-XPMGFAJ3.js";
|
|
10
10
|
import {
|
|
11
11
|
Skeleton
|
|
12
12
|
} from "./chunk-2K2B5QM2.js";
|
|
@@ -220,4 +220,4 @@ function FleetRoster({
|
|
|
220
220
|
export {
|
|
221
221
|
FleetRoster
|
|
222
222
|
};
|
|
223
|
-
//# sourceMappingURL=chunk-
|
|
223
|
+
//# sourceMappingURL=chunk-JAHWFJCW.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
buildChartContext
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-3CDU7DLD.js";
|
|
4
4
|
import {
|
|
5
5
|
ChartLegendContent,
|
|
6
6
|
ChartTooltipContent
|
|
@@ -318,4 +318,4 @@ function renderChartByType(props, theme) {
|
|
|
318
318
|
export {
|
|
319
319
|
renderChartByType
|
|
320
320
|
};
|
|
321
|
-
//# sourceMappingURL=chunk-
|
|
321
|
+
//# sourceMappingURL=chunk-JQ6HDXKA.js.map
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import {
|
|
2
|
+
LightboxCurrentMedia
|
|
3
|
+
} from "./chunk-RBGUS7WO.js";
|
|
1
4
|
import {
|
|
2
5
|
resolveLightboxProps
|
|
3
6
|
} from "./chunk-UOS7DEQZ.js";
|
|
@@ -13,9 +16,6 @@ import {
|
|
|
13
16
|
import {
|
|
14
17
|
LightboxOverlay
|
|
15
18
|
} from "./chunk-VZ4VAQX3.js";
|
|
16
|
-
import {
|
|
17
|
-
LightboxCurrentMedia
|
|
18
|
-
} from "./chunk-RBGUS7WO.js";
|
|
19
19
|
import {
|
|
20
20
|
makeTestId
|
|
21
21
|
} from "./chunk-3KA6MYIR.js";
|
|
@@ -148,4 +148,4 @@ export {
|
|
|
148
148
|
Lightbox,
|
|
149
149
|
Lightbox_default
|
|
150
150
|
};
|
|
151
|
-
//# sourceMappingURL=chunk-
|
|
151
|
+
//# sourceMappingURL=chunk-JWJ77IMK.js.map
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
+
import {
|
|
2
|
+
makeTestId,
|
|
3
|
+
resolveCodeEditorProps
|
|
4
|
+
} from "./chunk-X3OWMTLO.js";
|
|
1
5
|
import {
|
|
2
6
|
EditorToolbar
|
|
3
7
|
} from "./chunk-3TVUW7QE.js";
|
|
4
8
|
import {
|
|
5
9
|
useCodeEditor
|
|
6
10
|
} from "./chunk-L36S7YJB.js";
|
|
7
|
-
import {
|
|
8
|
-
makeTestId,
|
|
9
|
-
resolveCodeEditorProps
|
|
10
|
-
} from "./chunk-X3OWMTLO.js";
|
|
11
11
|
import {
|
|
12
12
|
fieldEdge
|
|
13
13
|
} from "./chunk-7FDU3FIN.js";
|
|
@@ -178,4 +178,4 @@ var CodeEditor = (componentProps) => {
|
|
|
178
178
|
export {
|
|
179
179
|
CodeEditor
|
|
180
180
|
};
|
|
181
|
-
//# sourceMappingURL=chunk-
|
|
181
|
+
//# sourceMappingURL=chunk-JYLOCXMV.js.map
|