@descope/web-components-ui 1.0.256 → 1.0.258
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.cjs.js +31 -3
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/index.esm.js +31 -3
- package/dist/index.esm.js.map +1 -1
- package/dist/umd/descope-button-index-js.js +1 -1
- package/dist/umd/descope-multi-select-combo-box-index-js.js +1 -1
- package/package.json +1 -1
- package/src/components/descope-button/ButtonClass.js +2 -1
- package/src/components/descope-multi-select-combo-box/MultiSelectComboBoxClass.js +29 -2
package/dist/index.esm.js
CHANGED
@@ -1306,6 +1306,7 @@ const resetStyles = `
|
|
1306
1306
|
box-shadow: none;
|
1307
1307
|
}
|
1308
1308
|
vaadin-button::part(label) {
|
1309
|
+
justify-content: center;
|
1309
1310
|
padding: 0;
|
1310
1311
|
width: 100%;
|
1311
1312
|
}
|
@@ -1359,7 +1360,7 @@ const ButtonClass = compose(
|
|
1359
1360
|
labelTextColor: { property: 'color' },
|
1360
1361
|
labelTextDecoration: { ...label$a, property: 'text-decoration' },
|
1361
1362
|
labelSpacing: { ...label$a, property: 'gap' },
|
1362
|
-
textAlign: { ...label$a, property: 'justify-content' },
|
1363
|
+
textAlign: { ...label$a, property: 'justify-content', important: true },
|
1363
1364
|
},
|
1364
1365
|
}),
|
1365
1366
|
clickableMixin,
|
@@ -7535,7 +7536,7 @@ const multiSelectComboBoxMixin = (superclass) =>
|
|
7535
7536
|
}
|
7536
7537
|
}
|
7537
7538
|
|
7538
|
-
get
|
7539
|
+
get allowCustomValues() {
|
7539
7540
|
return this.getAttribute('allow-custom-value') === 'true';
|
7540
7541
|
}
|
7541
7542
|
|
@@ -7674,7 +7675,7 @@ const multiSelectComboBoxMixin = (superclass) =>
|
|
7674
7675
|
}
|
7675
7676
|
|
7676
7677
|
#handleCustomValues() {
|
7677
|
-
if (this.
|
7678
|
+
if (this.allowCustomValues) {
|
7678
7679
|
this.baseElement.addEventListener('custom-value-set', (e) => {
|
7679
7680
|
const newItemHtml = this.#renderItem({
|
7680
7681
|
label: e.detail,
|
@@ -7782,6 +7783,33 @@ const multiSelectComboBoxMixin = (superclass) =>
|
|
7782
7783
|
const selectedChildren = this.baseElement.items?.filter((item) =>
|
7783
7784
|
vals.includes(item['data-id'])
|
7784
7785
|
);
|
7786
|
+
|
7787
|
+
// If the component allows custom values, we need to add the values that are not present in the children
|
7788
|
+
if (this.allowCustomValues) {
|
7789
|
+
const existingValues =
|
7790
|
+
selectedChildren?.map((child) => child.getAttribute('data-id')) || [];
|
7791
|
+
const missingValues = vals.filter((val) => !existingValues.includes(val));
|
7792
|
+
|
7793
|
+
if (missingValues.length) {
|
7794
|
+
const newItemsHtml = missingValues.reduce((acc, val) => {
|
7795
|
+
const newItemHtml = this.#renderItem({
|
7796
|
+
label: val,
|
7797
|
+
displayName: val,
|
7798
|
+
value: val,
|
7799
|
+
});
|
7800
|
+
return acc + newItemHtml;
|
7801
|
+
}, '');
|
7802
|
+
this.innerHTML += newItemsHtml;
|
7803
|
+
|
7804
|
+
// The value needs to be set with a timeout because it needs to execute after
|
7805
|
+
// the custom values are added to the items by the children change observer
|
7806
|
+
setTimeout(() => {
|
7807
|
+
this.value = vals;
|
7808
|
+
}, 0);
|
7809
|
+
return;
|
7810
|
+
}
|
7811
|
+
}
|
7812
|
+
|
7785
7813
|
const newSelectedValues =
|
7786
7814
|
selectedChildren?.map((child) => child.getAttribute('data-id')) || [];
|
7787
7815
|
if (!compareArraysUnordered(this.#value, newSelectedValues)) {
|