@shoper/phoenix_design_system 1.18.16-0 → 1.18.16-10

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.
@@ -3,6 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var tslib_es6 = require('../../../../../../external/tslib/tslib.es6.js');
6
+ var phoenix_light_lit_elements_constants = require('../../../core/phoenix_light_lit_element/phoenix_light_lit_elements_constants.js');
6
7
  var lit = require('lit');
7
8
  var decorators = require('lit/decorators');
8
9
  var phoenix_light_lit_element = require('../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
@@ -44,6 +45,8 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
44
45
  this.noDeselect = false;
45
46
  this.assistiveTitleId = '';
46
47
  this.isDevSelectPlaceholderFlagEnabled = false;
48
+ this.isDevSelectPlaceholderTranslationFlagEnabled = false;
49
+ this.isReactiveSelectionFlagEnabled = false;
47
50
  this.translations = {};
48
51
  this._selectOptionsId = v4['default']();
49
52
  this._searchValue = '';
@@ -54,14 +57,42 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
54
57
  this._$dropdownContent = ref_js.createRef();
55
58
  this.$dropdownToggler = ref_js.createRef();
56
59
  this._selectContext = new context_provider_controller.ContextProviderController(this);
60
+ this._onChildRendered = (ev) => {
61
+ const renderedEl = ev.detail && ev.detail.$el;
62
+ if (!renderedEl)
63
+ return;
64
+ const tag = renderedEl.tagName.toLowerCase();
65
+ if (tag === select_components_constatns.SELECT_RELATED_COMPONENTS_NAMES.toggler) {
66
+ // Prefer child's slot API if available
67
+ if (typeof renderedEl.getSlot === 'function' && renderedEl.hasSlot && renderedEl.hasSlot(select_components_constatns.SELECT_INPUT_PLACEHOLDER_SLOT_NAME)) {
68
+ const arr = renderedEl.getSlot(select_components_constatns.SELECT_INPUT_PLACEHOLDER_SLOT_NAME);
69
+ if (arr && arr.length) {
70
+ const val = arr[0].values && arr[0].values[0];
71
+ if (val) {
72
+ this.$placeholder = val;
73
+ this.requestUpdate();
74
+ this.removeEventListener(phoenix_light_lit_elements_constants.PHOENIX_LIGHT_LIT_ELEMENTS_EVENT_NAMES.rendered, this._onChildRendered);
75
+ return;
76
+ }
77
+ }
78
+ }
79
+ // Fallback: try querySelector on the rendered element
80
+ const el = renderedEl.querySelector ? renderedEl.querySelector(`[slot="${select_components_constatns.SELECT_INPUT_PLACEHOLDER_SLOT_NAME}"]`) : null;
81
+ if (el) {
82
+ this.$placeholder = el;
83
+ this.requestUpdate();
84
+ this.removeEventListener(phoenix_light_lit_elements_constants.PHOENIX_LIGHT_LIT_ELEMENTS_EVENT_NAMES.rendered, this._onChildRendered);
85
+ }
86
+ }
87
+ };
57
88
  this._updateOptions = () => {
58
89
  const $options = this._getOptions();
59
90
  this._$options = $options.reduce((acc, $option) => {
60
91
  const value = $option.getAttribute('value');
61
92
  if (value === null || value === undefined)
62
- throw Error('Select option must hava a value');
93
+ throw Error('Select option must have a value');
63
94
  if (acc.has(value))
64
- throw Error('Select options must hava a unique values.');
95
+ throw Error('Select options must have a unique values.');
65
96
  return acc.set(value, $option);
66
97
  }, new Map());
67
98
  const options = $options.map(select_option_mapper.SelectOptionMapper.toModel);
@@ -184,8 +215,11 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
184
215
  };
185
216
  const $options = Array.from(this.querySelectorAll(select_components_constatns.SELECT_RELATED_COMPONENTS_NAMES.option));
186
217
  $options.forEach(($option) => $option.setAttribute('slot', select_constants.SELECT_SLOT_NAMES.content));
187
- const $placeholderEl = this.querySelector(`[slot="${select_components_constatns.SELECT_INPUT_PLACEHOLDER_SLOT_NAME}"]`);
188
- this.$placeholder = ($placeholderEl && ((_a = $placeholderEl.textContent) === null || _a === void 0 ? void 0 : _a.trim())) ? $placeholderEl : 'Select';
218
+ // this condition doesn't work as properties load on connectedCallback but I leave it here to not forget about deleting it
219
+ if (!this.isDevSelectPlaceholderTranslationFlagEnabled) {
220
+ const $placeholderEl = this.querySelector(`[slot="${select_components_constatns.SELECT_INPUT_PLACEHOLDER_SLOT_NAME}"]`);
221
+ this.$placeholder = ($placeholderEl && ((_a = $placeholderEl.textContent) === null || _a === void 0 ? void 0 : _a.trim())) ? $placeholderEl : 'Select';
222
+ }
189
223
  if (this.multiple)
190
224
  this.type = select_constants.SELECT_TYPES.multiple;
191
225
  }
