@public-ui/hydrate 4.0.0-alpha.9 → 4.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/dist/index.js +371 -309
  2. package/dist/index.mjs +371 -309
  3. package/package.json +2 -2
package/dist/index.mjs CHANGED
@@ -144,7 +144,7 @@ function _mergeNamespaces(n, m) {
144
144
 
145
145
  const NAMESPACE = 'kolibri';
146
146
  const BUILD = /* kolibri */ { hydratedSelectorName: "hydrated", slotRelocation: true, state: true, updatable: true};
147
- const Env = /* kolibri */ {"kolibriVersion":"4.0.0-alpha.9"};
147
+ const Env = /* kolibri */ {"kolibriVersion":"4.0.0-beta.0"};
148
148
 
149
149
  function getDefaultExportFromCjs (x) {
150
150
  return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
@@ -2338,13 +2338,13 @@ const validateIcons = (component, value, options = {}) => {
2338
2338
  isString$2(value, 1) ||
2339
2339
  (typeof value === 'object' &&
2340
2340
  value !== null &&
2341
- (isString$2(value.left, 1) ||
2341
+ (isString$2(value.left, 0) ||
2342
2342
  isIcon(value.left) ||
2343
- isString$2(value.right, 1) ||
2343
+ isString$2(value.right, 0) ||
2344
2344
  isIcon(value.right) ||
2345
- isString$2(value.top, 1) ||
2345
+ isString$2(value.top, 0) ||
2346
2346
  isIcon(value.top) ||
2347
- isString$2(value.bottom, 1) ||
2347
+ isString$2(value.bottom, 0) ||
2348
2348
  isIcon(value.bottom))));
2349
2349
  }, new Set(['KoliBriIcon']), value, Object.assign(Object.assign({}, options), { defaultValue: {}, hooks: {
2350
2350
  afterPatch: (_a = options.hooks) === null || _a === void 0 ? void 0 : _a.afterPatch,
@@ -2482,14 +2482,8 @@ const validateMsg = (component, value) => {
2482
2482
  }, new Set(['MsgPropType', 'string']), value);
2483
2483
  });
2484
2484
  };
2485
- function checkHasMsg(msg, touched) {
2486
- var _a;
2487
- if (!msg) {
2488
- return false;
2489
- }
2490
- const type = typeof msg === 'string' ? 'error' : ((_a = msg._type) !== null && _a !== void 0 ? _a : 'error');
2491
- const showMsg = touched === true || type !== 'error';
2492
- return showMsg;
2485
+ function isMsgDefinedAndInputTouched(msg, touched) {
2486
+ return Boolean(msg) && touched === true;
2493
2487
  }
2494
2488
  function normalizeMsg(msg) {
2495
2489
  if (typeof msg === 'string') {
@@ -2505,6 +2499,13 @@ function normalizeMsg(msg) {
2505
2499
  }
2506
2500
  return msg;
2507
2501
  }
2502
+ function getMsgType(msg) {
2503
+ var _a;
2504
+ if (typeof msg === 'string') {
2505
+ return 'error';
2506
+ }
2507
+ return (_a = msg === null || msg === void 0 ? void 0 : msg._type) !== null && _a !== void 0 ? _a : 'error';
2508
+ }
2508
2509
 
2509
2510
  const validateMultiple = (component, value, options) => {
2510
2511
  watchBoolean(component, '_multiple', value, options);
@@ -2621,7 +2622,7 @@ const validateTabIndex = (component, value) => {
2621
2622
  };
2622
2623
 
2623
2624
  const validateTableCallbacks = (component, value) => {
2624
- watchValidator(component, `_on`, (value) => typeof value === 'object' && value !== null, new Set(['TableCallbacksPropType {Events.onSort, Events.onSelectionChange}']), value);
2625
+ watchValidator(component, `_on`, (value) => typeof value === 'object' && value !== null, new Set(['TableCallbacksPropType {Events.onSort, Events.onSelectionChange, Events.onChangeHeaderCells}']), value);
2625
2626
  };
2626
2627
  const validateTableStatefulCallbacks = (component, value) => {
2627
2628
  watchValidator(component, `_on`, (value) => typeof value === 'object' && value !== null, new Set(['TableStatefulCallbacksPropType {Events.onSelectionChange}']), value);
@@ -6077,7 +6078,7 @@ let KolLinkWcTag = 'kol-link-wc';
6077
6078
  let KolPaginationWcTag = 'kol-pagination-wc';
6078
6079
  let KolPopoverWcTag = 'kol-popover-wc';
6079
6080
  let KolPopoverButtonWcTag = 'kol-popover-button-wc';
6080
- let KolSelectTag = 'kol-select';
6081
+ let KolSelectWcTag = 'kol-select-wc';
6081
6082
  let KolTableSettingsWcTag = 'kol-table-settings-wc';
6082
6083
  let KolTableStatelessWcTag = 'kol-table-stateless-wc';
6083
6084
  let KolTooltipWcTag = 'kol-tooltip-wc';
@@ -6189,11 +6190,11 @@ const KolHeadingFc = (_a, children) => {
6189
6190
 
6190
6191
  const KolCollapsibleFc = (props, children) => {
6191
6192
  const { id, class: classNames, label, level = 1, disabled, open, onClick, HeadingProps = {}, HeadingButtonProps = {}, ContentProps = {} } = props, other = __rest(props, ["id", "class", "label", "level", "disabled", "open", "onClick", "HeadingProps", "HeadingButtonProps", "ContentProps"]);
6192
- const icon = open ? 'remove' : 'add';
6193
+ const icon = open ? 'kolicon-chevron-down' : 'kolicon-chevron-right';
6193
6194
  return (hAsync("div", Object.assign({ id: id, class: clsx('collapsible', {
6194
6195
  'collapsible--disabled': disabled === true,
6195
6196
  'collapsible--open': open === true,
6196
- }, classNames) }, other), hAsync(KolHeadingFc, { ref: HeadingProps === null || HeadingProps === void 0 ? void 0 : HeadingProps.ref, level: level, class: clsx('collapsible__heading', HeadingProps === null || HeadingProps === void 0 ? void 0 : HeadingProps.class) }, hAsync(KolButtonWcTag, { class: clsx('collapsible__heading-button', HeadingButtonProps === null || HeadingButtonProps === void 0 ? void 0 : HeadingButtonProps.class), ref: HeadingButtonProps === null || HeadingButtonProps === void 0 ? void 0 : HeadingButtonProps.ref, slot: "expert", _ariaControls: `${id}-control`, _ariaExpanded: open, _disabled: disabled, _icons: (HeadingButtonProps === null || HeadingButtonProps === void 0 ? void 0 : HeadingButtonProps._icons) || `codicon codicon-${icon}`, _label: label, _on: { onClick } })), hAsync("div", { class: clsx('collapsible__wrapper', ContentProps === null || ContentProps === void 0 ? void 0 : ContentProps.wrapperClass) }, hAsync("div", { class: clsx('collapsible__wrapper-animation', ContentProps === null || ContentProps === void 0 ? void 0 : ContentProps.animationClass) }, hAsync("div", { "aria-hidden": open === false ? 'true' : undefined, class: clsx('collapsible__content', ContentProps === null || ContentProps === void 0 ? void 0 : ContentProps.class), id: `${id}-control` }, children)))));
6197
+ }, classNames) }, other), hAsync(KolHeadingFc, { ref: HeadingProps === null || HeadingProps === void 0 ? void 0 : HeadingProps.ref, level: level, class: clsx('collapsible__heading', HeadingProps === null || HeadingProps === void 0 ? void 0 : HeadingProps.class) }, hAsync(KolButtonWcTag, { class: clsx('collapsible__heading-button', HeadingButtonProps === null || HeadingButtonProps === void 0 ? void 0 : HeadingButtonProps.class), ref: HeadingButtonProps === null || HeadingButtonProps === void 0 ? void 0 : HeadingButtonProps.ref, slot: "expert", _ariaControls: `${id}-control`, _ariaExpanded: open, _disabled: disabled, _icons: (HeadingButtonProps === null || HeadingButtonProps === void 0 ? void 0 : HeadingButtonProps._icons) || `${icon}`, _label: label, _on: { onClick } })), hAsync("div", { class: clsx('collapsible__wrapper', ContentProps === null || ContentProps === void 0 ? void 0 : ContentProps.wrapperClass) }, hAsync("div", { class: clsx('collapsible__wrapper-animation', ContentProps === null || ContentProps === void 0 ? void 0 : ContentProps.animationClass) }, hAsync("div", { "aria-hidden": open === false ? 'true' : undefined, class: clsx('collapsible__content', ContentProps === null || ContentProps === void 0 ? void 0 : ContentProps.class), id: `${id}-control` }, children)))));
6197
6198
  };
6198
6199
 
