@12-apps/ui 6.46.1 → 6.48.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 +32 -32
- package/dist/_internal/components/data-display/DataViews/DataViewsTableBase.js +41 -41
- 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 +15 -15
- 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 +29 -29
- 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/StackedModal/StackedModal.js +3 -3
- package/dist/_internal/components/feedback/StackedModal/StackedModal.parts.js +2 -2
- package/dist/_internal/components/feedback/StackedModal/StackedModal.styles.js +1 -1
- package/dist/_internal/components/feedback/TutorialOverlay/TutorialOverlay.js +2 -2
- package/dist/_internal/components/feedback/index.js +8 -8
- 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 +88 -86
- 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-442FSG7G.js → chunk-3QGMAVUF.js} +5 -3
- package/dist/chunk-3QGMAVUF.js.map +1 -0
- 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-77JL5XVD.js → chunk-6TZE77YJ.js} +30 -7
- package/dist/chunk-6TZE77YJ.js.map +1 -0
- package/dist/{chunk-RVOYCPKF.js → chunk-ACU7LEFG.js} +5 -5
- package/dist/{chunk-OARM5RX4.js → chunk-AQC67NQZ.js} +5 -5
- 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-P3XEF26U.js → chunk-H7DVH6KD.js} +3 -3
- 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-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-QQUNZH3L.js → chunk-KESGVMHW.js} +3 -3
- package/dist/{chunk-JTWRI4WD.js → chunk-KN7C6R6L.js} +14 -14
- 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-6OQHZVK6.js → chunk-QJK7BNH3.js} +5 -5
- package/dist/{chunk-PARTZ7XI.js → chunk-R53ZOW4B.js} +2 -2
- package/dist/{chunk-L4G5BZFF.js → chunk-RJVUECN7.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-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 +58 -58
- 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/StackedModal.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/feedback/StackedModal/StackedModal.d.ts.map +1 -1
- package/dist/types/components/feedback/StackedModal/StackedModal.styles.d.ts +2 -1
- package/dist/types/components/feedback/StackedModal/StackedModal.styles.d.ts.map +1 -1
- package/dist/types/components/feedback/StackedModal/StackedModal.types.d.ts +8 -0
- package/dist/types/components/feedback/StackedModal/StackedModal.types.d.ts.map +1 -1
- package/dist/types/components/feedback/StackedModal/index.d.ts +1 -1
- package/dist/types/components/feedback/StackedModal/index.d.ts.map +1 -1
- 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/feedback/StackedModal/StackedModal.md +1 -0
- package/src/components/feedback/StackedModal/StackedModal.styles.ts +44 -8
- package/src/components/feedback/StackedModal/StackedModal.tsx +2 -1
- package/src/components/feedback/StackedModal/StackedModal.types.ts +9 -0
- package/src/components/feedback/StackedModal/index.ts +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-442FSG7G.js.map +0 -1
- package/dist/chunk-6L2FKTBO.js.map +0 -1
- package/dist/chunk-77JL5XVD.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-RVOYCPKF.js.map → chunk-ACU7LEFG.js.map} +0 -0
- /package/dist/{chunk-OARM5RX4.js.map → chunk-AQC67NQZ.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-P3XEF26U.js.map → chunk-H7DVH6KD.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-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-QQUNZH3L.js.map → chunk-KESGVMHW.js.map} +0 -0
- /package/dist/{chunk-JTWRI4WD.js.map → chunk-KN7C6R6L.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-6OQHZVK6.js.map → chunk-QJK7BNH3.js.map} +0 -0
- /package/dist/{chunk-PARTZ7XI.js.map → chunk-R53ZOW4B.js.map} +0 -0
- /package/dist/{chunk-L4G5BZFF.js.map → chunk-RJVUECN7.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-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
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import "../chunk-UM35GGCS.js";
|
|
2
2
|
import {
|
|
3
3
|
Lightbox_default
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-JWJ77IMK.js";
|
|
5
|
+
import "../chunk-RBGUS7WO.js";
|
|
5
6
|
import "../chunk-UOS7DEQZ.js";
|
|
6
7
|
import "../chunk-HJPPNVCF.js";
|
|
7
8
|
import "../chunk-M6PWPEAV.js";
|
|
8
9
|
import "../chunk-SV4FYSDL.js";
|
|
9
10
|
import "../chunk-N2GEKC4J.js";
|
|
10
11
|
import "../chunk-VZ4VAQX3.js";
|
|
11
|
-
import "../chunk-RBGUS7WO.js";
|
|
12
|
-
import "../chunk-IOCY5G43.js";
|
|
13
12
|
import "../chunk-P53KRCKW.js";
|
|
14
13
|
import "../chunk-3KA6MYIR.js";
|
|
14
|
+
import "../chunk-IOCY5G43.js";
|
|
15
15
|
import "../chunk-TEQYTEM2.js";
|
|
16
16
|
import "../chunk-FQ6UW7IY.js";
|
|
17
17
|
import "../chunk-6JAIFIPW.js";
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import "../chunk-EJDOH7IN.js";
|
|
2
2
|
import {
|
|
3
3
|
MapPreview
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-
|
|
4
|
+
} from "../chunk-THCDUP6Q.js";
|
|
5
|
+
import "../chunk-ODFJTEIL.js";
|
|
6
|
+
import "../chunk-CO4MSWTV.js";
|
|
7
|
+
import "../chunk-ZZ4MMUBY.js";
|
|
6
8
|
import "../chunk-VNOFFVRQ.js";
|
|
9
|
+
import "../chunk-RSDYS5B3.js";
|
|
10
|
+
import "../chunk-5ETBB2DG.js";
|
|
11
|
+
import "../chunk-HQWJUHR4.js";
|
|
7
12
|
import "../chunk-NFGIA2ZV.js";
|
|
8
13
|
import "../chunk-4NQXHPQR.js";
|
|
9
|
-
import "../chunk-ZZ4MMUBY.js";
|
|
10
|
-
import "../chunk-ODFJTEIL.js";
|
|
11
14
|
import "../chunk-QSRZOXQI.js";
|
|
12
15
|
import "../chunk-5NT2M2JI.js";
|
|
13
16
|
import "../chunk-H2J2MTRE.js";
|
|
14
|
-
import "../chunk-RSDYS5B3.js";
|
|
15
|
-
import "../chunk-5ETBB2DG.js";
|
|
16
|
-
import "../chunk-HQWJUHR4.js";
|
|
17
17
|
import "../chunk-X6AIKCAV.js";
|
|
18
18
|
import "../chunk-CB6DTWD5.js";
|
|
19
19
|
import "../chunk-M47ZOUGF.js";
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import "../chunk-QOB473HS.js";
|
|
2
2
|
import {
|
|
3
3
|
Progress
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-IHO2O44S.js";
|
|
5
|
+
import "../chunk-5JEOLUWJ.js";
|
|
5
6
|
import "../chunk-WL7IG7TT.js";
|
|
6
7
|
import "../chunk-MRWYKNBY.js";
|
|
7
|
-
import "../chunk-5JEOLUWJ.js";
|
|
8
8
|
import "../chunk-6WZUZHJM.js";
|
|
9
9
|
import "../chunk-2BYKTBDL.js";
|
|
10
10
|
import "../chunk-AG66JBNH.js";
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import "../chunk-ITACE45O.js";
|
|
2
2
|
import {
|
|
3
3
|
Sheet
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-PIUQYYOM.js";
|
|
6
|
-
import "../chunk-LYVTJLCF.js";
|
|
7
|
-
import "../chunk-CRN4KKNI.js";
|
|
4
|
+
} from "../chunk-WAD5VL6B.js";
|
|
8
5
|
import "../chunk-3U3H3BZM.js";
|
|
6
|
+
import "../chunk-PIUQYYOM.js";
|
|
9
7
|
import {
|
|
10
8
|
SheetContent,
|
|
11
9
|
SheetFooter,
|
|
12
10
|
SheetHeader,
|
|
13
11
|
SheetOverlay
|
|
14
12
|
} from "../chunk-FPVYD7BO.js";
|
|
13
|
+
import "../chunk-LYVTJLCF.js";
|
|
14
|
+
import "../chunk-CRN4KKNI.js";
|
|
15
15
|
import "../chunk-IM4DMKH4.js";
|
|
16
16
|
import "../chunk-HPK33ACY.js";
|
|
17
17
|
import "../chunk-QFJ3JXXP.js";
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import "../chunk-WG2WFANT.js";
|
|
2
2
|
import {
|
|
3
3
|
Table
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-FQT4C5R4.js";
|
|
5
|
+
import "../chunk-53HQNN3C.js";
|
|
5
6
|
import "../chunk-BVHIKXCN.js";
|
|
6
7
|
import "../chunk-RZSMRBOX.js";
|
|
7
|
-
import "../chunk-XIXR2L3L.js";
|
|
8
|
-
import "../chunk-53HQNN3C.js";
|
|
9
8
|
import "../chunk-L3MRRAZM.js";
|
|
9
|
+
import "../chunk-XIXR2L3L.js";
|
|
10
10
|
import "../chunk-TMOC2XUE.js";
|
|
11
11
|
import "../chunk-5D52CMNX.js";
|
|
12
12
|
import "../chunk-M47ZOUGF.js";
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import "../chunk-XCBQXSTR.js";
|
|
2
|
-
import {
|
|
3
|
-
ConfirmAction
|
|
4
|
-
} from "../chunk-FWPFCK4D.js";
|
|
5
2
|
import {
|
|
6
3
|
createConfirmButton
|
|
7
4
|
} from "../chunk-6KLDYVRY.js";
|
|
8
5
|
import {
|
|
9
6
|
withConfirmation
|
|
10
7
|
} from "../chunk-4WCDMCIS.js";
|
|
8
|
+
import {
|
|
9
|
+
ConfirmAction
|
|
10
|
+
} from "../chunk-FWPFCK4D.js";
|
|
11
11
|
import {
|
|
12
12
|
ConfirmActionDialog
|
|
13
13
|
} from "../chunk-BJZOBG24.js";
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import "../chunk-CN46HGXE.js";
|
|
2
2
|
import {
|
|
3
3
|
StackedModal
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-3QGMAVUF.js";
|
|
5
5
|
import {
|
|
6
6
|
StackedModalActions,
|
|
7
7
|
StackedModalContent
|
|
8
|
-
} from "../chunk-
|
|
9
|
-
import "../chunk-
|
|
8
|
+
} from "../chunk-RJVUECN7.js";
|
|
9
|
+
import "../chunk-6TZE77YJ.js";
|
|
10
10
|
import "../chunk-G3QKH23Y.js";
|
|
11
11
|
import {
|
|
12
12
|
ModalStackProvider,
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import "../chunk-QJCZ3IQP.js";
|
|
2
2
|
import {
|
|
3
3
|
TutorialOverlay
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-VNOXUWK7.js";
|
|
5
|
+
import "../chunk-24JOJJ2J.js";
|
|
5
6
|
import "../chunk-34643ATX.js";
|
|
6
7
|
import "../chunk-RXJQA3FQ.js";
|
|
7
|
-
import "../chunk-24JOJJ2J.js";
|
|
8
8
|
import "../chunk-FQ6UW7IY.js";
|
|
9
9
|
import "../chunk-6JAIFIPW.js";
|
|
10
10
|
import "../chunk-N3GAFIXG.js";
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import "../chunk-573PQ6C6.js";
|
|
2
2
|
import {
|
|
3
3
|
AddressAutocomplete
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-4MGFUPQT.js";
|
|
6
|
-
import "../chunk-HEBZ7Q7O.js";
|
|
4
|
+
} from "../chunk-LHTEAPYG.js";
|
|
7
5
|
import "../chunk-ZC5HDBQO.js";
|
|
8
6
|
import "../chunk-DSDNGTH6.js";
|
|
7
|
+
import "../chunk-WC3W36AM.js";
|
|
8
|
+
import "../chunk-AYP6ICAY.js";
|
|
9
|
+
import "../chunk-VRPCZ3IE.js";
|
|
10
|
+
import "../chunk-6HLWZR3X.js";
|
|
11
|
+
import "../chunk-HEBZ7Q7O.js";
|
|
9
12
|
import "../chunk-MTGEJRE4.js";
|
|
13
|
+
import "../chunk-O7QPPJAK.js";
|
|
10
14
|
import "../chunk-C5RQBTRZ.js";
|
|
11
15
|
import "../chunk-P5JCOFK3.js";
|
|
12
16
|
import "../chunk-BVSSEOLI.js";
|
|
13
17
|
import "../chunk-JE5GEWTG.js";
|
|
14
18
|
import "../chunk-7VRCGWQL.js";
|
|
15
|
-
import "../chunk-AYP6ICAY.js";
|
|
16
|
-
import "../chunk-VRPCZ3IE.js";
|
|
17
|
-
import "../chunk-6HLWZR3X.js";
|
|
18
|
-
import "../chunk-O7QPPJAK.js";
|
|
19
19
|
import "../chunk-M47ZOUGF.js";
|
|
20
20
|
import "../chunk-7FDU3FIN.js";
|
|
21
21
|
import "../chunk-EPEJMTCQ.js";
|
|
@@ -2,9 +2,9 @@ import "../chunk-2LXHUGYB.js";
|
|
|
2
2
|
import {
|
|
3
3
|
Autocomplete,
|
|
4
4
|
Autocomplete_default
|
|
5
|
-
} from "../chunk-
|
|
6
|
-
import "../chunk-XBLFK2FL.js";
|
|
5
|
+
} from "../chunk-6EJF3BUR.js";
|
|
7
6
|
import "../chunk-SY5FYBAF.js";
|
|
7
|
+
import "../chunk-XBLFK2FL.js";
|
|
8
8
|
import "../chunk-PELRSZFU.js";
|
|
9
9
|
import "../chunk-JXS56EW5.js";
|
|
10
10
|
import "../chunk-M47ZOUGF.js";
|
package/dist/form/Calendar.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import "../chunk-BO6S47KI.js";
|
|
2
2
|
import {
|
|
3
3
|
Calendar
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-
|
|
6
|
-
import "../chunk-FFQ4NOJT.js";
|
|
4
|
+
} from "../chunk-R53ZOW4B.js";
|
|
5
|
+
import "../chunk-2ZRZTGWP.js";
|
|
7
6
|
import "../chunk-SUALMVL7.js";
|
|
8
7
|
import "../chunk-AG3DY5TH.js";
|
|
9
8
|
import "../chunk-6PU3JYVY.js";
|
|
10
9
|
import "../chunk-H3AQQOTI.js";
|
|
11
10
|
import "../chunk-E2Y7G4MP.js";
|
|
11
|
+
import "../chunk-FFQ4NOJT.js";
|
|
12
12
|
import "../chunk-TERT6TIS.js";
|
|
13
13
|
import "../chunk-YKCAJ2TN.js";
|
|
14
14
|
import "../chunk-PZ5AY32C.js";
|
|
@@ -1,20 +1,17 @@
|
|
|
1
1
|
import "../chunk-N5ZWC6CB.js";
|
|
2
2
|
import {
|
|
3
3
|
CategorySelect
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-CGBUWNNQ.js";
|
|
5
5
|
import "../chunk-QYY37ECA.js";
|
|
6
|
-
import "../chunk-
|
|
6
|
+
import "../chunk-UILH4OAZ.js";
|
|
7
7
|
import "../chunk-PGGYZU7Q.js";
|
|
8
|
-
import "../chunk-
|
|
8
|
+
import "../chunk-NLEO5YI4.js";
|
|
9
|
+
import "../chunk-UG636FEL.js";
|
|
9
10
|
import "../chunk-S4IXC2V3.js";
|
|
10
11
|
import "../chunk-7KKMZJFT.js";
|
|
11
|
-
import "../chunk-XHHR6G35.js";
|
|
12
|
-
import "../chunk-NCB4GBRL.js";
|
|
13
|
-
import "../chunk-CMFJQH6A.js";
|
|
14
|
-
import "../chunk-DMNZD3Q7.js";
|
|
15
|
-
import "../chunk-Z6T5SXST.js";
|
|
16
12
|
import "../chunk-RZVUY2MO.js";
|
|
17
13
|
import "../chunk-USJPZ5Q7.js";
|
|
14
|
+
import "../chunk-XHHR6G35.js";
|
|
18
15
|
import "../chunk-R2AZOWEZ.js";
|
|
19
16
|
import {
|
|
20
17
|
buildCategoryGroups,
|
|
@@ -29,6 +26,9 @@ import {
|
|
|
29
26
|
summarizeSelection,
|
|
30
27
|
treeDepth
|
|
31
28
|
} from "../chunk-PN4HVM43.js";
|
|
29
|
+
import "../chunk-NCB4GBRL.js";
|
|
30
|
+
import "../chunk-DMNZD3Q7.js";
|
|
31
|
+
import "../chunk-Z6T5SXST.js";
|
|
32
32
|
import "../chunk-C3UKR3NT.js";
|
|
33
33
|
import "../chunk-D6KL74KI.js";
|
|
34
34
|
import "../chunk-M47ZOUGF.js";
|
package/dist/form/CepField.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import "../chunk-6XLMTOJ3.js";
|
|
2
2
|
import {
|
|
3
3
|
CepField
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-B3QWQG62.js";
|
|
5
5
|
import "../chunk-QYKDY4EI.js";
|
|
6
|
-
import "../chunk-
|
|
7
|
-
import "../chunk-YLXQWYOG.js";
|
|
6
|
+
import "../chunk-SDKOOVEX.js";
|
|
8
7
|
import "../chunk-SL6454K7.js";
|
|
8
|
+
import "../chunk-YLXQWYOG.js";
|
|
9
9
|
import "../chunk-JU3FRRO2.js";
|
|
10
10
|
import "../chunk-C3UKR3NT.js";
|
|
11
11
|
import "../chunk-D6KL74KI.js";
|
package/dist/form/CodeEditor.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import "../chunk-IDMG332I.js";
|
|
2
2
|
import {
|
|
3
3
|
CodeEditor
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-JYLOCXMV.js";
|
|
5
|
+
import "../chunk-X3OWMTLO.js";
|
|
5
6
|
import "../chunk-3TVUW7QE.js";
|
|
6
7
|
import "../chunk-L36S7YJB.js";
|
|
7
8
|
import {
|
|
8
9
|
configureCodeEditor
|
|
9
10
|
} from "../chunk-5F5Q6VJ2.js";
|
|
10
|
-
import "../chunk-X3OWMTLO.js";
|
|
11
11
|
import "../chunk-7FDU3FIN.js";
|
|
12
12
|
import "../chunk-EPEJMTCQ.js";
|
|
13
13
|
import "../chunk-GDN2LUTZ.js";
|
package/dist/form/Command.js
CHANGED
|
@@ -4,14 +4,14 @@ import {
|
|
|
4
4
|
CommandGroup,
|
|
5
5
|
CommandInput,
|
|
6
6
|
CommandList
|
|
7
|
-
} from "../chunk-
|
|
8
|
-
import "../chunk-YOKUDQIJ.js";
|
|
7
|
+
} from "../chunk-ACU7LEFG.js";
|
|
9
8
|
import "../chunk-N4HHFYPB.js";
|
|
10
9
|
import {
|
|
11
10
|
CommandEmpty,
|
|
12
11
|
CommandLoading,
|
|
13
12
|
CommandSeparator
|
|
14
13
|
} from "../chunk-XLTHZI5W.js";
|
|
14
|
+
import "../chunk-YOKUDQIJ.js";
|
|
15
15
|
import "../chunk-QFJ3JXXP.js";
|
|
16
16
|
import "../chunk-7ZPUN7TV.js";
|
|
17
17
|
import "../chunk-TMOC2XUE.js";
|
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
import "../chunk-BN6POCYF.js";
|
|
2
2
|
import {
|
|
3
3
|
DateRangePicker
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-4GN2RLYL.js";
|
|
6
|
-
import "../chunk-6KKQHJE7.js";
|
|
7
|
-
import "../chunk-K7MQP2KT.js";
|
|
8
|
-
import {
|
|
9
|
-
resolveDayRange
|
|
10
|
-
} from "../chunk-XB7HYOMM.js";
|
|
4
|
+
} from "../chunk-AQC67NQZ.js";
|
|
11
5
|
import {
|
|
12
6
|
DEFAULT_QUICK_RANGES,
|
|
13
7
|
DEFAULT_QUICK_RANGE_LABELS,
|
|
14
8
|
QUICK_RANGE_IDS,
|
|
15
9
|
createQuickRanges
|
|
16
10
|
} from "../chunk-QKLSHNOH.js";
|
|
11
|
+
import "../chunk-4GN2RLYL.js";
|
|
12
|
+
import "../chunk-6KKQHJE7.js";
|
|
13
|
+
import "../chunk-K7MQP2KT.js";
|
|
14
|
+
import {
|
|
15
|
+
resolveDayRange
|
|
16
|
+
} from "../chunk-XB7HYOMM.js";
|
|
17
17
|
import "../chunk-FRAVVI4A.js";
|
|
18
18
|
import "../chunk-BO6S47KI.js";
|
|
19
|
-
import "../chunk-
|
|
20
|
-
import "../chunk-
|
|
21
|
-
import "../chunk-FFQ4NOJT.js";
|
|
19
|
+
import "../chunk-R53ZOW4B.js";
|
|
20
|
+
import "../chunk-2ZRZTGWP.js";
|
|
22
21
|
import "../chunk-SUALMVL7.js";
|
|
23
22
|
import "../chunk-AG3DY5TH.js";
|
|
24
23
|
import "../chunk-6PU3JYVY.js";
|
|
25
24
|
import "../chunk-H3AQQOTI.js";
|
|
26
25
|
import "../chunk-E2Y7G4MP.js";
|
|
26
|
+
import "../chunk-FFQ4NOJT.js";
|
|
27
27
|
import "../chunk-TERT6TIS.js";
|
|
28
28
|
import "../chunk-FDMQ7H22.js";
|
|
29
29
|
import "../chunk-M47ZOUGF.js";
|
package/dist/form/Input.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import "../chunk-QYKDY4EI.js";
|
|
2
2
|
import {
|
|
3
3
|
Input
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-YLXQWYOG.js";
|
|
4
|
+
} from "../chunk-SDKOOVEX.js";
|
|
6
5
|
import "../chunk-SL6454K7.js";
|
|
6
|
+
import "../chunk-YLXQWYOG.js";
|
|
7
7
|
import "../chunk-JU3FRRO2.js";
|
|
8
8
|
import "../chunk-TYJR4GOF.js";
|
|
9
9
|
import "../chunk-HPK33ACY.js";
|
package/dist/form/NumberField.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import "../chunk-HALFOXSZ.js";
|
|
2
2
|
import {
|
|
3
3
|
NumberField
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-X3C3VTYS.js";
|
|
5
5
|
import "../chunk-Q4JWWTL4.js";
|
|
6
6
|
import "../chunk-QYKDY4EI.js";
|
|
7
|
-
import "../chunk-
|
|
8
|
-
import "../chunk-YLXQWYOG.js";
|
|
7
|
+
import "../chunk-SDKOOVEX.js";
|
|
9
8
|
import "../chunk-SL6454K7.js";
|
|
9
|
+
import "../chunk-YLXQWYOG.js";
|
|
10
10
|
import "../chunk-JU3FRRO2.js";
|
|
11
11
|
import "../chunk-TYJR4GOF.js";
|
|
12
12
|
import "../chunk-HPK33ACY.js";
|
package/dist/form/Select.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import "../chunk-II3YNC5S.js";
|
|
2
2
|
import {
|
|
3
3
|
Select
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-
|
|
4
|
+
} from "../chunk-AV6NNCRO.js";
|
|
5
|
+
import "../chunk-EISPWFYO.js";
|
|
6
|
+
import "../chunk-PQS3IPMD.js";
|
|
7
|
+
import "../chunk-IYC7NPX7.js";
|
|
6
8
|
import "../chunk-JU3FRRO2.js";
|
|
7
9
|
import "../chunk-RTSK5OZT.js";
|
|
8
10
|
import "../chunk-TYJR4GOF.js";
|
|
@@ -18,6 +20,7 @@ import "../chunk-FQ6UW7IY.js";
|
|
|
18
20
|
import "../chunk-6JAIFIPW.js";
|
|
19
21
|
import "../chunk-N3GAFIXG.js";
|
|
20
22
|
import "../chunk-YKCAJ2TN.js";
|
|
23
|
+
import "../chunk-MFU4Y25U.js";
|
|
21
24
|
import "../chunk-PZ5AY32C.js";
|
|
22
25
|
export {
|
|
23
26
|
Select
|
package/dist/form/total-form.js
CHANGED
|
@@ -3,18 +3,18 @@ import {
|
|
|
3
3
|
} from "../chunk-CPAJYJUD.js";
|
|
4
4
|
import {
|
|
5
5
|
Fields_exports
|
|
6
|
-
} from "../chunk-
|
|
6
|
+
} from "../chunk-IV7G7NK3.js";
|
|
7
7
|
import "../chunk-QDELBNL3.js";
|
|
8
8
|
import {
|
|
9
9
|
TextField
|
|
10
|
-
} from "../chunk-
|
|
10
|
+
} from "../chunk-NU55QUMO.js";
|
|
11
11
|
import {
|
|
12
12
|
SelectField
|
|
13
|
-
} from "../chunk-
|
|
14
|
-
import "../chunk-
|
|
13
|
+
} from "../chunk-3IPQANXY.js";
|
|
14
|
+
import "../chunk-XXL4PM4M.js";
|
|
15
15
|
import {
|
|
16
16
|
CategoryField
|
|
17
|
-
} from "../chunk-
|
|
17
|
+
} from "../chunk-5OEC546C.js";
|
|
18
18
|
import {
|
|
19
19
|
SubmitButton
|
|
20
20
|
} from "../chunk-3CUWQXTG.js";
|
|
@@ -28,33 +28,35 @@ import {
|
|
|
28
28
|
import "../chunk-ONMSTW4B.js";
|
|
29
29
|
import "../chunk-KQZGUHYZ.js";
|
|
30
30
|
import "../chunk-II3YNC5S.js";
|
|
31
|
-
import "../chunk-
|
|
32
|
-
import "../chunk-
|
|
31
|
+
import "../chunk-AV6NNCRO.js";
|
|
32
|
+
import "../chunk-EISPWFYO.js";
|
|
33
|
+
import "../chunk-PQS3IPMD.js";
|
|
34
|
+
import "../chunk-IYC7NPX7.js";
|
|
33
35
|
import "../chunk-JD5BVIM7.js";
|
|
34
36
|
import "../chunk-VQYR64QB.js";
|
|
35
37
|
import "../chunk-6XLMTOJ3.js";
|
|
36
|
-
import "../chunk-
|
|
38
|
+
import "../chunk-B3QWQG62.js";
|
|
37
39
|
import "../chunk-N5ZWC6CB.js";
|
|
38
|
-
import "../chunk-
|
|
40
|
+
import "../chunk-CGBUWNNQ.js";
|
|
39
41
|
import "../chunk-QYY37ECA.js";
|
|
40
|
-
import "../chunk-
|
|
42
|
+
import "../chunk-UILH4OAZ.js";
|
|
41
43
|
import "../chunk-PGGYZU7Q.js";
|
|
42
|
-
import "../chunk-
|
|
44
|
+
import "../chunk-NLEO5YI4.js";
|
|
45
|
+
import "../chunk-UG636FEL.js";
|
|
43
46
|
import "../chunk-S4IXC2V3.js";
|
|
44
47
|
import "../chunk-7KKMZJFT.js";
|
|
45
|
-
import "../chunk-XHHR6G35.js";
|
|
46
|
-
import "../chunk-NCB4GBRL.js";
|
|
47
|
-
import "../chunk-CMFJQH6A.js";
|
|
48
|
-
import "../chunk-DMNZD3Q7.js";
|
|
49
|
-
import "../chunk-Z6T5SXST.js";
|
|
50
48
|
import "../chunk-RZVUY2MO.js";
|
|
51
49
|
import "../chunk-USJPZ5Q7.js";
|
|
50
|
+
import "../chunk-XHHR6G35.js";
|
|
52
51
|
import "../chunk-R2AZOWEZ.js";
|
|
53
52
|
import "../chunk-PN4HVM43.js";
|
|
53
|
+
import "../chunk-NCB4GBRL.js";
|
|
54
|
+
import "../chunk-DMNZD3Q7.js";
|
|
55
|
+
import "../chunk-Z6T5SXST.js";
|
|
54
56
|
import "../chunk-QYKDY4EI.js";
|
|
55
|
-
import "../chunk-
|
|
56
|
-
import "../chunk-YLXQWYOG.js";
|
|
57
|
+
import "../chunk-SDKOOVEX.js";
|
|
57
58
|
import "../chunk-SL6454K7.js";
|
|
59
|
+
import "../chunk-YLXQWYOG.js";
|
|
58
60
|
import "../chunk-JU3FRRO2.js";
|
|
59
61
|
import "../chunk-C3UKR3NT.js";
|
|
60
62
|
import "../chunk-D6KL74KI.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/form/Select/Select.native.tsx","../../../src/components/form/Select/Select.helpers.ts","../../../src/components/form/Select/Select.metrics.ts","../../../src/components/form/Select/Select.look.native.ts"],"sourcesContent":["import * as React from 'react';\nimport {\n Platform,\n Pressable,\n ScrollView,\n StyleSheet,\n Text as RNText,\n View,\n useWindowDimensions,\n type StyleProp,\n type ViewStyle,\n} from 'react-native';\n\nimport {\n displayLabel,\n resolveSelectProps,\n selectItems,\n selectTestIds,\n type SelectItem,\n} from './Select.helpers';\nimport { menuStyle, optionStyle, optionTextStyle, selectLook, type SelectLook } from './Select.look.native';\nimport {\n SELECT_GLOW,\n SELECT_ICON,\n SELECT_MENU,\n inputVariantFor,\n selectInputSize,\n} from './Select.metrics';\nimport type { SelectProps, SelectValue } from './Select.types.native';\nimport { Icon } from '../../../icons/Icon.native';\nimport { webAria, webKeyDown, webRole, type WebKeyEvent } from '../../../platform/aria';\nimport { resolveTestId, withoutTestIdProps } from '../../../platform/test-id';\nimport { fieldHeightPx } from '../../../tokens/field-height.core';\nimport { useUiTheme } from '../../../provider/use-ui-theme.native';\nimport type { UiTheme } from '../../../tokens/theme';\nimport { FieldPulse } from '../field-pulse.native';\nimport { helperStyle, labelStyle, type FieldState } from '../Input/Input.look.native';\n\n/** MUI's halo on the outlined input, painted as a shadow. */\nfunction glowStyle(color: string): ViewStyle {\n return Platform.select<ViewStyle>({\n android: { elevation: SELECT_GLOW.rest.blur / 2 },\n default: {\n shadowColor: color,\n shadowOpacity: SELECT_GLOW.rest.alpha,\n shadowRadius: SELECT_GLOW.rest.blur,\n shadowOffset: { width: 0, height: 0 },\n },\n });\n}\n\ninterface MenuProps {\n items: SelectItem[];\n value: SelectValue;\n testIdFor: (value: SelectValue) => string;\n onPick: (item: SelectItem) => void;\n}\n\n/** The option list: MUI's `Menu`, under the field rather than portalled over it. */\nfunction SelectMenu({ items, value, testIdFor, onPick }: MenuProps): React.JSX.Element {\n const theme = useUiTheme();\n const { height } = useWindowDimensions();\n const textStyle = optionTextStyle(theme);\n\n return (\n <View style={menuStyle(theme, height - SELECT_MENU.maxHeightInset)} {...webRole('listbox')}>\n <ScrollView>\n {items.map((item) => {\n const selected = String(item.value) === String(value);\n return (\n <Pressable\n key={`${item.placeholder ? 'placeholder' : 'option'}-${item.value}`}\n role=\"option\"\n aria-selected={selected}\n aria-disabled={item.disabled}\n disabled={item.disabled}\n testID={item.placeholder ? undefined : testIdFor(item.value)}\n onPress={() => onPick(item)}\n style={optionStyle(theme, selected, item.disabled)}\n >\n <RNText style={textStyle}>{item.label}</RNText>\n </Pressable>\n );\n })}\n </ScrollView>\n </View>\n );\n}\n\ninterface TriggerProps {\n testID: string;\n look: SelectLook;\n open: boolean;\n disabled: boolean;\n error: boolean;\n glow: boolean;\n display: string;\n labelId?: string;\n helperId?: string;\n onToggle: () => void;\n onKey: (event: WebKeyEvent) => void;\n}\n\n/**\n * The field itself: MUI's display slot and its arrow, under one `combobox`.\n *\n * `tabIndex` is spelled out because react-native-web only makes a handful of\n * roles focusable on its own, and `combobox` is not one of them — without it\n * the control would not be a tab stop. It goes to -1 when disabled, which is\n * what the web does by leaving the attribute off a disabled field entirely.\n */\nfunction SelectTrigger(props: TriggerProps): React.JSX.Element {\n const theme = useUiTheme();\n const { testID, look, open, disabled, error, glow, display, labelId, helperId } = props;\n\n return (\n <Pressable\n testID={testID}\n role=\"combobox\"\n tabIndex={disabled ? -1 : 0}\n aria-expanded={open}\n aria-disabled={disabled}\n disabled={disabled}\n onPress={props.onToggle}\n style={[look.box, glow ? glowStyle(theme.palette.primary.main) : null]}\n {...webAria({\n 'aria-haspopup': 'listbox',\n 'aria-invalid': error,\n ...(labelId === undefined ? {} : { 'aria-labelledby': labelId }),\n ...(helperId === undefined ? {} : { 'aria-describedby': helperId }),\n })}\n {...webKeyDown(props.onKey)}\n >\n <RNText style={look.display} numberOfLines={1}>\n {display}\n </RNText>\n <Icon\n name=\"ArrowDropDown\"\n size={SELECT_ICON.size}\n color={disabled ? theme.palette.action.disabled : theme.palette.action.active}\n testID={`${testID}-icon`}\n style={[\n { marginLeft: look.iconGap },\n open ? { transform: [{ rotate: `${SELECT_ICON.openRotateDeg}deg` }] } : null,\n ]}\n />\n </Pressable>\n );\n}\n\n/** The value the control shows, controlled by the caller or held here. */\nfunction useSelectValue(\n value: SelectValue | undefined,\n defaultValue: SelectValue | undefined,\n): [SelectValue, (next: SelectValue) => void] {\n const [own, setOwn] = React.useState<SelectValue>(defaultValue ?? '');\n return [value ?? own, setOwn];\n}\n\n/** The pulse bar, at the field's own height and corner. */\nfunction SelectPulse({\n theme,\n size,\n testID,\n}: {\n theme: UiTheme;\n size: SelectProps['size'];\n testID: string;\n}): React.JSX.Element {\n return (\n <FieldPulse\n color={theme.palette.primary.main}\n radius={theme.radius.field}\n height={fieldHeightPx(theme.fieldHeight, size ?? 'md')}\n testID={testID}\n />\n );\n}\n\n/**\n * The field's own box. Raised while open: react-native-web gives every View\n * `z-index: 0`, so the anchor's z-index stays inside this root, and the next\n * field down would paint over the list and take its taps.\n */\nfunction rootStyle(theme: UiTheme, fullWidth: boolean | undefined, open: boolean): StyleProp<ViewStyle> {\n return [styles.root, fullWidth ? styles.fullWidth : styles.auto, open ? { zIndex: theme.zIndex.modal } : null];\n}\n\n/**\n * The native `Select`.\n *\n * The list is an absolutely positioned panel under the field rather than a\n * portal over the screen: React Native's `Modal` traps focus, which is right\n * for a dialog and wrong for a dropdown — and wrong for the shared stories,\n * which expect the trigger to keep focus while the list is open. The trade is\n * recorded in `NATIVE-NOTES.md`.\n */\nexport const Select = React.forwardRef<View, SelectProps>((rawProps, ref) => {\n const {\n variant, options, label, helperText, fullWidth, size, placeholder, error, glow, pulse,\n disabled, value, defaultValue, onChange, onOpen, onClose, style, ...others\n } = resolveSelectProps(rawProps);\n\n const theme = useUiTheme();\n const [open, setOpen] = React.useState(false);\n const [current, setCurrent] = useSelectValue(value, defaultValue);\n const labelId = React.useId();\n const helperId = React.useId();\n\n const items = selectItems(options, placeholder);\n const ids = selectTestIds(resolveTestId(others));\n const state: FieldState = { focused: open && !disabled, error, disabled };\n const look = selectLook(theme, variant, size, state);\n\n const setOpenState = (next: boolean): void => {\n if (next === open) return;\n setOpen(next);\n (next ? onOpen : onClose)?.();\n };\n\n const handleKey = (event: WebKeyEvent): void => {\n if (event.key === 'Escape') setOpenState(false);\n if (event.key === 'ArrowDown' || event.key === 'ArrowUp') setOpenState(true);\n };\n\n const pick = (item: SelectItem): void => {\n setOpenState(false);\n if (item.option === undefined) return;\n setCurrent(item.value);\n onChange?.({ target: { value: item.value } }, item.option);\n };\n\n return (\n <View\n ref={ref}\n testID={ids.root}\n style={[rootStyle(theme, fullWidth, open), style]}\n {...withoutTestIdProps(others)}\n >\n {pulse ? <SelectPulse theme={theme} size={size} testID={`${ids.trigger}-pulse`} /> : null}\n {label === undefined ? null : (\n <RNText id={labelId} style={labelStyle(theme, inputVariantFor(variant), size, state)}>\n {label}\n </RNText>\n )}\n <View style={[styles.anchor, open ? { zIndex: theme.zIndex.modal } : null]}>\n <SelectTrigger\n testID={ids.trigger}\n look={look}\n open={open}\n disabled={disabled}\n error={error}\n glow={glow}\n display={displayLabel(items, current)}\n labelId={label === undefined ? undefined : labelId}\n helperId={helperText === undefined ? undefined : helperId}\n onToggle={() => setOpenState(!open)}\n onKey={handleKey}\n />\n {open ? (\n <SelectMenu items={items} value={current} testIdFor={ids.option} onPick={pick} />\n ) : null}\n </View>\n {helperText === undefined ? null : (\n <RNText id={helperId} style={helperStyle(theme, inputVariantFor(variant), selectInputSize(size), state)}>\n {helperText}\n </RNText>\n )}\n </View>\n );\n});\n\nSelect.displayName = 'Select';\n\nconst styles = StyleSheet.create({\n root: {\n position: 'relative',\n },\n anchor: {\n position: 'relative',\n },\n fullWidth: {\n alignSelf: 'stretch',\n width: '100%',\n },\n auto: {\n alignSelf: 'flex-start',\n },\n});\n","import type { SelectBaseProps, SelectOption, SelectValue } from './Select.base';\nimport { withDefaults } from '../../../utils/withDefaults';\n\ntype SelectDefaultedKeys = 'variant' | 'size' | 'fullWidth' | 'error' | 'glow' | 'pulse' | 'disabled';\n\nexport type ResolvedSelectProps<P extends SelectBaseProps> = P &\n Required<Pick<SelectBaseProps, SelectDefaultedKeys>>;\n\n/**\n * `Select.tsx` leaves `variant`, `size`, `glow` and `pulse` undefined on\n * purpose — undefined resolves to the default variant, MUI's medium and no\n * effects, which keeps its render function under the complexity budget. The\n * native renderer has to name them, so the same resolution happens here.\n */\nconst SELECT_DEFAULTS: Required<Pick<SelectBaseProps, SelectDefaultedKeys>> = {\n variant: 'default',\n size: 'md',\n fullWidth: true,\n error: false,\n glow: false,\n pulse: false,\n disabled: false,\n};\n\nexport const resolveSelectProps = <P extends SelectBaseProps>(props: P): ResolvedSelectProps<P> =>\n withDefaults(props, SELECT_DEFAULTS as Partial<P>) as ResolvedSelectProps<P>;\n\n/** One row of the list: an option, or the disabled placeholder above them. */\nexport interface SelectItem {\n value: SelectValue;\n label: string;\n disabled: boolean;\n /** The placeholder is not an option: it carries no test id and cannot be chosen. */\n placeholder: boolean;\n option?: SelectOption;\n}\n\n/**\n * The list MUI renders: the placeholder first when there is one, then the\n * options, in the order `renderMenuItems` builds them.\n */\nexport function selectItems(options: SelectOption[], placeholder?: string): SelectItem[] {\n const items: SelectItem[] = options.map((option) => ({\n value: option.value,\n label: option.label,\n disabled: option.disabled === true,\n placeholder: false,\n option,\n }));\n if (placeholder === undefined || placeholder === '') return items;\n return [{ value: '', label: placeholder, disabled: true, placeholder: true }, ...items];\n}\n\n/**\n * What the display slot shows.\n *\n * The LAST match wins, which is MUI's own answer: `SelectInput` walks its\n * children and overwrites the display for every child whose value matches, so\n * a list carrying both an empty placeholder and a real empty-valued option\n * shows the option. Values are compared as strings because the DOM stringifies\n * them anyway (MUI's `areEqualValues`).\n */\nexport function displayLabel(items: SelectItem[], value: SelectValue): string {\n let label = '';\n for (const item of items) {\n if (String(item.value) === String(value)) label = item.label;\n }\n return label;\n}\n\n/** The three ids the web puts on the control, spelled exactly as it spells them. */\nexport function selectTestIds(id: string | undefined): {\n root: string | undefined;\n trigger: string;\n option: (value: SelectValue) => string;\n} {\n return {\n root: id,\n trigger: id ? `${id}-select` : 'select',\n option: (value) => (id ? `${id}-option-${value}` : `option-${value}`),\n };\n}\n","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","import type { TextStyle, ViewStyle } from 'react-native';\n\nimport {\n MUI_MENU_SHADOW,\n SELECT_DISPLAY_MIN_HEIGHT,\n SELECT_ICON,\n SELECT_ICON_GAP,\n SELECT_MENU,\n inputVariantFor,\n selectedWashAlpha,\n} from './Select.metrics';\nimport type { SelectVariant } from './Select.base';\nimport { INPUT_FONT_SIZE, INPUT_LINE_HEIGHT } from '../Input/Input.metrics';\nimport { fieldLook, horizontalBorderInset, type FieldState } from '../Input/Input.look.native';\nimport { alpha } from '../../../tokens/color';\nimport type { UiTheme } from '../../../tokens/theme';\nimport type { SizeValue } from '../../../tokens/vocabulary';\n\n/**\n * WHAT A NATIVE `Select` PAINTS.\n *\n * The box is the `Input`'s box: a select on the web is an `OutlinedInput` with\n * a display slot where the value would be typed, so `fieldLook` decides the\n * fill, the edges and the inset, and this file only says what a select adds —\n * room for the arrow, and the list under it.\n */\nexport interface SelectLook {\n box: ViewStyle;\n display: TextStyle;\n iconGap: number;\n}\n\nexport function selectLook(\n theme: UiTheme,\n variant: SelectVariant,\n size: SizeValue,\n state: FieldState,\n): SelectLook {\n const inputVariant = inputVariantFor(variant);\n const look = fieldLook(theme, inputVariant, size, state);\n const inset = horizontalBorderInset(inputVariant, state.focused);\n\n return {\n box: {\n ...look.box,\n // MUI's arrow is absolute at `right: 7`; laid out in flow it takes the\n // row's right inset instead, and {@link SELECT_ICON_GAP} makes up the\n // difference so the value still stops 32px from the edge.\n paddingRight: SELECT_ICON.right - inset,\n },\n display: {\n ...look.value,\n minHeight: SELECT_DISPLAY_MIN_HEIGHT,\n fontSize: INPUT_FONT_SIZE,\n lineHeight: INPUT_LINE_HEIGHT,\n },\n iconGap: SELECT_ICON_GAP,\n };\n}\n\n/** The option list's paper: MUI's `Menu`, at elevation 8 on the theme's radius. */\nexport function menuStyle(theme: UiTheme, maxHeight: number): ViewStyle {\n return {\n position: 'absolute',\n top: '100%',\n left: 0,\n right: 0,\n zIndex: theme.zIndex.modal,\n maxHeight,\n paddingVertical: SELECT_MENU.listPaddingVertical,\n backgroundColor: theme.palette.background.paper,\n borderRadius: theme.radius.md,\n boxShadow: MUI_MENU_SHADOW,\n };\n}\n\n/** One `MenuItem`: 48px tall at least, 6px by 16px of padding, washed when selected. */\nexport function optionStyle(theme: UiTheme, selected: boolean, disabled: boolean): ViewStyle {\n return {\n minHeight: SELECT_MENU.itemMinHeight,\n justifyContent: 'center',\n paddingVertical: SELECT_MENU.itemPaddingVertical,\n paddingHorizontal: SELECT_MENU.itemPaddingHorizontal,\n backgroundColor: selected\n ? alpha(theme.palette.primary.main, selectedWashAlpha(theme))\n : 'transparent',\n opacity: disabled ? SELECT_MENU.disabledOpacity : 1,\n };\n}\n\n/** A `MenuItem`'s label: MUI's `body1`, the same type the display slot sets. */\nexport function optionTextStyle(theme: UiTheme): TextStyle {\n return {\n color: theme.palette.text.primary,\n fontFamily: theme.typography.fontFamily,\n fontSize: INPUT_FONT_SIZE,\n lineHeight: INPUT_LINE_HEIGHT,\n };\n}\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/form/Select/Select.native.tsx","../../../src/components/form/Select/Select.helpers.ts","../../../src/components/form/Select/Select.metrics.ts","../../../src/components/form/Select/Select.look.native.ts"],"sourcesContent":["import * as React from 'react';\nimport {\n Platform,\n Pressable,\n ScrollView,\n StyleSheet,\n Text as RNText,\n View,\n useWindowDimensions,\n type StyleProp,\n type ViewStyle,\n} from 'react-native';\n\nimport {\n displayLabel,\n resolveSelectProps,\n selectItems,\n selectTestIds,\n type SelectItem,\n} from './Select.helpers';\nimport { menuStyle, optionStyle, optionTextStyle, selectLook, type SelectLook } from './Select.look.native';\nimport {\n SELECT_GLOW,\n SELECT_ICON,\n SELECT_MENU,\n inputVariantFor,\n selectInputSize,\n} from './Select.metrics';\nimport type { SelectProps, SelectValue } from './Select.types.native';\nimport { Icon } from '../../../icons/Icon.native';\nimport { webAria, webKeyDown, webRole, type WebKeyEvent } from '../../../platform/aria';\nimport { resolveTestId, withoutTestIdProps } from '../../../platform/test-id';\nimport { fieldHeightPx } from '../../../tokens/field-height.core';\nimport { useUiTheme } from '../../../provider/use-ui-theme.native';\nimport type { UiTheme } from '../../../tokens/theme';\nimport { FieldPulse } from '../field-pulse.native';\nimport { helperStyle, labelStyle, type FieldState } from '../Input/Input.look.native';\n\n/** MUI's halo on the outlined input, painted as a shadow. */\nfunction glowStyle(color: string): ViewStyle {\n return Platform.select<ViewStyle>({\n android: { elevation: SELECT_GLOW.rest.blur / 2 },\n default: {\n shadowColor: color,\n shadowOpacity: SELECT_GLOW.rest.alpha,\n shadowRadius: SELECT_GLOW.rest.blur,\n shadowOffset: { width: 0, height: 0 },\n },\n });\n}\n\ninterface MenuProps {\n items: SelectItem[];\n value: SelectValue;\n testIdFor: (value: SelectValue) => string;\n onPick: (item: SelectItem) => void;\n}\n\n/** The option list: MUI's `Menu`, under the field rather than portalled over it. */\nfunction SelectMenu({ items, value, testIdFor, onPick }: MenuProps): React.JSX.Element {\n const theme = useUiTheme();\n const { height } = useWindowDimensions();\n const textStyle = optionTextStyle(theme);\n\n return (\n <View style={menuStyle(theme, height - SELECT_MENU.maxHeightInset)} {...webRole('listbox')}>\n <ScrollView>\n {items.map((item) => {\n const selected = String(item.value) === String(value);\n return (\n <Pressable\n key={`${item.placeholder ? 'placeholder' : 'option'}-${item.value}`}\n role=\"option\"\n aria-selected={selected}\n aria-disabled={item.disabled}\n disabled={item.disabled}\n testID={item.placeholder ? undefined : testIdFor(item.value)}\n onPress={() => onPick(item)}\n style={optionStyle(theme, selected, item.disabled)}\n >\n <RNText style={textStyle}>{item.label}</RNText>\n </Pressable>\n );\n })}\n </ScrollView>\n </View>\n );\n}\n\ninterface TriggerProps {\n testID: string;\n look: SelectLook;\n open: boolean;\n disabled: boolean;\n error: boolean;\n glow: boolean;\n display: string;\n labelId?: string;\n helperId?: string;\n onToggle: () => void;\n onKey: (event: WebKeyEvent) => void;\n}\n\n/**\n * The field itself: MUI's display slot and its arrow, under one `combobox`.\n *\n * `tabIndex` is spelled out because react-native-web only makes a handful of\n * roles focusable on its own, and `combobox` is not one of them — without it\n * the control would not be a tab stop. It goes to -1 when disabled, which is\n * what the web does by leaving the attribute off a disabled field entirely.\n */\nfunction SelectTrigger(props: TriggerProps): React.JSX.Element {\n const theme = useUiTheme();\n const { testID, look, open, disabled, error, glow, display, labelId, helperId } = props;\n\n return (\n <Pressable\n testID={testID}\n role=\"combobox\"\n tabIndex={disabled ? -1 : 0}\n aria-expanded={open}\n aria-disabled={disabled}\n disabled={disabled}\n onPress={props.onToggle}\n style={[look.box, glow ? glowStyle(theme.palette.primary.main) : null]}\n {...webAria({\n 'aria-haspopup': 'listbox',\n 'aria-invalid': error,\n ...(labelId === undefined ? {} : { 'aria-labelledby': labelId }),\n ...(helperId === undefined ? {} : { 'aria-describedby': helperId }),\n })}\n {...webKeyDown(props.onKey)}\n >\n <RNText style={look.display} numberOfLines={1}>\n {display}\n </RNText>\n <Icon\n name=\"ArrowDropDown\"\n size={SELECT_ICON.size}\n color={disabled ? theme.palette.action.disabled : theme.palette.action.active}\n testID={`${testID}-icon`}\n style={[\n { marginLeft: look.iconGap },\n open ? { transform: [{ rotate: `${SELECT_ICON.openRotateDeg}deg` }] } : null,\n ]}\n />\n </Pressable>\n );\n}\n\n/** The value the control shows, controlled by the caller or held here. */\nfunction useSelectValue(\n value: SelectValue | undefined,\n defaultValue: SelectValue | undefined,\n): [SelectValue, (next: SelectValue) => void] {\n const [own, setOwn] = React.useState<SelectValue>(defaultValue ?? '');\n return [value ?? own, setOwn];\n}\n\n/** The pulse bar, at the field's own height and corner. */\nfunction SelectPulse({\n theme,\n size,\n testID,\n}: {\n theme: UiTheme;\n size: SelectProps['size'];\n testID: string;\n}): React.JSX.Element {\n return (\n <FieldPulse\n color={theme.palette.primary.main}\n radius={theme.radius.field}\n height={fieldHeightPx(theme.fieldHeight, size ?? 'md')}\n testID={testID}\n />\n );\n}\n\n/**\n * The field's own box. Raised while open: react-native-web gives every View\n * `z-index: 0`, so the anchor's z-index stays inside this root, and the next\n * field down would paint over the list and take its taps.\n */\nfunction rootStyle(theme: UiTheme, fullWidth: boolean | undefined, open: boolean): StyleProp<ViewStyle> {\n return [styles.root, fullWidth ? styles.fullWidth : styles.auto, open ? { zIndex: theme.zIndex.modal } : null];\n}\n\n/**\n * The native `Select`.\n *\n * The list is an absolutely positioned panel under the field rather than a\n * portal over the screen: React Native's `Modal` traps focus, which is right\n * for a dialog and wrong for a dropdown — and wrong for the shared stories,\n * which expect the trigger to keep focus while the list is open. The trade is\n * recorded in `NATIVE-NOTES.md`.\n */\nexport const Select = React.forwardRef<View, SelectProps>((rawProps, ref) => {\n const {\n variant, options, label, helperText, fullWidth, size, placeholder, error, glow, pulse,\n disabled, value, defaultValue, onChange, onOpen, onClose, style, ...others\n } = resolveSelectProps(rawProps);\n\n const theme = useUiTheme();\n const [open, setOpen] = React.useState(false);\n const [current, setCurrent] = useSelectValue(value, defaultValue);\n const labelId = React.useId();\n const helperId = React.useId();\n\n const items = selectItems(options, placeholder);\n const ids = selectTestIds(resolveTestId(others));\n const state: FieldState = { focused: open && !disabled, error, disabled };\n const look = selectLook(theme, variant, size, state);\n\n const setOpenState = (next: boolean): void => {\n if (next === open) return;\n setOpen(next);\n (next ? onOpen : onClose)?.();\n };\n\n const handleKey = (event: WebKeyEvent): void => {\n if (event.key === 'Escape') setOpenState(false);\n if (event.key === 'ArrowDown' || event.key === 'ArrowUp') setOpenState(true);\n };\n\n const pick = (item: SelectItem): void => {\n setOpenState(false);\n if (item.option === undefined) return;\n setCurrent(item.value);\n onChange?.({ target: { value: item.value } }, item.option);\n };\n\n return (\n <View\n ref={ref}\n testID={ids.root}\n style={[rootStyle(theme, fullWidth, open), style]}\n {...withoutTestIdProps(others)}\n >\n {pulse ? <SelectPulse theme={theme} size={size} testID={`${ids.trigger}-pulse`} /> : null}\n {label === undefined ? null : (\n <RNText id={labelId} style={labelStyle(theme, inputVariantFor(variant), size, state)}>\n {label}\n </RNText>\n )}\n <View style={[styles.anchor, open ? { zIndex: theme.zIndex.modal } : null]}>\n <SelectTrigger\n testID={ids.trigger}\n look={look}\n open={open}\n disabled={disabled}\n error={error}\n glow={glow}\n display={displayLabel(items, current)}\n labelId={label === undefined ? undefined : labelId}\n helperId={helperText === undefined ? undefined : helperId}\n onToggle={() => setOpenState(!open)}\n onKey={handleKey}\n />\n {open ? (\n <SelectMenu items={items} value={current} testIdFor={ids.option} onPick={pick} />\n ) : null}\n </View>\n {helperText === undefined ? null : (\n <RNText id={helperId} style={helperStyle(theme, inputVariantFor(variant), selectInputSize(size), state)}>\n {helperText}\n </RNText>\n )}\n </View>\n );\n});\n\nSelect.displayName = 'Select';\n\nconst styles = StyleSheet.create({\n root: {\n position: 'relative',\n },\n anchor: {\n position: 'relative',\n },\n fullWidth: {\n alignSelf: 'stretch',\n width: '100%',\n },\n auto: {\n alignSelf: 'flex-start',\n },\n});\n","import type { SelectBaseProps, SelectOption, SelectValue } from './Select.base';\nimport { withDefaults } from '../../../utils/withDefaults';\n\ntype SelectDefaultedKeys = 'variant' | 'size' | 'fullWidth' | 'error' | 'glow' | 'pulse' | 'disabled';\n\nexport type ResolvedSelectProps<P extends SelectBaseProps> = P &\n Required<Pick<SelectBaseProps, SelectDefaultedKeys>>;\n\n/**\n * `Select.tsx` leaves `variant`, `size`, `glow` and `pulse` undefined on\n * purpose — undefined resolves to the default variant, MUI's medium and no\n * effects, which keeps its render function under the complexity budget. The\n * native renderer has to name them, so the same resolution happens here.\n */\nconst SELECT_DEFAULTS: Required<Pick<SelectBaseProps, SelectDefaultedKeys>> = {\n variant: 'default',\n size: 'md',\n fullWidth: true,\n error: false,\n glow: false,\n pulse: false,\n disabled: false,\n};\n\nexport const resolveSelectProps = <P extends SelectBaseProps>(props: P): ResolvedSelectProps<P> =>\n withDefaults(props, SELECT_DEFAULTS as Partial<P>) as ResolvedSelectProps<P>;\n\n/** One row of the list: an option, or the disabled placeholder above them. */\nexport interface SelectItem {\n value: SelectValue;\n label: string;\n disabled: boolean;\n /** The placeholder is not an option: it carries no test id and cannot be chosen. */\n placeholder: boolean;\n option?: SelectOption;\n}\n\n/**\n * The list MUI renders: the placeholder first when there is one, then the\n * options, in the order `renderMenuItems` builds them.\n */\nexport function selectItems(options: SelectOption[], placeholder?: string): SelectItem[] {\n const items: SelectItem[] = options.map((option) => ({\n value: option.value,\n label: option.label,\n disabled: option.disabled === true,\n placeholder: false,\n option,\n }));\n if (placeholder === undefined || placeholder === '') return items;\n return [{ value: '', label: placeholder, disabled: true, placeholder: true }, ...items];\n}\n\n/**\n * What the display slot shows.\n *\n * The LAST match wins, which is MUI's own answer: `SelectInput` walks its\n * children and overwrites the display for every child whose value matches, so\n * a list carrying both an empty placeholder and a real empty-valued option\n * shows the option. Values are compared as strings because the DOM stringifies\n * them anyway (MUI's `areEqualValues`).\n */\nexport function displayLabel(items: SelectItem[], value: SelectValue): string {\n let label = '';\n for (const item of items) {\n if (String(item.value) === String(value)) label = item.label;\n }\n return label;\n}\n\n/** The three ids the web puts on the control, spelled exactly as it spells them. */\nexport function selectTestIds(id: string | undefined): {\n root: string | undefined;\n trigger: string;\n option: (value: SelectValue) => string;\n} {\n return {\n root: id,\n trigger: id ? `${id}-select` : 'select',\n option: (value) => (id ? `${id}-option-${value}` : `option-${value}`),\n };\n}\n","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","import type { TextStyle, ViewStyle } from 'react-native';\n\nimport {\n MUI_MENU_SHADOW,\n SELECT_DISPLAY_MIN_HEIGHT,\n SELECT_ICON,\n SELECT_ICON_GAP,\n SELECT_MENU,\n inputVariantFor,\n selectedWashAlpha,\n} from './Select.metrics';\nimport type { SelectVariant } from './Select.base';\nimport { INPUT_FONT_SIZE, INPUT_LINE_HEIGHT } from '../Input/Input.metrics';\nimport { fieldLook, horizontalBorderInset, type FieldState } from '../Input/Input.look.native';\nimport { alpha } from '../../../tokens/color';\nimport type { UiTheme } from '../../../tokens/theme';\nimport type { SizeValue } from '../../../tokens/vocabulary';\n\n/**\n * WHAT A NATIVE `Select` PAINTS.\n *\n * The box is the `Input`'s box: a select on the web is an `OutlinedInput` with\n * a display slot where the value would be typed, so `fieldLook` decides the\n * fill, the edges and the inset, and this file only says what a select adds —\n * room for the arrow, and the list under it.\n */\nexport interface SelectLook {\n box: ViewStyle;\n display: TextStyle;\n iconGap: number;\n}\n\nexport function selectLook(\n theme: UiTheme,\n variant: SelectVariant,\n size: SizeValue,\n state: FieldState,\n): SelectLook {\n const inputVariant = inputVariantFor(variant);\n const look = fieldLook(theme, inputVariant, size, state);\n const inset = horizontalBorderInset(inputVariant, state.focused);\n\n return {\n box: {\n ...look.box,\n // MUI's arrow is absolute at `right: 7`; laid out in flow it takes the\n // row's right inset instead, and {@link SELECT_ICON_GAP} makes up the\n // difference so the value still stops 32px from the edge.\n paddingRight: SELECT_ICON.right - inset,\n },\n display: {\n ...look.value,\n minHeight: SELECT_DISPLAY_MIN_HEIGHT,\n fontSize: INPUT_FONT_SIZE,\n lineHeight: INPUT_LINE_HEIGHT,\n },\n iconGap: SELECT_ICON_GAP,\n };\n}\n\n/** The option list's paper: MUI's `Menu`, at elevation 8 on the theme's radius. */\nexport function menuStyle(theme: UiTheme, maxHeight: number): ViewStyle {\n return {\n position: 'absolute',\n top: '100%',\n left: 0,\n right: 0,\n zIndex: theme.zIndex.modal,\n maxHeight,\n paddingVertical: SELECT_MENU.listPaddingVertical,\n backgroundColor: theme.palette.background.paper,\n borderRadius: theme.radius.md,\n boxShadow: MUI_MENU_SHADOW,\n };\n}\n\n/** One `MenuItem`: 48px tall at least, 6px by 16px of padding, washed when selected. */\nexport function optionStyle(theme: UiTheme, selected: boolean, disabled: boolean): ViewStyle {\n return {\n minHeight: SELECT_MENU.itemMinHeight,\n justifyContent: 'center',\n paddingVertical: SELECT_MENU.itemPaddingVertical,\n paddingHorizontal: SELECT_MENU.itemPaddingHorizontal,\n backgroundColor: selected\n ? alpha(theme.palette.primary.main, selectedWashAlpha(theme))\n : 'transparent',\n opacity: disabled ? SELECT_MENU.disabledOpacity : 1,\n };\n}\n\n/** A `MenuItem`'s label: MUI's `body1`, the same type the display slot sets. */\nexport function optionTextStyle(theme: UiTheme): TextStyle {\n return {\n color: theme.palette.text.primary,\n fontFamily: theme.typography.fontFamily,\n fontSize: INPUT_FONT_SIZE,\n lineHeight: INPUT_LINE_HEIGHT,\n };\n}\n"],"mappings":"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","names":[]}
|
|
@@ -12,18 +12,18 @@ import {
|
|
|
12
12
|
} from "../chunk-GWFAINQ7.js";
|
|
13
13
|
import {
|
|
14
14
|
AppHeaderDetails
|
|
15
|
-
} from "../chunk-
|
|
15
|
+
} from "../chunk-SAJ5H5VC.js";
|
|
16
16
|
import {
|
|
17
17
|
brandGradient,
|
|
18
18
|
highlightOf,
|
|
19
19
|
initialsOf
|
|
20
20
|
} from "../chunk-IQU4HKND.js";
|
|
21
|
-
import "../chunk-
|
|
21
|
+
import "../chunk-WAD5VL6B.js";
|
|
22
|
+
import "../chunk-3U3H3BZM.js";
|
|
22
23
|
import "../chunk-PIUQYYOM.js";
|
|
24
|
+
import "../chunk-FPVYD7BO.js";
|
|
23
25
|
import "../chunk-LYVTJLCF.js";
|
|
24
26
|
import "../chunk-CRN4KKNI.js";
|
|
25
|
-
import "../chunk-3U3H3BZM.js";
|
|
26
|
-
import "../chunk-FPVYD7BO.js";
|
|
27
27
|
import "../chunk-IM4DMKH4.js";
|
|
28
28
|
import "../chunk-MQ277OLB.js";
|
|
29
29
|
import "../chunk-ST7B54JN.js";
|