@db-ux/wc-core-components 4.4.0 → 4.4.1-floating-components-066d296
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/CHANGELOG.md +8 -0
- package/dist/cjs/db-accordion-item.cjs.entry.js +1 -1
- package/dist/cjs/db-accordion.cjs.entry.js +1 -1
- package/dist/cjs/db-badge.cjs.entry.js +1 -1
- package/dist/cjs/db-brand.cjs.entry.js +1 -1
- package/dist/cjs/db-button.cjs.entry.js +1 -1
- package/dist/cjs/db-card.cjs.entry.js +1 -1
- package/dist/cjs/db-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/db-custom-select-dropdown_5.cjs.entry.js +1 -1
- package/dist/cjs/db-custom-select-form-field.cjs.entry.js +1 -1
- package/dist/cjs/db-custom-select.cjs.entry.js +2 -2
- package/dist/cjs/db-divider.cjs.entry.js +1 -1
- package/dist/cjs/db-drawer.cjs.entry.js +1 -1
- package/dist/cjs/db-header.cjs.entry.js +3 -3
- package/dist/cjs/db-icon.cjs.entry.js +1 -1
- package/dist/cjs/db-infotext.cjs.entry.js +1 -1
- package/dist/cjs/db-link.cjs.entry.js +1 -1
- package/dist/cjs/db-navigation-item.cjs.entry.js +3 -3
- package/dist/cjs/db-navigation.cjs.entry.js +1 -1
- package/dist/cjs/db-notification.cjs.entry.js +1 -1
- package/dist/cjs/db-page.cjs.entry.js +1 -1
- package/dist/cjs/db-popover.cjs.entry.js +5 -5
- package/dist/cjs/db-radio.cjs.entry.js +1 -1
- package/dist/cjs/db-section.cjs.entry.js +1 -1
- package/dist/cjs/db-select.cjs.entry.js +1 -1
- package/dist/cjs/db-stack.cjs.entry.js +1 -1
- package/dist/cjs/db-switch.cjs.entry.js +1 -1
- package/dist/cjs/db-tab-item_3.cjs.entry.js +1 -1
- package/dist/cjs/db-tabs.cjs.entry.js +1 -1
- package/dist/cjs/db-textarea.cjs.entry.js +1 -1
- package/dist/cjs/db-tooltip.cjs.entry.js +6 -5
- package/dist/cjs/db-ux.cjs.js +2 -2
- package/dist/cjs/{floating-components-ogUqz72V.js → floating-components-pYaTeNhp.js} +65 -15
- package/dist/cjs/{index-DjRSp6-m.js → index-Bi4QN5oK.js} +19 -2
- package/dist/cjs/index.cjs.js +2 -2
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{navigation-DauGE-qj.js → navigation-BztJmEHf.js} +1 -1
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/popover/popover.js +3 -3
- package/dist/collection/components/tooltip/tooltip.js +4 -3
- package/dist/collection/utils/floating-components.js +65 -15
- package/dist/db-ux/db-ux.esm.js +1 -1
- package/dist/db-ux/index.esm.js +1 -1
- package/dist/db-ux/p-05XnVETo.js +2 -0
- package/dist/db-ux/{p-d704426f.entry.js → p-09f188aa.entry.js} +1 -1
- package/dist/db-ux/{p-9b6d8f95.entry.js → p-146365b4.entry.js} +1 -1
- package/dist/db-ux/{p-a053966f.entry.js → p-1975c375.entry.js} +1 -1
- package/dist/db-ux/{p-ea2290ac.entry.js → p-19c9285e.entry.js} +1 -1
- package/dist/db-ux/{p-6195c74d.entry.js → p-1ae2420e.entry.js} +1 -1
- package/dist/db-ux/p-1e76ee94.entry.js +1 -0
- package/dist/db-ux/p-2c0bd1d8.entry.js +1 -0
- package/dist/db-ux/{p-2618f875.entry.js → p-32fcf516.entry.js} +1 -1
- package/dist/db-ux/{p-b97c0f63.entry.js → p-349276ca.entry.js} +1 -1
- package/dist/db-ux/{p-b67906ed.entry.js → p-36f93663.entry.js} +1 -1
- package/dist/db-ux/{p-23ea8d2f.entry.js → p-47b821f7.entry.js} +1 -1
- package/dist/db-ux/{p-010fa365.entry.js → p-5549d866.entry.js} +1 -1
- package/dist/db-ux/{p-6f685ea9.entry.js → p-56984c5d.entry.js} +1 -1
- package/dist/db-ux/{p-13ed143a.entry.js → p-5b87a881.entry.js} +1 -1
- package/dist/db-ux/p-5e8b2167.entry.js +1 -0
- package/dist/db-ux/{p-7c570038.entry.js → p-5e8d052f.entry.js} +1 -1
- package/dist/db-ux/{p-915cd9e8.entry.js → p-77840cb4.entry.js} +1 -1
- package/dist/db-ux/{p-23227dd9.entry.js → p-8a0ca84b.entry.js} +1 -1
- package/dist/db-ux/{p-6e094b8f.entry.js → p-8d37aa19.entry.js} +1 -1
- package/dist/db-ux/{p-11005d83.entry.js → p-8fb51989.entry.js} +1 -1
- package/dist/db-ux/p-90380da4.entry.js +1 -0
- package/dist/db-ux/{p-f4f48665.entry.js → p-93506fdb.entry.js} +1 -1
- package/dist/db-ux/p-981d05c0.entry.js +1 -0
- package/dist/db-ux/p-DfYL98sI.js +1 -0
- package/dist/db-ux/{p-81f1cca3.entry.js → p-ba4084e8.entry.js} +1 -1
- package/dist/db-ux/{p-sP2NlPcu.js → p-cNk4ImpW.js} +1 -1
- package/dist/db-ux/{p-2e960c38.entry.js → p-ced0df76.entry.js} +1 -1
- package/dist/db-ux/{p-88fbecb8.entry.js → p-cede20c2.entry.js} +1 -1
- package/dist/db-ux/p-d1974cb0.entry.js +1 -0
- package/dist/db-ux/{p-284bb676.entry.js → p-d2fd9838.entry.js} +1 -1
- package/dist/db-ux/{p-64274383.entry.js → p-ec270b7d.entry.js} +1 -1
- package/dist/db-ux/{p-1cb46c2f.entry.js → p-f80474a6.entry.js} +1 -1
- package/dist/esm/db-accordion-item.entry.js +1 -1
- package/dist/esm/db-accordion.entry.js +1 -1
- package/dist/esm/db-badge.entry.js +1 -1
- package/dist/esm/db-brand.entry.js +1 -1
- package/dist/esm/db-button.entry.js +1 -1
- package/dist/esm/db-card.entry.js +1 -1
- package/dist/esm/db-checkbox.entry.js +1 -1
- package/dist/esm/db-custom-select-dropdown_5.entry.js +1 -1
- package/dist/esm/db-custom-select-form-field.entry.js +1 -1
- package/dist/esm/db-custom-select.entry.js +2 -2
- package/dist/esm/db-divider.entry.js +1 -1
- package/dist/esm/db-drawer.entry.js +1 -1
- package/dist/esm/db-header.entry.js +3 -3
- package/dist/esm/db-icon.entry.js +1 -1
- package/dist/esm/db-infotext.entry.js +1 -1
- package/dist/esm/db-link.entry.js +1 -1
- package/dist/esm/db-navigation-item.entry.js +3 -3
- package/dist/esm/db-navigation.entry.js +1 -1
- package/dist/esm/db-notification.entry.js +1 -1
- package/dist/esm/db-page.entry.js +1 -1
- package/dist/esm/db-popover.entry.js +5 -5
- package/dist/esm/db-radio.entry.js +1 -1
- package/dist/esm/db-section.entry.js +1 -1
- package/dist/esm/db-select.entry.js +1 -1
- package/dist/esm/db-stack.entry.js +1 -1
- package/dist/esm/db-switch.entry.js +1 -1
- package/dist/esm/db-tab-item_3.entry.js +1 -1
- package/dist/esm/db-tabs.entry.js +1 -1
- package/dist/esm/db-textarea.entry.js +1 -1
- package/dist/esm/db-tooltip.entry.js +6 -5
- package/dist/esm/db-ux.js +3 -3
- package/dist/esm/{floating-components-G-TursYV.js → floating-components-DfYL98sI.js} +65 -15
- package/dist/esm/{index-aO-2B9yO.js → index-05XnVETo.js} +19 -2
- package/dist/esm/index.js +2 -2
- package/dist/esm/loader.js +2 -2
- package/dist/esm/{navigation--UdC9CzO.js → navigation-DgsMCdfn.js} +1 -1
- package/dist/types/components.d.ts +582 -72
- package/dist/types/stencil-public-runtime.d.ts +24 -1
- package/dist/web-types.json +1 -1
- package/package.json +4 -4
- package/dist/db-ux/p-18d640f5.entry.js +0 -1
- package/dist/db-ux/p-2decd9e2.entry.js +0 -1
- package/dist/db-ux/p-567804e7.entry.js +0 -1
- package/dist/db-ux/p-71eda55f.entry.js +0 -1
- package/dist/db-ux/p-G-TursYV.js +0 -1
- package/dist/db-ux/p-aO-2B9yO.js +0 -2
- package/dist/db-ux/p-be4edb12.entry.js +0 -1
- package/dist/db-ux/p-d925eaa3.entry.js +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# @db-ux/wc-core-components
|
|
2
2
|
|
|
3
|
+
## 4.4.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- fix: issue with tailwind not reflecting adaptive color changes with `[data-color="xxx"]` - [see commit 936638d](https://github.com/db-ux-design-system/core-web/commit/936638d672bbb6c0f8a0ecf77bf41fafa0e31656)
|
|
8
|
+
|
|
9
|
+
- DBCustomSelect: Prevent floating label from flickering during initial render - [see commit e5ceff8](https://github.com/db-ux-design-system/core-web/commit/e5ceff861534186cf86d1f5f0a876e04aeac9e41)
|
|
10
|
+
|
|
3
11
|
## 4.4.0
|
|
4
12
|
|
|
5
13
|
### Minor Changes
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-Bi4QN5oK.js');
|
|
4
4
|
var constants = require('./constants-bMY2_d8A.js');
|
|
5
5
|
var index$1 = require('./index-CsHqnQII.js');
|
|
6
6
|
var formComponents = require('./form-components-LsqVohyb.js');
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-Bi4QN5oK.js');
|
|
4
4
|
var index$1 = require('./index-CsHqnQII.js');
|
|
5
5
|
var constants = require('./constants-bMY2_d8A.js');
|
|
6
6
|
var formComponents = require('./form-components-LsqVohyb.js');
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-Bi4QN5oK.js');
|
|
4
4
|
var constants = require('./constants-bMY2_d8A.js');
|
|
5
5
|
var index$1 = require('./index-CsHqnQII.js');
|
|
6
6
|
var documentClickListener = require('./document-click-listener-Bb3Tinb8.js');
|
|
7
7
|
var documentScrollListener = require('./document-scroll-listener-unypEU42.js');
|
|
8
|
-
var floatingComponents = require('./floating-components-
|
|
8
|
+
var floatingComponents = require('./floating-components-pYaTeNhp.js');
|
|
9
9
|
var formComponents = require('./form-components-LsqVohyb.js');
|
|
10
10
|
|
|
11
11
|
const DBCustomSelect = class {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-Bi4QN5oK.js');
|
|
4
4
|
var constants = require('./constants-bMY2_d8A.js');
|
|
5
5
|
var index$1 = require('./index-CsHqnQII.js');
|
|
6
|
-
var navigation = require('./navigation-
|
|
7
|
-
require('./floating-components-
|
|
6
|
+
var navigation = require('./navigation-BztJmEHf.js');
|
|
7
|
+
require('./floating-components-pYaTeNhp.js');
|
|
8
8
|
|
|
9
9
|
const DBHeader = class {
|
|
10
10
|
constructor(hostRef) {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-Bi4QN5oK.js');
|
|
4
4
|
var constants = require('./constants-bMY2_d8A.js');
|
|
5
5
|
var index$1 = require('./index-CsHqnQII.js');
|
|
6
|
-
var navigation = require('./navigation-
|
|
7
|
-
require('./floating-components-
|
|
6
|
+
var navigation = require('./navigation-BztJmEHf.js');
|
|
7
|
+
require('./floating-components-pYaTeNhp.js');
|
|
8
8
|
|
|
9
9
|
const DBNavigationItem = class {
|
|
10
10
|
constructor(hostRef) {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-Bi4QN5oK.js');
|
|
4
4
|
var index$1 = require('./index-CsHqnQII.js');
|
|
5
5
|
var documentScrollListener = require('./document-scroll-listener-unypEU42.js');
|
|
6
|
-
var floatingComponents = require('./floating-components-
|
|
6
|
+
var floatingComponents = require('./floating-components-pYaTeNhp.js');
|
|
7
7
|
|
|
8
8
|
const DBPopover = class {
|
|
9
9
|
constructor(hostRef) {
|
|
@@ -27,7 +27,7 @@ const DBPopover = class {
|
|
|
27
27
|
const article = this._ref.querySelector("article");
|
|
28
28
|
if (article) {
|
|
29
29
|
// This is a workaround for angular
|
|
30
|
-
index$1.delay(() => {
|
|
30
|
+
void index$1.delay(() => {
|
|
31
31
|
var _a;
|
|
32
32
|
floatingComponents.handleFixedPopover(article, this._ref, (_a = this.placement) !== null && _a !== void 0 ? _a : "bottom");
|
|
33
33
|
}, 1);
|
|
@@ -166,9 +166,9 @@ const DBPopover = class {
|
|
|
166
166
|
}
|
|
167
167
|
render() {
|
|
168
168
|
var _a;
|
|
169
|
-
return (index.h("div", { key: '
|
|
169
|
+
return (index.h("div", { key: 'b8da95165af96a1486a2a90df63886c98d73ff42', class: index$1.cls("db-popover", this.className), ref: (el) => {
|
|
170
170
|
this._ref = el;
|
|
171
|
-
}, id: this.id }, index.h("slot", { key: '
|
|
171
|
+
}, id: this.id }, index.h("slot", { key: 'a8aabd06a96b791d23fa7bc037ad22feff8a370b', name: "trigger" }), index.h("article", { key: 'c349d59d154d8285ac4df1f1093503a65f1cad2d', class: "db-popover-content", "data-spacing": this.spacing, "data-gap": index$1.getBooleanAsString(this.gap), "data-animation": index$1.getBooleanAsString((_a = this.animation) !== null && _a !== void 0 ? _a : true), "data-open": index$1.getBooleanAsString(this.open), "data-delay": this.delay, "data-width": this.width, "data-placement": this.placement }, index.h("slot", { key: '76e4010918fec2ef4f79a6e7a10a79bc9744802a' }))));
|
|
172
172
|
}
|
|
173
173
|
static get watchers() { return {
|
|
174
174
|
"_ref": [{
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-Bi4QN5oK.js');
|
|
4
4
|
var constants = require('./constants-bMY2_d8A.js');
|
|
5
5
|
var index$1 = require('./index-CsHqnQII.js');
|
|
6
6
|
var formComponents = require('./form-components-LsqVohyb.js');
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-Bi4QN5oK.js');
|
|
4
4
|
var constants = require('./constants-bMY2_d8A.js');
|
|
5
5
|
var index$1 = require('./index-CsHqnQII.js');
|
|
6
6
|
var formComponents = require('./form-components-LsqVohyb.js');
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-Bi4QN5oK.js');
|
|
4
4
|
var constants = require('./constants-bMY2_d8A.js');
|
|
5
5
|
var index$1 = require('./index-CsHqnQII.js');
|
|
6
6
|
var formComponents = require('./form-components-LsqVohyb.js');
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-Bi4QN5oK.js');
|
|
4
4
|
var constants = require('./constants-bMY2_d8A.js');
|
|
5
5
|
var index$1 = require('./index-CsHqnQII.js');
|
|
6
6
|
var documentScrollListener = require('./document-scroll-listener-unypEU42.js');
|
|
7
|
-
var floatingComponents = require('./floating-components-
|
|
7
|
+
var floatingComponents = require('./floating-components-pYaTeNhp.js');
|
|
8
8
|
|
|
9
9
|
const DBTooltip = class {
|
|
10
10
|
constructor(hostRef) {
|
|
@@ -37,7 +37,7 @@ const DBTooltip = class {
|
|
|
37
37
|
return;
|
|
38
38
|
if (this._ref) {
|
|
39
39
|
// This is a workaround for angular
|
|
40
|
-
index$1.delay(() => {
|
|
40
|
+
void index$1.delay(() => {
|
|
41
41
|
var _a;
|
|
42
42
|
// Due to race conditions we need to check for _ref again
|
|
43
43
|
if (this._ref) {
|
|
@@ -102,6 +102,7 @@ const DBTooltip = class {
|
|
|
102
102
|
if (this._ref && this.initialized && this._id) {
|
|
103
103
|
const parent = this.getParent();
|
|
104
104
|
if (parent) {
|
|
105
|
+
this.handleAutoPlacement(parent);
|
|
105
106
|
["mouseenter", "focusin"].forEach((event) => {
|
|
106
107
|
parent.addEventListener(event, () => this.handleEnter(parent));
|
|
107
108
|
});
|
|
@@ -139,9 +140,9 @@ const DBTooltip = class {
|
|
|
139
140
|
}
|
|
140
141
|
render() {
|
|
141
142
|
var _a, _b;
|
|
142
|
-
return (index.h("i", { key: '
|
|
143
|
+
return (index.h("i", { key: 'e00df6c3323a5e03dcdab1b3b995921cad86a7d9', class: index$1.cls("db-tooltip", this.className), role: "tooltip", "aria-hidden": "true", "data-gap": "true", ref: (el) => {
|
|
143
144
|
this._ref = el;
|
|
144
|
-
}, id: this._id, "data-emphasis": this.emphasis, "data-animation": index$1.getBooleanAsString((_a = this.animation) !== null && _a !== void 0 ? _a : true), "data-delay": this.delay, "data-width": this.width, "data-show-arrow": index$1.getBooleanAsString((_b = this.showArrow) !== null && _b !== void 0 ? _b : true), "data-placement": this.placement, onClick: (event) => this.handleClick(event) }, index.h("slot", { key: '
|
|
145
|
+
}, id: this._id, "data-emphasis": this.emphasis, "data-animation": index$1.getBooleanAsString((_a = this.animation) !== null && _a !== void 0 ? _a : true), "data-delay": this.delay, "data-width": this.width, "data-show-arrow": index$1.getBooleanAsString((_b = this.showArrow) !== null && _b !== void 0 ? _b : true), "data-placement": this.placement, onClick: (event) => this.handleClick(event) }, index.h("slot", { key: 'a08164faf64e493d0aebf674478f0125affd7a09' })));
|
|
145
146
|
}
|
|
146
147
|
static get watchers() { return {
|
|
147
148
|
"_ref": [{
|
package/dist/cjs/db-ux.cjs.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
3
|
+
var index = require('./index-Bi4QN5oK.js');
|
|
4
4
|
var appGlobals = require('./app-globals-V2Kpy_OQ.js');
|
|
5
5
|
|
|
6
6
|
var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
|
|
7
7
|
/*
|
|
8
|
-
Stencil Client Patch Browser v4.
|
|
8
|
+
Stencil Client Patch Browser v4.42.0 | MIT Licensed | https://stenciljs.com
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
var patchBrowser = () => {
|
|
@@ -230,10 +230,54 @@ const getFloatingProps = (element, parent, placement) => {
|
|
|
230
230
|
innerHeight
|
|
231
231
|
};
|
|
232
232
|
};
|
|
233
|
+
const MAX_ANCESTOR_DEPTH = 10;
|
|
234
|
+
const ancestorCache = new WeakMap();
|
|
235
|
+
const getAncestorHasCorrectedPlacement = (element) => {
|
|
236
|
+
if (ancestorCache.has(element)) {
|
|
237
|
+
return ancestorCache.get(element);
|
|
238
|
+
}
|
|
239
|
+
let current = element.parentElement;
|
|
240
|
+
let anchor = 0;
|
|
241
|
+
while (current && anchor < MAX_ANCESTOR_DEPTH) {
|
|
242
|
+
if (current.dataset['correctedPlacement']) {
|
|
243
|
+
ancestorCache.set(element, current);
|
|
244
|
+
return current;
|
|
245
|
+
}
|
|
246
|
+
current = current.parentElement;
|
|
247
|
+
anchor += 1;
|
|
248
|
+
}
|
|
249
|
+
ancestorCache.set(element, null);
|
|
250
|
+
return null;
|
|
251
|
+
};
|
|
233
252
|
const handleFixedPopover = (element, parent, placement) => {
|
|
234
|
-
var _a;
|
|
235
|
-
const
|
|
236
|
-
const
|
|
253
|
+
var _a, _b;
|
|
254
|
+
const parentComputedStyles = getComputedStyle(parent);
|
|
255
|
+
const parentHasFloatingPosition = ['absolute', 'fixed'].includes(parentComputedStyles.position);
|
|
256
|
+
const ancestorWithCorrectedPlacement = getAncestorHasCorrectedPlacement(element);
|
|
257
|
+
const noFloatingAncestor = !ancestorWithCorrectedPlacement && !parentHasFloatingPosition;
|
|
258
|
+
const distance = (_b = (_a = getComputedStyle(element)) === null || _a === void 0 ? void 0 : _a.getPropertyValue('--db-popover-distance')) !== null && _b !== void 0 ? _b : '0px';
|
|
259
|
+
let { top, height, width, childHeight, childWidth, right, left, bottom, correctedPlacement, innerWidth, innerHeight } = getFloatingProps(element, parent, placement);
|
|
260
|
+
if (ancestorWithCorrectedPlacement) {
|
|
261
|
+
const ancestorRect = ancestorWithCorrectedPlacement.getBoundingClientRect();
|
|
262
|
+
left = Math.abs(left - ancestorRect.left);
|
|
263
|
+
right = (width + Math.abs(right - ancestorRect.right)) * 1.5; // We add a transform -50% later
|
|
264
|
+
top = Math.abs(top - ancestorRect.top);
|
|
265
|
+
bottom = (height + Math.abs(bottom - ancestorRect.bottom)) * 1.5; // We add a transform -50% later
|
|
266
|
+
}
|
|
267
|
+
if (parentHasFloatingPosition) {
|
|
268
|
+
/*
|
|
269
|
+
* If we have a floating element inside an element with position:absolute/fixed
|
|
270
|
+
* we need to calculate with relative values
|
|
271
|
+
* */
|
|
272
|
+
left = 0;
|
|
273
|
+
right = width;
|
|
274
|
+
top = 0;
|
|
275
|
+
bottom = height;
|
|
276
|
+
if (['auto', 'inherit', '0'].includes(parentComputedStyles.zIndex)) {
|
|
277
|
+
// We need the default zIndex for floating elements on the parent
|
|
278
|
+
parent.style.zIndex = '1';
|
|
279
|
+
}
|
|
280
|
+
}
|
|
237
281
|
// Tooltip arrow position
|
|
238
282
|
if (childWidth > width && (correctedPlacement.startsWith('bottom') || correctedPlacement.startsWith('top'))) {
|
|
239
283
|
const diff = width / 2 / childWidth * 100;
|
|
@@ -243,6 +287,9 @@ const handleFixedPopover = (element, parent, placement) => {
|
|
|
243
287
|
else if (correctedPlacement.endsWith('end')) {
|
|
244
288
|
element.style.setProperty('--db-tooltip-arrow-inline-start', `${100 - diff}%`);
|
|
245
289
|
}
|
|
290
|
+
else {
|
|
291
|
+
element.style.setProperty('--db-tooltip-arrow-inline-start', `50%`);
|
|
292
|
+
}
|
|
246
293
|
}
|
|
247
294
|
if (childHeight > height && (correctedPlacement.startsWith('left') || correctedPlacement.startsWith('bottom'))) {
|
|
248
295
|
const diff = height / 2 / childHeight * 100;
|
|
@@ -252,6 +299,9 @@ const handleFixedPopover = (element, parent, placement) => {
|
|
|
252
299
|
else if (correctedPlacement.endsWith('end')) {
|
|
253
300
|
element.style.setProperty('--db-tooltip-arrow-block-start', `${100 - diff}%`);
|
|
254
301
|
}
|
|
302
|
+
else {
|
|
303
|
+
element.style.setProperty('--db-tooltip-arrow-block-start', `50%`);
|
|
304
|
+
}
|
|
255
305
|
}
|
|
256
306
|
// Popover position
|
|
257
307
|
if (correctedPlacement === 'right' || correctedPlacement === 'left') {
|
|
@@ -261,11 +311,11 @@ const handleFixedPopover = (element, parent, placement) => {
|
|
|
261
311
|
else if (correctedPlacement === 'right-start' || correctedPlacement === 'left-start') {
|
|
262
312
|
const end = top + childHeight;
|
|
263
313
|
element.style.insetBlockStart = `${top}px`;
|
|
264
|
-
element.style.insetBlockEnd = `${end > innerHeight ? innerHeight : end}px`;
|
|
314
|
+
element.style.insetBlockEnd = `${!parentHasFloatingPosition && end > innerHeight ? innerHeight : end}px`;
|
|
265
315
|
}
|
|
266
316
|
else if (correctedPlacement === 'right-end' || correctedPlacement === 'left-end') {
|
|
267
317
|
const start = bottom - childHeight;
|
|
268
|
-
element.style.insetBlockStart = `${start < 0 ? 0 : start}px`;
|
|
318
|
+
element.style.insetBlockStart = `${!parentHasFloatingPosition && start < 0 ? 0 : start}px`;
|
|
269
319
|
element.style.insetBlockEnd = `${bottom}px`;
|
|
270
320
|
}
|
|
271
321
|
else if (correctedPlacement === 'top' || correctedPlacement === 'bottom') {
|
|
@@ -275,32 +325,32 @@ const handleFixedPopover = (element, parent, placement) => {
|
|
|
275
325
|
else if (correctedPlacement === 'top-start' || correctedPlacement === 'bottom-start') {
|
|
276
326
|
const end = left + childWidth;
|
|
277
327
|
element.style.insetInlineStart = `${left}px`;
|
|
278
|
-
element.style.insetInlineEnd = `${end > innerWidth ? innerWidth : end}px`;
|
|
328
|
+
element.style.insetInlineEnd = `${!parentHasFloatingPosition && end > innerWidth ? innerWidth : end}px`;
|
|
279
329
|
}
|
|
280
330
|
else if (correctedPlacement === 'top-end' || correctedPlacement === 'bottom-end') {
|
|
281
|
-
const start =
|
|
282
|
-
element.style.insetInlineStart = `${
|
|
283
|
-
element.style.insetInlineEnd = `${
|
|
331
|
+
const start = right - childWidth;
|
|
332
|
+
element.style.insetInlineStart = `${!parentHasFloatingPosition && start < 0 ? 0 : start}px`;
|
|
333
|
+
element.style.insetInlineEnd = `${right}px`;
|
|
284
334
|
}
|
|
285
335
|
if (correctedPlacement === null || correctedPlacement === void 0 ? void 0 : correctedPlacement.startsWith('right')) {
|
|
286
336
|
const end = right + childWidth;
|
|
287
337
|
element.style.insetInlineStart = `calc(${right}px + ${distance})`;
|
|
288
|
-
element.style.insetInlineEnd = `calc(${end > innerWidth ? innerWidth : end}px + ${distance})`;
|
|
338
|
+
element.style.insetInlineEnd = `calc(${noFloatingAncestor && end > innerWidth ? innerWidth : end}px + ${distance})`;
|
|
289
339
|
}
|
|
290
340
|
else if (correctedPlacement === null || correctedPlacement === void 0 ? void 0 : correctedPlacement.startsWith('left')) {
|
|
291
341
|
const start = left - childWidth;
|
|
292
|
-
element.style.insetInlineStart = `calc(${start < 0 ? 0 : start}px - ${distance})`;
|
|
342
|
+
element.style.insetInlineStart = `calc(${noFloatingAncestor && start < 0 ? 0 : start}px - ${distance})`;
|
|
293
343
|
element.style.insetInlineEnd = `calc(${right}px - ${distance})`;
|
|
294
344
|
}
|
|
295
345
|
else if (correctedPlacement === null || correctedPlacement === void 0 ? void 0 : correctedPlacement.startsWith('top')) {
|
|
296
346
|
const start = top - childHeight;
|
|
297
|
-
element.style.insetBlockStart = `calc(${start < 0 ? 0 : start}px - ${distance})`;
|
|
298
|
-
element.style.insetBlockEnd = `calc(${bottom}px - ${distance})`;
|
|
347
|
+
element.style.insetBlockStart = `calc(${noFloatingAncestor && start < 0 ? 0 : start}px - ${distance})`;
|
|
348
|
+
element.style.insetBlockEnd = `calc(${parentHasFloatingPosition ? start : bottom}px - ${distance})`;
|
|
299
349
|
}
|
|
300
350
|
else if (correctedPlacement === null || correctedPlacement === void 0 ? void 0 : correctedPlacement.startsWith('bottom')) {
|
|
301
351
|
const end = bottom + childHeight;
|
|
302
|
-
element.style.insetBlockStart = `calc(${bottom}px + ${distance})`;
|
|
303
|
-
element.style.insetBlockEnd = `calc(${end > innerHeight ? innerHeight : end}px + ${distance})`;
|
|
352
|
+
element.style.insetBlockStart = `calc(${parentHasFloatingPosition ? end : bottom}px + ${distance})`;
|
|
353
|
+
element.style.insetBlockEnd = `calc(${noFloatingAncestor && end > innerHeight ? innerHeight : end}px + ${distance})`;
|
|
304
354
|
}
|
|
305
355
|
element.style.position = 'fixed';
|
|
306
356
|
element.dataset['correctedPlacement'] = correctedPlacement;
|
|
@@ -4,7 +4,7 @@ const NAMESPACE = 'db-ux';
|
|
|
4
4
|
const BUILD = /* db-ux */ { hydratedSelectorName: "hydrated", lazyLoad: true, propChangeCallback: true, shadowDom: false, slotRelocation: true, state: true, updatable: true};
|
|
5
5
|
|
|
6
6
|
/*
|
|
7
|
-
Stencil Client Platform v4.
|
|
7
|
+
Stencil Client Platform v4.42.0 | MIT Licensed | https://stenciljs.com
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
var reWireGetterSetter = (instance, hostRef) => {
|
|
@@ -500,6 +500,23 @@ var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags, initialRen
|
|
|
500
500
|
plt.ael(elm, memberName, newValue, capture);
|
|
501
501
|
}
|
|
502
502
|
}
|
|
503
|
+
} else if (memberName[0] === "a" && memberName.startsWith("attr:")) {
|
|
504
|
+
const attrName = memberName.slice(5);
|
|
505
|
+
if (newValue == null || newValue === false) {
|
|
506
|
+
if (newValue !== false || elm.getAttribute(attrName) === "") {
|
|
507
|
+
elm.removeAttribute(attrName);
|
|
508
|
+
}
|
|
509
|
+
} else {
|
|
510
|
+
elm.setAttribute(attrName, newValue === true ? "" : newValue);
|
|
511
|
+
}
|
|
512
|
+
return;
|
|
513
|
+
} else if (memberName[0] === "p" && memberName.startsWith("prop:")) {
|
|
514
|
+
const propName = memberName.slice(5);
|
|
515
|
+
try {
|
|
516
|
+
elm[propName] = newValue;
|
|
517
|
+
} catch (e) {
|
|
518
|
+
}
|
|
519
|
+
return;
|
|
503
520
|
} else {
|
|
504
521
|
const isComplex = isComplexType(newValue);
|
|
505
522
|
if ((isProp || isComplex && newValue !== null) && true) {
|
|
@@ -508,7 +525,7 @@ var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags, initialRen
|
|
|
508
525
|
const n = newValue == null ? "" : newValue;
|
|
509
526
|
if (memberName === "list") {
|
|
510
527
|
isProp = false;
|
|
511
|
-
} else if (oldValue == null || elm[memberName]
|
|
528
|
+
} else if (oldValue == null || elm[memberName] !== n) {
|
|
512
529
|
if (typeof elm.__lookupSetter__(memberName) === "function") {
|
|
513
530
|
elm[memberName] = n;
|
|
514
531
|
} else {
|
package/dist/cjs/index.cjs.js
CHANGED
|
@@ -4,8 +4,8 @@ var constants = require('./constants-bMY2_d8A.js');
|
|
|
4
4
|
var index = require('./index-CsHqnQII.js');
|
|
5
5
|
var documentClickListener = require('./document-click-listener-Bb3Tinb8.js');
|
|
6
6
|
var documentScrollListener = require('./document-scroll-listener-unypEU42.js');
|
|
7
|
-
var floatingComponents = require('./floating-components-
|
|
8
|
-
var navigation = require('./navigation-
|
|
7
|
+
var floatingComponents = require('./floating-components-pYaTeNhp.js');
|
|
8
|
+
var navigation = require('./navigation-BztJmEHf.js');
|
|
9
9
|
|
|
10
10
|
const AccordionVariantList = ['divider', 'card'];
|
|
11
11
|
const AccordionBehaviorList = ['multiple', 'single'];
|
package/dist/cjs/loader.cjs.js
CHANGED
|
@@ -27,7 +27,7 @@ export class DBPopover {
|
|
|
27
27
|
const article = this._ref.querySelector("article");
|
|
28
28
|
if (article) {
|
|
29
29
|
// This is a workaround for angular
|
|
30
|
-
utilsDelay(() => {
|
|
30
|
+
void utilsDelay(() => {
|
|
31
31
|
var _a;
|
|
32
32
|
handleFixedPopover(article, this._ref, (_a = this.placement) !== null && _a !== void 0 ? _a : "bottom");
|
|
33
33
|
}, 1);
|
|
@@ -166,9 +166,9 @@ export class DBPopover {
|
|
|
166
166
|
}
|
|
167
167
|
render() {
|
|
168
168
|
var _a;
|
|
169
|
-
return (h("div", { key: '
|
|
169
|
+
return (h("div", { key: 'b8da95165af96a1486a2a90df63886c98d73ff42', class: cls("db-popover", this.className), ref: (el) => {
|
|
170
170
|
this._ref = el;
|
|
171
|
-
}, id: this.id }, h("slot", { key: '
|
|
171
|
+
}, id: this.id }, h("slot", { key: 'a8aabd06a96b791d23fa7bc037ad22feff8a370b', name: "trigger" }), h("article", { key: 'c349d59d154d8285ac4df1f1093503a65f1cad2d', class: "db-popover-content", "data-spacing": this.spacing, "data-gap": getBooleanAsString(this.gap), "data-animation": getBooleanAsString((_a = this.animation) !== null && _a !== void 0 ? _a : true), "data-open": getBooleanAsString(this.open), "data-delay": this.delay, "data-width": this.width, "data-placement": this.placement }, h("slot", { key: '76e4010918fec2ef4f79a6e7a10a79bc9744802a' }))));
|
|
172
172
|
}
|
|
173
173
|
static get is() { return "db-popover"; }
|
|
174
174
|
static get properties() {
|