@shoper/phoenix_design_system 1.18.29-0 → 1.18.30-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/build/cjs/packages/phoenix/src/components/form/search/search.js +16 -91
  2. package/build/cjs/packages/phoenix/src/components/form/search/search.js.map +1 -1
  3. package/build/cjs/packages/phoenix/src/components/form/search/subcomponents/input/search_input.js +22 -51
  4. package/build/cjs/packages/phoenix/src/components/form/search/subcomponents/input/search_input.js.map +1 -1
  5. package/build/cjs/packages/phoenix/src/components/form/select/select.js +33 -4
  6. package/build/cjs/packages/phoenix/src/components/form/select/select.js.map +1 -1
  7. package/build/esm/packages/phoenix/src/components/form/search/search.d.ts +0 -7
  8. package/build/esm/packages/phoenix/src/components/form/search/search.js +16 -91
  9. package/build/esm/packages/phoenix/src/components/form/search/search.js.map +1 -1
  10. package/build/esm/packages/phoenix/src/components/form/search/subcomponents/input/search_input.d.ts +0 -1
  11. package/build/esm/packages/phoenix/src/components/form/search/subcomponents/input/search_input.js +22 -51
  12. package/build/esm/packages/phoenix/src/components/form/search/subcomponents/input/search_input.js.map +1 -1
  13. package/build/esm/packages/phoenix/src/components/form/select/select.d.ts +2 -0
  14. package/build/esm/packages/phoenix/src/components/form/select/select.js +33 -4
  15. package/build/esm/packages/phoenix/src/components/form/select/select.js.map +1 -1
  16. package/package.json +1 -1
  17. package/build/cjs/packages/phoenix/src/controllers/focus_trap_controller/focus_trap_controller.js +0 -44
  18. package/build/cjs/packages/phoenix/src/controllers/focus_trap_controller/focus_trap_controller.js.map +0 -1
  19. package/build/cjs/packages/phoenix/src/controllers/focus_trap_controller/strategies/base_focus_trap_strategy.js +0 -66
  20. package/build/cjs/packages/phoenix/src/controllers/focus_trap_controller/strategies/base_focus_trap_strategy.js.map +0 -1
  21. package/build/cjs/packages/phoenix/src/controllers/focus_trap_controller/strategies/cyclic_focus_trap_strategy/cyclic_focus_trap_strategy.js +0 -14
  22. package/build/cjs/packages/phoenix/src/controllers/focus_trap_controller/strategies/cyclic_focus_trap_strategy/cyclic_focus_trap_strategy.js.map +0 -1
  23. package/build/cjs/packages/phoenix/src/controllers/focus_trap_controller/strategies/focus_trap_strategy_constants.js +0 -10
  24. package/build/cjs/packages/phoenix/src/controllers/focus_trap_controller/strategies/focus_trap_strategy_constants.js.map +0 -1
  25. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/focus_trap_controller.d.ts +0 -13
  26. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/focus_trap_controller.js +0 -40
  27. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/focus_trap_controller.js.map +0 -1
  28. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/focus_trap_controller_types.d.ts +0 -6
  29. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/focus_trap_controller_types.js +0 -3
  30. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/focus_trap_controller_types.js.map +0 -1
  31. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/strategies/base_focus_trap_strategy.d.ts +0 -14
  32. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/strategies/base_focus_trap_strategy.js +0 -62
  33. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/strategies/base_focus_trap_strategy.js.map +0 -1
  34. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/strategies/base_focus_trap_strategy_types.d.ts +0 -8
  35. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/strategies/base_focus_trap_strategy_types.js +0 -2
  36. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/strategies/base_focus_trap_strategy_types.js.map +0 -1
  37. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/strategies/cyclic_focus_trap_strategy/cyclic_focus_trap_strategy.d.ts +0 -6
  38. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/strategies/cyclic_focus_trap_strategy/cyclic_focus_trap_strategy.js +0 -10
  39. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/strategies/cyclic_focus_trap_strategy/cyclic_focus_trap_strategy.js.map +0 -1
  40. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/strategies/cyclic_focus_trap_strategy/cyclic_focus_trap_strategy_types.d.ts +0 -3
  41. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/strategies/cyclic_focus_trap_strategy/cyclic_focus_trap_strategy_types.js +0 -2
  42. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/strategies/cyclic_focus_trap_strategy/cyclic_focus_trap_strategy_types.js.map +0 -1
  43. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/strategies/focus_trap_strategy_constants.d.ts +0 -3
  44. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/strategies/focus_trap_strategy_constants.js +0 -6
  45. package/build/esm/packages/phoenix/src/controllers/focus_trap_controller/strategies/focus_trap_strategy_constants.js.map +0 -1
