@siemens/ix 2.0.0-beta.0 → 2.0.0-beta.1
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/cjs/base-button-c158438e.js +50 -0
- package/dist/cjs/base-button-c158438e.js.map +1 -0
- package/dist/cjs/base-icon-button-bbca2582.js +20 -0
- package/dist/cjs/base-icon-button-bbca2582.js.map +1 -0
- package/dist/cjs/breakpoints-e19e827e.js +27 -0
- package/dist/cjs/breakpoints-e19e827e.js.map +1 -0
- package/dist/cjs/context-0fdf2fa1.js +106 -0
- package/dist/cjs/context-0fdf2fa1.js.map +1 -0
- package/dist/cjs/{floating-ui.dom.esm-b79b633f.js → floating-ui.dom.esm-3b936e26.js} +654 -534
- package/dist/cjs/floating-ui.dom.esm-3b936e26.js.map +1 -0
- package/dist/cjs/{icon-eeb2940a.js → icon-9e9f2faf.js} +2 -2
- package/dist/cjs/{icon-eeb2940a.js.map → icon-9e9f2faf.js.map} +1 -1
- package/dist/cjs/index-1061a1c1.js +8 -0
- package/dist/cjs/index-1061a1c1.js.map +1 -0
- package/dist/cjs/{index-e56a1d39.js → index-be499a74.js} +45 -398
- package/dist/cjs/index-be499a74.js.map +1 -0
- package/dist/cjs/index.cjs.js +4 -4
- package/dist/cjs/ix-action-card.cjs.entry.js +3 -3
- package/dist/cjs/ix-action-card.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-application-header.cjs.entry.js +10 -5
- package/dist/cjs/ix-application-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-application-sidebar.cjs.entry.js +47 -0
- package/dist/cjs/ix-application-sidebar.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-application.cjs.entry.js +109 -0
- package/dist/cjs/ix-application.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-avatar.cjs.entry.js +1 -1
- package/dist/cjs/ix-basic-navigation.cjs.entry.js +44 -10
- package/dist/cjs/ix-basic-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-blind.cjs.entry.js +5 -4
- package/dist/cjs/ix-blind.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-breadcrumb_2.cjs.entry.js +100 -92
- package/dist/cjs/ix-breadcrumb_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-burger-menu.cjs.entry.js +3 -3
- package/dist/cjs/ix-burger-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-button.cjs.entry.js +22 -7
- package/dist/cjs/ix-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-card-accordion_2.cjs.entry.js +2 -2
- package/dist/cjs/ix-card-accordion_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-card-list.cjs.entry.js +2 -2
- package/dist/cjs/ix-card-list.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-card_2.cjs.entry.js +3 -3
- package/dist/cjs/ix-card_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-category-filter.cjs.entry.js +73 -40
- package/dist/cjs/ix-category-filter.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-chip.cjs.entry.js +2 -2
- package/dist/cjs/ix-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-col.cjs.entry.js +77 -0
- package/dist/cjs/ix-col.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-content-header.cjs.entry.js +1 -1
- package/dist/cjs/ix-content.cjs.entry.js +32 -0
- package/dist/cjs/ix-content.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-css-grid-item.cjs.entry.js +1 -1
- package/dist/cjs/ix-css-grid-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-css-grid.cjs.entry.js +1 -1
- package/dist/cjs/ix-css-grid.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-date-picker_2.cjs.entry.js +4 -4
- package/dist/cjs/ix-date-picker_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-date-time-card.cjs.entry.js +2 -2
- package/dist/cjs/ix-date-time-card.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-datetime-picker.cjs.entry.js +2 -2
- package/dist/cjs/ix-datetime-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-divider.cjs.entry.js +1 -1
- package/dist/cjs/ix-drawer.cjs.entry.js +2 -2
- package/dist/cjs/ix-drawer.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-dropdown-button.cjs.entry.js +4 -3
- package/dist/cjs/ix-dropdown-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-dropdown-header.cjs.entry.js +2 -2
- package/dist/cjs/ix-dropdown-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-dropdown-quick-actions.cjs.entry.js +1 -1
- package/dist/cjs/ix-dropdown_2.cjs.entry.js +6 -8
- package/dist/cjs/ix-dropdown_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-empty-state.cjs.entry.js +2 -2
- package/dist/cjs/ix-empty-state.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-event-list_2.cjs.entry.js +3 -3
- package/dist/cjs/ix-event-list_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-expanding-search.cjs.entry.js +2 -2
- package/dist/cjs/ix-expanding-search.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-filter-chip.cjs.entry.js +4 -3
- package/dist/cjs/ix-filter-chip.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-flip-tile_2.cjs.entry.js +28 -18
- package/dist/cjs/ix-flip-tile_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-form-field.cjs.entry.js +27 -0
- package/dist/cjs/ix-form-field.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-grid.cjs.entry.js +29 -0
- package/dist/cjs/ix-grid.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-group-context-menu.cjs.entry.js +2 -2
- package/dist/cjs/ix-group_2.cjs.entry.js +4 -4
- package/dist/cjs/ix-group_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-icon-button.cjs.entry.js +21 -13
- package/dist/cjs/ix-icon-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-icon-toggle-button.cjs.entry.js +88 -0
- package/dist/cjs/ix-icon-toggle-button.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-icon.cjs.entry.js +2 -2
- package/dist/cjs/ix-input-group.cjs.entry.js +85 -18
- package/dist/cjs/ix-input-group.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-key-value-list.cjs.entry.js +1 -1
- package/dist/cjs/ix-key-value.cjs.entry.js +1 -1
- package/dist/cjs/ix-kpi.cjs.entry.js +2 -2
- package/dist/cjs/ix-kpi.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-link-button.cjs.entry.js +2 -2
- package/dist/cjs/ix-link-button.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-map-navigation_2.cjs.entry.js +11 -3
- package/dist/cjs/ix-map-navigation_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-menu-category.cjs.entry.js +6 -5
- package/dist/cjs/ix-menu-category.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-menu_9.cjs.entry.js +101 -75
- package/dist/cjs/ix-menu_9.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-message-bar.cjs.entry.js +2 -2
- package/dist/cjs/ix-message-bar.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-modal-content.cjs.entry.js +2 -2
- package/dist/cjs/ix-modal-content.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-modal-example.cjs.entry.js +1 -1
- package/dist/cjs/ix-modal-footer.cjs.entry.js +2 -2
- package/dist/cjs/ix-modal-footer.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-modal-header.cjs.entry.js +2 -2
- package/dist/cjs/ix-modal-header.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-modal-loading.cjs.entry.js +1 -1
- package/dist/cjs/ix-modal.cjs.entry.js +2 -2
- package/dist/cjs/ix-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-pagination.cjs.entry.js +32 -15
- package/dist/cjs/ix-pagination.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-pill.cjs.entry.js +2 -2
- package/dist/cjs/ix-pill.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-push-card.cjs.entry.js +5 -2
- package/dist/cjs/ix-push-card.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-row.cjs.entry.js +21 -0
- package/dist/cjs/ix-row.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-select_2.cjs.entry.js +68 -49
- package/dist/cjs/ix-select_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-spinner.cjs.entry.js +2 -2
- package/dist/cjs/ix-spinner.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-split-button_2.cjs.entry.js +7 -5
- package/dist/cjs/ix-split-button_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-tab-item.cjs.entry.js +11 -3
- package/dist/cjs/ix-tab-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-tabs.cjs.entry.js +22 -7
- package/dist/cjs/ix-tabs.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-tile.cjs.entry.js +2 -2
- package/dist/cjs/ix-tile.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-toast_2.cjs.entry.js +2 -2
- package/dist/cjs/ix-toast_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-toggle-button.cjs.entry.js +77 -0
- package/dist/cjs/ix-toggle-button.cjs.entry.js.map +1 -0
- package/dist/cjs/ix-toggle.cjs.entry.js +2 -2
- package/dist/cjs/ix-toggle.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-tooltip.cjs.entry.js +2 -2
- package/dist/cjs/ix-tree_2.cjs.entry.js +16 -9
- package/dist/cjs/ix-tree_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-typography.cjs.entry.js +25 -12
- package/dist/cjs/ix-typography.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-upload.cjs.entry.js +2 -2
- package/dist/cjs/ix-upload.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-validation-tooltip.cjs.entry.js +8 -8
- package/dist/cjs/ix-validation-tooltip.cjs.entry.js.map +1 -1
- package/dist/cjs/ix-workflow-step_2.cjs.entry.js +14 -18
- package/dist/cjs/ix-workflow-step_2.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/menu-service-f7ef5265.js +159 -0
- package/dist/cjs/menu-service-f7ef5265.js.map +1 -0
- package/dist/cjs/my-component.cjs.entry.js +1 -1
- package/dist/cjs/my-component.cjs.entry.js.map +1 -1
- package/dist/cjs/{shadow-dom-f9b90696.js → shadow-dom-9b10f758.js} +4 -1
- package/dist/cjs/shadow-dom-9b10f758.js.map +1 -0
- package/dist/cjs/siemens-ix.cjs.js +2 -2
- package/dist/cjs/{theme-switcher-bdbd0d30.js → theme-switcher-d0386ac9.js} +36 -4
- package/dist/cjs/theme-switcher-d0386ac9.js.map +1 -0
- package/dist/collection/collection-manifest.json +13 -13
- package/dist/collection/components/action-card/action-card.css +36 -0
- package/dist/collection/components/action-card/action-card.js +1 -1
- package/dist/collection/components/action-card/action-card.js.map +1 -1
- package/dist/collection/components/application/application.css +106 -0
- package/dist/collection/components/application/application.js +220 -0
- package/dist/collection/components/application/application.js.map +1 -0
- package/dist/collection/components/application-header/application-header.css +4 -2
- package/dist/collection/components/application-header/application-header.js +8 -28
- package/dist/collection/components/application-header/application-header.js.map +1 -1
- package/dist/collection/components/application-header/test/application-headet.ct.js +20 -0
- package/dist/collection/components/application-header/test/application-headet.ct.js.map +1 -0
- package/dist/collection/components/application-sidebar/application-sidebar.css +69 -0
- package/dist/collection/components/application-sidebar/application-sidebar.js +70 -0
- package/dist/collection/components/application-sidebar/application-sidebar.js.map +1 -0
- package/dist/collection/components/application-sidebar/events.js +15 -0
- package/dist/collection/components/application-sidebar/events.js.map +1 -0
- package/dist/collection/components/basic-navigation/basic-navigation.css +39 -2
- package/dist/collection/components/basic-navigation/basic-navigation.js +91 -8
- package/dist/collection/components/basic-navigation/basic-navigation.js.map +1 -1
- package/dist/collection/components/blind/blind.css +23 -8
- package/dist/collection/components/blind/blind.js +23 -2
- package/dist/collection/components/blind/blind.js.map +1 -1
- package/dist/collection/components/breadcrumb/breadcrumb.css +49 -153
- package/dist/collection/components/breadcrumb/breadcrumb.js +80 -92
- package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
- package/dist/collection/components/breadcrumb/test/breadcrumb.ct.js +97 -0
- package/dist/collection/components/breadcrumb/test/breadcrumb.ct.js.map +1 -0
- package/dist/collection/components/breadcrumb-item/breadcrumb-item.css +1063 -1
- package/dist/collection/components/breadcrumb-item/breadcrumb-item.js +153 -3
- package/dist/collection/components/breadcrumb-item/breadcrumb-item.js.map +1 -1
- package/dist/collection/components/button/base-button.js +10 -1
- package/dist/collection/components/button/base-button.js.map +1 -1
- package/dist/collection/components/button/button.css +287 -208
- package/dist/collection/components/button/button.js +62 -44
- package/dist/collection/components/button/button.js.map +1 -1
- package/dist/collection/components/card/card.css +36 -0
- package/dist/collection/components/card-accordion/card-accordion.css +37 -0
- package/dist/collection/components/card-content/card-content.css +36 -0
- package/dist/collection/components/card-list/card-list.css +36 -0
- package/dist/collection/components/category-filter/category-filter.css +1303 -4
- package/dist/collection/components/category-filter/category-filter.js +115 -55
- package/dist/collection/components/category-filter/category-filter.js.map +1 -1
- package/dist/collection/components/chip/chip.css +36 -0
- package/dist/collection/components/col/col.css +19 -0
- package/dist/collection/components/col/col.js +189 -0
- package/dist/collection/components/col/col.js.map +1 -0
- package/dist/collection/components/content/content.css +75 -0
- package/dist/collection/components/content/content.js +46 -0
- package/dist/collection/components/content/content.js.map +1 -0
- package/dist/collection/components/css-grid/builder.js.map +1 -0
- package/dist/collection/components/css-grid/css-grid-item.js.map +1 -0
- package/dist/collection/components/{layout/css-grid → css-grid}/css-grid.js +1 -1
- package/dist/collection/components/css-grid/css-grid.js.map +1 -0
- package/dist/collection/components/date-picker/date-picker.css +38 -0
- package/dist/collection/components/date-time-card/date-time-card.css +38 -0
- package/dist/collection/components/datetime-picker/datetime-picker.css +36 -0
- package/dist/collection/components/drawer/drawer.css +36 -0
- package/dist/collection/components/dropdown/dropdown.css +36 -0
- package/dist/collection/components/dropdown/dropdown.js.map +1 -1
- package/dist/collection/components/dropdown-button/dropdown-button.css +46 -4
- package/dist/collection/components/dropdown-button/dropdown-button.js +27 -1
- package/dist/collection/components/dropdown-button/dropdown-button.js.map +1 -1
- package/dist/collection/components/dropdown-header/dropdown-header.css +36 -0
- package/dist/collection/components/dropdown-item/dropdown-item.css +36 -0
- package/dist/collection/components/empty-state/empty-state.css +38 -0
- package/dist/collection/components/event-list/event-list.css +36 -0
- package/dist/collection/components/event-list-item/event-list-item.css +42 -4
- package/dist/collection/components/expanding-search/expanding-search.css +47 -4
- package/dist/collection/components/filter-chip/filter-chip.css +48 -1
- package/dist/collection/components/filter-chip/filter-chip.js +23 -1
- package/dist/collection/components/filter-chip/filter-chip.js.map +1 -1
- package/dist/collection/components/flip-tile/flip-tile.css +208 -0
- package/dist/collection/components/flip-tile/flip-tile.js +25 -36
- package/dist/collection/components/flip-tile/flip-tile.js.map +1 -1
- package/dist/collection/components/flip-tile/test/flip-tile.ct.js +57 -0
- package/dist/collection/components/flip-tile/test/flip-tile.ct.js.map +1 -0
- package/dist/collection/components/flip-tile-content/flip-tile-content.js +29 -1
- package/dist/collection/components/flip-tile-content/flip-tile-content.js.map +1 -1
- package/dist/collection/components/form-field/form-field.css +234 -0
- package/dist/collection/components/form-field/form-field.js +56 -0
- package/dist/collection/components/form-field/form-field.js.map +1 -0
- package/dist/collection/components/grid/grid.css +26 -0
- package/dist/collection/components/grid/grid.js +98 -0
- package/dist/collection/components/grid/grid.js.map +1 -0
- package/dist/collection/components/group/group.css +4 -4
- package/dist/collection/components/group-item/group-item.css +36 -0
- package/dist/collection/components/icon-button/base-icon-button.js +14 -0
- package/dist/collection/components/icon-button/base-icon-button.js.map +1 -0
- package/dist/collection/components/icon-button/icon-button.css +383 -173
- package/dist/collection/components/icon-button/icon-button.js +18 -49
- package/dist/collection/components/icon-button/icon-button.js.map +1 -1
- package/dist/collection/components/icon-toggle-button/icon-toggle-button.css +618 -0
- package/dist/collection/components/icon-toggle-button/icon-toggle-button.js +274 -0
- package/dist/collection/components/icon-toggle-button/icon-toggle-button.js.map +1 -0
- package/dist/collection/components/input-group/input-group.css +54 -1
- package/dist/collection/components/input-group/input-group.js +92 -17
- package/dist/collection/components/input-group/input-group.js.map +1 -1
- package/dist/collection/components/kpi/kpi.css +38 -2
- package/dist/collection/components/link-button/link-button.css +72 -66
- package/dist/collection/components/map-navigation/map-navigation.css +36 -0
- package/dist/collection/components/map-navigation/map-navigation.js +8 -0
- package/dist/collection/components/map-navigation/map-navigation.js.map +1 -1
- package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.css +56 -0
- package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.js +1 -1
- package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.js.map +1 -1
- package/dist/collection/components/menu/burger-menu.css +104 -62
- package/dist/collection/components/menu/menu.css +45 -6
- package/dist/collection/components/menu/menu.js +66 -103
- package/dist/collection/components/menu/menu.js.map +1 -1
- package/dist/collection/components/menu/test/menu.ct.js +8 -10
- package/dist/collection/components/menu/test/menu.ct.js.map +1 -1
- package/dist/collection/components/menu-about/menu-about.css +2 -2
- package/dist/collection/components/menu-about/menu-about.js +3 -3
- package/dist/collection/components/menu-about/menu-about.js.map +1 -1
- package/dist/collection/components/menu-about-news/menu-about-news.css +36 -0
- package/dist/collection/components/menu-avatar/menu-avatar.css +46 -2
- package/dist/collection/components/menu-avatar/menu-avatar.js +2 -2
- package/dist/collection/components/menu-avatar/menu-avatar.js.map +1 -1
- package/dist/collection/components/menu-avatar-item/menu-avatar-item.css +36 -1
- package/dist/collection/components/menu-category/menu-category.css +41 -0
- package/dist/collection/components/menu-category/menu-category.js +3 -3
- package/dist/collection/components/menu-category/menu-category.js.map +1 -1
- package/dist/collection/components/menu-category/test/menu-category.ct.js +27 -10
- package/dist/collection/components/menu-category/test/menu-category.ct.js.map +1 -1
- package/dist/collection/components/menu-item/menu-item.css +11 -6
- package/dist/collection/components/menu-item/menu-item.js +7 -1
- package/dist/collection/components/menu-item/menu-item.js.map +1 -1
- package/dist/collection/components/menu-settings/menu-settings.css +40 -1
- package/dist/collection/components/menu-settings/menu-settings.js +1 -1
- package/dist/collection/components/menu-settings/menu-settings.js.map +1 -1
- package/dist/collection/components/message-bar/message-bar.css +38 -0
- package/dist/collection/components/modal/modal.css +3 -3
- package/dist/collection/components/modal-content/modal-content.css +36 -0
- package/dist/collection/components/modal-footer/modal-footer.css +36 -0
- package/dist/collection/components/modal-header/modal-header.css +36 -0
- package/dist/collection/components/my-component/my-component.js +1 -1
- package/dist/collection/components/my-component/my-component.js.map +1 -1
- package/dist/collection/components/pagination/pagination.css +919 -2
- package/dist/collection/components/pagination/pagination.js +31 -14
- package/dist/collection/components/pagination/pagination.js.map +1 -1
- package/dist/collection/components/pill/pill.css +36 -0
- package/dist/collection/components/push-card/push-card.js +4 -1
- package/dist/collection/components/push-card/push-card.js.map +1 -1
- package/dist/collection/components/{animated-tab/animated-tab.css → row/row.css} +7 -4
- package/dist/collection/components/row/row.js +30 -0
- package/dist/collection/components/row/row.js.map +1 -0
- package/dist/collection/components/select/select.css +71 -6
- package/dist/collection/components/select/select.js +118 -55
- package/dist/collection/components/select/select.js.map +1 -1
- package/dist/collection/components/select/test/select.ct.js +10 -6
- package/dist/collection/components/select/test/select.ct.js.map +1 -1
- package/dist/collection/components/select-item/select-item.js +1 -1
- package/dist/collection/components/select-item/select-item.js.map +1 -1
- package/dist/collection/components/spinner/spinner.css +148 -0
- package/dist/collection/components/split-button/split-button.css +36 -0
- package/dist/collection/components/split-button/split-button.js +1 -2
- package/dist/collection/components/split-button/split-button.js.map +1 -1
- package/dist/collection/components/split-button-item/split-button-item.js +4 -1
- package/dist/collection/components/split-button-item/split-button-item.js.map +1 -1
- package/dist/collection/components/tab-item/tab-item.css +36 -1
- package/dist/collection/components/tab-item/tab-item.js +34 -1
- package/dist/collection/components/tab-item/tab-item.js.map +1 -1
- package/dist/collection/components/tabs/tabs.css +36 -0
- package/dist/collection/components/tabs/tabs.js +46 -5
- package/dist/collection/components/tabs/tabs.js.map +1 -1
- package/dist/collection/components/tabs/test/tabs.ct.js +84 -0
- package/dist/collection/components/tabs/test/tabs.ct.js.map +1 -0
- package/dist/collection/components/tile/tile.css +36 -0
- package/dist/collection/components/time-picker/time-picker.css +274 -13
- package/dist/collection/components/time-picker/time-picker.js +1 -1
- package/dist/collection/components/time-picker/time-picker.js.map +1 -1
- package/dist/collection/components/toast/toast.css +36 -0
- package/dist/collection/components/toggle/toggle.css +36 -0
- package/dist/collection/components/toggle-button/toggle-button.css +447 -0
- package/dist/collection/components/toggle-button/toggle-button.js +246 -0
- package/dist/collection/components/toggle-button/toggle-button.js.map +1 -0
- package/dist/collection/components/tree/test/tree.ct.js +154 -0
- package/dist/collection/components/tree/test/tree.ct.js.map +1 -0
- package/dist/collection/components/tree/tree.js +14 -7
- package/dist/collection/components/tree/tree.js.map +1 -1
- package/dist/collection/components/tree-item/tree-item.css +56 -14
- package/dist/collection/components/tree-item/tree-item.js +1 -1
- package/dist/collection/components/tree-item/tree-item.js.map +1 -1
- package/dist/collection/components/typography/typography.css +391 -0
- package/dist/collection/components/typography/typography.js +95 -14
- package/dist/collection/components/typography/typography.js.map +1 -1
- package/dist/collection/components/upload/upload.css +36 -0
- package/dist/collection/components/utils/application-layout/context.js +19 -0
- package/dist/collection/components/utils/application-layout/context.js.map +1 -0
- package/dist/collection/components/utils/{screen → application-layout}/index.js +1 -1
- package/dist/collection/components/utils/application-layout/index.js.map +1 -0
- package/dist/collection/components/utils/application-layout/service.js +92 -0
- package/dist/collection/components/utils/application-layout/service.js.map +1 -0
- package/dist/collection/components/utils/breakpoints.js +22 -0
- package/dist/collection/components/utils/breakpoints.js.map +1 -0
- package/dist/collection/components/utils/context.js +79 -0
- package/dist/collection/components/utils/context.js.map +1 -0
- package/dist/collection/components/utils/shadow-dom.js +6 -0
- package/dist/collection/components/utils/shadow-dom.js.map +1 -1
- package/dist/collection/components/utils/theme-switcher.js +35 -3
- package/dist/collection/components/utils/theme-switcher.js.map +1 -1
- package/dist/collection/components/validation-tooltip/validation-tooltip.js +6 -6
- package/dist/collection/components/validation-tooltip/validation-tooltip.js.map +1 -1
- package/dist/collection/components/workflow-step/workflow-step.css +40 -2
- package/dist/collection/components/workflow-step/workflow-step.js +6 -13
- package/dist/collection/components/workflow-step/workflow-step.js.map +1 -1
- package/dist/collection/components/workflow-steps/test/workflow-steps.ct.js +74 -0
- package/dist/collection/components/workflow-steps/test/workflow-steps.ct.js.map +1 -0
- package/dist/collection/components/workflow-steps/workflow-steps.css +38 -0
- package/dist/collection/components/workflow-steps/workflow-steps.js +8 -26
- package/dist/collection/components/workflow-steps/workflow-steps.js.map +1 -1
- package/dist/components/application-header.js +9 -5
- package/dist/components/application-header.js.map +1 -1
- package/dist/components/base-button.js +16 -2
- package/dist/components/base-button.js.map +1 -1
- package/dist/components/base-icon-button.js +18 -0
- package/dist/components/base-icon-button.js.map +1 -0
- package/dist/components/breadcrumb-item.js +99 -0
- package/dist/components/breadcrumb-item.js.map +1 -0
- package/dist/components/breakpoints.js +25 -0
- package/dist/components/breakpoints.js.map +1 -0
- package/dist/components/burger-menu.js +1 -1
- package/dist/components/burger-menu.js.map +1 -1
- package/dist/components/button.js +24 -9
- package/dist/components/button.js.map +1 -1
- package/dist/components/card-accordion.js +1 -1
- package/dist/components/card-accordion.js.map +1 -1
- package/dist/components/card-content.js +1 -1
- package/dist/components/card-content.js.map +1 -1
- package/dist/components/card.js +1 -1
- package/dist/components/card.js.map +1 -1
- package/dist/components/context.js +86 -7
- package/dist/components/context.js.map +1 -1
- package/dist/components/date-picker.js +1 -1
- package/dist/components/date-picker.js.map +1 -1
- package/dist/components/date-time-card.js +1 -1
- package/dist/components/date-time-card.js.map +1 -1
- package/dist/components/dropdown-item.js +2 -4
- package/dist/components/dropdown-item.js.map +1 -1
- package/dist/components/dropdown.js +1 -1
- package/dist/components/dropdown.js.map +1 -1
- package/dist/components/filter-chip.js +5 -3
- package/dist/components/filter-chip.js.map +1 -1
- package/dist/components/floating-ui.dom.esm.js +653 -533
- package/dist/components/floating-ui.dom.esm.js.map +1 -1
- package/dist/components/group-context-menu.js +2 -16
- package/dist/components/group-context-menu.js.map +1 -1
- package/dist/components/group-item.js +1 -1
- package/dist/components/group-item.js.map +1 -1
- package/dist/components/icon-button.js +19 -14
- package/dist/components/icon-button.js.map +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/index2.js +6 -0
- package/dist/components/index2.js.map +1 -0
- package/dist/components/ix-action-card.js +2 -2
- package/dist/components/ix-action-card.js.map +1 -1
- package/dist/components/ix-application-sidebar.d.ts +11 -0
- package/dist/components/ix-application-sidebar.js +63 -0
- package/dist/components/ix-application-sidebar.js.map +1 -0
- package/dist/components/{ix-animated-tab.d.ts → ix-application.d.ts} +4 -4
- package/dist/components/ix-application.js +128 -0
- package/dist/components/ix-application.js.map +1 -0
- package/dist/components/ix-basic-navigation.js +45 -10
- package/dist/components/ix-basic-navigation.js.map +1 -1
- package/dist/components/ix-blind.js +13 -5
- package/dist/components/ix-blind.js.map +1 -1
- package/dist/components/ix-breadcrumb-item.js +1 -32
- package/dist/components/ix-breadcrumb-item.js.map +1 -1
- package/dist/components/ix-breadcrumb.js +76 -98
- package/dist/components/ix-breadcrumb.js.map +1 -1
- package/dist/components/ix-card-list.js +1 -1
- package/dist/components/ix-card-list.js.map +1 -1
- package/dist/components/ix-category-filter.js +76 -41
- package/dist/components/ix-category-filter.js.map +1 -1
- package/dist/components/ix-chip.js +1 -1
- package/dist/components/ix-chip.js.map +1 -1
- package/dist/components/{ix-index-button.d.ts → ix-col.d.ts} +4 -4
- package/dist/components/ix-col.js +96 -0
- package/dist/components/ix-col.js.map +1 -0
- package/dist/components/ix-content.d.ts +11 -0
- package/dist/components/ix-content.js +48 -0
- package/dist/components/ix-content.js.map +1 -0
- package/dist/components/ix-css-grid-item.js.map +1 -1
- package/dist/components/ix-css-grid.js.map +1 -1
- package/dist/components/ix-datetime-picker.js +23 -17
- package/dist/components/ix-datetime-picker.js.map +1 -1
- package/dist/components/ix-drawer.js +1 -1
- package/dist/components/ix-drawer.js.map +1 -1
- package/dist/components/ix-dropdown-button.js +4 -2
- package/dist/components/ix-dropdown-button.js.map +1 -1
- package/dist/components/ix-dropdown-header.js +1 -1
- package/dist/components/ix-dropdown-header.js.map +1 -1
- package/dist/components/ix-empty-state.js +1 -1
- package/dist/components/ix-empty-state.js.map +1 -1
- package/dist/components/ix-event-list-item.js +1 -1
- package/dist/components/ix-event-list-item.js.map +1 -1
- package/dist/components/ix-event-list.js +1 -1
- package/dist/components/ix-event-list.js.map +1 -1
- package/dist/components/ix-expanding-search.js +1 -1
- package/dist/components/ix-expanding-search.js.map +1 -1
- package/dist/components/ix-flip-tile-content.js +5 -2
- package/dist/components/ix-flip-tile-content.js.map +1 -1
- package/dist/components/ix-flip-tile.js +27 -18
- package/dist/components/ix-flip-tile.js.map +1 -1
- package/dist/components/ix-form-field.d.ts +11 -0
- package/dist/components/ix-form-field.js +43 -0
- package/dist/components/ix-form-field.js.map +1 -0
- package/dist/components/ix-grid.d.ts +11 -0
- package/dist/components/ix-grid.js +47 -0
- package/dist/components/ix-grid.js.map +1 -0
- package/dist/components/ix-group.js +3 -2
- package/dist/components/ix-group.js.map +1 -1
- package/dist/components/ix-icon-toggle-button.d.ts +11 -0
- package/dist/components/ix-icon-toggle-button.js +122 -0
- package/dist/components/ix-icon-toggle-button.js.map +1 -0
- package/dist/components/ix-input-group.js +89 -18
- package/dist/components/ix-input-group.js.map +1 -1
- package/dist/components/ix-kpi.js +1 -1
- package/dist/components/ix-kpi.js.map +1 -1
- package/dist/components/ix-link-button.js +1 -1
- package/dist/components/ix-link-button.js.map +1 -1
- package/dist/components/ix-map-navigation.js +8 -1
- package/dist/components/ix-map-navigation.js.map +1 -1
- package/dist/components/ix-menu-about-news.js +1 -1
- package/dist/components/ix-menu-about-news.js.map +1 -1
- package/dist/components/ix-menu-about.js +4 -4
- package/dist/components/ix-menu-about.js.map +1 -1
- package/dist/components/ix-menu-avatar.js +3 -3
- package/dist/components/ix-menu-avatar.js.map +1 -1
- package/dist/components/ix-menu-category.js +4 -4
- package/dist/components/ix-menu-category.js.map +1 -1
- package/dist/components/ix-menu-settings.js +2 -2
- package/dist/components/ix-menu-settings.js.map +1 -1
- package/dist/components/ix-menu.js +80 -62
- package/dist/components/ix-menu.js.map +1 -1
- package/dist/components/ix-message-bar.js +1 -1
- package/dist/components/ix-message-bar.js.map +1 -1
- package/dist/components/ix-modal-content.js +1 -1
- package/dist/components/ix-modal-content.js.map +1 -1
- package/dist/components/ix-modal-footer.js +1 -1
- package/dist/components/ix-modal-footer.js.map +1 -1
- package/dist/components/ix-modal-header.js +1 -1
- package/dist/components/ix-modal-header.js.map +1 -1
- package/dist/components/ix-modal.js +1 -1
- package/dist/components/ix-modal.js.map +1 -1
- package/dist/components/ix-pagination.js +42 -24
- package/dist/components/ix-pagination.js.map +1 -1
- package/dist/components/ix-pill.js +1 -1
- package/dist/components/ix-pill.js.map +1 -1
- package/dist/components/ix-push-card.js +4 -1
- package/dist/components/ix-push-card.js.map +1 -1
- package/dist/components/ix-row.d.ts +11 -0
- package/dist/components/ix-row.js +35 -0
- package/dist/components/ix-row.js.map +1 -0
- package/dist/components/ix-split-button-item.js +4 -1
- package/dist/components/ix-split-button-item.js.map +1 -1
- package/dist/components/ix-split-button.js +2 -3
- package/dist/components/ix-split-button.js.map +1 -1
- package/dist/components/ix-tile.js +1 -1
- package/dist/components/ix-tile.js.map +1 -1
- package/dist/components/{ix-animated-tabs.d.ts → ix-toggle-button.d.ts} +4 -4
- package/dist/components/ix-toggle-button.js +111 -0
- package/dist/components/ix-toggle-button.js.map +1 -0
- package/dist/components/ix-toggle.js +1 -1
- package/dist/components/ix-toggle.js.map +1 -1
- package/dist/components/ix-tree.js +16 -8
- package/dist/components/ix-tree.js.map +1 -1
- package/dist/components/ix-upload.js +1 -1
- package/dist/components/ix-upload.js.map +1 -1
- package/dist/components/ix-validation-tooltip.js +8 -7
- package/dist/components/ix-validation-tooltip.js.map +1 -1
- package/dist/components/ix-workflow-step.js +5 -12
- package/dist/components/ix-workflow-step.js.map +1 -1
- package/dist/components/ix-workflow-steps.js +9 -7
- package/dist/components/ix-workflow-steps.js.map +1 -1
- package/dist/components/map-navigation-overlay.js +3 -2
- package/dist/components/map-navigation-overlay.js.map +1 -1
- package/dist/components/menu-avatar-item.js +1 -1
- package/dist/components/menu-avatar-item.js.map +1 -1
- package/dist/components/menu-item.js +8 -2
- package/dist/components/menu-item.js.map +1 -1
- package/dist/components/menu-service.js +79 -1
- package/dist/components/menu-service.js.map +1 -1
- package/dist/components/my-component.js.map +1 -1
- package/dist/components/select-item.js +3 -2
- package/dist/components/select-item.js.map +1 -1
- package/dist/components/select.js +70 -49
- package/dist/components/select.js.map +1 -1
- package/dist/{esm/shadow-dom-6860b1c4.js → components/shadow-dom.js} +4 -1
- package/dist/components/shadow-dom.js.map +1 -0
- package/dist/components/spinner.js +1 -1
- package/dist/components/spinner.js.map +1 -1
- package/dist/components/tab-item.js +11 -3
- package/dist/components/tab-item.js.map +1 -1
- package/dist/components/tabs.js +23 -8
- package/dist/components/tabs.js.map +1 -1
- package/dist/components/theme-switcher.js +35 -3
- package/dist/components/theme-switcher.js.map +1 -1
- package/dist/components/time-picker.js +18 -12
- package/dist/components/time-picker.js.map +1 -1
- package/dist/components/toast.js +1 -1
- package/dist/components/toast.js.map +1 -1
- package/dist/components/tree-item.js +3 -2
- package/dist/components/tree-item.js.map +1 -1
- package/dist/components/typography.js +28 -12
- package/dist/components/typography.js.map +1 -1
- package/dist/esm/base-button-87048318.js +47 -0
- package/dist/esm/base-button-87048318.js.map +1 -0
- package/dist/esm/base-icon-button-afac2d95.js +18 -0
- package/dist/esm/base-icon-button-afac2d95.js.map +1 -0
- package/dist/esm/breakpoints-b8d59fd9.js +25 -0
- package/dist/esm/breakpoints-b8d59fd9.js.map +1 -0
- package/dist/esm/context-6a3bc77f.js +101 -0
- package/dist/esm/context-6a3bc77f.js.map +1 -0
- package/dist/esm/{floating-ui.dom.esm-9b203a02.js → floating-ui.dom.esm-cbe44820.js} +654 -534
- package/dist/esm/floating-ui.dom.esm-cbe44820.js.map +1 -0
- package/dist/esm/{icon-4ac90a6d.js → icon-f54a8bc4.js} +2 -2
- package/dist/esm/{icon-4ac90a6d.js.map → icon-f54a8bc4.js.map} +1 -1
- package/dist/esm/index-7b24b7fa.js +6 -0
- package/dist/esm/index-7b24b7fa.js.map +1 -0
- package/dist/esm/{index-7334ee80.js → index-eb0be730.js} +46 -398
- package/dist/esm/index-eb0be730.js.map +1 -0
- package/dist/esm/index.js +3 -3
- package/dist/esm/ix-action-card.entry.js +3 -3
- package/dist/esm/ix-action-card.entry.js.map +1 -1
- package/dist/esm/ix-application-header.entry.js +10 -5
- package/dist/esm/ix-application-header.entry.js.map +1 -1
- package/dist/esm/ix-application-sidebar.entry.js +43 -0
- package/dist/esm/ix-application-sidebar.entry.js.map +1 -0
- package/dist/esm/ix-application.entry.js +105 -0
- package/dist/esm/ix-application.entry.js.map +1 -0
- package/dist/esm/ix-avatar.entry.js +1 -1
- package/dist/esm/ix-basic-navigation.entry.js +44 -10
- package/dist/esm/ix-basic-navigation.entry.js.map +1 -1
- package/dist/esm/ix-blind.entry.js +5 -4
- package/dist/esm/ix-blind.entry.js.map +1 -1
- package/dist/esm/ix-breadcrumb_2.entry.js +100 -92
- package/dist/esm/ix-breadcrumb_2.entry.js.map +1 -1
- package/dist/esm/ix-burger-menu.entry.js +3 -3
- package/dist/esm/ix-burger-menu.entry.js.map +1 -1
- package/dist/esm/ix-button.entry.js +22 -7
- package/dist/esm/ix-button.entry.js.map +1 -1
- package/dist/esm/ix-card-accordion_2.entry.js +2 -2
- package/dist/esm/ix-card-accordion_2.entry.js.map +1 -1
- package/dist/esm/ix-card-list.entry.js +2 -2
- package/dist/esm/ix-card-list.entry.js.map +1 -1
- package/dist/esm/ix-card_2.entry.js +3 -3
- package/dist/esm/ix-card_2.entry.js.map +1 -1
- package/dist/esm/ix-category-filter.entry.js +73 -40
- package/dist/esm/ix-category-filter.entry.js.map +1 -1
- package/dist/esm/ix-chip.entry.js +2 -2
- package/dist/esm/ix-chip.entry.js.map +1 -1
- package/dist/esm/ix-col.entry.js +73 -0
- package/dist/esm/ix-col.entry.js.map +1 -0
- package/dist/esm/ix-content-header.entry.js +1 -1
- package/dist/esm/ix-content.entry.js +28 -0
- package/dist/esm/ix-content.entry.js.map +1 -0
- package/dist/esm/ix-css-grid-item.entry.js +1 -1
- package/dist/esm/ix-css-grid-item.entry.js.map +1 -1
- package/dist/esm/ix-css-grid.entry.js +1 -1
- package/dist/esm/ix-css-grid.entry.js.map +1 -1
- package/dist/esm/ix-date-picker_2.entry.js +4 -4
- package/dist/esm/ix-date-picker_2.entry.js.map +1 -1
- package/dist/esm/ix-date-time-card.entry.js +2 -2
- package/dist/esm/ix-date-time-card.entry.js.map +1 -1
- package/dist/esm/ix-datetime-picker.entry.js +2 -2
- package/dist/esm/ix-datetime-picker.entry.js.map +1 -1
- package/dist/esm/ix-divider.entry.js +1 -1
- package/dist/esm/ix-drawer.entry.js +2 -2
- package/dist/esm/ix-drawer.entry.js.map +1 -1
- package/dist/esm/ix-dropdown-button.entry.js +4 -3
- package/dist/esm/ix-dropdown-button.entry.js.map +1 -1
- package/dist/esm/ix-dropdown-header.entry.js +2 -2
- package/dist/esm/ix-dropdown-header.entry.js.map +1 -1
- package/dist/esm/ix-dropdown-quick-actions.entry.js +1 -1
- package/dist/esm/ix-dropdown_2.entry.js +5 -7
- package/dist/esm/ix-dropdown_2.entry.js.map +1 -1
- package/dist/esm/ix-empty-state.entry.js +2 -2
- package/dist/esm/ix-empty-state.entry.js.map +1 -1
- package/dist/esm/ix-event-list_2.entry.js +3 -3
- package/dist/esm/ix-event-list_2.entry.js.map +1 -1
- package/dist/esm/ix-expanding-search.entry.js +2 -2
- package/dist/esm/ix-expanding-search.entry.js.map +1 -1
- package/dist/esm/ix-filter-chip.entry.js +4 -3
- package/dist/esm/ix-filter-chip.entry.js.map +1 -1
- package/dist/esm/ix-flip-tile_2.entry.js +28 -18
- package/dist/esm/ix-flip-tile_2.entry.js.map +1 -1
- package/dist/esm/ix-form-field.entry.js +23 -0
- package/dist/esm/ix-form-field.entry.js.map +1 -0
- package/dist/esm/ix-grid.entry.js +25 -0
- package/dist/esm/ix-grid.entry.js.map +1 -0
- package/dist/esm/ix-group-context-menu.entry.js +2 -2
- package/dist/esm/ix-group_2.entry.js +4 -4
- package/dist/esm/ix-group_2.entry.js.map +1 -1
- package/dist/esm/ix-icon-button.entry.js +21 -13
- package/dist/esm/ix-icon-button.entry.js.map +1 -1
- package/dist/esm/ix-icon-toggle-button.entry.js +84 -0
- package/dist/esm/ix-icon-toggle-button.entry.js.map +1 -0
- package/dist/esm/ix-icon.entry.js +2 -2
- package/dist/esm/ix-input-group.entry.js +85 -18
- package/dist/esm/ix-input-group.entry.js.map +1 -1
- package/dist/esm/ix-key-value-list.entry.js +1 -1
- package/dist/esm/ix-key-value.entry.js +1 -1
- package/dist/esm/ix-kpi.entry.js +2 -2
- package/dist/esm/ix-kpi.entry.js.map +1 -1
- package/dist/esm/ix-link-button.entry.js +2 -2
- package/dist/esm/ix-link-button.entry.js.map +1 -1
- package/dist/esm/ix-map-navigation_2.entry.js +11 -3
- package/dist/esm/ix-map-navigation_2.entry.js.map +1 -1
- package/dist/esm/ix-menu-category.entry.js +6 -5
- package/dist/esm/ix-menu-category.entry.js.map +1 -1
- package/dist/esm/ix-menu_9.entry.js +101 -75
- package/dist/esm/ix-menu_9.entry.js.map +1 -1
- package/dist/esm/ix-message-bar.entry.js +2 -2
- package/dist/esm/ix-message-bar.entry.js.map +1 -1
- package/dist/esm/ix-modal-content.entry.js +2 -2
- package/dist/esm/ix-modal-content.entry.js.map +1 -1
- package/dist/esm/ix-modal-example.entry.js +1 -1
- package/dist/esm/ix-modal-footer.entry.js +2 -2
- package/dist/esm/ix-modal-footer.entry.js.map +1 -1
- package/dist/esm/ix-modal-header.entry.js +2 -2
- package/dist/esm/ix-modal-header.entry.js.map +1 -1
- package/dist/esm/ix-modal-loading.entry.js +1 -1
- package/dist/esm/ix-modal.entry.js +2 -2
- package/dist/esm/ix-modal.entry.js.map +1 -1
- package/dist/esm/ix-pagination.entry.js +32 -15
- package/dist/esm/ix-pagination.entry.js.map +1 -1
- package/dist/esm/ix-pill.entry.js +2 -2
- package/dist/esm/ix-pill.entry.js.map +1 -1
- package/dist/esm/ix-push-card.entry.js +5 -2
- package/dist/esm/ix-push-card.entry.js.map +1 -1
- package/dist/esm/ix-row.entry.js +17 -0
- package/dist/esm/ix-row.entry.js.map +1 -0
- package/dist/esm/ix-select_2.entry.js +68 -49
- package/dist/esm/ix-select_2.entry.js.map +1 -1
- package/dist/esm/ix-spinner.entry.js +2 -2
- package/dist/esm/ix-spinner.entry.js.map +1 -1
- package/dist/esm/ix-split-button_2.entry.js +7 -5
- package/dist/esm/ix-split-button_2.entry.js.map +1 -1
- package/dist/esm/ix-tab-item.entry.js +11 -3
- package/dist/esm/ix-tab-item.entry.js.map +1 -1
- package/dist/esm/ix-tabs.entry.js +22 -7
- package/dist/esm/ix-tabs.entry.js.map +1 -1
- package/dist/esm/ix-tile.entry.js +2 -2
- package/dist/esm/ix-tile.entry.js.map +1 -1
- package/dist/esm/ix-toast_2.entry.js +2 -2
- package/dist/esm/ix-toast_2.entry.js.map +1 -1
- package/dist/esm/ix-toggle-button.entry.js +73 -0
- package/dist/esm/ix-toggle-button.entry.js.map +1 -0
- package/dist/esm/ix-toggle.entry.js +2 -2
- package/dist/esm/ix-toggle.entry.js.map +1 -1
- package/dist/esm/ix-tooltip.entry.js +2 -2
- package/dist/esm/ix-tree_2.entry.js +16 -9
- package/dist/esm/ix-tree_2.entry.js.map +1 -1
- package/dist/esm/ix-typography.entry.js +25 -12
- package/dist/esm/ix-typography.entry.js.map +1 -1
- package/dist/esm/ix-upload.entry.js +2 -2
- package/dist/esm/ix-upload.entry.js.map +1 -1
- package/dist/esm/ix-validation-tooltip.entry.js +8 -8
- package/dist/esm/ix-validation-tooltip.entry.js.map +1 -1
- package/dist/esm/ix-workflow-step_2.entry.js +14 -18
- package/dist/esm/ix-workflow-step_2.entry.js.map +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/menu-service-12a09006.js +156 -0
- package/dist/esm/menu-service-12a09006.js.map +1 -0
- package/dist/esm/my-component.entry.js +1 -1
- package/dist/esm/my-component.entry.js.map +1 -1
- package/dist/esm/shadow-dom-b9df3d9b.js +21 -0
- package/dist/esm/shadow-dom-b9df3d9b.js.map +1 -0
- package/dist/esm/siemens-ix.js +3 -3
- package/dist/esm/{theme-switcher-7498e4f2.js → theme-switcher-9ede3823.js} +36 -4
- package/dist/esm/theme-switcher-9ede3823.js.map +1 -0
- package/dist/siemens-ix/index.esm.js +1 -1
- package/dist/siemens-ix/index.esm.js.map +1 -1
- package/dist/siemens-ix/p-00616f87.entry.js +2 -0
- package/dist/siemens-ix/{p-8c14a4a3.entry.js.map → p-00616f87.entry.js.map} +1 -1
- package/dist/siemens-ix/p-00df4a8c.js +2 -0
- package/dist/siemens-ix/p-00df4a8c.js.map +1 -0
- package/dist/siemens-ix/p-04eeba9e.js +2 -0
- package/dist/siemens-ix/p-04eeba9e.js.map +1 -0
- package/dist/siemens-ix/{p-b89172b4.entry.js → p-0e2045b9.entry.js} +2 -2
- package/dist/siemens-ix/p-0e2045b9.entry.js.map +1 -0
- package/dist/siemens-ix/p-134b6bd5.js +2 -0
- package/dist/siemens-ix/p-134b6bd5.js.map +1 -0
- package/dist/siemens-ix/p-14621fbd.entry.js +2 -0
- package/dist/siemens-ix/p-14621fbd.entry.js.map +1 -0
- package/dist/siemens-ix/p-1b705d7b.js +2 -0
- package/dist/siemens-ix/p-1b705d7b.js.map +1 -0
- package/dist/siemens-ix/p-1b9b19e6.js +2 -0
- package/dist/siemens-ix/p-1b9b19e6.js.map +1 -0
- package/dist/siemens-ix/p-1fc8e513.entry.js +2 -0
- package/dist/siemens-ix/p-1fc8e513.entry.js.map +1 -0
- package/dist/siemens-ix/{p-157f7ec0.entry.js → p-26855b3f.entry.js} +2 -2
- package/dist/siemens-ix/p-281fa225.entry.js +2 -0
- package/dist/siemens-ix/{p-33670e98.entry.js.map → p-281fa225.entry.js.map} +1 -1
- package/dist/siemens-ix/p-2a29e187.entry.js +2 -0
- package/dist/siemens-ix/{p-5fedb19b.entry.js.map → p-2a29e187.entry.js.map} +1 -1
- package/dist/siemens-ix/p-36c48f12.entry.js +2 -0
- package/dist/siemens-ix/p-36c48f12.entry.js.map +1 -0
- package/dist/siemens-ix/p-36f0b470.entry.js +2 -0
- package/dist/siemens-ix/p-36f0b470.entry.js.map +1 -0
- package/dist/siemens-ix/p-37dd62fc.entry.js +2 -0
- package/dist/siemens-ix/p-37dd62fc.entry.js.map +1 -0
- package/dist/siemens-ix/{p-0e86b47b.entry.js → p-3983ee89.entry.js} +2 -2
- package/dist/siemens-ix/p-3dbeeecf.entry.js +2 -0
- package/dist/siemens-ix/p-3dbeeecf.entry.js.map +1 -0
- package/dist/siemens-ix/p-3eabf464.entry.js +2 -0
- package/dist/siemens-ix/p-3eabf464.entry.js.map +1 -0
- package/dist/siemens-ix/p-40ecc8be.entry.js +2 -0
- package/dist/siemens-ix/p-40ecc8be.entry.js.map +1 -0
- package/dist/siemens-ix/{p-918450cd.entry.js → p-43497703.entry.js} +2 -2
- package/dist/siemens-ix/p-43497703.entry.js.map +1 -0
- package/dist/siemens-ix/{p-0fab8cae.entry.js → p-4659c550.entry.js} +2 -2
- package/dist/siemens-ix/p-475d8732.entry.js +2 -0
- package/dist/siemens-ix/p-475d8732.entry.js.map +1 -0
- package/dist/siemens-ix/p-49b9f9f5.entry.js +2 -0
- package/dist/siemens-ix/{p-c0345859.entry.js.map → p-49b9f9f5.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-02f01e39.entry.js → p-4dbae019.entry.js} +2 -2
- package/dist/siemens-ix/p-4f8954a7.entry.js +2 -0
- package/dist/siemens-ix/p-4f8954a7.entry.js.map +1 -0
- package/dist/siemens-ix/p-5017cf39.entry.js +2 -0
- package/dist/siemens-ix/p-5017cf39.entry.js.map +1 -0
- package/dist/siemens-ix/p-5029fd0f.entry.js +2 -0
- package/dist/siemens-ix/p-5029fd0f.entry.js.map +1 -0
- package/dist/siemens-ix/p-553ebcb1.entry.js +2 -0
- package/dist/siemens-ix/{p-b6d52b6f.entry.js.map → p-553ebcb1.entry.js.map} +1 -1
- package/dist/siemens-ix/p-5650383d.entry.js +2 -0
- package/dist/siemens-ix/p-5650383d.entry.js.map +1 -0
- package/dist/siemens-ix/p-567f71a2.entry.js +2 -0
- package/dist/siemens-ix/p-567f71a2.entry.js.map +1 -0
- package/dist/siemens-ix/p-5d132cc5.entry.js +2 -0
- package/dist/siemens-ix/p-5d132cc5.entry.js.map +1 -0
- package/dist/siemens-ix/p-5e3f8c0b.entry.js +2 -0
- package/dist/siemens-ix/p-5e3f8c0b.entry.js.map +1 -0
- package/dist/siemens-ix/p-61ffc6e1.entry.js +2 -0
- package/dist/siemens-ix/p-61ffc6e1.entry.js.map +1 -0
- package/dist/siemens-ix/p-655d177c.entry.js +2 -0
- package/dist/siemens-ix/p-655d177c.entry.js.map +1 -0
- package/dist/siemens-ix/p-737fca1b.entry.js +2 -0
- package/dist/siemens-ix/{p-1b1bc523.entry.js.map → p-737fca1b.entry.js.map} +1 -1
- package/dist/siemens-ix/p-76a509c7.js +3 -0
- package/dist/siemens-ix/p-76a509c7.js.map +1 -0
- package/dist/siemens-ix/{p-4d194d55.entry.js → p-7918fd50.entry.js} +2 -2
- package/dist/siemens-ix/p-7918fd50.entry.js.map +1 -0
- package/dist/siemens-ix/p-7a884056.entry.js +2 -0
- package/dist/siemens-ix/{p-c4ea8815.entry.js.map → p-7a884056.entry.js.map} +1 -1
- package/dist/siemens-ix/p-7b536489.entry.js +2 -0
- package/dist/siemens-ix/p-7b536489.entry.js.map +1 -0
- package/dist/siemens-ix/p-85f39bd4.js +2 -0
- package/dist/siemens-ix/p-85f39bd4.js.map +1 -0
- package/dist/siemens-ix/{p-db74796e.js → p-8c7d1e06.js} +2 -2
- package/dist/siemens-ix/p-8e39298f.js +2 -0
- package/dist/siemens-ix/p-8e39298f.js.map +1 -0
- package/dist/siemens-ix/p-94ecb1af.entry.js +2 -0
- package/dist/siemens-ix/p-94ecb1af.entry.js.map +1 -0
- package/dist/siemens-ix/p-9848e4de.entry.js +2 -0
- package/dist/siemens-ix/p-9848e4de.entry.js.map +1 -0
- package/dist/siemens-ix/p-98b03a9b.entry.js +2 -0
- package/dist/siemens-ix/p-98b03a9b.entry.js.map +1 -0
- package/dist/siemens-ix/p-9a05ac00.js +2 -0
- package/dist/siemens-ix/p-9a05ac00.js.map +1 -0
- package/dist/siemens-ix/p-9b6075de.entry.js +2 -0
- package/dist/siemens-ix/p-9b6075de.entry.js.map +1 -0
- package/dist/siemens-ix/p-a0fdaa04.entry.js +2 -0
- package/dist/siemens-ix/p-a18f1744.entry.js +2 -0
- package/dist/siemens-ix/p-a18f1744.entry.js.map +1 -0
- package/dist/siemens-ix/p-a3d6abfb.entry.js +2 -0
- package/dist/siemens-ix/p-a3d6abfb.entry.js.map +1 -0
- package/dist/siemens-ix/p-a5ae7bfa.entry.js +2 -0
- package/dist/siemens-ix/p-a5ae7bfa.entry.js.map +1 -0
- package/dist/siemens-ix/p-a6345f97.entry.js +2 -0
- package/dist/siemens-ix/p-a6345f97.entry.js.map +1 -0
- package/dist/siemens-ix/p-a8424ce3.entry.js +2 -0
- package/dist/siemens-ix/p-a8424ce3.entry.js.map +1 -0
- package/dist/siemens-ix/p-a85299c6.entry.js +2 -0
- package/dist/siemens-ix/p-a85299c6.entry.js.map +1 -0
- package/dist/siemens-ix/p-ab452b82.js +2 -0
- package/dist/siemens-ix/p-ab452b82.js.map +1 -0
- package/dist/siemens-ix/p-ab4bdb4e.entry.js +2 -0
- package/dist/siemens-ix/p-ab4bdb4e.entry.js.map +1 -0
- package/dist/siemens-ix/p-ac00ae47.entry.js +2 -0
- package/dist/siemens-ix/p-ac00ae47.entry.js.map +1 -0
- package/dist/siemens-ix/p-b007e4b4.entry.js +2 -0
- package/dist/siemens-ix/{p-b21bc31c.entry.js.map → p-b007e4b4.entry.js.map} +1 -1
- package/dist/siemens-ix/p-b0a1930d.entry.js +2 -0
- package/dist/siemens-ix/p-b0a1930d.entry.js.map +1 -0
- package/dist/siemens-ix/{p-34807901.entry.js → p-b25c770f.entry.js} +2 -2
- package/dist/siemens-ix/{p-34807901.entry.js.map → p-b25c770f.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-f38e7420.entry.js → p-b38eff08.entry.js} +2 -2
- package/dist/siemens-ix/p-b45ca515.entry.js +2 -0
- package/dist/siemens-ix/p-b45ca515.entry.js.map +1 -0
- package/dist/siemens-ix/{p-f0219d7a.entry.js → p-b735ee5e.entry.js} +2 -2
- package/dist/siemens-ix/p-c1ac2d01.entry.js +2 -0
- package/dist/siemens-ix/{p-06603826.entry.js.map → p-c1ac2d01.entry.js.map} +1 -1
- package/dist/siemens-ix/p-c1f5a59a.entry.js +2 -0
- package/dist/siemens-ix/p-c1f5a59a.entry.js.map +1 -0
- package/dist/siemens-ix/p-c75264af.entry.js +2 -0
- package/dist/siemens-ix/p-c75264af.entry.js.map +1 -0
- package/dist/siemens-ix/p-cd0e77f1.entry.js +2 -0
- package/dist/siemens-ix/{p-9547706d.entry.js.map → p-cd0e77f1.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-d48d74af.entry.js → p-cd1e0061.entry.js} +2 -2
- package/dist/siemens-ix/p-ce0a7c1a.entry.js +2 -0
- package/dist/siemens-ix/{p-07a0b330.entry.js.map → p-ce0a7c1a.entry.js.map} +1 -1
- package/dist/siemens-ix/p-d214f57a.entry.js +2 -0
- package/dist/siemens-ix/{p-a9619a92.entry.js.map → p-d214f57a.entry.js.map} +1 -1
- package/dist/siemens-ix/p-d29bcf75.entry.js +2 -0
- package/dist/siemens-ix/p-d29bcf75.entry.js.map +1 -0
- package/dist/siemens-ix/{p-0dea55bf.entry.js → p-d87de06f.entry.js} +2 -2
- package/dist/siemens-ix/{p-d7e8417d.entry.js → p-da133606.entry.js} +2 -2
- package/dist/siemens-ix/p-da133606.entry.js.map +1 -0
- package/dist/siemens-ix/p-db174600.entry.js +2 -0
- package/dist/siemens-ix/p-db2f237f.entry.js +2 -0
- package/dist/siemens-ix/p-db2f237f.entry.js.map +1 -0
- package/dist/siemens-ix/p-dc77f962.entry.js +2 -0
- package/dist/siemens-ix/{p-d81d0f62.entry.js.map → p-dc77f962.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-81333042.entry.js → p-de013166.entry.js} +2 -2
- package/dist/siemens-ix/p-de013166.entry.js.map +1 -0
- package/dist/siemens-ix/p-e2c200f3.entry.js +2 -0
- package/dist/siemens-ix/{p-2ea3d53a.entry.js.map → p-e2c200f3.entry.js.map} +1 -1
- package/dist/siemens-ix/p-e610b2b8.entry.js +2 -0
- package/dist/siemens-ix/{p-e8f2e141.entry.js.map → p-e610b2b8.entry.js.map} +1 -1
- package/dist/siemens-ix/p-eb29049a.entry.js +2 -0
- package/dist/siemens-ix/p-eb29049a.entry.js.map +1 -0
- package/dist/siemens-ix/p-eb3f1ef6.entry.js +2 -0
- package/dist/siemens-ix/p-eb3f1ef6.entry.js.map +1 -0
- package/dist/siemens-ix/p-ebeef6fd.entry.js +2 -0
- package/dist/siemens-ix/p-ebeef6fd.entry.js.map +1 -0
- package/dist/siemens-ix/p-f71da594.entry.js +2 -0
- package/dist/siemens-ix/{p-7d2aec76.entry.js.map → p-f71da594.entry.js.map} +1 -1
- package/dist/siemens-ix/{p-20aa7350.entry.js → p-f88b25d7.entry.js} +2 -2
- package/dist/siemens-ix/p-f9b004ba.entry.js +2 -0
- package/dist/siemens-ix/{p-bf019e35.entry.js.map → p-f9b004ba.entry.js.map} +1 -1
- package/dist/siemens-ix/p-f9d4ca13.entry.js +2 -0
- package/dist/siemens-ix/p-f9d4ca13.entry.js.map +1 -0
- package/dist/siemens-ix/p-feb80449.entry.js +2 -0
- package/dist/siemens-ix/{p-a64d88de.entry.js.map → p-feb80449.entry.js.map} +1 -1
- package/dist/siemens-ix/siemens-ix-core.css +1 -12289
- package/dist/siemens-ix/siemens-ix.css +8249 -11730
- package/dist/siemens-ix/siemens-ix.esm.js +1 -1
- package/dist/siemens-ix/siemens-ix.esm.js.map +1 -1
- package/dist/siemens-ix/theme/classic-dark.css +1 -1062
- package/dist/siemens-ix/theme/classic-light.css +1 -1062
- package/dist/siemens-ix/theme/legacy-classic-dark.css +1 -1061
- package/dist/siemens-ix/theme/legacy-classic-light.css +1 -1061
- package/dist/types/components/application/application.d.ts +36 -0
- package/dist/types/components/application-header/application-header.d.ts +2 -5
- package/dist/types/components/application-header/test/application-headet.ct.d.ts +1 -0
- package/dist/types/components/application-sidebar/application-sidebar.d.ts +7 -0
- package/dist/types/components/application-sidebar/events.d.ts +4 -0
- package/dist/types/components/basic-navigation/basic-navigation.d.ts +14 -2
- package/dist/types/components/blind/blind.d.ts +5 -0
- package/dist/types/components/breadcrumb/breadcrumb.d.ts +15 -14
- package/dist/types/components/breadcrumb/test/breadcrumb.ct.d.ts +1 -0
- package/dist/types/components/breadcrumb-item/breadcrumb-item.d.ts +15 -0
- package/dist/types/components/button/base-button.d.ts +25 -0
- package/dist/types/components/button/button.d.ts +4 -10
- package/dist/types/components/category-filter/category-filter.d.ts +12 -5
- package/dist/types/components/col/col.d.ts +31 -0
- package/dist/types/components/content/content.d.ts +7 -0
- package/dist/types/components/dropdown-button/dropdown-button.d.ts +7 -0
- package/dist/types/components/filter-chip/filter-chip.d.ts +5 -0
- package/dist/types/components/flip-tile/flip-tile.d.ts +9 -11
- package/dist/types/components/flip-tile/test/flip-tile.ct.d.ts +1 -0
- package/dist/types/components/flip-tile-content/flip-tile-content.d.ts +6 -0
- package/dist/types/components/form-field/form-field.d.ts +10 -0
- package/dist/types/components/grid/grid.d.ts +18 -0
- package/dist/types/components/icon-button/base-icon-button.d.ts +2 -0
- package/dist/types/components/icon-button/icon-button.d.ts +2 -13
- package/dist/types/components/icon-toggle-button/icon-toggle-button.d.ts +54 -0
- package/dist/types/components/input-group/input-group.d.ts +11 -1
- package/dist/types/components/map-navigation/map-navigation.d.ts +1 -0
- package/dist/types/components/menu/menu.d.ts +9 -14
- package/dist/types/components/menu-item/menu-item.d.ts +2 -0
- package/dist/types/components/pagination/pagination.d.ts +1 -1
- package/dist/types/components/row/row.d.ts +6 -0
- package/dist/types/components/select/select.d.ts +23 -7
- package/dist/types/components/tab-item/tab-item.d.ts +10 -0
- package/dist/types/components/tabs/tabs.d.ts +8 -0
- package/dist/types/components/tabs/test/tabs.ct.d.ts +1 -0
- package/dist/types/components/toggle-button/toggle-button.d.ts +48 -0
- package/dist/types/components/tree/test/tree.ct.d.ts +1 -0
- package/dist/types/components/tree/tree.d.ts +2 -1
- package/dist/types/components/typography/typography.d.ts +24 -1
- package/dist/types/components/utils/application-layout/context.d.ts +6 -0
- package/dist/types/components/utils/application-layout/index.d.ts +1 -0
- package/dist/types/components/utils/application-layout/service.d.ts +16 -0
- package/dist/types/components/utils/breakpoints.d.ts +8 -0
- package/dist/types/components/utils/context.d.ts +57 -0
- package/dist/types/components/utils/shadow-dom.d.ts +1 -1
- package/dist/types/components/utils/theme-switcher.d.ts +10 -3
- package/dist/types/components/validation-tooltip/validation-tooltip.d.ts +1 -1
- package/dist/types/components/workflow-step/workflow-step.d.ts +1 -2
- package/dist/types/components/workflow-steps/test/workflow-steps.ct.d.ts +1 -0
- package/dist/types/components/workflow-steps/workflow-steps.d.ts +0 -5
- package/dist/types/components.d.ts +556 -167
- package/package.json +7 -5
- package/scss/_core.scss +66 -0
- package/scss/components/_checkboxes.scss +9 -3
- package/scss/components/_fonts.scss +131 -0
- package/scss/components/_table.scss +1 -1
- package/scss/components/form/_input.scss +155 -0
- package/scss/ix-core.scss +2 -75
- package/scss/ix.scss +3 -74
- package/scss/{_fonts.scss → legacy/_fonts.scss} +1 -1
- package/scss/{components → legacy/components}/_buttons.scss +14 -12
- package/scss/{components → legacy/components}/_dropdown.scss +1 -1
- package/scss/{components → legacy/components}/_forms.scss +6 -1
- package/scss/{components → legacy/components}/_modal.scss +1 -1
- package/scss/legacy/mixins/_fonts.scss +166 -0
- package/scss/mixins/_break-points.scss +25 -0
- package/scss/mixins/_fonts.scss +149 -105
- package/scss/mixins/_hover.scss +3 -1
- package/scss/mixins/_scrollbar.scss +44 -0
- package/scss/mixins/shadow-dom/_component.scss +4 -0
- package/scss/theme/classic-dark/_boxShadow.scss +5 -5
- package/scss/theme/classic-dark/_fontFamilies.scss +2 -1
- package/scss/theme/classic-dark/_fontSizes.scss +11 -0
- package/scss/theme/classic-dark/_fontWeights.scss +2 -1
- package/scss/theme/classic-dark/_index.scss +7 -0
- package/scss/theme/classic-dark/_letterSpacing.scss +13 -0
- package/scss/theme/classic-dark/_lineHeights.scss +4 -1
- package/scss/theme/classic-dark/_sizing.scss +12 -0
- package/scss/theme/classic-dark/_spacing.scss +12 -0
- package/scss/theme/classic-dark/_typography.scss +39 -16
- package/scss/theme/classic-light/_boxShadow.scss +5 -5
- package/scss/theme/classic-light/_fontFamilies.scss +2 -1
- package/scss/theme/classic-light/_fontSizes.scss +11 -0
- package/scss/theme/classic-light/_fontWeights.scss +2 -1
- package/scss/theme/classic-light/_index.scss +7 -0
- package/scss/theme/classic-light/_letterSpacing.scss +13 -0
- package/scss/theme/classic-light/_lineHeights.scss +4 -1
- package/scss/theme/classic-light/_sizing.scss +12 -0
- package/scss/theme/classic-light/_spacing.scss +12 -0
- package/scss/theme/classic-light/_typography.scss +39 -16
- package/scss/theme/legacy-classic-dark/_fontFamilies.scss +2 -1
- package/scss/theme/legacy-classic-dark/_fontSizes.scss +11 -0
- package/scss/theme/legacy-classic-dark/_fontWeights.scss +2 -1
- package/scss/theme/legacy-classic-dark/_index.scss +7 -0
- package/scss/theme/legacy-classic-dark/_letterSpacing.scss +13 -0
- package/scss/theme/legacy-classic-dark/_lineHeights.scss +4 -1
- package/scss/theme/legacy-classic-dark/_sizing.scss +12 -0
- package/scss/theme/legacy-classic-dark/_spacing.scss +12 -0
- package/scss/theme/legacy-classic-dark/_typography.scss +39 -16
- package/scss/theme/legacy-classic-light/_fontFamilies.scss +2 -1
- package/scss/theme/legacy-classic-light/_fontSizes.scss +11 -0
- package/scss/theme/legacy-classic-light/_fontWeights.scss +2 -1
- package/scss/theme/legacy-classic-light/_index.scss +7 -0
- package/scss/theme/legacy-classic-light/_letterSpacing.scss +13 -0
- package/scss/theme/legacy-classic-light/_lineHeights.scss +4 -1
- package/scss/theme/legacy-classic-light/_sizing.scss +12 -0
- package/scss/theme/legacy-classic-light/_spacing.scss +12 -0
- package/scss/theme/legacy-classic-light/_typography.scss +39 -16
- package/dist/cjs/base-button-497db257.js +0 -35
- package/dist/cjs/base-button-497db257.js.map +0 -1
- package/dist/cjs/context-2ce9a350.js +0 -26
- package/dist/cjs/context-2ce9a350.js.map +0 -1
- package/dist/cjs/floating-ui.dom.esm-b79b633f.js.map +0 -1
- package/dist/cjs/index-e56a1d39.js.map +0 -1
- package/dist/cjs/ix-animated-tab_2.cjs.entry.js +0 -214
- package/dist/cjs/ix-animated-tab_2.cjs.entry.js.map +0 -1
- package/dist/cjs/ix-index-button.cjs.entry.js +0 -28
- package/dist/cjs/ix-index-button.cjs.entry.js.map +0 -1
- package/dist/cjs/menu-service-d1b87142.js +0 -80
- package/dist/cjs/menu-service-d1b87142.js.map +0 -1
- package/dist/cjs/service-0e27b06b.js +0 -145
- package/dist/cjs/service-0e27b06b.js.map +0 -1
- package/dist/cjs/shadow-dom-f9b90696.js.map +0 -1
- package/dist/cjs/theme-switcher-bdbd0d30.js.map +0 -1
- package/dist/collection/components/animated-tab/animated-tab.js +0 -69
- package/dist/collection/components/animated-tab/animated-tab.js.map +0 -1
- package/dist/collection/components/animated-tabs/animated-tabs.css +0 -158
- package/dist/collection/components/animated-tabs/animated-tabs.js +0 -303
- package/dist/collection/components/animated-tabs/animated-tabs.js.map +0 -1
- package/dist/collection/components/index-button/index-button.css +0 -31
- package/dist/collection/components/index-button/index-button.js +0 -83
- package/dist/collection/components/index-button/index-button.js.map +0 -1
- package/dist/collection/components/layout/css-grid/builder.js.map +0 -1
- package/dist/collection/components/layout/css-grid/css-grid-item.js.map +0 -1
- package/dist/collection/components/layout/css-grid/css-grid.js.map +0 -1
- package/dist/collection/components/utils/screen/context.js +0 -34
- package/dist/collection/components/utils/screen/context.js.map +0 -1
- package/dist/collection/components/utils/screen/index.js.map +0 -1
- package/dist/collection/components/utils/screen/mode.js +0 -85
- package/dist/collection/components/utils/screen/mode.js.map +0 -1
- package/dist/collection/components/utils/screen/service.js +0 -68
- package/dist/collection/components/utils/screen/service.js.map +0 -1
- package/dist/components/index-button.js +0 -41
- package/dist/components/index-button.js.map +0 -1
- package/dist/components/ix-animated-tab.js +0 -39
- package/dist/components/ix-animated-tab.js.map +0 -1
- package/dist/components/ix-animated-tabs.js +0 -224
- package/dist/components/ix-animated-tabs.js.map +0 -1
- package/dist/components/ix-index-button.js +0 -8
- package/dist/components/ix-index-button.js.map +0 -1
- package/dist/components/service.js +0 -143
- package/dist/components/service.js.map +0 -1
- package/dist/esm/base-button-5bfeb71c.js +0 -33
- package/dist/esm/base-button-5bfeb71c.js.map +0 -1
- package/dist/esm/context-381170ae.js +0 -22
- package/dist/esm/context-381170ae.js.map +0 -1
- package/dist/esm/floating-ui.dom.esm-9b203a02.js.map +0 -1
- package/dist/esm/index-7334ee80.js.map +0 -1
- package/dist/esm/ix-animated-tab_2.entry.js +0 -209
- package/dist/esm/ix-animated-tab_2.entry.js.map +0 -1
- package/dist/esm/ix-index-button.entry.js +0 -24
- package/dist/esm/ix-index-button.entry.js.map +0 -1
- package/dist/esm/menu-service-b3076949.js +0 -78
- package/dist/esm/menu-service-b3076949.js.map +0 -1
- package/dist/esm/service-586129b5.js +0 -143
- package/dist/esm/service-586129b5.js.map +0 -1
- package/dist/esm/shadow-dom-6860b1c4.js.map +0 -1
- package/dist/esm/theme-switcher-7498e4f2.js.map +0 -1
- package/dist/siemens-ix/p-00f74fc9.entry.js +0 -2
- package/dist/siemens-ix/p-00f74fc9.entry.js.map +0 -1
- package/dist/siemens-ix/p-01c37ebe.entry.js +0 -2
- package/dist/siemens-ix/p-01c37ebe.entry.js.map +0 -1
- package/dist/siemens-ix/p-0574cf88.entry.js +0 -2
- package/dist/siemens-ix/p-0574cf88.entry.js.map +0 -1
- package/dist/siemens-ix/p-06603826.entry.js +0 -2
- package/dist/siemens-ix/p-06fcaee3.entry.js +0 -2
- package/dist/siemens-ix/p-06fcaee3.entry.js.map +0 -1
- package/dist/siemens-ix/p-07a0b330.entry.js +0 -2
- package/dist/siemens-ix/p-09ce5f12.entry.js +0 -2
- package/dist/siemens-ix/p-09ce5f12.entry.js.map +0 -1
- package/dist/siemens-ix/p-0c9ead45.entry.js +0 -2
- package/dist/siemens-ix/p-0c9ead45.entry.js.map +0 -1
- package/dist/siemens-ix/p-15996fa7.entry.js +0 -2
- package/dist/siemens-ix/p-15996fa7.entry.js.map +0 -1
- package/dist/siemens-ix/p-1b1bc523.entry.js +0 -2
- package/dist/siemens-ix/p-2ea3d53a.entry.js +0 -2
- package/dist/siemens-ix/p-303b8c2f.entry.js +0 -2
- package/dist/siemens-ix/p-303b8c2f.entry.js.map +0 -1
- package/dist/siemens-ix/p-323d5529.js +0 -2
- package/dist/siemens-ix/p-323d5529.js.map +0 -1
- package/dist/siemens-ix/p-33670e98.entry.js +0 -2
- package/dist/siemens-ix/p-34633470.entry.js +0 -2
- package/dist/siemens-ix/p-34633470.entry.js.map +0 -1
- package/dist/siemens-ix/p-38e69215.entry.js +0 -2
- package/dist/siemens-ix/p-38e69215.entry.js.map +0 -1
- package/dist/siemens-ix/p-3a99b0c8.entry.js +0 -2
- package/dist/siemens-ix/p-3a99b0c8.entry.js.map +0 -1
- package/dist/siemens-ix/p-45738e84.js +0 -2
- package/dist/siemens-ix/p-45738e84.js.map +0 -1
- package/dist/siemens-ix/p-4d194d55.entry.js.map +0 -1
- package/dist/siemens-ix/p-56a27b34.entry.js +0 -2
- package/dist/siemens-ix/p-56a27b34.entry.js.map +0 -1
- package/dist/siemens-ix/p-5b39e04e.js +0 -2
- package/dist/siemens-ix/p-5b39e04e.js.map +0 -1
- package/dist/siemens-ix/p-5fedb19b.entry.js +0 -2
- package/dist/siemens-ix/p-627148db.entry.js +0 -2
- package/dist/siemens-ix/p-627148db.entry.js.map +0 -1
- package/dist/siemens-ix/p-62f4db99.entry.js +0 -2
- package/dist/siemens-ix/p-62f4db99.entry.js.map +0 -1
- package/dist/siemens-ix/p-63b82e40.entry.js +0 -2
- package/dist/siemens-ix/p-63b82e40.entry.js.map +0 -1
- package/dist/siemens-ix/p-68c44614.entry.js +0 -2
- package/dist/siemens-ix/p-68c44614.entry.js.map +0 -1
- package/dist/siemens-ix/p-7021c2d1.entry.js +0 -2
- package/dist/siemens-ix/p-7021c2d1.entry.js.map +0 -1
- package/dist/siemens-ix/p-709d38fe.entry.js +0 -2
- package/dist/siemens-ix/p-709d38fe.entry.js.map +0 -1
- package/dist/siemens-ix/p-785726e8.entry.js +0 -2
- package/dist/siemens-ix/p-785726e8.entry.js.map +0 -1
- package/dist/siemens-ix/p-7d2aec76.entry.js +0 -2
- package/dist/siemens-ix/p-81333042.entry.js.map +0 -1
- package/dist/siemens-ix/p-8c14a4a3.entry.js +0 -2
- package/dist/siemens-ix/p-8ce73af1.entry.js +0 -2
- package/dist/siemens-ix/p-8ce73af1.entry.js.map +0 -1
- package/dist/siemens-ix/p-904aa275.entry.js +0 -2
- package/dist/siemens-ix/p-904aa275.entry.js.map +0 -1
- package/dist/siemens-ix/p-918450cd.entry.js.map +0 -1
- package/dist/siemens-ix/p-9547706d.entry.js +0 -2
- package/dist/siemens-ix/p-9903e755.entry.js +0 -2
- package/dist/siemens-ix/p-9903e755.entry.js.map +0 -1
- package/dist/siemens-ix/p-9d264ca8.entry.js +0 -2
- package/dist/siemens-ix/p-9d264ca8.entry.js.map +0 -1
- package/dist/siemens-ix/p-a64d88de.entry.js +0 -2
- package/dist/siemens-ix/p-a8e8a942.entry.js +0 -2
- package/dist/siemens-ix/p-a9619a92.entry.js +0 -2
- package/dist/siemens-ix/p-b21bc31c.entry.js +0 -2
- package/dist/siemens-ix/p-b6d52b6f.entry.js +0 -2
- package/dist/siemens-ix/p-b89172b4.entry.js.map +0 -1
- package/dist/siemens-ix/p-b899b25b.js +0 -3
- package/dist/siemens-ix/p-b899b25b.js.map +0 -1
- package/dist/siemens-ix/p-bf019e35.entry.js +0 -2
- package/dist/siemens-ix/p-c0345859.entry.js +0 -2
- package/dist/siemens-ix/p-c4ea8815.entry.js +0 -2
- package/dist/siemens-ix/p-c84a43ef.entry.js +0 -2
- package/dist/siemens-ix/p-c84a43ef.entry.js.map +0 -1
- package/dist/siemens-ix/p-d0a8aa6f.entry.js +0 -2
- package/dist/siemens-ix/p-d43bf856.js +0 -2
- package/dist/siemens-ix/p-d43bf856.js.map +0 -1
- package/dist/siemens-ix/p-d737ad96.js +0 -2
- package/dist/siemens-ix/p-d737ad96.js.map +0 -1
- package/dist/siemens-ix/p-d7e8417d.entry.js.map +0 -1
- package/dist/siemens-ix/p-d81d0f62.entry.js +0 -2
- package/dist/siemens-ix/p-d991a3d6.entry.js +0 -2
- package/dist/siemens-ix/p-d991a3d6.entry.js.map +0 -1
- package/dist/siemens-ix/p-dbca4dd5.entry.js +0 -2
- package/dist/siemens-ix/p-dbca4dd5.entry.js.map +0 -1
- package/dist/siemens-ix/p-e1c92dcb.entry.js +0 -2
- package/dist/siemens-ix/p-e1c92dcb.entry.js.map +0 -1
- package/dist/siemens-ix/p-e275814e.js +0 -2
- package/dist/siemens-ix/p-e275814e.js.map +0 -1
- package/dist/siemens-ix/p-e3db25ef.entry.js +0 -2
- package/dist/siemens-ix/p-e3db25ef.entry.js.map +0 -1
- package/dist/siemens-ix/p-e8f2e141.entry.js +0 -2
- package/dist/siemens-ix/p-eca0b89c.entry.js +0 -2
- package/dist/siemens-ix/p-eca0b89c.entry.js.map +0 -1
- package/dist/siemens-ix/p-ef73f7e3.entry.js +0 -2
- package/dist/siemens-ix/p-ef73f7e3.entry.js.map +0 -1
- package/dist/siemens-ix/p-f22423c2.js +0 -2
- package/dist/siemens-ix/p-f22423c2.js.map +0 -1
- package/dist/siemens-ix/p-f4d634f5.entry.js +0 -2
- package/dist/siemens-ix/p-f4d634f5.entry.js.map +0 -1
- package/dist/siemens-ix/p-fafe1aeb.entry.js +0 -2
- package/dist/siemens-ix/p-fafe1aeb.entry.js.map +0 -1
- package/dist/siemens-ix/p-fe073f2a.entry.js +0 -2
- package/dist/siemens-ix/p-fe073f2a.entry.js.map +0 -1
- package/dist/siemens-ix/p-ff17104c.entry.js +0 -2
- package/dist/siemens-ix/p-ff17104c.entry.js.map +0 -1
- package/dist/types/components/animated-tab/animated-tab.d.ts +0 -11
- package/dist/types/components/animated-tabs/animated-tabs.d.ts +0 -44
- package/dist/types/components/index-button/index-button.d.ts +0 -16
- package/dist/types/components/utils/screen/context.d.ts +0 -5
- package/dist/types/components/utils/screen/index.d.ts +0 -1
- package/dist/types/components/utils/screen/mode.d.ts +0 -13
- package/dist/types/components/utils/screen/service.d.ts +0 -15
- /package/dist/collection/components/{layout/css-grid → css-grid}/builder.js +0 -0
- /package/dist/collection/components/{layout/css-grid → css-grid}/css-grid-item.css +0 -0
- /package/dist/collection/components/{layout/css-grid → css-grid}/css-grid-item.js +0 -0
- /package/dist/collection/components/{layout/css-grid → css-grid}/css-grid.css +0 -0
- /package/dist/siemens-ix/{p-157f7ec0.entry.js.map → p-26855b3f.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-0e86b47b.entry.js.map → p-3983ee89.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-0fab8cae.entry.js.map → p-4659c550.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-02f01e39.entry.js.map → p-4dbae019.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-db74796e.js.map → p-8c7d1e06.js.map} +0 -0
- /package/dist/siemens-ix/{p-a8e8a942.entry.js.map → p-a0fdaa04.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-f38e7420.entry.js.map → p-b38eff08.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-f0219d7a.entry.js.map → p-b735ee5e.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-d48d74af.entry.js.map → p-cd1e0061.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-0dea55bf.entry.js.map → p-d87de06f.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-d0a8aa6f.entry.js.map → p-db174600.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-20aa7350.entry.js.map → p-f88b25d7.entry.js.map} +0 -0
- /package/dist/types/components/{layout/css-grid → css-grid}/builder.d.ts +0 -0
- /package/dist/types/components/{layout/css-grid → css-grid}/css-grid-item.d.ts +0 -0
- /package/dist/types/components/{layout/css-grid → css-grid}/css-grid.d.ts +0 -0
- /package/scss/{components → legacy/components}/_button-group.scss +0 -0
|
@@ -1,17 +1,121 @@
|
|
|
1
|
+
const min = Math.min;
|
|
2
|
+
const max = Math.max;
|
|
3
|
+
const round = Math.round;
|
|
4
|
+
const floor = Math.floor;
|
|
5
|
+
const createCoords = v => ({
|
|
6
|
+
x: v,
|
|
7
|
+
y: v
|
|
8
|
+
});
|
|
9
|
+
const oppositeSideMap = {
|
|
10
|
+
left: 'right',
|
|
11
|
+
right: 'left',
|
|
12
|
+
bottom: 'top',
|
|
13
|
+
top: 'bottom'
|
|
14
|
+
};
|
|
15
|
+
const oppositeAlignmentMap = {
|
|
16
|
+
start: 'end',
|
|
17
|
+
end: 'start'
|
|
18
|
+
};
|
|
19
|
+
function clamp(start, value, end) {
|
|
20
|
+
return max(start, min(value, end));
|
|
21
|
+
}
|
|
22
|
+
function evaluate(value, param) {
|
|
23
|
+
return typeof value === 'function' ? value(param) : value;
|
|
24
|
+
}
|
|
25
|
+
function getSide(placement) {
|
|
26
|
+
return placement.split('-')[0];
|
|
27
|
+
}
|
|
1
28
|
function getAlignment(placement) {
|
|
2
29
|
return placement.split('-')[1];
|
|
3
30
|
}
|
|
4
|
-
|
|
5
|
-
|
|
31
|
+
function getOppositeAxis(axis) {
|
|
32
|
+
return axis === 'x' ? 'y' : 'x';
|
|
33
|
+
}
|
|
34
|
+
function getAxisLength(axis) {
|
|
6
35
|
return axis === 'y' ? 'height' : 'width';
|
|
7
36
|
}
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
return placement.split('-')[0];
|
|
37
|
+
function getSideAxis(placement) {
|
|
38
|
+
return ['top', 'bottom'].includes(getSide(placement)) ? 'y' : 'x';
|
|
11
39
|
}
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
40
|
+
function getAlignmentAxis(placement) {
|
|
41
|
+
return getOppositeAxis(getSideAxis(placement));
|
|
42
|
+
}
|
|
43
|
+
function getAlignmentSides(placement, rects, rtl) {
|
|
44
|
+
if (rtl === void 0) {
|
|
45
|
+
rtl = false;
|
|
46
|
+
}
|
|
47
|
+
const alignment = getAlignment(placement);
|
|
48
|
+
const alignmentAxis = getAlignmentAxis(placement);
|
|
49
|
+
const length = getAxisLength(alignmentAxis);
|
|
50
|
+
let mainAlignmentSide = alignmentAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';
|
|
51
|
+
if (rects.reference[length] > rects.floating[length]) {
|
|
52
|
+
mainAlignmentSide = getOppositePlacement(mainAlignmentSide);
|
|
53
|
+
}
|
|
54
|
+
return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];
|
|
55
|
+
}
|
|
56
|
+
function getExpandedPlacements(placement) {
|
|
57
|
+
const oppositePlacement = getOppositePlacement(placement);
|
|
58
|
+
return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];
|
|
59
|
+
}
|
|
60
|
+
function getOppositeAlignmentPlacement(placement) {
|
|
61
|
+
return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);
|
|
62
|
+
}
|
|
63
|
+
function getSideList(side, isStart, rtl) {
|
|
64
|
+
const lr = ['left', 'right'];
|
|
65
|
+
const rl = ['right', 'left'];
|
|
66
|
+
const tb = ['top', 'bottom'];
|
|
67
|
+
const bt = ['bottom', 'top'];
|
|
68
|
+
switch (side) {
|
|
69
|
+
case 'top':
|
|
70
|
+
case 'bottom':
|
|
71
|
+
if (rtl) return isStart ? rl : lr;
|
|
72
|
+
return isStart ? lr : rl;
|
|
73
|
+
case 'left':
|
|
74
|
+
case 'right':
|
|
75
|
+
return isStart ? tb : bt;
|
|
76
|
+
default:
|
|
77
|
+
return [];
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
function getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {
|
|
81
|
+
const alignment = getAlignment(placement);
|
|
82
|
+
let list = getSideList(getSide(placement), direction === 'start', rtl);
|
|
83
|
+
if (alignment) {
|
|
84
|
+
list = list.map(side => side + "-" + alignment);
|
|
85
|
+
if (flipAlignment) {
|
|
86
|
+
list = list.concat(list.map(getOppositeAlignmentPlacement));
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
return list;
|
|
90
|
+
}
|
|
91
|
+
function getOppositePlacement(placement) {
|
|
92
|
+
return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);
|
|
93
|
+
}
|
|
94
|
+
function expandPaddingObject(padding) {
|
|
95
|
+
return {
|
|
96
|
+
top: 0,
|
|
97
|
+
right: 0,
|
|
98
|
+
bottom: 0,
|
|
99
|
+
left: 0,
|
|
100
|
+
...padding
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
function getPaddingObject(padding) {
|
|
104
|
+
return typeof padding !== 'number' ? expandPaddingObject(padding) : {
|
|
105
|
+
top: padding,
|
|
106
|
+
right: padding,
|
|
107
|
+
bottom: padding,
|
|
108
|
+
left: padding
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
function rectToClientRect(rect) {
|
|
112
|
+
return {
|
|
113
|
+
...rect,
|
|
114
|
+
top: rect.y,
|
|
115
|
+
left: rect.x,
|
|
116
|
+
right: rect.x + rect.width,
|
|
117
|
+
bottom: rect.y + rect.height
|
|
118
|
+
};
|
|
15
119
|
}
|
|
16
120
|
|
|
17
121
|
function computeCoordsFromPlacement(_ref, placement, rtl) {
|
|
@@ -19,13 +123,14 @@ function computeCoordsFromPlacement(_ref, placement, rtl) {
|
|
|
19
123
|
reference,
|
|
20
124
|
floating
|
|
21
125
|
} = _ref;
|
|
126
|
+
const sideAxis = getSideAxis(placement);
|
|
127
|
+
const alignmentAxis = getAlignmentAxis(placement);
|
|
128
|
+
const alignLength = getAxisLength(alignmentAxis);
|
|
129
|
+
const side = getSide(placement);
|
|
130
|
+
const isVertical = sideAxis === 'y';
|
|
22
131
|
const commonX = reference.x + reference.width / 2 - floating.width / 2;
|
|
23
132
|
const commonY = reference.y + reference.height / 2 - floating.height / 2;
|
|
24
|
-
const
|
|
25
|
-
const length = getLengthFromAxis(mainAxis);
|
|
26
|
-
const commonAlign = reference[length] / 2 - floating[length] / 2;
|
|
27
|
-
const side = getSide(placement);
|
|
28
|
-
const isVertical = mainAxis === 'x';
|
|
133
|
+
const commonAlign = reference[alignLength] / 2 - floating[alignLength] / 2;
|
|
29
134
|
let coords;
|
|
30
135
|
switch (side) {
|
|
31
136
|
case 'top':
|
|
@@ -60,10 +165,10 @@ function computeCoordsFromPlacement(_ref, placement, rtl) {
|
|
|
60
165
|
}
|
|
61
166
|
switch (getAlignment(placement)) {
|
|
62
167
|
case 'start':
|
|
63
|
-
coords[
|
|
168
|
+
coords[alignmentAxis] -= commonAlign * (rtl && isVertical ? -1 : 1);
|
|
64
169
|
break;
|
|
65
170
|
case 'end':
|
|
66
|
-
coords[
|
|
171
|
+
coords[alignmentAxis] += commonAlign * (rtl && isVertical ? -1 : 1);
|
|
67
172
|
break;
|
|
68
173
|
}
|
|
69
174
|
return coords;
|
|
@@ -161,44 +266,15 @@ const computePosition$1 = async (reference, floating, config) => {
|
|
|
161
266
|
};
|
|
162
267
|
};
|
|
163
268
|
|
|
164
|
-
function expandPaddingObject(padding) {
|
|
165
|
-
return {
|
|
166
|
-
top: 0,
|
|
167
|
-
right: 0,
|
|
168
|
-
bottom: 0,
|
|
169
|
-
left: 0,
|
|
170
|
-
...padding
|
|
171
|
-
};
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
function getSideObjectFromPadding(padding) {
|
|
175
|
-
return typeof padding !== 'number' ? expandPaddingObject(padding) : {
|
|
176
|
-
top: padding,
|
|
177
|
-
right: padding,
|
|
178
|
-
bottom: padding,
|
|
179
|
-
left: padding
|
|
180
|
-
};
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
function rectToClientRect(rect) {
|
|
184
|
-
return {
|
|
185
|
-
...rect,
|
|
186
|
-
top: rect.y,
|
|
187
|
-
left: rect.x,
|
|
188
|
-
right: rect.x + rect.width,
|
|
189
|
-
bottom: rect.y + rect.height
|
|
190
|
-
};
|
|
191
|
-
}
|
|
192
|
-
|
|
193
269
|
/**
|
|
194
270
|
* Resolves with an object of overflow side offsets that determine how much the
|
|
195
|
-
* element is overflowing a given clipping boundary.
|
|
271
|
+
* element is overflowing a given clipping boundary on each side.
|
|
196
272
|
* - positive = overflowing the boundary by that number of pixels
|
|
197
273
|
* - negative = how many pixels left before it will overflow
|
|
198
274
|
* - 0 = lies flush with the boundary
|
|
199
275
|
* @see https://floating-ui.com/docs/detectOverflow
|
|
200
276
|
*/
|
|
201
|
-
async function detectOverflow(
|
|
277
|
+
async function detectOverflow(state, options) {
|
|
202
278
|
var _await$platform$isEle;
|
|
203
279
|
if (options === void 0) {
|
|
204
280
|
options = {};
|
|
@@ -210,15 +286,15 @@ async function detectOverflow(middlewareArguments, options) {
|
|
|
210
286
|
rects,
|
|
211
287
|
elements,
|
|
212
288
|
strategy
|
|
213
|
-
} =
|
|
289
|
+
} = state;
|
|
214
290
|
const {
|
|
215
291
|
boundary = 'clippingAncestors',
|
|
216
292
|
rootBoundary = 'viewport',
|
|
217
293
|
elementContext = 'floating',
|
|
218
294
|
altBoundary = false,
|
|
219
295
|
padding = 0
|
|
220
|
-
} = options;
|
|
221
|
-
const paddingObject =
|
|
296
|
+
} = evaluate(options, state);
|
|
297
|
+
const paddingObject = getPaddingObject(padding);
|
|
222
298
|
const altContext = elementContext === 'floating' ? 'reference' : 'floating';
|
|
223
299
|
const element = elements[altBoundary ? altContext : elementContext];
|
|
224
300
|
const clippingClientRect = rectToClientRect(await platform.getClippingRect({
|
|
@@ -253,151 +329,87 @@ async function detectOverflow(middlewareArguments, options) {
|
|
|
253
329
|
};
|
|
254
330
|
}
|
|
255
331
|
|
|
256
|
-
const min$1 = Math.min;
|
|
257
|
-
const max$1 = Math.max;
|
|
258
|
-
|
|
259
|
-
function within(min$1$1, value, max$1$1) {
|
|
260
|
-
return max$1(min$1$1, min$1(value, max$1$1));
|
|
261
|
-
}
|
|
262
|
-
|
|
263
332
|
/**
|
|
264
|
-
*
|
|
265
|
-
* to the reference element.
|
|
333
|
+
* Provides data to position an inner element of the floating element so that it
|
|
334
|
+
* appears centered to the reference element.
|
|
266
335
|
* @see https://floating-ui.com/docs/arrow
|
|
267
336
|
*/
|
|
268
337
|
const arrow = options => ({
|
|
269
338
|
name: 'arrow',
|
|
270
339
|
options,
|
|
271
|
-
async fn(
|
|
272
|
-
// Since `element` is required, we don't Partial<> the type.
|
|
273
|
-
const {
|
|
274
|
-
element,
|
|
275
|
-
padding = 0
|
|
276
|
-
} = options || {};
|
|
340
|
+
async fn(state) {
|
|
277
341
|
const {
|
|
278
342
|
x,
|
|
279
343
|
y,
|
|
280
344
|
placement,
|
|
281
345
|
rects,
|
|
282
|
-
platform
|
|
283
|
-
|
|
346
|
+
platform,
|
|
347
|
+
elements
|
|
348
|
+
} = state;
|
|
349
|
+
// Since `element` is required, we don't Partial<> the type.
|
|
350
|
+
const {
|
|
351
|
+
element,
|
|
352
|
+
padding = 0
|
|
353
|
+
} = evaluate(options, state) || {};
|
|
284
354
|
if (element == null) {
|
|
285
355
|
return {};
|
|
286
356
|
}
|
|
287
|
-
const paddingObject =
|
|
357
|
+
const paddingObject = getPaddingObject(padding);
|
|
288
358
|
const coords = {
|
|
289
359
|
x,
|
|
290
360
|
y
|
|
291
361
|
};
|
|
292
|
-
const axis =
|
|
293
|
-
const length =
|
|
362
|
+
const axis = getAlignmentAxis(placement);
|
|
363
|
+
const length = getAxisLength(axis);
|
|
294
364
|
const arrowDimensions = await platform.getDimensions(element);
|
|
295
|
-
const
|
|
296
|
-
const
|
|
365
|
+
const isYAxis = axis === 'y';
|
|
366
|
+
const minProp = isYAxis ? 'top' : 'left';
|
|
367
|
+
const maxProp = isYAxis ? 'bottom' : 'right';
|
|
368
|
+
const clientProp = isYAxis ? 'clientHeight' : 'clientWidth';
|
|
297
369
|
const endDiff = rects.reference[length] + rects.reference[axis] - coords[axis] - rects.floating[length];
|
|
298
370
|
const startDiff = coords[axis] - rects.reference[axis];
|
|
299
371
|
const arrowOffsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(element));
|
|
300
|
-
let clientSize = arrowOffsetParent ?
|
|
301
|
-
|
|
302
|
-
|
|
372
|
+
let clientSize = arrowOffsetParent ? arrowOffsetParent[clientProp] : 0;
|
|
373
|
+
|
|
374
|
+
// DOM platform can return `window` as the `offsetParent`.
|
|
375
|
+
if (!clientSize || !(await (platform.isElement == null ? void 0 : platform.isElement(arrowOffsetParent)))) {
|
|
376
|
+
clientSize = elements.floating[clientProp] || rects.floating[length];
|
|
303
377
|
}
|
|
304
378
|
const centerToReference = endDiff / 2 - startDiff / 2;
|
|
305
379
|
|
|
380
|
+
// If the padding is large enough that it causes the arrow to no longer be
|
|
381
|
+
// centered, modify the padding so that it is centered.
|
|
382
|
+
const largestPossiblePadding = clientSize / 2 - arrowDimensions[length] / 2 - 1;
|
|
383
|
+
const minPadding = min(paddingObject[minProp], largestPossiblePadding);
|
|
384
|
+
const maxPadding = min(paddingObject[maxProp], largestPossiblePadding);
|
|
385
|
+
|
|
306
386
|
// Make sure the arrow doesn't overflow the floating element if the center
|
|
307
387
|
// point is outside the floating element's bounds.
|
|
308
|
-
const min =
|
|
309
|
-
const max = clientSize - arrowDimensions[length] -
|
|
388
|
+
const min$1 = minPadding;
|
|
389
|
+
const max = clientSize - arrowDimensions[length] - maxPadding;
|
|
310
390
|
const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;
|
|
311
|
-
const offset =
|
|
391
|
+
const offset = clamp(min$1, center, max);
|
|
312
392
|
|
|
313
393
|
// If the reference is small enough that the arrow's padding causes it to
|
|
314
394
|
// to point to nothing for an aligned placement, adjust the offset of the
|
|
315
395
|
// floating element itself. This stops `shift()` from taking action, but can
|
|
316
396
|
// be worked around by calling it again after the `arrow()` if desired.
|
|
317
|
-
const shouldAddOffset = getAlignment(placement) != null && center != offset && rects.reference[length] / 2 - (center < min ?
|
|
318
|
-
const alignmentOffset = shouldAddOffset ? center < min ? min - center : max - center : 0;
|
|
397
|
+
const shouldAddOffset = getAlignment(placement) != null && center != offset && rects.reference[length] / 2 - (center < min$1 ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;
|
|
398
|
+
const alignmentOffset = shouldAddOffset ? center < min$1 ? min$1 - center : max - center : 0;
|
|
319
399
|
return {
|
|
320
400
|
[axis]: coords[axis] - alignmentOffset,
|
|
321
401
|
data: {
|
|
322
402
|
[axis]: offset,
|
|
323
|
-
centerOffset: center - offset
|
|
403
|
+
centerOffset: center - offset + alignmentOffset
|
|
324
404
|
}
|
|
325
405
|
};
|
|
326
406
|
}
|
|
327
407
|
});
|
|
328
408
|
|
|
329
|
-
const oppositeSideMap = {
|
|
330
|
-
left: 'right',
|
|
331
|
-
right: 'left',
|
|
332
|
-
bottom: 'top',
|
|
333
|
-
top: 'bottom'
|
|
334
|
-
};
|
|
335
|
-
function getOppositePlacement(placement) {
|
|
336
|
-
return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);
|
|
337
|
-
}
|
|
338
|
-
|
|
339
|
-
function getAlignmentSides(placement, rects, rtl) {
|
|
340
|
-
if (rtl === void 0) {
|
|
341
|
-
rtl = false;
|
|
342
|
-
}
|
|
343
|
-
const alignment = getAlignment(placement);
|
|
344
|
-
const mainAxis = getMainAxisFromPlacement(placement);
|
|
345
|
-
const length = getLengthFromAxis(mainAxis);
|
|
346
|
-
let mainAlignmentSide = mainAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';
|
|
347
|
-
if (rects.reference[length] > rects.floating[length]) {
|
|
348
|
-
mainAlignmentSide = getOppositePlacement(mainAlignmentSide);
|
|
349
|
-
}
|
|
350
|
-
return {
|
|
351
|
-
main: mainAlignmentSide,
|
|
352
|
-
cross: getOppositePlacement(mainAlignmentSide)
|
|
353
|
-
};
|
|
354
|
-
}
|
|
355
|
-
|
|
356
|
-
const oppositeAlignmentMap = {
|
|
357
|
-
start: 'end',
|
|
358
|
-
end: 'start'
|
|
359
|
-
};
|
|
360
|
-
function getOppositeAlignmentPlacement(placement) {
|
|
361
|
-
return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);
|
|
362
|
-
}
|
|
363
|
-
|
|
364
|
-
function getExpandedPlacements(placement) {
|
|
365
|
-
const oppositePlacement = getOppositePlacement(placement);
|
|
366
|
-
return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];
|
|
367
|
-
}
|
|
368
|
-
|
|
369
|
-
function getSideList(side, isStart, rtl) {
|
|
370
|
-
const lr = ['left', 'right'];
|
|
371
|
-
const rl = ['right', 'left'];
|
|
372
|
-
const tb = ['top', 'bottom'];
|
|
373
|
-
const bt = ['bottom', 'top'];
|
|
374
|
-
switch (side) {
|
|
375
|
-
case 'top':
|
|
376
|
-
case 'bottom':
|
|
377
|
-
if (rtl) return isStart ? rl : lr;
|
|
378
|
-
return isStart ? lr : rl;
|
|
379
|
-
case 'left':
|
|
380
|
-
case 'right':
|
|
381
|
-
return isStart ? tb : bt;
|
|
382
|
-
default:
|
|
383
|
-
return [];
|
|
384
|
-
}
|
|
385
|
-
}
|
|
386
|
-
function getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {
|
|
387
|
-
const alignment = getAlignment(placement);
|
|
388
|
-
let list = getSideList(getSide(placement), direction === 'start', rtl);
|
|
389
|
-
if (alignment) {
|
|
390
|
-
list = list.map(side => side + "-" + alignment);
|
|
391
|
-
if (flipAlignment) {
|
|
392
|
-
list = list.concat(list.map(getOppositeAlignmentPlacement));
|
|
393
|
-
}
|
|
394
|
-
}
|
|
395
|
-
return list;
|
|
396
|
-
}
|
|
397
|
-
|
|
398
409
|
/**
|
|
399
|
-
*
|
|
400
|
-
*
|
|
410
|
+
* Optimizes the visibility of the floating element by flipping the `placement`
|
|
411
|
+
* in order to keep it in view when the preferred placement(s) will overflow the
|
|
412
|
+
* clipping boundary. Alternative to `autoPlacement`.
|
|
401
413
|
* @see https://floating-ui.com/docs/flip
|
|
402
414
|
*/
|
|
403
415
|
const flip = function (options) {
|
|
@@ -407,7 +419,7 @@ const flip = function (options) {
|
|
|
407
419
|
return {
|
|
408
420
|
name: 'flip',
|
|
409
421
|
options,
|
|
410
|
-
async fn(
|
|
422
|
+
async fn(state) {
|
|
411
423
|
var _middlewareData$flip;
|
|
412
424
|
const {
|
|
413
425
|
placement,
|
|
@@ -416,7 +428,7 @@ const flip = function (options) {
|
|
|
416
428
|
initialPlacement,
|
|
417
429
|
platform,
|
|
418
430
|
elements
|
|
419
|
-
} =
|
|
431
|
+
} = state;
|
|
420
432
|
const {
|
|
421
433
|
mainAxis: checkMainAxis = true,
|
|
422
434
|
crossAxis: checkCrossAxis = true,
|
|
@@ -425,7 +437,7 @@ const flip = function (options) {
|
|
|
425
437
|
fallbackAxisSideDirection = 'none',
|
|
426
438
|
flipAlignment = true,
|
|
427
439
|
...detectOverflowOptions
|
|
428
|
-
} = options;
|
|
440
|
+
} = evaluate(options, state);
|
|
429
441
|
const side = getSide(placement);
|
|
430
442
|
const isBasePlacement = getSide(initialPlacement) === initialPlacement;
|
|
431
443
|
const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));
|
|
@@ -434,18 +446,15 @@ const flip = function (options) {
|
|
|
434
446
|
fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));
|
|
435
447
|
}
|
|
436
448
|
const placements = [initialPlacement, ...fallbackPlacements];
|
|
437
|
-
const overflow = await detectOverflow(
|
|
449
|
+
const overflow = await detectOverflow(state, detectOverflowOptions);
|
|
438
450
|
const overflows = [];
|
|
439
451
|
let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];
|
|
440
452
|
if (checkMainAxis) {
|
|
441
453
|
overflows.push(overflow[side]);
|
|
442
454
|
}
|
|
443
455
|
if (checkCrossAxis) {
|
|
444
|
-
const
|
|
445
|
-
|
|
446
|
-
cross
|
|
447
|
-
} = getAlignmentSides(placement, rects, rtl);
|
|
448
|
-
overflows.push(overflow[main], overflow[cross]);
|
|
456
|
+
const sides = getAlignmentSides(placement, rects, rtl);
|
|
457
|
+
overflows.push(overflow[sides[0]], overflow[sides[1]]);
|
|
449
458
|
}
|
|
450
459
|
overflowsData = [...overflowsData, {
|
|
451
460
|
placement,
|
|
@@ -454,7 +463,7 @@ const flip = function (options) {
|
|
|
454
463
|
|
|
455
464
|
// One or more sides is overflowing.
|
|
456
465
|
if (!overflows.every(side => side <= 0)) {
|
|
457
|
-
var _middlewareData$flip2;
|
|
466
|
+
var _middlewareData$flip2, _overflowsData$filter;
|
|
458
467
|
const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;
|
|
459
468
|
const nextPlacement = placements[nextIndex];
|
|
460
469
|
if (nextPlacement) {
|
|
@@ -469,20 +478,27 @@ const flip = function (options) {
|
|
|
469
478
|
}
|
|
470
479
|
};
|
|
471
480
|
}
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
481
|
+
|
|
482
|
+
// First, find the candidates that fit on the mainAxis side of overflow,
|
|
483
|
+
// then find the placement that fits the best on the main crossAxis side.
|
|
484
|
+
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;
|
|
485
|
+
|
|
486
|
+
// Otherwise fallback.
|
|
487
|
+
if (!resetPlacement) {
|
|
488
|
+
switch (fallbackStrategy) {
|
|
489
|
+
case 'bestFit':
|
|
490
|
+
{
|
|
491
|
+
var _overflowsData$map$so;
|
|
492
|
+
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];
|
|
493
|
+
if (placement) {
|
|
494
|
+
resetPlacement = placement;
|
|
495
|
+
}
|
|
496
|
+
break;
|
|
480
497
|
}
|
|
498
|
+
case 'initialPlacement':
|
|
499
|
+
resetPlacement = initialPlacement;
|
|
481
500
|
break;
|
|
482
|
-
|
|
483
|
-
case 'initialPlacement':
|
|
484
|
-
resetPlacement = initialPlacement;
|
|
485
|
-
break;
|
|
501
|
+
}
|
|
486
502
|
}
|
|
487
503
|
if (placement !== resetPlacement) {
|
|
488
504
|
return {
|
|
@@ -497,6 +513,33 @@ const flip = function (options) {
|
|
|
497
513
|
};
|
|
498
514
|
};
|
|
499
515
|
|
|
516
|
+
function getBoundingRect(rects) {
|
|
517
|
+
const minX = min(...rects.map(rect => rect.left));
|
|
518
|
+
const minY = min(...rects.map(rect => rect.top));
|
|
519
|
+
const maxX = max(...rects.map(rect => rect.right));
|
|
520
|
+
const maxY = max(...rects.map(rect => rect.bottom));
|
|
521
|
+
return {
|
|
522
|
+
x: minX,
|
|
523
|
+
y: minY,
|
|
524
|
+
width: maxX - minX,
|
|
525
|
+
height: maxY - minY
|
|
526
|
+
};
|
|
527
|
+
}
|
|
528
|
+
function getRectsByLine(rects) {
|
|
529
|
+
const sortedRects = rects.slice().sort((a, b) => a.y - b.y);
|
|
530
|
+
const groups = [];
|
|
531
|
+
let prevRect = null;
|
|
532
|
+
for (let i = 0; i < sortedRects.length; i++) {
|
|
533
|
+
const rect = sortedRects[i];
|
|
534
|
+
if (!prevRect || rect.y - prevRect.y > prevRect.height / 2) {
|
|
535
|
+
groups.push([rect]);
|
|
536
|
+
} else {
|
|
537
|
+
groups[groups.length - 1].push(rect);
|
|
538
|
+
}
|
|
539
|
+
prevRect = rect;
|
|
540
|
+
}
|
|
541
|
+
return groups.map(rect => rectToClientRect(getBoundingRect(rect)));
|
|
542
|
+
}
|
|
500
543
|
/**
|
|
501
544
|
* Provides improved positioning for inline reference elements that can span
|
|
502
545
|
* over multiple lines, such as hyperlinks or range selections.
|
|
@@ -509,14 +552,14 @@ const inline = function (options) {
|
|
|
509
552
|
return {
|
|
510
553
|
name: 'inline',
|
|
511
554
|
options,
|
|
512
|
-
async fn(
|
|
555
|
+
async fn(state) {
|
|
513
556
|
const {
|
|
514
557
|
placement,
|
|
515
558
|
elements,
|
|
516
559
|
rects,
|
|
517
560
|
platform,
|
|
518
561
|
strategy
|
|
519
|
-
} =
|
|
562
|
+
} = state;
|
|
520
563
|
// A MouseEvent's client{X,Y} coords can be up to 2 pixels off a
|
|
521
564
|
// ClientRect's bounds, despite the event listener being triggered. A
|
|
522
565
|
// padding of 2 seems to handle this issue.
|
|
@@ -524,14 +567,11 @@ const inline = function (options) {
|
|
|
524
567
|
padding = 2,
|
|
525
568
|
x,
|
|
526
569
|
y
|
|
527
|
-
} = options;
|
|
528
|
-
const
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
}) : rects.reference);
|
|
533
|
-
const clientRects = (await (platform.getClientRects == null ? void 0 : platform.getClientRects(elements.reference))) || [];
|
|
534
|
-
const paddingObject = getSideObjectFromPadding(padding);
|
|
570
|
+
} = evaluate(options, state);
|
|
571
|
+
const nativeClientRects = Array.from((await (platform.getClientRects == null ? void 0 : platform.getClientRects(elements.reference))) || []);
|
|
572
|
+
const clientRects = getRectsByLine(nativeClientRects);
|
|
573
|
+
const fallback = rectToClientRect(getBoundingRect(nativeClientRects));
|
|
574
|
+
const paddingObject = getPaddingObject(padding);
|
|
535
575
|
function getBoundingClientRect() {
|
|
536
576
|
// There are two rects and they are disjoined.
|
|
537
577
|
if (clientRects.length === 2 && clientRects[0].left > clientRects[1].right && x != null && y != null) {
|
|
@@ -541,7 +581,7 @@ const inline = function (options) {
|
|
|
541
581
|
|
|
542
582
|
// There are 2 or more connected rects.
|
|
543
583
|
if (clientRects.length >= 2) {
|
|
544
|
-
if (
|
|
584
|
+
if (getSideAxis(placement) === 'y') {
|
|
545
585
|
const firstRect = clientRects[0];
|
|
546
586
|
const lastRect = clientRects[clientRects.length - 1];
|
|
547
587
|
const isTop = getSide(placement) === 'top';
|
|
@@ -563,8 +603,8 @@ const inline = function (options) {
|
|
|
563
603
|
};
|
|
564
604
|
}
|
|
565
605
|
const isLeftSide = getSide(placement) === 'left';
|
|
566
|
-
const maxRight = max
|
|
567
|
-
const minLeft = min
|
|
606
|
+
const maxRight = max(...clientRects.map(rect => rect.right));
|
|
607
|
+
const minLeft = min(...clientRects.map(rect => rect.left));
|
|
568
608
|
const measureRects = clientRects.filter(rect => isLeftSide ? rect.left === minLeft : rect.right === maxRight);
|
|
569
609
|
const top = measureRects[0].top;
|
|
570
610
|
const bottom = measureRects[measureRects.length - 1].bottom;
|
|
@@ -604,19 +644,21 @@ const inline = function (options) {
|
|
|
604
644
|
};
|
|
605
645
|
};
|
|
606
646
|
|
|
607
|
-
|
|
647
|
+
// For type backwards-compatibility, the `OffsetOptions` type was also
|
|
648
|
+
// Derivable.
|
|
649
|
+
async function convertValueToCoords(state, options) {
|
|
608
650
|
const {
|
|
609
651
|
placement,
|
|
610
652
|
platform,
|
|
611
653
|
elements
|
|
612
|
-
} =
|
|
654
|
+
} = state;
|
|
613
655
|
const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));
|
|
614
656
|
const side = getSide(placement);
|
|
615
657
|
const alignment = getAlignment(placement);
|
|
616
|
-
const isVertical =
|
|
658
|
+
const isVertical = getSideAxis(placement) === 'y';
|
|
617
659
|
const mainAxisMulti = ['left', 'top'].includes(side) ? -1 : 1;
|
|
618
660
|
const crossAxisMulti = rtl && isVertical ? -1 : 1;
|
|
619
|
-
const rawValue =
|
|
661
|
+
const rawValue = evaluate(options, state);
|
|
620
662
|
|
|
621
663
|
// eslint-disable-next-line prefer-const
|
|
622
664
|
let {
|
|
@@ -646,22 +688,25 @@ async function convertValueToCoords(middlewareArguments, value) {
|
|
|
646
688
|
}
|
|
647
689
|
|
|
648
690
|
/**
|
|
649
|
-
*
|
|
691
|
+
* Modifies the placement by translating the floating element along the
|
|
692
|
+
* specified axes.
|
|
693
|
+
* A number (shorthand for `mainAxis` or distance), or an axes configuration
|
|
694
|
+
* object may be passed.
|
|
650
695
|
* @see https://floating-ui.com/docs/offset
|
|
651
696
|
*/
|
|
652
|
-
const offset = function (
|
|
653
|
-
if (
|
|
654
|
-
|
|
697
|
+
const offset = function (options) {
|
|
698
|
+
if (options === void 0) {
|
|
699
|
+
options = 0;
|
|
655
700
|
}
|
|
656
701
|
return {
|
|
657
702
|
name: 'offset',
|
|
658
|
-
options
|
|
659
|
-
async fn(
|
|
703
|
+
options,
|
|
704
|
+
async fn(state) {
|
|
660
705
|
const {
|
|
661
706
|
x,
|
|
662
707
|
y
|
|
663
|
-
} =
|
|
664
|
-
const diffCoords = await convertValueToCoords(
|
|
708
|
+
} = state;
|
|
709
|
+
const diffCoords = await convertValueToCoords(state, options);
|
|
665
710
|
return {
|
|
666
711
|
x: x + diffCoords.x,
|
|
667
712
|
y: y + diffCoords.y,
|
|
@@ -671,13 +716,9 @@ const offset = function (value) {
|
|
|
671
716
|
};
|
|
672
717
|
};
|
|
673
718
|
|
|
674
|
-
function getCrossAxis(axis) {
|
|
675
|
-
return axis === 'x' ? 'y' : 'x';
|
|
676
|
-
}
|
|
677
|
-
|
|
678
719
|
/**
|
|
679
|
-
*
|
|
680
|
-
*
|
|
720
|
+
* Optimizes the visibility of the floating element by shifting it in order to
|
|
721
|
+
* keep it in view when it will overflow the clipping boundary.
|
|
681
722
|
* @see https://floating-ui.com/docs/shift
|
|
682
723
|
*/
|
|
683
724
|
const shift = function (options) {
|
|
@@ -687,12 +728,12 @@ const shift = function (options) {
|
|
|
687
728
|
return {
|
|
688
729
|
name: 'shift',
|
|
689
730
|
options,
|
|
690
|
-
async fn(
|
|
731
|
+
async fn(state) {
|
|
691
732
|
const {
|
|
692
733
|
x,
|
|
693
734
|
y,
|
|
694
735
|
placement
|
|
695
|
-
} =
|
|
736
|
+
} = state;
|
|
696
737
|
const {
|
|
697
738
|
mainAxis: checkMainAxis = true,
|
|
698
739
|
crossAxis: checkCrossAxis = false,
|
|
@@ -709,14 +750,14 @@ const shift = function (options) {
|
|
|
709
750
|
}
|
|
710
751
|
},
|
|
711
752
|
...detectOverflowOptions
|
|
712
|
-
} = options;
|
|
753
|
+
} = evaluate(options, state);
|
|
713
754
|
const coords = {
|
|
714
755
|
x,
|
|
715
756
|
y
|
|
716
757
|
};
|
|
717
|
-
const overflow = await detectOverflow(
|
|
718
|
-
const
|
|
719
|
-
const
|
|
758
|
+
const overflow = await detectOverflow(state, detectOverflowOptions);
|
|
759
|
+
const crossAxis = getSideAxis(getSide(placement));
|
|
760
|
+
const mainAxis = getOppositeAxis(crossAxis);
|
|
720
761
|
let mainAxisCoord = coords[mainAxis];
|
|
721
762
|
let crossAxisCoord = coords[crossAxis];
|
|
722
763
|
if (checkMainAxis) {
|
|
@@ -724,17 +765,17 @@ const shift = function (options) {
|
|
|
724
765
|
const maxSide = mainAxis === 'y' ? 'bottom' : 'right';
|
|
725
766
|
const min = mainAxisCoord + overflow[minSide];
|
|
726
767
|
const max = mainAxisCoord - overflow[maxSide];
|
|
727
|
-
mainAxisCoord =
|
|
768
|
+
mainAxisCoord = clamp(min, mainAxisCoord, max);
|
|
728
769
|
}
|
|
729
770
|
if (checkCrossAxis) {
|
|
730
771
|
const minSide = crossAxis === 'y' ? 'top' : 'left';
|
|
731
772
|
const maxSide = crossAxis === 'y' ? 'bottom' : 'right';
|
|
732
773
|
const min = crossAxisCoord + overflow[minSide];
|
|
733
774
|
const max = crossAxisCoord - overflow[maxSide];
|
|
734
|
-
crossAxisCoord =
|
|
775
|
+
crossAxisCoord = clamp(min, crossAxisCoord, max);
|
|
735
776
|
}
|
|
736
777
|
const limitedCoords = limiter.fn({
|
|
737
|
-
...
|
|
778
|
+
...state,
|
|
738
779
|
[mainAxis]: mainAxisCoord,
|
|
739
780
|
[crossAxis]: crossAxisCoord
|
|
740
781
|
});
|
|
@@ -749,48 +790,38 @@ const shift = function (options) {
|
|
|
749
790
|
};
|
|
750
791
|
};
|
|
751
792
|
|
|
793
|
+
function getNodeName(node) {
|
|
794
|
+
if (isNode(node)) {
|
|
795
|
+
return (node.nodeName || '').toLowerCase();
|
|
796
|
+
}
|
|
797
|
+
// Mocked nodes in testing environments may not be instances of Node. By
|
|
798
|
+
// returning `#document` an infinite loop won't occur.
|
|
799
|
+
// https://github.com/floating-ui/floating-ui/issues/2317
|
|
800
|
+
return '#document';
|
|
801
|
+
}
|
|
752
802
|
function getWindow(node) {
|
|
753
803
|
var _node$ownerDocument;
|
|
754
|
-
return ((_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;
|
|
755
|
-
}
|
|
756
|
-
|
|
757
|
-
function getComputedStyle$1(element) {
|
|
758
|
-
return getWindow(element).getComputedStyle(element);
|
|
759
|
-
}
|
|
760
|
-
|
|
761
|
-
function getNodeName(node) {
|
|
762
|
-
return isNode(node) ? (node.nodeName || '').toLowerCase() : '';
|
|
804
|
+
return (node == null ? void 0 : (_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;
|
|
763
805
|
}
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
if (uaString) {
|
|
768
|
-
return uaString;
|
|
769
|
-
}
|
|
770
|
-
const uaData = navigator.userAgentData;
|
|
771
|
-
if (uaData && Array.isArray(uaData.brands)) {
|
|
772
|
-
uaString = uaData.brands.map(item => item.brand + "/" + item.version).join(' ');
|
|
773
|
-
return uaString;
|
|
774
|
-
}
|
|
775
|
-
return navigator.userAgent;
|
|
806
|
+
function getDocumentElement(node) {
|
|
807
|
+
var _ref;
|
|
808
|
+
return (_ref = (isNode(node) ? node.ownerDocument : node.document) || window.document) == null ? void 0 : _ref.documentElement;
|
|
776
809
|
}
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
return value instanceof getWindow(value).HTMLElement;
|
|
810
|
+
function isNode(value) {
|
|
811
|
+
return value instanceof Node || value instanceof getWindow(value).Node;
|
|
780
812
|
}
|
|
781
813
|
function isElement(value) {
|
|
782
|
-
return value instanceof getWindow(value).Element;
|
|
814
|
+
return value instanceof Element || value instanceof getWindow(value).Element;
|
|
783
815
|
}
|
|
784
|
-
function
|
|
785
|
-
return value instanceof getWindow(value).
|
|
816
|
+
function isHTMLElement(value) {
|
|
817
|
+
return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;
|
|
786
818
|
}
|
|
787
|
-
function isShadowRoot(
|
|
788
|
-
// Browsers without `ShadowRoot` support
|
|
819
|
+
function isShadowRoot(value) {
|
|
820
|
+
// Browsers without `ShadowRoot` support.
|
|
789
821
|
if (typeof ShadowRoot === 'undefined') {
|
|
790
822
|
return false;
|
|
791
823
|
}
|
|
792
|
-
|
|
793
|
-
return node instanceof OwnElement || node instanceof ShadowRoot;
|
|
824
|
+
return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;
|
|
794
825
|
}
|
|
795
826
|
function isOverflowElement(element) {
|
|
796
827
|
const {
|
|
@@ -798,52 +829,100 @@ function isOverflowElement(element) {
|
|
|
798
829
|
overflowX,
|
|
799
830
|
overflowY,
|
|
800
831
|
display
|
|
801
|
-
} = getComputedStyle
|
|
832
|
+
} = getComputedStyle(element);
|
|
802
833
|
return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !['inline', 'contents'].includes(display);
|
|
803
834
|
}
|
|
804
835
|
function isTableElement(element) {
|
|
805
836
|
return ['table', 'td', 'th'].includes(getNodeName(element));
|
|
806
837
|
}
|
|
807
838
|
function isContainingBlock(element) {
|
|
808
|
-
|
|
809
|
-
const
|
|
810
|
-
const css = getComputedStyle$1(element);
|
|
811
|
-
const backdropFilter = css.backdropFilter || css.WebkitBackdropFilter;
|
|
839
|
+
const webkit = isWebKit();
|
|
840
|
+
const css = getComputedStyle(element);
|
|
812
841
|
|
|
813
|
-
// This is non-exhaustive but covers the most common CSS properties that
|
|
814
|
-
// create a containing block.
|
|
815
842
|
// https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
|
|
816
|
-
return css.transform !== 'none' || css.perspective !== 'none' || (
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
843
|
+
return css.transform !== 'none' || css.perspective !== 'none' || (css.containerType ? css.containerType !== 'normal' : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !webkit && (css.filter ? css.filter !== 'none' : false) || ['transform', 'perspective', 'filter'].some(value => (css.willChange || '').includes(value)) || ['paint', 'layout', 'strict', 'content'].some(value => (css.contain || '').includes(value));
|
|
844
|
+
}
|
|
845
|
+
function getContainingBlock(element) {
|
|
846
|
+
let currentNode = getParentNode(element);
|
|
847
|
+
while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {
|
|
848
|
+
if (isContainingBlock(currentNode)) {
|
|
849
|
+
return currentNode;
|
|
850
|
+
} else {
|
|
851
|
+
currentNode = getParentNode(currentNode);
|
|
852
|
+
}
|
|
853
|
+
}
|
|
854
|
+
return null;
|
|
822
855
|
}
|
|
823
|
-
function
|
|
824
|
-
|
|
825
|
-
return
|
|
826
|
-
// Feature detection for this fails in various ways
|
|
827
|
-
// • Always-visible scrollbar or not
|
|
828
|
-
// • Width of <html>, etc.
|
|
829
|
-
// const vV = win.visualViewport;
|
|
830
|
-
// return vV ? Math.abs(win.innerWidth / vV.scale - vV.width) < 0.5 : true;
|
|
856
|
+
function isWebKit() {
|
|
857
|
+
if (typeof CSS === 'undefined' || !CSS.supports) return false;
|
|
858
|
+
return CSS.supports('-webkit-backdrop-filter', 'none');
|
|
831
859
|
}
|
|
832
|
-
|
|
833
860
|
function isLastTraversableNode(node) {
|
|
834
861
|
return ['html', 'body', '#document'].includes(getNodeName(node));
|
|
835
862
|
}
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
863
|
+
function getComputedStyle(element) {
|
|
864
|
+
return getWindow(element).getComputedStyle(element);
|
|
865
|
+
}
|
|
866
|
+
function getNodeScroll(element) {
|
|
867
|
+
if (isElement(element)) {
|
|
868
|
+
return {
|
|
869
|
+
scrollLeft: element.scrollLeft,
|
|
870
|
+
scrollTop: element.scrollTop
|
|
871
|
+
};
|
|
872
|
+
}
|
|
873
|
+
return {
|
|
874
|
+
scrollLeft: element.pageXOffset,
|
|
875
|
+
scrollTop: element.pageYOffset
|
|
876
|
+
};
|
|
877
|
+
}
|
|
878
|
+
function getParentNode(node) {
|
|
879
|
+
if (getNodeName(node) === 'html') {
|
|
880
|
+
return node;
|
|
881
|
+
}
|
|
882
|
+
const result =
|
|
883
|
+
// Step into the shadow DOM of the parent of a slotted node.
|
|
884
|
+
node.assignedSlot ||
|
|
885
|
+
// DOM Element detected.
|
|
886
|
+
node.parentNode ||
|
|
887
|
+
// ShadowRoot detected.
|
|
888
|
+
isShadowRoot(node) && node.host ||
|
|
889
|
+
// Fallback.
|
|
890
|
+
getDocumentElement(node);
|
|
891
|
+
return isShadowRoot(result) ? result.host : result;
|
|
892
|
+
}
|
|
893
|
+
function getNearestOverflowAncestor(node) {
|
|
894
|
+
const parentNode = getParentNode(node);
|
|
895
|
+
if (isLastTraversableNode(parentNode)) {
|
|
896
|
+
return node.ownerDocument ? node.ownerDocument.body : node.body;
|
|
897
|
+
}
|
|
898
|
+
if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {
|
|
899
|
+
return parentNode;
|
|
900
|
+
}
|
|
901
|
+
return getNearestOverflowAncestor(parentNode);
|
|
902
|
+
}
|
|
903
|
+
function getOverflowAncestors(node, list) {
|
|
904
|
+
var _node$ownerDocument2;
|
|
905
|
+
if (list === void 0) {
|
|
906
|
+
list = [];
|
|
907
|
+
}
|
|
908
|
+
const scrollableAncestor = getNearestOverflowAncestor(node);
|
|
909
|
+
const isBody = scrollableAncestor === ((_node$ownerDocument2 = node.ownerDocument) == null ? void 0 : _node$ownerDocument2.body);
|
|
910
|
+
const win = getWindow(scrollableAncestor);
|
|
911
|
+
if (isBody) {
|
|
912
|
+
return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : []);
|
|
913
|
+
}
|
|
914
|
+
return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor));
|
|
915
|
+
}
|
|
840
916
|
|
|
841
917
|
function getCssDimensions(element) {
|
|
842
|
-
const css = getComputedStyle
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
918
|
+
const css = getComputedStyle(element);
|
|
919
|
+
// In testing environments, the `width` and `height` properties are empty
|
|
920
|
+
// strings for SVG elements, returning NaN. Fallback to `0` in this case.
|
|
921
|
+
let width = parseFloat(css.width) || 0;
|
|
922
|
+
let height = parseFloat(css.height) || 0;
|
|
923
|
+
const hasOffset = isHTMLElement(element);
|
|
924
|
+
const offsetWidth = hasOffset ? element.offsetWidth : width;
|
|
925
|
+
const offsetHeight = hasOffset ? element.offsetHeight : height;
|
|
847
926
|
const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;
|
|
848
927
|
if (shouldFallback) {
|
|
849
928
|
width = offsetWidth;
|
|
@@ -852,7 +931,7 @@ function getCssDimensions(element) {
|
|
|
852
931
|
return {
|
|
853
932
|
width,
|
|
854
933
|
height,
|
|
855
|
-
|
|
934
|
+
$: shouldFallback
|
|
856
935
|
};
|
|
857
936
|
}
|
|
858
937
|
|
|
@@ -860,23 +939,19 @@ function unwrapElement(element) {
|
|
|
860
939
|
return !isElement(element) ? element.contextElement : element;
|
|
861
940
|
}
|
|
862
941
|
|
|
863
|
-
const FALLBACK_SCALE = {
|
|
864
|
-
x: 1,
|
|
865
|
-
y: 1
|
|
866
|
-
};
|
|
867
942
|
function getScale(element) {
|
|
868
943
|
const domElement = unwrapElement(element);
|
|
869
944
|
if (!isHTMLElement(domElement)) {
|
|
870
|
-
return
|
|
945
|
+
return createCoords(1);
|
|
871
946
|
}
|
|
872
947
|
const rect = domElement.getBoundingClientRect();
|
|
873
948
|
const {
|
|
874
949
|
width,
|
|
875
950
|
height,
|
|
876
|
-
|
|
951
|
+
$
|
|
877
952
|
} = getCssDimensions(domElement);
|
|
878
|
-
let x = (
|
|
879
|
-
let y = (
|
|
953
|
+
let x = ($ ? round(rect.width) : rect.width) / width;
|
|
954
|
+
let y = ($ ? round(rect.height) : rect.height) / height;
|
|
880
955
|
|
|
881
956
|
// 0, NaN, or Infinity should always fallback to 1.
|
|
882
957
|
|
|
@@ -892,8 +967,28 @@ function getScale(element) {
|
|
|
892
967
|
};
|
|
893
968
|
}
|
|
894
969
|
|
|
970
|
+
const noOffsets = /*#__PURE__*/createCoords(0);
|
|
971
|
+
function getVisualOffsets(element) {
|
|
972
|
+
const win = getWindow(element);
|
|
973
|
+
if (!isWebKit() || !win.visualViewport) {
|
|
974
|
+
return noOffsets;
|
|
975
|
+
}
|
|
976
|
+
return {
|
|
977
|
+
x: win.visualViewport.offsetLeft,
|
|
978
|
+
y: win.visualViewport.offsetTop
|
|
979
|
+
};
|
|
980
|
+
}
|
|
981
|
+
function shouldAddVisualOffsets(element, isFixed, floatingOffsetParent) {
|
|
982
|
+
if (isFixed === void 0) {
|
|
983
|
+
isFixed = false;
|
|
984
|
+
}
|
|
985
|
+
if (!floatingOffsetParent || isFixed && floatingOffsetParent !== getWindow(element)) {
|
|
986
|
+
return false;
|
|
987
|
+
}
|
|
988
|
+
return isFixed;
|
|
989
|
+
}
|
|
990
|
+
|
|
895
991
|
function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {
|
|
896
|
-
var _win$visualViewport, _win$visualViewport2;
|
|
897
992
|
if (includeScale === void 0) {
|
|
898
993
|
includeScale = false;
|
|
899
994
|
}
|
|
@@ -902,7 +997,7 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
|
|
|
902
997
|
}
|
|
903
998
|
const clientRect = element.getBoundingClientRect();
|
|
904
999
|
const domElement = unwrapElement(element);
|
|
905
|
-
let scale =
|
|
1000
|
+
let scale = createCoords(1);
|
|
906
1001
|
if (includeScale) {
|
|
907
1002
|
if (offsetParent) {
|
|
908
1003
|
if (isElement(offsetParent)) {
|
|
@@ -912,10 +1007,9 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
|
|
|
912
1007
|
scale = getScale(element);
|
|
913
1008
|
}
|
|
914
1009
|
}
|
|
915
|
-
const
|
|
916
|
-
|
|
917
|
-
let
|
|
918
|
-
let y = (clientRect.top + (addVisualOffsets ? ((_win$visualViewport2 = win.visualViewport) == null ? void 0 : _win$visualViewport2.offsetTop) || 0 : 0)) / scale.y;
|
|
1010
|
+
const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);
|
|
1011
|
+
let x = (clientRect.left + visualOffsets.x) / scale.x;
|
|
1012
|
+
let y = (clientRect.top + visualOffsets.y) / scale.y;
|
|
919
1013
|
let width = clientRect.width / scale.x;
|
|
920
1014
|
let height = clientRect.height / scale.y;
|
|
921
1015
|
if (domElement) {
|
|
@@ -926,134 +1020,23 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
|
|
|
926
1020
|
const iframeScale = getScale(currentIFrame);
|
|
927
1021
|
const iframeRect = currentIFrame.getBoundingClientRect();
|
|
928
1022
|
const css = getComputedStyle(currentIFrame);
|
|
929
|
-
iframeRect.
|
|
930
|
-
iframeRect.
|
|
1023
|
+
const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;
|
|
1024
|
+
const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;
|
|
931
1025
|
x *= iframeScale.x;
|
|
932
1026
|
y *= iframeScale.y;
|
|
933
1027
|
width *= iframeScale.x;
|
|
934
1028
|
height *= iframeScale.y;
|
|
935
|
-
x +=
|
|
936
|
-
y +=
|
|
1029
|
+
x += left;
|
|
1030
|
+
y += top;
|
|
937
1031
|
currentIFrame = getWindow(currentIFrame).frameElement;
|
|
938
1032
|
}
|
|
939
1033
|
}
|
|
940
|
-
return {
|
|
1034
|
+
return rectToClientRect({
|
|
941
1035
|
width,
|
|
942
1036
|
height,
|
|
943
|
-
top: y,
|
|
944
|
-
right: x + width,
|
|
945
|
-
bottom: y + height,
|
|
946
|
-
left: x,
|
|
947
1037
|
x,
|
|
948
1038
|
y
|
|
949
|
-
};
|
|
950
|
-
}
|
|
951
|
-
|
|
952
|
-
function getDocumentElement(node) {
|
|
953
|
-
return ((isNode(node) ? node.ownerDocument : node.document) || window.document).documentElement;
|
|
954
|
-
}
|
|
955
|
-
|
|
956
|
-
function getNodeScroll(element) {
|
|
957
|
-
if (isElement(element)) {
|
|
958
|
-
return {
|
|
959
|
-
scrollLeft: element.scrollLeft,
|
|
960
|
-
scrollTop: element.scrollTop
|
|
961
|
-
};
|
|
962
|
-
}
|
|
963
|
-
return {
|
|
964
|
-
scrollLeft: element.pageXOffset,
|
|
965
|
-
scrollTop: element.pageYOffset
|
|
966
|
-
};
|
|
967
|
-
}
|
|
968
|
-
|
|
969
|
-
function getWindowScrollBarX(element) {
|
|
970
|
-
// If <html> has a CSS width greater than the viewport, then this will be
|
|
971
|
-
// incorrect for RTL.
|
|
972
|
-
return getBoundingClientRect(getDocumentElement(element)).left + getNodeScroll(element).scrollLeft;
|
|
973
|
-
}
|
|
974
|
-
|
|
975
|
-
function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
|
|
976
|
-
const isOffsetParentAnElement = isHTMLElement(offsetParent);
|
|
977
|
-
const documentElement = getDocumentElement(offsetParent);
|
|
978
|
-
const rect = getBoundingClientRect(element, true, strategy === 'fixed', offsetParent);
|
|
979
|
-
let scroll = {
|
|
980
|
-
scrollLeft: 0,
|
|
981
|
-
scrollTop: 0
|
|
982
|
-
};
|
|
983
|
-
const offsets = {
|
|
984
|
-
x: 0,
|
|
985
|
-
y: 0
|
|
986
|
-
};
|
|
987
|
-
if (isOffsetParentAnElement || !isOffsetParentAnElement && strategy !== 'fixed') {
|
|
988
|
-
if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
|
|
989
|
-
scroll = getNodeScroll(offsetParent);
|
|
990
|
-
}
|
|
991
|
-
if (isHTMLElement(offsetParent)) {
|
|
992
|
-
const offsetRect = getBoundingClientRect(offsetParent, true);
|
|
993
|
-
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
994
|
-
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
995
|
-
} else if (documentElement) {
|
|
996
|
-
offsets.x = getWindowScrollBarX(documentElement);
|
|
997
|
-
}
|
|
998
|
-
}
|
|
999
|
-
return {
|
|
1000
|
-
x: rect.left + scroll.scrollLeft - offsets.x,
|
|
1001
|
-
y: rect.top + scroll.scrollTop - offsets.y,
|
|
1002
|
-
width: rect.width,
|
|
1003
|
-
height: rect.height
|
|
1004
|
-
};
|
|
1005
|
-
}
|
|
1006
|
-
|
|
1007
|
-
function getParentNode(node) {
|
|
1008
|
-
if (getNodeName(node) === 'html') {
|
|
1009
|
-
return node;
|
|
1010
|
-
}
|
|
1011
|
-
const result =
|
|
1012
|
-
// Step into the shadow DOM of the parent of a slotted node
|
|
1013
|
-
node.assignedSlot ||
|
|
1014
|
-
// DOM Element detected
|
|
1015
|
-
node.parentNode || (
|
|
1016
|
-
// ShadowRoot detected
|
|
1017
|
-
isShadowRoot(node) ? node.host : null) ||
|
|
1018
|
-
// Fallback
|
|
1019
|
-
getDocumentElement(node);
|
|
1020
|
-
return isShadowRoot(result) ? result.host : result;
|
|
1021
|
-
}
|
|
1022
|
-
|
|
1023
|
-
function getTrueOffsetParent(element) {
|
|
1024
|
-
if (!isHTMLElement(element) || getComputedStyle$1(element).position === 'fixed') {
|
|
1025
|
-
return null;
|
|
1026
|
-
}
|
|
1027
|
-
return element.offsetParent;
|
|
1028
|
-
}
|
|
1029
|
-
function getContainingBlock(element) {
|
|
1030
|
-
let currentNode = getParentNode(element);
|
|
1031
|
-
while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {
|
|
1032
|
-
if (isContainingBlock(currentNode)) {
|
|
1033
|
-
return currentNode;
|
|
1034
|
-
} else {
|
|
1035
|
-
currentNode = getParentNode(currentNode);
|
|
1036
|
-
}
|
|
1037
|
-
}
|
|
1038
|
-
return null;
|
|
1039
|
-
}
|
|
1040
|
-
|
|
1041
|
-
// Gets the closest ancestor positioned element. Handles some edge cases,
|
|
1042
|
-
// such as table ancestors and cross browser bugs.
|
|
1043
|
-
function getOffsetParent(element) {
|
|
1044
|
-
const window = getWindow(element);
|
|
1045
|
-
let offsetParent = getTrueOffsetParent(element);
|
|
1046
|
-
while (offsetParent && isTableElement(offsetParent) && getComputedStyle$1(offsetParent).position === 'static') {
|
|
1047
|
-
offsetParent = getTrueOffsetParent(offsetParent);
|
|
1048
|
-
}
|
|
1049
|
-
if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle$1(offsetParent).position === 'static' && !isContainingBlock(offsetParent))) {
|
|
1050
|
-
return window;
|
|
1051
|
-
}
|
|
1052
|
-
return offsetParent || getContainingBlock(element) || window;
|
|
1053
|
-
}
|
|
1054
|
-
|
|
1055
|
-
function getDimensions(element) {
|
|
1056
|
-
return getCssDimensions(element);
|
|
1039
|
+
});
|
|
1057
1040
|
}
|
|
1058
1041
|
|
|
1059
1042
|
function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
@@ -1071,14 +1054,8 @@ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
|
1071
1054
|
scrollLeft: 0,
|
|
1072
1055
|
scrollTop: 0
|
|
1073
1056
|
};
|
|
1074
|
-
let scale =
|
|
1075
|
-
|
|
1076
|
-
y: 1
|
|
1077
|
-
};
|
|
1078
|
-
const offsets = {
|
|
1079
|
-
x: 0,
|
|
1080
|
-
y: 0
|
|
1081
|
-
};
|
|
1057
|
+
let scale = createCoords(1);
|
|
1058
|
+
const offsets = createCoords(0);
|
|
1082
1059
|
if (isOffsetParentAnElement || !isOffsetParentAnElement && strategy !== 'fixed') {
|
|
1083
1060
|
if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
|
|
1084
1061
|
scroll = getNodeScroll(offsetParent);
|
|
@@ -1089,12 +1066,7 @@ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
|
1089
1066
|
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
1090
1067
|
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
1091
1068
|
}
|
|
1092
|
-
// This doesn't appear to need to be negated.
|
|
1093
|
-
// else if (documentElement) {
|
|
1094
|
-
// offsets.x = getWindowScrollBarX(documentElement);
|
|
1095
|
-
// }
|
|
1096
1069
|
}
|
|
1097
|
-
|
|
1098
1070
|
return {
|
|
1099
1071
|
width: rect.width * scale.x,
|
|
1100
1072
|
height: rect.height * scale.y,
|
|
@@ -1103,6 +1075,37 @@ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
|
1103
1075
|
};
|
|
1104
1076
|
}
|
|
1105
1077
|
|
|
1078
|
+
function getClientRects(element) {
|
|
1079
|
+
return Array.from(element.getClientRects());
|
|
1080
|
+
}
|
|
1081
|
+
|
|
1082
|
+
function getWindowScrollBarX(element) {
|
|
1083
|
+
// If <html> has a CSS width greater than the viewport, then this will be
|
|
1084
|
+
// incorrect for RTL.
|
|
1085
|
+
return getBoundingClientRect(getDocumentElement(element)).left + getNodeScroll(element).scrollLeft;
|
|
1086
|
+
}
|
|
1087
|
+
|
|
1088
|
+
// Gets the entire size of the scrollable document area, even extending outside
|
|
1089
|
+
// of the `<html>` and `<body>` rect bounds if horizontally scrollable.
|
|
1090
|
+
function getDocumentRect(element) {
|
|
1091
|
+
const html = getDocumentElement(element);
|
|
1092
|
+
const scroll = getNodeScroll(element);
|
|
1093
|
+
const body = element.ownerDocument.body;
|
|
1094
|
+
const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);
|
|
1095
|
+
const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);
|
|
1096
|
+
let x = -scroll.scrollLeft + getWindowScrollBarX(element);
|
|
1097
|
+
const y = -scroll.scrollTop;
|
|
1098
|
+
if (getComputedStyle(body).direction === 'rtl') {
|
|
1099
|
+
x += max(html.clientWidth, body.clientWidth) - width;
|
|
1100
|
+
}
|
|
1101
|
+
return {
|
|
1102
|
+
width,
|
|
1103
|
+
height,
|
|
1104
|
+
x,
|
|
1105
|
+
y
|
|
1106
|
+
};
|
|
1107
|
+
}
|
|
1108
|
+
|
|
1106
1109
|
function getViewportRect(element, strategy) {
|
|
1107
1110
|
const win = getWindow(element);
|
|
1108
1111
|
const html = getDocumentElement(element);
|
|
@@ -1114,8 +1117,8 @@ function getViewportRect(element, strategy) {
|
|
|
1114
1117
|
if (visualViewport) {
|
|
1115
1118
|
width = visualViewport.width;
|
|
1116
1119
|
height = visualViewport.height;
|
|
1117
|
-
const
|
|
1118
|
-
if (
|
|
1120
|
+
const visualViewportBased = isWebKit();
|
|
1121
|
+
if (!visualViewportBased || visualViewportBased && strategy === 'fixed') {
|
|
1119
1122
|
x = visualViewport.offsetLeft;
|
|
1120
1123
|
y = visualViewport.offsetTop;
|
|
1121
1124
|
}
|
|
@@ -1128,86 +1131,47 @@ function getViewportRect(element, strategy) {
|
|
|
1128
1131
|
};
|
|
1129
1132
|
}
|
|
1130
1133
|
|
|
1131
|
-
//
|
|
1132
|
-
// of the `<html>` and `<body>` rect bounds if horizontally scrollable
|
|
1133
|
-
function getDocumentRect(element) {
|
|
1134
|
-
var _element$ownerDocumen;
|
|
1135
|
-
const html = getDocumentElement(element);
|
|
1136
|
-
const scroll = getNodeScroll(element);
|
|
1137
|
-
const body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;
|
|
1138
|
-
const width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);
|
|
1139
|
-
const height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);
|
|
1140
|
-
let x = -scroll.scrollLeft + getWindowScrollBarX(element);
|
|
1141
|
-
const y = -scroll.scrollTop;
|
|
1142
|
-
if (getComputedStyle$1(body || html).direction === 'rtl') {
|
|
1143
|
-
x += max(html.clientWidth, body ? body.clientWidth : 0) - width;
|
|
1144
|
-
}
|
|
1145
|
-
return {
|
|
1146
|
-
width,
|
|
1147
|
-
height,
|
|
1148
|
-
x,
|
|
1149
|
-
y
|
|
1150
|
-
};
|
|
1151
|
-
}
|
|
1152
|
-
|
|
1153
|
-
function getNearestOverflowAncestor(node) {
|
|
1154
|
-
const parentNode = getParentNode(node);
|
|
1155
|
-
if (isLastTraversableNode(parentNode)) {
|
|
1156
|
-
// @ts-ignore assume body is always available
|
|
1157
|
-
return node.ownerDocument.body;
|
|
1158
|
-
}
|
|
1159
|
-
if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {
|
|
1160
|
-
return parentNode;
|
|
1161
|
-
}
|
|
1162
|
-
return getNearestOverflowAncestor(parentNode);
|
|
1163
|
-
}
|
|
1164
|
-
|
|
1165
|
-
function getOverflowAncestors(node, list) {
|
|
1166
|
-
var _node$ownerDocument;
|
|
1167
|
-
if (list === void 0) {
|
|
1168
|
-
list = [];
|
|
1169
|
-
}
|
|
1170
|
-
const scrollableAncestor = getNearestOverflowAncestor(node);
|
|
1171
|
-
const isBody = scrollableAncestor === ((_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.body);
|
|
1172
|
-
const win = getWindow(scrollableAncestor);
|
|
1173
|
-
if (isBody) {
|
|
1174
|
-
return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : []);
|
|
1175
|
-
}
|
|
1176
|
-
return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor));
|
|
1177
|
-
}
|
|
1178
|
-
|
|
1179
|
-
// Returns the inner client rect, subtracting scrollbars if present
|
|
1134
|
+
// Returns the inner client rect, subtracting scrollbars if present.
|
|
1180
1135
|
function getInnerBoundingClientRect(element, strategy) {
|
|
1181
1136
|
const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');
|
|
1182
1137
|
const top = clientRect.top + element.clientTop;
|
|
1183
1138
|
const left = clientRect.left + element.clientLeft;
|
|
1184
|
-
const scale = isHTMLElement(element) ? getScale(element) :
|
|
1185
|
-
x: 1,
|
|
1186
|
-
y: 1
|
|
1187
|
-
};
|
|
1139
|
+
const scale = isHTMLElement(element) ? getScale(element) : createCoords(1);
|
|
1188
1140
|
const width = element.clientWidth * scale.x;
|
|
1189
1141
|
const height = element.clientHeight * scale.y;
|
|
1190
1142
|
const x = left * scale.x;
|
|
1191
1143
|
const y = top * scale.y;
|
|
1192
1144
|
return {
|
|
1193
|
-
top: y,
|
|
1194
|
-
left: x,
|
|
1195
|
-
right: x + width,
|
|
1196
|
-
bottom: y + height,
|
|
1197
|
-
x,
|
|
1198
|
-
y,
|
|
1199
1145
|
width,
|
|
1200
|
-
height
|
|
1146
|
+
height,
|
|
1147
|
+
x,
|
|
1148
|
+
y
|
|
1201
1149
|
};
|
|
1202
1150
|
}
|
|
1203
1151
|
function getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {
|
|
1152
|
+
let rect;
|
|
1204
1153
|
if (clippingAncestor === 'viewport') {
|
|
1205
|
-
|
|
1154
|
+
rect = getViewportRect(element, strategy);
|
|
1155
|
+
} else if (clippingAncestor === 'document') {
|
|
1156
|
+
rect = getDocumentRect(getDocumentElement(element));
|
|
1157
|
+
} else if (isElement(clippingAncestor)) {
|
|
1158
|
+
rect = getInnerBoundingClientRect(clippingAncestor, strategy);
|
|
1159
|
+
} else {
|
|
1160
|
+
const visualOffsets = getVisualOffsets(element);
|
|
1161
|
+
rect = {
|
|
1162
|
+
...clippingAncestor,
|
|
1163
|
+
x: clippingAncestor.x - visualOffsets.x,
|
|
1164
|
+
y: clippingAncestor.y - visualOffsets.y
|
|
1165
|
+
};
|
|
1206
1166
|
}
|
|
1207
|
-
|
|
1208
|
-
|
|
1167
|
+
return rectToClientRect(rect);
|
|
1168
|
+
}
|
|
1169
|
+
function hasFixedPositionAncestor(element, stopNode) {
|
|
1170
|
+
const parentNode = getParentNode(element);
|
|
1171
|
+
if (parentNode === stopNode || !isElement(parentNode) || isLastTraversableNode(parentNode)) {
|
|
1172
|
+
return false;
|
|
1209
1173
|
}
|
|
1210
|
-
return
|
|
1174
|
+
return getComputedStyle(parentNode).position === 'fixed' || hasFixedPositionAncestor(parentNode, stopNode);
|
|
1211
1175
|
}
|
|
1212
1176
|
|
|
1213
1177
|
// A "clipping ancestor" is an `overflow` element with the characteristic of
|
|
@@ -1220,19 +1184,22 @@ function getClippingElementAncestors(element, cache) {
|
|
|
1220
1184
|
}
|
|
1221
1185
|
let result = getOverflowAncestors(element).filter(el => isElement(el) && getNodeName(el) !== 'body');
|
|
1222
1186
|
let currentContainingBlockComputedStyle = null;
|
|
1223
|
-
const elementIsFixed = getComputedStyle
|
|
1187
|
+
const elementIsFixed = getComputedStyle(element).position === 'fixed';
|
|
1224
1188
|
let currentNode = elementIsFixed ? getParentNode(element) : element;
|
|
1225
1189
|
|
|
1226
1190
|
// https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
|
|
1227
1191
|
while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {
|
|
1228
|
-
const computedStyle = getComputedStyle
|
|
1229
|
-
const
|
|
1230
|
-
|
|
1192
|
+
const computedStyle = getComputedStyle(currentNode);
|
|
1193
|
+
const currentNodeIsContaining = isContainingBlock(currentNode);
|
|
1194
|
+
if (!currentNodeIsContaining && computedStyle.position === 'fixed') {
|
|
1195
|
+
currentContainingBlockComputedStyle = null;
|
|
1196
|
+
}
|
|
1197
|
+
const shouldDropCurrentNode = elementIsFixed ? !currentNodeIsContaining && !currentContainingBlockComputedStyle : !currentNodeIsContaining && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && ['absolute', 'fixed'].includes(currentContainingBlockComputedStyle.position) || isOverflowElement(currentNode) && !currentNodeIsContaining && hasFixedPositionAncestor(element, currentNode);
|
|
1231
1198
|
if (shouldDropCurrentNode) {
|
|
1232
|
-
// Drop non-containing blocks
|
|
1199
|
+
// Drop non-containing blocks.
|
|
1233
1200
|
result = result.filter(ancestor => ancestor !== currentNode);
|
|
1234
1201
|
} else {
|
|
1235
|
-
// Record last containing block for next iteration
|
|
1202
|
+
// Record last containing block for next iteration.
|
|
1236
1203
|
currentContainingBlockComputedStyle = computedStyle;
|
|
1237
1204
|
}
|
|
1238
1205
|
currentNode = getParentNode(currentNode);
|
|
@@ -1242,7 +1209,7 @@ function getClippingElementAncestors(element, cache) {
|
|
|
1242
1209
|
}
|
|
1243
1210
|
|
|
1244
1211
|
// Gets the maximum area that the element is visible in due to any number of
|
|
1245
|
-
// clipping ancestors
|
|
1212
|
+
// clipping ancestors.
|
|
1246
1213
|
function getClippingRect(_ref) {
|
|
1247
1214
|
let {
|
|
1248
1215
|
element,
|
|
@@ -1269,37 +1236,182 @@ function getClippingRect(_ref) {
|
|
|
1269
1236
|
};
|
|
1270
1237
|
}
|
|
1271
1238
|
|
|
1239
|
+
function getDimensions(element) {
|
|
1240
|
+
return getCssDimensions(element);
|
|
1241
|
+
}
|
|
1242
|
+
|
|
1243
|
+
function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
|
|
1244
|
+
const isOffsetParentAnElement = isHTMLElement(offsetParent);
|
|
1245
|
+
const documentElement = getDocumentElement(offsetParent);
|
|
1246
|
+
const isFixed = strategy === 'fixed';
|
|
1247
|
+
const rect = getBoundingClientRect(element, true, isFixed, offsetParent);
|
|
1248
|
+
let scroll = {
|
|
1249
|
+
scrollLeft: 0,
|
|
1250
|
+
scrollTop: 0
|
|
1251
|
+
};
|
|
1252
|
+
const offsets = createCoords(0);
|
|
1253
|
+
if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {
|
|
1254
|
+
if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
|
|
1255
|
+
scroll = getNodeScroll(offsetParent);
|
|
1256
|
+
}
|
|
1257
|
+
if (isOffsetParentAnElement) {
|
|
1258
|
+
const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);
|
|
1259
|
+
offsets.x = offsetRect.x + offsetParent.clientLeft;
|
|
1260
|
+
offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
1261
|
+
} else if (documentElement) {
|
|
1262
|
+
offsets.x = getWindowScrollBarX(documentElement);
|
|
1263
|
+
}
|
|
1264
|
+
}
|
|
1265
|
+
return {
|
|
1266
|
+
x: rect.left + scroll.scrollLeft - offsets.x,
|
|
1267
|
+
y: rect.top + scroll.scrollTop - offsets.y,
|
|
1268
|
+
width: rect.width,
|
|
1269
|
+
height: rect.height
|
|
1270
|
+
};
|
|
1271
|
+
}
|
|
1272
|
+
|
|
1273
|
+
function getTrueOffsetParent(element, polyfill) {
|
|
1274
|
+
if (!isHTMLElement(element) || getComputedStyle(element).position === 'fixed') {
|
|
1275
|
+
return null;
|
|
1276
|
+
}
|
|
1277
|
+
if (polyfill) {
|
|
1278
|
+
return polyfill(element);
|
|
1279
|
+
}
|
|
1280
|
+
return element.offsetParent;
|
|
1281
|
+
}
|
|
1282
|
+
|
|
1283
|
+
// Gets the closest ancestor positioned element. Handles some edge cases,
|
|
1284
|
+
// such as table ancestors and cross browser bugs.
|
|
1285
|
+
function getOffsetParent(element, polyfill) {
|
|
1286
|
+
const window = getWindow(element);
|
|
1287
|
+
if (!isHTMLElement(element)) {
|
|
1288
|
+
return window;
|
|
1289
|
+
}
|
|
1290
|
+
let offsetParent = getTrueOffsetParent(element, polyfill);
|
|
1291
|
+
while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {
|
|
1292
|
+
offsetParent = getTrueOffsetParent(offsetParent, polyfill);
|
|
1293
|
+
}
|
|
1294
|
+
if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static' && !isContainingBlock(offsetParent))) {
|
|
1295
|
+
return window;
|
|
1296
|
+
}
|
|
1297
|
+
return offsetParent || getContainingBlock(element) || window;
|
|
1298
|
+
}
|
|
1299
|
+
|
|
1300
|
+
const getElementRects = async function (_ref) {
|
|
1301
|
+
let {
|
|
1302
|
+
reference,
|
|
1303
|
+
floating,
|
|
1304
|
+
strategy
|
|
1305
|
+
} = _ref;
|
|
1306
|
+
const getOffsetParentFn = this.getOffsetParent || getOffsetParent;
|
|
1307
|
+
const getDimensionsFn = this.getDimensions;
|
|
1308
|
+
return {
|
|
1309
|
+
reference: getRectRelativeToOffsetParent(reference, await getOffsetParentFn(floating), strategy),
|
|
1310
|
+
floating: {
|
|
1311
|
+
x: 0,
|
|
1312
|
+
y: 0,
|
|
1313
|
+
...(await getDimensionsFn(floating))
|
|
1314
|
+
}
|
|
1315
|
+
};
|
|
1316
|
+
};
|
|
1317
|
+
|
|
1318
|
+
function isRTL(element) {
|
|
1319
|
+
return getComputedStyle(element).direction === 'rtl';
|
|
1320
|
+
}
|
|
1321
|
+
|
|
1272
1322
|
const platform = {
|
|
1273
|
-
getClippingRect,
|
|
1274
1323
|
convertOffsetParentRelativeRectToViewportRelativeRect,
|
|
1275
|
-
isElement,
|
|
1276
|
-
getDimensions,
|
|
1277
|
-
getOffsetParent,
|
|
1278
1324
|
getDocumentElement,
|
|
1325
|
+
getClippingRect,
|
|
1326
|
+
getOffsetParent,
|
|
1327
|
+
getElementRects,
|
|
1328
|
+
getClientRects,
|
|
1329
|
+
getDimensions,
|
|
1279
1330
|
getScale,
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
reference,
|
|
1283
|
-
floating,
|
|
1284
|
-
strategy
|
|
1285
|
-
} = _ref;
|
|
1286
|
-
const getOffsetParentFn = this.getOffsetParent || getOffsetParent;
|
|
1287
|
-
const getDimensionsFn = this.getDimensions;
|
|
1288
|
-
return {
|
|
1289
|
-
reference: getRectRelativeToOffsetParent(reference, await getOffsetParentFn(floating), strategy),
|
|
1290
|
-
floating: {
|
|
1291
|
-
x: 0,
|
|
1292
|
-
y: 0,
|
|
1293
|
-
...(await getDimensionsFn(floating))
|
|
1294
|
-
}
|
|
1295
|
-
};
|
|
1296
|
-
},
|
|
1297
|
-
getClientRects: element => Array.from(element.getClientRects()),
|
|
1298
|
-
isRTL: element => getComputedStyle$1(element).direction === 'rtl'
|
|
1331
|
+
isElement,
|
|
1332
|
+
isRTL
|
|
1299
1333
|
};
|
|
1300
1334
|
|
|
1335
|
+
// https://samthor.au/2021/observing-dom/
|
|
1336
|
+
function observeMove(element, onMove) {
|
|
1337
|
+
let io = null;
|
|
1338
|
+
let timeoutId;
|
|
1339
|
+
const root = getDocumentElement(element);
|
|
1340
|
+
function cleanup() {
|
|
1341
|
+
clearTimeout(timeoutId);
|
|
1342
|
+
io && io.disconnect();
|
|
1343
|
+
io = null;
|
|
1344
|
+
}
|
|
1345
|
+
function refresh(skip, threshold) {
|
|
1346
|
+
if (skip === void 0) {
|
|
1347
|
+
skip = false;
|
|
1348
|
+
}
|
|
1349
|
+
if (threshold === void 0) {
|
|
1350
|
+
threshold = 1;
|
|
1351
|
+
}
|
|
1352
|
+
cleanup();
|
|
1353
|
+
const {
|
|
1354
|
+
left,
|
|
1355
|
+
top,
|
|
1356
|
+
width,
|
|
1357
|
+
height
|
|
1358
|
+
} = element.getBoundingClientRect();
|
|
1359
|
+
if (!skip) {
|
|
1360
|
+
onMove();
|
|
1361
|
+
}
|
|
1362
|
+
if (!width || !height) {
|
|
1363
|
+
return;
|
|
1364
|
+
}
|
|
1365
|
+
const insetTop = floor(top);
|
|
1366
|
+
const insetRight = floor(root.clientWidth - (left + width));
|
|
1367
|
+
const insetBottom = floor(root.clientHeight - (top + height));
|
|
1368
|
+
const insetLeft = floor(left);
|
|
1369
|
+
const rootMargin = -insetTop + "px " + -insetRight + "px " + -insetBottom + "px " + -insetLeft + "px";
|
|
1370
|
+
const options = {
|
|
1371
|
+
rootMargin,
|
|
1372
|
+
threshold: max(0, min(1, threshold)) || 1
|
|
1373
|
+
};
|
|
1374
|
+
let isFirstUpdate = true;
|
|
1375
|
+
function handleObserve(entries) {
|
|
1376
|
+
const ratio = entries[0].intersectionRatio;
|
|
1377
|
+
if (ratio !== threshold) {
|
|
1378
|
+
if (!isFirstUpdate) {
|
|
1379
|
+
return refresh();
|
|
1380
|
+
}
|
|
1381
|
+
if (!ratio) {
|
|
1382
|
+
timeoutId = setTimeout(() => {
|
|
1383
|
+
refresh(false, 1e-7);
|
|
1384
|
+
}, 100);
|
|
1385
|
+
} else {
|
|
1386
|
+
refresh(false, ratio);
|
|
1387
|
+
}
|
|
1388
|
+
}
|
|
1389
|
+
isFirstUpdate = false;
|
|
1390
|
+
}
|
|
1391
|
+
|
|
1392
|
+
// Older browsers don't support a `document` as the root and will throw an
|
|
1393
|
+
// error.
|
|
1394
|
+
try {
|
|
1395
|
+
io = new IntersectionObserver(handleObserve, {
|
|
1396
|
+
...options,
|
|
1397
|
+
// Handle <iframe>s
|
|
1398
|
+
root: root.ownerDocument
|
|
1399
|
+
});
|
|
1400
|
+
} catch (e) {
|
|
1401
|
+
io = new IntersectionObserver(handleObserve, options);
|
|
1402
|
+
}
|
|
1403
|
+
io.observe(element);
|
|
1404
|
+
}
|
|
1405
|
+
refresh(true);
|
|
1406
|
+
return cleanup;
|
|
1407
|
+
}
|
|
1408
|
+
|
|
1301
1409
|
/**
|
|
1302
1410
|
* Automatically updates the position of the floating element when necessary.
|
|
1411
|
+
* Should only be called when the floating element is mounted on the DOM or
|
|
1412
|
+
* visible on the screen.
|
|
1413
|
+
* @returns cleanup function that should be invoked when the floating element is
|
|
1414
|
+
* removed from the DOM or hidden from the screen.
|
|
1303
1415
|
* @see https://floating-ui.com/docs/autoUpdate
|
|
1304
1416
|
*/
|
|
1305
1417
|
function autoUpdate(reference, floating, update, options) {
|
|
@@ -1307,33 +1419,41 @@ function autoUpdate(reference, floating, update, options) {
|
|
|
1307
1419
|
options = {};
|
|
1308
1420
|
}
|
|
1309
1421
|
const {
|
|
1310
|
-
ancestorScroll
|
|
1422
|
+
ancestorScroll = true,
|
|
1311
1423
|
ancestorResize = true,
|
|
1312
|
-
elementResize =
|
|
1424
|
+
elementResize = typeof ResizeObserver === 'function',
|
|
1425
|
+
layoutShift = typeof IntersectionObserver === 'function',
|
|
1313
1426
|
animationFrame = false
|
|
1314
1427
|
} = options;
|
|
1315
|
-
const
|
|
1316
|
-
const ancestors = ancestorScroll || ancestorResize ? [...(
|
|
1428
|
+
const referenceEl = unwrapElement(reference);
|
|
1429
|
+
const ancestors = ancestorScroll || ancestorResize ? [...(referenceEl ? getOverflowAncestors(referenceEl) : []), ...getOverflowAncestors(floating)] : [];
|
|
1317
1430
|
ancestors.forEach(ancestor => {
|
|
1318
1431
|
ancestorScroll && ancestor.addEventListener('scroll', update, {
|
|
1319
1432
|
passive: true
|
|
1320
1433
|
});
|
|
1321
1434
|
ancestorResize && ancestor.addEventListener('resize', update);
|
|
1322
1435
|
});
|
|
1323
|
-
|
|
1436
|
+
const cleanupIo = referenceEl && layoutShift ? observeMove(referenceEl, update) : null;
|
|
1437
|
+
let reobserveFrame = -1;
|
|
1438
|
+
let resizeObserver = null;
|
|
1324
1439
|
if (elementResize) {
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
if (
|
|
1328
|
-
update
|
|
1440
|
+
resizeObserver = new ResizeObserver(_ref => {
|
|
1441
|
+
let [firstEntry] = _ref;
|
|
1442
|
+
if (firstEntry && firstEntry.target === referenceEl && resizeObserver) {
|
|
1443
|
+
// Prevent update loops when using the `size` middleware.
|
|
1444
|
+
// https://github.com/floating-ui/floating-ui/issues/1740
|
|
1445
|
+
resizeObserver.unobserve(floating);
|
|
1446
|
+
cancelAnimationFrame(reobserveFrame);
|
|
1447
|
+
reobserveFrame = requestAnimationFrame(() => {
|
|
1448
|
+
resizeObserver && resizeObserver.observe(floating);
|
|
1449
|
+
});
|
|
1329
1450
|
}
|
|
1330
|
-
|
|
1451
|
+
update();
|
|
1331
1452
|
});
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
observer.observe(reference.contextElement);
|
|
1453
|
+
if (referenceEl && !animationFrame) {
|
|
1454
|
+
resizeObserver.observe(referenceEl);
|
|
1335
1455
|
}
|
|
1336
|
-
|
|
1456
|
+
resizeObserver.observe(floating);
|
|
1337
1457
|
}
|
|
1338
1458
|
let frameId;
|
|
1339
1459
|
let prevRefRect = animationFrame ? getBoundingClientRect(reference) : null;
|
|
@@ -1350,13 +1470,13 @@ function autoUpdate(reference, floating, update, options) {
|
|
|
1350
1470
|
}
|
|
1351
1471
|
update();
|
|
1352
1472
|
return () => {
|
|
1353
|
-
var _observer;
|
|
1354
1473
|
ancestors.forEach(ancestor => {
|
|
1355
1474
|
ancestorScroll && ancestor.removeEventListener('scroll', update);
|
|
1356
1475
|
ancestorResize && ancestor.removeEventListener('resize', update);
|
|
1357
1476
|
});
|
|
1358
|
-
|
|
1359
|
-
|
|
1477
|
+
cleanupIo && cleanupIo();
|
|
1478
|
+
resizeObserver && resizeObserver.disconnect();
|
|
1479
|
+
resizeObserver = null;
|
|
1360
1480
|
if (animationFrame) {
|
|
1361
1481
|
cancelAnimationFrame(frameId);
|
|
1362
1482
|
}
|
|
@@ -1389,4 +1509,4 @@ const computePosition = (reference, floating, options) => {
|
|
|
1389
1509
|
|
|
1390
1510
|
export { autoUpdate as a, arrow as b, computePosition as c, flip as f, inline as i, offset as o, shift as s };
|
|
1391
1511
|
|
|
1392
|
-
//# sourceMappingURL=floating-ui.dom.esm-
|
|
1512
|
+
//# sourceMappingURL=floating-ui.dom.esm-cbe44820.js.map
|