@carbon/web-components 2.46.0 → 2.47.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/custom-elements.json +89 -20
- package/es/components/ai-label/ai-label.d.ts +1 -1
- package/es/components/ai-label/ai-label.js +11 -2
- package/es/components/ai-label/ai-label.js.map +1 -1
- package/es/components/ai-label/ai-label.scss.js +1 -1
- package/es/components/ai-skeleton/ai-skeleton.scss.js +1 -1
- package/es/components/breadcrumb/breadcrumb-overflow-menu.d.ts +1 -1
- package/es/components/breadcrumb/breadcrumb-overflow-menu.js +7 -3
- package/es/components/breadcrumb/breadcrumb-overflow-menu.js.map +1 -1
- package/es/components/breadcrumb/breadcrumb.scss.js +1 -1
- package/es/components/button/button.scss.js +1 -1
- package/es/components/chat-button/chat-button-skeleton.d.ts +1 -1
- package/es/components/chat-button/chat-button-skeleton.js +6 -2
- package/es/components/chat-button/chat-button-skeleton.js.map +1 -1
- package/es/components/chat-button/chat-button.d.ts +1 -1
- package/es/components/chat-button/chat-button.js +6 -2
- package/es/components/chat-button/chat-button.js.map +1 -1
- package/es/components/chat-button/chat-button.scss.js +1 -1
- package/es/components/code-snippet/code-snippet.scss.js +1 -1
- package/es/components/combo-box/combo-box.d.ts +5 -1
- package/es/components/combo-box/combo-box.js +27 -3
- package/es/components/combo-box/combo-box.js.map +1 -1
- package/es/components/combo-box/combo-box.scss.js +1 -1
- package/es/components/copy/copy.d.ts +1 -1
- package/es/components/copy/copy.js +1 -2
- package/es/components/copy/copy.js.map +1 -1
- package/es/components/copy-button/copy-button.scss.js +1 -1
- package/es/components/data-table/data-table.scss.js +1 -1
- package/es/components/date-picker/range-plugin.d.ts +1 -1
- package/es/components/date-picker/range-plugin.js +1 -3
- package/es/components/date-picker/range-plugin.js.map +1 -1
- package/es/components/dropdown/dropdown.d.ts +3 -3
- package/es/components/dropdown/dropdown.js +1 -3
- package/es/components/dropdown/dropdown.js.map +1 -1
- package/es/components/dropdown/dropdown.scss.js +1 -1
- package/es/components/fluid-number-input/fluid-number-input.scss.js +1 -1
- package/es/components/fluid-search/fluid-search.scss.js +1 -1
- package/es/components/fluid-text-input/fluid-text-input.scss.js +1 -1
- package/es/components/grid/column-hang.d.ts +0 -2
- package/es/components/grid/column-hang.js +0 -2
- package/es/components/grid/column-hang.js.map +1 -1
- package/es/components/grid/column.d.ts +0 -2
- package/es/components/grid/column.js +0 -2
- package/es/components/grid/column.js.map +1 -1
- package/es/components/grid/grid.d.ts +0 -2
- package/es/components/grid/grid.js +0 -2
- package/es/components/grid/grid.js.map +1 -1
- package/es/components/grid/index.d.ts +0 -2
- package/es/components/icon-button/icon-button.d.ts +1 -1
- package/es/components/icon-button/icon-button.js +12 -3
- package/es/components/icon-button/icon-button.js.map +1 -1
- package/es/components/icon-button/icon-button.scss.js +2 -2
- package/es/components/menu/menu-context.d.ts +3 -2
- package/es/components/menu/menu-context.js +1 -1
- package/es/components/menu/menu-context.js.map +1 -1
- package/es/components/menu/menu.d.ts +3 -2
- package/es/components/menu/menu.js +5 -4
- package/es/components/menu/menu.js.map +1 -1
- package/es/components/menu/menu.scss.js +1 -1
- package/es/components/modal/modal-body.d.ts +3 -1
- package/es/components/modal/modal-body.js +17 -1
- package/es/components/modal/modal-body.js.map +1 -1
- package/es/components/modal/modal-close-button.d.ts +2 -1
- package/es/components/modal/modal-close-button.js +11 -5
- package/es/components/modal/modal-close-button.js.map +1 -1
- package/es/components/modal/modal.d.ts +67 -2
- package/es/components/modal/modal.js +228 -8
- package/es/components/modal/modal.js.map +1 -1
- package/es/components/modal/modal.scss.js +1 -1
- package/es/components/multi-select/multi-select.d.ts +2 -2
- package/es/components/multi-select/multi-select.js +8 -4
- package/es/components/multi-select/multi-select.js.map +1 -1
- package/es/components/multi-select/multi-select.scss.js +1 -1
- package/es/components/notification/actionable-notification.js +8 -1
- package/es/components/notification/actionable-notification.js.map +1 -1
- package/es/components/notification/actionable-notification.scss.js +1 -1
- package/es/components/notification/inline-notification.scss.js +1 -1
- package/es/components/notification/toast-notification.scss.js +1 -1
- package/es/components/overflow-menu/overflow-menu.d.ts +0 -1
- package/es/components/overflow-menu/overflow-menu.js +3 -2
- package/es/components/overflow-menu/overflow-menu.js.map +1 -1
- package/es/components/page-header/index.d.ts +0 -2
- package/es/components/page-header/page-header-breadcrumb.d.ts +0 -2
- package/es/components/page-header/page-header-breadcrumb.js +0 -2
- package/es/components/page-header/page-header-breadcrumb.js.map +1 -1
- package/es/components/page-header/page-header-content-text.d.ts +0 -2
- package/es/components/page-header/page-header-content-text.js +0 -2
- package/es/components/page-header/page-header-content-text.js.map +1 -1
- package/es/components/page-header/page-header-content.d.ts +0 -2
- package/es/components/page-header/page-header-content.js +0 -2
- package/es/components/page-header/page-header-content.js.map +1 -1
- package/es/components/page-header/page-header-hero-image.d.ts +0 -2
- package/es/components/page-header/page-header-hero-image.js +0 -2
- package/es/components/page-header/page-header-hero-image.js.map +1 -1
- package/es/components/page-header/page-header-tabs.d.ts +0 -2
- package/es/components/page-header/page-header-tabs.js +0 -2
- package/es/components/page-header/page-header-tabs.js.map +1 -1
- package/es/components/page-header/page-header.d.ts +0 -2
- package/es/components/page-header/page-header.js +0 -2
- package/es/components/page-header/page-header.js.map +1 -1
- package/es/components/pagination/pagination.js +7 -4
- package/es/components/pagination/pagination.js.map +1 -1
- package/es/components/password-input/password-input.scss.js +1 -1
- package/es/components/popover/popover-content.js +2 -2
- package/es/components/popover/popover-content.js.map +1 -1
- package/es/components/popover/popover.d.ts +7 -1
- package/es/components/popover/popover.js +54 -3
- package/es/components/popover/popover.js.map +1 -1
- package/es/components/popover/popover.scss.js +2 -2
- package/es/components/search/search.scss.js +1 -1
- package/es/components/slider/slider.scss.js +1 -1
- package/es/components/slug/slug.d.ts +1 -1
- package/es/components/slug/slug.js +11 -2
- package/es/components/slug/slug.js.map +1 -1
- package/es/components/slug/slug.scss.js +1 -1
- package/es/components/tabs/defs.d.ts +4 -0
- package/es/components/tabs/defs.js +4 -0
- package/es/components/tabs/defs.js.map +1 -1
- package/es/components/tabs/tabs.d.ts +2 -4
- package/es/components/tabs/tabs.js +37 -8
- package/es/components/tabs/tabs.js.map +1 -1
- package/es/components/tabs/tabs.scss.js +1 -1
- package/es/components/tag/dismissible-tag.d.ts +0 -2
- package/es/components/tag/dismissible-tag.js +0 -2
- package/es/components/tag/dismissible-tag.js.map +1 -1
- package/es/components/tag/operational-tag.d.ts +0 -2
- package/es/components/tag/operational-tag.js +0 -2
- package/es/components/tag/operational-tag.js.map +1 -1
- package/es/components/tag/selectable-tag.d.ts +0 -2
- package/es/components/tag/selectable-tag.js +0 -2
- package/es/components/tag/selectable-tag.js.map +1 -1
- package/es/components/tag/tag-skeleton.d.ts +0 -2
- package/es/components/tag/tag-skeleton.js +0 -2
- package/es/components/tag/tag-skeleton.js.map +1 -1
- package/es/components/text-input/text-input.scss.js +1 -1
- package/es/components/tile/tile.scss.js +1 -1
- package/es/components/time-picker/time-picker.scss.js +1 -1
- package/es/components/toggle-tip/toggletip.d.ts +0 -1
- package/es/components/toggle-tip/toggletip.js +4 -3
- package/es/components/toggle-tip/toggletip.js.map +1 -1
- package/es/components/toggle-tip/toggletip.scss.js +2 -2
- package/es/components/tooltip/definition-tooltip.js +5 -3
- package/es/components/tooltip/definition-tooltip.js.map +1 -1
- package/es/components/tooltip/tooltip-content.d.ts +0 -7
- package/es/components/tooltip/tooltip-content.js +4 -8
- package/es/components/tooltip/tooltip-content.js.map +1 -1
- package/es/components/tooltip/tooltip.d.ts +0 -1
- package/es/components/tooltip/tooltip.js +4 -7
- package/es/components/tooltip/tooltip.js.map +1 -1
- package/es/components/tooltip/tooltip.scss.js +2 -2
- package/es/components/tree-view/defs.d.ts +0 -2
- package/es/components/tree-view/defs.js +0 -2
- package/es/components/tree-view/defs.js.map +1 -1
- package/es/components/tree-view/index.d.ts +0 -2
- package/es/components/tree-view/tree-node.d.ts +0 -2
- package/es/components/tree-view/tree-node.js +0 -2
- package/es/components/tree-view/tree-node.js.map +1 -1
- package/es/components/tree-view/tree-view.d.ts +0 -2
- package/es/components/tree-view/tree-view.js +0 -2
- package/es/components/tree-view/tree-view.js.map +1 -1
- package/es/components/tree-view/tree-view.scss.js +1 -1
- package/es/components/ui-shell/header-global-action.d.ts +1 -1
- package/es/components/ui-shell/header-global-action.js +16 -2
- package/es/components/ui-shell/header-global-action.js.map +1 -1
- package/es/components/ui-shell/header-name.js +1 -1
- package/es/components/ui-shell/header-name.js.map +1 -1
- package/es/components/ui-shell/side-nav-menu-item.d.ts +4 -0
- package/es/components/ui-shell/side-nav-menu-item.js +10 -2
- package/es/components/ui-shell/side-nav-menu-item.js.map +1 -1
- package/es/globals/controllers/floating-controller.d.ts +1 -1
- package/es/globals/controllers/floating-controller.js +34 -30
- package/es/globals/controllers/floating-controller.js.map +1 -1
- package/es/globals/decorators/carbon-element.d.ts +5 -4
- package/es/globals/decorators/carbon-element.js +1 -1
- package/es/globals/decorators/carbon-element.js.map +1 -1
- package/es-custom/components/ai-label/ai-label.d.ts +1 -1
- package/es-custom/components/ai-label/ai-label.js +11 -2
- package/es-custom/components/ai-label/ai-label.js.map +1 -1
- package/es-custom/components/ai-label/ai-label.scss.js +1 -1
- package/es-custom/components/ai-skeleton/ai-skeleton.scss.js +1 -1
- package/es-custom/components/breadcrumb/breadcrumb-overflow-menu.d.ts +1 -1
- package/es-custom/components/breadcrumb/breadcrumb-overflow-menu.js +7 -3
- package/es-custom/components/breadcrumb/breadcrumb-overflow-menu.js.map +1 -1
- package/es-custom/components/breadcrumb/breadcrumb.scss.js +1 -1
- package/es-custom/components/button/button.scss.js +1 -1
- package/es-custom/components/chat-button/chat-button-skeleton.d.ts +1 -1
- package/es-custom/components/chat-button/chat-button-skeleton.js +6 -2
- package/es-custom/components/chat-button/chat-button-skeleton.js.map +1 -1
- package/es-custom/components/chat-button/chat-button.d.ts +1 -1
- package/es-custom/components/chat-button/chat-button.js +6 -2
- package/es-custom/components/chat-button/chat-button.js.map +1 -1
- package/es-custom/components/chat-button/chat-button.scss.js +1 -1
- package/es-custom/components/code-snippet/code-snippet.scss.js +1 -1
- package/es-custom/components/combo-box/combo-box.d.ts +5 -1
- package/es-custom/components/combo-box/combo-box.js +27 -3
- package/es-custom/components/combo-box/combo-box.js.map +1 -1
- package/es-custom/components/combo-box/combo-box.scss.js +1 -1
- package/es-custom/components/copy/copy.d.ts +1 -1
- package/es-custom/components/copy/copy.js +1 -2
- package/es-custom/components/copy/copy.js.map +1 -1
- package/es-custom/components/copy-button/copy-button.scss.js +1 -1
- package/es-custom/components/data-table/data-table.scss.js +1 -1
- package/es-custom/components/date-picker/range-plugin.d.ts +1 -1
- package/es-custom/components/date-picker/range-plugin.js +1 -3
- package/es-custom/components/date-picker/range-plugin.js.map +1 -1
- package/es-custom/components/dropdown/dropdown.d.ts +3 -3
- package/es-custom/components/dropdown/dropdown.js +1 -3
- package/es-custom/components/dropdown/dropdown.js.map +1 -1
- package/es-custom/components/dropdown/dropdown.scss.js +1 -1
- package/es-custom/components/fluid-number-input/fluid-number-input.scss.js +1 -1
- package/es-custom/components/fluid-search/fluid-search.scss.js +1 -1
- package/es-custom/components/fluid-text-input/fluid-text-input.scss.js +1 -1
- package/es-custom/components/grid/column-hang.d.ts +0 -2
- package/es-custom/components/grid/column-hang.js +0 -2
- package/es-custom/components/grid/column-hang.js.map +1 -1
- package/es-custom/components/grid/column.d.ts +0 -2
- package/es-custom/components/grid/column.js +0 -2
- package/es-custom/components/grid/column.js.map +1 -1
- package/es-custom/components/grid/grid.d.ts +0 -2
- package/es-custom/components/grid/grid.js +0 -2
- package/es-custom/components/grid/grid.js.map +1 -1
- package/es-custom/components/grid/index.d.ts +0 -2
- package/es-custom/components/icon-button/icon-button.d.ts +1 -1
- package/es-custom/components/icon-button/icon-button.js +12 -3
- package/es-custom/components/icon-button/icon-button.js.map +1 -1
- package/es-custom/components/icon-button/icon-button.scss.js +2 -2
- package/es-custom/components/menu/menu-context.d.ts +3 -2
- package/es-custom/components/menu/menu-context.js +1 -1
- package/es-custom/components/menu/menu-context.js.map +1 -1
- package/es-custom/components/menu/menu.d.ts +3 -2
- package/es-custom/components/menu/menu.js +5 -4
- package/es-custom/components/menu/menu.js.map +1 -1
- package/es-custom/components/menu/menu.scss.js +1 -1
- package/es-custom/components/modal/modal-body.d.ts +3 -1
- package/es-custom/components/modal/modal-body.js +17 -1
- package/es-custom/components/modal/modal-body.js.map +1 -1
- package/es-custom/components/modal/modal-close-button.d.ts +2 -1
- package/es-custom/components/modal/modal-close-button.js +11 -5
- package/es-custom/components/modal/modal-close-button.js.map +1 -1
- package/es-custom/components/modal/modal.d.ts +67 -2
- package/es-custom/components/modal/modal.js +228 -8
- package/es-custom/components/modal/modal.js.map +1 -1
- package/es-custom/components/modal/modal.scss.js +1 -1
- package/es-custom/components/multi-select/multi-select.d.ts +2 -2
- package/es-custom/components/multi-select/multi-select.js +8 -4
- package/es-custom/components/multi-select/multi-select.js.map +1 -1
- package/es-custom/components/multi-select/multi-select.scss.js +1 -1
- package/es-custom/components/notification/actionable-notification.js +8 -1
- package/es-custom/components/notification/actionable-notification.js.map +1 -1
- package/es-custom/components/notification/actionable-notification.scss.js +1 -1
- package/es-custom/components/notification/inline-notification.scss.js +1 -1
- package/es-custom/components/notification/toast-notification.scss.js +1 -1
- package/es-custom/components/overflow-menu/overflow-menu.d.ts +0 -1
- package/es-custom/components/overflow-menu/overflow-menu.js +3 -2
- package/es-custom/components/overflow-menu/overflow-menu.js.map +1 -1
- package/es-custom/components/page-header/index.d.ts +0 -2
- package/es-custom/components/page-header/page-header-breadcrumb.d.ts +0 -2
- package/es-custom/components/page-header/page-header-breadcrumb.js +0 -2
- package/es-custom/components/page-header/page-header-breadcrumb.js.map +1 -1
- package/es-custom/components/page-header/page-header-content-text.d.ts +0 -2
- package/es-custom/components/page-header/page-header-content-text.js +0 -2
- package/es-custom/components/page-header/page-header-content-text.js.map +1 -1
- package/es-custom/components/page-header/page-header-content.d.ts +0 -2
- package/es-custom/components/page-header/page-header-content.js +0 -2
- package/es-custom/components/page-header/page-header-content.js.map +1 -1
- package/es-custom/components/page-header/page-header-hero-image.d.ts +0 -2
- package/es-custom/components/page-header/page-header-hero-image.js +0 -2
- package/es-custom/components/page-header/page-header-hero-image.js.map +1 -1
- package/es-custom/components/page-header/page-header-tabs.d.ts +0 -2
- package/es-custom/components/page-header/page-header-tabs.js +0 -2
- package/es-custom/components/page-header/page-header-tabs.js.map +1 -1
- package/es-custom/components/page-header/page-header.d.ts +0 -2
- package/es-custom/components/page-header/page-header.js +0 -2
- package/es-custom/components/page-header/page-header.js.map +1 -1
- package/es-custom/components/pagination/pagination.js +7 -4
- package/es-custom/components/pagination/pagination.js.map +1 -1
- package/es-custom/components/password-input/password-input.scss.js +1 -1
- package/es-custom/components/popover/popover-content.js +2 -2
- package/es-custom/components/popover/popover-content.js.map +1 -1
- package/es-custom/components/popover/popover.d.ts +7 -1
- package/es-custom/components/popover/popover.js +54 -3
- package/es-custom/components/popover/popover.js.map +1 -1
- package/es-custom/components/popover/popover.scss.js +2 -2
- package/es-custom/components/search/search.scss.js +1 -1
- package/es-custom/components/slider/slider.scss.js +1 -1
- package/es-custom/components/slug/slug.d.ts +1 -1
- package/es-custom/components/slug/slug.js +11 -2
- package/es-custom/components/slug/slug.js.map +1 -1
- package/es-custom/components/slug/slug.scss.js +1 -1
- package/es-custom/components/tabs/defs.d.ts +4 -0
- package/es-custom/components/tabs/defs.js +4 -0
- package/es-custom/components/tabs/defs.js.map +1 -1
- package/es-custom/components/tabs/tabs.d.ts +2 -4
- package/es-custom/components/tabs/tabs.js +37 -8
- package/es-custom/components/tabs/tabs.js.map +1 -1
- package/es-custom/components/tabs/tabs.scss.js +1 -1
- package/es-custom/components/tag/dismissible-tag.d.ts +0 -2
- package/es-custom/components/tag/dismissible-tag.js +0 -2
- package/es-custom/components/tag/dismissible-tag.js.map +1 -1
- package/es-custom/components/tag/operational-tag.d.ts +0 -2
- package/es-custom/components/tag/operational-tag.js +0 -2
- package/es-custom/components/tag/operational-tag.js.map +1 -1
- package/es-custom/components/tag/selectable-tag.d.ts +0 -2
- package/es-custom/components/tag/selectable-tag.js +0 -2
- package/es-custom/components/tag/selectable-tag.js.map +1 -1
- package/es-custom/components/tag/tag-skeleton.d.ts +0 -2
- package/es-custom/components/tag/tag-skeleton.js +0 -2
- package/es-custom/components/tag/tag-skeleton.js.map +1 -1
- package/es-custom/components/text-input/text-input.scss.js +1 -1
- package/es-custom/components/tile/tile.scss.js +1 -1
- package/es-custom/components/time-picker/time-picker.scss.js +1 -1
- package/es-custom/components/toggle-tip/toggletip.d.ts +0 -1
- package/es-custom/components/toggle-tip/toggletip.js +4 -3
- package/es-custom/components/toggle-tip/toggletip.js.map +1 -1
- package/es-custom/components/toggle-tip/toggletip.scss.js +2 -2
- package/es-custom/components/tooltip/definition-tooltip.js +5 -3
- package/es-custom/components/tooltip/definition-tooltip.js.map +1 -1
- package/es-custom/components/tooltip/tooltip-content.d.ts +0 -7
- package/es-custom/components/tooltip/tooltip-content.js +4 -8
- package/es-custom/components/tooltip/tooltip-content.js.map +1 -1
- package/es-custom/components/tooltip/tooltip.d.ts +0 -1
- package/es-custom/components/tooltip/tooltip.js +4 -7
- package/es-custom/components/tooltip/tooltip.js.map +1 -1
- package/es-custom/components/tooltip/tooltip.scss.js +2 -2
- package/es-custom/components/tree-view/defs.d.ts +0 -2
- package/es-custom/components/tree-view/defs.js +0 -2
- package/es-custom/components/tree-view/defs.js.map +1 -1
- package/es-custom/components/tree-view/index.d.ts +0 -2
- package/es-custom/components/tree-view/tree-node.d.ts +0 -2
- package/es-custom/components/tree-view/tree-node.js +0 -2
- package/es-custom/components/tree-view/tree-node.js.map +1 -1
- package/es-custom/components/tree-view/tree-view.d.ts +0 -2
- package/es-custom/components/tree-view/tree-view.js +0 -2
- package/es-custom/components/tree-view/tree-view.js.map +1 -1
- package/es-custom/components/tree-view/tree-view.scss.js +1 -1
- package/es-custom/components/ui-shell/header-global-action.d.ts +1 -1
- package/es-custom/components/ui-shell/header-global-action.js +16 -2
- package/es-custom/components/ui-shell/header-global-action.js.map +1 -1
- package/es-custom/components/ui-shell/header-name.js +1 -1
- package/es-custom/components/ui-shell/header-name.js.map +1 -1
- package/es-custom/components/ui-shell/side-nav-menu-item.d.ts +4 -0
- package/es-custom/components/ui-shell/side-nav-menu-item.js +10 -2
- package/es-custom/components/ui-shell/side-nav-menu-item.js.map +1 -1
- package/es-custom/globals/controllers/floating-controller.d.ts +1 -1
- package/es-custom/globals/controllers/floating-controller.js +34 -30
- package/es-custom/globals/controllers/floating-controller.js.map +1 -1
- package/es-custom/globals/decorators/carbon-element.d.ts +5 -4
- package/es-custom/globals/decorators/carbon-element.js +1 -1
- package/es-custom/globals/decorators/carbon-element.js.map +1 -1
- package/lib/components/ai-label/ai-label.d.ts +1 -1
- package/lib/components/breadcrumb/breadcrumb-overflow-menu.d.ts +1 -1
- package/lib/components/chat-button/chat-button-skeleton.d.ts +1 -1
- package/lib/components/chat-button/chat-button.d.ts +1 -1
- package/lib/components/combo-box/combo-box.d.ts +5 -1
- package/lib/components/copy/copy.d.ts +1 -1
- package/lib/components/date-picker/range-plugin.d.ts +1 -1
- package/lib/components/dropdown/dropdown.d.ts +3 -3
- package/lib/components/grid/column-hang.d.ts +0 -2
- package/lib/components/grid/column.d.ts +0 -2
- package/lib/components/grid/grid.d.ts +0 -2
- package/lib/components/grid/index.d.ts +0 -2
- package/lib/components/icon-button/icon-button.d.ts +1 -1
- package/lib/components/menu/menu-context.d.ts +3 -2
- package/lib/components/menu/menu.d.ts +3 -2
- package/lib/components/modal/modal-body.d.ts +3 -1
- package/lib/components/modal/modal-close-button.d.ts +2 -1
- package/lib/components/modal/modal.d.ts +67 -2
- package/lib/components/multi-select/multi-select.d.ts +2 -2
- package/lib/components/overflow-menu/overflow-menu.d.ts +0 -1
- package/lib/components/page-header/index.d.ts +0 -2
- package/lib/components/page-header/page-header-breadcrumb.d.ts +0 -2
- package/lib/components/page-header/page-header-content-text.d.ts +0 -2
- package/lib/components/page-header/page-header-content.d.ts +0 -2
- package/lib/components/page-header/page-header-hero-image.d.ts +0 -2
- package/lib/components/page-header/page-header-tabs.d.ts +0 -2
- package/lib/components/page-header/page-header.d.ts +0 -2
- package/lib/components/popover/popover.d.ts +7 -1
- package/lib/components/slug/slug.d.ts +1 -1
- package/lib/components/tabs/defs.d.ts +4 -0
- package/lib/components/tabs/defs.js +4 -0
- package/lib/components/tabs/defs.js.map +1 -1
- package/lib/components/tabs/tabs.d.ts +2 -4
- package/lib/components/tag/dismissible-tag.d.ts +0 -2
- package/lib/components/tag/operational-tag.d.ts +0 -2
- package/lib/components/tag/selectable-tag.d.ts +0 -2
- package/lib/components/tag/tag-skeleton.d.ts +0 -2
- package/lib/components/toggle-tip/toggletip.d.ts +0 -1
- package/lib/components/tooltip/tooltip-content.d.ts +0 -7
- package/lib/components/tooltip/tooltip.d.ts +0 -1
- package/lib/components/tree-view/defs.d.ts +0 -2
- package/lib/components/tree-view/defs.js +0 -2
- package/lib/components/tree-view/defs.js.map +1 -1
- package/lib/components/tree-view/index.d.ts +0 -2
- package/lib/components/tree-view/tree-node.d.ts +0 -2
- package/lib/components/tree-view/tree-view.d.ts +0 -2
- package/lib/components/ui-shell/header-global-action.d.ts +1 -1
- package/lib/components/ui-shell/side-nav-menu-item.d.ts +4 -0
- package/lib/globals/controllers/floating-controller.d.ts +1 -1
- package/lib/globals/controllers/floating-controller.js +34 -30
- package/lib/globals/controllers/floating-controller.js.map +1 -1
- package/lib/globals/decorators/carbon-element.d.ts +5 -4
- package/package.json +7 -9
- package/scss/components/ai-label/ai-label.scss +11 -12
- package/scss/components/ai-skeleton/ai-skeleton.scss +1 -3
- package/scss/components/breadcrumb/breadcrumb.scss +0 -1
- package/scss/components/button/button.scss +0 -2
- package/scss/components/chat-button/chat-button.scss +0 -1
- package/scss/components/icon-button/icon-button.scss +0 -2
- package/scss/components/menu/menu.scss +11 -2
- package/scss/components/modal/modal.scss +27 -7
- package/scss/components/multi-select/multi-select.scss +2 -2
- package/scss/components/notification/actionable-notification.scss +42 -128
- package/scss/components/notification/inline-notification.scss +17 -69
- package/scss/components/notification/toast-notification.scss +16 -37
- package/scss/components/popover/popover.scss +4 -4
- package/scss/components/slug/slug.scss +11 -12
- package/scss/components/tabs/tabs.scss +7 -0
- package/scss/components/tile/tile.scss +1 -1
- package/scss/components/toggle-tip/toggletip.scss +0 -2
- package/scss/components/tooltip/tooltip.scss +0 -1
- package/telemetry.yml +11 -0
- package/dist/16-BXPirV4t.js +0 -28
- package/dist/16-BcPXq4VE.js +0 -28
- package/dist/16-BiojhJb6.js +0 -28
- package/dist/16-BirbARgt.js +0 -28
- package/dist/16-CCrV-EKs.js +0 -28
- package/dist/16-CNObEOvs.js +0 -28
- package/dist/16-CsHohlYG.js +0 -28
- package/dist/16-D9rqeJJl.js +0 -28
- package/dist/16-DEZ8LNs3.js +0 -28
- package/dist/16-DThcsE9v.js +0 -28
- package/dist/16-T0hLy__N.js +0 -28
- package/dist/16-mUGLFymm.js +0 -28
- package/dist/20-BSzLZNRY.js +0 -28
- package/dist/20-ZHgmfbqd.js +0 -28
- package/dist/accordion.min.js +0 -72
- package/dist/ai-label.min.js +0 -54
- package/dist/ai-skeleton.min.js +0 -37
- package/dist/badge-indicator.min.js +0 -28
- package/dist/breadcrumb.min.js +0 -46
- package/dist/button-3n7S6dfU.js +0 -94
- package/dist/button-skeleton-DE9AxBek.js +0 -48
- package/dist/button.min.js +0 -28
- package/dist/carbon-element-tFMTVffV.js +0 -28
- package/dist/chat-button.min.js +0 -40
- package/dist/checkbox-CFU6bnOa.js +0 -67
- package/dist/checkbox.min.js +0 -64
- package/dist/class-map-BLvVLLRH.js +0 -33
- package/dist/code-snippet.min.js +0 -85
- package/dist/collection-helpers-C8K_t6zj.js +0 -28
- package/dist/combo-box.min.js +0 -65
- package/dist/combo-button.min.js +0 -42
- package/dist/consume-DNv3sWri.js +0 -64
- package/dist/contained-list.min.js +0 -70
- package/dist/content-switcher-item-CXc-BbRX.js +0 -54
- package/dist/content-switcher.min.js +0 -28
- package/dist/copy-button.min.js +0 -44
- package/dist/data-table.min.js +0 -185
- package/dist/date-picker.min.js +0 -89
- package/dist/defs-CcLNpvSO.js +0 -28
- package/dist/directive-CwpJ03IP.js +0 -33
- package/dist/dropdown-item-CSXYY4Up.js +0 -100
- package/dist/dropdown.min.js +0 -31
- package/dist/feature-flags.min.js +0 -28
- package/dist/file-uploader.min.js +0 -106
- package/dist/floating-controller-ClaZwDaj.js +0 -28
- package/dist/floating-menu.min.js +0 -28
- package/dist/fluid-number-input.min.js +0 -28
- package/dist/fluid-search.min.js +0 -33
- package/dist/fluid-select.min.js +0 -30
- package/dist/fluid-text-input.min.js +0 -28
- package/dist/fluid-textarea.min.js +0 -36
- package/dist/focus-DCv16lgz.js +0 -28
- package/dist/form-D0wM2t2A.js +0 -28
- package/dist/form-group.min.js +0 -39
- package/dist/form.min.js +0 -30
- package/dist/grid.min.js +0 -60
- package/dist/heading.min.js +0 -33
- package/dist/host-listener-BFnrKETa.js +0 -28
- package/dist/host-listener-maKckXVl.js +0 -28
- package/dist/icon-button.min.js +0 -42
- package/dist/icon-indicator.min.js +0 -28
- package/dist/icon-loader-BiaaiIZd.js +0 -28
- package/dist/icon-loader-utils-Dw7YsY3n.js +0 -33
- package/dist/icon.min.js +0 -28
- package/dist/if-defined-B342gMhK.js +0 -33
- package/dist/if-non-empty-BXM4sQkm.js +0 -28
- package/dist/inline-loading.min.js +0 -39
- package/dist/layer.min.js +0 -28
- package/dist/link.min.js +0 -52
- package/dist/list.min.js +0 -39
- package/dist/lit-element-W7dQy3wx.js +0 -50
- package/dist/loading-icon-9dSwtpx9.js +0 -43
- package/dist/loading.min.js +0 -28
- package/dist/menu-button.min.js +0 -37
- package/dist/menu.min.js +0 -80
- package/dist/modal.min.js +0 -49
- package/dist/multi-select.min.js +0 -90
- package/dist/notification.min.js +0 -116
- package/dist/number-input.min.js +0 -103
- package/dist/on-Bh72-1o0.js +0 -28
- package/dist/overflow-menu.min.js +0 -49
- package/dist/page-header.min.js +0 -142
- package/dist/pagination.min.js +0 -104
- package/dist/password-input.min.js +0 -93
- package/dist/popover.min.js +0 -42
- package/dist/progress-bar.min.js +0 -49
- package/dist/progress-indicator.min.js +0 -62
- package/dist/property-D8KHfsO7.js +0 -33
- package/dist/query-DZZk85FD.js +0 -38
- package/dist/query-assigned-elements-CuK851Xm.js +0 -33
- package/dist/radio-button.min.js +0 -71
- package/dist/radio-group-manager-BbeUxJeN.js +0 -28
- package/dist/search-BpfBrZ_q.js +0 -58
- package/dist/search.min.js +0 -31
- package/dist/select-Bu-C3DEh.js +0 -109
- package/dist/select-item-CY7ZCgDO.js +0 -28
- package/dist/select-skeleton-Bj1W9rv-.js +0 -31
- package/dist/select.min.js +0 -28
- package/dist/settings-CVGvqY8T.js +0 -28
- package/dist/shape-indicator.min.js +0 -28
- package/dist/shared-enums-D2BNx9-N.js +0 -28
- package/dist/side-panel.min.js +0 -160
- package/dist/skeleton-icon.min.js +0 -28
- package/dist/skeleton-placeholder.min.js +0 -28
- package/dist/skeleton-text.min.js +0 -28
- package/dist/skip-to-content.min.js +0 -32
- package/dist/slider.min.js +0 -273
- package/dist/slug.min.js +0 -54
- package/dist/stack.min.js +0 -28
- package/dist/state-DVnprZ3A.js +0 -33
- package/dist/structured-list.min.js +0 -46
- package/dist/tabs.min.js +0 -85
- package/dist/tag.min.js +0 -155
- package/dist/tearsheet.min.js +0 -141
- package/dist/text-input-CMLDDQcE.js +0 -95
- package/dist/text-input.min.js +0 -31
- package/dist/textarea.min.js +0 -84
- package/dist/tile.min.js +0 -101
- package/dist/time-picker.min.js +0 -79
- package/dist/toggle-tip.min.js +0 -73
- package/dist/toggle.min.js +0 -63
- package/dist/tooltip-content-eYgOs_c2.js +0 -30
- package/dist/tooltip.min.js +0 -50
- package/dist/tree-view.min.js +0 -127
- package/dist/ui-shell.min.js +0 -156
- package/dist/unsafe-html-SGvBIOsG.js +0 -33
- package/dist/validity-CzCNnEZK.js +0 -28
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
import { autoUpdate, offset, flip, size, arrow, hide, computePosition } from '@floating-ui/dom';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
|
-
* Copyright IBM Corp. 2024,
|
|
11
|
+
* Copyright IBM Corp. 2024, 2026
|
|
12
12
|
*
|
|
13
13
|
* This source code is licensed under the Apache-2.0 license found in the
|
|
14
14
|
* LICENSE file in the root directory of this source tree.
|
|
@@ -36,6 +36,8 @@ class FloatingController {
|
|
|
36
36
|
async computePlacement() {
|
|
37
37
|
var _a, _b, _c;
|
|
38
38
|
const { arrowElement, alignment, caret, trigger, target, styleElement, matchWidth, open, alignmentAxisOffset, autoAlignBoundary, isTabTip, } = this.options;
|
|
39
|
+
const isListBox = (target === null || target === void 0 ? void 0 : target.role) === 'listbox';
|
|
40
|
+
const isMenu = (target === null || target === void 0 ? void 0 : target.localName) === 'cds-menu';
|
|
39
41
|
const element = styleElement !== null && styleElement !== void 0 ? styleElement : target;
|
|
40
42
|
if (!element)
|
|
41
43
|
return;
|
|
@@ -86,35 +88,37 @@ class FloatingController {
|
|
|
86
88
|
? shimmedAlign.includes('bottom')
|
|
87
89
|
? ['bottom-start', 'bottom-end', 'top-start', 'top-end']
|
|
88
90
|
: ['top-start', 'top-end', 'bottom-start', 'bottom-end']
|
|
89
|
-
:
|
|
90
|
-
? [
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
91
|
+
: isListBox || isMenu
|
|
92
|
+
? ['top', 'bottom']
|
|
93
|
+
: shimmedAlign.includes('bottom')
|
|
94
|
+
? [
|
|
95
|
+
'bottom',
|
|
96
|
+
'bottom-start',
|
|
97
|
+
'bottom-end',
|
|
98
|
+
'right',
|
|
99
|
+
'right-start',
|
|
100
|
+
'right-end',
|
|
101
|
+
'left',
|
|
102
|
+
'left-start',
|
|
103
|
+
'left-end',
|
|
104
|
+
'top',
|
|
105
|
+
'top-start',
|
|
106
|
+
'top-end',
|
|
107
|
+
]
|
|
108
|
+
: [
|
|
109
|
+
'top',
|
|
110
|
+
'top-start',
|
|
111
|
+
'top-end',
|
|
112
|
+
'left',
|
|
113
|
+
'left-start',
|
|
114
|
+
'left-end',
|
|
115
|
+
'right',
|
|
116
|
+
'right-start',
|
|
117
|
+
'right-end',
|
|
118
|
+
'bottom',
|
|
119
|
+
'bottom-start',
|
|
120
|
+
'bottom-end',
|
|
121
|
+
],
|
|
118
122
|
fallbackStrategy: 'initialPlacement',
|
|
119
123
|
fallbackAxisSideDirection: 'start',
|
|
120
124
|
boundary: autoAlignBoundary,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"floating-controller.js","sources":["../../../src/globals/controllers/floating-controller.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2024, 2025\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { ReactiveController, ReactiveElement } from 'lit';\nimport {\n computePosition,\n flip,\n size,\n offset,\n arrow,\n autoUpdate,\n hide,\n Placement,\n type Boundary,\n} from '@floating-ui/dom';\n\ntype FloatingControllerOptions = {\n target: HTMLElement;\n trigger: HTMLElement;\n alignment: string;\n\n arrowElement?: HTMLElement | undefined;\n flipArguments?: object;\n caret?: boolean;\n\n styleElement?: HTMLElement;\n matchWidth?: boolean;\n open: boolean;\n alignmentAxisOffset?: number;\n autoAlignBoundary?: Boundary;\n isTabTip?: boolean;\n};\n\n/**\n * Controller for positioning the menu using Floating UI.\n */\nexport default class FloatingController implements ReactiveController {\n /**\n * Host component\n */\n private host: ReactiveElement;\n /**\n * Floating-ui options to pass to `computePlacement()`\n */\n private options!: FloatingControllerOptions;\n /**\n * cleanup function to stop auto updates\n */\n private cleanup?: () => void;\n\n /**\n * register with host component\n * @param host host component\n */\n constructor(host: ReactiveElement) {\n this.host = host;\n host.addController(this);\n }\n\n async setPlacement(options: FloatingControllerOptions = this.options) {\n this.options = options;\n const { trigger, target } = options;\n this.cleanup = autoUpdate(trigger, target, this.updatePlacement);\n }\n\n updatePlacement = (): void => {\n this.computePlacement();\n };\n\n async computePlacement() {\n const {\n arrowElement,\n alignment,\n caret,\n trigger,\n target,\n styleElement,\n matchWidth,\n open,\n alignmentAxisOffset,\n autoAlignBoundary,\n isTabTip,\n } = this.options;\n\n const element = styleElement ?? target;\n\n if (!element) return;\n\n let shimmedAlign;\n switch (alignment) {\n case 'top-left':\n shimmedAlign = 'top-start';\n break;\n case 'top-right':\n shimmedAlign = 'top-end';\n break;\n case 'bottom-left':\n shimmedAlign = 'bottom-start';\n break;\n case 'bottom-right':\n shimmedAlign = 'bottom-end';\n break;\n case 'left-bottom':\n shimmedAlign = 'left-end';\n break;\n case 'left-top':\n shimmedAlign = 'left-start';\n break;\n case 'right-bottom':\n shimmedAlign = 'right-end';\n break;\n case 'right-top':\n shimmedAlign = 'right-start';\n break;\n default:\n shimmedAlign = alignment;\n break;\n }\n const cs = getComputedStyle(element);\n const toPx = (val: string) => {\n const raw = parseFloat(val);\n return val.trim().endsWith('rem') ? raw * 16 : raw;\n };\n const offsetPx = !isTabTip\n ? (toPx(cs.getPropertyValue('--cds-popover-offset').trim()) ?? 10)\n : 0;\n\n const middleware = [\n offset(\n caret && !isTabTip\n ? { alignmentAxis: alignmentAxisOffset, mainAxis: offsetPx }\n : 0\n ),\n flip({\n fallbackPlacements: isTabTip\n ? shimmedAlign.includes('bottom')\n ? ['bottom-start', 'bottom-end', 'top-start', 'top-end']\n : ['top-start', 'top-end', 'bottom-start', 'bottom-end']\n : shimmedAlign.includes('bottom')\n ? [\n 'bottom',\n 'bottom-start',\n 'bottom-end',\n 'right',\n 'right-start',\n 'right-end',\n 'left',\n 'left-start',\n 'left-end',\n 'top',\n 'top-start',\n 'top-end',\n ]\n : [\n 'top',\n 'top-start',\n 'top-end',\n 'left',\n 'left-start',\n 'left-end',\n 'right',\n 'right-start',\n 'right-end',\n 'bottom',\n 'bottom-start',\n 'bottom-end',\n ],\n\n fallbackStrategy: 'initialPlacement',\n fallbackAxisSideDirection: 'start',\n boundary: autoAlignBoundary,\n }),\n ...(matchWidth && (shimmedAlign === 'bottom' || shimmedAlign === 'top')\n ? [\n size({\n apply({ rects, elements }) {\n elements.floating.style.width = `${rects.reference.width}px`;\n },\n }),\n ]\n : [\n size({\n apply({ elements }) {\n elements.floating.style.removeProperty('width');\n },\n }),\n ]),\n\n ...(caret && arrowElement\n ? [arrow({ element: arrowElement, padding: 15 })]\n : []),\n\n ...[hide()],\n ];\n\n if (open) {\n const { x, y, placement, middlewareData, strategy } =\n await computePosition(trigger, element, {\n strategy: 'fixed',\n middleware,\n placement: shimmedAlign as Placement,\n });\n\n element.setAttribute('align', placement);\n\n element.style.left = `${x}px`;\n element.style.top = `${y}px`;\n element.style.position = `${strategy}`;\n\n element.style.visibility = middlewareData.hide?.referenceHidden\n ? 'hidden'\n : 'visible';\n\n if (arrowElement) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- https://github.com/carbon-design-system/carbon/issues/20452\n // @ts-ignore\n const { x: arrowX, y: arrowY } = middlewareData.arrow;\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- https://github.com/carbon-design-system/carbon/issues/20452\n const staticSide: any = {\n top: 'bottom',\n right: 'left',\n bottom: 'top',\n left: 'right',\n }[placement.split('-')[0]];\n\n arrowElement.style.left = arrowX != null ? `${arrowX}px` : '';\n arrowElement.style.top = arrowY != null ? `${arrowY}px` : '';\n arrowElement.style.right = '';\n arrowElement.style.bottom = '';\n arrowElement.style[staticSide] = `${-arrowElement.offsetWidth / 2}px`;\n }\n\n // adding specific case here where the style of the caret/arrow\n // is dependent on the placement\n // TODO: remove reference to slug in v12\n if (\n this.host.tagName === 'CDS-AI-LABEL' ||\n this.host.tagName === 'CDS-SLUG'\n ) {\n this.host?.setAttribute('alignment', placement);\n }\n }\n }\n\n hostUpdated(): void {\n if (!this.host.hasAttribute('open')) {\n this.cleanup?.();\n this.cleanup = undefined;\n }\n }\n\n hostDisconnected(): void {\n this.cleanup?.();\n this.cleanup = undefined;\n }\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"floating-controller.js","sources":["../../../src/globals/controllers/floating-controller.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2024, 2026\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { ReactiveController, ReactiveElement } from 'lit';\nimport {\n computePosition,\n flip,\n size,\n offset,\n arrow,\n autoUpdate,\n hide,\n Placement,\n type Boundary,\n} from '@floating-ui/dom';\n\ntype FloatingControllerOptions = {\n target: HTMLElement;\n trigger: HTMLElement;\n alignment: string;\n\n arrowElement?: HTMLElement | undefined;\n flipArguments?: object;\n caret?: boolean;\n\n styleElement?: HTMLElement;\n matchWidth?: boolean;\n open: boolean;\n alignmentAxisOffset?: number;\n autoAlignBoundary?: Boundary;\n isTabTip?: boolean;\n};\n\n/**\n * Controller for positioning the menu using Floating UI.\n */\nexport default class FloatingController implements ReactiveController {\n /**\n * Host component\n */\n private host: ReactiveElement;\n /**\n * Floating-ui options to pass to `computePlacement()`\n */\n private options!: FloatingControllerOptions;\n /**\n * cleanup function to stop auto updates\n */\n private cleanup?: () => void;\n\n /**\n * register with host component\n * @param host host component\n */\n constructor(host: ReactiveElement) {\n this.host = host;\n host.addController(this);\n }\n\n async setPlacement(options: FloatingControllerOptions = this.options) {\n this.options = options;\n const { trigger, target } = options;\n this.cleanup = autoUpdate(trigger, target, this.updatePlacement);\n }\n\n updatePlacement = (): void => {\n this.computePlacement();\n };\n\n async computePlacement() {\n const {\n arrowElement,\n alignment,\n caret,\n trigger,\n target,\n styleElement,\n matchWidth,\n open,\n alignmentAxisOffset,\n autoAlignBoundary,\n isTabTip,\n } = this.options;\n\n const isListBox = target?.role === 'listbox';\n const isMenu = target?.localName === 'cds-menu';\n\n const element = styleElement ?? target;\n\n if (!element) return;\n\n let shimmedAlign;\n switch (alignment) {\n case 'top-left':\n shimmedAlign = 'top-start';\n break;\n case 'top-right':\n shimmedAlign = 'top-end';\n break;\n case 'bottom-left':\n shimmedAlign = 'bottom-start';\n break;\n case 'bottom-right':\n shimmedAlign = 'bottom-end';\n break;\n case 'left-bottom':\n shimmedAlign = 'left-end';\n break;\n case 'left-top':\n shimmedAlign = 'left-start';\n break;\n case 'right-bottom':\n shimmedAlign = 'right-end';\n break;\n case 'right-top':\n shimmedAlign = 'right-start';\n break;\n default:\n shimmedAlign = alignment;\n break;\n }\n const cs = getComputedStyle(element);\n const toPx = (val: string) => {\n const raw = parseFloat(val);\n return val.trim().endsWith('rem') ? raw * 16 : raw;\n };\n const offsetPx = !isTabTip\n ? (toPx(cs.getPropertyValue('--cds-popover-offset').trim()) ?? 10)\n : 0;\n\n const middleware = [\n offset(\n caret && !isTabTip\n ? { alignmentAxis: alignmentAxisOffset, mainAxis: offsetPx }\n : 0\n ),\n flip({\n fallbackPlacements: isTabTip\n ? shimmedAlign.includes('bottom')\n ? ['bottom-start', 'bottom-end', 'top-start', 'top-end']\n : ['top-start', 'top-end', 'bottom-start', 'bottom-end']\n : isListBox || isMenu\n ? ['top', 'bottom']\n : shimmedAlign.includes('bottom')\n ? [\n 'bottom',\n 'bottom-start',\n 'bottom-end',\n 'right',\n 'right-start',\n 'right-end',\n 'left',\n 'left-start',\n 'left-end',\n 'top',\n 'top-start',\n 'top-end',\n ]\n : [\n 'top',\n 'top-start',\n 'top-end',\n 'left',\n 'left-start',\n 'left-end',\n 'right',\n 'right-start',\n 'right-end',\n 'bottom',\n 'bottom-start',\n 'bottom-end',\n ],\n\n fallbackStrategy: 'initialPlacement',\n fallbackAxisSideDirection: 'start',\n boundary: autoAlignBoundary,\n }),\n ...(matchWidth && (shimmedAlign === 'bottom' || shimmedAlign === 'top')\n ? [\n size({\n apply({ rects, elements }) {\n elements.floating.style.width = `${rects.reference.width}px`;\n },\n }),\n ]\n : [\n size({\n apply({ elements }) {\n elements.floating.style.removeProperty('width');\n },\n }),\n ]),\n\n ...(caret && arrowElement\n ? [arrow({ element: arrowElement, padding: 15 })]\n : []),\n\n ...[hide()],\n ];\n\n if (open) {\n const { x, y, placement, middlewareData, strategy } =\n await computePosition(trigger, element, {\n strategy: 'fixed',\n middleware,\n placement: shimmedAlign as Placement,\n });\n\n element.setAttribute('align', placement);\n\n element.style.left = `${x}px`;\n element.style.top = `${y}px`;\n element.style.position = `${strategy}`;\n\n element.style.visibility = middlewareData.hide?.referenceHidden\n ? 'hidden'\n : 'visible';\n\n if (arrowElement) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- https://github.com/carbon-design-system/carbon/issues/20452\n // @ts-ignore\n const { x: arrowX, y: arrowY } = middlewareData.arrow;\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- https://github.com/carbon-design-system/carbon/issues/20452\n const staticSide: any = {\n top: 'bottom',\n right: 'left',\n bottom: 'top',\n left: 'right',\n }[placement.split('-')[0]];\n\n arrowElement.style.left = arrowX != null ? `${arrowX}px` : '';\n arrowElement.style.top = arrowY != null ? `${arrowY}px` : '';\n arrowElement.style.right = '';\n arrowElement.style.bottom = '';\n arrowElement.style[staticSide] = `${-arrowElement.offsetWidth / 2}px`;\n }\n\n // adding specific case here where the style of the caret/arrow\n // is dependent on the placement\n // TODO: remove reference to slug in v12\n if (\n this.host.tagName === 'CDS-AI-LABEL' ||\n this.host.tagName === 'CDS-SLUG'\n ) {\n this.host?.setAttribute('alignment', placement);\n }\n }\n }\n\n hostUpdated(): void {\n if (!this.host.hasAttribute('open')) {\n this.cleanup?.();\n this.cleanup = undefined;\n }\n }\n\n hostDisconnected(): void {\n this.cleanup?.();\n this.cleanup = undefined;\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright IBM Corp. 2019,
|
|
2
|
+
* Copyright IBM Corp. 2019, 2026
|
|
3
3
|
*
|
|
4
4
|
* This source code is licensed under the Apache-2.0 license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
@@ -7,18 +7,19 @@
|
|
|
7
7
|
export declare type Constructor<T> = {
|
|
8
8
|
new (...args: any[]): T;
|
|
9
9
|
};
|
|
10
|
+
type Finisher = (<T>(clazz: Constructor<T>) => Constructor<T>) | (<T>(clazz: Constructor<T>) => void);
|
|
10
11
|
export interface ClassDescriptor {
|
|
11
12
|
kind: 'class';
|
|
12
13
|
elements: ClassElement[];
|
|
13
|
-
finisher?:
|
|
14
|
+
finisher?: Finisher;
|
|
14
15
|
}
|
|
15
16
|
export interface ClassElement {
|
|
16
17
|
kind: 'field' | 'method';
|
|
17
18
|
key: PropertyKey;
|
|
18
19
|
placement: 'static' | 'prototype' | 'own';
|
|
19
|
-
initializer?:
|
|
20
|
+
initializer?: () => unknown;
|
|
20
21
|
extras?: ClassElement[];
|
|
21
|
-
finisher?:
|
|
22
|
+
finisher?: Finisher;
|
|
22
23
|
descriptor?: PropertyDescriptor;
|
|
23
24
|
}
|
|
24
25
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"carbon-element.js","sources":["../../../src/globals/decorators/carbon-element.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019,
|
|
1
|
+
{"version":3,"file":"carbon-element.js","sources":["../../../src/globals/decorators/carbon-element.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2026\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\nexport declare type Constructor<T> = {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- https://github.com/carbon-design-system/carbon/issues/20452\n new (...args: any[]): T;\n};\n\ntype Finisher =\n | (<T>(clazz: Constructor<T>) => Constructor<T>)\n | (<T>(clazz: Constructor<T>) => void);\n\nexport interface ClassDescriptor {\n kind: 'class';\n elements: ClassElement[];\n finisher?: Finisher;\n}\n\nexport interface ClassElement {\n kind: 'field' | 'method';\n key: PropertyKey;\n placement: 'static' | 'prototype' | 'own';\n initializer?: () => unknown;\n extras?: ClassElement[];\n finisher?: Finisher;\n descriptor?: PropertyDescriptor;\n}\n\n/**\n * Allow for custom element classes with private constructors\n */\ntype CustomElementClass = Omit<typeof HTMLElement, 'new'>;\n\nconst legacyCustomElement = (tagName: string, clazz: CustomElementClass) => {\n try {\n customElements.define(tagName, clazz as CustomElementConstructor);\n // eslint-disable-next-line @typescript-eslint/no-unused-vars -- https://github.com/carbon-design-system/carbon/issues/20452\n } catch (error) {\n // eslint-disable-next-line no-console -- https://github.com/carbon-design-system/carbon/issues/20452\n console.warn(`Attempting to re-define ${tagName}`);\n }\n // Cast as any because TS doesn't recognize the return type as being a\n // subtype of the decorated class when clazz is typed as\n // `Constructor<HTMLElement>` for some reason.\n // `Constructor<HTMLElement>` is helpful to make sure the decorator is\n // applied to elements however.\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return clazz as any;\n};\n\nconst standardCustomElement = (\n tagName: string,\n descriptor: ClassDescriptor\n) => {\n const { kind, elements } = descriptor;\n return {\n kind,\n elements,\n // This callback is called once the class is otherwise fully defined\n finisher(clazz: Constructor<HTMLElement>) {\n try {\n customElements.define(tagName, clazz);\n // eslint-disable-next-line @typescript-eslint/no-unused-vars -- https://github.com/carbon-design-system/carbon/issues/20452\n } catch (error) {\n // eslint-disable-next-line no-console -- https://github.com/carbon-design-system/carbon/issues/20452\n console.warn(`Attempting to re-define ${tagName}`);\n }\n },\n };\n};\n\n/**\n * Class decorator factory that defines the decorated class as a custom element.\n *\n * ```js\n * @customElement('my-element')\n * class MyElement extends LitElement {\n * render() {\n * return html``;\n * }\n * }\n * ```\n *\n * @category Decorator\n * @param tagName The tag name of the custom element to define.\n */\nexport const carbonElement =\n (tagName: string) =>\n (classOrDescriptor: CustomElementClass | ClassDescriptor) =>\n typeof classOrDescriptor === 'function'\n ? legacyCustomElement(tagName, classOrDescriptor)\n : standardCustomElement(tagName, classOrDescriptor as ClassDescriptor);\n"],"names":[],"mappings":";;;;;;;AAAA;;;;;AAKG;AAsCH,MAAM,mBAAmB,GAAG,CAAC,OAAe,EAAE,KAAyB,KAAI;AACzE,IAAA,IAAI;AACF,QAAA,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,KAAiC,CAAC;;IAEnE;IAAE,OAAO,KAAK,EAAE;;AAEd,QAAA,OAAO,CAAC,IAAI,CAAC,2BAA2B,OAAO,CAAA,CAAE,CAAC;IACpD;;;;;;;AAOA,IAAA,OAAO,KAAY;AACrB,CAAC;AAED,MAAM,qBAAqB,GAAG,CAC5B,OAAe,EACf,UAA2B,KACzB;AACF,IAAA,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,UAAU;IACrC,OAAO;QACL,IAAI;QACJ,QAAQ;;AAER,QAAA,QAAQ,CAAC,KAA+B,EAAA;AACtC,YAAA,IAAI;AACF,gBAAA,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC;;YAEvC;YAAE,OAAO,KAAK,EAAE;;AAEd,gBAAA,OAAO,CAAC,IAAI,CAAC,2BAA2B,OAAO,CAAA,CAAE,CAAC;YACpD;QACF,CAAC;KACF;AACH,CAAC;AAED;;;;;;;;;;;;;;AAcG;AACI,MAAM,aAAa,GACxB,CAAC,OAAe,KAChB,CAAC,iBAAuD,KACtD,OAAO,iBAAiB,KAAK;AAC3B,MAAE,mBAAmB,CAAC,OAAO,EAAE,iBAAiB;AAChD,MAAE,qBAAqB,CAAC,OAAO,EAAE,iBAAoC;;;;"}
|
|
@@ -45,11 +45,11 @@ declare class CDSAILabel extends CDSToggleTip {
|
|
|
45
45
|
*/
|
|
46
46
|
buttonLabel: string;
|
|
47
47
|
previousValue: any;
|
|
48
|
+
connectedCallback(): void;
|
|
48
49
|
protected _handleClick: () => void;
|
|
49
50
|
protected _renderToggleTipLabel: () => import("lit-html").TemplateResult<1>;
|
|
50
51
|
protected _renderTooltipButton: () => import("lit-html").TemplateResult<1>;
|
|
51
52
|
protected _renderInnerContent: () => import("lit-html").TemplateResult<1>;
|
|
52
53
|
attributeChangedCallback(name: any, old: any, newValue: any): void;
|
|
53
|
-
static styles: any;
|
|
54
54
|
}
|
|
55
55
|
export default CDSAILabel;
|
|
@@ -7,10 +7,12 @@
|
|
|
7
7
|
|
|
8
8
|
import { __decorate } from 'tslib';
|
|
9
9
|
import { classMap } from 'lit/directives/class-map.js';
|
|
10
|
-
import { html } from 'lit';
|
|
10
|
+
import { html, adoptStyles } from 'lit';
|
|
11
11
|
import { property } from 'lit/decorators.js';
|
|
12
12
|
import { prefix } from '../../globals/settings.js';
|
|
13
13
|
import CDSToggleTip from '../toggle-tip/toggletip.js';
|
|
14
|
+
import popoverStyles from '../popover/popover.scss.js';
|
|
15
|
+
import toggletipStyles from '../toggle-tip/toggletip.scss.js';
|
|
14
16
|
import styles from './ai-label.scss.js';
|
|
15
17
|
import Undo16 from '@carbon/icons/es/undo/16.js';
|
|
16
18
|
import { AI_LABEL_KIND, AI_LABEL_SIZE } from './defs.js';
|
|
@@ -122,6 +124,14 @@ let CDSAILabel = class CDSAILabel extends CDSToggleTip {
|
|
|
122
124
|
`;
|
|
123
125
|
};
|
|
124
126
|
}
|
|
127
|
+
connectedCallback() {
|
|
128
|
+
super.connectedCallback();
|
|
129
|
+
adoptStyles(this.renderRoot, [
|
|
130
|
+
popoverStyles,
|
|
131
|
+
toggletipStyles,
|
|
132
|
+
styles,
|
|
133
|
+
]);
|
|
134
|
+
}
|
|
125
135
|
attributeChangedCallback(name, old, newValue) {
|
|
126
136
|
var _a;
|
|
127
137
|
super.attributeChangedCallback(name, old, newValue);
|
|
@@ -131,7 +141,6 @@ let CDSAILabel = class CDSAILabel extends CDSToggleTip {
|
|
|
131
141
|
name === 'revert-active' ? (_a = this.parentElement) === null || _a === void 0 ? void 0 : _a.requestUpdate() : ``;
|
|
132
142
|
}
|
|
133
143
|
};
|
|
134
|
-
CDSAILabel.styles = styles;
|
|
135
144
|
__decorate([
|
|
136
145
|
property({ reflect: true })
|
|
137
146
|
], CDSAILabel.prototype, "slot", void 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-label.js","sources":["../../../src/components/ai-label/ai-label.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2024\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { classMap } from 'lit/directives/class-map.js';\nimport { html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport CDSToggleTip from '../toggle-tip/toggletip';\nimport styles from './ai-label.scss?lit';\nimport Undo16 from '@carbon/icons/es/undo/16.js';\nimport { AI_LABEL_SIZE, AI_LABEL_KIND } from './defs';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\nimport { iconLoader } from '../../globals/internal/icon-loader';\n\n/**\n * Basic AI Label.\n *\n * @element cds-custom-ai-label\n */\n@customElement(`${prefix}-ai-label`)\nclass CDSAILabel extends CDSToggleTip {\n /**\n * @deprecated the slot string will be renamed to \"decorator\"\n */\n @property({ reflect: true })\n slot = 'ai-label';\n\n /**\n * Specify the correct translation of the AI text\n */\n @property({ attribute: 'ai-text' })\n aiText = 'AI';\n\n /**\n * Specify additional text to be rendered next to the AI label in the inline variant\n */\n @property({ attribute: 'ai-text-label' })\n aiTextLabel = '';\n\n /**\n * Specify the type of AI Label, from the following list of types: (default, inline)\n */\n @property({ reflect: true })\n kind = AI_LABEL_KIND.DEFAULT;\n\n /**\n * Specify whether the revert button should be visible\n */\n @property({ type: Boolean, attribute: 'revert-active' })\n revertActive = false;\n\n /**\n * Specify whether the revert button should be visible\n */\n @property({ attribute: 'revert-label' })\n revertLabel = 'Revert to AI input';\n\n /**\n * AI Label size should be mini, 2xs, xs, sm, md, lg, xl.\n */\n @property({ reflect: true })\n size = AI_LABEL_SIZE.EXTRA_SMALL;\n\n /**\n * Specify the text that will be provided to the aria-label of the `AI Label` button\n */\n @property({ attribute: 'button-label' })\n buttonLabel = 'Show information';\n\n @property()\n previousValue;\n\n protected _handleClick = () => {\n if (this.revertActive) {\n this.revertActive = false;\n this.removeAttribute('revert-active');\n } else {\n super._handleClick();\n }\n };\n\n protected _renderToggleTipLabel = () => {\n return html``;\n };\n\n protected _renderTooltipButton = () => {\n const { size, kind, aiText, aiTextLabel, buttonLabel } = this;\n const ariaLabel = `${aiText} - ${buttonLabel}`;\n const classes = classMap({\n [`${prefix}--toggletip-button`]: true,\n [`${prefix}--slug__button`]: true,\n [`${prefix}--slug__button--${size}`]: size,\n [`${prefix}--slug__button--${kind}`]: kind,\n [`${prefix}--slug__button--inline-with-content`]:\n kind === AI_LABEL_KIND.INLINE && aiTextLabel,\n });\n return html`\n <button\n aria-controls=\"${this.id}\"\n @click=\"${this._handleClick}\"\n class=${classes}\n aria-label=\"${ariaLabel}\">\n <span class=\"${prefix}--slug__text\">${aiText}</span>\n ${aiTextLabel && kind === AI_LABEL_KIND.INLINE\n ? html`\n <span class=\"${prefix}--slug__additional-text\">\n ${aiTextLabel}\n </span>\n `\n : ``}\n </button>\n `;\n };\n\n protected _renderInnerContent = () => {\n const { autoalign, revertActive, revertLabel } = this;\n return html`\n ${revertActive\n ? html`\n <cds-custom-icon-button\n ?autoalign=${autoalign}\n kind=\"ghost\"\n size=\"sm\"\n @click=\"${this._handleClick}\">\n <span slot=\"tooltip-content\"> ${revertLabel} </span>\n ${iconLoader(Undo16, { slot: 'icon' })}\n </cds-custom-icon-button>\n `\n : html`\n ${this._renderTooltipButton()} ${this._renderTooltipContent()}\n `}\n `;\n };\n\n attributeChangedCallback(name, old, newValue) {\n super.attributeChangedCallback(name, old, newValue);\n\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- https://github.com/carbon-design-system/carbon/issues/20452\n //@ts-ignore typescript does not think requestUpdate() exists on parentElement\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions -- https://github.com/carbon-design-system/carbon/issues/20452\n name === 'revert-active' ? this.parentElement?.requestUpdate() : ``;\n }\n
|
|
1
|
+
{"version":3,"file":"ai-label.js","sources":["../../../src/components/ai-label/ai-label.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2019, 2024\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { classMap } from 'lit/directives/class-map.js';\nimport { adoptStyles, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport CDSToggleTip from '../toggle-tip/toggletip';\nimport popoverStyles from '../popover/popover.scss?lit';\nimport toggletipStyles from '../toggle-tip/toggletip.scss?lit';\nimport styles from './ai-label.scss?lit';\nimport Undo16 from '@carbon/icons/es/undo/16.js';\nimport { AI_LABEL_SIZE, AI_LABEL_KIND } from './defs';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\nimport { iconLoader } from '../../globals/internal/icon-loader';\n\n/**\n * Basic AI Label.\n *\n * @element cds-custom-ai-label\n */\n@customElement(`${prefix}-ai-label`)\nclass CDSAILabel extends CDSToggleTip {\n /**\n * @deprecated the slot string will be renamed to \"decorator\"\n */\n @property({ reflect: true })\n slot = 'ai-label';\n\n /**\n * Specify the correct translation of the AI text\n */\n @property({ attribute: 'ai-text' })\n aiText = 'AI';\n\n /**\n * Specify additional text to be rendered next to the AI label in the inline variant\n */\n @property({ attribute: 'ai-text-label' })\n aiTextLabel = '';\n\n /**\n * Specify the type of AI Label, from the following list of types: (default, inline)\n */\n @property({ reflect: true })\n kind = AI_LABEL_KIND.DEFAULT;\n\n /**\n * Specify whether the revert button should be visible\n */\n @property({ type: Boolean, attribute: 'revert-active' })\n revertActive = false;\n\n /**\n * Specify whether the revert button should be visible\n */\n @property({ attribute: 'revert-label' })\n revertLabel = 'Revert to AI input';\n\n /**\n * AI Label size should be mini, 2xs, xs, sm, md, lg, xl.\n */\n @property({ reflect: true })\n size = AI_LABEL_SIZE.EXTRA_SMALL;\n\n /**\n * Specify the text that will be provided to the aria-label of the `AI Label` button\n */\n @property({ attribute: 'button-label' })\n buttonLabel = 'Show information';\n\n @property()\n previousValue;\n\n connectedCallback() {\n super.connectedCallback();\n\n adoptStyles(this.renderRoot as ShadowRoot, [\n popoverStyles,\n toggletipStyles,\n styles,\n ]);\n }\n\n protected _handleClick = () => {\n if (this.revertActive) {\n this.revertActive = false;\n this.removeAttribute('revert-active');\n } else {\n super._handleClick();\n }\n };\n\n protected _renderToggleTipLabel = () => {\n return html``;\n };\n\n protected _renderTooltipButton = () => {\n const { size, kind, aiText, aiTextLabel, buttonLabel } = this;\n const ariaLabel = `${aiText} - ${buttonLabel}`;\n const classes = classMap({\n [`${prefix}--toggletip-button`]: true,\n [`${prefix}--slug__button`]: true,\n [`${prefix}--slug__button--${size}`]: size,\n [`${prefix}--slug__button--${kind}`]: kind,\n [`${prefix}--slug__button--inline-with-content`]:\n kind === AI_LABEL_KIND.INLINE && aiTextLabel,\n });\n return html`\n <button\n aria-controls=\"${this.id}\"\n @click=\"${this._handleClick}\"\n class=${classes}\n aria-label=\"${ariaLabel}\">\n <span class=\"${prefix}--slug__text\">${aiText}</span>\n ${aiTextLabel && kind === AI_LABEL_KIND.INLINE\n ? html`\n <span class=\"${prefix}--slug__additional-text\">\n ${aiTextLabel}\n </span>\n `\n : ``}\n </button>\n `;\n };\n\n protected _renderInnerContent = () => {\n const { autoalign, revertActive, revertLabel } = this;\n return html`\n ${revertActive\n ? html`\n <cds-custom-icon-button\n ?autoalign=${autoalign}\n kind=\"ghost\"\n size=\"sm\"\n @click=\"${this._handleClick}\">\n <span slot=\"tooltip-content\"> ${revertLabel} </span>\n ${iconLoader(Undo16, { slot: 'icon' })}\n </cds-custom-icon-button>\n `\n : html`\n ${this._renderTooltipButton()} ${this._renderTooltipContent()}\n `}\n `;\n };\n\n attributeChangedCallback(name, old, newValue) {\n super.attributeChangedCallback(name, old, newValue);\n\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment -- https://github.com/carbon-design-system/carbon/issues/20452\n //@ts-ignore typescript does not think requestUpdate() exists on parentElement\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions -- https://github.com/carbon-design-system/carbon/issues/20452\n name === 'revert-active' ? this.parentElement?.requestUpdate() : ``;\n }\n}\n\nexport default CDSAILabel;\n"],"names":["customElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;;;;AAKG;AAeH;;;;AAIG;AAEH,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,YAAY,CAAA;AAArC,IAAA,WAAA,GAAA;;AACE;;AAEG;QAEH,IAAA,CAAA,IAAI,GAAG,UAAU;AAEjB;;AAEG;QAEH,IAAA,CAAA,MAAM,GAAG,IAAI;AAEb;;AAEG;QAEH,IAAA,CAAA,WAAW,GAAG,EAAE;AAEhB;;AAEG;AAEH,QAAA,IAAA,CAAA,IAAI,GAAG,aAAa,CAAC,OAAO;AAE5B;;AAEG;QAEH,IAAA,CAAA,YAAY,GAAG,KAAK;AAEpB;;AAEG;QAEH,IAAA,CAAA,WAAW,GAAG,oBAAoB;AAElC;;AAEG;AAEH,QAAA,IAAA,CAAA,IAAI,GAAG,aAAa,CAAC,WAAW;AAEhC;;AAEG;QAEH,IAAA,CAAA,WAAW,GAAG,kBAAkB;QAetB,IAAA,CAAA,YAAY,GAAG,MAAK;AAC5B,YAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,gBAAA,IAAI,CAAC,YAAY,GAAG,KAAK;AACzB,gBAAA,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC;YACvC;iBAAO;gBACL,KAAK,CAAC,YAAY,EAAE;YACtB;AACF,QAAA,CAAC;QAES,IAAA,CAAA,qBAAqB,GAAG,MAAK;YACrC,OAAO,IAAI,CAAA,CAAA,CAAE;AACf,QAAA,CAAC;QAES,IAAA,CAAA,oBAAoB,GAAG,MAAK;AACpC,YAAA,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,IAAI;AAC7D,YAAA,MAAM,SAAS,GAAG,CAAA,EAAG,MAAM,CAAA,GAAA,EAAM,WAAW,EAAE;YAC9C,MAAM,OAAO,GAAG,QAAQ,CAAC;AACvB,gBAAA,CAAC,CAAA,EAAG,MAAM,CAAA,kBAAA,CAAoB,GAAG,IAAI;AACrC,gBAAA,CAAC,CAAA,EAAG,MAAM,CAAA,cAAA,CAAgB,GAAG,IAAI;AACjC,gBAAA,CAAC,GAAG,MAAM,CAAA,gBAAA,EAAmB,IAAI,CAAA,CAAE,GAAG,IAAI;AAC1C,gBAAA,CAAC,GAAG,MAAM,CAAA,gBAAA,EAAmB,IAAI,CAAA,CAAE,GAAG,IAAI;gBAC1C,CAAC,CAAA,EAAG,MAAM,CAAA,mCAAA,CAAqC,GAC7C,IAAI,KAAK,aAAa,CAAC,MAAM,IAAI,WAAW;AAC/C,aAAA,CAAC;AACF,YAAA,OAAO,IAAI,CAAA;;AAEU,uBAAA,EAAA,IAAI,CAAC,EAAE,CAAA;AACd,gBAAA,EAAA,IAAI,CAAC,YAAY,CAAA;gBACnB,OAAO;sBACD,SAAS,CAAA;AACR,qBAAA,EAAA,MAAM,iBAAiB,MAAM,CAAA;AAC1C,QAAA,EAAA,WAAW,IAAI,IAAI,KAAK,aAAa,CAAC;kBACpC,IAAI,CAAA;6BACa,MAAM,CAAA;kBACjB,WAAW;;AAEhB,YAAA;AACH,kBAAE,CAAA,CAAE;;KAET;AACH,QAAA,CAAC;QAES,IAAA,CAAA,mBAAmB,GAAG,MAAK;YACnC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,IAAI;AACrD,YAAA,OAAO,IAAI,CAAA;QACP;kBACE,IAAI,CAAA;;2BAEa,SAAS;;;AAGZ,sBAAA,EAAA,IAAI,CAAC,YAAY,CAAA;8CACK,WAAW,CAAA;gBACzC,UAAU,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;AAEzC,UAAA;kBACD,IAAI,CAAA;AACA,YAAA,EAAA,IAAI,CAAC,oBAAoB,EAAE,IAAI,IAAI,CAAC,qBAAqB,EAAE;AAC9D,UAAA,CAAA;KACN;AACH,QAAA,CAAC;IAUH;IAhFE,iBAAiB,GAAA;QACf,KAAK,CAAC,iBAAiB,EAAE;AAEzB,QAAA,WAAW,CAAC,IAAI,CAAC,UAAwB,EAAE;YACzC,aAAa;YACb,eAAe;YACf,MAAM;AACP,SAAA,CAAC;IACJ;AAgEA,IAAA,wBAAwB,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAA;;QAC1C,KAAK,CAAC,wBAAwB,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,CAAC;;;;AAKnD,QAAA,IAAI,KAAK,eAAe,GAAG,MAAA,IAAI,CAAC,aAAa,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,aAAa,EAAE,GAAG,EAAE;IACrE;CACD;AA/HC,UAAA,CAAA;AADC,IAAA,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;AACT,CAAA,EAAA,UAAA,CAAA,SAAA,EAAA,MAAA,EAAA,MAAA,CAAA;AAMlB,UAAA,CAAA;AADC,IAAA,QAAQ,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE;AACpB,CAAA,EAAA,UAAA,CAAA,SAAA,EAAA,QAAA,EAAA,MAAA,CAAA;AAMd,UAAA,CAAA;AADC,IAAA,QAAQ,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE;AACvB,CAAA,EAAA,UAAA,CAAA,SAAA,EAAA,aAAA,EAAA,MAAA,CAAA;AAMjB,UAAA,CAAA;AADC,IAAA,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;AACE,CAAA,EAAA,UAAA,CAAA,SAAA,EAAA,MAAA,EAAA,MAAA,CAAA;AAM7B,UAAA,CAAA;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE;AAClC,CAAA,EAAA,UAAA,CAAA,SAAA,EAAA,cAAA,EAAA,MAAA,CAAA;AAMrB,UAAA,CAAA;AADC,IAAA,QAAQ,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE;AACJ,CAAA,EAAA,UAAA,CAAA,SAAA,EAAA,aAAA,EAAA,MAAA,CAAA;AAMnC,UAAA,CAAA;AADC,IAAA,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;AACM,CAAA,EAAA,UAAA,CAAA,SAAA,EAAA,MAAA,EAAA,MAAA,CAAA;AAMjC,UAAA,CAAA;AADC,IAAA,QAAQ,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE;AACN,CAAA,EAAA,UAAA,CAAA,SAAA,EAAA,aAAA,EAAA,MAAA,CAAA;AAGjC,UAAA,CAAA;AADC,IAAA,QAAQ;AACK,CAAA,EAAA,UAAA,CAAA,SAAA,EAAA,eAAA,EAAA,MAAA,CAAA;AAlDV,UAAU,GAAA,UAAA,CAAA;AADf,IAAAA,aAAa,CAAC,CAAA,EAAG,MAAM,CAAA,SAAA,CAAW;AAC7B,CAAA,EAAA,UAAU,CAoIf;AAED,mBAAe,UAAU;;;;"}
|