xv-webcomponents 1.17.16-qa.0 → 1.17.18-qa.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/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/xv-accordion-v2_48.cjs.entry.js +55 -13
- package/dist/cjs/xv-webcomponents.cjs.js +1 -1
- package/dist/collection/components/xv-accordion/xv-accordion.js +24 -4
- package/dist/collection/components/xv-accordion-item/xv-accordion-item.js +11 -5
- package/dist/collection/components/xv-button/xv-button.js +4 -4
- package/dist/collection/components/xv-pagination/xv-pagination.js +59 -3
- package/dist/esm/loader.js +1 -1
- package/dist/esm/xv-accordion-v2_48.entry.js +55 -13
- package/dist/esm/xv-webcomponents.js +1 -1
- package/dist/types/components/xv-accordion/xv-accordion.d.ts +5 -4
- package/dist/types/components/xv-accordion-item/xv-accordion-item.d.ts +3 -0
- package/dist/types/components/xv-button/xv-button.d.ts +1 -1
- package/dist/types/components/xv-pagination/xv-pagination.d.ts +3 -1
- package/dist/types/components.d.ts +18 -2
- package/dist/xv-webcomponents/{p-d8c62215.entry.js → p-faf8d240.entry.js} +2 -2
- package/dist/xv-webcomponents/xv-webcomponents.esm.js +1 -1
- package/package.json +1 -1
package/dist/cjs/loader.cjs.js
CHANGED
|
@@ -5,7 +5,7 @@ var index = require('./index-C4fJ70r4.js');
|
|
|
5
5
|
const defineCustomElements = async (win, options) => {
|
|
6
6
|
if (typeof window === 'undefined') return undefined;
|
|
7
7
|
await index.globalScripts();
|
|
8
|
-
return index.bootstrapLazy([["xv-accordion-v2_48.cjs",[[0,"xv-header",{"metaNav":[32],"orgUnit":[32],"baseUrl":[32],"loading":[32],"mobMenuOpen":[32],"suggestions":[32],"suggestionsLoading":[32],"notifications":[32],"showLoginModal":[32]},[[8,"xv:orgUnitChange","handleOrgUnitChange"],[8,"xv:metaNav-update","metaNavUpdate"]]],[257,"xv-dropdown-v2",{"search":[516],"disabled":[516],"multiple":[516],"required":[516],"loading":[516],"readonly":[516],"open":[1540],"error":[520],"label":[513],"helper":[513],"warning":[513],"placeholder":[513],"info":[1],"searchPlaceholder":[1,"search-placeholder"],"size":[1],"defaultValue":[8,"default-value"],"value":[1032],"variant":[1],"position":[1],"selected":[32],"selectedMap":[32],"resolvedPosition":[32]},[[0,"itemSelected","handleItemSelected"],[0,"keydown","handleKeyDown"]],{"open":[{"openChangeHandle":0}],"multiple":[{"multipleChangeHandle":0}],"value":[{"valueChange":1}]}],[257,"xv-data-table-row",{"variant":[1],"name":[1025],"collapse":[1],"collapsable":[516],"checked":[1028],"partial":[1028],"hover":[1028],"group":[4],"header":[4],"footer":[4],"disabled":[4],"readonly":[4],"required":[4],"value":[8],"collapsed":[32],"reorderable":[32],"reorderHandleMode":[32],"close":[64]}],[65,"xv-datepicker",{"value":[1040],"variant":[1],"label":[1],"helper":[1],"error":[8],"warning":[8],"readonly":[4],"disabled":[4],"loading":[4],"block":[4],"size":[513],"min":[1],"max":[1],"disabledDates":[16],"month":[32],"days":[32],"open":[32],"localError":[32]},[[4,"click","handleClickOutside"]],{"open":[{"openChange":0}],"month":[{"getCalendarGrid":0}],"min":[{"getCalendarGrid":0}],"max":[{"getCalendarGrid":0}],"disabledDates":[{"getCalendarGrid":0}],"value":[{"handleValueChange":0}]}],[1,"xv-file-uploader",{"label":[1],"description":[1],"addText":[1,"add-text"],"variant":[1],"size":[1],"accept":[16],"buttonVariant":[1,"button-variant"],"maxFileSizeMB":[2,"max-file-size-mb"],"maxFiles":[2,"max-files"],"multiple":[4],"disabled":[516],"files":[1040],"loadingStates":[1040],"error":[1537],"errors":[1040],"dragActive":[32],"errorMessages":[32],"clearFiles":[64]}],[65,"xv-number-input-v2",{"label":[1],"placeholder":[513],"name":[513],"value":[1538],"helper":[1],"error":[8],"warning":[8],"step":[2],"max":[2],"min":[2],"readonly":[4],"disabled":[4],"loading":[4],"block":[516],"size":[513]}],[1,"xv-pagination",{"total":[2],"page":[1026],"size":[1],"block":[4],"variant":[1],"responsiveVariant":[16],"totalItems":[2,"total-items"],"
|
|
8
|
+
return index.bootstrapLazy([["xv-accordion-v2_48.cjs",[[0,"xv-header",{"metaNav":[32],"orgUnit":[32],"baseUrl":[32],"loading":[32],"mobMenuOpen":[32],"suggestions":[32],"suggestionsLoading":[32],"notifications":[32],"showLoginModal":[32]},[[8,"xv:orgUnitChange","handleOrgUnitChange"],[8,"xv:metaNav-update","metaNavUpdate"]]],[257,"xv-dropdown-v2",{"search":[516],"disabled":[516],"multiple":[516],"required":[516],"loading":[516],"readonly":[516],"open":[1540],"error":[520],"label":[513],"helper":[513],"warning":[513],"placeholder":[513],"info":[1],"searchPlaceholder":[1,"search-placeholder"],"size":[1],"defaultValue":[8,"default-value"],"value":[1032],"variant":[1],"position":[1],"selected":[32],"selectedMap":[32],"resolvedPosition":[32]},[[0,"itemSelected","handleItemSelected"],[0,"keydown","handleKeyDown"]],{"open":[{"openChangeHandle":0}],"multiple":[{"multipleChangeHandle":0}],"value":[{"valueChange":1}]}],[257,"xv-data-table-row",{"variant":[1],"name":[1025],"collapse":[1],"collapsable":[516],"checked":[1028],"partial":[1028],"hover":[1028],"group":[4],"header":[4],"footer":[4],"disabled":[4],"readonly":[4],"required":[4],"value":[8],"collapsed":[32],"reorderable":[32],"reorderHandleMode":[32],"close":[64]}],[65,"xv-datepicker",{"value":[1040],"variant":[1],"label":[1],"helper":[1],"error":[8],"warning":[8],"readonly":[4],"disabled":[4],"loading":[4],"block":[4],"size":[513],"min":[1],"max":[1],"disabledDates":[16],"month":[32],"days":[32],"open":[32],"localError":[32]},[[4,"click","handleClickOutside"]],{"open":[{"openChange":0}],"month":[{"getCalendarGrid":0}],"min":[{"getCalendarGrid":0}],"max":[{"getCalendarGrid":0}],"disabledDates":[{"getCalendarGrid":0}],"value":[{"handleValueChange":0}]}],[1,"xv-file-uploader",{"label":[1],"description":[1],"addText":[1,"add-text"],"variant":[1],"size":[1],"accept":[16],"buttonVariant":[1,"button-variant"],"maxFileSizeMB":[2,"max-file-size-mb"],"maxFiles":[2,"max-files"],"multiple":[4],"disabled":[516],"files":[1040],"loadingStates":[1040],"error":[1537],"errors":[1040],"dragActive":[32],"errorMessages":[32],"clearFiles":[64]}],[65,"xv-number-input-v2",{"label":[1],"placeholder":[513],"name":[513],"value":[1538],"helper":[1],"error":[8],"warning":[8],"step":[2],"max":[2],"min":[2],"readonly":[4],"disabled":[4],"loading":[4],"block":[516],"size":[513]}],[1,"xv-pagination",{"itemsPerPage":[1026,"items-per-page"],"itemsPerPageOptions":[1,"items-per-page-options"],"total":[2],"page":[1026],"size":[1],"block":[4],"variant":[1],"responsiveVariant":[16],"totalItems":[2,"total-items"],"currentVariant":[32]}],[257,"xv-table-v2-row",{"checked":[1540],"partial":[1540],"name":[1537],"value":[520],"hover":[1540],"readonly":[516],"required":[516],"disabled":[516],"header":[516],"variant":[1537]},null,{"checked":[{"checkedChangeHandle":0}]}],[1,"xv-tag-combobox",{"options":[16],"label":[1],"size":[1],"placeholder":[1],"allowCreate":[4,"allow-create"],"maxSuggestions":[2,"max-suggestions"],"disabled":[4],"loading":[4],"readonly":[4],"error":[8],"warning":[8],"helper":[1],"value":[16],"normalizedOptions":[32],"selected":[32],"inputValue":[32],"open":[32],"filtered":[32],"highlighted":[32],"focusInput":[64],"clear":[64]},null,{"options":[{"watchOptions":0}],"value":[{"watchValue":0}]}],[65,"xv-textarea",{"value":[1025],"name":[1],"label":[1],"placeholder":[1],"helper":[1],"info":[1],"error":[8],"warning":[8],"disabled":[4],"readonly":[4],"block":[4],"counterHide":[4,"counter-hide"],"noResize":[4,"no-resize"],"loading":[4],"max":[2],"rows":[2],"size":[513]}],[257,"xv-data-table",{"size":[1],"block":[520],"loading":[4],"columnWidths":[16],"multiple":[516],"hover":[4],"reorderable":[516],"reorderHandle":[513,"reorder-handle"]},null,{"reorderable":[{"reorderableChanged":0}],"reorderHandle":[{"reorderHandleChanged":0}]}],[257,"xv-dropdown-v2-item",{"disabled":[4],"value":[1544],"selected":[1540],"multiple":[516],"size":[513]},[[0,"click","handleClick"]]],[257,"xv-image-viewer",{"src":[1],"fullscreenSrc":[1,"fullscreen-src"],"alt":[1],"placeholder":[1],"lazy":[4],"isFullscreen":[32],"loaded":[32],"fullscreenLoaded":[32],"errored":[32]}],[257,"xv-tab-v2",{"label":[513],"disabled":[516],"loading":[516],"name":[8]}],[257,"xv-table-v2",{"size":[513],"hover":[516],"loading":[516],"colsSize":[16],"selected":[32],"selectedCount":[32]},[[0,"checkedChange","handleCheckedChange"]],{"colsSize":[{"setColsSizeTemplate":0}]}],[257,"xv-tabs-v2",{"active":[1544],"loading":[516],"variant":[1],"emptyMessage":[1,"empty-message"],"hideSingleTab":[4,"hide-single-tab"],"tabElements":[32],"showArrows":[32]},[[9,"resize","updateArrowVisibility"]]],[257,"xv-accordion-v2",{"multiple":[4],"xvId":[1,"xv-id"],"value":[1025],"opened":[32],"toggleItem":[64]},null,{"value":[{"onValueChange":0}]}],[257,"xv-accordion-v2-item",{"disabled":[4],"label":[1],"value":[1],"isOpen":[32]},[[16,"accordionChange","handleAccordionChange"]]],[260,"xv-breadcrumbs-v2"],[257,"xv-button-group-v2",{"variant":[513],"multiple":[516],"value":[1025]},[[0,"click","handleClick"]],{"value":[{"onSelectionInputChange":0}],"multiple":[{"onSelectionInputChange":0}]}],[257,"xv-content-switcher-item-v2",{"value":[520],"label":[513],"icon":[513],"disabled":[516]}],[257,"xv-content-switcher-v2",{"selected":[1544],"size":[513],"iconOnly":[516,"icon-only"],"disabled":[516],"block":[516],"controlled":[516],"items":[32]}],[257,"xv-data-table-collapse",{"collapsed":[1540],"setCollapsed":[64]}],[0,"xv-footer",{"data":[32]},[[8,"xv:metaNav-update","handleLoadData"]]],[257,"xv-progress-indicator-v2",{"progress":[514],"variant":[1],"size":[1]},null,{"progress":[{"updateChildItems":0}]}],[257,"xv-progress-indicator-v2-item",{"status":[1]}],[324,"xv-radio-v2",{"name":[1],"value":[1],"label":[1],"checked":[1028],"indeterminate":[4],"block":[4],"disabled":[4],"required":[4],"reverse":[4],"readonly":[4],"error":[8],"warning":[520],"helper":[1],"size":[1]},null,{"checked":[{"onCheckedChange":0}]}],[65,"xv-slider-v2",{"label":[1],"name":[1],"min":[2],"max":[2],"value":[1026],"step":[2],"disabled":[4],"readonly":[4],"notEditable":[4,"not-editable"]}],[257,"xv-table-v2-expand",{"open":[1540],"disabled":[516]}],[260,"xv-tile",{"variant":[513],"label":[1],"error":[4],"multiple":[4],"disabled":[4],"block":[4],"name":[1],"message":[513],"value":[1025],"checked":[1028],"readonly":[1028]},[[4,"tileChange","tileChangeHandle"],[0,"click","handleClick"]]],[321,"xv-toggle",{"label":[1],"value":[1],"name":[1],"checked":[1540],"disabled":[4],"readonly":[4],"size":[513],"block":[4]}],[257,"xv-mega-menu",{"open":[1540],"activeItem":[32],"activeGroup":[32],"menuItems":[32],"applicationContext":[32],"menuLoading":[32]},[[4,"click","handleClickOutside"]]],[257,"xv-data-table-cell",{"name":[1025],"sort":[1537],"multiline":[520],"width":[1],"align":[1],"tooltip":[1]},[[0,"click","handleSort"]]],[257,"xv-table-v2-cell",{"multiline":[516],"name":[1537],"align":[513],"sort":[1537]},[[0,"click","handleSort"]]],[2,"xv-login-modal",{"visible":[4],"urls":[32],"loading":[32],"errorMessage":[32]}],[257,"xv-overflow-menu-v2",{"open":[1540],"disabled":[516],"position":[1],"alignment":[1],"size":[1],"tooltip":[1],"anchor":[1],"activeId":[32],"openMenu":[64],"closeMenu":[64],"toggleMenu":[64]},[[0,"keydown","handleKeyDown"]],{"open":[{"openChangeHandle":0}],"anchor":[{"anchorChangeHandle":0}]}],[257,"xv-overflow-menu-v2-item",{"disabled":[516],"value":[520],"variant":[513],"clickable":[4],"href":[1],"target":[1],"divider":[516],"hasIcon":[32],"hasIconEnd":[32]},[[0,"click","handleClick"]]],[257,"xv-toggle-tip",{"open":[1540],"autoSize":[516,"auto-size"],"block":[4],"position":[1],"setPopover":[64]},[[4,"click","handleClickOutside"],[0,"keydown","handleKeyDown"]],{"open":[{"openChangeHandle":0}]}],[257,"xv-modal-v2",{"open":[1540],"permanent":[516],"size":[513],"overflow":[516],"loading":[4],"openModal":[64],"closeModal":[64]}],[257,"xv-notification-v2",{"variant":[513],"dismissible":[516]}],[65,"xv-text-input-v2",{"type":[1],"label":[1],"placeholder":[513],"name":[513],"value":[1025],"autocomplete":[1],"helper":[1],"error":[8],"warning":[8],"readonly":[4],"disabled":[4],"loading":[4],"block":[516],"clearable":[516],"size":[513],"isPasswordVisible":[32]}],[257,"xv-card-v2",{"variant":[1],"media":[1],"header":[1],"body":[1],"footer":[1]}],[257,"xv-link-v2",{"href":[1],"target":[1],"disabled":[4],"size":[1],"variant":[1]}],[321,"xv-checkbox-v2",{"checked":[1540],"indeterminate":[516],"disabled":[516],"name":[513],"value":[513],"readonly":[516],"required":[516],"partial":[516],"label":[1],"size":[513],"error":[520],"align":[513],"hasFocus":[32]},null,{"checked":[{"onCheckedChange":0}]}],[257,"xv-tag-v2",{"size":[1],"color":[1],"bg":[1],"disabled":[4],"closeable":[4]}],[260,"xv-tooltip-v2",{"message":[1],"position":[1],"block":[4],"dashed":[4]},[[1,"mouseenter","onMouseEnter"],[1,"mouseleave","onMouseLeave"]]],[321,"xv-button-v2",{"value":[513],"name":[1],"label":[513],"variant":[513],"size":[513],"disabled":[516],"loading":[516],"block":[516],"type":[513],"active":[516],"hasLeftIcon":[32],"hasRightIcon":[32],"hasContent":[32]}],[257,"xv-loader-v2",{"show":[4],"variant":[1],"size":[1]}]]],["xv-mega-menu-next.cjs",[[257,"xv-mega-menu-next",{"open":[1540],"menuData":[1,"menu-data"],"activeItem":[32],"activeGroup":[32],"menuItems":[32],"applicationContext":[32],"menuLoading":[32]},[[4,"click","handleClickOutside"]],{"menuData":[{"onMenuDataChange":0}]}]]],["xv-header-next.cjs",[[0,"xv-header-next",{"menuData":[1,"menu-data"],"currentLocale":[1,"current-locale"],"locales":[1],"metaNav":[32],"orgUnit":[32],"baseUrl":[32],"loading":[32],"mobMenuOpen":[32],"suggestions":[32],"suggestionsLoading":[32],"notifications":[32],"showLoginModal":[32]},[[8,"xv:orgUnitChange","handleOrgUnitChange"],[8,"xv:metaNav-update","metaNavUpdate"]]]]]], options);
|
|
9
9
|
};
|
|
10
10
|
|
|
11
11
|
exports.setNonce = index.setNonce;
|
|
@@ -13,6 +13,8 @@ const XvAccordion = class {
|
|
|
13
13
|
this.multiple = false;
|
|
14
14
|
this.xvId = index$2.uidGenerator();
|
|
15
15
|
this.opened = new Set();
|
|
16
|
+
/** Set while `toggleItem` writes `value`, so the watcher ignores its own echo. */
|
|
17
|
+
this.applyingValue = false;
|
|
16
18
|
}
|
|
17
19
|
async toggleItem(value) {
|
|
18
20
|
if (this.opened.has(value)) {
|
|
@@ -21,20 +23,37 @@ const XvAccordion = class {
|
|
|
21
23
|
else {
|
|
22
24
|
if (!this.multiple)
|
|
23
25
|
this.opened.clear();
|
|
26
|
+
this.applyingValue = true;
|
|
24
27
|
this.value = value;
|
|
28
|
+
this.applyingValue = false;
|
|
25
29
|
this.opened.add(this.value);
|
|
26
30
|
}
|
|
27
31
|
this.accordionChange.emit({ opened: this.opened, id: this.xvId });
|
|
28
32
|
return { opened: this.opened, id: this.xvId };
|
|
29
33
|
}
|
|
34
|
+
/** Opens the named item; an empty value collapses everything. Idempotent, unlike `toggleItem`. */
|
|
35
|
+
onValueChange(value) {
|
|
36
|
+
if (this.applyingValue || (value && this.opened.has(value)))
|
|
37
|
+
return;
|
|
38
|
+
if (!this.multiple)
|
|
39
|
+
this.opened.clear();
|
|
40
|
+
if (value)
|
|
41
|
+
this.opened.add(value);
|
|
42
|
+
this.accordionChange.emit({ opened: this.opened, id: this.xvId });
|
|
43
|
+
}
|
|
30
44
|
componentWillLoad() {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
45
|
+
// Idempotent on purpose: a `value` that arrived after the instance was created is already open.
|
|
46
|
+
if (this.value)
|
|
47
|
+
this.onValueChange(this.value);
|
|
34
48
|
}
|
|
35
49
|
render() {
|
|
36
|
-
return (index$1.h(index$1.Host, { key: '
|
|
50
|
+
return (index$1.h(index$1.Host, { key: '864c65734eebb26ee02e4e900d463303fd949fc5', class: "xv-accordion", "data-id": this.xvId }, index$1.h("slot", { key: 'cc6a16ff44d25c529720a64344bebea2e258eee9' })));
|
|
37
51
|
}
|
|
52
|
+
static get watchers() { return {
|
|
53
|
+
"value": [{
|
|
54
|
+
"onValueChange": 0
|
|
55
|
+
}]
|
|
56
|
+
}; }
|
|
38
57
|
};
|
|
39
58
|
XvAccordion.style = xvAccordionCss();
|
|
40
59
|
|
|
@@ -51,18 +70,24 @@ const XvAccordionItem = class {
|
|
|
51
70
|
if (this.disabled)
|
|
52
71
|
return;
|
|
53
72
|
this.isOpen = !this.isOpen;
|
|
54
|
-
(_b = (_a = this.
|
|
73
|
+
(_b = (_a = this.parent) === null || _a === void 0 ? void 0 : _a.toggleItem) === null || _b === void 0 ? void 0 : _b.call(_a, this.value);
|
|
55
74
|
};
|
|
56
75
|
}
|
|
57
|
-
|
|
76
|
+
/** The parent emits its initial state before rendering `data-id`, so derive it instead of waiting for the event. */
|
|
77
|
+
componentWillLoad() {
|
|
58
78
|
var _a;
|
|
59
|
-
|
|
60
|
-
|
|
79
|
+
this.isOpen = !!this.value && ((_a = this.parent) === null || _a === void 0 ? void 0 : _a.value) === this.value;
|
|
80
|
+
}
|
|
81
|
+
handleAccordionChange(event) {
|
|
82
|
+
if (!this.parent || event.detail.id !== this.parent.xvId)
|
|
61
83
|
return;
|
|
62
84
|
this.isOpen = event.detail.opened.has(this.value);
|
|
63
85
|
}
|
|
86
|
+
get parent() {
|
|
87
|
+
return this.el.closest('xv-accordion-v2');
|
|
88
|
+
}
|
|
64
89
|
render() {
|
|
65
|
-
return (index$1.h(index$1.Host, { key: '
|
|
90
|
+
return (index$1.h(index$1.Host, { key: 'b2108bce08be48c6c2a73b7a3fca3ed10228d617', class: `${this.disabled ? 'disabled' : ''}` }, index$1.h("label", { key: '1210728955ddcf5f9db4649a45b0c0000dbd57eb', class: `label ${this.isOpen ? 'opened' : 'closed'}`, onClick: this.toggle }, index$1.h("span", { key: '36dc400aff4694a5cf543c6325fbcf7a16183c14' }, this.label)), index$1.h("div", { key: 'df342c991481b5f0b2e76bab3057d8ac8e22bc7e', class: `content ${this.isOpen ? 'opened' : 'closed'}` }, index$1.h("slot", { key: '8825932d92240d211dd3c19c104d73ab2987a17c' }))));
|
|
66
91
|
}
|
|
67
92
|
get el() { return index$1.getElement(this); }
|
|
68
93
|
};
|
|
@@ -224,7 +249,7 @@ const XvButton = class {
|
|
|
224
249
|
}
|
|
225
250
|
render() {
|
|
226
251
|
var _a, _b;
|
|
227
|
-
return (index$1.h(index$1.Host, { key: '
|
|
252
|
+
return (index$1.h(index$1.Host, { key: '0b4741e866dfbb0117f2742e44085bf23d43cd3b' }, index$1.h("button", { key: '37c3f64732c91255257502a1c8d97c2befd1038c', class: {
|
|
228
253
|
'xv-button': true,
|
|
229
254
|
'xv-button--active': this.active,
|
|
230
255
|
[`xv-button--${this.variant}`]: !!this.variant,
|
|
@@ -235,7 +260,7 @@ const XvButton = class {
|
|
|
235
260
|
'xv-button--icon-left': this.hasLeftIcon,
|
|
236
261
|
'xv-button--icon-right': this.hasRightIcon,
|
|
237
262
|
'xv-button--icon-only': !this.hasContent,
|
|
238
|
-
}, part: "button", title: (_a = this.el) === null || _a === void 0 ? void 0 : _a.title, value: this.value, name: this.name, onClick: this.handleClick, type: this.type, disabled: this.disabled || this.loading, "aria-disabled": this.disabled ? 'true' : undefined, "aria-pressed": this.active ? 'true' : undefined, "aria-label": ((_b = this.el) === null || _b === void 0 ? void 0 : _b.ariaLabel) || 'XV button' }, this.loading && (index$1.h("xv-loader-v2", { key: '
|
|
263
|
+
}, part: "button", title: (_a = this.el) === null || _a === void 0 ? void 0 : _a.title, value: this.value, name: this.name, onClick: this.handleClick, type: this.type, disabled: this.disabled || this.loading, "aria-disabled": this.disabled ? 'true' : undefined, "aria-pressed": this.active ? 'true' : undefined, "aria-label": ((_b = this.el) === null || _b === void 0 ? void 0 : _b.ariaLabel) || 'XV button' }, this.loading && (index$1.h("xv-loader-v2", { key: '8f9c1e0fc5dd12e2274ff0811bbd28998a8125e7', class: "xv-button__loader", size: this.size !== _vars.SIZE_VAR.XL ? this.size : _vars.SIZE_VAR.LG })), index$1.h("span", { key: '84c7fbe1ad877d8ecf2c32c4ee2b768331148dd5', class: "xv-button__icon xv-button__icon--left" }, index$1.h("slot", { key: '2d09347c947e6986c0549052c4498d55a9f1922e', name: "icon-left", onSlotchange: this.handleSlotChangeLeft })), index$1.h("span", { key: 'abef513bf0445f069bfe14dc4def3b1ef5d36deb', class: "xv-button__label" }, index$1.h("slot", { key: 'badaca4a0d972bfb54d816bef2e2b0605a069757', onSlotchange: this.handleSlotChangeContent }, this.label)), index$1.h("span", { key: '93eb382ec484b5f2e46faa5b9ca25cbbb78236bf', class: "xv-button__icon xv-button__icon--right" }, index$1.h("slot", { key: '0b1b9645e5ddfe0652dfbfda3d4795dea1f7ba70', name: "icon-right", onSlotchange: this.handleSlotChangeRight })))));
|
|
239
264
|
}
|
|
240
265
|
static get formAssociated() { return true; }
|
|
241
266
|
get el() { return index$1.getElement(this); }
|
|
@@ -82210,8 +82235,14 @@ const XvPagination = class {
|
|
|
82210
82235
|
constructor(hostRef) {
|
|
82211
82236
|
index$1.registerInstance(this, hostRef);
|
|
82212
82237
|
this.pageChange = index$1.createEvent(this, "pageChange", 7);
|
|
82238
|
+
/*
|
|
82239
|
+
* Rows per page; the select updates it, the consumer can also set it
|
|
82240
|
+
* */
|
|
82241
|
+
this.itemsPerPage = 10;
|
|
82242
|
+
/*
|
|
82243
|
+
* Selectable page sizes; array, or comma-separated via the attribute
|
|
82244
|
+
* */
|
|
82213
82245
|
this.itemsPerPageOptions = [10, 20, 30, 40, 50, 100];
|
|
82214
|
-
this.itemsPerPage = this.itemsPerPageOptions[0];
|
|
82215
82246
|
/*
|
|
82216
82247
|
* total number of pages
|
|
82217
82248
|
* */
|
|
@@ -82248,6 +82279,17 @@ const XvPagination = class {
|
|
|
82248
82279
|
this.rafId = requestAnimationFrame(() => this.updateVariantByWidth(width));
|
|
82249
82280
|
};
|
|
82250
82281
|
}
|
|
82282
|
+
/** Select options; always includes the current itemsPerPage so it can be displayed. */
|
|
82283
|
+
get pageSizeOptions() {
|
|
82284
|
+
const raw = this.itemsPerPageOptions;
|
|
82285
|
+
const parsed = (Array.isArray(raw) ? raw : `${raw !== null && raw !== void 0 ? raw : ''}`.split(','))
|
|
82286
|
+
.map((option) => Number(option))
|
|
82287
|
+
.filter((option) => Number.isFinite(option) && option > 0);
|
|
82288
|
+
const options = parsed.length ? parsed : [this.itemsPerPage];
|
|
82289
|
+
if (!options.includes(this.itemsPerPage))
|
|
82290
|
+
options.push(this.itemsPerPage);
|
|
82291
|
+
return [...new Set(options)].sort((a, b) => a - b);
|
|
82292
|
+
}
|
|
82251
82293
|
get visiblePagesWithDots() {
|
|
82252
82294
|
const total = this.total;
|
|
82253
82295
|
const current = this.page;
|
|
@@ -82297,7 +82339,7 @@ const XvPagination = class {
|
|
|
82297
82339
|
this.observer.disconnect();
|
|
82298
82340
|
}
|
|
82299
82341
|
render() {
|
|
82300
|
-
return (index$1.h(index$1.Host, { key: '
|
|
82342
|
+
return (index$1.h(index$1.Host, { key: '2c45649ea96896456a9581f91318c88e0d1da92d', class: { block: this.block, [this.currentVariant]: true, [this.size]: !!this.size } }, this.currentVariant === 'full' && (index$1.h("div", { key: '14e0b47142d8a4354189517fd905e7e40791d907', class: "block" }, index$1.h("select", { key: '5acf0ce1728ac5be192be4843c62e97e38bc1ba2', class: "options-select", name: "options", onChange: this.handleItemsPerPageChange }, this.pageSizeOptions.map((v) => index$1.h("option", { selected: v === this.itemsPerPage, value: v }, v))))), this.currentVariant === 'full' && (index$1.h("span", { key: 'f65d2dd587ebb258dd98454f759ca074a64660c5', class: "block block_full" }, `${(this.page - 1) * this.itemsPerPage + 1} – ${Math.min(this.page * this.itemsPerPage, this.totalItems)} von ${this.totalItems} Einträgen`)), this.currentVariant === 'full' && (index$1.h("div", { key: 'c553a7624172e0654e6cc7b6d912f578d2994fcd', class: "block" }, index$1.h("select", { key: '77353413fa93b1029124d24cdf9cf8dffeeef3ec', class: "options-select", name: "pages", onChange: this.handlePageSelectChange }, Array.from({ length: this.total }, (_, i) => (index$1.h("option", { selected: this.page === i + 1, value: i + 1 }, i + 1)))), index$1.h("span", { key: 'cbcc1292fdcf3856c1dfb26e3aa4fa6f7c4a9b3d' }, "von ", this.total, " Seiten"))), this.currentVariant === 'compact' && index$1.h("span", { key: 'e9c749e5f44dae92884c2c792de00e3e9d85d7f7', class: "block" }, "Seite ", this.page), index$1.h("xv-button-v2", { key: 'f78d723ac642b9a33bfd6b06d265181d6fcb8206', variant: "ghost", size: this.size, onClick: () => this.handlePageChange(this.page - 1), disabled: this.page <= 1 }, index$1.h("span", { key: 'a7bb0b0496d1aaa165079888d91fb584d71df08d', slot: "icon-left", class: "icon icon_prev" })), this.currentVariant === 'regular' && (index$1.h("ul", { key: '56304a37a61343911a49137b1ab57869d9f0c0a6', class: "list" }, this.visiblePagesWithDots.map((page) => (index$1.h("li", { class: { active: this.page === page } }, page === 'dots-start' ? (index$1.h("div", { class: "list_dots" }, index$1.h("xv-button-v2", { variant: "ghost", size: this.size, tabindex: -1 }, index$1.h("span", { slot: "icon-left", class: "list_dots__icon" }, "...")), index$1.h("select", { name: "start", onChange: this.handlePageSelectChange }, Array.from({ length: this.page - 3 }, (_, i) => (index$1.h("option", { value: i + 2 }, i + 2)))))) : page === 'dots-end' ? (index$1.h("div", { class: "list_dots" }, index$1.h("xv-button-v2", { variant: "ghost", size: this.size, tabindex: -1 }, index$1.h("span", { slot: "icon-left", class: "list_dots__icon" }, "...")), index$1.h("select", { name: "end", onChange: this.handlePageSelectChange }, Array.from({ length: this.total - (this.page + 2) }, (_, i) => (index$1.h("option", { value: i + this.page + 2 }, i + this.page + 2)))))) : (index$1.h("xv-button-v2", { variant: "ghost", size: this.size, disabled: this.page === page, onClick: () => this.handlePageChange(page) }, index$1.h("span", { class: "list_page", slot: "icon-left" }, page)))))))), index$1.h("xv-button-v2", { key: '7fe669510394685cfa3bdab5afef60e5ac56d5ff', variant: "ghost", size: this.size, onClick: () => this.handlePageChange(this.page + 1), disabled: this.page >= this.total }, index$1.h("span", { key: '8651da07fab67e8d43f04e3f84f9fa5e1f326328', slot: "icon-left", class: "icon icon_next" }))));
|
|
82301
82343
|
}
|
|
82302
82344
|
get el() { return index$1.getElement(this); }
|
|
82303
82345
|
};
|
|
@@ -18,7 +18,7 @@ var patchBrowser = () => {
|
|
|
18
18
|
|
|
19
19
|
patchBrowser().then(async (options) => {
|
|
20
20
|
await index.globalScripts();
|
|
21
|
-
return index.bootstrapLazy([["xv-accordion-v2_48.cjs",[[0,"xv-header",{"metaNav":[32],"orgUnit":[32],"baseUrl":[32],"loading":[32],"mobMenuOpen":[32],"suggestions":[32],"suggestionsLoading":[32],"notifications":[32],"showLoginModal":[32]},[[8,"xv:orgUnitChange","handleOrgUnitChange"],[8,"xv:metaNav-update","metaNavUpdate"]]],[257,"xv-dropdown-v2",{"search":[516],"disabled":[516],"multiple":[516],"required":[516],"loading":[516],"readonly":[516],"open":[1540],"error":[520],"label":[513],"helper":[513],"warning":[513],"placeholder":[513],"info":[1],"searchPlaceholder":[1,"search-placeholder"],"size":[1],"defaultValue":[8,"default-value"],"value":[1032],"variant":[1],"position":[1],"selected":[32],"selectedMap":[32],"resolvedPosition":[32]},[[0,"itemSelected","handleItemSelected"],[0,"keydown","handleKeyDown"]],{"open":[{"openChangeHandle":0}],"multiple":[{"multipleChangeHandle":0}],"value":[{"valueChange":1}]}],[257,"xv-data-table-row",{"variant":[1],"name":[1025],"collapse":[1],"collapsable":[516],"checked":[1028],"partial":[1028],"hover":[1028],"group":[4],"header":[4],"footer":[4],"disabled":[4],"readonly":[4],"required":[4],"value":[8],"collapsed":[32],"reorderable":[32],"reorderHandleMode":[32],"close":[64]}],[65,"xv-datepicker",{"value":[1040],"variant":[1],"label":[1],"helper":[1],"error":[8],"warning":[8],"readonly":[4],"disabled":[4],"loading":[4],"block":[4],"size":[513],"min":[1],"max":[1],"disabledDates":[16],"month":[32],"days":[32],"open":[32],"localError":[32]},[[4,"click","handleClickOutside"]],{"open":[{"openChange":0}],"month":[{"getCalendarGrid":0}],"min":[{"getCalendarGrid":0}],"max":[{"getCalendarGrid":0}],"disabledDates":[{"getCalendarGrid":0}],"value":[{"handleValueChange":0}]}],[1,"xv-file-uploader",{"label":[1],"description":[1],"addText":[1,"add-text"],"variant":[1],"size":[1],"accept":[16],"buttonVariant":[1,"button-variant"],"maxFileSizeMB":[2,"max-file-size-mb"],"maxFiles":[2,"max-files"],"multiple":[4],"disabled":[516],"files":[1040],"loadingStates":[1040],"error":[1537],"errors":[1040],"dragActive":[32],"errorMessages":[32],"clearFiles":[64]}],[65,"xv-number-input-v2",{"label":[1],"placeholder":[513],"name":[513],"value":[1538],"helper":[1],"error":[8],"warning":[8],"step":[2],"max":[2],"min":[2],"readonly":[4],"disabled":[4],"loading":[4],"block":[516],"size":[513]}],[1,"xv-pagination",{"total":[2],"page":[1026],"size":[1],"block":[4],"variant":[1],"responsiveVariant":[16],"totalItems":[2,"total-items"],"
|
|
21
|
+
return index.bootstrapLazy([["xv-accordion-v2_48.cjs",[[0,"xv-header",{"metaNav":[32],"orgUnit":[32],"baseUrl":[32],"loading":[32],"mobMenuOpen":[32],"suggestions":[32],"suggestionsLoading":[32],"notifications":[32],"showLoginModal":[32]},[[8,"xv:orgUnitChange","handleOrgUnitChange"],[8,"xv:metaNav-update","metaNavUpdate"]]],[257,"xv-dropdown-v2",{"search":[516],"disabled":[516],"multiple":[516],"required":[516],"loading":[516],"readonly":[516],"open":[1540],"error":[520],"label":[513],"helper":[513],"warning":[513],"placeholder":[513],"info":[1],"searchPlaceholder":[1,"search-placeholder"],"size":[1],"defaultValue":[8,"default-value"],"value":[1032],"variant":[1],"position":[1],"selected":[32],"selectedMap":[32],"resolvedPosition":[32]},[[0,"itemSelected","handleItemSelected"],[0,"keydown","handleKeyDown"]],{"open":[{"openChangeHandle":0}],"multiple":[{"multipleChangeHandle":0}],"value":[{"valueChange":1}]}],[257,"xv-data-table-row",{"variant":[1],"name":[1025],"collapse":[1],"collapsable":[516],"checked":[1028],"partial":[1028],"hover":[1028],"group":[4],"header":[4],"footer":[4],"disabled":[4],"readonly":[4],"required":[4],"value":[8],"collapsed":[32],"reorderable":[32],"reorderHandleMode":[32],"close":[64]}],[65,"xv-datepicker",{"value":[1040],"variant":[1],"label":[1],"helper":[1],"error":[8],"warning":[8],"readonly":[4],"disabled":[4],"loading":[4],"block":[4],"size":[513],"min":[1],"max":[1],"disabledDates":[16],"month":[32],"days":[32],"open":[32],"localError":[32]},[[4,"click","handleClickOutside"]],{"open":[{"openChange":0}],"month":[{"getCalendarGrid":0}],"min":[{"getCalendarGrid":0}],"max":[{"getCalendarGrid":0}],"disabledDates":[{"getCalendarGrid":0}],"value":[{"handleValueChange":0}]}],[1,"xv-file-uploader",{"label":[1],"description":[1],"addText":[1,"add-text"],"variant":[1],"size":[1],"accept":[16],"buttonVariant":[1,"button-variant"],"maxFileSizeMB":[2,"max-file-size-mb"],"maxFiles":[2,"max-files"],"multiple":[4],"disabled":[516],"files":[1040],"loadingStates":[1040],"error":[1537],"errors":[1040],"dragActive":[32],"errorMessages":[32],"clearFiles":[64]}],[65,"xv-number-input-v2",{"label":[1],"placeholder":[513],"name":[513],"value":[1538],"helper":[1],"error":[8],"warning":[8],"step":[2],"max":[2],"min":[2],"readonly":[4],"disabled":[4],"loading":[4],"block":[516],"size":[513]}],[1,"xv-pagination",{"itemsPerPage":[1026,"items-per-page"],"itemsPerPageOptions":[1,"items-per-page-options"],"total":[2],"page":[1026],"size":[1],"block":[4],"variant":[1],"responsiveVariant":[16],"totalItems":[2,"total-items"],"currentVariant":[32]}],[257,"xv-table-v2-row",{"checked":[1540],"partial":[1540],"name":[1537],"value":[520],"hover":[1540],"readonly":[516],"required":[516],"disabled":[516],"header":[516],"variant":[1537]},null,{"checked":[{"checkedChangeHandle":0}]}],[1,"xv-tag-combobox",{"options":[16],"label":[1],"size":[1],"placeholder":[1],"allowCreate":[4,"allow-create"],"maxSuggestions":[2,"max-suggestions"],"disabled":[4],"loading":[4],"readonly":[4],"error":[8],"warning":[8],"helper":[1],"value":[16],"normalizedOptions":[32],"selected":[32],"inputValue":[32],"open":[32],"filtered":[32],"highlighted":[32],"focusInput":[64],"clear":[64]},null,{"options":[{"watchOptions":0}],"value":[{"watchValue":0}]}],[65,"xv-textarea",{"value":[1025],"name":[1],"label":[1],"placeholder":[1],"helper":[1],"info":[1],"error":[8],"warning":[8],"disabled":[4],"readonly":[4],"block":[4],"counterHide":[4,"counter-hide"],"noResize":[4,"no-resize"],"loading":[4],"max":[2],"rows":[2],"size":[513]}],[257,"xv-data-table",{"size":[1],"block":[520],"loading":[4],"columnWidths":[16],"multiple":[516],"hover":[4],"reorderable":[516],"reorderHandle":[513,"reorder-handle"]},null,{"reorderable":[{"reorderableChanged":0}],"reorderHandle":[{"reorderHandleChanged":0}]}],[257,"xv-dropdown-v2-item",{"disabled":[4],"value":[1544],"selected":[1540],"multiple":[516],"size":[513]},[[0,"click","handleClick"]]],[257,"xv-image-viewer",{"src":[1],"fullscreenSrc":[1,"fullscreen-src"],"alt":[1],"placeholder":[1],"lazy":[4],"isFullscreen":[32],"loaded":[32],"fullscreenLoaded":[32],"errored":[32]}],[257,"xv-tab-v2",{"label":[513],"disabled":[516],"loading":[516],"name":[8]}],[257,"xv-table-v2",{"size":[513],"hover":[516],"loading":[516],"colsSize":[16],"selected":[32],"selectedCount":[32]},[[0,"checkedChange","handleCheckedChange"]],{"colsSize":[{"setColsSizeTemplate":0}]}],[257,"xv-tabs-v2",{"active":[1544],"loading":[516],"variant":[1],"emptyMessage":[1,"empty-message"],"hideSingleTab":[4,"hide-single-tab"],"tabElements":[32],"showArrows":[32]},[[9,"resize","updateArrowVisibility"]]],[257,"xv-accordion-v2",{"multiple":[4],"xvId":[1,"xv-id"],"value":[1025],"opened":[32],"toggleItem":[64]},null,{"value":[{"onValueChange":0}]}],[257,"xv-accordion-v2-item",{"disabled":[4],"label":[1],"value":[1],"isOpen":[32]},[[16,"accordionChange","handleAccordionChange"]]],[260,"xv-breadcrumbs-v2"],[257,"xv-button-group-v2",{"variant":[513],"multiple":[516],"value":[1025]},[[0,"click","handleClick"]],{"value":[{"onSelectionInputChange":0}],"multiple":[{"onSelectionInputChange":0}]}],[257,"xv-content-switcher-item-v2",{"value":[520],"label":[513],"icon":[513],"disabled":[516]}],[257,"xv-content-switcher-v2",{"selected":[1544],"size":[513],"iconOnly":[516,"icon-only"],"disabled":[516],"block":[516],"controlled":[516],"items":[32]}],[257,"xv-data-table-collapse",{"collapsed":[1540],"setCollapsed":[64]}],[0,"xv-footer",{"data":[32]},[[8,"xv:metaNav-update","handleLoadData"]]],[257,"xv-progress-indicator-v2",{"progress":[514],"variant":[1],"size":[1]},null,{"progress":[{"updateChildItems":0}]}],[257,"xv-progress-indicator-v2-item",{"status":[1]}],[324,"xv-radio-v2",{"name":[1],"value":[1],"label":[1],"checked":[1028],"indeterminate":[4],"block":[4],"disabled":[4],"required":[4],"reverse":[4],"readonly":[4],"error":[8],"warning":[520],"helper":[1],"size":[1]},null,{"checked":[{"onCheckedChange":0}]}],[65,"xv-slider-v2",{"label":[1],"name":[1],"min":[2],"max":[2],"value":[1026],"step":[2],"disabled":[4],"readonly":[4],"notEditable":[4,"not-editable"]}],[257,"xv-table-v2-expand",{"open":[1540],"disabled":[516]}],[260,"xv-tile",{"variant":[513],"label":[1],"error":[4],"multiple":[4],"disabled":[4],"block":[4],"name":[1],"message":[513],"value":[1025],"checked":[1028],"readonly":[1028]},[[4,"tileChange","tileChangeHandle"],[0,"click","handleClick"]]],[321,"xv-toggle",{"label":[1],"value":[1],"name":[1],"checked":[1540],"disabled":[4],"readonly":[4],"size":[513],"block":[4]}],[257,"xv-mega-menu",{"open":[1540],"activeItem":[32],"activeGroup":[32],"menuItems":[32],"applicationContext":[32],"menuLoading":[32]},[[4,"click","handleClickOutside"]]],[257,"xv-data-table-cell",{"name":[1025],"sort":[1537],"multiline":[520],"width":[1],"align":[1],"tooltip":[1]},[[0,"click","handleSort"]]],[257,"xv-table-v2-cell",{"multiline":[516],"name":[1537],"align":[513],"sort":[1537]},[[0,"click","handleSort"]]],[2,"xv-login-modal",{"visible":[4],"urls":[32],"loading":[32],"errorMessage":[32]}],[257,"xv-overflow-menu-v2",{"open":[1540],"disabled":[516],"position":[1],"alignment":[1],"size":[1],"tooltip":[1],"anchor":[1],"activeId":[32],"openMenu":[64],"closeMenu":[64],"toggleMenu":[64]},[[0,"keydown","handleKeyDown"]],{"open":[{"openChangeHandle":0}],"anchor":[{"anchorChangeHandle":0}]}],[257,"xv-overflow-menu-v2-item",{"disabled":[516],"value":[520],"variant":[513],"clickable":[4],"href":[1],"target":[1],"divider":[516],"hasIcon":[32],"hasIconEnd":[32]},[[0,"click","handleClick"]]],[257,"xv-toggle-tip",{"open":[1540],"autoSize":[516,"auto-size"],"block":[4],"position":[1],"setPopover":[64]},[[4,"click","handleClickOutside"],[0,"keydown","handleKeyDown"]],{"open":[{"openChangeHandle":0}]}],[257,"xv-modal-v2",{"open":[1540],"permanent":[516],"size":[513],"overflow":[516],"loading":[4],"openModal":[64],"closeModal":[64]}],[257,"xv-notification-v2",{"variant":[513],"dismissible":[516]}],[65,"xv-text-input-v2",{"type":[1],"label":[1],"placeholder":[513],"name":[513],"value":[1025],"autocomplete":[1],"helper":[1],"error":[8],"warning":[8],"readonly":[4],"disabled":[4],"loading":[4],"block":[516],"clearable":[516],"size":[513],"isPasswordVisible":[32]}],[257,"xv-card-v2",{"variant":[1],"media":[1],"header":[1],"body":[1],"footer":[1]}],[257,"xv-link-v2",{"href":[1],"target":[1],"disabled":[4],"size":[1],"variant":[1]}],[321,"xv-checkbox-v2",{"checked":[1540],"indeterminate":[516],"disabled":[516],"name":[513],"value":[513],"readonly":[516],"required":[516],"partial":[516],"label":[1],"size":[513],"error":[520],"align":[513],"hasFocus":[32]},null,{"checked":[{"onCheckedChange":0}]}],[257,"xv-tag-v2",{"size":[1],"color":[1],"bg":[1],"disabled":[4],"closeable":[4]}],[260,"xv-tooltip-v2",{"message":[1],"position":[1],"block":[4],"dashed":[4]},[[1,"mouseenter","onMouseEnter"],[1,"mouseleave","onMouseLeave"]]],[321,"xv-button-v2",{"value":[513],"name":[1],"label":[513],"variant":[513],"size":[513],"disabled":[516],"loading":[516],"block":[516],"type":[513],"active":[516],"hasLeftIcon":[32],"hasRightIcon":[32],"hasContent":[32]}],[257,"xv-loader-v2",{"show":[4],"variant":[1],"size":[1]}]]],["xv-mega-menu-next.cjs",[[257,"xv-mega-menu-next",{"open":[1540],"menuData":[1,"menu-data"],"activeItem":[32],"activeGroup":[32],"menuItems":[32],"applicationContext":[32],"menuLoading":[32]},[[4,"click","handleClickOutside"]],{"menuData":[{"onMenuDataChange":0}]}]]],["xv-header-next.cjs",[[0,"xv-header-next",{"menuData":[1,"menu-data"],"currentLocale":[1,"current-locale"],"locales":[1],"metaNav":[32],"orgUnit":[32],"baseUrl":[32],"loading":[32],"mobMenuOpen":[32],"suggestions":[32],"suggestionsLoading":[32],"notifications":[32],"showLoginModal":[32]},[[8,"xv:orgUnitChange","handleOrgUnitChange"],[8,"xv:metaNav-update","metaNavUpdate"]]]]]], options);
|
|
22
22
|
});
|
|
23
23
|
|
|
24
24
|
exports.setNonce = index.setNonce;
|
|
@@ -5,6 +5,8 @@ export class XvAccordion {
|
|
|
5
5
|
this.multiple = false;
|
|
6
6
|
this.xvId = uidGenerator();
|
|
7
7
|
this.opened = new Set();
|
|
8
|
+
/** Set while `toggleItem` writes `value`, so the watcher ignores its own echo. */
|
|
9
|
+
this.applyingValue = false;
|
|
8
10
|
}
|
|
9
11
|
async toggleItem(value) {
|
|
10
12
|
if (this.opened.has(value)) {
|
|
@@ -13,19 +15,31 @@ export class XvAccordion {
|
|
|
13
15
|
else {
|
|
14
16
|
if (!this.multiple)
|
|
15
17
|
this.opened.clear();
|
|
18
|
+
this.applyingValue = true;
|
|
16
19
|
this.value = value;
|
|
20
|
+
this.applyingValue = false;
|
|
17
21
|
this.opened.add(this.value);
|
|
18
22
|
}
|
|
19
23
|
this.accordionChange.emit({ opened: this.opened, id: this.xvId });
|
|
20
24
|
return { opened: this.opened, id: this.xvId };
|
|
21
25
|
}
|
|
26
|
+
/** Opens the named item; an empty value collapses everything. Idempotent, unlike `toggleItem`. */
|
|
27
|
+
onValueChange(value) {
|
|
28
|
+
if (this.applyingValue || (value && this.opened.has(value)))
|
|
29
|
+
return;
|
|
30
|
+
if (!this.multiple)
|
|
31
|
+
this.opened.clear();
|
|
32
|
+
if (value)
|
|
33
|
+
this.opened.add(value);
|
|
34
|
+
this.accordionChange.emit({ opened: this.opened, id: this.xvId });
|
|
35
|
+
}
|
|
22
36
|
componentWillLoad() {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
37
|
+
// Idempotent on purpose: a `value` that arrived after the instance was created is already open.
|
|
38
|
+
if (this.value)
|
|
39
|
+
this.onValueChange(this.value);
|
|
26
40
|
}
|
|
27
41
|
render() {
|
|
28
|
-
return (h(Host, { key: '
|
|
42
|
+
return (h(Host, { key: '864c65734eebb26ee02e4e900d463303fd949fc5', class: "xv-accordion", "data-id": this.xvId }, h("slot", { key: 'cc6a16ff44d25c529720a64344bebea2e258eee9' })));
|
|
29
43
|
}
|
|
30
44
|
static get is() { return "xv-accordion-v2"; }
|
|
31
45
|
static get encapsulation() { return "shadow"; }
|
|
@@ -159,4 +173,10 @@ export class XvAccordion {
|
|
|
159
173
|
}
|
|
160
174
|
};
|
|
161
175
|
}
|
|
176
|
+
static get watchers() {
|
|
177
|
+
return [{
|
|
178
|
+
"propName": "value",
|
|
179
|
+
"methodName": "onValueChange"
|
|
180
|
+
}];
|
|
181
|
+
}
|
|
162
182
|
}
|
|
@@ -8,18 +8,24 @@ export class XvAccordionItem {
|
|
|
8
8
|
if (this.disabled)
|
|
9
9
|
return;
|
|
10
10
|
this.isOpen = !this.isOpen;
|
|
11
|
-
(_b = (_a = this.
|
|
11
|
+
(_b = (_a = this.parent) === null || _a === void 0 ? void 0 : _a.toggleItem) === null || _b === void 0 ? void 0 : _b.call(_a, this.value);
|
|
12
12
|
};
|
|
13
13
|
}
|
|
14
|
-
|
|
14
|
+
/** The parent emits its initial state before rendering `data-id`, so derive it instead of waiting for the event. */
|
|
15
|
+
componentWillLoad() {
|
|
15
16
|
var _a;
|
|
16
|
-
|
|
17
|
-
|
|
17
|
+
this.isOpen = !!this.value && ((_a = this.parent) === null || _a === void 0 ? void 0 : _a.value) === this.value;
|
|
18
|
+
}
|
|
19
|
+
handleAccordionChange(event) {
|
|
20
|
+
if (!this.parent || event.detail.id !== this.parent.xvId)
|
|
18
21
|
return;
|
|
19
22
|
this.isOpen = event.detail.opened.has(this.value);
|
|
20
23
|
}
|
|
24
|
+
get parent() {
|
|
25
|
+
return this.el.closest('xv-accordion-v2');
|
|
26
|
+
}
|
|
21
27
|
render() {
|
|
22
|
-
return (h(Host, { key: '
|
|
28
|
+
return (h(Host, { key: 'b2108bce08be48c6c2a73b7a3fca3ed10228d617', class: `${this.disabled ? 'disabled' : ''}` }, h("label", { key: '1210728955ddcf5f9db4649a45b0c0000dbd57eb', class: `label ${this.isOpen ? 'opened' : 'closed'}`, onClick: this.toggle }, h("span", { key: '36dc400aff4694a5cf543c6325fbcf7a16183c14' }, this.label)), h("div", { key: 'df342c991481b5f0b2e76bab3057d8ac8e22bc7e', class: `content ${this.isOpen ? 'opened' : 'closed'}` }, h("slot", { key: '8825932d92240d211dd3c19c104d73ab2987a17c' }))));
|
|
23
29
|
}
|
|
24
30
|
static get is() { return "xv-accordion-v2-item"; }
|
|
25
31
|
static get encapsulation() { return "shadow"; }
|
|
@@ -44,7 +44,7 @@ export class XvButton {
|
|
|
44
44
|
}
|
|
45
45
|
render() {
|
|
46
46
|
var _a, _b;
|
|
47
|
-
return (h(Host, { key: '
|
|
47
|
+
return (h(Host, { key: '0b4741e866dfbb0117f2742e44085bf23d43cd3b' }, h("button", { key: '37c3f64732c91255257502a1c8d97c2befd1038c', class: {
|
|
48
48
|
'xv-button': true,
|
|
49
49
|
'xv-button--active': this.active,
|
|
50
50
|
[`xv-button--${this.variant}`]: !!this.variant,
|
|
@@ -55,7 +55,7 @@ export class XvButton {
|
|
|
55
55
|
'xv-button--icon-left': this.hasLeftIcon,
|
|
56
56
|
'xv-button--icon-right': this.hasRightIcon,
|
|
57
57
|
'xv-button--icon-only': !this.hasContent,
|
|
58
|
-
}, part: "button", title: (_a = this.el) === null || _a === void 0 ? void 0 : _a.title, value: this.value, name: this.name, onClick: this.handleClick, type: this.type, disabled: this.disabled || this.loading, "aria-disabled": this.disabled ? 'true' : undefined, "aria-pressed": this.active ? 'true' : undefined, "aria-label": ((_b = this.el) === null || _b === void 0 ? void 0 : _b.ariaLabel) || 'XV button' }, this.loading && (h("xv-loader-v2", { key: '
|
|
58
|
+
}, part: "button", title: (_a = this.el) === null || _a === void 0 ? void 0 : _a.title, value: this.value, name: this.name, onClick: this.handleClick, type: this.type, disabled: this.disabled || this.loading, "aria-disabled": this.disabled ? 'true' : undefined, "aria-pressed": this.active ? 'true' : undefined, "aria-label": ((_b = this.el) === null || _b === void 0 ? void 0 : _b.ariaLabel) || 'XV button' }, this.loading && (h("xv-loader-v2", { key: '8f9c1e0fc5dd12e2274ff0811bbd28998a8125e7', class: "xv-button__loader", size: this.size !== SIZE_VAR.XL ? this.size : SIZE_VAR.LG })), h("span", { key: '84c7fbe1ad877d8ecf2c32c4ee2b768331148dd5', class: "xv-button__icon xv-button__icon--left" }, h("slot", { key: '2d09347c947e6986c0549052c4498d55a9f1922e', name: "icon-left", onSlotchange: this.handleSlotChangeLeft })), h("span", { key: 'abef513bf0445f069bfe14dc4def3b1ef5d36deb', class: "xv-button__label" }, h("slot", { key: 'badaca4a0d972bfb54d816bef2e2b0605a069757', onSlotchange: this.handleSlotChangeContent }, this.label)), h("span", { key: '93eb382ec484b5f2e46faa5b9ca25cbbb78236bf', class: "xv-button__icon xv-button__icon--right" }, h("slot", { key: '0b1b9645e5ddfe0652dfbfda3d4795dea1f7ba70', name: "icon-right", onSlotchange: this.handleSlotChangeRight })))));
|
|
59
59
|
}
|
|
60
60
|
static get is() { return "xv-button-v2"; }
|
|
61
61
|
static get encapsulation() { return "shadow"; }
|
|
@@ -84,11 +84,11 @@ export class XvButton {
|
|
|
84
84
|
"optional": true,
|
|
85
85
|
"docs": {
|
|
86
86
|
"tags": [],
|
|
87
|
-
"text": "Button value is optional"
|
|
87
|
+
"text": "Button value is optional. Reflected \u2014 xv-button-group-v2 keys its children by the attribute."
|
|
88
88
|
},
|
|
89
89
|
"getter": false,
|
|
90
90
|
"setter": false,
|
|
91
|
-
"reflect":
|
|
91
|
+
"reflect": true,
|
|
92
92
|
"attribute": "value"
|
|
93
93
|
},
|
|
94
94
|
"name": {
|
|
@@ -2,8 +2,14 @@ import { Host, h } from "@stencil/core";
|
|
|
2
2
|
import { SIZE_VAR } from "../../types/enum";
|
|
3
3
|
export class XvPagination {
|
|
4
4
|
constructor() {
|
|
5
|
+
/*
|
|
6
|
+
* Rows per page; the select updates it, the consumer can also set it
|
|
7
|
+
* */
|
|
8
|
+
this.itemsPerPage = 10;
|
|
9
|
+
/*
|
|
10
|
+
* Selectable page sizes; array, or comma-separated via the attribute
|
|
11
|
+
* */
|
|
5
12
|
this.itemsPerPageOptions = [10, 20, 30, 40, 50, 100];
|
|
6
|
-
this.itemsPerPage = this.itemsPerPageOptions[0];
|
|
7
13
|
/*
|
|
8
14
|
* total number of pages
|
|
9
15
|
* */
|
|
@@ -40,6 +46,17 @@ export class XvPagination {
|
|
|
40
46
|
this.rafId = requestAnimationFrame(() => this.updateVariantByWidth(width));
|
|
41
47
|
};
|
|
42
48
|
}
|
|
49
|
+
/** Select options; always includes the current itemsPerPage so it can be displayed. */
|
|
50
|
+
get pageSizeOptions() {
|
|
51
|
+
const raw = this.itemsPerPageOptions;
|
|
52
|
+
const parsed = (Array.isArray(raw) ? raw : `${raw !== null && raw !== void 0 ? raw : ''}`.split(','))
|
|
53
|
+
.map((option) => Number(option))
|
|
54
|
+
.filter((option) => Number.isFinite(option) && option > 0);
|
|
55
|
+
const options = parsed.length ? parsed : [this.itemsPerPage];
|
|
56
|
+
if (!options.includes(this.itemsPerPage))
|
|
57
|
+
options.push(this.itemsPerPage);
|
|
58
|
+
return [...new Set(options)].sort((a, b) => a - b);
|
|
59
|
+
}
|
|
43
60
|
get visiblePagesWithDots() {
|
|
44
61
|
const total = this.total;
|
|
45
62
|
const current = this.page;
|
|
@@ -89,7 +106,7 @@ export class XvPagination {
|
|
|
89
106
|
this.observer.disconnect();
|
|
90
107
|
}
|
|
91
108
|
render() {
|
|
92
|
-
return (h(Host, { key: '
|
|
109
|
+
return (h(Host, { key: '2c45649ea96896456a9581f91318c88e0d1da92d', class: { block: this.block, [this.currentVariant]: true, [this.size]: !!this.size } }, this.currentVariant === 'full' && (h("div", { key: '14e0b47142d8a4354189517fd905e7e40791d907', class: "block" }, h("select", { key: '5acf0ce1728ac5be192be4843c62e97e38bc1ba2', class: "options-select", name: "options", onChange: this.handleItemsPerPageChange }, this.pageSizeOptions.map((v) => h("option", { selected: v === this.itemsPerPage, value: v }, v))))), this.currentVariant === 'full' && (h("span", { key: 'f65d2dd587ebb258dd98454f759ca074a64660c5', class: "block block_full" }, `${(this.page - 1) * this.itemsPerPage + 1} – ${Math.min(this.page * this.itemsPerPage, this.totalItems)} von ${this.totalItems} Einträgen`)), this.currentVariant === 'full' && (h("div", { key: 'c553a7624172e0654e6cc7b6d912f578d2994fcd', class: "block" }, h("select", { key: '77353413fa93b1029124d24cdf9cf8dffeeef3ec', class: "options-select", name: "pages", onChange: this.handlePageSelectChange }, Array.from({ length: this.total }, (_, i) => (h("option", { selected: this.page === i + 1, value: i + 1 }, i + 1)))), h("span", { key: 'cbcc1292fdcf3856c1dfb26e3aa4fa6f7c4a9b3d' }, "von ", this.total, " Seiten"))), this.currentVariant === 'compact' && h("span", { key: 'e9c749e5f44dae92884c2c792de00e3e9d85d7f7', class: "block" }, "Seite ", this.page), h("xv-button-v2", { key: 'f78d723ac642b9a33bfd6b06d265181d6fcb8206', variant: "ghost", size: this.size, onClick: () => this.handlePageChange(this.page - 1), disabled: this.page <= 1 }, h("span", { key: 'a7bb0b0496d1aaa165079888d91fb584d71df08d', slot: "icon-left", class: "icon icon_prev" })), this.currentVariant === 'regular' && (h("ul", { key: '56304a37a61343911a49137b1ab57869d9f0c0a6', class: "list" }, this.visiblePagesWithDots.map((page) => (h("li", { class: { active: this.page === page } }, page === 'dots-start' ? (h("div", { class: "list_dots" }, h("xv-button-v2", { variant: "ghost", size: this.size, tabindex: -1 }, h("span", { slot: "icon-left", class: "list_dots__icon" }, "...")), h("select", { name: "start", onChange: this.handlePageSelectChange }, Array.from({ length: this.page - 3 }, (_, i) => (h("option", { value: i + 2 }, i + 2)))))) : page === 'dots-end' ? (h("div", { class: "list_dots" }, h("xv-button-v2", { variant: "ghost", size: this.size, tabindex: -1 }, h("span", { slot: "icon-left", class: "list_dots__icon" }, "...")), h("select", { name: "end", onChange: this.handlePageSelectChange }, Array.from({ length: this.total - (this.page + 2) }, (_, i) => (h("option", { value: i + this.page + 2 }, i + this.page + 2)))))) : (h("xv-button-v2", { variant: "ghost", size: this.size, disabled: this.page === page, onClick: () => this.handlePageChange(page) }, h("span", { class: "list_page", slot: "icon-left" }, page)))))))), h("xv-button-v2", { key: '7fe669510394685cfa3bdab5afef60e5ac56d5ff', variant: "ghost", size: this.size, onClick: () => this.handlePageChange(this.page + 1), disabled: this.page >= this.total }, h("span", { key: '8651da07fab67e8d43f04e3f84f9fa5e1f326328', slot: "icon-left", class: "icon icon_next" }))));
|
|
93
110
|
}
|
|
94
111
|
static get is() { return "xv-pagination"; }
|
|
95
112
|
static get encapsulation() { return "shadow"; }
|
|
@@ -105,6 +122,46 @@ export class XvPagination {
|
|
|
105
122
|
}
|
|
106
123
|
static get properties() {
|
|
107
124
|
return {
|
|
125
|
+
"itemsPerPage": {
|
|
126
|
+
"type": "number",
|
|
127
|
+
"mutable": true,
|
|
128
|
+
"complexType": {
|
|
129
|
+
"original": "number",
|
|
130
|
+
"resolved": "number",
|
|
131
|
+
"references": {}
|
|
132
|
+
},
|
|
133
|
+
"required": false,
|
|
134
|
+
"optional": false,
|
|
135
|
+
"docs": {
|
|
136
|
+
"tags": [],
|
|
137
|
+
"text": ""
|
|
138
|
+
},
|
|
139
|
+
"getter": false,
|
|
140
|
+
"setter": false,
|
|
141
|
+
"reflect": false,
|
|
142
|
+
"attribute": "items-per-page",
|
|
143
|
+
"defaultValue": "10"
|
|
144
|
+
},
|
|
145
|
+
"itemsPerPageOptions": {
|
|
146
|
+
"type": "string",
|
|
147
|
+
"mutable": false,
|
|
148
|
+
"complexType": {
|
|
149
|
+
"original": "number[] | string",
|
|
150
|
+
"resolved": "number[] | string",
|
|
151
|
+
"references": {}
|
|
152
|
+
},
|
|
153
|
+
"required": false,
|
|
154
|
+
"optional": false,
|
|
155
|
+
"docs": {
|
|
156
|
+
"tags": [],
|
|
157
|
+
"text": ""
|
|
158
|
+
},
|
|
159
|
+
"getter": false,
|
|
160
|
+
"setter": false,
|
|
161
|
+
"reflect": false,
|
|
162
|
+
"attribute": "items-per-page-options",
|
|
163
|
+
"defaultValue": "[10, 20, 30, 40, 50, 100]"
|
|
164
|
+
},
|
|
108
165
|
"total": {
|
|
109
166
|
"type": "number",
|
|
110
167
|
"mutable": false,
|
|
@@ -271,7 +328,6 @@ export class XvPagination {
|
|
|
271
328
|
}
|
|
272
329
|
static get states() {
|
|
273
330
|
return {
|
|
274
|
-
"itemsPerPage": {},
|
|
275
331
|
"currentVariant": {}
|
|
276
332
|
};
|
|
277
333
|
}
|