6199
6200
  const initMeta = () => {
@@ -6262,6 +6263,7 @@ var KolEvent;
6262
6263
  (function (KolEvent) {
6263
6264
  KolEvent["blur"] = "kolBlur";
6264
6265
  KolEvent["change"] = "kolChange";
6266
+ KolEvent["changeHeaderCells"] = "changeHeaderCells";
6265
6267
  KolEvent["changePage"] = "kolChangePage";
6266
6268
  KolEvent["changePageSize"] = "kolChangePageSize";
6267
6269
  KolEvent["click"] = "kolClick";
@@ -6274,7 +6276,6 @@ var KolEvent;
6274
6276
  KolEvent["reset"] = "kolReset";
6275
6277
  KolEvent["select"] = "kolSelect";
6276
6278
  KolEvent["selectionChange"] = "kolSelectionChange";
6277
- KolEvent["settingsChange"] = "settingsChange";
6278
6279
  KolEvent["sort"] = "kolSort";
6279
6280
  KolEvent["submit"] = "kolSubmit";
6280
6281
  KolEvent["toggle"] = "kolToggle";
@@ -6471,7 +6472,7 @@ var locale_de = {
6471
6472
  page: 'Seite',
6472
6473
  'page-current': 'Seite {{page}}',
6473
6474
  'page-selected': 'Seite {{page}} ist ausgewählt',
6474
- 'page-per-site': '{{entries}} Einträge pro Seite',
6475
+ 'page-per-site': 'Einträge pro Seite',
6475
6476
  'nav-maximize': 'Navigation maximieren',
6476
6477
  'nav-minimize': 'Navigation minimieren',
6477
6478
  'logo-description': 'Logo {{orgShort}}. Bundesadler mit Flaggenstab und Schriftzug {{orgLong}}',
@@ -6543,7 +6544,7 @@ var locale_en = {
6543
6544
  page: 'Page',
6544
6545
  'page-current': 'Page {{page}}',
6545
6546
  'page-selected': 'Page {{page}} is selected',
6546
- 'page-per-site': '{{entries}} entries per page',
6547
+ 'page-per-site': 'Entries per page',
6547
6548
  'nav-maximize': 'Maximize navigation',
6548
6549
  'nav-minimize': 'Minimize navigation',
6549
6550
  'logo-description': 'Logo {{orgShort}}. Federal eagle with flag staff and lettering {{orgLong}}',
@@ -6751,15 +6752,15 @@ const Icon = ({ ariaLabel, icon }) => {
6751
6752
  const AlertIcon = ({ type, label }) => {
6752
6753
  switch (type) {
6753
6754
  case 'error':
6754
- return hAsync(Icon, { ariaLabel: translateError, icon: "codicon codicon-error", label: label });
6755
+ return hAsync(Icon, { ariaLabel: translateError, icon: "kolicon-alert-error", label: label });
6755
6756
  case 'info':
6756
- return hAsync(Icon, { ariaLabel: translateInfo, icon: "codicon codicon-info", label: label });
6757
+ return hAsync(Icon, { ariaLabel: translateInfo, icon: "kolicon-alert-info", label: label });
6757
6758
  case 'warning':
6758
- return hAsync(Icon, { ariaLabel: translateWarning, icon: "codicon codicon-warning", label: label });
6759
+ return hAsync(Icon, { ariaLabel: translateWarning, icon: "kolicon-alert-warning", label: label });
6759
6760
  case 'success':
6760
- return hAsync(Icon, { ariaLabel: translateSuccess, icon: "codicon codicon-pass", label: label });
6761
+ return hAsync(Icon, { ariaLabel: translateSuccess, icon: "kolicon-alert-success", label: label });
6761
6762
  default:
6762
- return hAsync(Icon, { ariaLabel: translateMessage, icon: "codicon codicon-comment", label: label });
6763
+ return hAsync(Icon, { ariaLabel: translateMessage, icon: "kolicon-alert-info", label: label });
6763
6764
  }
6764
6765
  };
6765
6766
 
@@ -6801,7 +6802,7 @@ const KolAlertFc = (props, children) => {
6801
6802
  const rootProps = Object.assign({ class: clsx(classNames, BEM_CLASS_ROOT) }, other);
6802
6803
  return (hAsync("div", Object.assign({ role: alert ? 'alert' : undefined }, rootProps, { "data-testid": "alert" }), hAsync("div", { class: "kol-alert__container" }, hAsync(AlertIcon, { label: label, type: type }), hAsync("div", { class: "kol-alert__container-content" }, label && (hAsync(KolHeadingFc, { class: BEM_CLASS__HEADING, level: level, id: "heading" }, label)), variant === 'msg' && (hAsync("span", { class: BEM_CLASS_ALERT__CONTENT, "aria-describedby": label ? 'heading' : undefined }, children))), hasCloser && (hAsync(KolButtonWcTag, { class: BEM_CLASS_ALERT__CLOSER, "data-testid": "alert-close-button", _ariaDescription: (label === null || label === void 0 ? void 0 : label.trim()) || '', _hideLabel: true, _icons: {
6803
6804
  left: {
6804
- icon: 'codicon codicon-close',
6805
+ icon: 'kolicon-cross',
6805
6806
  },
6806
6807
  }, _label: translateCloseAlert, _on: { onClick: onCloserClick }, _tooltipAlign: "left" }))), variant === 'card' && (hAsync("div", { class: BEM_CLASS_ALERT__CONTENT, "aria-describedby": label ? 'heading' : undefined }, children))));
6807
6808
  };
@@ -9490,16 +9491,14 @@ const InputContainer$1 = (_a, children) => {
9490
9491
  return (hAsync("div", Object.assign({ class: clsx('kol-form-field__input', classNames) }, other), children));
9491
9492
  };
9492
9493
  const KolFormFieldFc = (props, children) => {
9493
- var _a;
9494
9494
  const { component: Component = 'div', renderNoLabel, renderNoTooltip, renderNoHint, anotherChildren, id, required, alert, disabled, class: classNames, msg, hideMsg, hideLabel, label, hint, accessKey, shortKey, tooltipAlign, counter, readOnly, touched, maxLength, ariaDescribedBy, formFieldLabelProps, formFieldHintProps, formFieldTooltipProps, formFieldMsgProps, formFieldInputProps } = props, other = __rest(props, ["component", "renderNoLabel", "renderNoTooltip", "renderNoHint", "anotherChildren", "id", "required", "alert", "disabled", "class", "msg", "hideMsg", "hideLabel", "label", "hint", "accessKey", "shortKey", "tooltipAlign", "counter", "readOnly", "touched", "maxLength", "ariaDescribedBy", "formFieldLabelProps", "formFieldHintProps", "formFieldTooltipProps", "formFieldMsgProps", "formFieldInputProps"]);
9495
9495
  const showLabel = !renderNoLabel;
9496
9496
  const showHint = !renderNoHint;
9497
9497
  const showTooltip = !renderNoTooltip;
9498
9498
  const hasExpertSlot = showExpertSlot(label);
9499
- const showMsg = checkHasMsg(msg, touched);
9499
+ const showMsg = isMsgDefinedAndInputTouched(msg, touched);
9500
9500
  const badgeText = buildBadgeTextString(accessKey, shortKey);
9501
9501
  const useTooltipInsteadOfLabel = showTooltip && !hasExpertSlot && hideLabel;
9502
- const msgType = typeof msg === 'string' ? 'error' : ((_a = msg === null || msg === void 0 ? void 0 : msg._type) !== null && _a !== void 0 ? _a : 'error');
9503
9502
  let stateCssClasses = {
9504
9503
  ['kol-form-field--disabled']: Boolean(disabled),
9505
9504
  ['kol-form-field--required']: Boolean(required),
@@ -9509,7 +9508,8 @@ const KolFormFieldFc = (props, children) => {
9509
9508
  ['kol-form-field--hidden-msg']: Boolean(hideMsg),
9510
9509
  };
9511
9510
  if (showMsg) {
9512
- stateCssClasses = Object.assign(Object.assign({}, stateCssClasses), { [`kol-form-field--${msgType || 'error'}`]: true, [`kol-form-field--${getModifierClassNameByMsgType({ type: msgType })}`]: true });
9511
+ const msgType = getMsgType(msg);
9512
+ stateCssClasses = Object.assign(Object.assign({}, stateCssClasses), { [`kol-form-field--${msgType}`]: true, [`kol-form-field--${getModifierClassNameByMsgType({ type: msgType })}`]: true });
9513
9513
  }
9514
9514
  return (hAsync(Component, Object.assign({ class: clsx('kol-form-field', stateCssClasses, classNames), "aria-describedby": ariaDescribedBy }, other), showLabel && (hAsync(KolFormFieldLabelFc, Object.assign({}, (formFieldLabelProps || {}), { id: id, hasExpertSlot: hasExpertSlot, hideLabel: hideLabel, label: label, accessKey: accessKey, shortKey: shortKey, readOnly: readOnly }))), hAsync(InputContainer$1, Object.assign({}, formFieldInputProps), children, useTooltipInsteadOfLabel && hideLabel === true && (hAsync(FormFieldTooltipFc, Object.assign({}, (formFieldTooltipProps || {}), { id: id, label: label, align: tooltipAlign, badgeText: badgeText })))), counter ? hAsync(KolFormFieldCounterFc, Object.assign({ id: id }, counter)) : null, maxLength ? hAsync(KolFormFieldCharacterLimitHintFc, { id: id, maxLength: maxLength }) : null, showMsg && !hideMsg && hAsync(FormFieldMsgFc, Object.assign({}, (formFieldMsgProps || {}), { id: id, alert: alert, msg: msg })), showHint && hAsync(KolFormFieldHintFc, Object.assign({}, (formFieldHintProps || {}), { id: id, hint: hint })), anotherChildren));
9515
9515
  };
@@ -9538,11 +9538,9 @@ const Container = (_a, children) => {
9538
9538
  };
9539
9539
  const KolInputContainerFc = (props, children) => {
9540
9540
  const { class: classNames, startAdornment, endAdornment, disabled, msg, touched, containerProps, startAdornmentProps, endAdornmentProps } = props, other = __rest(props, ["class", "startAdornment", "endAdornment", "disabled", "msg", "touched", "containerProps", "startAdornmentProps", "endAdornmentProps"]);
9541
- const showMsg = checkHasMsg(msg, touched);
9542
- const msgType = typeof msg === 'string' ? 'error' : msg === null || msg === void 0 ? void 0 : msg._type;
9543
9541
  const stateCssClasses = {
9544
9542
  ['kol-input-container--disabled']: disabled,
9545
- [`kol-input-container--${msgType || 'error'}`]: showMsg,
9543
+ [`kol-input-container--${getMsgType(msg)}`]: isMsgDefinedAndInputTouched(msg, touched),
9546
9544
  };
9547
9545
  const baseProps = Object.assign({ class: clsx('kol-input-container', stateCssClasses, classNames) }, other);
9548
9546
  if (!hasItems(startAdornment) && !hasItems(endAdornment)) {
@@ -9563,14 +9561,12 @@ function getDefaultProps({ ariaDescribedBy, hideLabel, label }) {
9563
9561
 
9564
9562
  const InputFc = (props) => {
9565
9563
  const { class: classNames, msg, required, disabled, touched, readonly, ariaDescribedBy, hideLabel, label, suggestions, value } = props, other = __rest(props, ["class", "msg", "required", "disabled", "touched", "readonly", "ariaDescribedBy", "hideLabel", "label", "suggestions", "value"]);
9566
- const showMsg = checkHasMsg(msg, touched);
9567
- const msgType = typeof msg === 'string' ? 'error' : msg === null || msg === void 0 ? void 0 : msg._type;
9568
9564
  const stateCssClasses = {
9569
9565
  ['kol-input--disabled']: Boolean(disabled),
9570
9566
  ['kol-input--required']: Boolean(required),
9571
9567
  ['kol-input--touched']: Boolean(touched),
9572
9568
  ['kol-input--readonly']: Boolean(readonly),
9573
- [`kol-input--${msgType || 'error'}`]: showMsg,
9569
+ [`kol-input--${getMsgType(msg)}`]: isMsgDefinedAndInputTouched(msg, touched),
9574
9570
  };
9575
9571
  const inputProps = Object.assign(Object.assign({ class: clsx('kol-input', stateCssClasses, classNames), required: required, disabled: disabled, readonly: readonly, type: 'text', list: suggestions ? `${other.id}-list` : undefined }, getDefaultProps({ ariaDescribedBy, hideLabel, label })), other);
9576
9572
  return (hAsync(Fragment, null, hAsync("input", Object.assign({}, inputProps, { value: value })), suggestions));
@@ -9578,14 +9574,12 @@ const InputFc = (props) => {
9578
9574
 
9579
9575
  const TextAreaFc = (props) => {
9580
9576
  const { class: classNames, msg, touched, readonly, disabled, required, ariaDescribedBy, hideLabel, label } = props, other = __rest(props, ["class", "msg", "touched", "readonly", "disabled", "required", "ariaDescribedBy", "hideLabel", "label"]);
9581
- const showMsg = checkHasMsg(msg, touched);
9582
- const msgType = typeof msg === 'string' ? 'error' : msg === null || msg === void 0 ? void 0 : msg._type;
9583
9577
  const stateCssClasses = {
9584
9578
  ['kol-textarea--disabled']: Boolean(disabled),
9585
9579
  ['kol-textarea--required']: Boolean(required),
9586
9580
  ['kol-textarea--touched']: Boolean(touched),
9587
9581
  ['kol-textarea--readonly']: Boolean(readonly),
9588
- [`kol-textarea--${msgType || 'error'}`]: showMsg,
9582
+ [`kol-textarea--${getMsgType(msg)}`]: isMsgDefinedAndInputTouched(msg, touched),
9589
9583
  };
9590
9584
  const inputProps = Object.assign(Object.assign({ class: clsx('kol-textarea', stateCssClasses, classNames), required: required, disabled: disabled, readonly: readonly }, getDefaultProps({ ariaDescribedBy, hideLabel, label })), other);
9591
9585
  return hAsync("textarea", Object.assign({}, inputProps));
@@ -18683,7 +18677,7 @@ class KolBreadcrumb {
18683
18677
  registerInstance(this, hostRef);
18684
18678
  this.renderLink = (link, index) => {
18685
18679
  const lastIndex = this.state._links.length - 1;
18686
- return (hAsync("li", { class: "kol-breadcrumb__list-element", key: index }, index === lastIndex ? (hAsync("span", { class: "kol-breadcrumb__list-element-span", "aria-current": "page" }, link._hideLabel ? (hAsync(KolIconTag, { class: "kol-breadcrumb__icon", _label: link._label, _icons: typeof link._icons === 'string' ? link._icons : 'codicon codicon-symbol-event' })) : (hAsync(Fragment, null, link._label)))) : (hAsync(KolLinkWcTag, Object.assign({ class: "kol-breadcrumb__link", _inline: false }, link))), index !== lastIndex && hAsync(KolIconTag, { class: "kol-breadcrumb__separator", _label: "", _icons: "codicon codicon-chevron-right" })));
18680
+ return (hAsync("li", { class: "kol-breadcrumb__list-element", key: index }, index === lastIndex ? (hAsync("span", { class: "kol-breadcrumb__list-element-span", "aria-current": "page" }, link._hideLabel ? (hAsync(KolIconTag, { class: "kol-breadcrumb__icon", _label: link._label, _icons: typeof link._icons === 'string' ? link._icons : 'codicon codicon-symbol-event' })) : (hAsync(Fragment, null, link._label)))) : (hAsync(KolLinkWcTag, Object.assign({ class: "kol-breadcrumb__link", _inline: false }, link))), index !== lastIndex && hAsync(KolIconTag, { class: "kol-breadcrumb__separator", _label: "", _icons: "kolicon-chevron-right" })));
18687
18681
  };
18688
18682
  this.state = {
18689
18683
  _label: '',
@@ -18691,7 +18685,7 @@ class KolBreadcrumb {
18691
18685
  };
18692
18686
  }
18693
18687
  render() {
18694
- return (hAsync("nav", { key: 'cfe39ad7c9b3ff354087605a6e5db086185e4b07', class: "kol-breadcrumb", "aria-label": this.state._label }, hAsync("ul", { key: '30ce6365f022addb4f52d628a8169a85454d3a29', class: "kol-breadcrumb__list" }, this.state._links.length === 0 && (hAsync("li", { key: 'f3ec0aee1962e345bbefd5fe4fd99224ced565e9' }, hAsync(KolIconTag, { key: 'ee1e31c87b8bdfef77aadc425d53ac0a643ff0f6', class: "kol-breadcrumb_icon", _label: "", _icons: "codicon codicon-home" }), "\u2026")), this.state._links.map(this.renderLink))));
18688
+ return (hAsync("nav", { key: '69dbd3034c3b7b19975d8dab92db45169ba1ffa8', class: "kol-breadcrumb", "aria-label": this.state._label }, hAsync("ul", { key: '0183c1b3850d530a0d0770a2f298f076e23296b7', class: "kol-breadcrumb__list" }, this.state._links.length === 0 && (hAsync("li", { key: 'aae370f7858a4e61f3b40dfd61ef3cb32a3024ee' }, hAsync(KolIconTag, { key: '94b7b59afaafa2878d30501e223ad7f9e43ea182', class: "kol-breadcrumb_icon", _label: "", _icons: "codicon codicon-home" }), "\u2026")), this.state._links.map(this.renderLink))));
18695
18689
  }
18696
18690
  validateLabel(value, _oldValue, initial = false) {
18697
18691
  if (!initial) {
@@ -19405,9 +19399,9 @@ class KolCardWc {
19405
19399
  this.validateOnValue = (value) => typeof value === 'object' && value !== null && typeof value.onClose === 'function';
19406
19400
  }
19407
19401
  render() {
19408
- return (hAsync(Host, { key: 'e2e32f376bd12f7fc8beb4df8f76facb80f5e7a5' }, hAsync("div", { key: '0ef931bd24c643b575342f434506483f0b3ebca8', "aria-labelledby": this.nonce, class: "kol-card", role: "group" }, hAsync(KolHeadingFc, { key: 'ce924a0307338f9d6beaa3ea24051fbb3173d83e', class: "kol-card__header", id: this.nonce, level: this.state._level }, this.state._label), hAsync("div", { key: '2d004878aedb826c78acb8834d79144b05ae4d1b', class: "kol-card__content" }, hAsync("slot", { key: 'c5075d61a16c46bdf3c8c5ffea3ca70cd02c4d8c' })), this.state._hasCloser && (hAsync(KolButtonWcTag, { key: '89d83b4fb181fb2bd43b7b5a4dfedba1660395b4', class: "kol-card__close-button", "data-testid": "card-close-button", _hideLabel: true, _icons: {
19402
+ return (hAsync(Host, { key: '31a21a7dd16b81042127406bc4cd091f16f230d4' }, hAsync("div", { key: '22001ed9c1f73d9b6445b0b6e36109c9cc8ef608', "aria-labelledby": this.nonce, class: "kol-card", role: "group" }, hAsync(KolHeadingFc, { key: '5b6760cafee75437ba6ef208d35e05e96ec3f76a', class: "kol-card__header", id: this.nonce, level: this.state._level }, this.state._label), hAsync("div", { key: '9b780b199200df0ce78ad4f3d2f1ad746f838a8e', class: "kol-card__content" }, hAsync("slot", { key: 'cdf53c951f6980b6827db3bf37ea7ad216037c69' })), this.state._hasCloser && (hAsync(KolButtonWcTag, { key: '17351e7bf95780dbdad9ade81d7a44c7ecb47f2b', class: "kol-card__close-button", "data-testid": "card-close-button", _hideLabel: true, _icons: {
19409
19403
  left: {
19410
- icon: 'codicon codicon-close',
19404
+ icon: 'kolicon-cross',
19411
19405
  },
19412
19406
  }, _label: this.translateClose, _on: this.on, _tooltipAlign: "left" })))));
19413
19407
  }
@@ -19459,10 +19453,9 @@ class KolCardWc {
19459
19453
  }
19460
19454
 
19461
19455
  const getRenderStates = (state) => {
19462
- var _a;
19463
19456
  const msg = state._msg;
19464
19457
  const description = typeof msg === 'string' ? msg : msg === null || msg === void 0 ? void 0 : msg._description;
19465
- const type = typeof msg === 'string' ? 'error' : ((_a = msg === null || msg === void 0 ? void 0 : msg._type) !== null && _a !== void 0 ? _a : 'error');
19458
+ const type = getMsgType(msg);
19466
19459
  const hasMessage = Boolean(description && description.length > 0);
19467
19460
  const isMessageValidError = type === 'error' && hasMessage;
19468
19461
  const hasError = isMessageValidError && state._touched === true;
@@ -19914,8 +19907,8 @@ class ComboboxController extends InputIconController {
19914
19907
  super(component, name, host);
19915
19908
  this.component = component;
19916
19909
  }
19917
- validateHideClearButton(value) {
19918
- watchBoolean(this.component, '_hideClearButton', value);
19910
+ validateHasClearButton(value) {
19911
+ watchBoolean(this.component, '_hasClearButton', value);
19919
19912
  }
19920
19913
  validatePlaceholder(value) {
19921
19914
  validatePlaceholder(this.component, value);
@@ -19931,7 +19924,7 @@ class ComboboxController extends InputIconController {
19931
19924
  }
19932
19925
  componentWillLoad() {
19933
19926
  super.componentWillLoad();
19934
- this.validateHideClearButton(this.component._hideClearButton);
19927
+ this.validateHasClearButton(this.component._hasClearButton);
19935
19928
  this.validatePlaceholder(this.component._placeholder);
19936
19929
  this.validateRequired(this.component._required);
19937
19930
  this.validateSuggestions(this.component._suggestions);
@@ -20054,15 +20047,15 @@ class KolCombobox {
20054
20047
  }
20055
20048
  render() {
20056
20049
  const isDisabled = this.state._disabled === true;
20057
- return (hAsync(FormFieldStateWrapper, Object.assign({ key: '0d9f276131000a7a398df8167b7ab687bf191bf8' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: '4bf740e369911ad5af8dc96498a7f895d09e7d86', state: this.state }, hAsync("div", { key: '839fb3245b49c1fc922e61898f0e966b3f8946d7', class: "kol-combobox__group" }, hAsync(InputStateWrapper, Object.assign({ key: 'c51fa942fe784d4b409e40c07b9f62ba623e8220' }, this.getInputProps())), this.state._value && !this.state._hideClearButton && (hAsync(KolButtonWcTag, { key: '7121cc55857a492973ab7ea3b6cb68654dc30fcc', _icons: "codicon codicon-close", _label: this.translateDeleteSelection, _hideLabel: true, _disabled: isDisabled, "data-testid": "combobox-delete", class: clsx('kol-combobox__delete', {
20050
+ return (hAsync(FormFieldStateWrapper, Object.assign({ key: 'ea072edf65173a627c7a8af5af4b15592b69aa6e' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: 'cd26bc70a3b4def7be64e1c5c242c4fbb1656b1f', state: this.state }, hAsync("div", { key: '0345d23493d7879ab8c6f3db3f6a158743308c22', class: "kol-combobox__group" }, hAsync(InputStateWrapper, Object.assign({ key: 'a187dc63d3df35e8ad1dc65024d508f5364358f3' }, this.getInputProps())), this.state._value && this.state._hasClearButton && (hAsync(KolButtonWcTag, { key: '547dab645411ba7db78fa16a39b478057e9fb4b8', _icons: "kolicon-cross", _label: this.translateDeleteSelection, _hideLabel: true, _disabled: isDisabled, "data-testid": "combobox-delete", class: clsx('kol-combobox__delete', {
20058
20051
  'kol-combobox__delete--disabled': isDisabled,
20059
20052
  }), _on: {
20060
20053
  onClick: () => {
20061
20054
  this.clearSelection();
20062
20055
  },
20063
- } })), hAsync(KolIconTag, { key: '6b4af46bfe72c9da959729263c8f0adae6c92f81', _icons: "codicon codicon-triangle-down", _label: "", class: clsx('kol-custom-suggestions-toggle', {
20056
+ } })), hAsync(KolIconTag, { key: 'fc2533df3314266028a81e2439533996f1f84fd7', _icons: "kolicon-chevron-down", _label: "", class: clsx('kol-custom-suggestions-toggle', {
20064
20057
  'kol-custom-suggestions-toggle--disabled': isDisabled,
20065
- }), onClick: this.toggleListbox.bind(this) })), this._isOpen && !isDisabled && (hAsync(CustomSuggestionsOptionsGroupFc, { key: 'ffbaa34f6801783d5255b82d6df3df643b53913f', blockSuggestionMouseOver: this.blockSuggestionMouseOver, onKeyDown: this.handleKeyDownDropdown.bind(this) }, Array.isArray(this._filteredSuggestions) &&
20058
+ }), onClick: this.toggleListbox.bind(this) })), this._isOpen && !isDisabled && (hAsync(CustomSuggestionsOptionsGroupFc, { key: 'f1e60f33171ccf3d5e52d835c53953a7e3f0196e', blockSuggestionMouseOver: this.blockSuggestionMouseOver, onKeyDown: this.handleKeyDownDropdown.bind(this) }, Array.isArray(this._filteredSuggestions) &&
20066
20059
  this._filteredSuggestions.length > 0 &&
20067
20060
  this._filteredSuggestions.map((option, index) => (hAsync(CustomSuggestionsOptionFc, { disabled: false, index: index, option: option, searchTerm: this.state._value, ref: (el) => {
20068
20061
  if (el)
@@ -20204,13 +20197,13 @@ class KolCombobox {
20204
20197
  this._hideMsg = false;
20205
20198
  this._hideLabel = false;
20206
20199
  this._hint = '';
20207
- this._hideClearButton = false;
20200
+ this._hasClearButton = true;
20208
20201
  this._required = false;
20209
20202
  this._tooltipAlign = 'top';
20210
20203
  this._touched = false;
20211
20204
  this.state = {
20212
20205
  _hasValue: false,
20213
- _hideClearButton: false,
20206
+ _hasClearButton: true,
20214
20207
  _hideMsg: false,
20215
20208
  _id: `id-${nonce()}`,
20216
20209
  _label: '',
@@ -20267,8 +20260,8 @@ class KolCombobox {
20267
20260
  this.controller.validateSuggestions(value);
20268
20261
  this._filteredSuggestions = value;
20269
20262
  }
20270
- validateHideClearButton(value) {
20271
- this.controller.validateHideClearButton(value);
20263
+ validateHasClearButton(value) {
20264
+ this.controller.validateHasClearButton(value);
20272
20265
  }
20273
20266
  validateRequired(value) {
20274
20267
  this.controller.validateRequired(value);
@@ -20332,7 +20325,7 @@ class KolCombobox {
20332
20325
  "_on": ["validateOn"],
20333
20326
  "_shortKey": ["validateShortKey"],
20334
20327
  "_suggestions": ["validateSuggestions"],
20335
- "_hideClearButton": ["validateHideClearButton"],
20328
+ "_hasClearButton": ["validateHasClearButton"],
20336
20329
  "_required": ["validateRequired"],
20337
20330
  "_syncValueBySelector": ["validateSyncValueBySelector"],
20338
20331
  "_touched": ["validateTouched"],
@@ -20357,7 +20350,7 @@ class KolCombobox {
20357
20350
  "_msg": [1],
20358
20351
  "_name": [1],
20359
20352
  "_on": [16],
20360
- "_hideClearButton": [4, "_hide-clear-button"],
20353
+ "_hasClearButton": [4, "_has-clear-button"],
20361
20354
  "_suggestions": [1],
20362
20355
  "_required": [4],
20363
20356
  "_shortKey": [1, "_short-key"],
@@ -20427,7 +20420,7 @@ class KolDetails {
20427
20420
  HeadingButtonProps: {
20428
20421
  ref: this.catchRef,
20429
20422
  class: `${rootClass}__heading-button`,
20430
- _icons: 'codicon codicon-chevron-right',
20423
+ _icons: 'kolicon-chevron-right',
20431
20424
  },
20432
20425
  ContentProps: {
20433
20426
  class: `${rootClass}__content indented-text`,
@@ -20435,7 +20428,7 @@ class KolDetails {
20435
20428
  animationClass: `${rootClass}__wrapper-animation`,
20436
20429
  },
20437
20430
  };
20438
- return (hAsync(KolCollapsibleFc, Object.assign({ key: 'e149779c3d5053267bcd2785b061c3862c1ab806' }, props), hAsync("slot", { key: 'ba4278e16e1cd27c08ecc5aef1d47d8427d94575' })));
20431
+ return (hAsync(KolCollapsibleFc, Object.assign({ key: '335d90129f31949bcec29ac3108f22c43d6dd09a' }, props), hAsync("slot", { key: 'ce42f858d4bda51fbac02e14d6f69b4e51da41b3' })));
20439
20432
  }
20440
20433
  validateDisabled(value) {
20441
20434
  validateDisabled(this, value);
@@ -20837,7 +20830,7 @@ const bem = c();
20837
20830
  const BEM_CLASS_ICON = bem('kol-icon');
20838
20831
  const BEM_CLASS_ICON__ICON = bem('kol-icon', 'icon');
20839
20832
 
20840
- const defaultStyleCss$y = "/* forward the rem function */\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n@font-face {\n font-family: \"codicon\";\n font-display: block;\n src: url(\"./codicon.ttf?be64b7213e352cd7f91ef58198e71237\") format(\"truetype\");\n}\n.codicon[class*=codicon-] {\n font: normal normal normal 16px/1 codicon;\n display: inline-block;\n text-decoration: none;\n text-rendering: auto;\n text-align: center;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n user-select: none;\n -webkit-user-select: none;\n -ms-user-select: none;\n}\n\n/*---------------------\n * Modifiers\n *-------------------*/\n@keyframes codicon-spin {\n 100% {\n transform: rotate(360deg);\n }\n}\n.codicon-sync.codicon-modifier-spin,\n.codicon-loading.codicon-modifier-spin,\n.codicon-gear.codicon-modifier-spin {\n /* Use steps to throttle FPS to reduce CPU usage */\n animation: codicon-spin 1.5s steps(30) infinite;\n}\n\n.codicon-modifier-disabled {\n opacity: 0.5;\n}\n\n.codicon-modifier-hidden {\n opacity: 0;\n}\n\n/* custom speed & easing for loading icon */\n.codicon-loading {\n animation-duration: 1s !important;\n animation-timing-function: cubic-bezier(0.53, 0.21, 0.29, 0.67) !important;\n}\n\n/*---------------------\n * Icons\n *-------------------*/\n.codicon-add:before {\n content: \"\\ea60\";\n}\n\n.codicon-plus:before {\n content: \"\\ea60\";\n}\n\n.codicon-gist-new:before {\n content: \"\\ea60\";\n}\n\n.codicon-repo-create:before {\n content: \"\\ea60\";\n}\n\n.codicon-lightbulb:before {\n content: \"\\ea61\";\n}\n\n.codicon-light-bulb:before {\n content: \"\\ea61\";\n}\n\n.codicon-repo:before {\n content: \"\\ea62\";\n}\n\n.codicon-repo-delete:before {\n content: \"\\ea62\";\n}\n\n.codicon-gist-fork:before {\n content: \"\\ea63\";\n}\n\n.codicon-repo-forked:before {\n content: \"\\ea63\";\n}\n\n.codicon-git-pull-request:before {\n content: \"\\ea64\";\n}\n\n.codicon-git-pull-request-abandoned:before {\n content: \"\\ea64\";\n}\n\n.codicon-record-keys:before {\n content: \"\\ea65\";\n}\n\n.codicon-keyboard:before {\n content: \"\\ea65\";\n}\n\n.codicon-tag:before {\n content: \"\\ea66\";\n}\n\n.codicon-git-pull-request-label:before {\n content: \"\\ea66\";\n}\n\n.codicon-tag-add:before {\n content: \"\\ea66\";\n}\n\n.codicon-tag-remove:before {\n content: \"\\ea66\";\n}\n\n.codicon-person:before {\n content: \"\\ea67\";\n}\n\n.codicon-person-follow:before {\n content: \"\\ea67\";\n}\n\n.codicon-person-outline:before {\n content: \"\\ea67\";\n}\n\n.codicon-person-filled:before {\n content: \"\\ea67\";\n}\n\n.codicon-git-branch:before {\n content: \"\\ea68\";\n}\n\n.codicon-git-branch-create:before {\n content: \"\\ea68\";\n}\n\n.codicon-git-branch-delete:before {\n content: \"\\ea68\";\n}\n\n.codicon-source-control:before {\n content: \"\\ea68\";\n}\n\n.codicon-mirror:before {\n content: \"\\ea69\";\n}\n\n.codicon-mirror-public:before {\n content: \"\\ea69\";\n}\n\n.codicon-star:before {\n content: \"\\ea6a\";\n}\n\n.codicon-star-add:before {\n content: \"\\ea6a\";\n}\n\n.codicon-star-delete:before {\n content: \"\\ea6a\";\n}\n\n.codicon-star-empty:before {\n content: \"\\ea6a\";\n}\n\n.codicon-comment:before {\n content: \"\\ea6b\";\n}\n\n.codicon-comment-add:before {\n content: \"\\ea6b\";\n}\n\n.codicon-alert:before {\n content: \"\\ea6c\";\n}\n\n.codicon-warning:before {\n content: \"\\ea6c\";\n}\n\n.codicon-search:before {\n content: \"\\ea6d\";\n}\n\n.codicon-search-save:before {\n content: \"\\ea6d\";\n}\n\n.codicon-log-out:before {\n content: \"\\ea6e\";\n}\n\n.codicon-sign-out:before {\n content: \"\\ea6e\";\n}\n\n.codicon-log-in:before {\n content: \"\\ea6f\";\n}\n\n.codicon-sign-in:before {\n content: \"\\ea6f\";\n}\n\n.codicon-eye:before {\n content: \"\\ea70\";\n}\n\n.codicon-eye-unwatch:before {\n content: \"\\ea70\";\n}\n\n.codicon-eye-watch:before {\n content: \"\\ea70\";\n}\n\n.codicon-circle-filled:before {\n content: \"\\ea71\";\n}\n\n.codicon-primitive-dot:before {\n content: \"\\ea71\";\n}\n\n.codicon-close-dirty:before {\n content: \"\\ea71\";\n}\n\n.codicon-debug-breakpoint:before {\n content: \"\\ea71\";\n}\n\n.codicon-debug-breakpoint-disabled:before {\n content: \"\\ea71\";\n}\n\n.codicon-debug-hint:before {\n content: \"\\ea71\";\n}\n\n.codicon-terminal-decoration-success:before {\n content: \"\\ea71\";\n}\n\n.codicon-primitive-square:before {\n content: \"\\ea72\";\n}\n\n.codicon-edit:before {\n content: \"\\ea73\";\n}\n\n.codicon-pencil:before {\n content: \"\\ea73\";\n}\n\n.codicon-info:before {\n content: \"\\ea74\";\n}\n\n.codicon-issue-opened:before {\n content: \"\\ea74\";\n}\n\n.codicon-gist-private:before {\n content: \"\\ea75\";\n}\n\n.codicon-git-fork-private:before {\n content: \"\\ea75\";\n}\n\n.codicon-lock:before {\n content: \"\\ea75\";\n}\n\n.codicon-mirror-private:before {\n content: \"\\ea75\";\n}\n\n.codicon-close:before {\n content: \"\\ea76\";\n}\n\n.codicon-remove-close:before {\n content: \"\\ea76\";\n}\n\n.codicon-x:before {\n content: \"\\ea76\";\n}\n\n.codicon-repo-sync:before {\n content: \"\\ea77\";\n}\n\n.codicon-sync:before {\n content: \"\\ea77\";\n}\n\n.codicon-clone:before {\n content: \"\\ea78\";\n}\n\n.codicon-desktop-download:before {\n content: \"\\ea78\";\n}\n\n.codicon-beaker:before {\n content: \"\\ea79\";\n}\n\n.codicon-microscope:before {\n content: \"\\ea79\";\n}\n\n.codicon-vm:before {\n content: \"\\ea7a\";\n}\n\n.codicon-device-desktop:before {\n content: \"\\ea7a\";\n}\n\n.codicon-file:before {\n content: \"\\ea7b\";\n}\n\n.codicon-file-text:before {\n content: \"\\ea7b\";\n}\n\n.codicon-more:before {\n content: \"\\ea7c\";\n}\n\n.codicon-ellipsis:before {\n content: \"\\ea7c\";\n}\n\n.codicon-kebab-horizontal:before {\n content: \"\\ea7c\";\n}\n\n.codicon-mail-reply:before {\n content: \"\\ea7d\";\n}\n\n.codicon-reply:before {\n content: \"\\ea7d\";\n}\n\n.codicon-organization:before {\n content: \"\\ea7e\";\n}\n\n.codicon-organization-filled:before {\n content: \"\\ea7e\";\n}\n\n.codicon-organization-outline:before {\n content: \"\\ea7e\";\n}\n\n.codicon-new-file:before {\n content: \"\\ea7f\";\n}\n\n.codicon-file-add:before {\n content: \"\\ea7f\";\n}\n\n.codicon-new-folder:before {\n content: \"\\ea80\";\n}\n\n.codicon-file-directory-create:before {\n content: \"\\ea80\";\n}\n\n.codicon-trash:before {\n content: \"\\ea81\";\n}\n\n.codicon-trashcan:before {\n content: \"\\ea81\";\n}\n\n.codicon-history:before {\n content: \"\\ea82\";\n}\n\n.codicon-clock:before {\n content: \"\\ea82\";\n}\n\n.codicon-folder:before {\n content: \"\\ea83\";\n}\n\n.codicon-file-directory:before {\n content: \"\\ea83\";\n}\n\n.codicon-symbol-folder:before {\n content: \"\\ea83\";\n}\n\n.codicon-logo-github:before {\n content: \"\\ea84\";\n}\n\n.codicon-mark-github:before {\n content: \"\\ea84\";\n}\n\n.codicon-github:before {\n content: \"\\ea84\";\n}\n\n.codicon-terminal:before {\n content: \"\\ea85\";\n}\n\n.codicon-console:before {\n content: \"\\ea85\";\n}\n\n.codicon-repl:before {\n content: \"\\ea85\";\n}\n\n.codicon-zap:before {\n content: \"\\ea86\";\n}\n\n.codicon-symbol-event:before {\n content: \"\\ea86\";\n}\n\n.codicon-error:before {\n content: \"\\ea87\";\n}\n\n.codicon-stop:before {\n content: \"\\ea87\";\n}\n\n.codicon-variable:before {\n content: \"\\ea88\";\n}\n\n.codicon-symbol-variable:before {\n content: \"\\ea88\";\n}\n\n.codicon-array:before {\n content: \"\\ea8a\";\n}\n\n.codicon-symbol-array:before {\n content: \"\\ea8a\";\n}\n\n.codicon-symbol-module:before {\n content: \"\\ea8b\";\n}\n\n.codicon-symbol-package:before {\n content: \"\\ea8b\";\n}\n\n.codicon-symbol-namespace:before {\n content: \"\\ea8b\";\n}\n\n.codicon-symbol-object:before {\n content: \"\\ea8b\";\n}\n\n.codicon-symbol-method:before {\n content: \"\\ea8c\";\n}\n\n.codicon-symbol-function:before {\n content: \"\\ea8c\";\n}\n\n.codicon-symbol-constructor:before {\n content: \"\\ea8c\";\n}\n\n.codicon-symbol-boolean:before {\n content: \"\\ea8f\";\n}\n\n.codicon-symbol-null:before {\n content: \"\\ea8f\";\n}\n\n.codicon-symbol-numeric:before {\n content: \"\\ea90\";\n}\n\n.codicon-symbol-number:before {\n content: \"\\ea90\";\n}\n\n.codicon-symbol-structure:before {\n content: \"\\ea91\";\n}\n\n.codicon-symbol-struct:before {\n content: \"\\ea91\";\n}\n\n.codicon-symbol-parameter:before {\n content: \"\\ea92\";\n}\n\n.codicon-symbol-type-parameter:before {\n content: \"\\ea92\";\n}\n\n.codicon-symbol-key:before {\n content: \"\\ea93\";\n}\n\n.codicon-symbol-text:before {\n content: \"\\ea93\";\n}\n\n.codicon-symbol-reference:before {\n content: \"\\ea94\";\n}\n\n.codicon-go-to-file:before {\n content: \"\\ea94\";\n}\n\n.codicon-symbol-enum:before {\n content: \"\\ea95\";\n}\n\n.codicon-symbol-value:before {\n content: \"\\ea95\";\n}\n\n.codicon-symbol-ruler:before {\n content: \"\\ea96\";\n}\n\n.codicon-symbol-unit:before {\n content: \"\\ea96\";\n}\n\n.codicon-activate-breakpoints:before {\n content: \"\\ea97\";\n}\n\n.codicon-archive:before {\n content: \"\\ea98\";\n}\n\n.codicon-arrow-both:before {\n content: \"\\ea99\";\n}\n\n.codicon-arrow-down:before {\n content: \"\\ea9a\";\n}\n\n.codicon-arrow-left:before {\n content: \"\\ea9b\";\n}\n\n.codicon-arrow-right:before {\n content: \"\\ea9c\";\n}\n\n.codicon-arrow-small-down:before {\n content: \"\\ea9d\";\n}\n\n.codicon-arrow-small-left:before {\n content: \"\\ea9e\";\n}\n\n.codicon-arrow-small-right:before {\n content: \"\\ea9f\";\n}\n\n.codicon-arrow-small-up:before {\n content: \"\\eaa0\";\n}\n\n.codicon-arrow-up:before {\n content: \"\\eaa1\";\n}\n\n.codicon-bell:before {\n content: \"\\eaa2\";\n}\n\n.codicon-bold:before {\n content: \"\\eaa3\";\n}\n\n.codicon-book:before {\n content: \"\\eaa4\";\n}\n\n.codicon-bookmark:before {\n content: \"\\eaa5\";\n}\n\n.codicon-debug-breakpoint-conditional-unverified:before {\n content: \"\\eaa6\";\n}\n\n.codicon-debug-breakpoint-conditional:before {\n content: \"\\eaa7\";\n}\n\n.codicon-debug-breakpoint-conditional-disabled:before {\n content: \"\\eaa7\";\n}\n\n.codicon-debug-breakpoint-data-unverified:before {\n content: \"\\eaa8\";\n}\n\n.codicon-debug-breakpoint-data:before {\n content: \"\\eaa9\";\n}\n\n.codicon-debug-breakpoint-data-disabled:before {\n content: \"\\eaa9\";\n}\n\n.codicon-debug-breakpoint-log-unverified:before {\n content: \"\\eaaa\";\n}\n\n.codicon-debug-breakpoint-log:before {\n content: \"\\eaab\";\n}\n\n.codicon-debug-breakpoint-log-disabled:before {\n content: \"\\eaab\";\n}\n\n.codicon-briefcase:before {\n content: \"\\eaac\";\n}\n\n.codicon-broadcast:before {\n content: \"\\eaad\";\n}\n\n.codicon-browser:before {\n content: \"\\eaae\";\n}\n\n.codicon-bug:before {\n content: \"\\eaaf\";\n}\n\n.codicon-calendar:before {\n content: \"\\eab0\";\n}\n\n.codicon-case-sensitive:before {\n content: \"\\eab1\";\n}\n\n.codicon-check:before {\n content: \"\\eab2\";\n}\n\n.codicon-checklist:before {\n content: \"\\eab3\";\n}\n\n.codicon-chevron-down:before {\n content: \"\\eab4\";\n}\n\n.codicon-chevron-left:before {\n content: \"\\eab5\";\n}\n\n.codicon-chevron-right:before {\n content: \"\\eab6\";\n}\n\n.codicon-chevron-up:before {\n content: \"\\eab7\";\n}\n\n.codicon-chrome-close:before {\n content: \"\\eab8\";\n}\n\n.codicon-chrome-maximize:before {\n content: \"\\eab9\";\n}\n\n.codicon-chrome-minimize:before {\n content: \"\\eaba\";\n}\n\n.codicon-chrome-restore:before {\n content: \"\\eabb\";\n}\n\n.codicon-circle-outline:before {\n content: \"\\eabc\";\n}\n\n.codicon-circle:before {\n content: \"\\eabc\";\n}\n\n.codicon-debug-breakpoint-unverified:before {\n content: \"\\eabc\";\n}\n\n.codicon-terminal-decoration-incomplete:before {\n content: \"\\eabc\";\n}\n\n.codicon-circle-slash:before {\n content: \"\\eabd\";\n}\n\n.codicon-circuit-board:before {\n content: \"\\eabe\";\n}\n\n.codicon-clear-all:before {\n content: \"\\eabf\";\n}\n\n.codicon-clippy:before {\n content: \"\\eac0\";\n}\n\n.codicon-close-all:before {\n content: \"\\eac1\";\n}\n\n.codicon-cloud-download:before {\n content: \"\\eac2\";\n}\n\n.codicon-cloud-upload:before {\n content: \"\\eac3\";\n}\n\n.codicon-code:before {\n content: \"\\eac4\";\n}\n\n.codicon-collapse-all:before {\n content: \"\\eac5\";\n}\n\n.codicon-color-mode:before {\n content: \"\\eac6\";\n}\n\n.codicon-comment-discussion:before {\n content: \"\\eac7\";\n}\n\n.codicon-credit-card:before {\n content: \"\\eac9\";\n}\n\n.codicon-dash:before {\n content: \"\\eacc\";\n}\n\n.codicon-dashboard:before {\n content: \"\\eacd\";\n}\n\n.codicon-database:before {\n content: \"\\eace\";\n}\n\n.codicon-debug-continue:before {\n content: \"\\eacf\";\n}\n\n.codicon-debug-disconnect:before {\n content: \"\\ead0\";\n}\n\n.codicon-debug-pause:before {\n content: \"\\ead1\";\n}\n\n.codicon-debug-restart:before {\n content: \"\\ead2\";\n}\n\n.codicon-debug-start:before {\n content: \"\\ead3\";\n}\n\n.codicon-debug-step-into:before {\n content: \"\\ead4\";\n}\n\n.codicon-debug-step-out:before {\n content: \"\\ead5\";\n}\n\n.codicon-debug-step-over:before {\n content: \"\\ead6\";\n}\n\n.codicon-debug-stop:before {\n content: \"\\ead7\";\n}\n\n.codicon-debug:before {\n content: \"\\ead8\";\n}\n\n.codicon-device-camera-video:before {\n content: \"\\ead9\";\n}\n\n.codicon-device-camera:before {\n content: \"\\eada\";\n}\n\n.codicon-device-mobile:before {\n content: \"\\eadb\";\n}\n\n.codicon-diff-added:before {\n content: \"\\eadc\";\n}\n\n.codicon-diff-ignored:before {\n content: \"\\eadd\";\n}\n\n.codicon-diff-modified:before {\n content: \"\\eade\";\n}\n\n.codicon-diff-removed:before {\n content: \"\\eadf\";\n}\n\n.codicon-diff-renamed:before {\n content: \"\\eae0\";\n}\n\n.codicon-diff:before {\n content: \"\\eae1\";\n}\n\n.codicon-diff-sidebyside:before {\n content: \"\\eae1\";\n}\n\n.codicon-discard:before {\n content: \"\\eae2\";\n}\n\n.codicon-editor-layout:before {\n content: \"\\eae3\";\n}\n\n.codicon-empty-window:before {\n content: \"\\eae4\";\n}\n\n.codicon-exclude:before {\n content: \"\\eae5\";\n}\n\n.codicon-extensions:before {\n content: \"\\eae6\";\n}\n\n.codicon-eye-closed:before {\n content: \"\\eae7\";\n}\n\n.codicon-file-binary:before {\n content: \"\\eae8\";\n}\n\n.codicon-file-code:before {\n content: \"\\eae9\";\n}\n\n.codicon-file-media:before {\n content: \"\\eaea\";\n}\n\n.codicon-file-pdf:before {\n content: \"\\eaeb\";\n}\n\n.codicon-file-submodule:before {\n content: \"\\eaec\";\n}\n\n.codicon-file-symlink-directory:before {\n content: \"\\eaed\";\n}\n\n.codicon-file-symlink-file:before {\n content: \"\\eaee\";\n}\n\n.codicon-file-zip:before {\n content: \"\\eaef\";\n}\n\n.codicon-files:before {\n content: \"\\eaf0\";\n}\n\n.codicon-filter:before {\n content: \"\\eaf1\";\n}\n\n.codicon-flame:before {\n content: \"\\eaf2\";\n}\n\n.codicon-fold-down:before {\n content: \"\\eaf3\";\n}\n\n.codicon-fold-up:before {\n content: \"\\eaf4\";\n}\n\n.codicon-fold:before {\n content: \"\\eaf5\";\n}\n\n.codicon-folder-active:before {\n content: \"\\eaf6\";\n}\n\n.codicon-folder-opened:before {\n content: \"\\eaf7\";\n}\n\n.codicon-gear:before {\n content: \"\\eaf8\";\n}\n\n.codicon-gift:before {\n content: \"\\eaf9\";\n}\n\n.codicon-gist-secret:before {\n content: \"\\eafa\";\n}\n\n.codicon-gist:before {\n content: \"\\eafb\";\n}\n\n.codicon-git-commit:before {\n content: \"\\eafc\";\n}\n\n.codicon-git-compare:before {\n content: \"\\eafd\";\n}\n\n.codicon-compare-changes:before {\n content: \"\\eafd\";\n}\n\n.codicon-git-merge:before {\n content: \"\\eafe\";\n}\n\n.codicon-github-action:before {\n content: \"\\eaff\";\n}\n\n.codicon-github-alt:before {\n content: \"\\eb00\";\n}\n\n.codicon-globe:before {\n content: \"\\eb01\";\n}\n\n.codicon-grabber:before {\n content: \"\\eb02\";\n}\n\n.codicon-graph:before {\n content: \"\\eb03\";\n}\n\n.codicon-gripper:before {\n content: \"\\eb04\";\n}\n\n.codicon-heart:before {\n content: \"\\eb05\";\n}\n\n.codicon-home:before {\n content: \"\\eb06\";\n}\n\n.codicon-horizontal-rule:before {\n content: \"\\eb07\";\n}\n\n.codicon-hubot:before {\n content: \"\\eb08\";\n}\n\n.codicon-inbox:before {\n content: \"\\eb09\";\n}\n\n.codicon-issue-reopened:before {\n content: \"\\eb0b\";\n}\n\n.codicon-issues:before {\n content: \"\\eb0c\";\n}\n\n.codicon-italic:before {\n content: \"\\eb0d\";\n}\n\n.codicon-jersey:before {\n content: \"\\eb0e\";\n}\n\n.codicon-json:before {\n content: \"\\eb0f\";\n}\n\n.codicon-kebab-vertical:before {\n content: \"\\eb10\";\n}\n\n.codicon-key:before {\n content: \"\\eb11\";\n}\n\n.codicon-law:before {\n content: \"\\eb12\";\n}\n\n.codicon-lightbulb-autofix:before {\n content: \"\\eb13\";\n}\n\n.codicon-link-external:before {\n content: \"\\eb14\";\n}\n\n.codicon-link:before {\n content: \"\\eb15\";\n}\n\n.codicon-list-ordered:before {\n content: \"\\eb16\";\n}\n\n.codicon-list-unordered:before {\n content: \"\\eb17\";\n}\n\n.codicon-live-share:before {\n content: \"\\eb18\";\n}\n\n.codicon-loading:before {\n content: \"\\eb19\";\n}\n\n.codicon-location:before {\n content: \"\\eb1a\";\n}\n\n.codicon-mail-read:before {\n content: \"\\eb1b\";\n}\n\n.codicon-mail:before {\n content: \"\\eb1c\";\n}\n\n.codicon-markdown:before {\n content: \"\\eb1d\";\n}\n\n.codicon-megaphone:before {\n content: \"\\eb1e\";\n}\n\n.codicon-mention:before {\n content: \"\\eb1f\";\n}\n\n.codicon-milestone:before {\n content: \"\\eb20\";\n}\n\n.codicon-git-pull-request-milestone:before {\n content: \"\\eb20\";\n}\n\n.codicon-mortar-board:before {\n content: \"\\eb21\";\n}\n\n.codicon-move:before {\n content: \"\\eb22\";\n}\n\n.codicon-multiple-windows:before {\n content: \"\\eb23\";\n}\n\n.codicon-mute:before {\n content: \"\\eb24\";\n}\n\n.codicon-no-newline:before {\n content: \"\\eb25\";\n}\n\n.codicon-note:before {\n content: \"\\eb26\";\n}\n\n.codicon-octoface:before {\n content: \"\\eb27\";\n}\n\n.codicon-open-preview:before {\n content: \"\\eb28\";\n}\n\n.codicon-package:before {\n content: \"\\eb29\";\n}\n\n.codicon-paintcan:before {\n content: \"\\eb2a\";\n}\n\n.codicon-pin:before {\n content: \"\\eb2b\";\n}\n\n.codicon-play:before {\n content: \"\\eb2c\";\n}\n\n.codicon-run:before {\n content: \"\\eb2c\";\n}\n\n.codicon-plug:before {\n content: \"\\eb2d\";\n}\n\n.codicon-preserve-case:before {\n content: \"\\eb2e\";\n}\n\n.codicon-preview:before {\n content: \"\\eb2f\";\n}\n\n.codicon-project:before {\n content: \"\\eb30\";\n}\n\n.codicon-pulse:before {\n content: \"\\eb31\";\n}\n\n.codicon-question:before {\n content: \"\\eb32\";\n}\n\n.codicon-quote:before {\n content: \"\\eb33\";\n}\n\n.codicon-radio-tower:before {\n content: \"\\eb34\";\n}\n\n.codicon-reactions:before {\n content: \"\\eb35\";\n}\n\n.codicon-references:before {\n content: \"\\eb36\";\n}\n\n.codicon-refresh:before {\n content: \"\\eb37\";\n}\n\n.codicon-regex:before {\n content: \"\\eb38\";\n}\n\n.codicon-remote-explorer:before {\n content: \"\\eb39\";\n}\n\n.codicon-remote:before {\n content: \"\\eb3a\";\n}\n\n.codicon-remove:before {\n content: \"\\eb3b\";\n}\n\n.codicon-replace-all:before {\n content: \"\\eb3c\";\n}\n\n.codicon-replace:before {\n content: \"\\eb3d\";\n}\n\n.codicon-repo-clone:before {\n content: \"\\eb3e\";\n}\n\n.codicon-repo-force-push:before {\n content: \"\\eb3f\";\n}\n\n.codicon-repo-pull:before {\n content: \"\\eb40\";\n}\n\n.codicon-repo-push:before {\n content: \"\\eb41\";\n}\n\n.codicon-report:before {\n content: \"\\eb42\";\n}\n\n.codicon-request-changes:before {\n content: \"\\eb43\";\n}\n\n.codicon-rocket:before {\n content: \"\\eb44\";\n}\n\n.codicon-root-folder-opened:before {\n content: \"\\eb45\";\n}\n\n.codicon-root-folder:before {\n content: \"\\eb46\";\n}\n\n.codicon-rss:before {\n content: \"\\eb47\";\n}\n\n.codicon-ruby:before {\n content: \"\\eb48\";\n}\n\n.codicon-save-all:before {\n content: \"\\eb49\";\n}\n\n.codicon-save-as:before {\n content: \"\\eb4a\";\n}\n\n.codicon-save:before {\n content: \"\\eb4b\";\n}\n\n.codicon-screen-full:before {\n content: \"\\eb4c\";\n}\n\n.codicon-screen-normal:before {\n content: \"\\eb4d\";\n}\n\n.codicon-search-stop:before {\n content: \"\\eb4e\";\n}\n\n.codicon-server:before {\n content: \"\\eb50\";\n}\n\n.codicon-settings-gear:before {\n content: \"\\eb51\";\n}\n\n.codicon-settings:before {\n content: \"\\eb52\";\n}\n\n.codicon-shield:before {\n content: \"\\eb53\";\n}\n\n.codicon-smiley:before {\n content: \"\\eb54\";\n}\n\n.codicon-sort-precedence:before {\n content: \"\\eb55\";\n}\n\n.codicon-split-horizontal:before {\n content: \"\\eb56\";\n}\n\n.codicon-split-vertical:before {\n content: \"\\eb57\";\n}\n\n.codicon-squirrel:before {\n content: \"\\eb58\";\n}\n\n.codicon-star-full:before {\n content: \"\\eb59\";\n}\n\n.codicon-star-half:before {\n content: \"\\eb5a\";\n}\n\n.codicon-symbol-class:before {\n content: \"\\eb5b\";\n}\n\n.codicon-symbol-color:before {\n content: \"\\eb5c\";\n}\n\n.codicon-symbol-constant:before {\n content: \"\\eb5d\";\n}\n\n.codicon-symbol-enum-member:before {\n content: \"\\eb5e\";\n}\n\n.codicon-symbol-field:before {\n content: \"\\eb5f\";\n}\n\n.codicon-symbol-file:before {\n content: \"\\eb60\";\n}\n\n.codicon-symbol-interface:before {\n content: \"\\eb61\";\n}\n\n.codicon-symbol-keyword:before {\n content: \"\\eb62\";\n}\n\n.codicon-symbol-misc:before {\n content: \"\\eb63\";\n}\n\n.codicon-symbol-operator:before {\n content: \"\\eb64\";\n}\n\n.codicon-symbol-property:before {\n content: \"\\eb65\";\n}\n\n.codicon-wrench:before {\n content: \"\\eb65\";\n}\n\n.codicon-wrench-subaction:before {\n content: \"\\eb65\";\n}\n\n.codicon-symbol-snippet:before {\n content: \"\\eb66\";\n}\n\n.codicon-tasklist:before {\n content: \"\\eb67\";\n}\n\n.codicon-telescope:before {\n content: \"\\eb68\";\n}\n\n.codicon-text-size:before {\n content: \"\\eb69\";\n}\n\n.codicon-three-bars:before {\n content: \"\\eb6a\";\n}\n\n.codicon-thumbsdown:before {\n content: \"\\eb6b\";\n}\n\n.codicon-thumbsup:before {\n content: \"\\eb6c\";\n}\n\n.codicon-tools:before {\n content: \"\\eb6d\";\n}\n\n.codicon-triangle-down:before {\n content: \"\\eb6e\";\n}\n\n.codicon-triangle-left:before {\n content: \"\\eb6f\";\n}\n\n.codicon-triangle-right:before {\n content: \"\\eb70\";\n}\n\n.codicon-triangle-up:before {\n content: \"\\eb71\";\n}\n\n.codicon-twitter:before {\n content: \"\\eb72\";\n}\n\n.codicon-unfold:before {\n content: \"\\eb73\";\n}\n\n.codicon-unlock:before {\n content: \"\\eb74\";\n}\n\n.codicon-unmute:before {\n content: \"\\eb75\";\n}\n\n.codicon-unverified:before {\n content: \"\\eb76\";\n}\n\n.codicon-verified:before {\n content: \"\\eb77\";\n}\n\n.codicon-versions:before {\n content: \"\\eb78\";\n}\n\n.codicon-vm-active:before {\n content: \"\\eb79\";\n}\n\n.codicon-vm-outline:before {\n content: \"\\eb7a\";\n}\n\n.codicon-vm-running:before {\n content: \"\\eb7b\";\n}\n\n.codicon-watch:before {\n content: \"\\eb7c\";\n}\n\n.codicon-whitespace:before {\n content: \"\\eb7d\";\n}\n\n.codicon-whole-word:before {\n content: \"\\eb7e\";\n}\n\n.codicon-window:before {\n content: \"\\eb7f\";\n}\n\n.codicon-word-wrap:before {\n content: \"\\eb80\";\n}\n\n.codicon-zoom-in:before {\n content: \"\\eb81\";\n}\n\n.codicon-zoom-out:before {\n content: \"\\eb82\";\n}\n\n.codicon-list-filter:before {\n content: \"\\eb83\";\n}\n\n.codicon-list-flat:before {\n content: \"\\eb84\";\n}\n\n.codicon-list-selection:before {\n content: \"\\eb85\";\n}\n\n.codicon-selection:before {\n content: \"\\eb85\";\n}\n\n.codicon-list-tree:before {\n content: \"\\eb86\";\n}\n\n.codicon-debug-breakpoint-function-unverified:before {\n content: \"\\eb87\";\n}\n\n.codicon-debug-breakpoint-function:before {\n content: \"\\eb88\";\n}\n\n.codicon-debug-breakpoint-function-disabled:before {\n content: \"\\eb88\";\n}\n\n.codicon-debug-stackframe-active:before {\n content: \"\\eb89\";\n}\n\n.codicon-circle-small-filled:before {\n content: \"\\eb8a\";\n}\n\n.codicon-debug-stackframe-dot:before {\n content: \"\\eb8a\";\n}\n\n.codicon-terminal-decoration-mark:before {\n content: \"\\eb8a\";\n}\n\n.codicon-debug-stackframe:before {\n content: \"\\eb8b\";\n}\n\n.codicon-debug-stackframe-focused:before {\n content: \"\\eb8b\";\n}\n\n.codicon-debug-breakpoint-unsupported:before {\n content: \"\\eb8c\";\n}\n\n.codicon-symbol-string:before {\n content: \"\\eb8d\";\n}\n\n.codicon-debug-reverse-continue:before {\n content: \"\\eb8e\";\n}\n\n.codicon-debug-step-back:before {\n content: \"\\eb8f\";\n}\n\n.codicon-debug-restart-frame:before {\n content: \"\\eb90\";\n}\n\n.codicon-debug-alt:before {\n content: \"\\eb91\";\n}\n\n.codicon-call-incoming:before {\n content: \"\\eb92\";\n}\n\n.codicon-call-outgoing:before {\n content: \"\\eb93\";\n}\n\n.codicon-menu:before {\n content: \"\\eb94\";\n}\n\n.codicon-expand-all:before {\n content: \"\\eb95\";\n}\n\n.codicon-feedback:before {\n content: \"\\eb96\";\n}\n\n.codicon-git-pull-request-reviewer:before {\n content: \"\\eb96\";\n}\n\n.codicon-group-by-ref-type:before {\n content: \"\\eb97\";\n}\n\n.codicon-ungroup-by-ref-type:before {\n content: \"\\eb98\";\n}\n\n.codicon-account:before {\n content: \"\\eb99\";\n}\n\n.codicon-git-pull-request-assignee:before {\n content: \"\\eb99\";\n}\n\n.codicon-bell-dot:before {\n content: \"\\eb9a\";\n}\n\n.codicon-debug-console:before {\n content: \"\\eb9b\";\n}\n\n.codicon-library:before {\n content: \"\\eb9c\";\n}\n\n.codicon-output:before {\n content: \"\\eb9d\";\n}\n\n.codicon-run-all:before {\n content: \"\\eb9e\";\n}\n\n.codicon-sync-ignored:before {\n content: \"\\eb9f\";\n}\n\n.codicon-pinned:before {\n content: \"\\eba0\";\n}\n\n.codicon-github-inverted:before {\n content: \"\\eba1\";\n}\n\n.codicon-server-process:before {\n content: \"\\eba2\";\n}\n\n.codicon-server-environment:before {\n content: \"\\eba3\";\n}\n\n.codicon-pass:before {\n content: \"\\eba4\";\n}\n\n.codicon-issue-closed:before {\n content: \"\\eba4\";\n}\n\n.codicon-stop-circle:before {\n content: \"\\eba5\";\n}\n\n.codicon-play-circle:before {\n content: \"\\eba6\";\n}\n\n.codicon-record:before {\n content: \"\\eba7\";\n}\n\n.codicon-debug-alt-small:before {\n content: \"\\eba8\";\n}\n\n.codicon-vm-connect:before {\n content: \"\\eba9\";\n}\n\n.codicon-cloud:before {\n content: \"\\ebaa\";\n}\n\n.codicon-merge:before {\n content: \"\\ebab\";\n}\n\n.codicon-export:before {\n content: \"\\ebac\";\n}\n\n.codicon-graph-left:before {\n content: \"\\ebad\";\n}\n\n.codicon-magnet:before {\n content: \"\\ebae\";\n}\n\n.codicon-notebook:before {\n content: \"\\ebaf\";\n}\n\n.codicon-redo:before {\n content: \"\\ebb0\";\n}\n\n.codicon-check-all:before {\n content: \"\\ebb1\";\n}\n\n.codicon-pinned-dirty:before {\n content: \"\\ebb2\";\n}\n\n.codicon-pass-filled:before {\n content: \"\\ebb3\";\n}\n\n.codicon-circle-large-filled:before {\n content: \"\\ebb4\";\n}\n\n.codicon-circle-large:before {\n content: \"\\ebb5\";\n}\n\n.codicon-circle-large-outline:before {\n content: \"\\ebb5\";\n}\n\n.codicon-combine:before {\n content: \"\\ebb6\";\n}\n\n.codicon-gather:before {\n content: \"\\ebb6\";\n}\n\n.codicon-table:before {\n content: \"\\ebb7\";\n}\n\n.codicon-variable-group:before {\n content: \"\\ebb8\";\n}\n\n.codicon-type-hierarchy:before {\n content: \"\\ebb9\";\n}\n\n.codicon-type-hierarchy-sub:before {\n content: \"\\ebba\";\n}\n\n.codicon-type-hierarchy-super:before {\n content: \"\\ebbb\";\n}\n\n.codicon-git-pull-request-create:before {\n content: \"\\ebbc\";\n}\n\n.codicon-run-above:before {\n content: \"\\ebbd\";\n}\n\n.codicon-run-below:before {\n content: \"\\ebbe\";\n}\n\n.codicon-notebook-template:before {\n content: \"\\ebbf\";\n}\n\n.codicon-debug-rerun:before {\n content: \"\\ebc0\";\n}\n\n.codicon-workspace-trusted:before {\n content: \"\\ebc1\";\n}\n\n.codicon-workspace-untrusted:before {\n content: \"\\ebc2\";\n}\n\n.codicon-workspace-unknown:before {\n content: \"\\ebc3\";\n}\n\n.codicon-terminal-cmd:before {\n content: \"\\ebc4\";\n}\n\n.codicon-terminal-debian:before {\n content: \"\\ebc5\";\n}\n\n.codicon-terminal-linux:before {\n content: \"\\ebc6\";\n}\n\n.codicon-terminal-powershell:before {\n content: \"\\ebc7\";\n}\n\n.codicon-terminal-tmux:before {\n content: \"\\ebc8\";\n}\n\n.codicon-terminal-ubuntu:before {\n content: \"\\ebc9\";\n}\n\n.codicon-terminal-bash:before {\n content: \"\\ebca\";\n}\n\n.codicon-arrow-swap:before {\n content: \"\\ebcb\";\n}\n\n.codicon-copy:before {\n content: \"\\ebcc\";\n}\n\n.codicon-person-add:before {\n content: \"\\ebcd\";\n}\n\n.codicon-filter-filled:before {\n content: \"\\ebce\";\n}\n\n.codicon-wand:before {\n content: \"\\ebcf\";\n}\n\n.codicon-debug-line-by-line:before {\n content: \"\\ebd0\";\n}\n\n.codicon-inspect:before {\n content: \"\\ebd1\";\n}\n\n.codicon-layers:before {\n content: \"\\ebd2\";\n}\n\n.codicon-layers-dot:before {\n content: \"\\ebd3\";\n}\n\n.codicon-layers-active:before {\n content: \"\\ebd4\";\n}\n\n.codicon-compass:before {\n content: \"\\ebd5\";\n}\n\n.codicon-compass-dot:before {\n content: \"\\ebd6\";\n}\n\n.codicon-compass-active:before {\n content: \"\\ebd7\";\n}\n\n.codicon-azure:before {\n content: \"\\ebd8\";\n}\n\n.codicon-issue-draft:before {\n content: \"\\ebd9\";\n}\n\n.codicon-git-pull-request-closed:before {\n content: \"\\ebda\";\n}\n\n.codicon-git-pull-request-draft:before {\n content: \"\\ebdb\";\n}\n\n.codicon-debug-all:before {\n content: \"\\ebdc\";\n}\n\n.codicon-debug-coverage:before {\n content: \"\\ebdd\";\n}\n\n.codicon-run-errors:before {\n content: \"\\ebde\";\n}\n\n.codicon-folder-library:before {\n content: \"\\ebdf\";\n}\n\n.codicon-debug-continue-small:before {\n content: \"\\ebe0\";\n}\n\n.codicon-beaker-stop:before {\n content: \"\\ebe1\";\n}\n\n.codicon-graph-line:before {\n content: \"\\ebe2\";\n}\n\n.codicon-graph-scatter:before {\n content: \"\\ebe3\";\n}\n\n.codicon-pie-chart:before {\n content: \"\\ebe4\";\n}\n\n.codicon-bracket:before {\n content: \"\\eb0f\";\n}\n\n.codicon-bracket-dot:before {\n content: \"\\ebe5\";\n}\n\n.codicon-bracket-error:before {\n content: \"\\ebe6\";\n}\n\n.codicon-lock-small:before {\n content: \"\\ebe7\";\n}\n\n.codicon-azure-devops:before {\n content: \"\\ebe8\";\n}\n\n.codicon-verified-filled:before {\n content: \"\\ebe9\";\n}\n\n.codicon-newline:before {\n content: \"\\ebea\";\n}\n\n.codicon-layout:before {\n content: \"\\ebeb\";\n}\n\n.codicon-layout-activitybar-left:before {\n content: \"\\ebec\";\n}\n\n.codicon-layout-activitybar-right:before {\n content: \"\\ebed\";\n}\n\n.codicon-layout-panel-left:before {\n content: \"\\ebee\";\n}\n\n.codicon-layout-panel-center:before {\n content: \"\\ebef\";\n}\n\n.codicon-layout-panel-justify:before {\n content: \"\\ebf0\";\n}\n\n.codicon-layout-panel-right:before {\n content: \"\\ebf1\";\n}\n\n.codicon-layout-panel:before {\n content: \"\\ebf2\";\n}\n\n.codicon-layout-sidebar-left:before {\n content: \"\\ebf3\";\n}\n\n.codicon-layout-sidebar-right:before {\n content: \"\\ebf4\";\n}\n\n.codicon-layout-statusbar:before {\n content: \"\\ebf5\";\n}\n\n.codicon-layout-menubar:before {\n content: \"\\ebf6\";\n}\n\n.codicon-layout-centered:before {\n content: \"\\ebf7\";\n}\n\n.codicon-target:before {\n content: \"\\ebf8\";\n}\n\n.codicon-indent:before {\n content: \"\\ebf9\";\n}\n\n.codicon-record-small:before {\n content: \"\\ebfa\";\n}\n\n.codicon-error-small:before {\n content: \"\\ebfb\";\n}\n\n.codicon-terminal-decoration-error:before {\n content: \"\\ebfb\";\n}\n\n.codicon-arrow-circle-down:before {\n content: \"\\ebfc\";\n}\n\n.codicon-arrow-circle-left:before {\n content: \"\\ebfd\";\n}\n\n.codicon-arrow-circle-right:before {\n content: \"\\ebfe\";\n}\n\n.codicon-arrow-circle-up:before {\n content: \"\\ebff\";\n}\n\n.codicon-layout-sidebar-right-off:before {\n content: \"\\ec00\";\n}\n\n.codicon-layout-panel-off:before {\n content: \"\\ec01\";\n}\n\n.codicon-layout-sidebar-left-off:before {\n content: \"\\ec02\";\n}\n\n.codicon-blank:before {\n content: \"\\ec03\";\n}\n\n.codicon-heart-filled:before {\n content: \"\\ec04\";\n}\n\n.codicon-map:before {\n content: \"\\ec05\";\n}\n\n.codicon-map-horizontal:before {\n content: \"\\ec05\";\n}\n\n.codicon-fold-horizontal:before {\n content: \"\\ec05\";\n}\n\n.codicon-map-filled:before {\n content: \"\\ec06\";\n}\n\n.codicon-map-horizontal-filled:before {\n content: \"\\ec06\";\n}\n\n.codicon-fold-horizontal-filled:before {\n content: \"\\ec06\";\n}\n\n.codicon-circle-small:before {\n content: \"\\ec07\";\n}\n\n.codicon-bell-slash:before {\n content: \"\\ec08\";\n}\n\n.codicon-bell-slash-dot:before {\n content: \"\\ec09\";\n}\n\n.codicon-comment-unresolved:before {\n content: \"\\ec0a\";\n}\n\n.codicon-git-pull-request-go-to-changes:before {\n content: \"\\ec0b\";\n}\n\n.codicon-git-pull-request-new-changes:before {\n content: \"\\ec0c\";\n}\n\n.codicon-search-fuzzy:before {\n content: \"\\ec0d\";\n}\n\n.codicon-comment-draft:before {\n content: \"\\ec0e\";\n}\n\n.codicon-send:before {\n content: \"\\ec0f\";\n}\n\n.codicon-sparkle:before {\n content: \"\\ec10\";\n}\n\n.codicon-insert:before {\n content: \"\\ec11\";\n}\n\n.codicon-mic:before {\n content: \"\\ec12\";\n}\n\n.codicon-thumbsdown-filled:before {\n content: \"\\ec13\";\n}\n\n.codicon-thumbsup-filled:before {\n content: \"\\ec14\";\n}\n\n.codicon-coffee:before {\n content: \"\\ec15\";\n}\n\n.codicon-snake:before {\n content: \"\\ec16\";\n}\n\n.codicon-game:before {\n content: \"\\ec17\";\n}\n\n.codicon-vr:before {\n content: \"\\ec18\";\n}\n\n.codicon-chip:before {\n content: \"\\ec19\";\n}\n\n.codicon-piano:before {\n content: \"\\ec1a\";\n}\n\n.codicon-music:before {\n content: \"\\ec1b\";\n}\n\n.codicon-mic-filled:before {\n content: \"\\ec1c\";\n}\n\n.codicon-repo-fetch:before {\n content: \"\\ec1d\";\n}\n\n.codicon-copilot:before {\n content: \"\\ec1e\";\n}\n\n.codicon-lightbulb-sparkle:before {\n content: \"\\ec1f\";\n}\n\n.codicon-robot:before {\n content: \"\\ec20\";\n}\n\n.codicon-sparkle-filled:before {\n content: \"\\ec21\";\n}\n\n.codicon-diff-single:before {\n content: \"\\ec22\";\n}\n\n.codicon-diff-multiple:before {\n content: \"\\ec23\";\n}\n\n.codicon-surround-with:before {\n content: \"\\ec24\";\n}\n\n.codicon-share:before {\n content: \"\\ec25\";\n}\n\n.codicon-git-stash:before {\n content: \"\\ec26\";\n}\n\n.codicon-git-stash-apply:before {\n content: \"\\ec27\";\n}\n\n.codicon-git-stash-pop:before {\n content: \"\\ec28\";\n}\n\n.codicon-vscode:before {\n content: \"\\ec29\";\n}\n\n.codicon-vscode-insiders:before {\n content: \"\\ec2a\";\n}\n\n.codicon-code-oss:before {\n content: \"\\ec2b\";\n}\n\n.codicon-run-coverage:before {\n content: \"\\ec2c\";\n}\n\n.codicon-run-all-coverage:before {\n content: \"\\ec2d\";\n}\n\n.codicon-coverage:before {\n content: \"\\ec2e\";\n}\n\n.codicon-github-project:before {\n content: \"\\ec2f\";\n}\n\n.codicon-map-vertical:before {\n content: \"\\ec30\";\n}\n\n.codicon-fold-vertical:before {\n content: \"\\ec30\";\n}\n\n.codicon-map-vertical-filled:before {\n content: \"\\ec31\";\n}\n\n.codicon-fold-vertical-filled:before {\n content: \"\\ec31\";\n}\n\n.codicon-go-to-search:before {\n content: \"\\ec32\";\n}\n\n.codicon-percentage:before {\n content: \"\\ec33\";\n}\n\n.codicon-sort-percentage:before {\n content: \"\\ec33\";\n}\n\n.codicon-attach:before {\n content: \"\\ec34\";\n}\n\n.codicon-go-to-editing-session:before {\n content: \"\\ec35\";\n}\n\n.codicon-edit-session:before {\n content: \"\\ec36\";\n}\n\n.codicon-code-review:before {\n content: \"\\ec37\";\n}\n\n.codicon-copilot-warning:before {\n content: \"\\ec38\";\n}\n\n.codicon-python:before {\n content: \"\\ec39\";\n}\n\n.codicon-git-fetch:before {\n content: \"\\f101\";\n}\n\n@layer kol-component {\n /* :host implicitly inherits font-size, see below */\n :host {\n color: inherit;\n display: contents;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n /* this rules overwrites the fixed font size from codicon */\n :host > i,\n :host > i::before {\n font-size: inherit !important;\n }\n}";
20833
+ const defaultStyleCss$y = "/* forward the rem function */\n@font-face {\n font-family: \"kolicons\";\n src: url(\"kolicons.eot?t=1766164320249\"); /* IE9*/\n src: url(\"kolicons.eot?t=1766164320249#iefix\") format(\"embedded-opentype\"), url(\"kolicons.woff2?t=1766164320249\") format(\"woff2\"), url(\"kolicons.woff?t=1766164320249\") format(\"woff\"), url(\"kolicons.ttf?t=1766164320249\") format(\"truetype\"), url(\"kolicons.svg?t=1766164320249#kolicons\") format(\"svg\"); /* iOS 4.1- */\n}\n[class^=kolicon-], [class*=\" kolicon-\"] {\n font-family: \"kolicons\" !important;\n font-size: 16px;\n font-style: normal;\n line-height: 1em;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n.kolicon-alert-error::before {\n content: \"\\ea01\";\n}\n\n.kolicon-alert-info::before {\n content: \"\\ea02\";\n}\n\n.kolicon-alert-success::before {\n content: \"\\ea03\";\n}\n\n.kolicon-alert-warning::before {\n content: \"\\ea04\";\n}\n\n.kolicon-check::before {\n content: \"\\ea05\";\n}\n\n.kolicon-chevron-double-left::before {\n content: \"\\ea06\";\n}\n\n.kolicon-chevron-double-right::before {\n content: \"\\ea07\";\n}\n\n.kolicon-chevron-down::before {\n content: \"\\ea08\";\n}\n\n.kolicon-chevron-left::before {\n content: \"\\ea09\";\n}\n\n.kolicon-chevron-right::before {\n content: \"\\ea0a\";\n}\n\n.kolicon-chevron-up::before {\n content: \"\\ea0b\";\n}\n\n.kolicon-cogwheel::before {\n content: \"\\ea0c\";\n}\n\n.kolicon-cross::before {\n content: \"\\ea0d\";\n}\n\n.kolicon-eye-closed::before {\n content: \"\\ea0e\";\n}\n\n.kolicon-eye::before {\n content: \"\\ea0f\";\n}\n\n.kolicon-kolibri::before {\n content: \"\\ea10\";\n}\n\n.kolicon-link-external::before {\n content: \"\\ea11\";\n}\n\n.kolicon-link::before {\n content: \"\\ea12\";\n}\n\n.kolicon-minus::before {\n content: \"\\ea13\";\n}\n\n.kolicon-plus::before {\n content: \"\\ea14\";\n}\n\n.kolicon-settings::before {\n content: \"\\ea15\";\n}\n\n.kolicon-sort-asc::before {\n content: \"\\ea16\";\n}\n\n.kolicon-sort-desc::before {\n content: \"\\ea17\";\n}\n\n.kolicon-sort-neutral::before {\n content: \"\\ea18\";\n}\n\n.kolicon-version::before {\n content: \"\\ea19\";\n}\n\n@layer kol-component {\n /* :host implicitly inherits font-size, see below */\n :host {\n color: inherit;\n display: contents;\n font-size: inherit;\n font-weight: inherit;\n line-height: inherit;\n }\n}";
20841
20834
 
20842
20835
  class KolIcon {
20843
20836
  render() {
@@ -20847,7 +20840,7 @@ class KolIcon {
20847
20840
  constructor(hostRef) {
20848
20841
  registerInstance(this, hostRef);
20849
20842
  this.state = {
20850
- _icons: 'codicon codicon-home',
20843
+ _icons: 'kolicon-logo',
20851
20844
  _label: '',
20852
20845
  };
20853
20846
  this.controller = new IconController(this);
@@ -21095,10 +21088,7 @@ const InputWrapperFc$1 = (_a) => {
21095
21088
  return hAsync(InputFc, Object.assign({ class: clsx('kol-checkbox__input', classNames) }, other, { type: "checkbox" }));
21096
21089
  };
21097
21090
  const CheckboxFc = (_a) => {
21098
- var _b;
21099
21091
  var { class: classNames, variant = 'default', icon, inputProps } = _a, other = __rest(_a, ["class", "variant", "icon", "inputProps"]);
21100
- const showMsg = checkHasMsg(inputProps === null || inputProps === void 0 ? void 0 : inputProps.msg, inputProps === null || inputProps === void 0 ? void 0 : inputProps.touched);
21101
- const msgType = typeof (inputProps === null || inputProps === void 0 ? void 0 : inputProps.msg) === 'string' ? 'error' : (_b = inputProps === null || inputProps === void 0 ? void 0 : inputProps.msg) === null || _b === void 0 ? void 0 : _b._type;
21102
21092
  const cssVariants = {
21103
21093
  [`kol-checkbox--variant-${variant}`]: true,
21104
21094
  [`kol-checkbox--checked`]: inputProps === null || inputProps === void 0 ? void 0 : inputProps.checked,
@@ -21106,7 +21096,7 @@ const CheckboxFc = (_a) => {
21106
21096
  ['kol-checkbox--disabled']: Boolean(inputProps === null || inputProps === void 0 ? void 0 : inputProps.disabled),
21107
21097
  ['kol-checkbox--required']: Boolean(inputProps === null || inputProps === void 0 ? void 0 : inputProps.required),
21108
21098
  ['kol-checkbox--touched']: Boolean(inputProps === null || inputProps === void 0 ? void 0 : inputProps.touched),
21109
- [`kol-checkbox--${msgType || 'error'}`]: Boolean(showMsg),
21099
+ [`kol-checkbox--${getMsgType(inputProps === null || inputProps === void 0 ? void 0 : inputProps.msg)}`]: Boolean(isMsgDefinedAndInputTouched(inputProps === null || inputProps === void 0 ? void 0 : inputProps.msg, inputProps === null || inputProps === void 0 ? void 0 : inputProps.touched)),
21110
21100
  };
21111
21101
  return (hAsync("label", Object.assign({ class: clsx('kol-checkbox', cssVariants, classNames) }, other), hAsync(IconWrapperFc, { label: "", icons: icon }), hAsync(InputWrapperFc$1, Object.assign({}, inputProps))));
21112
21102
  };
@@ -21151,11 +21141,9 @@ const KolFieldControlFc = (props, children) => {
21151
21141
  const { class: classNames, id, disabled, label, hideLabel, labelAlign, renderNoTooltip, hint, renderNoHint, tooltipAlign, accessKey, shortKey, msg, touched, required, readonly, fieldControlInputProps, fieldControlLabelProps, fieldControlTooltipProps, fieldControlHintProps } = props, other = __rest(props, ["class", "id", "disabled", "label", "hideLabel", "labelAlign", "renderNoTooltip", "hint", "renderNoHint", "tooltipAlign", "accessKey", "shortKey", "msg", "touched", "required", "readonly", "fieldControlInputProps", "fieldControlLabelProps", "fieldControlTooltipProps", "fieldControlHintProps"]);
21152
21142
  const canShowHint = !renderNoHint;
21153
21143
  const canShowTooltip = !renderNoTooltip;
21154
- const showMsg = checkHasMsg(msg, touched);
21155
21144
  const hasExpertSlot = showExpertSlot(label);
21156
21145
  const useTooltipInsteadOfLabel = canShowTooltip && !hasExpertSlot && hideLabel;
21157
21146
  const badgeText = buildBadgeTextString(accessKey, shortKey);
21158
- const msgType = typeof msg === 'string' ? 'error' : msg === null || msg === void 0 ? void 0 : msg._type;
21159
21147
  const components = [
21160
21148
  hAsync(Fragment, null, hAsync(InputContainer, Object.assign({}, fieldControlInputProps), children), useTooltipInsteadOfLabel && (hAsync(FormFieldTooltipFc, Object.assign({}, (fieldControlTooltipProps || {}), { id: id, label: label, align: tooltipAlign, badgeText: badgeText })))),
21161
21149
  hAsync(KolFormFieldLabelFc, Object.assign({}, (fieldControlLabelProps || {}), { id: id, baseClassName: "kol-field-control", class: clsx(fieldControlLabelProps === null || fieldControlLabelProps === void 0 ? void 0 : fieldControlLabelProps.class, {
@@ -21171,7 +21159,7 @@ const KolFieldControlFc = (props, children) => {
21171
21159
  ['kol-field-control--touched']: Boolean(touched),
21172
21160
  ['kol-field-control--hide-label']: Boolean(hideLabel),
21173
21161
  ['kol-field-control--read-only']: Boolean(readonly),
21174
- [`kol-field-control--${msgType || 'error'}`]: Boolean(showMsg),
21162
+ [`kol-field-control--${getMsgType(msg)}`]: Boolean(isMsgDefinedAndInputTouched(msg, touched)),
21175
21163
  [`kol-field-control--label-align-${labelAlign}`]: Boolean(labelAlign),
21176
21164
  };
21177
21165
  return (hAsync("div", Object.assign({ class: clsx('kol-field-control', stateCssClasses, classNames) }, other), components, canShowHint && hAsync(KolFormFieldHintFc, Object.assign({}, (fieldControlHintProps || {}), { baseClassName: "kol-field-control", id: id, hint: hint }))));
@@ -21291,9 +21279,9 @@ class KolInputCheckbox {
21291
21279
  _checked: false,
21292
21280
  _hideMsg: false,
21293
21281
  _icons: {
21294
- checked: 'codicon codicon-check',
21295
- indeterminate: 'codicon codicon-remove',
21296
- unchecked: 'codicon codicon-close',
21282
+ checked: 'kolicon-check',
21283
+ indeterminate: 'kolicon-minus',
21284
+ unchecked: 'kolicon-cross',
21297
21285
  },
21298
21286
  _id: `id-${nonce()}`,
21299
21287
  _indeterminate: false,
@@ -22821,7 +22809,7 @@ class KolInputNumber {
22821
22809
  var _a, _b;
22822
22810
  (_a = this.inputRef) === null || _a === void 0 ? void 0 : _a.stepUp();
22823
22811
  (_b = this.inputRef) === null || _b === void 0 ? void 0 : _b.focus();
22824
- }, disabled: this._disabled || this._readOnly }, hAsync(KolIconFc, { icons: "codicon codicon-add", label: "" })));
22812
+ }, disabled: this._disabled || this._readOnly }, hAsync(KolIconFc, { icons: "kolicon-plus", label: "" })));
22825
22813
  }
22826
22814
  getStepDownButton() {
22827
22815
  if (this._disabled || this._readOnly) {
@@ -22831,10 +22819,10 @@ class KolInputNumber {
22831
22819
  var _a, _b;
22832
22820
  (_a = this.inputRef) === null || _a === void 0 ? void 0 : _a.stepDown();
22833
22821
  (_b = this.inputRef) === null || _b === void 0 ? void 0 : _b.focus();
22834
- }, disabled: this._disabled || this._readOnly }, hAsync(KolIconFc, { icons: "codicon codicon-remove", label: "" })));
22822
+ }, disabled: this._disabled || this._readOnly }, hAsync(KolIconFc, { icons: "kolicon-minus", label: "" })));
22835
22823
  }
22836
22824
  render() {
22837
- return (hAsync(FormFieldStateWrapper, Object.assign({ key: 'a600b5e7ccab87cb6362dc4db6d21d7220972ca0' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: 'a69b42408a64c824c32d4eefe290371d45a8194b', state: this.state, startAdornment: this.getStepDownButton(), endAdornment: this.getStepUpButton() }, hAsync(InputStateWrapper, Object.assign({ key: '749427a8263cb8728ee55e61c9b24fa6a1528919' }, this.getInputProps())))));
22825
+ return (hAsync(FormFieldStateWrapper, Object.assign({ key: '5f0d128e212d3ede3397495ea8cc1ad6bb441f84' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: 'ad9daef992fd757c586bdcc59288a7363700174e', state: this.state, startAdornment: this.getStepDownButton(), endAdornment: this.getStepUpButton() }, hAsync(InputStateWrapper, Object.assign({ key: '7322750ad2dfeecfc094d30a8a2447dea10921fd' }, this.getInputProps())))));
22838
22826
  }
22839
22827
  constructor(hostRef) {
22840
22828
  registerInstance(this, hostRef);
@@ -23078,10 +23066,10 @@ class KolInputPassword {
23078
23066
  var _a;
23079
23067
  this._passwordVisible = !this._passwordVisible;
23080
23068
  (_a = this.inputRef) === null || _a === void 0 ? void 0 : _a.focus();
23081
- }, icon: `codicon codicon-eye-${this._passwordVisible ? 'closed' : 'watch'}`, disabled: this._disabled }));
23069
+ }, icon: `${this._passwordVisible ? 'kolicon-eye-closed' : 'kolicon-eye'}`, disabled: this._disabled }));
23082
23070
  }
23083
23071
  render() {
23084
- return (hAsync(FormFieldStateWrapper, Object.assign({ key: '20803f39ce7c575e6f4fe341e8be9cf7cce43288' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: 'a74adf9d03c50218965183a42ebf38a92b451e1f', state: this.state, endAdornment: this.getShowPasswordButton() }, hAsync(InputStateWrapper, Object.assign({ key: 'b364562f0b6834c37643a567ecdfc3a66aee3f48' }, this.getInputProps())))));
23072
+ return (hAsync(FormFieldStateWrapper, Object.assign({ key: '662b4bc9868aa679d5322077cb8eed553b9a0f51' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: 'be51e0c5f87dd121c05f51ddbebf01300dde6c41', state: this.state, endAdornment: this.getShowPasswordButton() }, hAsync(InputStateWrapper, Object.assign({ key: '40b62b665a645f2f931d8f0b8ee353675465bd38' }, this.getInputProps())))));
23085
23073
  }
23086
23074
  constructor(hostRef) {
23087
23075
  registerInstance(this, hostRef);
@@ -23291,16 +23279,13 @@ const InputWrapperFc = (_a) => {
23291
23279
  return hAsync(InputFc, Object.assign({ class: clsx('kol-input-radio__input', classNames) }, other, { type: "radio" }));
23292
23280
  };
23293
23281
  const RadioFc = (_a) => {
23294
- var _b;
23295
23282
  var { class: classNames, inputProps } = _a, other = __rest(_a, ["class", "inputProps"]);
23296
- const showMsg = checkHasMsg(inputProps === null || inputProps === void 0 ? void 0 : inputProps.msg, inputProps === null || inputProps === void 0 ? void 0 : inputProps.touched);
23297
- const msgType = typeof (inputProps === null || inputProps === void 0 ? void 0 : inputProps.msg) === 'string' ? 'error' : (_b = inputProps === null || inputProps === void 0 ? void 0 : inputProps.msg) === null || _b === void 0 ? void 0 : _b._type;
23298
23283
  const cssVariants = {
23299
23284
  ['kol-input-radio--checked']: inputProps === null || inputProps === void 0 ? void 0 : inputProps.checked,
23300
23285
  ['kol-input-radio--disabled']: Boolean(inputProps === null || inputProps === void 0 ? void 0 : inputProps.disabled),
23301
23286
  ['kol-input-radio--required']: Boolean(inputProps === null || inputProps === void 0 ? void 0 : inputProps.required),
23302
23287
  ['kol-input-radio--touched']: Boolean(inputProps === null || inputProps === void 0 ? void 0 : inputProps.touched),
23303
- [`kol-input-radio--${msgType || 'error'}`]: Boolean(showMsg),
23288
+ [`kol-input-radio--${getMsgType(inputProps === null || inputProps === void 0 ? void 0 : inputProps.msg)}`]: Boolean(isMsgDefinedAndInputTouched(inputProps === null || inputProps === void 0 ? void 0 : inputProps.msg, inputProps === null || inputProps === void 0 ? void 0 : inputProps.touched)),
23304
23289
  };
23305
23290
  return (hAsync("label", Object.assign({ class: clsx('kol-input-radio', cssVariants, classNames) }, other), hAsync(InputWrapperFc, Object.assign({}, inputProps))));
23306
23291
  };
@@ -23335,7 +23320,23 @@ class KolInputRadio {
23335
23320
  }
23336
23321
  async kolFocus() {
23337
23322
  var _a;
23338
- (_a = this.inputRef) === null || _a === void 0 ? void 0 : _a.focus();
23323
+ (_a = this.getFocusableInput()) === null || _a === void 0 ? void 0 : _a.focus();
23324
+ }
23325
+ getFocusableInput() {
23326
+ const options = this.state._options;
23327
+ const isComponentDisabled = Boolean(this.state._disabled);
23328
+ const selectedIndex = options.findIndex((option) => option.value === this.state._value && !isComponentDisabled && !option.disabled);
23329
+ if (selectedIndex !== -1) {
23330
+ const input = this.inputRefs.get(selectedIndex);
23331
+ if (input) {
23332
+ return input;
23333
+ }
23334
+ }
23335
+ const firstEnabledIndex = options.findIndex((option) => !isComponentDisabled && !option.disabled);
23336
+ if (firstEnabledIndex !== -1) {
23337
+ return this.inputRefs.get(firstEnabledIndex);
23338
+ }
23339
+ return undefined;
23339
23340
  }
23340
23341
  getFormFieldProps() {
23341
23342
  return {
@@ -23356,7 +23357,7 @@ class KolInputRadio {
23356
23357
  };
23357
23358
  }
23358
23359
  render() {
23359
- return (hAsync(FormFieldStateWrapper, Object.assign({ key: '9dc7e4569627db33b82ae9ec448e30087d87ab6f' }, this.getFormFieldProps()), this.state._options.map((option, index) => this.renderOption(option, index))));
23360
+ return (hAsync(FormFieldStateWrapper, Object.assign({ key: '9e2b42643b7eec87fcef68c4e8bf471e67738689' }, this.getFormFieldProps()), this.state._options.map((option, index) => this.renderOption(option, index))));
23360
23361
  }
23361
23362
  calculateDisabled(option) {
23362
23363
  return Boolean(this.state._disabled) || Boolean(option.disabled);
@@ -23377,7 +23378,12 @@ class KolInputRadio {
23377
23378
  getInputProps(option, id, index, selected) {
23378
23379
  return {
23379
23380
  state: this.state,
23380
- inputProps: Object.assign(Object.assign({ id: id, ref: this.state._value === option.value ? this.catchRef : undefined, 'aria-label': this.state._hideLabel && typeof option.label === 'string' ? option.label : undefined, type: 'radio', name: this.state._name || this.state._id, value: `-${index}`, checked: selected, disabled: this.calculateDisabled(option) }, this.controller.onFacade), { onChange: this.onChange, onClick: undefined, onInput: this.onInput, onKeyDown: this.onKeyDown.bind(this), onFocus: (event) => {
23381
+ inputProps: Object.assign(Object.assign({ id: id, ref: (ref) => {
23382
+ this.catchInputRef(index)(ref);
23383
+ if (selected) {
23384
+ this.catchRef(ref);
23385
+ }
23386
+ }, 'aria-label': this.state._hideLabel && typeof option.label === 'string' ? option.label : undefined, type: 'radio', name: this.state._name || this.state._id, value: `-${index}`, checked: selected, disabled: this.calculateDisabled(option) }, this.controller.onFacade), { onChange: this.onChange, onClick: undefined, onInput: this.onInput, onKeyDown: this.onKeyDown.bind(this), onFocus: (event) => {
23381
23387
  this.controller.onFacade.onFocus(event);
23382
23388
  this.inputHasFocus = true;
23383
23389
  }, onBlur: (event) => {
@@ -23393,9 +23399,18 @@ class KolInputRadio {
23393
23399
  }
23394
23400
  constructor(hostRef) {
23395
23401
  registerInstance(this, hostRef);
23402
+ this.inputRefs = new Map();
23396
23403
  this.catchRef = (ref) => {
23397
23404
  this.inputRef = ref;
23398
23405
  };
23406
+ this.catchInputRef = (index) => (ref) => {
23407
+ if (ref) {
23408
+ this.inputRefs.set(index, ref);
23409
+ }
23410
+ else {
23411
+ this.inputRefs.delete(index);
23412
+ }
23413
+ };
23399
23414
  this._disabled = false;
23400
23415
  this._hideMsg = false;
23401
23416
  this._hideLabel = false;
@@ -24391,7 +24406,7 @@ class KolLinkWc {
24391
24406
  'kol-link--inline': this.state._inline === true,
24392
24407
  'kol-link--standalone': this.state._inline === false,
24393
24408
  [this.state._customClass]: this.state._buttonVariant === 'custom' && typeof this.state._customClass === 'string' && this.state._customClass.length > 0,
24394
- }) }, this.state._on, { onClick: this.onClick, onKeyPress: this.onClick, role: this.state._role, tabIndex: this.state._disabled ? -1 : this.state._tabIndex }), hAsync(KolSpanFc, { key: '5c7d16010d9be97330357727cd077a5938d34e7f', class: "kol-link__text", badgeText: this.state._accessKey || this.state._shortKey, icons: this.state._icons, hideLabel: this.state._hideLabel, label: hasExpertSlot ? '' : this.state._label || this.state._href }, hAsync("slot", { key: 'b01d5620e864c978c8e87b5601b8736334af2959', name: "expert", slot: "expert" })), isExternal && (hAsync(KolIconTag, { key: '4a817ada365a0c78003c921049be05705dd532ea', class: "kol-link__icon", _label: this.state._hideLabel ? '' : this.translateOpenLinkInTab, _icons: 'codicon codicon-link-external', "aria-hidden": this.state._hideLabel }))), this.state._hideLabel === true && (hAsync(KolTooltipWcTag, { key: '509f958cb96c22e1f037c9c82bd74ef4e89e0b3d', "aria-hidden": "true", class: "kol-link__tooltip", ref: (ref) => (this.tooltipRef = ref), hidden: hasExpertSlot, _badgeText: this.state._accessKey || this.state._shortKey, _align: this.state._tooltipAlign, _label: this.state._label || this.state._href }))));
24409
+ }) }, this.state._on, { onClick: this.onClick, onKeyPress: this.onClick, role: this.state._role, tabIndex: this.state._disabled ? -1 : this.state._tabIndex }), hAsync(KolSpanFc, { key: '5c7d16010d9be97330357727cd077a5938d34e7f', class: "kol-link__text", badgeText: this.state._accessKey || this.state._shortKey, icons: this.state._icons, hideLabel: this.state._hideLabel, label: hasExpertSlot ? '' : this.state._label || this.state._href }, hAsync("slot", { key: 'b01d5620e864c978c8e87b5601b8736334af2959', name: "expert", slot: "expert" })), isExternal && (hAsync(KolIconTag, { key: '7234195fde7663f54e8414f81fa64003bdd53eed', class: "kol-link__icon", _label: this.state._hideLabel ? '' : this.translateOpenLinkInTab, _icons: 'kolicon-link-external', "aria-hidden": this.state._hideLabel }))), this.state._hideLabel === true && (hAsync(KolTooltipWcTag, { key: '36018a0a2f0430efcb0a3a446535a1702dadf53e', "aria-hidden": "true", class: "kol-link__tooltip", ref: (ref) => (this.tooltipRef = ref), hidden: hasExpertSlot, _badgeText: this.state._accessKey || this.state._shortKey, _align: this.state._tooltipAlign, _label: this.state._label || this.state._href }))));
24395
24410
  }
24396
24411
  validateAccessKey(value) {
24397
24412
  validateAccessKey(this, value);
@@ -24683,7 +24698,7 @@ class KolNav {
24683
24698
  'kol-nav__list--nested': props.deep > 0,
24684
24699
  'kol-nav__list--vertical': props.deep !== 0,
24685
24700
  }), id: props.deep > 0 ? props.id : undefined }, props.links.map((link, index) => {
24686
- return this.li(props.collapsible, props.hideLabel, props.deep, index, link, props.id);
24701
+ return this.li(props.collapsible, props.deep, index, link, props.id);
24687
24702
  })));
24688
24703
  };
24689
24704
  this._collapsible = true;
@@ -24706,19 +24721,40 @@ class KolNav {
24706
24721
  collapseChildren(children) {
24707
24722
  this.state = Object.assign(Object.assign({}, this.state), { _expandedChildren: this.state._expandedChildren.filter((searchChildren) => searchChildren !== children) });
24708
24723
  }
24709
- entry(collapsible, hideLabel, hasChildren, entry, expanded, ariaID) {
24710
- var _a;
24711
- const icons = {
24712
- left: this.state._hasIconsWhenExpanded || this.state._hideLabel
24713
- ? ((_a = entry._icons) === null || _a === void 0 ? void 0 : _a.toString()) || (this.state._hideLabel ? 'codicon codicon-symbol-method' : undefined)
24714
- : undefined,
24715
- right: collapsible && hasChildren ? 'codicon codicon-' + (expanded ? 'remove' : 'add') : undefined,
24724
+ buildIconObject(collapsible, expanded, leftIcon) {
24725
+ const icon = {
24726
+ left: '',
24727
+ right: '',
24716
24728
  };
24729
+ if (this.state._hasIconsWhenExpanded && leftIcon) {
24730
+ icon.left = leftIcon;
24731
+ }
24732
+ if (this.state._hideLabel) {
24733
+ if (leftIcon) {
24734
+ icon.left = leftIcon;
24735
+ }
24736
+ else {
24737
+ icon.left = 'kolicon-link';
24738
+ }
24739
+ }
24740
+ if (collapsible) {
24741
+ if (expanded) {
24742
+ icon.right = 'kolicon-minus';
24743
+ }
24744
+ else {
24745
+ icon.right = 'kolicon-plus';
24746
+ }
24747
+ }
24748
+ return icon;
24749
+ }
24750
+ entry(collapsible, hasChildren, entry, expanded, ariaID) {
24751
+ var _a;
24752
+ const icons = this.buildIconObject(collapsible && hasChildren, expanded, (_a = entry._icons) === null || _a === void 0 ? void 0 : _a.toString());
24717
24753
  return (hAsync("div", { class: "kol-nav__entry-wrapper" }, entryIsLink(entry) ? (hAsync(KolLinkWcTag, Object.assign({ class: clsx('kol-nav__entry kol-nav__entry--link', {
24718
24754
  'kol-nav__entry--collapsible': collapsible,
24719
- }) }, entry, { _hideLabel: hideLabel, _icons: icons, _ariaControls: collapsible && hasChildren && expanded ? ariaID : undefined, _ariaExpanded: collapsible && hasChildren ? expanded : undefined }))) : (hAsync(KolButtonWcTag, { class: clsx('kol-nav__entry kol-nav__entry--button', {
24755
+ }) }, entry, { _hideLabel: this.state._hideLabel, _icons: icons, _ariaControls: collapsible && hasChildren && expanded ? ariaID : undefined, _ariaExpanded: collapsible && hasChildren ? expanded : undefined }))) : (hAsync(KolButtonWcTag, { class: clsx('kol-nav__entry kol-nav__entry--button', {
24720
24756
  'kol-nav__entry--collapsible': collapsible,
24721
- }), _label: entry._label, _hideLabel: hideLabel, _icons: icons, _ariaControls: collapsible && hasChildren && expanded ? ariaID : undefined, _ariaExpanded: collapsible && hasChildren ? expanded : undefined, _on: {
24757
+ }), _label: entry._label, _hideLabel: this.state._hideLabel, _icons: icons, _ariaControls: collapsible && hasChildren && expanded ? ariaID : undefined, _ariaExpanded: collapsible && hasChildren ? expanded : undefined, _on: {
24722
24758
  onClick: (event, value) => {
24723
24759
  if (entryIsButton(entry) && typeof entry._on.onClick === 'function') {
24724
24760
  entry._on.onClick(event, value);
@@ -24727,7 +24763,7 @@ class KolNav {
24727
24763
  },
24728
24764
  } }))));
24729
24765
  }
24730
- li(collapsible, hideLabel, deep, index, link, ariaIDparent) {
24766
+ li(collapsible, deep, index, link, ariaIDparent) {
24731
24767
  const active = !!link._active;
24732
24768
  const hasChildren = Array.isArray(link._children) && link._children.length > 0;
24733
24769
  const expanded = Boolean(link._children && this.state._expandedChildren.includes(link._children));
@@ -24736,7 +24772,7 @@ class KolNav {
24736
24772
  'kol-nav__list-item--active': active,
24737
24773
  'kol-nav__list-item--expanded': expanded,
24738
24774
  'kol-nav__list-item--has-children': hasChildren,
24739
- }), key: index }, this.entry(collapsible, hideLabel, hasChildren, link, expanded, ariaID), expanded && hAsync(this.linkList, { collapsible: collapsible, hideLabel: hideLabel, deep: deep + 1, links: link._children || [], id: ariaID })));
24775
+ }), key: index }, this.entry(collapsible, hasChildren, link, expanded, ariaID), expanded && hAsync(this.linkList, { collapsible: collapsible, deep: deep + 1, links: link._children || [], id: ariaID })));
24740
24776
  }
24741
24777
  initializeExpandedChildren() {
24742
24778
  this.state = Object.assign(Object.assign({}, this.state), { _expandedChildren: [] });
@@ -24761,12 +24797,11 @@ class KolNav {
24761
24797
  }
24762
24798
  render() {
24763
24799
  const collapsible = this.state._collapsible === true;
24764
- const hideLabel = this.state._hideLabel === true;
24765
- return (hAsync("div", { key: '39f07d530b46e738987032cebed99c3c90039376', class: clsx('kol-nav', `kol-nav--vertical`, {
24800
+ return (hAsync("div", { key: '3094796612244694281480b72ad8169c208158b5', class: clsx('kol-nav', {
24766
24801
  'kol-nav--is-compact': this.state._hideLabel,
24767
- }) }, hAsync("nav", { key: 'f5d049bf025a94a4db0441e663ced4a7baeb1614', "aria-label": this.state._label, class: "kol-nav__navigation", id: this.navId }, hAsync(this.linkList, { key: '4811ac08ae470909f233b57ed439edd3dc9bf514', collapsible: collapsible, hideLabel: hideLabel, deep: 0, links: this.state._links, id: this.listId })), this.state._hasCompactButton && (hAsync("div", { key: 'bdb25a6cc82d6b5cbf17818888ba374561b443a3', class: "kol-nav__compact" }, hAsync(KolButtonWcTag, { key: 'ff15ae0475f7f799e4001663f1b01fb64addfb75', class: "kol-nav__toggle-button", _ariaControls: this.navId, _ariaExpanded: !hideLabel, _icons: hideLabel ? 'codicon codicon-chevron-right' : 'codicon codicon-chevron-left', _hideLabel: true, _label: translate(hideLabel ? 'kol-nav-maximize' : 'kol-nav-minimize'), _on: {
24802
+ }) }, hAsync("nav", { key: '98435d30dc41d04a8ab81c2a25342700546b669f', "aria-label": this.state._label, class: "kol-nav__navigation", id: this.navId }, hAsync(this.linkList, { key: '52e6239d306f90b563b11987b04eefd2cd284145', collapsible: collapsible, deep: 0, links: this.state._links, id: this.listId })), this.state._hasCompactButton && (hAsync("div", { key: '9a604d1b374dd180ff4ab2c372d0b44c2057f04d', class: "kol-nav__compact" }, hAsync(KolButtonWcTag, { key: '6663501a9b18e34eb7d53aec2cc231a656ac5c10', class: "kol-nav__toggle-button", _ariaControls: this.navId, _ariaExpanded: !this.state._hideLabel, _icons: this.state._hideLabel ? 'kolicon-chevron-right' : 'kolicon-chevron-left', _hideLabel: true, _label: translate(this.state._hideLabel ? 'kol-nav-maximize' : 'kol-nav-minimize'), _on: {
24768
24803
  onClick: () => {
24769
- this.state = Object.assign(Object.assign({}, this.state), { _hideLabel: this.state._hideLabel === false });
24804
+ this.state = Object.assign(Object.assign({}, this.state), { _hideLabel: !this.state._hideLabel });
24770
24805
  },
24771
24806
  }, _tooltipAlign: "right" })))));
24772
24807
  }
@@ -24838,7 +24873,7 @@ class KolNav {
24838
24873
  }; }
24839
24874
  }
24840
24875
 
24841
- const defaultStyleCss$h = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44 * 1rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n color: black;\n background-color: white;\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 * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\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 * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: 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 text color from his parent element.\n */\n color: inherit;\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 * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\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 position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\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 width: 100%;\n margin: 0;\n padding: 0;\n border: none;\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 color: black;\n background-color: lightgray;\n }\n}\n@layer kol-global {\n :host {\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 font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\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: flex;\n flex-flow: column;\n align-items: center;\n justify-content: 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 align-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 opacity: 0.5;\n outline: none;\n cursor: not-allowed;\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 opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: #000;\n background-color: #fff;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: #000;\n background-color: #fff;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n .kol-pagination {\n display: grid;\n gap: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n align-items: center;\n grid-template-columns: 1fr auto;\n }\n .kol-pagination__navigation-list {\n display: inline-flex;\n margin: 0;\n padding: 0;\n gap: 0.5em;\n flex-wrap: wrap;\n align-items: center;\n list-style: none;\n }\n .kol-pagination__separator:before {\n content: \"•••\";\n }\n}";
24876
+ const defaultStyleCss$h = "@charset \"UTF-8\";\n/* forward the rem function */\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component;\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44 * 1rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n color: black;\n background-color: white;\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 * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\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 * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: 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 text color from his parent element.\n */\n color: inherit;\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 * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\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 position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\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 width: 100%;\n margin: 0;\n padding: 0;\n border: none;\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 color: black;\n background-color: lightgray;\n }\n}\n@layer kol-global {\n :host {\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 font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\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: flex;\n flex-flow: column;\n align-items: center;\n justify-content: 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 align-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 opacity: 0.5;\n outline: none;\n cursor: not-allowed;\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 opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: #000;\n background-color: #fff;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: #000;\n background-color: #fff;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@layer kol-component {\n .kol-alert {\n display: grid;\n }\n .kol-alert__container {\n display: flex;\n place-items: center;\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(1 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field--disabled .kol-form-field__label {\n opacity: 0.5;\n }\n .kol-form-field--required .kol-form-field__label-text::after {\n content: \"*\"/\"\";\n }\n .kol-form-field--disabled .kol-form-field__hint {\n opacity: 0.5;\n }\n .kol-form-field--required .kol-form-field__tooltip .span-label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start:not(:empty)) {\n grid-template-columns: auto 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--end:not(:empty)) {\n grid-template-columns: 1fr auto;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start:not(:empty)):has(> .kol-input-container__adornment--end:not(:empty)) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n height: var(--a11y-min-size);\n place-items: center;\n }\n .kol-select {\n background-color: transparent;\n width: 100%;\n }\n .kol-select:not(:disabled) {\n cursor: pointer;\n }\n .kol-select:not([multiple], [size]) {\n height: 2.75em;\n }\n .kol-select:focus {\n outline: none;\n }\n .kol-select__option:checked::before {\n content: \"✓ \";\n }\n .kol-select {\n /* needed hack for vertical alignment */\n }\n .kol-select[multiple] option {\n padding: calc((var(--a11y-min-size) - 16 * 1rem / var(--kolibri-root-font-size, 16)) / 2) 0.5em;\n }\n .kol-pagination {\n display: flex;\n gap: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n }\n @media (max-width: 1024px) {\n .kol-pagination {\n flex-direction: column;\n }\n }\n .kol-pagination__navigation-list {\n display: inline-flex;\n margin: 0;\n padding: 0;\n gap: 0.5em;\n flex-wrap: wrap;\n align-items: center;\n list-style: none;\n }\n .kol-pagination__separator:before {\n content: \"•••\";\n }\n .kol-pagination__page-size-select .kol-form-field-select {\n align-items: center;\n grid-template-columns: 1fr max-content;\n }\n}";
24842
24877
 
24843
24878
  class KolPagination {
24844
24879
  constructor(hostRef) {
@@ -24879,16 +24914,16 @@ class KolPagination {
24879
24914
  }
24880
24915
 
24881
24916
  const leftDoubleArrowIcon = {
24882
- left: 'codicon codicon-debug-reverse-continue',
24917
+ left: 'kolicon-chevron-left',
24883
24918
  };
24884
24919
  const leftSingleArrow = {
24885
- left: 'codicon codicon-chevron-left',
24920
+ left: 'kolicon-chevron-double-left',
24886
24921
  };
24887
24922
  const rightSingleArrowIcon = {
24888
- right: 'codicon codicon-chevron-right',
24923
+ right: 'kolicon-chevron-right',
24889
24924
  };
24890
24925
  const rightDoubleArrowIcon = {
24891
- right: 'codicon codicon-debug-continue',
24926
+ right: 'kolicon-chevron-double-right',
24892
24927
  };
24893
24928
  function getUserLanguage() {
24894
24929
  const userLanguage = navigator.language || 'de-DE';
@@ -25031,7 +25066,7 @@ class KolPaginationWc {
25031
25066
  for (const value of nextValue) {
25032
25067
  if (typeof value === 'number') {
25033
25068
  options.push({
25034
- label: translate('kol-page-per-site', { placeholders: { entries: `${value}` } }),
25069
+ label: `${value}`,
25035
25070
  value: value,
25036
25071
  });
25037
25072
  }
@@ -25041,6 +25076,12 @@ class KolPaginationWc {
25041
25076
  this.beforePageSize(options, nextState);
25042
25077
  };
25043
25078
  }
25079
+ getPageStart() {
25080
+ return (this.state._page - 1) * this.state._pageSize + 1 + '';
25081
+ }
25082
+ getPageEnd() {
25083
+ return this.state._page * this.state._pageSize + '';
25084
+ }
25044
25085
  render() {
25045
25086
  var _a;
25046
25087
  let ellipsis = false;
@@ -25067,9 +25108,15 @@ class KolPaginationWc {
25067
25108
  return null;
25068
25109
  }
25069
25110
  });
25070
- 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: this.translatePageFirst, _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: this.translatePageBack, _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: this.translatePageNext, _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: this.translatePageLast, _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: this.translateEntriesPerSite, _options: this.state._pageSizeOptions, _on: {
25111
+ return (hAsync(Host, { class: "kol-pagination" }, hAsync("span", { role: "status", "aria-live": "polite" }, translate('kol-table-visible-range', {
25112
+ placeholders: {
25113
+ start: this.getPageStart(),
25114
+ end: this.getPageEnd(),
25115
+ total: this.state._max.toString(),
25116
+ },
25117
+ })), 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: this.translatePageFirst, _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: this.translatePageBack, _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: this.translatePageNext, _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: this.translatePageLast, _on: this.onGoToEnd, _tooltipAlign: this.state._tooltipAlign }))))), ((_a = this.state._pageSizeOptions) === null || _a === void 0 ? void 0 : _a.length) > 0 && (hAsync("div", { class: "page-size" }, hAsync(KolSelectWcTag, { class: "kol-pagination__page-size-select", _id: `pagination-size-${this.nonce}`, _label: this.translateEntriesPerSite, _options: this.state._pageSizeOptions, _on: {
25071
25118
  onChange: this.onChangePageSize,
25072
- }, _value: this.state._pageSize }))));
25119
+ }, _value: this.state._pageSize })))));
25073
25120
  }
25074
25121
  getUnselectedPageButton(page) {
25075
25122
  const pageText = NUMBER_FORMATTER.format(page);
@@ -27248,11 +27295,11 @@ class KolPopoverButton {
27248
27295
  (_c = this.cleanupAutoPositioning) === null || _c === void 0 ? void 0 : _c.call(this);
27249
27296
  }
27250
27297
  render() {
27251
- return (hAsync("div", { key: '28090377c47f9eda83bd0c1c083497f9985dd579', class: clsx('kol-popover-button', {
27298
+ return (hAsync("div", { key: '874282cd81b305d92a155d8c848a5004e128db80', class: clsx('kol-popover-button', {
27252
27299
  'kol-popover-button--open': this.popoverOpen,
27253
27300
  'kol-popover-button--inline': this.state._inline === true,
27254
27301
  'kol-popover-button--standalone': this.state._inline === false,
27255
- }) }, hAsync(KolButtonWcTag, { key: 'beae33c9f9c04fae8b523a2364111884c43f7f6f', _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, _inline: this._inline, _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: '7315cc0d6fee539d64e26be49ff49ecffd560ce4', name: "expert", slot: "expert" })), hAsync("div", { key: '4ee5e3923ea3b2ba64f3f721f17fc91247fbdaed', ref: (element) => (this.refPopover = element), "data-testid": "popover-content", popover: "auto", id: "popover", class: "kol-popover-button__popover" }, hAsync("slot", { key: 'b7f27c3d877f156b07337f380e62cf27708797b2' }))));
27302
+ }) }, hAsync(KolButtonWcTag, { key: 'ae45f6997d3dac685229bfec19111fe3f63df687', _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, _inline: this._inline, _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: '5fdf299465dc56f94bfb739a6d66b03353687e1f', name: "expert", slot: "expert" })), hAsync("div", { key: 'f3e492c4f3a403b36b8e073599377c56823d0d7b', ref: (element) => (this.refPopover = element), "data-testid": "popover-content", popover: "auto", id: "popover", class: "kol-popover-button__popover" }, hAsync("slot", { key: '26ce33d67f396c08acdbc3782e4395344b37da8f' }))));
27256
27303
  }
27257
27304
  validateInline(value) {
27258
27305
  validateInline(this, value, {
@@ -27479,6 +27526,71 @@ class KolQuote {
27479
27526
  }; }
27480
27527
  }
27481
27528
 
27529
+ const defaultStyleCss$d = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component;\n/* forward the rem function */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44 * 1rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n color: black;\n background-color: white;\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 * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\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 * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: 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 text color from his parent element.\n */\n color: inherit;\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 * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\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 position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\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 width: 100%;\n margin: 0;\n padding: 0;\n border: none;\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 color: black;\n background-color: lightgray;\n }\n}\n@layer kol-global {\n :host {\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 font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\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: flex;\n flex-flow: column;\n align-items: center;\n justify-content: 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 align-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 opacity: 0.5;\n outline: none;\n cursor: not-allowed;\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 opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: #000;\n background-color: #fff;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: #000;\n background-color: #fff;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\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 display: flex;\n place-items: center;\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(1 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field--disabled .kol-form-field__label {\n opacity: 0.5;\n }\n .kol-form-field--required .kol-form-field__label-text::after {\n content: \"*\"/\"\";\n }\n .kol-form-field--disabled .kol-form-field__hint {\n opacity: 0.5;\n }\n .kol-form-field--required .kol-form-field__tooltip .span-label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start:not(:empty)) {\n grid-template-columns: auto 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--end:not(:empty)) {\n grid-template-columns: 1fr auto;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start:not(:empty)):has(> .kol-input-container__adornment--end:not(:empty)) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n height: var(--a11y-min-size);\n place-items: center;\n }\n .kol-select {\n background-color: transparent;\n width: 100%;\n }\n .kol-select:not(:disabled) {\n cursor: pointer;\n }\n .kol-select:not([multiple], [size]) {\n height: 2.75em;\n }\n .kol-select:focus {\n outline: none;\n }\n .kol-select__option:checked::before {\n content: \"✓ \";\n }\n .kol-select {\n /* needed hack for vertical alignment */\n }\n .kol-select[multiple] option {\n padding: calc((var(--a11y-min-size) - 16 * 1rem / var(--kolibri-root-font-size, 16)) / 2) 0.5em;\n }\n}";
27530
+
27531
+ class KolSelect {
27532
+ constructor(hostRef) {
27533
+ registerInstance(this, hostRef);
27534
+ this.catchRef = (ref) => {
27535
+ this.selectWcRef = ref;
27536
+ };
27537
+ this._disabled = false;
27538
+ this._hideMsg = false;
27539
+ this._hideLabel = false;
27540
+ this._hint = '';
27541
+ this._multiple = false;
27542
+ this._required = false;
27543
+ this._tooltipAlign = 'top';
27544
+ this._touched = false;
27545
+ }
27546
+ async getValue() {
27547
+ var _a;
27548
+ return (_a = this.selectWcRef) === null || _a === void 0 ? void 0 : _a.getValue();
27549
+ }
27550
+ async kolFocus() {
27551
+ var _a;
27552
+ await ((_a = this.selectWcRef) === null || _a === void 0 ? void 0 : _a.kolFocus());
27553
+ }
27554
+ render() {
27555
+ return (hAsync(Host, { key: '0d395dee2532c2a584f3bea2296e2c683e7e5acc', class: "kol-select" }, hAsync(KolSelectWcTag, { key: '86d7ddcc1bc8df6adc4e56266182fb6162015076', ref: this.catchRef, _accessKey: this._accessKey, _disabled: this._disabled, _hideLabel: this._hideLabel, _hint: this._hint, _icons: this._icons, _id: this._id, _label: this._label, _msg: this._msg, _multiple: this._multiple, _name: this._name, _on: this._on, _options: this._options, _required: this._required, _rows: this._rows, _shortKey: this._shortKey, _syncValueBySelector: this._syncValueBySelector, _tabIndex: this._tabIndex, _tooltipAlign: this._tooltipAlign, _touched: this._touched, _value: this._value }, hAsync("slot", { key: 'f33ffa61e68105f707d945c9fc75f462e3f7d57d', name: "expert", slot: "expert" }))));
27556
+ }
27557
+ static get style() { return {
27558
+ default: defaultStyleCss$d
27559
+ }; }
27560
+ static get cmpMeta() { return {
27561
+ "$flags$": 297,
27562
+ "$tagName$": "kol-select",
27563
+ "$members$": {
27564
+ "_accessKey": [1, "_access-key"],
27565
+ "_disabled": [4],
27566
+ "_hideMsg": [4, "_hide-msg"],
27567
+ "_hideLabel": [4, "_hide-label"],
27568
+ "_hint": [1],
27569
+ "_icons": [1],
27570
+ "_id": [1],
27571
+ "_label": [1],
27572
+ "_msg": [1],
27573
+ "_multiple": [4],
27574
+ "_name": [1],
27575
+ "_on": [16],
27576
+ "_options": [1],
27577
+ "_required": [4],
27578
+ "_shortKey": [1, "_short-key"],
27579
+ "_rows": [2],
27580
+ "_syncValueBySelector": [1, "_sync-value-by-selector"],
27581
+ "_tabIndex": [2, "_tab-index"],
27582
+ "_tooltipAlign": [1, "_tooltip-align"],
27583
+ "_touched": [1540],
27584
+ "_value": [1544],
27585
+ "getValue": [64],
27586
+ "kolFocus": [64]
27587
+ },
27588
+ "$listeners$": undefined,
27589
+ "$lazyBundleId$": "-",
27590
+ "$attrsToReflect$": [["_touched", "_touched"], ["_value", "_value"]]
27591
+ }; }
27592
+ }
27593
+
27482
27594
  const NativeOptionFc = (_a) => {
27483
27595
  var { baseClassName = 'kol-select', class: classNames, index, selectedValue, selected, value, label, disabled } = _a, other = __rest(_a, ["baseClassName", "class", "index", "selectedValue", "selected", "value", "label", "disabled"]);
27484
27596
  if (selectedValue === undefined) {
@@ -27516,13 +27628,11 @@ const NativeOptionListFc = ({ baseClassName, preKey, options, disabled, value: s
27516
27628
 
27517
27629
  const NativeSelectFc = (props) => {
27518
27630
  const { class: classNames, msg, touched, disabled, required, options, value, OptionProps, OptionGroupProps, ariaDescribedBy, hideLabel, label } = props, other = __rest(props, ["class", "msg", "touched", "disabled", "required", "options", "value", "OptionProps", "OptionGroupProps", "ariaDescribedBy", "hideLabel", "label"]);
27519
- const showMsg = checkHasMsg(msg, touched);
27520
- const msgType = typeof msg === 'string' ? 'error' : msg === null || msg === void 0 ? void 0 : msg._type;
27521
27631
  const stateCssClasses = {
27522
27632
  ['kol-select--disabled']: Boolean(disabled),
27523
27633
  ['kol-select--required']: Boolean(required),
27524
27634
  ['kol-select--touched']: Boolean(touched),
27525
- [`kol-select--${msgType || 'error'}`]: showMsg,
27635
+ [`kol-select--${getMsgType(msg)}`]: isMsgDefinedAndInputTouched(msg, touched),
27526
27636
  };
27527
27637
  const inputProps = Object.assign(Object.assign({ class: clsx('kol-select', stateCssClasses, classNames), required: required, disabled: disabled }, getDefaultProps({ ariaDescribedBy, hideLabel, label })), other);
27528
27638
  return (hAsync("select", Object.assign({}, inputProps), hAsync(NativeOptionListFc, { baseClassName: "kol-select", options: options, value: value, OptionGroupProps: OptionGroupProps, OptionProps: OptionProps })));
@@ -27667,9 +27777,7 @@ class SelectController extends InputIconController {
27667
27777
  }
27668
27778
  }
27669
27779
 
27670
- const defaultStyleCss$d = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component;\n/* forward the rem function */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44 * 1rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n color: black;\n background-color: white;\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 * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\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 * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: 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 text color from his parent element.\n */\n color: inherit;\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 * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\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 position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\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 width: 100%;\n margin: 0;\n padding: 0;\n border: none;\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 color: black;\n background-color: lightgray;\n }\n}\n@layer kol-global {\n :host {\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 font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\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: flex;\n flex-flow: column;\n align-items: center;\n justify-content: 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 align-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 opacity: 0.5;\n outline: none;\n cursor: not-allowed;\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 opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: #000;\n background-color: #fff;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: #000;\n background-color: #fff;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\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 display: flex;\n place-items: center;\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(1 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field--disabled .kol-form-field__label {\n opacity: 0.5;\n }\n .kol-form-field--required .kol-form-field__label-text::after {\n content: \"*\"/\"\";\n }\n .kol-form-field--disabled .kol-form-field__hint {\n opacity: 0.5;\n }\n .kol-form-field--required .kol-form-field__tooltip .span-label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start:not(:empty)) {\n grid-template-columns: auto 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--end:not(:empty)) {\n grid-template-columns: 1fr auto;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start:not(:empty)):has(> .kol-input-container__adornment--end:not(:empty)) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n height: var(--a11y-min-size);\n place-items: center;\n }\n .kol-select {\n background-color: transparent;\n width: 100%;\n }\n .kol-select:not(:disabled) {\n cursor: pointer;\n }\n .kol-select:not([multiple], [size]) {\n height: 2.75em;\n }\n .kol-select:focus {\n outline: none;\n }\n .kol-select__option:checked::before {\n content: \"✓ \";\n }\n .kol-select {\n /* needed hack for vertical alignment */\n }\n .kol-select[multiple] option {\n padding: calc((var(--a11y-min-size) - 16 * 1rem / var(--kolibri-root-font-size, 16)) / 2) 0.5em;\n }\n}";
27671
-
27672
- class KolSelect {
27780
+ class KolSelectWc {
27673
27781
  async getValue() {
27674
27782
  if (this._multiple) {
27675
27783
  return this.state._value;
@@ -27703,11 +27811,11 @@ class KolSelect {
27703
27811
  } });
27704
27812
  }
27705
27813
  render() {
27706
- return (hAsync(FormFieldStateWrapper, Object.assign({ key: 'ae04cca77e5a712415a70cc12e2f2310e6629ac6' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: '3141ada10a10b5935c9211aaaa044293ec99837b', state: this.state }, hAsync("form", { key: '3492b73be2a704c5fae7ea7fee8461e7cb317a29', onSubmit: (event) => {
27814
+ return (hAsync(FormFieldStateWrapper, Object.assign({ key: '149de6c2a2a155d9869e4d09118d7b511058b606' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: '84abd564f808296ad32ea68165780862e7808fd0', state: this.state }, hAsync("form", { key: '3d143d2d857793ef6e744def1eada9346983f4d5', onSubmit: (event) => {
27707
27815
  event.preventDefault();
27708
27816
  propagateSubmitEventToForm({
27709
27817
  form: this.host});
27710
- } }, hAsync("input", { key: '7d9a1020ab80cf6254d0e462641c0d826153728b', type: "submit", hidden: true }), hAsync(SelectStateWrapper, Object.assign({ key: '16fbb6fb7b1418a4c62d6db65b7d82b81ee3a42f' }, this.getSelectProps()))))));
27818
+ } }, hAsync("input", { key: '4f654dceadd96f6074e22a56aefec34944ab2faa', type: "submit", hidden: true }), hAsync(SelectStateWrapper, Object.assign({ key: 'e576920b9756ed1f8fce70c13c070749d463e839' }, this.getSelectProps()))))));
27711
27819
  }
27712
27820
  constructor(hostRef) {
27713
27821
  registerInstance(this, hostRef);
@@ -27849,12 +27957,9 @@ class KolSelect {
27849
27957
  "_touched": ["validateTouched"],
27850
27958
  "_value": ["validateValue"]
27851
27959
  }; }
27852
- static get style() { return {
27853
- default: defaultStyleCss$d
27854
- }; }
27855
27960
  static get cmpMeta() { return {
27856
- "$flags$": 297,
27857
- "$tagName$": "kol-select",
27961
+ "$flags$": 256,
27962
+ "$tagName$": "kol-select-wc",
27858
27963
  "$members$": {
27859
27964
  "_accessKey": [1, "_access-key"],
27860
27965
  "_disabled": [4],
@@ -27923,8 +28028,8 @@ class SingleSelectController extends InputIconController {
27923
28028
  validatePlaceholder(value) {
27924
28029
  validatePlaceholder(this.component, value);
27925
28030
  }
27926
- validateHideClearButton(value) {
27927
- watchBoolean(this.component, '_hideClearButton', value);
28031
+ validateHasClearButton(value) {
28032
+ watchBoolean(this.component, '_hasClearButton', value);
27928
28033
  }
27929
28034
  validateRows(value) {
27930
28035
  watchNumber(this.component, '_rows', value);
@@ -27935,7 +28040,7 @@ class SingleSelectController extends InputIconController {
27935
28040
  this.validateRequired(this.component._required);
27936
28041
  this.validateValue(this.component._value);
27937
28042
  this.validatePlaceholder(this.component._placeholder);
27938
- this.validateHideClearButton(this.component._hideClearButton);
28043
+ this.validateHasClearButton(this.component._hasClearButton);
27939
28044
  this.validateRows(this.component._rows);
27940
28045
  }
27941
28046
  }
@@ -28112,7 +28217,7 @@ class KolSingleSelect {
28112
28217
  render() {
28113
28218
  var _a;
28114
28219
  const isDisabled = this.state._disabled === true;
28115
- return (hAsync(FormFieldStateWrapper, Object.assign({ key: '807788a04d6f892b815b102024e9226532a91e5f' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: '295b55d3fa5a34815b5f93636e770350519b50af', state: this.state }, hAsync("div", { key: '775e8431a8637f1b3a3049602b82fd9e159a0918', class: "kol-single-select__group" }, hAsync(InputStateWrapper, Object.assign({ key: '9e5d1e31e1fc6c5e5536a820ddb8f8d89b94d798' }, this.getInputProps())), this._inputValue && !this.state._hideClearButton && (hAsync(KolButtonWcTag, { key: 'cf5a1f43f6461960b60d940cc4295603a37ea935', _icons: "codicon codicon-close", _label: this.translateDeleteSelection, _hideLabel: true, _buttonVariant: "ghost", _disabled: isDisabled, "data-testid": "single-select-delete", class: clsx('kol-single-select__delete', {
28220
+ return (hAsync(FormFieldStateWrapper, Object.assign({ key: 'bb234e1f7e6c22df35bfc6fbd893f75b6ddd5321' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: '8813721c2043b2d3db52e009790db32da45171bf', state: this.state }, hAsync("div", { key: 'eead335066ebc5f5c46e8b12ce1fda55c4baf079', class: "kol-single-select__group" }, hAsync(InputStateWrapper, Object.assign({ key: '53c521fb6747e348d64a2b945285e38bc181c926' }, this.getInputProps())), this._inputValue && this.state._hasClearButton && (hAsync(KolButtonWcTag, { key: 'fd55315f4dd2ca991c27acbb150504467bae9757', _icons: "kolicon-cross", _label: this.translateDeleteSelection, _hideLabel: true, _buttonVariant: "ghost", _disabled: isDisabled, "data-testid": "single-select-delete", class: clsx('kol-single-select__delete', {
28116
28221
  'kol-single-select__delete--disabled': isDisabled,
28117
28222
  }), _on: {
28118
28223
  onClick: () => {
@@ -28120,9 +28225,9 @@ class KolSingleSelect {
28120
28225
  this.clearSelection();
28121
28226
  (_a = this.refInput) === null || _a === void 0 ? void 0 : _a.focus();
28122
28227
  },
28123
- } })), hAsync(KolIconTag, { key: 'eac69712d9714f6236045ba1359d8c0d4b2df795', _icons: "codicon codicon-triangle-down", _label: "", class: clsx('kol-custom-suggestions-toggle', {
28228
+ } })), hAsync(KolIconTag, { key: '6091eefa514ecc40a2996341cbc0f082c6117c10', _icons: "kolicon-chevron-down", _label: "", class: clsx('kol-custom-suggestions-toggle', {
28124
28229
  'kol-custom-suggestions-toggle--disabled': isDisabled,
28125
- }), onClick: this.toggleListbox.bind(this) })), this._isOpen && !isDisabled && (hAsync(CustomSuggestionsOptionsGroupFc, { key: '1fedad1c5ded22357c315304dde58e46d18af7ff', 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) => {
28230
+ }), onClick: this.toggleListbox.bind(this) })), this._isOpen && !isDisabled && (hAsync(CustomSuggestionsOptionsGroupFc, { key: '102cc831ce79a7d7b8d2b48cb353df91011e88d0', 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) => {
28126
28231
  if (el)
28127
28232
  this.refOptions[index] = el;
28128
28233
  }, selected: this._value === option.value, disabled: option.disabled ? true : false, onClick: (event) => {
@@ -28298,13 +28403,13 @@ class KolSingleSelect {
28298
28403
  this._tooltipAlign = 'top';
28299
28404
  this._touched = false;
28300
28405
  this._value = null;
28301
- this._hideClearButton = false;
28406
+ this._hasClearButton = true;
28302
28407
  this.state = {
28303
28408
  _hideMsg: false,
28304
28409
  _id: `id-${nonce()}`,
28305
28410
  _label: '',
28306
28411
  _options: [],
28307
- _hideClearButton: false,
28412
+ _hasClearButton: true,
28308
28413
  };
28309
28414
  this.inputHasFocus = false;
28310
28415
  this.controller = new SingleSelectController(this, 'single-select', this.host);
@@ -28370,8 +28475,8 @@ class KolSingleSelect {
28370
28475
  this.oldValue = value;
28371
28476
  this.updateInputValue(value);
28372
28477
  }
28373
- validateHideClearButton(value) {
28374
- this.controller.validateHideClearButton(value);
28478
+ validateHasClearButton(value) {
28479
+ this.controller.validateHasClearButton(value);
28375
28480
  }
28376
28481
  validateRows(value) {
28377
28482
  this.controller.validateRows(value);
@@ -28428,7 +28533,7 @@ class KolSingleSelect {
28428
28533
  "_syncValueBySelector": ["validateSyncValueBySelector"],
28429
28534
  "_touched": ["validateTouched"],
28430
28535
  "_value": ["validateValue"],
28431
- "_hideClearButton ": ["validateHideClearButton"],
28536
+ "_hasClearButton": ["validateHasClearButton"],
28432
28537
  "_rows": ["validateRows"]
28433
28538
  }; }
28434
28539
  static get style() { return {
@@ -28457,7 +28562,7 @@ class KolSingleSelect {
28457
28562
  "_tooltipAlign": [1, "_tooltip-align"],
28458
28563
  "_touched": [1540],
28459
28564
  "_value": [1544],
28460
- "_hideClearButton": [4, "_hide-clear-button"],
28565
+ "_hasClearButton": [4, "_has-clear-button"],
28461
28566
  "_rows": [2],
28462
28567
  "_isOpen": [32],
28463
28568
  "_filteredOptions": [32],
@@ -28485,7 +28590,7 @@ class KolSkipNav {
28485
28590
  };
28486
28591
  }
28487
28592
  render() {
28488
- return (hAsync("nav", { key: 'bf8c9241b744b486215934721843f81b83ab2e84', class: "kol-skip-nav", "aria-label": this.state._label }, hAsync("ul", { key: '3e0af5b470ba9f8baef37cd795a6462d3b76153e', class: "kol-skip-nav__list" }, this.state._links.map((link, index) => {
28593
+ return (hAsync("nav", { key: 'b9adacaa5cb5b79456d375f35a4be7e18aa47a32', class: "kol-skip-nav", "aria-label": this.state._label }, hAsync("ul", { key: '015db44ad9a7489ef6e5b000f1bebadb153ff2df', class: "kol-skip-nav__list" }, this.state._links.map((link, index) => {
28489
28594
  return (hAsync("li", { class: "kol-skip-nav__list-item", key: index }, hAsync(KolLinkWcTag, Object.assign({}, link, { ref: index === 0 ? (el) => (this.firstLinkRef = el) : undefined }))));
28490
28595
  }))));
28491
28596
  }
@@ -28561,7 +28666,7 @@ class KolSpin {
28561
28666
  }
28562
28667
  render() {
28563
28668
  var _a, _b;
28564
- return (hAsync(Host, { key: '39158b1260f2a7ad84e7aedcdca2be4fbc0add8c', class: "kol-spin" }, this.state._show ? (hAsync(Fragment, null, hAsync("span", { class: clsx('kol-spin__spinner', `kol-spin__spinner--${this.state._variant}`) }, renderSpin(this.state._variant)), hAsync("span", { "aria-busy": "true", class: "visually-hidden", role: "alert" }, (_a = this.state._label) !== null && _a !== void 0 ? _a : this.translateActionRunning))) : (this.showToggled && (hAsync("span", { "aria-busy": "false", class: "visually-hidden", role: "alert" }, (_b = this.state._label) !== null && _b !== void 0 ? _b : this.translateActionDone)))));
28669
+ return (hAsync(Host, { key: 'e9c150c633c0a718053c4aa1aeb737d88b7b4183', class: "kol-spin" }, this.state._show ? (hAsync(Fragment, null, hAsync("span", { class: clsx('kol-spin__spinner', `kol-spin__spinner--${this.state._variant}`) }, renderSpin(this.state._variant)), hAsync("span", { "aria-busy": "true", class: "visually-hidden", role: "alert" }, (_a = this.state._label) !== null && _a !== void 0 ? _a : this.translateActionRunning))) : (this.showToggled && (hAsync("span", { "aria-busy": "false", class: "visually-hidden", role: "alert" }, (_b = this.state._label) !== null && _b !== void 0 ? _b : this.translateActionDone)))));
28565
28670
  }
28566
28671
  validateShow(value) {
28567
28672
  this.showToggled = this.state._show === true && this._show === false;
@@ -28648,10 +28753,10 @@ class KolSplitButton {
28648
28753
  }
28649
28754
  render() {
28650
28755
  const i18nDropdownLabel = 'kol-split-button-dropdown-label';
28651
- return (hAsync("div", { key: '9a5b6f99df559c2acb2f16adfa505e10901d6e1e', class: "kol-split-button" }, hAsync("div", { key: '549976d7b555f3bbeda8fe680fad9db4d92e712f', class: "kol-split-button__root" }, hAsync(KolButtonWcTag, { key: '240c63a254c8853f824da84ac6589d71f22d75d4', class: clsx('kol-split-button__button', {
28756
+ return (hAsync("div", { key: '156668962e6ff2011625d1128a20a9dba6e24a9b', class: "kol-split-button" }, hAsync("div", { key: 'a273dc653d3c0a1efb5e3c83bd0e5f2ee2478e79', class: "kol-split-button__root" }, hAsync(KolButtonWcTag, { key: '88f61eecb6fdce911538179e721eae5af2c41c0f', class: clsx('kol-split-button__button', {
28652
28757
  [this._variant]: this._variant !== 'custom',
28653
28758
  [this._customClass]: this._variant === 'custom' && typeof this._customClass === 'string' && this._customClass.length > 0,
28654
- }), 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, _shortKey: this._shortKey, _syncValueBySelector: this._syncValueBySelector, _tooltipAlign: this._tooltipAlign, _type: this._type, _value: this._value, _buttonVariant: this._variant }), hAsync("div", { key: '51aeab97c09f9392492d6815f0535cbea740a6ba', class: "kol-split-button__horizontal-line" }), hAsync(KolButtonWcTag, { key: 'c7e69de54cad832c9ff2a1ca34c505628f86e4d9', 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: '4880bd3fba703eb5aff079a6755cad1dcc6289cc', _show: this.state._show, _on: { onClose: this.handleOnClose }, _align: "bottom" }, hAsync("slot", { key: '238f03d754c5a8586ca97f06ce9184436398936c' }))));
28759
+ }), 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, _shortKey: this._shortKey, _syncValueBySelector: this._syncValueBySelector, _tooltipAlign: this._tooltipAlign, _type: this._type, _value: this._value, _buttonVariant: this._variant }), hAsync("div", { key: '609e38bd0f8c2c80e831b0f933cec91d8d590d93', class: "kol-split-button__horizontal-line" }), hAsync(KolButtonWcTag, { key: 'c029e785fd846f12eb516a12b93e57c9105e289a', class: "kol-split-button__secondary-button", _disabled: this._disabled, _hideLabel: true, _icons: "kolicon-chevron-down", _label: this.state._show ? translate(`${i18nDropdownLabel}-close`) : translate(`${i18nDropdownLabel}-open`), _on: this.clickToggleHandler })), hAsync(KolPopoverWcTag, { key: '8f77daa5136a336f0a2e0146651ce6eee6476af1', _show: this.state._show, _on: { onClose: this.handleOnClose }, _align: "bottom" }, hAsync("slot", { key: '9e3621825e8c9cbfa6e503cfa463bc548dc04cd4' }))));
28655
28760
  }
28656
28761
  async closePopup() {
28657
28762
  this.handleOnClose();
@@ -28695,84 +28800,123 @@ class KolSplitButton {
28695
28800
  }; }
28696
28801
  }
28697
28802
 
28803
+ const parseColumnWidth = (width, defaultWidth = 100) => {
28804
+ const parsed = Number.parseFloat(width !== null && width !== void 0 ? width : '');
28805
+ return Number.isFinite(parsed) && parsed > 0 ? parsed : defaultWidth;
28806
+ };
28807
+
28698
28808
  class KolTableSettings {
28699
28809
  constructor(hostRef) {
28700
28810
  registerInstance(this, hostRef);
28701
- this.tableSettings = { columns: [] };
28811
+ this.headerCells = [];
28812
+ this.editingHeaderCells = [];
28702
28813
  this.errorMessage = null;
28703
28814
  this.translateTableSettings = translate('kol-table-settings');
28704
28815
  this.translateTableSettingsCancel = translate('kol-table-settings-cancel');
28705
28816
  this.translateTableSettingsApply = translate('kol-table-settings-apply');
28706
28817
  this.translateErrorAllInvisible = translate('kol-table-settings-error-all-invisible');
28707
28818
  this.translateColumnNotHidable = translate('kol-table-settings-column-not-hidable');
28708
- this._tableSettings = { columns: [] };
28819
+ this._horizontalHeaderCells = [];
28709
28820
  }
28710
- handleTableSettingsChange(newValue) {
28711
- this.tableSettings = Object.assign(Object.assign({}, newValue), { columns: this.normalizeColumns(Array.isArray(newValue.columns) ? newValue.columns : []) });
28821
+ handleHeaderCellsChange(newValue) {
28822
+ this.headerCells = newValue.map((row) => [...row]);
28823
+ this.editingHeaderCells = newValue.map((row) => row.map((cell) => (Object.assign({}, cell))));
28712
28824
  }
28713
28825
  componentWillLoad() {
28714
- this.handleTableSettingsChange(this._tableSettings);
28826
+ this.handleHeaderCellsChange(this._horizontalHeaderCells);
28715
28827
  }
28716
- normalizeColumns(columns) {
28717
- return columns.map((_a) => {
28718
- var { hidable, resizable, sortable, visible } = _a, rest = __rest(_a, ["hidable", "resizable", "sortable", "visible"]);
28719
- return (Object.assign(Object.assign({}, rest), { hidable: hidable !== false, resizable: resizable !== false, sortable: sortable !== false, visible: visible !== false }));
28720
- });
28828
+ getPrimaryRow() {
28829
+ var _a;
28830
+ return (_a = this.editingHeaderCells[this.editingHeaderCells.length - 1]) !== null && _a !== void 0 ? _a : [];
28831
+ }
28832
+ updatePrimaryRow(newRow) {
28833
+ this.editingHeaderCells = this.editingHeaderCells.map((row, index, arr) => (index === arr.length - 1 ? newRow : row));
28721
28834
  }
28722
28835
  moveColumn(columnId, direction) {
28723
- const columns = [...this.tableSettings.columns];
28724
- const sourceIndex = columns.findIndex((col) => col.key === columnId);
28725
- const sourceColumn = columns[sourceIndex];
28726
- const targetIndex = direction === 'up' ? sourceIndex - 1 : sourceIndex + 1;
28727
- const targetColumn = columns[targetIndex];
28728
- if (sourceIndex < 0 || targetIndex < 0 || targetIndex >= columns.length || (sourceColumn === null || sourceColumn === void 0 ? void 0 : sourceColumn.sortable) === false || (targetColumn === null || targetColumn === void 0 ? void 0 : targetColumn.sortable) === false) {
28836
+ const row = [...this.getPrimaryRow()];
28837
+ const sourceIndex = row.findIndex((col) => col.key === columnId);
28838
+ if (sourceIndex === -1)
28729
28839
  return;
28840
+ let targetIndex;
28841
+ if (direction === 'up') {
28842
+ if (sourceIndex === 0)
28843
+ return;
28844
+ targetIndex = sourceIndex - 1;
28730
28845
  }
28731
- const [movedColumn] = columns.splice(sourceIndex, 1);
28732
- columns.splice(targetIndex, 0, movedColumn);
28733
- this.tableSettings = Object.assign(Object.assign({}, this.tableSettings), { columns });
28846
+ else {
28847
+ if (sourceIndex === row.length - 1)
28848
+ return;
28849
+ targetIndex = sourceIndex + 1;
28850
+ }
28851
+ const [source] = row.splice(sourceIndex, 1);
28852
+ row.splice(targetIndex, 0, source);
28853
+ this.updatePrimaryRow(row);
28734
28854
  }
28735
28855
  handleVisibilityChange(key, visible) {
28736
- this.tableSettings = Object.assign(Object.assign({}, this.tableSettings), { columns: this.tableSettings.columns.map((col) => (col.key === key && col.hidable !== false ? Object.assign(Object.assign({}, col), { visible: Boolean(visible) }) : col)) });
28856
+ const row = this.getPrimaryRow().map((col) => (col.key === key && col.hidable !== false ? Object.assign(Object.assign({}, col), { visible: Boolean(visible) }) : col));
28857
+ this.updatePrimaryRow(row);
28737
28858
  }
28738
28859
  handleWidthChange(key, width) {
28739
- this.tableSettings = Object.assign(Object.assign({}, this.tableSettings), { columns: this.tableSettings.columns.map((col) => (col.key === key ? (col.resizable === false ? col : Object.assign(Object.assign({}, col), { width: Number(width) })) : col)) });
28860
+ const row = this.getPrimaryRow().map((col) => (col.key === key && col.resizable !== false ? Object.assign(Object.assign({}, col), { width: `${Number(width)}ch` }) : col));
28861
+ this.updatePrimaryRow(row);
28740
28862
  }
28741
28863
  handleCancel() {
28742
28864
  var _a;
28865
+ this.editingHeaderCells = this.headerCells.map((row) => [...row]);
28866
+ this.errorMessage = null;
28743
28867
  void ((_a = this.popoverRef) === null || _a === void 0 ? void 0 : _a.hidePopover());
28744
28868
  }
28745
28869
  handleSubmit(event) {
28746
28870
  var _a;
28747
28871
  event.preventDefault();
28748
- const hasVisibleColumn = this.tableSettings.columns.some((column) => column.visible);
28872
+ const primaryRow = this.getPrimaryRow();
28873
+ const hasVisibleColumn = primaryRow.some((column) => column.visible !== false);
28749
28874
  if (!hasVisibleColumn) {
28750
28875
  this.errorMessage = this.translateErrorAllInvisible;
28751
28876
  return;
28752
28877
  }
28753
28878
  else if (this.host) {
28754
28879
  this.errorMessage = null;
28755
- dispatchDomEvent(this.host, KolEvent.settingsChange, this.tableSettings);
28880
+ this.headerCells = this.editingHeaderCells.map((row) => row.map((cell) => (Object.assign({}, cell))));
28881
+ const sanitizedHeaderCells = this.editingHeaderCells.map((row) => row.map((column) => {
28882
+ const cell = Object.assign({}, column);
28883
+ delete cell.position;
28884
+ if (cell.visible === undefined) {
28885
+ delete cell.visible;
28886
+ }
28887
+ if (cell.hidable === undefined) {
28888
+ delete cell.hidable;
28889
+ }
28890
+ if (cell.sortable === undefined) {
28891
+ delete cell.sortable;
28892
+ }
28893
+ if (cell.resizable === undefined) {
28894
+ delete cell.resizable;
28895
+ }
28896
+ if (cell.width === undefined || cell.width === null || cell.width === '') {
28897
+ delete cell.width;
28898
+ }
28899
+ return cell;
28900
+ }));
28901
+ dispatchDomEvent(this.host, KolEvent.changeHeaderCells, sanitizedHeaderCells);
28756
28902
  void ((_a = this.popoverRef) === null || _a === void 0 ? void 0 : _a.hidePopover());
28757
28903
  }
28758
28904
  }
28759
28905
  render() {
28760
- const sortedColumns = this.tableSettings.columns;
28761
- return (hAsync(KolPopoverButtonWcTag, { key: 'aa24d8651b56901da47fb399d3b8d195c04e4172', ref: (el) => (this.popoverRef = el), class: "kol-table-settings", _icons: "codicon codicon-settings-gear", _label: this.translateTableSettings, _popoverAlign: "top", _hideLabel: true }, hAsync("div", { key: 'e2bfa59a2329b8195533c4085d0de0dbcbe3ee2a', class: "kol-table-settings__content" }, hAsync(KolHeadingTag, { key: '93826dd6a92a059f4b38ae6c2fe5c7be6a9fa53b', _label: this.translateTableSettings, _level: 0 }), this.errorMessage && hAsync(KolAlertWcTag, { key: 'ffb531d2e598f7beba390759cefeb30f07b34cd5', _type: "error", _label: this.errorMessage, _variant: "msg", class: "kol-table-settings__error-message" }), hAsync("form", { key: 'b3efffad1be5c8ff4bca0ba0e0c680e334afeeb3', onSubmit: this.handleSubmit.bind(this) }, hAsync("div", { key: '0def6f9d92009689733e3841c822b93b0397a659', class: "kol-table-settings__columns-container" }, hAsync("div", { key: 'd0a7af6068e909ae91a5fd55cb560724d12edcc4', class: "kol-table-settings__columns" }, sortedColumns.map((column, index) => {
28762
- var _a, _b;
28763
- return (hAsync("div", { key: column.key, class: "kol-table-settings__column" }, hAsync(KolInputCheckboxTag, { _checked: column.visible, _label: `${column.label}${column.hidable === false ? ` (${this.translateColumnNotHidable})` : ''}`, _value: true, _hideLabel: true, _disabled: column.hidable === false, _on: { onInput: (_, value) => this.handleVisibilityChange(column.key, value) }, "data-testid": `table-settings-visible-${column.key}` }), hAsync("span", { class: "kol-table-settings__column-label" }, column.label), hAsync(KolInputNumberTag, { _hideLabel: true, _value: column.width, _label: translate('kol-table-settings-column-width', { placeholders: { column: column.label } }), _min: 1, _disabled: column.resizable === false, _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 || column.sortable === false || ((_a = sortedColumns[index - 1]) === null || _a === void 0 ? void 0 : _a.sortable) === false, "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 || column.sortable === false || ((_b = sortedColumns[index + 1]) === null || _b === void 0 ? void 0 : _b.sortable) === false, "data-testid": "table-settings-move-down" })));
28764
- }))), hAsync("div", { key: 'ae98c13ffb786564a765d02150e241b624c923c6', class: "kol-table-settings__actions" }, hAsync(KolButtonWcTag, { key: '3a8127b09eb76a55e0beffd508c1dd7e446fdaca', _label: this.translateTableSettingsCancel, _buttonVariant: "secondary", _on: { onClick: () => this.handleCancel() }, "data-testid": "table-settings-cancel" }), hAsync(KolButtonWcTag, { key: '19a5e91145eec6caa0460eaea7df20a1275b3962', _label: this.translateTableSettingsApply, _buttonVariant: "primary", _type: "submit", "data-testid": "table-settings-apply" }))))));
28906
+ const columns = this.getPrimaryRow();
28907
+ return (hAsync(KolPopoverButtonWcTag, { key: '20a902c54f7dca5ce4360546da5d0de682fa0f43', ref: (el) => (this.popoverRef = el), class: "kol-table-settings", _icons: "kolicon-settings", _label: this.translateTableSettings, _popoverAlign: "top", _hideLabel: true }, hAsync("div", { key: 'd5694d08feebe2ce3baa4c4ee3bda36d298dda03', class: "kol-table-settings__content" }, hAsync(KolHeadingTag, { key: '1c59c2987029e081389541cff2b5b19175dcb038', _label: this.translateTableSettings, _level: 0 }), this.errorMessage && hAsync(KolAlertWcTag, { key: 'dcf989a101b6f81a70f24b3de4bf323b1a1bf0b2', _type: "error", _label: this.errorMessage, _variant: "msg", class: "kol-table-settings__error-message" }), hAsync("form", { key: '95e986aed57b2142c5d040e222bc667ae96b60df', onSubmit: this.handleSubmit.bind(this) }, hAsync("div", { key: '21c192586cfda33cba13f1afac103fea3bf60714', class: "kol-table-settings__columns-container" }, hAsync("div", { key: 'ea0ffd07e7414d3bc74f7a35467a4b65fe0a6d70', class: "kol-table-settings__columns" }, columns.map((column, index) => (hAsync("div", { key: column.key, class: "kol-table-settings__column" }, hAsync(KolInputCheckboxTag, { _checked: column.visible !== false, _label: `${column.label}${column.hidable === false ? ` (${this.translateColumnNotHidable})` : ''}`, _value: true, _hideLabel: true, _disabled: column.hidable === false, _on: { onInput: (_, value) => { var _a; return this.handleVisibilityChange((_a = column.key) !== null && _a !== void 0 ? _a : '', value); } } }), hAsync("span", { class: "kol-table-settings__column-label" }, column.label), hAsync(KolInputNumberTag, { _hideLabel: true, _value: parseColumnWidth(column.width), _label: translate('kol-table-settings-column-width', { placeholders: { column: column.label } }), _min: 1, _disabled: column.resizable === false, _on: { onInput: (_, value) => { var _a; return this.handleWidthChange((_a = column.key) !== null && _a !== void 0 ? _a : '', 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: () => { var _a; return this.moveColumn((_a = column.key) !== null && _a !== void 0 ? _a : '', 'up'); } }, _disabled: column.sortable === false || 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: () => { var _a; return this.moveColumn((_a = column.key) !== null && _a !== void 0 ? _a : '', 'down'); } }, _disabled: column.sortable === false || index === columns.length - 1, "data-testid": "table-settings-move-down" })))))), hAsync("div", { key: '678cecad45a4f59a919f1c4d7fdd939bb0ad03b6', class: "kol-table-settings__actions" }, hAsync(KolButtonWcTag, { key: '02caf59b937c018df681915218da9da21458b100', _label: this.translateTableSettingsCancel, _buttonVariant: "secondary", _on: { onClick: () => this.handleCancel() }, "data-testid": "table-settings-cancel" }), hAsync(KolButtonWcTag, { key: '087067dd2cacd51c07e965d0b31d4a04fa84de74', _label: this.translateTableSettingsApply, _buttonVariant: "primary", _type: "submit", "data-testid": "table-settings-apply" }))))));
28765
28908
  }
28766
28909
  get host() { return getElement(this); }
28767
28910
  static get watchers() { return {
28768
- "_tableSettings": ["handleTableSettingsChange"]
28911
+ "_horizontalHeaderCells": ["handleHeaderCellsChange"]
28769
28912
  }; }
28770
28913
  static get cmpMeta() { return {
28771
28914
  "$flags$": 256,
28772
28915
  "$tagName$": "kol-table-settings-wc",
28773
28916
  "$members$": {
28774
- "_tableSettings": [16],
28775
- "tableSettings": [32],
28917
+ "_horizontalHeaderCells": [16],
28918
+ "headerCells": [32],
28919
+ "editingHeaderCells": [32],
28776
28920
  "errorMessage": [32]
28777
28921
  },
28778
28922
  "$listeners$": undefined,
@@ -28785,6 +28929,7 @@ var Callback;
28785
28929
  (function (Callback) {
28786
28930
  Callback["onBlur"] = "onBlur";
28787
28931
  Callback["onChange"] = "onChange";
28932
+ Callback["onChangeHeaderCells"] = "onChangeHeaderCells";
28788
28933
  Callback["onChangePage"] = "onChangePage";
28789
28934
  Callback["onClick"] = "onClick";
28790
28935
  Callback["onClose"] = "onClose";
@@ -28818,11 +28963,7 @@ var KeyboardKey;
28818
28963
  KeyboardKey["Space"] = " ";
28819
28964
  })(KeyboardKey || (KeyboardKey = {}));
28820
28965
 
28821
- const validateTableSettings = (component, value) => {
28822
- watchValidator(component, `_tableSettings`, (value) => typeof value === 'object' && value !== null, new Set(['TableSettings']), value);
28823
- };
28824
-
28825
- const defaultStyleCss$8 = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component;\n/* forward the rem function */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44 * 1rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n color: black;\n background-color: white;\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 * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\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 * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: 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 text color from his parent element.\n */\n color: inherit;\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 * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\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 position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\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 width: 100%;\n margin: 0;\n padding: 0;\n border: none;\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 color: black;\n background-color: lightgray;\n }\n}\n@layer kol-global {\n :host {\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 font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\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: flex;\n flex-flow: column;\n align-items: center;\n justify-content: 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 align-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 opacity: 0.5;\n outline: none;\n cursor: not-allowed;\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 opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: #000;\n background-color: #fff;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: #000;\n background-color: #fff;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\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 display: flex;\n place-items: center;\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(1 * 1rem / var(--kolibri-root-font-size, 16));\n }\n :host {\n display: inline-block;\n }\n .kol-button {\n display: flex;\n min-height: var(--a11y-min-size);\n font-style: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\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 flex: 1 0 100%;\n }\n .kol-popover-button__button {\n display: inline-block;\n }\n .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-popover-button--inline .kol-popover-button__button {\n display: inline;\n }\n .kol-table-settings {\n background: #fff;\n position: absolute;\n top: 0;\n right: 0;\n z-index: 1;\n }\n .kol-table-settings .kol-popover-button__popover {\n background: #fff;\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n border-radius: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n border: 1px solid #d1d5db;\n }\n .kol-table-settings__columns-container {\n max-height: calc(200 * 1rem / var(--kolibri-root-font-size, 16));\n margin-top: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n overflow: auto;\n }\n .kol-table-settings__columns {\n display: grid;\n gap: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n align-items: center;\n grid-auto-rows: min-content;\n grid-template-columns: min-content minmax(max-content, 1fr) calc(100 * 1rem / var(--kolibri-root-font-size, 16)) auto auto;\n }\n .kol-table-settings__column {\n display: contents;\n }\n .kol-table {\n display: block;\n position: relative;\n max-width: 100%;\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__scroll-container {\n overflow-x: auto;\n overflow-y: hidden;\n }\n .kol-table__table {\n width: 100%;\n }\n .kol-table__caption {\n min-height: var(--a11y-min-size);\n padding-right: var(--a11y-min-size);\n text-align: start;\n }\n .kol-table__sort-button .kol-button {\n color: inherit;\n }\n .kol-table__sort {\n display: inline-flex;\n gap: 0.25rem;\n align-items: center;\n }\n .kol-table__sort-order {\n display: inline-flex;\n align-items: center;\n justify-content: center;\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 align-items: start;\n }\n .kol-table__cell--align-center {\n text-align: center;\n }\n .kol-table__cell--align-center .kol-button__text {\n align-items: center;\n }\n .kol-table__cell--align-right {\n text-align: right;\n }\n .kol-table__cell--align-right .kol-button__text {\n align-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 display: flex;\n position: relative;\n width: var(--a11y-min-size);\n height: var(--a11y-min-size);\n align-items: center;\n justify-content: center;\n cursor: pointer;\n }\n .kol-table__selection-label--disabled {\n cursor: not-allowed;\n }\n .kol-table__selection-icon {\n display: block;\n position: absolute;\n inset: auto;\n z-index: 1;\n }\n .kol-table__selection-input {\n border-style: solid;\n margin: 0;\n appearance: none;\n cursor: pointer;\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 background-color: rgb(255, 255, 255);\n display: flex;\n position: relative;\n width: calc(var(--a11y-min-size) / 2);\n height: calc(var(--a11y-min-size) / 2);\n border-width: 2px;\n align-items: center;\n justify-content: center;\n line-height: 1.5;\n }\n .kol-table__selection-input--radio {\n border-radius: 100%;\n display: flex;\n width: 1.5em;\n min-width: 1.5em;\n height: 1.5em;\n min-height: 1.5em;\n padding: 0;\n border-width: 2px;\n }\n .kol-table__selection-input--radio:before {\n border-radius: 100%;\n width: 0.75em;\n height: 0.75em;\n margin: auto;\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 .kol-pagination {\n display: grid;\n gap: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n align-items: center;\n grid-template-columns: 1fr auto;\n }\n .kol-pagination__navigation-list {\n display: inline-flex;\n margin: 0;\n padding: 0;\n gap: 0.5em;\n flex-wrap: wrap;\n align-items: center;\n list-style: none;\n }\n .kol-pagination__separator:before {\n content: \"•••\";\n }\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}";
28966
+ const defaultStyleCss$8 = "@charset \"UTF-8\";\n/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component;\n/* forward the rem function */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44 * 1rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n color: black;\n background-color: white;\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 * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\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 * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: 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 text color from his parent element.\n */\n color: inherit;\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 * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\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 position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\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 width: 100%;\n margin: 0;\n padding: 0;\n border: none;\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 color: black;\n background-color: lightgray;\n }\n}\n@layer kol-global {\n :host {\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 font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\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: flex;\n flex-flow: column;\n align-items: center;\n justify-content: 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 align-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 opacity: 0.5;\n outline: none;\n cursor: not-allowed;\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 opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: #000;\n background-color: #fff;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: #000;\n background-color: #fff;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\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 display: flex;\n place-items: center;\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(1 * 1rem / var(--kolibri-root-font-size, 16));\n }\n :host {\n display: inline-block;\n }\n .kol-button {\n display: flex;\n min-height: var(--a11y-min-size);\n font-style: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\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 flex: 1 0 100%;\n }\n .kol-popover-button__button {\n display: inline-block;\n }\n .kol-popover-button__popover {\n margin: 0;\n padding: 0;\n border: 0;\n }\n .kol-popover-button--inline .kol-popover-button__button {\n display: inline;\n }\n .kol-table-settings {\n background: #fff;\n position: absolute;\n top: 0;\n right: 0;\n z-index: 1;\n }\n .kol-table-settings .kol-popover-button__popover {\n background: #fff;\n box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n border-radius: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n border: 1px solid #d1d5db;\n }\n .kol-table-settings__columns-container {\n max-height: calc(200 * 1rem / var(--kolibri-root-font-size, 16));\n margin-top: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n overflow: auto;\n }\n .kol-table-settings__columns {\n display: grid;\n gap: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n align-items: center;\n grid-auto-rows: min-content;\n grid-template-columns: min-content minmax(max-content, 1fr) calc(100 * 1rem / var(--kolibri-root-font-size, 16)) auto auto;\n }\n .kol-table-settings__column {\n display: contents;\n }\n .kol-table {\n display: block;\n position: relative;\n max-width: 100%;\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__scroll-container {\n overflow-x: auto;\n overflow-y: hidden;\n }\n .kol-table__table {\n width: 100%;\n }\n .kol-table__caption {\n min-height: var(--a11y-min-size);\n padding-right: var(--a11y-min-size);\n text-align: start;\n }\n .kol-table__sort-button .kol-button {\n color: inherit;\n }\n .kol-table__sort {\n display: inline-flex;\n gap: 0.25rem;\n align-items: center;\n }\n .kol-table__sort-order {\n display: inline-flex;\n align-items: center;\n justify-content: center;\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 align-items: start;\n }\n .kol-table__cell--align-center {\n text-align: center;\n }\n .kol-table__cell--align-center .kol-button__text {\n align-items: center;\n }\n .kol-table__cell--align-right {\n text-align: right;\n }\n .kol-table__cell--align-right .kol-button__text {\n align-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 display: flex;\n position: relative;\n width: var(--a11y-min-size);\n height: var(--a11y-min-size);\n align-items: center;\n justify-content: center;\n cursor: pointer;\n }\n .kol-table__selection-label--disabled {\n cursor: not-allowed;\n }\n .kol-table__selection-icon {\n display: block;\n position: absolute;\n inset: auto;\n z-index: 1;\n }\n .kol-table__selection-input {\n border-style: solid;\n margin: 0;\n appearance: none;\n cursor: pointer;\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 background-color: rgb(255, 255, 255);\n display: flex;\n position: relative;\n width: calc(var(--a11y-min-size) / 2);\n height: calc(var(--a11y-min-size) / 2);\n border-width: 2px;\n align-items: center;\n justify-content: center;\n line-height: 1.5;\n }\n .kol-table__selection-input--radio {\n border-radius: 100%;\n display: flex;\n width: 1.5em;\n min-width: 1.5em;\n height: 1.5em;\n min-height: 1.5em;\n padding: 0;\n border-width: 2px;\n }\n .kol-table__selection-input--radio:before {\n border-radius: 100%;\n width: 0.75em;\n height: 0.75em;\n margin: auto;\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 .kol-alert {\n display: grid;\n }\n .kol-alert__container {\n display: flex;\n place-items: center;\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(1 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-form-field {\n display: grid;\n }\n .kol-form-field:not(.kol-form-field--disabled) .kol-form-field__label {\n cursor: pointer;\n }\n .kol-form-field--disabled .kol-form-field__label {\n opacity: 0.5;\n }\n .kol-form-field--required .kol-form-field__label-text::after {\n content: \"*\"/\"\";\n }\n .kol-form-field--disabled .kol-form-field__hint {\n opacity: 0.5;\n }\n .kol-form-field--required .kol-form-field__tooltip .span-label::after {\n content: \"*\"/\"\";\n }\n .kol-input-container {\n background-color: transparent;\n display: grid;\n width: 100%;\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n align-items: center;\n grid-template-columns: 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start:not(:empty)) {\n grid-template-columns: auto 1fr;\n }\n .kol-input-container:has(> .kol-input-container__adornment--end:not(:empty)) {\n grid-template-columns: 1fr auto;\n }\n .kol-input-container:has(> .kol-input-container__adornment--start:not(:empty)):has(> .kol-input-container__adornment--end:not(:empty)) {\n grid-template-columns: auto 1fr auto;\n }\n .kol-input-container__container {\n position: relative;\n }\n .kol-input-container__adornment {\n display: flex;\n align-items: center;\n }\n .kol-input-container__adornment .kol-icon {\n display: grid;\n height: var(--a11y-min-size);\n place-items: center;\n }\n .kol-select {\n background-color: transparent;\n width: 100%;\n }\n .kol-select:not(:disabled) {\n cursor: pointer;\n }\n .kol-select:not([multiple], [size]) {\n height: 2.75em;\n }\n .kol-select:focus {\n outline: none;\n }\n .kol-select__option:checked::before {\n content: \"✓ \";\n }\n .kol-select {\n /* needed hack for vertical alignment */\n }\n .kol-select[multiple] option {\n padding: calc((var(--a11y-min-size) - 16 * 1rem / var(--kolibri-root-font-size, 16)) / 2) 0.5em;\n }\n .kol-pagination {\n display: flex;\n gap: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\n flex-wrap: wrap;\n align-items: center;\n justify-content: center;\n }\n @media (max-width: 1024px) {\n .kol-pagination {\n flex-direction: column;\n }\n }\n .kol-pagination__navigation-list {\n display: inline-flex;\n margin: 0;\n padding: 0;\n gap: 0.5em;\n flex-wrap: wrap;\n align-items: center;\n list-style: none;\n }\n .kol-pagination__separator:before {\n content: \"•••\";\n }\n .kol-pagination__page-size-select .kol-form-field-select {\n align-items: center;\n grid-template-columns: 1fr max-content;\n }\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}";
28826
28967
 
28827
28968
  const PAGINATION_OPTIONS = [10, 20, 50, 100];
28828
28969
  const paginationValidator = (value) => value === true || value === '' || (typeof value === 'object' && value !== null);
@@ -29027,9 +29168,6 @@ class KolTableStateful {
29027
29168
  validateOn(value) {
29028
29169
  validateTableStatefulCallbacks(this, value);
29029
29170
  }
29030
- validateTableSettings(value) {
29031
- validateTableSettings(this, value);
29032
- }
29033
29171
  validatePagination(value) {
29034
29172
  try {
29035
29173
  value = parseJson(value);
@@ -29064,7 +29202,6 @@ class KolTableStateful {
29064
29202
  this.validatePagination(this._pagination);
29065
29203
  this.validatePaginationPosition(this._paginationPosition);
29066
29204
  this.validateSelection(this._selection);
29067
- this.validateTableSettings(this._tableSettings);
29068
29205
  this.validateHasSettingsMenu(this._hasSettingsMenu);
29069
29206
  }
29070
29207
  selectDisplayedData(data, pageSize, page) {
@@ -29085,17 +29222,7 @@ class KolTableStateful {
29085
29222
  label: `${this.state._label} (${translate(`kol-pagination-position-${position}`)})`,
29086
29223
  },
29087
29224
  });
29088
- return (hAsync("div", { class: `kol-table-stateful__pagination kol-table-stateful__pagination--${this.state._paginationPosition}` }, hAsync("span", { role: "status", "aria-live": "polite" }, translate('kol-table-visible-range', {
29089
- placeholders: {
29090
- start: this.pageEndSlice > 0 ? (this.pageStartSlice + 1).toString() : '0',
29091
- end: this.pageEndSlice.toString(),
29092
- total: this.state._pagination && this.state._pagination._max > 0
29093
- ? this.state._pagination._max.toString()
29094
- : Array.isArray(this.state._data)
29095
- ? this.state._data.length.toString()
29096
- : '0',
29097
- },
29098
- })), 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 }))));
29225
+ return (hAsync("div", { class: `kol-table-stateful__pagination kol-table-stateful__pagination--${this.state._paginationPosition}` }, 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 }))));
29099
29226
  }
29100
29227
  getHeaderCellSortState(headerCell) {
29101
29228
  if (!this.disableSort && typeof headerCell.compareFn === 'function') {
@@ -29161,14 +29288,14 @@ class KolTableStateful {
29161
29288
  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), sortOrder: this.getHeaderCellSortOrder(cell) }))))) !== null && _d !== void 0 ? _d : [],
29162
29289
  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), sortOrder: this.getHeaderCellSortOrder(cell) }))))) !== null && _f !== void 0 ? _f : [],
29163
29290
  };
29164
- return (hAsync(Host, { key: '5ac3cafebddd87710c6f8b73e812c520161ebd59', class: "kol-table-stateful" }, this.pageEndSlice > 0 && this.showPagination && paginationTop, hAsync(KolTableStatelessWcTag, { key: '6effb17c8cf01fc627fc5a349ca96304d5db1377', ref: this.catchRef, _data: displayedData, _headerCells: headerCells, _label: this.state._label, _dataFoot: this.state._dataFoot, _minWidth: this.state._minWidth, _on: {
29291
+ return (hAsync(Host, { key: '097b3da0f120398b96685ac2ec4c3287176fa003', class: "kol-table-stateful" }, this.pageEndSlice > 0 && this.showPagination && paginationTop, hAsync(KolTableStatelessWcTag, { key: 'f3f2b16415553d3ce9a2206280ca06cc5e8540d6', ref: this.catchRef, _data: displayedData, _headerCells: headerCells, _label: this.state._label, _dataFoot: this.state._dataFoot, _minWidth: this.state._minWidth, _on: {
29165
29292
  onSort: (_, payload) => {
29166
29293
  this.handleSort(payload);
29167
29294
  },
29168
29295
  onSelectionChange: (event, value) => {
29169
29296
  this.handleSelectionChange(event, value);
29170
29297
  },
29171
- }, _selection: this.state._selection, _tableSettings: this.state._tableSettings, _hasSettingsMenu: this.state._hasSettingsMenu }), this.pageEndSlice > 0 && this.showPagination && paginationBottom));
29298
+ }, _selection: this.state._selection, _hasSettingsMenu: this.state._hasSettingsMenu }), this.pageEndSlice > 0 && this.showPagination && paginationBottom));
29172
29299
  }
29173
29300
  get host() { return getElement(this); }
29174
29301
  static get watchers() { return {
@@ -29182,7 +29309,6 @@ class KolTableStateful {
29182
29309
  "_minWidth": ["validateMinWidth"],
29183
29310
  "_selection": ["validateSelection"],
29184
29311
  "_on": ["validateOn"],
29185
- "_tableSettings": ["validateTableSettings"],
29186
29312
  "_pagination": ["validatePagination"]
29187
29313
  }; }
29188
29314
  static get style() { return {
@@ -29202,7 +29328,6 @@ class KolTableStateful {
29202
29328
  "_paginationPosition": [1, "_pagination-position"],
29203
29329
  "_selection": [1],
29204
29330
  "_on": [16],
29205
- "_tableSettings": [16],
29206
29331
  "_hasSettingsMenu": [4, "_has-settings-menu"],
29207
29332
  "state": [32],
29208
29333
  "getSelection": [64]
@@ -29220,7 +29345,7 @@ let KolTableStateless$1 = class KolTableStateless {
29220
29345
  registerInstance(this, hostRef);
29221
29346
  }
29222
29347
  render() {
29223
- return (hAsync(KolTableStatelessWcTag, { key: '3f600244a23f03d0dfbddb1be4006cc50b1cf46f', _data: this._data, _dataFoot: this._dataFoot, _headerCells: this._headerCells, _label: this._label, _minWidth: this._minWidth, _on: this._on, _selection: this._selection, _tableSettings: this._tableSettings, _hasSettingsMenu: this._hasSettingsMenu }));
29348
+ return (hAsync(KolTableStatelessWcTag, { key: 'cd2b63fa6fd319a30a4641441704db5845a5aa7e', _data: this._data, _dataFoot: this._dataFoot, _headerCells: this._headerCells, _label: this._label, _minWidth: this._minWidth, _on: this._on, _selection: this._selection, _hasSettingsMenu: this._hasSettingsMenu }));
29224
29349
  }
29225
29350
  static get style() { return {
29226
29351
  default: defaultStyleCss$7
@@ -29236,7 +29361,6 @@ let KolTableStateless$1 = class KolTableStateless {
29236
29361
  "_minWidth": [1, "_min-width"],
29237
29362
  "_on": [16],
29238
29363
  "_selection": [1],
29239
- "_tableSettings": [16],
29240
29364
  "_hasSettingsMenu": [4, "_has-settings-menu"]
29241
29365
  },
29242
29366
  "$listeners$": undefined,
@@ -29283,8 +29407,7 @@ class KolTableStateless {
29283
29407
  }), key: `row-${key}` }, this.renderSelectionCell(row, rowIndex), row.map((cell, colIndex) => this.renderTableCell(cell, rowIndex, colIndex, isVertical))));
29284
29408
  };
29285
29409
  this.renderTableCell = (cell, rowIndex, colIndex, isVertical) => {
29286
- const columnSetting = this.getColumnSettings(cell);
29287
- if (columnSetting && !columnSetting.visible) {
29410
+ if (cell.visible === false) {
29288
29411
  return '';
29289
29412
  }
29290
29413
  let key = `${rowIndex}-${colIndex}-${cell.label}`;
@@ -29301,7 +29424,7 @@ class KolTableStateless {
29301
29424
  [`kol-table__cell--align-${cell.textAlign}`]: cell.textAlign,
29302
29425
  }), "aria-atomic": isNoEntriesHintCell ? 'false' : undefined, "aria-live": isNoEntriesHintCell ? 'polite' : undefined, "aria-relevant": isNoEntriesHintCell ? 'text' : undefined, colSpan: cell.colSpan, rowSpan: cell.rowSpan, style: {
29303
29426
  textAlign: cell.textAlign,
29304
- width: (columnSetting === null || columnSetting === void 0 ? void 0 : columnSetting.width) ? `${columnSetting.width}ch` : cell.width,
29427
+ width: cell.width,
29305
29428
  }, ref: typeof cell.render === 'function'
29306
29429
  ? (el) => {
29307
29430
  this.cellRender(cell, el);
@@ -29326,7 +29449,7 @@ class KolTableStateless {
29326
29449
  validateHeaderCells(value) {
29327
29450
  validateTableHeaderCells(this, value);
29328
29451
  if (!isEqual(this.previousHeaderCells, this.state._headerCells)) {
29329
- this.initializeTableSettings();
29452
+ this.initializeHeaderCellSettings();
29330
29453
  }
29331
29454
  this.previousHeaderCells = this.state._headerCells;
29332
29455
  }
@@ -29344,24 +29467,6 @@ class KolTableStateless {
29344
29467
  validateSelection(value) {
29345
29468
  validateTableSelection(this, value);
29346
29469
  }
29347
- validateTableSettings(value) {
29348
- validateTableSettings(this, this.normalizeTableSettings(value));
29349
- }
29350
- normalizeTableSettings(value) {
29351
- if (!value || typeof value !== 'object') {
29352
- return value;
29353
- }
29354
- const columns = Array.isArray(value.columns) ? value.columns : [];
29355
- return Object.assign(Object.assign({}, value), { columns: columns.map(({ hidable, key, label, resizable, sortable, visible, width }) => ({
29356
- hidable: hidable !== false,
29357
- key: key !== null && key !== void 0 ? key : nonce(),
29358
- label,
29359
- resizable: resizable !== false,
29360
- sortable: sortable !== false,
29361
- visible: visible !== false,
29362
- width,
29363
- })) });
29364
- }
29365
29470
  handleKeyDown(event) {
29366
29471
  var _a;
29367
29472
  if (event.key === 'ArrowUp' || event.key === 'ArrowDown') {
@@ -29391,7 +29496,12 @@ class KolTableStateless {
29391
29496
  }
29392
29497
  }
29393
29498
  handleSettingsChange(event) {
29394
- setState(this, '_tableSettings', event.detail);
29499
+ var _a;
29500
+ const updatedHeaderCells = Object.assign(Object.assign({}, this.state._headerCells), { horizontal: event.detail });
29501
+ setState(this, '_headerCells', updatedHeaderCells);
29502
+ if (typeof ((_a = this.state._on) === null || _a === void 0 ? void 0 : _a[Callback.onChangeHeaderCells]) === 'function') {
29503
+ this.state._on[Callback.onChangeHeaderCells](event, updatedHeaderCells);
29504
+ }
29395
29505
  }
29396
29506
  disconnectedCallback() {
29397
29507
  var _a;
@@ -29485,29 +29595,6 @@ class KolTableStateless {
29485
29595
  }
29486
29596
  return primaryHeaders;
29487
29597
  }
29488
- getColumnPositionMap() {
29489
- var _a;
29490
- const keyToPosition = new Map();
29491
- (_a = this.state._tableSettings) === null || _a === void 0 ? void 0 : _a.columns.forEach((setting, index) => {
29492
- keyToPosition.set(setting.key, index);
29493
- });
29494
- return keyToPosition;
29495
- }
29496
- sortByColumnPosition(columns) {
29497
- const keyToPosition = this.getColumnPositionMap();
29498
- return columns
29499
- .map((column, index) => ({ column, index }))
29500
- .sort((a, b) => {
29501
- var _a, _b, _c, _d;
29502
- const posA = (_b = keyToPosition.get((_a = a.column.key) !== null && _a !== void 0 ? _a : '')) !== null && _b !== void 0 ? _b : Number.MAX_SAFE_INTEGER;
29503
- const posB = (_d = keyToPosition.get((_c = b.column.key) !== null && _c !== void 0 ? _c : '')) !== null && _d !== void 0 ? _d : Number.MAX_SAFE_INTEGER;
29504
- if (posA !== posB) {
29505
- return posA - posB;
29506
- }
29507
- return a.index - b.index;
29508
- })
29509
- .map(({ column }) => column);
29510
- }
29511
29598
  createDataField(data, headers, isFoot) {
29512
29599
  var _a;
29513
29600
  headers.horizontal = Array.isArray(headers === null || headers === void 0 ? void 0 : headers.horizontal) ? headers.horizontal : [];
@@ -29527,7 +29614,7 @@ class KolTableStateless {
29527
29614
  rowCount[index] = 0;
29528
29615
  rowSpans[index] = [];
29529
29616
  });
29530
- const sortedPrimaryHeader = this.sortByColumnPosition(primaryHeader);
29617
+ const sortedPrimaryHeader = primaryHeader;
29531
29618
  for (let i = startRow; i < maxRows; i++) {
29532
29619
  const dataRow = [];
29533
29620
  headers.vertical.forEach((headerCells, index) => {
@@ -29559,7 +29646,7 @@ class KolTableStateless {
29559
29646
  typeof row === 'object' &&
29560
29647
  row !== null &&
29561
29648
  (typeof sortedPrimaryHeader[j].key === 'string' || typeof sortedPrimaryHeader[j].render === 'function')) {
29562
- dataRow.push(Object.assign(Object.assign({}, sortedPrimaryHeader[j]), { colSpan: undefined, data: row, label: row[sortedPrimaryHeader[j].key], rowSpan: undefined }));
29649
+ dataRow.push(Object.assign(Object.assign({}, sortedPrimaryHeader[j]), { colSpan: undefined, rowSpan: undefined, data: row, label: row[sortedPrimaryHeader[j].key] }));
29563
29650
  }
29564
29651
  }
29565
29652
  else {
@@ -29568,7 +29655,7 @@ class KolTableStateless {
29568
29655
  typeof data[j] === 'object' &&
29569
29656
  data[j] !== null &&
29570
29657
  (typeof sortedPrimaryHeader[i].key === 'string' || typeof sortedPrimaryHeader[i].render === 'function')) {
29571
- dataRow.push(Object.assign(Object.assign({}, sortedPrimaryHeader[i]), { colSpan: undefined, data: data[j], label: data[j][sortedPrimaryHeader[i].key], rowSpan: undefined }));
29658
+ dataRow.push(Object.assign(Object.assign({}, sortedPrimaryHeader[i]), { colSpan: undefined, rowSpan: undefined, data: data[j], label: data[j][sortedPrimaryHeader[i].key] }));
29572
29659
  }
29573
29660
  }
29574
29661
  }
@@ -29612,27 +29699,11 @@ class KolTableStateless {
29612
29699
  dispatchDomEvent(this.host, KolEvent.selectionChange, payload);
29613
29700
  }
29614
29701
  }
29615
- initializeTableSettings() {
29616
- if (this._tableSettings) {
29617
- return;
29618
- }
29619
- const primaryHeaders = this.getPrimaryHeaders(this.state._headerCells);
29620
- if (!this.state._tableSettings) {
29621
- this.state._tableSettings = { columns: [] };
29702
+ initializeHeaderCellSettings() {
29703
+ if (this.state._headerCells && this.state._headerCells.horizontal && this.state._headerCells.horizontal.length > 0) {
29704
+ const updatedHeaderCells = Object.assign(Object.assign({}, this.state._headerCells), { horizontal: this.state._headerCells.horizontal.map((row) => row.map((header) => (Object.assign(Object.assign({}, header), { visible: typeof header.visible === 'boolean' ? header.visible : true, hidable: typeof header.hidable === 'boolean' ? header.hidable : true })))) });
29705
+ setState(this, '_headerCells', updatedHeaderCells);
29622
29706
  }
29623
- this.state._tableSettings.columns = primaryHeaders
29624
- .filter((header) => header.key)
29625
- .map((header) => {
29626
- var _a;
29627
- return ({
29628
- hidable: header.hidable !== false,
29629
- sortable: header.sortable !== false,
29630
- resizable: header.resizable !== false,
29631
- key: (_a = header.key) !== null && _a !== void 0 ? _a : nonce(),
29632
- label: header.label,
29633
- visible: true,
29634
- });
29635
- });
29636
29707
  }
29637
29708
  componentWillLoad() {
29638
29709
  this.validateData(this._data);
@@ -29642,7 +29713,6 @@ class KolTableStateless {
29642
29713
  this.validateMinWidth(this._minWidth);
29643
29714
  this.validateOn(this._on);
29644
29715
  this.validateSelection(this._selection);
29645
- this.validateTableSettings(this._tableSettings);
29646
29716
  this.validateHasSettingsMenu(this._hasSettingsMenu);
29647
29717
  }
29648
29718
  renderSelectionCell(row, rowIndex) {
@@ -29676,7 +29746,7 @@ class KolTableStateless {
29676
29746
  };
29677
29747
  return (hAsync("td", { key: `tbody-${rowIndex}-selection`, class: "kol-table__cell kol-table__cell--selection" }, hAsync("div", { class: clsx('kol-table__selection', { 'kol-table__selection--checked': selected }) }, isMultiple ? (hAsync("label", { class: clsx('kol-table__selection-label', {
29678
29748
  'kol-table__selection-label--disabled': disabled,
29679
- }) }, hAsync(KolIconTag, { class: "kol-table__selection-icon", _icons: `codicon ${selected ? 'codicon-check' : ''}`, _label: "" }), hAsync("input", Object.assign({ class: clsx('kol-table__selection-input kol-table__selection-input--checkbox'), ref: (el) => el && this.checkboxRefs.push(el) }, props, { type: "checkbox", onInput: (event) => {
29749
+ }) }, hAsync(KolIconTag, { class: "kol-table__selection-icon", _icons: `kolicon ${selected ? 'kolicon-check' : ''}`, _label: "" }), hAsync("input", Object.assign({ class: clsx('kol-table__selection-input kol-table__selection-input--checkbox'), ref: (el) => el && this.checkboxRefs.push(el) }, props, { type: "checkbox", onInput: (event) => {
29680
29750
  const current = (() => {
29681
29751
  const v = selection === null || selection === void 0 ? void 0 : selection.selectedKeys;
29682
29752
  return v === undefined ? [] : Array.isArray(v) ? v : [v];
@@ -29687,10 +29757,6 @@ class KolTableStateless {
29687
29757
  this.handleSelectionChangeCallbackAndEvent(event, [keyProperty]);
29688
29758
  } })))), hAsync(KolTooltipWcTag, { "aria-hidden": "true", class: "kol-table__selection-input-tooltip", _align: "right", _id: `${keyProperty}-label`, _label: label }))));
29689
29759
  }
29690
- getColumnSettings(cell) {
29691
- var _a;
29692
- return (_a = this.state._tableSettings) === null || _a === void 0 ? void 0 : _a.columns.find((setting) => setting.key === cell.key);
29693
- }
29694
29760
  getSelectionKeyPropertyName() {
29695
29761
  var _a, _b;
29696
29762
  return (_b = (_a = this.state._selection) === null || _a === void 0 ? void 0 : _a.keyPropertyName) !== null && _b !== void 0 ? _b : 'id';
@@ -29740,9 +29806,8 @@ class KolTableStateless {
29740
29806
  return selection;
29741
29807
  }
29742
29808
  getTableMinWidth() {
29743
- var _a, _b;
29744
- const totalColumnWidth = (_b = (_a = this.state._tableSettings) === null || _a === void 0 ? void 0 : _a.columns.filter((col) => col.visible).reduce((total, col) => { var _a; return total + ((_a = col.width) !== null && _a !== void 0 ? _a : 0); }, 0)) !== null && _b !== void 0 ? _b : 0;
29745
- return this.state._minWidth === 'auto' ? `${totalColumnWidth}ch` : `max(${this.state._minWidth}, ${totalColumnWidth}ch)`;
29809
+ var _a;
29810
+ return (_a = this.state._minWidth) !== null && _a !== void 0 ? _a : 'auto';
29746
29811
  }
29747
29812
  renderHeadingSelectionCell() {
29748
29813
  var _a, _b;
@@ -29768,7 +29833,7 @@ class KolTableStateless {
29768
29833
  return (hAsync("th", { key: `thead-0-selection`, class: "kol-table__cell kol-table__cell--header kol-table__cell--selection" }, hAsync("div", { class: clsx('kol-table__selection', {
29769
29834
  'kol-table__selection--indeterminate': indeterminate,
29770
29835
  'kol-table__selection--checked': isChecked,
29771
- }) }, hAsync("label", { class: "kol-table__selection-label" }, hAsync(KolIconTag, { class: "kol-table__selection-icon", _icons: `codicon ${indeterminate ? 'codicon-remove' : isChecked ? 'codicon-check' : ''}`, _label: "" }), hAsync("input", { class: clsx('kol-table__selection-input kol-table__selection-input--checkbox'), "data-testid": "selection-checkbox-all", ref: (el) => el && this.checkboxRefs.push(el), name: "selection", checked: isChecked && !indeterminate, indeterminate: indeterminate, "aria-label": label, type: "checkbox", onInput: (event) => {
29836
+ }) }, hAsync("label", { class: "kol-table__selection-label" }, hAsync(KolIconTag, { class: "kol-table__selection-icon", _icons: `kolicon ${indeterminate ? 'kolicon-minus' : isChecked ? 'kolicon-check' : ''}`, _label: "" }), hAsync("input", { class: clsx('kol-table__selection-input kol-table__selection-input--checkbox'), "data-testid": "selection-checkbox-all", ref: (el) => el && this.checkboxRefs.push(el), name: "selection", checked: isChecked && !indeterminate, indeterminate: indeterminate, "aria-label": label, type: "checkbox", onInput: (event) => {
29772
29837
  this.handleSelectionChangeCallbackAndEvent(event, this.getRevertedSelection(!isChecked));
29773
29838
  } })), hAsync(KolTooltipWcTag, { "aria-hidden": "true", class: "kol-table__selection-input-tooltip", _align: "right", _id: `${translationKey}-label`, _label: label }))));
29774
29839
  }
@@ -29789,23 +29854,22 @@ class KolTableStateless {
29789
29854
  return this.translateSort;
29790
29855
  }
29791
29856
  renderHeadingCell(cell, rowIndex, colIndex, isVertical) {
29792
- const columnSettings = this.getColumnSettings(cell);
29793
- if (columnSettings && !columnSettings.visible) {
29857
+ if (cell.visible === false) {
29794
29858
  return '';
29795
29859
  }
29796
- const sortableSetting = (columnSettings === null || columnSettings === void 0 ? void 0 : columnSettings.sortable) !== false;
29860
+ const sortableSetting = (cell === null || cell === void 0 ? void 0 : cell.sortable) !== false;
29797
29861
  const hasSortDirection = typeof cell.sortDirection === 'string';
29798
29862
  const canSort = sortableSetting && hasSortDirection;
29799
29863
  let ariaSort = 'none';
29800
- let sortButtonIcon = 'codicon codicon-fold';
29864
+ let sortButtonIcon = 'kolicon-sort-neutral';
29801
29865
  if (canSort && cell.sortDirection) {
29802
29866
  switch (cell.sortDirection) {
29803
29867
  case 'ASC':
29804
- sortButtonIcon = 'codicon codicon-chevron-up';
29868
+ sortButtonIcon = 'kolicon-sort-asc';
29805
29869
  ariaSort = 'ascending';
29806
29870
  break;
29807
29871
  case 'DESC':
29808
- sortButtonIcon = 'codicon codicon-chevron-down';
29872
+ sortButtonIcon = 'kolicon-sort-desc';
29809
29873
  ariaSort = 'descending';
29810
29874
  break;
29811
29875
  default:
@@ -29819,7 +29883,7 @@ class KolTableStateless {
29819
29883
  [`kol-table__cell--align-${cell.textAlign}`]: cell.textAlign,
29820
29884
  [`kol-table__cell--${ariaSort}`]: ariaSort,
29821
29885
  }), scope: scope, colSpan: cell.colSpan, rowSpan: cell.rowSpan, style: {
29822
- width: (columnSettings === null || columnSettings === void 0 ? void 0 : columnSettings.width) ? `${columnSettings.width}ch` : cell.width,
29886
+ width: cell.width,
29823
29887
  }, "aria-sort": ariaSort, "data-sort": canSort && cell.sortDirection ? `sort-${cell.sortDirection}` : undefined }, canSort && cell.sortDirection ? (hAsync("span", { class: "kol-table__sort" }, hAsync(KolButtonWcTag, { class: "kol-table__sort-button", exportparts: "icon", _icons: { right: sortButtonIcon }, _label: cell.label, _ariaDescription: sortDescription, _on: {
29824
29888
  onClick: (event) => {
29825
29889
  var _a;
@@ -29856,16 +29920,15 @@ class KolTableStateless {
29856
29920
  ]));
29857
29921
  }
29858
29922
  render() {
29859
- var _a;
29860
29923
  const dataField = this.createDataField(this.state._data, this.state._headerCells);
29861
29924
  this.checkboxRefs = [];
29862
- const sortedHorizontalHeaders = (_a = this.state._headerCells.horizontal) === null || _a === void 0 ? void 0 : _a.map((row) => this.sortByColumnPosition(row));
29863
- return (hAsync("div", { key: '3e728e7da4e6e201a75b3f2392684839d49226b5', class: "kol-table" }, this.state._hasSettingsMenu && hAsync(KolTableSettingsWcTag, { key: 'bbd36c1269c7cf1e43f78fd1d469e4f5c68d28be', _tableSettings: this.state._tableSettings }), hAsync("div", { key: '737d877075c620c3edadbc2a0b6e9a3d163c51d8', ref: (element) => (this.tableDivElement = element), class: "kol-table__scroll-container", tabindex: this.tableDivElementHasScrollbar ? '-1' : undefined }, hAsync("table", { key: 'bb30c814e78688924a1906144a51eae1669ab8e9', class: "kol-table__table", style: {
29925
+ const horizontalHeaders = this.state._headerCells.horizontal;
29926
+ return (hAsync("div", { key: '3ecfa76f370919e9099c5fd79dfc7c58e0190854', class: "kol-table" }, this.state._hasSettingsMenu && hAsync(KolTableSettingsWcTag, { key: '264358a173d42ee900e022b47cdbe620c452febe', _horizontalHeaderCells: horizontalHeaders !== null && horizontalHeaders !== void 0 ? horizontalHeaders : [] }), hAsync("div", { key: '02f5fb3962760f32f5834144dc7244700ceaaae7', ref: (element) => (this.tableDivElement = element), class: "kol-table__scroll-container", tabindex: this.tableDivElementHasScrollbar ? '-1' : undefined }, hAsync("table", { key: '20070bdb08de22f2c331ac53241390f41a144594', class: "kol-table__table", style: {
29864
29927
  minWidth: this.getTableMinWidth(),
29865
- } }, hAsync("caption", { key: '508814a7d77353d0c95cccece94fe250c5b60d44', class: "kol-table__focus-element kol-table__caption", id: "caption", tabindex: this.tableDivElementHasScrollbar ? '0' : undefined }, this.state._label), Array.isArray(sortedHorizontalHeaders) && (hAsync("thead", { key: '0a486a0fe522586cd5e3ad17118dc5d9aff68a35', class: "kol-table__head" }, [
29866
- 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))))),
29867
- this.renderSpacer('head', sortedHorizontalHeaders),
29868
- ])), hAsync("tbody", { key: 'd08d034ea92ac500beb47489306a97e1813422b9', class: "kol-table__body" }, dataField.map((row, rowIndex) => this.renderTableRow(row, rowIndex, true))), this.renderFoot()))));
29928
+ } }, hAsync("caption", { key: 'dc18a31d0a487e5202f1221cc4bf951e62ed0597', class: "kol-table__focus-element kol-table__caption", id: "caption", tabindex: this.tableDivElementHasScrollbar ? '0' : undefined }, this.state._label), Array.isArray(horizontalHeaders) && (hAsync("thead", { key: 'c4a6f9a4171e99a56e6dffb9681d8bc6aa0e1d1d', class: "kol-table__head" }, [
29929
+ horizontalHeaders.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))))),
29930
+ this.renderSpacer('head', horizontalHeaders),
29931
+ ])), hAsync("tbody", { key: 'c08c4adb4392de2469acc1d9ce3bdd8d2a3de145', class: "kol-table__body" }, dataField.map((row, rowIndex) => this.renderTableRow(row, rowIndex, true))), this.renderFoot()))));
29869
29932
  }
29870
29933
  get host() { return getElement(this); }
29871
29934
  static get watchers() { return {
@@ -29876,8 +29939,7 @@ class KolTableStateless {
29876
29939
  "_label": ["validateLabel"],
29877
29940
  "_minWidth": ["validateMinWidth"],
29878
29941
  "_on": ["validateOn"],
29879
- "_selection": ["validateSelection"],
29880
- "_tableSettings": ["validateTableSettings"]
29942
+ "_selection": ["validateSelection"]
29881
29943
  }; }
29882
29944
  static get cmpMeta() { return {
29883
29945
  "$flags$": 256,
@@ -29890,13 +29952,12 @@ class KolTableStateless {
29890
29952
  "_minWidth": [1, "_min-width"],
29891
29953
  "_on": [16],
29892
29954
  "_selection": [1],
29893
- "_tableSettings": [16],
29894
29955
  "_hasSettingsMenu": [4, "_has-settings-menu"],
29895
29956
  "state": [32],
29896
29957
  "tableDivElementHasScrollbar": [32],
29897
29958
  "previousHeaderCells": [32]
29898
29959
  },
29899
- "$listeners$": [[0, "keydown", "handleKeyDown"], [0, "settingsChange", "handleSettingsChange"]],
29960
+ "$listeners$": [[0, "keydown", "handleKeyDown"], [0, "changeHeaderCells", "handleSettingsChange"]],
29900
29961
  "$lazyBundleId$": "-",
29901
29962
  "$attrsToReflect$": []
29902
29963
  }; }
@@ -30103,12 +30164,12 @@ class KolTabs {
30103
30164
  renderButtonGroup() {
30104
30165
  return (hAsync("div", { "aria-label": this.state._label, class: "kol-tabs__button-group", role: "tablist", onKeyDown: this.onKeyDown, onBlur: this.onBlur }, this.state._tabs.map((button, index) => (hAsync(KolButtonWcTag, { _disabled: button._disabled, _icons: button._icons, _hideLabel: button._hideLabel, _label: button._label, _on: this.callbacks, _tabIndex: this.state._selected === index ? 0 : -1, _tooltipAlign: button._tooltipAlign, _buttonVariant: this.state._selected === index ? 'custom' : undefined, _customClass: this.state._selected === index ? 'selected' : undefined, _ariaControls: `tabpanel-${index}`, _ariaSelected: this.state._selected === index, _id: `${this.state._label.replace(/\s/g, '-')}-tab-${index}`, _role: "tab", _value: index }))), this.state._hasCreateButton && (hAsync(KolButtonWcTag, { class: "kol-tabs__button-create", _label: this.onCreateLabel, _on: {
30105
30166
  onClick: this.onCreate,
30106
- }, _icons: "codicon codicon-plus", "data-testid": "tabs-create-button" }))));
30167
+ }, _icons: "kolicon-plus", "data-testid": "tabs-create-button" }))));
30107
30168
  }
30108
30169
  render() {
30109
- return (hAsync("div", { key: '651b397e4e56da8694268e5670dd12da67fb4430', ref: (el) => {
30170
+ return (hAsync("div", { key: '0bd0aceb42f67707667ebb5cb15413d135a54199', ref: (el) => {
30110
30171
  this.tabPanelsElement = el;
30111
- }, class: clsx('kol-tabs', `kol-tabs--align-${this.state._align}`) }, this.renderButtonGroup(), hAsync("div", { key: '2583e66740101758cdf796a45961142384bf9fdf', class: "kol-tabs__content", ref: this.catchTabPanelHost })));
30172
+ }, class: clsx('kol-tabs', `kol-tabs--align-${this.state._align}`) }, this.renderButtonGroup(), hAsync("div", { key: 'd42d286a6a315f1b181c9c1a167e53c5c202249a', class: "kol-tabs__content", ref: this.catchTabPanelHost })));
30112
30173
  }
30113
30174
  validateAlign(value) {
30114
30175
  validateAlign(this, value);
@@ -30334,7 +30395,7 @@ class KolTextarea {
30334
30395
  } });
30335
30396
  }
30336
30397
  render() {
30337
- return (hAsync(FormFieldStateWrapper, Object.assign({ key: 'c076b1045358547d15574bfb7d4fbd82ec63984d' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: '320aa1104bb568da2c2f09660792f4be5de05a33', state: this.state }, hAsync(TextAreaStateWrapper, Object.assign({ key: 'e5ab010f74cc7d2ed882121bc4373ee15dd70593' }, this.getTextAreaProps())))));
30398
+ return (hAsync(FormFieldStateWrapper, Object.assign({ key: '2c2f033030f99e33507c059de0820cc72de7a599' }, this.getFormFieldProps()), hAsync(InputContainerStateWrapperFc, { key: 'b64d16f3b7484d98ef5c85f0a2fd41a90bc2469a', state: this.state }, hAsync(TextAreaStateWrapper, Object.assign({ key: 'dec62bcfd41aaf9af259d7c40bb194d5dd157e8b' }, this.getTextAreaProps())))));
30338
30399
  }
30339
30400
  constructor(hostRef) {
30340
30401
  registerInstance(this, hostRef);
@@ -30543,7 +30604,7 @@ class KolTextarea {
30543
30604
  }; }
30544
30605
  }
30545
30606
 
30546
- const defaultStyleCss$4 = "/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component;\n/* forward the rem function */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44 * 1rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n color: black;\n background-color: white;\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 * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\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 * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: 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 text color from his parent element.\n */\n color: inherit;\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 * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\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 position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\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 width: 100%;\n margin: 0;\n padding: 0;\n border: none;\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 color: black;\n background-color: lightgray;\n }\n}\n@layer kol-global {\n :host {\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 font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\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: flex;\n flex-flow: column;\n align-items: center;\n justify-content: 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 align-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 opacity: 0.5;\n outline: none;\n cursor: not-allowed;\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 opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: #000;\n background-color: #fff;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: #000;\n background-color: #fff;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\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 display: flex;\n place-items: center;\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(1 * 1rem / var(--kolibri-root-font-size, 16));\n }\n :host {\n display: flex;\n position: fixed;\n z-index: 200;\n flex-direction: column;\n }\n .kol-toast-container__close-all {\n align-self: flex-end;\n }\n}";
30607
+ const defaultStyleCss$4 = "/*\n* This file defines the layer order for all CSS layers used in KoliBri.\n* The order is important as it determines the cascade priority.\n*\n* Layer order (lowest to highest priority):\n* 1. kol-a11y - Accessibility defaults and requirements\n* 2. kol-global - Global component styles and resets\n* 3. kol-component - Component-specific styles\n* 4. kol-theme-global - Theme-specific global styles\n* 5. kol-theme-component - Theme-specific component styles\n*/\n@layer kol-a11y, kol-global, kol-component, kol-theme-global, kol-theme-component;\n/* forward the rem function */\n/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44 * 1rem / var(--kolibri-root-font-size, 16));\n /*\n * No element should be used without verifying the contrast ratio of its background and font colors.\n * By initially setting the background color to white and the font color to black,\n * the contrast ratio is ensured and explicit adjustment is forced.\n */\n color: black;\n background-color: white;\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 * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n /*\n * Text should be aligned left by default to provide a predictable starting point.\n */\n text-align: left;\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 * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of to-rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: 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 text color from his parent element.\n */\n color: inherit;\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 * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\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 position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\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 width: 100%;\n margin: 0;\n padding: 0;\n border: none;\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 color: black;\n background-color: lightgray;\n }\n}\n@layer kol-global {\n :host {\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 font-size: calc(16 * 1rem / var(--kolibri-root-font-size, 16));\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: flex;\n flex-flow: column;\n align-items: center;\n justify-content: 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 align-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 opacity: 0.5;\n outline: none;\n cursor: not-allowed;\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 opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, max-content);\n min-width: calc(8 * 1rem / var(--kolibri-root-font-size, 16));\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip__floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip__floating.show {\n animation-name: showTooltip;\n }\n .kol-tooltip__arrow {\n transform: rotate(45deg);\n color: #000;\n background-color: #fff;\n position: absolute;\n z-index: 999;\n width: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n height: calc(10 * 1rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip__content {\n color: #000;\n background-color: #fff;\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\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 display: flex;\n place-items: center;\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(1 * 1rem / var(--kolibri-root-font-size, 16));\n }\n :host {\n display: flex;\n position: fixed;\n z-index: 200;\n max-width: 90vw;\n flex-direction: column;\n }\n .kol-toast-container__close-all {\n align-self: flex-end;\n }\n}";
30547
30608
 
30548
30609
  const TRANSITION_TIMEOUT = 300;
30549
30610
  class KolToastContainer {
@@ -30606,7 +30667,7 @@ class KolToastContainer {
30606
30667
  }
30607
30668
  }
30608
30669
  render() {
30609
- return (hAsync(Host, { key: '59038f1cc016df1fb76b2436b4ad4598700e66a9', class: "kol-toast-container" }, this.state._toastStates.length > 1 && (hAsync(KolButtonTag, { key: 'd2aea02a378c5631da3d47e8ab947e81eaa4174b', _label: this.translateToastCloseAll, class: "kol-toast-container__button-close-all", _on: {
30670
+ return (hAsync(Host, { key: '91190bc34c9cc342a7296620ac4c32fe579d4b19', class: "kol-toast-container" }, this.state._toastStates.length > 1 && (hAsync(KolButtonTag, { key: '4538eec5a1a51925d17b226eade4904770375bf6', _label: this.translateToastCloseAll, class: "kol-toast-container__button-close-all", _on: {
30610
30671
  onClick: () => {
30611
30672
  void this.closeAll();
30612
30673
  },
@@ -30660,7 +30721,7 @@ class KolToolbar {
30660
30721
  return Object.assign(Object.assign({}, rest), { _icons, _disabled });
30661
30722
  }
30662
30723
  render() {
30663
- return (hAsync("div", { key: 'ad1dc342681ec7b63f24b9212a5edb82301224c6', class: `kol-toolbar kol-toolbar--orientation-${this.state._orientation}`, role: "toolbar", "aria-label": this.state._label }, this.state._items.map(this.renderItem)));
30724
+ return (hAsync("div", { key: '78a0ddd7a212483b3438fe6a3da1e6c9c022026e', class: `kol-toolbar kol-toolbar--orientation-${this.state._orientation}`, role: "toolbar", "aria-label": this.state._label }, this.state._items.map(this.renderItem)));
30664
30725
  }
30665
30726
  validateLabel(value) {
30666
30727
  validateLabel(this, value);
@@ -30899,7 +30960,7 @@ class KolTooltipWc {
30899
30960
  getDocument().removeEventListener('keyup', this.hideTooltipByEscape);
30900
30961
  }
30901
30962
  render() {
30902
- return (hAsync(Host, { key: '7a998733dae6a2c928b4107d885c19f5988fa24a', class: "kol-tooltip" }, this.state._label !== '' && (hAsync("div", { key: '6b53ddaa12ca15d4822a4d4945d823f699d76510', class: "kol-tooltip__floating", ref: this.catchTooltipElement }, hAsync("div", { key: '0b48b4b9938ac6830b84c7731b9b5df89cbf9da7', class: "kol-tooltip__arrow", ref: this.catchArrowElement }), hAsync(KolSpanFc, { key: '0531c8d02198e37b81b9110cc683852730caa5fb', class: "kol-tooltip__content", id: this.state._id, badgeText: this._badgeText, label: this.state._label })))));
30963
+ return (hAsync(Host, { key: 'a2f5eaf3bdde31f05706c525fb3382d04449877d', class: "kol-tooltip" }, this.state._label !== '' && (hAsync("div", { key: 'd29670e80057f25e00c3826a093d5baef0106ce6', class: "kol-tooltip__floating", ref: this.catchTooltipElement }, hAsync("div", { key: '5ea823469aa2fcb1c3dbf56b628445814f4fc8d0', class: "kol-tooltip__arrow", ref: this.catchArrowElement }), hAsync(KolSpanFc, { key: '49c40bebd3067ede516b5f7edc9749f52a08cf80', class: "kol-tooltip__content", id: this.state._id, badgeText: this._badgeText, label: this.state._label })))));
30903
30964
  }
30904
30965
  validateBadgeText(value) {
30905
30966
  validateBadgeText(this, value);
@@ -30977,7 +31038,7 @@ class KolTree {
30977
31038
  registerInstance(this, hostRef);
30978
31039
  }
30979
31040
  render() {
30980
- return (hAsync(KolTreeWcTag, { key: '67f868d38de33d334b05b93c82e56feead46b255', _label: this._label }, hAsync("slot", { key: '0a316d5d93a20c0ada8e5aa425c9f5fdf5cf16f6' })));
31041
+ return (hAsync(KolTreeWcTag, { key: 'c9729dc44fcf465925dc6a866d399e62413cf9e1', _label: this._label }, hAsync("slot", { key: 'ff341bf2e8b093cedea4f62ee4c9f54403aa1e7c' })));
30981
31042
  }
30982
31043
  static get style() { return {
30983
31044
  default: defaultStyleCss$2
@@ -31020,7 +31081,7 @@ class KolTreeItem {
31020
31081
  return (_b = (await ((_a = this.element) === null || _a === void 0 ? void 0 : _a.isOpen()))) !== null && _b !== void 0 ? _b : false;
31021
31082
  }
31022
31083
  render() {
31023
- return (hAsync(KolTreeItemWcTag, { key: '86e4e84ea04f0fa50c0b2436577917e376fa5f38', _active: this._active, _label: this._label, _open: this._open, _href: this._href, ref: (element) => (this.element = element) }, hAsync("slot", { key: 'c0d67156ca3e9036cd0d36aba3f1a82a7d842089' })));
31084
+ return (hAsync(KolTreeItemWcTag, { key: '87d60840b65ed567e5e6075f362e33933563c5c9', _active: this._active, _label: this._label, _open: this._open, _href: this._href, ref: (element) => (this.element = element) }, hAsync("slot", { key: 'b0b1d7110cc70ee74fe026e0bedd2620fc423c1d' })));
31024
31085
  }
31025
31086
  static get style() { return {
31026
31087
  default: defaultStyleCss$1
@@ -31058,12 +31119,12 @@ class KolTreeItemWc {
31058
31119
  }
31059
31120
  render() {
31060
31121
  const { _href, _active, _hasChildren, _open, _label } = this.state;
31061
- return (hAsync(Host, { key: '5649eea22138bfd4814d801dd32e28cd352eef6d', onSlotchange: this.handleSlotchange.bind(this) }, hAsync("li", { key: '0d8e7319a392ac8166d0fca80c297a1569de922a', class: "kol-tree-item", style: {
31122
+ return (hAsync(Host, { key: '442889bb000355873e79c2df59cce348ed0afb0c', onSlotchange: this.handleSlotchange.bind(this) }, hAsync("li", { key: 'ab695fb7c3857e493631704e56f86b6c6211ad9f', class: "kol-tree-item", style: {
31062
31123
  '--level': `${this.level}`,
31063
- } }, hAsync(KolLinkWcTag, { key: '9e92a6b0d8d17160ea861b805a4dd86454045445', class: clsx('kol-tree-item__link', {
31124
+ } }, hAsync(KolLinkWcTag, { key: 'ac9855976707c3665cb09f90af3a6ecd490bb653', class: clsx('kol-tree-item__link', {
31064
31125
  'kol-tree-item__link--first-level': this.level === 0,
31065
31126
  'kol-tree-item__link--active': _active,
31066
- }), _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: 'ac68d83264cfa4386a054df43eb84ccb63451607', 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: '3d339257fdc8689130aadcd4ebeb0d1fc3c4a1be', class: "kol-tree-item__text" }, _label))), hAsync("ul", { key: '81618223386fe6386d556613e487fcd51f60c573', class: "kol-tree-item__children", hidden: !_hasChildren || !_open, role: "group", id: this.groupId }, hAsync("slot", { key: '3192a75104bc09cdb9713f220cda421b5a210d58' })))));
31127
+ }), _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: '9122a46258722d8df6bc5423cf8ee8b9412c763b', 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: `kolicon kolicon-${_open ? 'chevron-down' : 'chevron-right'}`, _label: '' }))) : (hAsync("span", { class: "kol-tree-item__toggle-button-placeholder" })), hAsync("span", { key: 'b6108f314822588593d7426ad43f3bddaf42ae3c', class: "kol-tree-item__text" }, _label))), hAsync("ul", { key: '2ca328f5ca9dfc25264ac1cf5a05ebf9b8a47eb8', class: "kol-tree-item__children", hidden: !_hasChildren || !_open, role: "group", id: this.groupId }, hAsync("slot", { key: '756437d12f6ea52ef666a5813221d84b6b29c575' })))));
31067
31128
  }
31068
31129
  validateActive(value) {
31069
31130
  validateActive(this, value || false);
@@ -31167,7 +31228,7 @@ class KolTreeWc {
31167
31228
  validateLabel(this, value);
31168
31229
  }
31169
31230
  render() {
31170
- return (hAsync(Host, { key: '39caf084d89cd53900a3467ed61bb3768ab0cf0c', onSlotchange: this.handleSlotchange.bind(this) }, hAsync("nav", { key: 'd27027c36afd0d6ed1aa9ad455f6e63ab89d9b4d', class: "kol-tree", "aria-label": this.state._label }, hAsync("ul", { key: '42b9f0647c3ba8ac6035ea7e12d4fa7fa299eb52', class: "kol-tree__treeview-navigation", role: "tree", "aria-label": this.state._label }, hAsync("slot", { key: 'd9fcc22c79d74067b0a979272e18035ab079c016' })))));
31231
+ return (hAsync(Host, { key: 'c491bc228b1db3a9707ee892a6c307ce675bde4e', onSlotchange: this.handleSlotchange.bind(this) }, hAsync("nav", { key: '50bbc945f1302a0ddd8376076e61823a0b123aa3', class: "kol-tree", "aria-label": this.state._label }, hAsync("ul", { key: '3d915f2ef9fe71b126b2778cc093e91a7907f010', class: "kol-tree__treeview-navigation", role: "tree", "aria-label": this.state._label }, hAsync("slot", { key: 'a97a01e4eb25a47c667531d99db716d47e404779' })))));
31171
31232
  }
31172
31233
  static isTreeItem(element) {
31173
31234
  return (element === null || element === void 0 ? void 0 : element.tagName) === KolTreeItemTag.toUpperCase();
@@ -31364,8 +31425,8 @@ class KolVersion {
31364
31425
  };
31365
31426
  }
31366
31427
  render() {
31367
- return (hAsync(Host, { key: '8bb2e7607ac89318676c76d90466e13d445d492a', class: "kol-version" }, hAsync(KolBadgeTag, { key: '033d28fec624afa5976153c7fe58359dd52dea2b', _color: "#bec5c9", _icons: {
31368
- left: { icon: 'codicon codicon-versions', label: this.translateVersion },
31428
+ return (hAsync(Host, { key: 'e510fa48ba288ec02a12f779576f8b5044bffbb3', class: "kol-version" }, hAsync(KolBadgeTag, { key: '7f75603236af9c4803401cfb821bc68c8b5b0015', _color: "#bec5c9", _icons: {
31429
+ left: { icon: 'kolicon-version', label: this.translateVersion },
31369
31430
  }, _label: this.state._label })));
31370
31431
  }
31371
31432
  validateLabel(value) {
@@ -31454,6 +31515,7 @@ registerComponents([
31454
31515
  KolProgress,
31455
31516
  KolQuote,
31456
31517
  KolSelect,
31518
+ KolSelectWc,
31457
31519
  KolSingleSelect,
31458
31520
  KolSkipNav,
31459
31521
  KolSpin,