@smilodon/core 1.3.12 → 1.3.13

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/dist/index.cjs CHANGED
@@ -3495,10 +3495,30 @@ class EnhancedSelect extends HTMLElement {
3495
3495
  }
3496
3496
  _normalizeCustomOptionElement(element, meta) {
3497
3497
  const optionEl = element instanceof HTMLElement ? element : document.createElement('div');
3498
- optionEl.classList.add('smilodon-option');
3499
- optionEl.classList.toggle('smilodon-option--selected', meta.selected);
3500
- optionEl.classList.toggle('smilodon-option--active', meta.active);
3501
- optionEl.classList.toggle('smilodon-option--disabled', meta.disabled);
3498
+ // Add both semantic namespaced classes and the legacy internal classes that CSS uses
3499
+ optionEl.classList.add('smilodon-option', 'option');
3500
+ // Toggle state classes
3501
+ const isSelected = meta.selected;
3502
+ const isActive = meta.active;
3503
+ const isDisabled = meta.disabled;
3504
+ if (isSelected) {
3505
+ optionEl.classList.add('smilodon-option--selected', 'selected');
3506
+ }
3507
+ else {
3508
+ optionEl.classList.remove('smilodon-option--selected', 'selected');
3509
+ }
3510
+ if (isActive) {
3511
+ optionEl.classList.add('smilodon-option--active', 'active');
3512
+ }
3513
+ else {
3514
+ optionEl.classList.remove('smilodon-option--active', 'active');
3515
+ }
3516
+ if (isDisabled) {
3517
+ optionEl.classList.add('smilodon-option--disabled', 'disabled');
3518
+ }
3519
+ else {
3520
+ optionEl.classList.remove('smilodon-option--disabled', 'disabled');
3521
+ }
3502
3522
  if (!optionEl.hasAttribute('data-selectable')) {
3503
3523
  optionEl.setAttribute('data-selectable', '');
3504
3524
  }