@shoper/phoenix_design_system 0.19.2 → 0.19.4

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 (32) hide show
  1. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown.js +64 -2
  2. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown.js.map +1 -1
  3. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_toggler.js +0 -1
  4. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_toggler.js.map +1 -1
  5. package/build/cjs/packages/phoenix/src/components/form/checkbox/checkbox.js +1 -1
  6. package/build/cjs/packages/phoenix/src/components/form/checkbox/checkbox.js.map +1 -1
  7. package/build/cjs/packages/phoenix/src/components/form/input/input.js +4 -2
  8. package/build/cjs/packages/phoenix/src/components/form/input/input.js.map +1 -1
  9. package/build/cjs/packages/phoenix/src/components/form/radio/radio.js +1 -1
  10. package/build/cjs/packages/phoenix/src/components/form/radio/radio.js.map +1 -1
  11. package/build/cjs/packages/phoenix/src/components/form/switch/switch.js +1 -1
  12. package/build/cjs/packages/phoenix/src/components/form/switch/switch.js.map +1 -1
  13. package/build/cjs/packages/phoenix/src/components/form/textarea/textarea.js +1 -1
  14. package/build/cjs/packages/phoenix/src/components/form/textarea/textarea.js.map +1 -1
  15. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.d.ts +12 -2
  16. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.js +64 -2
  17. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.js.map +1 -1
  18. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_toggler.js +0 -1
  19. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_toggler.js.map +1 -1
  20. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_types.d.ts +5 -0
  21. package/build/esm/packages/phoenix/src/components/form/checkbox/checkbox.js +1 -1
  22. package/build/esm/packages/phoenix/src/components/form/checkbox/checkbox.js.map +1 -1
  23. package/build/esm/packages/phoenix/src/components/form/input/input.d.ts +1 -1
  24. package/build/esm/packages/phoenix/src/components/form/input/input.js +4 -2
  25. package/build/esm/packages/phoenix/src/components/form/input/input.js.map +1 -1
  26. package/build/esm/packages/phoenix/src/components/form/radio/radio.js +1 -1
  27. package/build/esm/packages/phoenix/src/components/form/radio/radio.js.map +1 -1
  28. package/build/esm/packages/phoenix/src/components/form/switch/switch.js +1 -1
  29. package/build/esm/packages/phoenix/src/components/form/switch/switch.js.map +1 -1
  30. package/build/esm/packages/phoenix/src/components/form/textarea/textarea.js +1 -1
  31. package/build/esm/packages/phoenix/src/components/form/textarea/textarea.js.map +1 -1
  32. package/package.json +1 -1
@@ -3,12 +3,15 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var tslib_es6 = require('../../../../../external/tslib/tslib.es6.js');
6
+ require('lit');
7
+ var decorators = require('lit/decorators');
6
8
  var phoenix_light_lit_element = require('../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
7
9
  var phoenix_custom_element = require('../../core/decorators/phoenix_custom_element.js');
8
10
  var portal_constants = require('../portal/portal_constants.js');
9
11
  var litHtml = require('lit-html');
10
12
  var backdrop_controller = require('../backdrop/controller/backdrop_controller.js');
11
13
  var decorators_js = require('@lit/reactive-element/decorators.js');
14
+ var ref_js = require('lit-html/directives/ref.js');
12
15
  var global_constants = require('../../global_constants.js');
13
16
  var dropdown_constants = require('./dropdown_constants.js');
14
17
  var relative_position_controller_constants = require('../../controllers/relative_position_controller/relative_position_controller_constants.js');
@@ -27,6 +30,10 @@ exports.HDropdown = HDropdown_1 = class HDropdown extends phoenix_light_lit_elem
27
30
  this.transition = 'direction';
28
31
  this.portalTarget = dropdown_constants.DEFAULT_DROPDOWN_PORTAL_NAME;
29
32
  this._backdropController = new backdrop_controller.BackdropController();
33
+ this._firstFocusableElement = undefined;
34
+ this._lastFocusableElement = undefined;
35
+ this._focusSentinelStart = ref_js.createRef();
36
+ this._focusSentinelEnd = ref_js.createRef();
30
37
  this._handleClickOutside = async (target) => {
31
38
  var _a, _b;
32
39
  if (!this.opened)
@@ -52,10 +59,11 @@ exports.HDropdown = HDropdown_1 = class HDropdown extends phoenix_light_lit_elem
52
59
  }, 0);
53
60
  const transitionDuration = parseFloat(getComputedStyle(this.$dropdownContent || this).transitionDuration) * 1000;
54
61
  setTimeout(() => {
55
- var _a;
62
+ var _a, _b;
56
63
  this._dispatchShowDropdownEvent();
57
64
  (_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.classList.remove(`${dropdown_constants.DROPDOWN_CONTENT_SHOW}-${this.transition}-start`, `${dropdown_constants.DROPDOWN_CONTENT_SHOW}-${this.transition}-end`);
58
65
  this._toggleScroll();
66
+ (_b = this._firstFocusableElement) === null || _b === void 0 ? void 0 : _b.focus();
59
67
  resolve();
60
68
  }, transitionDuration);
61
69
  });
