@public-ui/hydrate 3.0.2-rc.0 → 3.0.2-rc.2

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.
Files changed (3) hide show
  1. package/dist/index.js +332 -181
  2. package/dist/index.mjs +332 -181
  3. package/package.json +3 -3
package/dist/index.mjs CHANGED
@@ -4290,13 +4290,31 @@ const validateMsg = (component, value) => {
4290
4290
  }
4291
4291
  catch (e) {
4292
4292
  }
4293
- watchValidator(component, `_msg`, (value) => (isObject$2(value) && isString$3(value === null || value === void 0 ? void 0 : value._description, 1)) || (value === null || value === void 0 ? void 0 : value._type) === undefined, new Set(['MsgPropType']), value);
4293
+ watchValidator(component, `_msg`, (value) => {
4294
+ if (value === undefined) {
4295
+ return true;
4296
+ }
4297
+ if (typeof value === 'string' && value.length > 0) {
4298
+ return true;
4299
+ }
4300
+ if (isObject$2(value) && value !== null) {
4301
+ const objValue = value;
4302
+ return isString$3(objValue._description, 1);
4303
+ }
4304
+ return false;
4305
+ }, new Set(['MsgPropType', 'string']), value);
4294
4306
  });
4295
4307
  };
4296
4308
  function convertMsgToInternMsg(msg) {
4297
4309
  if (!msg) {
4298
4310
  return undefined;
4299
4311
  }
4312
+ if (typeof msg === 'string') {
4313
+ return {
4314
+ description: msg,
4315
+ type: 'error',
4316
+ };
4317
+ }
4300
4318
  return transformObjectProperties(msg);
4301
4319
  }
