@shoper/phoenix_design_system 1.18.16-16 → 1.18.16-17
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.
- package/build/cjs/packages/phoenix/src/components/form/select/select.js +43 -46
- package/build/cjs/packages/phoenix/src/components/form/select/select.js.map +1 -1
- package/build/esm/packages/phoenix/src/components/form/select/select.d.ts +5 -1
- package/build/esm/packages/phoenix/src/components/form/select/select.js +43 -46
- package/build/esm/packages/phoenix/src/components/form/select/select.js.map +1 -1
- package/package.json +1 -1
|
@@ -295,56 +295,60 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
|
|
|
295
295
|
firstUpdated(changedProperties) {
|
|
296
296
|
super.firstUpdated(changedProperties);
|
|
297
297
|
if (this.isDevSelectPlaceholderTranslationFlagEnabled) {
|
|
298
|
-
|
|
299
|
-
// 2) Try toggler slot that may have been assigned into this._slots
|
|
300
|
-
if (!placeholderCandidate && this.hasSlot(select_constants.SELECT_SLOT_NAMES.toggler)) {
|
|
301
|
-
const togglerTpls = this.getSlot(select_constants.SELECT_SLOT_NAMES.toggler);
|
|
302
|
-
if (Array.isArray(togglerTpls) && togglerTpls.length > 0) {
|
|
303
|
-
const typedTogglerPtls = togglerTpls;
|
|
304
|
-
const togglerNode = (typedTogglerPtls[0].values ? typedTogglerPtls[0].values[0] : null);
|
|
305
|
-
if (togglerNode) {
|
|
306
|
-
// If togglerNode is an element, try to find an inner placeholder element
|
|
307
|
-
if (typeof togglerNode.querySelector === 'function') {
|
|
308
|
-
const inner = togglerNode.querySelector(`[slot="${select_components_constatns.SELECT_INPUT_PLACEHOLDER_SLOT_NAME}"]`);
|
|
309
|
-
if (inner)
|
|
310
|
-
placeholderCandidate = inner;
|
|
311
|
-
}
|
|
312
|
-
// fallback to using togglerNode text content (if useful)
|
|
313
|
-
if (!placeholderCandidate && togglerNode.textContent && togglerNode.textContent.trim()) {
|
|
314
|
-
placeholderCandidate = togglerNode;
|
|
315
|
-
}
|
|
316
|
-
}
|
|
317
|
-
}
|
|
318
|
-
}
|
|
319
|
-
// 3) Last DOM fallback (works if placeholder still in DOM)
|
|
320
|
-
// if (!placeholderCandidate) {
|
|
321
|
-
// const domEl = this.querySelector<HTMLElement>(`[slot="${SELECT_INPUT_PLACEHOLDER_SLOT_NAME}"]`);
|
|
322
|
-
// if (domEl) placeholderCandidate = domEl;
|
|
323
|
-
// }
|
|
324
|
-
this.$placeholder = placeholderCandidate !== null && placeholderCandidate !== void 0 ? placeholderCandidate : 'Select';
|
|
325
|
-
this._applyPlaceholderToExistingOption();
|
|
326
|
-
this._updateOptions();
|
|
298
|
+
this._initializePlaceholder();
|
|
327
299
|
}
|
|
328
300
|
if (this.isReactiveSelectionFlagEnabled) {
|
|
329
301
|
this._setupMutationObserver();
|
|
330
302
|
}
|
|
331
303
|
}
|
|
332
|
-
|
|
304
|
+
_initializePlaceholder() {
|
|
305
|
+
var _a;
|
|
306
|
+
this.$placeholder = (_a = this._extractPlaceholderFromTogglerSlot()) !== null && _a !== void 0 ? _a : 'Select';
|
|
307
|
+
this._updateExistingPlaceholderContent();
|
|
308
|
+
this._updateOptions();
|
|
309
|
+
}
|
|
310
|
+
_extractPlaceholderFromTogglerSlot() {
|
|
311
|
+
var _a;
|
|
312
|
+
if (!this.hasSlot(select_constants.SELECT_SLOT_NAMES.toggler)) {
|
|
313
|
+
return null;
|
|
314
|
+
}
|
|
315
|
+
const togglerTemplates = this.getSlot(select_constants.SELECT_SLOT_NAMES.toggler);
|
|
316
|
+
if (!Array.isArray(togglerTemplates) || togglerTemplates.length === 0) {
|
|
317
|
+
return null;
|
|
318
|
+
}
|
|
319
|
+
const togglerElement = (_a = togglerTemplates[0].values) === null || _a === void 0 ? void 0 : _a[0];
|
|
320
|
+
if (!togglerElement) {
|
|
321
|
+
return null;
|
|
322
|
+
}
|
|
323
|
+
return this._findPlaceholder(togglerElement);
|
|
324
|
+
}
|
|
325
|
+
_findPlaceholder(container) {
|
|
326
|
+
var _a;
|
|
327
|
+
if (typeof container.querySelector !== 'function') {
|
|
328
|
+
return null;
|
|
329
|
+
}
|
|
330
|
+
const $placeholder = container.querySelector(`[slot="${select_components_constatns.SELECT_INPUT_PLACEHOLDER_SLOT_NAME}"]`);
|
|
331
|
+
const containerFallback = ((_a = container.textContent) === null || _a === void 0 ? void 0 : _a.trim()) ? container : null;
|
|
332
|
+
return $placeholder || containerFallback;
|
|
333
|
+
}
|
|
334
|
+
_updateExistingPlaceholderContent() {
|
|
333
335
|
const $existingPlaceholderOption = this.querySelector('h-option[placeholder]');
|
|
334
336
|
if (!$existingPlaceholderOption)
|
|
335
337
|
return;
|
|
336
338
|
const $content = $existingPlaceholderOption.querySelector(select_components_constatns.SELECT_RELATED_COMPONENTS_NAMES.optionContent);
|
|
337
339
|
if (!$content)
|
|
338
340
|
return;
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
341
|
+
$content.replaceChildren();
|
|
342
|
+
this._injectPlaceholderContent($content, this.$placeholder);
|
|
343
|
+
}
|
|
344
|
+
_injectPlaceholderContent(container, placeholder) {
|
|
345
|
+
if (typeof placeholder === 'string') {
|
|
346
|
+
container.textContent = placeholder;
|
|
347
|
+
return;
|
|
343
348
|
}
|
|
344
|
-
|
|
345
|
-
Array.from(
|
|
346
|
-
|
|
347
|
-
});
|
|
349
|
+
if (placeholder instanceof Node) {
|
|
350
|
+
const clonedChildren = Array.from(placeholder.childNodes).map(node => node.cloneNode(true));
|
|
351
|
+
container.append(...clonedChildren);
|
|
348
352
|
}
|
|
349
353
|
}
|
|
350
354
|
attributeChangedCallback(name, _old, value) {
|
|
@@ -381,14 +385,7 @@ exports.HSelect = class HSelect extends phoenix_light_lit_element.PhoenixLightLi
|
|
|
381
385
|
$option.setAttribute('placeholder', 'true');
|
|
382
386
|
$option.setAttribute('slot', select_constants.SELECT_SLOT_NAMES.content);
|
|
383
387
|
const $content = document.createElement(select_components_constatns.SELECT_RELATED_COMPONENTS_NAMES.optionContent);
|
|
384
|
-
|
|
385
|
-
$content.textContent = this.$placeholder;
|
|
386
|
-
}
|
|
387
|
-
else if (this.$placeholder instanceof Node) {
|
|
388
|
-
Array.from(this.$placeholder.childNodes).forEach((node) => {
|
|
389
|
-
$content.appendChild(node.cloneNode(true));
|
|
390
|
-
});
|
|
391
|
-
}
|
|
388
|
+
this._injectPlaceholderContent($content, this.$placeholder);
|
|
392
389
|
$option.appendChild($content);
|
|
393
390
|
return $option;
|
|
394
391
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,wDAA4D;AAC7E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,wBAAwB,+CAAmD;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,wDAA4D;AAC7E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -55,7 +55,11 @@ export declare class HSelect extends PhoenixLightLitElement {
|
|
|
55
55
|
private _focusElementAfterSelectOpened;
|
|
56
56
|
connectedCallback(): void;
|
|
57
57
|
firstUpdated(changedProperties: PropertyValues): void;
|
|
58
|
-
private
|
|
58
|
+
private _initializePlaceholder;
|
|
59
|
+
private _extractPlaceholderFromTogglerSlot;
|
|
60
|
+
private _findPlaceholder;
|
|
61
|
+
private _updateExistingPlaceholderContent;
|
|
62
|
+
private _injectPlaceholderContent;
|
|
59
63
|
attributeChangedCallback(name: string, _old: string | null, value: string | null): void;
|
|
60
64
|
private _updateOptions;
|
|
61
65
|
private _getOptions;
|
|
@@ -291,56 +291,60 @@ let HSelect = class HSelect extends PhoenixLightLitElement {
|
|
|
291
291
|
firstUpdated(changedProperties) {
|
|
292
292
|
super.firstUpdated(changedProperties);
|
|
293
293
|
if (this.isDevSelectPlaceholderTranslationFlagEnabled) {
|
|
294
|
-
|
|
295
|
-
// 2) Try toggler slot that may have been assigned into this._slots
|
|
296
|
-
if (!placeholderCandidate && this.hasSlot(SELECT_SLOT_NAMES.toggler)) {
|
|
297
|
-
const togglerTpls = this.getSlot(SELECT_SLOT_NAMES.toggler);
|
|
298
|
-
if (Array.isArray(togglerTpls) && togglerTpls.length > 0) {
|
|
299
|
-
const typedTogglerPtls = togglerTpls;
|
|
300
|
-
const togglerNode = (typedTogglerPtls[0].values ? typedTogglerPtls[0].values[0] : null);
|
|
301
|
-
if (togglerNode) {
|
|
302
|
-
// If togglerNode is an element, try to find an inner placeholder element
|
|
303
|
-
if (typeof togglerNode.querySelector === 'function') {
|
|
304
|
-
const inner = togglerNode.querySelector(`[slot="${SELECT_INPUT_PLACEHOLDER_SLOT_NAME}"]`);
|
|
305
|
-
if (inner)
|
|
306
|
-
placeholderCandidate = inner;
|
|
307
|
-
}
|
|
308
|
-
// fallback to using togglerNode text content (if useful)
|
|
309
|
-
if (!placeholderCandidate && togglerNode.textContent && togglerNode.textContent.trim()) {
|
|
310
|
-
placeholderCandidate = togglerNode;
|
|
311
|
-
}
|
|
312
|
-
}
|
|
313
|
-
}
|
|
314
|
-
}
|
|
315
|
-
// 3) Last DOM fallback (works if placeholder still in DOM)
|
|
316
|
-
// if (!placeholderCandidate) {
|
|
317
|
-
// const domEl = this.querySelector<HTMLElement>(`[slot="${SELECT_INPUT_PLACEHOLDER_SLOT_NAME}"]`);
|
|
318
|
-
// if (domEl) placeholderCandidate = domEl;
|
|
319
|
-
// }
|
|
320
|
-
this.$placeholder = placeholderCandidate !== null && placeholderCandidate !== void 0 ? placeholderCandidate : 'Select';
|
|
321
|
-
this._applyPlaceholderToExistingOption();
|
|
322
|
-
this._updateOptions();
|
|
294
|
+
this._initializePlaceholder();
|
|
323
295
|
}
|
|
324
296
|
if (this.isReactiveSelectionFlagEnabled) {
|
|
325
297
|
this._setupMutationObserver();
|
|
326
298
|
}
|
|
327
299
|
}
|
|
328
|
-
|
|
300
|
+
_initializePlaceholder() {
|
|
301
|
+
var _a;
|
|
302
|
+
this.$placeholder = (_a = this._extractPlaceholderFromTogglerSlot()) !== null && _a !== void 0 ? _a : 'Select';
|
|
303
|
+
this._updateExistingPlaceholderContent();
|
|
304
|
+
this._updateOptions();
|
|
305
|
+
}
|
|
306
|
+
_extractPlaceholderFromTogglerSlot() {
|
|
307
|
+
var _a;
|
|
308
|
+
if (!this.hasSlot(SELECT_SLOT_NAMES.toggler)) {
|
|
309
|
+
return null;
|
|
310
|
+
}
|
|
311
|
+
const togglerTemplates = this.getSlot(SELECT_SLOT_NAMES.toggler);
|
|
312
|
+
if (!Array.isArray(togglerTemplates) || togglerTemplates.length === 0) {
|
|
313
|
+
return null;
|
|
314
|
+
}
|
|
315
|
+
const togglerElement = (_a = togglerTemplates[0].values) === null || _a === void 0 ? void 0 : _a[0];
|
|
316
|
+
if (!togglerElement) {
|
|
317
|
+
return null;
|
|
318
|
+
}
|
|
319
|
+
return this._findPlaceholder(togglerElement);
|
|
320
|
+
}
|
|
321
|
+
_findPlaceholder(container) {
|
|
322
|
+
var _a;
|
|
323
|
+
if (typeof container.querySelector !== 'function') {
|
|
324
|
+
return null;
|
|
325
|
+
}
|
|
326
|
+
const $placeholder = container.querySelector(`[slot="${SELECT_INPUT_PLACEHOLDER_SLOT_NAME}"]`);
|
|
327
|
+
const containerFallback = ((_a = container.textContent) === null || _a === void 0 ? void 0 : _a.trim()) ? container : null;
|
|
328
|
+
return $placeholder || containerFallback;
|
|
329
|
+
}
|
|
330
|
+
_updateExistingPlaceholderContent() {
|
|
329
331
|
const $existingPlaceholderOption = this.querySelector('h-option[placeholder]');
|
|
330
332
|
if (!$existingPlaceholderOption)
|
|
331
333
|
return;
|
|
332
334
|
const $content = $existingPlaceholderOption.querySelector(SELECT_RELATED_COMPONENTS_NAMES.optionContent);
|
|
333
335
|
if (!$content)
|
|
334
336
|
return;
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
337
|
+
$content.replaceChildren();
|
|
338
|
+
this._injectPlaceholderContent($content, this.$placeholder);
|
|
339
|
+
}
|
|
340
|
+
_injectPlaceholderContent(container, placeholder) {
|
|
341
|
+
if (typeof placeholder === 'string') {
|
|
342
|
+
container.textContent = placeholder;
|
|
343
|
+
return;
|
|
339
344
|
}
|
|
340
|
-
|
|
341
|
-
Array.from(
|
|
342
|
-
|
|
343
|
-
});
|
|
345
|
+
if (placeholder instanceof Node) {
|
|
346
|
+
const clonedChildren = Array.from(placeholder.childNodes).map(node => node.cloneNode(true));
|
|
347
|
+
container.append(...clonedChildren);
|
|
344
348
|
}
|
|
345
349
|
}
|
|
346
350
|
attributeChangedCallback(name, _old, value) {
|
|
@@ -377,14 +381,7 @@ let HSelect = class HSelect extends PhoenixLightLitElement {
|
|
|
377
381
|
$option.setAttribute('placeholder', 'true');
|
|
378
382
|
$option.setAttribute('slot', SELECT_SLOT_NAMES.content);
|
|
379
383
|
const $content = document.createElement(SELECT_RELATED_COMPONENTS_NAMES.optionContent);
|
|
380
|
-
|
|
381
|
-
$content.textContent = this.$placeholder;
|
|
382
|
-
}
|
|
383
|
-
else if (this.$placeholder instanceof Node) {
|
|
384
|
-
Array.from(this.$placeholder.childNodes).forEach((node) => {
|
|
385
|
-
$content.appendChild(node.cloneNode(true));
|
|
386
|
-
});
|
|
387
|
-
}
|
|
384
|
+
this._injectPlaceholderContent($content, this.$placeholder);
|
|
388
385
|
$option.appendChild($content);
|
|
389
386
|
return $option;
|
|
390
387
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,wDAA4D;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,uCAAuC,+CAAmD;AAC1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,wDAA4D;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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