@@ -82,8 +90,10 @@ exports.HDropdown = HDropdown_1 = class HDropdown extends phoenix_light_lit_elem
82
90
  }
83
91
  await this.hide();
84
92
  };
85
- this.hide = async () => new Promise((resolve) => {
93
+ this.hide = async (ev) => new Promise((resolve) => {
86
94
  var _a;
95
+ if (ev && ev.detail.name !== this.name)
96
+ return;
87
97
  (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-expanded', 'false');
88
98
  const transitionDuration = parseFloat(getComputedStyle(this.$dropdownContent || this).transitionDuration) * 1000;
89
99
  window.requestAnimationFrame(() => {
@@ -124,6 +134,23 @@ exports.HDropdown = HDropdown_1 = class HDropdown extends phoenix_light_lit_elem
124
134
  return;
125
135
  await this.hide();
126
136
  };
137
+ this._handleFocusWithinDropdown = async (ev) => {
138
+ var _a;
139
+ const hasTabBeenPressed = ev.key.toLowerCase() === 'tab';
140
+ if (hasTabBeenPressed) {
141
+ if (ev.shiftKey) {
142
+ if (document.activeElement === this._firstFocusableElement) {
143
+ (_a = this._lastFocusableElement) === null || _a === void 0 ? void 0 : _a.focus();
144
+ ev.preventDefault();
145
+ }
146
+ }
147
+ else if (document.activeElement === this._lastFocusableElement) {
148
+ ev.preventDefault();
149
+ this._focusOnNextSibling(this);
150
+ await this._hideDropdownsSequentially();
151
+ }
152
+ }
153
+ };
127
154
  this._hoverToggle = async (ev) => {
128
155
  if (window.innerWidth < global_constants.BREAKPOINTS.xs)
129
156
  return;
@@ -148,8 +175,12 @@ exports.HDropdown = HDropdown_1 = class HDropdown extends phoenix_light_lit_elem
148
175
  };
149
176
  }
150
177
  connectedCallback() {
178
+ var _a;
151
179
  super.connectedCallback();
152
180
  HDropdown_1._appendDropdownPortal();
181
+ if (!this._rootDropdown)
182
+ this._rootDropdown =
183
+ ((_a = this.parentElement) === null || _a === void 0 ? void 0 : _a.tagName.toLowerCase()) === 'h-dropdown-content' ? this._findRootDropdown(this.parentElement) : this;
153
184
  if (!this.$dropdownContent)
154
185
  this.$dropdownContent = this.querySelector(dropdown_constants.DROPDOWN_CONTENT_NAME);
155
186
  if (!this.$dropdownToggler)
@@ -176,6 +207,11 @@ exports.HDropdown = HDropdown_1 = class HDropdown extends phoenix_light_lit_elem
176
207
  this._setupListeners();
177
208
  this._setupInitialDropdownProperties();
178
209
  }
210
+ firstUpdated(props) {
211
+ super.firstUpdated(props);
212
+ this._firstFocusableElement = this._focusSentinelStart.value;
213
+ this._lastFocusableElement = this._focusSentinelEnd.value;
214
+ }
179
215
  static _appendDropdownPortal() {
180
216
  const $dropdownPortalTarget = document.querySelector(`[name="${dropdown_constants.DEFAULT_DROPDOWN_PORTAL_NAME}"]`);
181
217
  if (!$dropdownPortalTarget) {
@@ -184,13 +220,21 @@ exports.HDropdown = HDropdown_1 = class HDropdown extends phoenix_light_lit_elem
184
220
  document.body.appendChild($portalTarget);
185
221
  }
186
222
  }
223
+ _findRootDropdown(element) {
224
+ var _a;
225
+ if (((_a = element.parentElement) === null || _a === void 0 ? void 0 : _a.tagName.toLowerCase()) !== dropdown_constants.DROPDOWN_CONTENT_NAME && element.tagName.toLowerCase() === dropdown_constants.DROPDOWN_CONTAINER_NAME)
226
+ return element;
227
+ return this._findRootDropdown(element.parentElement || document.body);
228
+ }
187
229
  _setupListeners() {
188
230
  var _a;
189
231
  this.addEventListener(relative_position_controller_constants.RELATIVE_POSITION_CONTROLLER_EVENTS.disabledPositioning, this._handleDisabledPositioning);
190
232
  this.addEventListener(relative_position_controller_constants.RELATIVE_POSITION_CONTROLLER_EVENTS.enabledPositioning, this._handleEnabledPositioning);
191
233
  (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.addEventListener(dropdown_constants.DROPDOWN_EVENTS.toggle, this.toggle);
234
+ document.addEventListener(dropdown_constants.DROPDOWN_EVENTS.hide, this.hide);
192
235
  window.addEventListener('resize', this._observeScrollToggling);
193
236
  document.addEventListener('keydown', this._closeDropdownOnEscape);
237
+ document.addEventListener('keydown', this._handleFocusWithinDropdown);
194
238
  if (this.toggleOnHover)
195
239
  document.addEventListener('mouseover', this._hoverToggle);
196
240
  }
@@ -210,6 +254,12 @@ exports.HDropdown = HDropdown_1 = class HDropdown extends phoenix_light_lit_elem
210
254
  (_b = this.$dropdownContent) === null || _b === void 0 ? void 0 : _b.classList.add(global_constants.SCROLLABLE_CLASS_NAME);
211
255
  }
212
256
  }
257
+ _focusOnNextSibling(el) {
258
+ el.focus();
259
+ if (el === document.activeElement)
260
+ return;
261
+ this._focusOnNextSibling(el.nextElementSibling);
262
+ }
213
263
  _isHoveredWithinDropdown(element) {
214
264
  var _a;
215
265
  if (element === this)
@@ -239,6 +289,8 @@ exports.HDropdown = HDropdown_1 = class HDropdown extends phoenix_light_lit_elem
239
289
  (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.removeEventListener(dropdown_constants.DROPDOWN_EVENTS.toggle, this.toggle);
240
290
  window.removeEventListener('resize', this._observeScrollToggling);
241
291
  document.removeEventListener('keydown', this._closeDropdownOnEscape);
292
+ document.removeEventListener(dropdown_constants.DROPDOWN_EVENTS.hide, this.hide);
293
+ document.removeEventListener('keydown', this._handleFocusWithinDropdown);
242
294
  if (this.toggleOnHover)
243
295
  document.removeEventListener('mouseover', this._hoverToggle);
244
296
  if (this.opened) {
@@ -251,7 +303,9 @@ exports.HDropdown = HDropdown_1 = class HDropdown extends phoenix_light_lit_elem
251
303
  return litHtml.html `
252
304
  ${this.getSlot('toggler')}
253
305
  <h-portal ?disabled="${!this.opened}" @portal.open="${this._positionDropdownContent}" to="${this.portalTarget}" hidden>
306
+ <div tabindex="0" ${ref_js.ref(this._focusSentinelStart)}></div>
254
307
  ${this.getSlot('content')}
308
+ <div tabindex="0" ${ref_js.ref(this._focusSentinelEnd)}></div>
255
309
  </h-portal>
256
310
  `;
257
311
  }
@@ -280,6 +334,14 @@ tslib_es6.__decorate([
280
334
  decorators_js.property({ type: String }),
281
335
  tslib_es6.__metadata("design:type", Object)
282
336
  ], exports.HDropdown.prototype, "portalTarget", void 0);
337
+ tslib_es6.__decorate([
338
+ decorators.state(),
339
+ tslib_es6.__metadata("design:type", Object)
340
+ ], exports.HDropdown.prototype, "_firstFocusableElement", void 0);
341
+ tslib_es6.__decorate([
342
+ decorators.state(),
343
+ tslib_es6.__metadata("design:type", Object)
344
+ ], exports.HDropdown.prototype, "_lastFocusableElement", void 0);
283
345
  exports.HDropdown = HDropdown_1 = tslib_es6.__decorate([
284
346
  phoenix_custom_element.phoenixCustomElement('h-dropdown')
285
347
  ], exports.HDropdown);
@@ -1 +1 @@
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,uBAAuB,4CAAgD;AACvE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,4CAAgD;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,4CAAgD;AACvE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -22,7 +22,6 @@ exports.HDropdownToggler = class HDropdownToggler extends phoenix_light_lit_elem
22
22
  bubbles: true
23
23
  });
24
24
  this.dispatchEvent(toggleDropdownEvent);
25
- this._toggleElementAriaController.toggleAriaExpandedAttribute();
26
25
  };
27
26
  this.slot = this.hasAttribute('slot') ? this.slot : 'toggler';
28
27
  this.className = `${dropdown_constants.DROPDOWN_TOGGLER_CSS_CLASS} ${this.className}`;
@@ -1 +1 @@
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;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,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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -6,9 +6,9 @@ var tslib_es6 = require('../../../../../../external/tslib/tslib.es6.js');
6
6
  var decorators = require('lit/decorators');
7
7
  var phoenix_light_lit_element = require('../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
8
8
  var phoenix_custom_element = require('../../../core/decorators/phoenix_custom_element.js');
9
- var index = require('../../../../external/classnames/index.js');
10
9
  var control_props_sync_controller_constants = require('../controllers/props_synchronizing/control_props_sync_controller_constants.js');
11
10
  var control_props_sync_provider_controller = require('../controllers/props_synchronizing/control_props_sync_provider_controller.js');
11
+ var index = require('../../../../external/classnames/index.js');
12
12
  var checkbox_constants = require('./checkbox_constants.js');
13
13
 
14
14
  exports.HCheckbox = class HCheckbox extends phoenix_light_lit_element.PhoenixLightLitElement {
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;AACA;AACA;AACA,oBAAoB,0CAA8C;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,oBAAoB,0CAA8C;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -7,9 +7,9 @@ var decorators = require('lit/decorators');
7
7
  var phoenix_light_lit_element = require('../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
8
8
  var phoenix_custom_element = require('../../../core/decorators/phoenix_custom_element.js');
9
9
  var input_constants = require('./input_constants.js');
10
- var index = require('../../../../external/classnames/index.js');
11
10
  var control_props_sync_controller_constants = require('../controllers/props_synchronizing/control_props_sync_controller_constants.js');
12
11
  var control_props_sync_provider_controller = require('../controllers/props_synchronizing/control_props_sync_provider_controller.js');
12
+ var index = require('../../../../external/classnames/index.js');
13
13
 
14
14
  exports.HInput = class HInput extends phoenix_light_lit_element.PhoenixLightLitElement {
15
15
  constructor() {
@@ -23,7 +23,9 @@ exports.HInput = class HInput extends phoenix_light_lit_element.PhoenixLightLitE
23
23
  connectedCallback() {
24
24
  var _a;
25
25
  super.connectedCallback();
26
- this.classList.add(input_constants.INPUT_CONTROL_CSS_CLASSES.input);
26
+ if (this.type !== input_constants.INPUT_CONTROL_TYPES.hidden) {
27
+ this.classList.add(input_constants.INPUT_CONTROL_CSS_CLASSES.input);
28
+ }
27
29
  const cssClasses = index['default']({
28
30
  [input_constants.INPUT_CONTROL_CSS_CLASSES.inputDisabled]: this.disabled,
29
31
  [input_constants.INPUT_CONTROL_CSS_CLASSES.inputError]: this.error
@@ -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,oBAAoB,0CAA8C;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,oBAAoB,0CAA8C;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -6,9 +6,9 @@ var tslib_es6 = require('../../../../../../external/tslib/tslib.es6.js');
6
6
  var decorators = require('lit/decorators');
7
7
  var phoenix_light_lit_element = require('../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
8
8
  var phoenix_custom_element = require('../../../core/decorators/phoenix_custom_element.js');
9
- var index = require('../../../../external/classnames/index.js');
10
9
  var control_props_sync_controller_constants = require('../controllers/props_synchronizing/control_props_sync_controller_constants.js');
11
10
  var control_props_sync_provider_controller = require('../controllers/props_synchronizing/control_props_sync_provider_controller.js');
11
+ var index = require('../../../../external/classnames/index.js');
12
12
  var checkbox_constants = require('../checkbox/checkbox_constants.js');
13
13
  var radio_constants = require('./radio_constants.js');
14
14
 
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;AACA;AACA;AACA,oBAAoB,0CAA8C;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,oBAAoB,0CAA8C;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -6,9 +6,9 @@ var tslib_es6 = require('../../../../../../external/tslib/tslib.es6.js');
6
6
  var decorators = require('lit/decorators');
7
7
  var phoenix_light_lit_element = require('../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
8
8
  var phoenix_custom_element = require('../../../core/decorators/phoenix_custom_element.js');
9
- var index = require('../../../../external/classnames/index.js');
10
9
  var control_props_sync_controller_constants = require('../controllers/props_synchronizing/control_props_sync_controller_constants.js');
11
10
  var control_props_sync_provider_controller = require('../controllers/props_synchronizing/control_props_sync_provider_controller.js');
11
+ var index = require('../../../../external/classnames/index.js');
12
12
  var checkbox_constants = require('../checkbox/checkbox_constants.js');
13
13
  var switch_constants = require('./switch_constants.js');
14
14
 
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;AACA;AACA;AACA,oBAAoB,0CAA8C;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,oBAAoB,0CAA8C;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -6,9 +6,9 @@ var tslib_es6 = require('../../../../../../external/tslib/tslib.es6.js');
6
6
  var decorators = require('lit/decorators');
7
7
  var phoenix_light_lit_element = require('../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
8
8
  var phoenix_custom_element = require('../../../core/decorators/phoenix_custom_element.js');
9
- var index = require('../../../../external/classnames/index.js');
10
9
  var control_props_sync_controller_constants = require('../controllers/props_synchronizing/control_props_sync_controller_constants.js');
11
10
  var control_props_sync_provider_controller = require('../controllers/props_synchronizing/control_props_sync_provider_controller.js');
11
+ var index = require('../../../../external/classnames/index.js');
12
12
  var textarea_constants = require('./textarea_constants.js');
13
13
 
14
14
  exports.HTextarea = class HTextarea extends phoenix_light_lit_element.PhoenixLightLitElement {
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;AACA;AACA;AACA,oBAAoB,0CAA8C;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,oBAAoB,0CAA8C;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,8 +1,9 @@
1
+ import { IDropdown } from "./dropdown_types";
1
2
  import { TemplateResult } from 'lit-html';
2
3
  import { HDropdownContent } from './dropdown_content';
3
4
  import { HDropdownToggler } from './dropdown_toggler';
4
- import { IDropdown } from "./dropdown_types";
5
5
  import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element/phoenix_light_lit_element";
6
+ import { PropertyValues } from 'lit';
6
7
  export declare class HDropdown extends PhoenixLightLitElement implements IDropdown {
7
8
  opened: boolean;
8
9
  direction: "bottom-center";
@@ -18,21 +19,30 @@ export declare class HDropdown extends PhoenixLightLitElement implements IDropdo
18
19
  private _dropdownContentChildrenHeight;
19
20
  private _hasScrollableClassInitially;
20
21
  private _backdropController;
22
+ _firstFocusableElement: HTMLElement | undefined;
23
+ _lastFocusableElement: HTMLElement | undefined;
24
+ private _focusSentinelStart;
25
+ private _focusSentinelEnd;
26
+ private _rootDropdown?;
21
27
  connectedCallback(): void;
28
+ firstUpdated(props: PropertyValues): void;
22
29
  private static _appendDropdownPortal;
30
+ private _findRootDropdown;
23
31
  private _setupListeners;
24
32
  private _handleClickOutside;
25
33
  toggle: () => Promise<void>;
26
34
  show: () => Promise<void>;
27
35
  private _dispatchShowDropdownEvent;
28
36
  private _hideDropdownsSequentially;
29
- hide: () => Promise<void>;
37
+ hide: (ev?: Event) => Promise<void>;
30
38
  private _dispatchHideDropdownEvent;
31
39
  private _handleDisabledPositioning;
32
40
  private _handleEnabledPositioning;
33
41
  private _observeScrollToggling;
34
42
  private _toggleScroll;
35
43
  private _closeDropdownOnEscape;
44
+ private _handleFocusWithinDropdown;
45
+ private _focusOnNextSibling;
36
46
  private _hoverToggle;
37
47
  private _isHoveredWithinDropdown;
38
48
  private _setupInitialDropdownProperties;
@@ -1,10 +1,13 @@
1
1
  import { __decorate, __metadata } from '../../../../../external/tslib/tslib.es6.js';
2
+ import 'lit';
3
+ import { state } from 'lit/decorators';
2
4
  import { PhoenixLightLitElement } from '../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
3
5
  import { phoenixCustomElement } from '../../core/decorators/phoenix_custom_element.js';
4
6
  import { PORTAL_TARGET_COMPONENT_NAME, PORTAL_TARGET_NAME_PROP } from '../portal/portal_constants.js';
5
7
  import { html } from 'lit-html';
6
8
  import { BackdropController } from '../backdrop/controller/backdrop_controller.js';
7
9
  import { property } from '@lit/reactive-element/decorators.js';
10
+ import { createRef, ref } from 'lit-html/directives/ref.js';
8
11
  import { BREAKPOINTS, SCROLLABLE_CLASS_NAME } from '../../global_constants.js';
9
12
  import { DEFAULT_DROPDOWN_PORTAL_NAME, DROPDOWN_CONTENT_VISIBLE_CLASS, DROPDOWN_CONTENT_SHOW, DROPDOWN_EVENTS, DROPDOWN_CONTAINER_NAME, DROPDOWN_CONTENT_HIDE, DROPDOWN_CONTENT_NAME, DROPDOWN_TOGGLER_NAME } from './dropdown_constants.js';
10
13
  import { DIRECTIONS, RELATIVE_POSITION_CONTROLLER_EVENTS, DEFAULT_THROTTLE_WAIT_TIME } from '../../controllers/relative_position_controller/relative_position_controller_constants.js';
@@ -23,6 +26,10 @@ let HDropdown = HDropdown_1 = class HDropdown extends PhoenixLightLitElement {
23
26
  this.transition = 'direction';
24
27
  this.portalTarget = DEFAULT_DROPDOWN_PORTAL_NAME;
25
28
  this._backdropController = new BackdropController();
29
+ this._firstFocusableElement = undefined;
30
+ this._lastFocusableElement = undefined;
31
+ this._focusSentinelStart = createRef();
32
+ this._focusSentinelEnd = createRef();
26
33
  this._handleClickOutside = async (target) => {
27
34
  var _a, _b;
28
35
  if (!this.opened)
@@ -48,10 +55,11 @@ let HDropdown = HDropdown_1 = class HDropdown extends PhoenixLightLitElement {
48
55
  }, 0);
49
56
  const transitionDuration = parseFloat(getComputedStyle(this.$dropdownContent || this).transitionDuration) * 1000;
50
57
  setTimeout(() => {
51
- var _a;
58
+ var _a, _b;
52
59
  this._dispatchShowDropdownEvent();
53
60
  (_a = this.$dropdownContent) === null || _a === void 0 ? void 0 : _a.classList.remove(`${DROPDOWN_CONTENT_SHOW}-${this.transition}-start`, `${DROPDOWN_CONTENT_SHOW}-${this.transition}-end`);
54
61
  this._toggleScroll();
62
+ (_b = this._firstFocusableElement) === null || _b === void 0 ? void 0 : _b.focus();
55
63
  resolve();
56
64
  }, transitionDuration);
57
65
  });
@@ -78,8 +86,10 @@ let HDropdown = HDropdown_1 = class HDropdown extends PhoenixLightLitElement {
78
86
  }
79
87
  await this.hide();
80
88
  };
81
- this.hide = async () => new Promise((resolve) => {
89
+ this.hide = async (ev) => new Promise((resolve) => {
82
90
  var _a;
91
+ if (ev && ev.detail.name !== this.name)
92
+ return;
83
93
  (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-expanded', 'false');
84
94
  const transitionDuration = parseFloat(getComputedStyle(this.$dropdownContent || this).transitionDuration) * 1000;
85
95
  window.requestAnimationFrame(() => {
@@ -120,6 +130,23 @@ let HDropdown = HDropdown_1 = class HDropdown extends PhoenixLightLitElement {
120
130
  return;
121
131
  await this.hide();
122
132
  };
133
+ this._handleFocusWithinDropdown = async (ev) => {
134
+ var _a;
135
+ const hasTabBeenPressed = ev.key.toLowerCase() === 'tab';
136
+ if (hasTabBeenPressed) {
137
+ if (ev.shiftKey) {
138
+ if (document.activeElement === this._firstFocusableElement) {
139
+ (_a = this._lastFocusableElement) === null || _a === void 0 ? void 0 : _a.focus();
140
+ ev.preventDefault();
141
+ }
142
+ }
143
+ else if (document.activeElement === this._lastFocusableElement) {
144
+ ev.preventDefault();
145
+ this._focusOnNextSibling(this);
146
+ await this._hideDropdownsSequentially();
147
+ }
148
+ }
149
+ };
123
150
  this._hoverToggle = async (ev) => {
124
151
  if (window.innerWidth < BREAKPOINTS.xs)
125
152
  return;
@@ -144,8 +171,12 @@ let HDropdown = HDropdown_1 = class HDropdown extends PhoenixLightLitElement {
144
171
  };
145
172
  }
146
173
  connectedCallback() {
174
+ var _a;
147
175
  super.connectedCallback();
148
176
  HDropdown_1._appendDropdownPortal();
177
+ if (!this._rootDropdown)
178
+ this._rootDropdown =
179
+ ((_a = this.parentElement) === null || _a === void 0 ? void 0 : _a.tagName.toLowerCase()) === 'h-dropdown-content' ? this._findRootDropdown(this.parentElement) : this;
149
180
  if (!this.$dropdownContent)
150
181
  this.$dropdownContent = this.querySelector(DROPDOWN_CONTENT_NAME);
151
182
  if (!this.$dropdownToggler)
@@ -172,6 +203,11 @@ let HDropdown = HDropdown_1 = class HDropdown extends PhoenixLightLitElement {
172
203
  this._setupListeners();
173
204
  this._setupInitialDropdownProperties();
174
205
  }
206
+ firstUpdated(props) {
207
+ super.firstUpdated(props);
208
+ this._firstFocusableElement = this._focusSentinelStart.value;
209
+ this._lastFocusableElement = this._focusSentinelEnd.value;
210
+ }
175
211
  static _appendDropdownPortal() {
176
212
  const $dropdownPortalTarget = document.querySelector(`[name="${DEFAULT_DROPDOWN_PORTAL_NAME}"]`);
177
213
  if (!$dropdownPortalTarget) {
@@ -180,13 +216,21 @@ let HDropdown = HDropdown_1 = class HDropdown extends PhoenixLightLitElement {
180
216
  document.body.appendChild($portalTarget);
181
217
  }
182
218
  }
219
+ _findRootDropdown(element) {
220
+ var _a;
221
+ if (((_a = element.parentElement) === null || _a === void 0 ? void 0 : _a.tagName.toLowerCase()) !== DROPDOWN_CONTENT_NAME && element.tagName.toLowerCase() === DROPDOWN_CONTAINER_NAME)
222
+ return element;
223
+ return this._findRootDropdown(element.parentElement || document.body);
224
+ }
183
225
  _setupListeners() {
184
226
  var _a;
185
227
  this.addEventListener(RELATIVE_POSITION_CONTROLLER_EVENTS.disabledPositioning, this._handleDisabledPositioning);
186
228
  this.addEventListener(RELATIVE_POSITION_CONTROLLER_EVENTS.enabledPositioning, this._handleEnabledPositioning);
187
229
  (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.addEventListener(DROPDOWN_EVENTS.toggle, this.toggle);
230
+ document.addEventListener(DROPDOWN_EVENTS.hide, this.hide);
188
231
  window.addEventListener('resize', this._observeScrollToggling);
189
232
  document.addEventListener('keydown', this._closeDropdownOnEscape);
233
+ document.addEventListener('keydown', this._handleFocusWithinDropdown);
190
234
  if (this.toggleOnHover)
191
235
  document.addEventListener('mouseover', this._hoverToggle);
192
236
  }
@@ -206,6 +250,12 @@ let HDropdown = HDropdown_1 = class HDropdown extends PhoenixLightLitElement {
206
250
  (_b = this.$dropdownContent) === null || _b === void 0 ? void 0 : _b.classList.add(SCROLLABLE_CLASS_NAME);
207
251
  }
208
252
  }
253
+ _focusOnNextSibling(el) {
254
+ el.focus();
255
+ if (el === document.activeElement)
256
+ return;
257
+ this._focusOnNextSibling(el.nextElementSibling);
258
+ }
209
259
  _isHoveredWithinDropdown(element) {
210
260
  var _a;
211
261
  if (element === this)
@@ -235,6 +285,8 @@ let HDropdown = HDropdown_1 = class HDropdown extends PhoenixLightLitElement {
235
285
  (_a = this.$dropdownToggler) === null || _a === void 0 ? void 0 : _a.removeEventListener(DROPDOWN_EVENTS.toggle, this.toggle);
236
286
  window.removeEventListener('resize', this._observeScrollToggling);
237
287
  document.removeEventListener('keydown', this._closeDropdownOnEscape);
288
+ document.removeEventListener(DROPDOWN_EVENTS.hide, this.hide);
289
+ document.removeEventListener('keydown', this._handleFocusWithinDropdown);
238
290
  if (this.toggleOnHover)
239
291
  document.removeEventListener('mouseover', this._hoverToggle);
240
292
  if (this.opened) {
@@ -247,7 +299,9 @@ let HDropdown = HDropdown_1 = class HDropdown extends PhoenixLightLitElement {
247
299
  return html `
248
300
  ${this.getSlot('toggler')}
249
301
  <h-portal ?disabled="${!this.opened}" @portal.open="${this._positionDropdownContent}" to="${this.portalTarget}" hidden>
302
+ <div tabindex="0" ${ref(this._focusSentinelStart)}></div>
250
303
  ${this.getSlot('content')}
304
+ <div tabindex="0" ${ref(this._focusSentinelEnd)}></div>
251
305
  </h-portal>
252
306
  `;
253
307
  }
@@ -276,6 +330,14 @@ __decorate([
276
330
  property({ type: String }),
277
331
  __metadata("design:type", Object)
278
332
  ], HDropdown.prototype, "portalTarget", void 0);
333
+ __decorate([
334
+ state(),
335
+ __metadata("design:type", Object)
336
+ ], HDropdown.prototype, "_firstFocusableElement", void 0);
337
+ __decorate([
338
+ state(),
339
+ __metadata("design:type", Object)
340
+ ], HDropdown.prototype, "_lastFocusableElement", void 0);
279
341
  HDropdown = HDropdown_1 = __decorate([
280
342
  phoenixCustomElement('h-dropdown')
281
343
  ], HDropdown);
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,4CAAgD;AACvE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,4CAAgD;AACvE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -18,7 +18,6 @@ let HDropdownToggler = class HDropdownToggler extends PhoenixLightLitElement {
18
18
  bubbles: true
19
19
  });
20
20
  this.dispatchEvent(toggleDropdownEvent);
21
- this._toggleElementAriaController.toggleAriaExpandedAttribute();
22
21
  };
23
22
  this.slot = this.hasAttribute('slot') ? this.slot : 'toggler';
24
23
  this.className = `${DROPDOWN_TOGGLER_CSS_CLASS} ${this.className}`;
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,4CAAgD;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -8,3 +8,8 @@ export interface IDropdown {
8
8
  hide(): void;
9
9
  toggle(): void;
10
10
  }
11
+ export declare type TDropdownHideEvent = Event & {
12
+ detail: {
13
+ name: string;
14
+ };
15
+ };
@@ -2,9 +2,9 @@ import { __decorate, __metadata } from '../../../../../../external/tslib/tslib.e
2
2
  import { property } from 'lit/decorators';
3
3
  import { PhoenixLightLitElement } from '../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
4
4
  import { phoenixCustomElement } from '../../../core/decorators/phoenix_custom_element.js';
5
- import classnames from '../../../../external/classnames/index.js';
6
5
  import { BASE_FORM_CONTROL_PROPS } from '../controllers/props_synchronizing/control_props_sync_controller_constants.js';
7
6
  import { ControlPropsSyncProviderController } from '../controllers/props_synchronizing/control_props_sync_provider_controller.js';
7
+ import classnames from '../../../../external/classnames/index.js';
8
8
  import { CHECKBOX_PROPS_TO_SYNC, CHECKBOX_CONTROL_CSS_CLASSES } from './checkbox_constants.js';
9
9
 
10
10
  let HCheckbox = class HCheckbox extends PhoenixLightLitElement {
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA,uBAAuB,0CAA8C;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,uBAAuB,0CAA8C;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,6 +1,6 @@
1
1
  import { PhoenixLightLitElement } from "../../../core/phoenix_light_lit_element/phoenix_light_lit_element";
2
- import type { TInputSizesType } from "./input_types";
3
2
  import type { TInputControlType } from "./input_types";
3
+ import type { TInputSizesType } from "./input_types";
4
4
  export declare class HInput extends PhoenixLightLitElement {
5
5
  controlId: string;
6
6
  controlName: string;
@@ -3,9 +3,9 @@ import { property } from 'lit/decorators';
3
3
  import { PhoenixLightLitElement } from '../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
4
4
  import { phoenixCustomElement } from '../../../core/decorators/phoenix_custom_element.js';
5
5
  import { INPUT_CONTROL_TYPES, INPUT_PROPS_TO_SYNC, INPUT_CONTROL_CSS_CLASSES } from './input_constants.js';
6
- import classnames from '../../../../external/classnames/index.js';
7
6
  import { BASE_FORM_CONTROL_PROPS } from '../controllers/props_synchronizing/control_props_sync_controller_constants.js';
8
7
  import { ControlPropsSyncProviderController } from '../controllers/props_synchronizing/control_props_sync_provider_controller.js';
8
+ import classnames from '../../../../external/classnames/index.js';
9
9
 
10
10
  let HInput = class HInput extends PhoenixLightLitElement {
11
11
  constructor() {
@@ -19,7 +19,9 @@ let HInput = class HInput extends PhoenixLightLitElement {
19
19
  connectedCallback() {
20
20
  var _a;
21
21
  super.connectedCallback();
22
- this.classList.add(INPUT_CONTROL_CSS_CLASSES.input);
22
+ if (this.type !== INPUT_CONTROL_TYPES.hidden) {
23
+ this.classList.add(INPUT_CONTROL_CSS_CLASSES.input);
24
+ }
23
25
  const cssClasses = classnames({
24
26
  [INPUT_CONTROL_CSS_CLASSES.inputDisabled]: this.disabled,
25
27
  [INPUT_CONTROL_CSS_CLASSES.inputError]: this.error
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA;AACA,uBAAuB,0CAA8C;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,uBAAuB,0CAA8C;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -2,9 +2,9 @@ import { __decorate, __metadata } from '../../../../../../external/tslib/tslib.e
2
2
  import { property } from 'lit/decorators';
3
3
  import { PhoenixLightLitElement } from '../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
4
4
  import { phoenixCustomElement } from '../../../core/decorators/phoenix_custom_element.js';
5
- import classnames from '../../../../external/classnames/index.js';
6
5
  import { BASE_FORM_CONTROL_PROPS } from '../controllers/props_synchronizing/control_props_sync_controller_constants.js';
7
6
  import { ControlPropsSyncProviderController } from '../controllers/props_synchronizing/control_props_sync_provider_controller.js';
7
+ import classnames from '../../../../external/classnames/index.js';
8
8
  import { CHECKBOX_PROPS_TO_SYNC } from '../checkbox/checkbox_constants.js';
9
9
  import { RADIO_CONTROL_CSS_CLASSES } from './radio_constants.js';
10
10
 
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA,uBAAuB,0CAA8C;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,uBAAuB,0CAA8C;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -2,9 +2,9 @@ import { __decorate, __metadata } from '../../../../../../external/tslib/tslib.e
2
2
  import { property } from 'lit/decorators';
3
3
  import { PhoenixLightLitElement } from '../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
4
4
  import { phoenixCustomElement } from '../../../core/decorators/phoenix_custom_element.js';
5
- import classnames from '../../../../external/classnames/index.js';
6
5
  import { BASE_FORM_CONTROL_PROPS } from '../controllers/props_synchronizing/control_props_sync_controller_constants.js';
7
6
  import { ControlPropsSyncProviderController } from '../controllers/props_synchronizing/control_props_sync_provider_controller.js';
7
+ import classnames from '../../../../external/classnames/index.js';
8
8
  import { CHECKBOX_PROPS_TO_SYNC } from '../checkbox/checkbox_constants.js';
9
9
  import { SWITCH_CONTROL_CSS_CLASSES } from './switch_constants.js';
10
10
 
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA,uBAAuB,0CAA8C;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,uBAAuB,0CAA8C;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -2,9 +2,9 @@ import { __decorate, __metadata } from '../../../../../../external/tslib/tslib.e
2
2
  import { property } from 'lit/decorators';
3
3
  import { PhoenixLightLitElement } from '../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
4
4
  import { phoenixCustomElement } from '../../../core/decorators/phoenix_custom_element.js';
5
- import classnames from '../../../../external/classnames/index.js';
6
5
  import { BASE_FORM_CONTROL_PROPS } from '../controllers/props_synchronizing/control_props_sync_controller_constants.js';
7
6
  import { ControlPropsSyncProviderController } from '../controllers/props_synchronizing/control_props_sync_provider_controller.js';
7
+ import classnames from '../../../../external/classnames/index.js';
8
8
  import { TEXTAREA_PROPS_TO_SYNC, TEXTAREA_CONTROL_CSS_CLASSES } from './textarea_constants.js';
9
9
 
10
10
  let HTextarea = class HTextarea extends PhoenixLightLitElement {
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA,uBAAuB,0CAA8C;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,uBAAuB,0CAA8C;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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": "0.19.2",
5
+ "version": "0.19.4",
6
6
  "description": "phoenix design system",
7
7
  "author": "zefirek",
8
8
  "license": "MIT",