4302
4320
  function checkHasMsg(msg, touched) {
@@ -4518,7 +4536,7 @@ let KolInputCheckboxTag = 'kol-input-checkbox';
4518
4536
  let KolInputNumberTag = 'kol-input-number';
4519
4537
  let KolLinkTag = 'kol-link';
4520
4538
  let KolLinkWcTag = 'kol-link-wc';
4521
- let KolPaginationTag = 'kol-pagination';
4539
+ let KolPaginationWcTag = 'kol-pagination-wc';
4522
4540
  let KolPopoverWcTag = 'kol-popover-wc';
4523
4541
  let KolPopoverButtonWcTag = 'kol-popover-button-wc';
4524
4542
  let KolSelectTag = 'kol-select';
@@ -4625,18 +4643,14 @@ function isValidHeadingLevel(level) {
4625
4643
  function getHeadlineTag(level) {
4626
4644
  return isValidHeadingLevel(level) ? `h${level}` : 'strong';
4627
4645
  }
4628
- function getSubHeadlineTag(level) {
4629
- return level === 1 ? 'span' : getHeadlineTag(level);
4630
- }
4631
4646
  const KolHeadlineFc = (_a, children) => {
4632
4647
  var { class: classNames, level = MIN_HEADING_LEVEL } = _a, other = __rest(_a, ["class", "level"]);
4633
4648
  const HeadlineTag = getHeadlineTag(level);
4634
4649
  return (hAsync(HeadlineTag, Object.assign({ class: clsx('kol-headline', `kol-headline--${HeadlineTag}`, classNames) }, other), children));
4635
4650
  };
4636
4651
  const KolSecondaryHeadlineFc = (_a, children) => {
4637
- var { class: classNames, level = MIN_HEADING_LEVEL } = _a, other = __rest(_a, ["class", "level"]);
4638
- const HeadlineTag = getSubHeadlineTag(level + 1);
4639
- return (hAsync(HeadlineTag, Object.assign({ class: clsx('kol-headline kol-headline--group kol-headline--secondary', classNames) }, other), children));
4652
+ var { class: classNames } = _a, other = __rest(_a, ["class"]);
4653
+ return (hAsync("p", Object.assign({ class: clsx('kol-headline kol-headline--group kol-headline--secondary', classNames) }, other), children));
4640
4654
  };
4641
4655
  const KolHeadingFc = (_a, children) => {
4642
4656
  var { secondaryHeadline, level = MIN_HEADING_LEVEL, class: classNames, HeadingGroupProps = {}, SecondaryHeadlineProps = {} } = _a, other = __rest(_a, ["secondaryHeadline", "level", "class", "HeadingGroupProps", "SecondaryHeadlineProps"]);
@@ -4648,7 +4662,7 @@ const KolHeadingFc = (_a, children) => {
4648
4662
  const headlineGroupProps = Object.assign({ class: clsx('kol-heading-group', groupClassNames) }, groupOthers);
4649
4663
  return (hAsync("hgroup", Object.assign({}, headlineGroupProps),
4650
4664
  hAsync(KolHeadlineFc, Object.assign({ class: clsx(classNames, 'kol-headline--group', 'kol-headline--primary') }, headlineProps), children),
4651
- hAsync(KolSecondaryHeadlineFc, Object.assign({ level: level }, SecondaryHeadlineProps), secondaryHeadline)));
4665
+ hAsync(KolSecondaryHeadlineFc, Object.assign({}, SecondaryHeadlineProps), secondaryHeadline)));
4652
4666
  };
4653
4667
 
4654
4668
  const KolCollapsibleFc = (props, children) => {
@@ -5177,7 +5191,7 @@ const KolAlertFc = (props, children) => {
5177
5191
  [`h${level}`]: true,
5178
5192
  });
5179
5193
  const rootProps = Object.assign({ class: clsx(classNames, BEM_CLASS_ROOT), role: alert ? (type === 'error' ? 'alert' : 'status') : undefined }, other);
5180
- return (hAsync("div", Object.assign({}, rootProps),
5194
+ return (hAsync("div", Object.assign({}, rootProps, { "data-testid": "alert" }),
5181
5195
  hAsync("div", { class: "kol-alert__container" },
5182
5196
  hAsync(AlertIcon, { label: label, type: type }),
5183
5197
  hAsync("div", { class: "kol-alert__container-content" },
@@ -16628,25 +16642,28 @@ class KolButtonWc {
16628
16642
  var _a;
16629
16643
  (_a = this.buttonRef) === null || _a === void 0 ? void 0 : _a.focus();
16630
16644
  }
16645
+ async hideTooltip() {
16646
+ var _a;
16647
+ void ((_a = this.tooltipRef) === null || _a === void 0 ? void 0 : _a.hideTooltip());
16648
+ }
16631
16649
  render() {
16632
16650
  var _a, _b;
16633
16651
  const hasExpertSlot = showExpertSlot(this.state._label);
16634
16652
  const hasAriaDescription = Boolean((_b = (_a = this.state._ariaDescription) === null || _a === void 0 ? void 0 : _a.trim()) === null || _b === void 0 ? void 0 : _b.length);
16635
16653
  const badgeText = this.state._accessKey || this.state._shortKey;
16636
- return (hAsync(Host, { key: '2b703fead6b1346566b8ba69fb37c3cdc5a5a537' }, hAsync("button", { key: 'eb4f2749f914c1dfcc37e1127b9af301f2e0c2f2', ref: this.catchRef, accessKey: this.state._accessKey || undefined, "aria-controls": this.state._ariaControls, "aria-describedby": hasAriaDescription ? this.internalDescriptionById : undefined, "aria-expanded": mapBoolean2String(this.state._ariaExpanded), "aria-haspopup": this._ariaHasPopup, "aria-label": this.state._hideLabel && typeof this.state._label === 'string' ? this.state._label : undefined, "aria-selected": mapStringOrBoolean2String(this.state._ariaSelected), class: clsx('kol-button', {
16637
- 'kol-button--disabled': this.state._disabled === true,
16654
+ const isDisabled = this.state._disabled === true;
16655
+ const hideLabel = this.state._hideLabel === true;
16656
+ return (hAsync(Host, { key: '6a9f8d7a855452a4b414648a221df6cf5dcfa749' }, hAsync("button", { key: '3f09ae09eb8c046026337886dafbc625b76e8394', ref: (ref) => (this.buttonRef = ref), accessKey: this.state._accessKey || undefined, "aria-controls": this.state._ariaControls, "aria-describedby": hasAriaDescription ? this.internalDescriptionById : undefined, "aria-expanded": mapBoolean2String(this.state._ariaExpanded), "aria-haspopup": this._ariaHasPopup, "aria-label": hideLabel && typeof this.state._label === 'string' ? this.state._label : undefined, "aria-selected": mapStringOrBoolean2String(this.state._ariaSelected), class: clsx('kol-button', {
16657
+ 'kol-button--disabled': isDisabled,
16638
16658
  [`kol-button--${this.state._buttonVariant}`]: this.state._buttonVariant !== 'custom',
16639
16659
  [`kol-button--${this.state._linkVariant}`]: this.state._linkVariant,
16640
- 'kol-button--hide-label': this.state._hideLabel === true,
16660
+ 'kol-button--hide-label': hideLabel,
16641
16661
  [this.state._customClass]: this.state._buttonVariant === 'custom' && typeof this.state._customClass === 'string' && this.state._customClass.length > 0,
16642
- }), disabled: this.state._disabled, id: this.state._id, name: this.state._name, onClick: this.onClick, onMouseDown: this.onMouseDown, role: this.state._role, tabIndex: this.state._tabIndex, type: this.state._type }, hAsync(KolSpanFc, { key: '2efcf0481450a17adeff115deb1d5f4dd401d450', class: "kol-button__text", badgeText: badgeText, icons: this.state._icons, hideLabel: this.state._hideLabel, label: hasExpertSlot ? '' : this.state._label }, hAsync("slot", { key: 'c0b27f62c80ac0f5ea5c90033e715e9519776f67', name: "expert", slot: "expert" }))), hAsync(KolTooltipWcTag, { key: '127bacca5614982dcd5ad452230b7be6f273de0d', "aria-hidden": "true", hidden: hasExpertSlot || !this.state._hideLabel, class: "kol-button__tooltip", _badgeText: badgeText, _align: this.state._tooltipAlign, _label: typeof this.state._label === 'string' ? this.state._label : '' }), hasAriaDescription && (hAsync("span", { key: 'a16e0c834c2ffb061402ca75ae5610b26042877c', class: "visually-hidden", id: this.internalDescriptionById }, this.state._ariaDescription))));
16662
+ }), disabled: isDisabled, id: this.state._id, name: this.state._name, onClick: this.onClick, onMouseDown: this.onMouseDown, role: this.state._role, tabIndex: this.state._tabIndex, type: this.state._type }, hAsync(KolSpanFc, { key: 'a1a9eb0f603577289872b455d2b829dc16059a5d', class: "kol-button__text", badgeText: badgeText, icons: this.state._icons, hideLabel: hideLabel, label: hasExpertSlot ? '' : this.state._label }, hAsync("slot", { key: '3736fd6e4afbcd32e5df4305bbac7cc50e42804b', name: "expert", slot: "expert" }))), hAsync(KolTooltipWcTag, { key: 'f44c22709f4a8eb6946c036abd05edd6158cbcb0', ref: (ref) => (this.tooltipRef = ref), "aria-hidden": "true", hidden: hasExpertSlot || !hideLabel, class: "kol-button__tooltip", _badgeText: badgeText, _align: this.state._tooltipAlign, _label: typeof this.state._label === 'string' ? this.state._label : '' }), hasAriaDescription && (hAsync("span", { key: 'babe6def97a72c16f9a21d595d02cd74f4450d68', class: "visually-hidden", id: this.internalDescriptionById }, this.state._ariaDescription))));
16643
16663
  }
16644
16664
  constructor(hostRef) {
16645
16665
  registerInstance(this, hostRef);
16646
16666
  this.internalDescriptionById = nonce();
16647
- this.catchRef = (ref) => {
16648
- this.buttonRef = ref;
16649
- };
16650
16667
  this.onClick = (event) => {
16651
16668
  var _a, _b;
16652
16669
  if (this.state._type === 'submit') {
@@ -16860,7 +16877,8 @@ class KolButtonWc {
16860
16877
  "_value": [8],
16861
16878
  "_buttonVariant": [1, "_button-variant"],
16862
16879
  "state": [32],
16863
- "kolFocus": [64]
16880
+ "kolFocus": [64],
16881
+ "hideTooltip": [64]
16864
16882
  },
16865
16883
  "$listeners$": undefined,
16866
16884
  "$lazyBundleId$": "-",
@@ -16925,7 +16943,7 @@ class KolCard {
16925
16943
  };
16926
16944
  }
16927
16945
  render() {
16928
- return (hAsync("div", { key: '459b910b39a061357474b7eb1a500bb08efe8b89', class: "kol-card" }, hAsync("div", { key: '564f7fcd86c1aa3d5a4a452b2e2502536706de8b', class: "kol-card__header" }, hAsync(KolHeadingFc, { key: '39f035c5c3ed1a28eaadf699a70ef90dfec6eba6', class: "kol-card__headline", level: this.state._level }, this.state._label)), hAsync("div", { key: '7cbe3a9d08443e2c15484d8e7c1c802c98798c67', class: "kol-card__content" }, hAsync("slot", { key: '09aabe1eec2f48032544bcfe9e563ed927204cd1' })), this.state._hasCloser && (hAsync(KolButtonWcTag, { key: 'f06b010aca26af488a67366493b9aceced466ef9', class: "kol-card__close-button", "data-testid": "card-close-button", _hideLabel: true, _icons: {
16946
+ return (hAsync("div", { key: '2c4c6ed4ad7ae1a4d94a2bce4b8112074407d3a4', class: "kol-card" }, hAsync("div", { key: '8d67307ad2d604f8385cf8324d4d2ca2ea8f3f59', class: "kol-card__header" }, hAsync(KolHeadingFc, { key: '0882673acb41e456947baba8f6ecd214c9ec14f6', class: "kol-card__headline", level: this.state._level }, this.state._label)), hAsync("div", { key: '707ac4c953039736573ed871b166938134e3e5db', class: "kol-card__content" }, hAsync("slot", { key: '6d3a0811b939a80ffb0665c113127a729b2c7a5c' })), this.state._hasCloser && (hAsync(KolButtonWcTag, { key: 'bb9c98cc3934e0f2d1507afbd6d1fd6368e3f3c8', class: "kol-card__close-button", "data-testid": "card-close-button", _hideLabel: true, _icons: {
16929
16947
  left: {
16930
16948
  icon: 'codicon codicon-close',
16931
16949
  },
@@ -17255,25 +17273,10 @@ class ComboboxController extends InputIconController {
17255
17273
  }
17256
17274
  }
17257
17275
 
17258
- const getRenderStates$1 = (state) => {
17259
- var _a;
17260
- const isMessageValid = ((_a = state._msg) === null || _a === void 0 ? void 0 : _a._type) === 'error';
17261
- const hasMsg = isMessageValid && state._touched === true;
17262
- const hasHint = typeof state._hint === 'string' && state._hint.length > 0;
17263
- const ariaDescribedBy = [];
17264
- if (hasMsg === true) {
17265
- ariaDescribedBy.push(`${state._id}-error`);
17266
- }
17267
- if (hasHint === true) {
17268
- ariaDescribedBy.push(`${state._id}-hint`);
17269
- }
17270
- return { hasMsg, hasHint, ariaDescribedBy };
17271
- };
17272
-
17273
17276
  const getRenderStates = (state) => {
17274
- var _a, _b, _c;
17275
- const hasMessage = Boolean(((_a = state === null || state === void 0 ? void 0 : state._msg) === null || _a === void 0 ? void 0 : _a._description) && ((_b = state._msg._description) === null || _b === void 0 ? void 0 : _b.length) > 0);
17276
- const isMessageValidError = ((_c = state._msg) === null || _c === void 0 ? void 0 : _c._type) === 'error' && hasMessage;
17277
+ const internMsg = convertMsgToInternMsg(state._msg);
17278
+ const hasMessage = Boolean((internMsg === null || internMsg === void 0 ? void 0 : internMsg.description) && internMsg.description.length > 0);
17279
+ const isMessageValidError = (internMsg === null || internMsg === void 0 ? void 0 : internMsg.type) === 'error' && hasMessage;
17277
17280
  const hasError = isMessageValidError && state._touched === true;
17278
17281
  const hasHint = typeof state._hint === 'string' && state._hint.length > 0;
17279
17282
  const ariaDescribedBy = [];
@@ -17410,8 +17413,15 @@ const CustomSuggestionsToggleFc = ({ onClick, disabled }) => {
17410
17413
  hAsync(KolIconTag, { _icons: "codicon codicon-triangle-down", _label: translate('kol-dropdown') })));
17411
17414
  };
17412
17415
 
17413
- const CustomSuggestionsOptionFc = ({ index, ref, selected, onClick, onMouseOver, onFocus, onKeyDown, option }) => {
17414
- return (hAsync("li", { id: `option-${index}`, key: `-${index}`, ref: ref, "data-index": index, tabIndex: -1, role: "option", "aria-selected": selected ? 'true' : undefined, onClick: onClick, onMouseOver: onMouseOver, onFocus: onFocus, class: "kol-custom-suggestions-option", onKeyDown: onKeyDown }, option));
17416
+ const CustomSuggestionsOptionFc = ({ index, ref, selected, onClick, onMouseOver, onFocus, onKeyDown, option, searchTerm }) => {
17417
+ const highlightSearchTerm = (text, searchTerm) => {
17418
+ if (!(searchTerm === null || searchTerm === void 0 ? void 0 : searchTerm.trim()))
17419
+ return text;
17420
+ const regex = new RegExp(`(${searchTerm.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')})`, 'gi');
17421
+ const parts = text.split(regex);
17422
+ return parts.map((part, partIndex) => (regex.test(part) ? hAsync("mark", { key: partIndex }, part) : part));
17423
+ };
17424
+ return (hAsync("li", { id: `option-${index}`, key: `-${index}`, ref: ref, "data-index": index, tabIndex: -1, role: "option", "aria-selected": selected ? 'true' : undefined, onClick: onClick, onMouseOver: onMouseOver, onFocus: onFocus, class: "kol-custom-suggestions-option", onKeyDown: onKeyDown }, highlightSearchTerm(String(option), searchTerm || '')));
17415
17425
  };
17416
17426
 
17417
17427
  const CustomSuggestionsOptionsGroupFc = ({ blockSuggestionMouseOver, onKeyDown, style }, children) => {
@@ -17507,8 +17517,9 @@ class KolCombobox {
17507
17517
  };
17508
17518
  }
17509
17519
  getInputProps() {
17510
- const { ariaDescribedBy } = getRenderStates$1(this.state);
17511
- return Object.assign(Object.assign({ ref: this.catchRef, state: this.state, class: 'kol-combobox__input', type: 'text', role: 'combobox', 'aria-autocomplete': 'both', 'aria-expanded': this._isOpen ? 'true' : 'false', 'aria-controls': 'listbox', 'aria-describedby': ariaDescribedBy.length > 0 ? ariaDescribedBy.join(' ') : undefined, 'aria-label': this.state._hideLabel && typeof this.state._label === 'string' ? this.state._label : undefined, 'aria-labelledby': this.state._id, 'aria-activedescendant': this._isOpen && this._focusedOptionIndex >= 0 ? `option-${this._focusedOptionIndex}` : undefined, value: this.state._value, accessKey: this.state._accessKey, autocapitalize: 'off', autocorrect: 'off', disabled: this.state._disabled, customSuggestions: true, id: this.state._id, name: this.state._name, required: this.state._required }, this.controller.onFacade), { onFocus: (event) => {
17520
+ const { ariaDescribedBy } = getRenderStates(this.state);
17521
+ const isDisabled = this.state._disabled === true;
17522
+ return Object.assign(Object.assign({ ref: this.catchRef, state: this.state, class: 'kol-combobox__input', type: 'text', role: 'combobox', 'aria-autocomplete': 'both', 'aria-expanded': this._isOpen ? 'true' : 'false', 'aria-controls': 'listbox', 'aria-describedby': ariaDescribedBy.length > 0 ? ariaDescribedBy.join(' ') : undefined, 'aria-label': this.state._hideLabel && typeof this.state._label === 'string' ? this.state._label : undefined, 'aria-labelledby': this.state._id, 'aria-activedescendant': this._isOpen && this._focusedOptionIndex >= 0 ? `option-${this._focusedOptionIndex}` : undefined, value: this.state._value, accessKey: this.state._accessKey, autocapitalize: 'off', autocorrect: 'off', disabled: isDisabled, customSuggestions: true, id: this.state._id, name: this.state._name, required: this.state._required }, this.controller.onFacade), { onFocus: (event) => {
17512
17523
  this.controller.onFacade.onFocus(event);
17513
17524
  this.inputHasFocus = true;
17514
17525
  }, onBlur: (event) => {
@@ -17517,9 +17528,10 @@ class KolCombobox {
17517
17528
  }, onChange: this.onChange.bind(this), onInput: this.onInput.bind(this), placeholder: this.state._placeholder });
17518
17529
  }
17519
17530
  render() {
17520
- return (hAsync(FormFieldStateWrapper, Object.assign({ key: '44bc85c62caa382896b635dbc743f16d24863644' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: 'fd4b270034c88219b2f7f7eae2591334906ece02', state: this.state }, hAsync("div", { key: 'd4510edc466749cef9b6291afd9c282c77b88f8f', class: "kol-combobox__group" }, hAsync(InputStateWrapper, Object.assign({ key: 'ddc7d75b247724e081da3b8360238e271110cdca' }, this.getInputProps())), hAsync(CustomSuggestionsToggleFc, { key: '4531ca610c2f04d45072823222cac12c49c3ab74', onClick: this.toggleListbox.bind(this), disabled: this.state._disabled })), this._isOpen && !(this.state._disabled === true) && (hAsync(CustomSuggestionsOptionsGroupFc, { key: 'd995a87095216c4f1cf32b8e6c789dffffcf2572', blockSuggestionMouseOver: this.blockSuggestionMouseOver, onKeyDown: this.handleKeyDownDropdown.bind(this) }, Array.isArray(this._filteredSuggestions) &&
17531
+ const isDisabled = this.state._disabled === true;
17532
+ return (hAsync(FormFieldStateWrapper, Object.assign({ key: '9f89099d13288a5cd29d465997f981af87f3ea78' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: 'a1a36eba79cd2806183335a2508b6cb7b0ba30d9', state: this.state }, hAsync("div", { key: 'e6728f39b4110f36660a5a4ff03675633182f6cd', class: "kol-combobox__group" }, hAsync(InputStateWrapper, Object.assign({ key: '2862ab237a6f51285017f1600fec89b42c6af92e' }, this.getInputProps())), hAsync(CustomSuggestionsToggleFc, { key: '143ca365fb53ba8c696571009e752115a25e6c44', onClick: this.toggleListbox.bind(this), disabled: isDisabled })), this._isOpen && !isDisabled && (hAsync(CustomSuggestionsOptionsGroupFc, { key: 'c72050779519042f4e1749e63af8637b46ba98be', blockSuggestionMouseOver: this.blockSuggestionMouseOver, onKeyDown: this.handleKeyDownDropdown.bind(this) }, Array.isArray(this._filteredSuggestions) &&
17521
17533
  this._filteredSuggestions.length > 0 &&
17522
- this._filteredSuggestions.map((option, index) => (hAsync(CustomSuggestionsOptionFc, { index: index, option: option, ref: (el) => {
17534
+ this._filteredSuggestions.map((option, index) => (hAsync(CustomSuggestionsOptionFc, { index: index, option: option, searchTerm: this.state._value, ref: (el) => {
17523
17535
  if (el)
17524
17536
  this.refSuggestions[index] = el;
17525
17537
  }, selected: this.state._value === option, onClick: () => {
@@ -17635,7 +17647,8 @@ class KolCombobox {
17635
17647
  this._focusedOptionIndex = -1;
17636
17648
  this.toggleListbox = () => {
17637
17649
  var _a;
17638
- if (this.state._disabled === true) {
17650
+ const isDisabled = this.state._disabled === true;
17651
+ if (isDisabled) {
17639
17652
  this._isOpen = false;
17640
17653
  }
17641
17654
  else {
@@ -18224,7 +18237,7 @@ class KolForm {
18224
18237
  }; }
18225
18238
  }
18226
18239
 
18227
- const defaultStyleCss$z = "/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]),\n .kol-input .input {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n background-color: lightgray;\n color: black;\n }\n}\n@layer kol-global {\n :host {\n font-size: rem(16);\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: grid;\n place-items: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n}";
18240
+ const defaultStyleCss$z = "/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]),\n .kol-input .input {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n background-color: lightgray;\n color: black;\n }\n}\n@layer kol-global {\n :host {\n font-size: rem(16);\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: grid;\n place-items: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n}\n.kol-headline--secondary {\n margin: 0;\n}";
18228
18241
  var KolHeadingDefaultStyle0 = defaultStyleCss$z;
18229
18242
 
18230
18243
  class KolHeading {
@@ -22296,6 +22309,7 @@ class KolNav {
22296
22309
  }), key: index }, this.entry(collapsible, hideLabel, hasChildren, link, expanded), expanded && hAsync(this.linkList, { collapsible: collapsible, hideLabel: hideLabel, deep: deep + 1, links: link._children || [], orientation: orientation })));
22297
22310
  }
22298
22311
  initializeExpandedChildren() {
22312
+ this.state = Object.assign(Object.assign({}, this.state), { _expandedChildren: [] });
22299
22313
  const handleBranch = (branch) => {
22300
22314
  if (branch._active) {
22301
22315
  if (branch._children) {
@@ -22324,9 +22338,9 @@ class KolNav {
22324
22338
  const collapsible = this.state._collapsible === true;
22325
22339
  const hideLabel = this.state._hideLabel === true;
22326
22340
  const orientation = this.state._orientation;
22327
- return (hAsync("div", { key: '41b5171c34c2c740b8b4dd8449e6334721e7cb19', class: clsx('kol-nav', `kol-nav--${orientation}`, {
22341
+ return (hAsync("div", { key: '1768f2d1d6794f07607ad8a9f3953a4f17d3cd06', class: clsx('kol-nav', `kol-nav--${orientation}`, {
22328
22342
  'kol-nav--is-compact': this.state._hideLabel,
22329
- }) }, hAsync("nav", { key: 'b0604a9fda51cb5e6435eb6187f3b461acc6743c', class: "kol-nav__navigation", "aria-label": this.state._label, id: "nav" }, hAsync(this.linkList, { key: 'ef7b63a443cf20b1ae7dfe96ce4561da14e26ef6', collapsible: collapsible, hideLabel: hideLabel, deep: 0, links: this.state._links, orientation: orientation })), hasCompactButton && (hAsync("div", { key: 'b65cdbaa29dbb9c490223969949eeaa28e9ad99e', class: "kol-nav__compact" }, hAsync(KolButtonWcTag, { key: '06923cae2ce196795887157deb943ce2009bddaf', class: "kol-nav__toggle-button", _ariaControls: "nav", _ariaExpanded: !hideLabel, _icons: hideLabel ? 'codicon codicon-chevron-right' : 'codicon codicon-chevron-left', _hideLabel: true, _label: translate(hideLabel ? 'kol-nav-maximize' : 'kol-nav-minimize'), _on: {
22343
+ }) }, hAsync("nav", { key: '6fceaf6abe991a38a3c4bb98741c9e1c5ad2f11a', class: "kol-nav__navigation", "aria-label": this.state._label, id: "nav" }, hAsync(this.linkList, { key: '5ee2d35517877fad58f3c37446a88a4753a80bf5', collapsible: collapsible, hideLabel: hideLabel, deep: 0, links: this.state._links, orientation: orientation })), hasCompactButton && (hAsync("div", { key: 'd8b7bcb8d56bad5fadc02fc6362d84c597c5f0c8', class: "kol-nav__compact" }, hAsync(KolButtonWcTag, { key: 'a6e055cb523095f7dfeed9edc1fd4a847973cc55', class: "kol-nav__toggle-button", _ariaControls: "nav", _ariaExpanded: !hideLabel, _icons: hideLabel ? 'codicon codicon-chevron-right' : 'codicon codicon-chevron-left', _hideLabel: true, _label: translate(hideLabel ? 'kol-nav-maximize' : 'kol-nav-minimize'), _on: {
22330
22344
  onClick: () => {
22331
22345
  this.state = Object.assign(Object.assign({}, this.state), { _hideLabel: this.state._hideLabel === false });
22332
22346
  },
@@ -22357,6 +22371,7 @@ class KolNav {
22357
22371
  validateLinks(value) {
22358
22372
  watchNavLinks('KolNav', this, value);
22359
22373
  devHint(`[KolNav] The navigation structure is not yet validated recursively.`);
22374
+ this.initializeExpandedChildren();
22360
22375
  }
22361
22376
  validateOrientation(value) {
22362
22377
  watchValidator(this, '_orientation', (value) => value === 'horizontal' || value === 'vertical', new Set(['Orientation {horizontal, vertical}']), value, {
@@ -22407,9 +22422,52 @@ class KolNav {
22407
22422
  }; }
22408
22423
  }
22409
22424
 
22410
- const defaultStyleCss$h = "@charset \"UTF-8\";\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]),\n .kol-input .input {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n background-color: lightgray;\n color: black;\n }\n}\n@layer kol-global {\n :host {\n font-size: rem(16);\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: grid;\n place-items: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n}\n@layer kol-component {\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n animation-duration: 0.25s;\n animation-iteration-count: 1;\n animation-name: fadeInOpacity;\n animation-timing-function: ease-in;\n display: none;\n position: fixed;\n visibility: hidden;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n max-width: 90vw;\n max-height: 90vh;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width);\n }\n .kol-tooltip__arrow {\n background-color: #fff;\n color: #000;\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n position: absolute;\n transform: rotate(45deg);\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n z-index: 999;\n }\n .kol-tooltip__content {\n background-color: #fff;\n color: #000;\n position: relative;\n z-index: 1000;\n }\n @keyframes fadeInOpacity {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n /* TODO. Once #7126 is completed, move :host block into .kol-pagination */\n :host {\n align-items: center;\n display: grid;\n gap: calc(16rem / var(--kolibri-root-font-size, 16));\n grid-template-columns: 1fr auto;\n }\n .kol-pagination__navigation-list {\n align-items: center;\n display: inline-flex;\n flex-wrap: wrap;\n gap: 0.5em;\n list-style: none;\n margin: 0;\n padding: 0;\n }\n .kol-pagination__separator:before {\n content: \"•••\";\n }\n}";
22425
+ const defaultStyleCss$h = "@charset \"UTF-8\";\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]),\n .kol-input .input {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n background-color: lightgray;\n color: black;\n }\n}\n@layer kol-global {\n :host {\n font-size: rem(16);\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: grid;\n place-items: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n}\n@layer kol-component {\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n animation-duration: 0.25s;\n animation-iteration-count: 1;\n animation-name: fadeInOpacity;\n animation-timing-function: ease-in;\n display: none;\n position: fixed;\n visibility: hidden;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n max-width: 90vw;\n max-height: 90vh;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width);\n }\n .kol-tooltip__arrow {\n background-color: #fff;\n color: #000;\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n position: absolute;\n transform: rotate(45deg);\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n z-index: 999;\n }\n .kol-tooltip__content {\n background-color: #fff;\n color: #000;\n position: relative;\n z-index: 1000;\n }\n @keyframes fadeInOpacity {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n .kol-pagination {\n align-items: center;\n display: grid;\n gap: calc(16rem / var(--kolibri-root-font-size, 16));\n grid-template-columns: 1fr auto;\n }\n .kol-pagination__navigation-list {\n align-items: center;\n display: inline-flex;\n flex-wrap: wrap;\n gap: 0.5em;\n list-style: none;\n margin: 0;\n padding: 0;\n }\n .kol-pagination__separator:before {\n content: \"•••\";\n }\n}";
22411
22426
  var KolPaginationDefaultStyle0 = defaultStyleCss$h;
22412
22427
 
22428
+ class KolPagination {
22429
+ constructor(hostRef) {
22430
+ registerInstance(this, hostRef);
22431
+ this._boundaryCount = 1;
22432
+ this._customClass = undefined;
22433
+ this._label = undefined;
22434
+ this._hasButtons = true;
22435
+ this._page = undefined;
22436
+ this._pageSize = 1;
22437
+ this._pageSizeOptions = [];
22438
+ this._on = undefined;
22439
+ this._siblingCount = 1;
22440
+ this._tooltipAlign = 'top';
22441
+ this._max = undefined;
22442
+ }
22443
+ render() {
22444
+ return (hAsync(KolPaginationWcTag, { key: '14b17e953d67caaa9892271b9c19d40044558418', _boundaryCount: this._boundaryCount, _label: this._label, _customClass: this._customClass, _on: this._on, _hasButtons: this._hasButtons, _page: this._page, _pageSize: this._pageSize, _pageSizeOptions: this._pageSizeOptions, _siblingCount: this._siblingCount, _tooltipAlign: this._tooltipAlign, _max: this._max }));
22445
+ }
22446
+ static get style() { return {
22447
+ default: KolPaginationDefaultStyle0
22448
+ }; }
22449
+ static get cmpMeta() { return {
22450
+ "$flags$": 41,
22451
+ "$tagName$": "kol-pagination",
22452
+ "$members$": {
22453
+ "_boundaryCount": [2, "_boundary-count"],
22454
+ "_customClass": [1, "_custom-class"],
22455
+ "_label": [1],
22456
+ "_hasButtons": [8, "_has-buttons"],
22457
+ "_page": [2],
22458
+ "_pageSize": [1026, "_page-size"],
22459
+ "_pageSizeOptions": [1, "_page-size-options"],
22460
+ "_on": [16],
22461
+ "_siblingCount": [2, "_sibling-count"],
22462
+ "_tooltipAlign": [1, "_tooltip-align"],
22463
+ "_max": [2]
22464
+ },
22465
+ "$listeners$": undefined,
22466
+ "$lazyBundleId$": "-",
22467
+ "$attrsToReflect$": []
22468
+ }; }
22469
+ }
22470
+
22413
22471
  const leftDoubleArrowIcon = {
22414
22472
  left: 'codicon codicon-debug-reverse-continue',
22415
22473
  };
@@ -22433,7 +22491,7 @@ const NUMBER_FORMATTER = new Intl.NumberFormat(userLanguage, {
22433
22491
  minimumFractionDigits: 0,
22434
22492
  maximumFractionDigits: 0,
22435
22493
  });
22436
- class KolPagination {
22494
+ class KolPaginationWc {
22437
22495
  constructor(hostRef) {
22438
22496
  registerInstance(this, hostRef);
22439
22497
  this.nonce = nonce();
@@ -22460,7 +22518,7 @@ class KolPagination {
22460
22518
  });
22461
22519
  };
22462
22520
  this.onChangePageSize = (event, value) => {
22463
- value = parseInt(value[0]);
22521
+ value = parseInt(value);
22464
22522
  if (typeof value === 'number' && value > 0 && this._pageSize !== value) {
22465
22523
  this._pageSize = value;
22466
22524
  const timeout = setTimeout(() => {
@@ -22599,7 +22657,7 @@ class KolPagination {
22599
22657
  });
22600
22658
  return (hAsync(Host, { class: "kol-pagination" }, hAsync("nav", { class: "kol-pagination__navigation", "aria-label": this.state._label }, hAsync("ul", { class: "kol-pagination__navigation-list" }, this.state._hasButtons.first && (hAsync("li", null, hAsync(KolButtonWcTag, { class: "kol-pagination__button kol-pagination__button--first", exportparts: "icon", _customClass: this.state._customClass, _disabled: this.state._page <= 1, _icons: leftDoubleArrowIcon, _hideLabel: true, _label: translate('kol-page-first'), _on: this.onGoToFirst, _tooltipAlign: this.state._tooltipAlign }))), this.state._hasButtons.previous && (hAsync("li", null, hAsync(KolButtonWcTag, { class: "kol-pagination__button kol-pagination__button--previous", exportparts: "icon", _customClass: this.state._customClass, _disabled: this.state._page <= 1, _icons: leftSingleArrow, _hideLabel: true, _label: translate('kol-page-back'), _on: this.onGoBackward, _tooltipAlign: this.state._tooltipAlign }))), pageButtons, this.state._hasButtons.next && (hAsync("li", null, hAsync(KolButtonWcTag, { class: "kol-pagination__button kol-pagination__button--next", exportparts: "icon", _customClass: this.state._customClass, _disabled: count <= this.state._page, _icons: rightSingleArrowIcon, _hideLabel: true, _label: translate('kol-page-next'), _on: this.onGoForward, _tooltipAlign: this.state._tooltipAlign }))), this.state._hasButtons.last && (hAsync("li", null, hAsync(KolButtonWcTag, { class: "kol-pagination__button kol-pagination__button--last", exportparts: "icon", _customClass: this.state._customClass, _disabled: count <= this.state._page, _icons: rightDoubleArrowIcon, _hideLabel: true, _label: translate('kol-page-last'), _on: this.onGoToEnd, _tooltipAlign: this.state._tooltipAlign }))))), ((_a = this.state._pageSizeOptions) === null || _a === void 0 ? void 0 : _a.length) > 0 && (hAsync(KolSelectTag, { class: "kol-pagination__page-size-select", _hideLabel: true, _id: `pagination-size-${this.nonce}`, _label: translate('kol-entries-per-site'), _options: this.state._pageSizeOptions, _on: {
22601
22659
  onChange: this.onChangePageSize,
22602
- }, _value: [this.state._pageSize] }))));
22660
+ }, _value: this.state._pageSize }))));
22603
22661
  }
22604
22662
  getUnselectedPageButton(page) {
22605
22663
  return (hAsync("li", { key: nonce() }, hAsync(KolButtonWcTag, { exportparts: "icon", _customClass: this.state._customClass, _label: "", _on: {
@@ -22739,12 +22797,9 @@ class KolPagination {
22739
22797
  "_max": ["validateMax"],
22740
22798
  "_tooltipAlign": ["validateTooltipAlign"]
22741
22799
  }; }
22742
- static get style() { return {
22743
- default: KolPaginationDefaultStyle0
22744
- }; }
22745
22800
  static get cmpMeta() { return {
22746
- "$flags$": 41,
22747
- "$tagName$": "kol-pagination",
22801
+ "$flags$": 0,
22802
+ "$tagName$": "kol-pagination-wc",
22748
22803
  "$members$": {
22749
22804
  "_boundaryCount": [2, "_boundary-count"],
22750
22805
  "_customClass": [1, "_custom-class"],
@@ -22809,8 +22864,9 @@ function getOppositeAxis(axis) {
22809
22864
  function getAxisLength(axis) {
22810
22865
  return axis === 'y' ? 'height' : 'width';
22811
22866
  }
22867
+ const yAxisSides = /*#__PURE__*/new Set(['top', 'bottom']);
22812
22868
  function getSideAxis(placement) {
22813
- return ['top', 'bottom'].includes(getSide(placement)) ? 'y' : 'x';
22869
+ return yAxisSides.has(getSide(placement)) ? 'y' : 'x';
22814
22870
  }
22815
22871
  function getAlignmentAxis(placement) {
22816
22872
  return getOppositeAxis(getSideAxis(placement));
@@ -22835,19 +22891,19 @@ function getExpandedPlacements(placement) {
22835
22891
  function getOppositeAlignmentPlacement(placement) {
22836
22892
  return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);
22837
22893
  }
22894
+ const lrPlacement = ['left', 'right'];
22895
+ const rlPlacement = ['right', 'left'];
22896
+ const tbPlacement = ['top', 'bottom'];
22897
+ const btPlacement = ['bottom', 'top'];
22838
22898
  function getSideList(side, isStart, rtl) {
22839
- const lr = ['left', 'right'];
22840
- const rl = ['right', 'left'];
22841
- const tb = ['top', 'bottom'];
22842
- const bt = ['bottom', 'top'];
22843
22899
  switch (side) {
22844
22900
  case 'top':
22845
22901
  case 'bottom':
22846
- if (rtl) return isStart ? rl : lr;
22847
- return isStart ? lr : rl;
22902
+ if (rtl) return isStart ? rlPlacement : lrPlacement;
22903
+ return isStart ? lrPlacement : rlPlacement;
22848
22904
  case 'left':
22849
22905
  case 'right':
22850
- return isStart ? tb : bt;
22906
+ return isStart ? tbPlacement : btPlacement;
22851
22907
  default:
22852
22908
  return [];
22853
22909
  }
@@ -23631,6 +23687,8 @@ const inline = function (options) {
23631
23687
  };
23632
23688
  };
23633
23689
 
23690
+ const originSides = /*#__PURE__*/new Set(['left', 'top']);
23691
+
23634
23692
  // For type backwards-compatibility, the `OffsetOptions` type was also
23635
23693
  // Derivable.
23636
23694
 
@@ -23644,7 +23702,7 @@ async function convertValueToCoords(state, options) {
23644
23702
  const side = getSide(placement);
23645
23703
  const alignment = getAlignment(placement);
23646
23704
  const isVertical = getSideAxis(placement) === 'y';
23647
- const mainAxisMulti = ['left', 'top'].includes(side) ? -1 : 1;
23705
+ const mainAxisMulti = originSides.has(side) ? -1 : 1;
23648
23706
  const crossAxisMulti = rtl && isVertical ? -1 : 1;
23649
23707
  const rawValue = evaluate(options, state);
23650
23708
 
@@ -23844,7 +23902,7 @@ const limitShift = function (options) {
23844
23902
  if (checkCrossAxis) {
23845
23903
  var _middlewareData$offse, _middlewareData$offse2;
23846
23904
  const len = mainAxis === 'y' ? 'width' : 'height';
23847
- const isOriginSide = ['top', 'left'].includes(getSide(placement));
23905
+ const isOriginSide = originSides.has(getSide(placement));
23848
23906
  const limitMin = rects.reference[crossAxis] - rects.floating[len] + (isOriginSide ? ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse[crossAxis]) || 0 : 0) + (isOriginSide ? 0 : computedOffset.crossAxis);
23849
23907
  const limitMax = rects.reference[crossAxis] + rects.reference[len] + (isOriginSide ? 0 : ((_middlewareData$offse2 = middlewareData.offset) == null ? void 0 : _middlewareData$offse2[crossAxis]) || 0) - (isOriginSide ? computedOffset.crossAxis : 0);
23850
23908
  if (crossAxisCoord < limitMin) {
@@ -23989,6 +24047,7 @@ function isShadowRoot(value) {
23989
24047
  }
23990
24048
  return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;
23991
24049
  }
24050
+ const invalidOverflowDisplayValues = /*#__PURE__*/new Set(['inline', 'contents']);
23992
24051
  function isOverflowElement(element) {
23993
24052
  const {
23994
24053
  overflow,
@@ -23996,27 +24055,32 @@ function isOverflowElement(element) {
23996
24055
  overflowY,
23997
24056
  display
23998
24057
  } = getComputedStyle(element);
23999
- return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !['inline', 'contents'].includes(display);
24058
+ return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !invalidOverflowDisplayValues.has(display);
24000
24059
  }
24060
+ const tableElements = /*#__PURE__*/new Set(['table', 'td', 'th']);
24001
24061
  function isTableElement(element) {
24002
- return ['table', 'td', 'th'].includes(getNodeName(element));
24062
+ return tableElements.has(getNodeName(element));
24003
24063
  }
24064
+ const topLayerSelectors = [':popover-open', ':modal'];
24004
24065
  function isTopLayer(element) {
24005
- return [':popover-open', ':modal'].some(selector => {
24066
+ return topLayerSelectors.some(selector => {
24006
24067
  try {
24007
24068
  return element.matches(selector);
24008
- } catch (e) {
24069
+ } catch (_e) {
24009
24070
  return false;
24010
24071
  }
24011
24072
  });
24012
24073
  }
24074
+ const transformProperties = ['transform', 'translate', 'scale', 'rotate', 'perspective'];
24075
+ const willChangeValues = ['transform', 'translate', 'scale', 'rotate', 'perspective', 'filter'];
24076
+ const containValues = ['paint', 'layout', 'strict', 'content'];
24013
24077
  function isContainingBlock(elementOrCss) {
24014
24078
  const webkit = isWebKit();
24015
24079
  const css = isElement(elementOrCss) ? getComputedStyle(elementOrCss) : elementOrCss;
24016
24080
 
24017
24081
  // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
24018
24082
  // https://drafts.csswg.org/css-transforms-2/#individual-transforms
24019
- return ['transform', 'translate', 'scale', 'rotate', 'perspective'].some(value => css[value] ? css[value] !== 'none' : false) || (css.containerType ? css.containerType !== 'normal' : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !webkit && (css.filter ? css.filter !== 'none' : false) || ['transform', 'translate', 'scale', 'rotate', 'perspective', 'filter'].some(value => (css.willChange || '').includes(value)) || ['paint', 'layout', 'strict', 'content'].some(value => (css.contain || '').includes(value));
24083
+ return transformProperties.some(value => css[value] ? css[value] !== 'none' : false) || (css.containerType ? css.containerType !== 'normal' : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !webkit && (css.filter ? css.filter !== 'none' : false) || willChangeValues.some(value => (css.willChange || '').includes(value)) || containValues.some(value => (css.contain || '').includes(value));
24020
24084
  }
24021
24085
  function getContainingBlock(element) {
24022
24086
  let currentNode = getParentNode(element);
@@ -24034,8 +24098,9 @@ function isWebKit() {
24034
24098
  if (typeof CSS === 'undefined' || !CSS.supports) return false;
24035
24099
  return CSS.supports('-webkit-backdrop-filter', 'none');
24036
24100
  }
24101
+ const lastTraversableNodeNames = /*#__PURE__*/new Set(['html', 'body', '#document']);
24037
24102
  function isLastTraversableNode(node) {
24038
- return ['html', 'body', '#document'].includes(getNodeName(node));
24103
+ return lastTraversableNodeNames.has(getNodeName(node));
24039
24104
  }
24040
24105
  function getComputedStyle(element) {
24041
24106
  return getWindow(element).getComputedStyle(element);
@@ -24953,7 +25018,7 @@ class KolPopover {
24953
25018
  });
24954
25019
  }
24955
25020
  render() {
24956
- return (hAsync(Host, { key: '0e4417b04026533fed39e55e37c4b0257d1619ed', ref: this.catchHostAndTriggerElement, class: "kol-popover" }, hAsync("div", { key: '3135a074c8effed62444d63f72b17f4857532f21', class: clsx('kol-popover__content', { 'kol-popover__content--visible': this.state._visible }), ref: this.catchPopoverElement, hidden: !this.state._show }, hAsync("div", { key: 'f058aefc95d866b4fdb21b13ea1ca865b9e27106', class: clsx('kol-popover__arrow', `kol-popover__arrow--${this.state._align}`), ref: this.catchArrowElement }), hAsync("slot", { key: '9828753438fb3c917db8fd27ca1063b8acc09d84' }))));
25021
+ return (hAsync(Host, { key: '53179ace5c0dfabbe1dd00ba8ddfe453ef55ccd5', ref: this.catchHostAndTriggerElement, class: "kol-popover" }, hAsync("div", { key: 'f42aafe81aaa0a09526b4e9923a96133ee81c5d2', class: clsx('kol-popover__content', { 'kol-popover__content--visible': this.state._visible }), ref: this.catchPopoverElement, hidden: !this.state._show }, hAsync("div", { key: '25719436c820c214a2e3c0fac47449f842c4f68c', class: clsx('kol-popover__arrow', `kol-popover__arrow--${this.state._align}`), ref: this.catchArrowElement }), hAsync("slot", { key: 'fff04758761fb36389c6698b17730b604981ca66' }))));
24957
25022
  }
24958
25023
  validateAlign(value) {
24959
25024
  validateAlign(this, value);
@@ -24990,7 +25055,7 @@ class KolPopover {
24990
25055
  }; }
24991
25056
  }
24992
25057
 
24993
- const defaultStyleCss$g = "@charset \"UTF-8\";\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]),\n .kol-input .input {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n background-color: lightgray;\n color: black;\n }\n}\n@layer kol-global {\n :host {\n font-size: rem(16);\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: grid;\n place-items: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n}\n@layer kol-component {\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n animation-duration: 0.25s;\n animation-iteration-count: 1;\n animation-name: fadeInOpacity;\n animation-timing-function: ease-in;\n display: none;\n position: fixed;\n visibility: hidden;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n max-width: 90vw;\n max-height: 90vh;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width);\n }\n .kol-tooltip__arrow {\n background-color: #fff;\n color: #000;\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n position: absolute;\n transform: rotate(45deg);\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n z-index: 999;\n }\n .kol-tooltip__content {\n background-color: #fff;\n color: #000;\n position: relative;\n z-index: 1000;\n }\n @keyframes fadeInOpacity {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n :host {\n display: inline-block;\n }\n .kol-button {\n font-style: calc(16rem / var(--kolibri-root-font-size, 16));\n display: inline-flex;\n place-items: center;\n text-align: center;\n text-decoration-line: none;\n }\n .kol-button::before {\n /* Render zero-width character as first element to set the baseline correctly. */\n content: \"​\";\n }\n .kol-button__text {\n margin: auto;\n width: 100%;\n }\n}\n@layer kol-component {\n .kol-popover-button__button {\n display: inline-block;\n }\n .kol-popover-button__popover {\n border: 1px solid #000;\n margin: 0;\n padding: 0;\n }\n}";
25058
+ const defaultStyleCss$g = "@charset \"UTF-8\";\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]),\n .kol-input .input {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n background-color: lightgray;\n color: black;\n }\n}\n@layer kol-global {\n :host {\n font-size: rem(16);\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: grid;\n place-items: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n}\n@layer kol-component {\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n animation-duration: 0.25s;\n animation-iteration-count: 1;\n animation-name: fadeInOpacity;\n animation-timing-function: ease-in;\n display: none;\n position: fixed;\n visibility: hidden;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n max-width: 90vw;\n max-height: 90vh;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width);\n }\n .kol-tooltip__arrow {\n background-color: #fff;\n color: #000;\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n position: absolute;\n transform: rotate(45deg);\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n z-index: 999;\n }\n .kol-tooltip__content {\n background-color: #fff;\n color: #000;\n position: relative;\n z-index: 1000;\n }\n @keyframes fadeInOpacity {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n :host {\n display: inline-block;\n }\n .kol-button {\n font-style: calc(16rem / var(--kolibri-root-font-size, 16));\n display: inline-flex;\n place-items: center;\n text-align: center;\n text-decoration-line: none;\n }\n .kol-button::before {\n /* Render zero-width character as first element to set the baseline correctly. */\n content: \"​\";\n }\n .kol-button__text {\n margin: auto;\n width: 100%;\n }\n}\n@layer kol-component {\n .kol-popover-button__button {\n display: inline-block;\n }\n .kol-popover-button__popover {\n border: 0;\n margin: 0;\n padding: 0;\n }\n}";
24994
25059
  var KolPopoverButtonDefaultStyle0 = defaultStyleCss$g;
24995
25060
 
24996
25061
  class KolPopoverButton$1 {
@@ -25023,7 +25088,7 @@ class KolPopoverButton$1 {
25023
25088
  void ((_a = this.ref) === null || _a === void 0 ? void 0 : _a.hidePopover());
25024
25089
  }
25025
25090
  render() {
25026
- return (hAsync(KolPopoverButtonWcTag, { key: 'f116338f1f3cd8bb93907e4609d0fcbfea9992c4', ref: (element) => (this.ref = element), _accessKey: this._accessKey, _ariaControls: this._ariaControls, _ariaDescription: this._ariaDescription, _ariaSelected: this._ariaSelected, _customClass: this._customClass, _disabled: this._disabled, _hideLabel: this._hideLabel, _icons: this._icons, _id: this._id, _label: this._label, _name: this._name, _on: this._on, _popoverAlign: this._popoverAlign, _role: this._role, _shortKey: this._shortKey, _syncValueBySelector: this._syncValueBySelector, _tabIndex: this._tabIndex, _tooltipAlign: this._tooltipAlign, _type: this._type, _value: this._value, _variant: this._variant }, hAsync("slot", { key: '93fe9317598006721f26047934b261bdcb6274b2', name: "expert", slot: "expert" }), hAsync("slot", { key: 'ec45ecc130d0d980a933fc83a01ef2d5d61b7a93' })));
25091
+ return (hAsync(KolPopoverButtonWcTag, { key: '0a44e73709e339e865b30179bf6fb9ae3c43450e', ref: (element) => (this.ref = element), _accessKey: this._accessKey, _ariaControls: this._ariaControls, _ariaDescription: this._ariaDescription, _ariaSelected: this._ariaSelected, _customClass: this._customClass, _disabled: this._disabled, _hideLabel: this._hideLabel, _icons: this._icons, _id: this._id, _label: this._label, _name: this._name, _on: this._on, _popoverAlign: this._popoverAlign, _role: this._role, _shortKey: this._shortKey, _syncValueBySelector: this._syncValueBySelector, _tabIndex: this._tabIndex, _tooltipAlign: this._tooltipAlign, _type: this._type, _value: this._value, _variant: this._variant }, hAsync("slot", { key: 'd23b56ded35b20e1449d1cff05b6ad8bafb02a0b', name: "expert", slot: "expert" }), hAsync("slot", { key: '70ec7287f91d0333c2849a3a2deb259d13a19d09' })));
25027
25092
  }
25028
25093
  static get style() { return {
25029
25094
  default: KolPopoverButtonDefaultStyle0
@@ -25097,14 +25162,18 @@ class KolPopoverButton {
25097
25162
  void ((_a = this.refPopover) === null || _a === void 0 ? void 0 : _a.hidePopover());
25098
25163
  }
25099
25164
  handleBeforeToggle(event) {
25165
+ var _a;
25100
25166
  if (event.newState === 'closed') {
25101
25167
  this.justClosed = true;
25102
25168
  setTimeout(() => {
25103
25169
  this.justClosed = false;
25104
25170
  }, 10);
25105
25171
  }
25106
- else if (this.refPopover) {
25107
- this.refPopover.style.visibility = 'hidden';
25172
+ else {
25173
+ if (this.refPopover) {
25174
+ this.refPopover.style.visibility = 'hidden';
25175
+ }
25176
+ void ((_a = this.refButton) === null || _a === void 0 ? void 0 : _a.hideTooltip());
25108
25177
  }
25109
25178
  }
25110
25179
  alignPopover() {
@@ -25148,7 +25217,7 @@ class KolPopoverButton {
25148
25217
  (_c = this.cleanupAutoPositioning) === null || _c === void 0 ? void 0 : _c.call(this);
25149
25218
  }
25150
25219
  render() {
25151
- return (hAsync("div", { key: '2dacb79a5409c806df4d034ae9cd6aa3decb9a63', class: "kol-popover-button" }, hAsync(KolButtonWcTag, { key: 'd514f8f8e3208f140aed7ed14b263467e6f6b065', _accessKey: this._accessKey, "_aria-controls": "popover", _ariaControls: this._ariaControls, _ariaDescription: this._ariaDescription, _ariaExpanded: this.popoverOpen, _ariaHasPopup: 'dialog', _ariaSelected: this._ariaSelected, _customClass: this._customClass, _disabled: this._disabled, _hideLabel: this._hideLabel, _icons: this._icons, _id: this._id, _label: this._label, _name: this._name, _on: this._on, _role: this._role, _shortKey: this._shortKey, _syncValueBySelector: this._syncValueBySelector, _tabIndex: this._tabIndex, _tooltipAlign: this._tooltipAlign, _type: this._type, _value: this._value, _buttonVariant: this._variant, "data-testid": "popover-button", class: "kol-popover-button__button", ref: (element) => (this.refButton = element), onClick: this.handleButtonClick.bind(this) }, hAsync("slot", { key: 'e052e61aff815944f46363f663df0f1db3b0da24', name: "expert", slot: "expert" })), hAsync("div", { key: '82aa1f6d4bfc555726160e50a2dd0000e4324847', ref: (element) => (this.refPopover = element), "data-testid": "popover-content", popover: "auto", id: "popover", class: "kol-popover-button__popover" }, hAsync("slot", { key: 'fa8ac92afc9062d727dfc8599f83515b1523d9ba' }))));
25220
+ return (hAsync("div", { key: 'ce2a09abe5795087e57d9b31917aace9f3588787', class: "kol-popover-button" }, hAsync(KolButtonWcTag, { key: '78ff052dd94da52e982894dd12e18e3cbbecf8e9', _accessKey: this._accessKey, "_aria-controls": "popover", _ariaControls: this._ariaControls, _ariaDescription: this._ariaDescription, _ariaExpanded: this.popoverOpen, _ariaHasPopup: 'dialog', _ariaSelected: this._ariaSelected, _customClass: this._customClass, _disabled: this._disabled, _hideLabel: this._hideLabel, _icons: this._icons, _id: this._id, _label: this._label, _name: this._name, _on: this._on, _role: this._role, _shortKey: this._shortKey, _syncValueBySelector: this._syncValueBySelector, _tabIndex: this._tabIndex, _tooltipAlign: this._tooltipAlign, _type: this._type, _value: this._value, _buttonVariant: this._variant, "data-testid": "popover-button", class: "kol-popover-button__button", ref: (element) => (this.refButton = element), onClick: this.handleButtonClick.bind(this) }, hAsync("slot", { key: '4f23e6cbf0560b8c009e735dd595fc938639446b', name: "expert", slot: "expert" })), hAsync("div", { key: '393e9b2cfa9e258db6a502d375d1d87283ddf090', ref: (element) => (this.refPopover = element), "data-testid": "popover-content", popover: "auto", id: "popover", class: "kol-popover-button__popover" }, hAsync("slot", { key: 'cf20c5da537291c96882eeb5720527704ca421c8' }))));
25152
25221
  }
25153
25222
  validatePopoverAlign(value) {
25154
25223
  validatePopoverAlign(this, value);
@@ -25205,7 +25274,7 @@ const CycleSvg = ({ state }) => {
25205
25274
  };
25206
25275
  const BarSvg = ({ state }) => {
25207
25276
  const percentage = 100 * (state._value / state._max);
25208
- return (hAsync("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "12", overflow: "visible" }, hAsync("rect", { class: "kol-progress__bar-background", x: "1", y: "1", height: "11", rx: "5", fill: "currentColor", stroke: "currentColor", "stroke-width": "3", style: { width: `100%` } }), hAsync("rect", { class: "kol-progress__bar-border", x: "1", y: "1", height: "11", rx: "5", fill: "currentColor", stroke: "currentColor", "stroke-width": "1", style: { width: `100%` } }), hAsync("rect", { class: "kol-progress__bar-progress", x: "3", y: "3", height: "7", rx: "3.5", fill: "currentColor", stroke: "currentColor", "stroke-width": "3", style: { width: `calc(${percentage}% - 4px)` } })));
25277
+ return (hAsync("svg", { xmlns: "http://www.w3.org/2000/svg", width: "100%", height: "12", overflow: "visible" }, hAsync("rect", { class: "kol-progress__bar-background", x: "1", y: "1", height: "11", rx: "5", fill: "currentColor", stroke: "currentColor", "stroke-width": "3", width: "100%" }), hAsync("rect", { class: "kol-progress__bar-border", x: "1", y: "1", height: "11", rx: "5", fill: "currentColor", stroke: "currentColor", "stroke-width": "1", width: "100%" }), hAsync("rect", { class: "kol-progress__bar-progress", x: "3", y: "3", height: "7", rx: "3.5", fill: "currentColor", stroke: "currentColor", "stroke-width": "3", style: { width: `calc(${percentage}% - 4px)` } })));
25209
25278
  };
25210
25279
  const createProgressSVG = (state) => {
25211
25280
  switch (state._variant) {
@@ -25237,10 +25306,10 @@ class KolProgress {
25237
25306
  const isPercentage = this.state._unit === '%';
25238
25307
  const liveProgressValue = isPercentage ? `${Math.round((this.state._liveValue / this.state._max) * 100)}` : this.state._liveValue;
25239
25308
  const displayValue = isPercentage ? Math.round((this.state._value / this.state._max) * 100) : this.state._value;
25240
- return (hAsync("div", { key: 'c48ac85de814b2b78da6ec99a26c299bdb5d4022', class: "kol-progress" }, hAsync("div", { key: '78ea68e2f7f167fe2fa3602dad06d81d109e2521', "aria-hidden": "true", class: {
25309
+ return (hAsync("div", { key: '821bf1d4fece816591e8b567cf2026b44eb4b278', class: "kol-progress" }, hAsync("div", { key: '59bcae97c107e7b369ceb28a96b70215cfff498b', "aria-hidden": "true", class: {
25241
25310
  'kol-progress__cycle': this.state._variant === 'cycle',
25242
25311
  'kol-progress__bar': this.state._variant === 'bar',
25243
- } }, this.state._variant === 'bar' && this.state._label && hAsync("div", { key: '5279fbb55640dea2f99b04fb4a0ef1eea60c10eb', class: "kol-progress__bar-label" }, this.state._label), createProgressSVG(this.state), this.state._variant === 'cycle' && (hAsync("div", { key: '650a0b648e2bb305fb3a1bdb69844b3ca6d5ee3b', class: "kol-progress__cycle-text" }, this.state._label && hAsync("div", { key: '0b9b4f87b7f5b3db52c68cf0086f1fd66d44ef06', class: "kol-progress__cycle-label" }, this.state._label), hAsync("div", { key: '05cfafd57913ac9f320de511574fd2352eafb26b', class: "kol-progress__cycle-value" }, `${displayValue} ${this.state._unit}`))), this.state._variant === 'bar' && (hAsync("div", { key: '840ba597045f909ef61e3c4e68582258609fa8b7', class: "kol-progress__bar-value", style: { width: `${`${(isPercentage ? 100 : this.state._max) + 1}`.length}ch` } }, displayValue)), this.state._variant === 'bar' && hAsync("div", { key: '4bfe04e8e60c7414b8330271cc99bcbaf0d70b01', class: "kol-progress__bar-unit" }, this.state._unit)), hAsync("progress", { key: '63a9fc04563bb96e968bbf9ae7aa7ebd2c41f846', class: "visually-hidden", "aria-busy": this.state._value < this.state._max ? 'true' : 'false', max: this.state._max, value: this.state._value }), hAsync("span", { key: 'a316bbf889b073525bd53b32138710ff7d7d6c4c', "aria-live": "polite", "aria-relevant": "removals text", class: "visually-hidden" }, isPercentage ? `${liveProgressValue} %` : `${liveProgressValue} von ${this.state._max} ${this.state._unit}`)));
25312
+ } }, this.state._variant === 'bar' && this.state._label && hAsync("div", { key: '72598c6fb849503f400b75fdb3789673c580886e', class: "kol-progress__bar-label" }, this.state._label), createProgressSVG(this.state), this.state._variant === 'cycle' && (hAsync("div", { key: '18c2541fe253d1c823734d845122827e2953a04e', class: "kol-progress__cycle-text" }, this.state._label && hAsync("div", { key: '74c81b2090e32b4d9eaa16636cb9c5c5114c46ad', class: "kol-progress__cycle-label" }, this.state._label), hAsync("div", { key: '3a32c98fca4adc2658c36ec72249f297dc1175c3', class: "kol-progress__cycle-value" }, `${displayValue} ${this.state._unit}`))), this.state._variant === 'bar' && (hAsync("div", { key: '4fc52d6d486fc97becfb8d1a45a1ba98975abafd', class: "kol-progress__bar-value", style: { width: `${`${(isPercentage ? 100 : this.state._max) + 1}`.length}ch` } }, displayValue)), this.state._variant === 'bar' && hAsync("div", { key: 'a21584bb20a71bc0931a08e7d98ed358748c4685', class: "kol-progress__bar-unit" }, this.state._unit)), hAsync("progress", { key: 'de96c7da155a8b40d393601abfd8854c4b195a68', class: "visually-hidden", "aria-busy": this.state._value < this.state._max ? 'true' : 'false', max: this.state._max, value: this.state._value }), hAsync("span", { key: '85870eee4599c14b3124f211539fecbdfa605dab', "aria-live": "polite", "aria-relevant": "removals text", class: "visually-hidden" }, isPercentage ? `${liveProgressValue} %` : `${liveProgressValue} von ${this.state._max} ${this.state._unit}`)));
25244
25313
  }
25245
25314
  validateLabel(value) {
25246
25315
  validateLabel(this, value);
@@ -25350,7 +25419,7 @@ class KolQuote {
25350
25419
  }
25351
25420
  render() {
25352
25421
  const hasExpertSlot = showExpertSlot(this.state._quote);
25353
- return (hAsync("figure", { key: '78d631f0d5dd0dad6b89eae8b0dc4dbaf4ead851', class: clsx('kol-quote', `kol-quote--${this.state._variant}`) }, this.state._variant === 'block' ? (hAsync("blockquote", { class: "kol-quote__blockquote", cite: this.state._href }, this.state._quote, hAsync("span", { "aria-hidden": !hasExpertSlot ? 'true' : undefined, hidden: !hasExpertSlot }, hAsync("slot", { name: "expert" })))) : (hAsync("q", { class: "kol-quote__quote", cite: this.state._href }, this.state._quote, hAsync("span", { "aria-hidden": !hasExpertSlot ? 'true' : undefined, hidden: !hasExpertSlot }, hAsync("slot", { name: "expert" })))), typeof this.state._label === 'string' && this.state._label.length > 0 && (hAsync("figcaption", { key: 'c4d64d8ac6593ac6dcd153c2f4fbb18b7c327278', class: "kol-quote__figcaption" }, hAsync("cite", { key: 'a7d71571245e7110e97cf9e37bd0560ed5f67a88', class: "kol-quote__cite" }, hAsync(KolLinkTag, { key: '295878eecc876a4e9864dd87e779318f30a0dd63', _href: this.state._href, _label: this.state._label, _target: "_blank" }))))));
25422
+ return (hAsync("figure", { key: 'e68968696617503220e774f6b0a11c6c7f256582', class: clsx('kol-quote', `kol-quote--${this.state._variant}`) }, this.state._variant === 'block' ? (hAsync("blockquote", { class: "kol-quote__blockquote", cite: this.state._href }, this.state._quote, hAsync("span", { "aria-hidden": !hasExpertSlot ? 'true' : undefined, hidden: !hasExpertSlot }, hAsync("slot", { name: "expert" })))) : (hAsync("q", { class: "kol-quote__quote", cite: this.state._href }, this.state._quote, hAsync("span", { "aria-hidden": !hasExpertSlot ? 'true' : undefined, hidden: !hasExpertSlot }, hAsync("slot", { name: "expert" })))), typeof this.state._label === 'string' && this.state._label.length > 0 && (hAsync("figcaption", { key: '918f5c9884c03b3275473276624f4585490a2069', class: "kol-quote__figcaption" }, hAsync("cite", { key: '609c527c94b38135a0fb2af474f39b61ce69bc74', class: "kol-quote__cite" }, hAsync(KolLinkTag, { key: 'ade63d54115b41bfaa130c054023b0004e49dda5', _href: this.state._href, _label: this.state._label, _target: "_blank" }))))));
25354
25423
  }
25355
25424
  static get watchers() { return {
25356
25425
  "_label": ["validateLabel"],
@@ -25398,6 +25467,10 @@ class SelectController extends InputIconController {
25398
25467
  }
25399
25468
  };
25400
25469
  this.beforePatchOptions = (_value, nextState) => {
25470
+ const raw = nextState.get('_value');
25471
+ if (raw !== undefined && !Array.isArray(raw)) {
25472
+ nextState.set('_value', [raw]);
25473
+ }
25401
25474
  const options = nextState.has('_options') ? nextState.get('_options') : this.component.state._options;
25402
25475
  if (Array.isArray(options) && options.length > 0) {
25403
25476
  this.keyOptionMap.clear();
@@ -25425,6 +25498,7 @@ class SelectController extends InputIconController {
25425
25498
  });
25426
25499
  }
25427
25500
  validateMultiple(value) {
25501
+ this.assertComponentValueMatchesMultiplicity(value === true);
25428
25502
  watchBoolean(this.component, '_multiple', value, {
25429
25503
  hooks: {
25430
25504
  afterPatch: this.afterPatchOptions,
@@ -25439,7 +25513,8 @@ class SelectController extends InputIconController {
25439
25513
  validateRows(this.component, value);
25440
25514
  }
25441
25515
  validateValue(value) {
25442
- watchJsonArrayString(this.component, '_value', () => true, value, undefined, {
25516
+ this.assertValueMatchesMultiplicity(value);
25517
+ watchJsonArrayString(this.component, '_value', () => true, value === undefined ? [] : Array.isArray(value) ? value : [value], undefined, {
25443
25518
  hooks: {
25444
25519
  afterPatch: this.afterPatchOptions,
25445
25520
  beforePatch: this.beforePatchOptions,
@@ -25454,6 +25529,33 @@ class SelectController extends InputIconController {
25454
25529
  this.validateRows(this.component._rows);
25455
25530
  this.validateValue(this.component._value);
25456
25531
  }
25532
+ assertValueMatchesMultiplicity(value) {
25533
+ const isArray = Array.isArray(value);
25534
+ const isMultiple = this.component._multiple === true;
25535
+ if (isMultiple) {
25536
+ if (value !== undefined && !isArray) {
25537
+ throw new Error(`↑ The schema for the property (_value) is not valid for multiple mode. Expected an array. The value will not be changed. (received = ${JSON.stringify(value)})`);
25538
+ }
25539
+ }
25540
+ else {
25541
+ if (isArray) {
25542
+ throw new Error(`↑ The schema for the property (_value) is not valid for single mode. Expected a single value. The value will not be changed. (received = ${JSON.stringify(value)})`);
25543
+ }
25544
+ }
25545
+ }
25546
+ assertComponentValueMatchesMultiplicity(isMultiple) {
25547
+ const rawValue = this.component._value;
25548
+ if (isMultiple) {
25549
+ if (rawValue !== undefined && !Array.isArray(rawValue)) {
25550
+ throw new Error(`↑ The schema for the property (_value) is not valid for multiple mode. Expected an array. The value will not be changed. (current = ${JSON.stringify(rawValue)})`);
25551
+ }
25552
+ }
25553
+ else {
25554
+ if (Array.isArray(rawValue)) {
25555
+ throw new Error(`↑ The schema for the property (_value) is not valid for single mode. Expected a single value. The value will not be changed. (current = ${JSON.stringify(rawValue)})`);
25556
+ }
25557
+ }
25558
+ }
25457
25559
  }
25458
25560
 
25459
25561
  const NativeOptionFc = (_a) => {
@@ -25536,7 +25638,12 @@ var KolSelectDefaultStyle0 = defaultStyleCss$d;
25536
25638
 
25537
25639
  class KolSelect {
25538
25640
  async getValue() {
25539
- return this.state._value;
25641
+ if (this._multiple) {
25642
+ return this.state._value;
25643
+ }
25644
+ else {
25645
+ return Array.isArray(this.state._value) && this.state._value.length > 0 ? this.state._value[0] : this.state._value;
25646
+ }
25540
25647
  }
25541
25648
  async kolFocus() {
25542
25649
  var _a;
@@ -25563,13 +25670,13 @@ class KolSelect {
25563
25670
  } });
25564
25671
  }
25565
25672
  render() {
25566
- return (hAsync(FormFieldStateWrapper, Object.assign({ key: 'cefd579b38a495e4000cbabb3b929357b7139efc' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: '5185f5ca0cde756999e6c57b1b200c8b2030a78b', state: this.state }, hAsync("form", { key: '74cdb0d8519acd611debfdb5338a6f398bedce27', onSubmit: (event) => {
25673
+ return (hAsync(FormFieldStateWrapper, Object.assign({ key: 'ee750f61ab5efaaeab5ce0d12f1e3245d247754d' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: '6de71358b80c74c26932b9fc10646d875bf30604', state: this.state }, hAsync("form", { key: '18fa34b10cf838d759485a347815f41d5dca4107', onSubmit: (event) => {
25567
25674
  event.preventDefault();
25568
25675
  propagateSubmitEventToForm({
25569
25676
  form: this.host,
25570
25677
  ref: this.selectRef,
25571
25678
  });
25572
- } }, hAsync("input", { key: '5cb7da582c0711714ebe1400cd51c0cea4f26303', type: "submit", hidden: true }), hAsync(SelectStateWrapper, Object.assign({ key: 'c8454ca15f481efc2d30426d09d3a946e736773a' }, this.getSelectProps()))))));
25679
+ } }, hAsync("input", { key: 'ee1aaa654136323417f2c422ecb7c338d00e6f71', type: "submit", hidden: true }), hAsync(SelectStateWrapper, Object.assign({ key: '8a734360f69205b8d4da153962b70ad832e552de' }, this.getSelectProps()))))));
25573
25680
  }
25574
25681
  constructor(hostRef) {
25575
25682
  registerInstance(this, hostRef);
@@ -25680,13 +25787,26 @@ class KolSelect {
25680
25787
  }
25681
25788
  onInput(event) {
25682
25789
  var _a;
25683
- this._value = Array.from(((_a = this.selectRef) === null || _a === void 0 ? void 0 : _a.options) || [])
25684
- .filter((option) => option.selected === true)
25790
+ const selectedValues = Array.from(((_a = this.selectRef) === null || _a === void 0 ? void 0 : _a.options) || [])
25791
+ .filter((option) => option.selected)
25685
25792
  .map((option) => { var _a; return (_a = this.controller.getOptionByKey(option.value)) === null || _a === void 0 ? void 0 : _a.value; });
25686
- this.controller.onFacade.onInput(event, true, this._value);
25793
+ if (this._multiple) {
25794
+ this._value = selectedValues;
25795
+ this.controller.onFacade.onInput(event, true, selectedValues);
25796
+ }
25797
+ else {
25798
+ const singleValue = selectedValues.length > 0 ? selectedValues[0] : undefined;
25799
+ this._value = singleValue;
25800
+ this.controller.onFacade.onInput(event, true, singleValue);
25801
+ }
25687
25802
  }
25688
25803
  onChange(event) {
25689
- this.controller.onFacade.onChange(event, this._value);
25804
+ if (this._multiple) {
25805
+ this.controller.onFacade.onChange(event, this._value);
25806
+ }
25807
+ else {
25808
+ this.controller.onFacade.onChange(event, this._value);
25809
+ }
25690
25810
  }
25691
25811
  get host() { return getElement(this); }
25692
25812
  static get watchers() { return {
@@ -25738,7 +25858,7 @@ class KolSelect {
25738
25858
  "_tabIndex": [2, "_tab-index"],
25739
25859
  "_tooltipAlign": [1, "_tooltip-align"],
25740
25860
  "_touched": [1540],
25741
- "_value": [1537],
25861
+ "_value": [1544],
25742
25862
  "state": [32],
25743
25863
  "inputHasFocus": [32],
25744
25864
  "getValue": [64],
@@ -25814,16 +25934,21 @@ class KolSingleSelect {
25814
25934
  (_a = this.refInput) === null || _a === void 0 ? void 0 : _a.focus();
25815
25935
  }
25816
25936
  onBlur() {
25817
- var _a;
25818
- if (Array.isArray(this.state._options) && this.state._options.length > 0 && !this.state._options.some((option) => option.label === this._inputValue)) {
25819
- this._inputValue = (_a = this.state._options.find((option) => option.value === this._value)) === null || _a === void 0 ? void 0 : _a.label;
25937
+ var _a, _b, _c;
25938
+ const matchingOption = (_a = this.state._options) === null || _a === void 0 ? void 0 : _a.find((option) => { var _a, _b; return ((_a = option.label) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === ((_b = this._inputValue) === null || _b === void 0 ? void 0 : _b.toLowerCase()); });
25939
+ if (matchingOption) {
25940
+ this.selectOption(matchingOption);
25941
+ }
25942
+ else {
25943
+ this._inputValue = (_c = (_b = this.state._options) === null || _b === void 0 ? void 0 : _b.find((option) => option.value === this._value)) === null || _c === void 0 ? void 0 : _c.label;
25820
25944
  this._filteredOptions = [...this.state._options];
25821
25945
  }
25822
25946
  this._isOpen = false;
25823
25947
  this._hasOpened = false;
25824
25948
  }
25825
25949
  clearSelection() {
25826
- if (this.state._disabled) {
25950
+ const isDisabled = this.state._disabled === true;
25951
+ if (isDisabled) {
25827
25952
  return;
25828
25953
  }
25829
25954
  else {
@@ -25832,8 +25957,8 @@ class KolSingleSelect {
25832
25957
  this._value = emptyValue;
25833
25958
  this._inputValue = '';
25834
25959
  this._filteredOptions = [...this.state._options];
25835
- this.controller.onFacade.onInput(new CustomEvent('input', { bubbles: true, detail: { name: this.state._name, value: emptyValue } }), true, emptyValue);
25836
- this.controller.onFacade.onChange(new CustomEvent('change', { bubbles: true, detail: { name: this.state._name, value: emptyValue } }), emptyValue);
25960
+ this.controller.onFacade.onInput(new CustomEvent('input', { bubbles: true, detail: { name: this.state._name, value: emptyValue } }), true, { value: emptyValue });
25961
+ this.controller.onFacade.onChange(new CustomEvent('change', { bubbles: true, detail: { name: this.state._name, value: emptyValue } }), { value: emptyValue });
25837
25962
  }
25838
25963
  }
25839
25964
  selectOption(option) {
@@ -25907,8 +26032,9 @@ class KolSingleSelect {
25907
26032
  };
25908
26033
  }
25909
26034
  getInputProps() {
25910
- const { ariaDescribedBy } = getRenderStates$1(this.state);
25911
- return Object.assign(Object.assign({ 'aria-activedescendant': this._isOpen && this._focusedOptionIndex >= 0 ? `option-${this._focusedOptionIndex}` : undefined, 'aria-autocomplete': 'both', 'aria-controls': 'listbox', 'aria-describedby': ariaDescribedBy.length > 0 ? ariaDescribedBy.join(' ') : undefined, 'aria-label': this.state._hideLabel && typeof this.state._label === 'string' ? this.state._label : undefined, accessKey: this.state._accessKey, autocapitalize: 'off', autocorrect: 'off', class: 'kol-single-select__input', disabled: this.state._disabled, name: this.state._name, placeholder: this.state._placeholder, ref: this.catchRef, required: this.state._required, state: this.state, type: 'text', value: this._inputValue }, this.controller.onFacade), { onChange: this.onChange.bind(this), onClick: this.onClick.bind(this), onInput: this.onInput.bind(this), onFocus: (event) => {
26035
+ const { ariaDescribedBy } = getRenderStates(this.state);
26036
+ const isDisabled = this.state._disabled === true;
26037
+ return Object.assign(Object.assign({ 'aria-activedescendant': this._isOpen && this._focusedOptionIndex >= 0 ? `option-${this._focusedOptionIndex}` : undefined, 'aria-autocomplete': 'both', 'aria-controls': 'listbox', 'aria-describedby': ariaDescribedBy.length > 0 ? ariaDescribedBy.join(' ') : undefined, 'aria-label': this.state._hideLabel && typeof this.state._label === 'string' ? this.state._label : undefined, accessKey: this.state._accessKey, autocapitalize: 'off', autocorrect: 'off', class: 'kol-single-select__input', disabled: isDisabled, name: this.state._name, placeholder: this.state._placeholder, ref: this.catchRef, required: this.state._required, state: this.state, type: 'text', value: this._inputValue }, this.controller.onFacade), { onChange: this.onChange.bind(this), onClick: this.onClick.bind(this), onInput: this.onInput.bind(this), onFocus: (event) => {
25912
26038
  this.controller.onFacade.onFocus(event);
25913
26039
  this.inputHasFocus = true;
25914
26040
  }, onBlur: (event) => {
@@ -25918,13 +26044,14 @@ class KolSingleSelect {
25918
26044
  }
25919
26045
  render() {
25920
26046
  var _a;
25921
- return (hAsync(FormFieldStateWrapper, Object.assign({ key: '23fc505e38f0d76c21eba472c85143cf15230f70' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: 'ef29ccf5ff6f6aa206c8e55b1eb534d4ade29617', state: this.state }, hAsync("div", { key: '4caf86c5feb559d8067f2c6fc9d8cf1d5809e62f', class: "kol-single-select__group" }, hAsync(InputStateWrapper, Object.assign({ key: 'a6a72c275cbb6c944f635738190d5075dae6dde8' }, this.getInputProps())), this._inputValue && !this.state._hideClearButton && (hAsync(KolIconTag, { key: 'da7bb5a28584183085464e1c870bd1b1e9f5a54d', _icons: "codicon codicon-close", "data-testid": "single-select-delete", _label: translate('kol-delete-selection'), onClick: () => {
26047
+ const isDisabled = this.state._disabled === true;
26048
+ return (hAsync(FormFieldStateWrapper, Object.assign({ key: '39b2848c0636fbafd9bfa27ad64a656a1cc52e8d' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: 'cd32fb229cc56a6dbf215f36bd8d4a844d82544b', state: this.state }, hAsync("div", { key: '32d4e95487ce6ea9bbd3f06ad4a322d18c7cefa1', class: "kol-single-select__group" }, hAsync(InputStateWrapper, Object.assign({ key: 'e7bae179cfa26e53ee953d1ee1ac2ae90f102797' }, this.getInputProps())), this._inputValue && !this.state._hideClearButton && (hAsync(KolIconTag, { key: '736590a943c6f67651ccfa8baa960d25eadcc481', _icons: "codicon codicon-close", "data-testid": "single-select-delete", _label: translate('kol-delete-selection'), onClick: () => {
25922
26049
  var _a;
25923
26050
  this.clearSelection();
25924
26051
  (_a = this.refInput) === null || _a === void 0 ? void 0 : _a.focus();
25925
26052
  }, class: clsx('kol-single-select__delete', {
25926
- 'kol-single-select__delete--disabled': this.state._disabled,
25927
- }) })), hAsync(CustomSuggestionsToggleFc, { key: '6ed5dfdd0465c0aa15745ed3b0210eec01f769e2', onClick: this.toggleListbox.bind(this), disabled: this.state._disabled })), this._isOpen && !(this.state._disabled === true) && (hAsync(CustomSuggestionsOptionsGroupFc, { key: 'f6caab6259e0928ecdff02385e690ff6aba9bbb4', blockSuggestionMouseOver: this.blockSuggestionMouseOver, onKeyDown: this.handleKeyDownDropdown.bind(this), style: { '--visible-options': `${(_a = this._rows) !== null && _a !== void 0 ? _a : 5}` } }, Array.isArray(this._filteredOptions) && this._filteredOptions.length > 0 ? (this._filteredOptions.map((option, index) => (hAsync(CustomSuggestionsOptionFc, { index: index, option: option.label, ref: (el) => {
26053
+ 'kol-single-select__delete--disabled': isDisabled,
26054
+ }) })), hAsync(CustomSuggestionsToggleFc, { key: '34d7ddddda47097b0cdc607e5db0c9afa9e4ae1c', onClick: this.toggleListbox.bind(this), disabled: isDisabled })), this._isOpen && !isDisabled && (hAsync(CustomSuggestionsOptionsGroupFc, { key: '4ce6e47c707649893ec1c10ec0cb89e81a363b31', blockSuggestionMouseOver: this.blockSuggestionMouseOver, onKeyDown: this.handleKeyDownDropdown.bind(this), style: { '--visible-options': `${(_a = this._rows) !== null && _a !== void 0 ? _a : 5}` } }, Array.isArray(this._filteredOptions) && this._filteredOptions.length > 0 ? (this._filteredOptions.map((option, index) => (hAsync(CustomSuggestionsOptionFc, { index: index, option: option.label, searchTerm: this._inputValue, ref: (el) => {
25928
26055
  if (el)
25929
26056
  this.refOptions[index] = el;
25930
26057
  }, selected: this._value === option.value, onClick: (event) => {
@@ -26063,7 +26190,8 @@ class KolSingleSelect {
26063
26190
  this.toggleListbox = (event) => {
26064
26191
  var _a;
26065
26192
  event === null || event === void 0 ? void 0 : event.preventDefault();
26066
- if (this.state._disabled) {
26193
+ const isDisabled = this.state._disabled === true;
26194
+ if (isDisabled) {
26067
26195
  return;
26068
26196
  }
26069
26197
  else {
@@ -26293,7 +26421,7 @@ class KolSkipNav {
26293
26421
  };
26294
26422
  }
26295
26423
  render() {
26296
- return (hAsync("nav", { key: 'fc580f9edeb7512ee0a0aafc3fdc5abbd805d90a', class: "kol-skip-nav", "aria-label": this.state._label }, hAsync("ul", { key: '821ae6e29469bf0a078742202e18a2c8f80d9f71', class: "kol-skip-nav__list" }, this.state._links.map((link, index) => {
26424
+ return (hAsync("nav", { key: '912f8ac6ce63cddd0fa738db9ef6ff987b2a2db9', class: "kol-skip-nav", "aria-label": this.state._label }, hAsync("ul", { key: '79991f7d918e9bbf6891d479804f2520356f2a41', class: "kol-skip-nav__list" }, this.state._links.map((link, index) => {
26297
26425
  return (hAsync("li", { class: "kol-skip-nav__list-item", key: index }, hAsync(KolLinkWcTag, Object.assign({}, link))));
26298
26426
  }))));
26299
26427
  }
@@ -26361,7 +26489,7 @@ class KolSpin {
26361
26489
  };
26362
26490
  }
26363
26491
  render() {
26364
- return (hAsync(Host, { key: 'b862ca1a3c7cdc1ffbd8148e095fbd601c875ecb', class: "kol-spin" }, this.state._show ? (hAsync("span", { "aria-busy": "true", "aria-label": translate('kol-action-running'), "aria-live": "polite", class: clsx('kol-spin__spinner', `kol-spin__spinner--${this.state._variant}`), role: "alert" }, renderSpin(this.state._variant))) : (this.showToggled && hAsync("span", { "aria-label": translate('kol-action-done'), "aria-busy": "false", "aria-live": "polite", role: "alert" }))));
26492
+ return (hAsync(Host, { key: 'e1cc9c4961a7a43913cf6386c2c6ce4414afe256', class: "kol-spin" }, this.state._show ? (hAsync("span", { "aria-busy": "true", "aria-label": translate('kol-action-running'), "aria-live": "polite", class: clsx('kol-spin__spinner', `kol-spin__spinner--${this.state._variant}`), role: "alert" }, renderSpin(this.state._variant))) : (this.showToggled && hAsync("span", { "aria-label": translate('kol-action-done'), "aria-busy": "false", "aria-live": "polite", role: "alert" }))));
26365
26493
  }
26366
26494
  validateShow(value) {
26367
26495
  this.showToggled = this.state._show === true && this._show === false;
@@ -26401,6 +26529,9 @@ var KolSplitButtonDefaultStyle0 = defaultStyleCss$9;
26401
26529
  class KolSplitButton {
26402
26530
  constructor(hostRef) {
26403
26531
  registerInstance(this, hostRef);
26532
+ this.catchPrimaryRef = (ref) => {
26533
+ this.primaryButtonWcRef = ref;
26534
+ };
26404
26535
  this.clickButtonHandler = {
26405
26536
  onClick: (event) => {
26406
26537
  var _a, _b;
@@ -26408,9 +26539,6 @@ class KolSplitButton {
26408
26539
  if (typeof ((_a = this._on) === null || _a === void 0 ? void 0 : _a.onClick) === 'function') {
26409
26540
  (_b = this._on) === null || _b === void 0 ? void 0 : _b.onClick(event, this._value);
26410
26541
  }
26411
- else {
26412
- this.toggleDropdown();
26413
- }
26414
26542
  },
26415
26543
  };
26416
26544
  this.clickToggleHandler = {
@@ -26425,7 +26553,9 @@ class KolSplitButton {
26425
26553
  this.handleOnClose = () => {
26426
26554
  this.state = Object.assign(Object.assign({}, this.state), { _show: false });
26427
26555
  };
26556
+ this._accessKey = undefined;
26428
26557
  this._ariaControls = undefined;
26558
+ this._ariaDescription = undefined;
26429
26559
  this._ariaExpanded = undefined;
26430
26560
  this._ariaSelected = undefined;
26431
26561
  this._customClass = undefined;
@@ -26437,6 +26567,7 @@ class KolSplitButton {
26437
26567
  this._name = undefined;
26438
26568
  this._on = undefined;
26439
26569
  this._role = undefined;
26570
+ this._shortKey = undefined;
26440
26571
  this._syncValueBySelector = undefined;
26441
26572
  this._tooltipAlign = 'top';
26442
26573
  this._type = 'button';
@@ -26446,12 +26577,19 @@ class KolSplitButton {
26446
26577
  _show: false,
26447
26578
  };
26448
26579
  }
26580
+ async getValue() {
26581
+ return this._value;
26582
+ }
26583
+ async kolFocus() {
26584
+ var _a;
26585
+ await ((_a = this.primaryButtonWcRef) === null || _a === void 0 ? void 0 : _a.kolFocus());
26586
+ }
26449
26587
  render() {
26450
26588
  const i18nDropdownLabel = 'kol-split-button-dropdown-label';
26451
- return (hAsync("div", { key: 'adfeb36fc1c13115648cab2c692dcf28ede4f663', class: "kol-split-button" }, hAsync("div", { key: '6ddddfa00a901d7a1c02a242384ba6478955c13b', class: "kol-split-button__root" }, hAsync(KolButtonWcTag, { key: '73295b6c589ee559c4e301c6685568e0aa6359de', class: clsx('kol-split-button__button', {
26589
+ return (hAsync("div", { key: '66a929dff8d069efce9546856d5d4c86e49320a5', class: "kol-split-button" }, hAsync("div", { key: '85505f259071971082af5d60bc838e541663c3da', class: "kol-split-button__root" }, hAsync(KolButtonWcTag, { key: 'c4a089a9afce71f21a96b236f2a8c91662ad78f0', class: clsx('kol-split-button__button', {
26452
26590
  [this._variant]: this._variant !== 'custom',
26453
26591
  [this._customClass]: this._variant === 'custom' && typeof this._customClass === 'string' && this._customClass.length > 0,
26454
- }), _ariaControls: this._ariaControls, _ariaExpanded: this._ariaExpanded, _ariaSelected: this._ariaSelected, _customClass: this._customClass, _disabled: this._disabled, _icons: this._icons, _hideLabel: this._hideLabel, _label: this._label, _name: this._name, _on: this.clickButtonHandler, _role: this._role, _syncValueBySelector: this._syncValueBySelector, _tooltipAlign: this._tooltipAlign, _type: this._type, _value: this._value, _buttonVariant: this._variant }), hAsync("div", { key: '29f15b767934692234c76d6738696ea225488d24', class: "kol-split-button__horizontal-line" }), hAsync(KolButtonWcTag, { key: '689696759403849639ec892383aad2d055ac1482', class: "kol-split-button__secondary-button", _disabled: this._disabled, _hideLabel: true, _icons: "codicon codicon-triangle-down", _label: this.state._show ? translate(`${i18nDropdownLabel}-close`) : translate(`${i18nDropdownLabel}-open`), _on: this.clickToggleHandler })), hAsync(KolPopoverWcTag, { key: 'ba4151408b5ea8295eaee3f680ccd394e081464b', _show: this.state._show, _on: { onClose: this.handleOnClose }, _align: "bottom" }, hAsync("slot", { key: '88c02a85478c3cedae8272e2f3f4848bbf031488' }))));
26592
+ }), ref: this.catchPrimaryRef, _accessKey: this._accessKey, _ariaControls: this._ariaControls, _ariaDescription: this._ariaDescription, _ariaExpanded: this._ariaExpanded, _ariaSelected: this._ariaSelected, _customClass: this._customClass, _disabled: this._disabled, _icons: this._icons, _id: this._id, _hideLabel: this._hideLabel, _label: this._label, _name: this._name, _on: this.clickButtonHandler, _role: this._role, _shortKey: this._shortKey, _syncValueBySelector: this._syncValueBySelector, _tooltipAlign: this._tooltipAlign, _type: this._type, _value: this._value, _buttonVariant: this._variant }), hAsync("div", { key: 'e8612f334a399f23bbc9e3a257bd5e56dc26ca71', class: "kol-split-button__horizontal-line" }), hAsync(KolButtonWcTag, { key: '168c422e85261c679a7563b267cdbf25555b1385', class: "kol-split-button__secondary-button", _disabled: this._disabled, _hideLabel: true, _icons: "codicon codicon-triangle-down", _label: this.state._show ? translate(`${i18nDropdownLabel}-close`) : translate(`${i18nDropdownLabel}-open`), _on: this.clickToggleHandler })), hAsync(KolPopoverWcTag, { key: '34083ba6afef3fc9e04397800552a5e9755d3f00', _show: this.state._show, _on: { onClose: this.handleOnClose }, _align: "bottom" }, hAsync("slot", { key: '659cd50ab13bfdb752d0d2930e7b53737a499e40' }))));
26455
26593
  }
26456
26594
  async closePopup() {
26457
26595
  this.handleOnClose();
@@ -26465,7 +26603,9 @@ class KolSplitButton {
26465
26603
  "$flags$": 57,
26466
26604
  "$tagName$": "kol-split-button",
26467
26605
  "$members$": {
26606
+ "_accessKey": [1, "_access-key"],
26468
26607
  "_ariaControls": [1, "_aria-controls"],
26608
+ "_ariaDescription": [1, "_aria-description"],
26469
26609
  "_ariaExpanded": [4, "_aria-expanded"],
26470
26610
  "_ariaSelected": [4, "_aria-selected"],
26471
26611
  "_customClass": [1, "_custom-class"],
@@ -26477,12 +26617,15 @@ class KolSplitButton {
26477
26617
  "_name": [1],
26478
26618
  "_on": [16],
26479
26619
  "_role": [1],
26620
+ "_shortKey": [1, "_short-key"],
26480
26621
  "_syncValueBySelector": [1, "_sync-value-by-selector"],
26481
26622
  "_tooltipAlign": [1, "_tooltip-align"],
26482
26623
  "_type": [1],
26483
26624
  "_value": [8],
26484
26625
  "_variant": [1],
26485
26626
  "state": [32],
26627
+ "getValue": [64],
26628
+ "kolFocus": [64],
26486
26629
  "closePopup": [64]
26487
26630
  },
26488
26631
  "$listeners$": undefined,
@@ -26548,7 +26691,7 @@ class KolTableSettings {
26548
26691
  }
26549
26692
  render() {
26550
26693
  const sortedColumns = [...this.tableSettings.columns].sort((a, b) => a.position - b.position);
26551
- return (hAsync(KolPopoverButtonWcTag, { key: 'efbe65355597dcc6a5b5b5e23077b037ab90318c', ref: (el) => (this.popoverRef = el), class: "kol-table-settings", _icons: "codicon codicon-settings-gear", _label: translate('kol-table-settings'), _popoverAlign: "top", _hideLabel: true }, hAsync("div", { key: '5b149682787c1fb1fb73faab858b7ec7d4d753e4', class: "kol-table-settings__content" }, hAsync(KolHeadingTag, { key: '3e651488c0b04dfcd1acf8a32a4f060e4b08d0a6', _label: translate('kol-table-settings'), _level: 0 }), this.errorMessage && hAsync(KolAlertWcTag, { key: '5b5cfdfdce5ae3da8b378a574abfea48b0c04460', _type: "error", _label: this.errorMessage, _variant: "msg", class: "kol-table-settings__error-message" }), hAsync("form", { key: 'b9b80cd51c8ec1e89c1559201e6e0f0287c48c86', onSubmit: this.handleSubmit.bind(this) }, hAsync("div", { key: '0675d6796ab9e94592dad2649933e5c3905026b6', class: "kol-table-settings__columns-container" }, hAsync("div", { key: '76eca8bcb960febf13c5ecd7f64cb1b8c295edc7', class: "kol-table-settings__columns" }, sortedColumns.map((column, index) => (hAsync("div", { key: column.key, class: "kol-table-settings__column" }, hAsync(KolInputCheckboxTag, { _checked: column.visible, _label: translate('kol-table-settings-show-column', { placeholders: { column: column.label } }), _value: true, _hideLabel: true, _on: { onInput: (_, value) => this.handleVisibilityChange(column.key, value) } }), hAsync("span", null, column.label), hAsync(KolInputNumberTag, { _hideLabel: true, _value: column.width, _label: translate('kol-table-settings-column-width', { placeholders: { column: column.label } }), _min: 1, _on: { onInput: (_, value) => this.handleWidthChange(column.key, value) } }), hAsync(KolButtonWcTag, { _icons: "codicon codicon-arrow-up", _label: translate('kol-table-settings-move-up', { placeholders: { column: column.label } }), _hideLabel: true, _buttonVariant: "ghost", _on: { onClick: () => this.moveColumn(column.key, 'up') }, _disabled: index === 0, "data-testid": "table-settings-move-up" }), hAsync(KolButtonWcTag, { _icons: "codicon codicon-arrow-down", _label: translate('kol-table-settings-move-down', { placeholders: { column: column.label } }), _hideLabel: true, _buttonVariant: "ghost", _on: { onClick: () => this.moveColumn(column.key, 'down') }, _disabled: index === sortedColumns.length - 1, "data-testid": "table-settings-move-down" })))))), hAsync("div", { key: 'b48eb18949304209ed611de05ce4ea26f4035fd5', class: "kol-table-settings__actions" }, hAsync(KolButtonWcTag, { key: '6a5ec1307960f14e0c3fbb513ccf7ea79914793a', _label: translate('kol-table-settings-cancel'), _buttonVariant: "secondary", _on: { onClick: () => this.handleCancel() }, "data-testid": "table-settings-cancel" }), hAsync(KolButtonWcTag, { key: '4f40c7f57985ee0f9264a3f33fe819bd9e9467cc', _label: translate('kol-table-settings-apply'), _buttonVariant: "primary", _type: "submit", "data-testid": "table-settings-apply" }))))));
26694
+ return (hAsync(KolPopoverButtonWcTag, { key: '0ca51ae3cc20e2c0a3e8af8d287ec0a0414139bc', ref: (el) => (this.popoverRef = el), class: "kol-table-settings", _icons: "codicon codicon-settings-gear", _label: translate('kol-table-settings'), _popoverAlign: "top", _hideLabel: true }, hAsync("div", { key: 'e5fbc57fd59529262b64192a8013d84be69f0f9b', class: "kol-table-settings__content" }, hAsync(KolHeadingTag, { key: 'f15bdeface7b959ddd25ed3fe76d5ad262954091', _label: translate('kol-table-settings'), _level: 0 }), this.errorMessage && hAsync(KolAlertWcTag, { key: '286889a668bc874f1688b06ad145c71bdc5cde6b', _type: "error", _label: this.errorMessage, _variant: "msg", class: "kol-table-settings__error-message" }), hAsync("form", { key: 'de4d015a4bf8123a0f61cb94a6d546b7fc2a947c', onSubmit: this.handleSubmit.bind(this) }, hAsync("div", { key: '5f59e3f62159570ce663ee4946c45305064c47f0', class: "kol-table-settings__columns-container" }, hAsync("div", { key: '316fc127e3d68faa71e57c055cabfa6635ce7732', class: "kol-table-settings__columns" }, sortedColumns.map((column, index) => (hAsync("div", { key: column.key, class: "kol-table-settings__column" }, hAsync(KolInputCheckboxTag, { _checked: column.visible, _label: translate('kol-table-settings-show-column', { placeholders: { column: column.label } }), _value: true, _hideLabel: true, _on: { onInput: (_, value) => this.handleVisibilityChange(column.key, value) } }), hAsync("span", null, column.label), hAsync(KolInputNumberTag, { _hideLabel: true, _value: column.width, _label: translate('kol-table-settings-column-width', { placeholders: { column: column.label } }), _min: 1, _on: { onInput: (_, value) => this.handleWidthChange(column.key, value) } }), hAsync(KolButtonWcTag, { _icons: "codicon codicon-arrow-up", _label: translate('kol-table-settings-move-up', { placeholders: { column: column.label } }), _hideLabel: true, _buttonVariant: "ghost", _on: { onClick: () => this.moveColumn(column.key, 'up') }, _disabled: index === 0, "data-testid": "table-settings-move-up" }), hAsync(KolButtonWcTag, { _icons: "codicon codicon-arrow-down", _label: translate('kol-table-settings-move-down', { placeholders: { column: column.label } }), _hideLabel: true, _buttonVariant: "ghost", _on: { onClick: () => this.moveColumn(column.key, 'down') }, _disabled: index === sortedColumns.length - 1, "data-testid": "table-settings-move-down" })))))), hAsync("div", { key: '4e7a2481531e1cf0c387df5476efd5b9044f27d5', class: "kol-table-settings__actions" }, hAsync(KolButtonWcTag, { key: 'b4ad0c611d272a9e4f29d93ebcf018febb16cf83', _label: translate('kol-table-settings-cancel'), _buttonVariant: "secondary", _on: { onClick: () => this.handleCancel() }, "data-testid": "table-settings-cancel" }), hAsync(KolButtonWcTag, { key: 'b46efad370ce482f80e181acab237ce0a8433711', _label: translate('kol-table-settings-apply'), _buttonVariant: "primary", _type: "submit", "data-testid": "table-settings-apply" }))))));
26552
26695
  }
26553
26696
  get host() { return getElement(this); }
26554
26697
  static get watchers() { return {
@@ -26609,7 +26752,7 @@ const validateTableSettings = (component, value) => {
26609
26752
  watchValidator(component, `_tableSettings`, (value) => typeof value === 'object' && value !== null, new Set(['TableSettings']), value);
26610
26753
  };
26611
26754
 
26612
- const defaultStyleCss$8 = "@charset \"UTF-8\";\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]),\n .kol-input .input {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n background-color: lightgray;\n color: black;\n }\n}\n@layer kol-global {\n :host {\n font-size: rem(16);\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: grid;\n place-items: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@layer kol-component {\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n animation-duration: 0.25s;\n animation-iteration-count: 1;\n animation-name: fadeInOpacity;\n animation-timing-function: ease-in;\n display: none;\n position: fixed;\n visibility: hidden;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n max-width: 90vw;\n max-height: 90vh;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width);\n }\n .kol-tooltip__arrow {\n background-color: #fff;\n color: #000;\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n position: absolute;\n transform: rotate(45deg);\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n z-index: 999;\n }\n .kol-tooltip__content {\n background-color: #fff;\n color: #000;\n position: relative;\n z-index: 1000;\n }\n @keyframes fadeInOpacity {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n .kol-alert {\n display: grid;\n }\n .kol-alert__container {\n place-items: center;\n display: flex;\n }\n .kol-alert__container-content {\n flex-grow: 1;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1rem / var(--kolibri-root-font-size, 16));\n }\n}\n@layer kol-component {\n :host {\n display: inline-block;\n }\n .kol-button {\n font-style: calc(16rem / var(--kolibri-root-font-size, 16));\n display: inline-flex;\n place-items: center;\n text-align: center;\n text-decoration-line: none;\n }\n .kol-button::before {\n /* Render zero-width character as first element to set the baseline correctly. */\n content: \"​\";\n }\n .kol-button__text {\n margin: auto;\n width: 100%;\n }\n}\n@layer kol-component {\n .kol-popover-button__button {\n display: inline-block;\n }\n .kol-popover-button__popover {\n border: 1px solid #000;\n margin: 0;\n padding: 0;\n }\n}\n@layer kol-component {\n .kol-table-settings {\n background: #fff;\n position: absolute;\n right: 0;\n top: 0;\n z-index: 1;\n }\n .kol-table-settings__columns-container {\n margin-top: calc(16rem / var(--kolibri-root-font-size, 16));\n max-height: calc(200rem / var(--kolibri-root-font-size, 16));\n overflow: auto;\n }\n .kol-table-settings__columns {\n align-items: center;\n display: grid;\n gap: calc(8rem / var(--kolibri-root-font-size, 16));\n grid-auto-rows: min-content;\n grid-template-columns: min-content 1fr calc(100rem / var(--kolibri-root-font-size, 16)) auto auto;\n overflow: hidden;\n }\n .kol-table-settings__column {\n display: contents;\n }\n}\n@layer kol-component {\n .kol-table {\n display: block;\n max-width: 100%;\n position: relative;\n }\n .kol-table__scroll-container {\n overflow-x: auto;\n overflow-y: hidden;\n }\n .kol-table:has(.kol-table__focus-element:focus) .kol-table__scroll-container {\n /* @see https://remysharp.com/til/css/focus-ring-default-styles */\n outline: 5px auto Highlight;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: 2px;\n }\n .kol-table__table {\n width: 100%;\n }\n .kol-table__caption {\n text-align: start;\n min-height: var(--a11y-min-size);\n padding-right: var(--a11y-min-size);\n }\n .kol-table__focus-element {\n font-size: 0;\n }\n .kol-table__sort-button .kol-button {\n color: inherit;\n }\n .kol-table__body {\n text-align: left;\n }\n .kol-table__body .kol-button__text {\n justify-items: start;\n }\n .kol-table__cell--align-left {\n text-align: left;\n }\n .kol-table__cell--align-left .kol-button__text {\n justify-items: start;\n }\n .kol-table__cell--align-center {\n text-align: center;\n }\n .kol-table__cell--align-center .kol-button__text {\n justify-items: center;\n }\n .kol-table__cell--align-right {\n text-align: right;\n }\n .kol-table__cell--align-right .kol-button__text {\n justify-items: end;\n }\n .kol-table__cell--selection {\n width: var(--a11y-min-size);\n height: var(--a11y-min-size);\n white-space: nowrap;\n }\n .kol-table__spacer {\n display: none;\n }\n .kol-table__selection-label {\n align-items: center;\n cursor: pointer;\n display: flex;\n height: var(--a11y-min-size);\n justify-content: center;\n position: relative;\n width: var(--a11y-min-size);\n }\n .kol-table__selection-label--disabled {\n cursor: not-allowed;\n }\n .kol-table__selection-icon {\n display: block;\n inset: auto;\n position: absolute;\n z-index: 1;\n }\n .kol-table__selection-input {\n appearance: none;\n border-style: solid;\n cursor: pointer;\n margin: 0;\n }\n .kol-table__selection-input:disabled {\n cursor: not-allowed;\n }\n .kol-table__selection-input:before {\n content: \"\";\n }\n .kol-table__selection-input--checkbox {\n position: relative;\n display: flex;\n height: calc(var(--a11y-min-size) / 2);\n width: calc(var(--a11y-min-size) / 2);\n align-items: center;\n justify-content: center;\n background-color: rgb(255, 255, 255);\n border-width: 2px;\n line-height: 1.5;\n transition: all 0.5s ease 0s;\n }\n .kol-table__selection-input--radio {\n display: flex;\n border-width: 2px;\n border-radius: 100%;\n height: 1.5em;\n min-height: 1.5em;\n min-width: 1.5em;\n padding: 0;\n width: 1.5em;\n }\n .kol-table__selection-input--radio:before {\n border-radius: 100%;\n margin: auto;\n height: 0.75em;\n width: 0.75em;\n }\n .kol-table__selection-input--radio:checked:before {\n background-color: #000;\n }\n @media (forced-colors: active) {\n .kol-table__selection-input--radio:checked:before {\n /* Give it a visible background in forced colors mode */\n background-color: selectedItem !important;\n }\n }\n}\n@layer kol-component {\n .kol-table-stateful__pagination, .kol-table-stateful__pagination-wrapper {\n display: grid;\n place-items: center;\n }\n @media (min-width: 1024px) {\n .kol-table-stateful__pagination, .kol-table-stateful__pagination-wrapper {\n grid-auto-flow: column;\n }\n }\n .kol-pagination {\n display: flex;\n flex-wrap: wrap;\n }\n @media (min-width: 1024px) {\n .kol-pagination {\n display: flex;\n }\n }\n @media (max-width: 1024px) {\n .kol-pagination {\n flex-direction: column;\n }\n }\n}";
26755
+ const defaultStyleCss$8 = "@charset \"UTF-8\";\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]),\n .kol-input .input {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n background-color: lightgray;\n color: black;\n }\n}\n@layer kol-global {\n :host {\n font-size: rem(16);\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: grid;\n place-items: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@layer kol-component {\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n animation-duration: 0.25s;\n animation-iteration-count: 1;\n animation-name: fadeInOpacity;\n animation-timing-function: ease-in;\n display: none;\n position: fixed;\n visibility: hidden;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n max-width: 90vw;\n max-height: 90vh;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width);\n }\n .kol-tooltip__arrow {\n background-color: #fff;\n color: #000;\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n position: absolute;\n transform: rotate(45deg);\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n z-index: 999;\n }\n .kol-tooltip__content {\n background-color: #fff;\n color: #000;\n position: relative;\n z-index: 1000;\n }\n @keyframes fadeInOpacity {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n .kol-alert {\n display: grid;\n }\n .kol-alert__container {\n place-items: center;\n display: flex;\n }\n .kol-alert__container-content {\n flex-grow: 1;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1rem / var(--kolibri-root-font-size, 16));\n }\n}\n@layer kol-component {\n :host {\n display: inline-block;\n }\n .kol-button {\n font-style: calc(16rem / var(--kolibri-root-font-size, 16));\n display: inline-flex;\n place-items: center;\n text-align: center;\n text-decoration-line: none;\n }\n .kol-button::before {\n /* Render zero-width character as first element to set the baseline correctly. */\n content: \"​\";\n }\n .kol-button__text {\n margin: auto;\n width: 100%;\n }\n}\n@layer kol-component {\n .kol-popover-button__button {\n display: inline-block;\n }\n .kol-popover-button__popover {\n border: 0;\n margin: 0;\n padding: 0;\n }\n}\n@layer kol-component {\n .kol-table-settings {\n background: #fff;\n position: absolute;\n right: 0;\n top: 0;\n z-index: 1;\n }\n .kol-table-settings__columns-container {\n margin-top: calc(16rem / var(--kolibri-root-font-size, 16));\n max-height: calc(200rem / var(--kolibri-root-font-size, 16));\n overflow: auto;\n }\n .kol-table-settings__columns {\n align-items: center;\n display: grid;\n gap: calc(8rem / var(--kolibri-root-font-size, 16));\n grid-auto-rows: min-content;\n grid-template-columns: min-content 1fr calc(100rem / var(--kolibri-root-font-size, 16)) auto auto;\n overflow: hidden;\n }\n .kol-table-settings__column {\n display: contents;\n }\n}\n@layer kol-component {\n .kol-table {\n display: block;\n max-width: 100%;\n position: relative;\n }\n .kol-table__scroll-container {\n overflow-x: auto;\n overflow-y: hidden;\n }\n .kol-table:has(.kol-table__focus-element:focus) .kol-table__scroll-container {\n /* @see https://remysharp.com/til/css/focus-ring-default-styles */\n outline: 5px auto Highlight;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: 2px;\n }\n .kol-table__table {\n width: 100%;\n }\n .kol-table__caption {\n text-align: start;\n min-height: var(--a11y-min-size);\n padding-right: var(--a11y-min-size);\n }\n .kol-table__focus-element {\n font-size: 0;\n }\n .kol-table__sort-button .kol-button {\n color: inherit;\n }\n .kol-table__body {\n text-align: left;\n }\n .kol-table__body .kol-button__text {\n justify-items: start;\n }\n .kol-table__cell--align-left {\n text-align: left;\n }\n .kol-table__cell--align-left .kol-button__text {\n justify-items: start;\n }\n .kol-table__cell--align-center {\n text-align: center;\n }\n .kol-table__cell--align-center .kol-button__text {\n justify-items: center;\n }\n .kol-table__cell--align-right {\n text-align: right;\n }\n .kol-table__cell--align-right .kol-button__text {\n justify-items: end;\n }\n .kol-table__cell--selection {\n width: var(--a11y-min-size);\n height: var(--a11y-min-size);\n white-space: nowrap;\n }\n .kol-table__spacer {\n display: none;\n }\n .kol-table__selection-label {\n align-items: center;\n cursor: pointer;\n display: flex;\n height: var(--a11y-min-size);\n justify-content: center;\n position: relative;\n width: var(--a11y-min-size);\n }\n .kol-table__selection-label--disabled {\n cursor: not-allowed;\n }\n .kol-table__selection-icon {\n display: block;\n inset: auto;\n position: absolute;\n z-index: 1;\n }\n .kol-table__selection-input {\n appearance: none;\n border-style: solid;\n cursor: pointer;\n margin: 0;\n }\n .kol-table__selection-input:disabled {\n cursor: not-allowed;\n }\n .kol-table__selection-input:before {\n content: \"\";\n }\n .kol-table__selection-input--checkbox {\n position: relative;\n display: flex;\n height: calc(var(--a11y-min-size) / 2);\n width: calc(var(--a11y-min-size) / 2);\n align-items: center;\n justify-content: center;\n background-color: rgb(255, 255, 255);\n border-width: 2px;\n line-height: 1.5;\n transition: all 0.5s ease 0s;\n }\n .kol-table__selection-input--radio {\n display: flex;\n border-width: 2px;\n border-radius: 100%;\n height: 1.5em;\n min-height: 1.5em;\n min-width: 1.5em;\n padding: 0;\n width: 1.5em;\n }\n .kol-table__selection-input--radio:before {\n border-radius: 100%;\n margin: auto;\n height: 0.75em;\n width: 0.75em;\n }\n .kol-table__selection-input--radio:checked:before {\n background-color: #000;\n }\n @media (forced-colors: active) {\n .kol-table__selection-input--radio:checked:before {\n /* Give it a visible background in forced colors mode */\n background-color: selectedItem !important;\n }\n }\n}\n@layer kol-component {\n .kol-pagination {\n align-items: center;\n display: grid;\n gap: calc(16rem / var(--kolibri-root-font-size, 16));\n grid-template-columns: 1fr auto;\n }\n .kol-pagination__navigation-list {\n align-items: center;\n display: inline-flex;\n flex-wrap: wrap;\n gap: 0.5em;\n list-style: none;\n margin: 0;\n padding: 0;\n }\n .kol-pagination__separator:before {\n content: \"•••\";\n }\n}\n@layer kol-component {\n .kol-table-stateful__pagination, .kol-table-stateful__pagination-wrapper {\n display: grid;\n place-items: center;\n }\n @media (min-width: 1024px) {\n .kol-table-stateful__pagination, .kol-table-stateful__pagination-wrapper {\n grid-auto-flow: column;\n }\n }\n .kol-pagination {\n display: flex;\n flex-wrap: wrap;\n }\n @media (min-width: 1024px) {\n .kol-pagination {\n display: flex;\n }\n }\n @media (max-width: 1024px) {\n .kol-pagination {\n flex-direction: column;\n }\n }\n}";
26613
26756
  var KolTableStatefulDefaultStyle0 = defaultStyleCss$8;
26614
26757
 
26615
26758
  const PAGINATION_OPTIONS = [10, 20, 50, 100];
@@ -26885,7 +27028,7 @@ class KolTableStateful {
26885
27028
  ? this.state._data.length.toString()
26886
27029
  : '0',
26887
27030
  },
26888
- })), hAsync("div", { class: "kol-table-stateful__pagination-wrapper" }, hAsync(KolPaginationTag, { class: "test", _boundaryCount: this.state._pagination._boundaryCount, _customClass: this.state._pagination._customClass, _on: this.handlePagination, _page: this.state._pagination._page, _pageSize: this.state._pagination._pageSize, _pageSizeOptions: this.state._pagination._pageSizeOptions || PAGINATION_OPTIONS, _siblingCount: this.state._pagination._siblingCount, _tooltipAlign: "bottom", _max: this.state._pagination._max || this.state._pagination._max || this.state._data.length, _label: label }))));
27031
+ })), hAsync("div", { class: "kol-table-stateful__pagination-wrapper" }, hAsync(KolPaginationWcTag, { class: "test", _boundaryCount: this.state._pagination._boundaryCount, _customClass: this.state._pagination._customClass, _on: this.handlePagination, _page: this.state._pagination._page, _pageSize: this.state._pagination._pageSize, _pageSizeOptions: this.state._pagination._pageSizeOptions || PAGINATION_OPTIONS, _siblingCount: this.state._pagination._siblingCount, _tooltipAlign: "bottom", _max: this.state._pagination._max || this.state._pagination._max || this.state._data.length, _label: label }))));
26889
27032
  }
26890
27033
  getHeaderCellSortState(headerCell) {
26891
27034
  if (!this.disableSort && typeof headerCell.compareFn === 'function') {
@@ -26945,7 +27088,7 @@ class KolTableStateful {
26945
27088
  horizontal: (_d = (_c = this.state._headers.horizontal) === null || _c === void 0 ? void 0 : _c.map((row) => row.map((cell) => (Object.assign(Object.assign({}, cell), { sortDirection: this.getHeaderCellSortState(cell) }))))) !== null && _d !== void 0 ? _d : [],
26946
27089
  vertical: (_f = (_e = this.state._headers.vertical) === null || _e === void 0 ? void 0 : _e.map((column) => column.map((cell) => (Object.assign(Object.assign({}, cell), { sortDirection: this.getHeaderCellSortState(cell) }))))) !== null && _f !== void 0 ? _f : [],
26947
27090
  };
26948
- return (hAsync(Host, { key: '807cc711bfe34ca458ec8aecb858234761e8a1de', class: "kol-table-stateful" }, this.pageEndSlice > 0 && this.showPagination && paginationTop, hAsync(KolTableStatelessWcTag, { key: '2d5f259e75c6f178a06237bef92bc72d3b182ec5', ref: this.catchRef, _data: displayedData, _headerCells: headerCells, _label: this.state._label, _dataFoot: this.state._dataFoot, _minWidth: this.state._minWidth, _on: {
27091
+ return (hAsync(Host, { key: 'ae9fe552c93f1ef8273be72a54865e524abc550d', class: "kol-table-stateful" }, this.pageEndSlice > 0 && this.showPagination && paginationTop, hAsync(KolTableStatelessWcTag, { key: '4409842d643b60aa5a19e31394e7ec40823d10e8', ref: this.catchRef, _data: displayedData, _headerCells: headerCells, _label: this.state._label, _dataFoot: this.state._dataFoot, _minWidth: this.state._minWidth, _on: {
26949
27092
  onSort: (_, payload) => {
26950
27093
  this.handleSort(payload);
26951
27094
  },
@@ -26995,7 +27138,7 @@ class KolTableStateful {
26995
27138
  }; }
26996
27139
  }
26997
27140
 
26998
- const defaultStyleCss$7 = "@charset \"UTF-8\";\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]),\n .kol-input .input {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n background-color: lightgray;\n color: black;\n }\n}\n@layer kol-global {\n :host {\n font-size: rem(16);\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: grid;\n place-items: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@layer kol-component {\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n animation-duration: 0.25s;\n animation-iteration-count: 1;\n animation-name: fadeInOpacity;\n animation-timing-function: ease-in;\n display: none;\n position: fixed;\n visibility: hidden;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n max-width: 90vw;\n max-height: 90vh;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width);\n }\n .kol-tooltip__arrow {\n background-color: #fff;\n color: #000;\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n position: absolute;\n transform: rotate(45deg);\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n z-index: 999;\n }\n .kol-tooltip__content {\n background-color: #fff;\n color: #000;\n position: relative;\n z-index: 1000;\n }\n @keyframes fadeInOpacity {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n .kol-alert {\n display: grid;\n }\n .kol-alert__container {\n place-items: center;\n display: flex;\n }\n .kol-alert__container-content {\n flex-grow: 1;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1rem / var(--kolibri-root-font-size, 16));\n }\n}\n@layer kol-component {\n :host {\n display: inline-block;\n }\n .kol-button {\n font-style: calc(16rem / var(--kolibri-root-font-size, 16));\n display: inline-flex;\n place-items: center;\n text-align: center;\n text-decoration-line: none;\n }\n .kol-button::before {\n /* Render zero-width character as first element to set the baseline correctly. */\n content: \"​\";\n }\n .kol-button__text {\n margin: auto;\n width: 100%;\n }\n}\n@layer kol-component {\n .kol-popover-button__button {\n display: inline-block;\n }\n .kol-popover-button__popover {\n border: 1px solid #000;\n margin: 0;\n padding: 0;\n }\n}\n@layer kol-component {\n .kol-table-settings {\n background: #fff;\n position: absolute;\n right: 0;\n top: 0;\n z-index: 1;\n }\n .kol-table-settings__columns-container {\n margin-top: calc(16rem / var(--kolibri-root-font-size, 16));\n max-height: calc(200rem / var(--kolibri-root-font-size, 16));\n overflow: auto;\n }\n .kol-table-settings__columns {\n align-items: center;\n display: grid;\n gap: calc(8rem / var(--kolibri-root-font-size, 16));\n grid-auto-rows: min-content;\n grid-template-columns: min-content 1fr calc(100rem / var(--kolibri-root-font-size, 16)) auto auto;\n overflow: hidden;\n }\n .kol-table-settings__column {\n display: contents;\n }\n}\n@layer kol-component {\n .kol-table {\n display: block;\n max-width: 100%;\n position: relative;\n }\n .kol-table__scroll-container {\n overflow-x: auto;\n overflow-y: hidden;\n }\n .kol-table:has(.kol-table__focus-element:focus) .kol-table__scroll-container {\n /* @see https://remysharp.com/til/css/focus-ring-default-styles */\n outline: 5px auto Highlight;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: 2px;\n }\n .kol-table__table {\n width: 100%;\n }\n .kol-table__caption {\n text-align: start;\n min-height: var(--a11y-min-size);\n padding-right: var(--a11y-min-size);\n }\n .kol-table__focus-element {\n font-size: 0;\n }\n .kol-table__sort-button .kol-button {\n color: inherit;\n }\n .kol-table__body {\n text-align: left;\n }\n .kol-table__body .kol-button__text {\n justify-items: start;\n }\n .kol-table__cell--align-left {\n text-align: left;\n }\n .kol-table__cell--align-left .kol-button__text {\n justify-items: start;\n }\n .kol-table__cell--align-center {\n text-align: center;\n }\n .kol-table__cell--align-center .kol-button__text {\n justify-items: center;\n }\n .kol-table__cell--align-right {\n text-align: right;\n }\n .kol-table__cell--align-right .kol-button__text {\n justify-items: end;\n }\n .kol-table__cell--selection {\n width: var(--a11y-min-size);\n height: var(--a11y-min-size);\n white-space: nowrap;\n }\n .kol-table__spacer {\n display: none;\n }\n .kol-table__selection-label {\n align-items: center;\n cursor: pointer;\n display: flex;\n height: var(--a11y-min-size);\n justify-content: center;\n position: relative;\n width: var(--a11y-min-size);\n }\n .kol-table__selection-label--disabled {\n cursor: not-allowed;\n }\n .kol-table__selection-icon {\n display: block;\n inset: auto;\n position: absolute;\n z-index: 1;\n }\n .kol-table__selection-input {\n appearance: none;\n border-style: solid;\n cursor: pointer;\n margin: 0;\n }\n .kol-table__selection-input:disabled {\n cursor: not-allowed;\n }\n .kol-table__selection-input:before {\n content: \"\";\n }\n .kol-table__selection-input--checkbox {\n position: relative;\n display: flex;\n height: calc(var(--a11y-min-size) / 2);\n width: calc(var(--a11y-min-size) / 2);\n align-items: center;\n justify-content: center;\n background-color: rgb(255, 255, 255);\n border-width: 2px;\n line-height: 1.5;\n transition: all 0.5s ease 0s;\n }\n .kol-table__selection-input--radio {\n display: flex;\n border-width: 2px;\n border-radius: 100%;\n height: 1.5em;\n min-height: 1.5em;\n min-width: 1.5em;\n padding: 0;\n width: 1.5em;\n }\n .kol-table__selection-input--radio:before {\n border-radius: 100%;\n margin: auto;\n height: 0.75em;\n width: 0.75em;\n }\n .kol-table__selection-input--radio:checked:before {\n background-color: #000;\n }\n @media (forced-colors: active) {\n .kol-table__selection-input--radio:checked:before {\n /* Give it a visible background in forced colors mode */\n background-color: selectedItem !important;\n }\n }\n}";
27141
+ const defaultStyleCss$7 = "@charset \"UTF-8\";\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]),\n .kol-input .input {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%;\n /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n .badge-text-hint {\n background-color: lightgray;\n color: black;\n }\n}\n@layer kol-global {\n :host {\n font-size: rem(16);\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n .kol-span {\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n display: grid;\n place-items: center;\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n }\n .kol-span__container {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n .kol-span .kol-span__label--hide-label .kol-span__label {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span,\n [disabled]:focus .kol-span {\n outline: none !important;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@layer kol-component {\n .kol-tooltip {\n display: contents;\n }\n .kol-tooltip__floating {\n animation-duration: 0.25s;\n animation-iteration-count: 1;\n animation-name: fadeInOpacity;\n animation-timing-function: ease-in;\n display: none;\n position: fixed;\n visibility: hidden;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n max-width: 90vw;\n max-height: 90vh;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width);\n }\n .kol-tooltip__arrow {\n background-color: #fff;\n color: #000;\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n position: absolute;\n transform: rotate(45deg);\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n z-index: 999;\n }\n .kol-tooltip__content {\n background-color: #fff;\n color: #000;\n position: relative;\n z-index: 1000;\n }\n @keyframes fadeInOpacity {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n .kol-alert {\n display: grid;\n }\n .kol-alert__container {\n place-items: center;\n display: flex;\n }\n .kol-alert__container-content {\n flex-grow: 1;\n }\n .kol-alert__closer {\n /* Visible with forced colors */\n outline: transparent solid calc(1rem / var(--kolibri-root-font-size, 16));\n }\n}\n@layer kol-component {\n :host {\n display: inline-block;\n }\n .kol-button {\n font-style: calc(16rem / var(--kolibri-root-font-size, 16));\n display: inline-flex;\n place-items: center;\n text-align: center;\n text-decoration-line: none;\n }\n .kol-button::before {\n /* Render zero-width character as first element to set the baseline correctly. */\n content: \"​\";\n }\n .kol-button__text {\n margin: auto;\n width: 100%;\n }\n}\n@layer kol-component {\n .kol-popover-button__button {\n display: inline-block;\n }\n .kol-popover-button__popover {\n border: 0;\n margin: 0;\n padding: 0;\n }\n}\n@layer kol-component {\n .kol-table-settings {\n background: #fff;\n position: absolute;\n right: 0;\n top: 0;\n z-index: 1;\n }\n .kol-table-settings__columns-container {\n margin-top: calc(16rem / var(--kolibri-root-font-size, 16));\n max-height: calc(200rem / var(--kolibri-root-font-size, 16));\n overflow: auto;\n }\n .kol-table-settings__columns {\n align-items: center;\n display: grid;\n gap: calc(8rem / var(--kolibri-root-font-size, 16));\n grid-auto-rows: min-content;\n grid-template-columns: min-content 1fr calc(100rem / var(--kolibri-root-font-size, 16)) auto auto;\n overflow: hidden;\n }\n .kol-table-settings__column {\n display: contents;\n }\n}\n@layer kol-component {\n .kol-table {\n display: block;\n max-width: 100%;\n position: relative;\n }\n .kol-table__scroll-container {\n overflow-x: auto;\n overflow-y: hidden;\n }\n .kol-table:has(.kol-table__focus-element:focus) .kol-table__scroll-container {\n /* @see https://remysharp.com/til/css/focus-ring-default-styles */\n outline: 5px auto Highlight;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: 2px;\n }\n .kol-table__table {\n width: 100%;\n }\n .kol-table__caption {\n text-align: start;\n min-height: var(--a11y-min-size);\n padding-right: var(--a11y-min-size);\n }\n .kol-table__focus-element {\n font-size: 0;\n }\n .kol-table__sort-button .kol-button {\n color: inherit;\n }\n .kol-table__body {\n text-align: left;\n }\n .kol-table__body .kol-button__text {\n justify-items: start;\n }\n .kol-table__cell--align-left {\n text-align: left;\n }\n .kol-table__cell--align-left .kol-button__text {\n justify-items: start;\n }\n .kol-table__cell--align-center {\n text-align: center;\n }\n .kol-table__cell--align-center .kol-button__text {\n justify-items: center;\n }\n .kol-table__cell--align-right {\n text-align: right;\n }\n .kol-table__cell--align-right .kol-button__text {\n justify-items: end;\n }\n .kol-table__cell--selection {\n width: var(--a11y-min-size);\n height: var(--a11y-min-size);\n white-space: nowrap;\n }\n .kol-table__spacer {\n display: none;\n }\n .kol-table__selection-label {\n align-items: center;\n cursor: pointer;\n display: flex;\n height: var(--a11y-min-size);\n justify-content: center;\n position: relative;\n width: var(--a11y-min-size);\n }\n .kol-table__selection-label--disabled {\n cursor: not-allowed;\n }\n .kol-table__selection-icon {\n display: block;\n inset: auto;\n position: absolute;\n z-index: 1;\n }\n .kol-table__selection-input {\n appearance: none;\n border-style: solid;\n cursor: pointer;\n margin: 0;\n }\n .kol-table__selection-input:disabled {\n cursor: not-allowed;\n }\n .kol-table__selection-input:before {\n content: \"\";\n }\n .kol-table__selection-input--checkbox {\n position: relative;\n display: flex;\n height: calc(var(--a11y-min-size) / 2);\n width: calc(var(--a11y-min-size) / 2);\n align-items: center;\n justify-content: center;\n background-color: rgb(255, 255, 255);\n border-width: 2px;\n line-height: 1.5;\n transition: all 0.5s ease 0s;\n }\n .kol-table__selection-input--radio {\n display: flex;\n border-width: 2px;\n border-radius: 100%;\n height: 1.5em;\n min-height: 1.5em;\n min-width: 1.5em;\n padding: 0;\n width: 1.5em;\n }\n .kol-table__selection-input--radio:before {\n border-radius: 100%;\n margin: auto;\n height: 0.75em;\n width: 0.75em;\n }\n .kol-table__selection-input--radio:checked:before {\n background-color: #000;\n }\n @media (forced-colors: active) {\n .kol-table__selection-input--radio:checked:before {\n /* Give it a visible background in forced colors mode */\n background-color: selectedItem !important;\n }\n }\n}";
26999
27142
  var KolTableStatelessDefaultStyle0 = defaultStyleCss$7;
27000
27143
 
27001
27144
  class KolTableStateless$1 {
@@ -27011,7 +27154,7 @@ class KolTableStateless$1 {
27011
27154
  this._tableSettings = undefined;
27012
27155
  }
27013
27156
  render() {
27014
- return (hAsync(KolTableStatelessWcTag, { key: 'dedf6d73b1b7ac72b4e6c6dfe3144ebf9ea42f4a', _data: this._data, _dataFoot: this._dataFoot, _headerCells: this._headerCells, _label: this._label, _minWidth: this._minWidth, _on: this._on, _selection: this._selection, _tableSettings: this._tableSettings }));
27157
+ return (hAsync(KolTableStatelessWcTag, { key: '8c15043ee319bd85b3aeb21cfc3760d6ae8ca434', _data: this._data, _dataFoot: this._dataFoot, _headerCells: this._headerCells, _label: this._label, _minWidth: this._minWidth, _on: this._on, _selection: this._selection, _tableSettings: this._tableSettings }));
27015
27158
  }
27016
27159
  static get style() { return {
27017
27160
  default: KolTableStatelessDefaultStyle0
@@ -27238,28 +27381,28 @@ class KolTableStateless {
27238
27381
  }
27239
27382
  return max;
27240
27383
  }
27241
- getThePrimaryHeadersWithKeysIfExists(headers) {
27242
- const primaryHeadersWithKeys = [];
27384
+ getThePrimaryHeadersWithKeyOrRenderFunction(headers) {
27385
+ const primaryHeaders = [];
27243
27386
  headers.forEach((cells) => {
27244
27387
  cells.forEach((cell) => {
27245
- if (typeof cell.key === 'string') {
27246
- primaryHeadersWithKeys.push(cell);
27388
+ if (typeof cell.key === 'string' || typeof cell.render === 'function') {
27389
+ primaryHeaders.push(cell);
27247
27390
  }
27248
27391
  });
27249
27392
  });
27250
- return primaryHeadersWithKeys;
27393
+ return primaryHeaders;
27251
27394
  }
27252
27395
  getPrimaryHeaders(headers) {
27253
27396
  var _a, _b;
27254
- let primaryHeadersWithKeys = this.getThePrimaryHeadersWithKeysIfExists((_a = headers.horizontal) !== null && _a !== void 0 ? _a : []);
27397
+ let primaryHeaders = this.getThePrimaryHeadersWithKeyOrRenderFunction((_a = headers.horizontal) !== null && _a !== void 0 ? _a : []);
27255
27398
  this.horizontal = true;
27256
- if (primaryHeadersWithKeys.length === 0) {
27257
- primaryHeadersWithKeys = this.getThePrimaryHeadersWithKeysIfExists((_b = headers.vertical) !== null && _b !== void 0 ? _b : []);
27258
- if (primaryHeadersWithKeys.length > 0) {
27399
+ if (primaryHeaders.length === 0) {
27400
+ primaryHeaders = this.getThePrimaryHeadersWithKeyOrRenderFunction((_b = headers.vertical) !== null && _b !== void 0 ? _b : []);
27401
+ if (primaryHeaders.length > 0) {
27259
27402
  this.horizontal = false;
27260
27403
  }
27261
27404
  }
27262
- return primaryHeadersWithKeys;
27405
+ return primaryHeaders;
27263
27406
  }
27264
27407
  getColumnPositionMap() {
27265
27408
  var _a;
@@ -27326,18 +27469,18 @@ class KolTableStateless {
27326
27469
  const row = isFoot && this.state._dataFoot ? this.state._dataFoot[i - startRow] : data[i];
27327
27470
  if (typeof sortedPrimaryHeader[j] === 'object' &&
27328
27471
  sortedPrimaryHeader[j] !== null &&
27329
- typeof sortedPrimaryHeader[j].key === 'string' &&
27330
27472
  typeof row === 'object' &&
27331
- row !== null) {
27473
+ row !== null &&
27474
+ (typeof sortedPrimaryHeader[j].key === 'string' || typeof sortedPrimaryHeader[j].render === 'function')) {
27332
27475
  dataRow.push(Object.assign(Object.assign({}, sortedPrimaryHeader[j]), { colSpan: undefined, data: row, label: row[sortedPrimaryHeader[j].key], rowSpan: undefined }));
27333
27476
  }
27334
27477
  }
27335
27478
  else {
27336
27479
  if (typeof sortedPrimaryHeader[i] === 'object' &&
27337
27480
  sortedPrimaryHeader[i] !== null &&
27338
- typeof sortedPrimaryHeader[i].key === 'string' &&
27339
27481
  typeof data[j] === 'object' &&
27340
- data[j] !== null) {
27482
+ data[j] !== null &&
27483
+ (typeof sortedPrimaryHeader[i].key === 'string' || typeof sortedPrimaryHeader[i].render === 'function')) {
27341
27484
  dataRow.push(Object.assign(Object.assign({}, sortedPrimaryHeader[i]), { colSpan: undefined, data: data[j], label: data[j][sortedPrimaryHeader[i].key], rowSpan: undefined }));
27342
27485
  }
27343
27486
  }
@@ -27515,7 +27658,7 @@ class KolTableStateless {
27515
27658
  if (columnSettings && !columnSettings.visible) {
27516
27659
  return '';
27517
27660
  }
27518
- let ariaSort = undefined;
27661
+ let ariaSort = 'none';
27519
27662
  let sortButtonIcon = 'codicon codicon-fold';
27520
27663
  if (cell.sortDirection) {
27521
27664
  switch (cell.sortDirection) {
@@ -27527,6 +27670,8 @@ class KolTableStateless {
27527
27670
  sortButtonIcon = 'codicon codicon-chevron-down';
27528
27671
  ariaSort = 'descending';
27529
27672
  break;
27673
+ default:
27674
+ ariaSort = 'none';
27530
27675
  }
27531
27676
  }
27532
27677
  const scope = isVertical ? 'row' : typeof cell.colSpan === 'number' && cell.colSpan > 1 ? 'colgroup' : 'col';
@@ -27575,12 +27720,12 @@ class KolTableStateless {
27575
27720
  const dataField = this.createDataField(this.state._data, this.state._headerCells);
27576
27721
  this.checkboxRefs = [];
27577
27722
  const sortedHorizontalHeaders = (_a = this.state._headerCells.horizontal) === null || _a === void 0 ? void 0 : _a.map((row) => this.sortByColumnPosition(row));
27578
- return (hAsync("div", { key: '55c1614208608e7206bfde32af951f066267b629', class: "kol-table" }, hAsync(KolTableSettingsWcTag, { key: 'a6a176a7a90d134c6c99fae76b14d0dd6523a88b', _tableSettings: this.state._tableSettings }), hAsync("div", { key: '7d1498c5925016efc03772480936bfd2d8d9bd27', ref: (element) => (this.tableDivElement = element), class: "kol-table__scroll-container", tabindex: this.tableDivElementHasScrollbar ? '-1' : undefined }, hAsync("table", { key: '41097ebc50e0913333e017d43206778c031add65', class: "kol-table__table", style: {
27723
+ return (hAsync("div", { key: 'fd7be9447c69e4bdd00bcf0c94851322509f18c7', class: "kol-table" }, hAsync(KolTableSettingsWcTag, { key: 'c8656b639f87a64af11c638db500722075661a2b', _tableSettings: this.state._tableSettings }), hAsync("div", { key: 'ff3e59f751c29e2400baa9bd47252f523fcf6ba2', ref: (element) => (this.tableDivElement = element), class: "kol-table__scroll-container", tabindex: this.tableDivElementHasScrollbar ? '-1' : undefined }, hAsync("table", { key: '74dfeefe3d2d48859d2250f10fdfd01e4de76fd1', class: "kol-table__table", style: {
27579
27724
  minWidth: this.getTableMinWidth(),
27580
- } }, hAsync("div", { key: 'f0539b67aa7c7ef1271a67dd22c741e4a6f60d4e', class: "kol-table__focus-element", tabindex: this.tableDivElementHasScrollbar ? '0' : undefined, "aria-describedby": "caption" }, "\u00A0"), hAsync("caption", { key: '7199792f023995a8964efaa2b9f11b79780717b1', class: "kol-table__caption", id: "caption" }, this.state._label), Array.isArray(sortedHorizontalHeaders) && (hAsync("thead", { key: '86242ee062afb71d654b7e64698dca8178012bc3', class: "kol-table__head" }, [
27725
+ } }, hAsync("div", { key: '0c3115cb69fc3f344a7eba055dfb449ee39b981c', class: "kol-table__focus-element", tabindex: this.tableDivElementHasScrollbar ? '0' : undefined, "aria-describedby": "caption" }, "\u00A0"), hAsync("caption", { key: '3abc734e88279686f4ba57c58e2e28df598bd067', class: "kol-table__caption", id: "caption" }, this.state._label), Array.isArray(sortedHorizontalHeaders) && (hAsync("thead", { key: '444aede6748667c15131ca400b792834bb6d585e', class: "kol-table__head" }, [
27581
27726
  sortedHorizontalHeaders.map((cols, rowIndex) => (hAsync("tr", { class: "kol-table__head-row", key: `thead-${rowIndex}` }, this.state._selection && this.renderHeadingSelectionCell(), rowIndex === 0 && this.renderHeaderTdCell(), Array.isArray(cols) && cols.map((cell, colIndex) => this.renderHeadingCell(cell, rowIndex, colIndex, false))))),
27582
27727
  this.renderSpacer('head', sortedHorizontalHeaders),
27583
- ])), hAsync("tbody", { key: 'b7866fe3430029ea01b05d747ea49e42c577d10c', class: "kol-table__body" }, dataField.map((row, rowIndex) => this.renderTableRow(row, rowIndex, true))), this.renderFoot()))));
27728
+ ])), hAsync("tbody", { key: 'f87e907d033d601fb065bf8d1d0892016ed1d368', class: "kol-table__body" }, dataField.map((row, rowIndex) => this.renderTableRow(row, rowIndex, true))), this.renderFoot()))));
27584
27729
  }
27585
27730
  get host() { return getElement(this); }
27586
27731
  static get watchers() { return {
@@ -27824,9 +27969,9 @@ class KolTabs {
27824
27969
  }, _icons: "codicon codicon-plus", "data-testid": "tabs-create-button" }))));
27825
27970
  }
27826
27971
  render() {
27827
- return (hAsync("div", { key: '651b397e4e56da8694268e5670dd12da67fb4430', ref: (el) => {
27972
+ return (hAsync("div", { key: '8c3212b2e1bd09292d666d163c88ad94ef2f59bb', ref: (el) => {
27828
27973
  this.tabPanelsElement = el;
27829
- }, class: clsx('kol-tabs', `kol-tabs--align-${this.state._align}`) }, this.renderButtonGroup(), hAsync("div", { key: '2583e66740101758cdf796a45961142384bf9fdf', class: "kol-tabs__content", ref: this.catchTabPanelHost })));
27974
+ }, class: clsx('kol-tabs', `kol-tabs--align-${this.state._align}`) }, this.renderButtonGroup(), hAsync("div", { key: 'ebbb16b66d9b77f98fe9d2384f83489530cd3e6d', class: "kol-tabs__content", ref: this.catchTabPanelHost })));
27830
27975
  }
27831
27976
  validateAlign(value) {
27832
27977
  validateAlign(this, value);
@@ -28066,7 +28211,7 @@ class KolTextarea {
28066
28211
  } });
28067
28212
  }
28068
28213
  render() {
28069
- return (hAsync(FormFieldStateWrapper, Object.assign({ key: '7561d490f442000a93a1cefd22593be40ed9cbb9' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: '0d83e48269354e9aecc39845cd7199a4a0df3691', state: this.state }, hAsync(TextAreaStateWrapper, Object.assign({ key: 'a984a131997c4196c52408696e1517fcbc7cc940' }, this.getTextAreaProps())))));
28214
+ return (hAsync(FormFieldStateWrapper, Object.assign({ key: '92d2decb15fa4fa25f86387d6f911e5988f17c12' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: '6bfa13c2aae8fa96002903b7c4064bff6868984c', state: this.state }, hAsync(TextAreaStateWrapper, Object.assign({ key: '40aa057c2a81472a4db3ac2a5ab69392afce5037' }, this.getTextAreaProps())))));
28070
28215
  }
28071
28216
  constructor(hostRef) {
28072
28217
  registerInstance(this, hostRef);
@@ -28320,7 +28465,9 @@ class KolToastContainer {
28320
28465
  return localToastState;
28321
28466
  }) });
28322
28467
  setTimeout(() => {
28468
+ var _a, _b;
28323
28469
  this.state = Object.assign(Object.assign({}, this.state), { _toastStates: this.state._toastStates.filter((localToastState) => localToastState.id !== toastState.id) });
28470
+ (_b = (_a = toastState.toast).onClose) === null || _b === void 0 ? void 0 : _b.call(_a);
28324
28471
  }, TRANSITION_TIMEOUT);
28325
28472
  }
28326
28473
  async closeAll(immediate = false) {
@@ -28332,6 +28479,10 @@ class KolToastContainer {
28332
28479
  this.state = Object.assign(Object.assign({}, this.state), { _toastStates: toastsToClose.map((localToastState) => (Object.assign(Object.assign({}, localToastState), { status: 'removing' }))) });
28333
28480
  setTimeout(() => {
28334
28481
  this.state = Object.assign(Object.assign({}, this.state), { _toastStates: this.state._toastStates.filter((toastState) => toastsToClose.every((toastToClose) => toastToClose.id !== toastState.id)) });
28482
+ toastsToClose.forEach((toastState) => {
28483
+ var _a, _b;
28484
+ (_b = (_a = toastState.toast).onClose) === null || _b === void 0 ? void 0 : _b.call(_a);
28485
+ });
28335
28486
  }, TRANSITION_TIMEOUT);
28336
28487
  }
28337
28488
  }
@@ -28342,7 +28493,7 @@ class KolToastContainer {
28342
28493
  }
28343
28494
  }
28344
28495
  render() {
28345
- return (hAsync(Host, { key: '4446bc4544f05d74ee8afd3757d8c0b7ce58d6c4', class: "kol-toast-container" }, this.state._toastStates.length > 1 && (hAsync(KolButtonTag, { key: '923a3ae7f4463e710bebbe94ffb7d55812510f70', _label: translate('kol-toast-close-all'), class: "kol-toast-container__button-close-all", _on: {
28496
+ return (hAsync(Host, { key: '9cd066a5431870964c5ebcf63f3e6cfc485999fa', class: "kol-toast-container" }, this.state._toastStates.length > 1 && (hAsync(KolButtonTag, { key: '5f7311b53ebf68798955e351c9a634190cc0242d', _label: translate('kol-toast-close-all'), class: "kol-toast-container__button-close-all", _on: {
28346
28497
  onClick: () => {
28347
28498
  void this.closeAll();
28348
28499
  },
@@ -28394,7 +28545,7 @@ class KolToolbar {
28394
28545
  this._orientation = undefined;
28395
28546
  }
28396
28547
  render() {
28397
- return (hAsync("div", { key: '02fe5aa9de964fcfe0147442105076cc9502a375', class: `kol-toolbar kol-toolbar--orientation-${this.state._orientation}`, role: "toolbar", "aria-label": this.state._label }, this.state._items.map(this.renderItem)));
28548
+ return (hAsync("div", { key: '820d0df7f0df9ab8a3e8de78b0d3fead62abfff8', class: `kol-toolbar kol-toolbar--orientation-${this.state._orientation}`, role: "toolbar", "aria-label": this.state._label }, this.state._items.map(this.renderItem)));
28398
28549
  }
28399
28550
  validateLabel(value) {
28400
28551
  validateLabel(this, value);
@@ -28491,11 +28642,10 @@ function hideOverlay(overlay) {
28491
28642
  }
28492
28643
  }
28493
28644
 
28645
+ const TOOLTIP_DELAY = 300;
28494
28646
  class KolTooltipWc {
28495
28647
  constructor(hostRef) {
28496
28648
  registerInstance(this, hostRef);
28497
- this.hasFocusIn = false;
28498
- this.hasMouseIn = false;
28499
28649
  this.showTooltip = () => {
28500
28650
  if (this.previousSibling && this.tooltipElement) {
28501
28651
  showOverlay(this.tooltipElement);
@@ -28508,21 +28658,22 @@ class KolTooltipWc {
28508
28658
  });
28509
28659
  }
28510
28660
  };
28511
- this.hideTooltip = () => {
28512
- if (this.tooltipElement) {
28513
- hideOverlay(this.tooltipElement);
28514
- this.tooltipElement.style.setProperty('display', 'none');
28515
- this.tooltipElement.style.setProperty('visibility', 'hidden');
28516
- if (this.cleanupAutoPositioning) {
28517
- this.cleanupAutoPositioning();
28518
- this.cleanupAutoPositioning = undefined;
28519
- }
28520
- }
28521
- getDocument().removeEventListener('keyup', this.hideTooltipByEscape);
28661
+ this.showTooltipWithDelay = () => {
28662
+ clearTimeout(this.hideTooltipTimeout);
28663
+ clearTimeout(this.showTooltipTimeout);
28664
+ this.showTooltipTimeout = setTimeout(() => {
28665
+ this.showTooltip();
28666
+ }, TOOLTIP_DELAY);
28667
+ };
28668
+ this.hideTooltipWithDelay = () => {
28669
+ clearTimeout(this.hideTooltipTimeout);
28670
+ this.hideTooltipTimeout = setTimeout(() => {
28671
+ void this.hideTooltip();
28672
+ }, TOOLTIP_DELAY);
28522
28673
  };
28523
28674
  this.hideTooltipByEscape = (event) => {
28524
28675
  if (event.key === 'Escape') {
28525
- this.hideTooltip();
28676
+ void this.hideTooltip();
28526
28677
  }
28527
28678
  };
28528
28679
  this.addListeners = (el) => {
@@ -28554,17 +28705,6 @@ class KolTooltipWc {
28554
28705
  this.catchArrowElement = (element) => {
28555
28706
  this.arrowElement = element;
28556
28707
  };
28557
- this.showOrHideTooltip = () => {
28558
- clearTimeout(this.overFocusTimeout);
28559
- this.overFocusTimeout = setTimeout(() => {
28560
- if (this.hasMouseIn || this.hasFocusIn) {
28561
- this.showTooltip();
28562
- }
28563
- else {
28564
- this.hideTooltip();
28565
- }
28566
- }, 300);
28567
- };
28568
28708
  this._badgeText = undefined;
28569
28709
  this._align = 'top';
28570
28710
  this._id = undefined;
@@ -28584,24 +28724,33 @@ class KolTooltipWc {
28584
28724
  });
28585
28725
  }
28586
28726
  }
28727
+ async hideTooltip() {
28728
+ clearTimeout(this.showTooltipTimeout);
28729
+ if (this.tooltipElement) {
28730
+ hideOverlay(this.tooltipElement);
28731
+ this.tooltipElement.style.setProperty('display', 'none');
28732
+ this.tooltipElement.style.setProperty('visibility', 'hidden');
28733
+ if (this.cleanupAutoPositioning) {
28734
+ this.cleanupAutoPositioning();
28735
+ this.cleanupAutoPositioning = undefined;
28736
+ }
28737
+ }
28738
+ getDocument().removeEventListener('keyup', this.hideTooltipByEscape);
28739
+ }
28587
28740
  handleMouseEnter() {
28588
- this.hasMouseIn = true;
28589
- this.showOrHideTooltip();
28741
+ this.showTooltipWithDelay();
28590
28742
  }
28591
28743
  handleMouseleave() {
28592
- this.hasMouseIn = false;
28593
- this.showOrHideTooltip();
28744
+ this.hideTooltipWithDelay();
28594
28745
  }
28595
28746
  handleFocusIn() {
28596
- this.hasFocusIn = true;
28597
- this.showOrHideTooltip();
28747
+ this.showTooltipWithDelay();
28598
28748
  }
28599
28749
  handleFocusout() {
28600
- this.hasFocusIn = false;
28601
- this.showOrHideTooltip();
28750
+ this.hideTooltipWithDelay();
28602
28751
  }
28603
28752
  render() {
28604
- return (hAsync(Host, { key: '6b03bbbae8b6a083bcdb3b304e9985101a5be022', class: "kol-tooltip" }, this.state._label !== '' && (hAsync("div", { key: '75fa23644f41ba3fde4e1be656ed89fe2bd5be9d', class: "kol-tooltip__floating", ref: this.catchTooltipElement }, hAsync("div", { key: '74d99d02b5d7557e4dc9c8d81880d76fbc23aa2d', class: "kol-tooltip__arrow", ref: this.catchArrowElement }), hAsync(KolSpanFc, { key: '7a6b461ff6da4a292fabd08ab8a6bd90412a85fc', class: "kol-tooltip__content", id: this.state._id, badgeText: this._badgeText, label: this.state._label })))));
28753
+ return (hAsync(Host, { key: 'a0b8abd0d04248fd423143784ea3446ce74d5455', class: "kol-tooltip" }, this.state._label !== '' && (hAsync("div", { key: 'e3f3912c333b523115ab170a7034d095ff66eea8', class: "kol-tooltip__floating", ref: this.catchTooltipElement }, hAsync("div", { key: 'de357980b3f8b686ec462194563cba1b8cc22d09', class: "kol-tooltip__arrow", ref: this.catchArrowElement }), hAsync(KolSpanFc, { key: '102ee0ea200adef3dbee5c134c11af045102e131', class: "kol-tooltip__content", id: this.state._id, badgeText: this._badgeText, label: this.state._label })))));
28605
28754
  }
28606
28755
  validateBadgeText(value) {
28607
28756
  validateBadgeText(this, value);
@@ -28662,7 +28811,8 @@ class KolTooltipWc {
28662
28811
  "_align": [1],
28663
28812
  "_id": [1],
28664
28813
  "_label": [1],
28665
- "state": [32]
28814
+ "state": [32],
28815
+ "hideTooltip": [64]
28666
28816
  },
28667
28817
  "$listeners$": undefined,
28668
28818
  "$lazyBundleId$": "-",
@@ -28679,7 +28829,7 @@ class KolTree {
28679
28829
  this._label = undefined;
28680
28830
  }
28681
28831
  render() {
28682
- return (hAsync(KolTreeWcTag, { key: 'a9de70659b4ae51eb7e54067eff48641f22a51fc', _label: this._label }, hAsync("slot", { key: 'd6ee7409c81f3eee881f345d450675fe643eb64e' })));
28832
+ return (hAsync(KolTreeWcTag, { key: '13d3e695605cbf910749ac998731d7d6310b3ed8', _label: this._label }, hAsync("slot", { key: 'b4702460fa7ca8fe8e259cb7b782a8971735a9ef' })));
28683
28833
  }
28684
28834
  static get style() { return {
28685
28835
  default: KolTreeDefaultStyle0
@@ -28727,7 +28877,7 @@ class KolTreeItem {
28727
28877
  return (_b = (await ((_a = this.element) === null || _a === void 0 ? void 0 : _a.isOpen()))) !== null && _b !== void 0 ? _b : false;
28728
28878
  }
28729
28879
  render() {
28730
- return (hAsync(KolTreeItemWcTag, { key: 'ee71c6917f4011af06750545f760bab1aa87fd4c', _active: this._active, _label: this._label, _open: this._open, _href: this._href, ref: (element) => (this.element = element) }, hAsync("slot", { key: 'fafd216a2e718504e1ade48d100b9fae25be4cc7' })));
28880
+ return (hAsync(KolTreeItemWcTag, { key: '6e77abb1a162108a6f06ac8bf9024b408a9bf990', _active: this._active, _label: this._label, _open: this._open, _href: this._href, ref: (element) => (this.element = element) }, hAsync("slot", { key: '752481a98faee9bad7d5661bb01bc868198e544e' })));
28731
28881
  }
28732
28882
  static get style() { return {
28733
28883
  default: KolTreeItemDefaultStyle0
@@ -28770,12 +28920,12 @@ class KolTreeItemWc {
28770
28920
  }
28771
28921
  render() {
28772
28922
  const { _href, _active, _hasChildren, _open, _label } = this.state;
28773
- return (hAsync(Host, { key: '59dba82967b79373a9b3eb040bb1fafed522060b', onSlotchange: this.handleSlotchange.bind(this) }, hAsync("li", { key: '214ebbe9b6850f2fde0f9e83bd0019feb6a62714', class: "kol-tree-item", style: {
28923
+ return (hAsync(Host, { key: 'e0d63b982e56ef662c1420fc9ade69068b8a81ff', onSlotchange: this.handleSlotchange.bind(this) }, hAsync("li", { key: '7c2d91957ad2e92256d5bc8bcbfa003d830a3645', class: "kol-tree-item", style: {
28774
28924
  '--level': `${this.level}`,
28775
- } }, hAsync(KolLinkWcTag, { key: '25c19762e151a6628e6604ae656db511cf3bd2ef', class: clsx('kol-tree-item__link', {
28925
+ } }, hAsync(KolLinkWcTag, { key: '7207fe34d30d14349d397fbd75ff2f0d16aa7086', class: clsx('kol-tree-item__link', {
28776
28926
  'kol-tree-item__link--first-level': this.level === 0,
28777
28927
  'kol-tree-item__link--active': _active,
28778
- }), _href: _href, _label: "", _role: "treeitem", _tabIndex: _active ? 0 : -1, _ariaExpanded: _hasChildren ? _open : undefined, _ariaOwns: _hasChildren ? this.groupId : undefined, ref: (element) => (this.linkElement = element) }, hAsync("span", { key: '1d511401118ac91f1d23dab02a0ac21109a7cbe8', class: "kol-tree-item__link-inner", slot: "expert" }, _hasChildren ? (hAsync("span", { class: "kol-tree-item__toggle-button", onClick: (event) => (_open ? void this.handleCollapseClick(event) : void this.handleExpandClick(event)) }, hAsync(KolIconTag, { class: "kol-tree-item__toggle-button-icon", _icons: `codicon codicon-${_open ? 'chevron-down' : 'chevron-right'}`, _label: '' }))) : (hAsync("span", { class: "kol-tree-item__toggle-button-placeholder" })), hAsync("span", { key: '0b58755f14c8fff333a07c35c19b82d738512919', class: "kol-tree-item__text" }, _label))), hAsync("ul", { key: '3477fcc73f76e6b5efa35cd17cea964977980245', class: "kol-tree-item__children", hidden: !_hasChildren || !_open, role: "group", id: this.groupId }, hAsync("slot", { key: '5c0e9ca02ee1b65e277d7e9e926d92466e6322a8' })))));
28928
+ }), _href: _href, _label: "", _role: "treeitem", _tabIndex: _active ? 0 : -1, _ariaExpanded: _hasChildren ? _open : undefined, _ariaOwns: _hasChildren ? this.groupId : undefined, ref: (element) => (this.linkElement = element) }, hAsync("span", { key: 'd959cfb814982fcbb72f89a7fea3e2b6031e7ab4', class: "kol-tree-item__link-inner", slot: "expert" }, _hasChildren ? (hAsync("span", { class: "kol-tree-item__toggle-button", onClick: (event) => (_open ? void this.handleCollapseClick(event) : void this.handleExpandClick(event)) }, hAsync(KolIconTag, { class: "kol-tree-item__toggle-button-icon", _icons: `codicon codicon-${_open ? 'chevron-down' : 'chevron-right'}`, _label: '' }))) : (hAsync("span", { class: "kol-tree-item__toggle-button-placeholder" })), hAsync("span", { key: '2249d95f2466360ef113bb8f271d91d5b7ed88e4', class: "kol-tree-item__text" }, _label))), hAsync("ul", { key: '1648a8aebf70ae58ad6068bf5192078de6d05cfd', class: "kol-tree-item__children", hidden: !_hasChildren || !_open, role: "group", id: this.groupId }, hAsync("slot", { key: '07aceb35f569834db39a1d9cfb18f80a5a9753e4' })))));
28779
28929
  }
28780
28930
  validateActive(value) {
28781
28931
  validateActive(this, value || false);
@@ -28880,7 +29030,7 @@ class KolTreeWc {
28880
29030
  validateLabel(this, value);
28881
29031
  }
28882
29032
  render() {
28883
- return (hAsync(Host, { key: '6e1fc1f0d6757fec0658d28ff54fe73a58b60fa9', onSlotchange: this.handleSlotchange.bind(this) }, hAsync("nav", { key: 'dfc733503c12e36fc8e6fc958273555f4e698237', class: "kol-tree", "aria-label": this.state._label }, hAsync("ul", { key: '9c68ce61a9bfbe5ade976515eaa43e2d9fbf380d', class: "kol-tree__treeview-navigation", role: "tree", "aria-label": this.state._label }, hAsync("slot", { key: 'db660a5bc5cb5544f2c35e9e14f2a61d6e06ac69' })))));
29033
+ return (hAsync(Host, { key: '0018aab7e413a716e2662cfd597d2ffdb063ffea', onSlotchange: this.handleSlotchange.bind(this) }, hAsync("nav", { key: '383abb8a0f89e041b9d84fc7e872e1d4a4638948', class: "kol-tree", "aria-label": this.state._label }, hAsync("ul", { key: 'f35923f336b1c615940c32e40735fc5f74cade61', class: "kol-tree__treeview-navigation", role: "tree", "aria-label": this.state._label }, hAsync("slot", { key: '21d555457a7a9cdab0f798c30230cde851b4038c' })))));
28884
29034
  }
28885
29035
  static isTreeItem(element) {
28886
29036
  return (element === null || element === void 0 ? void 0 : element.tagName) === KolTreeItemTag.toUpperCase();
@@ -29078,7 +29228,7 @@ class KolVersion {
29078
29228
  };
29079
29229
  }
29080
29230
  render() {
29081
- return (hAsync(Host, { key: '504d576bcb558a37e573c76a5ba0a4a74e7c0bb4', class: "kol-version" }, hAsync(KolBadgeTag, { key: 'cad1661faee70f01e77c1b2ef9f02fce548f7c70', _color: "#bec5c9", _icons: {
29231
+ return (hAsync(Host, { key: '3304cd937945785a92d3cf9a25cd70065f2ac5dd', class: "kol-version" }, hAsync(KolBadgeTag, { key: '155a2fbdb3ce12a1800b62745a2f9683585c9794', _color: "#bec5c9", _icons: {
29082
29232
  left: { icon: 'codicon codicon-versions', label: translate('kol-version') },
29083
29233
  }, _label: this.state._label })));
29084
29234
  }
@@ -29161,6 +29311,7 @@ registerComponents([
29161
29311
  KolModal,
29162
29312
  KolNav,
29163
29313
  KolPagination,
29314
+ KolPaginationWc,
29164
29315
  KolPopover,
29165
29316
  KolPopoverButton$1,
29166
29317
  KolPopoverButton,