@@ -15,25 +15,16 @@ import { MODAL_EVENTS } from '../../modal/modal_constants.js';
15
15
  import { SHEET_EVENTS } from '../../sheet/sheet_constants.js';
16
16
  import { when as n } from '../../../../../../external/lit-html/directives/when.js';
17
17
  import { DEFAULT_VIEW, SEARCH_CLASS_NAMES, SEARCH_COMPONENT_NAMES, SEARCH_CONFIGURATION, SEARCH_CONTEXT_NAMES, SEARCH_CUSTOM_EVENT_NAMES } from './search_constants.js';
18
- import { FOCUS_TRAP_STRATEGY_TYPES } from '../../../controllers/focus_trap_controller/strategies/focus_trap_strategy_constants.js';
19
- import { FocusTrapController } from '../../../controllers/focus_trap_controller/focus_trap_controller.js';
20
18
 
21
19
  let HSearch = class HSearch extends PhoenixLightLitElement {
22
20
  constructor() {
23
21
  super(...arguments);
24
22
  this.view = DEFAULT_VIEW;
25
- this.isSearchUxFixesFlagEnabled = false;
26
- this.isSearchFocusTrapFixEnabled = false;
27
23
  this.displayMode = 'dropdown';
28
24
  this._togglerElement = null;
29
- this._mobileDialogOpener = null;
30
25
  this._id = v4();
31
26
  this._openSearchButtonAriaLabelId = `${this._id}-open-search-button-aria-label`;
32
27
  this._searchContentContainerId = v4();
33
- this.mobileFocusTrapController = new FocusTrapController(this, {
34
- mode: FOCUS_TRAP_STRATEGY_TYPES.cyclic,
35
- getContainer: () => this
36
- });
37
28
  this._searchResultsRef = createRef();
38
29
  this._searchHistoryRef = createRef();
39
30
  this._searchMessageRef = createRef();
@@ -53,24 +44,14 @@ let HSearch = class HSearch extends PhoenixLightLitElement {
53
44
  this._handleSubmitForm = () => {
54
45
  if (this._activeItemId !== `${this._id}-1`)
55
46
  return;
56
- const inputFieldValue = this.isSearchUxFixesFlagEnabled ? this._inputField.value.trim() : this._inputField.value;
47
+ const inputFieldValue = this._inputField.value.trim();
57
48
  if (inputFieldValue === '') {
58
49
  this._updateSearchView(this._inputField.value, true);
59
- if (this.isSearchUxFixesFlagEnabled)
60
- return;
61
- }
62
- else {
63
- if (!this.isSearchUxFixesFlagEnabled)
64
- this._resetSearchView();
65
- }
66
- if (this.isSearchUxFixesFlagEnabled) {
67
- const normalizedPhrase = this._inputField.value.trim().replace(/\s+/g, ' ');
68
- this._inputField.value = normalizedPhrase;
69
- this._submitSearchPhrase(normalizedPhrase);
70
- }
71
- else {
72
- this._submitSearchPhrase(this._inputField.value);
50
+ return;
73
51
  }
52
+ const normalizedPhrase = this._inputField.value.trim().replace(/\s+/g, ' ');
53
+ this._inputField.value = normalizedPhrase;
54
+ this._submitSearchPhrase(normalizedPhrase);
74
55
  };
75
56
  this._bindKeys = (ev) => {
76
57
  if (this.displayMode !== 'dropdown') {
@@ -320,7 +301,7 @@ let HSearch = class HSearch extends PhoenixLightLitElement {
320
301
  if (!outsideClick)
321
302
  return;
322
303
  this._resetSearchView();
323
- this.isSearchUxFixesFlagEnabled && this._removeSearchKeyboardNavigation();
304
+ this._removeSearchKeyboardNavigation();
324
305
  };
325
306
  this._switchTypeOfSearchView = () => {
326
307
  var _a;
@@ -329,8 +310,6 @@ let HSearch = class HSearch extends PhoenixLightLitElement {
329
310
  if (window.innerWidth > BREAKPOINTS.sm) {
330
311
  const hasBeenOpened = this.classList.contains(SEARCH_CLASS_NAMES.mobileOpened);
331
312
  this.classList.remove(SEARCH_CLASS_NAMES.mobileOpened);
332
- if (this.isSearchFocusTrapFixEnabled)
333
- this._deactivateMobileDialog();
334
313
  if (hasBeenOpened && this.displayMode !== 'dropdown') {
335
314
  const $storefrontSearch = document.querySelector(`h-storefront-search[module-instance-id="${this.moduleInstanceId}"]`);
336
315
  const searchOverlayTriggerName = (_a = $storefrontSearch === null || $storefrontSearch === void 0 ? void 0 : $storefrontSearch.querySelector('[aria-haspopup="dialog"]')) === null || _a === void 0 ? void 0 : _a.getAttribute('name');
@@ -346,8 +325,6 @@ let HSearch = class HSearch extends PhoenixLightLitElement {
346
325
  };
347
326
  this._openMobileView = () => {
348
327
  this.classList.add(SEARCH_CLASS_NAMES.mobileOpened);
349
- if (this.isSearchFocusTrapFixEnabled)
350
- this._activateMobileDialog();
351
328
  };
352
329
  this._isSuggesterLayerVisible = () => {
353
330
  var _a;
@@ -368,21 +345,8 @@ let HSearch = class HSearch extends PhoenixLightLitElement {
368
345
  document.removeEventListener('focusin', this._resetSearchOnFocusOutside);
369
346
  }
370
347
  };
371
- this._activateMobileDialog = () => {
372
- this._mobileDialogOpener = document.activeElement;
373
- this.setAttribute('role', 'dialog');
374
- this.setAttribute('aria-modal', 'true');
375
- this.mobileFocusTrapController.activate();
376
- };
377
- this._deactivateMobileDialog = () => {
378
- this.removeAttribute('role');
379
- this.removeAttribute('aria-modal');
380
- this.mobileFocusTrapController.deactivate();
381
- };
382
348
  this._handleOpenSearch = () => {
383
349
  this.classList.add(SEARCH_CLASS_NAMES.mobileOpened);
384
- if (this.isSearchFocusTrapFixEnabled)
385
- this._activateMobileDialog();
386
350
  const shouldShowMessage = this._searchPhrase !== '';
387
351
  this._updateSearchView(this._searchPhrase, shouldShowMessage, false);
388
352
  const $searchInput = this.querySelector(`
@@ -391,8 +355,7 @@ let HSearch = class HSearch extends PhoenixLightLitElement {
391
355
  $searchInput === null || $searchInput === void 0 ? void 0 : $searchInput.focus();
392
356
  };
393
357
  this._handleOpenSearchWithKeyboard = (ev) => {
394
- const isRepeated = this.isSearchFocusTrapFixEnabled ? ev.repeat : false;
395
- if (ev.code !== 'Enter' || isRepeated)
358
+ if (ev.code !== 'Enter')
396
359
  return;
397
360
  ev.preventDefault();
398
361
  this._handleOpenSearch();
@@ -401,12 +364,6 @@ let HSearch = class HSearch extends PhoenixLightLitElement {
401
364
  async connectedCallback() {
402
365
  super.connectedCallback();
403
366
  this._setupContext();
404
- this._searchInput = this.querySelector(SEARCH_COMPONENT_NAMES.searchInput);
405
- if (this.isSearchFocusTrapFixEnabled) {
406
- this._setupInitialSearchPhrase();
407
- this._setupListeners();
408
- this._setupToggler();
409
- }
410
367
  try {
411
368
  this._searchContextConsumer = new ContextConsumerController(this);
412
369
  this._searchContext$ = await this._searchContextConsumer.consumeAsync(this.moduleInstanceId);
@@ -435,12 +392,10 @@ let HSearch = class HSearch extends PhoenixLightLitElement {
435
392
  catch (_a) {
436
393
  console.error('Search context is not provided');
437
394
  }
438
- if (!this.isSearchFocusTrapFixEnabled) {
439
- this._searchInput = this.querySelector(SEARCH_COMPONENT_NAMES.searchInput);
440
- this._setupInitialSearchPhrase();
441
- this._setupListeners();
442
- this._setupToggler();
443
- }
395
+ this._searchInput = this.querySelector(SEARCH_COMPONENT_NAMES.searchInput);
396
+ this._setupInitialSearchPhrase();
397
+ this._setupListeners();
398
+ this._setupToggler();
444
399
  }
445
400
  disconnectedCallback() {
446
401
  var _a;
@@ -511,12 +466,8 @@ let HSearch = class HSearch extends PhoenixLightLitElement {
511
466
  this.addEventListener(SEARCH_CUSTOM_EVENT_NAMES.submit, this._handleSubmitForm);
512
467
  this.addEventListener(SEARCH_CUSTOM_EVENT_NAMES.close, () => {
513
468
  this.classList.remove(SEARCH_CLASS_NAMES.mobileOpened);
514
- if (this.isSearchFocusTrapFixEnabled)
515
- this._deactivateMobileDialog();
516
469
  this._resetSearchView();
517
- this.isSearchUxFixesFlagEnabled && this._removeSearchKeyboardNavigation();
518
- if (this.isSearchFocusTrapFixEnabled)
519
- requestAnimationFrame(() => { var _a; return (_a = this._mobileDialogOpener) === null || _a === void 0 ? void 0 : _a.focus(); });
470
+ this._removeSearchKeyboardNavigation();
520
471
  });
521
472
  this.addEventListener(SEARCH_CUSTOM_EVENT_NAMES.loadMoreHistoryItems, () => {
522
473
  const contentLength = this._searchHistory.length;
@@ -623,16 +574,8 @@ let HSearch = class HSearch extends PhoenixLightLitElement {
623
574
  this._setActiveItemId(`${this._id}-1`);
624
575
  const searchBar = this.querySelector(`.${SEARCH_CLASS_NAMES.searchBar}`);
625
576
  searchBar === null || searchBar === void 0 ? void 0 : searchBar.classList.remove(SEARCH_CLASS_NAMES.outline);
626
- if (this.displayMode === 'dropdown') {
627
- const isMobileViewOpen = this.classList.contains(SEARCH_CLASS_NAMES.mobileOpened);
628
- if (isMobileViewOpen) {
629
- this._displaySuggester(this._searchPhrase);
630
- }
631
- else {
632
- this._hideHistorySuggestionsAndResults();
633
- }
634
- }
635
- !this.isSearchUxFixesFlagEnabled && this._removeSearchKeyboardNavigation();
577
+ if (this.displayMode === 'dropdown')
578
+ this._hideHistorySuggestionsAndResults();
636
579
  }
637
580
  _submitSearchPhrase(searchPhrase) {
638
581
  this._dispatchEventWithSearchPhrase(SEARCH_CUSTOM_EVENT_NAMES.searchPhraseSubmitted, searchPhrase);
@@ -642,23 +585,13 @@ let HSearch = class HSearch extends PhoenixLightLitElement {
642
585
  if (!this._togglerElement)
643
586
  return;
644
587
  this._togglerElement.addEventListener('click', this._handleOpenSearch);
645
- if (this.isSearchFocusTrapFixEnabled) {
646
- this._togglerElement.addEventListener('keydown', this._handleOpenSearchWithKeyboard);
647
- }
648
- else {
649
- this._togglerElement.addEventListener('keyup', this._handleOpenSearchWithKeyboard);
650
- }
588
+ this._togglerElement.addEventListener('keyup', this._handleOpenSearchWithKeyboard);
651
589
  }
652
590
  _teardownToggler() {
653
591
  if (!this._togglerElement)
654
592
  return;
655
593
  this._togglerElement.removeEventListener('click', this._handleOpenSearch);
656
- if (this.isSearchFocusTrapFixEnabled) {
657
- this._togglerElement.removeEventListener('keydown', this._handleOpenSearchWithKeyboard);
658
- }
659
- else {
660
- this._togglerElement.removeEventListener('keyup', this._handleOpenSearchWithKeyboard);
661
- }
594
+ this._togglerElement.removeEventListener('keyup', this._handleOpenSearchWithKeyboard);
662
595
  }
663
596
  render() {
664
597
  super.render();
@@ -715,14 +648,6 @@ __decorate([
715
648
  property({ type: String }),
716
649
  __metadata("design:type", String)
717
650
  ], HSearch.prototype, "locale", void 0);
718
- __decorate([
719
- property({ type: Boolean, attribute: 'is-search-ux-fixes-flag-enabled' }),
720
- __metadata("design:type", Boolean)
721
- ], HSearch.prototype, "isSearchUxFixesFlagEnabled", void 0);
722
- __decorate([
723
- property({ type: Boolean, attribute: 'is-search-focus-trap-fix-enabled' }),
724
- __metadata("design:type", Boolean)
725
- ], HSearch.prototype, "isSearchFocusTrapFixEnabled", void 0);
726
651
  __decorate([
727
652
  property({ type: String, attribute: 'display-mode' }),
728
653
  __metadata("design:type", String)
@@ -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,eAAe,wDAA4D;AAC3E;AACA;AACA,0BAA0B,wDAA4D;AACtF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,eAAe,wDAA4D;AAC3E;AACA;AACA,0BAA0B,wDAA4D;AACtF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -3,7 +3,6 @@ import { PropertyValues } from 'lit';
3
3
  export declare class HSearchInput extends PhoenixLightLitElement {
4
4
  input: HTMLInputElement | null;
5
5
  moduleInstanceId: string;
6
- isSearchFocusTrapFixEnabled: boolean;
7
6
  private _isSearchPhraseCleared;
8
7
  connectedCallback(): void;
9
8
  firstUpdated(props: PropertyValues): void;
@@ -9,7 +9,6 @@ import { SEARCH_CLASS_NAMES, SEARCH_CUSTOM_EVENT_NAMES, SEARCH_COMPONENT_NAMES }
9
9
  let HSearchInput = class HSearchInput extends PhoenixLightLitElement {
10
10
  constructor() {
11
11
  super(...arguments);
12
- this.isSearchFocusTrapFixEnabled = false;
13
12
  this._isSearchPhraseCleared = false;
14
13
  this._setupAttributes = () => {
15
14
  var _a, _b, _c, _d;
@@ -69,60 +68,36 @@ let HSearchInput = class HSearchInput extends PhoenixLightLitElement {
69
68
  }
70
69
  });
71
70
  });
72
- if (this.isSearchFocusTrapFixEnabled) {
73
- this.input.addEventListener('keydown', (ev) => {
74
- if (ev.key !== 'Enter' || ev.repeat)
75
- return;
76
- if (this._isSearchPhraseCleared) {
77
- this._isSearchPhraseCleared = false;
78
- return;
79
- }
80
- this.emitCustomEvent(SEARCH_CUSTOM_EVENT_NAMES.submit, {
81
- detail: { searchPhrase: ev.target.value }
82
- });
83
- });
84
- this.input.addEventListener('keyup', debounce_1((ev) => {
85
- if (ev.key === 'ArrowUp' || ev.key === 'ArrowDown' || ev.key === 'Escape' || ev.key === 'Enter')
86
- return;
71
+ this.input.addEventListener('keyup', (ev) => {
72
+ if (ev.key === 'ArrowUp' || ev.key === 'ArrowDown' || ev.key === 'Escape')
73
+ return;
74
+ if (ev.key !== 'Enter') {
87
75
  this.emitCustomEvent(SEARCH_CUSTOM_EVENT_NAMES.keyup, {
88
76
  detail: {
89
77
  searchPhrase: ev.target.value
90
78
  }
91
79
  });
92
- }, 200));
93
- }
94
- else {
95
- this.input.addEventListener('keyup', (ev) => {
96
- if (ev.key === 'ArrowUp' || ev.key === 'ArrowDown' || ev.key === 'Escape')
97
- return;
98
- if (ev.key !== 'Enter') {
99
- this.emitCustomEvent(SEARCH_CUSTOM_EVENT_NAMES.keyup, {
100
- detail: {
101
- searchPhrase: ev.target.value
102
- }
103
- });
104
- return;
80
+ return;
81
+ }
82
+ if (this._isSearchPhraseCleared) {
83
+ this._isSearchPhraseCleared = false;
84
+ return;
85
+ }
86
+ this.emitCustomEvent(SEARCH_CUSTOM_EVENT_NAMES.submit, {
87
+ detail: {
88
+ searchPhrase: ev.target.value
105
89
  }
106
- if (this._isSearchPhraseCleared) {
107
- this._isSearchPhraseCleared = false;
108
- return;
90
+ });
91
+ });
92
+ this.input.addEventListener('keyup', debounce_1((ev) => {
93
+ if (ev.key === 'ArrowUp' || ev.key === 'ArrowDown' || ev.key === 'Escape' || ev.key === 'Enter')
94
+ return;
95
+ this.emitCustomEvent(SEARCH_CUSTOM_EVENT_NAMES.keyup, {
96
+ detail: {
97
+ searchPhrase: ev.target.value
109
98
  }
110
- this.emitCustomEvent(SEARCH_CUSTOM_EVENT_NAMES.submit, {
111
- detail: {
112
- searchPhrase: ev.target.value
113
- }
114
- });
115
99
  });
116
- this.input.addEventListener('keyup', debounce_1((ev) => {
117
- if (ev.key === 'ArrowUp' || ev.key === 'ArrowDown' || ev.key === 'Escape' || ev.key === 'Enter')
118
- return;
119
- this.emitCustomEvent(SEARCH_CUSTOM_EVENT_NAMES.keyup, {
120
- detail: {
121
- searchPhrase: ev.target.value
122
- }
123
- });
124
- }, 200));
125
- }
100
+ }, 200));
126
101
  this.input.addEventListener('search', (ev) => {
127
102
  if (this.input.value !== '') {
128
103
  return;
@@ -156,10 +131,6 @@ __decorate([
156
131
  property({ type: String, attribute: 'module-instance-id' }),
157
132
  __metadata("design:type", String)
158
133
  ], HSearchInput.prototype, "moduleInstanceId", void 0);
159
- __decorate([
160
- property({ type: Boolean, attribute: 'is-search-focus-trap-fix-enabled' }),
161
- __metadata("design:type", Boolean)
162
- ], HSearchInput.prototype, "isSearchFocusTrapFixEnabled", void 0);
163
134
  __decorate([
164
135
  state(),
165
136
  __metadata("design:type", Boolean)
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,qDAAyD;AAChG;AACA;AACA;AACA;AACA,uBAAuB,qDAAyD;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,qDAAyD;AAChG;AACA;AACA;AACA;AACA,uBAAuB,qDAAyD;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,7 @@ export declare class HSelect extends PhoenixLightLitElement {
24
24
  noDeselect: boolean;
25
25
  assistiveTitleId: string;
26
26
  noPlaceholderOption: boolean;
27
+ devCachedSelectOptions: boolean;
27
28
  translations: Record<string, string>;
28
29
  private _selectOptionsId;
29
30
  get selectedIndex(): number;
@@ -51,6 +52,7 @@ export declare class HSelect extends PhoenixLightLitElement {
51
52
  constructor();
52
53
  updated(changedProperties: PropertyValues): void;
53
54
  private _focusElementAfterSelectOpened;
55
+ private _focusElementAfterSelectOpenedAsync;
54
56
  connectedCallback(): void;
55
57
  firstUpdated(changedProperties: PropertyValues): void;
56
58
  attributeChangedCallback(name: string, _old: string | null, value: string | null): void;
@@ -39,6 +39,7 @@ let HSelect = class HSelect extends PhoenixLightLitElement {
39
39
  this.noDeselect = false;
40
40
  this.assistiveTitleId = '';
41
41
  this.noPlaceholderOption = false;
42
+ this.devCachedSelectOptions = false;
42
43
  this.translations = {};
43
44
  this._selectOptionsId = v4();
44
45
  this._searchValue = '';
@@ -68,9 +69,19 @@ let HSelect = class HSelect extends PhoenixLightLitElement {
68
69
  this._getOptions = () => {
69
70
  let $options;
70
71
  if (this.optionsList) {
71
- $options = this.optionsList.map((option) => {
72
- return SelectControlUtils.createHTMLOption(SelectOption.create(option));
73
- });
72
+ if (this.devCachedSelectOptions) {
73
+ $options = [...this.optionsList].map((option) => SelectControlUtils.createHTMLOption(SelectOption.create(option)));
74
+ if (!this.required && !this.multiple) {
75
+ const $domPlaceholder = this.querySelector('h-option[placeholder]');
76
+ if ($domPlaceholder)
77
+ $options.unshift($domPlaceholder);
78
+ }
79
+ }
80
+ else {
81
+ $options = this.optionsList.map((option) => {
82
+ return SelectControlUtils.createHTMLOption(SelectOption.create(option));
83
+ });
84
+ }
74
85
  }
75
86
  else {
76
87
  $options = this.hasSlot(SELECT_SLOT_NAMES.content)
@@ -207,7 +218,7 @@ let HSelect = class HSelect extends PhoenixLightLitElement {
207
218
  if (changedProperties.has('opened')) {
208
219
  if (this.opened) {
209
220
  this.classList.add(SELECT_CSS_CLASSES.selectOpened);
210
- this._focusElementAfterSelectOpened();
221
+ this.devCachedSelectOptions ? this._focusElementAfterSelectOpenedAsync() : this._focusElementAfterSelectOpened();
211
222
  }
212
223
  else {
213
224
  this.classList.remove(SELECT_CSS_CLASSES.selectOpened);
@@ -247,6 +258,20 @@ let HSelect = class HSelect extends PhoenixLightLitElement {
247
258
  const $optionToFocus = $selectedOption || $firstOption;
248
259
  $searchInput ? $searchInput.focus() : $optionToFocus === null || $optionToFocus === void 0 ? void 0 : $optionToFocus.focus();
249
260
  }
261
+ async _focusElementAfterSelectOpenedAsync() {
262
+ await this.updateComplete;
263
+ requestAnimationFrame(() => {
264
+ var _a;
265
+ const $searchInput = (_a = this.$search.value) === null || _a === void 0 ? void 0 : _a.querySelector('[role="search"]');
266
+ const $options = this._$optionsList.value ? [...this._$optionsList.value.querySelectorAll('h-option')] : [];
267
+ const $firstOption = $options.find(($option) => {
268
+ return !$option.hasAttribute('inactive') && !$option.hasAttribute('disabled') && !$option.hasAttribute('hidden');
269
+ });
270
+ const $selectedOption = this.selectedOptions[0];
271
+ const $optionToFocus = $selectedOption || $firstOption;
272
+ $searchInput ? $searchInput.focus() : $optionToFocus === null || $optionToFocus === void 0 ? void 0 : $optionToFocus.focus();
273
+ });
274
+ }
250
275
  connectedCallback() {
251
276
  var _a, _b;
252
277
  super.connectedCallback();
@@ -614,6 +639,10 @@ __decorate([
614
639
  property({ type: Boolean, attribute: 'no-placeholder-option' }),
615
640
  __metadata("design:type", Boolean)
616
641
  ], HSelect.prototype, "noPlaceholderOption", void 0);
642
+ __decorate([
643
+ property({ type: Boolean, attribute: 'dev_cached_select_options' }),
644
+ __metadata("design:type", Boolean)
645
+ ], HSelect.prototype, "devCachedSelectOptions", void 0);
617
646
  __decorate([
618
647
  property({
619
648
  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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,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;"}
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.29-0",
5
+ "version": "1.18.30-0",
6
6
  "description": "phoenix design system",
7
7
  "author": "zefirek",
8
8
  "license": "MIT",
@@ -1,44 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var tslib_es6 = require('../../../../../external/tslib/tslib.es6.js');
6
- require('lit');
7
- var cyclic_focus_trap_strategy = require('./strategies/cyclic_focus_trap_strategy/cyclic_focus_trap_strategy.js');
8
- var focus_trap_strategy_constants = require('./strategies/focus_trap_strategy_constants.js');
9
-
10
- var _a, _FocusTrapController_strategy, _FocusTrapController_createStrategy;
11
- class FocusTrapController {
12
- constructor(host, props) {
13
- _FocusTrapController_strategy.set(this, void 0);
14
- tslib_es6.__classPrivateFieldSet(this, _FocusTrapController_strategy, tslib_es6.__classPrivateFieldGet(FocusTrapController, _a, "m", _FocusTrapController_createStrategy).call(FocusTrapController, props), "f");
15
- host.addController(this);
16
- }
17
- get strategy() {
18
- return tslib_es6.__classPrivateFieldGet(this, _FocusTrapController_strategy, "f");
19
- }
20
- hostConnected() {
21
- tslib_es6.__classPrivateFieldGet(this, _FocusTrapController_strategy, "f").attach();
22
- }
23
- hostDisconnected() {
24
- tslib_es6.__classPrivateFieldGet(this, _FocusTrapController_strategy, "f").detach();
25
- }
26
- activate() {
27
- tslib_es6.__classPrivateFieldGet(this, _FocusTrapController_strategy, "f").activate();
28
- }
29
- deactivate() {
30
- tslib_es6.__classPrivateFieldGet(this, _FocusTrapController_strategy, "f").deactivate();
31
- }
32
- getFocusableElements(container) {
33
- return tslib_es6.__classPrivateFieldGet(this, _FocusTrapController_strategy, "f").getFocusableElements(container);
34
- }
35
- }
36
- _a = FocusTrapController, _FocusTrapController_strategy = new WeakMap(), _FocusTrapController_createStrategy = function _FocusTrapController_createStrategy(props) {
37
- switch (props.mode) {
38
- case focus_trap_strategy_constants.FOCUS_TRAP_STRATEGY_TYPES.cyclic: return new cyclic_focus_trap_strategy.CyclicFocusTrapStrategy(props);
39
- default: return new cyclic_focus_trap_strategy.CyclicFocusTrapStrategy(props);
40
- }
41
- };
42
-
43
- exports.FocusTrapController = FocusTrapController;
44
- //# sourceMappingURL=focus_trap_controller.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,4CAAgD;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,66 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var utilities = require('@dreamcommerce/utilities');
6
-
7
- class BaseFocusTrapStrategy {
8
- constructor(getContainer) {
9
- this.getContainer = getContainer;
10
- this.active = false;
11
- this.noAutofocus = false;
12
- this._handleKeyDown = (ev) => {
13
- if (!this.active || ev.code !== 'Tab')
14
- return;
15
- const container = this.getContainer();
16
- if (!container)
17
- return;
18
- const focusableElements = this.getFocusableElements(container);
19
- if (focusableElements.length === 0)
20
- return;
21
- const $target = ev.target;
22
- if (ev.shiftKey) {
23
- if ($target === focusableElements[0]) {
24
- ev.preventDefault();
25
- focusableElements[focusableElements.length - 1].focus();
26
- }
27
- }
28
- else {
29
- if ($target === focusableElements[focusableElements.length - 1]) {
30
- ev.preventDefault();
31
- focusableElements[0].focus();
32
- }
33
- }
34
- };
35
- }
36
- attach() {
37
- document.addEventListener('keydown', this._handleKeyDown);
38
- }
39
- detach() {
40
- document.removeEventListener('keydown', this._handleKeyDown);
41
- }
42
- activate() {
43
- this.active = true;
44
- }
45
- deactivate() {
46
- this.active = false;
47
- }
48
- getFocusableElements(container) {
49
- return utilities.UiDomUtils.getFocusableElements(container).filter(($el) => this._isElementTrulyFocusable($el));
50
- }
51
- _isElementTrulyFocusable($el) {
52
- const style = window.getComputedStyle($el);
53
- if (style.display === 'none' || style.visibility === 'hidden') {
54
- return false;
55
- }
56
- if ($el.nodeName === 'H-PORTAL')
57
- return true;
58
- const $parent = $el.parentElement;
59
- if (!$parent)
60
- return true;
61
- return this._isElementTrulyFocusable($parent);
62
- }
63
- }
64
-
65
- exports.BaseFocusTrapStrategy = BaseFocusTrapStrategy;
66
- //# sourceMappingURL=base_focus_trap_strategy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,14 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var base_focus_trap_strategy = require('../base_focus_trap_strategy.js');
6
-
7
- class CyclicFocusTrapStrategy extends base_focus_trap_strategy.BaseFocusTrapStrategy {
8
- constructor({ getContainer }) {
9
- super(getContainer);
10
- }
11
- }
12
-
13
- exports.CyclicFocusTrapStrategy = CyclicFocusTrapStrategy;
14
- //# sourceMappingURL=cyclic_focus_trap_strategy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -1,10 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- const FOCUS_TRAP_STRATEGY_TYPES = {
6
- cyclic: 'cyclic'
7
- };
8
-
9
- exports.FOCUS_TRAP_STRATEGY_TYPES = FOCUS_TRAP_STRATEGY_TYPES;
10
- //# sourceMappingURL=focus_trap_strategy_constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -1,13 +0,0 @@
1
- import { ReactiveController, ReactiveControllerHost } from 'lit';
2
- import type { TFocusTrapProps } from './focus_trap_controller_types';
3
- import { IBaseFocusTrapStrategy } from './strategies/base_focus_trap_strategy_types';
4
- export declare class FocusTrapController implements ReactiveController {
5
- #private;
6
- constructor(host: ReactiveControllerHost, props: TFocusTrapProps);
7
- get strategy(): IBaseFocusTrapStrategy;
8
- hostConnected(): void;
9
- hostDisconnected(): void;
10
- activate(): void;
11
- deactivate(): void;
12
- getFocusableElements(container: HTMLElement): HTMLElement[];
13
- }