@shoper/phoenix_design_system 1.1.0-9 → 1.1.1

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 (110) hide show
  1. package/build/cjs/{external → packages/phoenix/external}/classnames/index.js +16 -10
  2. package/build/{esm → cjs/packages/phoenix}/external/classnames/index.js.map +1 -1
  3. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown.js +7 -1
  4. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown.js.map +1 -1
  5. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_content.js +6 -4
  6. package/build/cjs/packages/phoenix/src/components/dropdown/dropdown_content.js.map +1 -1
  7. package/build/cjs/packages/phoenix/src/components/form/checkbox/checkbox.js +1 -1
  8. package/build/cjs/packages/phoenix/src/components/form/checkbox/checkbox.js.map +1 -1
  9. package/build/cjs/packages/phoenix/src/components/form/checkbox/checkbox_control.js +1 -1
  10. package/build/cjs/packages/phoenix/src/components/form/checkbox/checkbox_control.js.map +1 -1
  11. package/build/cjs/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.js +1 -1
  12. package/build/cjs/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.js.map +1 -1
  13. package/build/cjs/packages/phoenix/src/components/form/input/input.js +1 -1
  14. package/build/cjs/packages/phoenix/src/components/form/input/input.js.map +1 -1
  15. package/build/cjs/packages/phoenix/src/components/form/radio/radio.js +1 -1
  16. package/build/cjs/packages/phoenix/src/components/form/radio/radio.js.map +1 -1
  17. package/build/cjs/packages/phoenix/src/components/form/select/components/option/select_option.js +20 -5
  18. package/build/cjs/packages/phoenix/src/components/form/select/components/option/select_option.js.map +1 -1
  19. package/build/cjs/packages/phoenix/src/components/form/select/components/option/select_option_content.js +0 -1
  20. package/build/cjs/packages/phoenix/src/components/form/select/components/option/select_option_content.js.map +1 -1
  21. package/build/cjs/packages/phoenix/src/components/form/select/components/search/select_search.js +1 -0
  22. package/build/cjs/packages/phoenix/src/components/form/select/components/search/select_search.js.map +1 -1
  23. package/build/cjs/packages/phoenix/src/components/form/select/components/select_close_btn.js +37 -0
  24. package/build/cjs/packages/phoenix/src/components/form/select/components/select_close_btn.js.map +1 -0
  25. package/build/cjs/packages/phoenix/src/components/form/select/components/select_components_constatns.js +2 -0
  26. package/build/cjs/packages/phoenix/src/components/form/select/components/select_components_constatns.js.map +1 -1
  27. package/build/cjs/packages/phoenix/src/components/form/select/components/toggler/select_toggler.js +23 -8
  28. package/build/cjs/packages/phoenix/src/components/form/select/components/toggler/select_toggler.js.map +1 -1
  29. package/build/cjs/packages/phoenix/src/components/form/select/components/toggler/select_toggler_constants.js +3 -1
  30. package/build/cjs/packages/phoenix/src/components/form/select/components/toggler/select_toggler_constants.js.map +1 -1
  31. package/build/cjs/packages/phoenix/src/components/form/select/controllers/base_select_controller.js +2 -1
  32. package/build/cjs/packages/phoenix/src/components/form/select/controllers/base_select_controller.js.map +1 -1
  33. package/build/cjs/packages/phoenix/src/components/form/select/controllers/multi_select_controller.js +2 -0
  34. package/build/cjs/packages/phoenix/src/components/form/select/controllers/multi_select_controller.js.map +1 -1
  35. package/build/cjs/packages/phoenix/src/components/form/select/model/select_option_mapper.js +2 -1
  36. package/build/cjs/packages/phoenix/src/components/form/select/model/select_option_mapper.js.map +1 -1
  37. package/build/cjs/packages/phoenix/src/components/form/select/select.js +95 -31
  38. package/build/cjs/packages/phoenix/src/components/form/select/select.js.map +1 -1
  39. package/build/cjs/packages/phoenix/src/components/form/select/select_constants.js +7 -1
  40. package/build/cjs/packages/phoenix/src/components/form/select/select_constants.js.map +1 -1
  41. package/build/cjs/packages/phoenix/src/components/form/switch/switch.js +1 -1
  42. package/build/cjs/packages/phoenix/src/components/form/switch/switch.js.map +1 -1
  43. package/build/cjs/packages/phoenix/src/components/form/textarea/textarea.js +1 -1
  44. package/build/cjs/packages/phoenix/src/components/form/textarea/textarea.js.map +1 -1
  45. package/build/cjs/packages/phoenix/src/components/icon/icon.js +1 -1
  46. package/build/cjs/packages/phoenix/src/components/icon/icon.js.map +1 -1
  47. package/build/cjs/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller_constants.js +1 -1
  48. package/build/cjs/packages/phoenix/src/directives/observable_directive.js +1 -1
  49. package/build/cjs/packages/phoenix/src/directives/observable_directive.js.map +1 -1
  50. package/build/cjs/packages/phoenix/src/index.js +7 -7
  51. package/build/esm/{external → packages/phoenix/external}/classnames/index.js +16 -10
  52. package/build/{cjs → esm/packages/phoenix}/external/classnames/index.js.map +1 -1
  53. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.d.ts +1 -0
  54. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.js +7 -1
  55. package/build/esm/packages/phoenix/src/components/dropdown/dropdown.js.map +1 -1
  56. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_content.d.ts +1 -1
  57. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_content.js +6 -4
  58. package/build/esm/packages/phoenix/src/components/dropdown/dropdown_content.js.map +1 -1
  59. package/build/esm/packages/phoenix/src/components/form/checkbox/checkbox.js +1 -1
  60. package/build/esm/packages/phoenix/src/components/form/checkbox/checkbox.js.map +1 -1
  61. package/build/esm/packages/phoenix/src/components/form/checkbox/checkbox_control.js +1 -1
  62. package/build/esm/packages/phoenix/src/components/form/checkbox/checkbox_control.js.map +1 -1
  63. package/build/esm/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.js +1 -1
  64. package/build/esm/packages/phoenix/src/components/form/color_swatches_control/color_swatches_control.js.map +1 -1
  65. package/build/esm/packages/phoenix/src/components/form/input/input.js +1 -1
  66. package/build/esm/packages/phoenix/src/components/form/input/input.js.map +1 -1
  67. package/build/esm/packages/phoenix/src/components/form/radio/radio.js +1 -1
  68. package/build/esm/packages/phoenix/src/components/form/radio/radio.js.map +1 -1
  69. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option.d.ts +4 -2
  70. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option.js +20 -5
  71. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option.js.map +1 -1
  72. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option_content.js +0 -1
  73. package/build/esm/packages/phoenix/src/components/form/select/components/option/select_option_content.js.map +1 -1
  74. package/build/esm/packages/phoenix/src/components/form/select/components/search/select_search.js +1 -0
  75. package/build/esm/packages/phoenix/src/components/form/select/components/search/select_search.js.map +1 -1
  76. package/build/esm/packages/phoenix/src/components/form/select/components/select_close_btn.d.ts +1 -1
  77. package/build/esm/packages/phoenix/src/components/form/select/components/select_close_btn.js +34 -28
  78. package/build/esm/packages/phoenix/src/components/form/select/components/select_close_btn.js.map +1 -1
  79. package/build/esm/packages/phoenix/src/components/form/select/components/select_components_constatns.js +2 -1
  80. package/build/esm/packages/phoenix/src/components/form/select/components/select_components_constatns.js.map +1 -1
  81. package/build/esm/packages/phoenix/src/components/form/select/components/toggler/select_toggler.d.ts +3 -0
  82. package/build/esm/packages/phoenix/src/components/form/select/components/toggler/select_toggler.js +23 -8
  83. package/build/esm/packages/phoenix/src/components/form/select/components/toggler/select_toggler.js.map +1 -1
  84. package/build/esm/packages/phoenix/src/components/form/select/components/toggler/select_toggler_constants.d.ts +2 -0
  85. package/build/esm/packages/phoenix/src/components/form/select/components/toggler/select_toggler_constants.js +3 -1
  86. package/build/esm/packages/phoenix/src/components/form/select/components/toggler/select_toggler_constants.js.map +1 -1
  87. package/build/esm/packages/phoenix/src/components/form/select/controllers/base_select_controller.js +2 -1
  88. package/build/esm/packages/phoenix/src/components/form/select/controllers/base_select_controller.js.map +1 -1
  89. package/build/esm/packages/phoenix/src/components/form/select/controllers/multi_select_controller.js +2 -0
  90. package/build/esm/packages/phoenix/src/components/form/select/controllers/multi_select_controller.js.map +1 -1
  91. package/build/esm/packages/phoenix/src/components/form/select/model/select_option_mapper.js +2 -1
  92. package/build/esm/packages/phoenix/src/components/form/select/model/select_option_mapper.js.map +1 -1
  93. package/build/esm/packages/phoenix/src/components/form/select/select.d.ts +9 -0
  94. package/build/esm/packages/phoenix/src/components/form/select/select.js +96 -32
  95. package/build/esm/packages/phoenix/src/components/form/select/select.js.map +1 -1
  96. package/build/esm/packages/phoenix/src/components/form/select/select_constants.d.ts +5 -0
  97. package/build/esm/packages/phoenix/src/components/form/select/select_constants.js +7 -2
  98. package/build/esm/packages/phoenix/src/components/form/select/select_constants.js.map +1 -1
  99. package/build/esm/packages/phoenix/src/components/form/switch/switch.js +1 -1
  100. package/build/esm/packages/phoenix/src/components/form/switch/switch.js.map +1 -1
  101. package/build/esm/packages/phoenix/src/components/form/textarea/textarea.js +1 -1
  102. package/build/esm/packages/phoenix/src/components/form/textarea/textarea.js.map +1 -1
  103. package/build/esm/packages/phoenix/src/components/icon/icon.js +1 -1
  104. package/build/esm/packages/phoenix/src/components/icon/icon.js.map +1 -1
  105. package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller_constants.d.ts +1 -1
  106. package/build/esm/packages/phoenix/src/controllers/relative_position_controller/relative_position_controller_constants.js +1 -1
  107. package/build/esm/packages/phoenix/src/directives/observable_directive.js +1 -1
  108. package/build/esm/packages/phoenix/src/directives/observable_directive.js.map +1 -1
  109. package/build/esm/packages/phoenix/src/index.js +1 -1
  110. package/package.json +2 -2