@@ -287,6 +321,56 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
287
321
  }
288
322
  this._setupEvents();
289
323
  }
324
+ firstUpdated(changedProperties) {
325
+ super.firstUpdated(changedProperties);
326
+ if (this.isDevSelectPlaceholderTranslationFlagEnabled) {
327
+ let placeholderCandidate = null;
328
+ if (this.hasSlot(select_components_constatns.SELECT_INPUT_PLACEHOLDER_SLOT_NAME)) {
329
+ const slotTpls = this.getSlot(select_components_constatns.SELECT_INPUT_PLACEHOLDER_SLOT_NAME);
330
+ if (Array.isArray(slotTpls) && slotTpls.length > 0) {
331
+ const tpl = slotTpls[0];
332
+ placeholderCandidate = (tpl && tpl.values && tpl.values[0] ? tpl.values[0] : null);
333
+ }
334
+ }
335
+ // 2) Try toggler slot that may have been assigned into this._slots
336
+ if (!placeholderCandidate && this.hasSlot(select_constants.SELECT_SLOT_NAMES.toggler)) {
337
+ const togglerTpls = this.getSlot(select_constants.SELECT_SLOT_NAMES.toggler);
338
+ if (Array.isArray(togglerTpls) && togglerTpls.length > 0) {
339
+ const typedTogglerPtls = togglerTpls;
340
+ const togglerNode = (typedTogglerPtls[0].values ? typedTogglerPtls[0].values[0] : null);
341
+ if (togglerNode) {
342
+ // If togglerNode is an element, try to find an inner placeholder element
343
+ if (typeof togglerNode.querySelector === 'function') {
344
+ const inner = togglerNode.querySelector(`[slot="${select_components_constatns.SELECT_INPUT_PLACEHOLDER_SLOT_NAME}"]`);
345
+ if (inner)
346
+ placeholderCandidate = inner;
347
+ }
348
+ // fallback to using togglerNode text content (if useful)
349
+ if (!placeholderCandidate && togglerNode.textContent && togglerNode.textContent.trim()) {
350
+ placeholderCandidate = togglerNode;
351
+ }
352
+ }
353
+ }
354
+ }
355
+ // 3) Last DOM fallback (works if placeholder still in DOM)
356
+ if (!placeholderCandidate) {
357
+ const domEl = this.querySelector(`[slot="${select_components_constatns.SELECT_INPUT_PLACEHOLDER_SLOT_NAME}"]`);
358
+ if (domEl)
359
+ placeholderCandidate = domEl;
360
+ }
361
+ // 4) If not found yet, set default and listen for child "rendered" events (toggler)
362
+ if (placeholderCandidate) {
363
+ this.$placeholder = placeholderCandidate;
364
+ }
365
+ else {
366
+ this.$placeholder = 'Select';
367
+ this.addEventListener(phoenix_light_lit_elements_constants.PHOENIX_LIGHT_LIT_ELEMENTS_EVENT_NAMES.rendered, this._onChildRendered);
368
+ }
369
+ }
370
+ if (this.isReactiveSelectionFlagEnabled) {
371
+ this._setupMutationObserver();
372
+ }
373
+ }
290
374
  attributeChangedCallback(name, _old, value) {
291
375
  super.attributeChangedCallback(name, _old, value);
292
376
  switch (name) {
@@ -305,19 +389,19 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
305
389
  this._updateOptions();
306
390
  }
307
391
  get _canAddPlaceholder() {
308
- var _a;
309
392
  if (this.multiple || this.required)
310
393
  return false;
311
- const hasSelection = (((_a = this._selectController.selectedOptions$.getValue()) === null || _a === void 0 ? void 0 : _a.length) || 0) > 0;
312
- if (hasSelection)
313
- return false;
314
394
  const hasExistingPlaceholder = !!this.querySelector('h-option[placeholder]');
315
395
  return !hasExistingPlaceholder;
316
396
  }
317
397
  _createPlaceholderOption() {
398
+ var _a;
318
399
  const $option = document.createElement('h-option');
319
400
  $option.setAttribute('value', '');
320
- $option.setAttribute('selected', 'true');
401
+ const hasSelection = (((_a = this._selectController.selectedOptions$.getValue()) === null || _a === void 0 ? void 0 : _a.length) || 0) > 0;
402
+ if (!hasSelection) {
403
+ $option.setAttribute('selected', 'true');
404
+ }
321
405
  $option.setAttribute('placeholder', 'true');
322
406
  $option.setAttribute('slot', select_constants.SELECT_SLOT_NAMES.content);
323
407
  const $content = document.createElement(select_components_constatns.SELECT_RELATED_COMPONENTS_NAMES.optionContent);
@@ -325,7 +409,7 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
325
409
  $content.textContent = this.$placeholder;
326
410
  }
327
411
  else if (this.$placeholder instanceof Node) {
328
- Array.from(this.$placeholder.childNodes).forEach(node => {
412
+ Array.from(this.$placeholder.childNodes).forEach((node) => {
329
413
  $content.appendChild(node.cloneNode(true));
330
414
  });
331
415
  }
@@ -334,8 +418,8 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
334
418
  }
335
419
  _injectOptionIntoDOM($option) {
336
420
  const $firstOption = this.querySelector(select_components_constatns.SELECT_RELATED_COMPONENTS_NAMES.option);
337
- if ($firstOption) {
338
- this.insertBefore($option, $firstOption);
421
+ if ($firstOption && $firstOption.parentNode) {
422
+ $firstOption.parentNode.insertBefore($option, $firstOption);
339
423
  }
340
424
  else {
341
425
  this.appendChild($option);
@@ -345,6 +429,53 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
345
429
  this.addEventListener(select_constants.SELECT_EVENT_NAMES.deselectOption, this._handleOptionDeselect);
346
430
  this.addEventListener(select_components_constatns.SELECT_CLOSE_BTN_EVENT_NAMES.close, this._closeSelect);
347
431
  }
432
+ _setupMutationObserver() {
433
+ this._optionsMutationObserver = new MutationObserver((mutations) => {
434
+ let shouldUpdate = false;
435
+ let newlySelectedValue = null;
436
+ for (const mutation of mutations) {
437
+ const target = mutation.target;
438
+ if (mutation.type === 'attributes' &&
439
+ mutation.attributeName === 'selected' &&
440
+ target.tagName &&
441
+ target.tagName.toLowerCase() === 'h-option') {
442
+ shouldUpdate = true;
443
+ if (target.hasAttribute('selected')) {
444
+ newlySelectedValue = target.getAttribute('value');
445
+ }
446
+ }
447
+ }
448
+ if (shouldUpdate) {
449
+ const options = Array.from(this._$options.values()).map(($el) => select_option_mapper.SelectOptionMapper.toModel($el));
450
+ if (!this.multiple && newlySelectedValue !== null) {
451
+ options.forEach((opt) => {
452
+ opt.selected = opt.value === newlySelectedValue;
453
+ });
454
+ }
455
+ this._selectController.options$.notify(options);
456
+ let selectedOptions = options.filter((opt) => opt.selected);
457
+ if (selectedOptions.length === 0) {
458
+ const placeholder = options.find((opt) => opt.isPlaceholder);
459
+ if (placeholder) {
460
+ placeholder.selected = true;
461
+ const $placeholderHtml = this._$options.get(placeholder.value);
462
+ if ($placeholderHtml) {
463
+ $placeholderHtml.setAttribute('selected', 'true');
464
+ }
465
+ selectedOptions = [placeholder];
466
+ }
467
+ }
468
+ this._selectController.selectedOptions$.notify(selectedOptions);
469
+ }
470
+ });
471
+ if (this._$optionsList.value) {
472
+ this._optionsMutationObserver.observe(this._$optionsList.value, {
473
+ attributes: true,
474
+ attributeFilter: ['selected'],
475
+ subtree: true
476
+ });
477
+ }
478
+ }
348
479
  _appendNewHTMLOption(option, position) {
349
480
  const $list = this._$optionsList.value;
350
481
  if (!$list)
@@ -405,9 +536,12 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
405
536
  this._selectController.select(option);
406
537
  }
407
538
  disconnectedCallback() {
539
+ var _a;
408
540
  super.disconnectedCallback();
409
541
  this._selectController.options$.unsubscribe(this._optionsObserver);
410
542
  this._$options.clear();
543
+ (_a = this._optionsMutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
544
+ this.removeEventListener(phoenix_light_lit_elements_constants.PHOENIX_LIGHT_LIT_ELEMENTS_EVENT_NAMES.rendered, this._onChildRendered);
411
545
  }
412
546
  _getClonedPlaceholderElement() {
413
547
  return this.$placeholder instanceof HTMLElement ? this.$placeholder.cloneNode(true) : this.$placeholder;
@@ -459,9 +593,9 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
459
593
  <h-select-close-btn class="${select_constants.SELECT_CSS_CLASSES.selectCloseMobileButton}" @close=${this._closeSelect}></h-select-close-btn>
460
594
 
461
595
  <div class=${select_constants.SELECT_CSS_CLASSES.selectLabel}>
462
- ${this.isDevSelectPlaceholderFlagEnabled ?
463
- (_b = this.$searchLabel) === null || _b === void 0 ? void 0 : _b.cloneNode(true) :
464
- lit.html `${this._getClonedPlaceholderElement()}`}
596
+ ${this.isDevSelectPlaceholderFlagEnabled
597
+ ? (_b = this.$searchLabel) === null || _b === void 0 ? void 0 : _b.cloneNode(true)
598
+ : lit.html `${this._getClonedPlaceholderElement()}`}
465
599
  </div>
466
600
 
467
601
  ${isSearchEnabled
@@ -581,6 +715,14 @@ tslib_es6.__decorate([
581
715
  decorators_js.property({ type: Boolean, attribute: 'is-dev-select-placeholder-flag-enabled' }),
582
716
  tslib_es6.__metadata("design:type", Boolean)
583
717
  ], exports.HSelect.prototype, "isDevSelectPlaceholderFlagEnabled", void 0);
718
+ tslib_es6.__decorate([
719
+ decorators_js.property({ type: Boolean, attribute: 'is-dev-select-placeholder-translation-flag-enabled' }),
720
+ tslib_es6.__metadata("design:type", Boolean)
721
+ ], exports.HSelect.prototype, "isDevSelectPlaceholderTranslationFlagEnabled", void 0);
722
+ tslib_es6.__decorate([
723
+ decorators_js.property({ type: Boolean, attribute: 'is-reactive-selection-flag-enabled' }),
724
+ tslib_es6.__metadata("design:type", Boolean)
725
+ ], exports.HSelect.prototype, "isReactiveSelectionFlagEnabled", void 0);
584
726
  tslib_es6.__decorate([
585
727
  decorators_js.property({
586
728
  converter: {
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,wDAA4D;AAC7E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,wDAA4D;AAC7E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -24,6 +24,8 @@ export declare class HSelect extends PhoenixLightLitElement {
24
24
  noDeselect: boolean;
25
25
  assistiveTitleId: string;
26
26
  isDevSelectPlaceholderFlagEnabled: boolean;
27
+ isDevSelectPlaceholderTranslationFlagEnabled: boolean;
28
+ isReactiveSelectionFlagEnabled: boolean;
27
29
  translations: Record<string, string>;
28
30
  private _selectOptionsId;
29
31
  get selectedIndex(): number;
@@ -47,10 +49,13 @@ export declare class HSelect extends PhoenixLightLitElement {
47
49
  private _selectedOptionsAriaObserver;
48
50
  private $placeholder;
49
51
  private $searchLabel;
52
+ private _optionsMutationObserver?;
50
53
  constructor();
51
54
  updated(changedProperties: PropertyValues): void;
52
55
  private _focusElementAfterSelectOpened;
53
56
  connectedCallback(): void;
57
+ firstUpdated(changedProperties: PropertyValues): void;
58
+ private _onChildRendered;
54
59
  attributeChangedCallback(name: string, _old: string | null, value: string | null): void;
55
60
  private _updateOptions;
56
61
  private _getOptions;
@@ -59,6 +64,7 @@ export declare class HSelect extends PhoenixLightLitElement {
59
64
  private _createPlaceholderOption;
60
65
  private _injectOptionIntoDOM;
61
66
  private _setupEvents;
67
+ private _setupMutationObserver;
62
68
  private _handleOptionDeselect;
63
69
  private _updateOptionsView;
64
70
  private _updateLabelAria;
@@ -1,4 +1,5 @@
1
1
  import { __decorate, __metadata } from '../../../../../../external/tslib/tslib.es6.js';
2
+ import { PHOENIX_LIGHT_LIT_ELEMENTS_EVENT_NAMES } from '../../../core/phoenix_light_lit_element/phoenix_light_lit_elements_constants.js';
2
3
  import { html, nothing } from 'lit';
3
4
  import { state } from 'lit/decorators';
4
5
  import { PhoenixLightLitElement } from '../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
@@ -40,6 +41,8 @@ let HSelect = class HSelect extends PhoenixLightLitElement {
40
41
  this.noDeselect = false;
41
42
  this.assistiveTitleId = '';
42
43
  this.isDevSelectPlaceholderFlagEnabled = false;
44
+ this.isDevSelectPlaceholderTranslationFlagEnabled = false;
45
+ this.isReactiveSelectionFlagEnabled = false;
43
46
  this.translations = {};
44
47
  this._selectOptionsId = v4();
45
48
  this._searchValue = '';
@@ -50,14 +53,42 @@ let HSelect = class HSelect extends PhoenixLightLitElement {
50
53
  this._$dropdownContent = createRef();
51
54
  this.$dropdownToggler = createRef();
52
55
  this._selectContext = new ContextProviderController(this);
56
+ this._onChildRendered = (ev) => {
57
+ const renderedEl = ev.detail && ev.detail.$el;
58
+ if (!renderedEl)
59
+ return;
60
+ const tag = renderedEl.tagName.toLowerCase();
61
+ if (tag === SELECT_RELATED_COMPONENTS_NAMES.toggler) {
62
+ // Prefer child's slot API if available
63
+ if (typeof renderedEl.getSlot === 'function' && renderedEl.hasSlot && renderedEl.hasSlot(SELECT_INPUT_PLACEHOLDER_SLOT_NAME)) {
64
+ const arr = renderedEl.getSlot(SELECT_INPUT_PLACEHOLDER_SLOT_NAME);
65
+ if (arr && arr.length) {
66
+ const val = arr[0].values && arr[0].values[0];
67
+ if (val) {
68
+ this.$placeholder = val;
69
+ this.requestUpdate();
70
+ this.removeEventListener(PHOENIX_LIGHT_LIT_ELEMENTS_EVENT_NAMES.rendered, this._onChildRendered);
71
+ return;
72
+ }
73
+ }
74
+ }
75
+ // Fallback: try querySelector on the rendered element
76
+ const el = renderedEl.querySelector ? renderedEl.querySelector(`[slot="${SELECT_INPUT_PLACEHOLDER_SLOT_NAME}"]`) : null;
77
+ if (el) {
78
+ this.$placeholder = el;
79
+ this.requestUpdate();
80
+ this.removeEventListener(PHOENIX_LIGHT_LIT_ELEMENTS_EVENT_NAMES.rendered, this._onChildRendered);
81
+ }
82
+ }
83
+ };
53
84
  this._updateOptions = () => {
54
85
  const $options = this._getOptions();
55
86
  this._$options = $options.reduce((acc, $option) => {
56
87
  const value = $option.getAttribute('value');
57
88
  if (value === null || value === undefined)
58
- throw Error('Select option must hava a value');
89
+ throw Error('Select option must have a value');
59
90
  if (acc.has(value))
60
- throw Error('Select options must hava a unique values.');
91
+ throw Error('Select options must have a unique values.');
61
92
  return acc.set(value, $option);
62
93
  }, new Map());
63
94
  const options = $options.map(SelectOptionMapper.toModel);
@@ -180,8 +211,11 @@ let HSelect = class HSelect extends PhoenixLightLitElement {
180
211
  };
181
212
  const $options = Array.from(this.querySelectorAll(SELECT_RELATED_COMPONENTS_NAMES.option));
182
213
  $options.forEach(($option) => $option.setAttribute('slot', SELECT_SLOT_NAMES.content));
183
- const $placeholderEl = this.querySelector(`[slot="${SELECT_INPUT_PLACEHOLDER_SLOT_NAME}"]`);
184
- this.$placeholder = ($placeholderEl && ((_a = $placeholderEl.textContent) === null || _a === void 0 ? void 0 : _a.trim())) ? $placeholderEl : 'Select';
214
+ // this condition doesn't work as properties load on connectedCallback but I leave it here to not forget about deleting it
215
+ if (!this.isDevSelectPlaceholderTranslationFlagEnabled) {
216
+ const $placeholderEl = this.querySelector(`[slot="${SELECT_INPUT_PLACEHOLDER_SLOT_NAME}"]`);
217
+ this.$placeholder = ($placeholderEl && ((_a = $placeholderEl.textContent) === null || _a === void 0 ? void 0 : _a.trim())) ? $placeholderEl : 'Select';
218
+ }
185
219
  if (this.multiple)
186
220
  this.type = SELECT_TYPES.multiple;
187
221
  }
@@ -283,6 +317,56 @@ let HSelect = class HSelect extends PhoenixLightLitElement {
283
317
  }
284
318
  this._setupEvents();
285
319
  }
320
+ firstUpdated(changedProperties) {
321
+ super.firstUpdated(changedProperties);
322
+ if (this.isDevSelectPlaceholderTranslationFlagEnabled) {
323
+ let placeholderCandidate = null;
324
+ if (this.hasSlot(SELECT_INPUT_PLACEHOLDER_SLOT_NAME)) {
325
+ const slotTpls = this.getSlot(SELECT_INPUT_PLACEHOLDER_SLOT_NAME);
326
+ if (Array.isArray(slotTpls) && slotTpls.length > 0) {
327
+ const tpl = slotTpls[0];
328
+ placeholderCandidate = (tpl && tpl.values && tpl.values[0] ? tpl.values[0] : null);
329
+ }
330
+ }
331
+ // 2) Try toggler slot that may have been assigned into this._slots
332
+ if (!placeholderCandidate && this.hasSlot(SELECT_SLOT_NAMES.toggler)) {
333
+ const togglerTpls = this.getSlot(SELECT_SLOT_NAMES.toggler);
334
+ if (Array.isArray(togglerTpls) && togglerTpls.length > 0) {
335
+ const typedTogglerPtls = togglerTpls;
336
+ const togglerNode = (typedTogglerPtls[0].values ? typedTogglerPtls[0].values[0] : null);
337
+ if (togglerNode) {
338
+ // If togglerNode is an element, try to find an inner placeholder element
339
+ if (typeof togglerNode.querySelector === 'function') {
340
+ const inner = togglerNode.querySelector(`[slot="${SELECT_INPUT_PLACEHOLDER_SLOT_NAME}"]`);
341
+ if (inner)
342
+ placeholderCandidate = inner;
343
+ }
344
+ // fallback to using togglerNode text content (if useful)
345
+ if (!placeholderCandidate && togglerNode.textContent && togglerNode.textContent.trim()) {
346
+ placeholderCandidate = togglerNode;
347
+ }
348
+ }
349
+ }
350
+ }
351
+ // 3) Last DOM fallback (works if placeholder still in DOM)
352
+ if (!placeholderCandidate) {
353
+ const domEl = this.querySelector(`[slot="${SELECT_INPUT_PLACEHOLDER_SLOT_NAME}"]`);
354
+ if (domEl)
355
+ placeholderCandidate = domEl;
356
+ }
357
+ // 4) If not found yet, set default and listen for child "rendered" events (toggler)
358
+ if (placeholderCandidate) {
359
+ this.$placeholder = placeholderCandidate;
360
+ }
361
+ else {
362
+ this.$placeholder = 'Select';
363
+ this.addEventListener(PHOENIX_LIGHT_LIT_ELEMENTS_EVENT_NAMES.rendered, this._onChildRendered);
364
+ }
365
+ }
366
+ if (this.isReactiveSelectionFlagEnabled) {
367
+ this._setupMutationObserver();
368
+ }
369
+ }
286
370
  attributeChangedCallback(name, _old, value) {
287
371
  super.attributeChangedCallback(name, _old, value);
288
372
  switch (name) {
@@ -301,19 +385,19 @@ let HSelect = class HSelect extends PhoenixLightLitElement {
301
385
  this._updateOptions();
302
386
  }
303
387
  get _canAddPlaceholder() {
304
- var _a;
305
388
  if (this.multiple || this.required)
306
389
  return false;
307
- const hasSelection = (((_a = this._selectController.selectedOptions$.getValue()) === null || _a === void 0 ? void 0 : _a.length) || 0) > 0;
308
- if (hasSelection)
309
- return false;
310
390
  const hasExistingPlaceholder = !!this.querySelector('h-option[placeholder]');
311
391
  return !hasExistingPlaceholder;
312
392
  }
313
393
  _createPlaceholderOption() {
394
+ var _a;
314
395
  const $option = document.createElement('h-option');
315
396
  $option.setAttribute('value', '');
316
- $option.setAttribute('selected', 'true');
397
+ const hasSelection = (((_a = this._selectController.selectedOptions$.getValue()) === null || _a === void 0 ? void 0 : _a.length) || 0) > 0;
398
+ if (!hasSelection) {
399
+ $option.setAttribute('selected', 'true');
400
+ }
317
401
  $option.setAttribute('placeholder', 'true');
318
402
  $option.setAttribute('slot', SELECT_SLOT_NAMES.content);
319
403
  const $content = document.createElement(SELECT_RELATED_COMPONENTS_NAMES.optionContent);
@@ -321,7 +405,7 @@ let HSelect = class HSelect extends PhoenixLightLitElement {
321
405
  $content.textContent = this.$placeholder;
322
406
  }
323
407
  else if (this.$placeholder instanceof Node) {
324
- Array.from(this.$placeholder.childNodes).forEach(node => {
408
+ Array.from(this.$placeholder.childNodes).forEach((node) => {
325
409
  $content.appendChild(node.cloneNode(true));
326
410
  });
327
411
  }
@@ -330,8 +414,8 @@ let HSelect = class HSelect extends PhoenixLightLitElement {
330
414
  }
331
415
  _injectOptionIntoDOM($option) {
332
416
  const $firstOption = this.querySelector(SELECT_RELATED_COMPONENTS_NAMES.option);
333
- if ($firstOption) {
334
- this.insertBefore($option, $firstOption);
417
+ if ($firstOption && $firstOption.parentNode) {
418
+ $firstOption.parentNode.insertBefore($option, $firstOption);
335
419
  }
336
420
  else {
337
421
  this.appendChild($option);
@@ -341,6 +425,53 @@ let HSelect = class HSelect extends PhoenixLightLitElement {
341
425
  this.addEventListener(SELECT_EVENT_NAMES.deselectOption, this._handleOptionDeselect);
342
426
  this.addEventListener(SELECT_CLOSE_BTN_EVENT_NAMES.close, this._closeSelect);
343
427
  }
428
+ _setupMutationObserver() {
429
+ this._optionsMutationObserver = new MutationObserver((mutations) => {
430
+ let shouldUpdate = false;
431
+ let newlySelectedValue = null;
432
+ for (const mutation of mutations) {
433
+ const target = mutation.target;
434
+ if (mutation.type === 'attributes' &&
435
+ mutation.attributeName === 'selected' &&
436
+ target.tagName &&
437
+ target.tagName.toLowerCase() === 'h-option') {
438
+ shouldUpdate = true;
439
+ if (target.hasAttribute('selected')) {
440
+ newlySelectedValue = target.getAttribute('value');
441
+ }
442
+ }
443
+ }
444
+ if (shouldUpdate) {
445
+ const options = Array.from(this._$options.values()).map(($el) => SelectOptionMapper.toModel($el));
446
+ if (!this.multiple && newlySelectedValue !== null) {
447
+ options.forEach((opt) => {
448
+ opt.selected = opt.value === newlySelectedValue;
449
+ });
450
+ }
451
+ this._selectController.options$.notify(options);
452
+ let selectedOptions = options.filter((opt) => opt.selected);
453
+ if (selectedOptions.length === 0) {
454
+ const placeholder = options.find((opt) => opt.isPlaceholder);
455
+ if (placeholder) {
456
+ placeholder.selected = true;
457
+ const $placeholderHtml = this._$options.get(placeholder.value);
458
+ if ($placeholderHtml) {
459
+ $placeholderHtml.setAttribute('selected', 'true');
460
+ }
461
+ selectedOptions = [placeholder];
462
+ }
463
+ }
464
+ this._selectController.selectedOptions$.notify(selectedOptions);
465
+ }
466
+ });
467
+ if (this._$optionsList.value) {
468
+ this._optionsMutationObserver.observe(this._$optionsList.value, {
469
+ attributes: true,
470
+ attributeFilter: ['selected'],
471
+ subtree: true
472
+ });
473
+ }
474
+ }
344
475
  _appendNewHTMLOption(option, position) {
345
476
  const $list = this._$optionsList.value;
346
477
  if (!$list)
@@ -401,9 +532,12 @@ let HSelect = class HSelect extends PhoenixLightLitElement {
401
532
  this._selectController.select(option);
402
533
  }
403
534
  disconnectedCallback() {
535
+ var _a;
404
536
  super.disconnectedCallback();
405
537
  this._selectController.options$.unsubscribe(this._optionsObserver);
406
538
  this._$options.clear();
539
+ (_a = this._optionsMutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
540
+ this.removeEventListener(PHOENIX_LIGHT_LIT_ELEMENTS_EVENT_NAMES.rendered, this._onChildRendered);
407
541
  }
408
542
  _getClonedPlaceholderElement() {
409
543
  return this.$placeholder instanceof HTMLElement ? this.$placeholder.cloneNode(true) : this.$placeholder;
@@ -455,9 +589,9 @@ let HSelect = class HSelect extends PhoenixLightLitElement {
455
589
  <h-select-close-btn class="${SELECT_CSS_CLASSES.selectCloseMobileButton}" @close=${this._closeSelect}></h-select-close-btn>
456
590
 
457
591
  <div class=${SELECT_CSS_CLASSES.selectLabel}>
458
- ${this.isDevSelectPlaceholderFlagEnabled ?
459
- (_b = this.$searchLabel) === null || _b === void 0 ? void 0 : _b.cloneNode(true) :
460
- html `${this._getClonedPlaceholderElement()}`}
592
+ ${this.isDevSelectPlaceholderFlagEnabled
593
+ ? (_b = this.$searchLabel) === null || _b === void 0 ? void 0 : _b.cloneNode(true)
594
+ : html `${this._getClonedPlaceholderElement()}`}
461
595
  </div>
462
596
 
463
597
  ${isSearchEnabled
@@ -577,6 +711,14 @@ __decorate([
577
711
  property({ type: Boolean, attribute: 'is-dev-select-placeholder-flag-enabled' }),
578
712
  __metadata("design:type", Boolean)
579
713
  ], HSelect.prototype, "isDevSelectPlaceholderFlagEnabled", void 0);
714
+ __decorate([
715
+ property({ type: Boolean, attribute: 'is-dev-select-placeholder-translation-flag-enabled' }),
716
+ __metadata("design:type", Boolean)
717
+ ], HSelect.prototype, "isDevSelectPlaceholderTranslationFlagEnabled", void 0);
718
+ __decorate([
719
+ property({ type: Boolean, attribute: 'is-reactive-selection-flag-enabled' }),
720
+ __metadata("design:type", Boolean)
721
+ ], HSelect.prototype, "isReactiveSelectionFlagEnabled", void 0);
580
722
  __decorate([
581
723
  property({
582
724
  converter: {
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,wDAA4D;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,wDAA4D;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@shoper/phoenix_design_system",
3
3
  "packageManager": "yarn@3.2.0",
4
4
  "sideEffects": false,
5
- "version": "1.18.16-0",
5
+ "version": "1.18.16-10",
6
6
  "description": "phoenix design system",
7
7
  "author": "zefirek",
8
8
  "license": "MIT",