@otto-de/b2b-core-components 1.32.0 → 1.32.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/dist/b2b-core-components/b2b-core-components.esm.js +1 -1
  2. package/dist/b2b-core-components/p-6b291a01.entry.js +1 -0
  3. package/dist/b2b-core-components/p-88bf92be.entry.js +1 -0
  4. package/dist/b2b-core-components/p-ae7ec34a.entry.js +1 -0
  5. package/dist/b2b-core-components/p-dbf44caf.js +1 -0
  6. package/dist/cjs/b2b-custom-dropdown.cjs.entry.js +5 -5
  7. package/dist/cjs/b2b-date-picker.cjs.entry.js +5 -21
  8. package/dist/cjs/b2b-multiselect-dropdown.cjs.entry.js +8 -20
  9. package/dist/cjs/json-property-binding-util-f532af53.js +20 -0
  10. package/dist/collection/components/custom-dropdown/custom-dropdown.css +8 -1
  11. package/dist/collection/components/custom-dropdown/custom-dropdown.js +4 -4
  12. package/dist/collection/components/date-picker/date-picker.js +5 -21
  13. package/dist/collection/components/multiselect-dropdown/multiselect-dropdown.js +8 -20
  14. package/dist/collection/utils/json-property-binding-util.js +16 -0
  15. package/dist/components/b2b-custom-dropdown.js +5 -5
  16. package/dist/components/b2b-date-picker.js +5 -21
  17. package/dist/components/b2b-multiselect-dropdown.js +8 -20
  18. package/dist/components/json-property-binding-util.js +18 -0
  19. package/dist/esm/b2b-custom-dropdown.entry.js +5 -5
  20. package/dist/esm/b2b-date-picker.entry.js +5 -21
  21. package/dist/esm/b2b-multiselect-dropdown.entry.js +8 -20
  22. package/dist/esm/json-property-binding-util-5513739e.js +18 -0
  23. package/dist/types/components/date-picker/date-picker.d.ts +0 -1
  24. package/dist/types/components/multiselect-dropdown/multiselect-dropdown.d.ts +0 -1
  25. package/dist/types/utils/json-property-binding-util.d.ts +1 -0
  26. package/dist/web-types.json +1 -1
  27. package/package.json +2 -2
  28. package/dist/b2b-core-components/p-2a2653c2.entry.js +0 -1
  29. package/dist/b2b-core-components/p-3f8dc6e5.entry.js +0 -1
  30. package/dist/b2b-core-components/p-cfc55372.entry.js +0 -1
@@ -1,5 +1,6 @@
1
1
  import { h, Host, } from "@stencil/core";
2
2
  import { DateUtils } from "../../utils/datepicker/date-picker-util";