@@ -9,24 +9,27 @@ var phoenix_light_lit_element = require('../../../core/phoenix_light_lit_element
9
9
  var phoenix_custom_element = require('../../../core/decorators/phoenix_custom_element.js');
10
10
  var decorators_js = require('@lit/reactive-element/decorators.js');
11
11
  var select_components_constatns = require('./components/select_components_constatns.js');
12
+ var icon = require('../../icon/icon.js');
12
13
  var select_constants = require('./select_constants.js');
13
14
  var observer = require('../../../core/classes/observer/observer.js');
14
15
  var observable_directive = require('../../../directives/observable_directive.js');
15
16
  var context_provider_controller = require('../../../core/context/context_provider_controller.js');
16
17
  var ref_js = require('lit-html/directives/ref.js');
18
+ var debounce = require('../../../../../../external/lodash/debounce.js');
17
19
  var multi_select_controller = require('./controllers/multi_select_controller.js');
18
20
  var select_controller = require('./controllers/select_controller.js');
19
21
  var select_search = require('./components/search/select_search.js');
20
22
  var list_box_keyboard_controller = require('../../../controllers/list_box_controller/list_box_keyboard_controller.js');
21
- var icon = require('../../icon/icon.js');
22
23
  var select_option_mapper = require('./model/select_option_mapper.js');
23
24
  var select_utils = require('./select_utils.js');
25
+ var select_close_btn = require('./components/select_close_btn.js');
24
26
 
25
27
  exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLitElement {
26
28
  constructor() {
27
29
  super();
28
30
  this.multiselect = false;
29
31
  this.opened = false;
32
+ this.offset = 2;
30
33
  this._searchValue = '';
31
34
  this._$options = {};
32
35
  this._$dropdown = ref_js.createRef();
@@ -34,6 +37,10 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
34
37
  this._$optionsList = ref_js.createRef();
35
38
  this._$dropdownContent = ref_js.createRef();
36
39
  this._selectContext = new context_provider_controller.ContextProviderController(this);
40
+ this._setDropdownContentWidth = () => {
41
+ if (this._$dropdownContent.value)
42
+ this._$dropdownContent.value.style.width = `${this.getBoundingClientRect().width}px`;
43
+ };
37
44
  this._handleOptionDeselect = (event) => {
38
45
  const selectedOption = this._selectController.getSelectOption(event.detail);
39
46
  if (!selectedOption)
@@ -66,6 +73,8 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
66
73
  };
67
74
  this._closeSelect = () => {
68
75
  var _a;
76
+ if (!this.opened)
77
+ return;
69
78
  (_a = this._$dropdown.value) === null || _a === void 0 ? void 0 : _a.hide();
70
79
  this._searchValue = '';
71
80
  this.opened = false;
@@ -73,19 +82,35 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
73
82
  this._clearOptions = () => {
74
83
  this._selectController.deselectOptions();
75
84
  };
85
+ this._handleResize = debounce['default'](() => {
86
+ this._closeSelect();
87
+ this._setDropdownContentWidth();
88
+ }, select_constants.SELECT_RESIZE_DEBOUNCE_TIME);
76
89
  const $options = Array.from(this.querySelectorAll(select_components_constatns.SELECT_RELATED_COMPONENTS_NAMES.option));
77
90
  $options.forEach(($option) => $option.setAttribute('slot', select_constants.SELECT_SLOT_NAMES.content));
78
91
  }
79
92
  updated(changedProperties) {
80
93
  super.updated(changedProperties);
81
- if (changedProperties.has('opened'))
82
- this.opened ? this.classList.add(select_constants.SELECT_CSS_CLASSES.selectOpened) : this.classList.remove(select_constants.SELECT_CSS_CLASSES.selectOpened);
94
+ if (changedProperties.has('opened')) {
95
+ if (this.opened) {
96
+ this.classList.add(select_constants.SELECT_CSS_CLASSES.selectOpened);
97
+ this._focusElementAfterSelectOpened();
98
+ }
99
+ else {
100
+ this.classList.remove(select_constants.SELECT_CSS_CLASSES.selectOpened);
101
+ }
102
+ }
83
103
  if (this._$optionsList.value && !this._listBoxController)
84
104
  this._listBoxController = new list_box_keyboard_controller.ListBoxKeyboardController({
85
105
  host: this,
86
106
  $list: this._$optionsList.value
87
107
  });
88
108
  }
109
+ _focusElementAfterSelectOpened() {
110
+ var _a, _b;
111
+ const $searchInput = (_a = this._$search.value) === null || _a === void 0 ? void 0 : _a.querySelector('[role="search"]');
112
+ $searchInput ? $searchInput.focus() : (_b = this._$optionsList.value) === null || _b === void 0 ? void 0 : _b.focus();
113
+ }
89
114
  connectedCallback() {
90
115
  super.connectedCallback();
91
116
  this.classList.add(select_constants.SELECT_CSS_CLASSES.select);
@@ -93,7 +118,8 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
93
118
  this._selectContext.provide(select_constants.SELECT_CONTEXTS.selectedOptions$, this._selectController.selectedOptions$);
94
119
  this._selectContext.provide(select_constants.SELECT_CONTEXTS.isMultiselect, this.multiselect);
95
120
  const $options = Array.from(this.querySelectorAll(select_components_constatns.SELECT_RELATED_COMPONENTS_NAMES.option));
96
- this._selectController.options$.subscribe(new observer.Observer((selectedOptions) => this._updateOptionsView(selectedOptions)));
121
+ this._optionsObserver = new observer.Observer((selectedOptions) => this._updateOptionsView(selectedOptions));
122
+ this._selectController.options$.subscribe(this._optionsObserver);
97
123
  this._$options = $options.reduce((acc, $option) => {
98
124
  if (acc[$option.value] !== undefined)
99
125
  throw Error('Select options must hava a unique values.');
@@ -102,17 +128,30 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
102
128
  [$option.value]: $option
103
129
  };
104
130
  }, {});
105
- this._selectController.options$.notify($options.map(select_option_mapper.SelectOptionMapper.toModel));
131
+ const options = $options.map(select_option_mapper.SelectOptionMapper.toModel);
132
+ this._selectController.options$.notify(options);
133
+ if (options.length)
134
+ this._selectController.selectedOptions$.notify(options.filter((option) => option.selected));
106
135
  this._setupEvents();
107
136
  }
137
+ attributeChangedCallback(name, _old, value) {
138
+ super.attributeChangedCallback(name, _old, value);
139
+ switch (name) {
140
+ case 'error':
141
+ this.error ? this.classList.add(select_constants.SELECT_CSS_CLASSES.selectError) : this.classList.remove(select_constants.SELECT_CSS_CLASSES.selectError);
142
+ break;
143
+ case 'disabled':
144
+ this.disabled ? this.classList.add(select_constants.SELECT_CSS_CLASSES.selectDisabled) : this.classList.remove(select_constants.SELECT_CSS_CLASSES.selectDisabled);
145
+ }
146
+ }
108
147
  firstUpdated(props) {
109
148
  super.firstUpdated(props);
110
- if (this._$dropdownContent.value)
111
- this._$dropdownContent.value.style.width = `${this.getBoundingClientRect().width}px`;
149
+ this._setDropdownContentWidth();
112
150
  }
113
151
  _setupEvents() {
114
152
  this.addEventListener(select_constants.SELECT_EVENT_NAMES.deselectOption, this._handleOptionDeselect);
115
153
  this.addEventListener(select_components_constatns.SELECT_CLOSE_BTN_EVENT_NAMES.close, this._closeSelect);
154
+ window.addEventListener('resize', this._handleResize);
116
155
  }
117
156
  _appendNewHTMLOption(option, position) {
118
157
  const $list = this._$optionsList.value;
@@ -145,6 +184,11 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
145
184
  replaceOptions(options) {
146
185
  this._selectController.replaceOptions(options);
147
186
  }
187
+ disconnectedCallback() {
188
+ super.disconnectedCallback();
189
+ this._selectController.options$.unsubscribe(this._optionsObserver);
190
+ window.removeEventListener('resize', this._handleResize);
191
+ }
148
192
  render() {
149
193
  var _a;
150
194
  const options = (_a = this._selectController.options$.getValue()) !== null && _a !== void 0 ? _a : [];
@@ -154,41 +198,48 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
154
198
  @dropdown.showed=${() => (this.opened = true)}
155
199
  @dropdown.hidden=${this._closeSelect}
156
200
  name=${this.controlName}
201
+ offset=${this.offset}
157
202
  >
158
- <h-dropdown-toggler name=${this.controlName}">
159
- ${this.getSlot(select_constants.SELECT_SLOT_NAMES.input)}
160
- </h-dropdown-toggler>
203
+ <h-dropdown-toggler name=${this.controlName}> ${this.getSlot(select_constants.SELECT_SLOT_NAMES.input)} </h-dropdown-toggler>
161
204
 
162
205
  <h-dropdown-content class=${select_constants.SELECT_CSS_CLASSES.selectContent} ${ref_js.ref(this._$dropdownContent)} name=${this.controlName}>
163
- <h-select-close-btn @click=${this._closeSelect}></h-select-close-btn>
206
+ <h-select-close-btn @selectCloseBtn.close=${this._closeSelect}></h-select-close-btn>
164
207
 
165
208
  ${options.length > select_constants.MIN_NUMBER_OF_OPTIONS_TO_SHOW_SEARCH
166
209
  ? lit.html `<h-select-search
167
- class=${select_constants.SELECT_CSS_CLASSES.selectSearch}
168
- ${ref_js.ref(this._$search)}
169
- .value=${this._searchValue}
170
- @selectSearch.search=${this._handleSearch}
171
- ></h-select-search>`
210
+ class=${select_constants.SELECT_CSS_CLASSES.selectSearch}
211
+ ${ref_js.ref(this._$search)}
212
+ .value=${this._searchValue}
213
+ @selectSearch.search=${this._handleSearch}
214
+ ></h-select-search>`
172
215
  : lit.nothing}
173
216
  ${this.hasSlot(select_constants.SELECT_SLOT_NAMES.content)
174
217
  ? lit.html `
175
- <h-options
176
- class=${select_constants.SELECT_CSS_CLASSES.selectOptions}
177
- ${ref_js.ref(this._$optionsList)}
178
- @selectOptions.clicked=${this._handleOptionClicked}
179
- >
180
- ${this.getSlot(select_constants.SELECT_SLOT_NAMES.content)}
181
- </h-options>
182
- `
218
+ <h-options
219
+ class=${select_constants.SELECT_CSS_CLASSES.selectOptions}
220
+ ${ref_js.ref(this._$optionsList)}
221
+ @selectOptions.clicked=${this._handleOptionClicked}
222
+ >
223
+ ${this.getSlot(select_constants.SELECT_SLOT_NAMES.content)}
224
+ </h-options>
225
+ `
226
+ : lit.nothing}
227
+ ${!this._selectController.visibleOptionsCount && Object.keys(this._$options).length
228
+ ? lit.html `<div>
229
+ <p class=${select_constants.SELECT_CSS_CLASSES.selectNoResult}>
230
+ Brak wyników dla: <em class=${select_constants.SELECT_CSS_CLASSES.selectSearchedPhrase}>"${this._searchValue}"</em>
231
+ </p>
232
+ </div>`
183
233
  : lit.nothing}
184
- ${!this._selectController.visibleOptionsCount ? lit.html `<p>brak wyników dla ${this._searchValue}</p>` : lit.nothing}
185
234
  ${this.multiselect && this._selectController.selectedOptionsCount >= 1
186
235
  ? lit.html `
187
- <section class=${select_constants.SELECT_CSS_CLASSES.selectFooter}>
188
- <button class="btn btn_secondary" @click=${this._clearOptions}>clear</button>
189
- <h-select-close-btn class="btn btn_primary" @click=${this._closeSelect}>ok</h-select-close-btn>
190
- </section>
191
- `
236
+ <section class=${select_constants.SELECT_CSS_CLASSES.selectFooter}>
237
+ <button class="btn btn_secondary btn_xs" @click=${this._clearOptions}>clear</button>
238
+ <h-select-close-btn class="btn btn_primary btn_xs" @selectCloseBtn.close=${this._closeSelect}
239
+ >ok</h-select-close-btn
240
+ >
241
+ </section>
242
+ `
192
243
  : lit.nothing}
193
244
  </h-dropdown-content>
194
245
  </h-dropdown>
@@ -199,7 +250,8 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
199
250
  };
200
251
  exports.HSelect._components = {
201
252
  search: select_search.HSelectSearch,
202
- icon: icon.HIcon
253
+ icon: icon.HIcon,
254
+ closeBtn: select_close_btn.HSelectCloseBtn
203
255
  };
204
256
  tslib_es6.__decorate([
205
257
  decorators_js.property({ type: String }),
@@ -213,6 +265,18 @@ tslib_es6.__decorate([
213
265
  decorators_js.property({ type: Boolean }),
214
266
  tslib_es6.__metadata("design:type", Boolean)
215
267
  ], exports.HSelect.prototype, "opened", void 0);
268
+ tslib_es6.__decorate([
269
+ decorators_js.property({ type: Number }),
270
+ tslib_es6.__metadata("design:type", Number)
271
+ ], exports.HSelect.prototype, "offset", void 0);
272
+ tslib_es6.__decorate([
273
+ decorators_js.property({ type: Boolean }),
274
+ tslib_es6.__metadata("design:type", Boolean)
275
+ ], exports.HSelect.prototype, "error", void 0);
276
+ tslib_es6.__decorate([
277
+ decorators_js.property({ type: Boolean }),
278
+ tslib_es6.__metadata("design:type", Boolean)
279
+ ], exports.HSelect.prototype, "disabled", void 0);
216
280
  tslib_es6.__decorate([
217
281
  decorators.state(),
218
282
  tslib_es6.__metadata("design:type", String)
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,+CAAmD;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -15,19 +15,25 @@ const SELECT_EVENT_NAMES = {
15
15
  deselectOption: 'selectOption.deselect'
16
16
  };
17
17
  const MIN_NUMBER_OF_OPTIONS_TO_SHOW_SEARCH = 6;
18
+ const SELECT_RESIZE_DEBOUNCE_TIME = 100;
18
19
  const baseSelectClass = 'select';
19
20
  const SELECT_CSS_CLASSES = {
20
21
  select: baseSelectClass,
21
22
  selectOpened: `${baseSelectClass}_opened`,
23
+ selectError: `${baseSelectClass}_error`,
24
+ selectDisabled: `${baseSelectClass}_disabled`,
22
25
  selectSearch: `${baseSelectClass}__search`,
23
26
  selectOptions: `${baseSelectClass}__options`,
24
27
  selectContent: `${baseSelectClass}__content`,
25
- selectFooter: `${baseSelectClass}__footer`
28
+ selectFooter: `${baseSelectClass}__footer`,
29
+ selectNoResult: `${baseSelectClass}__no-result`,
30
+ selectSearchedPhrase: `${baseSelectClass}__searched-phrase`
26
31
  };
27
32
 
28
33
  exports.MIN_NUMBER_OF_OPTIONS_TO_SHOW_SEARCH = MIN_NUMBER_OF_OPTIONS_TO_SHOW_SEARCH;
29
34
  exports.SELECT_CONTEXTS = SELECT_CONTEXTS;
30
35
  exports.SELECT_CSS_CLASSES = SELECT_CSS_CLASSES;
31
36
  exports.SELECT_EVENT_NAMES = SELECT_EVENT_NAMES;
37
+ exports.SELECT_RESIZE_DEBOUNCE_TIME = SELECT_RESIZE_DEBOUNCE_TIME;
32
38
  exports.SELECT_SLOT_NAMES = SELECT_SLOT_NAMES;
33
39
  //# sourceMappingURL=select_constants.js.map
@@ -1 +1 @@
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;"}
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;"}
@@ -6,7 +6,7 @@ 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');
9
+ var index = require('../../../../external/classnames/index.js');
10
10
  var control_props_sync_controller_constants = require('../controllers/props_synchronizing/control_props_sync_controller_constants.js');
11
11
  var control_props_sync_provider_controller = require('../controllers/props_synchronizing/control_props_sync_provider_controller.js');
12
12
  var checkbox_constants = require('../checkbox/checkbox_constants.js');
@@ -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,gDAAoD;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;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,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;"}
@@ -6,7 +6,7 @@ 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');
9
+ var index = require('../../../../external/classnames/index.js');
10
10
  var control_props_sync_controller_constants = require('../controllers/props_synchronizing/control_props_sync_controller_constants.js');
11
11
  var control_props_sync_provider_controller = require('../controllers/props_synchronizing/control_props_sync_provider_controller.js');
12
12
  var textarea_constants = require('./textarea_constants.js');
@@ -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,gDAAoD;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;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,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;"}
@@ -8,7 +8,7 @@ var decorators = require('lit/decorators');
8
8
  var phoenix_light_lit_element = require('../../core/phoenix_light_lit_element/phoenix_light_lit_element.js');
9
9
  var phoenix_custom_element = require('../../core/decorators/phoenix_custom_element.js');
10
10
  var icon_constants = require('./icon_constants.js');
11
- var index = require('../../../../../external/classnames/index.js');
11
+ var index = require('../../../external/classnames/index.js');
12
12
  var namespaced_attribure_directive = require('../../directives/namespaced_attribure_directive.js');
13
13
 
14
14
  var HIcon_1;
@@ -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,oBAAoB,6CAAiD;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;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,4CAAgD;AACxE;AACA;AACA;AACA;AACA;AACA,oBAAoB,uCAA2C;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -43,7 +43,7 @@ const CALCULATOR_DIRECTIONS = {
43
43
  const NON_STATIC_POSITIONS = ['relative', 'absolute', 'fixed', 'sticky'];
44
44
  const OVERFLOW_SCROLL = 'scroll';
45
45
  const OVERFLOW_AUTO = 'auto';
46
- const DEFAULT_THROTTLE_WAIT_TIME = 300;
46
+ const DEFAULT_THROTTLE_WAIT_TIME = 150;
47
47
  const DEFAULT_SCROLL_THROTTLE_WAIT_TIME = 15;
48
48
  const SHRINK_MODE_BOTTOM_MARGIN = 20;
49
49
  const SHRINK_MODE_MIN_HEIGHT = 80;
@@ -3,9 +3,9 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var lit = require('lit');
6
- var observer = require('../core/classes/observer/observer.js');
7
6
  var directive = require('../../../../external/lit/external/lit-html/directive.js');
8
7
  var asyncDirective = require('../../../../external/lit/external/lit-html/async-directive.js');
8
+ var observer = require('../core/classes/observer/observer.js');
9
9
 
10
10
  class ObserveDirective extends asyncDirective.AsyncDirective {
11
11
  render(observable, render) {
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,yDAAiE;AACzF,6BAA6B,+DAAuE;AACpG;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA,wBAAwB,yDAAiE;AACzF,6BAA6B,+DAAuE;AACpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,6 +6,7 @@ var phoenix_light_lit_elements_constants = require('./core/phoenix_light_lit_ele
6
6
  var phoenix_light_lit_element = require('./core/phoenix_light_lit_element/phoenix_light_lit_element.js');
7
7
  var keystrokes_controller = require('./controllers/keystrokes_controller/keystrokes_controller.js');
8
8
  var btn_controller = require('./controllers/btn_controller/btn_controller.js');
9
+ var icon = require('./components/icon/icon.js');
9
10
  var select_option = require('./components/form/select/components/option/select_option.js');
10
11
  var select_option_content = require('./components/form/select/components/option/select_option_content.js');
11
12
  var select_options = require('./components/form/select/components/select_options.js');
@@ -21,7 +22,6 @@ var toggle_element_aria_controller = require('./controllers/toggle_element_aria_
21
22
  var dropdown_toggler = require('./components/dropdown/dropdown_toggler.js');
22
23
  var relative_position_controller = require('./controllers/relative_position_controller/relative_position_controller.js');
23
24
  var dropdown = require('./components/dropdown/dropdown.js');
24
- var icon = require('./components/icon/icon.js');
25
25
  var select = require('./components/form/select/select.js');
26
26
  var modal = require('./components/modal/modal.js');
27
27
  var modal_opener = require('./components/modal/modal_opener.js');
@@ -90,6 +90,12 @@ exports.DEFAULT_SLOT_NAME = phoenix_light_lit_elements_constants.DEFAULT_SLOT_NA
90
90
  exports.PhoenixLightLitElement = phoenix_light_lit_element.PhoenixLightLitElement;
91
91
  exports.KeystrokesController = keystrokes_controller.KeystrokesController;
92
92
  exports.BtnController = btn_controller.BtnController;
93
+ Object.defineProperty(exports, 'HIcon', {
94
+ enumerable: true,
95
+ get: function () {
96
+ return icon.HIcon;
97
+ }
98
+ });
93
99
  Object.defineProperty(exports, 'HOption', {
94
100
  enumerable: true,
95
101
  get: function () {
@@ -150,12 +156,6 @@ Object.defineProperty(exports, 'HDropdown', {
150
156
  return dropdown.HDropdown;
151
157
  }
152
158
  });
153
- Object.defineProperty(exports, 'HIcon', {
154
- enumerable: true,
155
- get: function () {
156
- return icon.HIcon;
157
- }
158
- });
159
159
  Object.defineProperty(exports, 'HSelect', {
160
160
  enumerable: true,
161
161
  get: function () {
@@ -1,7 +1,7 @@
1
- import { createCommonjsModule } from '../../_virtual/_commonjsHelpers.js';
1
+ import { createCommonjsModule } from '../../../../_virtual/_commonjsHelpers.js';
2
2
 
3
3
  /*!
4
- Copyright (c) 2017 Jed Watson.
4
+ Copyright (c) 2018 Jed Watson.
5
5
  Licensed under the MIT License (MIT), see
6
6
  http://jedwatson.github.io/classnames
7
7
  */
@@ -13,7 +13,7 @@ var classnames = createCommonjsModule(function (module) {
13
13
 
14
14
  var hasOwn = {}.hasOwnProperty;
15
15
 
16
- function classNames () {
16
+ function classNames() {
17
17
  var classes = [];
18
18
 
19
19
  for (var i = 0; i < arguments.length; i++) {
@@ -24,16 +24,22 @@ var classnames = createCommonjsModule(function (module) {
24
24
 
25
25
  if (argType === 'string' || argType === 'number') {
26
26
  classes.push(arg);
27
- } else if (Array.isArray(arg) && arg.length) {
28
- var inner = classNames.apply(null, arg);
29
- if (inner) {
30
- classes.push(inner);
27
+ } else if (Array.isArray(arg)) {
28
+ if (arg.length) {
29
+ var inner = classNames.apply(null, arg);
30
+ if (inner) {
31
+ classes.push(inner);
32
+ }
31
33
  }
32
34
  } else if (argType === 'object') {
33
- for (var key in arg) {
34
- if (hasOwn.call(arg, key) && arg[key]) {
35
- classes.push(key);
35
+ if (arg.toString === Object.prototype.toString) {
36
+ for (var key in arg) {
37
+ if (hasOwn.call(arg, key) && arg[key]) {
38
+ classes.push(key);
39
+ }
36
40
  }
41
+ } else {
42
+ classes.push(arg.toString());
37
43
  }
38
44
  }
39
45
  }
@@ -1 +1 @@
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;"}
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;"}
@@ -9,6 +9,7 @@ export declare class HDropdown extends PhoenixLightLitElement implements IDropdo
9
9
  toggleOnHover: boolean;
10
10
  name: string;
11
11
  transition: string;
12
+ offset: number;
12
13
  portalTarget: string;
13
14
  $dropdownToggler: HDropdownToggler | null;
14
15
  $dropdownContent: HDropdownContent | null;
@@ -24,6 +24,7 @@ let HDropdown = HDropdown_1 = class HDropdown extends PhoenixLightLitElement {
24
24
  this.toggleOnHover = false;
25
25
  this.name = '';
26
26
  this.transition = 'direction';
27
+ this.offset = 0;
27
28
  this.portalTarget = DEFAULT_DROPDOWN_PORTAL_NAME;
28
29
  this._backdropController = new BackdropController();
29
30
  this._lastFocusableElement = undefined;
@@ -238,7 +239,8 @@ let HDropdown = HDropdown_1 = class HDropdown extends PhoenixLightLitElement {
238
239
  relativeElement: this.$dropdownToggler,
239
240
  elementToPosition: this.$dropdownContent,
240
241
  disablePositioningOnCondition: () => window.innerWidth < BREAKPOINTS.xs || !this.opened,
241
- portalElementsNames: [DROPDOWN_CONTENT_NAME]
242
+ portalElementsNames: [DROPDOWN_CONTENT_NAME],
243
+ offset: this.offset
242
244
  });
243
245
  if (!this._clickOutsideController)
244
246
  this._clickOutsideController = new ClickOutsideController({
@@ -361,6 +363,10 @@ __decorate([
361
363
  property({ type: String }),
362
364
  __metadata("design:type", Object)
363
365
  ], HDropdown.prototype, "transition", void 0);
366
+ __decorate([
367
+ property({ type: Number }),
368
+ __metadata("design:type", Object)
369
+ ], HDropdown.prototype, "offset", void 0);
364
370
  __decorate([
365
371
  property({ type: String }),
366
372
  __metadata("design:type", Object)
@@ -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,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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,6 +2,6 @@ import { TemplateResult } from 'lit';
2
2
  import { PhoenixLightLitElement } from "../../core/phoenix_light_lit_element/phoenix_light_lit_element";
3
3
  export declare class HDropdownContent extends PhoenixLightLitElement {
4
4
  name: string;
5
- constructor();
5
+ connectedCallback(): void;
6
6
  protected render(): TemplateResult;
7
7
  }
@@ -7,11 +7,14 @@ import { DROPDOWN_CONTENT_CSS_CLASS } from './dropdown_constants.js';
7
7
 
8
8
  let HDropdownContent = class HDropdownContent extends PhoenixLightLitElement {
9
9
  constructor() {
10
- super();
10
+ super(...arguments);
11
11
  this.name = '';
12
+ }
13
+ connectedCallback() {
14
+ super.connectedCallback();
15
+ this.classList.add(DROPDOWN_CONTENT_CSS_CLASS);
12
16
  this.setAttribute('role', 'menu');
13
17
  this.slot = this.hasAttribute('slot') ? this.slot : 'content';
14
- this.classList.add(DROPDOWN_CONTENT_CSS_CLASS);
15
18
  Array.from(this.children).forEach((element) => {
16
19
  element.setAttribute('role', 'menuitem');
17
20
  });
@@ -26,8 +29,7 @@ __decorate([
26
29
  __metadata("design:type", Object)
27
30
  ], HDropdownContent.prototype, "name", void 0);
28
31
  HDropdownContent = __decorate([
29
- phoenixCustomElement('h-dropdown-content'),
30
- __metadata("design:paramtypes", [])
32
+ phoenixCustomElement('h-dropdown-content')
31
33
  ], HDropdownContent);
32
34
 
33
35
  export { HDropdownContent };
@@ -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;"}
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;"}
@@ -2,7 +2,7 @@ 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';
5
+ import classnames from '../../../../external/classnames/index.js';
6
6
  import { BASE_FORM_CONTROL_PROPS } from '../controllers/props_synchronizing/control_props_sync_controller_constants.js';
7
7
  import { ControlPropsSyncProviderController } from '../controllers/props_synchronizing/control_props_sync_provider_controller.js';
8
8
  import { CHECKBOX_PROPS_TO_SYNC, CHECKBOX_CONTROL_CSS_CLASSES } from './checkbox_constants.js';
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA,uBAAuB,gDAAoD;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;"}
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;"}
@@ -2,9 +2,9 @@ import { __decorate, __metadata } from '../../../../../../external/tslib/tslib.e
2
2
  import { PhoenixLightLitElement } from '../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
3
3
  import { phoenixCustomElement } from '../../../core/decorators/phoenix_custom_element.js';
4
4
  import { property } from '@lit/reactive-element/decorators.js';
5
+ import classnames from '../../../../external/classnames/index.js';
5
6
  import { html } from 'lit-html';
6
7
  import { createRef, ref } from 'lit-html/directives/ref.js';
7
- import classnames from '../../../../../../external/classnames/index.js';
8
8
  import { ControlPropsSyncConsumerController } from '../controllers/props_synchronizing/control_props_sync_consumer_controller.js';
9
9
  import { ifDefined } from 'lit-html/directives/if-defined.js';
10
10
  import { CHECKBOX_CONTROL_EVENTS, CHECKBOX_CONTROL_CSS_CLASSES } from './checkbox_constants.js';
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA;AACA;AACA,uBAAuB,gDAAoD;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;"}
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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -4,7 +4,7 @@ import { property, state } from 'lit/decorators';
4
4
  import { ArrayUtils } from '@dreamcommerce/utilities';
5
5
  import { PhoenixLightLitElement } from '../../../core/phoenix_light_lit_element/phoenix_light_lit_element.js';
6
6
  import { phoenixCustomElement } from '../../../core/decorators/phoenix_custom_element.js';
7
- import classnames from '../../../../../../external/classnames/index.js';
7
+ import classnames from '../../../../external/classnames/index.js';
8
8
  import { INPUT_CONTROL_TYPES } from '../input/input_constants.js';
9
9
  import { COLOR_SWATCHES_CONTROL_CSS_CLASSES } from './color_swatches_control_constants.js';
10
10
  import { COLOR_SWATCHES_EVENT_NAMES } from '../../color_swatches/color_swatches_constants.js';
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA;AACA;AACA,uBAAuB,gDAAoD;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;"}
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;"}
@@ -2,7 +2,7 @@ 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';
5
+ import classnames from '../../../../external/classnames/index.js';
6
6
  import { INPUT_CONTROL_TYPES, INPUT_PROPS_TO_SYNC, INPUT_CONTROL_CSS_CLASSES } from './input_constants.js';
7
7
  import { BASE_FORM_CONTROL_PROPS } from '../controllers/props_synchronizing/control_props_sync_controller_constants.js';
8
8
  import { ControlPropsSyncProviderController } from '../controllers/props_synchronizing/control_props_sync_provider_controller.js';