tyrell-components 1.0.0-TC34 → 1.0.0-TC35
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/css/tyrell-brand.css +101 -6
- package/dist/tyrell-brand.css +101 -6
- package/dist/tyrell.js +1 -1
- package/lib/components/button.d.ts +7 -0
- package/lib/components/button.d.ts.map +1 -1
- package/lib/components/button.js +12 -1
- package/lib/components/button.js.map +1 -1
- package/lib/components/popup.d.ts.map +1 -1
- package/lib/components/popup.js +22 -2
- package/lib/components/popup.js.map +1 -1
- package/lib/components/select.d.ts +8 -0
- package/lib/components/select.d.ts.map +1 -1
- package/lib/components/select.js +26 -0
- package/lib/components/select.js.map +1 -1
- package/lib/components/tabs.d.ts.map +1 -1
- package/lib/components/tabs.js +162 -23
- package/lib/components/tabs.js.map +1 -1
- package/lib/styles/button.d.ts.map +1 -1
- package/lib/styles/button.js +57 -14
- package/lib/styles/button.js.map +1 -1
- package/lib/styles/tabs.d.ts +1 -1
- package/lib/styles/tabs.d.ts.map +1 -1
- package/lib/styles/tabs.js +70 -0
- package/lib/styles/tabs.js.map +1 -1
- package/lib/styles/wizard.d.ts +1 -1
- package/lib/styles/wizard.d.ts.map +1 -1
- package/lib/styles/wizard.js +15 -3
- package/lib/styles/wizard.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/package.json +5 -2
package/lib/components/tabs.js
CHANGED
|
@@ -199,7 +199,14 @@ function cleanupEventListeners(el) {
|
|
|
199
199
|
button.removeEventListener('pointerdown', handler);
|
|
200
200
|
}
|
|
201
201
|
});
|
|
202
|
+
handlers.tabKeyClickHandlers.forEach((handler, tabId) => {
|
|
203
|
+
const button = shadowRoot.querySelector(`[data-tab-id='${tabId}']`);
|
|
204
|
+
if (button) {
|
|
205
|
+
button.removeEventListener('click', handler);
|
|
206
|
+
}
|
|
207
|
+
});
|
|
202
208
|
handlers.tabClickHandlers.clear();
|
|
209
|
+
handlers.tabKeyClickHandlers.clear();
|
|
203
210
|
}
|
|
204
211
|
/**
|
|
205
212
|
* Setup event listeners for tab button clicks
|
|
@@ -210,6 +217,7 @@ function setupEventListeners(el, shadowRoot, tabs) {
|
|
|
210
217
|
// Initialize handlers storage
|
|
211
218
|
const handlers = {
|
|
212
219
|
tabClickHandlers: new Map(),
|
|
220
|
+
tabKeyClickHandlers: new Map(),
|
|
213
221
|
};
|
|
214
222
|
// Add click listener for each tab button
|
|
215
223
|
tabs.forEach((tab) => {
|
|
@@ -219,8 +227,21 @@ function setupEventListeners(el, shadowRoot, tabs) {
|
|
|
219
227
|
const button = shadowRoot.querySelector(`[data-tab-id='${tabId}']`);
|
|
220
228
|
if (button) {
|
|
221
229
|
const handler = (e) => handleTabClick(el, tabId, e);
|
|
230
|
+
// pointerdown: snappy mouse/touch activation (no native click delay).
|
|
231
|
+
// click, gated to event.detail === 0: native <button> keyboard
|
|
232
|
+
// activation (Enter/Space) fires 'click' with detail 0 — real mouse
|
|
233
|
+
// clicks report detail >= 1 — so this covers keyboard users without
|
|
234
|
+
// double-firing handleTabClick on an actual pointer click (which
|
|
235
|
+
// already fired via pointerdown above). Without this, keyboard-only
|
|
236
|
+
// users could Tab to a tab button but had no way to activate it.
|
|
237
|
+
const keyClickHandler = (e) => {
|
|
238
|
+
if (e.detail === 0)
|
|
239
|
+
handleTabClick(el, tabId, e);
|
|
240
|
+
};
|
|
222
241
|
button.addEventListener('pointerdown', handler);
|
|
242
|
+
button.addEventListener('click', keyClickHandler);
|
|
223
243
|
handlers.tabClickHandlers.set(tabId, handler);
|
|
244
|
+
handlers.tabKeyClickHandlers.set(tabId, keyClickHandler);
|
|
224
245
|
}
|
|
225
246
|
});
|
|
226
247
|
// Store handlers for cleanup
|
|
@@ -389,29 +410,30 @@ function setupResizeObserver(el) {
|
|
|
389
410
|
if (oldObserver) {
|
|
390
411
|
oldObserver.disconnect();
|
|
391
412
|
}
|
|
392
|
-
|
|
393
|
-
//
|
|
394
|
-
|
|
395
|
-
const
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
el.style.setProperty('--tabs-width', `${
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
}
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
413
|
+
// Observe unconditionally (not just for '%' widths) — overflow can happen
|
|
414
|
+
// at any fixed width too, and needs to react to container resizes.
|
|
415
|
+
const observer = new ResizeObserver((entries) => {
|
|
416
|
+
const entry = entries[0];
|
|
417
|
+
const { width } = getTabsAttributes(el);
|
|
418
|
+
const tabs = getChildTabs(el);
|
|
419
|
+
const activeId = getActiveTabId(el, tabs);
|
|
420
|
+
const activeIndex = activeId ? findTabIndex(tabs, activeId) : 0;
|
|
421
|
+
// Update CSS variable with measured width (percentage widths only)
|
|
422
|
+
if (width.includes('%')) {
|
|
423
|
+
el.style.setProperty('--tabs-width', `${entry.contentRect.width}px`);
|
|
424
|
+
}
|
|
425
|
+
// Update transform with new width
|
|
426
|
+
if (activeIndex !== undefined) {
|
|
427
|
+
updateTransform(el, activeIndex);
|
|
428
|
+
}
|
|
429
|
+
// Update marker position (tab button positions may have changed)
|
|
430
|
+
if (activeId) {
|
|
431
|
+
updateMarker(el, activeId);
|
|
432
|
+
}
|
|
433
|
+
updateOverflow(el);
|
|
434
|
+
});
|
|
435
|
+
observer.observe(el);
|
|
436
|
+
resizeObservers.set(el, observer);
|
|
415
437
|
}
|
|
416
438
|
/**
|
|
417
439
|
* Cleanup ResizeObserver
|
|
@@ -490,6 +512,120 @@ function renderButtonsOnly(tabsEl, tabs, activeId) {
|
|
|
490
512
|
</button>`;
|
|
491
513
|
}).join('');
|
|
492
514
|
}
|
|
515
|
+
// ============================================================================
|
|
516
|
+
// Overflow Handling (collapse tabs that don't fit into a "more" menu)
|
|
517
|
+
// ============================================================================
|
|
518
|
+
const OVERFLOW_TRIGGER_WIDTH = 40;
|
|
519
|
+
/** Build a display label for a hidden tab's overflow-menu entry. */
|
|
520
|
+
function getTabMenuLabel(tabsEl, tab) {
|
|
521
|
+
const tabId = getTabId(tab);
|
|
522
|
+
if (tabId && getTabLabelType(tabsEl, tab) === 'slot') {
|
|
523
|
+
const slotted = tabsEl.querySelector(`[slot='label-${tabId}']`);
|
|
524
|
+
return slotted?.textContent?.trim() || tabId;
|
|
525
|
+
}
|
|
526
|
+
return tab.getAttribute('label') || 'Tab';
|
|
527
|
+
}
|
|
528
|
+
/** Remove the "more" trigger + its popup, if present. */
|
|
529
|
+
function removeOverflowMenu(shadowRoot) {
|
|
530
|
+
shadowRoot.querySelector('.tab-overflow-trigger')?.remove();
|
|
531
|
+
}
|
|
532
|
+
/**
|
|
533
|
+
* Build the "more" trigger button + its ty-popup menu for the given
|
|
534
|
+
* (already-hidden) tab buttons, and append it to the buttons container.
|
|
535
|
+
* Reuses ty-popup instead of a second floating-menu implementation.
|
|
536
|
+
*/
|
|
537
|
+
function renderOverflowMenu(el, container, hiddenButtons, allTabs) {
|
|
538
|
+
if (hiddenButtons.length === 0)
|
|
539
|
+
return;
|
|
540
|
+
const tabsById = new Map(allTabs.map((tab) => [getTabId(tab), tab]));
|
|
541
|
+
const trigger = document.createElement('button');
|
|
542
|
+
trigger.className = 'tab-overflow-trigger';
|
|
543
|
+
trigger.type = 'button';
|
|
544
|
+
trigger.setAttribute('aria-label', `${hiddenButtons.length} more tabs`);
|
|
545
|
+
trigger.textContent = '⋯';
|
|
546
|
+
const popup = document.createElement('ty-popup');
|
|
547
|
+
popup.setAttribute('placement', 'bottom');
|
|
548
|
+
const menu = document.createElement('div');
|
|
549
|
+
menu.className = 'tab-overflow-menu';
|
|
550
|
+
menu.setAttribute('role', 'menu');
|
|
551
|
+
hiddenButtons.forEach((btn) => {
|
|
552
|
+
const tabId = btn.dataset.tabId;
|
|
553
|
+
const tab = tabId ? tabsById.get(tabId) : undefined;
|
|
554
|
+
if (!tabId || !tab)
|
|
555
|
+
return;
|
|
556
|
+
const item = document.createElement('button');
|
|
557
|
+
item.type = 'button';
|
|
558
|
+
item.className = 'tab-overflow-item';
|
|
559
|
+
item.setAttribute('role', 'menuitem');
|
|
560
|
+
item.textContent = getTabMenuLabel(el, tab);
|
|
561
|
+
if (isTabDisabled(tab)) {
|
|
562
|
+
item.disabled = true;
|
|
563
|
+
}
|
|
564
|
+
else {
|
|
565
|
+
item.addEventListener('click', () => {
|
|
566
|
+
setActiveTab(el, tabId);
|
|
567
|
+
popup.closePopup?.();
|
|
568
|
+
});
|
|
569
|
+
}
|
|
570
|
+
menu.appendChild(item);
|
|
571
|
+
});
|
|
572
|
+
popup.appendChild(menu);
|
|
573
|
+
trigger.appendChild(popup);
|
|
574
|
+
container.appendChild(trigger);
|
|
575
|
+
}
|
|
576
|
+
/**
|
|
577
|
+
* Measure the tab buttons against the available width and collapse whatever
|
|
578
|
+
* doesn't fit behind a "more" trigger + popup menu. The active tab is always
|
|
579
|
+
* kept visible — if it would be the one to overflow, the last visible button
|
|
580
|
+
* is hidden in its place instead.
|
|
581
|
+
*/
|
|
582
|
+
function updateOverflow(el) {
|
|
583
|
+
const shadowRoot = el.shadowRoot;
|
|
584
|
+
if (!shadowRoot)
|
|
585
|
+
return;
|
|
586
|
+
const container = shadowRoot.querySelector('.tab-buttons');
|
|
587
|
+
if (!container)
|
|
588
|
+
return;
|
|
589
|
+
removeOverflowMenu(shadowRoot);
|
|
590
|
+
const buttons = Array.from(container.querySelectorAll('.tab-button'));
|
|
591
|
+
buttons.forEach((b) => b.classList.remove('overflow-hidden'));
|
|
592
|
+
if (buttons.length === 0)
|
|
593
|
+
return;
|
|
594
|
+
const available = container.clientWidth;
|
|
595
|
+
let total = 0;
|
|
596
|
+
let cutoff = buttons.length;
|
|
597
|
+
for (let i = 0; i < buttons.length; i++) {
|
|
598
|
+
total += buttons[i].offsetWidth;
|
|
599
|
+
if (total > available) {
|
|
600
|
+
cutoff = i;
|
|
601
|
+
break;
|
|
602
|
+
}
|
|
603
|
+
}
|
|
604
|
+
if (cutoff >= buttons.length)
|
|
605
|
+
return; // everything fits
|
|
606
|
+
// Recompute the cutoff leaving room for the "more" trigger itself.
|
|
607
|
+
total = 0;
|
|
608
|
+
cutoff = buttons.length;
|
|
609
|
+
for (let i = 0; i < buttons.length; i++) {
|
|
610
|
+
total += buttons[i].offsetWidth;
|
|
611
|
+
if (total > available - OVERFLOW_TRIGGER_WIDTH) {
|
|
612
|
+
cutoff = i;
|
|
613
|
+
break;
|
|
614
|
+
}
|
|
615
|
+
}
|
|
616
|
+
cutoff = Math.max(cutoff, 1);
|
|
617
|
+
const tabs = getChildTabs(el);
|
|
618
|
+
const activeId = getActiveTabId(el, tabs);
|
|
619
|
+
const hidden = new Set(buttons.slice(cutoff));
|
|
620
|
+
const activeButton = activeId ? buttons.find((b) => b.dataset.tabId === activeId) : undefined;
|
|
621
|
+
if (activeButton && hidden.has(activeButton)) {
|
|
622
|
+
const lastVisible = buttons[cutoff - 1];
|
|
623
|
+
hidden.delete(activeButton);
|
|
624
|
+
hidden.add(lastVisible);
|
|
625
|
+
}
|
|
626
|
+
buttons.forEach((b) => b.classList.toggle('overflow-hidden', hidden.has(b)));
|
|
627
|
+
renderOverflowMenu(el, container, buttons.filter((b) => hidden.has(b)), tabs);
|
|
628
|
+
}
|
|
493
629
|
/**
|
|
494
630
|
* Render the tabs container with buttons and panel viewport.
|
|
495
631
|
* Smart rendering: checks if structure exists and only updates when needed.
|
|
@@ -541,6 +677,7 @@ function render(el) {
|
|
|
541
677
|
// Update placement if changed
|
|
542
678
|
existingContainer.setAttribute('data-placement', placement);
|
|
543
679
|
// SMART UPDATE: Preserve marker wrapper, only update buttons
|
|
680
|
+
existingButtons.querySelector('.tab-overflow-trigger')?.remove();
|
|
544
681
|
const allButtons = existingButtons.querySelectorAll('.tab-button');
|
|
545
682
|
allButtons.forEach(button => button.remove());
|
|
546
683
|
// Generate and append new buttons after the marker wrapper
|
|
@@ -567,6 +704,7 @@ function render(el) {
|
|
|
567
704
|
if (activeId) {
|
|
568
705
|
updateMarker(el, activeId);
|
|
569
706
|
}
|
|
707
|
+
updateOverflow(el);
|
|
570
708
|
});
|
|
571
709
|
// Update panel interaction states
|
|
572
710
|
if (activeId) {
|
|
@@ -598,6 +736,7 @@ function render(el) {
|
|
|
598
736
|
if (activeId) {
|
|
599
737
|
updateMarker(el, activeId);
|
|
600
738
|
}
|
|
739
|
+
updateOverflow(el);
|
|
601
740
|
});
|
|
602
741
|
// Setup event listeners
|
|
603
742
|
setupEventListeners(el, shadowRoot, tabs);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../src/components/tabs.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../src/components/tabs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../src/styles/button.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA8DH,+EAA+E;AAC/E,eAAO,MAAM,qBAAqB,GAAI,MAAM,MAAM,WAC6C,CAAA;AAE/F,eAAO,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../src/styles/button.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA8DH,+EAA+E;AAC/E,eAAO,MAAM,qBAAqB,GAAI,MAAM,MAAM,WAC6C,CAAA;AAE/F,eAAO,MAAM,YAAY,QAsTsB,CAAC"}
|
package/lib/styles/button.js
CHANGED
|
@@ -28,9 +28,9 @@ const tokenRef = (prefix, f, suffix, fb) => fb
|
|
|
28
28
|
const solidFlavor = (f, fb) => {
|
|
29
29
|
const solid = (suffix) => tokenRef('--ty-solid', f, suffix, fb);
|
|
30
30
|
return `
|
|
31
|
-
button.solid.${f} { --_ring: ${tokenRef('--ty-color', f, '', fb)}; background: var(--ty-button-bg, ${solid('')}); color: var(--ty-button-color, ${solid('-fg')}); }
|
|
32
|
-
button.solid.${f}.tone-plus { background: var(--ty-button-bg, ${solid('-strong')}); }
|
|
33
|
-
button.solid.${f}.tone-minus { background: var(--ty-button-bg, ${solid('-soft')}); }
|
|
31
|
+
button.solid.${f} { --_ring: ${tokenRef('--ty-color', f, '', fb)}; background: var(--ty-button-bg, var(--_muted-solid-bg, ${solid('')})); color: var(--ty-button-color, var(--_muted-solid-fg, ${solid('-fg')})); }
|
|
32
|
+
button.solid.${f}.tone-plus { background: var(--ty-button-bg, var(--_muted-solid-bg, ${solid('-strong')})); color: var(--ty-button-color, var(--_muted-solid-fg, ${solid('-strong-fg')})); }
|
|
33
|
+
button.solid.${f}.tone-minus { background: var(--ty-button-bg, var(--_muted-solid-bg, ${solid('-soft')})); color: var(--ty-button-color, var(--_muted-solid-fg, ${solid('-soft-fg')})); }
|
|
34
34
|
button.solid.${f}:hover:not(:disabled) { background: var(--ty-button-bg-hover, ${solid('-hover')}); }
|
|
35
35
|
button.solid.${f}:active:not(:disabled) { background: ${solid('-active')}; }
|
|
36
36
|
`;
|
|
@@ -39,16 +39,16 @@ const outlinedFlavor = (f, fb) => {
|
|
|
39
39
|
const color = (suffix) => tokenRef('--ty-color', f, suffix, fb);
|
|
40
40
|
return `
|
|
41
41
|
button.outlined.${f} {
|
|
42
|
-
color: var(--ty-button-color, ${color('')});
|
|
43
|
-
border-color: var(--ty-button-border, ${color('')});
|
|
42
|
+
color: var(--ty-button-color, var(--_muted-outlined-line, ${color('')}));
|
|
43
|
+
border-color: var(--ty-button-border, var(--_muted-outlined-line, ${color('')}));
|
|
44
44
|
}
|
|
45
45
|
button.outlined.${f}.tone-plus {
|
|
46
|
-
color: var(--ty-button-color, ${color('-strong')});
|
|
47
|
-
border-color: var(--ty-button-border, ${color('-strong')});
|
|
46
|
+
color: var(--ty-button-color, var(--_muted-outlined-line, ${color('-strong')}));
|
|
47
|
+
border-color: var(--ty-button-border, var(--_muted-outlined-line, ${color('-strong')}));
|
|
48
48
|
}
|
|
49
49
|
button.outlined.${f}.tone-minus {
|
|
50
|
-
color: var(--ty-button-color, ${color('-soft')});
|
|
51
|
-
border-color: var(--ty-button-border, ${color('-soft')});
|
|
50
|
+
color: var(--ty-button-color, var(--_muted-outlined-line, ${color('-soft')}));
|
|
51
|
+
border-color: var(--ty-button-border, var(--_muted-outlined-line, ${color('-soft')}));
|
|
52
52
|
}
|
|
53
53
|
button.outlined.${f}:hover:not(:disabled) {
|
|
54
54
|
background: var(--ty-button-bg-hover, ${tokenRef('--ty-bg', f, '-soft', fb)});
|
|
@@ -58,9 +58,9 @@ button.outlined.${f}:hover:not(:disabled) {
|
|
|
58
58
|
const ghostFlavor = (f, fb) => {
|
|
59
59
|
const color = (suffix) => tokenRef('--ty-color', f, suffix, fb);
|
|
60
60
|
return `
|
|
61
|
-
button.ghost.${f} { color: var(--ty-button-color, ${color('')}); }
|
|
62
|
-
button.ghost.${f}.tone-plus { color: var(--ty-button-color, ${color('-strong')}); }
|
|
63
|
-
button.ghost.${f}.tone-minus { color: var(--ty-button-color, ${color('-soft')}); }
|
|
61
|
+
button.ghost.${f} { color: var(--ty-button-color, var(--_muted-ghost-fg, ${color('')})); }
|
|
62
|
+
button.ghost.${f}.tone-plus { color: var(--ty-button-color, var(--_muted-ghost-fg, ${color('-strong')})); }
|
|
63
|
+
button.ghost.${f}.tone-minus { color: var(--ty-button-color, var(--_muted-ghost-fg, ${color('-soft')})); }
|
|
64
64
|
button.ghost.${f}:hover:not(:disabled) {
|
|
65
65
|
background: var(--ty-button-bg-hover, ${tokenRef('--ty-bg', f, '-soft', fb)});
|
|
66
66
|
}
|
|
@@ -252,6 +252,49 @@ button.action.lg ::slotted(ty-icon) { height: 1.125rem; width: 1.125rem; }
|
|
|
252
252
|
button.action.xl { height: 2.5rem; width: 2.5rem; }
|
|
253
253
|
button.action.xl ::slotted(ty-icon) { height: 1.25rem; width: 1.25rem; }
|
|
254
254
|
|
|
255
|
+
/* ===== MUTED =====
|
|
256
|
+
Show the neutral tokens at rest instead of the flavor color; reveal the
|
|
257
|
+
real flavor on interaction. Implemented as a fallback tier the flavor
|
|
258
|
+
rules above already read (--_muted-*), which sits behind the public
|
|
259
|
+
--ty-button-{bg,color,border} override slots and ahead of the flavor's
|
|
260
|
+
own token — so a custom brand color still wins, muted or not. Unsetting
|
|
261
|
+
--_muted-* on interaction falls the var() chain through to whatever's
|
|
262
|
+
next (the user's override, or the real flavor color).
|
|
263
|
+
Hover reveal is gated to real pointers (touch has no hover); :active /
|
|
264
|
+
:focus-visible cover the tap case so touch still gets the color on press. */
|
|
265
|
+
|
|
266
|
+
button.muted {
|
|
267
|
+
--_muted-solid-bg: var(--ty-solid-neutral);
|
|
268
|
+
--_muted-solid-fg: var(--ty-solid-neutral-fg);
|
|
269
|
+
--_muted-outlined-line: var(--ty-color-neutral);
|
|
270
|
+
--_muted-ghost-fg: var(--ty-color-neutral);
|
|
271
|
+
}
|
|
272
|
+
button.muted.tone-plus {
|
|
273
|
+
--_muted-solid-bg: var(--ty-solid-neutral-strong);
|
|
274
|
+
--_muted-outlined-line: var(--ty-color-neutral-strong);
|
|
275
|
+
--_muted-ghost-fg: var(--ty-color-neutral-strong);
|
|
276
|
+
}
|
|
277
|
+
button.muted.tone-minus {
|
|
278
|
+
--_muted-solid-bg: var(--ty-solid-neutral-soft);
|
|
279
|
+
--_muted-outlined-line: var(--ty-color-neutral-soft);
|
|
280
|
+
--_muted-ghost-fg: var(--ty-color-neutral-soft);
|
|
281
|
+
}
|
|
282
|
+
@media (hover: hover) and (pointer: fine) {
|
|
283
|
+
button.muted:hover:not(:disabled) {
|
|
284
|
+
--_muted-solid-bg: unset;
|
|
285
|
+
--_muted-solid-fg: unset;
|
|
286
|
+
--_muted-outlined-line: unset;
|
|
287
|
+
--_muted-ghost-fg: unset;
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
button.muted:active:not(:disabled),
|
|
291
|
+
button.muted:focus-visible:not(:disabled) {
|
|
292
|
+
--_muted-solid-bg: unset;
|
|
293
|
+
--_muted-solid-fg: unset;
|
|
294
|
+
--_muted-outlined-line: unset;
|
|
295
|
+
--_muted-ghost-fg: unset;
|
|
296
|
+
}
|
|
297
|
+
|
|
255
298
|
/* ===== PILL ===== */
|
|
256
299
|
|
|
257
300
|
button.pill {
|
|
@@ -293,8 +336,8 @@ button.solid {
|
|
|
293
336
|
background: var(--ty-button-bg, var(--ty-solid-neutral));
|
|
294
337
|
color: var(--ty-button-color, var(--ty-solid-neutral-fg));
|
|
295
338
|
}
|
|
296
|
-
button.solid.tone-plus { background: var(--ty-button-bg, var(--ty-solid-neutral-strong)); }
|
|
297
|
-
button.solid.tone-minus { background: var(--ty-button-bg, var(--ty-solid-neutral-soft)); }
|
|
339
|
+
button.solid.tone-plus { background: var(--ty-button-bg, var(--ty-solid-neutral-strong)); color: var(--ty-button-color, var(--ty-solid-neutral-strong-fg)); }
|
|
340
|
+
button.solid.tone-minus { background: var(--ty-button-bg, var(--ty-solid-neutral-soft)); color: var(--ty-button-color, var(--ty-solid-neutral-soft-fg)); }
|
|
298
341
|
button.solid:hover:not(:disabled) { background: var(--ty-button-bg-hover, var(--ty-solid-neutral-hover)); }
|
|
299
342
|
button.solid:active:not(:disabled) { background: var(--ty-solid-neutral-active); }
|
|
300
343
|
|
package/lib/styles/button.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../src/styles/button.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAE5C;;;;;;;uBAOuB;AAEvB,MAAM,QAAQ,GAAG,CAAC,MAAc,EAAE,CAAS,EAAE,MAAc,EAAE,EAAW,EAAE,EAAE,CAC1E,EAAE;IACA,CAAC,CAAC,OAAO,MAAM,IAAI,CAAC,GAAG,MAAM,SAAS,MAAM,IAAI,EAAE,GAAG,MAAM,IAAI;IAC/D,CAAC,CAAC,OAAO,MAAM,IAAI,CAAC,GAAG,MAAM,GAAG,CAAA;AAEpC,MAAM,WAAW,GAAG,CAAC,CAAS,EAAE,EAAW,EAAE,EAAE;IAC7C,MAAM,KAAK,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,CAAA;IACvE,OAAO;eACM,CAAC,eAAe,QAAQ,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../src/styles/button.ts"],"names":[],"mappings":"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"}
|
package/lib/styles/tabs.d.ts
CHANGED
|
@@ -9,5 +9,5 @@
|
|
|
9
9
|
* - Responsive design with prefers-reduced-motion support
|
|
10
10
|
* - Fully customizable via CSS Parts (::part)
|
|
11
11
|
*/
|
|
12
|
-
export declare const tabsStyles = "\n:host {\n display: block;\n width: var(--tabs-width, 100%);\n height: var(--tabs-height, 400px);\n box-sizing: border-box;\n}\n\n.tabs-container {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n position: relative;\n box-sizing: border-box;\n}\n\n/* Bottom placement reverses the order */\n.tabs-container[data-placement=\"bottom\"] {\n flex-direction: column-reverse;\n}\n\n/* ===================================== */\n/* Tab Buttons Container */\n/* Expose as CSS Part for full styling control */\n/* ===================================== */\n\n.tab-buttons {\n display: flex;\n gap: 0;\n flex-shrink: 0;\n position: relative;\n /* For absolute positioned marker */\n \n /* Default minimal styling - customize via ::part(buttons-container) */\n border-bottom: 1px solid var(--ty-border);\n background: transparent;\n}\n\n/* Bottom placement moves border to top */\n.tabs-container[data-placement=\"bottom\"] .tab-buttons {\n border-bottom: none;\n border-top: 1px solid var(--ty-border);\n}\n\n/* ===================================== */\n/* Marker Wrapper */\n/* Expose as CSS Part for custom marker styling */\n/* ===================================== */\n\n.marker-wrapper {\n position: absolute;\n z-index: 0;\n /* Behind buttons */\n pointer-events: none;\n /* Don't block clicks */\n transition: left var(--transition-duration, 300ms) var(--transition-easing, ease-in-out),\n width var(--transition-duration, 300ms) var(--transition-easing, ease-in-out),\n height var(--transition-duration, 300ms) var(--transition-easing, ease-in-out),\n top var(--transition-duration, 300ms) var(--transition-easing, ease-in-out);\n}\n\n/* Default marker - simple underline */\n.default-marker {\n position: absolute;\n bottom: 0;\n left: 0;\n height: 2px;\n width: 100%;\n background: var(--ty-color-primary);\n pointer-events: none;\n}\n\n/* Hide default marker when custom marker is slotted */\n.marker-wrapper:has(::slotted([slot=\"marker\"])) .default-marker {\n display: none;\n}\n\n/* User's marker element fills the wrapper */\n::slotted([slot=\"marker\"]) {\n display: block;\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n}\n\n/* ===================================== */\n/* Tab Buttons */\n/* ===================================== */\n\n.tab-button {\n min-width: 120px;\n padding: 6px 12px;\n border: none;\n background: transparent;\n cursor: pointer;\n font: inherit;\n color: var(--ty-text-soft);\n transition: color 200ms, background-color 200ms;\n white-space: nowrap;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n font-weight: var(--ty-font-bold);\n font-size: var(--ty-font-sm);\n position: relative;\n /* Establish stacking context */\n z-index: 10;\n /* Above marker */\n}\n\n.tab-button[aria-selected=true] {\n color: var(--ty-text-strong);\n}\n\n.tab-button[disabled] {\n opacity: 0.5;\n cursor: not-allowed;\n pointer-events: none;\n}\n\n.tab-button:focus-visible {\n outline: 2px solid var(--ty-color-primary);\n outline-offset: -2px;\n}\n\n/* ===================================== */\n/* Panels Viewport */\n/* Expose as CSS Part for panels container styling */\n/* ===================================== */\n\n.panels-viewport {\n position: relative;\n flex: 1;\n overflow: hidden;\n /* Critical: hides off-screen panels */\n min-height: 0;\n /* Allows flex child to shrink */\n}\n\n/* ===================================== */\n/* Panels Wrapper (slides horizontally) */\n/* ===================================== */\n\n.panels-wrapper {\n display: flex;\n height: 100%;\n transition: transform var(--transition-duration, 300ms) var(--transition-easing, ease-in-out);\n}\n\n/* Respect user's motion preferences */\n@media (prefers-reduced-motion: reduce) {\n .panels-wrapper {\n transition-duration: 0ms !important;\n }\n\n .marker-wrapper {\n transition-duration: 0ms !important;\n }\n}\n\n/* ===================================== */\n/* Slotted Tab Panels */\n/* ===================================== */\n\n::slotted(ty-tab) {\n width: var(--tabs-width, 100%);\n height: 100%;\n flex-shrink: 0;\n}\n";
|
|
12
|
+
export declare const tabsStyles = "\n:host {\n display: block;\n width: var(--tabs-width, 100%);\n height: var(--tabs-height, 400px);\n box-sizing: border-box;\n}\n\n.tabs-container {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n position: relative;\n box-sizing: border-box;\n}\n\n/* Bottom placement reverses the order */\n.tabs-container[data-placement=\"bottom\"] {\n flex-direction: column-reverse;\n}\n\n/* ===================================== */\n/* Tab Buttons Container */\n/* Expose as CSS Part for full styling control */\n/* ===================================== */\n\n.tab-buttons {\n display: flex;\n gap: 0;\n flex-shrink: 0;\n position: relative;\n /* For absolute positioned marker */\n \n /* Default minimal styling - customize via ::part(buttons-container) */\n border-bottom: 1px solid var(--ty-border);\n background: transparent;\n}\n\n/* Bottom placement moves border to top */\n.tabs-container[data-placement=\"bottom\"] .tab-buttons {\n border-bottom: none;\n border-top: 1px solid var(--ty-border);\n}\n\n/* ===================================== */\n/* Marker Wrapper */\n/* Expose as CSS Part for custom marker styling */\n/* ===================================== */\n\n.marker-wrapper {\n position: absolute;\n z-index: 0;\n /* Behind buttons */\n pointer-events: none;\n /* Don't block clicks */\n transition: left var(--transition-duration, 300ms) var(--transition-easing, ease-in-out),\n width var(--transition-duration, 300ms) var(--transition-easing, ease-in-out),\n height var(--transition-duration, 300ms) var(--transition-easing, ease-in-out),\n top var(--transition-duration, 300ms) var(--transition-easing, ease-in-out);\n}\n\n/* Default marker - simple underline */\n.default-marker {\n position: absolute;\n bottom: 0;\n left: 0;\n height: 2px;\n width: 100%;\n background: var(--ty-color-primary);\n pointer-events: none;\n}\n\n/* Hide default marker when custom marker is slotted */\n.marker-wrapper:has(::slotted([slot=\"marker\"])) .default-marker {\n display: none;\n}\n\n/* User's marker element fills the wrapper */\n::slotted([slot=\"marker\"]) {\n display: block;\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n}\n\n/* ===================================== */\n/* Tab Buttons */\n/* ===================================== */\n\n.tab-button {\n min-width: 120px;\n padding: 6px 12px;\n border: none;\n background: transparent;\n cursor: pointer;\n font: inherit;\n color: var(--ty-text-soft);\n transition: color 200ms, background-color 200ms;\n white-space: nowrap;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n font-weight: var(--ty-font-bold);\n font-size: var(--ty-font-sm);\n position: relative;\n /* Establish stacking context */\n z-index: 10;\n /* Above marker */\n}\n\n.tab-button[aria-selected=true] {\n color: var(--ty-text-strong);\n}\n\n.tab-button[disabled] {\n opacity: 0.5;\n cursor: not-allowed;\n pointer-events: none;\n}\n\n.tab-button:focus-visible {\n outline: 2px solid var(--ty-color-primary);\n outline-offset: -2px;\n}\n\n.tab-button.overflow-hidden {\n display: none;\n}\n\n/* ===================================== */\n/* Overflow \"more\" trigger + menu */\n/* ===================================== */\n\n.tab-overflow-trigger {\n flex-shrink: 0;\n width: 40px;\n min-width: 40px;\n padding: 6px;\n border: none;\n background: transparent;\n cursor: pointer;\n color: var(--ty-text-soft);\n font-size: 18px;\n line-height: 1;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n position: relative;\n z-index: 10;\n}\n\n.tab-overflow-trigger:hover {\n color: var(--ty-text-strong);\n}\n\n.tab-overflow-trigger:focus-visible {\n outline: 2px solid var(--ty-color-primary);\n outline-offset: -2px;\n}\n\n.tab-overflow-menu {\n display: flex;\n flex-direction: column;\n min-width: 160px;\n max-height: 300px;\n overflow-y: auto;\n padding: var(--ty-spacing-2, 4px);\n background: var(--ty-surface-floating);\n border-radius: var(--ty-radius-md);\n box-shadow: var(--ty-shadow-md, 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1));\n}\n\n.tab-overflow-item {\n padding: var(--ty-spacing-2, 6px) var(--ty-spacing-3, 12px);\n border: none;\n background: transparent;\n text-align: left;\n cursor: pointer;\n border-radius: var(--ty-radius-md);\n color: var(--ty-text);\n font: inherit;\n font-size: var(--ty-font-sm);\n white-space: nowrap;\n}\n\n.tab-overflow-item:hover {\n background: var(--ty-bg-neutral-soft);\n color: var(--ty-text-strong);\n}\n\n.tab-overflow-item[disabled] {\n opacity: 0.5;\n cursor: not-allowed;\n}\n\n/* ===================================== */\n/* Panels Viewport */\n/* Expose as CSS Part for panels container styling */\n/* ===================================== */\n\n.panels-viewport {\n position: relative;\n flex: 1;\n overflow: hidden;\n /* Critical: hides off-screen panels */\n min-height: 0;\n /* Allows flex child to shrink */\n}\n\n/* ===================================== */\n/* Panels Wrapper (slides horizontally) */\n/* ===================================== */\n\n.panels-wrapper {\n display: flex;\n height: 100%;\n transition: transform var(--transition-duration, 300ms) var(--transition-easing, ease-in-out);\n}\n\n/* Respect user's motion preferences */\n@media (prefers-reduced-motion: reduce) {\n .panels-wrapper {\n transition-duration: 0ms !important;\n }\n\n .marker-wrapper {\n transition-duration: 0ms !important;\n }\n}\n\n/* ===================================== */\n/* Slotted Tab Panels */\n/* ===================================== */\n\n::slotted(ty-tab) {\n width: var(--tabs-width, 100%);\n height: 100%;\n flex-shrink: 0;\n}\n";
|
|
13
13
|
//# sourceMappingURL=tabs.d.ts.map
|
package/lib/styles/tabs.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../src/styles/tabs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../src/styles/tabs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,eAAO,MAAM,UAAU,6pLAiPtB,CAAC"}
|
package/lib/styles/tabs.js
CHANGED
|
@@ -136,6 +136,76 @@ export const tabsStyles = `
|
|
|
136
136
|
outline-offset: -2px;
|
|
137
137
|
}
|
|
138
138
|
|
|
139
|
+
.tab-button.overflow-hidden {
|
|
140
|
+
display: none;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
/* ===================================== */
|
|
144
|
+
/* Overflow "more" trigger + menu */
|
|
145
|
+
/* ===================================== */
|
|
146
|
+
|
|
147
|
+
.tab-overflow-trigger {
|
|
148
|
+
flex-shrink: 0;
|
|
149
|
+
width: 40px;
|
|
150
|
+
min-width: 40px;
|
|
151
|
+
padding: 6px;
|
|
152
|
+
border: none;
|
|
153
|
+
background: transparent;
|
|
154
|
+
cursor: pointer;
|
|
155
|
+
color: var(--ty-text-soft);
|
|
156
|
+
font-size: 18px;
|
|
157
|
+
line-height: 1;
|
|
158
|
+
display: inline-flex;
|
|
159
|
+
align-items: center;
|
|
160
|
+
justify-content: center;
|
|
161
|
+
position: relative;
|
|
162
|
+
z-index: 10;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
.tab-overflow-trigger:hover {
|
|
166
|
+
color: var(--ty-text-strong);
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
.tab-overflow-trigger:focus-visible {
|
|
170
|
+
outline: 2px solid var(--ty-color-primary);
|
|
171
|
+
outline-offset: -2px;
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
.tab-overflow-menu {
|
|
175
|
+
display: flex;
|
|
176
|
+
flex-direction: column;
|
|
177
|
+
min-width: 160px;
|
|
178
|
+
max-height: 300px;
|
|
179
|
+
overflow-y: auto;
|
|
180
|
+
padding: var(--ty-spacing-2, 4px);
|
|
181
|
+
background: var(--ty-surface-floating);
|
|
182
|
+
border-radius: var(--ty-radius-md);
|
|
183
|
+
box-shadow: var(--ty-shadow-md, 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1));
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
.tab-overflow-item {
|
|
187
|
+
padding: var(--ty-spacing-2, 6px) var(--ty-spacing-3, 12px);
|
|
188
|
+
border: none;
|
|
189
|
+
background: transparent;
|
|
190
|
+
text-align: left;
|
|
191
|
+
cursor: pointer;
|
|
192
|
+
border-radius: var(--ty-radius-md);
|
|
193
|
+
color: var(--ty-text);
|
|
194
|
+
font: inherit;
|
|
195
|
+
font-size: var(--ty-font-sm);
|
|
196
|
+
white-space: nowrap;
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
.tab-overflow-item:hover {
|
|
200
|
+
background: var(--ty-bg-neutral-soft);
|
|
201
|
+
color: var(--ty-text-strong);
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
.tab-overflow-item[disabled] {
|
|
205
|
+
opacity: 0.5;
|
|
206
|
+
cursor: not-allowed;
|
|
207
|
+
}
|
|
208
|
+
|
|
139
209
|
/* ===================================== */
|
|
140
210
|
/* Panels Viewport */
|
|
141
211
|
/* Expose as CSS Part for panels container styling */
|
package/lib/styles/tabs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../src/styles/tabs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG
|
|
1
|
+
{"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../src/styles/tabs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiPzB,CAAC"}
|
package/lib/styles/wizard.d.ts
CHANGED
|
@@ -21,5 +21,5 @@
|
|
|
21
21
|
* (--ty-color-primary, --ty-color-success-strong, etc.) — they cascade
|
|
22
22
|
* through here.
|
|
23
23
|
*/
|
|
24
|
-
export declare const wizardStyles = "\n/* ============================================================================\n Theming Tokens \u2014 see file header for the override surface.\n Every default chains back to the brand layer / global scale tokens.\n ============================================================================ */\n\n:host {\n display: block;\n width: var(--ty-wizard-width, 100%); /* set by width attribute \u2014 not a public token */\n height: var(--ty-wizard-height, 700px); /* set by height attribute \u2014 not a public token */\n box-sizing: border-box;\n\n /* State accents \u2014 the primary override surface. One variable retints the\n * matching circle background, border, and glow. */\n --ty-wizard-active-accent: var(--ty-color-primary);\n --ty-wizard-completed-accent: var(--ty-color-success);\n --ty-wizard-error-accent: var(--ty-color-danger);\n --ty-wizard-pending-accent: var(--ty-color-neutral);\n\n /* Container chrome \u2014 routes through global scales. Override --ty-radius-lg\n * or --ty-shadow-md app-wide and the wizard follows; override these locally\n * to give the wizard a distinct look. */\n --ty-wizard-bg: var(--ty-surface-floating);\n --ty-wizard-border: var(--ty-border);\n --ty-wizard-radius: var(--ty-radius-lg, 12px);\n --ty-wizard-shadow: var(--ty-shadow-md, 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1));\n\n /* Header strip */\n --ty-wizard-header-bg: var(--ty-surface-content);\n --ty-wizard-header-border: var(--ty-border-soft, var(--ty-border));\n --ty-wizard-header-padding: 24px 24px 16px;\n\n /* Progress line */\n --ty-wizard-progress-track: var(--ty-border);\n --ty-wizard-progress-fill: var(--ty-wizard-completed-accent);\n --ty-wizard-progress-height: 2px;\n\n /* Motion \u2014 routes through global motion tokens if defined. */\n --ty-wizard-transition-duration: var(--ty-transition-duration, 300ms);\n --ty-wizard-transition-easing: var(--ty-transition-easing, ease-in-out);\n\n /* Circle geometry */\n --ty-wizard-circle-size: 32px;\n --ty-wizard-circle-border-width: 2px;\n\n /* Panels viewport */\n --ty-wizard-panels-bg: var(--ty-surface-elevated);\n\n /* Focus */\n --ty-wizard-focus-outline: var(--ty-wizard-active-accent);\n}\n\n.wizard-container {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n position: relative;\n box-sizing: border-box;\n border-radius: var(--ty-wizard-radius);\n border: 1px solid var(--ty-wizard-border);\n background: var(--ty-wizard-bg);\n box-shadow: var(--ty-wizard-shadow);\n overflow: hidden;\n}\n\n/* ===================================== */\n/* Step Indicators Wrapper */\n/* ===================================== */\n\n.step-indicators-wrapper {\n display: flex;\n flex-direction: column;\n flex-shrink: 0;\n position: relative;\n padding: var(--ty-wizard-header-padding);\n border-bottom: 1px solid var(--ty-wizard-header-border);\n background: var(--ty-wizard-header-bg);\n}\n\n/* ===================================== */\n/* Progress Line (behind step circles) */\n/* ===================================== */\n\n.progress-line {\n position: absolute;\n /*\n * With equal-width indicators (flex: 1), each takes 100%/N of the width.\n * Circle centers sit at 50%/N from the left edge of each indicator.\n * Inset = 50% / step-count from each side keeps the line between circle centres.\n */\n left: calc(50% / var(--ty-wizard-step-count, 4));\n right: calc(50% / var(--ty-wizard-step-count, 4));\n top: calc(var(--ty-wizard-circle-size, 32px) / 2 - 1px);\n height: var(--ty-wizard-progress-height);\n background: var(--ty-wizard-progress-track);\n z-index: 0;\n pointer-events: none;\n transition: opacity var(--ty-wizard-transition-duration) var(--ty-wizard-transition-easing);\n}\n\n.progress-overlay {\n position: absolute;\n left: 0;\n top: 0;\n height: 100%;\n background: var(--ty-wizard-progress-fill);\n transition: width var(--ty-wizard-transition-duration) var(--ty-wizard-transition-easing);\n will-change: width;\n}\n\n/* ===================================== */\n/* Step Indicators Container */\n/* ===================================== */\n\n.step-indicators {\n display: flex;\n align-items: flex-start;\n position: relative;\n}\n\n/* ===================================== */\n/* Individual Step Indicator */\n/* ===================================== */\n\n.step-indicator {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n background: transparent;\n border: none;\n padding: 0;\n font: inherit;\n transition: opacity 200ms;\n flex: 1;\n min-width: 0;\n}\n\n.step-indicator[aria-disabled=\"true\"] {\n opacity: 0.4;\n cursor: not-allowed;\n pointer-events: none;\n}\n\n.step-indicator:focus-visible {\n outline: 2px solid var(--ty-wizard-focus-outline);\n outline-offset: 4px;\n border-radius: 50%;\n}\n\n/* ===================================== */\n/* Step Circle */\n/* ===================================== */\n\n.step-circle {\n width: var(--ty-wizard-circle-size);\n height: var(--ty-wizard-circle-size);\n border-radius: 50%;\n border: var(--ty-wizard-circle-border-width) solid;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n z-index: 10;\n transition: all var(--ty-wizard-transition-duration) var(--ty-wizard-transition-easing);\n box-sizing: border-box;\n flex-shrink: 0;\n}\n\n.step-circle[data-state=\"completed\"] {\n background: var(--ty-wizard-completed-accent);\n border-color: var(--ty-color-success-strong);\n color: var(--ty-solid-success-fg, white);\n box-shadow: 0 0 0 4px color-mix(in oklab, var(--ty-wizard-completed-accent) 12%, transparent);\n}\n\n.step-circle[data-state=\"active\"] {\n background: var(--ty-wizard-active-accent);\n border-color: var(--ty-color-primary-strong);\n color: var(--ty-solid-primary-fg, white);\n box-shadow: 0 0 0 4px color-mix(in oklab, var(--ty-wizard-active-accent) 12%, transparent);\n}\n\n.step-circle[data-state=\"pending\"] {\n background: var(--ty-surface-elevated);\n border-color: var(--ty-border);\n color: var(--ty-color-neutral);\n}\n\n.step-circle[data-state=\"error\"] {\n background: var(--ty-wizard-error-accent);\n border-color: var(--ty-color-danger-strong);\n color: var(--ty-solid-danger-fg, white);\n box-shadow: 0 0 0 4px color-mix(in oklab, var(--ty-wizard-error-accent) 12%, transparent);\n}\n\n/* ===================================== */\n/* Step Text Container */\n/* ===================================== */\n\n.step-text {\n display: flex;\n flex-direction: column;\n gap: 2px;\n align-items: center;\n}\n\n/* ===================================== */\n/* Step Label */\n/* ===================================== */\n\n.step-label {\n font-size: var(--ty-font-sm, 14px);\n font-weight: var(--ty-font-semibold, 600);\n color: var(--ty-color-neutral);\n transition: color 200ms;\n}\n\n.step-indicator[aria-selected=\"true\"] .step-label {\n color: var(--ty-color-neutral-strong);\n}\n\n.step-indicator[aria-selected=\"false\"] .step-label {\n color: var(--ty-color-neutral);\n}\n\n/* ===================================== */\n/* Step Description */\n/* ===================================== */\n\n.step-description {\n font-size: var(--ty-font-xs, 12px);\n font-weight: var(--ty-font-normal, 400);\n color: var(--ty-color-neutral);\n transition: color 200ms;\n text-align: center;\n max-width: 120px;\n}\n\n.step-indicator[aria-selected=\"true\"] .step-description {\n color: var(--ty-color-neutral-bold);\n}\n\n/* ===================================== */\n/* Custom Indicator Content via Slots */\n/* ===================================== */\n\n::slotted([slot^=\"indicator-\"]) {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100%;\n}\n\n/* ===================================== */\n/* Panels Viewport */\n/* ===================================== */\n\n.panels-viewport {\n position: relative;\n flex: 1;\n overflow: hidden;\n min-height: 0;\n background: var(--ty-wizard-panels-bg);\n}\n\n/* ===================================== */\n/* Panels Wrapper (slides horizontally) */\n/* ===================================== */\n\n.panels-wrapper {\n display: flex;\n height: 100%;\n transition: transform var(--ty-wizard-transition-duration) var(--ty-wizard-transition-easing);\n will-change: transform;\n}\n\n/* ===================================== */\n/* Slotted Step Panels */\n/* ===================================== */\n\n::slotted(ty-step) {\n width: var(--ty-wizard-width, 100%);\n height: 100%;\n flex-shrink: 0;\n}\n\n/* ===================================== */\n/* Accessibility & Motion Preferences */\n/* ===================================== */\n\n@media (prefers-reduced-motion: reduce) {\n .panels-wrapper {\n transition-duration: 0ms !important;\n }\n\n .progress-overlay {\n transition-duration: 0ms !important;\n }\n\n .step-circle {\n transition-duration: 0ms !important;\n }\n\n .progress-line {\n transition-duration: 0ms !important;\n }\n}\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n";
|
|
24
|
+
export declare const wizardStyles = "\n/* ============================================================================\n Theming Tokens \u2014 see file header for the override surface.\n Every default chains back to the brand layer / global scale tokens.\n ============================================================================ */\n\n:host {\n display: block;\n width: var(--ty-wizard-width, 100%); /* set by width attribute \u2014 not a public token */\n height: var(--ty-wizard-height, 700px); /* set by height attribute \u2014 not a public token */\n box-sizing: border-box;\n\n /* State accents \u2014 the primary override surface. One variable retints the\n * matching circle background, border, and glow. */\n --ty-wizard-active-accent: var(--ty-color-primary);\n --ty-wizard-completed-accent: var(--ty-color-success);\n --ty-wizard-error-accent: var(--ty-color-danger);\n --ty-wizard-pending-accent: var(--ty-color-neutral);\n\n /* Container chrome \u2014 routes through global scales. Override --ty-radius-lg\n * or --ty-shadow-md app-wide and the wizard follows; override these locally\n * to give the wizard a distinct look. */\n --ty-wizard-bg: var(--ty-surface-floating);\n --ty-wizard-border: var(--ty-border);\n --ty-wizard-radius: var(--ty-radius-lg, 12px);\n --ty-wizard-shadow: var(--ty-shadow-md, 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1));\n\n /* Header strip */\n --ty-wizard-header-bg: var(--ty-surface-content);\n --ty-wizard-header-border: var(--ty-border-soft, var(--ty-border));\n --ty-wizard-header-padding: 24px 24px 16px;\n\n /* Progress line */\n --ty-wizard-progress-track: var(--ty-border);\n --ty-wizard-progress-fill: var(--ty-wizard-completed-accent);\n --ty-wizard-progress-height: 2px;\n\n /* Motion \u2014 routes through global motion tokens if defined. */\n --ty-wizard-transition-duration: var(--ty-transition-duration, 300ms);\n --ty-wizard-transition-easing: var(--ty-transition-easing, ease-in-out);\n\n /* Circle geometry */\n --ty-wizard-circle-size: 32px;\n --ty-wizard-circle-border-width: 2px;\n\n /* Panels viewport */\n --ty-wizard-panels-bg: var(--ty-surface-elevated);\n\n /* Focus */\n --ty-wizard-focus-outline: var(--ty-wizard-active-accent);\n}\n\n.wizard-container {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n position: relative;\n box-sizing: border-box;\n border-radius: var(--ty-wizard-radius);\n border: 1px solid var(--ty-wizard-border);\n background: var(--ty-wizard-bg);\n box-shadow: var(--ty-wizard-shadow);\n overflow: hidden;\n}\n\n/* ===================================== */\n/* Step Indicators Wrapper */\n/* ===================================== */\n\n.step-indicators-wrapper {\n display: flex;\n flex-direction: column;\n flex-shrink: 0;\n position: relative;\n padding: var(--ty-wizard-header-padding);\n border-bottom: 1px solid var(--ty-wizard-header-border);\n background: var(--ty-wizard-header-bg);\n}\n\n/* ===================================== */\n/* Progress Line (behind step circles) */\n/* ===================================== */\n\n.progress-line {\n position: absolute;\n /*\n * With equal-width indicators (flex: 1), each takes 100%/N of the width.\n * Circle centers sit at 50%/N from the left edge of each indicator.\n * Inset = 50% / step-count from each side keeps the line between circle centres.\n */\n left: calc(50% / var(--ty-wizard-step-count, 4));\n right: calc(50% / var(--ty-wizard-step-count, 4));\n top: calc(var(--ty-wizard-circle-size, 32px) / 2 - 1px);\n height: var(--ty-wizard-progress-height);\n background: var(--ty-wizard-progress-track);\n z-index: 0;\n pointer-events: none;\n transition: opacity var(--ty-wizard-transition-duration) var(--ty-wizard-transition-easing);\n}\n\n.progress-overlay {\n position: absolute;\n left: 0;\n top: 0;\n height: 100%;\n background: var(--ty-wizard-progress-fill);\n transition: width var(--ty-wizard-transition-duration) var(--ty-wizard-transition-easing);\n will-change: width;\n}\n\n/* ===================================== */\n/* Step Indicators Container */\n/* ===================================== */\n\n.step-indicators {\n display: flex;\n align-items: flex-start;\n position: relative;\n}\n\n/* ===================================== */\n/* Individual Step Indicator */\n/* ===================================== */\n\n.step-indicator {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n background: transparent;\n border: none;\n padding: 0;\n font: inherit;\n transition: opacity 200ms;\n flex: 1;\n min-width: 0;\n}\n\n.step-indicator[aria-disabled=\"true\"] {\n opacity: 0.4;\n cursor: not-allowed;\n pointer-events: none;\n}\n\n.step-indicator:focus-visible {\n outline: 2px solid var(--ty-wizard-focus-outline);\n outline-offset: 4px;\n border-radius: 50%;\n}\n\n/* ===================================== */\n/* Step Circle */\n/* ===================================== */\n\n.step-circle {\n width: var(--ty-wizard-circle-size);\n height: var(--ty-wizard-circle-size);\n border-radius: 50%;\n border: var(--ty-wizard-circle-border-width) solid;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n z-index: 10;\n transition: all var(--ty-wizard-transition-duration) var(--ty-wizard-transition-easing);\n box-sizing: border-box;\n flex-shrink: 0;\n}\n\n.step-circle[data-state=\"completed\"] {\n background: var(--ty-wizard-completed-accent);\n border-color: var(--ty-color-success-strong);\n /* Derived from the accent this circle actually paints, not from\n --ty-solid-success-fg: the two diverge in dark mode (--ty-solid-l\n dims solid fills by 0.25 L), which stranded white text at 3.5:1. */\n color: oklch(\n from var(--ty-wizard-completed-accent)\n clamp(0, (var(--ty-solid-fg-threshold, 0.6) - l) * 1000, 1) 0 0\n );\n box-shadow: 0 0 0 4px color-mix(in oklab, var(--ty-wizard-completed-accent) 12%, transparent);\n}\n\n.step-circle[data-state=\"active\"] {\n background: var(--ty-wizard-active-accent);\n border-color: var(--ty-color-primary-strong);\n color: oklch(\n from var(--ty-wizard-active-accent)\n clamp(0, (var(--ty-solid-fg-threshold, 0.6) - l) * 1000, 1) 0 0\n );\n box-shadow: 0 0 0 4px color-mix(in oklab, var(--ty-wizard-active-accent) 12%, transparent);\n}\n\n.step-circle[data-state=\"pending\"] {\n background: var(--ty-surface-elevated);\n border-color: var(--ty-border);\n color: var(--ty-color-neutral);\n}\n\n.step-circle[data-state=\"error\"] {\n background: var(--ty-wizard-error-accent);\n border-color: var(--ty-color-danger-strong);\n color: oklch(\n from var(--ty-wizard-error-accent)\n clamp(0, (var(--ty-solid-fg-threshold, 0.6) - l) * 1000, 1) 0 0\n );\n box-shadow: 0 0 0 4px color-mix(in oklab, var(--ty-wizard-error-accent) 12%, transparent);\n}\n\n/* ===================================== */\n/* Step Text Container */\n/* ===================================== */\n\n.step-text {\n display: flex;\n flex-direction: column;\n gap: 2px;\n align-items: center;\n}\n\n/* ===================================== */\n/* Step Label */\n/* ===================================== */\n\n.step-label {\n font-size: var(--ty-font-sm, 14px);\n font-weight: var(--ty-font-semibold, 600);\n color: var(--ty-color-neutral);\n transition: color 200ms;\n}\n\n.step-indicator[aria-selected=\"true\"] .step-label {\n color: var(--ty-color-neutral-strong);\n}\n\n.step-indicator[aria-selected=\"false\"] .step-label {\n color: var(--ty-color-neutral);\n}\n\n/* ===================================== */\n/* Step Description */\n/* ===================================== */\n\n.step-description {\n font-size: var(--ty-font-xs, 12px);\n font-weight: var(--ty-font-normal, 400);\n color: var(--ty-color-neutral);\n transition: color 200ms;\n text-align: center;\n max-width: 120px;\n}\n\n.step-indicator[aria-selected=\"true\"] .step-description {\n color: var(--ty-color-neutral-bold);\n}\n\n/* ===================================== */\n/* Custom Indicator Content via Slots */\n/* ===================================== */\n\n::slotted([slot^=\"indicator-\"]) {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100%;\n}\n\n/* ===================================== */\n/* Panels Viewport */\n/* ===================================== */\n\n.panels-viewport {\n position: relative;\n flex: 1;\n overflow: hidden;\n min-height: 0;\n background: var(--ty-wizard-panels-bg);\n}\n\n/* ===================================== */\n/* Panels Wrapper (slides horizontally) */\n/* ===================================== */\n\n.panels-wrapper {\n display: flex;\n height: 100%;\n transition: transform var(--ty-wizard-transition-duration) var(--ty-wizard-transition-easing);\n will-change: transform;\n}\n\n/* ===================================== */\n/* Slotted Step Panels */\n/* ===================================== */\n\n::slotted(ty-step) {\n width: var(--ty-wizard-width, 100%);\n height: 100%;\n flex-shrink: 0;\n}\n\n/* ===================================== */\n/* Accessibility & Motion Preferences */\n/* ===================================== */\n\n@media (prefers-reduced-motion: reduce) {\n .panels-wrapper {\n transition-duration: 0ms !important;\n }\n\n .progress-overlay {\n transition-duration: 0ms !important;\n }\n\n .step-circle {\n transition-duration: 0ms !important;\n }\n\n .progress-line {\n transition-duration: 0ms !important;\n }\n}\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n";
|
|
25
25
|
//# sourceMappingURL=wizard.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wizard.d.ts","sourceRoot":"","sources":["../../src/styles/wizard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,eAAO,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"wizard.d.ts","sourceRoot":"","sources":["../../src/styles/wizard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,eAAO,MAAM,YAAY,gyTA+UxB,CAAC"}
|