@esri/calcite-components 5.1.0-next.4 → 5.1.0-next.41
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/dist/cdn/{CAAZHUX4.js → 24MYDDCX.js} +1 -1
- package/dist/cdn/2CMEG656.js +2 -0
- package/dist/cdn/{SYSNPKVM.js → 2ERRVHOG.js} +1 -1
- package/dist/cdn/{5WKPS2ZT.js → 2FA462GH.js} +1 -1
- package/dist/cdn/2HNLUEFE.js +2 -0
- package/dist/cdn/{3W4NT367.js → 2S7YK3XB.js} +1 -1
- package/dist/cdn/2ZVRANSV.js +2 -0
- package/dist/cdn/3JPPSAVC.js +2 -0
- package/dist/cdn/{5TWM6GKK.js → 3PMEQAA4.js} +1 -1
- package/dist/cdn/3Z3BLSQV.js +2 -0
- package/dist/cdn/45PPV4KB.js +2 -0
- package/dist/cdn/{HRUVPNCI.js → 4BN3NFQE.js} +1 -1
- package/dist/cdn/{X7JEHH2B.js → 4EQVX3RN.js} +1 -1
- package/dist/cdn/4JQR5BFT.js +2 -0
- package/dist/cdn/{EW6277QZ.js → 4LF7JOWB.js} +1 -1
- package/dist/cdn/4R2OUXIA.js +2 -0
- package/dist/cdn/4RK74RAX.js +2 -0
- package/dist/cdn/{F7XISEIT.js → 4Y2EOU6I.js} +1 -1
- package/dist/cdn/{RRHN2PDB.js → 564OQMMG.js} +1 -1
- package/dist/cdn/{WR6QBFCR.js → 5DNRIF2T.js} +1 -1
- package/dist/cdn/5LFL3RZM.js +2 -0
- package/dist/cdn/{RROGXGP5.js → 5W3NUC35.js} +1 -1
- package/dist/cdn/{AYPT6VGV.js → 5XXHCJWT.js} +1 -1
- package/dist/cdn/{UTFS3HNB.js → 5YJHDAMC.js} +1 -1
- package/dist/cdn/{FAHLSHDH.js → 6ALR2RKE.js} +1 -1
- package/dist/cdn/{HXS3PD57.js → 6FYE5EO4.js} +1 -1
- package/dist/cdn/{DFXECQ6Z.js → 6HUNPYIU.js} +1 -1
- package/dist/cdn/6IXX24B5.js +2 -0
- package/dist/cdn/6OIJRLWE.js +2 -0
- package/dist/cdn/6OJ75BQL.js +2 -0
- package/dist/cdn/6W5UQMJB.js +2 -0
- package/dist/cdn/6WINJYQB.js +2 -0
- package/dist/cdn/{XDOFVA4S.js → 7FDVLRYA.js} +1 -1
- package/dist/cdn/{R6D5F2V7.js → 7MRRY2FG.js} +1 -1
- package/dist/cdn/7ZM7AHRH.js +2 -0
- package/dist/cdn/A3EVLDK2.js +2 -0
- package/dist/cdn/ABWDY3S3.js +2 -0
- package/dist/cdn/{GM6FZWSL.js → AGJOJXT7.js} +1 -1
- package/dist/cdn/AGT4E2MR.js +2 -0
- package/dist/cdn/AKNE222R.js +2 -0
- package/dist/cdn/AMBU24RT.js +2 -0
- package/dist/cdn/B5HEG3NU.js +2 -0
- package/dist/cdn/B6IJE67V.js +2 -0
- package/dist/cdn/{7DA7BZM3.js → B74NISG7.js} +1 -1
- package/dist/cdn/C3ZMZ6DZ.js +2 -0
- package/dist/cdn/CKN7KBBX.js +2 -0
- package/dist/cdn/{LGKOEBZ4.js → CQTKLBEA.js} +1 -1
- package/dist/cdn/CUEFJU5M.js +2 -0
- package/dist/cdn/CX6NYW6U.js +2 -0
- package/dist/cdn/DAN2REQH.js +2 -0
- package/dist/cdn/{EHIAXJAL.js → DCWL5FUH.js} +1 -1
- package/dist/cdn/DM4TDFHC.js +2 -0
- package/dist/cdn/DNCPJ3MF.js +2 -0
- package/dist/cdn/DQX5RKEG.js +2 -0
- package/dist/cdn/DREDLWCT.js +2 -0
- package/dist/cdn/{MTNYIXZQ.js → DSZEUV6U.js} +1 -1
- package/dist/cdn/DVT6XGRX.js +2 -0
- package/dist/cdn/{VLGFWPBL.js → E4G4YBUV.js} +1 -1
- package/dist/cdn/EDZNJS2P.js +2 -0
- package/dist/cdn/{XLGGANFA.js → EYQJAUTS.js} +1 -1
- package/dist/cdn/F2OT6ZS7.js +2 -0
- package/dist/cdn/FNUCXO5T.js +2 -0
- package/dist/cdn/FO5KZ2B4.js +2 -0
- package/dist/cdn/{TCAGY7OI.js → FUAQVSMM.js} +1 -1
- package/dist/cdn/FUUTIPHY.js +2 -0
- package/dist/cdn/FVJPSUND.js +2 -0
- package/dist/cdn/{A4OYPK5D.js → FWIH6QX6.js} +1 -1
- package/dist/cdn/FXPBVOSU.js +2 -0
- package/dist/cdn/G2N5QQQC.js +2 -0
- package/dist/cdn/{Z22BRBT4.js → GA7UTPCH.js} +1 -1
- package/dist/cdn/GEWK7CNC.js +2 -0
- package/dist/cdn/{QOSBMGOZ.js → GF6UHDWG.js} +1 -1
- package/dist/cdn/{TLAXB6HU.js → GPB37IZK.js} +1 -1
- package/dist/cdn/GRAXNZVF.js +2 -0
- package/dist/cdn/{KKH2HVQW.js → I2C2U4EG.js} +1 -1
- package/dist/cdn/{CZYFEVKF.js → II5Q35BQ.js} +1 -1
- package/dist/cdn/J75WMG5K.js +2 -0
- package/dist/cdn/JGCSNM6I.js +2 -0
- package/dist/cdn/{BWUA5WU5.js → JIPOSCDQ.js} +1 -1
- package/dist/cdn/{MXRMT4RB.js → JMESEQBV.js} +1 -1
- package/dist/cdn/{HCJDTU7F.js → JQ2SIN67.js} +1 -1
- package/dist/cdn/{AMZPSRIA.js → JQWPSLVQ.js} +1 -1
- package/dist/cdn/{OVU2NGHU.js → JTIOKO5Z.js} +1 -1
- package/dist/cdn/K2J5VOGN.js +2 -0
- package/dist/cdn/K3TXMTAA.js +2 -0
- package/dist/cdn/KGN7LNPW.js +2 -0
- package/dist/cdn/{IFHMJCAE.js → KKCLSEGI.js} +1 -1
- package/dist/cdn/KT5ZBHYJ.js +2 -0
- package/dist/cdn/KZ26ANWU.js +2 -0
- package/dist/cdn/LQJ57QQT.js +2 -0
- package/dist/cdn/M2AV52WE.js +2 -0
- package/dist/cdn/M3F5QBVV.js +2 -0
- package/dist/cdn/MDIOA3TB.js +2 -0
- package/dist/cdn/MHY3UNM6.js +4 -0
- package/dist/cdn/MWRUONCP.js +2 -0
- package/dist/cdn/{3GV45XL7.js → MYDCGCGV.js} +1 -1
- package/dist/cdn/N7RECCIH.js +2 -0
- package/dist/cdn/{ED2GANBI.js → NBJNGORU.js} +1 -1
- package/dist/cdn/{ZZNRLKQQ.js → NPL2RAJH.js} +1 -1
- package/dist/cdn/{6IZMIAV2.js → NT3HJBBX.js} +1 -1
- package/dist/cdn/OW7J4OUX.js +2 -0
- package/dist/cdn/PQFBEGNW.js +2 -0
- package/dist/cdn/{LIJYENWJ.js → PS3RNTX7.js} +1 -1
- package/dist/cdn/{4MFRMO5M.js → Q43RHQO7.js} +1 -1
- package/dist/cdn/{ZIOXZBYF.js → QA5WKG2V.js} +1 -1
- package/dist/cdn/{YQY6DOSF.js → QB4POCYZ.js} +1 -1
- package/dist/cdn/{QKUQGG2M.js → QH3YRMT7.js} +1 -1
- package/dist/cdn/QKTDNEVV.js +2 -0
- package/dist/cdn/R6ION3EX.js +2 -0
- package/dist/cdn/{A22XLAKZ.js → RBNGWGBY.js} +3 -3
- package/dist/cdn/{IMOAPVVW.js → RGLX6ZUD.js} +1 -1
- package/dist/cdn/RLDG7JKF.js +2 -0
- package/dist/cdn/{HYYJZO6T.js → RUV4NSFE.js} +1 -1
- package/dist/cdn/RVXWIAKA.js +2 -0
- package/dist/cdn/S6W6A66Z.js +2 -0
- package/dist/cdn/{Z3IVC2AV.js → S7XRYSLC.js} +1 -1
- package/dist/cdn/{7TEW7OYZ.js → SOV3TN4E.js} +1 -1
- package/dist/cdn/{XYAZINKS.js → T5FTXYCC.js} +1 -1
- package/dist/cdn/T5OE6UXW.js +2 -0
- package/dist/cdn/T5QTQYSJ.js +2 -0
- package/dist/cdn/{GZNBU3BV.js → TDPJ5IO7.js} +1 -1
- package/dist/cdn/{5HQ3O27G.js → TIOSPWRC.js} +1 -1
- package/dist/cdn/{KVSU3DLB.js → TRGMORRC.js} +1 -1
- package/dist/cdn/TWAQRNOV.js +2 -0
- package/dist/cdn/U4RNEEDS.js +2 -0
- package/dist/cdn/U66XQE3L.js +2 -0
- package/dist/cdn/UWTFVQZZ.js +2 -0
- package/dist/cdn/V2V4HEZE.js +2 -0
- package/dist/cdn/{IOSK2I75.js → V3MIT2UF.js} +1 -1
- package/dist/cdn/{RA4KNUNM.js → V7U5TUOP.js} +1 -1
- package/dist/cdn/{7B4D4WJ2.js → VFQ6FGYV.js} +1 -1
- package/dist/cdn/{LHJSBAM5.js → VG74OPNP.js} +1 -1
- package/dist/cdn/VIV5RTB5.js +2 -0
- package/dist/cdn/VJUAN25O.js +2 -0
- package/dist/cdn/{CDTY6WOM.js → VS7QNWXR.js} +1 -1
- package/dist/cdn/WLMV5NME.js +2 -0
- package/dist/cdn/{GJE7FY35.js → XDZU4ZCM.js} +1 -1
- package/dist/cdn/{HXVXRVZW.js → XL6HVXTT.js} +1 -1
- package/dist/cdn/{5YROPSGB.js → XQ2A5CAB.js} +1 -1
- package/dist/cdn/XWE4Y4LH.js +2 -0
- package/dist/cdn/Y73IXKXQ.js +2 -0
- package/dist/cdn/YK2YMJCK.js +2 -0
- package/dist/cdn/YZZ2SHC2.js +2 -0
- package/dist/cdn/{QBLAE2O5.js → Z3PR5L6P.js} +1 -1
- package/dist/cdn/{MJCRT7H4.js → ZDXIPCCV.js} +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.ar.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.bg.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.bs.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.ca.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.cs.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.da.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.de.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.el.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.en.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.es.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.et.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.fi.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.fr.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.he.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.hr.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.hu.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.id.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.it.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.ja.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.ko.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.lt.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.lv.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.nl.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.no.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.pl.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.pt-BR.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.pt-PT.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.ro.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.ru.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.sk.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.sl.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.sr.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.sv.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.th.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.tr.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.uk.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.vi.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.zh-CN.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.zh-HK.json +1 -1
- package/dist/cdn/assets/combobox/t9n/messages.zh-TW.json +1 -1
- package/dist/cdn/assets/icon/arcgisQuickcapture16.json +1 -0
- package/dist/cdn/assets/icon/arcgisQuickcapture24.json +1 -0
- package/dist/cdn/assets/icon/arcgisQuickcapture32.json +1 -0
- package/dist/cdn/assets/icon/arcgisSurvey12316.json +1 -0
- package/dist/cdn/assets/icon/arcgisSurvey12324.json +1 -0
- package/dist/cdn/assets/icon/arcgisSurvey12332.json +1 -0
- package/dist/cdn/assets/icon/gpsReceiver16.json +1 -0
- package/dist/cdn/assets/icon/gpsReceiver24.json +1 -0
- package/dist/cdn/assets/icon/gpsReceiver32.json +1 -0
- package/dist/cdn/assets/icon/layerStreamSetting16.json +1 -0
- package/dist/cdn/assets/icon/layerStreamSetting24.json +1 -0
- package/dist/cdn/assets/icon/layerStreamSetting32.json +1 -0
- package/dist/cdn/assets/icon/publish16.json +1 -0
- package/dist/cdn/assets/icon/publish24.json +1 -0
- package/dist/cdn/assets/icon/publish32.json +1 -0
- package/dist/cdn/assets/icon/totalStation16.json +1 -0
- package/dist/cdn/assets/icon/totalStation24.json +1 -0
- package/dist/cdn/assets/icon/totalStation32.json +1 -0
- package/dist/cdn/assets/icon/velocityServer16.json +1 -0
- package/dist/cdn/assets/icon/velocityServer24.json +1 -0
- package/dist/cdn/assets/icon/velocityServer32.json +1 -0
- package/dist/cdn/index.js +2 -2
- package/dist/cdn/main.css +1 -1
- package/dist/chunks/ClearButton.js +16 -0
- package/dist/chunks/ExpandToggle.js +4 -5
- package/dist/chunks/Heading.js +3 -3
- package/dist/chunks/dom.js +63 -49
- package/dist/chunks/floating-ui.js +3 -6
- package/dist/chunks/label.js +1 -1
- package/dist/chunks/locale.js +29 -12
- package/dist/chunks/manager.js +505 -0
- package/dist/chunks/openCloseComponent.js +1 -1
- package/dist/chunks/resources5.js +2 -1
- package/dist/chunks/resources6.js +2 -0
- package/dist/chunks/runtime.js +4 -4
- package/dist/chunks/useFocusTrap.js +22 -1
- package/dist/chunks/useForm.js +294 -0
- package/dist/chunks/useFormTrigger.js +25 -0
- package/dist/chunks/useSetFocus.js +1 -1
- package/dist/chunks/{sortableComponent.js → useSortable.js} +70 -44
- package/dist/chunks/utils2.js +1 -1
- package/dist/components/calcite-accordion-item/customElement.d.ts +6 -6
- package/dist/components/calcite-accordion-item/customElement.js +4 -3
- package/dist/components/calcite-action/customElement.d.ts +14 -12
- package/dist/components/calcite-action/customElement.js +8 -14
- package/dist/components/calcite-action-bar/customElement.d.ts +12 -3
- package/dist/components/calcite-action-bar/customElement.js +43 -15
- package/dist/components/calcite-action-group/customElement.d.ts +6 -6
- package/dist/components/calcite-action-menu/customElement.d.ts +2 -2
- package/dist/components/calcite-action-pad/customElement.d.ts +3 -3
- package/dist/components/calcite-action-pad/customElement.js +5 -3
- package/dist/components/calcite-alert/customElement.d.ts +2 -2
- package/dist/components/calcite-alert/customElement.js +2 -2
- package/dist/components/calcite-autocomplete/customElement.d.ts +16 -13
- package/dist/components/calcite-autocomplete/customElement.js +23 -32
- package/dist/components/calcite-autocomplete-item/customElement.d.ts +6 -0
- package/dist/components/calcite-autocomplete-item/customElement.js +9 -4
- package/dist/components/calcite-avatar/customElement.js +1 -1
- package/dist/components/calcite-block/customElement.d.ts +5 -5
- package/dist/components/calcite-block/customElement.js +2 -2
- package/dist/components/calcite-block-group/customElement.d.ts +1 -1
- package/dist/components/calcite-block-group/customElement.js +5 -12
- package/dist/components/calcite-block-group/interfaces.d.ts +2 -6
- package/dist/components/calcite-block-section/customElement.d.ts +1 -1
- package/dist/components/calcite-button/customElement.d.ts +6 -6
- package/dist/components/calcite-button/customElement.js +11 -23
- package/dist/components/calcite-card/customElement.d.ts +4 -4
- package/dist/components/calcite-card/customElement.js +5 -3
- package/dist/components/calcite-card-group/customElement.d.ts +9 -3
- package/dist/components/calcite-card-group/customElement.js +11 -1
- package/dist/components/calcite-carousel/customElement.d.ts +1 -1
- package/dist/components/calcite-carousel/customElement.js +27 -25
- package/dist/components/calcite-checkbox/customElement.d.ts +4 -5
- package/dist/components/calcite-checkbox/customElement.js +10 -23
- package/dist/components/calcite-chip/customElement.d.ts +2 -2
- package/dist/components/calcite-chip/customElement.js +2 -2
- package/dist/components/calcite-chip-group/customElement.d.ts +1 -1
- package/dist/components/calcite-chip-group/customElement.js +1 -1
- package/dist/components/calcite-color-picker/customElement.d.ts +2 -2
- package/dist/components/calcite-color-picker/customElement.js +4 -2
- package/dist/components/calcite-color-picker-hex-input/customElement.d.ts +1 -1
- package/dist/components/calcite-color-picker-swatch/customElement.d.ts +1 -1
- package/dist/components/calcite-color-picker-swatch/customElement.js +1 -1
- package/dist/components/calcite-combobox/customElement.d.ts +16 -6
- package/dist/components/calcite-combobox/customElement.js +189 -106
- package/dist/components/calcite-combobox/index.js +2 -1
- package/dist/components/calcite-combobox-item/customElement.d.ts +1 -1
- package/dist/components/calcite-combobox-item/customElement.js +10 -4
- package/dist/components/calcite-date-picker/customElement.d.ts +1 -1
- package/dist/components/calcite-date-picker-day/customElement.d.ts +1 -1
- package/dist/components/calcite-date-picker-month/customElement.js +1 -1
- package/dist/components/calcite-date-picker-month-header/customElement.js +1 -1
- package/dist/components/calcite-dialog/customElement.d.ts +8 -6
- package/dist/components/calcite-dialog/customElement.js +5 -3
- package/dist/components/calcite-dropdown/customElement.d.ts +15 -5
- package/dist/components/calcite-dropdown/customElement.js +168 -90
- package/dist/components/calcite-dropdown-item/customElement.d.ts +2 -2
- package/dist/components/calcite-dropdown-item/customElement.js +14 -32
- package/dist/components/calcite-fab/customElement.d.ts +1 -1
- package/dist/components/calcite-filter/customElement.d.ts +1 -1
- package/dist/components/calcite-flow/customElement.d.ts +1 -1
- package/dist/components/calcite-flow-item/customElement.d.ts +9 -7
- package/dist/components/calcite-flow-item/customElement.js +6 -4
- package/dist/components/calcite-handle/customElement.d.ts +1 -1
- package/dist/components/calcite-icon/customElement.d.ts +1 -1
- package/dist/components/calcite-icon/customElement.js +4 -3
- package/dist/components/calcite-inline-editable/customElement.d.ts +1 -1
- package/dist/components/calcite-inline-editable/customElement.js +1 -1
- package/dist/components/calcite-input/customElement.d.ts +17 -18
- package/dist/components/calcite-input/customElement.js +30 -52
- package/dist/components/calcite-input/index.js +1 -0
- package/dist/components/calcite-input-date-picker/customElement.d.ts +6 -7
- package/dist/components/calcite-input-date-picker/customElement.js +34 -28
- package/dist/components/calcite-input-message/customElement.d.ts +1 -1
- package/dist/components/calcite-input-message/customElement.js +1 -1
- package/dist/components/calcite-input-number/customElement.d.ts +13 -14
- package/dist/components/calcite-input-number/customElement.js +26 -51
- package/dist/components/calcite-input-number/index.js +1 -0
- package/dist/components/calcite-input-text/customElement.d.ts +11 -12
- package/dist/components/calcite-input-text/customElement.js +20 -44
- package/dist/components/calcite-input-text/index.js +1 -0
- package/dist/components/calcite-input-time-picker/customElement.d.ts +6 -7
- package/dist/components/calcite-input-time-picker/customElement.js +14 -25
- package/dist/components/calcite-input-time-zone/customElement.d.ts +5 -6
- package/dist/components/calcite-input-time-zone/customElement.js +21 -19
- package/dist/components/calcite-link/customElement.d.ts +9 -9
- package/dist/components/calcite-link/customElement.js +31 -25
- package/dist/components/calcite-list/customElement.d.ts +1 -1
- package/dist/components/calcite-list/customElement.js +30 -11
- package/dist/components/calcite-list/interfaces.d.ts +2 -6
- package/dist/components/calcite-list-item/customElement.d.ts +2 -2
- package/dist/components/calcite-list-item/customElement.js +6 -4
- package/dist/components/calcite-list-item-group/customElement.js +1 -1
- package/dist/components/calcite-loader/customElement.d.ts +1 -1
- package/dist/components/calcite-menu/customElement.d.ts +1 -1
- package/dist/components/calcite-menu/customElement.js +2 -2
- package/dist/components/calcite-menu-item/customElement.d.ts +3 -3
- package/dist/components/calcite-menu-item/customElement.js +4 -2
- package/dist/components/calcite-meter/customElement.d.ts +7 -1
- package/dist/components/calcite-meter/customElement.js +4 -8
- package/dist/components/calcite-navigation/customElement.d.ts +2 -2
- package/dist/components/calcite-navigation-logo/customElement.d.ts +3 -3
- package/dist/components/calcite-navigation-user/customElement.d.ts +1 -1
- package/dist/components/calcite-notice/customElement.d.ts +3 -3
- package/dist/components/calcite-notice/customElement.js +2 -2
- package/dist/components/calcite-pagination/customElement.d.ts +1 -1
- package/dist/components/calcite-pagination/customElement.js +1 -1
- package/dist/components/calcite-panel/customElement.d.ts +11 -9
- package/dist/components/calcite-panel/customElement.js +20 -8
- package/dist/components/calcite-popover/customElement.d.ts +2 -2
- package/dist/components/calcite-popover/customElement.js +14 -175
- package/dist/components/calcite-progress/customElement.js +3 -2
- package/dist/components/calcite-radio-button/customElement.d.ts +1 -1
- package/dist/components/calcite-radio-button/customElement.js +173 -5
- package/dist/components/calcite-radio-button-group/customElement.d.ts +1 -1
- package/dist/components/calcite-rating/customElement.d.ts +3 -4
- package/dist/components/calcite-rating/customElement.js +12 -18
- package/dist/components/calcite-scrim/customElement.js +1 -1
- package/dist/components/calcite-segmented-control/customElement.d.ts +3 -4
- package/dist/components/calcite-segmented-control/customElement.js +13 -22
- package/dist/components/calcite-segmented-control-item/customElement.js +2 -2
- package/dist/components/calcite-select/customElement.d.ts +3 -4
- package/dist/components/calcite-select/customElement.js +8 -19
- package/dist/components/calcite-sheet/customElement.d.ts +2 -2
- package/dist/components/calcite-sheet/customElement.js +10 -11
- package/dist/components/calcite-shell/customElement.js +1 -1
- package/dist/components/calcite-shell-panel/customElement.d.ts +2 -2
- package/dist/components/calcite-shell-panel/customElement.js +11 -5
- package/dist/components/calcite-slider/customElement.d.ts +3 -4
- package/dist/components/calcite-slider/customElement.js +12 -22
- package/dist/components/calcite-sort-handle/customElement.d.ts +4 -4
- package/dist/components/calcite-sort-handle/customElement.js +44 -17
- package/dist/components/calcite-sortable-list/customElement.d.ts +1 -1
- package/dist/components/calcite-sortable-list/customElement.js +4 -4
- package/dist/components/calcite-split-button/customElement.d.ts +8 -8
- package/dist/components/calcite-stepper/customElement.d.ts +2 -2
- package/dist/components/calcite-stepper/customElement.js +30 -43
- package/dist/components/calcite-stepper-item/customElement.d.ts +1 -1
- package/dist/components/calcite-stepper-item/customElement.js +3 -9
- package/dist/components/calcite-swatch/customElement.d.ts +1 -1
- package/dist/components/calcite-swatch-group/customElement.js +1 -1
- package/dist/components/calcite-switch/customElement.d.ts +4 -4
- package/dist/components/calcite-switch/customElement.js +9 -8
- package/dist/components/calcite-tab/customElement.d.ts +1 -1
- package/dist/components/calcite-tab/customElement.js +2 -2
- package/dist/components/calcite-tab-nav/customElement.js +4 -2
- package/dist/components/calcite-tab-title/customElement.js +6 -4
- package/dist/components/calcite-table/customElement.js +1 -1
- package/dist/components/calcite-table-cell/customElement.d.ts +2 -2
- package/dist/components/calcite-table-cell/customElement.js +3 -2
- package/dist/components/calcite-table-header/customElement.d.ts +2 -2
- package/dist/components/calcite-table-row/customElement.d.ts +1 -1
- package/dist/components/calcite-tabs/customElement.js +1 -1
- package/dist/components/calcite-text-area/customElement.d.ts +13 -14
- package/dist/components/calcite-text-area/customElement.js +32 -37
- package/dist/components/calcite-tile/customElement.d.ts +1 -1
- package/dist/components/calcite-time-picker/customElement.d.ts +1 -1
- package/dist/components/calcite-time-picker/customElement.js +5 -4
- package/dist/components/calcite-tooltip/customElement.d.ts +15 -2
- package/dist/components/calcite-tooltip/customElement.js +27 -315
- package/dist/components/calcite-tree/customElement.js +1 -1
- package/dist/components/calcite-tree-item/customElement.js +5 -4
- package/dist/controllers/useSortable.d.ts +7 -0
- package/dist/docs/api.json +1 -1
- package/dist/docs/docs.json +1 -1
- package/dist/docs/supported-browsers.json +1 -1
- package/dist/docs/translations.json +1 -1
- package/dist/docs/vscode.css-custom-data.json +1 -1
- package/dist/docs/vscode.html-custom-data.json +1 -1
- package/dist/docs/web-types.json +1 -1
- package/dist/loader.js +25 -25
- package/dist/types/lumina.d.ts +6 -6
- package/dist/types/preact.d.ts +6 -6
- package/dist/types/react.d.ts +6 -6
- package/dist/types/stencil.d.ts +6 -6
- package/package.json +14 -13
- package/dist/cdn/256EMMKX.js +0 -2
- package/dist/cdn/2ZJ5ADD2.js +0 -2
- package/dist/cdn/37APBABQ.js +0 -2
- package/dist/cdn/3OIE2RR5.js +0 -2
- package/dist/cdn/3TCEXRVB.js +0 -2
- package/dist/cdn/43T3HPVW.js +0 -2
- package/dist/cdn/4ET37OQN.js +0 -2
- package/dist/cdn/4SJVPWEI.js +0 -2
- package/dist/cdn/6NGWODBG.js +0 -2
- package/dist/cdn/7CLOFSLV.js +0 -2
- package/dist/cdn/7CZHE7FZ.js +0 -2
- package/dist/cdn/7KCC74EE.js +0 -2
- package/dist/cdn/7WPF3NTF.js +0 -2
- package/dist/cdn/CPDXUV3S.js +0 -2
- package/dist/cdn/EIFNZZAD.js +0 -2
- package/dist/cdn/F7SGO63N.js +0 -2
- package/dist/cdn/FAOX7WLQ.js +0 -2
- package/dist/cdn/FCNCDBSI.js +0 -2
- package/dist/cdn/FDGUUC3D.js +0 -2
- package/dist/cdn/FRI4RPRX.js +0 -2
- package/dist/cdn/G6R56WT6.js +0 -2
- package/dist/cdn/GAUJK4Z7.js +0 -2
- package/dist/cdn/GDTRICJF.js +0 -2
- package/dist/cdn/GFZYTB3O.js +0 -2
- package/dist/cdn/GW7IPUQS.js +0 -2
- package/dist/cdn/HBVQ77SB.js +0 -2
- package/dist/cdn/HD23H6LX.js +0 -2
- package/dist/cdn/HVBNJRAQ.js +0 -2
- package/dist/cdn/I6CQ5UW5.js +0 -2
- package/dist/cdn/ILES2J66.js +0 -2
- package/dist/cdn/IR6Z2XSF.js +0 -2
- package/dist/cdn/IUAHSZQ6.js +0 -2
- package/dist/cdn/JKLX623E.js +0 -2
- package/dist/cdn/JLB2FYLL.js +0 -2
- package/dist/cdn/JRCEHRYP.js +0 -2
- package/dist/cdn/KNDQJ2XX.js +0 -2
- package/dist/cdn/L6F7C3O7.js +0 -2
- package/dist/cdn/LIZ5IMMJ.js +0 -2
- package/dist/cdn/LR57FDVO.js +0 -2
- package/dist/cdn/LRL6N22U.js +0 -2
- package/dist/cdn/LYKD5N65.js +0 -2
- package/dist/cdn/MASQZEFU.js +0 -2
- package/dist/cdn/MAXAPKJ5.js +0 -2
- package/dist/cdn/MQPFYNQR.js +0 -2
- package/dist/cdn/MUGKSK5F.js +0 -2
- package/dist/cdn/N6QRZM7N.js +0 -2
- package/dist/cdn/NQEVKT6K.js +0 -2
- package/dist/cdn/OS7NHPEF.js +0 -2
- package/dist/cdn/P7RXOG72.js +0 -2
- package/dist/cdn/P7U46JDU.js +0 -2
- package/dist/cdn/PBMFDSRI.js +0 -2
- package/dist/cdn/PS64W4X6.js +0 -2
- package/dist/cdn/Q52SIZ3L.js +0 -2
- package/dist/cdn/Q7WYXKFZ.js +0 -2
- package/dist/cdn/R3EE76WN.js +0 -2
- package/dist/cdn/R6YSSNOG.js +0 -2
- package/dist/cdn/RSCA2AM5.js +0 -2
- package/dist/cdn/S22OVJTO.js +0 -3
- package/dist/cdn/SBPWZDAB.js +0 -2
- package/dist/cdn/SFEXJ2YW.js +0 -2
- package/dist/cdn/SXVCUXNL.js +0 -2
- package/dist/cdn/TPXLAPIE.js +0 -2
- package/dist/cdn/TSZAQNPK.js +0 -2
- package/dist/cdn/U6LKEFFT.js +0 -2
- package/dist/cdn/UAADJQTQ.js +0 -2
- package/dist/cdn/ULBA6IRN.js +0 -2
- package/dist/cdn/UOIMVKXE.js +0 -2
- package/dist/cdn/V4KATS7H.js +0 -2
- package/dist/cdn/WAC3IAWB.js +0 -2
- package/dist/cdn/WJXZ7BPV.js +0 -2
- package/dist/cdn/XSSG2WBN.js +0 -2
- package/dist/cdn/YHGC7HRA.js +0 -2
- package/dist/cdn/YOYLPMEA.js +0 -2
- package/dist/cdn/YUJ33VWR.js +0 -2
- package/dist/cdn/Z53AVC5H.js +0 -2
- package/dist/cdn/ZQLGBHLZ.js +0 -2
- package/dist/cdn/ZXUITROT.js +0 -2
- package/dist/chunks/form.js +0 -268
- package/dist/chunks/input.js +0 -30
- package/dist/utils/form.d.ts +0 -3
- package/dist/utils/sortableComponent.d.ts +0 -7
|
@@ -2,12 +2,10 @@
|
|
|
2
2
|
import { c as customElement } from "../../chunks/runtime.js";
|
|
3
3
|
import { keyed } from "lit/directives/keyed.js";
|
|
4
4
|
import { css, html } from "lit";
|
|
5
|
-
import { LitElement, createEvent, safeClassMap
|
|
5
|
+
import { LitElement, createEvent, safeClassMap } from "@arcgis/lumina";
|
|
6
6
|
import { createRef, ref } from "lit/directives/ref.js";
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import { t as toAriaBoolean } from "../../chunks/aria.js";
|
|
10
|
-
import { g as guid } from "../../chunks/guid.js";
|
|
7
|
+
import { useDirection } from "@arcgis/lumina/controllers";
|
|
8
|
+
import { e as defaultOffsetDistance, r as reposition, c as connectFloatingUI, a as disconnectFloatingUI, f as filterValidFlipPlacements, h as hideFloatingUI, F as FloatingCSS } from "../../chunks/floating-ui.js";
|
|
11
9
|
import { t as toggleOpenClose } from "../../chunks/openCloseComponent.js";
|
|
12
10
|
import { H as Heading } from "../../chunks/Heading.js";
|
|
13
11
|
import { c as createObserver } from "../../chunks/observers.js";
|
|
@@ -16,100 +14,7 @@ import { u as useT9n } from "../../chunks/useT9n.js";
|
|
|
16
14
|
import { u as useFocusTrap } from "../../chunks/useFocusTrap.js";
|
|
17
15
|
import { u as useSetFocus } from "../../chunks/useSetFocus.js";
|
|
18
16
|
import { u as useTopLayer } from "../../chunks/useTopLayer.js";
|
|
19
|
-
import {
|
|
20
|
-
const clickTolerance = 5;
|
|
21
|
-
function isDrag({
|
|
22
|
-
startX,
|
|
23
|
-
startY,
|
|
24
|
-
endX,
|
|
25
|
-
endY
|
|
26
|
-
}) {
|
|
27
|
-
const distance = Math.hypot(endX - startX, endY - startY);
|
|
28
|
-
return distance > clickTolerance;
|
|
29
|
-
}
|
|
30
|
-
class PopoverManager {
|
|
31
|
-
constructor() {
|
|
32
|
-
this.registeredElements = /* @__PURE__ */ new Map();
|
|
33
|
-
this.registeredElementCount = 0;
|
|
34
|
-
this.queryPopover = (composedPath) => {
|
|
35
|
-
const { registeredElements } = this;
|
|
36
|
-
const registeredElement = composedPath.find((pathEl) => registeredElements.has(pathEl));
|
|
37
|
-
return registeredElements.get(registeredElement);
|
|
38
|
-
};
|
|
39
|
-
this.togglePopovers = (event) => {
|
|
40
|
-
const composedPath = event.composedPath();
|
|
41
|
-
const togglePopover = this.queryPopover(composedPath);
|
|
42
|
-
if (togglePopover && !togglePopover.triggerDisabled) {
|
|
43
|
-
togglePopover.open = !togglePopover.open;
|
|
44
|
-
}
|
|
45
|
-
Array.from(this.registeredElements.values()).filter(
|
|
46
|
-
(popover) => popover !== togglePopover && popover.autoClose && popover.open && !composedPath.includes(popover)
|
|
47
|
-
).forEach((popover) => popover.open = false);
|
|
48
|
-
};
|
|
49
|
-
this.keyDownHandler = (event) => {
|
|
50
|
-
if (event.defaultPrevented) {
|
|
51
|
-
return;
|
|
52
|
-
}
|
|
53
|
-
if (event.key === "Escape") {
|
|
54
|
-
this.closeAllPopovers();
|
|
55
|
-
} else if (isActivationKey(event.key)) {
|
|
56
|
-
this.togglePopovers(event);
|
|
57
|
-
}
|
|
58
|
-
};
|
|
59
|
-
this.pointerDownHandler = (event) => {
|
|
60
|
-
if (event.defaultPrevented || !isPrimaryPointerButton(event)) {
|
|
61
|
-
return;
|
|
62
|
-
}
|
|
63
|
-
const { clientX, clientY } = event;
|
|
64
|
-
this.pointerDownPosition = { x: clientX, y: clientY };
|
|
65
|
-
};
|
|
66
|
-
this.clickHandler = (event) => {
|
|
67
|
-
if (isKeyboardTriggeredClick(event) || event.defaultPrevented || this.pointerDownPosition && isDrag({
|
|
68
|
-
endY: event.clientY,
|
|
69
|
-
endX: event.clientX,
|
|
70
|
-
startY: this.pointerDownPosition.y,
|
|
71
|
-
startX: this.pointerDownPosition.x
|
|
72
|
-
})) {
|
|
73
|
-
return;
|
|
74
|
-
}
|
|
75
|
-
this.pointerDownPosition = void 0;
|
|
76
|
-
this.togglePopovers(event);
|
|
77
|
-
};
|
|
78
|
-
}
|
|
79
|
-
// --------------------------------------------------------------------------
|
|
80
|
-
//
|
|
81
|
-
// Public Methods
|
|
82
|
-
//
|
|
83
|
-
// --------------------------------------------------------------------------
|
|
84
|
-
registerElement(referenceEl, popover) {
|
|
85
|
-
this.registeredElementCount++;
|
|
86
|
-
this.registeredElements.set(referenceEl, popover);
|
|
87
|
-
if (this.registeredElementCount === 1) {
|
|
88
|
-
this.addListeners();
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
unregisterElement(referenceEl) {
|
|
92
|
-
if (this.registeredElements.delete(referenceEl)) {
|
|
93
|
-
this.registeredElementCount--;
|
|
94
|
-
}
|
|
95
|
-
if (this.registeredElementCount === 0) {
|
|
96
|
-
this.removeListeners();
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
closeAllPopovers() {
|
|
100
|
-
Array.from(this.registeredElements.values()).forEach((popover) => popover.open = false);
|
|
101
|
-
}
|
|
102
|
-
addListeners() {
|
|
103
|
-
window.addEventListener("pointerdown", this.pointerDownHandler);
|
|
104
|
-
window.addEventListener("click", this.clickHandler);
|
|
105
|
-
window.addEventListener("keydown", this.keyDownHandler);
|
|
106
|
-
}
|
|
107
|
-
removeListeners() {
|
|
108
|
-
window.removeEventListener("pointerdown", this.pointerDownHandler);
|
|
109
|
-
window.removeEventListener("click", this.clickHandler);
|
|
110
|
-
window.removeEventListener("keydown", this.keyDownHandler);
|
|
111
|
-
}
|
|
112
|
-
}
|
|
17
|
+
import { u as useReferenceElement, r as referenceElementManager } from "../../chunks/manager.js";
|
|
113
18
|
const CSS = {
|
|
114
19
|
positionContainer: "position-container",
|
|
115
20
|
container: "container",
|
|
@@ -122,13 +27,14 @@ const CSS = {
|
|
|
122
27
|
heading: "heading"
|
|
123
28
|
};
|
|
124
29
|
const defaultPopoverPlacement = "auto";
|
|
125
|
-
const ARIA_CONTROLS = "aria-controls";
|
|
126
|
-
const ARIA_EXPANDED = "aria-expanded";
|
|
127
30
|
const styles = css`:host{display:contents}:host([top-layer-disabled]){--calcite-floating-ui-z-index: var(--calcite-z-index-popup)}.position-container{inline-size:max-content;display:none;max-inline-size:100vw;max-block-size:100vh;inset-block-start:0;left:0;z-index:var(--calcite-floating-ui-z-index)}@starting-style{.position-container{opacity:0;inset-block-start:0;left:0}}.position-container{max-inline-size:var(--calcite-popover-max-size-x, 100vw)}.position-container[popover]{padding:0;margin:0;border:none;background-color:transparent;overflow:visible;display:none}.position-container:popover-open{display:block}.position-container .calcite-floating-ui-anim{position:relative;transition-duration:var(--calcite-floating-ui-transition);transition-property:inset-block-start,left,opacity,display;transition-behavior:allow-discrete;opacity:0;box-shadow:0 0 16px #00000029;z-index:var(--calcite-z-index);border-radius:.25rem}.position-container[data-placement^=bottom] .calcite-floating-ui-anim{inset-block-start:-5px}.position-container[data-placement^=top] .calcite-floating-ui-anim{inset-block-start:5px}.position-container[data-placement^=left] .calcite-floating-ui-anim{left:5px}.position-container[data-placement^=right] .calcite-floating-ui-anim{left:-5px}.position-container[data-placement] .calcite-floating-ui-anim--active{opacity:1;inset-block-start:0;left:0}@starting-style{.position-container[data-placement] .calcite-floating-ui-anim--active{opacity:0}}.calcite-floating-ui-arrow{pointer-events:none;position:absolute;z-index:calc(var(--calcite-z-index) * -1);fill:var(--calcite-color-foreground-1)}.calcite-floating-ui-arrow__stroke{stroke:var(--calcite-color-border-3)}:host([scale=s]) .heading{padding:.5rem .75rem;font-size:var(--calcite-font-size-relative-base);line-height:var(--calcite-font-line-height-relative-snug)}:host(:is([scale=s],[scale=m])){--calcite-internal-popover-close-spacing: var(--calcite-spacing-xs)}:host([scale=m]) .heading{padding:.75rem 1rem;font-size:var(--calcite-font-size-relative-md);line-height:var(--calcite-font-line-height-relative-snug)}:host([scale=l]){--calcite-internal-popover-close-spacing: var(--calcite-spacing-sm)}:host([scale=l]) .heading{padding:1rem 1.25rem;font-size:var(--calcite-font-size-relative-lg);line-height:var(--calcite-font-line-height-relative-snug)}.position-container .calcite-floating-ui-anim{border-width:1px;border-style:solid;background-color:var(--calcite-popover-background-color, var(--calcite-color-foreground-1));border-color:var(--calcite-popover-border-color, var(--calcite-color-border-3));border-radius:var(--calcite-popover-corner-radius, var(--calcite-corner-radius-round))}.calcite-floating-ui-arrow{fill:var(--calcite-popover-background-color, var(--calcite-color-foreground-1))}.calcite-floating-ui-arrow__stroke{stroke:var(--calcite-popover-border-color, var(--calcite-color-border-3))}.header{display:flex;flex:1 1 auto;align-items:stretch;justify-content:flex-start;border-width:0px;border-bottom-width:1px;border-style:solid;border-block-end-color:var(--calcite-popover-border-color, var(--calcite-color-border-3))}.heading{margin:0;display:block;flex:1 1 auto;align-self:center;white-space:normal;font-weight:var(--calcite-font-weight-medium);word-wrap:break-word;word-break:break-word;color:var(--calcite-popover-text-color, var(--calcite-color-text-1))}.header-container{position:relative;display:flex;height:100%;flex-direction:row;flex-wrap:nowrap;border-radius:.25rem;color:var(--calcite-popover-text-color, var(--calcite-color-text-1))}.header-container.has-header{flex-direction:column}.content{display:flex;height:100%;width:100%;flex-direction:column;flex-wrap:nowrap;align-self:center;word-wrap:break-word;word-break:break-word}.close-button{margin:auto;margin-inline-end:var(--calcite-internal-popover-close-spacing)}.close-button-container{display:flex;flex:0 0 auto}::slotted(calcite-panel),::slotted(calcite-flow){height:100%}:host([hidden]){display:none}[hidden]{display:none}`;
|
|
128
|
-
const manager =
|
|
31
|
+
const manager = referenceElementManager({ click: true });
|
|
129
32
|
class Popover extends LitElement {
|
|
130
33
|
constructor() {
|
|
131
34
|
super(...arguments);
|
|
35
|
+
this.referenceElementType = "click";
|
|
36
|
+
this.referenceElementController = useReferenceElement({ manager })(this);
|
|
37
|
+
this.direction = useDirection();
|
|
132
38
|
this.focusTrap = useFocusTrap({
|
|
133
39
|
triggerProp: "open",
|
|
134
40
|
focusTrapOptions: {
|
|
@@ -142,8 +48,6 @@ class Popover extends LitElement {
|
|
|
142
48
|
}
|
|
143
49
|
}
|
|
144
50
|
})(this);
|
|
145
|
-
this.guid = `calcite-popover-${guid()}`;
|
|
146
|
-
this.hasLoaded = false;
|
|
147
51
|
this.mutationObserver = createObserver("mutation", () => this.focusTrap.updateContainerElements());
|
|
148
52
|
this.transitionProp = "opacity";
|
|
149
53
|
this.transitionRef = createRef();
|
|
@@ -181,6 +85,7 @@ class Popover extends LitElement {
|
|
|
181
85
|
async reposition(delayed = false) {
|
|
182
86
|
const { referenceEl, placement, overlayPositioning, flipDisabled, filteredFlipPlacements, offsetDistance, offsetSkidding, arrowEl, floatingEl } = this;
|
|
183
87
|
return reposition(this, {
|
|
88
|
+
direction: this.direction,
|
|
184
89
|
floatingEl,
|
|
185
90
|
referenceEl,
|
|
186
91
|
overlayPositioning,
|
|
@@ -204,7 +109,6 @@ class Popover extends LitElement {
|
|
|
204
109
|
super.connectedCallback();
|
|
205
110
|
this.mutationObserver?.observe(this.el, { childList: true, subtree: true });
|
|
206
111
|
this.setFilteredPlacements();
|
|
207
|
-
requestAnimationFrame(() => this.setUpReferenceElement(this.hasLoaded));
|
|
208
112
|
}
|
|
209
113
|
willUpdate(changes) {
|
|
210
114
|
if (changes.has("flipPlacements")) {
|
|
@@ -216,23 +120,18 @@ class Popover extends LitElement {
|
|
|
216
120
|
if (changes.has("offsetDistance") && (this.hasUpdated || this.offsetDistance !== defaultOffsetDistance) || changes.has("offsetSkidding") && (this.hasUpdated || this.offsetSkidding !== 0) || changes.has("overlayPositioning") && (this.hasUpdated || this.overlayPositioning !== "absolute") || changes.has("placement") && (this.hasUpdated || this.placement !== defaultPopoverPlacement)) {
|
|
217
121
|
this.reposition(true);
|
|
218
122
|
}
|
|
219
|
-
if (changes.has("referenceElement")) {
|
|
220
|
-
this.
|
|
221
|
-
if (!this.referenceElement && this.open) {
|
|
222
|
-
this.topLayer.hide();
|
|
223
|
-
}
|
|
123
|
+
if (changes.has("referenceElement") && !this.referenceElement && this.open) {
|
|
124
|
+
this.topLayer.hide();
|
|
224
125
|
}
|
|
225
126
|
}
|
|
226
|
-
|
|
227
|
-
if (
|
|
228
|
-
this
|
|
127
|
+
updated(changes) {
|
|
128
|
+
if (changes.has("referenceEl")) {
|
|
129
|
+
connectFloatingUI(this);
|
|
229
130
|
}
|
|
230
|
-
this.hasLoaded = true;
|
|
231
131
|
}
|
|
232
132
|
disconnectedCallback() {
|
|
233
133
|
super.disconnectedCallback();
|
|
234
134
|
this.mutationObserver?.disconnect();
|
|
235
|
-
this.removeReferences();
|
|
236
135
|
disconnectFloatingUI(this);
|
|
237
136
|
}
|
|
238
137
|
flipPlacementsHandler() {
|
|
@@ -242,73 +141,14 @@ class Popover extends LitElement {
|
|
|
242
141
|
openHandler() {
|
|
243
142
|
toggleOpenClose(this);
|
|
244
143
|
this.reposition(true);
|
|
245
|
-
this.setExpandedAttr();
|
|
246
|
-
}
|
|
247
|
-
referenceElementHandler() {
|
|
248
|
-
this.setUpReferenceElement();
|
|
249
|
-
this.reposition(true);
|
|
250
144
|
}
|
|
251
145
|
setFloatingEl(el) {
|
|
252
146
|
this.floatingEl = el;
|
|
253
|
-
if (el) {
|
|
254
|
-
requestAnimationFrame(() => this.setUpReferenceElement());
|
|
255
|
-
}
|
|
256
147
|
}
|
|
257
148
|
setFilteredPlacements() {
|
|
258
149
|
const { el, flipPlacements } = this;
|
|
259
150
|
this.filteredFlipPlacements = flipPlacements ? filterValidFlipPlacements(flipPlacements, el) : null;
|
|
260
151
|
}
|
|
261
|
-
setUpReferenceElement(warn = true) {
|
|
262
|
-
this.removeReferences();
|
|
263
|
-
this.referenceEl = this.getReferenceElement();
|
|
264
|
-
connectFloatingUI(this);
|
|
265
|
-
const { el, referenceElement, referenceEl } = this;
|
|
266
|
-
if (warn && referenceElement && !referenceEl) {
|
|
267
|
-
console.warn(`${el.tagName}: reference-element id "${referenceElement}" was not found.`, {
|
|
268
|
-
el
|
|
269
|
-
});
|
|
270
|
-
}
|
|
271
|
-
this.addReferences();
|
|
272
|
-
}
|
|
273
|
-
getId() {
|
|
274
|
-
return this.el.id || this.guid;
|
|
275
|
-
}
|
|
276
|
-
setExpandedAttr() {
|
|
277
|
-
const { referenceEl, open } = this;
|
|
278
|
-
if (!referenceEl) {
|
|
279
|
-
return;
|
|
280
|
-
}
|
|
281
|
-
if ("setAttribute" in referenceEl) {
|
|
282
|
-
referenceEl.setAttribute(ARIA_EXPANDED, toAriaBoolean(open));
|
|
283
|
-
}
|
|
284
|
-
}
|
|
285
|
-
addReferences() {
|
|
286
|
-
const { referenceEl } = this;
|
|
287
|
-
if (!referenceEl) {
|
|
288
|
-
return;
|
|
289
|
-
}
|
|
290
|
-
const id = this.getId();
|
|
291
|
-
if ("setAttribute" in referenceEl) {
|
|
292
|
-
referenceEl.setAttribute(ARIA_CONTROLS, id);
|
|
293
|
-
}
|
|
294
|
-
manager.registerElement(referenceEl, this.el);
|
|
295
|
-
this.setExpandedAttr();
|
|
296
|
-
}
|
|
297
|
-
removeReferences() {
|
|
298
|
-
const { referenceEl } = this;
|
|
299
|
-
if (!referenceEl) {
|
|
300
|
-
return;
|
|
301
|
-
}
|
|
302
|
-
if ("removeAttribute" in referenceEl) {
|
|
303
|
-
referenceEl.removeAttribute(ARIA_CONTROLS);
|
|
304
|
-
referenceEl.removeAttribute(ARIA_EXPANDED);
|
|
305
|
-
}
|
|
306
|
-
manager.unregisterElement(referenceEl);
|
|
307
|
-
}
|
|
308
|
-
getReferenceElement() {
|
|
309
|
-
const { referenceElement, el } = this;
|
|
310
|
-
return (typeof referenceElement === "string" ? queryElementRoots(el, { id: referenceElement }) : referenceElement) || null;
|
|
311
|
-
}
|
|
312
152
|
hide() {
|
|
313
153
|
this.open = false;
|
|
314
154
|
}
|
|
@@ -350,7 +190,6 @@ class Popover extends LitElement {
|
|
|
350
190
|
this.el.inert = hidden;
|
|
351
191
|
this.el.ariaLabel = label;
|
|
352
192
|
this.el.ariaLive = "polite";
|
|
353
|
-
setAttribute(this.el, "id", this.getId());
|
|
354
193
|
this.el.role = "dialog";
|
|
355
194
|
return html`<div class=${safeClassMap(CSS.positionContainer)} popover=manual ${ref(this.setFloatingEl)}><div class=${safeClassMap({
|
|
356
195
|
[CSS.container]: true,
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { C as CSS_UTILITY, c as customElement } from "../../chunks/runtime.js";
|
|
3
3
|
import { css, html } from "lit";
|
|
4
4
|
import { LitElement, safeClassMap, safeStyleMap } from "@arcgis/lumina";
|
|
5
|
-
import {
|
|
5
|
+
import { useDirection } from "@arcgis/lumina/controllers";
|
|
6
6
|
const styles = css`:host{position:relative;display:block;inline-size:100%}.track,.bar{position:absolute;inset-block-start:0px;block-size:2px}.track{z-index:var(--calcite-z-index);inline-size:100%;overflow:hidden;background-color:var(--calcite-progress-background-color, var(--calcite-color-border-3))}.bar{z-index:var(--calcite-z-index);background-color:var(--calcite-progress-fill-color, var(--calcite-color-brand))}@media(forced-colors:active){.track{background-color:highlightText}.bar{background-color:linkText}}.indeterminate{inline-size:20%;animation:looping-progress-bar-ani calc(var(--calcite-internal-animation-timing-medium) / var(--calcite-internal-duration-factor) * 11 / var(--calcite-internal-duration-factor)) linear infinite}.indeterminate.calcite--rtl{animation-name:looping-progress-bar-ani-rtl}.reversed{animation-direction:reverse}.text{padding-inline:0px;padding-block:1rem 0px;text-align:center;font-size:var(--calcite-font-size-relative-sm);line-height:var(--calcite-font-line-height-sm);font-weight:var(--calcite-font-weight-medium);color:var(--calcite-progress-text-color, var(--calcite-color-text-2))}@keyframes looping-progress-bar-ani{0%{transform:translate3d(-100%,0,0)}50%{inline-size:40%}to{transform:translate3d(600%,0,0)}}@keyframes looping-progress-bar-ani-rtl{0%{transform:translate3d(100%,0,0)}50%{inline-size:40%}to{transform:translate3d(-600%,0,0)}}:host([hidden]){display:none}[hidden]{display:none}`;
|
|
7
7
|
const CSS = {
|
|
8
8
|
track: "track",
|
|
@@ -12,6 +12,7 @@ const CSS = {
|
|
|
12
12
|
class Progress extends LitElement {
|
|
13
13
|
constructor() {
|
|
14
14
|
super(...arguments);
|
|
15
|
+
this.direction = useDirection();
|
|
15
16
|
this.reversed = false;
|
|
16
17
|
this.type = "determinate";
|
|
17
18
|
this.value = 0;
|
|
@@ -25,7 +26,7 @@ class Progress extends LitElement {
|
|
|
25
26
|
render() {
|
|
26
27
|
const isDeterminate = this.type === "determinate";
|
|
27
28
|
const barStyles = isDeterminate ? { width: `${this.value}%` } : {};
|
|
28
|
-
const dir =
|
|
29
|
+
const dir = this.direction;
|
|
29
30
|
return html`<div .ariaLabel=${this.label || this.text} .ariaValueMax=${isDeterminate ? "100" : void 0} .ariaValueMin=${isDeterminate ? "0" : void 0} .ariaValueNow=${isDeterminate ? this.value : void 0} role=progressbar><div class=${safeClassMap(CSS.track)}><div class=${safeClassMap({
|
|
30
31
|
[CSS.bar]: true,
|
|
31
32
|
indeterminate: this.type === "indeterminate",
|
|
@@ -54,7 +54,7 @@ export abstract class RadioButton extends LitElement {
|
|
|
54
54
|
* Sets focus on the component.
|
|
55
55
|
*
|
|
56
56
|
* @param options - When specified an optional object customizes the component's focusing process. When `preventScroll` is `true`, scrolling will not occur on the component.
|
|
57
|
-
* @
|
|
57
|
+
* @see [MDN - focus(options)](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus#options)
|
|
58
58
|
*/
|
|
59
59
|
setFocus(options?: FocusOptions): Promise<void>;
|
|
60
60
|
/**
|
|
@@ -1,15 +1,183 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
2
|
import { c as customElement } from "../../chunks/runtime.js";
|
|
3
|
-
import { css, nothing
|
|
3
|
+
import { html, isServer, css, nothing } from "lit";
|
|
4
4
|
import { LitElement, createEvent, safeClassMap } from "@arcgis/lumina";
|
|
5
5
|
import { createRef, ref } from "lit/directives/ref.js";
|
|
6
|
+
import { useDirection } from "@arcgis/lumina/controllers";
|
|
6
7
|
import { g as getRoundRobinIndex } from "../../chunks/array.js";
|
|
7
|
-
import {
|
|
8
|
-
import { c as connectForm, d as disconnectForm, H as HiddenFormInputSlot } from "../../chunks/form.js";
|
|
8
|
+
import { q as queryElementRoots, c as closestElementCrossShadowBoundary } from "../../chunks/dom.js";
|
|
9
9
|
import { c as connectLabel, d as disconnectLabel, g as getLabelText } from "../../chunks/label.js";
|
|
10
10
|
import { I as InternalLabel } from "../../chunks/InternalLabel.js";
|
|
11
11
|
import { u as useSetFocus } from "../../chunks/useSetFocus.js";
|
|
12
12
|
import { u as useInteractive } from "../../chunks/useInteractive.js";
|
|
13
|
+
const hiddenFormInputSlotName = "hidden-form-input";
|
|
14
|
+
function isCheckable(component) {
|
|
15
|
+
return "checked" in component;
|
|
16
|
+
}
|
|
17
|
+
const onFormResetMap = /* @__PURE__ */ new WeakMap();
|
|
18
|
+
const formComponentSet = /* @__PURE__ */ new WeakSet();
|
|
19
|
+
function hasRegisteredFormComponentParent(form, formComponentEl) {
|
|
20
|
+
const hasParentComponentWithFormIdSet = closestElementCrossShadowBoundary(formComponentEl.parentElement, "[form]");
|
|
21
|
+
if (hasParentComponentWithFormIdSet) {
|
|
22
|
+
return true;
|
|
23
|
+
}
|
|
24
|
+
const formComponentRegisterEventName = "calciteInternalFormComponentRegister";
|
|
25
|
+
let hasRegisteredFormComponentParent2 = false;
|
|
26
|
+
form.addEventListener(formComponentRegisterEventName, (event) => {
|
|
27
|
+
hasRegisteredFormComponentParent2 = event.composedPath().some((element) => formComponentSet.has(element));
|
|
28
|
+
event.stopPropagation();
|
|
29
|
+
}, { once: true });
|
|
30
|
+
formComponentEl.dispatchEvent(new CustomEvent(formComponentRegisterEventName, {
|
|
31
|
+
bubbles: true,
|
|
32
|
+
composed: true
|
|
33
|
+
}));
|
|
34
|
+
return hasRegisteredFormComponentParent2;
|
|
35
|
+
}
|
|
36
|
+
function getValidationComponent(el) {
|
|
37
|
+
if (el.nodeName === "CALCITE-RADIO-BUTTON") {
|
|
38
|
+
return closestElementCrossShadowBoundary(el, "calcite-radio-button-group");
|
|
39
|
+
}
|
|
40
|
+
return el;
|
|
41
|
+
}
|
|
42
|
+
function connectForm(component) {
|
|
43
|
+
const { el, value } = component;
|
|
44
|
+
const associatedForm = findAssociatedForm(component);
|
|
45
|
+
if (!associatedForm || hasRegisteredFormComponentParent(associatedForm, el)) {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
component.formEl = associatedForm;
|
|
49
|
+
component.defaultValue = value;
|
|
50
|
+
if (isCheckable(component)) {
|
|
51
|
+
component.defaultChecked = component.checked;
|
|
52
|
+
}
|
|
53
|
+
const boundOnFormReset = onFormReset.bind(component);
|
|
54
|
+
associatedForm.addEventListener("reset", boundOnFormReset);
|
|
55
|
+
onFormResetMap.set(component.el, boundOnFormReset);
|
|
56
|
+
formComponentSet.add(el);
|
|
57
|
+
}
|
|
58
|
+
function findAssociatedForm(component) {
|
|
59
|
+
const { el, form } = component;
|
|
60
|
+
return form ? queryElementRoots(el, { id: form }) : closestElementCrossShadowBoundary(el, "form");
|
|
61
|
+
}
|
|
62
|
+
function onFormReset() {
|
|
63
|
+
if ("status" in this) {
|
|
64
|
+
this.status = "idle";
|
|
65
|
+
}
|
|
66
|
+
if ("validationIcon" in this) {
|
|
67
|
+
this.validationIcon = false;
|
|
68
|
+
}
|
|
69
|
+
if ("validationMessage" in this) {
|
|
70
|
+
this.validationMessage = "";
|
|
71
|
+
}
|
|
72
|
+
if (isCheckable(this)) {
|
|
73
|
+
this.checked = this.defaultChecked;
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
this.value = this.defaultValue;
|
|
77
|
+
this.onFormReset?.();
|
|
78
|
+
}
|
|
79
|
+
function disconnectForm(component) {
|
|
80
|
+
const { el, formEl } = component;
|
|
81
|
+
if (!formEl) {
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
const boundOnFormReset = onFormResetMap.get(el);
|
|
85
|
+
formEl.removeEventListener("reset", boundOnFormReset);
|
|
86
|
+
onFormResetMap.delete(el);
|
|
87
|
+
component.formEl = null;
|
|
88
|
+
formComponentSet.delete(el);
|
|
89
|
+
}
|
|
90
|
+
const internalHiddenInputInputEvent = "calciteInternalHiddenInputInput";
|
|
91
|
+
const hiddenInputInputHandler = (event) => {
|
|
92
|
+
event.target.dispatchEvent(new CustomEvent(internalHiddenInputInputEvent, { bubbles: true }));
|
|
93
|
+
};
|
|
94
|
+
const removeHiddenInputChangeEventListener = (input) => input.removeEventListener("input", hiddenInputInputHandler);
|
|
95
|
+
function syncHiddenFormInput(component) {
|
|
96
|
+
const { el, formEl, name, value } = component;
|
|
97
|
+
const { ownerDocument } = el;
|
|
98
|
+
if (isServer) {
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
const inputs = el.querySelectorAll(`input[slot="${hiddenFormInputSlotName}"]`);
|
|
102
|
+
if (!formEl || !name) {
|
|
103
|
+
inputs.forEach((input) => {
|
|
104
|
+
removeHiddenInputChangeEventListener(input);
|
|
105
|
+
input.remove();
|
|
106
|
+
});
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
const values = Array.isArray(value) ? value : [value];
|
|
110
|
+
const extra = [];
|
|
111
|
+
const seen = /* @__PURE__ */ new Set();
|
|
112
|
+
inputs.forEach((input) => {
|
|
113
|
+
const valueMatch = values.find((val) => (
|
|
114
|
+
/* intentional non-strict equality check */
|
|
115
|
+
val == input.value
|
|
116
|
+
));
|
|
117
|
+
if (valueMatch != null) {
|
|
118
|
+
seen.add(valueMatch);
|
|
119
|
+
defaultSyncHiddenFormInput(component, input, valueMatch);
|
|
120
|
+
} else {
|
|
121
|
+
extra.push(input);
|
|
122
|
+
}
|
|
123
|
+
});
|
|
124
|
+
let docFrag;
|
|
125
|
+
values.forEach((value2) => {
|
|
126
|
+
if (seen.has(value2)) {
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
let input = extra.pop();
|
|
130
|
+
if (!input) {
|
|
131
|
+
input = ownerDocument.createElement("input");
|
|
132
|
+
input.ariaHidden = "true";
|
|
133
|
+
input.slot = hiddenFormInputSlotName;
|
|
134
|
+
}
|
|
135
|
+
if (!docFrag) {
|
|
136
|
+
docFrag = ownerDocument.createDocumentFragment();
|
|
137
|
+
}
|
|
138
|
+
docFrag.append(input);
|
|
139
|
+
input.addEventListener("input", hiddenInputInputHandler);
|
|
140
|
+
defaultSyncHiddenFormInput(component, input, value2);
|
|
141
|
+
});
|
|
142
|
+
if (docFrag) {
|
|
143
|
+
el.append(docFrag);
|
|
144
|
+
}
|
|
145
|
+
extra.forEach((input) => {
|
|
146
|
+
removeHiddenInputChangeEventListener(input);
|
|
147
|
+
input.remove();
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
function defaultSyncHiddenFormInput(component, input, value) {
|
|
151
|
+
const { defaultValue, disabled, form, name, required } = component;
|
|
152
|
+
input.defaultValue = defaultValue;
|
|
153
|
+
input.disabled = disabled;
|
|
154
|
+
input.name = name;
|
|
155
|
+
input.required = required;
|
|
156
|
+
input.tabIndex = -1;
|
|
157
|
+
if (form) {
|
|
158
|
+
input.setAttribute("form", form);
|
|
159
|
+
} else {
|
|
160
|
+
input.removeAttribute("form");
|
|
161
|
+
}
|
|
162
|
+
if (isCheckable(component)) {
|
|
163
|
+
input.checked = component.checked;
|
|
164
|
+
input.defaultChecked = component.defaultChecked;
|
|
165
|
+
input.value = component.checked ? value || "on" : "";
|
|
166
|
+
} else {
|
|
167
|
+
input.value = value || "";
|
|
168
|
+
}
|
|
169
|
+
component.syncHiddenFormInput?.(input);
|
|
170
|
+
const validationComponent = getValidationComponent(component.el);
|
|
171
|
+
if (validationComponent && "validity" in validationComponent) {
|
|
172
|
+
for (const key in { ...input?.validity }) {
|
|
173
|
+
validationComponent.validity[key] = input.validity[key];
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
const HiddenFormInputSlot = ({ component }) => {
|
|
178
|
+
syncHiddenFormInput(component);
|
|
179
|
+
return html`<slot name=${hiddenFormInputSlotName}></slot>`;
|
|
180
|
+
};
|
|
13
181
|
const CSS = {
|
|
14
182
|
container: "container",
|
|
15
183
|
radio: "radio"
|
|
@@ -19,6 +187,7 @@ class RadioButton extends LitElement {
|
|
|
19
187
|
constructor() {
|
|
20
188
|
super();
|
|
21
189
|
this.containerRef = createRef();
|
|
190
|
+
this.direction = useDirection();
|
|
22
191
|
this.focusSetter = useSetFocus()(this);
|
|
23
192
|
this.interactiveContainer = useInteractive(this);
|
|
24
193
|
this.checked = false;
|
|
@@ -196,7 +365,6 @@ class RadioButton extends LitElement {
|
|
|
196
365
|
handleKeyDown(event) {
|
|
197
366
|
const keys = ["ArrowLeft", "ArrowUp", "ArrowRight", "ArrowDown", " "];
|
|
198
367
|
const { key } = event;
|
|
199
|
-
const { el } = this;
|
|
200
368
|
if (keys.indexOf(key) === -1) {
|
|
201
369
|
return;
|
|
202
370
|
}
|
|
@@ -206,7 +374,7 @@ class RadioButton extends LitElement {
|
|
|
206
374
|
return;
|
|
207
375
|
}
|
|
208
376
|
let adjustedKey = key;
|
|
209
|
-
if (
|
|
377
|
+
if (this.direction === "rtl") {
|
|
210
378
|
if (key === "ArrowRight") {
|
|
211
379
|
adjustedKey = "ArrowLeft";
|
|
212
380
|
}
|
|
@@ -62,7 +62,7 @@ export abstract class RadioButtonGroup extends LitElement {
|
|
|
62
62
|
* Sets focus on the fist focusable `calcite-radio-button` element in the component.
|
|
63
63
|
*
|
|
64
64
|
* @param options - When specified an optional object customizes the component's focusing process. When `preventScroll` is `true`, scrolling will not occur on the component.
|
|
65
|
-
* @
|
|
65
|
+
* @see [MDN - focus(options)](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus#options)
|
|
66
66
|
*/
|
|
67
67
|
setFocus(options?: FocusOptions): Promise<void>;
|
|
68
68
|
/** Fires when the component has changed. */
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
/// <reference path="../../index.d.ts" />
|
|
2
2
|
import type { PublicLitElement as LitElement } from "@arcgis/lumina";
|
|
3
|
-
import type { MutableValidityState } from "../../utils/form.js";
|
|
4
3
|
import type { Scale, Status } from "../interfaces.js";
|
|
5
4
|
import type { IconName } from "../calcite-icon/interfaces.js";
|
|
6
5
|
|
|
@@ -72,16 +71,16 @@ export abstract class Rating extends LitElement {
|
|
|
72
71
|
/**
|
|
73
72
|
* The component's current validation state.
|
|
74
73
|
*
|
|
75
|
-
* @
|
|
74
|
+
* @see [MDN - ValidityState](https://developer.mozilla.org/en-US/docs/Web/API/ValidityState)
|
|
76
75
|
*/
|
|
77
|
-
get validity():
|
|
76
|
+
get validity(): ValidityState;
|
|
78
77
|
/** The component's value. */
|
|
79
78
|
accessor value: number;
|
|
80
79
|
/**
|
|
81
80
|
* Sets focus on the component.
|
|
82
81
|
*
|
|
83
82
|
* @param options - When specified an optional object customizes the component's focusing process. When `preventScroll` is `true`, scrolling will not occur on the component.
|
|
84
|
-
* @
|
|
83
|
+
* @see [MDN - focus(options)](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus#options)
|
|
85
84
|
*/
|
|
86
85
|
setFocus(options?: FocusOptions): Promise<void>;
|
|
87
86
|
/** Fires when the component's value changes. */
|
|
@@ -3,7 +3,6 @@ import { c as customElement } from "../../chunks/runtime.js";
|
|
|
3
3
|
import { live } from "lit/directives/live.js";
|
|
4
4
|
import { html, css } from "lit";
|
|
5
5
|
import { safeClassMap, LitElement, createEvent, stringOrBoolean, nothing, safeStyleMap } from "@arcgis/lumina";
|
|
6
|
-
import { c as connectForm, d as disconnectForm, H as HiddenFormInputSlot } from "../../chunks/form.js";
|
|
7
6
|
import { g as guid } from "../../chunks/guid.js";
|
|
8
7
|
import { c as connectLabel, d as disconnectLabel, g as getLabelText } from "../../chunks/label.js";
|
|
9
8
|
import { I as InternalLabel } from "../../chunks/InternalLabel.js";
|
|
@@ -11,6 +10,7 @@ import { V as Validation } from "../../chunks/Validation.js";
|
|
|
11
10
|
import { u as useT9n } from "../../chunks/useT9n.js";
|
|
12
11
|
import { u as useSetFocus } from "../../chunks/useSetFocus.js";
|
|
13
12
|
import { u as useInteractive } from "../../chunks/useInteractive.js";
|
|
13
|
+
import { u as useForm } from "../../chunks/useForm.js";
|
|
14
14
|
const StarIcon = ({ full, scale, partial }) => html`<calcite-icon class=${safeClassMap(partial ? void 0 : "icon")} .icon=${full ? "star-f" : "star"} .scale=${scale}></calcite-icon>`;
|
|
15
15
|
const CSS = {
|
|
16
16
|
fieldSet: "fieldset",
|
|
@@ -31,6 +31,12 @@ class Rating extends LitElement {
|
|
|
31
31
|
constructor() {
|
|
32
32
|
super();
|
|
33
33
|
this.emit = false;
|
|
34
|
+
this.formSupport = useForm({
|
|
35
|
+
inputType: "number",
|
|
36
|
+
getValue: () => {
|
|
37
|
+
return this.value === 0 ? "" : this.value;
|
|
38
|
+
}
|
|
39
|
+
})(this);
|
|
34
40
|
this.guid = IDS.host(guid());
|
|
35
41
|
this.isKeyboardInteraction = true;
|
|
36
42
|
this.labelElements = [];
|
|
@@ -45,26 +51,16 @@ class Rating extends LitElement {
|
|
|
45
51
|
this.scale = "m";
|
|
46
52
|
this.showChip = false;
|
|
47
53
|
this.status = "idle";
|
|
48
|
-
this.validity = {
|
|
49
|
-
valid: false,
|
|
50
|
-
badInput: false,
|
|
51
|
-
customError: false,
|
|
52
|
-
patternMismatch: false,
|
|
53
|
-
rangeOverflow: false,
|
|
54
|
-
rangeUnderflow: false,
|
|
55
|
-
stepMismatch: false,
|
|
56
|
-
tooLong: false,
|
|
57
|
-
tooShort: false,
|
|
58
|
-
typeMismatch: false,
|
|
59
|
-
valueMissing: false
|
|
60
|
-
};
|
|
61
54
|
this.calciteRatingChange = createEvent({ cancelable: false });
|
|
62
55
|
this.listen("keydown", this.handleHostKeyDown);
|
|
63
56
|
this.listen("pointerout", this.handleRatingPointerOut);
|
|
64
57
|
this.listen("pointerover", this.handleRatingPointerOver);
|
|
65
58
|
}
|
|
66
59
|
static {
|
|
67
|
-
this.properties = { hoverValue: [16, {}, { state: true }], average: [11, {}, { reflect: true, type: Number }], count: [11, {}, { reflect: true, type: Number }], disabled: [7, {}, { reflect: true, type: Boolean }], form: [3, {}, { reflect: true }], labelText: 1, messageOverrides: [0, {}, { attribute: false }], name: [3, {}, { reflect: true }], readOnly: [7, {}, { reflect: true, type: Boolean }], required: [7, {}, { reflect: true, type: Boolean }], scale: [3, {}, { reflect: true }], showChip: [7, {}, { reflect: true, type: Boolean }], status: [3, {}, { reflect: true }], validationIcon: [3, { converter: stringOrBoolean, type: String }, { reflect: true }], validationMessage: 1, validity: [
|
|
60
|
+
this.properties = { hoverValue: [16, {}, { state: true }], average: [11, {}, { reflect: true, type: Number }], count: [11, {}, { reflect: true, type: Number }], disabled: [7, {}, { reflect: true, type: Boolean }], form: [3, {}, { reflect: true }], labelText: 1, messageOverrides: [0, {}, { attribute: false }], name: [3, {}, { reflect: true }], readOnly: [7, {}, { reflect: true, type: Boolean }], required: [7, {}, { reflect: true, type: Boolean }], scale: [3, {}, { reflect: true }], showChip: [7, {}, { reflect: true, type: Boolean }], status: [3, {}, { reflect: true }], validationIcon: [3, { converter: stringOrBoolean, type: String }, { reflect: true }], validationMessage: 1, validity: [32, {}, { readOnly: true, attribute: false }], value: [11, {}, { reflect: true, type: Number }] };
|
|
61
|
+
}
|
|
62
|
+
static {
|
|
63
|
+
this.formAssociated = true;
|
|
68
64
|
}
|
|
69
65
|
static {
|
|
70
66
|
this.styles = styles;
|
|
@@ -87,7 +83,6 @@ class Rating extends LitElement {
|
|
|
87
83
|
connectedCallback() {
|
|
88
84
|
super.connectedCallback();
|
|
89
85
|
connectLabel(this);
|
|
90
|
-
connectForm(this);
|
|
91
86
|
}
|
|
92
87
|
async load() {
|
|
93
88
|
this.requestUpdate("value");
|
|
@@ -122,7 +117,6 @@ class Rating extends LitElement {
|
|
|
122
117
|
disconnectedCallback() {
|
|
123
118
|
super.disconnectedCallback();
|
|
124
119
|
disconnectLabel(this);
|
|
125
|
-
disconnectForm(this);
|
|
126
120
|
}
|
|
127
121
|
handleValueUpdate(newValue) {
|
|
128
122
|
this.hoverValue = newValue;
|
|
@@ -233,7 +227,7 @@ class Rating extends LitElement {
|
|
|
233
227
|
average,
|
|
234
228
|
partial
|
|
235
229
|
})} data-value=${value ?? nothing} for=${id ?? nothing} @click=${this.handleLabelClick} @focus=${this.handleLabelFocus} @keydown=${this.handleLabelKeyDown} @pointerdown=${this.handleLabelPointerDown} @pointerover=${this.handleLabelPointerOver} tabindex=${tabIndex ?? nothing}><input aria-errormessage=${IDS.validationMessage} .ariaInvalid=${this.status === "invalid"} .ariaLabel=${getLabelText(this)} .ariaRequired=${this.required} .checked=${checked} class=${safeClassMap(CSS.visuallyHidden)} .disabled=${this.disabled || this.readOnly} id=${id ?? nothing} name=${this.guid ?? nothing} @change=${this.handleInputChange} tabindex=-1 type=radio .value=${live(value ?? "")}>${StarIcon({ full: selected || average || hovered, scale: this.scale })}${partial && html`<div class=${safeClassMap(CSS.fraction)} style=${safeStyleMap({ width: `${fraction * 100}%` })}>${StarIcon({ full: true, partial: true, scale: this.scale })}</div>` || ""}<span class=${safeClassMap(CSS.visuallyHidden)}>${this.messages.stars.replace("{num}", `${value}`)}</span></label>`;
|
|
236
|
-
})}${(this.count || this.average) && this.showChip ? html`<calcite-chip .label=${countString} .scale=${this.scale} .value=${countString}>${!!this.average && html`<span class=${safeClassMap(CSS.numberAverage)}>${this.average.toString()}</span>` || ""}${!!this.count && html`<span class=${safeClassMap(CSS.numberCount)}>(${countString})</span>` || ""}</calcite-chip>` : null}</fieldset>${
|
|
230
|
+
})}${(this.count || this.average) && this.showChip ? html`<calcite-chip .label=${countString} .scale=${this.scale} .value=${countString}>${!!this.average && html`<span class=${safeClassMap(CSS.numberAverage)}>${this.average.toString()}</span>` || ""}${!!this.count && html`<span class=${safeClassMap(CSS.numberCount)}>(${countString})</span>` || ""}</calcite-chip>` : null}</fieldset>${this.validationMessage && this.status === "invalid" ? Validation({ icon: this.validationIcon, id: IDS.validationMessage, message: this.validationMessage, scale: this.scale, status: this.status }) : null}</span>` });
|
|
237
231
|
}
|
|
238
232
|
}
|
|
239
233
|
customElement("calcite-rating", Rating);
|
|
@@ -4,7 +4,7 @@ import { css, html } from "lit";
|
|
|
4
4
|
import { LitElement, safeClassMap } from "@arcgis/lumina";
|
|
5
5
|
import { createRef, ref } from "lit/directives/ref.js";
|
|
6
6
|
import { c as createObserver } from "../../chunks/observers.js";
|
|
7
|
-
import {
|
|
7
|
+
import { m as slotChangeHasContent } from "../../chunks/dom.js";
|
|
8
8
|
import { u as useT9n } from "../../chunks/useT9n.js";
|
|
9
9
|
const CSS = {
|
|
10
10
|
scrim: "scrim",
|