@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,27 +1,27 @@
|
|
|
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
|
-
import { c as closestElementCrossShadowBoundary, b as getElementDir } from './dom-
|
|
7
|
-
import { d as debounce } from './debounce-
|
|
8
|
-
|
|
9
|
-
function getSide(placement) {
|
|
10
|
-
return placement.split('-')[0];
|
|
11
|
-
}
|
|
6
|
+
import { c as closestElementCrossShadowBoundary, b as getElementDir } from './dom-13d14bf1.js';
|
|
7
|
+
import { d as debounce } from './debounce-f893dc12.js';
|
|
12
8
|
|
|
13
9
|
function getAlignment(placement) {
|
|
14
10
|
return placement.split('-')[1];
|
|
15
11
|
}
|
|
16
12
|
|
|
17
|
-
function getMainAxisFromPlacement(placement) {
|
|
18
|
-
return ['top', 'bottom'].includes(getSide(placement)) ? 'x' : 'y';
|
|
19
|
-
}
|
|
20
|
-
|
|
21
13
|
function getLengthFromAxis(axis) {
|
|
22
14
|
return axis === 'y' ? 'height' : 'width';
|
|
23
15
|
}
|
|
24
16
|
|
|
17
|
+
function getSide(placement) {
|
|
18
|
+
return placement.split('-')[0];
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
function getMainAxisFromPlacement(placement) {
|
|
22
|
+
return ['top', 'bottom'].includes(getSide(placement)) ? 'x' : 'y';
|
|
23
|
+
}
|
|
24
|
+
|
|
25
25
|
function computeCoordsFromPlacement(_ref, placement, rtl) {
|
|
26
26
|
let {
|
|
27
27
|
reference,
|
|
@@ -200,13 +200,13 @@ function rectToClientRect(rect) {
|
|
|
200
200
|
|
|
201
201
|
/**
|
|
202
202
|
* Resolves with an object of overflow side offsets that determine how much the
|
|
203
|
-
* element is overflowing a given clipping boundary.
|
|
203
|
+
* element is overflowing a given clipping boundary on each side.
|
|
204
204
|
* - positive = overflowing the boundary by that number of pixels
|
|
205
205
|
* - negative = how many pixels left before it will overflow
|
|
206
206
|
* - 0 = lies flush with the boundary
|
|
207
207
|
* @see https://floating-ui.com/docs/detectOverflow
|
|
208
208
|
*/
|
|
209
|
-
async function detectOverflow(
|
|
209
|
+
async function detectOverflow(state, options) {
|
|
210
210
|
var _await$platform$isEle;
|
|
211
211
|
if (options === void 0) {
|
|
212
212
|
options = {};
|
|
@@ -218,7 +218,7 @@ async function detectOverflow(middlewareArguments, options) {
|
|
|
218
218
|
rects,
|
|
219
219
|
elements,
|
|
220
220
|
strategy
|
|
221
|
-
} =
|
|
221
|
+
} = state;
|
|
222
222
|
const {
|
|
223
223
|
boundary = 'clippingAncestors',
|
|
224
224
|
rootBoundary = 'viewport',
|
|
@@ -269,26 +269,26 @@ function within(min$1$1, value, max$1$1) {
|
|
|
269
269
|
}
|
|
270
270
|
|
|
271
271
|
/**
|
|
272
|
-
*
|
|
273
|
-
* to the reference element.
|
|
272
|
+
* Provides data to position an inner element of the floating element so that it
|
|
273
|
+
* appears centered to the reference element.
|
|
274
274
|
* @see https://floating-ui.com/docs/arrow
|
|
275
275
|
*/
|
|
276
276
|
const arrow = options => ({
|
|
277
277
|
name: 'arrow',
|
|
278
278
|
options,
|
|
279
|
-
async fn(
|
|
280
|
-
// Since `element` is required, we don't Partial<> the type
|
|
279
|
+
async fn(state) {
|
|
280
|
+
// Since `element` is required, we don't Partial<> the type.
|
|
281
281
|
const {
|
|
282
282
|
element,
|
|
283
283
|
padding = 0
|
|
284
|
-
} = options
|
|
284
|
+
} = options || {};
|
|
285
285
|
const {
|
|
286
286
|
x,
|
|
287
287
|
y,
|
|
288
288
|
placement,
|
|
289
289
|
rects,
|
|
290
290
|
platform
|
|
291
|
-
} =
|
|
291
|
+
} = state;
|
|
292
292
|
if (element == null) {
|
|
293
293
|
return {};
|
|
294
294
|
}
|
|
@@ -312,7 +312,7 @@ const arrow = options => ({
|
|
|
312
312
|
const centerToReference = endDiff / 2 - startDiff / 2;
|
|
313
313
|
|
|
314
314
|
// Make sure the arrow doesn't overflow the floating element if the center
|
|
315
|
-
// point is outside the floating element's bounds
|
|
315
|
+
// point is outside the floating element's bounds.
|
|
316
316
|
const min = paddingObject[minProp];
|
|
317
317
|
const max = clientSize - arrowDimensions[length] - paddingObject[maxProp];
|
|
318
318
|
const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;
|
|
@@ -334,14 +334,17 @@ const arrow = options => ({
|
|
|
334
334
|
}
|
|
335
335
|
});
|
|
336
336
|
|
|
337
|
-
const
|
|
337
|
+
const sides = ['top', 'right', 'bottom', 'left'];
|
|
338
|
+
const allPlacements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + "-start", side + "-end"), []);
|
|
339
|
+
|
|
340
|
+
const oppositeSideMap = {
|
|
338
341
|
left: 'right',
|
|
339
342
|
right: 'left',
|
|
340
343
|
bottom: 'top',
|
|
341
344
|
top: 'bottom'
|
|
342
345
|
};
|
|
343
346
|
function getOppositePlacement(placement) {
|
|
344
|
-
return placement.replace(/left|right|bottom|top/g,
|
|
347
|
+
return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);
|
|
345
348
|
}
|
|
346
349
|
|
|
347
350
|
function getAlignmentSides(placement, rects, rtl) {
|
|
@@ -361,17 +364,14 @@ function getAlignmentSides(placement, rects, rtl) {
|
|
|
361
364
|
};
|
|
362
365
|
}
|
|
363
366
|
|
|
364
|
-
const
|
|
367
|
+
const oppositeAlignmentMap = {
|
|
365
368
|
start: 'end',
|
|
366
369
|
end: 'start'
|
|
367
370
|
};
|
|
368
371
|
function getOppositeAlignmentPlacement(placement) {
|
|
369
|
-
return placement.replace(/start|end/g,
|
|
372
|
+
return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);
|
|
370
373
|
}
|
|
371
374
|
|
|
372
|
-
const sides = ['top', 'right', 'bottom', 'left'];
|
|
373
|
-
const allPlacements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + "-start", side + "-end"), []);
|
|
374
|
-
|
|
375
375
|
function getPlacementList(alignment, autoAlignment, allowedPlacements) {
|
|
376
376
|
const allowedPlacementsSortedByAlignment = alignment ? [...allowedPlacements.filter(placement => getAlignment(placement) === alignment), ...allowedPlacements.filter(placement => getAlignment(placement) !== alignment)] : allowedPlacements.filter(placement => getSide(placement) === placement);
|
|
377
377
|
return allowedPlacementsSortedByAlignment.filter(placement => {
|
|
@@ -382,7 +382,9 @@ function getPlacementList(alignment, autoAlignment, allowedPlacements) {
|
|
|
382
382
|
});
|
|
383
383
|
}
|
|
384
384
|
/**
|
|
385
|
-
*
|
|
385
|
+
* Optimizes the visibility of the floating element by choosing the placement
|
|
386
|
+
* that has the most space available automatically, without needing to specify a
|
|
387
|
+
* preferred placement. Alternative to `flip`.
|
|
386
388
|
* @see https://floating-ui.com/docs/autoPlacement
|
|
387
389
|
*/
|
|
388
390
|
const autoPlacement = function (options) {
|
|
@@ -392,26 +394,25 @@ const autoPlacement = function (options) {
|
|
|
392
394
|
return {
|
|
393
395
|
name: 'autoPlacement',
|
|
394
396
|
options,
|
|
395
|
-
async fn(
|
|
396
|
-
var _middlewareData$autoP, _middlewareData$autoP2,
|
|
397
|
+
async fn(state) {
|
|
398
|
+
var _middlewareData$autoP, _middlewareData$autoP2, _placementsThatFitOnE;
|
|
397
399
|
const {
|
|
398
|
-
x,
|
|
399
|
-
y,
|
|
400
400
|
rects,
|
|
401
401
|
middlewareData,
|
|
402
402
|
placement,
|
|
403
403
|
platform,
|
|
404
404
|
elements
|
|
405
|
-
} =
|
|
405
|
+
} = state;
|
|
406
406
|
const {
|
|
407
|
+
crossAxis = false,
|
|
407
408
|
alignment,
|
|
408
409
|
allowedPlacements = allPlacements,
|
|
409
410
|
autoAlignment = true,
|
|
410
411
|
...detectOverflowOptions
|
|
411
412
|
} = options;
|
|
412
413
|
const placements = alignment !== undefined || allowedPlacements === allPlacements ? getPlacementList(alignment || null, autoAlignment, allowedPlacements) : allowedPlacements;
|
|
413
|
-
const overflow = await detectOverflow(
|
|
414
|
-
const currentIndex = (_middlewareData$autoP =
|
|
414
|
+
const overflow = await detectOverflow(state, detectOverflowOptions);
|
|
415
|
+
const currentIndex = ((_middlewareData$autoP = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP.index) || 0;
|
|
415
416
|
const currentPlacement = placements[currentIndex];
|
|
416
417
|
if (currentPlacement == null) {
|
|
417
418
|
return {};
|
|
@@ -421,24 +422,22 @@ const autoPlacement = function (options) {
|
|
|
421
422
|
cross
|
|
422
423
|
} = getAlignmentSides(currentPlacement, rects, await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating)));
|
|
423
424
|
|
|
424
|
-
// Make `computeCoords` start from the right place
|
|
425
|
+
// Make `computeCoords` start from the right place.
|
|
425
426
|
if (placement !== currentPlacement) {
|
|
426
427
|
return {
|
|
427
|
-
x,
|
|
428
|
-
y,
|
|
429
428
|
reset: {
|
|
430
429
|
placement: placements[0]
|
|
431
430
|
}
|
|
432
431
|
};
|
|
433
432
|
}
|
|
434
433
|
const currentOverflows = [overflow[getSide(currentPlacement)], overflow[main], overflow[cross]];
|
|
435
|
-
const allOverflows = [...((
|
|
434
|
+
const allOverflows = [...(((_middlewareData$autoP2 = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP2.overflows) || []), {
|
|
436
435
|
placement: currentPlacement,
|
|
437
436
|
overflows: currentOverflows
|
|
438
437
|
}];
|
|
439
438
|
const nextPlacement = placements[currentIndex + 1];
|
|
440
439
|
|
|
441
|
-
// There are more placements to check
|
|
440
|
+
// There are more placements to check.
|
|
442
441
|
if (nextPlacement) {
|
|
443
442
|
return {
|
|
444
443
|
data: {
|
|
@@ -450,14 +449,19 @@ const autoPlacement = function (options) {
|
|
|
450
449
|
}
|
|
451
450
|
};
|
|
452
451
|
}
|
|
453
|
-
const
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
452
|
+
const placementsSortedByMostSpace = allOverflows.map(d => {
|
|
453
|
+
const alignment = getAlignment(d.placement);
|
|
454
|
+
return [d.placement, alignment && crossAxis ?
|
|
455
|
+
// Check along the mainAxis and main crossAxis side.
|
|
456
|
+
d.overflows.slice(0, 2).reduce((acc, v) => acc + v, 0) :
|
|
457
|
+
// Check only the mainAxis.
|
|
458
|
+
d.overflows[0], d.overflows];
|
|
459
|
+
}).sort((a, b) => a[1] - b[1]);
|
|
460
|
+
const placementsThatFitOnEachSide = placementsSortedByMostSpace.filter(d => d[2].slice(0,
|
|
461
|
+
// Aligned placements should not check their opposite crossAxis
|
|
462
|
+
// side.
|
|
463
|
+
getAlignment(d[0]) ? 2 : 3).every(v => v <= 0));
|
|
464
|
+
const resetPlacement = ((_placementsThatFitOnE = placementsThatFitOnEachSide[0]) == null ? void 0 : _placementsThatFitOnE[0]) || placementsSortedByMostSpace[0][0];
|
|
461
465
|
if (resetPlacement !== placement) {
|
|
462
466
|
return {
|
|
463
467
|
data: {
|
|
@@ -479,9 +483,39 @@ function getExpandedPlacements(placement) {
|
|
|
479
483
|
return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];
|
|
480
484
|
}
|
|
481
485
|
|
|
486
|
+
function getSideList(side, isStart, rtl) {
|
|
487
|
+
const lr = ['left', 'right'];
|
|
488
|
+
const rl = ['right', 'left'];
|
|
489
|
+
const tb = ['top', 'bottom'];
|
|
490
|
+
const bt = ['bottom', 'top'];
|
|
491
|
+
switch (side) {
|
|
492
|
+
case 'top':
|
|
493
|
+
case 'bottom':
|
|
494
|
+
if (rtl) return isStart ? rl : lr;
|
|
495
|
+
return isStart ? lr : rl;
|
|
496
|
+
case 'left':
|
|
497
|
+
case 'right':
|
|
498
|
+
return isStart ? tb : bt;
|
|
499
|
+
default:
|
|
500
|
+
return [];
|
|
501
|
+
}
|
|
502
|
+
}
|
|
503
|
+
function getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {
|
|
504
|
+
const alignment = getAlignment(placement);
|
|
505
|
+
let list = getSideList(getSide(placement), direction === 'start', rtl);
|
|
506
|
+
if (alignment) {
|
|
507
|
+
list = list.map(side => side + "-" + alignment);
|
|
508
|
+
if (flipAlignment) {
|
|
509
|
+
list = list.concat(list.map(getOppositeAlignmentPlacement));
|
|
510
|
+
}
|
|
511
|
+
}
|
|
512
|
+
return list;
|
|
513
|
+
}
|
|
514
|
+
|
|
482
515
|
/**
|
|
483
|
-
*
|
|
484
|
-
*
|
|
516
|
+
* Optimizes the visibility of the floating element by flipping the `placement`
|
|
517
|
+
* in order to keep it in view when the preferred placement(s) will overflow the
|
|
518
|
+
* clipping boundary. Alternative to `autoPlacement`.
|
|
485
519
|
* @see https://floating-ui.com/docs/flip
|
|
486
520
|
*/
|
|
487
521
|
const flip = function (options) {
|
|
@@ -491,7 +525,7 @@ const flip = function (options) {
|
|
|
491
525
|
return {
|
|
492
526
|
name: 'flip',
|
|
493
527
|
options,
|
|
494
|
-
async fn(
|
|
528
|
+
async fn(state) {
|
|
495
529
|
var _middlewareData$flip;
|
|
496
530
|
const {
|
|
497
531
|
placement,
|
|
@@ -500,20 +534,25 @@ const flip = function (options) {
|
|
|
500
534
|
initialPlacement,
|
|
501
535
|
platform,
|
|
502
536
|
elements
|
|
503
|
-
} =
|
|
537
|
+
} = state;
|
|
504
538
|
const {
|
|
505
539
|
mainAxis: checkMainAxis = true,
|
|
506
540
|
crossAxis: checkCrossAxis = true,
|
|
507
541
|
fallbackPlacements: specifiedFallbackPlacements,
|
|
508
542
|
fallbackStrategy = 'bestFit',
|
|
543
|
+
fallbackAxisSideDirection = 'none',
|
|
509
544
|
flipAlignment = true,
|
|
510
545
|
...detectOverflowOptions
|
|
511
546
|
} = options;
|
|
512
547
|
const side = getSide(placement);
|
|
513
|
-
const isBasePlacement =
|
|
548
|
+
const isBasePlacement = getSide(initialPlacement) === initialPlacement;
|
|
549
|
+
const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));
|
|
514
550
|
const fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipAlignment ? [getOppositePlacement(initialPlacement)] : getExpandedPlacements(initialPlacement));
|
|
551
|
+
if (!specifiedFallbackPlacements && fallbackAxisSideDirection !== 'none') {
|
|
552
|
+
fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));
|
|
553
|
+
}
|
|
515
554
|
const placements = [initialPlacement, ...fallbackPlacements];
|
|
516
|
-
const overflow = await detectOverflow(
|
|
555
|
+
const overflow = await detectOverflow(state, detectOverflowOptions);
|
|
517
556
|
const overflows = [];
|
|
518
557
|
let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];
|
|
519
558
|
if (checkMainAxis) {
|
|
@@ -523,7 +562,7 @@ const flip = function (options) {
|
|
|
523
562
|
const {
|
|
524
563
|
main,
|
|
525
564
|
cross
|
|
526
|
-
} = getAlignmentSides(placement, rects,
|
|
565
|
+
} = getAlignmentSides(placement, rects, rtl);
|
|
527
566
|
overflows.push(overflow[main], overflow[cross]);
|
|
528
567
|
}
|
|
529
568
|
overflowsData = [...overflowsData, {
|
|
@@ -531,13 +570,13 @@ const flip = function (options) {
|
|
|
531
570
|
overflows
|
|
532
571
|
}];
|
|
533
572
|
|
|
534
|
-
// One or more sides is overflowing
|
|
573
|
+
// One or more sides is overflowing.
|
|
535
574
|
if (!overflows.every(side => side <= 0)) {
|
|
536
|
-
var _middlewareData$
|
|
537
|
-
const nextIndex = ((
|
|
575
|
+
var _middlewareData$flip2, _overflowsData$filter;
|
|
576
|
+
const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;
|
|
538
577
|
const nextPlacement = placements[nextIndex];
|
|
539
578
|
if (nextPlacement) {
|
|
540
|
-
// Try next placement and re-run the lifecycle
|
|
579
|
+
// Try next placement and re-run the lifecycle.
|
|
541
580
|
return {
|
|
542
581
|
data: {
|
|
543
582
|
index: nextIndex,
|
|
@@ -548,20 +587,27 @@ const flip = function (options) {
|
|
|
548
587
|
}
|
|
549
588
|
};
|
|
550
589
|
}
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
590
|
+
|
|
591
|
+
// First, find the candidates that fit on the mainAxis side of overflow,
|
|
592
|
+
// then find the placement that fits the best on the main crossAxis side.
|
|
593
|
+
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;
|
|
594
|
+
|
|
595
|
+
// Otherwise fallback.
|
|
596
|
+
if (!resetPlacement) {
|
|
597
|
+
switch (fallbackStrategy) {
|
|
598
|
+
case 'bestFit':
|
|
599
|
+
{
|
|
600
|
+
var _overflowsData$map$so;
|
|
601
|
+
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];
|
|
602
|
+
if (placement) {
|
|
603
|
+
resetPlacement = placement;
|
|
604
|
+
}
|
|
605
|
+
break;
|
|
559
606
|
}
|
|
607
|
+
case 'initialPlacement':
|
|
608
|
+
resetPlacement = initialPlacement;
|
|
560
609
|
break;
|
|
561
|
-
|
|
562
|
-
case 'initialPlacement':
|
|
563
|
-
resetPlacement = initialPlacement;
|
|
564
|
-
break;
|
|
610
|
+
}
|
|
565
611
|
}
|
|
566
612
|
if (placement !== resetPlacement) {
|
|
567
613
|
return {
|
|
@@ -599,18 +645,18 @@ const hide = function (options) {
|
|
|
599
645
|
return {
|
|
600
646
|
name: 'hide',
|
|
601
647
|
options,
|
|
602
|
-
async fn(
|
|
648
|
+
async fn(state) {
|
|
603
649
|
const {
|
|
604
650
|
strategy = 'referenceHidden',
|
|
605
651
|
...detectOverflowOptions
|
|
606
652
|
} = options;
|
|
607
653
|
const {
|
|
608
654
|
rects
|
|
609
|
-
} =
|
|
655
|
+
} = state;
|
|
610
656
|
switch (strategy) {
|
|
611
657
|
case 'referenceHidden':
|
|
612
658
|
{
|
|
613
|
-
const overflow = await detectOverflow(
|
|
659
|
+
const overflow = await detectOverflow(state, {
|
|
614
660
|
...detectOverflowOptions,
|
|
615
661
|
elementContext: 'reference'
|
|
616
662
|
});
|
|
@@ -624,7 +670,7 @@ const hide = function (options) {
|
|
|
624
670
|
}
|
|
625
671
|
case 'escaped':
|
|
626
672
|
{
|
|
627
|
-
const overflow = await detectOverflow(
|
|
673
|
+
const overflow = await detectOverflow(state, {
|
|
628
674
|
...detectOverflowOptions,
|
|
629
675
|
altBoundary: true
|
|
630
676
|
});
|
|
@@ -645,19 +691,19 @@ const hide = function (options) {
|
|
|
645
691
|
};
|
|
646
692
|
};
|
|
647
693
|
|
|
648
|
-
async function convertValueToCoords(
|
|
694
|
+
async function convertValueToCoords(state, value) {
|
|
649
695
|
const {
|
|
650
696
|
placement,
|
|
651
697
|
platform,
|
|
652
698
|
elements
|
|
653
|
-
} =
|
|
699
|
+
} = state;
|
|
654
700
|
const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));
|
|
655
701
|
const side = getSide(placement);
|
|
656
702
|
const alignment = getAlignment(placement);
|
|
657
703
|
const isVertical = getMainAxisFromPlacement(placement) === 'x';
|
|
658
704
|
const mainAxisMulti = ['left', 'top'].includes(side) ? -1 : 1;
|
|
659
705
|
const crossAxisMulti = rtl && isVertical ? -1 : 1;
|
|
660
|
-
const rawValue = typeof value === 'function' ? value(
|
|
706
|
+
const rawValue = typeof value === 'function' ? value(state) : value;
|
|
661
707
|
|
|
662
708
|
// eslint-disable-next-line prefer-const
|
|
663
709
|
let {
|
|
@@ -687,7 +733,10 @@ async function convertValueToCoords(middlewareArguments, value) {
|
|
|
687
733
|
}
|
|
688
734
|
|
|
689
735
|
/**
|
|
690
|
-
*
|
|
736
|
+
* Modifies the placement by translating the floating element along the
|
|
737
|
+
* specified axes.
|
|
738
|
+
* A number (shorthand for `mainAxis` or distance), or an axes configuration
|
|
739
|
+
* object may be passed.
|
|
691
740
|
* @see https://floating-ui.com/docs/offset
|
|
692
741
|
*/
|
|
693
742
|
const offset = function (value) {
|
|
@@ -697,12 +746,12 @@ const offset = function (value) {
|
|
|
697
746
|
return {
|
|
698
747
|
name: 'offset',
|
|
699
748
|
options: value,
|
|
700
|
-
async fn(
|
|
749
|
+
async fn(state) {
|
|
701
750
|
const {
|
|
702
751
|
x,
|
|
703
752
|
y
|
|
704
|
-
} =
|
|
705
|
-
const diffCoords = await convertValueToCoords(
|
|
753
|
+
} = state;
|
|
754
|
+
const diffCoords = await convertValueToCoords(state, value);
|
|
706
755
|
return {
|
|
707
756
|
x: x + diffCoords.x,
|
|
708
757
|
y: y + diffCoords.y,
|
|
@@ -717,8 +766,8 @@ function getCrossAxis(axis) {
|
|
|
717
766
|
}
|
|
718
767
|
|
|
719
768
|
/**
|
|
720
|
-
*
|
|
721
|
-
*
|
|
769
|
+
* Optimizes the visibility of the floating element by shifting it in order to
|
|
770
|
+
* keep it in view when it will overflow the clipping boundary.
|
|
722
771
|
* @see https://floating-ui.com/docs/shift
|
|
723
772
|
*/
|
|
724
773
|
const shift = function (options) {
|
|
@@ -728,12 +777,12 @@ const shift = function (options) {
|
|
|
728
777
|
return {
|
|
729
778
|
name: 'shift',
|
|
730
779
|
options,
|
|
731
|
-
async fn(
|
|
780
|
+
async fn(state) {
|
|
732
781
|
const {
|
|
733
782
|
x,
|
|
734
783
|
y,
|
|
735
784
|
placement
|
|
736
|
-
} =
|
|
785
|
+
} = state;
|
|
737
786
|
const {
|
|
738
787
|
mainAxis: checkMainAxis = true,
|
|
739
788
|
crossAxis: checkCrossAxis = false,
|
|
@@ -755,7 +804,7 @@ const shift = function (options) {
|
|
|
755
804
|
x,
|
|
756
805
|
y
|
|
757
806
|
};
|
|
758
|
-
const overflow = await detectOverflow(
|
|
807
|
+
const overflow = await detectOverflow(state, detectOverflowOptions);
|
|
759
808
|
const mainAxis = getMainAxisFromPlacement(getSide(placement));
|
|
760
809
|
const crossAxis = getCrossAxis(mainAxis);
|
|
761
810
|
let mainAxisCoord = coords[mainAxis];
|
|
@@ -775,7 +824,7 @@ const shift = function (options) {
|
|
|
775
824
|
crossAxisCoord = within(min, crossAxisCoord, max);
|
|
776
825
|
}
|
|
777
826
|
const limitedCoords = limiter.fn({
|
|
778
|
-
...
|
|
827
|
+
...state,
|
|
779
828
|
[mainAxis]: mainAxisCoord,
|
|
780
829
|
[crossAxis]: crossAxisCoord
|
|
781
830
|
});
|
|
@@ -799,6 +848,28 @@ function getComputedStyle$1(element) {
|
|
|
799
848
|
return getWindow(element).getComputedStyle(element);
|
|
800
849
|
}
|
|
801
850
|
|
|
851
|
+
const min = Math.min;
|
|
852
|
+
const max = Math.max;
|
|
853
|
+
const round = Math.round;
|
|
854
|
+
|
|
855
|
+
function getCssDimensions(element) {
|
|
856
|
+
const css = getComputedStyle$1(element);
|
|
857
|
+
let width = parseFloat(css.width);
|
|
858
|
+
let height = parseFloat(css.height);
|
|
859
|
+
const offsetWidth = element.offsetWidth;
|
|
860
|
+
const offsetHeight = element.offsetHeight;
|
|
861
|
+
const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;
|
|
862
|
+
if (shouldFallback) {
|
|
863
|
+
width = offsetWidth;
|
|
864
|
+
height = offsetHeight;
|
|
865
|
+
}
|
|
866
|
+
return {
|
|
867
|
+
width,
|
|
868
|
+
height,
|
|
869
|
+
fallback: shouldFallback
|
|
870
|
+
};
|
|
871
|
+
}
|
|
872
|
+
|
|
802
873
|
function getNodeName(node) {
|
|
803
874
|
return isNode(node) ? (node.nodeName || '').toLowerCase() : '';
|
|
804
875
|
}
|
|
@@ -826,7 +897,7 @@ function isNode(value) {
|
|
|
826
897
|
return value instanceof getWindow(value).Node;
|
|
827
898
|
}
|
|
828
899
|
function isShadowRoot(node) {
|
|
829
|
-
// Browsers without `ShadowRoot` support
|
|
900
|
+
// Browsers without `ShadowRoot` support.
|
|
830
901
|
if (typeof ShadowRoot === 'undefined') {
|
|
831
902
|
return false;
|
|
832
903
|
}
|
|
@@ -846,7 +917,7 @@ function isTableElement(element) {
|
|
|
846
917
|
return ['table', 'td', 'th'].includes(getNodeName(element));
|
|
847
918
|
}
|
|
848
919
|
function isContainingBlock(element) {
|
|
849
|
-
// TODO: Try
|
|
920
|
+
// TODO: Try to use feature detection here instead.
|
|
850
921
|
const isFirefox = /firefox/i.test(getUAString());
|
|
851
922
|
const css = getComputedStyle$1(element);
|
|
852
923
|
const backdropFilter = css.backdropFilter || css.WebkitBackdropFilter;
|
|
@@ -854,49 +925,33 @@ function isContainingBlock(element) {
|
|
|
854
925
|
// This is non-exhaustive but covers the most common CSS properties that
|
|
855
926
|
// create a containing block.
|
|
856
927
|
// https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
|
|
857
|
-
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(
|
|
858
|
-
|
|
859
|
-
value => {
|
|
928
|
+
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 => {
|
|
929
|
+
// Add type check for old browsers.
|
|
860
930
|
const contain = css.contain;
|
|
861
931
|
return contain != null ? contain.includes(value) : false;
|
|
862
932
|
});
|
|
863
933
|
}
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
934
|
+
|
|
935
|
+
/**
|
|
936
|
+
* Determines whether or not `.getBoundingClientRect()` is affected by visual
|
|
937
|
+
* viewport offsets. In Safari, the `x`/`y` offsets are values relative to the
|
|
938
|
+
* visual viewport, while in other engines, they are values relative to the
|
|
939
|
+
* layout viewport.
|
|
940
|
+
*/
|
|
941
|
+
function isClientRectVisualViewportBased() {
|
|
942
|
+
// TODO: Try to use feature detection here instead. Feature detection for
|
|
943
|
+
// this can fail in various ways, making the userAgent check the most
|
|
944
|
+
// reliable:
|
|
868
945
|
// • Always-visible scrollbar or not
|
|
869
|
-
// • Width of <html
|
|
870
|
-
// const vV = win.visualViewport;
|
|
871
|
-
// return vV ? Math.abs(win.innerWidth / vV.scale - vV.width) < 0.5 : true;
|
|
872
|
-
}
|
|
946
|
+
// • Width of <html>
|
|
873
947
|
|
|
948
|
+
// Is Safari.
|
|
949
|
+
return /^((?!chrome|android).)*safari/i.test(getUAString());
|
|
950
|
+
}
|
|
874
951
|
function isLastTraversableNode(node) {
|
|
875
952
|
return ['html', 'body', '#document'].includes(getNodeName(node));
|
|
876
953
|
}
|
|
877
954
|
|
|
878
|
-
const min = Math.min;
|
|
879
|
-
const max = Math.max;
|
|
880
|
-
const round = Math.round;
|
|
881
|
-
|
|
882
|
-
function getCssDimensions(element) {
|
|
883
|
-
const css = getComputedStyle$1(element);
|
|
884
|
-
let width = parseFloat(css.width);
|
|
885
|
-
let height = parseFloat(css.height);
|
|
886
|
-
const offsetWidth = element.offsetWidth;
|
|
887
|
-
const offsetHeight = element.offsetHeight;
|
|
888
|
-
const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;
|
|
889
|
-
if (shouldFallback) {
|
|
890
|
-
width = offsetWidth;
|
|
891
|
-
height = offsetHeight;
|
|
892
|
-
}
|
|
893
|
-
return {
|
|
894
|
-
width,
|
|
895
|
-
height,
|
|
896
|
-
fallback: shouldFallback
|
|
897
|
-
};
|
|
898
|
-
}
|
|
899
|
-
|
|
900
955
|
function unwrapElement(element) {
|
|
901
956
|
return !isElement(element) ? element.contextElement : element;
|
|
902
957
|
}
|
|
@@ -954,7 +1009,7 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
|
|
|
954
1009
|
}
|
|
955
1010
|
}
|
|
956
1011
|
const win = domElement ? getWindow(domElement) : window;
|
|
957
|
-
const addVisualOffsets =
|
|
1012
|
+
const addVisualOffsets = isClientRectVisualViewportBased() && isFixedStrategy;
|
|
958
1013
|
let x = (clientRect.left + (addVisualOffsets ? ((_win$visualViewport = win.visualViewport) == null ? void 0 : _win$visualViewport.offsetLeft) || 0 : 0)) / scale.x;
|
|
959
1014
|
let y = (clientRect.top + (addVisualOffsets ? ((_win$visualViewport2 = win.visualViewport) == null ? void 0 : _win$visualViewport2.offsetTop) || 0 : 0)) / scale.y;
|
|
960
1015
|
let width = clientRect.width / scale.x;
|
|
@@ -1007,96 +1062,6 @@ function getNodeScroll(element) {
|
|
|
1007
1062
|
};
|
|
1008
1063
|
}
|
|
1009
1064
|
|
|
1010
|
-
function getWindowScrollBarX(element) {
|
|
1011
|
-
// If <html> has a CSS width greater than the viewport, then this will be
|
|
1012
|
-
// incorrect for RTL.
|
|
1013
|
-
return getBoundingClientRect(getDocumentElement(element)).left + getNodeScroll(element).scrollLeft;
|
|
1014
|
-
}
|
|
1015
|
-
|
|
1016
|
-
function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
|
|
1017
|
-
const isOffsetParentAnElement = isHTMLElement(offsetParent);
|
|
1018
|
-
const documentElement = getDocumentElement(offsetParent);
|
|
1019
|
-
const rect = getBoundingClientRect(element, true, strategy === 'fixed', offsetParent);
|
|
1020
|
-
let scroll = {
|
|
1021
|
-
scrollLeft: 0,
|
|
1022
|
-
scrollTop: 0
|
|
1023
|
-
};
|
|
1024
|
-
const offsets = {
|
|
1025
|
-
x: 0,
|
|
1026
|
-
y: 0
|
|
1027
|
-
};
|
|
1028
|
-
if (isOffsetParentAnElement || !isOffsetParentAnElement && strategy !== 'fixed') {
|
|
1029
|
-
if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
|
|
1030
|
-
scroll = getNodeScroll(offsetParent);
|
|
1031
|
-
}
|
|
1032
|
-
if (isHTMLElement(offsetParent)) {
|
|
1033
|
-
const offsetRect = getBoundingClientRect(offsetParent, true);
|
|
1034
|
-
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
1035
|
-
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
1036
|
-
} else if (documentElement) {
|
|
1037
|
-
offsets.x = getWindowScrollBarX(documentElement);
|
|
1038
|
-
}
|
|
1039
|
-
}
|
|
1040
|
-
return {
|
|
1041
|
-
x: rect.left + scroll.scrollLeft - offsets.x,
|
|
1042
|
-
y: rect.top + scroll.scrollTop - offsets.y,
|
|
1043
|
-
width: rect.width,
|
|
1044
|
-
height: rect.height
|
|
1045
|
-
};
|
|
1046
|
-
}
|
|
1047
|
-
|
|
1048
|
-
function getParentNode(node) {
|
|
1049
|
-
if (getNodeName(node) === 'html') {
|
|
1050
|
-
return node;
|
|
1051
|
-
}
|
|
1052
|
-
const result =
|
|
1053
|
-
// Step into the shadow DOM of the parent of a slotted node
|
|
1054
|
-
node.assignedSlot ||
|
|
1055
|
-
// DOM Element detected
|
|
1056
|
-
node.parentNode || (
|
|
1057
|
-
// ShadowRoot detected
|
|
1058
|
-
isShadowRoot(node) ? node.host : null) ||
|
|
1059
|
-
// Fallback
|
|
1060
|
-
getDocumentElement(node);
|
|
1061
|
-
return isShadowRoot(result) ? result.host : result;
|
|
1062
|
-
}
|
|
1063
|
-
|
|
1064
|
-
function getTrueOffsetParent(element) {
|
|
1065
|
-
if (!isHTMLElement(element) || getComputedStyle$1(element).position === 'fixed') {
|
|
1066
|
-
return null;
|
|
1067
|
-
}
|
|
1068
|
-
return element.offsetParent;
|
|
1069
|
-
}
|
|
1070
|
-
function getContainingBlock(element) {
|
|
1071
|
-
let currentNode = getParentNode(element);
|
|
1072
|
-
while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {
|
|
1073
|
-
if (isContainingBlock(currentNode)) {
|
|
1074
|
-
return currentNode;
|
|
1075
|
-
} else {
|
|
1076
|
-
currentNode = getParentNode(currentNode);
|
|
1077
|
-
}
|
|
1078
|
-
}
|
|
1079
|
-
return null;
|
|
1080
|
-
}
|
|
1081
|
-
|
|
1082
|
-
// Gets the closest ancestor positioned element. Handles some edge cases,
|
|
1083
|
-
// such as table ancestors and cross browser bugs.
|
|
1084
|
-
function getOffsetParent(element) {
|
|
1085
|
-
const window = getWindow(element);
|
|
1086
|
-
let offsetParent = getTrueOffsetParent(element);
|
|
1087
|
-
while (offsetParent && isTableElement(offsetParent) && getComputedStyle$1(offsetParent).position === 'static') {
|
|
1088
|
-
offsetParent = getTrueOffsetParent(offsetParent);
|
|
1089
|
-
}
|
|
1090
|
-
if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle$1(offsetParent).position === 'static' && !isContainingBlock(offsetParent))) {
|
|
1091
|
-
return window;
|
|
1092
|
-
}
|
|
1093
|
-
return offsetParent || getContainingBlock(element) || window;
|
|
1094
|
-
}
|
|
1095
|
-
|
|
1096
|
-
function getDimensions(element) {
|
|
1097
|
-
return getCssDimensions(element);
|
|
1098
|
-
}
|
|
1099
|
-
|
|
1100
1065
|
function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
1101
1066
|
let {
|
|
1102
1067
|
rect,
|
|
@@ -1130,12 +1095,7 @@ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
|
1130
1095
|
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
1131
1096
|
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
1132
1097
|
}
|
|
1133
|
-
// This doesn't appear to need to be negated.
|
|
1134
|
-
// else if (documentElement) {
|
|
1135
|
-
// offsets.x = getWindowScrollBarX(documentElement);
|
|
1136
|
-
// }
|
|
1137
1098
|
}
|
|
1138
|
-
|
|
1139
1099
|
return {
|
|
1140
1100
|
width: rect.width * scale.x,
|
|
1141
1101
|
height: rect.height * scale.y,
|
|
@@ -1144,44 +1104,24 @@ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
|
1144
1104
|
};
|
|
1145
1105
|
}
|
|
1146
1106
|
|
|
1147
|
-
function
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
let width = html.clientWidth;
|
|
1152
|
-
let height = html.clientHeight;
|
|
1153
|
-
let x = 0;
|
|
1154
|
-
let y = 0;
|
|
1155
|
-
if (visualViewport) {
|
|
1156
|
-
width = visualViewport.width;
|
|
1157
|
-
height = visualViewport.height;
|
|
1158
|
-
const layoutViewport = isLayoutViewport();
|
|
1159
|
-
if (layoutViewport || !layoutViewport && strategy === 'fixed') {
|
|
1160
|
-
x = visualViewport.offsetLeft;
|
|
1161
|
-
y = visualViewport.offsetTop;
|
|
1162
|
-
}
|
|
1163
|
-
}
|
|
1164
|
-
return {
|
|
1165
|
-
width,
|
|
1166
|
-
height,
|
|
1167
|
-
x,
|
|
1168
|
-
y
|
|
1169
|
-
};
|
|
1107
|
+
function getWindowScrollBarX(element) {
|
|
1108
|
+
// If <html> has a CSS width greater than the viewport, then this will be
|
|
1109
|
+
// incorrect for RTL.
|
|
1110
|
+
return getBoundingClientRect(getDocumentElement(element)).left + getNodeScroll(element).scrollLeft;
|
|
1170
1111
|
}
|
|
1171
1112
|
|
|
1172
1113
|
// Gets the entire size of the scrollable document area, even extending outside
|
|
1173
|
-
// of the `<html>` and `<body>` rect bounds if horizontally scrollable
|
|
1114
|
+
// of the `<html>` and `<body>` rect bounds if horizontally scrollable.
|
|
1174
1115
|
function getDocumentRect(element) {
|
|
1175
|
-
var _element$ownerDocumen;
|
|
1176
1116
|
const html = getDocumentElement(element);
|
|
1177
1117
|
const scroll = getNodeScroll(element);
|
|
1178
|
-
const body =
|
|
1179
|
-
const width = max(html.scrollWidth, html.clientWidth, body
|
|
1180
|
-
const height = max(html.scrollHeight, html.clientHeight, body
|
|
1118
|
+
const body = element.ownerDocument.body;
|
|
1119
|
+
const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);
|
|
1120
|
+
const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);
|
|
1181
1121
|
let x = -scroll.scrollLeft + getWindowScrollBarX(element);
|
|
1182
1122
|
const y = -scroll.scrollTop;
|
|
1183
|
-
if (getComputedStyle$1(body
|
|
1184
|
-
x += max(html.clientWidth, body
|
|
1123
|
+
if (getComputedStyle$1(body).direction === 'rtl') {
|
|
1124
|
+
x += max(html.clientWidth, body.clientWidth) - width;
|
|
1185
1125
|
}
|
|
1186
1126
|
return {
|
|
1187
1127
|
width,
|
|
@@ -1191,11 +1131,28 @@ function getDocumentRect(element) {
|
|
|
1191
1131
|
};
|
|
1192
1132
|
}
|
|
1193
1133
|
|
|
1134
|
+
function getParentNode(node) {
|
|
1135
|
+
if (getNodeName(node) === 'html') {
|
|
1136
|
+
return node;
|
|
1137
|
+
}
|
|
1138
|
+
const result =
|
|
1139
|
+
// Step into the shadow DOM of the parent of a slotted node.
|
|
1140
|
+
node.assignedSlot ||
|
|
1141
|
+
// DOM Element detected.
|
|
1142
|
+
node.parentNode ||
|
|
1143
|
+
// ShadowRoot detected.
|
|
1144
|
+
isShadowRoot(node) && node.host ||
|
|
1145
|
+
// Fallback.
|
|
1146
|
+
getDocumentElement(node);
|
|
1147
|
+
return isShadowRoot(result) ? result.host : result;
|
|
1148
|
+
}
|
|
1149
|
+
|
|
1194
1150
|
function getNearestOverflowAncestor(node) {
|
|
1195
1151
|
const parentNode = getParentNode(node);
|
|
1196
1152
|
if (isLastTraversableNode(parentNode)) {
|
|
1197
|
-
//
|
|
1198
|
-
|
|
1153
|
+
// `getParentNode` will never return a `Document` due to the fallback
|
|
1154
|
+
// check, so it's either the <html> or <body> element.
|
|
1155
|
+
return parentNode.ownerDocument.body;
|
|
1199
1156
|
}
|
|
1200
1157
|
if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {
|
|
1201
1158
|
return parentNode;
|
|
@@ -1217,7 +1174,32 @@ function getOverflowAncestors(node, list) {
|
|
|
1217
1174
|
return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor));
|
|
1218
1175
|
}
|
|
1219
1176
|
|
|
1220
|
-
|
|
1177
|
+
function getViewportRect(element, strategy) {
|
|
1178
|
+
const win = getWindow(element);
|
|
1179
|
+
const html = getDocumentElement(element);
|
|
1180
|
+
const visualViewport = win.visualViewport;
|
|
1181
|
+
let width = html.clientWidth;
|
|
1182
|
+
let height = html.clientHeight;
|
|
1183
|
+
let x = 0;
|
|
1184
|
+
let y = 0;
|
|
1185
|
+
if (visualViewport) {
|
|
1186
|
+
width = visualViewport.width;
|
|
1187
|
+
height = visualViewport.height;
|
|
1188
|
+
const visualViewportBased = isClientRectVisualViewportBased();
|
|
1189
|
+
if (!visualViewportBased || visualViewportBased && strategy === 'fixed') {
|
|
1190
|
+
x = visualViewport.offsetLeft;
|
|
1191
|
+
y = visualViewport.offsetTop;
|
|
1192
|
+
}
|
|
1193
|
+
}
|
|
1194
|
+
return {
|
|
1195
|
+
width,
|
|
1196
|
+
height,
|
|
1197
|
+
x,
|
|
1198
|
+
y
|
|
1199
|
+
};
|
|
1200
|
+
}
|
|
1201
|
+
|
|
1202
|
+
// Returns the inner client rect, subtracting scrollbars if present.
|
|
1221
1203
|
function getInnerBoundingClientRect(element, strategy) {
|
|
1222
1204
|
const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');
|
|
1223
1205
|
const top = clientRect.top + element.clientTop;
|
|
@@ -1231,24 +1213,33 @@ function getInnerBoundingClientRect(element, strategy) {
|
|
|
1231
1213
|
const x = left * scale.x;
|
|
1232
1214
|
const y = top * scale.y;
|
|
1233
1215
|
return {
|
|
1234
|
-
top: y,
|
|
1235
|
-
left: x,
|
|
1236
|
-
right: x + width,
|
|
1237
|
-
bottom: y + height,
|
|
1238
|
-
x,
|
|
1239
|
-
y,
|
|
1240
1216
|
width,
|
|
1241
|
-
height
|
|
1217
|
+
height,
|
|
1218
|
+
x,
|
|
1219
|
+
y
|
|
1242
1220
|
};
|
|
1243
1221
|
}
|
|
1244
1222
|
function getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {
|
|
1223
|
+
let rect;
|
|
1245
1224
|
if (clippingAncestor === 'viewport') {
|
|
1246
|
-
|
|
1247
|
-
}
|
|
1248
|
-
|
|
1249
|
-
|
|
1225
|
+
rect = getViewportRect(element, strategy);
|
|
1226
|
+
} else if (clippingAncestor === 'document') {
|
|
1227
|
+
rect = getDocumentRect(getDocumentElement(element));
|
|
1228
|
+
} else if (isElement(clippingAncestor)) {
|
|
1229
|
+
rect = getInnerBoundingClientRect(clippingAncestor, strategy);
|
|
1230
|
+
} else {
|
|
1231
|
+
const mutableRect = {
|
|
1232
|
+
...clippingAncestor
|
|
1233
|
+
};
|
|
1234
|
+
if (isClientRectVisualViewportBased()) {
|
|
1235
|
+
var _win$visualViewport, _win$visualViewport2;
|
|
1236
|
+
const win = getWindow(element);
|
|
1237
|
+
mutableRect.x -= ((_win$visualViewport = win.visualViewport) == null ? void 0 : _win$visualViewport.offsetLeft) || 0;
|
|
1238
|
+
mutableRect.y -= ((_win$visualViewport2 = win.visualViewport) == null ? void 0 : _win$visualViewport2.offsetTop) || 0;
|
|
1239
|
+
}
|
|
1240
|
+
rect = mutableRect;
|
|
1250
1241
|
}
|
|
1251
|
-
return rectToClientRect(
|
|
1242
|
+
return rectToClientRect(rect);
|
|
1252
1243
|
}
|
|
1253
1244
|
|
|
1254
1245
|
// A "clipping ancestor" is an `overflow` element with the characteristic of
|
|
@@ -1268,13 +1259,18 @@ function getClippingElementAncestors(element, cache) {
|
|
|
1268
1259
|
while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {
|
|
1269
1260
|
const computedStyle = getComputedStyle$1(currentNode);
|
|
1270
1261
|
const containingBlock = isContainingBlock(currentNode);
|
|
1271
|
-
const
|
|
1272
|
-
if (
|
|
1273
|
-
|
|
1274
|
-
result = result.filter(ancestor => ancestor !== currentNode);
|
|
1262
|
+
const shouldIgnoreCurrentNode = computedStyle.position === 'fixed';
|
|
1263
|
+
if (shouldIgnoreCurrentNode) {
|
|
1264
|
+
currentContainingBlockComputedStyle = null;
|
|
1275
1265
|
} else {
|
|
1276
|
-
|
|
1277
|
-
|
|
1266
|
+
const shouldDropCurrentNode = elementIsFixed ? !containingBlock && !currentContainingBlockComputedStyle : !containingBlock && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && ['absolute', 'fixed'].includes(currentContainingBlockComputedStyle.position);
|
|
1267
|
+
if (shouldDropCurrentNode) {
|
|
1268
|
+
// Drop non-containing blocks.
|
|
1269
|
+
result = result.filter(ancestor => ancestor !== currentNode);
|
|
1270
|
+
} else {
|
|
1271
|
+
// Record last containing block for next iteration.
|
|
1272
|
+
currentContainingBlockComputedStyle = computedStyle;
|
|
1273
|
+
}
|
|
1278
1274
|
}
|
|
1279
1275
|
currentNode = getParentNode(currentNode);
|
|
1280
1276
|
}
|
|
@@ -1283,7 +1279,7 @@ function getClippingElementAncestors(element, cache) {
|
|
|
1283
1279
|
}
|
|
1284
1280
|
|
|
1285
1281
|
// Gets the maximum area that the element is visible in due to any number of
|
|
1286
|
-
// clipping ancestors
|
|
1282
|
+
// clipping ancestors.
|
|
1287
1283
|
function getClippingRect(_ref) {
|
|
1288
1284
|
let {
|
|
1289
1285
|
element,
|
|
@@ -1310,6 +1306,80 @@ function getClippingRect(_ref) {
|
|
|
1310
1306
|
};
|
|
1311
1307
|
}
|
|
1312
1308
|
|
|
1309
|
+
function getDimensions(element) {
|
|
1310
|
+
if (isHTMLElement(element)) {
|
|
1311
|
+
return getCssDimensions(element);
|
|
1312
|
+
}
|
|
1313
|
+
return element.getBoundingClientRect();
|
|
1314
|
+
}
|
|
1315
|
+
|
|
1316
|
+
function getTrueOffsetParent(element, polyfill) {
|
|
1317
|
+
if (!isHTMLElement(element) || getComputedStyle$1(element).position === 'fixed') {
|
|
1318
|
+
return null;
|
|
1319
|
+
}
|
|
1320
|
+
if (polyfill) {
|
|
1321
|
+
return polyfill(element);
|
|
1322
|
+
}
|
|
1323
|
+
return element.offsetParent;
|
|
1324
|
+
}
|
|
1325
|
+
function getContainingBlock(element) {
|
|
1326
|
+
let currentNode = getParentNode(element);
|
|
1327
|
+
while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {
|
|
1328
|
+
if (isContainingBlock(currentNode)) {
|
|
1329
|
+
return currentNode;
|
|
1330
|
+
} else {
|
|
1331
|
+
currentNode = getParentNode(currentNode);
|
|
1332
|
+
}
|
|
1333
|
+
}
|
|
1334
|
+
return null;
|
|
1335
|
+
}
|
|
1336
|
+
|
|
1337
|
+
// Gets the closest ancestor positioned element. Handles some edge cases,
|
|
1338
|
+
// such as table ancestors and cross browser bugs.
|
|
1339
|
+
function getOffsetParent(element, polyfill) {
|
|
1340
|
+
const window = getWindow(element);
|
|
1341
|
+
let offsetParent = getTrueOffsetParent(element, polyfill);
|
|
1342
|
+
while (offsetParent && isTableElement(offsetParent) && getComputedStyle$1(offsetParent).position === 'static') {
|
|
1343
|
+
offsetParent = getTrueOffsetParent(offsetParent, polyfill);
|
|
1344
|
+
}
|
|
1345
|
+
if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle$1(offsetParent).position === 'static' && !isContainingBlock(offsetParent))) {
|
|
1346
|
+
return window;
|
|
1347
|
+
}
|
|
1348
|
+
return offsetParent || getContainingBlock(element) || window;
|
|
1349
|
+
}
|
|
1350
|
+
|
|
1351
|
+
function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
|
|
1352
|
+
const isOffsetParentAnElement = isHTMLElement(offsetParent);
|
|
1353
|
+
const documentElement = getDocumentElement(offsetParent);
|
|
1354
|
+
const rect = getBoundingClientRect(element, true, strategy === 'fixed', offsetParent);
|
|
1355
|
+
let scroll = {
|
|
1356
|
+
scrollLeft: 0,
|
|
1357
|
+
scrollTop: 0
|
|
1358
|
+
};
|
|
1359
|
+
const offsets = {
|
|
1360
|
+
x: 0,
|
|
1361
|
+
y: 0
|
|
1362
|
+
};
|
|
1363
|
+
if (isOffsetParentAnElement || !isOffsetParentAnElement && strategy !== 'fixed') {
|
|
1364
|
+
if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
|
|
1365
|
+
scroll = getNodeScroll(offsetParent);
|
|
1366
|
+
}
|
|
1367
|
+
if (isHTMLElement(offsetParent)) {
|
|
1368
|
+
const offsetRect = getBoundingClientRect(offsetParent, true);
|
|
1369
|
+
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
1370
|
+
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
1371
|
+
} else if (documentElement) {
|
|
1372
|
+
offsets.x = getWindowScrollBarX(documentElement);
|
|
1373
|
+
}
|
|
1374
|
+
}
|
|
1375
|
+
return {
|
|
1376
|
+
x: rect.left + scroll.scrollLeft - offsets.x,
|
|
1377
|
+
y: rect.top + scroll.scrollTop - offsets.y,
|
|
1378
|
+
width: rect.width,
|
|
1379
|
+
height: rect.height
|
|
1380
|
+
};
|
|
1381
|
+
}
|
|
1382
|
+
|
|
1313
1383
|
const platform = {
|
|
1314
1384
|
getClippingRect,
|
|
1315
1385
|
convertOffsetParentRelativeRectToViewportRelativeRect,
|
|
@@ -1341,6 +1411,10 @@ const platform = {
|
|
|
1341
1411
|
|
|
1342
1412
|
/**
|
|
1343
1413
|
* Automatically updates the position of the floating element when necessary.
|
|
1414
|
+
* Should only be called when the floating element is mounted on the DOM or
|
|
1415
|
+
* visible on the screen.
|
|
1416
|
+
* @returns cleanup function that should be invoked when the floating element is
|
|
1417
|
+
* removed from the DOM or hidden from the screen.
|
|
1344
1418
|
* @see https://floating-ui.com/docs/autoUpdate
|
|
1345
1419
|
*/
|
|
1346
1420
|
function autoUpdate(reference, floating, update, options) {
|
|
@@ -1447,20 +1521,31 @@ const config = {
|
|
|
1447
1521
|
|
|
1448
1522
|
const floatingUIBrowserCheck = patchFloatingUiForNonChromiumBrowsers();
|
|
1449
1523
|
async function patchFloatingUiForNonChromiumBrowsers() {
|
|
1524
|
+
function getUAData() {
|
|
1525
|
+
return navigator.userAgentData;
|
|
1526
|
+
}
|
|
1450
1527
|
function getUAString() {
|
|
1451
|
-
const uaData =
|
|
1528
|
+
const uaData = getUAData();
|
|
1529
|
+
return uaData?.brands
|
|
1530
|
+
? uaData.brands.map(({ brand, version }) => `${brand}/${version}`).join(" ")
|
|
1531
|
+
: navigator.userAgent;
|
|
1532
|
+
}
|
|
1533
|
+
function isChrome109OrAbove() {
|
|
1534
|
+
const uaData = getUAData();
|
|
1452
1535
|
if (uaData?.brands) {
|
|
1453
|
-
return uaData.brands.
|
|
1536
|
+
return !!uaData.brands.find(({ brand, version }) => (brand === "Google Chrome" || brand === "Chromium") && Number(version) >= 109);
|
|
1454
1537
|
}
|
|
1455
|
-
return navigator.userAgent
|
|
1538
|
+
return !!navigator.userAgent.split(" ").find((ua) => {
|
|
1539
|
+
const [browser, version] = ua.split("/");
|
|
1540
|
+
return browser === "Chrome" && parseInt(version) >= 109;
|
|
1541
|
+
});
|
|
1456
1542
|
}
|
|
1457
1543
|
if (config.floatingUINonChromiumPositioningFix &&
|
|
1458
1544
|
// ⚠️ browser-sniffing is not a best practice and should be avoided ⚠️
|
|
1459
|
-
/firefox|safari/i.test(getUAString())) {
|
|
1460
|
-
const {
|
|
1461
|
-
|
|
1462
|
-
platform.getOffsetParent =
|
|
1463
|
-
platform.getElementRects = getElementRects;
|
|
1545
|
+
(/firefox|safari/i.test(getUAString()) || isChrome109OrAbove())) {
|
|
1546
|
+
const { offsetParent } = await import('./utils-9b472a57.js');
|
|
1547
|
+
const originalGetOffsetParent = platform.getOffsetParent;
|
|
1548
|
+
platform.getOffsetParent = (element) => originalGetOffsetParent(element, offsetParent);
|
|
1464
1549
|
}
|
|
1465
1550
|
}
|
|
1466
1551
|
/**
|
|
@@ -1723,4 +1808,4 @@ function getFloatingElFromTransitionTarget(floatingTransitionEl) {
|
|
|
1723
1808
|
return closestElementCrossShadowBoundary(floatingTransitionEl, `[${placementDataAttribute}]`);
|
|
1724
1809
|
}
|
|
1725
1810
|
|
|
1726
|
-
export { FloatingCSS as F, disconnectFloatingUI as a, defaultOffsetDistance as b, connectFloatingUI as c, defaultMenuPlacement as d,
|
|
1811
|
+
export { FloatingCSS as F, disconnectFloatingUI as a, defaultOffsetDistance as b, connectFloatingUI as c, defaultMenuPlacement as d, filterComputedPlacements as f, reposition as r, updateAfterClose as u };
|