@carbon/web-components 2.4.0-rc.0 → 2.4.0-rc.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/custom-elements.json +108 -0
- package/dist/16-2aa048a9.js +11 -8
- package/dist/16-44367639.js +11 -8
- package/dist/16-880e779e.js +11 -8
- package/dist/16-8ab58ede.js +11 -8
- package/dist/16-945f9ad8.js +11 -8
- package/dist/16-9bdb8b2e.js +11 -8
- package/dist/16-afc2ad08.js +11 -8
- package/dist/16-f2df91a2.js +11 -8
- package/dist/20-c1834a3b.js +11 -8
- package/dist/accordion.min.js +11 -8
- package/dist/ai-skeleton.min.js +11 -8
- package/dist/breadcrumb.min.js +11 -8
- package/dist/button-dade8f28.js +11 -8
- package/dist/button-set-5f5affa0.js +11 -8
- package/dist/button-skeleton-7325ea56.js +11 -8
- package/dist/button.min.js +11 -8
- package/dist/carbon-element-4ca9803f.js +11 -8
- package/dist/chat-button.min.js +11 -8
- package/dist/checkbox-a610152a.js +11 -8
- package/dist/checkbox.min.js +11 -8
- package/dist/class-map-b1739c02.js +11 -8
- package/dist/code-snippet.min.js +12 -9
- package/dist/collection-helpers-4e32fe16.js +11 -8
- package/dist/combo-box.min.js +11 -8
- package/dist/content-switcher-item-9714594a.js +11 -8
- package/dist/content-switcher.min.js +11 -8
- package/dist/{copy-button-1310f02a.js → copy-button-e4f754c9.js} +12 -9
- package/dist/copy-button.min.js +12 -9
- package/dist/custom-element-975be15f.js +11 -8
- package/dist/data-table.min.js +12 -9
- package/dist/date-picker.min.js +11 -8
- package/dist/directive-e2d48b9c.js +11 -8
- package/dist/dropdown-item-cc7cc1dc.js +11 -8
- package/dist/dropdown.min.js +11 -8
- package/dist/file-uploader.min.js +11 -8
- package/dist/floating-menu-6ec5c7fa.js +11 -8
- package/dist/floating-menu.min.js +11 -8
- package/dist/floating-ui-a76fcefc.js +69 -0
- package/dist/focus-92d82b5f.js +11 -8
- package/dist/form-group.min.js +11 -8
- package/dist/form.min.js +11 -8
- package/dist/get-d229c408.js +11 -8
- package/dist/host-listener-a948931e.js +11 -8
- package/dist/{icon-button-7b2540b4.js → icon-button-ab6ad963.js} +16 -12
- package/dist/icon-button.min.js +12 -9
- package/dist/if-defined-b99f5484.js +11 -8
- package/dist/if-non-empty-d69cc3f0.js +11 -8
- package/dist/inline-loading.min.js +11 -8
- package/dist/layer-62995057.js +11 -8
- package/dist/layer.min.js +11 -8
- package/dist/link-d5d53be2.js +11 -8
- package/dist/link.min.js +11 -8
- package/dist/list.min.js +11 -8
- package/dist/loading-0dcb7680.js +11 -8
- package/dist/loading-icon-2ac6de26.js +11 -8
- package/dist/loading.min.js +11 -8
- package/dist/modal.min.js +11 -8
- package/dist/multi-select.min.js +11 -8
- package/dist/notification.min.js +11 -8
- package/dist/number-input.min.js +11 -8
- package/dist/objectSpread2-0b7e8561.js +11 -8
- package/dist/on-6c264d49.js +11 -8
- package/dist/overflow-menu.min.js +12 -9
- package/dist/pagination.min.js +11 -8
- package/dist/popover-content-620200e8.js +75 -0
- package/dist/popover.min.js +12 -9
- package/dist/progress-bar.min.js +11 -8
- package/dist/progress-indicator.min.js +11 -8
- package/dist/query-6ca5e414.js +11 -8
- package/dist/query-assigned-elements-8e88277c.js +11 -8
- package/dist/radio-button.min.js +11 -8
- package/dist/radio-group-manager-3cfdd620.js +11 -8
- package/dist/search-4c0e8630.js +11 -8
- package/dist/search.min.js +11 -8
- package/dist/select-item-db3c6fa0.js +11 -8
- package/dist/select.min.js +11 -8
- package/dist/settings-387c0fa4.js +11 -8
- package/dist/shared-enums-c6fe8c39.js +11 -8
- package/dist/side-panel.min.js +11 -8
- package/dist/skeleton-icon-451d3c47.js +11 -8
- package/dist/skeleton-icon.min.js +11 -8
- package/dist/skeleton-placeholder-e6490dbd.js +11 -8
- package/dist/skeleton-placeholder.min.js +11 -8
- package/dist/skeleton-text-eeac3c87.js +11 -8
- package/dist/skeleton-text.min.js +11 -8
- package/dist/skip-to-content.min.js +11 -8
- package/dist/slider.min.js +11 -8
- package/dist/slug.min.js +18 -14
- package/dist/spread-6af5f657.js +11 -8
- package/dist/stack.min.js +11 -8
- package/dist/state-63312e74.js +11 -8
- package/dist/structured-list.min.js +11 -8
- package/dist/tabs.min.js +12 -9
- package/dist/tag.min.js +11 -8
- package/dist/text-input-8d011ae2.js +11 -8
- package/dist/text-input.min.js +11 -8
- package/dist/textarea.min.js +11 -8
- package/dist/tile.min.js +11 -8
- package/dist/toggle-tip.min.js +12 -9
- package/dist/toggle.min.js +11 -8
- package/dist/toggletip-17030a2a.js +114 -0
- package/dist/{tooltip-content-fbce4fed.js → tooltip-content-45723618.js} +12 -9
- package/dist/tooltip.min.js +12 -9
- package/dist/ui-shell.min.js +11 -8
- package/dist/validity-d86ffa4f.js +11 -8
- package/es/components/data-table/data-table.css.js +1 -1
- package/es/components/icon-button/icon-button.css.js +1 -1
- package/es/components/icon-button/icon-button.d.ts +5 -1
- package/es/components/icon-button/icon-button.js +18 -2
- package/es/components/icon-button/icon-button.js.map +1 -1
- package/es/components/popover/defs.d.ts +50 -2
- package/es/components/popover/defs.js +9 -2
- package/es/components/popover/defs.js.map +1 -1
- package/es/components/popover/popover-content.d.ts +5 -1
- package/es/components/popover/popover-content.js +32 -9
- package/es/components/popover/popover-content.js.map +1 -1
- package/es/components/popover/popover.css.js +1 -1
- package/es/components/popover/popover.d.ts +23 -1
- package/es/components/popover/popover.js +80 -4
- package/es/components/popover/popover.js.map +1 -1
- package/es/components/slug/slug.css.js +1 -1
- package/es/components/slug/slug.d.ts +1 -1
- package/es/components/slug/slug.js +5 -3
- package/es/components/slug/slug.js.map +1 -1
- package/es/components/tabs/tabs.css.js +1 -1
- package/es/components/toggle-tip/toggletip.css.js +1 -1
- package/es/components/toggle-tip/toggletip.d.ts +20 -0
- package/es/components/toggle-tip/toggletip.js +106 -17
- package/es/components/toggle-tip/toggletip.js.map +1 -1
- package/es/components/tooltip/tooltip.css.js +1 -1
- package/es/components/tooltip/tooltip.d.ts +5 -1
- package/es/components/tooltip/tooltip.js +17 -2
- package/es/components/tooltip/tooltip.js.map +1 -1
- package/es/globals/internal/floating-ui.d.ts +30 -0
- package/es/globals/internal/floating-ui.js +102 -0
- package/es/globals/internal/floating-ui.js.map +1 -0
- package/lib/components/popover/defs.js +9 -1
- package/lib/components/popover/defs.js.map +1 -1
- package/package.json +3 -2
- package/scss/components/data-table/_table-core.scss +0 -1
- package/scss/components/popover/popover.scss +83 -64
- package/scss/components/slug/slug.scss +162 -28
- package/scss/components/tabs/tabs.scss +1 -1
- package/scss/components/toggle-tip/toggletip.scss +13 -1
- package/dist/popover-content-e0c3132f.js +0 -68
- package/dist/toggletip-b2d3b8bf.js +0 -99
|
@@ -6,7 +6,7 @@ let _ = t => t,
|
|
|
6
6
|
/**
|
|
7
7
|
* @license
|
|
8
8
|
*
|
|
9
|
-
* Copyright IBM Corp. 2019,
|
|
9
|
+
* Copyright IBM Corp. 2019, 2024
|
|
10
10
|
*
|
|
11
11
|
* This source code is licensed under the Apache-2.0 license found in the
|
|
12
12
|
* LICENSE file in the root directory of this source tree.
|
|
@@ -46,6 +46,16 @@ let CDSTooltip = _decorate([customElement(`${prefix}-tooltip`)], function (_init
|
|
|
46
46
|
value() {
|
|
47
47
|
return 'top';
|
|
48
48
|
}
|
|
49
|
+
}, {
|
|
50
|
+
kind: "field",
|
|
51
|
+
decorators: [property({
|
|
52
|
+
type: Boolean,
|
|
53
|
+
reflect: true
|
|
54
|
+
})],
|
|
55
|
+
key: "autoalign",
|
|
56
|
+
value() {
|
|
57
|
+
return false;
|
|
58
|
+
}
|
|
49
59
|
}, {
|
|
50
60
|
kind: "field",
|
|
51
61
|
decorators: [property({
|
|
@@ -195,6 +205,10 @@ let CDSTooltip = _decorate([customElement(`${prefix}-tooltip`)], function (_init
|
|
|
195
205
|
* Specify how the trigger should align with the tooltip
|
|
196
206
|
*/
|
|
197
207
|
|
|
208
|
+
/**
|
|
209
|
+
* Specify whether a auto align functionality should be applied
|
|
210
|
+
*/
|
|
211
|
+
|
|
198
212
|
/**
|
|
199
213
|
* `true` if this tooltip is in a data table row
|
|
200
214
|
*/
|
|
@@ -288,7 +302,7 @@ let CDSTooltip = _decorate([customElement(`${prefix}-tooltip`)], function (_init
|
|
|
288
302
|
if (changedProperties.has('open')) {
|
|
289
303
|
this.open ? toolTipContent === null || toolTipContent === void 0 ? void 0 : toolTipContent.setAttribute('open', '') : toolTipContent === null || toolTipContent === void 0 ? void 0 : toolTipContent.removeAttribute('open');
|
|
290
304
|
}
|
|
291
|
-
['align', 'caret'].forEach(name => {
|
|
305
|
+
['align', 'caret', 'autoalign'].forEach(name => {
|
|
292
306
|
if (changedProperties.has(name)) {
|
|
293
307
|
const {
|
|
294
308
|
[name]: value
|
|
@@ -297,6 +311,7 @@ let CDSTooltip = _decorate([customElement(`${prefix}-tooltip`)], function (_init
|
|
|
297
311
|
}
|
|
298
312
|
});
|
|
299
313
|
(_this$shadowRoot = this.shadowRoot) === null || _this$shadowRoot === void 0 || (_this$shadowRoot = _this$shadowRoot.querySelector(`.${prefix}--popover-container`)) === null || _this$shadowRoot === void 0 || _this$shadowRoot.classList.add(`${prefix}--tooltip`);
|
|
314
|
+
_get(_getPrototypeOf(CDSTooltip.prototype), "updated", this).call(this, changedProperties);
|
|
300
315
|
}
|
|
301
316
|
|
|
302
317
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tooltip.js","names":["css","property","prefix","HostListener","HostListenerMixin","CDSPopover","styles","carbonElement","customElement","CDSTooltip","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","decorators","reflect","type","String","key","value","Boolean","attribute","Number","window","clearTimeout","timeoutId","setTimeout","open","updateComplete","_this$querySelector","selectorTooltipContent","querySelector","focus","enterDelayMs","leaveDelayMs","closeOnActivation","_handleHoverOut","event","_handleSlotChange","target","component","assignedNodes","filter","node","nodeType","Node","TEXT_NODE","textContent","trim","addEventListener","_handleHover","requestUpdate","connectedCallback","hasAttribute","setAttribute","shadowRoot","attachShadow","mode","_get","_getPrototypeOf","prototype","call","updated","changedProperties","_this$shadowRoot","toolTipContent","has","defaultOpen","removeAttribute","forEach","name","classList","add","static","_t","_"],"sources":["components/tooltip/tooltip.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\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 { css } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport HostListener from '../../globals/decorators/host-listener';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport CDSPopover from '../popover/popover';\nimport '../popover/popover-content';\nimport styles from './tooltip.scss';\nimport CDSTooltipContent from './tooltip-content';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Trigger button of tooltip.\n *\n * @element cds-tooltip\n */\n@customElement(`${prefix}-tooltip`)\nclass CDSTooltip extends HostListenerMixin(CDSPopover) {\n /**\n * Specify how the trigger should align with the tooltip\n */\n @property({ reflect: true, type: String })\n align = 'top';\n\n /**\n * `true` if this tooltip is in a data table row\n */\n @property({ type: Boolean, reflect: true, attribute: 'data-table' })\n dataTable = false;\n\n /**\n * Specify whether the tooltip should be closed when clicked\n */\n @property({ reflect: true, type: Boolean })\n closeOnActivation = false;\n\n /**\n * Specify whether the tooltip should be open when it first renders\n */\n @property({ reflect: true, type: Boolean })\n defaultOpen = false;\n\n /**\n * Specify the duration in milliseconds to delay before displaying the tooltip\n */\n @property({ attribute: 'enter-delay-ms', type: Number })\n enterDelayMs = 100;\n\n /**\n * Specify the duration in milliseconds to delay before hiding the tooltip\n */\n @property({ attribute: 'leave-delay-ms', type: Number })\n leaveDelayMs = 300;\n\n /**\n * Specify the size of the tooltip\n */\n @property({ reflect: true })\n size = false;\n\n /**\n * Specify the timeout reference for the tooltip\n */\n @property({ reflect: true })\n timeoutId = 0;\n\n /**\n * Specify whether the tooltip should be open when it first renders\n */\n @property({ reflect: true, attribute: 'toolbar-action', type: Boolean })\n toolbarAction = false;\n\n /**\n * Handles `mouseover` event on this element.\n */\n private _handleHover = async () => {\n window.clearTimeout(this.timeoutId);\n this.timeoutId = window.setTimeout(async () => {\n this.open = true;\n const { open, updateComplete } = this;\n if (open) {\n await updateComplete;\n const { selectorTooltipContent } = this\n .constructor as typeof CDSTooltip;\n (this.querySelector(selectorTooltipContent) as HTMLElement)?.focus();\n }\n }, this.enterDelayMs);\n };\n\n /**\n * Handles `mouseleave` event on this element.\n */\n private _handleHoverOut = async () => {\n window.clearTimeout(this.timeoutId);\n this.timeoutId = window.setTimeout(async () => {\n const { open } = this;\n if (open) {\n this.open = false;\n }\n }, this.leaveDelayMs);\n };\n\n /**\n * Handles `click` event on this element.\n */\n @HostListener('click')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleClick = async () => {\n if (this.closeOnActivation) {\n this._handleHoverOut();\n }\n };\n\n /**\n * Handles `keydown` event on this element.\n */\n @HostListener('click')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleKeydown = async (event) => {\n if (event.key === ' ' || event.key === 'Enter' || event.key === 'Escape') {\n this._handleHoverOut();\n }\n };\n\n /**\n * Handles `slotchange` event.\n */\n protected _handleSlotChange({ target }: Event) {\n const component = (target as HTMLSlotElement)\n .assignedNodes()\n .filter(\n (node) => node.nodeType !== Node.TEXT_NODE || node!.textContent!.trim()\n );\n if (!component[0]) {\n return;\n }\n (component[0] as HTMLElement).addEventListener('focus', this._handleHover);\n (component[0] as HTMLElement).addEventListener(\n 'focusout',\n this._handleHoverOut\n );\n (component[0] as HTMLElement).addEventListener(\n 'mouseover',\n this._handleHover\n );\n (component[0] as HTMLElement).addEventListener(\n 'mouseleave',\n this._handleHoverOut\n );\n this.requestUpdate();\n }\n\n connectedCallback() {\n if (!this.hasAttribute('highContrast')) {\n this.setAttribute('highContrast', '');\n }\n if (!this.shadowRoot) {\n this.attachShadow({ mode: 'open' });\n }\n super.connectedCallback();\n }\n\n updated(changedProperties) {\n const { selectorTooltipContent } = this.constructor as typeof CDSTooltip;\n const toolTipContent = this.querySelector(selectorTooltipContent);\n\n if (changedProperties.has('defaultOpen')) {\n this.open = this.defaultOpen;\n }\n\n if (changedProperties.has('open')) {\n this.open\n ? toolTipContent?.setAttribute('open', '')\n : toolTipContent?.removeAttribute('open');\n }\n\n ['align', 'caret'].forEach((name) => {\n if (changedProperties.has(name)) {\n const { [name as keyof CDSTooltip]: value } = this;\n (toolTipContent as CDSTooltipContent)[name] = value;\n }\n });\n\n this.shadowRoot\n ?.querySelector(`.${prefix}--popover-container`)\n ?.classList.add(`${prefix}--tooltip`);\n }\n\n /**\n * A selector that will return the CDSTooltipContent.\n */\n static get selectorTooltipContent() {\n return `${prefix}-tooltip-content`;\n }\n\n static get styles() {\n return css`\n ${super.styles}${styles}\n `;\n } // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default CDSTooltip;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tooltip.js","names":["css","property","prefix","HostListener","HostListenerMixin","CDSPopover","styles","carbonElement","customElement","CDSTooltip","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","decorators","reflect","type","String","key","value","Boolean","attribute","Number","window","clearTimeout","timeoutId","setTimeout","open","updateComplete","_this$querySelector","selectorTooltipContent","querySelector","focus","enterDelayMs","leaveDelayMs","closeOnActivation","_handleHoverOut","event","_handleSlotChange","target","component","assignedNodes","filter","node","nodeType","Node","TEXT_NODE","textContent","trim","addEventListener","_handleHover","requestUpdate","connectedCallback","hasAttribute","setAttribute","shadowRoot","attachShadow","mode","_get","_getPrototypeOf","prototype","call","updated","changedProperties","_this$shadowRoot","toolTipContent","has","defaultOpen","removeAttribute","forEach","name","classList","add","static","_t","_"],"sources":["components/tooltip/tooltip.ts"],"sourcesContent":["/**\n * @license\n *\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 { css } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport HostListener from '../../globals/decorators/host-listener';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport CDSPopover from '../popover/popover';\nimport '../popover/popover-content';\nimport styles from './tooltip.scss';\nimport CDSTooltipContent from './tooltip-content';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Trigger button of tooltip.\n *\n * @element cds-tooltip\n */\n@customElement(`${prefix}-tooltip`)\nclass CDSTooltip extends HostListenerMixin(CDSPopover) {\n /**\n * Specify how the trigger should align with the tooltip\n */\n @property({ reflect: true, type: String })\n align = 'top';\n\n /**\n * Specify whether a auto align functionality should be applied\n */\n @property({ type: Boolean, reflect: true })\n autoalign = false;\n\n /**\n * `true` if this tooltip is in a data table row\n */\n @property({ type: Boolean, reflect: true, attribute: 'data-table' })\n dataTable = false;\n\n /**\n * Specify whether the tooltip should be closed when clicked\n */\n @property({ reflect: true, type: Boolean })\n closeOnActivation = false;\n\n /**\n * Specify whether the tooltip should be open when it first renders\n */\n @property({ reflect: true, type: Boolean })\n defaultOpen = false;\n\n /**\n * Specify the duration in milliseconds to delay before displaying the tooltip\n */\n @property({ attribute: 'enter-delay-ms', type: Number })\n enterDelayMs = 100;\n\n /**\n * Specify the duration in milliseconds to delay before hiding the tooltip\n */\n @property({ attribute: 'leave-delay-ms', type: Number })\n leaveDelayMs = 300;\n\n /**\n * Specify the size of the tooltip\n */\n @property({ reflect: true })\n size = false;\n\n /**\n * Specify the timeout reference for the tooltip\n */\n @property({ reflect: true })\n timeoutId = 0;\n\n /**\n * Specify whether the tooltip should be open when it first renders\n */\n @property({ reflect: true, attribute: 'toolbar-action', type: Boolean })\n toolbarAction = false;\n\n /**\n * Handles `mouseover` event on this element.\n */\n private _handleHover = async () => {\n window.clearTimeout(this.timeoutId);\n this.timeoutId = window.setTimeout(async () => {\n this.open = true;\n const { open, updateComplete } = this;\n if (open) {\n await updateComplete;\n const { selectorTooltipContent } = this\n .constructor as typeof CDSTooltip;\n (this.querySelector(selectorTooltipContent) as HTMLElement)?.focus();\n }\n }, this.enterDelayMs);\n };\n\n /**\n * Handles `mouseleave` event on this element.\n */\n private _handleHoverOut = async () => {\n window.clearTimeout(this.timeoutId);\n this.timeoutId = window.setTimeout(async () => {\n const { open } = this;\n if (open) {\n this.open = false;\n }\n }, this.leaveDelayMs);\n };\n\n /**\n * Handles `click` event on this element.\n */\n @HostListener('click')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleClick = async () => {\n if (this.closeOnActivation) {\n this._handleHoverOut();\n }\n };\n\n /**\n * Handles `keydown` event on this element.\n */\n @HostListener('click')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleKeydown = async (event) => {\n if (event.key === ' ' || event.key === 'Enter' || event.key === 'Escape') {\n this._handleHoverOut();\n }\n };\n\n /**\n * Handles `slotchange` event.\n */\n protected _handleSlotChange({ target }: Event) {\n const component = (target as HTMLSlotElement)\n .assignedNodes()\n .filter(\n (node) => node.nodeType !== Node.TEXT_NODE || node!.textContent!.trim()\n );\n if (!component[0]) {\n return;\n }\n (component[0] as HTMLElement).addEventListener('focus', this._handleHover);\n (component[0] as HTMLElement).addEventListener(\n 'focusout',\n this._handleHoverOut\n );\n (component[0] as HTMLElement).addEventListener(\n 'mouseover',\n this._handleHover\n );\n (component[0] as HTMLElement).addEventListener(\n 'mouseleave',\n this._handleHoverOut\n );\n this.requestUpdate();\n }\n\n connectedCallback() {\n if (!this.hasAttribute('highContrast')) {\n this.setAttribute('highContrast', '');\n }\n if (!this.shadowRoot) {\n this.attachShadow({ mode: 'open' });\n }\n super.connectedCallback();\n }\n\n updated(changedProperties) {\n const { selectorTooltipContent } = this.constructor as typeof CDSTooltip;\n const toolTipContent = this.querySelector(selectorTooltipContent);\n\n if (changedProperties.has('defaultOpen')) {\n this.open = this.defaultOpen;\n }\n\n if (changedProperties.has('open')) {\n this.open\n ? toolTipContent?.setAttribute('open', '')\n : toolTipContent?.removeAttribute('open');\n }\n\n ['align', 'caret', 'autoalign'].forEach((name) => {\n if (changedProperties.has(name)) {\n const { [name as keyof CDSTooltip]: value } = this;\n (toolTipContent as CDSTooltipContent)[name] = value;\n }\n });\n\n this.shadowRoot\n ?.querySelector(`.${prefix}--popover-container`)\n ?.classList.add(`${prefix}--tooltip`);\n\n super.updated(changedProperties);\n }\n\n /**\n * A selector that will return the CDSTooltipContent.\n */\n static get selectorTooltipContent() {\n return `${prefix}-tooltip-content`;\n }\n\n static get styles() {\n return css`\n ${super.styles}${styles}\n `;\n } // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default CDSTooltip;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*
|
|
4
|
+
* Copyright IBM Corp. 2024
|
|
5
|
+
*
|
|
6
|
+
* This source code is licensed under the Apache-2.0 license found in the
|
|
7
|
+
* LICENSE file in the root directory of this source tree.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Utilitize @floating-ui/dom library to compute positioning
|
|
11
|
+
* of tooltip and caret
|
|
12
|
+
*
|
|
13
|
+
* @param object
|
|
14
|
+
* @param {node} object.button trigger element
|
|
15
|
+
* @param {node} object.tooltip tooltip / popover element
|
|
16
|
+
* @param {node} object.arrowElement caret element
|
|
17
|
+
* @param {boolean} object.caret if caret is visible
|
|
18
|
+
* @param {string} object.alignment alignment to display tooltip
|
|
19
|
+
*
|
|
20
|
+
* @returns {string} placement final placement of the tooltip
|
|
21
|
+
*/
|
|
22
|
+
export declare function floatingUIPosition({ button, tooltip, arrowElement, caret, alignment, }: {
|
|
23
|
+
button: any;
|
|
24
|
+
tooltip: any;
|
|
25
|
+
arrowElement: any;
|
|
26
|
+
caret?: boolean | undefined;
|
|
27
|
+
alignment?: string | undefined;
|
|
28
|
+
}): Promise<"left" | "right" | "top" | "bottom" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "left-end" | "left-start" | "right-end" | "right-start">;
|
|
29
|
+
|
|
30
|
+
//# sourceMappingURL=floating-ui.d.ts.map
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*
|
|
4
|
+
* Copyright IBM Corp. 2024
|
|
5
|
+
*
|
|
6
|
+
* This source code is licensed under the Apache-2.0 license found in the
|
|
7
|
+
* LICENSE file in the root directory of this source tree.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import { computePosition, flip, offset, arrow } from '@floating-ui/dom';
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Utilitize @floating-ui/dom library to compute positioning
|
|
14
|
+
* of tooltip and caret
|
|
15
|
+
*
|
|
16
|
+
* @param object
|
|
17
|
+
* @param {node} object.button trigger element
|
|
18
|
+
* @param {node} object.tooltip tooltip / popover element
|
|
19
|
+
* @param {node} object.arrowElement caret element
|
|
20
|
+
* @param {boolean} object.caret if caret is visible
|
|
21
|
+
* @param {string} object.alignment alignment to display tooltip
|
|
22
|
+
*
|
|
23
|
+
* @returns {string} placement final placement of the tooltip
|
|
24
|
+
*/
|
|
25
|
+
export function floatingUIPosition({
|
|
26
|
+
button,
|
|
27
|
+
tooltip,
|
|
28
|
+
arrowElement,
|
|
29
|
+
caret = false,
|
|
30
|
+
alignment = 'bottom'
|
|
31
|
+
}) {
|
|
32
|
+
let shimmedAlign;
|
|
33
|
+
switch (alignment) {
|
|
34
|
+
case 'top-left':
|
|
35
|
+
shimmedAlign = 'top-start';
|
|
36
|
+
break;
|
|
37
|
+
case 'top-right':
|
|
38
|
+
shimmedAlign = 'top-end';
|
|
39
|
+
break;
|
|
40
|
+
case 'bottom-left':
|
|
41
|
+
shimmedAlign = 'bottom-start';
|
|
42
|
+
break;
|
|
43
|
+
case 'bottom-right':
|
|
44
|
+
shimmedAlign = 'bottom-end';
|
|
45
|
+
break;
|
|
46
|
+
case 'left-bottom':
|
|
47
|
+
shimmedAlign = 'left-end';
|
|
48
|
+
break;
|
|
49
|
+
case 'left-top':
|
|
50
|
+
shimmedAlign = 'left-start';
|
|
51
|
+
break;
|
|
52
|
+
case 'right-bottom':
|
|
53
|
+
shimmedAlign = 'right-end';
|
|
54
|
+
break;
|
|
55
|
+
case 'right-top':
|
|
56
|
+
shimmedAlign = 'right-start';
|
|
57
|
+
break;
|
|
58
|
+
default:
|
|
59
|
+
shimmedAlign = alignment;
|
|
60
|
+
break;
|
|
61
|
+
}
|
|
62
|
+
return computePosition(button, tooltip, {
|
|
63
|
+
strategy: 'absolute',
|
|
64
|
+
middleware: [flip({
|
|
65
|
+
fallbackAxisSideDirection: 'start'
|
|
66
|
+
}), offset(caret ? 10 : 0), arrow({
|
|
67
|
+
element: arrowElement,
|
|
68
|
+
padding: 15
|
|
69
|
+
})],
|
|
70
|
+
placement: shimmedAlign
|
|
71
|
+
}).then(({
|
|
72
|
+
x,
|
|
73
|
+
y,
|
|
74
|
+
placement,
|
|
75
|
+
strategy,
|
|
76
|
+
middlewareData
|
|
77
|
+
}) => {
|
|
78
|
+
tooltip.style.left = `${x}px`;
|
|
79
|
+
tooltip.style.top = `${y}px`;
|
|
80
|
+
tooltip.style.position = `${strategy}`;
|
|
81
|
+
if (arrowElement) {
|
|
82
|
+
// @ts-ignore
|
|
83
|
+
const {
|
|
84
|
+
x: arrowX,
|
|
85
|
+
y: arrowY
|
|
86
|
+
} = middlewareData.arrow;
|
|
87
|
+
const staticSide = {
|
|
88
|
+
top: 'bottom',
|
|
89
|
+
right: 'left',
|
|
90
|
+
bottom: 'top',
|
|
91
|
+
left: 'right'
|
|
92
|
+
}[placement.split('-')[0]];
|
|
93
|
+
arrowElement.style.left = arrowX != null ? `${arrowX}px` : '';
|
|
94
|
+
arrowElement.style.top = arrowY != null ? `${arrowY}px` : '';
|
|
95
|
+
arrowElement.style.right = '';
|
|
96
|
+
arrowElement.style.bottom = '';
|
|
97
|
+
arrowElement.style[staticSide] = `${-arrowElement.offsetWidth / 2}px`;
|
|
98
|
+
}
|
|
99
|
+
return placement;
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=floating-ui.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"floating-ui.js","names":["computePosition","flip","offset","arrow","floatingUIPosition","button","tooltip","arrowElement","caret","alignment","shimmedAlign","strategy","middleware","fallbackAxisSideDirection","element","padding","placement","then","x","y","middlewareData","style","left","top","position","arrowX","arrowY","staticSide","right","bottom","split","offsetWidth"],"sources":["globals/internal/floating-ui.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 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 {\n computePosition,\n flip,\n offset,\n arrow,\n Placement,\n} from '@floating-ui/dom';\n\n/**\n * Utilitize @floating-ui/dom library to compute positioning\n * of tooltip and caret\n *\n * @param object\n * @param {node} object.button trigger element\n * @param {node} object.tooltip tooltip / popover element\n * @param {node} object.arrowElement caret element\n * @param {boolean} object.caret if caret is visible\n * @param {string} object.alignment alignment to display tooltip\n *\n * @returns {string} placement final placement of the tooltip\n */\nexport function floatingUIPosition({\n button,\n tooltip,\n arrowElement,\n caret = false,\n alignment = 'bottom',\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\n return computePosition(button, tooltip, {\n strategy: 'absolute',\n middleware: [\n flip({ fallbackAxisSideDirection: 'start' }),\n offset(caret ? 10 : 0),\n arrow({ element: arrowElement, padding: 15 }),\n ],\n placement: shimmedAlign as Placement,\n }).then(({ x, y, placement, strategy, middlewareData }) => {\n tooltip.style.left = `${x}px`;\n tooltip.style.top = `${y}px`;\n tooltip.style.position = `${strategy}`;\n\n if (arrowElement) {\n // @ts-ignore\n const { x: arrowX, y: arrowY } = middlewareData.arrow;\n\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 return placement;\n });\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SACEA,eAAe,EACfC,IAAI,EACJC,MAAM,EACNC,KAAK,QAEA,kBAAkB;;AAEzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,kBAAkBA,CAAC;EACjCC,MAAM;EACNC,OAAO;EACPC,YAAY;EACZC,KAAK,GAAG,KAAK;EACbC,SAAS,GAAG;AACd,CAAC,EAAE;EACD,IAAIC,YAAY;EAChB,QAAQD,SAAS;IACf,KAAK,UAAU;MACbC,YAAY,GAAG,WAAW;MAC1B;IACF,KAAK,WAAW;MACdA,YAAY,GAAG,SAAS;MACxB;IACF,KAAK,aAAa;MAChBA,YAAY,GAAG,cAAc;MAC7B;IACF,KAAK,cAAc;MACjBA,YAAY,GAAG,YAAY;MAC3B;IACF,KAAK,aAAa;MAChBA,YAAY,GAAG,UAAU;MACzB;IACF,KAAK,UAAU;MACbA,YAAY,GAAG,YAAY;MAC3B;IACF,KAAK,cAAc;MACjBA,YAAY,GAAG,WAAW;MAC1B;IACF,KAAK,WAAW;MACdA,YAAY,GAAG,aAAa;MAC5B;IACF;MACEA,YAAY,GAAGD,SAAS;MACxB;EACJ;EAEA,OAAOT,eAAe,CAACK,MAAM,EAAEC,OAAO,EAAE;IACtCK,QAAQ,EAAE,UAAU;IACpBC,UAAU,EAAE,CACVX,IAAI,CAAC;MAAEY,yBAAyB,EAAE;IAAQ,CAAC,CAAC,EAC5CX,MAAM,CAACM,KAAK,GAAG,EAAE,GAAG,CAAC,CAAC,EACtBL,KAAK,CAAC;MAAEW,OAAO,EAAEP,YAAY;MAAEQ,OAAO,EAAE;IAAG,CAAC,CAAC,CAC9C;IACDC,SAAS,EAAEN;EACb,CAAC,CAAC,CAACO,IAAI,CAAC,CAAC;IAAEC,CAAC;IAAEC,CAAC;IAAEH,SAAS;IAAEL,QAAQ;IAAES;EAAe,CAAC,KAAK;IACzDd,OAAO,CAACe,KAAK,CAACC,IAAI,GAAI,GAAEJ,CAAE,IAAG;IAC7BZ,OAAO,CAACe,KAAK,CAACE,GAAG,GAAI,GAAEJ,CAAE,IAAG;IAC5Bb,OAAO,CAACe,KAAK,CAACG,QAAQ,GAAI,GAAEb,QAAS,EAAC;IAEtC,IAAIJ,YAAY,EAAE;MAChB;MACA,MAAM;QAAEW,CAAC,EAAEO,MAAM;QAAEN,CAAC,EAAEO;MAAO,CAAC,GAAGN,cAAc,CAACjB,KAAK;MAErD,MAAMwB,UAAe,GAAG;QACtBJ,GAAG,EAAE,QAAQ;QACbK,KAAK,EAAE,MAAM;QACbC,MAAM,EAAE,KAAK;QACbP,IAAI,EAAE;MACR,CAAC,CAACN,SAAS,CAACc,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;MAE1BvB,YAAY,CAACc,KAAK,CAACC,IAAI,GAAGG,MAAM,IAAI,IAAI,GAAI,GAAEA,MAAO,IAAG,GAAG,EAAE;MAC7DlB,YAAY,CAACc,KAAK,CAACE,GAAG,GAAGG,MAAM,IAAI,IAAI,GAAI,GAAEA,MAAO,IAAG,GAAG,EAAE;MAC5DnB,YAAY,CAACc,KAAK,CAACO,KAAK,GAAG,EAAE;MAC7BrB,YAAY,CAACc,KAAK,CAACQ,MAAM,GAAG,EAAE;MAC9BtB,YAAY,CAACc,KAAK,CAACM,UAAU,CAAC,GAAI,GAAE,CAACpB,YAAY,CAACwB,WAAW,GAAG,CAAE,IAAG;IACvE;IACA,OAAOf,SAAS;EAClB,CAAC,CAAC;AACJ"}
|
|
@@ -7,7 +7,7 @@ exports.POPOVER_ALIGNMENT = void 0;
|
|
|
7
7
|
/**
|
|
8
8
|
* @license
|
|
9
9
|
*
|
|
10
|
-
* Copyright IBM Corp. 2020,
|
|
10
|
+
* Copyright IBM Corp. 2020, 2024
|
|
11
11
|
*
|
|
12
12
|
* This source code is licensed under the Apache-2.0 license found in the
|
|
13
13
|
* LICENSE file in the root directory of this source tree.
|
|
@@ -20,14 +20,22 @@ let POPOVER_ALIGNMENT = exports.POPOVER_ALIGNMENT = void 0;
|
|
|
20
20
|
POPOVER_ALIGNMENT["TOP"] = "top";
|
|
21
21
|
POPOVER_ALIGNMENT["TOP_LEFT"] = "top-left";
|
|
22
22
|
POPOVER_ALIGNMENT["TOP_RIGHT"] = "top-right";
|
|
23
|
+
POPOVER_ALIGNMENT["TOP_START"] = "top-start";
|
|
24
|
+
POPOVER_ALIGNMENT["TOP_END"] = "top-end";
|
|
23
25
|
POPOVER_ALIGNMENT["BOTTOM"] = "bottom";
|
|
24
26
|
POPOVER_ALIGNMENT["BOTTOM_LEFT"] = "bottom-left";
|
|
25
27
|
POPOVER_ALIGNMENT["BOTTOM_RIGHT"] = "bottom-right";
|
|
28
|
+
POPOVER_ALIGNMENT["BOTTOM_START"] = "bottom-start";
|
|
29
|
+
POPOVER_ALIGNMENT["BOTTOM_END"] = "bottom-end";
|
|
26
30
|
POPOVER_ALIGNMENT["LEFT"] = "left";
|
|
27
31
|
POPOVER_ALIGNMENT["LEFT_BOTTOM"] = "left-bottom";
|
|
28
32
|
POPOVER_ALIGNMENT["LEFT_TOP"] = "left-top";
|
|
33
|
+
POPOVER_ALIGNMENT["LEFT_START"] = "left-start";
|
|
34
|
+
POPOVER_ALIGNMENT["LEFT_END"] = "left-end";
|
|
29
35
|
POPOVER_ALIGNMENT["RIGHT"] = "right";
|
|
30
36
|
POPOVER_ALIGNMENT["RIGHT_BOTTOM"] = "right-bottom";
|
|
31
37
|
POPOVER_ALIGNMENT["RIGHT_TOP"] = "right-top";
|
|
38
|
+
POPOVER_ALIGNMENT["RIGHT_START"] = "right-start";
|
|
39
|
+
POPOVER_ALIGNMENT["RIGHT_END"] = "right-end";
|
|
32
40
|
})(POPOVER_ALIGNMENT || (exports.POPOVER_ALIGNMENT = POPOVER_ALIGNMENT = {}));
|
|
33
41
|
//# sourceMappingURL=defs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defs.js","names":["POPOVER_ALIGNMENT","exports"],"sources":["components/popover/defs.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020,
|
|
1
|
+
{"version":3,"file":"defs.js","names":["POPOVER_ALIGNMENT","exports"],"sources":["components/popover/defs.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 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/**\n * The alignment choices of popover.\n */\nexport enum POPOVER_ALIGNMENT {\n /**\n * Align the top position for the popover content.\n */\n TOP = 'top',\n\n /**\n * Align the top-left position for the popover content.\n *\n * @deprecated\n */\n TOP_LEFT = 'top-left',\n\n /**\n * Align the top right position for the popover content.\n *\n * @deprecated\n */\n TOP_RIGHT = 'top-right',\n\n /**\n * Align the top-start position for the popover content.\n */\n TOP_START = 'top-start',\n\n /**\n * Align the top end position for the popover content.\n */\n TOP_END = 'top-end',\n\n /**\n * Align the bottom position for the popover content.\n */\n BOTTOM = 'bottom',\n\n /**\n * Align the bottom left position for the popover content.\n *\n * @deprecated\n */\n BOTTOM_LEFT = 'bottom-left',\n\n /**\n * Align the bottom right position for the popover content.\n *\n * @deprecated\n */\n BOTTOM_RIGHT = 'bottom-right',\n\n /**\n * Align the bottom start position for the popover content.\n */\n BOTTOM_START = 'bottom-start',\n\n /**\n * Align the bottom end position for the popover content.\n */\n BOTTOM_END = 'bottom-end',\n\n /**\n * Align the left position for the popover content.\n */\n LEFT = 'left',\n\n /**\n * Align the left bottom position for the popover content.\n *\n * @deprecated\n */\n LEFT_BOTTOM = 'left-bottom',\n\n /**\n * Align the left top position for the popover content.\n *\n * @deprecated\n */\n LEFT_TOP = 'left-top',\n\n /**\n * Align the left start position for the popover content.\n */\n LEFT_START = 'left-start',\n\n /**\n * Align the left end position for the popover content.\n */\n LEFT_END = 'left-end',\n\n /**\n * Align the right position for the popover content.\n */\n RIGHT = 'right',\n\n /**\n * Align the right bottom position for the popover content.\n *\n * @deprecated\n */\n RIGHT_BOTTOM = 'right-bottom',\n\n /**\n * Align the right top position for the popover content.\n *\n * @deprecated\n */\n RIGHT_TOP = 'right-top',\n\n /**\n * Align the right start position for the popover content.\n */\n RIGHT_START = 'right-start',\n\n /**\n * Align the right end position for the popover content.\n */\n RIGHT_END = 'right-end',\n}\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA,IAGYA,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA;AAAA,WAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;AAAA,GAAjBA,iBAAiB,KAAAC,OAAA,CAAAD,iBAAA,GAAjBA,iBAAiB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@carbon/web-components",
|
|
3
|
-
"version": "2.4.0-rc.
|
|
3
|
+
"version": "2.4.0-rc.1",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -70,6 +70,7 @@
|
|
|
70
70
|
"@babel/runtime": "^7.16.3",
|
|
71
71
|
"@carbon/ibm-products-styles": "^2.24.0",
|
|
72
72
|
"@carbon/styles": "1.51.0",
|
|
73
|
+
"@floating-ui/dom": "^1.6.3",
|
|
73
74
|
"flatpickr": "4.6.1",
|
|
74
75
|
"lit": "^2.7.6",
|
|
75
76
|
"lodash-es": "^4.17.21"
|
|
@@ -207,5 +208,5 @@
|
|
|
207
208
|
"zone.js": "~0.14.0"
|
|
208
209
|
},
|
|
209
210
|
"typings": "es/index.d.ts",
|
|
210
|
-
"gitHead": "
|
|
211
|
+
"gitHead": "a9c5c74c4f876b05a43dec2efffd688d64bf236d"
|
|
211
212
|
}
|
|
@@ -92,10 +92,10 @@ $popover-caret-height: custom-property.get-var(
|
|
|
92
92
|
);
|
|
93
93
|
}
|
|
94
94
|
|
|
95
|
-
:host(#{$prefix}-tooltip-content[align^='bottom']),
|
|
96
|
-
:host(#{$prefix}-popover-content[align^='bottom']),
|
|
97
|
-
:host(#{$prefix}-toggletip[alignment^='bottom']),
|
|
98
|
-
:host(#{$prefix}-slug[alignment^='bottom']) {
|
|
95
|
+
:host(#{$prefix}-tooltip-content[align^='bottom']:not([autoalign])),
|
|
96
|
+
:host(#{$prefix}-popover-content[align^='bottom']:not([autoalign])),
|
|
97
|
+
:host(#{$prefix}-toggletip[alignment^='bottom']:not([autoalign])),
|
|
98
|
+
:host(#{$prefix}-slug[alignment^='bottom']:not([autoalign])) {
|
|
99
99
|
.#{$prefix}--popover-caret {
|
|
100
100
|
block-size: $popover-caret-height;
|
|
101
101
|
clip-path: polygon(0% 100%, 50% 0%, 100% 100%);
|
|
@@ -106,10 +106,10 @@ $popover-caret-height: custom-property.get-var(
|
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
108
|
|
|
109
|
-
:host(#{$prefix}-tooltip-content[align='bottom']),
|
|
110
|
-
:host(#{$prefix}-popover-content[align='bottom']),
|
|
111
|
-
:host(#{$prefix}-toggletip[alignment='bottom']),
|
|
112
|
-
:host(#{$prefix}-slug[alignment='bottom']) {
|
|
109
|
+
:host(#{$prefix}-tooltip-content[align='bottom']:not([autoalign])),
|
|
110
|
+
:host(#{$prefix}-popover-content[align='bottom']:not([autoalign])),
|
|
111
|
+
:host(#{$prefix}-toggletip[alignment='bottom']:not([autoalign])),
|
|
112
|
+
:host(#{$prefix}-slug[alignment='bottom']:not([autoalign])) {
|
|
113
113
|
.#{$prefix}--popover-content {
|
|
114
114
|
inset-block-end: 0;
|
|
115
115
|
inset-inline-start: 50%;
|
|
@@ -117,10 +117,10 @@ $popover-caret-height: custom-property.get-var(
|
|
|
117
117
|
}
|
|
118
118
|
}
|
|
119
119
|
|
|
120
|
-
:host(#{$prefix}-tooltip-content[align='bottom-left']),
|
|
121
|
-
:host(#{$prefix}-popover-content[align='bottom-left']),
|
|
122
|
-
:host(#{$prefix}-toggletip[alignment='bottom-left']),
|
|
123
|
-
:host(#{$prefix}-slug[alignment='bottom-left']) {
|
|
120
|
+
:host(#{$prefix}-tooltip-content[align='bottom-left']:not([autoalign])),
|
|
121
|
+
:host(#{$prefix}-popover-content[align='bottom-left']:not([autoalign])),
|
|
122
|
+
:host(#{$prefix}-toggletip[alignment='bottom-left']:not([autoalign])),
|
|
123
|
+
:host(#{$prefix}-slug[alignment='bottom-left']:not([autoalign])) {
|
|
124
124
|
.#{$prefix}--popover-content {
|
|
125
125
|
inset-block-end: 0;
|
|
126
126
|
inset-inline-start: 0;
|
|
@@ -131,10 +131,10 @@ $popover-caret-height: custom-property.get-var(
|
|
|
131
131
|
}
|
|
132
132
|
}
|
|
133
133
|
|
|
134
|
-
:host(#{$prefix}-tooltip-content[align='bottom-right']),
|
|
135
|
-
:host(#{$prefix}-popover-content[align='bottom-right']),
|
|
136
|
-
:host(#{$prefix}-toggletip[alignment='bottom-right']),
|
|
137
|
-
:host(#{$prefix}-slug[alignment='bottom-right']) {
|
|
134
|
+
:host(#{$prefix}-tooltip-content[align='bottom-right']:not([autoalign])),
|
|
135
|
+
:host(#{$prefix}-popover-content[align='bottom-right']:not([autoalign])),
|
|
136
|
+
:host(#{$prefix}-toggletip[alignment='bottom-right']:not([autoalign])),
|
|
137
|
+
:host(#{$prefix}-slug[alignment='bottom-right']:not([autoalign])) {
|
|
138
138
|
.#{$prefix}--popover-content {
|
|
139
139
|
inset-block-end: 0;
|
|
140
140
|
inset-inline-end: 0;
|
|
@@ -142,10 +142,10 @@ $popover-caret-height: custom-property.get-var(
|
|
|
142
142
|
}
|
|
143
143
|
}
|
|
144
144
|
|
|
145
|
-
:host(#{$prefix}-tooltip-content[align^='left']),
|
|
146
|
-
:host(#{$prefix}-popover-content[align^='left']),
|
|
147
|
-
:host(#{$prefix}-toggletip[alignment^='left']),
|
|
148
|
-
:host(#{$prefix}-slug[alignment^='left']) {
|
|
145
|
+
:host(#{$prefix}-tooltip-content[align^='left']:not([autoalign])),
|
|
146
|
+
:host(#{$prefix}-popover-content[align^='left']:not([autoalign])),
|
|
147
|
+
:host(#{$prefix}-toggletip[alignment^='left']:not([autoalign])),
|
|
148
|
+
:host(#{$prefix}-slug[alignment^='left']:not([autoalign])) {
|
|
149
149
|
.#{$prefix}--popover-caret {
|
|
150
150
|
block-size: $popover-caret-width;
|
|
151
151
|
clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
|
|
@@ -156,10 +156,10 @@ $popover-caret-height: custom-property.get-var(
|
|
|
156
156
|
}
|
|
157
157
|
}
|
|
158
158
|
|
|
159
|
-
:host(#{$prefix}-tooltip-content[align='left']),
|
|
160
|
-
:host(#{$prefix}-popover-content[align='left']),
|
|
161
|
-
:host(#{$prefix}-toggletip[alignment='left']),
|
|
162
|
-
:host(#{$prefix}-slug[alignment='left']) {
|
|
159
|
+
:host(#{$prefix}-tooltip-content[align='left']:not([autoalign])),
|
|
160
|
+
:host(#{$prefix}-popover-content[align='left']:not([autoalign])),
|
|
161
|
+
:host(#{$prefix}-toggletip[alignment='left']:not([autoalign])),
|
|
162
|
+
:host(#{$prefix}-slug[alignment='left']:not([autoalign])) {
|
|
163
163
|
.#{$prefix}--popover-content {
|
|
164
164
|
inset-block-start: 50%;
|
|
165
165
|
inset-inline-end: 100%;
|
|
@@ -169,10 +169,10 @@ $popover-caret-height: custom-property.get-var(
|
|
|
169
169
|
}
|
|
170
170
|
}
|
|
171
171
|
|
|
172
|
-
:host(#{$prefix}-tooltip-content[align='left-bottom']),
|
|
173
|
-
:host(#{$prefix}-popover-content[align='left-bottom']),
|
|
174
|
-
:host(#{$prefix}-toggletip[alignment='left-bottom']),
|
|
175
|
-
:host(#{$prefix}-slug[alignment='left-bottom']) {
|
|
172
|
+
:host(#{$prefix}-tooltip-content[align='left-bottom']:not([autoalign])),
|
|
173
|
+
:host(#{$prefix}-popover-content[align='left-bottom']:not([autoalign])),
|
|
174
|
+
:host(#{$prefix}-toggletip[alignment='left-bottom']:not([autoalign])),
|
|
175
|
+
:host(#{$prefix}-slug[alignment='left-bottom']:not([autoalign])) {
|
|
176
176
|
.#{$prefix}--popover-content {
|
|
177
177
|
inset-block-end: 50%;
|
|
178
178
|
inset-inline-end: 100%;
|
|
@@ -185,10 +185,10 @@ $popover-caret-height: custom-property.get-var(
|
|
|
185
185
|
}
|
|
186
186
|
}
|
|
187
187
|
|
|
188
|
-
:host(#{$prefix}-tooltip-content[align='left-top']),
|
|
189
|
-
:host(#{$prefix}-popover-content[align='left-top']),
|
|
190
|
-
:host(#{$prefix}-toggletip[alignment='left-top']),
|
|
191
|
-
:host(#{$prefix}-slug[alignment='left-top']) {
|
|
188
|
+
:host(#{$prefix}-tooltip-content[align='left-top']:not([autoalign])),
|
|
189
|
+
:host(#{$prefix}-popover-content[align='left-top']:not([autoalign])),
|
|
190
|
+
:host(#{$prefix}-toggletip[alignment='left-top']:not([autoalign])),
|
|
191
|
+
:host(#{$prefix}-slug[alignment='left-top']:not([autoalign])) {
|
|
192
192
|
.#{$prefix}--popover-content {
|
|
193
193
|
inset-block-start: 50%;
|
|
194
194
|
inset-inline-end: 100%;
|
|
@@ -201,10 +201,10 @@ $popover-caret-height: custom-property.get-var(
|
|
|
201
201
|
}
|
|
202
202
|
}
|
|
203
203
|
|
|
204
|
-
:host(#{$prefix}-tooltip-content[align^='right']),
|
|
205
|
-
:host(#{$prefix}-popover-content[align^='right']),
|
|
206
|
-
:host(#{$prefix}-toggletip[alignment^='right']),
|
|
207
|
-
:host(#{$prefix}-slug[alignment^='right']) {
|
|
204
|
+
:host(#{$prefix}-tooltip-content[align^='right']:not([autoalign])),
|
|
205
|
+
:host(#{$prefix}-popover-content[align^='right']:not([autoalign])),
|
|
206
|
+
:host(#{$prefix}-toggletip[alignment^='right']:not([autoalign])),
|
|
207
|
+
:host(#{$prefix}-slug[alignment^='right']:not([autoalign])) {
|
|
208
208
|
.#{$prefix}--popover-caret {
|
|
209
209
|
block-size: $popover-caret-width;
|
|
210
210
|
clip-path: polygon(0% 50%, 100% 0%, 100% 100%);
|
|
@@ -215,10 +215,10 @@ $popover-caret-height: custom-property.get-var(
|
|
|
215
215
|
}
|
|
216
216
|
}
|
|
217
217
|
|
|
218
|
-
:host(#{$prefix}-tooltip-content[align='right']),
|
|
219
|
-
:host(#{$prefix}-popover-content[align='right']),
|
|
220
|
-
:host(#{$prefix}-toggletip[alignment='right']),
|
|
221
|
-
:host(#{$prefix}-slug[alignment='right']) {
|
|
218
|
+
:host(#{$prefix}-tooltip-content[align='right']:not([autoalign])),
|
|
219
|
+
:host(#{$prefix}-popover-content[align='right']:not([autoalign])),
|
|
220
|
+
:host(#{$prefix}-toggletip[alignment='right']:not([autoalign])),
|
|
221
|
+
:host(#{$prefix}-slug[alignment='right']:not([autoalign])) {
|
|
222
222
|
.#{$prefix}--popover-content {
|
|
223
223
|
inset-block-start: 50%;
|
|
224
224
|
inset-inline-start: 100%;
|
|
@@ -228,10 +228,10 @@ $popover-caret-height: custom-property.get-var(
|
|
|
228
228
|
}
|
|
229
229
|
}
|
|
230
230
|
|
|
231
|
-
:host(#{$prefix}-tooltip-content[align='right-bottom']),
|
|
232
|
-
:host(#{$prefix}-popover-content[align='right-bottom']),
|
|
233
|
-
:host(#{$prefix}-toggletip[alignment='right-bottom']),
|
|
234
|
-
:host(#{$prefix}-slug[alignment='right-bottom']) {
|
|
231
|
+
:host(#{$prefix}-tooltip-content[align='right-bottom']:not([autoalign])),
|
|
232
|
+
:host(#{$prefix}-popover-content[align='right-bottom']:not([autoalign])),
|
|
233
|
+
:host(#{$prefix}-toggletip[alignment='right-bottom']:not([autoalign])),
|
|
234
|
+
:host(#{$prefix}-slug[alignment='right-bottom']:not([autoalign])) {
|
|
235
235
|
.#{$prefix}--popover-content {
|
|
236
236
|
inset-block-end: 50%;
|
|
237
237
|
inset-inline-start: 100%;
|
|
@@ -239,10 +239,10 @@ $popover-caret-height: custom-property.get-var(
|
|
|
239
239
|
}
|
|
240
240
|
}
|
|
241
241
|
|
|
242
|
-
:host(#{$prefix}-tooltip-content[align='right-top']),
|
|
243
|
-
:host(#{$prefix}-popover-content[align='right-top']),
|
|
244
|
-
:host(#{$prefix}-toggletip[alignment='right-top']),
|
|
245
|
-
:host(#{$prefix}-slug[alignment='right-top']) {
|
|
242
|
+
:host(#{$prefix}-tooltip-content[align='right-top']:not([autoalign])),
|
|
243
|
+
:host(#{$prefix}-popover-content[align='right-top']:not([autoalign])),
|
|
244
|
+
:host(#{$prefix}-toggletip[alignment='right-top']:not([autoalign])),
|
|
245
|
+
:host(#{$prefix}-slug[alignment='right-top']:not([autoalign])) {
|
|
246
246
|
.#{$prefix}--popover-content {
|
|
247
247
|
inset-block-start: 50%;
|
|
248
248
|
inset-inline-start: 100%;
|
|
@@ -253,10 +253,10 @@ $popover-caret-height: custom-property.get-var(
|
|
|
253
253
|
}
|
|
254
254
|
}
|
|
255
255
|
|
|
256
|
-
:host(#{$prefix}-tooltip-content[align^='top']),
|
|
257
|
-
:host(#{$prefix}-popover-content[align^='top']),
|
|
258
|
-
:host(#{$prefix}-toggletip[alignment^='top']),
|
|
259
|
-
:host(#{$prefix}-slug[alignment^='top']) {
|
|
256
|
+
:host(#{$prefix}-tooltip-content[align^='top']:not([autoalign])),
|
|
257
|
+
:host(#{$prefix}-popover-content[align^='top']:not([autoalign])),
|
|
258
|
+
:host(#{$prefix}-toggletip[alignment^='top']:not([autoalign])),
|
|
259
|
+
:host(#{$prefix}-slug[alignment^='top']:not([autoalign])) {
|
|
260
260
|
.#{$prefix}--popover-caret {
|
|
261
261
|
block-size: $popover-caret-height;
|
|
262
262
|
clip-path: polygon(0% 0%, 50% 100%, 100% 0%);
|
|
@@ -267,10 +267,10 @@ $popover-caret-height: custom-property.get-var(
|
|
|
267
267
|
}
|
|
268
268
|
}
|
|
269
269
|
|
|
270
|
-
:host(#{$prefix}-tooltip-content[align='top']),
|
|
271
|
-
:host(#{$prefix}-popover-content[align='top']),
|
|
272
|
-
:host(#{$prefix}-toggletip[alignment='top']),
|
|
273
|
-
:host(#{$prefix}-slug[alignment='top']) {
|
|
270
|
+
:host(#{$prefix}-tooltip-content[align='top']:not([autoalign])),
|
|
271
|
+
:host(#{$prefix}-popover-content[align='top']:not([autoalign])),
|
|
272
|
+
:host(#{$prefix}-toggletip[alignment='top']:not([autoalign])),
|
|
273
|
+
:host(#{$prefix}-slug[alignment='top']:not([autoalign])) {
|
|
274
274
|
.#{$prefix}--popover-content {
|
|
275
275
|
inset-block-start: 0;
|
|
276
276
|
inset-inline-start: 50%;
|
|
@@ -278,10 +278,10 @@ $popover-caret-height: custom-property.get-var(
|
|
|
278
278
|
}
|
|
279
279
|
}
|
|
280
280
|
|
|
281
|
-
:host(#{$prefix}-tooltip-content[align='top-left']),
|
|
282
|
-
:host(#{$prefix}-popover-content[align='top-left']),
|
|
283
|
-
:host(#{$prefix}-toggletip[alignment='top-left']),
|
|
284
|
-
:host(#{$prefix}-slug[alignment='top-left']) {
|
|
281
|
+
:host(#{$prefix}-tooltip-content[align='top-left']:not([autoalign])),
|
|
282
|
+
:host(#{$prefix}-popover-content[align='top-left']:not([autoalign])),
|
|
283
|
+
:host(#{$prefix}-toggletip[alignment='top-left']:not([autoalign])),
|
|
284
|
+
:host(#{$prefix}-slug[alignment='top-left']:not([autoalign])) {
|
|
285
285
|
.#{$prefix}--popover-content {
|
|
286
286
|
inset-block-start: 0;
|
|
287
287
|
inset-inline-start: 0;
|
|
@@ -292,13 +292,32 @@ $popover-caret-height: custom-property.get-var(
|
|
|
292
292
|
}
|
|
293
293
|
}
|
|
294
294
|
|
|
295
|
-
:host(#{$prefix}-tooltip-content[align='top-right']),
|
|
296
|
-
:host(#{$prefix}-popover-content[align='top-right']),
|
|
297
|
-
:host(#{$prefix}-toggletip[alignment='top-right']),
|
|
298
|
-
:host(#{$prefix}-slug[alignment='top-right']) {
|
|
295
|
+
:host(#{$prefix}-tooltip-content[align='top-right']:not([autoalign])),
|
|
296
|
+
:host(#{$prefix}-popover-content[align='top-right']:not([autoalign])),
|
|
297
|
+
:host(#{$prefix}-toggletip[alignment='top-right']:not([autoalign])),
|
|
298
|
+
:host(#{$prefix}-slug[alignment='top-right']:not([autoalign])) {
|
|
299
299
|
.#{$prefix}--popover-content {
|
|
300
300
|
inset-block-start: 0;
|
|
301
301
|
inset-inline-end: 0;
|
|
302
302
|
transform: translate($popover-offset, calc(-100% - $popover-offset));
|
|
303
303
|
}
|
|
304
304
|
}
|
|
305
|
+
|
|
306
|
+
:host(#{$prefix}-toggletip[autoalign]),
|
|
307
|
+
:host(#{$prefix}-tooltip-content[autoalign]),
|
|
308
|
+
:host(#{$prefix}-popover-content[autoalign]) {
|
|
309
|
+
.#{$prefix}--popover-caret {
|
|
310
|
+
block-size: 8px;
|
|
311
|
+
inline-size: 8px;
|
|
312
|
+
transform: rotate(45deg);
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
:host(#{$prefix}-slug[autoalign]),
|
|
317
|
+
:host(#{$prefix}-tooltip[autoalign]),
|
|
318
|
+
:host(#{$prefix}-toggletip[autoalign]),
|
|
319
|
+
:host(#{$prefix}-popover[autoalign]) {
|
|
320
|
+
.#{$prefix}--popover-container {
|
|
321
|
+
position: static;
|
|
322
|
+
}
|
|
323
|
+
}
|