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