@esri/calcite-components 1.1.0-next.2 → 1.1.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/dist/calcite/assets/handle/t9n/index.d.ts +3 -0
- package/dist/calcite/assets/handle/t9n/messages.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_ar.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_bg.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_bs.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_ca.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_cs.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_da.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_de.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_el.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_en.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_es.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_et.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_fi.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_fr.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_he.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_hr.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_hu.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_id.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_it.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_ja.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_ko.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_lt.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_lv.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_nl.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_no.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_pl.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_pt-BR.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_pt-PT.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_ro.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_ru.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_sk.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_sl.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_sr.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_sv.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_th.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_tr.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_uk.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_vi.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_zh-CN.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_zh-HK.json +3 -0
- package/dist/calcite/assets/handle/t9n/messages_zh-TW.json +3 -0
- package/dist/calcite/assets/icon/analysisOverlay16.json +1 -0
- package/dist/calcite/assets/icon/analysisOverlay24.json +1 -0
- package/dist/calcite/assets/icon/analysisOverlay32.json +1 -0
- package/dist/calcite/assets/icon/coordinateSystem16.json +1 -0
- package/dist/calcite/assets/icon/coordinateSystem24.json +1 -0
- package/dist/calcite/assets/icon/coordinateSystem32.json +1 -0
- package/dist/calcite/assets/icon/graphAxis16.json +1 -0
- package/dist/calcite/assets/icon/graphAxis24.json +1 -0
- package/dist/calcite/assets/icon/graphAxis32.json +1 -0
- package/dist/calcite/assets/icon/graphGuides16.json +1 -0
- package/dist/calcite/assets/icon/graphGuides24.json +1 -0
- package/dist/calcite/assets/icon/graphGuides32.json +1 -0
- package/dist/calcite/assets/icon/graphLineSeries16.json +1 -0
- package/dist/calcite/assets/icon/graphLineSeries24.json +1 -0
- package/dist/calcite/assets/icon/graphLineSeries32.json +1 -0
- package/dist/calcite/assets/icon/graphPieSlice16.json +1 -0
- package/dist/calcite/assets/icon/graphPieSlice24.json +1 -0
- package/dist/calcite/assets/icon/graphPieSlice32.json +1 -0
- package/dist/calcite/assets/icon/mediaLayer16.json +1 -0
- package/dist/calcite/assets/icon/mediaLayer24.json +1 -0
- package/dist/calcite/assets/icon/mediaLayer32.json +1 -0
- package/dist/calcite/assets/icon/readOnlyNonEditable16.json +1 -0
- package/dist/calcite/assets/icon/readOnlyNonEditable24.json +1 -0
- package/dist/calcite/assets/icon/readOnlyNonEditable32.json +1 -0
- package/dist/calcite/assets/icon/trapezoidArea16.json +1 -0
- package/dist/calcite/assets/icon/trapezoidArea24.json +1 -0
- package/dist/calcite/assets/icon/trapezoidArea32.json +1 -0
- package/dist/calcite/calcite.css +1 -1
- package/dist/calcite/calcite.esm.js +2 -2
- package/dist/calcite/index.esm.js +1 -1
- package/dist/calcite/p-041d0f9f.entry.js +6 -0
- package/dist/calcite/{p-f4ae848c.js → p-0534cef5.js} +1 -1
- package/dist/calcite/{p-d3614e9b.entry.js → p-0743cc15.entry.js} +2 -2
- package/dist/calcite/p-07cddbf9.entry.js +6 -0
- package/dist/calcite/p-0824c673.entry.js +6 -0
- package/dist/calcite/p-09b4dbc1.entry.js +6 -0
- package/dist/calcite/p-0a7542f8.entry.js +6 -0
- package/dist/calcite/p-0df568c3.entry.js +6 -0
- package/dist/calcite/{p-d62db6f4.entry.js → p-0edfedfc.entry.js} +2 -2
- package/dist/calcite/p-145b7cdc.js +6 -0
- package/dist/calcite/p-1d322131.entry.js +6 -0
- package/dist/calcite/p-1e3db270.entry.js +6 -0
- package/dist/calcite/{p-25361452.entry.js → p-28ee997e.entry.js} +2 -2
- package/dist/calcite/p-291b75d5.entry.js +6 -0
- package/dist/calcite/p-299618f6.entry.js +6 -0
- package/dist/calcite/p-2afe300d.js +6 -0
- package/dist/calcite/p-31cf383e.js +6 -0
- package/dist/calcite/{p-8061aecd.js → p-32d3d2c6.js} +1 -1
- package/dist/calcite/p-3449e5c5.entry.js +6 -0
- package/dist/calcite/p-3abc3397.entry.js +6 -0
- package/dist/calcite/p-3b712fa3.entry.js +6 -0
- package/dist/calcite/p-3bd84462.js +10 -0
- package/dist/calcite/{p-383ae263.js → p-43215088.js} +2 -2
- package/dist/calcite/p-443e7495.js +6 -0
- package/dist/calcite/{p-ce1ac637.js → p-44e65dab.js} +1 -1
- package/dist/calcite/{p-871dd426.entry.js → p-45aba393.entry.js} +2 -2
- package/dist/calcite/p-4a902f71.entry.js +6 -0
- package/dist/calcite/p-4b8aad63.entry.js +6 -0
- package/dist/calcite/{p-fa92d0fa.entry.js → p-5738ec05.entry.js} +2 -2
- package/dist/calcite/{p-e76ab8cb.entry.js → p-586f2188.entry.js} +2 -2
- package/dist/calcite/p-5e2b13eb.js +6 -0
- package/dist/calcite/{p-2aa07ce3.js → p-5e822482.js} +1 -1
- package/dist/calcite/{p-0f8d9c80.js → p-6293ed16.js} +1 -1
- package/dist/calcite/p-681f5bcd.entry.js +6 -0
- package/dist/calcite/{p-d8f305f9.js → p-6cc03406.js} +1 -1
- package/dist/calcite/p-6ebb0713.entry.js +6 -0
- package/dist/calcite/{p-cc21ee89.js → p-6f9b73aa.js} +1 -1
- package/dist/calcite/p-721d4a15.entry.js +6 -0
- package/dist/calcite/{p-1cc77a48.js → p-72e0a2c6.js} +1 -1
- package/dist/calcite/p-747d2b6e.entry.js +6 -0
- package/dist/calcite/{p-6e558447.js → p-75651de9.js} +2 -2
- package/dist/calcite/p-7aee1b7a.js +6 -0
- package/dist/calcite/p-7beda7c9.entry.js +6 -0
- package/dist/calcite/p-7d37e5a3.entry.js +6 -0
- package/dist/calcite/p-7e570f52.entry.js +6 -0
- package/dist/calcite/{p-09c57eb5.js → p-7f1192e2.js} +2 -2
- package/dist/calcite/{p-a544dc0a.entry.js → p-8190fef7.entry.js} +2 -2
- package/dist/calcite/p-81a8751c.entry.js +6 -0
- package/dist/calcite/{p-45db0321.entry.js → p-88552502.entry.js} +2 -2
- package/dist/calcite/p-8880449d.entry.js +6 -0
- package/dist/calcite/p-8a48ce07.entry.js +6 -0
- package/dist/calcite/p-92c57358.entry.js +6 -0
- package/dist/calcite/p-941bc30e.entry.js +6 -0
- package/dist/calcite/{p-51c09654.js → p-95affd38.js} +1 -1
- package/dist/calcite/p-98c10ed9.entry.js +6 -0
- package/dist/calcite/{p-917b5c3c.js → p-9a811534.js} +2 -2
- package/dist/calcite/p-9b383655.entry.js +6 -0
- package/dist/calcite/p-9e7d290a.entry.js +6 -0
- package/dist/calcite/p-a0699bed.entry.js +6 -0
- package/dist/calcite/{p-7f40d693.js → p-a5d23ef8.js} +2 -2
- package/dist/calcite/p-a82b983d.entry.js +6 -0
- package/dist/calcite/{p-7adcf447.js → p-adef0422.js} +1 -1
- package/dist/calcite/{p-9b8c6bd5.entry.js → p-aea382ce.entry.js} +2 -2
- package/dist/calcite/p-b2fd4072.entry.js +6 -0
- package/dist/calcite/p-b33dc129.js +6 -0
- package/dist/calcite/{p-42a11557.entry.js → p-b3a9a53c.entry.js} +2 -2
- package/dist/calcite/p-b4c2f2ce.js +11 -0
- package/dist/calcite/{p-75936643.js → p-b4f3b351.js} +2 -2
- package/dist/calcite/p-b5a392d6.entry.js +6 -0
- package/dist/calcite/{p-c45ca041.js → p-b90df3dd.js} +1 -1
- package/dist/calcite/p-b9421f54.entry.js +6 -0
- package/dist/calcite/{p-c4b38335.entry.js → p-ba3e198d.entry.js} +2 -2
- package/dist/calcite/{p-63ab7d7a.js → p-bb1240f3.js} +1 -1
- package/dist/calcite/{p-b93df4a3.js → p-c097b143.js} +1 -1
- package/dist/calcite/p-c4d076eb.entry.js +6 -0
- package/dist/calcite/p-cc1203c0.entry.js +6 -0
- package/dist/calcite/{p-e06fda39.js → p-ce6a7f8c.js} +2 -2
- package/dist/calcite/p-d438c49f.entry.js +6 -0
- package/dist/calcite/{p-414f1e94.entry.js → p-d841eb93.entry.js} +2 -2
- package/dist/calcite/{p-8669328f.entry.js → p-de571c36.entry.js} +2 -2
- package/dist/calcite/p-de99d897.entry.js +6 -0
- package/dist/calcite/p-df405411.entry.js +6 -0
- package/dist/calcite/p-e370cd2d.entry.js +6 -0
- package/dist/calcite/p-e4e7c6c0.entry.js +6 -0
- package/dist/calcite/{p-4321c513.entry.js → p-e5e67c4b.entry.js} +2 -2
- package/dist/calcite/p-e683cacc.entry.js +6 -0
- package/dist/calcite/p-eaad3707.entry.js +6 -0
- package/dist/calcite/{p-9375c53f.entry.js → p-f27daa9e.entry.js} +2 -2
- package/dist/calcite/{p-ce9f7164.js → p-f44952aa.js} +2 -2
- package/dist/calcite/{p-abd69d92.js → p-f510244b.js} +1 -1
- package/dist/calcite/p-f91b9012.entry.js +6 -0
- package/dist/calcite/{p-1ca20cfc.js → p-fda34bfd.js} +1 -1
- package/dist/cjs/{ExpandToggle-e64129de.js → ExpandToggle-a335cfb1.js} +8 -6
- package/dist/cjs/{Heading-2fba9a7a.js → Heading-d361823f.js} +2 -2
- package/dist/cjs/{app-globals-c2211671.js → app-globals-a113245f.js} +2 -2
- package/dist/cjs/{array-77e138b0.js → array-2d1e4569.js} +1 -1
- package/dist/cjs/calcite-accordion_2.cjs.entry.js +9 -9
- package/dist/cjs/calcite-action-bar.cjs.entry.js +19 -17
- package/dist/cjs/calcite-action-group.cjs.entry.js +13 -28
- package/dist/cjs/calcite-action-menu.cjs.entry.js +13 -11
- package/dist/cjs/calcite-action-pad.cjs.entry.js +18 -16
- package/dist/cjs/calcite-action.cjs.entry.js +15 -13
- package/dist/cjs/calcite-alert.cjs.entry.js +19 -15
- package/dist/cjs/calcite-avatar.cjs.entry.js +7 -7
- package/dist/cjs/calcite-block_2.cjs.entry.js +14 -14
- package/dist/cjs/calcite-button.cjs.entry.js +17 -15
- package/dist/cjs/calcite-card.cjs.entry.js +11 -11
- package/dist/cjs/calcite-checkbox.cjs.entry.js +22 -17
- package/dist/cjs/calcite-chip.cjs.entry.js +15 -13
- package/dist/cjs/calcite-color-picker_3.cjs.entry.js +27 -19
- package/dist/cjs/calcite-combobox_3.cjs.entry.js +34 -26
- package/dist/cjs/calcite-date-picker_4.cjs.entry.js +23 -34
- package/dist/cjs/calcite-dropdown_3.cjs.entry.js +26 -32
- package/dist/cjs/calcite-fab.cjs.entry.js +12 -10
- package/dist/cjs/calcite-filter.cjs.entry.js +18 -17
- package/dist/cjs/calcite-flow-item.cjs.entry.js +19 -15
- package/dist/cjs/calcite-flow.cjs.entry.js +4 -4
- package/dist/cjs/calcite-graph_2.cjs.entry.js +55 -29
- package/dist/cjs/calcite-handle.cjs.entry.js +41 -11
- package/dist/cjs/calcite-icon.cjs.entry.js +23 -18
- package/dist/cjs/calcite-inline-editable.cjs.entry.js +23 -17
- package/dist/cjs/calcite-input-date-picker.cjs.entry.js +33 -21
- package/dist/cjs/calcite-input-message.cjs.entry.js +6 -6
- package/dist/cjs/calcite-input-number.cjs.entry.js +46 -37
- package/dist/cjs/calcite-input-text.cjs.entry.js +24 -21
- package/dist/cjs/calcite-input-time-picker_2.cjs.entry.js +34 -20
- package/dist/cjs/calcite-input.cjs.entry.js +53 -56
- package/dist/cjs/calcite-label.cjs.entry.js +7 -7
- package/dist/cjs/calcite-link.cjs.entry.js +11 -9
- package/dist/cjs/calcite-list_3.cjs.entry.js +43 -33
- package/dist/cjs/calcite-loader.cjs.entry.js +4 -4
- package/dist/cjs/calcite-modal.cjs.entry.js +45 -21
- package/dist/cjs/calcite-notice.cjs.entry.js +16 -14
- package/dist/cjs/calcite-option_3.cjs.entry.js +16 -14
- package/dist/cjs/calcite-pagination.cjs.entry.js +10 -20
- package/dist/cjs/calcite-panel.cjs.entry.js +24 -18
- package/dist/cjs/calcite-pick-list_3.cjs.entry.js +22 -20
- package/dist/cjs/calcite-popover.cjs.entry.js +25 -19
- package/dist/cjs/calcite-progress.cjs.entry.js +3 -3
- package/dist/cjs/calcite-radio-button-group.cjs.entry.js +4 -4
- package/dist/cjs/calcite-radio-button.cjs.entry.js +22 -17
- package/dist/cjs/calcite-rating.cjs.entry.js +18 -16
- package/dist/cjs/calcite-scrim.cjs.entry.js +10 -10
- package/dist/cjs/calcite-segmented-control_2.cjs.entry.js +11 -11
- package/dist/cjs/calcite-shell_3.cjs.entry.js +20 -16
- package/dist/cjs/calcite-sortable-list.cjs.entry.js +6 -6
- package/dist/cjs/calcite-split-button.cjs.entry.js +4 -21
- package/dist/cjs/calcite-stepper_2.cjs.entry.js +16 -14
- package/dist/cjs/calcite-switch.cjs.entry.js +22 -17
- package/dist/cjs/calcite-tab_4.cjs.entry.js +21 -13
- package/dist/cjs/calcite-tile-select_2.cjs.entry.js +7 -7
- package/dist/cjs/calcite-tile.cjs.entry.js +9 -9
- package/dist/cjs/calcite-tip_3.cjs.entry.js +17 -15
- package/dist/cjs/calcite-tooltip.cjs.entry.js +29 -21
- package/dist/cjs/calcite-tree_2.cjs.entry.js +20 -15
- package/dist/cjs/calcite-value-list_2.cjs.entry.js +32 -22
- package/dist/cjs/calcite.cjs.js +5 -5
- package/dist/cjs/{conditionalSlot-096f7053.js → conditionalSlot-3a4fe2dc.js} +3 -3
- package/dist/cjs/{debounce-2cdcf435.js → debounce-408eb927.js} +1 -1
- package/dist/cjs/{dom-0d96f224.js → dom-553866e5.js} +100 -20
- package/dist/cjs/{filter-b111e6bc.js → filter-501e11ad.js} +2 -2
- package/dist/cjs/{floating-ui-e868382e.js → floating-ui-54f4c5a9.js} +365 -281
- package/dist/cjs/{focusTrapComponent-133aa5a6.js → focusTrapComponent-5bcf753e.js} +21 -26
- package/dist/cjs/{form-454d0da7.js → form-bffda67a.js} +4 -7
- package/dist/cjs/{guid-6b7d0d0a.js → guid-6bebe20b.js} +1 -1
- package/dist/cjs/{index-101ebeb8.js → index-16b54251.js} +251 -2
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/{interactive-ae2b81e5.js → interactive-9a753e3b.js} +1 -1
- package/dist/cjs/{key-1113b650.js → key-b11206cb.js} +1 -1
- package/dist/cjs/{label-4fa0c613.js → label-06c122f9.js} +2 -2
- package/dist/cjs/{loadable-be936384.js → loadable-03215740.js} +1 -1
- package/dist/cjs/loader.cjs.js +5 -5
- package/dist/cjs/{locale-7871bab2.js → locale-8539ef25.js} +62 -14
- package/dist/cjs/{math-91fa6fed.js → math-acfe02f4.js} +3 -2
- package/dist/cjs/{observers-958f20c2.js → observers-ef9e3899.js} +1 -1
- package/dist/cjs/{openCloseComponent-901d3fd9.js → openCloseComponent-ce345b01.js} +2 -2
- package/dist/cjs/{resources-2b9c8f2b.js → resources-305406be.js} +1 -1
- package/dist/cjs/{resources-dc916f0b.js → resources-379e317d.js} +1 -1
- package/dist/cjs/{resources-320ae0e0.js → resources-9f12de5f.js} +1 -1
- package/dist/cjs/{resources-a6a0d47b.js → resources-b829d4a6.js} +11 -7
- package/dist/cjs/{resources-8d67e54c.js → resources-bd729e69.js} +1 -1
- package/dist/cjs/{resources-e219e503.js → resources-d4657a03.js} +1 -1
- package/dist/cjs/{sortable.esm-8f9a6e42.js → sortable.esm-6dea5d6e.js} +1 -1
- package/dist/cjs/{t9n-75897fe6.js → t9n-64e84ec9.js} +3 -3
- package/dist/cjs/{utils-4bf76b74.js → utils-4aac28db.js} +3 -3
- package/dist/cjs/{utils-3251b332.js → utils-6539bbb0.js} +1 -1
- package/dist/cjs/utils-9af7bb5a.js +49 -0
- package/dist/collection/components/accordion/accordion.css +2 -1
- package/dist/collection/components/accordion/accordion.js +1 -1
- package/dist/collection/components/accordion-item/accordion-item.css +2 -1
- package/dist/collection/components/accordion-item/accordion-item.js +1 -1
- package/dist/collection/components/accordion-item/resources.js +1 -1
- package/dist/collection/components/action/action.css +3 -4
- package/dist/collection/components/action/action.js +4 -2
- package/dist/collection/components/action/resources.js +1 -1
- package/dist/collection/components/action-bar/action-bar.css +2 -1
- package/dist/collection/components/action-bar/action-bar.js +4 -2
- package/dist/collection/components/action-bar/resources.js +1 -1
- package/dist/collection/components/action-bar/utils.js +1 -1
- package/dist/collection/components/action-group/action-group.css +2 -1
- package/dist/collection/components/action-group/action-group.js +3 -37
- package/dist/collection/components/action-group/resources.js +1 -1
- package/dist/collection/components/action-menu/action-menu.css +2 -1
- package/dist/collection/components/action-menu/action-menu.js +4 -2
- package/dist/collection/components/action-menu/resources.js +1 -1
- package/dist/collection/components/action-pad/action-pad.css +2 -1
- package/dist/collection/components/action-pad/action-pad.js +4 -2
- package/dist/collection/components/action-pad/resources.js +1 -1
- package/dist/collection/components/alert/alert.css +2 -1
- package/dist/collection/components/alert/alert.js +7 -3
- package/dist/collection/components/alert/resources.js +1 -1
- package/dist/collection/components/avatar/avatar.css +3 -2
- package/dist/collection/components/avatar/avatar.js +1 -1
- package/dist/collection/components/avatar/utils.js +1 -1
- package/dist/collection/components/block/block.css +77 -2
- package/dist/collection/components/block/block.js +1 -1
- package/dist/collection/components/block/resources.js +1 -1
- package/dist/collection/components/block-section/block-section.css +2 -1
- package/dist/collection/components/block-section/block-section.js +1 -1
- package/dist/collection/components/block-section/resources.js +1 -1
- package/dist/collection/components/button/button.css +2 -1
- package/dist/collection/components/button/button.js +4 -2
- package/dist/collection/components/button/resources.js +1 -1
- package/dist/collection/components/card/card.css +2 -1
- package/dist/collection/components/card/card.js +1 -1
- package/dist/collection/components/card/resources.js +1 -1
- package/dist/collection/components/checkbox/checkbox.css +2 -1
- package/dist/collection/components/checkbox/checkbox.js +12 -7
- package/dist/collection/components/chip/chip.css +2 -1
- package/dist/collection/components/chip/chip.js +4 -2
- package/dist/collection/components/chip/resources.js +1 -1
- package/dist/collection/components/color-picker/color-picker.css +2 -1
- package/dist/collection/components/color-picker/color-picker.js +8 -2
- package/dist/collection/components/color-picker/resources.js +1 -1
- package/dist/collection/components/color-picker/utils.js +1 -1
- package/dist/collection/components/color-picker-hex-input/color-picker-hex-input.css +2 -1
- package/dist/collection/components/color-picker-hex-input/color-picker-hex-input.js +4 -2
- package/dist/collection/components/color-picker-hex-input/resources.js +1 -1
- package/dist/collection/components/color-picker-swatch/color-picker-swatch.css +2 -1
- package/dist/collection/components/color-picker-swatch/color-picker-swatch.js +1 -1
- package/dist/collection/components/color-picker-swatch/resources.js +1 -1
- package/dist/collection/components/combobox/combobox.css +2 -1
- package/dist/collection/components/combobox/combobox.js +13 -5
- package/dist/collection/components/combobox/resources.js +1 -1
- package/dist/collection/components/combobox/utils.js +1 -1
- package/dist/collection/components/combobox-item/combobox-item.css +2 -1
- package/dist/collection/components/combobox-item/combobox-item.js +1 -1
- package/dist/collection/components/combobox-item/resources.js +1 -1
- package/dist/collection/components/combobox-item-group/combobox-item-group.css +2 -1
- package/dist/collection/components/combobox-item-group/combobox-item-group.js +1 -1
- package/dist/collection/components/combobox-item-group/resources.js +1 -1
- package/dist/collection/components/date-picker/date-picker.css +2 -1
- package/dist/collection/components/date-picker/date-picker.js +1 -36
- package/dist/collection/components/date-picker/resources.js +1 -1
- package/dist/collection/components/date-picker/utils.js +1 -1
- package/dist/collection/components/date-picker-day/date-picker-day.css +2 -1
- package/dist/collection/components/date-picker-day/date-picker-day.js +1 -1
- package/dist/collection/components/date-picker-month/date-picker-month.css +2 -1
- package/dist/collection/components/date-picker-month/date-picker-month.js +5 -3
- package/dist/collection/components/date-picker-month-header/date-picker-month-header.css +2 -1
- package/dist/collection/components/date-picker-month-header/date-picker-month-header.js +4 -2
- package/dist/collection/components/date-picker-month-header/resources.js +1 -1
- package/dist/collection/components/dropdown/dropdown.css +2 -1
- package/dist/collection/components/dropdown/dropdown.js +9 -34
- package/dist/collection/components/dropdown/resources.js +1 -1
- package/dist/collection/components/dropdown-group/dropdown-group.css +2 -1
- package/dist/collection/components/dropdown-group/dropdown-group.js +1 -1
- package/dist/collection/components/dropdown-group/resources.js +1 -1
- package/dist/collection/components/dropdown-item/dropdown-item.css +2 -1
- package/dist/collection/components/dropdown-item/dropdown-item.js +4 -2
- package/dist/collection/components/dropdown-item/resources.js +1 -1
- package/dist/collection/components/fab/fab.css +2 -1
- package/dist/collection/components/fab/fab.js +5 -3
- package/dist/collection/components/fab/resources.js +1 -1
- package/dist/collection/components/filter/filter.css +2 -1
- package/dist/collection/components/filter/filter.js +5 -4
- package/dist/collection/components/filter/resources.js +1 -1
- package/dist/collection/components/flow/flow.css +2 -1
- package/dist/collection/components/flow/flow.js +1 -1
- package/dist/collection/components/flow/resources.js +1 -1
- package/dist/collection/components/flow-item/flow-item.css +2 -1
- package/dist/collection/components/flow-item/flow-item.js +7 -3
- package/dist/collection/components/flow-item/resources.js +1 -1
- package/dist/collection/components/functional/ExpandToggle.js +4 -2
- package/dist/collection/components/functional/Heading.js +1 -1
- package/dist/collection/components/graph/graph.css +2 -1
- package/dist/collection/components/graph/graph.js +1 -1
- package/dist/collection/components/graph/util.js +1 -1
- package/dist/collection/components/handle/assets/handle/t9n/index.d.ts +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_ar.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_bg.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_bs.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_ca.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_cs.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_da.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_de.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_el.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_en.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_es.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_et.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_fi.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_fr.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_he.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_hr.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_hu.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_id.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_it.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_ja.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_ko.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_lt.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_lv.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_nl.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_no.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_pl.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_pt-BR.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_pt-PT.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_ro.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_ru.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_sk.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_sl.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_sr.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_sv.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_th.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_tr.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_uk.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_vi.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_zh-CN.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_zh-HK.json +3 -0
- package/dist/collection/components/handle/assets/handle/t9n/messages_zh-TW.json +3 -0
- package/dist/collection/components/handle/handle.css +2 -1
- package/dist/collection/components/handle/handle.js +93 -9
- package/dist/collection/components/handle/resources.js +1 -1
- package/dist/collection/components/icon/assets/icon/analysisOverlay16.json +1 -0
- package/dist/collection/components/icon/assets/icon/analysisOverlay24.json +1 -0
- package/dist/collection/components/icon/assets/icon/analysisOverlay32.json +1 -0
- package/dist/collection/components/icon/assets/icon/coordinateSystem16.json +1 -0
- package/dist/collection/components/icon/assets/icon/coordinateSystem24.json +1 -0
- package/dist/collection/components/icon/assets/icon/coordinateSystem32.json +1 -0
- package/dist/collection/components/icon/assets/icon/graphAxis16.json +1 -0
- package/dist/collection/components/icon/assets/icon/graphAxis24.json +1 -0
- package/dist/collection/components/icon/assets/icon/graphAxis32.json +1 -0
- package/dist/collection/components/icon/assets/icon/graphGuides16.json +1 -0
- package/dist/collection/components/icon/assets/icon/graphGuides24.json +1 -0
- package/dist/collection/components/icon/assets/icon/graphGuides32.json +1 -0
- package/dist/collection/components/icon/assets/icon/graphLineSeries16.json +1 -0
- package/dist/collection/components/icon/assets/icon/graphLineSeries24.json +1 -0
- package/dist/collection/components/icon/assets/icon/graphLineSeries32.json +1 -0
- package/dist/collection/components/icon/assets/icon/graphPieSlice16.json +1 -0
- package/dist/collection/components/icon/assets/icon/graphPieSlice24.json +1 -0
- package/dist/collection/components/icon/assets/icon/graphPieSlice32.json +1 -0
- package/dist/collection/components/icon/assets/icon/mediaLayer16.json +1 -0
- package/dist/collection/components/icon/assets/icon/mediaLayer24.json +1 -0
- package/dist/collection/components/icon/assets/icon/mediaLayer32.json +1 -0
- package/dist/collection/components/icon/assets/icon/readOnlyNonEditable16.json +1 -0
- package/dist/collection/components/icon/assets/icon/readOnlyNonEditable24.json +1 -0
- package/dist/collection/components/icon/assets/icon/readOnlyNonEditable32.json +1 -0
- package/dist/collection/components/icon/assets/icon/trapezoidArea16.json +1 -0
- package/dist/collection/components/icon/assets/icon/trapezoidArea24.json +1 -0
- package/dist/collection/components/icon/assets/icon/trapezoidArea32.json +1 -0
- package/dist/collection/components/icon/icon.css +2 -1
- package/dist/collection/components/icon/icon.js +1 -1
- package/dist/collection/components/icon/resources.js +1 -1
- package/dist/collection/components/icon/utils.js +17 -12
- package/dist/collection/components/inline-editable/inline-editable.css +2 -1
- package/dist/collection/components/inline-editable/inline-editable.js +11 -5
- package/dist/collection/components/inline-editable/resources.js +1 -1
- package/dist/collection/components/input/input.css +2 -1
- package/dist/collection/components/input/input.js +41 -44
- package/dist/collection/components/input/resources.js +1 -1
- package/dist/collection/components/input-date-picker/input-date-picker.css +2 -1
- package/dist/collection/components/input-date-picker/input-date-picker.js +17 -5
- package/dist/collection/components/input-date-picker/resources.js +1 -1
- package/dist/collection/components/input-message/input-message.css +3 -2
- package/dist/collection/components/input-message/input-message.js +1 -1
- package/dist/collection/components/input-message/interfaces.js +1 -1
- package/dist/collection/components/input-number/input-number.css +2 -1
- package/dist/collection/components/input-number/input-number.js +34 -25
- package/dist/collection/components/input-number/resources.js +1 -1
- package/dist/collection/components/input-text/input-text.css +2 -1
- package/dist/collection/components/input-text/input-text.js +11 -8
- package/dist/collection/components/input-text/resources.js +1 -1
- package/dist/collection/components/input-time-picker/input-time-picker.css +2 -1
- package/dist/collection/components/input-time-picker/input-time-picker.js +8 -2
- package/dist/collection/components/label/label.css +2 -1
- package/dist/collection/components/label/label.js +1 -1
- package/dist/collection/components/label/resources.js +1 -1
- package/dist/collection/components/link/link.css +2 -1
- package/dist/collection/components/link/link.js +4 -2
- package/dist/collection/components/list/list.css +2 -1
- package/dist/collection/components/list/list.js +20 -18
- package/dist/collection/components/list/resources.js +1 -1
- package/dist/collection/components/list-item/list-item.css +2 -1
- package/dist/collection/components/list-item/list-item.js +13 -5
- package/dist/collection/components/list-item/resources.js +1 -1
- package/dist/collection/components/list-item/utils.js +1 -1
- package/dist/collection/components/list-item-group/list-item-group.css +2 -1
- package/dist/collection/components/list-item-group/list-item-group.js +1 -1
- package/dist/collection/components/list-item-group/resources.js +1 -1
- package/dist/collection/components/loader/loader.css +85 -5
- package/dist/collection/components/loader/loader.js +1 -1
- package/dist/collection/components/modal/modal.css +59 -15
- package/dist/collection/components/modal/modal.js +32 -8
- package/dist/collection/components/modal/resources.js +6 -2
- package/dist/collection/components/notice/notice.css +2 -1
- package/dist/collection/components/notice/notice.js +4 -2
- package/dist/collection/components/notice/resources.js +1 -1
- package/dist/collection/components/option/option.css +2 -1
- package/dist/collection/components/option/option.js +1 -1
- package/dist/collection/components/option-group/option-group.css +2 -1
- package/dist/collection/components/option-group/option-group.js +1 -1
- package/dist/collection/components/pagination/pagination.css +2 -1
- package/dist/collection/components/pagination/pagination.js +1 -27
- package/dist/collection/components/pagination/resources.js +1 -1
- package/dist/collection/components/panel/panel.css +2 -1
- package/dist/collection/components/panel/panel.js +10 -4
- package/dist/collection/components/panel/resources.js +1 -1
- package/dist/collection/components/pick-list/pick-list.css +2 -1
- package/dist/collection/components/pick-list/pick-list.js +1 -1
- package/dist/collection/components/pick-list/resources.js +1 -1
- package/dist/collection/components/pick-list/shared-list-logic.js +1 -1
- package/dist/collection/components/pick-list/shared-list-render.js +6 -2
- package/dist/collection/components/pick-list-group/pick-list-group.css +2 -1
- package/dist/collection/components/pick-list-group/pick-list-group.js +1 -1
- package/dist/collection/components/pick-list-group/resources.js +1 -1
- package/dist/collection/components/pick-list-item/pick-list-item.css +2 -1
- package/dist/collection/components/pick-list-item/pick-list-item.js +4 -2
- package/dist/collection/components/pick-list-item/resources.js +1 -1
- package/dist/collection/components/popover/PopoverManager.js +1 -1
- package/dist/collection/components/popover/popover.css +2 -1
- package/dist/collection/components/popover/popover.js +10 -4
- package/dist/collection/components/popover/resources.js +1 -1
- package/dist/collection/components/progress/progress.css +77 -2
- package/dist/collection/components/progress/progress.js +1 -1
- package/dist/collection/components/radio-button/radio-button.css +2 -1
- package/dist/collection/components/radio-button/radio-button.js +12 -7
- package/dist/collection/components/radio-button/resources.js +1 -1
- package/dist/collection/components/radio-button-group/radio-button-group.css +2 -1
- package/dist/collection/components/radio-button-group/radio-button-group.js +1 -1
- package/dist/collection/components/rating/function/star.js +1 -1
- package/dist/collection/components/rating/rating.css +2 -1
- package/dist/collection/components/rating/rating.js +5 -3
- package/dist/collection/components/resources.js +1 -1
- package/dist/collection/components/scrim/resources.js +1 -1
- package/dist/collection/components/scrim/scrim.css +2 -1
- package/dist/collection/components/scrim/scrim.js +1 -1
- package/dist/collection/components/segmented-control/segmented-control.css +2 -1
- package/dist/collection/components/segmented-control/segmented-control.js +2 -2
- package/dist/collection/components/segmented-control-item/resources.js +1 -1
- package/dist/collection/components/segmented-control-item/segmented-control-item.css +2 -1
- package/dist/collection/components/segmented-control-item/segmented-control-item.js +1 -1
- package/dist/collection/components/select/resources.js +1 -1
- package/dist/collection/components/select/select.css +2 -1
- package/dist/collection/components/select/select.js +5 -3
- package/dist/collection/components/shell/resources.js +1 -1
- package/dist/collection/components/shell/shell.css +2 -1
- package/dist/collection/components/shell/shell.js +1 -1
- package/dist/collection/components/shell-center-row/resources.js +1 -1
- package/dist/collection/components/shell-center-row/shell-center-row.css +2 -1
- package/dist/collection/components/shell-center-row/shell-center-row.js +1 -1
- package/dist/collection/components/shell-panel/resources.js +1 -1
- package/dist/collection/components/shell-panel/shell-panel.css +2 -1
- package/dist/collection/components/shell-panel/shell-panel.js +7 -3
- package/dist/collection/components/slider/resources.js +1 -1
- package/dist/collection/components/slider/slider.css +19 -17
- package/dist/collection/components/slider/slider.js +42 -16
- package/dist/collection/components/sortable-list/resources.js +1 -1
- package/dist/collection/components/sortable-list/sortable-list.css +2 -1
- package/dist/collection/components/sortable-list/sortable-list.js +1 -1
- package/dist/collection/components/split-button/resources.js +1 -1
- package/dist/collection/components/split-button/split-button.css +2 -1
- package/dist/collection/components/split-button/split-button.js +1 -38
- package/dist/collection/components/stepper/stepper.css +2 -1
- package/dist/collection/components/stepper/stepper.js +1 -1
- package/dist/collection/components/stepper-item/stepper-item.css +2 -1
- package/dist/collection/components/stepper-item/stepper-item.js +5 -3
- package/dist/collection/components/switch/switch.css +2 -1
- package/dist/collection/components/switch/switch.js +12 -7
- package/dist/collection/components/tab/tab.css +2 -1
- package/dist/collection/components/tab/tab.js +1 -1
- package/dist/collection/components/tab-nav/tab-nav.css +2 -1
- package/dist/collection/components/tab-nav/tab-nav.js +8 -2
- package/dist/collection/components/tab-title/resources.js +1 -1
- package/dist/collection/components/tab-title/tab-title.css +2 -1
- package/dist/collection/components/tab-title/tab-title.js +4 -2
- package/dist/collection/components/tabs/resources.js +1 -1
- package/dist/collection/components/tabs/tabs.css +2 -1
- package/dist/collection/components/tabs/tabs.js +1 -1
- package/dist/collection/components/tile/resources.js +1 -1
- package/dist/collection/components/tile/tile.css +2 -1
- package/dist/collection/components/tile/tile.js +1 -1
- package/dist/collection/components/tile-select/resources.js +1 -1
- package/dist/collection/components/tile-select/tile-select.css +2 -1
- package/dist/collection/components/tile-select/tile-select.js +1 -1
- package/dist/collection/components/tile-select-group/tile-select-group.css +2 -1
- package/dist/collection/components/tile-select-group/tile-select-group.js +1 -1
- package/dist/collection/components/time-picker/resources.js +1 -1
- package/dist/collection/components/time-picker/time-picker.css +2 -1
- package/dist/collection/components/time-picker/time-picker.js +13 -5
- package/dist/collection/components/tip/resources.js +1 -1
- package/dist/collection/components/tip/tip.css +2 -1
- package/dist/collection/components/tip/tip.js +1 -1
- package/dist/collection/components/tip-group/tip-group.css +2 -1
- package/dist/collection/components/tip-group/tip-group.js +1 -1
- package/dist/collection/components/tip-manager/resources.js +1 -1
- package/dist/collection/components/tip-manager/tip-manager.css +2 -1
- package/dist/collection/components/tip-manager/tip-manager.js +4 -2
- package/dist/collection/components/tooltip/TooltipManager.js +10 -5
- package/dist/collection/components/tooltip/resources.js +1 -1
- package/dist/collection/components/tooltip/tooltip.css +2 -1
- package/dist/collection/components/tooltip/tooltip.js +9 -10
- package/dist/collection/components/tooltip/utils.js +11 -0
- package/dist/collection/components/tree/tree.css +2 -1
- package/dist/collection/components/tree/tree.js +1 -1
- package/dist/collection/components/tree/utils.js +1 -1
- package/dist/collection/components/tree-item/resources.js +3 -2
- package/dist/collection/components/tree-item/tree-item.css +38 -32
- package/dist/collection/components/tree-item/tree-item.js +8 -4
- package/dist/collection/components/value-list/resources.js +1 -1
- package/dist/collection/components/value-list/utils.js +1 -1
- package/dist/collection/components/value-list/value-list.css +2 -1
- package/dist/collection/components/value-list/value-list.js +15 -2
- package/dist/collection/components/value-list-item/interfaces.js +1 -0
- package/dist/collection/components/value-list-item/resources.js +1 -1
- package/dist/collection/components/value-list-item/value-list-item.css +2 -1
- package/dist/collection/components/value-list-item/value-list-item.js +29 -4
- package/dist/collection/utils/array.js +1 -1
- package/dist/collection/utils/conditionalSlot.js +1 -1
- package/dist/collection/utils/config.js +1 -1
- package/dist/collection/utils/date.js +1 -1
- package/dist/collection/utils/dom.js +1 -1
- package/dist/collection/utils/filter.js +1 -1
- package/dist/collection/utils/floating-ui/utils.js +45 -0
- package/dist/collection/utils/floating-ui.js +20 -9
- package/dist/collection/utils/focusTrapComponent.js +1 -1
- package/dist/collection/utils/form.js +2 -5
- package/dist/collection/utils/globalAttributes.js +1 -1
- package/dist/collection/utils/globalScript.js +1 -1
- package/dist/collection/utils/guid.js +1 -1
- package/dist/collection/utils/interactive.js +1 -1
- package/dist/collection/utils/key.js +1 -1
- package/dist/collection/utils/label.js +1 -1
- package/dist/collection/utils/loadable.js +1 -1
- package/dist/collection/utils/locale.js +1 -1
- package/dist/collection/utils/math.js +3 -2
- package/dist/collection/utils/mode.js +1 -1
- package/dist/collection/utils/number.js +58 -11
- package/dist/collection/utils/observers.js +1 -1
- package/dist/collection/utils/openCloseComponent.js +1 -1
- package/dist/collection/utils/resources.js +1 -1
- package/dist/collection/utils/t9n.js +1 -1
- package/dist/collection/utils/time.js +1 -1
- package/dist/components/ExpandToggle.js +4 -2
- package/dist/components/Heading.js +1 -1
- package/dist/components/action-group.js +3 -19
- package/dist/components/action-menu.js +5 -3
- package/dist/components/action.js +5 -3
- package/dist/components/array.js +1 -1
- package/dist/components/button.js +5 -3
- package/dist/components/calcite-accordion-item.js +2 -2
- package/dist/components/calcite-accordion.js +2 -2
- package/dist/components/calcite-action-bar.js +5 -3
- package/dist/components/calcite-action-group.js +1 -1
- package/dist/components/calcite-action-menu.js +1 -1
- package/dist/components/calcite-action-pad.js +5 -3
- package/dist/components/calcite-action.js +1 -1
- package/dist/components/calcite-alert.js +8 -4
- package/dist/components/calcite-avatar.js +2 -2
- package/dist/components/calcite-block-section.js +2 -2
- package/dist/components/calcite-block.js +2 -2
- package/dist/components/calcite-button.js +1 -1
- package/dist/components/calcite-card.js +2 -2
- package/dist/components/calcite-checkbox.js +1 -1
- package/dist/components/calcite-chip.js +1 -1
- package/dist/components/calcite-color-picker-hex-input.js +1 -1
- package/dist/components/calcite-color-picker-swatch.js +1 -1
- package/dist/components/calcite-color-picker.js +9 -3
- package/dist/components/calcite-combobox-item-group.js +2 -2
- package/dist/components/calcite-combobox-item.js +2 -2
- package/dist/components/calcite-combobox.js +14 -6
- package/dist/components/calcite-date-picker-day.js +1 -1
- package/dist/components/calcite-date-picker-month-header.js +1 -1
- package/dist/components/calcite-date-picker-month.js +1 -1
- package/dist/components/calcite-date-picker.js +1 -1
- package/dist/components/calcite-dropdown-group.js +2 -2
- package/dist/components/calcite-dropdown-item.js +5 -3
- package/dist/components/calcite-dropdown.js +1 -1
- package/dist/components/calcite-fab.js +6 -4
- package/dist/components/calcite-filter.js +1 -1
- package/dist/components/calcite-flow-item.js +8 -4
- package/dist/components/calcite-flow.js +2 -2
- package/dist/components/calcite-graph.js +1 -1
- package/dist/components/calcite-handle.js +1 -1
- package/dist/components/calcite-icon.js +1 -1
- package/dist/components/calcite-inline-editable.js +12 -6
- package/dist/components/calcite-input-date-picker.js +18 -6
- package/dist/components/calcite-input-message.js +2 -2
- package/dist/components/calcite-input-number.js +35 -26
- package/dist/components/calcite-input-text.js +12 -9
- package/dist/components/calcite-input-time-picker.js +9 -3
- package/dist/components/calcite-input.js +1 -1
- package/dist/components/calcite-label.js +1 -1
- package/dist/components/calcite-link.js +1 -1
- package/dist/components/calcite-list-item-group.js +2 -2
- package/dist/components/calcite-list-item.js +14 -6
- package/dist/components/calcite-list.js +21 -19
- package/dist/components/calcite-loader.js +1 -1
- package/dist/components/calcite-modal.js +36 -10
- package/dist/components/calcite-notice.js +5 -3
- package/dist/components/calcite-option-group.js +2 -2
- package/dist/components/calcite-option.js +2 -2
- package/dist/components/calcite-pagination.js +2 -13
- package/dist/components/calcite-panel.js +1 -1
- package/dist/components/calcite-pick-list-group.js +2 -2
- package/dist/components/calcite-pick-list-item.js +1 -1
- package/dist/components/calcite-pick-list.js +2 -2
- package/dist/components/calcite-popover.js +1 -1
- package/dist/components/calcite-progress.js +1 -1
- package/dist/components/calcite-radio-button-group.js +2 -2
- package/dist/components/calcite-radio-button.js +13 -8
- package/dist/components/calcite-rating.js +6 -4
- package/dist/components/calcite-scrim.js +1 -1
- package/dist/components/calcite-segmented-control-item.js +2 -2
- package/dist/components/calcite-segmented-control.js +2 -2
- package/dist/components/calcite-select.js +6 -4
- package/dist/components/calcite-shell-center-row.js +2 -2
- package/dist/components/calcite-shell-panel.js +8 -4
- package/dist/components/calcite-shell.js +2 -2
- package/dist/components/calcite-slider.js +43 -17
- package/dist/components/calcite-sortable-list.js +2 -2
- package/dist/components/calcite-split-button.js +3 -21
- package/dist/components/calcite-stepper-item.js +6 -4
- package/dist/components/calcite-stepper.js +2 -2
- package/dist/components/calcite-switch.js +1 -1
- package/dist/components/calcite-tab-nav.js +1 -1
- package/dist/components/calcite-tab-title.js +1 -1
- package/dist/components/calcite-tab.js +1 -1
- package/dist/components/calcite-tabs.js +1 -1
- package/dist/components/calcite-tile-select-group.js +2 -2
- package/dist/components/calcite-tile-select.js +2 -2
- package/dist/components/calcite-tile.js +1 -1
- package/dist/components/calcite-time-picker.js +1 -1
- package/dist/components/calcite-tip-group.js +2 -2
- package/dist/components/calcite-tip-manager.js +5 -3
- package/dist/components/calcite-tip.js +2 -2
- package/dist/components/calcite-tooltip.js +1 -1
- package/dist/components/calcite-tree-item.js +11 -6
- package/dist/components/calcite-tree.js +2 -2
- package/dist/components/calcite-value-list-item.js +8 -5
- package/dist/components/calcite-value-list.js +11 -4
- package/dist/components/checkbox.js +13 -8
- package/dist/components/chip.js +5 -3
- package/dist/components/color-picker-hex-input.js +5 -3
- package/dist/components/color-picker-swatch.js +2 -2
- package/dist/components/conditionalSlot.js +1 -1
- package/dist/components/date-picker-day.js +2 -2
- package/dist/components/date-picker-month-header.js +5 -3
- package/dist/components/date-picker-month.js +6 -4
- package/dist/components/date-picker.js +3 -19
- package/dist/components/date.js +1 -1
- package/dist/components/debounce.js +1 -1
- package/dist/components/dom.js +98 -18
- package/dist/components/dropdown.js +10 -20
- package/dist/components/filter.js +6 -5
- package/dist/components/filter2.js +1 -1
- package/dist/components/floating-ui.js +364 -279
- package/dist/components/focusTrapComponent.js +20 -25
- package/dist/components/form.js +2 -5
- package/dist/components/graph.js +2 -2
- package/dist/components/guid.js +1 -1
- package/dist/components/handle.js +39 -7
- package/dist/components/icon.js +18 -13
- package/dist/components/index.js +1 -1
- package/dist/components/input.js +42 -45
- package/dist/components/interactive.js +1 -1
- package/dist/components/key.js +1 -1
- package/dist/components/label.js +2 -2
- package/dist/components/label2.js +1 -1
- package/dist/components/link.js +5 -3
- package/dist/components/loadable.js +1 -1
- package/dist/components/loader.js +2 -2
- package/dist/components/locale.js +59 -12
- package/dist/components/math.js +3 -2
- package/dist/components/observers.js +1 -1
- package/dist/components/openCloseComponent.js +1 -1
- package/dist/components/panel.js +11 -5
- package/dist/components/pick-list-item.js +5 -3
- package/dist/components/popover.js +11 -5
- package/dist/components/progress.js +2 -2
- package/dist/components/resources.js +1 -1
- package/dist/components/resources2.js +1 -1
- package/dist/components/resources3.js +1 -1
- package/dist/components/scrim.js +2 -2
- package/dist/components/shared-list-render.js +7 -3
- package/dist/components/sortable.esm.js +1 -1
- package/dist/components/switch.js +13 -8
- package/dist/components/t9n.js +1 -1
- package/dist/components/tab-nav.js +9 -3
- package/dist/components/tab-title.js +5 -3
- package/dist/components/tab.js +2 -2
- package/dist/components/tabs.js +2 -2
- package/dist/components/tile.js +2 -2
- package/dist/components/time-picker.js +14 -6
- package/dist/components/tooltip.js +23 -15
- package/dist/components/utils.js +1 -1
- package/dist/components/utils2.js +1 -1
- package/dist/components/utils3.js +1 -1
- package/dist/components/utils4.js +47 -0
- package/dist/esm/{ExpandToggle-414f7b66.js → ExpandToggle-4727adf8.js} +8 -6
- package/dist/esm/{Heading-84086ab0.js → Heading-3bac0cfa.js} +2 -2
- package/dist/esm/{app-globals-b5c8ff3d.js → app-globals-74d44d89.js} +2 -2
- package/dist/esm/{array-bf7de305.js → array-6fd99808.js} +1 -1
- package/dist/esm/calcite-accordion_2.entry.js +9 -9
- package/dist/esm/calcite-action-bar.entry.js +19 -17
- package/dist/esm/calcite-action-group.entry.js +13 -28
- package/dist/esm/calcite-action-menu.entry.js +13 -11
- package/dist/esm/calcite-action-pad.entry.js +18 -16
- package/dist/esm/calcite-action.entry.js +15 -13
- package/dist/esm/calcite-alert.entry.js +19 -15
- package/dist/esm/calcite-avatar.entry.js +7 -7
- package/dist/esm/calcite-block_2.entry.js +14 -14
- package/dist/esm/calcite-button.entry.js +17 -15
- package/dist/esm/calcite-card.entry.js +11 -11
- package/dist/esm/calcite-checkbox.entry.js +22 -17
- package/dist/esm/calcite-chip.entry.js +15 -13
- package/dist/esm/calcite-color-picker_3.entry.js +27 -19
- package/dist/esm/calcite-combobox_3.entry.js +33 -25
- package/dist/esm/calcite-date-picker_4.entry.js +23 -34
- package/dist/esm/calcite-dropdown_3.entry.js +26 -32
- package/dist/esm/calcite-fab.entry.js +12 -10
- package/dist/esm/calcite-filter.entry.js +18 -17
- package/dist/esm/calcite-flow-item.entry.js +19 -15
- package/dist/esm/calcite-flow.entry.js +4 -4
- package/dist/esm/calcite-graph_2.entry.js +55 -29
- package/dist/esm/calcite-handle.entry.js +41 -11
- package/dist/esm/calcite-icon.entry.js +23 -18
- package/dist/esm/calcite-inline-editable.entry.js +23 -17
- package/dist/esm/calcite-input-date-picker.entry.js +33 -21
- package/dist/esm/calcite-input-message.entry.js +6 -6
- package/dist/esm/calcite-input-number.entry.js +46 -37
- package/dist/esm/calcite-input-text.entry.js +24 -21
- package/dist/esm/calcite-input-time-picker_2.entry.js +34 -20
- package/dist/esm/calcite-input.entry.js +53 -56
- package/dist/esm/calcite-label.entry.js +7 -7
- package/dist/esm/calcite-link.entry.js +11 -9
- package/dist/esm/calcite-list_3.entry.js +43 -33
- package/dist/esm/calcite-loader.entry.js +4 -4
- package/dist/esm/calcite-modal.entry.js +45 -21
- package/dist/esm/calcite-notice.entry.js +16 -14
- package/dist/esm/calcite-option_3.entry.js +16 -14
- package/dist/esm/calcite-pagination.entry.js +10 -20
- package/dist/esm/calcite-panel.entry.js +24 -18
- package/dist/esm/calcite-pick-list_3.entry.js +22 -20
- package/dist/esm/calcite-popover.entry.js +25 -19
- package/dist/esm/calcite-progress.entry.js +3 -3
- package/dist/esm/calcite-radio-button-group.entry.js +4 -4
- package/dist/esm/calcite-radio-button.entry.js +22 -17
- package/dist/esm/calcite-rating.entry.js +18 -16
- package/dist/esm/calcite-scrim.entry.js +10 -10
- package/dist/esm/calcite-segmented-control_2.entry.js +11 -11
- package/dist/esm/calcite-shell_3.entry.js +20 -16
- package/dist/esm/calcite-sortable-list.entry.js +6 -6
- package/dist/esm/calcite-split-button.entry.js +4 -21
- package/dist/esm/calcite-stepper_2.entry.js +16 -14
- package/dist/esm/calcite-switch.entry.js +22 -17
- package/dist/esm/calcite-tab_4.entry.js +21 -13
- package/dist/esm/calcite-tile-select_2.entry.js +7 -7
- package/dist/esm/calcite-tile.entry.js +9 -9
- package/dist/esm/calcite-tip_3.entry.js +17 -15
- package/dist/esm/calcite-tooltip.entry.js +29 -21
- package/dist/esm/calcite-tree_2.entry.js +20 -15
- package/dist/esm/calcite-value-list_2.entry.js +32 -22
- package/dist/esm/calcite.js +5 -5
- package/dist/esm/{conditionalSlot-ae0dd61c.js → conditionalSlot-03f34e10.js} +3 -3
- package/dist/esm/{debounce-189d5dea.js → debounce-f893dc12.js} +1 -1
- package/dist/esm/{dom-78b18cb9.js → dom-13d14bf1.js} +100 -20
- package/dist/esm/{filter-e6512b85.js → filter-e9b22c1c.js} +2 -2
- package/dist/esm/{floating-ui-0d6ec2b2.js → floating-ui-1d9078ac.js} +366 -281
- package/dist/esm/{focusTrapComponent-4aa7d5d9.js → focusTrapComponent-d8df0d61.js} +21 -26
- package/dist/esm/{form-e328ec3a.js → form-948b3633.js} +4 -7
- package/dist/esm/{guid-64b3949a.js → guid-7a9e307b.js} +1 -1
- package/dist/esm/{index-9cf36d00.js → index-b8735a76.js} +251 -2
- package/dist/esm/index.js +1 -1
- package/dist/esm/{interactive-d51bcec3.js → interactive-7c601b75.js} +1 -1
- package/dist/esm/{key-a234775a.js → key-4f8ab7a0.js} +1 -1
- package/dist/esm/{label-563cd240.js → label-84c0027e.js} +2 -2
- package/dist/esm/{loadable-5922f388.js → loadable-eacac1b0.js} +1 -1
- package/dist/esm/loader.js +5 -5
- package/dist/esm/{locale-bbb2ebf7.js → locale-e71d40b1.js} +62 -15
- package/dist/esm/{math-02026e26.js → math-bad59c37.js} +3 -2
- package/dist/esm/{observers-839e1444.js → observers-f268ee68.js} +1 -1
- package/dist/esm/{openCloseComponent-98481985.js → openCloseComponent-ec590820.js} +2 -2
- package/dist/esm/{resources-7229c9aa.js → resources-2537ff53.js} +1 -1
- package/dist/esm/{resources-e5970a41.js → resources-455d50da.js} +11 -7
- package/dist/esm/{resources-0e1235ca.js → resources-4c7e12d7.js} +1 -1
- package/dist/esm/{resources-743bbf4e.js → resources-6efb094b.js} +1 -1
- package/dist/esm/{resources-586c9301.js → resources-8032eb01.js} +1 -1
- package/dist/esm/{resources-0d118882.js → resources-8ee51466.js} +1 -1
- package/dist/esm/{sortable.esm-77d6f29b.js → sortable.esm-ad7263e5.js} +1 -1
- package/dist/esm/{t9n-754b0fb8.js → t9n-df463c97.js} +3 -3
- package/dist/esm/{utils-d4d4185c.js → utils-4755b12f.js} +3 -3
- package/dist/esm/utils-9b472a57.js +47 -0
- package/dist/esm/{utils-3599eaa5.js → utils-e9181006.js} +1 -1
- package/dist/extras/docs-json.json +43 -66
- package/dist/extras/vscode-data.json +1 -1
- package/dist/loader/cdn.js +1 -1
- package/dist/loader/index.cjs.js +1 -1
- package/dist/loader/index.es2017.js +1 -1
- package/dist/loader/index.js +1 -1
- package/dist/types/components/action-group/action-group.d.ts +1 -5
- package/dist/types/components/checkbox/checkbox.d.ts +1 -0
- package/dist/types/components/date-picker/date-picker.d.ts +1 -5
- package/dist/types/components/dropdown/dropdown.d.ts +1 -5
- package/dist/types/components/handle/assets/handle/t9n/index.d.ts +3 -0
- package/dist/types/components/handle/handle.d.ts +21 -3
- package/dist/types/components/icon/utils.d.ts +1 -1
- package/dist/types/components/input/input.d.ts +1 -0
- package/dist/types/components/input-number/input-number.d.ts +2 -1
- package/dist/types/components/modal/modal.d.ts +8 -0
- package/dist/types/components/modal/resources.d.ts +5 -1
- package/dist/types/components/pagination/pagination.d.ts +1 -5
- package/dist/types/components/radio-button/radio-button.d.ts +1 -0
- package/dist/types/components/segmented-control/segmented-control.d.ts +1 -1
- package/dist/types/components/split-button/split-button.d.ts +1 -6
- package/dist/types/components/switch/switch.d.ts +1 -0
- package/dist/types/components/tooltip/tooltip.d.ts +0 -1
- package/dist/types/components/tooltip/utils.d.ts +2 -0
- package/dist/types/components/tree-item/resources.d.ts +1 -0
- package/dist/types/components/value-list/value-list.d.ts +2 -0
- package/dist/types/components/value-list-item/interfaces.d.ts +4 -0
- package/dist/types/components/value-list-item/value-list-item.d.ts +6 -0
- package/dist/types/components.d.ts +23 -29
- package/dist/types/preact.d.ts +2 -1
- package/dist/types/utils/floating-ui/utils.d.ts +4 -0
- package/dist/types/utils/number.d.ts +14 -6
- package/hydrate/index.js +1099 -711
- package/package.json +19 -20
- package/readme.md +2 -2
- package/dist/calcite/p-00aaee4e.entry.js +0 -6
- package/dist/calcite/p-028df927.entry.js +0 -6
- package/dist/calcite/p-06b480ca.js +0 -6
- package/dist/calcite/p-085432f2.entry.js +0 -6
- package/dist/calcite/p-0b3db293.entry.js +0 -6
- package/dist/calcite/p-0df64c24.entry.js +0 -6
- package/dist/calcite/p-1a0b1b58.entry.js +0 -6
- package/dist/calcite/p-22876cde.entry.js +0 -6
- package/dist/calcite/p-26ca50af.entry.js +0 -6
- package/dist/calcite/p-371a9b25.js +0 -6
- package/dist/calcite/p-375aa8c5.entry.js +0 -6
- package/dist/calcite/p-3809dc43.entry.js +0 -6
- package/dist/calcite/p-3bf7891d.js +0 -6
- package/dist/calcite/p-3c0e3f7f.js +0 -10
- package/dist/calcite/p-4237e0a1.entry.js +0 -6
- package/dist/calcite/p-4318c033.entry.js +0 -6
- package/dist/calcite/p-5aa021f0.entry.js +0 -6
- package/dist/calcite/p-609edb26.entry.js +0 -6
- package/dist/calcite/p-65e6a718.entry.js +0 -6
- package/dist/calcite/p-698f8148.entry.js +0 -6
- package/dist/calcite/p-6a98931b.entry.js +0 -6
- package/dist/calcite/p-6ea72871.entry.js +0 -6
- package/dist/calcite/p-74301242.entry.js +0 -6
- package/dist/calcite/p-76f9d7e3.entry.js +0 -6
- package/dist/calcite/p-819f44b8.entry.js +0 -6
- package/dist/calcite/p-88b36d52.entry.js +0 -6
- package/dist/calcite/p-89eff9a5.entry.js +0 -6
- package/dist/calcite/p-9182f791.entry.js +0 -6
- package/dist/calcite/p-93262a30.entry.js +0 -6
- package/dist/calcite/p-96aa3e0a.entry.js +0 -6
- package/dist/calcite/p-9b7daa41.entry.js +0 -6
- package/dist/calcite/p-9c2f54a4.js +0 -6
- package/dist/calcite/p-a89528a5.entry.js +0 -6
- package/dist/calcite/p-bcf5419a.entry.js +0 -6
- package/dist/calcite/p-c0571703.entry.js +0 -6
- package/dist/calcite/p-c2e55866.js +0 -6
- package/dist/calcite/p-c41f36fa.entry.js +0 -6
- package/dist/calcite/p-c4ab60b0.js +0 -10
- package/dist/calcite/p-ca009796.entry.js +0 -6
- package/dist/calcite/p-ca8c0e97.entry.js +0 -6
- package/dist/calcite/p-d37321dc.entry.js +0 -6
- package/dist/calcite/p-d7098e62.entry.js +0 -6
- package/dist/calcite/p-d85ede55.entry.js +0 -6
- package/dist/calcite/p-d9461bd7.entry.js +0 -6
- package/dist/calcite/p-dab743a0.entry.js +0 -6
- package/dist/calcite/p-db3067be.js +0 -6
- package/dist/calcite/p-e5e13c12.entry.js +0 -6
- package/dist/calcite/p-ec14b352.entry.js +0 -6
- package/dist/calcite/p-ece7e6e5.entry.js +0 -6
- package/dist/calcite/p-f1ee4f0c.entry.js +0 -6
- package/dist/calcite/p-f8c9e6f5.entry.js +0 -6
- package/dist/calcite/p-f9367f73.entry.js +0 -6
- package/dist/calcite/p-fa867df2.js +0 -6
- package/dist/calcite/p-fda1dd03.entry.js +0 -6
- package/dist/cjs/nonChromiumPlatformUtils-fc704952.js +0 -506
- package/dist/collection/utils/floating-ui/nonChromiumPlatformUtils.js +0 -496
- package/dist/components/nonChromiumPlatformUtils.js +0 -498
- package/dist/esm/nonChromiumPlatformUtils-37df43f5.js +0 -502
- package/dist/types/utils/floating-ui/nonChromiumPlatformUtils.d.ts +0 -15
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
* See https://github.com/Esri/calcite-components/blob/master/LICENSE.md for details.
|
|
4
|
-
* v1.1.0
|
|
4
|
+
* v1.1.0
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
const dom = require('./dom-
|
|
9
|
-
const debounce = require('./debounce-
|
|
10
|
-
|
|
11
|
-
function getSide(placement) {
|
|
12
|
-
return placement.split('-')[0];
|
|
13
|
-
}
|
|
8
|
+
const dom = require('./dom-553866e5.js');
|
|
9
|
+
const debounce = require('./debounce-408eb927.js');
|
|
14
10
|
|
|
15
11
|
function getAlignment(placement) {
|
|
16
12
|
return placement.split('-')[1];
|
|
17
13
|
}
|
|
18
14
|
|
|
19
|
-
function getMainAxisFromPlacement(placement) {
|
|
20
|
-
return ['top', 'bottom'].includes(getSide(placement)) ? 'x' : 'y';
|
|
21
|
-
}
|
|
22
|
-
|
|
23
15
|
function getLengthFromAxis(axis) {
|
|
24
16
|
return axis === 'y' ? 'height' : 'width';
|
|
25
17
|
}
|
|
26
18
|
|
|
19
|
+
function getSide(placement) {
|
|
20
|
+
return placement.split('-')[0];
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
function getMainAxisFromPlacement(placement) {
|
|
24
|
+
return ['top', 'bottom'].includes(getSide(placement)) ? 'x' : 'y';
|
|
25
|
+
}
|
|
26
|
+
|
|
27
27
|
function computeCoordsFromPlacement(_ref, placement, rtl) {
|
|
28
28
|
let {
|
|
29
29
|
reference,
|
|
@@ -202,13 +202,13 @@ function rectToClientRect(rect) {
|
|
|
202
202
|
|
|
203
203
|
/**
|
|
204
204
|
* Resolves with an object of overflow side offsets that determine how much the
|
|
205
|
-
* element is overflowing a given clipping boundary.
|
|
205
|
+
* element is overflowing a given clipping boundary on each side.
|
|
206
206
|
* - positive = overflowing the boundary by that number of pixels
|
|
207
207
|
* - negative = how many pixels left before it will overflow
|
|
208
208
|
* - 0 = lies flush with the boundary
|
|
209
209
|
* @see https://floating-ui.com/docs/detectOverflow
|
|
210
210
|
*/
|
|
211
|
-
async function detectOverflow(
|
|
211
|
+
async function detectOverflow(state, options) {
|
|
212
212
|
var _await$platform$isEle;
|
|
213
213
|
if (options === void 0) {
|
|
214
214
|
options = {};
|
|
@@ -220,7 +220,7 @@ async function detectOverflow(middlewareArguments, options) {
|
|
|
220
220
|
rects,
|
|
221
221
|
elements,
|
|
222
222
|
strategy
|
|
223
|
-
} =
|
|
223
|
+
} = state;
|
|
224
224
|
const {
|
|
225
225
|
boundary = 'clippingAncestors',
|
|
226
226
|
rootBoundary = 'viewport',
|
|
@@ -271,26 +271,26 @@ function within(min$1$1, value, max$1$1) {
|
|
|
271
271
|
}
|
|
272
272
|
|
|
273
273
|
/**
|
|
274
|
-
*
|
|
275
|
-
* to the reference element.
|
|
274
|
+
* Provides data to position an inner element of the floating element so that it
|
|
275
|
+
* appears centered to the reference element.
|
|
276
276
|
* @see https://floating-ui.com/docs/arrow
|
|
277
277
|
*/
|
|
278
278
|
const arrow = options => ({
|
|
279
279
|
name: 'arrow',
|
|
280
280
|
options,
|
|
281
|
-
async fn(
|
|
282
|
-
// Since `element` is required, we don't Partial<> the type
|
|
281
|
+
async fn(state) {
|
|
282
|
+
// Since `element` is required, we don't Partial<> the type.
|
|
283
283
|
const {
|
|
284
284
|
element,
|
|
285
285
|
padding = 0
|
|
286
|
-
} = options
|
|
286
|
+
} = options || {};
|
|
287
287
|
const {
|
|
288
288
|
x,
|
|
289
289
|
y,
|
|
290
290
|
placement,
|
|
291
291
|
rects,
|
|
292
292
|
platform
|
|
293
|
-
} =
|
|
293
|
+
} = state;
|
|
294
294
|
if (element == null) {
|
|
295
295
|
return {};
|
|
296
296
|
}
|
|
@@ -314,7 +314,7 @@ const arrow = options => ({
|
|
|
314
314
|
const centerToReference = endDiff / 2 - startDiff / 2;
|
|
315
315
|
|
|
316
316
|
// Make sure the arrow doesn't overflow the floating element if the center
|
|
317
|
-
// point is outside the floating element's bounds
|
|
317
|
+
// point is outside the floating element's bounds.
|
|
318
318
|
const min = paddingObject[minProp];
|
|
319
319
|
const max = clientSize - arrowDimensions[length] - paddingObject[maxProp];
|
|
320
320
|
const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;
|
|
@@ -336,14 +336,17 @@ const arrow = options => ({
|
|
|
336
336
|
}
|
|
337
337
|
});
|
|
338
338
|
|
|
339
|
-
const
|
|
339
|
+
const sides = ['top', 'right', 'bottom', 'left'];
|
|
340
|
+
const allPlacements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + "-start", side + "-end"), []);
|
|
341
|
+
|
|
342
|
+
const oppositeSideMap = {
|
|
340
343
|
left: 'right',
|
|
341
344
|
right: 'left',
|
|
342
345
|
bottom: 'top',
|
|
343
346
|
top: 'bottom'
|
|
344
347
|
};
|
|
345
348
|
function getOppositePlacement(placement) {
|
|
346
|
-
return placement.replace(/left|right|bottom|top/g,
|
|
349
|
+
return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);
|
|
347
350
|
}
|
|
348
351
|
|
|
349
352
|
function getAlignmentSides(placement, rects, rtl) {
|
|
@@ -363,17 +366,14 @@ function getAlignmentSides(placement, rects, rtl) {
|
|
|
363
366
|
};
|
|
364
367
|
}
|
|
365
368
|
|
|
366
|
-
const
|
|
369
|
+
const oppositeAlignmentMap = {
|
|
367
370
|
start: 'end',
|
|
368
371
|
end: 'start'
|
|
369
372
|
};
|
|
370
373
|
function getOppositeAlignmentPlacement(placement) {
|
|
371
|
-
return placement.replace(/start|end/g,
|
|
374
|
+
return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);
|
|
372
375
|
}
|
|
373
376
|
|
|
374
|
-
const sides = ['top', 'right', 'bottom', 'left'];
|
|
375
|
-
const allPlacements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + "-start", side + "-end"), []);
|
|
376
|
-
|
|
377
377
|
function getPlacementList(alignment, autoAlignment, allowedPlacements) {
|
|
378
378
|
const allowedPlacementsSortedByAlignment = alignment ? [...allowedPlacements.filter(placement => getAlignment(placement) === alignment), ...allowedPlacements.filter(placement => getAlignment(placement) !== alignment)] : allowedPlacements.filter(placement => getSide(placement) === placement);
|
|
379
379
|
return allowedPlacementsSortedByAlignment.filter(placement => {
|
|
@@ -384,7 +384,9 @@ function getPlacementList(alignment, autoAlignment, allowedPlacements) {
|
|
|
384
384
|
});
|
|
385
385
|
}
|
|
386
386
|
/**
|
|
387
|
-
*
|
|
387
|
+
* Optimizes the visibility of the floating element by choosing the placement
|
|
388
|
+
* that has the most space available automatically, without needing to specify a
|
|
389
|
+
* preferred placement. Alternative to `flip`.
|
|
388
390
|
* @see https://floating-ui.com/docs/autoPlacement
|
|
389
391
|
*/
|
|
390
392
|
const autoPlacement = function (options) {
|
|
@@ -394,26 +396,25 @@ const autoPlacement = function (options) {
|
|
|
394
396
|
return {
|
|
395
397
|
name: 'autoPlacement',
|
|
396
398
|
options,
|
|
397
|
-
async fn(
|
|
398
|
-
var _middlewareData$autoP, _middlewareData$autoP2,
|
|
399
|
+
async fn(state) {
|
|
400
|
+
var _middlewareData$autoP, _middlewareData$autoP2, _placementsThatFitOnE;
|
|
399
401
|
const {
|
|
400
|
-
x,
|
|
401
|
-
y,
|
|
402
402
|
rects,
|
|
403
403
|
middlewareData,
|
|
404
404
|
placement,
|
|
405
405
|
platform,
|
|
406
406
|
elements
|
|
407
|
-
} =
|
|
407
|
+
} = state;
|
|
408
408
|
const {
|
|
409
|
+
crossAxis = false,
|
|
409
410
|
alignment,
|
|
410
411
|
allowedPlacements = allPlacements,
|
|
411
412
|
autoAlignment = true,
|
|
412
413
|
...detectOverflowOptions
|
|
413
414
|
} = options;
|
|
414
415
|
const placements = alignment !== undefined || allowedPlacements === allPlacements ? getPlacementList(alignment || null, autoAlignment, allowedPlacements) : allowedPlacements;
|
|
415
|
-
const overflow = await detectOverflow(
|
|
416
|
-
const currentIndex = (_middlewareData$autoP =
|
|
416
|
+
const overflow = await detectOverflow(state, detectOverflowOptions);
|
|
417
|
+
const currentIndex = ((_middlewareData$autoP = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP.index) || 0;
|
|
417
418
|
const currentPlacement = placements[currentIndex];
|
|
418
419
|
if (currentPlacement == null) {
|
|
419
420
|
return {};
|
|
@@ -423,24 +424,22 @@ const autoPlacement = function (options) {
|
|
|
423
424
|
cross
|
|
424
425
|
} = getAlignmentSides(currentPlacement, rects, await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating)));
|
|
425
426
|
|
|
426
|
-
// Make `computeCoords` start from the right place
|
|
427
|
+
// Make `computeCoords` start from the right place.
|
|
427
428
|
if (placement !== currentPlacement) {
|
|
428
429
|
return {
|
|
429
|
-
x,
|
|
430
|
-
y,
|
|
431
430
|
reset: {
|
|
432
431
|
placement: placements[0]
|
|
433
432
|
}
|
|
434
433
|
};
|
|
435
434
|
}
|
|
436
435
|
const currentOverflows = [overflow[getSide(currentPlacement)], overflow[main], overflow[cross]];
|
|
437
|
-
const allOverflows = [...((
|
|
436
|
+
const allOverflows = [...(((_middlewareData$autoP2 = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP2.overflows) || []), {
|
|
438
437
|
placement: currentPlacement,
|
|
439
438
|
overflows: currentOverflows
|
|
440
439
|
}];
|
|
441
440
|
const nextPlacement = placements[currentIndex + 1];
|
|
442
441
|
|
|
443
|
-
// There are more placements to check
|
|
442
|
+
// There are more placements to check.
|
|
444
443
|
if (nextPlacement) {
|
|
445
444
|
return {
|
|
446
445
|
data: {
|
|
@@ -452,14 +451,19 @@ const autoPlacement = function (options) {
|
|
|
452
451
|
}
|
|
453
452
|
};
|
|
454
453
|
}
|
|
455
|
-
const
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
454
|
+
const placementsSortedByMostSpace = allOverflows.map(d => {
|
|
455
|
+
const alignment = getAlignment(d.placement);
|
|
456
|
+
return [d.placement, alignment && crossAxis ?
|
|
457
|
+
// Check along the mainAxis and main crossAxis side.
|
|
458
|
+
d.overflows.slice(0, 2).reduce((acc, v) => acc + v, 0) :
|
|
459
|
+
// Check only the mainAxis.
|
|
460
|
+
d.overflows[0], d.overflows];
|
|
461
|
+
}).sort((a, b) => a[1] - b[1]);
|
|
462
|
+
const placementsThatFitOnEachSide = placementsSortedByMostSpace.filter(d => d[2].slice(0,
|
|
463
|
+
// Aligned placements should not check their opposite crossAxis
|
|
464
|
+
// side.
|
|
465
|
+
getAlignment(d[0]) ? 2 : 3).every(v => v <= 0));
|
|
466
|
+
const resetPlacement = ((_placementsThatFitOnE = placementsThatFitOnEachSide[0]) == null ? void 0 : _placementsThatFitOnE[0]) || placementsSortedByMostSpace[0][0];
|
|
463
467
|
if (resetPlacement !== placement) {
|
|
464
468
|
return {
|
|
465
469
|
data: {
|
|
@@ -481,9 +485,39 @@ function getExpandedPlacements(placement) {
|
|
|
481
485
|
return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];
|
|
482
486
|
}
|
|
483
487
|
|
|
488
|
+
function getSideList(side, isStart, rtl) {
|
|
489
|
+
const lr = ['left', 'right'];
|
|
490
|
+
const rl = ['right', 'left'];
|
|
491
|
+
const tb = ['top', 'bottom'];
|
|
492
|
+
const bt = ['bottom', 'top'];
|
|
493
|
+
switch (side) {
|
|
494
|
+
case 'top':
|
|
495
|
+
case 'bottom':
|
|
496
|
+
if (rtl) return isStart ? rl : lr;
|
|
497
|
+
return isStart ? lr : rl;
|
|
498
|
+
case 'left':
|
|
499
|
+
case 'right':
|
|
500
|
+
return isStart ? tb : bt;
|
|
501
|
+
default:
|
|
502
|
+
return [];
|
|
503
|
+
}
|
|
504
|
+
}
|
|
505
|
+
function getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {
|
|
506
|
+
const alignment = getAlignment(placement);
|
|
507
|
+
let list = getSideList(getSide(placement), direction === 'start', rtl);
|
|
508
|
+
if (alignment) {
|
|
509
|
+
list = list.map(side => side + "-" + alignment);
|
|
510
|
+
if (flipAlignment) {
|
|
511
|
+
list = list.concat(list.map(getOppositeAlignmentPlacement));
|
|
512
|
+
}
|
|
513
|
+
}
|
|
514
|
+
return list;
|
|
515
|
+
}
|
|
516
|
+
|
|
484
517
|
/**
|
|
485
|
-
*
|
|
486
|
-
*
|
|
518
|
+
* Optimizes the visibility of the floating element by flipping the `placement`
|
|
519
|
+
* in order to keep it in view when the preferred placement(s) will overflow the
|
|
520
|
+
* clipping boundary. Alternative to `autoPlacement`.
|
|
487
521
|
* @see https://floating-ui.com/docs/flip
|
|
488
522
|
*/
|
|
489
523
|
const flip = function (options) {
|
|
@@ -493,7 +527,7 @@ const flip = function (options) {
|
|
|
493
527
|
return {
|
|
494
528
|
name: 'flip',
|
|
495
529
|
options,
|
|
496
|
-
async fn(
|
|
530
|
+
async fn(state) {
|
|
497
531
|
var _middlewareData$flip;
|
|
498
532
|
const {
|
|
499
533
|
placement,
|
|
@@ -502,20 +536,25 @@ const flip = function (options) {
|
|
|
502
536
|
initialPlacement,
|
|
503
537
|
platform,
|
|
504
538
|
elements
|
|
505
|
-
} =
|
|
539
|
+
} = state;
|
|
506
540
|
const {
|
|
507
541
|
mainAxis: checkMainAxis = true,
|
|
508
542
|
crossAxis: checkCrossAxis = true,
|
|
509
543
|
fallbackPlacements: specifiedFallbackPlacements,
|
|
510
544
|
fallbackStrategy = 'bestFit',
|
|
545
|
+
fallbackAxisSideDirection = 'none',
|
|
511
546
|
flipAlignment = true,
|
|
512
547
|
...detectOverflowOptions
|
|
513
548
|
} = options;
|
|
514
549
|
const side = getSide(placement);
|
|
515
|
-
const isBasePlacement =
|
|
550
|
+
const isBasePlacement = getSide(initialPlacement) === initialPlacement;
|
|
551
|
+
const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));
|
|
516
552
|
const fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipAlignment ? [getOppositePlacement(initialPlacement)] : getExpandedPlacements(initialPlacement));
|
|
553
|
+
if (!specifiedFallbackPlacements && fallbackAxisSideDirection !== 'none') {
|
|
554
|
+
fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));
|
|
555
|
+
}
|
|
517
556
|
const placements = [initialPlacement, ...fallbackPlacements];
|
|
518
|
-
const overflow = await detectOverflow(
|
|
557
|
+
const overflow = await detectOverflow(state, detectOverflowOptions);
|
|
519
558
|
const overflows = [];
|
|
520
559
|
let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];
|
|
521
560
|
if (checkMainAxis) {
|
|
@@ -525,7 +564,7 @@ const flip = function (options) {
|
|
|
525
564
|
const {
|
|
526
565
|
main,
|
|
527
566
|
cross
|
|
528
|
-
} = getAlignmentSides(placement, rects,
|
|
567
|
+
} = getAlignmentSides(placement, rects, rtl);
|
|
529
568
|
overflows.push(overflow[main], overflow[cross]);
|
|
530
569
|
}
|
|
531
570
|
overflowsData = [...overflowsData, {
|
|
@@ -533,13 +572,13 @@ const flip = function (options) {
|
|
|
533
572
|
overflows
|
|
534
573
|
}];
|
|
535
574
|
|
|
536
|
-
// One or more sides is overflowing
|
|
575
|
+
// One or more sides is overflowing.
|
|
537
576
|
if (!overflows.every(side => side <= 0)) {
|
|
538
|
-
var _middlewareData$
|
|
539
|
-
const nextIndex = ((
|
|
577
|
+
var _middlewareData$flip2, _overflowsData$filter;
|
|
578
|
+
const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;
|
|
540
579
|
const nextPlacement = placements[nextIndex];
|
|
541
580
|
if (nextPlacement) {
|
|
542
|
-
// Try next placement and re-run the lifecycle
|
|
581
|
+
// Try next placement and re-run the lifecycle.
|
|
543
582
|
return {
|
|
544
583
|
data: {
|
|
545
584
|
index: nextIndex,
|
|
@@ -550,20 +589,27 @@ const flip = function (options) {
|
|
|
550
589
|
}
|
|
551
590
|
};
|
|
552
591
|
}
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
592
|
+
|
|
593
|
+
// First, find the candidates that fit on the mainAxis side of overflow,
|
|
594
|
+
// then find the placement that fits the best on the main crossAxis side.
|
|
595
|
+
let resetPlacement = (_overflowsData$filter = overflowsData.filter(d => d.overflows[0] <= 0).sort((a, b) => a.overflows[1] - b.overflows[1])[0]) == null ? void 0 : _overflowsData$filter.placement;
|
|
596
|
+
|
|
597
|
+
// Otherwise fallback.
|
|
598
|
+
if (!resetPlacement) {
|
|
599
|
+
switch (fallbackStrategy) {
|
|
600
|
+
case 'bestFit':
|
|
601
|
+
{
|
|
602
|
+
var _overflowsData$map$so;
|
|
603
|
+
const placement = (_overflowsData$map$so = overflowsData.map(d => [d.placement, d.overflows.filter(overflow => overflow > 0).reduce((acc, overflow) => acc + overflow, 0)]).sort((a, b) => a[1] - b[1])[0]) == null ? void 0 : _overflowsData$map$so[0];
|
|
604
|
+
if (placement) {
|
|
605
|
+
resetPlacement = placement;
|
|
606
|
+
}
|
|
607
|
+
break;
|
|
561
608
|
}
|
|
609
|
+
case 'initialPlacement':
|
|
610
|
+
resetPlacement = initialPlacement;
|
|
562
611
|
break;
|
|
563
|
-
|
|
564
|
-
case 'initialPlacement':
|
|
565
|
-
resetPlacement = initialPlacement;
|
|
566
|
-
break;
|
|
612
|
+
}
|
|
567
613
|
}
|
|
568
614
|
if (placement !== resetPlacement) {
|
|
569
615
|
return {
|
|
@@ -601,18 +647,18 @@ const hide = function (options) {
|
|
|
601
647
|
return {
|
|
602
648
|
name: 'hide',
|
|
603
649
|
options,
|
|
604
|
-
async fn(
|
|
650
|
+
async fn(state) {
|
|
605
651
|
const {
|
|
606
652
|
strategy = 'referenceHidden',
|
|
607
653
|
...detectOverflowOptions
|
|
608
654
|
} = options;
|
|
609
655
|
const {
|
|
610
656
|
rects
|
|
611
|
-
} =
|
|
657
|
+
} = state;
|
|
612
658
|
switch (strategy) {
|
|
613
659
|
case 'referenceHidden':
|
|
614
660
|
{
|
|
615
|
-
const overflow = await detectOverflow(
|
|
661
|
+
const overflow = await detectOverflow(state, {
|
|
616
662
|
...detectOverflowOptions,
|
|
617
663
|
elementContext: 'reference'
|
|
618
664
|
});
|
|
@@ -626,7 +672,7 @@ const hide = function (options) {
|
|
|
626
672
|
}
|
|
627
673
|
case 'escaped':
|
|
628
674
|
{
|
|
629
|
-
const overflow = await detectOverflow(
|
|
675
|
+
const overflow = await detectOverflow(state, {
|
|
630
676
|
...detectOverflowOptions,
|
|
631
677
|
altBoundary: true
|
|
632
678
|
});
|
|
@@ -647,19 +693,19 @@ const hide = function (options) {
|
|
|
647
693
|
};
|
|
648
694
|
};
|
|
649
695
|
|
|
650
|
-
async function convertValueToCoords(
|
|
696
|
+
async function convertValueToCoords(state, value) {
|
|
651
697
|
const {
|
|
652
698
|
placement,
|
|
653
699
|
platform,
|
|
654
700
|
elements
|
|
655
|
-
} =
|
|
701
|
+
} = state;
|
|
656
702
|
const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));
|
|
657
703
|
const side = getSide(placement);
|
|
658
704
|
const alignment = getAlignment(placement);
|
|
659
705
|
const isVertical = getMainAxisFromPlacement(placement) === 'x';
|
|
660
706
|
const mainAxisMulti = ['left', 'top'].includes(side) ? -1 : 1;
|
|
661
707
|
const crossAxisMulti = rtl && isVertical ? -1 : 1;
|
|
662
|
-
const rawValue = typeof value === 'function' ? value(
|
|
708
|
+
const rawValue = typeof value === 'function' ? value(state) : value;
|
|
663
709
|
|
|
664
710
|
// eslint-disable-next-line prefer-const
|
|
665
711
|
let {
|
|
@@ -689,7 +735,10 @@ async function convertValueToCoords(middlewareArguments, value) {
|
|
|
689
735
|
}
|
|
690
736
|
|
|
691
737
|
/**
|
|
692
|
-
*
|
|
738
|
+
* Modifies the placement by translating the floating element along the
|
|
739
|
+
* specified axes.
|
|
740
|
+
* A number (shorthand for `mainAxis` or distance), or an axes configuration
|
|
741
|
+
* object may be passed.
|
|
693
742
|
* @see https://floating-ui.com/docs/offset
|
|
694
743
|
*/
|
|
695
744
|
const offset = function (value) {
|
|
@@ -699,12 +748,12 @@ const offset = function (value) {
|
|
|
699
748
|
return {
|
|
700
749
|
name: 'offset',
|
|
701
750
|
options: value,
|
|
702
|
-
async fn(
|
|
751
|
+
async fn(state) {
|
|
703
752
|
const {
|
|
704
753
|
x,
|
|
705
754
|
y
|
|
706
|
-
} =
|
|
707
|
-
const diffCoords = await convertValueToCoords(
|
|
755
|
+
} = state;
|
|
756
|
+
const diffCoords = await convertValueToCoords(state, value);
|
|
708
757
|
return {
|
|
709
758
|
x: x + diffCoords.x,
|
|
710
759
|
y: y + diffCoords.y,
|
|
@@ -719,8 +768,8 @@ function getCrossAxis(axis) {
|
|
|
719
768
|
}
|
|
720
769
|
|
|
721
770
|
/**
|
|
722
|
-
*
|
|
723
|
-
*
|
|
771
|
+
* Optimizes the visibility of the floating element by shifting it in order to
|
|
772
|
+
* keep it in view when it will overflow the clipping boundary.
|
|
724
773
|
* @see https://floating-ui.com/docs/shift
|
|
725
774
|
*/
|
|
726
775
|
const shift = function (options) {
|
|
@@ -730,12 +779,12 @@ const shift = function (options) {
|
|
|
730
779
|
return {
|
|
731
780
|
name: 'shift',
|
|
732
781
|
options,
|
|
733
|
-
async fn(
|
|
782
|
+
async fn(state) {
|
|
734
783
|
const {
|
|
735
784
|
x,
|
|
736
785
|
y,
|
|
737
786
|
placement
|
|
738
|
-
} =
|
|
787
|
+
} = state;
|
|
739
788
|
const {
|
|
740
789
|
mainAxis: checkMainAxis = true,
|
|
741
790
|
crossAxis: checkCrossAxis = false,
|
|
@@ -757,7 +806,7 @@ const shift = function (options) {
|
|
|
757
806
|
x,
|
|
758
807
|
y
|
|
759
808
|
};
|
|
760
|
-
const overflow = await detectOverflow(
|
|
809
|
+
const overflow = await detectOverflow(state, detectOverflowOptions);
|
|
761
810
|
const mainAxis = getMainAxisFromPlacement(getSide(placement));
|
|
762
811
|
const crossAxis = getCrossAxis(mainAxis);
|
|
763
812
|
let mainAxisCoord = coords[mainAxis];
|
|
@@ -777,7 +826,7 @@ const shift = function (options) {
|
|
|
777
826
|
crossAxisCoord = within(min, crossAxisCoord, max);
|
|
778
827
|
}
|
|
779
828
|
const limitedCoords = limiter.fn({
|
|
780
|
-
...
|
|
829
|
+
...state,
|
|
781
830
|
[mainAxis]: mainAxisCoord,
|
|
782
831
|
[crossAxis]: crossAxisCoord
|
|
783
832
|
});
|
|
@@ -801,6 +850,28 @@ function getComputedStyle$1(element) {
|
|
|
801
850
|
return getWindow(element).getComputedStyle(element);
|
|
802
851
|
}
|
|
803
852
|
|
|
853
|
+
const min = Math.min;
|
|
854
|
+
const max = Math.max;
|
|
855
|
+
const round = Math.round;
|
|
856
|
+
|
|
857
|
+
function getCssDimensions(element) {
|
|
858
|
+
const css = getComputedStyle$1(element);
|
|
859
|
+
let width = parseFloat(css.width);
|
|
860
|
+
let height = parseFloat(css.height);
|
|
861
|
+
const offsetWidth = element.offsetWidth;
|
|
862
|
+
const offsetHeight = element.offsetHeight;
|
|
863
|
+
const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;
|
|
864
|
+
if (shouldFallback) {
|
|
865
|
+
width = offsetWidth;
|
|
866
|
+
height = offsetHeight;
|
|
867
|
+
}
|
|
868
|
+
return {
|
|
869
|
+
width,
|
|
870
|
+
height,
|
|
871
|
+
fallback: shouldFallback
|
|
872
|
+
};
|
|
873
|
+
}
|
|
874
|
+
|
|
804
875
|
function getNodeName(node) {
|
|
805
876
|
return isNode(node) ? (node.nodeName || '').toLowerCase() : '';
|
|
806
877
|
}
|
|
@@ -828,7 +899,7 @@ function isNode(value) {
|
|
|
828
899
|
return value instanceof getWindow(value).Node;
|
|
829
900
|
}
|
|
830
901
|
function isShadowRoot(node) {
|
|
831
|
-
// Browsers without `ShadowRoot` support
|
|
902
|
+
// Browsers without `ShadowRoot` support.
|
|
832
903
|
if (typeof ShadowRoot === 'undefined') {
|
|
833
904
|
return false;
|
|
834
905
|
}
|
|
@@ -848,7 +919,7 @@ function isTableElement(element) {
|
|
|
848
919
|
return ['table', 'td', 'th'].includes(getNodeName(element));
|
|
849
920
|
}
|
|
850
921
|
function isContainingBlock(element) {
|
|
851
|
-
// TODO: Try
|
|
922
|
+
// TODO: Try to use feature detection here instead.
|
|
852
923
|
const isFirefox = /firefox/i.test(getUAString());
|
|
853
924
|
const css = getComputedStyle$1(element);
|
|
854
925
|
const backdropFilter = css.backdropFilter || css.WebkitBackdropFilter;
|
|
@@ -856,49 +927,33 @@ function isContainingBlock(element) {
|
|
|
856
927
|
// This is non-exhaustive but covers the most common CSS properties that
|
|
857
928
|
// create a containing block.
|
|
858
929
|
// https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
|
|
859
|
-
return css.transform !== 'none' || css.perspective !== 'none' || (backdropFilter ? backdropFilter !== 'none' : false) || isFirefox && css.willChange === 'filter' || isFirefox && (css.filter ? css.filter !== 'none' : false) || ['transform', 'perspective'].some(value => css.willChange.includes(value)) || ['paint', 'layout', 'strict', 'content'].some(
|
|
860
|
-
|
|
861
|
-
value => {
|
|
930
|
+
return css.transform !== 'none' || css.perspective !== 'none' || (backdropFilter ? backdropFilter !== 'none' : false) || isFirefox && css.willChange === 'filter' || isFirefox && (css.filter ? css.filter !== 'none' : false) || ['transform', 'perspective'].some(value => css.willChange.includes(value)) || ['paint', 'layout', 'strict', 'content'].some(value => {
|
|
931
|
+
// Add type check for old browsers.
|
|
862
932
|
const contain = css.contain;
|
|
863
933
|
return contain != null ? contain.includes(value) : false;
|
|
864
934
|
});
|
|
865
935
|
}
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
936
|
+
|
|
937
|
+
/**
|
|
938
|
+
* Determines whether or not `.getBoundingClientRect()` is affected by visual
|
|
939
|
+
* viewport offsets. In Safari, the `x`/`y` offsets are values relative to the
|
|
940
|
+
* visual viewport, while in other engines, they are values relative to the
|
|
941
|
+
* layout viewport.
|
|
942
|
+
*/
|
|
943
|
+
function isClientRectVisualViewportBased() {
|
|
944
|
+
// TODO: Try to use feature detection here instead. Feature detection for
|
|
945
|
+
// this can fail in various ways, making the userAgent check the most
|
|
946
|
+
// reliable:
|
|
870
947
|
// • Always-visible scrollbar or not
|
|
871
|
-
// • Width of <html
|
|
872
|
-
// const vV = win.visualViewport;
|
|
873
|
-
// return vV ? Math.abs(win.innerWidth / vV.scale - vV.width) < 0.5 : true;
|
|
874
|
-
}
|
|
948
|
+
// • Width of <html>
|
|
875
949
|
|
|
950
|
+
// Is Safari.
|
|
951
|
+
return /^((?!chrome|android).)*safari/i.test(getUAString());
|
|
952
|
+
}
|
|
876
953
|
function isLastTraversableNode(node) {
|
|
877
954
|
return ['html', 'body', '#document'].includes(getNodeName(node));
|
|
878
955
|
}
|
|
879
956
|
|
|
880
|
-
const min = Math.min;
|
|
881
|
-
const max = Math.max;
|
|
882
|
-
const round = Math.round;
|
|
883
|
-
|
|
884
|
-
function getCssDimensions(element) {
|
|
885
|
-
const css = getComputedStyle$1(element);
|
|
886
|
-
let width = parseFloat(css.width);
|
|
887
|
-
let height = parseFloat(css.height);
|
|
888
|
-
const offsetWidth = element.offsetWidth;
|
|
889
|
-
const offsetHeight = element.offsetHeight;
|
|
890
|
-
const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;
|
|
891
|
-
if (shouldFallback) {
|
|
892
|
-
width = offsetWidth;
|
|
893
|
-
height = offsetHeight;
|
|
894
|
-
}
|
|
895
|
-
return {
|
|
896
|
-
width,
|
|
897
|
-
height,
|
|
898
|
-
fallback: shouldFallback
|
|
899
|
-
};
|
|
900
|
-
}
|
|
901
|
-
|
|
902
957
|
function unwrapElement(element) {
|
|
903
958
|
return !isElement(element) ? element.contextElement : element;
|
|
904
959
|
}
|
|
@@ -956,7 +1011,7 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
|
|
|
956
1011
|
}
|
|
957
1012
|
}
|
|
958
1013
|
const win = domElement ? getWindow(domElement) : window;
|
|
959
|
-
const addVisualOffsets =
|
|
1014
|
+
const addVisualOffsets = isClientRectVisualViewportBased() && isFixedStrategy;
|
|
960
1015
|
let x = (clientRect.left + (addVisualOffsets ? ((_win$visualViewport = win.visualViewport) == null ? void 0 : _win$visualViewport.offsetLeft) || 0 : 0)) / scale.x;
|
|
961
1016
|
let y = (clientRect.top + (addVisualOffsets ? ((_win$visualViewport2 = win.visualViewport) == null ? void 0 : _win$visualViewport2.offsetTop) || 0 : 0)) / scale.y;
|
|
962
1017
|
let width = clientRect.width / scale.x;
|
|
@@ -1009,96 +1064,6 @@ function getNodeScroll(element) {
|
|
|
1009
1064
|
};
|
|
1010
1065
|
}
|
|
1011
1066
|
|
|
1012
|
-
function getWindowScrollBarX(element) {
|
|
1013
|
-
// If <html> has a CSS width greater than the viewport, then this will be
|
|
1014
|
-
// incorrect for RTL.
|
|
1015
|
-
return getBoundingClientRect(getDocumentElement(element)).left + getNodeScroll(element).scrollLeft;
|
|
1016
|
-
}
|
|
1017
|
-
|
|
1018
|
-
function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
|
|
1019
|
-
const isOffsetParentAnElement = isHTMLElement(offsetParent);
|
|
1020
|
-
const documentElement = getDocumentElement(offsetParent);
|
|
1021
|
-
const rect = getBoundingClientRect(element, true, strategy === 'fixed', offsetParent);
|
|
1022
|
-
let scroll = {
|
|
1023
|
-
scrollLeft: 0,
|
|
1024
|
-
scrollTop: 0
|
|
1025
|
-
};
|
|
1026
|
-
const offsets = {
|
|
1027
|
-
x: 0,
|
|
1028
|
-
y: 0
|
|
1029
|
-
};
|
|
1030
|
-
if (isOffsetParentAnElement || !isOffsetParentAnElement && strategy !== 'fixed') {
|
|
1031
|
-
if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
|
|
1032
|
-
scroll = getNodeScroll(offsetParent);
|
|
1033
|
-
}
|
|
1034
|
-
if (isHTMLElement(offsetParent)) {
|
|
1035
|
-
const offsetRect = getBoundingClientRect(offsetParent, true);
|
|
1036
|
-
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
1037
|
-
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
1038
|
-
} else if (documentElement) {
|
|
1039
|
-
offsets.x = getWindowScrollBarX(documentElement);
|
|
1040
|
-
}
|
|
1041
|
-
}
|
|
1042
|
-
return {
|
|
1043
|
-
x: rect.left + scroll.scrollLeft - offsets.x,
|
|
1044
|
-
y: rect.top + scroll.scrollTop - offsets.y,
|
|
1045
|
-
width: rect.width,
|
|
1046
|
-
height: rect.height
|
|
1047
|
-
};
|
|
1048
|
-
}
|
|
1049
|
-
|
|
1050
|
-
function getParentNode(node) {
|
|
1051
|
-
if (getNodeName(node) === 'html') {
|
|
1052
|
-
return node;
|
|
1053
|
-
}
|
|
1054
|
-
const result =
|
|
1055
|
-
// Step into the shadow DOM of the parent of a slotted node
|
|
1056
|
-
node.assignedSlot ||
|
|
1057
|
-
// DOM Element detected
|
|
1058
|
-
node.parentNode || (
|
|
1059
|
-
// ShadowRoot detected
|
|
1060
|
-
isShadowRoot(node) ? node.host : null) ||
|
|
1061
|
-
// Fallback
|
|
1062
|
-
getDocumentElement(node);
|
|
1063
|
-
return isShadowRoot(result) ? result.host : result;
|
|
1064
|
-
}
|
|
1065
|
-
|
|
1066
|
-
function getTrueOffsetParent(element) {
|
|
1067
|
-
if (!isHTMLElement(element) || getComputedStyle$1(element).position === 'fixed') {
|
|
1068
|
-
return null;
|
|
1069
|
-
}
|
|
1070
|
-
return element.offsetParent;
|
|
1071
|
-
}
|
|
1072
|
-
function getContainingBlock(element) {
|
|
1073
|
-
let currentNode = getParentNode(element);
|
|
1074
|
-
while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {
|
|
1075
|
-
if (isContainingBlock(currentNode)) {
|
|
1076
|
-
return currentNode;
|
|
1077
|
-
} else {
|
|
1078
|
-
currentNode = getParentNode(currentNode);
|
|
1079
|
-
}
|
|
1080
|
-
}
|
|
1081
|
-
return null;
|
|
1082
|
-
}
|
|
1083
|
-
|
|
1084
|
-
// Gets the closest ancestor positioned element. Handles some edge cases,
|
|
1085
|
-
// such as table ancestors and cross browser bugs.
|
|
1086
|
-
function getOffsetParent(element) {
|
|
1087
|
-
const window = getWindow(element);
|
|
1088
|
-
let offsetParent = getTrueOffsetParent(element);
|
|
1089
|
-
while (offsetParent && isTableElement(offsetParent) && getComputedStyle$1(offsetParent).position === 'static') {
|
|
1090
|
-
offsetParent = getTrueOffsetParent(offsetParent);
|
|
1091
|
-
}
|
|
1092
|
-
if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle$1(offsetParent).position === 'static' && !isContainingBlock(offsetParent))) {
|
|
1093
|
-
return window;
|
|
1094
|
-
}
|
|
1095
|
-
return offsetParent || getContainingBlock(element) || window;
|
|
1096
|
-
}
|
|
1097
|
-
|
|
1098
|
-
function getDimensions(element) {
|
|
1099
|
-
return getCssDimensions(element);
|
|
1100
|
-
}
|
|
1101
|
-
|
|
1102
1067
|
function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
1103
1068
|
let {
|
|
1104
1069
|
rect,
|
|
@@ -1132,12 +1097,7 @@ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
|
1132
1097
|
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
1133
1098
|
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
1134
1099
|
}
|
|
1135
|
-
// This doesn't appear to need to be negated.
|
|
1136
|
-
// else if (documentElement) {
|
|
1137
|
-
// offsets.x = getWindowScrollBarX(documentElement);
|
|
1138
|
-
// }
|
|
1139
1100
|
}
|
|
1140
|
-
|
|
1141
1101
|
return {
|
|
1142
1102
|
width: rect.width * scale.x,
|
|
1143
1103
|
height: rect.height * scale.y,
|
|
@@ -1146,44 +1106,24 @@ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
|
1146
1106
|
};
|
|
1147
1107
|
}
|
|
1148
1108
|
|
|
1149
|
-
function
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
let width = html.clientWidth;
|
|
1154
|
-
let height = html.clientHeight;
|
|
1155
|
-
let x = 0;
|
|
1156
|
-
let y = 0;
|
|
1157
|
-
if (visualViewport) {
|
|
1158
|
-
width = visualViewport.width;
|
|
1159
|
-
height = visualViewport.height;
|
|
1160
|
-
const layoutViewport = isLayoutViewport();
|
|
1161
|
-
if (layoutViewport || !layoutViewport && strategy === 'fixed') {
|
|
1162
|
-
x = visualViewport.offsetLeft;
|
|
1163
|
-
y = visualViewport.offsetTop;
|
|
1164
|
-
}
|
|
1165
|
-
}
|
|
1166
|
-
return {
|
|
1167
|
-
width,
|
|
1168
|
-
height,
|
|
1169
|
-
x,
|
|
1170
|
-
y
|
|
1171
|
-
};
|
|
1109
|
+
function getWindowScrollBarX(element) {
|
|
1110
|
+
// If <html> has a CSS width greater than the viewport, then this will be
|
|
1111
|
+
// incorrect for RTL.
|
|
1112
|
+
return getBoundingClientRect(getDocumentElement(element)).left + getNodeScroll(element).scrollLeft;
|
|
1172
1113
|
}
|
|
1173
1114
|
|
|
1174
1115
|
// Gets the entire size of the scrollable document area, even extending outside
|
|
1175
|
-
// of the `<html>` and `<body>` rect bounds if horizontally scrollable
|
|
1116
|
+
// of the `<html>` and `<body>` rect bounds if horizontally scrollable.
|
|
1176
1117
|
function getDocumentRect(element) {
|
|
1177
|
-
var _element$ownerDocumen;
|
|
1178
1118
|
const html = getDocumentElement(element);
|
|
1179
1119
|
const scroll = getNodeScroll(element);
|
|
1180
|
-
const body =
|
|
1181
|
-
const width = max(html.scrollWidth, html.clientWidth, body
|
|
1182
|
-
const height = max(html.scrollHeight, html.clientHeight, body
|
|
1120
|
+
const body = element.ownerDocument.body;
|
|
1121
|
+
const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);
|
|
1122
|
+
const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);
|
|
1183
1123
|
let x = -scroll.scrollLeft + getWindowScrollBarX(element);
|
|
1184
1124
|
const y = -scroll.scrollTop;
|
|
1185
|
-
if (getComputedStyle$1(body
|
|
1186
|
-
x += max(html.clientWidth, body
|
|
1125
|
+
if (getComputedStyle$1(body).direction === 'rtl') {
|
|
1126
|
+
x += max(html.clientWidth, body.clientWidth) - width;
|
|
1187
1127
|
}
|
|
1188
1128
|
return {
|
|
1189
1129
|
width,
|
|
@@ -1193,11 +1133,28 @@ function getDocumentRect(element) {
|
|
|
1193
1133
|
};
|
|
1194
1134
|
}
|
|
1195
1135
|
|
|
1136
|
+
function getParentNode(node) {
|
|
1137
|
+
if (getNodeName(node) === 'html') {
|
|
1138
|
+
return node;
|
|
1139
|
+
}
|
|
1140
|
+
const result =
|
|
1141
|
+
// Step into the shadow DOM of the parent of a slotted node.
|
|
1142
|
+
node.assignedSlot ||
|
|
1143
|
+
// DOM Element detected.
|
|
1144
|
+
node.parentNode ||
|
|
1145
|
+
// ShadowRoot detected.
|
|
1146
|
+
isShadowRoot(node) && node.host ||
|
|
1147
|
+
// Fallback.
|
|
1148
|
+
getDocumentElement(node);
|
|
1149
|
+
return isShadowRoot(result) ? result.host : result;
|
|
1150
|
+
}
|
|
1151
|
+
|
|
1196
1152
|
function getNearestOverflowAncestor(node) {
|
|
1197
1153
|
const parentNode = getParentNode(node);
|
|
1198
1154
|
if (isLastTraversableNode(parentNode)) {
|
|
1199
|
-
//
|
|
1200
|
-
|
|
1155
|
+
// `getParentNode` will never return a `Document` due to the fallback
|
|
1156
|
+
// check, so it's either the <html> or <body> element.
|
|
1157
|
+
return parentNode.ownerDocument.body;
|
|
1201
1158
|
}
|
|
1202
1159
|
if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {
|
|
1203
1160
|
return parentNode;
|
|
@@ -1219,7 +1176,32 @@ function getOverflowAncestors(node, list) {
|
|
|
1219
1176
|
return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor));
|
|
1220
1177
|
}
|
|
1221
1178
|
|
|
1222
|
-
|
|
1179
|
+
function getViewportRect(element, strategy) {
|
|
1180
|
+
const win = getWindow(element);
|
|
1181
|
+
const html = getDocumentElement(element);
|
|
1182
|
+
const visualViewport = win.visualViewport;
|
|
1183
|
+
let width = html.clientWidth;
|
|
1184
|
+
let height = html.clientHeight;
|
|
1185
|
+
let x = 0;
|
|
1186
|
+
let y = 0;
|
|
1187
|
+
if (visualViewport) {
|
|
1188
|
+
width = visualViewport.width;
|
|
1189
|
+
height = visualViewport.height;
|
|
1190
|
+
const visualViewportBased = isClientRectVisualViewportBased();
|
|
1191
|
+
if (!visualViewportBased || visualViewportBased && strategy === 'fixed') {
|
|
1192
|
+
x = visualViewport.offsetLeft;
|
|
1193
|
+
y = visualViewport.offsetTop;
|
|
1194
|
+
}
|
|
1195
|
+
}
|
|
1196
|
+
return {
|
|
1197
|
+
width,
|
|
1198
|
+
height,
|
|
1199
|
+
x,
|
|
1200
|
+
y
|
|
1201
|
+
};
|
|
1202
|
+
}
|
|
1203
|
+
|
|
1204
|
+
// Returns the inner client rect, subtracting scrollbars if present.
|
|
1223
1205
|
function getInnerBoundingClientRect(element, strategy) {
|
|
1224
1206
|
const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');
|
|
1225
1207
|
const top = clientRect.top + element.clientTop;
|
|
@@ -1233,24 +1215,33 @@ function getInnerBoundingClientRect(element, strategy) {
|
|
|
1233
1215
|
const x = left * scale.x;
|
|
1234
1216
|
const y = top * scale.y;
|
|
1235
1217
|
return {
|
|
1236
|
-
top: y,
|
|
1237
|
-
left: x,
|
|
1238
|
-
right: x + width,
|
|
1239
|
-
bottom: y + height,
|
|
1240
|
-
x,
|
|
1241
|
-
y,
|
|
1242
1218
|
width,
|
|
1243
|
-
height
|
|
1219
|
+
height,
|
|
1220
|
+
x,
|
|
1221
|
+
y
|
|
1244
1222
|
};
|
|
1245
1223
|
}
|
|
1246
1224
|
function getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {
|
|
1225
|
+
let rect;
|
|
1247
1226
|
if (clippingAncestor === 'viewport') {
|
|
1248
|
-
|
|
1249
|
-
}
|
|
1250
|
-
|
|
1251
|
-
|
|
1227
|
+
rect = getViewportRect(element, strategy);
|
|
1228
|
+
} else if (clippingAncestor === 'document') {
|
|
1229
|
+
rect = getDocumentRect(getDocumentElement(element));
|
|
1230
|
+
} else if (isElement(clippingAncestor)) {
|
|
1231
|
+
rect = getInnerBoundingClientRect(clippingAncestor, strategy);
|
|
1232
|
+
} else {
|
|
1233
|
+
const mutableRect = {
|
|
1234
|
+
...clippingAncestor
|
|
1235
|
+
};
|
|
1236
|
+
if (isClientRectVisualViewportBased()) {
|
|
1237
|
+
var _win$visualViewport, _win$visualViewport2;
|
|
1238
|
+
const win = getWindow(element);
|
|
1239
|
+
mutableRect.x -= ((_win$visualViewport = win.visualViewport) == null ? void 0 : _win$visualViewport.offsetLeft) || 0;
|
|
1240
|
+
mutableRect.y -= ((_win$visualViewport2 = win.visualViewport) == null ? void 0 : _win$visualViewport2.offsetTop) || 0;
|
|
1241
|
+
}
|
|
1242
|
+
rect = mutableRect;
|
|
1252
1243
|
}
|
|
1253
|
-
return rectToClientRect(
|
|
1244
|
+
return rectToClientRect(rect);
|
|
1254
1245
|
}
|
|
1255
1246
|
|
|
1256
1247
|
// A "clipping ancestor" is an `overflow` element with the characteristic of
|
|
@@ -1270,13 +1261,18 @@ function getClippingElementAncestors(element, cache) {
|
|
|
1270
1261
|
while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {
|
|
1271
1262
|
const computedStyle = getComputedStyle$1(currentNode);
|
|
1272
1263
|
const containingBlock = isContainingBlock(currentNode);
|
|
1273
|
-
const
|
|
1274
|
-
if (
|
|
1275
|
-
|
|
1276
|
-
result = result.filter(ancestor => ancestor !== currentNode);
|
|
1264
|
+
const shouldIgnoreCurrentNode = computedStyle.position === 'fixed';
|
|
1265
|
+
if (shouldIgnoreCurrentNode) {
|
|
1266
|
+
currentContainingBlockComputedStyle = null;
|
|
1277
1267
|
} else {
|
|
1278
|
-
|
|
1279
|
-
|
|
1268
|
+
const shouldDropCurrentNode = elementIsFixed ? !containingBlock && !currentContainingBlockComputedStyle : !containingBlock && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && ['absolute', 'fixed'].includes(currentContainingBlockComputedStyle.position);
|
|
1269
|
+
if (shouldDropCurrentNode) {
|
|
1270
|
+
// Drop non-containing blocks.
|
|
1271
|
+
result = result.filter(ancestor => ancestor !== currentNode);
|
|
1272
|
+
} else {
|
|
1273
|
+
// Record last containing block for next iteration.
|
|
1274
|
+
currentContainingBlockComputedStyle = computedStyle;
|
|
1275
|
+
}
|
|
1280
1276
|
}
|
|
1281
1277
|
currentNode = getParentNode(currentNode);
|
|
1282
1278
|
}
|
|
@@ -1285,7 +1281,7 @@ function getClippingElementAncestors(element, cache) {
|
|
|
1285
1281
|
}
|
|
1286
1282
|
|
|
1287
1283
|
// Gets the maximum area that the element is visible in due to any number of
|
|
1288
|
-
// clipping ancestors
|
|
1284
|
+
// clipping ancestors.
|
|
1289
1285
|
function getClippingRect(_ref) {
|
|
1290
1286
|
let {
|
|
1291
1287
|
element,
|
|
@@ -1312,6 +1308,80 @@ function getClippingRect(_ref) {
|
|
|
1312
1308
|
};
|
|
1313
1309
|
}
|
|
1314
1310
|
|
|
1311
|
+
function getDimensions(element) {
|
|
1312
|
+
if (isHTMLElement(element)) {
|
|
1313
|
+
return getCssDimensions(element);
|
|
1314
|
+
}
|
|
1315
|
+
return element.getBoundingClientRect();
|
|
1316
|
+
}
|
|
1317
|
+
|
|
1318
|
+
function getTrueOffsetParent(element, polyfill) {
|
|
1319
|
+
if (!isHTMLElement(element) || getComputedStyle$1(element).position === 'fixed') {
|
|
1320
|
+
return null;
|
|
1321
|
+
}
|
|
1322
|
+
if (polyfill) {
|
|
1323
|
+
return polyfill(element);
|
|
1324
|
+
}
|
|
1325
|
+
return element.offsetParent;
|
|
1326
|
+
}
|
|
1327
|
+
function getContainingBlock(element) {
|
|
1328
|
+
let currentNode = getParentNode(element);
|
|
1329
|
+
while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {
|
|
1330
|
+
if (isContainingBlock(currentNode)) {
|
|
1331
|
+
return currentNode;
|
|
1332
|
+
} else {
|
|
1333
|
+
currentNode = getParentNode(currentNode);
|
|
1334
|
+
}
|
|
1335
|
+
}
|
|
1336
|
+
return null;
|
|
1337
|
+
}
|
|
1338
|
+
|
|
1339
|
+
// Gets the closest ancestor positioned element. Handles some edge cases,
|
|
1340
|
+
// such as table ancestors and cross browser bugs.
|
|
1341
|
+
function getOffsetParent(element, polyfill) {
|
|
1342
|
+
const window = getWindow(element);
|
|
1343
|
+
let offsetParent = getTrueOffsetParent(element, polyfill);
|
|
1344
|
+
while (offsetParent && isTableElement(offsetParent) && getComputedStyle$1(offsetParent).position === 'static') {
|
|
1345
|
+
offsetParent = getTrueOffsetParent(offsetParent, polyfill);
|
|
1346
|
+
}
|
|
1347
|
+
if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle$1(offsetParent).position === 'static' && !isContainingBlock(offsetParent))) {
|
|
1348
|
+
return window;
|
|
1349
|
+
}
|
|
1350
|
+
return offsetParent || getContainingBlock(element) || window;
|
|
1351
|
+
}
|
|
1352
|
+
|
|
1353
|
+
function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
|
|
1354
|
+
const isOffsetParentAnElement = isHTMLElement(offsetParent);
|
|
1355
|
+
const documentElement = getDocumentElement(offsetParent);
|
|
1356
|
+
const rect = getBoundingClientRect(element, true, strategy === 'fixed', offsetParent);
|
|
1357
|
+
let scroll = {
|
|
1358
|
+
scrollLeft: 0,
|
|
1359
|
+
scrollTop: 0
|
|
1360
|
+
};
|
|
1361
|
+
const offsets = {
|
|
1362
|
+
x: 0,
|
|
1363
|
+
y: 0
|
|
1364
|
+
};
|
|
1365
|
+
if (isOffsetParentAnElement || !isOffsetParentAnElement && strategy !== 'fixed') {
|
|
1366
|
+
if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
|
|
1367
|
+
scroll = getNodeScroll(offsetParent);
|
|
1368
|
+
}
|
|
1369
|
+
if (isHTMLElement(offsetParent)) {
|
|
1370
|
+
const offsetRect = getBoundingClientRect(offsetParent, true);
|
|
1371
|
+
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
1372
|
+
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
1373
|
+
} else if (documentElement) {
|
|
1374
|
+
offsets.x = getWindowScrollBarX(documentElement);
|
|
1375
|
+
}
|
|
1376
|
+
}
|
|
1377
|
+
return {
|
|
1378
|
+
x: rect.left + scroll.scrollLeft - offsets.x,
|
|
1379
|
+
y: rect.top + scroll.scrollTop - offsets.y,
|
|
1380
|
+
width: rect.width,
|
|
1381
|
+
height: rect.height
|
|
1382
|
+
};
|
|
1383
|
+
}
|
|
1384
|
+
|
|
1315
1385
|
const platform = {
|
|
1316
1386
|
getClippingRect,
|
|
1317
1387
|
convertOffsetParentRelativeRectToViewportRelativeRect,
|
|
@@ -1343,6 +1413,10 @@ const platform = {
|
|
|
1343
1413
|
|
|
1344
1414
|
/**
|
|
1345
1415
|
* Automatically updates the position of the floating element when necessary.
|
|
1416
|
+
* Should only be called when the floating element is mounted on the DOM or
|
|
1417
|
+
* visible on the screen.
|
|
1418
|
+
* @returns cleanup function that should be invoked when the floating element is
|
|
1419
|
+
* removed from the DOM or hidden from the screen.
|
|
1346
1420
|
* @see https://floating-ui.com/docs/autoUpdate
|
|
1347
1421
|
*/
|
|
1348
1422
|
function autoUpdate(reference, floating, update, options) {
|
|
@@ -1449,20 +1523,31 @@ const config = {
|
|
|
1449
1523
|
|
|
1450
1524
|
const floatingUIBrowserCheck = patchFloatingUiForNonChromiumBrowsers();
|
|
1451
1525
|
async function patchFloatingUiForNonChromiumBrowsers() {
|
|
1526
|
+
function getUAData() {
|
|
1527
|
+
return navigator.userAgentData;
|
|
1528
|
+
}
|
|
1452
1529
|
function getUAString() {
|
|
1453
|
-
const uaData =
|
|
1530
|
+
const uaData = getUAData();
|
|
1531
|
+
return uaData?.brands
|
|
1532
|
+
? uaData.brands.map(({ brand, version }) => `${brand}/${version}`).join(" ")
|
|
1533
|
+
: navigator.userAgent;
|
|
1534
|
+
}
|
|
1535
|
+
function isChrome109OrAbove() {
|
|
1536
|
+
const uaData = getUAData();
|
|
1454
1537
|
if (uaData?.brands) {
|
|
1455
|
-
return uaData.brands.
|
|
1538
|
+
return !!uaData.brands.find(({ brand, version }) => (brand === "Google Chrome" || brand === "Chromium") && Number(version) >= 109);
|
|
1456
1539
|
}
|
|
1457
|
-
return navigator.userAgent
|
|
1540
|
+
return !!navigator.userAgent.split(" ").find((ua) => {
|
|
1541
|
+
const [browser, version] = ua.split("/");
|
|
1542
|
+
return browser === "Chrome" && parseInt(version) >= 109;
|
|
1543
|
+
});
|
|
1458
1544
|
}
|
|
1459
1545
|
if (config.floatingUINonChromiumPositioningFix &&
|
|
1460
1546
|
// ⚠️ browser-sniffing is not a best practice and should be avoided ⚠️
|
|
1461
|
-
/firefox|safari/i.test(getUAString())) {
|
|
1462
|
-
const {
|
|
1463
|
-
|
|
1464
|
-
platform.getOffsetParent =
|
|
1465
|
-
platform.getElementRects = getElementRects;
|
|
1547
|
+
(/firefox|safari/i.test(getUAString()) || isChrome109OrAbove())) {
|
|
1548
|
+
const { offsetParent } = await Promise.resolve().then(function () { return require('./utils-9af7bb5a.js'); });
|
|
1549
|
+
const originalGetOffsetParent = platform.getOffsetParent;
|
|
1550
|
+
platform.getOffsetParent = (element) => originalGetOffsetParent(element, offsetParent);
|
|
1466
1551
|
}
|
|
1467
1552
|
}
|
|
1468
1553
|
/**
|
|
@@ -1731,6 +1816,5 @@ exports.defaultMenuPlacement = defaultMenuPlacement;
|
|
|
1731
1816
|
exports.defaultOffsetDistance = defaultOffsetDistance;
|
|
1732
1817
|
exports.disconnectFloatingUI = disconnectFloatingUI;
|
|
1733
1818
|
exports.filterComputedPlacements = filterComputedPlacements;
|
|
1734
|
-
exports.rectToClientRect = rectToClientRect;
|
|
1735
1819
|
exports.reposition = reposition;
|
|
1736
1820
|
exports.updateAfterClose = updateAfterClose;
|