3
+ import { parsePropToArray } from "../../utils/json-property-binding-util";
3
4
  export class B2bDatePicker {
4
5
  constructor() {
5
6
  this.DISABLED_DATE_ERROR_MESSAGE = 'Auswahl nicht möglich, bitte gültiges Datum auswählen.';
@@ -114,36 +115,19 @@ export class B2bDatePicker {
114
115
  isWithWithinLimit() {
115
116
  return this.width >= 300 && this.width <= 600;
116
117
  }
117
- normalizeArrayInput(value) {
118
- if (Array.isArray(value)) {
119
- return value;
120
- }
121
- if (typeof value === 'string') {
122
- try {
123
- return JSON.parse(value);
124
- }
125
- catch (_a) {
126
- return value
127
- .split(',')
128
- .map(v => v.trim())
129
- .filter(Boolean);
130
- }
131
- }
132
- return [];
133
- }
134
118
  normalizeDisableDatesUntilAndFrom(givenDate) {
135
119
  const [day, month, year] = givenDate.split('.').map(Number);
136
120
  return new Date(year, month - 1, day);
137
121
  }
138
122
  componentWillLoad() {
139
- const disableDatesArray = this.normalizeArrayInput(this.disableDates);
123
+ const disableDatesArray = parsePropToArray(this.disableDates);
140
124
  if (disableDatesArray.length > 0) {
141
125
  this.datesToBeDisabled = disableDatesArray.map(date => {
142
126
  const [day, month, year] = date.split('.').map(Number);
143
127
  return new Date(year, month - 1, day);
144
128
  });
145
129
  }
146
- const disableDaysArray = this.normalizeArrayInput(this.disableDays);
130
+ const disableDaysArray = parsePropToArray(this.disableDays);
147
131
  if (disableDaysArray.length > 0) {
148
132
  this.normalizedDisableEvery = disableDaysArray;
149
133
  }
@@ -189,14 +173,14 @@ export class B2bDatePicker {
189
173
  }
190
174
  }
191
175
  handleDisableDatesChanged(newVal) {
192
- const parsed = this.normalizeArrayInput(newVal);
176
+ const parsed = parsePropToArray(newVal);
193
177
  this.datesToBeDisabled = parsed.map(date => {
194
178
  const [day, month, year] = date.split('.').map(Number);
195
179
  return new Date(year, month - 1, day);
196
180
  });
197
181
  }
198
182
  handleDisableDaysChanged(newVal) {
199
- this.normalizedDisableEvery = this.normalizeArrayInput(newVal);
183
+ this.normalizedDisableEvery = parsePropToArray(newVal);
200
184
  }
201
185
  handleDisableDatesUntilChanged(newVal) {
202
186
  this.normalizedDisableDatesUntil =
@@ -1,4 +1,5 @@
1
1
  import { h, Host, } from "@stencil/core";
2
+ import { parsePropToArray } from "../../utils/json-property-binding-util";
2
3
  export class B2bMultiSelectDropdown {
3
4
  constructor() {
4
5
  this.handleInput = event => {
@@ -149,28 +150,15 @@ export class B2bMultiSelectDropdown {
149
150
  this.isOpen = false;
150
151
  this.hasOptionList = this.optionsList.length > 0;
151
152
  }
152
- parsePropToArray(value) {
153
- if (Array.isArray(value))
154
- return value;
155
- try {
156
- return JSON.parse(value);
157
- }
158
- catch (_a) {
159
- return value
160
- .split(',')
161
- .map(v => v.trim())
162
- .filter(Boolean);
163
- }
164
- }
165
153
  componentWillLoad() {
166
- this.selectedValues = this.parsePropToArray(this.selectedValues);
167
- this.optionsList = this.parsePropToArray(this.optionsList);
154
+ this.selectedValues = parsePropToArray(this.selectedValues);
155
+ this.optionsList = parsePropToArray(this.optionsList);
168
156
  this.currentList = this.optionsList;
169
157
  this.currentSelectedValues = this.selectedValues.filter(value => this.optionsList.includes(value));
170
158
  }
171
159
  /** Needed to trigger a re-render for async data */
172
160
  watchPropHandler(newList) {
173
- this.optionsList = this.parsePropToArray(newList);
161
+ this.optionsList = parsePropToArray(newList);
174
162
  this.hasOptionList = this.optionsList.length > 0;
175
163
  if (this.hasOptionList) {
176
164
  this.currentList = this.optionsList;
@@ -179,7 +167,7 @@ export class B2bMultiSelectDropdown {
179
167
  }
180
168
  /** Needed to trigger a re-render for async data */
181
169
  handleSelectedValuesChangeFromOutside(newVal) {
182
- this.selectedValues = this.parsePropToArray(newVal);
170
+ this.selectedValues = parsePropToArray(newVal);
183
171
  this.currentSelectedValues = this.selectedValues.filter(val => this.optionsList.includes(val));
184
172
  }
185
173
  handleSelectedValuesChange(newValues) {
@@ -191,16 +179,16 @@ export class B2bMultiSelectDropdown {
191
179
  this.updateSelectAll(options);
192
180
  }
193
181
  render() {
194
- return (h(Host, { key: 'e60f59edf1496cb0e087cde11fc96867e4ebba25', onFocus: this.setElementOnFocus, onBlur: this.setElementOnBlur, onClick: this.handleMouseDown, onKeyDown: this.handleKeyDown }, h("b2b-input-label", { key: '4d6014efc8cbb1ca0b20b0d581eb5657088ab72d', required: this.required }, this.label), h("div", { key: 'b2b63ef89008b8d7ffdfc29c18d2bf0ef5ddc008', class: {
182
+ return (h(Host, { key: '964bdaefbeef0b8f9f29be1f2e76b795b95ba17e', onFocus: this.setElementOnFocus, onBlur: this.setElementOnBlur, onClick: this.handleMouseDown, onKeyDown: this.handleKeyDown }, h("b2b-input-label", { key: '88ab1efa48ac4ecb42c88ac35e6edbb2ad08ece2', required: this.required }, this.label), h("div", { key: '5befcc8a885278bac7f00a7407d25ff738b52366', class: {
195
183
  'b2b-multiselect-dropdown': true,
196
184
  'b2b-multiselect-dropdown--open': this.isOpen,
197
185
  'b2b-multiselect-dropdown--error': this.invalid && !this.disabled,
198
186
  'b2b-multiselect-dropdown--disabled': this.disabled,
199
187
  'b2b-multiselect-dropdown--focused': this.invalid && this.isElementFocused,
200
- }, tabindex: 0, role: "combobox", onClick: () => (this.isOpen = !this.isOpen), "aria-expanded": this.isElementFocused }, h("div", { key: '2b2fea8d4021d3f0f4706087fcb7b3e67197f09a', class: "b2b-multiselect-dropdown__chip-container" }, this.currentSelectedValues.length === 0 ? (h("span", { class: "b2b-multiselect-dropdown__placeholder" }, this.placeholder)) : (this.renderChips())), h("b2b-icon-100", { key: 'a06b5afbf2992887348a5ca01b323e0660534a44', icon: "b2b_icon-arrow-down" })), h("div", { key: '73d7087e7dfc30deb9946d3ed6302dbab1d37c0c', class: {
188
+ }, tabindex: 0, role: "combobox", onClick: () => (this.isOpen = !this.isOpen), "aria-expanded": this.isElementFocused }, h("div", { key: 'a0e37fe748d07f62fe0e2c1976369eb7ddcecbe9', class: "b2b-multiselect-dropdown__chip-container" }, this.currentSelectedValues.length === 0 ? (h("span", { class: "b2b-multiselect-dropdown__placeholder" }, this.placeholder)) : (this.renderChips())), h("b2b-icon-100", { key: 'c6ffcd302b797626eca29c0ae2876d5bedc1b41f', icon: "b2b_icon-arrow-down" })), h("div", { key: '7ceeb281cf01a1bc526c9d0b6d6c1c0d3c1bca9a', class: {
201
189
  'b2b-multiselect-dropdown__options-container': true,
202
190
  'b2b-multiselect-dropdown__options-container--visible': this.isOpen,
203
- } }, h("div", { key: '7f6cd0531d71da7506d5fb5d907e110f737c2ba8', class: "b2b-multiselect-dropdown__options", role: "listbox", "aria-label": this.label, tabIndex: -1 }, h("div", { key: 'f3577ca1b970398b4c16a9aad51ffcd47be1c1ba', class: "b2b-multiselect-dropdown__option__search" }, h("input", { key: '63a01d6971aa4b37cc23b025fd8d07b0e6774b9e', type: "text", onInput: this.handleInput, class: "b2b-multiselect-dropdown__option__search__input", placeholder: this.searchPlaceholder })), h("b2b-multiselect-option", { key: '568d6ffac5173addc461ff5e4d5add25183e66b1', class: "b2b-multiselect-dropdown__option__select-all", option: this.selectAllLabel, id: "select-all", "onB2b-option-selected": this.handleSelectAll }), this.hasOptionList &&
191
+ } }, h("div", { key: '6c44f49ba781b31ed5bdcfad9e4c571e5bbdc871', class: "b2b-multiselect-dropdown__options", role: "listbox", "aria-label": this.label, tabIndex: -1 }, h("div", { key: '07c1bc3b8acb485632e76ae2f688ea9b6647d94b', class: "b2b-multiselect-dropdown__option__search" }, h("input", { key: '9264228fda064567ee88f3b26e953ef4bc4071b8', type: "text", onInput: this.handleInput, class: "b2b-multiselect-dropdown__option__search__input", placeholder: this.searchPlaceholder })), h("b2b-multiselect-option", { key: '461fc919fecefa0bcbf7ef3adc54ed78e827f8fb', class: "b2b-multiselect-dropdown__option__select-all", option: this.selectAllLabel, id: "select-all", "onB2b-option-selected": this.handleSelectAll }), this.hasOptionList &&
204
192
  this.currentList.map(option => (h("b2b-multiselect-option", { "onB2b-option-selected": this.handleSelectedChange, option: option }))))), (this.hint !== undefined && !this.invalid) ||
205
193
  (this.hint !== undefined && this.disabled) ? (h("span", { class: "b2b-multiselect-dropdown__hint" }, this.hint)) : (''), this.errorMessage !== undefined && this.invalid && !this.disabled ? (h("span", { class: "b2b-multiselect-dropdown__error-message" }, this.errorMessage)) : ('')));
206
194
  }
@@ -0,0 +1,16 @@
1
+ export function parsePropToArray(value) {
2
+ if (Array.isArray(value))
3
+ return value;
4
+ if (typeof value === 'string') {
5
+ try {
6
+ return JSON.parse(value);
7
+ }
8
+ catch (_a) {
9
+ return value
10
+ .split(',')
11
+ .map(v => v.trim())
12
+ .filter(Boolean);
13
+ }
14
+ }
15
+ return [];
16
+ }
@@ -5,7 +5,7 @@ import { d as defineCustomElement$4 } from './icon-100.js';
5
5
  import { d as defineCustomElement$3 } from './input.js';
6
6
  import { d as defineCustomElement$2 } from './input-label.js';
7
7
 
8
- const customDropdownCss = ":root,:host{--b2b-color-black-50:#333333;--b2b-color-black-100:#222222;--b2b-color-white-100:#FFFFFF;--b2b-color-grey-10:#F0F0F0;--b2b-color-grey-25:#F6F6F6;--b2b-color-grey-50:#EEEEEE;--b2b-color-grey-100:#E6E6E6;--b2b-color-grey-150:#D5D5D5;--b2b-color-grey-200:#C4C4C4;--b2b-color-grey-250:#B1B1B1;--b2b-color-grey-300:#9E9E9E;--b2b-color-grey-400:#777777;--b2b-color-red-50:#FFDDE3;--b2b-color-red-100:#D4021D;--b2b-color-red-150:#E6344B;--b2b-color-red-200:#BB0004;--b2b-color-red-250:#850012;--b2b-color-blue-10:#F2F7FF;--b2b-color-blue-25:#DBE7FA;--b2b-color-blue-50:#87B1F0;--b2b-color-blue-100:#0F63E1;--b2b-color-blue-200:#093E90;--b2b-color-primary:#D4021D;--b2b-color-error-100:#E6344B;--b2b-color-warning-50:#FFD998;--b2b-color-warning-100:#FFB432;--b2b-color-success-50:#D6E0CC;--b2b-color-success-100:#326400;--b2b-color-info-50:#CCD6E0;--b2b-color-info-100:#003264;--b2b-color-hover-default:#DBE7FA;--b2b-color-hover-black:#3B3B3B;--b2b-color-background-overlay-transparent-80:#22222280;--b2b-color-background-overlay-transparent-40:#22222240;--b2b-color-table-selected-default:#CCE9FF;--b2b-color-table-expand-hover:#DBE7FA;--b2b-font-family-default:OttoSans, Arial, Helvetica, sans-serif;--b2b-font-weight-thin:100;--b2b-font-weight-normal:500;--b2b-font-weight-bold:700;--b2b-size-1:0.0625rem;--b2b-size-5:0.125rem;--b2b-size-7:0.1875rem;--b2b-size-10:0.25rem;--b2b-size-13:0.3125rem;--b2b-size-15:0.375rem;--b2b-size-20:0.5rem;--b2b-size-25:0.625rem;--b2b-size-30:0.75rem;--b2b-size-35:0.875rem;--b2b-size-40:1rem;--b2b-size-45:1.125rem;--b2b-size-50:1.25rem;--b2b-size-53:1.3125rem;--b2b-size-55:1.375rem;--b2b-size-60:1.5rem;--b2b-size-70:1.75rem;--b2b-size-80:2rem;--b2b-size-90:2.25rem;--b2b-size-100:2.5rem;--b2b-size-120:3rem;--b2b-size-140:3.5rem;--b2b-size-150:3.75rem;--b2b-size-160:4rem;--b2b-size-200:5rem;--b2b-color-error-50:var(--b2b-color-red-50);--b2b-color-background-page:var(--b2b-color-grey-10);--b2b-color-background-box:var(--b2b-color-white-100);--b2b-color-background-card:var(--b2b-color-white-100);--b2b-color-background-overlay:var(--b2b-color-black-100);--b2b-color-border-100:var(--b2b-color-grey-200);--b2b-color-copy-default:var(--b2b-color-black-100);--b2b-color-copy-secondary:var(--b2b-color-grey-400);--b2b-color-copy-inverted:var(--b2b-color-white-100);--b2b-color-copy-overlay:var(--b2b-color-white-100);--b2b-color-headline-title:var(--b2b-color-red-100);--b2b-color-headline-default:var(--b2b-color-black-100);--b2b-color-headline-inverted:var(--b2b-color-white-100);--b2b-color-icon-default:var(--b2b-color-black-100);--b2b-color-icon-secondary:var(--b2b-color-grey-400);--b2b-color-icon-inverted:var(--b2b-color-white-100);--b2b-color-table-expand-default:var(--b2b-color-grey-25);--b2b-size-icon-50:var(--b2b-size-40);--b2b-size-icon-100:var(--b2b-size-60);--b2b-size-icon-200:var(--b2b-size-80);--b2b-size-icon-400:var(--b2b-size-120);--b2b-size-space-25:var(--b2b-size-10);--b2b-size-space-50:var(--b2b-size-20);--b2b-size-space-75:var(--b2b-size-30);--b2b-size-space-100:var(--b2b-size-40);--b2b-size-space-150:var(--b2b-size-60);--b2b-size-space-175:var(--b2b-size-80);--b2b-size-space-200:var(--b2b-size-100);--b2b-size-space-250:var(--b2b-size-160);--b2b-size-space-300:var(--b2b-size-200);--b2b-size-padding-50:var(--b2b-size-20);--b2b-size-padding-100:var(--b2b-size-40);--b2b-size-padding-150:var(--b2b-size-60);--b2b-size-padding-175:var(--b2b-size-80);--b2b-size-border-width-50:var(--b2b-size-1);--b2b-size-border-width-100:var(--b2b-size-5);--b2b-size-border-width-150:var(--b2b-size-10);--b2b-size-border-radius-100:var(--b2b-size-7);--b2b-size-border-no-radius-left:0 var(--b2b-size-7) var(--b2b-size-7) 0;--b2b-size-border-no-radius-right:var(--b2b-size-7) 0 0 var(--b2b-size-7);--b2b-size-border-no-radius-top:0 0 var(--b2b-size-7) var(--b2b-size-7);--b2b-size-border-no-radius-bottom:var(--b2b-size-7) var(--b2b-size-7) 0 0;--b2b-size-copy-50:var(--b2b-size-30);--b2b-size-copy-100:var(--b2b-size-35);--b2b-size-copy-125:var(--b2b-size-40);--b2b-size-copy-200:var(--b2b-size-45);--b2b-size-copy-300:var(--b2b-size-60);--b2b-size-copy-line-height-50:var(--b2b-size-40);--b2b-size-copy-line-height-75:var(--b2b-size-45);--b2b-size-copy-line-height-100:var(--b2b-size-53);--b2b-size-copy-line-height-125:var(--b2b-size-60);--b2b-size-copy-line-height-200:var(--b2b-size-60);--b2b-size-copy-line-height-300:var(--b2b-size-90);--b2b-size-headline-100:var(--b2b-size-40);--b2b-size-headline-200:var(--b2b-size-45);--b2b-size-headline-400:var(--b2b-size-60);--b2b-size-headline-line-height-100:var(--b2b-size-60);--b2b-size-headline-line-height-200:var(--b2b-size-60);--b2b-size-headline-line-height-400:var(--b2b-size-60)}:root [data-theme=\"dark\"]{--b2b-color-black-50:#333333;--b2b-color-black-100:#222222;--b2b-color-white-100:#FFFFFF;--b2b-color-grey-10:#F0F0F0;--b2b-color-grey-25:#F6F6F6;--b2b-color-grey-50:#EEEEEE;--b2b-color-grey-100:#E6E6E6;--b2b-color-grey-150:#D5D5D5;--b2b-color-grey-200:#C4C4C4;--b2b-color-grey-250:#B1B1B1;--b2b-color-grey-300:#9E9E9E;--b2b-color-grey-400:#777777;--b2b-color-red-50:#FFDDE3;--b2b-color-red-100:#D4021D;--b2b-color-red-150:#E6344B;--b2b-color-red-200:#BB0004;--b2b-color-red-250:#850012;--b2b-color-blue-10:#F2F7FF;--b2b-color-blue-25:#DBE7FA;--b2b-color-blue-50:#87B1F0;--b2b-color-blue-100:#0F63E1;--b2b-color-blue-200:#093E90;--b2b-color-primary:#D4021D;--b2b-color-error-100:#E6344B;--b2b-color-warning-50:#FFD998;--b2b-color-warning-100:#FFB432;--b2b-color-success-50:#D6E0CC;--b2b-color-success-100:#326400;--b2b-color-info-50:#CCD6E0;--b2b-color-info-100:#003264;--b2b-color-hover-default:#DBE7FA;--b2b-color-hover-black:#3B3B3B;--b2b-font-family-default:OttoSans, Arial, Helvetica, sans-serif;--b2b-font-weight-thin:100;--b2b-font-weight-normal:500;--b2b-font-weight-bold:700;--b2b-size-1:0.0625rem;--b2b-size-5:0.125rem;--b2b-size-7:0.1875rem;--b2b-size-10:0.25rem;--b2b-size-13:0.3125rem;--b2b-size-15:0.375rem;--b2b-size-20:0.5rem;--b2b-size-25:0.625rem;--b2b-size-30:0.75rem;--b2b-size-35:0.875rem;--b2b-size-40:1rem;--b2b-size-45:1.125rem;--b2b-size-50:1.25rem;--b2b-size-53:1.3125rem;--b2b-size-55:1.375rem;--b2b-size-60:1.5rem;--b2b-size-70:1.75rem;--b2b-size-80:2rem;--b2b-size-90:2.25rem;--b2b-size-100:2.5rem;--b2b-size-120:3rem;--b2b-size-140:3.5rem;--b2b-size-150:3.75rem;--b2b-size-160:4rem;--b2b-size-200:5rem;--b2b-color-error-50:var(--b2b-color-red-50);--b2b-color-background-box:var(--b2b-color-black-50);--b2b-color-background-card:var(--b2b-color-black-50);--b2b-color-background-page:var(--b2b-color-grey-100);--b2b-color-border-100:var(--b2b-color-white-100);--b2b-color-copy-default:var(--b2b-color-white-100);--b2b-color-copy-secondary:var(--b2b-color-grey-100);--b2b-color-copy-inverted:var(--b2b-color-black-100);--b2b-color-headline-title:var(--b2b-color-red-50);--b2b-color-headline-default:var(--b2b-color-white-100);--b2b-color-headline-inverted:var(--b2b-color-black-100);--b2b-color-icon-default:var(--b2b-color-white-100);--b2b-color-icon-secondary:var(--b2b-color-grey-400);--b2b-color-icon-inverted:var(--b2b-color-black-100)}@font-face{font-family:OttoSans;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans.ttf\");font-weight:normal;font-style:normal}@font-face{font-family:OttoSans;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-bold.woff\") format(\"woff\"), url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-bold.ttf\") format(\"truetype\");font-weight:bold;font-style:normal}@font-face{font-family:OttoSans;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-thin.woff\") format(\"woff\"), url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-thin.ttf\") format(\"truetype\");font-weight:100;font-style:normal}@font-face{font-family:ObcIcons;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/obc-icons.woff\")}:host{width:100%}.b2b-custom-dropdown__trigger{position:relative;display:inline !important;cursor:pointer}.b2b-custom-dropdown{display:none}.b2b-custom-dropdown--on{display:block}.b2b-custom-dropdown--drop-shadow{box-shadow:0 0 5px rgba(0, 0, 0, 0.2)}.b2b-custom-dropdown--border{border:1px solid var(--b2b-color-grey-200)}.b2b-custom-dropdown-search{padding:var(--b2b-size-30);display:none}.b2b-custom-dropdown-search--enabled{display:block;border-bottom:var(--b2b-size-1) solid var(--b2b-color-border-100)}.b2b-custom-dropdown__options-scroll-container{position:relative;display:block;max-height:288px;overflow-y:auto;margin:0}.b2b-custom-dropdown__options-container{position:relative;display:block;margin:0}.b2b-custom-dropdown__options-container--disabled{display:none}.b2b-custom-dropdown__option--hidden{display:none}::slotted(b2b-custom-dropdown-option.b2b-custom-dropdown__option--hidden){display:none}";
8
+ const customDropdownCss = ":root,:host{--b2b-color-black-50:#333333;--b2b-color-black-100:#222222;--b2b-color-white-100:#FFFFFF;--b2b-color-grey-10:#F0F0F0;--b2b-color-grey-25:#F6F6F6;--b2b-color-grey-50:#EEEEEE;--b2b-color-grey-100:#E6E6E6;--b2b-color-grey-150:#D5D5D5;--b2b-color-grey-200:#C4C4C4;--b2b-color-grey-250:#B1B1B1;--b2b-color-grey-300:#9E9E9E;--b2b-color-grey-400:#777777;--b2b-color-red-50:#FFDDE3;--b2b-color-red-100:#D4021D;--b2b-color-red-150:#E6344B;--b2b-color-red-200:#BB0004;--b2b-color-red-250:#850012;--b2b-color-blue-10:#F2F7FF;--b2b-color-blue-25:#DBE7FA;--b2b-color-blue-50:#87B1F0;--b2b-color-blue-100:#0F63E1;--b2b-color-blue-200:#093E90;--b2b-color-primary:#D4021D;--b2b-color-error-100:#E6344B;--b2b-color-warning-50:#FFD998;--b2b-color-warning-100:#FFB432;--b2b-color-success-50:#D6E0CC;--b2b-color-success-100:#326400;--b2b-color-info-50:#CCD6E0;--b2b-color-info-100:#003264;--b2b-color-hover-default:#DBE7FA;--b2b-color-hover-black:#3B3B3B;--b2b-color-background-overlay-transparent-80:#22222280;--b2b-color-background-overlay-transparent-40:#22222240;--b2b-color-table-selected-default:#CCE9FF;--b2b-color-table-expand-hover:#DBE7FA;--b2b-font-family-default:OttoSans, Arial, Helvetica, sans-serif;--b2b-font-weight-thin:100;--b2b-font-weight-normal:500;--b2b-font-weight-bold:700;--b2b-size-1:0.0625rem;--b2b-size-5:0.125rem;--b2b-size-7:0.1875rem;--b2b-size-10:0.25rem;--b2b-size-13:0.3125rem;--b2b-size-15:0.375rem;--b2b-size-20:0.5rem;--b2b-size-25:0.625rem;--b2b-size-30:0.75rem;--b2b-size-35:0.875rem;--b2b-size-40:1rem;--b2b-size-45:1.125rem;--b2b-size-50:1.25rem;--b2b-size-53:1.3125rem;--b2b-size-55:1.375rem;--b2b-size-60:1.5rem;--b2b-size-70:1.75rem;--b2b-size-80:2rem;--b2b-size-90:2.25rem;--b2b-size-100:2.5rem;--b2b-size-120:3rem;--b2b-size-140:3.5rem;--b2b-size-150:3.75rem;--b2b-size-160:4rem;--b2b-size-200:5rem;--b2b-color-error-50:var(--b2b-color-red-50);--b2b-color-background-page:var(--b2b-color-grey-10);--b2b-color-background-box:var(--b2b-color-white-100);--b2b-color-background-card:var(--b2b-color-white-100);--b2b-color-background-overlay:var(--b2b-color-black-100);--b2b-color-border-100:var(--b2b-color-grey-200);--b2b-color-copy-default:var(--b2b-color-black-100);--b2b-color-copy-secondary:var(--b2b-color-grey-400);--b2b-color-copy-inverted:var(--b2b-color-white-100);--b2b-color-copy-overlay:var(--b2b-color-white-100);--b2b-color-headline-title:var(--b2b-color-red-100);--b2b-color-headline-default:var(--b2b-color-black-100);--b2b-color-headline-inverted:var(--b2b-color-white-100);--b2b-color-icon-default:var(--b2b-color-black-100);--b2b-color-icon-secondary:var(--b2b-color-grey-400);--b2b-color-icon-inverted:var(--b2b-color-white-100);--b2b-color-table-expand-default:var(--b2b-color-grey-25);--b2b-size-icon-50:var(--b2b-size-40);--b2b-size-icon-100:var(--b2b-size-60);--b2b-size-icon-200:var(--b2b-size-80);--b2b-size-icon-400:var(--b2b-size-120);--b2b-size-space-25:var(--b2b-size-10);--b2b-size-space-50:var(--b2b-size-20);--b2b-size-space-75:var(--b2b-size-30);--b2b-size-space-100:var(--b2b-size-40);--b2b-size-space-150:var(--b2b-size-60);--b2b-size-space-175:var(--b2b-size-80);--b2b-size-space-200:var(--b2b-size-100);--b2b-size-space-250:var(--b2b-size-160);--b2b-size-space-300:var(--b2b-size-200);--b2b-size-padding-50:var(--b2b-size-20);--b2b-size-padding-100:var(--b2b-size-40);--b2b-size-padding-150:var(--b2b-size-60);--b2b-size-padding-175:var(--b2b-size-80);--b2b-size-border-width-50:var(--b2b-size-1);--b2b-size-border-width-100:var(--b2b-size-5);--b2b-size-border-width-150:var(--b2b-size-10);--b2b-size-border-radius-100:var(--b2b-size-7);--b2b-size-border-no-radius-left:0 var(--b2b-size-7) var(--b2b-size-7) 0;--b2b-size-border-no-radius-right:var(--b2b-size-7) 0 0 var(--b2b-size-7);--b2b-size-border-no-radius-top:0 0 var(--b2b-size-7) var(--b2b-size-7);--b2b-size-border-no-radius-bottom:var(--b2b-size-7) var(--b2b-size-7) 0 0;--b2b-size-copy-50:var(--b2b-size-30);--b2b-size-copy-100:var(--b2b-size-35);--b2b-size-copy-125:var(--b2b-size-40);--b2b-size-copy-200:var(--b2b-size-45);--b2b-size-copy-300:var(--b2b-size-60);--b2b-size-copy-line-height-50:var(--b2b-size-40);--b2b-size-copy-line-height-75:var(--b2b-size-45);--b2b-size-copy-line-height-100:var(--b2b-size-53);--b2b-size-copy-line-height-125:var(--b2b-size-60);--b2b-size-copy-line-height-200:var(--b2b-size-60);--b2b-size-copy-line-height-300:var(--b2b-size-90);--b2b-size-headline-100:var(--b2b-size-40);--b2b-size-headline-200:var(--b2b-size-45);--b2b-size-headline-400:var(--b2b-size-60);--b2b-size-headline-line-height-100:var(--b2b-size-60);--b2b-size-headline-line-height-200:var(--b2b-size-60);--b2b-size-headline-line-height-400:var(--b2b-size-60)}:root [data-theme=\"dark\"]{--b2b-color-black-50:#333333;--b2b-color-black-100:#222222;--b2b-color-white-100:#FFFFFF;--b2b-color-grey-10:#F0F0F0;--b2b-color-grey-25:#F6F6F6;--b2b-color-grey-50:#EEEEEE;--b2b-color-grey-100:#E6E6E6;--b2b-color-grey-150:#D5D5D5;--b2b-color-grey-200:#C4C4C4;--b2b-color-grey-250:#B1B1B1;--b2b-color-grey-300:#9E9E9E;--b2b-color-grey-400:#777777;--b2b-color-red-50:#FFDDE3;--b2b-color-red-100:#D4021D;--b2b-color-red-150:#E6344B;--b2b-color-red-200:#BB0004;--b2b-color-red-250:#850012;--b2b-color-blue-10:#F2F7FF;--b2b-color-blue-25:#DBE7FA;--b2b-color-blue-50:#87B1F0;--b2b-color-blue-100:#0F63E1;--b2b-color-blue-200:#093E90;--b2b-color-primary:#D4021D;--b2b-color-error-100:#E6344B;--b2b-color-warning-50:#FFD998;--b2b-color-warning-100:#FFB432;--b2b-color-success-50:#D6E0CC;--b2b-color-success-100:#326400;--b2b-color-info-50:#CCD6E0;--b2b-color-info-100:#003264;--b2b-color-hover-default:#DBE7FA;--b2b-color-hover-black:#3B3B3B;--b2b-font-family-default:OttoSans, Arial, Helvetica, sans-serif;--b2b-font-weight-thin:100;--b2b-font-weight-normal:500;--b2b-font-weight-bold:700;--b2b-size-1:0.0625rem;--b2b-size-5:0.125rem;--b2b-size-7:0.1875rem;--b2b-size-10:0.25rem;--b2b-size-13:0.3125rem;--b2b-size-15:0.375rem;--b2b-size-20:0.5rem;--b2b-size-25:0.625rem;--b2b-size-30:0.75rem;--b2b-size-35:0.875rem;--b2b-size-40:1rem;--b2b-size-45:1.125rem;--b2b-size-50:1.25rem;--b2b-size-53:1.3125rem;--b2b-size-55:1.375rem;--b2b-size-60:1.5rem;--b2b-size-70:1.75rem;--b2b-size-80:2rem;--b2b-size-90:2.25rem;--b2b-size-100:2.5rem;--b2b-size-120:3rem;--b2b-size-140:3.5rem;--b2b-size-150:3.75rem;--b2b-size-160:4rem;--b2b-size-200:5rem;--b2b-color-error-50:var(--b2b-color-red-50);--b2b-color-background-box:var(--b2b-color-black-50);--b2b-color-background-card:var(--b2b-color-black-50);--b2b-color-background-page:var(--b2b-color-grey-100);--b2b-color-border-100:var(--b2b-color-white-100);--b2b-color-copy-default:var(--b2b-color-white-100);--b2b-color-copy-secondary:var(--b2b-color-grey-100);--b2b-color-copy-inverted:var(--b2b-color-black-100);--b2b-color-headline-title:var(--b2b-color-red-50);--b2b-color-headline-default:var(--b2b-color-white-100);--b2b-color-headline-inverted:var(--b2b-color-black-100);--b2b-color-icon-default:var(--b2b-color-white-100);--b2b-color-icon-secondary:var(--b2b-color-grey-400);--b2b-color-icon-inverted:var(--b2b-color-black-100)}@font-face{font-family:OttoSans;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans.ttf\");font-weight:normal;font-style:normal}@font-face{font-family:OttoSans;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-bold.woff\") format(\"woff\"), url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-bold.ttf\") format(\"truetype\");font-weight:bold;font-style:normal}@font-face{font-family:OttoSans;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-thin.woff\") format(\"woff\"), url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-thin.ttf\") format(\"truetype\");font-weight:100;font-style:normal}@font-face{font-family:ObcIcons;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/obc-icons.woff\")}:host{display:inline-block;position:relative;width:auto}.b2b-custom-dropdown__trigger{position:relative;display:inline !important;cursor:pointer}.b2b-custom-dropdown{position:absolute;top:100%;left:0;z-index:1000;inline-size:var(--b2b-dropdown-width, 300px);display:none}.b2b-custom-dropdown--on{display:block}.b2b-custom-dropdown--drop-shadow{box-shadow:0 0 5px rgba(0, 0, 0, 0.2)}.b2b-custom-dropdown--border{border:1px solid var(--b2b-color-grey-200)}.b2b-custom-dropdown-search{padding:var(--b2b-size-30);display:none}.b2b-custom-dropdown-search--enabled{display:block;border-bottom:var(--b2b-size-1) solid var(--b2b-color-border-100)}.b2b-custom-dropdown__options-scroll-container{position:relative;display:block;max-height:288px;overflow-y:auto;margin:0}.b2b-custom-dropdown__options-container{position:relative;display:block;margin:0}.b2b-custom-dropdown__options-container--disabled{display:none}.b2b-custom-dropdown__option--hidden{display:none}::slotted(b2b-custom-dropdown-option.b2b-custom-dropdown__option--hidden){display:none}";
9
9
  const B2bCustomDropdownStyle0 = customDropdownCss;
10
10
 
11
11
  const B2bCustomDropdownComponent = /*@__PURE__*/ proxyCustomElement(class B2bCustomDropdownComponent extends HTMLElement {
@@ -82,12 +82,12 @@ const B2bCustomDropdownComponent = /*@__PURE__*/ proxyCustomElement(class B2bCus
82
82
  'b2b-custom-dropdown--on': this.opened && !this.disabled,
83
83
  'b2b-custom-dropdown--drop-shadow': this.dropshadow,
84
84
  'b2b-custom-dropdown--border': this.border,
85
- } }, h("b2b-background-box", { key: 'f15f9489ddc9ffe94ee3b4b2a6236b97fdbe86ba', noPadding: true, borderTop: "none", borderBottom: "none", borderRight: "none", borderLeft: "none" }, h("div", { key: '7c578f211b4afeae771d9f09551fffc70c212315', class: {
85
+ } }, h("b2b-background-box", { key: 'f15f9489ddc9ffe94ee3b4b2a6236b97fdbe86ba', noPadding: true, borderTop: "none", borderBottom: "none", borderRight: "none", borderLeft: "none" }, h("div", { key: 'b1a26c973d7eef092d31cde5f6593c5cd6ef5671', class: {
86
86
  'b2b-custom-dropdown-search': true,
87
- 'b2b-custom-dropdown-search--enabled': this.allOptions.length >= 6 && !this.disabled,
88
- } }, h("b2b-input", { key: '6be5918919c8110a0020126f1b8f29794f3d9c1c', placeholder: this.placeholder, "onB2b-input": this.handleInput }, h("b2b-icon-100", { key: 'a1e3e511eaa8487dfb964ab24ee0f1e9bafbe10b', icon: "b2b_icon-search", slot: "end" })))), h("div", { key: '2daf4ce8c49192881fcfeb33ca35fd04835f3d60', class: this.allOptions.length >= 6
87
+ 'b2b-custom-dropdown-search--enabled': this.allOptions.length > 6 && !this.disabled,
88
+ } }, h("b2b-input", { key: 'f570afbcfb650229a661fa365c527d0824f34342', placeholder: this.placeholder, "onB2b-input": this.handleInput }, h("b2b-icon-100", { key: '2c6e7c342c9e1c4ae91ec3204fa5b972feac0411', icon: "b2b_icon-search", slot: "end" })))), h("div", { key: '76662fbb1ad9260f62d8b8a9df8da9ecea465f9b', class: this.allOptions.length > 6
89
89
  ? 'b2b-custom-dropdown__options-scroll-container'
90
- : 'b2b-custom-dropdown__options-container' }, h("slot", { key: '328ae2c6ae90b0fc45ba1c1c4e88736d73f021cc', name: "option" })))));
90
+ : 'b2b-custom-dropdown__options-container' }, h("slot", { key: 'ad2b7dfb88642693837183f99da2e3b115f23dd3', name: "option" })))));
91
91
  }
92
92
  get hostElement() { return this; }
93
93
  static get style() { return B2bCustomDropdownStyle0; }
@@ -1,5 +1,6 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import { D as DateUtils, d as defineCustomElement$9 } from './date-picker-days.js';
3
+ import { p as parsePropToArray } from './json-property-binding-util.js';
3
4
  import { d as defineCustomElement$8 } from './date-picker-days-header.js';
4
5
  import { d as defineCustomElement$7 } from './date-picker-header.js';
5
6
  import { d as defineCustomElement$6 } from './date-picker-months.js';
@@ -130,36 +131,19 @@ const B2bDatePicker$1 = /*@__PURE__*/ proxyCustomElement(class B2bDatePicker ext
130
131
  isWithWithinLimit() {
131
132
  return this.width >= 300 && this.width <= 600;
132
133
  }
133
- normalizeArrayInput(value) {
134
- if (Array.isArray(value)) {
135
- return value;
136
- }
137
- if (typeof value === 'string') {
138
- try {
139
- return JSON.parse(value);
140
- }
141
- catch (_a) {
142
- return value
143
- .split(',')
144
- .map(v => v.trim())
145
- .filter(Boolean);
146
- }
147
- }
148
- return [];
149
- }
150
134
  normalizeDisableDatesUntilAndFrom(givenDate) {
151
135
  const [day, month, year] = givenDate.split('.').map(Number);
152
136
  return new Date(year, month - 1, day);
153
137
  }
154
138
  componentWillLoad() {
155
- const disableDatesArray = this.normalizeArrayInput(this.disableDates);
139
+ const disableDatesArray = parsePropToArray(this.disableDates);
156
140
  if (disableDatesArray.length > 0) {
157
141
  this.datesToBeDisabled = disableDatesArray.map(date => {
158
142
  const [day, month, year] = date.split('.').map(Number);
159
143
  return new Date(year, month - 1, day);
160
144
  });
161
145
  }
162
- const disableDaysArray = this.normalizeArrayInput(this.disableDays);
146
+ const disableDaysArray = parsePropToArray(this.disableDays);
163
147
  if (disableDaysArray.length > 0) {
164
148
  this.normalizedDisableEvery = disableDaysArray;
165
149
  }
@@ -205,14 +189,14 @@ const B2bDatePicker$1 = /*@__PURE__*/ proxyCustomElement(class B2bDatePicker ext
205
189
  }
206
190
  }
207
191
  handleDisableDatesChanged(newVal) {
208
- const parsed = this.normalizeArrayInput(newVal);
192
+ const parsed = parsePropToArray(newVal);
209
193
  this.datesToBeDisabled = parsed.map(date => {
210
194
  const [day, month, year] = date.split('.').map(Number);
211
195
  return new Date(year, month - 1, day);
212
196
  });
213
197
  }
214
198
  handleDisableDaysChanged(newVal) {
215
- this.normalizedDisableEvery = this.normalizeArrayInput(newVal);
199
+ this.normalizedDisableEvery = parsePropToArray(newVal);
216
200
  }
217
201
  handleDisableDatesUntilChanged(newVal) {
218
202
  this.normalizedDisableDatesUntil =
@@ -1,4 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
+ import { p as parsePropToArray } from './json-property-binding-util.js';
2
3
  import { d as defineCustomElement$6 } from './checkbox.js';
3
4
  import { d as defineCustomElement$5 } from './chip.js';
4
5
  import { d as defineCustomElement$4 } from './icon-100.js';
@@ -162,28 +163,15 @@ const B2bMultiSelectDropdown = /*@__PURE__*/ proxyCustomElement(class B2bMultiSe
162
163
  this.isOpen = false;
163
164
  this.hasOptionList = this.optionsList.length > 0;
164
165
  }
165
- parsePropToArray(value) {
166
- if (Array.isArray(value))
167
- return value;
168
- try {
169
- return JSON.parse(value);
170
- }
171
- catch (_a) {
172
- return value
173
- .split(',')
174
- .map(v => v.trim())
175
- .filter(Boolean);
176
- }
177
- }
178
166
  componentWillLoad() {
179
- this.selectedValues = this.parsePropToArray(this.selectedValues);
180
- this.optionsList = this.parsePropToArray(this.optionsList);
167
+ this.selectedValues = parsePropToArray(this.selectedValues);
168
+ this.optionsList = parsePropToArray(this.optionsList);
181
169
  this.currentList = this.optionsList;
182
170
  this.currentSelectedValues = this.selectedValues.filter(value => this.optionsList.includes(value));
183
171
  }
184
172
  /** Needed to trigger a re-render for async data */
185
173
  watchPropHandler(newList) {
186
- this.optionsList = this.parsePropToArray(newList);
174
+ this.optionsList = parsePropToArray(newList);
187
175
  this.hasOptionList = this.optionsList.length > 0;
188
176
  if (this.hasOptionList) {
189
177
  this.currentList = this.optionsList;
@@ -192,7 +180,7 @@ const B2bMultiSelectDropdown = /*@__PURE__*/ proxyCustomElement(class B2bMultiSe
192
180
  }
193
181
  /** Needed to trigger a re-render for async data */
194
182
  handleSelectedValuesChangeFromOutside(newVal) {
195
- this.selectedValues = this.parsePropToArray(newVal);
183
+ this.selectedValues = parsePropToArray(newVal);
196
184
  this.currentSelectedValues = this.selectedValues.filter(val => this.optionsList.includes(val));
197
185
  }
198
186
  handleSelectedValuesChange(newValues) {
@@ -204,16 +192,16 @@ const B2bMultiSelectDropdown = /*@__PURE__*/ proxyCustomElement(class B2bMultiSe
204
192
  this.updateSelectAll(options);
205
193
  }
206
194
  render() {
207
- return (h(Host, { key: 'e60f59edf1496cb0e087cde11fc96867e4ebba25', onFocus: this.setElementOnFocus, onBlur: this.setElementOnBlur, onClick: this.handleMouseDown, onKeyDown: this.handleKeyDown }, h("b2b-input-label", { key: '4d6014efc8cbb1ca0b20b0d581eb5657088ab72d', required: this.required }, this.label), h("div", { key: 'b2b63ef89008b8d7ffdfc29c18d2bf0ef5ddc008', class: {
195
+ return (h(Host, { key: '964bdaefbeef0b8f9f29be1f2e76b795b95ba17e', onFocus: this.setElementOnFocus, onBlur: this.setElementOnBlur, onClick: this.handleMouseDown, onKeyDown: this.handleKeyDown }, h("b2b-input-label", { key: '88ab1efa48ac4ecb42c88ac35e6edbb2ad08ece2', required: this.required }, this.label), h("div", { key: '5befcc8a885278bac7f00a7407d25ff738b52366', class: {
208
196
  'b2b-multiselect-dropdown': true,
209
197
  'b2b-multiselect-dropdown--open': this.isOpen,
210
198
  'b2b-multiselect-dropdown--error': this.invalid && !this.disabled,
211
199
  'b2b-multiselect-dropdown--disabled': this.disabled,
212
200
  'b2b-multiselect-dropdown--focused': this.invalid && this.isElementFocused,
213
- }, tabindex: 0, role: "combobox", onClick: () => (this.isOpen = !this.isOpen), "aria-expanded": this.isElementFocused }, h("div", { key: '2b2fea8d4021d3f0f4706087fcb7b3e67197f09a', class: "b2b-multiselect-dropdown__chip-container" }, this.currentSelectedValues.length === 0 ? (h("span", { class: "b2b-multiselect-dropdown__placeholder" }, this.placeholder)) : (this.renderChips())), h("b2b-icon-100", { key: 'a06b5afbf2992887348a5ca01b323e0660534a44', icon: "b2b_icon-arrow-down" })), h("div", { key: '73d7087e7dfc30deb9946d3ed6302dbab1d37c0c', class: {
201
+ }, tabindex: 0, role: "combobox", onClick: () => (this.isOpen = !this.isOpen), "aria-expanded": this.isElementFocused }, h("div", { key: 'a0e37fe748d07f62fe0e2c1976369eb7ddcecbe9', class: "b2b-multiselect-dropdown__chip-container" }, this.currentSelectedValues.length === 0 ? (h("span", { class: "b2b-multiselect-dropdown__placeholder" }, this.placeholder)) : (this.renderChips())), h("b2b-icon-100", { key: 'c6ffcd302b797626eca29c0ae2876d5bedc1b41f', icon: "b2b_icon-arrow-down" })), h("div", { key: '7ceeb281cf01a1bc526c9d0b6d6c1c0d3c1bca9a', class: {
214
202
  'b2b-multiselect-dropdown__options-container': true,
215
203
  'b2b-multiselect-dropdown__options-container--visible': this.isOpen,
216
- } }, h("div", { key: '7f6cd0531d71da7506d5fb5d907e110f737c2ba8', class: "b2b-multiselect-dropdown__options", role: "listbox", "aria-label": this.label, tabIndex: -1 }, h("div", { key: 'f3577ca1b970398b4c16a9aad51ffcd47be1c1ba', class: "b2b-multiselect-dropdown__option__search" }, h("input", { key: '63a01d6971aa4b37cc23b025fd8d07b0e6774b9e', type: "text", onInput: this.handleInput, class: "b2b-multiselect-dropdown__option__search__input", placeholder: this.searchPlaceholder })), h("b2b-multiselect-option", { key: '568d6ffac5173addc461ff5e4d5add25183e66b1', class: "b2b-multiselect-dropdown__option__select-all", option: this.selectAllLabel, id: "select-all", "onB2b-option-selected": this.handleSelectAll }), this.hasOptionList &&
204
+ } }, h("div", { key: '6c44f49ba781b31ed5bdcfad9e4c571e5bbdc871', class: "b2b-multiselect-dropdown__options", role: "listbox", "aria-label": this.label, tabIndex: -1 }, h("div", { key: '07c1bc3b8acb485632e76ae2f688ea9b6647d94b', class: "b2b-multiselect-dropdown__option__search" }, h("input", { key: '9264228fda064567ee88f3b26e953ef4bc4071b8', type: "text", onInput: this.handleInput, class: "b2b-multiselect-dropdown__option__search__input", placeholder: this.searchPlaceholder })), h("b2b-multiselect-option", { key: '461fc919fecefa0bcbf7ef3adc54ed78e827f8fb', class: "b2b-multiselect-dropdown__option__select-all", option: this.selectAllLabel, id: "select-all", "onB2b-option-selected": this.handleSelectAll }), this.hasOptionList &&
217
205
  this.currentList.map(option => (h("b2b-multiselect-option", { "onB2b-option-selected": this.handleSelectedChange, option: option }))))), (this.hint !== undefined && !this.invalid) ||
218
206
  (this.hint !== undefined && this.disabled) ? (h("span", { class: "b2b-multiselect-dropdown__hint" }, this.hint)) : (''), this.errorMessage !== undefined && this.invalid && !this.disabled ? (h("span", { class: "b2b-multiselect-dropdown__error-message" }, this.errorMessage)) : ('')));
219
207
  }
@@ -0,0 +1,18 @@
1
+ function parsePropToArray(value) {
2
+ if (Array.isArray(value))
3
+ return value;
4
+ if (typeof value === 'string') {
5
+ try {
6
+ return JSON.parse(value);
7
+ }
8
+ catch (_a) {
9
+ return value
10
+ .split(',')
11
+ .map(v => v.trim())
12
+ .filter(Boolean);
13
+ }
14
+ }
15
+ return [];
16
+ }
17
+
18
+ export { parsePropToArray as p };
@@ -1,7 +1,7 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement } from './index-ab9eb36d.js';
2
2
  import { i as isClickOutside } from './utils-17e4d283.js';
3
3
 
4
- const customDropdownCss = ":root,:host{--b2b-color-black-50:#333333;--b2b-color-black-100:#222222;--b2b-color-white-100:#FFFFFF;--b2b-color-grey-10:#F0F0F0;--b2b-color-grey-25:#F6F6F6;--b2b-color-grey-50:#EEEEEE;--b2b-color-grey-100:#E6E6E6;--b2b-color-grey-150:#D5D5D5;--b2b-color-grey-200:#C4C4C4;--b2b-color-grey-250:#B1B1B1;--b2b-color-grey-300:#9E9E9E;--b2b-color-grey-400:#777777;--b2b-color-red-50:#FFDDE3;--b2b-color-red-100:#D4021D;--b2b-color-red-150:#E6344B;--b2b-color-red-200:#BB0004;--b2b-color-red-250:#850012;--b2b-color-blue-10:#F2F7FF;--b2b-color-blue-25:#DBE7FA;--b2b-color-blue-50:#87B1F0;--b2b-color-blue-100:#0F63E1;--b2b-color-blue-200:#093E90;--b2b-color-primary:#D4021D;--b2b-color-error-100:#E6344B;--b2b-color-warning-50:#FFD998;--b2b-color-warning-100:#FFB432;--b2b-color-success-50:#D6E0CC;--b2b-color-success-100:#326400;--b2b-color-info-50:#CCD6E0;--b2b-color-info-100:#003264;--b2b-color-hover-default:#DBE7FA;--b2b-color-hover-black:#3B3B3B;--b2b-color-background-overlay-transparent-80:#22222280;--b2b-color-background-overlay-transparent-40:#22222240;--b2b-color-table-selected-default:#CCE9FF;--b2b-color-table-expand-hover:#DBE7FA;--b2b-font-family-default:OttoSans, Arial, Helvetica, sans-serif;--b2b-font-weight-thin:100;--b2b-font-weight-normal:500;--b2b-font-weight-bold:700;--b2b-size-1:0.0625rem;--b2b-size-5:0.125rem;--b2b-size-7:0.1875rem;--b2b-size-10:0.25rem;--b2b-size-13:0.3125rem;--b2b-size-15:0.375rem;--b2b-size-20:0.5rem;--b2b-size-25:0.625rem;--b2b-size-30:0.75rem;--b2b-size-35:0.875rem;--b2b-size-40:1rem;--b2b-size-45:1.125rem;--b2b-size-50:1.25rem;--b2b-size-53:1.3125rem;--b2b-size-55:1.375rem;--b2b-size-60:1.5rem;--b2b-size-70:1.75rem;--b2b-size-80:2rem;--b2b-size-90:2.25rem;--b2b-size-100:2.5rem;--b2b-size-120:3rem;--b2b-size-140:3.5rem;--b2b-size-150:3.75rem;--b2b-size-160:4rem;--b2b-size-200:5rem;--b2b-color-error-50:var(--b2b-color-red-50);--b2b-color-background-page:var(--b2b-color-grey-10);--b2b-color-background-box:var(--b2b-color-white-100);--b2b-color-background-card:var(--b2b-color-white-100);--b2b-color-background-overlay:var(--b2b-color-black-100);--b2b-color-border-100:var(--b2b-color-grey-200);--b2b-color-copy-default:var(--b2b-color-black-100);--b2b-color-copy-secondary:var(--b2b-color-grey-400);--b2b-color-copy-inverted:var(--b2b-color-white-100);--b2b-color-copy-overlay:var(--b2b-color-white-100);--b2b-color-headline-title:var(--b2b-color-red-100);--b2b-color-headline-default:var(--b2b-color-black-100);--b2b-color-headline-inverted:var(--b2b-color-white-100);--b2b-color-icon-default:var(--b2b-color-black-100);--b2b-color-icon-secondary:var(--b2b-color-grey-400);--b2b-color-icon-inverted:var(--b2b-color-white-100);--b2b-color-table-expand-default:var(--b2b-color-grey-25);--b2b-size-icon-50:var(--b2b-size-40);--b2b-size-icon-100:var(--b2b-size-60);--b2b-size-icon-200:var(--b2b-size-80);--b2b-size-icon-400:var(--b2b-size-120);--b2b-size-space-25:var(--b2b-size-10);--b2b-size-space-50:var(--b2b-size-20);--b2b-size-space-75:var(--b2b-size-30);--b2b-size-space-100:var(--b2b-size-40);--b2b-size-space-150:var(--b2b-size-60);--b2b-size-space-175:var(--b2b-size-80);--b2b-size-space-200:var(--b2b-size-100);--b2b-size-space-250:var(--b2b-size-160);--b2b-size-space-300:var(--b2b-size-200);--b2b-size-padding-50:var(--b2b-size-20);--b2b-size-padding-100:var(--b2b-size-40);--b2b-size-padding-150:var(--b2b-size-60);--b2b-size-padding-175:var(--b2b-size-80);--b2b-size-border-width-50:var(--b2b-size-1);--b2b-size-border-width-100:var(--b2b-size-5);--b2b-size-border-width-150:var(--b2b-size-10);--b2b-size-border-radius-100:var(--b2b-size-7);--b2b-size-border-no-radius-left:0 var(--b2b-size-7) var(--b2b-size-7) 0;--b2b-size-border-no-radius-right:var(--b2b-size-7) 0 0 var(--b2b-size-7);--b2b-size-border-no-radius-top:0 0 var(--b2b-size-7) var(--b2b-size-7);--b2b-size-border-no-radius-bottom:var(--b2b-size-7) var(--b2b-size-7) 0 0;--b2b-size-copy-50:var(--b2b-size-30);--b2b-size-copy-100:var(--b2b-size-35);--b2b-size-copy-125:var(--b2b-size-40);--b2b-size-copy-200:var(--b2b-size-45);--b2b-size-copy-300:var(--b2b-size-60);--b2b-size-copy-line-height-50:var(--b2b-size-40);--b2b-size-copy-line-height-75:var(--b2b-size-45);--b2b-size-copy-line-height-100:var(--b2b-size-53);--b2b-size-copy-line-height-125:var(--b2b-size-60);--b2b-size-copy-line-height-200:var(--b2b-size-60);--b2b-size-copy-line-height-300:var(--b2b-size-90);--b2b-size-headline-100:var(--b2b-size-40);--b2b-size-headline-200:var(--b2b-size-45);--b2b-size-headline-400:var(--b2b-size-60);--b2b-size-headline-line-height-100:var(--b2b-size-60);--b2b-size-headline-line-height-200:var(--b2b-size-60);--b2b-size-headline-line-height-400:var(--b2b-size-60)}:root [data-theme=\"dark\"]{--b2b-color-black-50:#333333;--b2b-color-black-100:#222222;--b2b-color-white-100:#FFFFFF;--b2b-color-grey-10:#F0F0F0;--b2b-color-grey-25:#F6F6F6;--b2b-color-grey-50:#EEEEEE;--b2b-color-grey-100:#E6E6E6;--b2b-color-grey-150:#D5D5D5;--b2b-color-grey-200:#C4C4C4;--b2b-color-grey-250:#B1B1B1;--b2b-color-grey-300:#9E9E9E;--b2b-color-grey-400:#777777;--b2b-color-red-50:#FFDDE3;--b2b-color-red-100:#D4021D;--b2b-color-red-150:#E6344B;--b2b-color-red-200:#BB0004;--b2b-color-red-250:#850012;--b2b-color-blue-10:#F2F7FF;--b2b-color-blue-25:#DBE7FA;--b2b-color-blue-50:#87B1F0;--b2b-color-blue-100:#0F63E1;--b2b-color-blue-200:#093E90;--b2b-color-primary:#D4021D;--b2b-color-error-100:#E6344B;--b2b-color-warning-50:#FFD998;--b2b-color-warning-100:#FFB432;--b2b-color-success-50:#D6E0CC;--b2b-color-success-100:#326400;--b2b-color-info-50:#CCD6E0;--b2b-color-info-100:#003264;--b2b-color-hover-default:#DBE7FA;--b2b-color-hover-black:#3B3B3B;--b2b-font-family-default:OttoSans, Arial, Helvetica, sans-serif;--b2b-font-weight-thin:100;--b2b-font-weight-normal:500;--b2b-font-weight-bold:700;--b2b-size-1:0.0625rem;--b2b-size-5:0.125rem;--b2b-size-7:0.1875rem;--b2b-size-10:0.25rem;--b2b-size-13:0.3125rem;--b2b-size-15:0.375rem;--b2b-size-20:0.5rem;--b2b-size-25:0.625rem;--b2b-size-30:0.75rem;--b2b-size-35:0.875rem;--b2b-size-40:1rem;--b2b-size-45:1.125rem;--b2b-size-50:1.25rem;--b2b-size-53:1.3125rem;--b2b-size-55:1.375rem;--b2b-size-60:1.5rem;--b2b-size-70:1.75rem;--b2b-size-80:2rem;--b2b-size-90:2.25rem;--b2b-size-100:2.5rem;--b2b-size-120:3rem;--b2b-size-140:3.5rem;--b2b-size-150:3.75rem;--b2b-size-160:4rem;--b2b-size-200:5rem;--b2b-color-error-50:var(--b2b-color-red-50);--b2b-color-background-box:var(--b2b-color-black-50);--b2b-color-background-card:var(--b2b-color-black-50);--b2b-color-background-page:var(--b2b-color-grey-100);--b2b-color-border-100:var(--b2b-color-white-100);--b2b-color-copy-default:var(--b2b-color-white-100);--b2b-color-copy-secondary:var(--b2b-color-grey-100);--b2b-color-copy-inverted:var(--b2b-color-black-100);--b2b-color-headline-title:var(--b2b-color-red-50);--b2b-color-headline-default:var(--b2b-color-white-100);--b2b-color-headline-inverted:var(--b2b-color-black-100);--b2b-color-icon-default:var(--b2b-color-white-100);--b2b-color-icon-secondary:var(--b2b-color-grey-400);--b2b-color-icon-inverted:var(--b2b-color-black-100)}@font-face{font-family:OttoSans;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans.ttf\");font-weight:normal;font-style:normal}@font-face{font-family:OttoSans;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-bold.woff\") format(\"woff\"), url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-bold.ttf\") format(\"truetype\");font-weight:bold;font-style:normal}@font-face{font-family:OttoSans;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-thin.woff\") format(\"woff\"), url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-thin.ttf\") format(\"truetype\");font-weight:100;font-style:normal}@font-face{font-family:ObcIcons;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/obc-icons.woff\")}:host{width:100%}.b2b-custom-dropdown__trigger{position:relative;display:inline !important;cursor:pointer}.b2b-custom-dropdown{display:none}.b2b-custom-dropdown--on{display:block}.b2b-custom-dropdown--drop-shadow{box-shadow:0 0 5px rgba(0, 0, 0, 0.2)}.b2b-custom-dropdown--border{border:1px solid var(--b2b-color-grey-200)}.b2b-custom-dropdown-search{padding:var(--b2b-size-30);display:none}.b2b-custom-dropdown-search--enabled{display:block;border-bottom:var(--b2b-size-1) solid var(--b2b-color-border-100)}.b2b-custom-dropdown__options-scroll-container{position:relative;display:block;max-height:288px;overflow-y:auto;margin:0}.b2b-custom-dropdown__options-container{position:relative;display:block;margin:0}.b2b-custom-dropdown__options-container--disabled{display:none}.b2b-custom-dropdown__option--hidden{display:none}::slotted(b2b-custom-dropdown-option.b2b-custom-dropdown__option--hidden){display:none}";
4
+ const customDropdownCss = ":root,:host{--b2b-color-black-50:#333333;--b2b-color-black-100:#222222;--b2b-color-white-100:#FFFFFF;--b2b-color-grey-10:#F0F0F0;--b2b-color-grey-25:#F6F6F6;--b2b-color-grey-50:#EEEEEE;--b2b-color-grey-100:#E6E6E6;--b2b-color-grey-150:#D5D5D5;--b2b-color-grey-200:#C4C4C4;--b2b-color-grey-250:#B1B1B1;--b2b-color-grey-300:#9E9E9E;--b2b-color-grey-400:#777777;--b2b-color-red-50:#FFDDE3;--b2b-color-red-100:#D4021D;--b2b-color-red-150:#E6344B;--b2b-color-red-200:#BB0004;--b2b-color-red-250:#850012;--b2b-color-blue-10:#F2F7FF;--b2b-color-blue-25:#DBE7FA;--b2b-color-blue-50:#87B1F0;--b2b-color-blue-100:#0F63E1;--b2b-color-blue-200:#093E90;--b2b-color-primary:#D4021D;--b2b-color-error-100:#E6344B;--b2b-color-warning-50:#FFD998;--b2b-color-warning-100:#FFB432;--b2b-color-success-50:#D6E0CC;--b2b-color-success-100:#326400;--b2b-color-info-50:#CCD6E0;--b2b-color-info-100:#003264;--b2b-color-hover-default:#DBE7FA;--b2b-color-hover-black:#3B3B3B;--b2b-color-background-overlay-transparent-80:#22222280;--b2b-color-background-overlay-transparent-40:#22222240;--b2b-color-table-selected-default:#CCE9FF;--b2b-color-table-expand-hover:#DBE7FA;--b2b-font-family-default:OttoSans, Arial, Helvetica, sans-serif;--b2b-font-weight-thin:100;--b2b-font-weight-normal:500;--b2b-font-weight-bold:700;--b2b-size-1:0.0625rem;--b2b-size-5:0.125rem;--b2b-size-7:0.1875rem;--b2b-size-10:0.25rem;--b2b-size-13:0.3125rem;--b2b-size-15:0.375rem;--b2b-size-20:0.5rem;--b2b-size-25:0.625rem;--b2b-size-30:0.75rem;--b2b-size-35:0.875rem;--b2b-size-40:1rem;--b2b-size-45:1.125rem;--b2b-size-50:1.25rem;--b2b-size-53:1.3125rem;--b2b-size-55:1.375rem;--b2b-size-60:1.5rem;--b2b-size-70:1.75rem;--b2b-size-80:2rem;--b2b-size-90:2.25rem;--b2b-size-100:2.5rem;--b2b-size-120:3rem;--b2b-size-140:3.5rem;--b2b-size-150:3.75rem;--b2b-size-160:4rem;--b2b-size-200:5rem;--b2b-color-error-50:var(--b2b-color-red-50);--b2b-color-background-page:var(--b2b-color-grey-10);--b2b-color-background-box:var(--b2b-color-white-100);--b2b-color-background-card:var(--b2b-color-white-100);--b2b-color-background-overlay:var(--b2b-color-black-100);--b2b-color-border-100:var(--b2b-color-grey-200);--b2b-color-copy-default:var(--b2b-color-black-100);--b2b-color-copy-secondary:var(--b2b-color-grey-400);--b2b-color-copy-inverted:var(--b2b-color-white-100);--b2b-color-copy-overlay:var(--b2b-color-white-100);--b2b-color-headline-title:var(--b2b-color-red-100);--b2b-color-headline-default:var(--b2b-color-black-100);--b2b-color-headline-inverted:var(--b2b-color-white-100);--b2b-color-icon-default:var(--b2b-color-black-100);--b2b-color-icon-secondary:var(--b2b-color-grey-400);--b2b-color-icon-inverted:var(--b2b-color-white-100);--b2b-color-table-expand-default:var(--b2b-color-grey-25);--b2b-size-icon-50:var(--b2b-size-40);--b2b-size-icon-100:var(--b2b-size-60);--b2b-size-icon-200:var(--b2b-size-80);--b2b-size-icon-400:var(--b2b-size-120);--b2b-size-space-25:var(--b2b-size-10);--b2b-size-space-50:var(--b2b-size-20);--b2b-size-space-75:var(--b2b-size-30);--b2b-size-space-100:var(--b2b-size-40);--b2b-size-space-150:var(--b2b-size-60);--b2b-size-space-175:var(--b2b-size-80);--b2b-size-space-200:var(--b2b-size-100);--b2b-size-space-250:var(--b2b-size-160);--b2b-size-space-300:var(--b2b-size-200);--b2b-size-padding-50:var(--b2b-size-20);--b2b-size-padding-100:var(--b2b-size-40);--b2b-size-padding-150:var(--b2b-size-60);--b2b-size-padding-175:var(--b2b-size-80);--b2b-size-border-width-50:var(--b2b-size-1);--b2b-size-border-width-100:var(--b2b-size-5);--b2b-size-border-width-150:var(--b2b-size-10);--b2b-size-border-radius-100:var(--b2b-size-7);--b2b-size-border-no-radius-left:0 var(--b2b-size-7) var(--b2b-size-7) 0;--b2b-size-border-no-radius-right:var(--b2b-size-7) 0 0 var(--b2b-size-7);--b2b-size-border-no-radius-top:0 0 var(--b2b-size-7) var(--b2b-size-7);--b2b-size-border-no-radius-bottom:var(--b2b-size-7) var(--b2b-size-7) 0 0;--b2b-size-copy-50:var(--b2b-size-30);--b2b-size-copy-100:var(--b2b-size-35);--b2b-size-copy-125:var(--b2b-size-40);--b2b-size-copy-200:var(--b2b-size-45);--b2b-size-copy-300:var(--b2b-size-60);--b2b-size-copy-line-height-50:var(--b2b-size-40);--b2b-size-copy-line-height-75:var(--b2b-size-45);--b2b-size-copy-line-height-100:var(--b2b-size-53);--b2b-size-copy-line-height-125:var(--b2b-size-60);--b2b-size-copy-line-height-200:var(--b2b-size-60);--b2b-size-copy-line-height-300:var(--b2b-size-90);--b2b-size-headline-100:var(--b2b-size-40);--b2b-size-headline-200:var(--b2b-size-45);--b2b-size-headline-400:var(--b2b-size-60);--b2b-size-headline-line-height-100:var(--b2b-size-60);--b2b-size-headline-line-height-200:var(--b2b-size-60);--b2b-size-headline-line-height-400:var(--b2b-size-60)}:root [data-theme=\"dark\"]{--b2b-color-black-50:#333333;--b2b-color-black-100:#222222;--b2b-color-white-100:#FFFFFF;--b2b-color-grey-10:#F0F0F0;--b2b-color-grey-25:#F6F6F6;--b2b-color-grey-50:#EEEEEE;--b2b-color-grey-100:#E6E6E6;--b2b-color-grey-150:#D5D5D5;--b2b-color-grey-200:#C4C4C4;--b2b-color-grey-250:#B1B1B1;--b2b-color-grey-300:#9E9E9E;--b2b-color-grey-400:#777777;--b2b-color-red-50:#FFDDE3;--b2b-color-red-100:#D4021D;--b2b-color-red-150:#E6344B;--b2b-color-red-200:#BB0004;--b2b-color-red-250:#850012;--b2b-color-blue-10:#F2F7FF;--b2b-color-blue-25:#DBE7FA;--b2b-color-blue-50:#87B1F0;--b2b-color-blue-100:#0F63E1;--b2b-color-blue-200:#093E90;--b2b-color-primary:#D4021D;--b2b-color-error-100:#E6344B;--b2b-color-warning-50:#FFD998;--b2b-color-warning-100:#FFB432;--b2b-color-success-50:#D6E0CC;--b2b-color-success-100:#326400;--b2b-color-info-50:#CCD6E0;--b2b-color-info-100:#003264;--b2b-color-hover-default:#DBE7FA;--b2b-color-hover-black:#3B3B3B;--b2b-font-family-default:OttoSans, Arial, Helvetica, sans-serif;--b2b-font-weight-thin:100;--b2b-font-weight-normal:500;--b2b-font-weight-bold:700;--b2b-size-1:0.0625rem;--b2b-size-5:0.125rem;--b2b-size-7:0.1875rem;--b2b-size-10:0.25rem;--b2b-size-13:0.3125rem;--b2b-size-15:0.375rem;--b2b-size-20:0.5rem;--b2b-size-25:0.625rem;--b2b-size-30:0.75rem;--b2b-size-35:0.875rem;--b2b-size-40:1rem;--b2b-size-45:1.125rem;--b2b-size-50:1.25rem;--b2b-size-53:1.3125rem;--b2b-size-55:1.375rem;--b2b-size-60:1.5rem;--b2b-size-70:1.75rem;--b2b-size-80:2rem;--b2b-size-90:2.25rem;--b2b-size-100:2.5rem;--b2b-size-120:3rem;--b2b-size-140:3.5rem;--b2b-size-150:3.75rem;--b2b-size-160:4rem;--b2b-size-200:5rem;--b2b-color-error-50:var(--b2b-color-red-50);--b2b-color-background-box:var(--b2b-color-black-50);--b2b-color-background-card:var(--b2b-color-black-50);--b2b-color-background-page:var(--b2b-color-grey-100);--b2b-color-border-100:var(--b2b-color-white-100);--b2b-color-copy-default:var(--b2b-color-white-100);--b2b-color-copy-secondary:var(--b2b-color-grey-100);--b2b-color-copy-inverted:var(--b2b-color-black-100);--b2b-color-headline-title:var(--b2b-color-red-50);--b2b-color-headline-default:var(--b2b-color-white-100);--b2b-color-headline-inverted:var(--b2b-color-black-100);--b2b-color-icon-default:var(--b2b-color-white-100);--b2b-color-icon-secondary:var(--b2b-color-grey-400);--b2b-color-icon-inverted:var(--b2b-color-black-100)}@font-face{font-family:OttoSans;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans.ttf\");font-weight:normal;font-style:normal}@font-face{font-family:OttoSans;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-bold.woff\") format(\"woff\"), url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-bold.ttf\") format(\"truetype\");font-weight:bold;font-style:normal}@font-face{font-family:OttoSans;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-thin.woff\") format(\"woff\"), url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-thin.ttf\") format(\"truetype\");font-weight:100;font-style:normal}@font-face{font-family:ObcIcons;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/obc-icons.woff\")}:host{display:inline-block;position:relative;width:auto}.b2b-custom-dropdown__trigger{position:relative;display:inline !important;cursor:pointer}.b2b-custom-dropdown{position:absolute;top:100%;left:0;z-index:1000;inline-size:var(--b2b-dropdown-width, 300px);display:none}.b2b-custom-dropdown--on{display:block}.b2b-custom-dropdown--drop-shadow{box-shadow:0 0 5px rgba(0, 0, 0, 0.2)}.b2b-custom-dropdown--border{border:1px solid var(--b2b-color-grey-200)}.b2b-custom-dropdown-search{padding:var(--b2b-size-30);display:none}.b2b-custom-dropdown-search--enabled{display:block;border-bottom:var(--b2b-size-1) solid var(--b2b-color-border-100)}.b2b-custom-dropdown__options-scroll-container{position:relative;display:block;max-height:288px;overflow-y:auto;margin:0}.b2b-custom-dropdown__options-container{position:relative;display:block;margin:0}.b2b-custom-dropdown__options-container--disabled{display:none}.b2b-custom-dropdown__option--hidden{display:none}::slotted(b2b-custom-dropdown-option.b2b-custom-dropdown__option--hidden){display:none}";
5
5
  const B2bCustomDropdownStyle0 = customDropdownCss;
6
6
 
7
7
  const B2bCustomDropdownComponent = class {
@@ -76,12 +76,12 @@ const B2bCustomDropdownComponent = class {
76
76
  'b2b-custom-dropdown--on': this.opened && !this.disabled,
77
77
  'b2b-custom-dropdown--drop-shadow': this.dropshadow,
78
78
  'b2b-custom-dropdown--border': this.border,
79
- } }, h("b2b-background-box", { key: 'f15f9489ddc9ffe94ee3b4b2a6236b97fdbe86ba', noPadding: true, borderTop: "none", borderBottom: "none", borderRight: "none", borderLeft: "none" }, h("div", { key: '7c578f211b4afeae771d9f09551fffc70c212315', class: {
79
+ } }, h("b2b-background-box", { key: 'f15f9489ddc9ffe94ee3b4b2a6236b97fdbe86ba', noPadding: true, borderTop: "none", borderBottom: "none", borderRight: "none", borderLeft: "none" }, h("div", { key: 'b1a26c973d7eef092d31cde5f6593c5cd6ef5671', class: {
80
80
  'b2b-custom-dropdown-search': true,
81
- 'b2b-custom-dropdown-search--enabled': this.allOptions.length >= 6 && !this.disabled,
82
- } }, h("b2b-input", { key: '6be5918919c8110a0020126f1b8f29794f3d9c1c', placeholder: this.placeholder, "onB2b-input": this.handleInput }, h("b2b-icon-100", { key: 'a1e3e511eaa8487dfb964ab24ee0f1e9bafbe10b', icon: "b2b_icon-search", slot: "end" })))), h("div", { key: '2daf4ce8c49192881fcfeb33ca35fd04835f3d60', class: this.allOptions.length >= 6
81
+ 'b2b-custom-dropdown-search--enabled': this.allOptions.length > 6 && !this.disabled,
82
+ } }, h("b2b-input", { key: 'f570afbcfb650229a661fa365c527d0824f34342', placeholder: this.placeholder, "onB2b-input": this.handleInput }, h("b2b-icon-100", { key: '2c6e7c342c9e1c4ae91ec3204fa5b972feac0411', icon: "b2b_icon-search", slot: "end" })))), h("div", { key: '76662fbb1ad9260f62d8b8a9df8da9ecea465f9b', class: this.allOptions.length > 6
83
83
  ? 'b2b-custom-dropdown__options-scroll-container'
84
- : 'b2b-custom-dropdown__options-container' }, h("slot", { key: '328ae2c6ae90b0fc45ba1c1c4e88736d73f021cc', name: "option" })))));
84
+ : 'b2b-custom-dropdown__options-container' }, h("slot", { key: 'ad2b7dfb88642693837183f99da2e3b115f23dd3', name: "option" })))));
85
85
  }
86
86
  get hostElement() { return getElement(this); }
87
87
  };
@@ -1,5 +1,6 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-ab9eb36d.js';
2
2
  import { D as DateUtils } from './date-picker-util-44201ca6.js';
3
+ import { p as parsePropToArray } from './json-property-binding-util-5513739e.js';
3
4
 
4
5
  const datePickerCss = ":root,:host{--b2b-color-black-50:#333333;--b2b-color-black-100:#222222;--b2b-color-white-100:#FFFFFF;--b2b-color-grey-10:#F0F0F0;--b2b-color-grey-25:#F6F6F6;--b2b-color-grey-50:#EEEEEE;--b2b-color-grey-100:#E6E6E6;--b2b-color-grey-150:#D5D5D5;--b2b-color-grey-200:#C4C4C4;--b2b-color-grey-250:#B1B1B1;--b2b-color-grey-300:#9E9E9E;--b2b-color-grey-400:#777777;--b2b-color-red-50:#FFDDE3;--b2b-color-red-100:#D4021D;--b2b-color-red-150:#E6344B;--b2b-color-red-200:#BB0004;--b2b-color-red-250:#850012;--b2b-color-blue-10:#F2F7FF;--b2b-color-blue-25:#DBE7FA;--b2b-color-blue-50:#87B1F0;--b2b-color-blue-100:#0F63E1;--b2b-color-blue-200:#093E90;--b2b-color-primary:#D4021D;--b2b-color-error-100:#E6344B;--b2b-color-warning-50:#FFD998;--b2b-color-warning-100:#FFB432;--b2b-color-success-50:#D6E0CC;--b2b-color-success-100:#326400;--b2b-color-info-50:#CCD6E0;--b2b-color-info-100:#003264;--b2b-color-hover-default:#DBE7FA;--b2b-color-hover-black:#3B3B3B;--b2b-color-background-overlay-transparent-80:#22222280;--b2b-color-background-overlay-transparent-40:#22222240;--b2b-color-table-selected-default:#CCE9FF;--b2b-color-table-expand-hover:#DBE7FA;--b2b-font-family-default:OttoSans, Arial, Helvetica, sans-serif;--b2b-font-weight-thin:100;--b2b-font-weight-normal:500;--b2b-font-weight-bold:700;--b2b-size-1:0.0625rem;--b2b-size-5:0.125rem;--b2b-size-7:0.1875rem;--b2b-size-10:0.25rem;--b2b-size-13:0.3125rem;--b2b-size-15:0.375rem;--b2b-size-20:0.5rem;--b2b-size-25:0.625rem;--b2b-size-30:0.75rem;--b2b-size-35:0.875rem;--b2b-size-40:1rem;--b2b-size-45:1.125rem;--b2b-size-50:1.25rem;--b2b-size-53:1.3125rem;--b2b-size-55:1.375rem;--b2b-size-60:1.5rem;--b2b-size-70:1.75rem;--b2b-size-80:2rem;--b2b-size-90:2.25rem;--b2b-size-100:2.5rem;--b2b-size-120:3rem;--b2b-size-140:3.5rem;--b2b-size-150:3.75rem;--b2b-size-160:4rem;--b2b-size-200:5rem;--b2b-color-error-50:var(--b2b-color-red-50);--b2b-color-background-page:var(--b2b-color-grey-10);--b2b-color-background-box:var(--b2b-color-white-100);--b2b-color-background-card:var(--b2b-color-white-100);--b2b-color-background-overlay:var(--b2b-color-black-100);--b2b-color-border-100:var(--b2b-color-grey-200);--b2b-color-copy-default:var(--b2b-color-black-100);--b2b-color-copy-secondary:var(--b2b-color-grey-400);--b2b-color-copy-inverted:var(--b2b-color-white-100);--b2b-color-copy-overlay:var(--b2b-color-white-100);--b2b-color-headline-title:var(--b2b-color-red-100);--b2b-color-headline-default:var(--b2b-color-black-100);--b2b-color-headline-inverted:var(--b2b-color-white-100);--b2b-color-icon-default:var(--b2b-color-black-100);--b2b-color-icon-secondary:var(--b2b-color-grey-400);--b2b-color-icon-inverted:var(--b2b-color-white-100);--b2b-color-table-expand-default:var(--b2b-color-grey-25);--b2b-size-icon-50:var(--b2b-size-40);--b2b-size-icon-100:var(--b2b-size-60);--b2b-size-icon-200:var(--b2b-size-80);--b2b-size-icon-400:var(--b2b-size-120);--b2b-size-space-25:var(--b2b-size-10);--b2b-size-space-50:var(--b2b-size-20);--b2b-size-space-75:var(--b2b-size-30);--b2b-size-space-100:var(--b2b-size-40);--b2b-size-space-150:var(--b2b-size-60);--b2b-size-space-175:var(--b2b-size-80);--b2b-size-space-200:var(--b2b-size-100);--b2b-size-space-250:var(--b2b-size-160);--b2b-size-space-300:var(--b2b-size-200);--b2b-size-padding-50:var(--b2b-size-20);--b2b-size-padding-100:var(--b2b-size-40);--b2b-size-padding-150:var(--b2b-size-60);--b2b-size-padding-175:var(--b2b-size-80);--b2b-size-border-width-50:var(--b2b-size-1);--b2b-size-border-width-100:var(--b2b-size-5);--b2b-size-border-width-150:var(--b2b-size-10);--b2b-size-border-radius-100:var(--b2b-size-7);--b2b-size-border-no-radius-left:0 var(--b2b-size-7) var(--b2b-size-7) 0;--b2b-size-border-no-radius-right:var(--b2b-size-7) 0 0 var(--b2b-size-7);--b2b-size-border-no-radius-top:0 0 var(--b2b-size-7) var(--b2b-size-7);--b2b-size-border-no-radius-bottom:var(--b2b-size-7) var(--b2b-size-7) 0 0;--b2b-size-copy-50:var(--b2b-size-30);--b2b-size-copy-100:var(--b2b-size-35);--b2b-size-copy-125:var(--b2b-size-40);--b2b-size-copy-200:var(--b2b-size-45);--b2b-size-copy-300:var(--b2b-size-60);--b2b-size-copy-line-height-50:var(--b2b-size-40);--b2b-size-copy-line-height-75:var(--b2b-size-45);--b2b-size-copy-line-height-100:var(--b2b-size-53);--b2b-size-copy-line-height-125:var(--b2b-size-60);--b2b-size-copy-line-height-200:var(--b2b-size-60);--b2b-size-copy-line-height-300:var(--b2b-size-90);--b2b-size-headline-100:var(--b2b-size-40);--b2b-size-headline-200:var(--b2b-size-45);--b2b-size-headline-400:var(--b2b-size-60);--b2b-size-headline-line-height-100:var(--b2b-size-60);--b2b-size-headline-line-height-200:var(--b2b-size-60);--b2b-size-headline-line-height-400:var(--b2b-size-60)}:root [data-theme=\"dark\"]{--b2b-color-black-50:#333333;--b2b-color-black-100:#222222;--b2b-color-white-100:#FFFFFF;--b2b-color-grey-10:#F0F0F0;--b2b-color-grey-25:#F6F6F6;--b2b-color-grey-50:#EEEEEE;--b2b-color-grey-100:#E6E6E6;--b2b-color-grey-150:#D5D5D5;--b2b-color-grey-200:#C4C4C4;--b2b-color-grey-250:#B1B1B1;--b2b-color-grey-300:#9E9E9E;--b2b-color-grey-400:#777777;--b2b-color-red-50:#FFDDE3;--b2b-color-red-100:#D4021D;--b2b-color-red-150:#E6344B;--b2b-color-red-200:#BB0004;--b2b-color-red-250:#850012;--b2b-color-blue-10:#F2F7FF;--b2b-color-blue-25:#DBE7FA;--b2b-color-blue-50:#87B1F0;--b2b-color-blue-100:#0F63E1;--b2b-color-blue-200:#093E90;--b2b-color-primary:#D4021D;--b2b-color-error-100:#E6344B;--b2b-color-warning-50:#FFD998;--b2b-color-warning-100:#FFB432;--b2b-color-success-50:#D6E0CC;--b2b-color-success-100:#326400;--b2b-color-info-50:#CCD6E0;--b2b-color-info-100:#003264;--b2b-color-hover-default:#DBE7FA;--b2b-color-hover-black:#3B3B3B;--b2b-font-family-default:OttoSans, Arial, Helvetica, sans-serif;--b2b-font-weight-thin:100;--b2b-font-weight-normal:500;--b2b-font-weight-bold:700;--b2b-size-1:0.0625rem;--b2b-size-5:0.125rem;--b2b-size-7:0.1875rem;--b2b-size-10:0.25rem;--b2b-size-13:0.3125rem;--b2b-size-15:0.375rem;--b2b-size-20:0.5rem;--b2b-size-25:0.625rem;--b2b-size-30:0.75rem;--b2b-size-35:0.875rem;--b2b-size-40:1rem;--b2b-size-45:1.125rem;--b2b-size-50:1.25rem;--b2b-size-53:1.3125rem;--b2b-size-55:1.375rem;--b2b-size-60:1.5rem;--b2b-size-70:1.75rem;--b2b-size-80:2rem;--b2b-size-90:2.25rem;--b2b-size-100:2.5rem;--b2b-size-120:3rem;--b2b-size-140:3.5rem;--b2b-size-150:3.75rem;--b2b-size-160:4rem;--b2b-size-200:5rem;--b2b-color-error-50:var(--b2b-color-red-50);--b2b-color-background-box:var(--b2b-color-black-50);--b2b-color-background-card:var(--b2b-color-black-50);--b2b-color-background-page:var(--b2b-color-grey-100);--b2b-color-border-100:var(--b2b-color-white-100);--b2b-color-copy-default:var(--b2b-color-white-100);--b2b-color-copy-secondary:var(--b2b-color-grey-100);--b2b-color-copy-inverted:var(--b2b-color-black-100);--b2b-color-headline-title:var(--b2b-color-red-50);--b2b-color-headline-default:var(--b2b-color-white-100);--b2b-color-headline-inverted:var(--b2b-color-black-100);--b2b-color-icon-default:var(--b2b-color-white-100);--b2b-color-icon-secondary:var(--b2b-color-grey-400);--b2b-color-icon-inverted:var(--b2b-color-black-100)}@font-face{font-family:OttoSans;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans.ttf\");font-weight:normal;font-style:normal}@font-face{font-family:OttoSans;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-bold.woff\") format(\"woff\"), url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-bold.ttf\") format(\"truetype\");font-weight:bold;font-style:normal}@font-face{font-family:OttoSans;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-thin.woff\") format(\"woff\"), url(\"https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-thin.ttf\") format(\"truetype\");font-weight:100;font-style:normal}@font-face{font-family:ObcIcons;src:url(\"https://pattern-library.portal.otto.market/static/assets/fonts/obc-icons.woff\")}:host{position:relative}.b2b-date-picker{position:relative;z-index:300}.b2b-date-picker__backdrop{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0}.b2b-date-picker-input-focus-wrapper{width:100%;height:100%}.b2b-date-picker-input-focus-wrapper:hover{cursor:text}.b2b-date-picker-input-wrapper{display:flex;box-sizing:border-box;height:var(--b2b-size-90);border:var(--b2b-size-1) solid var(--b2b-color-grey-200);justify-content:flex-start;border-radius:var(--b2b-size-7);padding:var(--b2b-size-13) var(--b2b-size-25) var(--b2b-size-13);background-color:var(--b2b-color-white-100);transition:outline 0.2s ease-in-out, border-color 0.2s ease-in-out}.b2b-date-picker-input-wrapper--focused{outline:2px solid -webkit-focus-ring-color;outline-offset:-1px}.b2b-date-picker-input-wrapper--error{background-color:var(--b2b-color-error-50);border:1px solid var(--b2b-color-error-100);border-color:var(--b2b-color-error-100)}.b2b-date-picker-input-wrapper .b2b-date-picker-input{border:none;outline:none;box-shadow:none;box-sizing:border-box;margin-left:0;padding-left:0;height:100%;color:var(--b2b-color-black-100);font-size:var(--b2b-size-35);line-height:var(--b2b-size-copy-line-height-100);font-weight:var(--b2b-font-weight-normal);font-family:var(--b2b-font-family-default)}.b2b-date-picker-input-wrapper .b2b-date-picker-input--error{background-color:var(--b2b-color-error-50)}b2b-input-label{display:block;margin-bottom:var(--b2b-size-5);color:var(--b2b-color-black-100)}.b2b-date-picker-selected-date{flex:1;align-self:center;font-size:var(--b2b-size-35)}.b2b-date-picker-label{font-size:var(--b2b-size-35);color:var(--b2b-color-black-100);line-height:var(--b2b-size-copy-line-height-100);margin-bottom:var(--b2b-size-5)}.b2b-date-picker-hint{font-size:var(--b2b-size-copy-50);line-height:var(--b2b-size-copy-line-height-75);display:block;margin-top:var(--b2b-size-7);color:var(--b2b-color-grey-300)}.b2b-date-picker-hint--error{color:var(--b2b-color-error-100)}.b2b-date-picker-body{position:absolute;border-right:var(--b2b-size-1) solid var(--b2b-color-black-100);border-left:var(--b2b-size-1) solid var(--b2b-color-black-100);border-bottom:var(--b2b-size-1) solid var(--b2b-color-black-100);outline-offset:-1px;width:300px;box-sizing:border-box;margin-top:1px;padding-bottom:var(--b2b-size-40);outline:none;background-color:var(--b2b-color-white-100);z-index:1001}.b2b-date-picker-body--hidden{display:none}.b2b-icons{display:flex;margin-top:var(--b2b-size-5);align-items:center}.b2b-close-icon{display:block}.b2b-event-icon{display:block}";
5
6
  const B2bDatePickerStyle0 = datePickerCss;
@@ -121,36 +122,19 @@ const B2bDatePicker = class {
121
122
  isWithWithinLimit() {
122
123
  return this.width >= 300 && this.width <= 600;
123
124
  }
124
- normalizeArrayInput(value) {
125
- if (Array.isArray(value)) {
126
- return value;
127
- }
128
- if (typeof value === 'string') {
129
- try {
130
- return JSON.parse(value);
131
- }
132
- catch (_a) {
133
- return value
134
- .split(',')
135
- .map(v => v.trim())
136
- .filter(Boolean);
137
- }
138
- }
139
- return [];
140
- }
141
125
  normalizeDisableDatesUntilAndFrom(givenDate) {
142
126
  const [day, month, year] = givenDate.split('.').map(Number);
143
127
  return new Date(year, month - 1, day);
144
128
  }
145
129
  componentWillLoad() {
146
- const disableDatesArray = this.normalizeArrayInput(this.disableDates);
130
+ const disableDatesArray = parsePropToArray(this.disableDates);
147
131
  if (disableDatesArray.length > 0) {
148
132
  this.datesToBeDisabled = disableDatesArray.map(date => {
149
133
  const [day, month, year] = date.split('.').map(Number);
150
134
  return new Date(year, month - 1, day);
151
135
  });
152
136
  }
153
- const disableDaysArray = this.normalizeArrayInput(this.disableDays);
137
+ const disableDaysArray = parsePropToArray(this.disableDays);
154
138
  if (disableDaysArray.length > 0) {
155
139
  this.normalizedDisableEvery = disableDaysArray;
156
140
  }
@@ -196,14 +180,14 @@ const B2bDatePicker = class {
196
180
  }
197
181
  }
198
182
  handleDisableDatesChanged(newVal) {
199
- const parsed = this.normalizeArrayInput(newVal);
183
+ const parsed = parsePropToArray(newVal);
200
184
  this.datesToBeDisabled = parsed.map(date => {
201
185
  const [day, month, year] = date.split('.').map(Number);
202
186
  return new Date(year, month - 1, day);
203
187
  });
204
188
  }
205
189
  handleDisableDaysChanged(newVal) {
206
- this.normalizedDisableEvery = this.normalizeArrayInput(newVal);
190
+ this.normalizedDisableEvery = parsePropToArray(newVal);
207
191
  }
208
192
  handleDisableDatesUntilChanged(newVal) {
209
193
  this.normalizedDisableDatesUntil =