@smilodon/core 1.4.2 → 1.4.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.
- package/README.md +6 -0
- package/dist/index.cjs +66 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +66 -3
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/dist/index.umd.js +66 -3
- package/dist/index.umd.js.map +1 -1
- package/dist/index.umd.min.js +1 -1
- package/dist/index.umd.min.js.map +1 -1
- package/dist/types/src/components/enhanced-select.d.ts +3 -1
- package/package.json +1 -1
package/dist/index.umd.js
CHANGED
|
@@ -1502,10 +1502,15 @@
|
|
|
1502
1502
|
display: flex;
|
|
1503
1503
|
align-items: center;
|
|
1504
1504
|
justify-content: space-between;
|
|
1505
|
-
padding: 8px 12px;
|
|
1505
|
+
padding: var(--select-option-padding, 8px 12px);
|
|
1506
1506
|
cursor: pointer;
|
|
1507
1507
|
user-select: none;
|
|
1508
|
-
transition: background-color 0.2s ease;
|
|
1508
|
+
transition: var(--select-option-transition, background-color 0.2s ease);
|
|
1509
|
+
border: var(--select-option-border, none);
|
|
1510
|
+
border-bottom: var(--select-option-border-bottom, none);
|
|
1511
|
+
border-radius: var(--select-option-border-radius, 0);
|
|
1512
|
+
box-shadow: var(--select-option-shadow, none);
|
|
1513
|
+
transform: var(--select-option-transform, none);
|
|
1509
1514
|
}
|
|
1510
1515
|
|
|
1511
1516
|
.option-container:hover {
|
|
@@ -1515,6 +1520,20 @@
|
|
|
1515
1520
|
.option-container.selected {
|
|
1516
1521
|
background-color: var(--select-option-selected-bg, #e3f2fd);
|
|
1517
1522
|
color: var(--select-option-selected-color, #1976d2);
|
|
1523
|
+
border: var(--select-option-selected-border, var(--select-option-border, none));
|
|
1524
|
+
border-bottom: var(--select-option-selected-border-bottom, var(--select-option-border-bottom, none));
|
|
1525
|
+
border-radius: var(--select-option-selected-border-radius, var(--select-option-border-radius, 0));
|
|
1526
|
+
box-shadow: var(--select-option-selected-shadow, var(--select-option-shadow, none));
|
|
1527
|
+
transform: var(--select-option-selected-transform, var(--select-option-transform, none));
|
|
1528
|
+
}
|
|
1529
|
+
|
|
1530
|
+
.option-container.selected:hover {
|
|
1531
|
+
background-color: var(--select-option-selected-hover-bg, var(--select-option-selected-bg, #e3f2fd));
|
|
1532
|
+
color: var(--select-option-selected-hover-color, var(--select-option-selected-color, #1976d2));
|
|
1533
|
+
border: var(--select-option-selected-hover-border, var(--select-option-selected-border, var(--select-option-border, none)));
|
|
1534
|
+
border-bottom: var(--select-option-selected-hover-border-bottom, var(--select-option-selected-border-bottom, var(--select-option-border-bottom, none)));
|
|
1535
|
+
box-shadow: var(--select-option-selected-hover-shadow, var(--select-option-selected-shadow, var(--select-option-shadow, none)));
|
|
1536
|
+
transform: var(--select-option-selected-hover-transform, var(--select-option-selected-transform, var(--select-option-transform, none)));
|
|
1518
1537
|
}
|
|
1519
1538
|
|
|
1520
1539
|
.option-container.active {
|
|
@@ -1822,6 +1841,16 @@
|
|
|
1822
1841
|
* server-side selection, and full customization
|
|
1823
1842
|
*/
|
|
1824
1843
|
class EnhancedSelect extends HTMLElement {
|
|
1844
|
+
get classMap() {
|
|
1845
|
+
return this._classMap;
|
|
1846
|
+
}
|
|
1847
|
+
set classMap(map) {
|
|
1848
|
+
this._classMap = map;
|
|
1849
|
+
this._setGlobalStylesMirroring(Boolean(this._optionRenderer || map));
|
|
1850
|
+
if (!this.isConnected)
|
|
1851
|
+
return;
|
|
1852
|
+
this._renderOptions();
|
|
1853
|
+
}
|
|
1825
1854
|
constructor() {
|
|
1826
1855
|
super();
|
|
1827
1856
|
this._pageCache = {};
|
|
@@ -2295,6 +2324,9 @@
|
|
|
2295
2324
|
line-height: var(--select-option-line-height, 1.5);
|
|
2296
2325
|
border: var(--select-option-border, none);
|
|
2297
2326
|
border-bottom: var(--select-option-border-bottom, none);
|
|
2327
|
+
border-radius: var(--select-option-border-radius, 0);
|
|
2328
|
+
box-shadow: var(--select-option-shadow, none);
|
|
2329
|
+
transform: var(--select-option-transform, none);
|
|
2298
2330
|
}
|
|
2299
2331
|
|
|
2300
2332
|
.option:hover {
|
|
@@ -2306,6 +2338,20 @@
|
|
|
2306
2338
|
background-color: var(--select-option-selected-bg, #e0e7ff);
|
|
2307
2339
|
color: var(--select-option-selected-color, #4338ca);
|
|
2308
2340
|
font-weight: var(--select-option-selected-weight, 500);
|
|
2341
|
+
border: var(--select-option-selected-border, var(--select-option-border, none));
|
|
2342
|
+
border-bottom: var(--select-option-selected-border-bottom, var(--select-option-border-bottom, none));
|
|
2343
|
+
border-radius: var(--select-option-selected-border-radius, var(--select-option-border-radius, 0));
|
|
2344
|
+
box-shadow: var(--select-option-selected-shadow, var(--select-option-shadow, none));
|
|
2345
|
+
transform: var(--select-option-selected-transform, var(--select-option-transform, none));
|
|
2346
|
+
}
|
|
2347
|
+
|
|
2348
|
+
.option.selected:hover {
|
|
2349
|
+
background-color: var(--select-option-selected-hover-bg, var(--select-option-selected-bg, #e0e7ff));
|
|
2350
|
+
color: var(--select-option-selected-hover-color, var(--select-option-selected-color, #4338ca));
|
|
2351
|
+
border: var(--select-option-selected-hover-border, var(--select-option-selected-border, var(--select-option-border, none)));
|
|
2352
|
+
border-bottom: var(--select-option-selected-hover-border-bottom, var(--select-option-selected-border-bottom, var(--select-option-border-bottom, none)));
|
|
2353
|
+
box-shadow: var(--select-option-selected-hover-shadow, var(--select-option-selected-shadow, var(--select-option-shadow, none)));
|
|
2354
|
+
transform: var(--select-option-selected-hover-transform, var(--select-option-selected-transform, var(--select-option-transform, none)));
|
|
2309
2355
|
}
|
|
2310
2356
|
|
|
2311
2357
|
.option.active {
|
|
@@ -2463,6 +2509,19 @@
|
|
|
2463
2509
|
.option.selected {
|
|
2464
2510
|
background-color: var(--select-dark-option-selected-bg, #3730a3);
|
|
2465
2511
|
color: var(--select-dark-option-selected-text, #e0e7ff);
|
|
2512
|
+
border: var(--select-dark-option-selected-border, var(--select-option-selected-border, var(--select-option-border, none)));
|
|
2513
|
+
border-bottom: var(--select-dark-option-selected-border-bottom, var(--select-option-selected-border-bottom, var(--select-option-border-bottom, none)));
|
|
2514
|
+
box-shadow: var(--select-dark-option-selected-shadow, var(--select-option-selected-shadow, var(--select-option-shadow, none)));
|
|
2515
|
+
transform: var(--select-dark-option-selected-transform, var(--select-option-selected-transform, var(--select-option-transform, none)));
|
|
2516
|
+
}
|
|
2517
|
+
|
|
2518
|
+
.option.selected:hover {
|
|
2519
|
+
background-color: var(--select-dark-option-selected-hover-bg, var(--select-dark-option-selected-bg, #3730a3));
|
|
2520
|
+
color: var(--select-dark-option-selected-hover-color, var(--select-dark-option-selected-text, #e0e7ff));
|
|
2521
|
+
border: var(--select-dark-option-selected-hover-border, var(--select-dark-option-selected-border, var(--select-option-selected-hover-border, var(--select-option-selected-border, var(--select-option-border, none)))));
|
|
2522
|
+
border-bottom: var(--select-dark-option-selected-hover-border-bottom, var(--select-dark-option-selected-border-bottom, var(--select-option-selected-hover-border-bottom, var(--select-option-selected-border-bottom, var(--select-option-border-bottom, none)))));
|
|
2523
|
+
box-shadow: var(--select-dark-option-selected-hover-shadow, var(--select-dark-option-selected-shadow, var(--select-option-selected-hover-shadow, var(--select-option-selected-shadow, var(--select-option-shadow, none)))));
|
|
2524
|
+
transform: var(--select-dark-option-selected-hover-transform, var(--select-dark-option-selected-transform, var(--select-option-selected-hover-transform, var(--select-option-selected-transform, var(--select-option-transform, none)))));
|
|
2466
2525
|
}
|
|
2467
2526
|
|
|
2468
2527
|
.option.active {
|
|
@@ -3078,6 +3137,10 @@
|
|
|
3078
3137
|
const item = this._state.loadedItems[index];
|
|
3079
3138
|
if (!item)
|
|
3080
3139
|
return;
|
|
3140
|
+
// Keep active/focus styling aligned with the most recently interacted option.
|
|
3141
|
+
// Without this, a previously selected item may retain active classes/styles
|
|
3142
|
+
// after selecting a different option.
|
|
3143
|
+
this._state.activeIndex = index;
|
|
3081
3144
|
const isCurrentlySelected = this._state.selectedIndices.has(index);
|
|
3082
3145
|
if (this._config.selection.mode === 'single') {
|
|
3083
3146
|
// Single select: clear previous and select new
|
|
@@ -3317,7 +3380,7 @@
|
|
|
3317
3380
|
}
|
|
3318
3381
|
set optionRenderer(renderer) {
|
|
3319
3382
|
this._optionRenderer = renderer;
|
|
3320
|
-
this._setGlobalStylesMirroring(Boolean(renderer));
|
|
3383
|
+
this._setGlobalStylesMirroring(Boolean(renderer || this._classMap));
|
|
3321
3384
|
this._renderOptions();
|
|
3322
3385
|
}
|
|
3323
3386
|
/**
|