@ethlete/core 5.0.0-next.6 → 5.0.0-next.8
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/CHANGELOG.md +12 -0
- package/fesm2022/ethlete-core.mjs +461 -49
- package/fesm2022/ethlete-core.mjs.map +1 -1
- package/generators/generators.json +9 -4
- package/generators/migrate-to-v5/color-naming.js +173 -0
- package/generators/migrate-to-v5/migration.js +6 -0
- package/generators/migrate-to-v5/schema.json +5 -0
- package/generators/{tailwind-4-theme → tailwind-4-color-theme}/generator.js +37 -13
- package/generators/{tailwind-4-theme → tailwind-4-color-theme}/schema.json +1 -1
- package/generators/tailwind-4-surface-theme/generator.js +267 -0
- package/generators/tailwind-4-surface-theme/schema.json +32 -0
- package/package.json +1 -1
- package/types/ethlete-core.d.ts +201 -29
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { InjectionToken, inject, ElementRef, Directive, assertInInjectionContext, DestroyRef, TemplateRef, QueryList, NgZone, signal, isSignal, untracked, DOCUMENT, linkedSignal, isDevMode, computed, afterNextRender, effect, Injector, booleanAttribute, numberAttribute, runInInjectionContext, RendererStyleFlags2, PLATFORM_ID, ApplicationRef, RendererFactory2, model, ViewContainerRef, input, output, Pipe, ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { InjectionToken, inject, ElementRef, Directive, assertInInjectionContext, DestroyRef, TemplateRef, QueryList, NgZone, signal, isSignal, untracked, DOCUMENT, linkedSignal, isDevMode, computed, afterNextRender, effect, Injector, booleanAttribute, numberAttribute, runInInjectionContext, RendererStyleFlags2, PLATFORM_ID, ApplicationRef, RendererFactory2, EnvironmentInjector, createComponent, model, ViewContainerRef, input, output, Pipe, ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
3
|
import { takeUntilDestroyed, toSignal, toObservable, outputFromObservable } from '@angular/core/rxjs-interop';
|
|
4
|
-
import { Subject, BehaviorSubject, debounceTime, combineLatest, map, merge, fromEvent, filter, tap, switchMap, startWith, of, timer, takeUntil, pairwise, distinctUntilChanged, take, Observable } from 'rxjs';
|
|
4
|
+
import { Subject, BehaviorSubject, debounceTime, combineLatest, map, merge, fromEvent, filter, tap, switchMap, startWith, of, timer, takeUntil, pairwise, distinctUntilChanged, take, Observable, concatMap, EMPTY, concat, defer, exhaustMap, share } from 'rxjs';
|
|
5
5
|
import { FormGroup, FormArray, FormControl } from '@angular/forms';
|
|
6
6
|
import { SIGNAL, signalSetFn } from '@angular/core/primitives/signals';
|
|
7
7
|
import { BreakpointObserver } from '@angular/cdk/layout';
|
|
8
8
|
import { coerceElement } from '@angular/cdk/coercion';
|
|
9
|
-
import {
|
|
9
|
+
import { DOCUMENT as DOCUMENT$1, isPlatformBrowser } from '@angular/common';
|
|
10
10
|
import { Router, NavigationEnd, NavigationSkipped } from '@angular/router';
|
|
11
11
|
import { Overlay } from '@angular/cdk/overlay';
|
|
12
12
|
import { ComponentPortal } from '@angular/cdk/portal';
|
|
@@ -996,6 +996,31 @@ const signalElementDimensions = (el) => {
|
|
|
996
996
|
});
|
|
997
997
|
};
|
|
998
998
|
const signalHostElementDimensions = () => signalElementDimensions(inject(ElementRef));
|
|
999
|
+
const injectViewportSize = () => {
|
|
1000
|
+
const document = inject(DOCUMENT$1);
|
|
1001
|
+
const zone = inject(NgZone);
|
|
1002
|
+
const destroyRef = inject(DestroyRef);
|
|
1003
|
+
const getSize = () => {
|
|
1004
|
+
const vv = document.defaultView?.visualViewport;
|
|
1005
|
+
if (vv)
|
|
1006
|
+
return { width: vv.width, height: vv.height };
|
|
1007
|
+
const win = document.defaultView;
|
|
1008
|
+
return { width: win?.innerWidth ?? 0, height: win?.innerHeight ?? 0 };
|
|
1009
|
+
};
|
|
1010
|
+
const size = signal(getSize(), ...(ngDevMode ? [{ debugName: "size" }] : []));
|
|
1011
|
+
const onResize = () => zone.run(() => size.set(getSize()));
|
|
1012
|
+
const vv = document.defaultView?.visualViewport;
|
|
1013
|
+
if (vv) {
|
|
1014
|
+
vv.addEventListener('resize', onResize);
|
|
1015
|
+
destroyRef.onDestroy(() => vv.removeEventListener('resize', onResize));
|
|
1016
|
+
}
|
|
1017
|
+
else {
|
|
1018
|
+
const win = document.defaultView;
|
|
1019
|
+
win?.addEventListener('resize', onResize);
|
|
1020
|
+
destroyRef.onDestroy(() => win?.removeEventListener('resize', onResize));
|
|
1021
|
+
}
|
|
1022
|
+
return size;
|
|
1023
|
+
};
|
|
999
1024
|
|
|
1000
1025
|
const previousSignalValue = (signal) => {
|
|
1001
1026
|
const obs = toObservable(signal).pipe(pairwise(), map(([prev]) => prev));
|
|
@@ -2578,10 +2603,9 @@ const getObjectProperty = (obj, prop) => {
|
|
|
2578
2603
|
|
|
2579
2604
|
const RUNTIME_ERROR_NO_DATA = '__ET_NO_DATA__';
|
|
2580
2605
|
class RuntimeError extends Error {
|
|
2581
|
-
constructor(code, message,
|
|
2582
|
-
super(formatRuntimeError(code, message
|
|
2606
|
+
constructor(code, message, data = RUNTIME_ERROR_NO_DATA) {
|
|
2607
|
+
super(formatRuntimeError(code, message));
|
|
2583
2608
|
this.code = code;
|
|
2584
|
-
this.devOnly = devOnly;
|
|
2585
2609
|
this.data = data;
|
|
2586
2610
|
if (data !== RUNTIME_ERROR_NO_DATA) {
|
|
2587
2611
|
try {
|
|
@@ -2598,12 +2622,11 @@ class RuntimeError extends Error {
|
|
|
2598
2622
|
}
|
|
2599
2623
|
}
|
|
2600
2624
|
}
|
|
2601
|
-
function formatRuntimeError(code, message
|
|
2625
|
+
function formatRuntimeError(code, message) {
|
|
2602
2626
|
// prefix code with zeros if it's less than 100
|
|
2603
2627
|
const codeWithZeros = code < 10 ? `00${code}` : code < 100 ? `0${code}` : code;
|
|
2604
2628
|
const fullCode = `ET${codeWithZeros}`;
|
|
2605
|
-
|
|
2606
|
-
return `${devOnlyText}${fullCode}${message ? ': ' + message : ''}`;
|
|
2629
|
+
return `${fullCode}${message ? ': ' + message : ''}`;
|
|
2607
2630
|
}
|
|
2608
2631
|
|
|
2609
2632
|
const [, injectAngularRootElement] = createRootProvider(() => {
|
|
@@ -2818,6 +2841,20 @@ const [provideRenderer, injectRenderer] = createRootProvider(() => {
|
|
|
2818
2841
|
setAttribute(element, `data-${key}`, value);
|
|
2819
2842
|
});
|
|
2820
2843
|
};
|
|
2844
|
+
const moveBefore = (config) => {
|
|
2845
|
+
const { newParent, child, before = null } = config;
|
|
2846
|
+
if ('moveBefore' in newParent) {
|
|
2847
|
+
try {
|
|
2848
|
+
newParent.moveBefore(child, before);
|
|
2849
|
+
}
|
|
2850
|
+
catch {
|
|
2851
|
+
newParent.insertBefore(child, before);
|
|
2852
|
+
}
|
|
2853
|
+
}
|
|
2854
|
+
else {
|
|
2855
|
+
newParent.insertBefore(child, before);
|
|
2856
|
+
}
|
|
2857
|
+
};
|
|
2821
2858
|
return {
|
|
2822
2859
|
addClass,
|
|
2823
2860
|
removeClass,
|
|
@@ -2849,10 +2886,63 @@ const [provideRenderer, injectRenderer] = createRootProvider(() => {
|
|
|
2849
2886
|
setDataAttributes,
|
|
2850
2887
|
setCssProperty,
|
|
2851
2888
|
setCssProperties,
|
|
2889
|
+
moveBefore,
|
|
2852
2890
|
renderer,
|
|
2853
2891
|
};
|
|
2854
2892
|
}, { name: 'Angular Renderer' });
|
|
2855
2893
|
|
|
2894
|
+
const [provideStyleManager, injectStyleManager] = createRootProvider(() => {
|
|
2895
|
+
const appRef = inject(ApplicationRef);
|
|
2896
|
+
const destroyRef = inject(DestroyRef);
|
|
2897
|
+
const document = inject(DOCUMENT);
|
|
2898
|
+
const envInjector = inject(EnvironmentInjector);
|
|
2899
|
+
const renderer = injectRenderer();
|
|
2900
|
+
let container = null;
|
|
2901
|
+
const mountedComponents = new Map();
|
|
2902
|
+
const getContainerParent = () => {
|
|
2903
|
+
return document.body ?? document.documentElement;
|
|
2904
|
+
};
|
|
2905
|
+
const ensureContainer = () => {
|
|
2906
|
+
if (container) {
|
|
2907
|
+
return container;
|
|
2908
|
+
}
|
|
2909
|
+
const nextContainer = renderer.createElement('div');
|
|
2910
|
+
renderer.addClass(nextContainer, 'et-style-manager');
|
|
2911
|
+
renderer.setAttribute(nextContainer, 'aria-hidden', 'true');
|
|
2912
|
+
renderer.setStyle(nextContainer, { display: 'none' });
|
|
2913
|
+
renderer.appendChild(getContainerParent(), nextContainer);
|
|
2914
|
+
container = nextContainer;
|
|
2915
|
+
return nextContainer;
|
|
2916
|
+
};
|
|
2917
|
+
const mount = (component) => {
|
|
2918
|
+
const existingComponent = mountedComponents.get(component);
|
|
2919
|
+
if (existingComponent) {
|
|
2920
|
+
return existingComponent;
|
|
2921
|
+
}
|
|
2922
|
+
const componentRef = createComponent(component, { environmentInjector: envInjector });
|
|
2923
|
+
appRef.attachView(componentRef.hostView);
|
|
2924
|
+
renderer.appendChild(ensureContainer(), componentRef.location.nativeElement);
|
|
2925
|
+
mountedComponents.set(component, componentRef);
|
|
2926
|
+
return componentRef;
|
|
2927
|
+
};
|
|
2928
|
+
destroyRef.onDestroy(() => {
|
|
2929
|
+
mountedComponents.forEach((componentRef) => {
|
|
2930
|
+
appRef.detachView(componentRef.hostView);
|
|
2931
|
+
componentRef.destroy();
|
|
2932
|
+
});
|
|
2933
|
+
mountedComponents.clear();
|
|
2934
|
+
if (!container) {
|
|
2935
|
+
return;
|
|
2936
|
+
}
|
|
2937
|
+
const parent = renderer.parentNode(container);
|
|
2938
|
+
if (parent) {
|
|
2939
|
+
renderer.removeChild(parent, container);
|
|
2940
|
+
}
|
|
2941
|
+
container = null;
|
|
2942
|
+
});
|
|
2943
|
+
return { mount };
|
|
2944
|
+
}, { name: 'StyleManager' });
|
|
2945
|
+
|
|
2856
2946
|
const createUserConsentProvider = (options) => ({
|
|
2857
2947
|
provide: options.for,
|
|
2858
2948
|
useFactory: () => ({
|
|
@@ -3267,7 +3357,7 @@ class AnimatedOverlayDirective {
|
|
|
3267
3357
|
this.unmountSubscription?.unsubscribe();
|
|
3268
3358
|
this.unmountSubscription = null;
|
|
3269
3359
|
this.applyComponentData(config.data);
|
|
3270
|
-
this.
|
|
3360
|
+
this.applyColorProvider(config.colorProvider);
|
|
3271
3361
|
const lifecycle = this.componentRef.instance.animatedLifecycle();
|
|
3272
3362
|
if (lifecycle) {
|
|
3273
3363
|
this.state.set('mounting');
|
|
@@ -3290,7 +3380,7 @@ class AnimatedOverlayDirective {
|
|
|
3290
3380
|
}
|
|
3291
3381
|
return;
|
|
3292
3382
|
}
|
|
3293
|
-
const { component, providers, data,
|
|
3383
|
+
const { component, providers, data, colorProvider } = config;
|
|
3294
3384
|
this.state.set('mounting');
|
|
3295
3385
|
this.beforeOpened$.next();
|
|
3296
3386
|
const injector = Injector.create({
|
|
@@ -3301,7 +3391,7 @@ class AnimatedOverlayDirective {
|
|
|
3301
3391
|
this.portal = new ComponentPortal(component, this.viewContainerRef, injector);
|
|
3302
3392
|
this.componentRef = this.overlayRef.attach(this.portal);
|
|
3303
3393
|
this.applyComponentData(data);
|
|
3304
|
-
this.
|
|
3394
|
+
this.applyColorProvider(colorProvider);
|
|
3305
3395
|
this.updateOverlaySize();
|
|
3306
3396
|
this.setupFloatingUI();
|
|
3307
3397
|
return this.componentRef.instance;
|
|
@@ -3347,10 +3437,10 @@ class AnimatedOverlayDirective {
|
|
|
3347
3437
|
Object.assign(this.componentRef.instance, data);
|
|
3348
3438
|
this.componentRef.changeDetectorRef.markForCheck();
|
|
3349
3439
|
}
|
|
3350
|
-
|
|
3351
|
-
if (!this.componentRef || !
|
|
3440
|
+
applyColorProvider(colorProvider) {
|
|
3441
|
+
if (!this.componentRef || !colorProvider)
|
|
3352
3442
|
return;
|
|
3353
|
-
this.componentRef.instance.
|
|
3443
|
+
this.componentRef.instance.setColorFromProvider(colorProvider);
|
|
3354
3444
|
}
|
|
3355
3445
|
updateOverlaySize() {
|
|
3356
3446
|
if (!this.overlayRef || !this.mirrorWidth())
|
|
@@ -3730,6 +3820,61 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
|
|
|
3730
3820
|
}]
|
|
3731
3821
|
}], ctorParameters: () => [] });
|
|
3732
3822
|
|
|
3823
|
+
const setupDragObservable = (startEvent, el, commitThreshold) => {
|
|
3824
|
+
const { pointerId, clientX: startX, clientY: startY } = startEvent;
|
|
3825
|
+
const end$ = merge(fromEvent(document, 'pointerup'), fromEvent(document, 'pointercancel')).pipe(filter((e) => e.pointerId === pointerId), take(1));
|
|
3826
|
+
let lastX = startX;
|
|
3827
|
+
let lastY = startY;
|
|
3828
|
+
let committed = false;
|
|
3829
|
+
const moves$ = fromEvent(document, 'pointermove').pipe(filter((e) => e.pointerId === pointerId), concatMap((e) => {
|
|
3830
|
+
if (!committed) {
|
|
3831
|
+
if (Math.abs(e.clientX - startX) < commitThreshold && Math.abs(e.clientY - startY) < commitThreshold) {
|
|
3832
|
+
return EMPTY;
|
|
3833
|
+
}
|
|
3834
|
+
committed = true;
|
|
3835
|
+
el.setPointerCapture(pointerId);
|
|
3836
|
+
lastX = e.clientX;
|
|
3837
|
+
lastY = e.clientY;
|
|
3838
|
+
return of({ type: 'start' });
|
|
3839
|
+
}
|
|
3840
|
+
const stepX = e.clientX - lastX;
|
|
3841
|
+
const stepY = e.clientY - lastY;
|
|
3842
|
+
lastX = e.clientX;
|
|
3843
|
+
lastY = e.clientY;
|
|
3844
|
+
return of({ type: 'move', data: { stepX, stepY, clientX: e.clientX, clientY: e.clientY } });
|
|
3845
|
+
}), takeUntil(end$));
|
|
3846
|
+
return concat(moves$, defer(() => of(committed ? { type: 'end' } : { type: 'tapped' })));
|
|
3847
|
+
};
|
|
3848
|
+
class DragHandleDirective {
|
|
3849
|
+
constructor() {
|
|
3850
|
+
this.el = inject(ElementRef);
|
|
3851
|
+
this.commitThreshold = input(8, ...(ngDevMode ? [{ debugName: "commitThreshold" }] : []));
|
|
3852
|
+
this.disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : {}), transform: booleanAttribute });
|
|
3853
|
+
this.gestureStart$ = new Subject();
|
|
3854
|
+
this.gesture$ = this.gestureStart$.pipe(exhaustMap((event) => setupDragObservable(event, this.el.nativeElement, this.commitThreshold())), takeUntilDestroyed(), share());
|
|
3855
|
+
this.dragTapped = outputFromObservable(this.gesture$.pipe(filter((e) => e.type === 'tapped'), map(() => undefined)));
|
|
3856
|
+
this.dragStarted = outputFromObservable(this.gesture$.pipe(filter((e) => e.type === 'start'), map(() => undefined)));
|
|
3857
|
+
this.dragMoved = outputFromObservable(this.gesture$.pipe(filter((e) => e.type === 'move'), map((e) => e.data)));
|
|
3858
|
+
this.dragEnded = outputFromObservable(this.gesture$.pipe(filter((e) => e.type === 'end'), map(() => undefined)));
|
|
3859
|
+
this.isDragging = toSignal(this.gesture$.pipe(map((e) => e.type === 'start' || e.type === 'move'), distinctUntilChanged()), { initialValue: false });
|
|
3860
|
+
applyHostListener('pointerdown', (e) => this.startGesture(e));
|
|
3861
|
+
}
|
|
3862
|
+
startGesture(event) {
|
|
3863
|
+
if (event.button !== 0 || this.disabled())
|
|
3864
|
+
return;
|
|
3865
|
+
event.stopPropagation();
|
|
3866
|
+
this.gestureStart$.next(event);
|
|
3867
|
+
}
|
|
3868
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: DragHandleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
3869
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.1", type: DragHandleDirective, isStandalone: true, selector: "[etDragHandle]", inputs: { commitThreshold: { classPropertyName: "commitThreshold", publicName: "commitThreshold", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dragTapped: "dragTapped", dragStarted: "dragStarted", dragMoved: "dragMoved", dragEnded: "dragEnded" }, ngImport: i0 }); }
|
|
3870
|
+
}
|
|
3871
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: DragHandleDirective, decorators: [{
|
|
3872
|
+
type: Directive,
|
|
3873
|
+
args: [{
|
|
3874
|
+
selector: '[etDragHandle]',
|
|
3875
|
+
}]
|
|
3876
|
+
}], ctorParameters: () => [], propDecorators: { commitThreshold: [{ type: i0.Input, args: [{ isSignal: true, alias: "commitThreshold", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], dragTapped: [{ type: i0.Output, args: ["dragTapped"] }], dragStarted: [{ type: i0.Output, args: ["dragStarted"] }], dragMoved: [{ type: i0.Output, args: ["dragMoved"] }], dragEnded: [{ type: i0.Output, args: ["dragEnded"] }] } });
|
|
3877
|
+
|
|
3733
3878
|
class NormalizeGameResultTypePipe {
|
|
3734
3879
|
constructor() {
|
|
3735
3880
|
this.transform = normalizeGameResultType;
|
|
@@ -4543,6 +4688,76 @@ const templateComputed = (templateSignal) => computed(() => {
|
|
|
4543
4688
|
};
|
|
4544
4689
|
});
|
|
4545
4690
|
|
|
4691
|
+
const EDGE_CURSORS = {
|
|
4692
|
+
n: 'ns-resize',
|
|
4693
|
+
s: 'ns-resize',
|
|
4694
|
+
e: 'ew-resize',
|
|
4695
|
+
w: 'ew-resize',
|
|
4696
|
+
ne: 'nesw-resize',
|
|
4697
|
+
sw: 'nesw-resize',
|
|
4698
|
+
nw: 'nwse-resize',
|
|
4699
|
+
se: 'nwse-resize',
|
|
4700
|
+
};
|
|
4701
|
+
const setupResizeObservable = (startEvent, edge) => {
|
|
4702
|
+
const pointerId = startEvent.pointerId;
|
|
4703
|
+
const startX = startEvent.clientX;
|
|
4704
|
+
const startY = startEvent.clientY;
|
|
4705
|
+
const end$ = merge(fromEvent(document, 'pointerup'), fromEvent(document, 'pointercancel')).pipe(filter((e) => e.pointerId === pointerId), take(1));
|
|
4706
|
+
return concat(of({ type: 'start', edge }), fromEvent(document, 'pointermove').pipe(filter((e) => e.pointerId === pointerId), map((e) => ({ type: 'move', data: { edge, dx: e.clientX - startX, dy: e.clientY - startY } })), takeUntil(end$)), of({ type: 'end' }));
|
|
4707
|
+
};
|
|
4708
|
+
class ResizeHandlesComponent {
|
|
4709
|
+
constructor() {
|
|
4710
|
+
this.edges = input(['n', 's', 'e', 'w', 'ne', 'nw', 'se', 'sw'], ...(ngDevMode ? [{ debugName: "edges" }] : []));
|
|
4711
|
+
this.disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : {}), transform: booleanAttribute });
|
|
4712
|
+
this.gestureStart$ = new Subject();
|
|
4713
|
+
this.gesture$ = this.gestureStart$.pipe(exhaustMap(({ event, edge }) => setupResizeObservable(event, edge)), takeUntilDestroyed(), share());
|
|
4714
|
+
this.resizeStarted = outputFromObservable(this.gesture$.pipe(filter((e) => e.type === 'start'), map((e) => e.edge)));
|
|
4715
|
+
this.resizeMoved = outputFromObservable(this.gesture$.pipe(filter((e) => e.type === 'move'), map((e) => e.data)));
|
|
4716
|
+
this.resizeEnded = outputFromObservable(this.gesture$.pipe(filter((e) => e.type === 'end'), map(() => undefined)));
|
|
4717
|
+
this.isResizing = toSignal(this.gesture$.pipe(map((e) => e.type !== 'end'), distinctUntilChanged()), { initialValue: false });
|
|
4718
|
+
this.activeEdge = toSignal(this.gesture$.pipe(map((e) => {
|
|
4719
|
+
if (e.type === 'end')
|
|
4720
|
+
return null;
|
|
4721
|
+
if (e.type === 'start')
|
|
4722
|
+
return e.edge;
|
|
4723
|
+
return e.data.edge;
|
|
4724
|
+
}), distinctUntilChanged()), { initialValue: null });
|
|
4725
|
+
this.edgeCursors = EDGE_CURSORS;
|
|
4726
|
+
}
|
|
4727
|
+
startResizeGesture(event, edge) {
|
|
4728
|
+
if (event.button !== 0 || this.disabled())
|
|
4729
|
+
return;
|
|
4730
|
+
event.stopPropagation();
|
|
4731
|
+
this.gestureStart$.next({ event, edge });
|
|
4732
|
+
}
|
|
4733
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: ResizeHandlesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4734
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: ResizeHandlesComponent, isStandalone: true, selector: "et-resize-handles", inputs: { edges: { classPropertyName: "edges", publicName: "edges", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { resizeStarted: "resizeStarted", resizeMoved: "resizeMoved", resizeEnded: "resizeEnded" }, host: { properties: { "attr.inert": "disabled() ? \"\" : null", "attr.data-active-edge": "activeEdge()" }, classAttribute: "et-resize-handles" }, ngImport: i0, template: `
|
|
4735
|
+
@for (edge of edges(); track edge) {
|
|
4736
|
+
<div
|
|
4737
|
+
[style.cursor]="edgeCursors[edge]"
|
|
4738
|
+
(pointerdown)="startResizeGesture($event, edge)"
|
|
4739
|
+
class="et-resize-handle et-resize-handle--{{ edge }}"
|
|
4740
|
+
></div>
|
|
4741
|
+
}
|
|
4742
|
+
`, isInline: true, styles: ["@property --et-resize-handles-z-index{syntax: \"<integer>\"; inherits: true; initial-value: 10;}@property --et-resize-handles-edge-size{syntax: \"<length>\"; inherits: true; initial-value: 6px;}@property --et-resize-handles-corner-size{syntax: \"<length>\"; inherits: true; initial-value: 12px;}@property --et-resize-handles-edge-inset{syntax: \"<length>\"; inherits: true; initial-value: 8px;}@property --et-resize-handles-side-top{syntax: \"<length>\"; inherits: true; initial-value: 0px;}@property --et-resize-handles-side-bottom{syntax: \"<length>\"; inherits: true; initial-value: 8px;}@property --et-resize-handles-touch-edge-size{syntax: \"<length>\"; inherits: true; initial-value: 20px;}@property --et-resize-handles-touch-corner-size{syntax: \"<length>\"; inherits: true; initial-value: 28px;}et-resize-handles{position:absolute;inset:0;pointer-events:none}.et-resize-handle{position:absolute;z-index:var(--et-resize-handles-z-index);touch-action:none;pointer-events:auto}.et-resize-handle--n{left:var(--et-resize-handles-edge-inset);right:var(--et-resize-handles-edge-inset);height:var(--et-resize-handles-edge-size);top:0}.et-resize-handle--s{left:var(--et-resize-handles-edge-inset);right:var(--et-resize-handles-edge-inset);height:var(--et-resize-handles-edge-size);bottom:0}.et-resize-handle--e,.et-resize-handle--w{top:var(--et-resize-handles-side-top);bottom:var(--et-resize-handles-side-bottom);width:var(--et-resize-handles-edge-size)}.et-resize-handle--e{right:0}.et-resize-handle--w{left:0}.et-resize-handle--ne,.et-resize-handle--nw{top:0;width:var(--et-resize-handles-corner-size);height:var(--et-resize-handles-corner-size)}.et-resize-handle--ne{right:0}.et-resize-handle--nw{left:0}.et-resize-handle--se,.et-resize-handle--sw{bottom:0;width:var(--et-resize-handles-corner-size);height:var(--et-resize-handles-corner-size)}.et-resize-handle--se{right:0}.et-resize-handle--sw{left:0}@media(hover:none){.et-resize-handle--n,.et-resize-handle--s{height:var(--et-resize-handles-touch-edge-size)}.et-resize-handle--e,.et-resize-handle--w{width:var(--et-resize-handles-touch-edge-size)}.et-resize-handle--ne,.et-resize-handle--nw,.et-resize-handle--se,.et-resize-handle--sw{width:var(--et-resize-handles-touch-corner-size);height:var(--et-resize-handles-touch-corner-size)}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
4743
|
+
}
|
|
4744
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: ResizeHandlesComponent, decorators: [{
|
|
4745
|
+
type: Component,
|
|
4746
|
+
args: [{ selector: 'et-resize-handles', template: `
|
|
4747
|
+
@for (edge of edges(); track edge) {
|
|
4748
|
+
<div
|
|
4749
|
+
[style.cursor]="edgeCursors[edge]"
|
|
4750
|
+
(pointerdown)="startResizeGesture($event, edge)"
|
|
4751
|
+
class="et-resize-handle et-resize-handle--{{ edge }}"
|
|
4752
|
+
></div>
|
|
4753
|
+
}
|
|
4754
|
+
`, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
|
|
4755
|
+
class: 'et-resize-handles',
|
|
4756
|
+
'[attr.inert]': 'disabled() ? "" : null',
|
|
4757
|
+
'[attr.data-active-edge]': 'activeEdge()',
|
|
4758
|
+
}, styles: ["@property --et-resize-handles-z-index{syntax: \"<integer>\"; inherits: true; initial-value: 10;}@property --et-resize-handles-edge-size{syntax: \"<length>\"; inherits: true; initial-value: 6px;}@property --et-resize-handles-corner-size{syntax: \"<length>\"; inherits: true; initial-value: 12px;}@property --et-resize-handles-edge-inset{syntax: \"<length>\"; inherits: true; initial-value: 8px;}@property --et-resize-handles-side-top{syntax: \"<length>\"; inherits: true; initial-value: 0px;}@property --et-resize-handles-side-bottom{syntax: \"<length>\"; inherits: true; initial-value: 8px;}@property --et-resize-handles-touch-edge-size{syntax: \"<length>\"; inherits: true; initial-value: 20px;}@property --et-resize-handles-touch-corner-size{syntax: \"<length>\"; inherits: true; initial-value: 28px;}et-resize-handles{position:absolute;inset:0;pointer-events:none}.et-resize-handle{position:absolute;z-index:var(--et-resize-handles-z-index);touch-action:none;pointer-events:auto}.et-resize-handle--n{left:var(--et-resize-handles-edge-inset);right:var(--et-resize-handles-edge-inset);height:var(--et-resize-handles-edge-size);top:0}.et-resize-handle--s{left:var(--et-resize-handles-edge-inset);right:var(--et-resize-handles-edge-inset);height:var(--et-resize-handles-edge-size);bottom:0}.et-resize-handle--e,.et-resize-handle--w{top:var(--et-resize-handles-side-top);bottom:var(--et-resize-handles-side-bottom);width:var(--et-resize-handles-edge-size)}.et-resize-handle--e{right:0}.et-resize-handle--w{left:0}.et-resize-handle--ne,.et-resize-handle--nw{top:0;width:var(--et-resize-handles-corner-size);height:var(--et-resize-handles-corner-size)}.et-resize-handle--ne{right:0}.et-resize-handle--nw{left:0}.et-resize-handle--se,.et-resize-handle--sw{bottom:0;width:var(--et-resize-handles-corner-size);height:var(--et-resize-handles-corner-size)}.et-resize-handle--se{right:0}.et-resize-handle--sw{left:0}@media(hover:none){.et-resize-handle--n,.et-resize-handle--s{height:var(--et-resize-handles-touch-edge-size)}.et-resize-handle--e,.et-resize-handle--w{width:var(--et-resize-handles-touch-edge-size)}.et-resize-handle--ne,.et-resize-handle--nw,.et-resize-handle--se,.et-resize-handle--sw{width:var(--et-resize-handles-touch-corner-size);height:var(--et-resize-handles-touch-corner-size)}}\n"] }]
|
|
4759
|
+
}], propDecorators: { edges: [{ type: i0.Input, args: [{ isSignal: true, alias: "edges", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], resizeStarted: [{ type: i0.Output, args: ["resizeStarted"] }], resizeMoved: [{ type: i0.Output, args: ["resizeMoved"] }], resizeEnded: [{ type: i0.Output, args: ["resizeEnded"] }] } });
|
|
4760
|
+
|
|
4546
4761
|
const applyHeadBinding = (binding, applyFn, removeFn, isValid) => {
|
|
4547
4762
|
const destroyRef = inject(DestroyRef);
|
|
4548
4763
|
const signalBinding = isSignal(binding) ? binding : signal(binding);
|
|
@@ -5424,22 +5639,56 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
|
|
|
5424
5639
|
}]
|
|
5425
5640
|
}], propDecorators: { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: false }] }] } });
|
|
5426
5641
|
|
|
5427
|
-
const
|
|
5642
|
+
const createCssColorThemeName = (name) => name.replace(/([A-Z])/g, (g) => `-${g[0].toLowerCase()}`);
|
|
5428
5643
|
const [ɵProvideColorThemes, injectColorThemes] = createStaticProvider(undefined, {
|
|
5429
5644
|
name: 'Color Themes',
|
|
5430
5645
|
});
|
|
5431
|
-
const [
|
|
5646
|
+
const [ɵProvideColorThemesPrefix, injectColorThemesPrefix] = createStaticProvider('et', {
|
|
5647
|
+
name: 'Themes Prefix',
|
|
5648
|
+
});
|
|
5432
5649
|
const provideColorThemesWithTailwind4 = (themes, prefix = 'et') => [
|
|
5433
5650
|
ɵProvideColorThemes(themes.map((theme) => theme.name)),
|
|
5434
|
-
|
|
5651
|
+
ɵProvideColorThemesPrefix(prefix),
|
|
5435
5652
|
];
|
|
5436
5653
|
|
|
5654
|
+
class ColoredStylesComponent {
|
|
5655
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: ColoredStylesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5656
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: ColoredStylesComponent, isStandalone: true, selector: "et-colored-styles", ngImport: i0, template: '', isInline: true, styles: [":where(.et-colored){--et-theme-color-primary-rgb: var(--et-color-primary);--et-theme-color-primary-opacity: 1;--et-theme-color-primary-solid: rgb(var(--et-theme-color-primary-rgb));--et-theme-color-primary: rgb(var(--et-theme-color-primary-rgb) / var(--et-theme-color-primary-opacity));--et-theme-color-on-primary-rgb: var(--et-color-on-primary);--et-theme-color-on-primary-opacity: 1;--et-theme-color-on-primary-solid: rgb( var(--et-theme-color-on-primary-rgb) / var(--et-theme-color-on-primary-opacity) );--et-theme-color-on-primary: rgb(var(--et-theme-color-on-primary-rgb) / var(--et-theme-color-on-primary-opacity));--et-theme-color-ink-rgb: var(--et-color-primary-ink, var(--et-color-primary));--et-theme-color-ink-opacity: 1;--et-theme-color-ink-solid: rgb(var(--et-theme-color-ink-rgb) / var(--et-theme-color-ink-opacity));--et-theme-color-ink: rgb(var(--et-theme-color-ink-rgb) / var(--et-theme-color-ink-opacity))}:where(.et-colored:hover){--et-theme-color-primary-rgb: var(--et-color-primary-hover, var(--et-color-primary));--et-theme-color-on-primary-rgb: var(--et-color-on-primary-hover, var(--et-color-on-primary));--et-theme-color-ink-rgb: var( --et-color-primary-ink-hover, var(--et-color-primary-ink, var(--et-color-primary-hover, var(--et-color-primary))) )}:where(.et-colored:focus-visible){--et-theme-color-primary-rgb: var(--et-color-primary-focus, var(--et-color-primary-hover, var(--et-color-primary)));--et-theme-color-on-primary-rgb: var( --et-color-on-primary-focus, var(--et-color-on-primary-hover, var(--et-color-on-primary)) );--et-theme-color-ink-rgb: var( --et-color-primary-ink-focus, var( --et-color-primary-ink-hover, var(--et-color-primary-ink, var(--et-color-primary-focus, var(--et-color-primary-hover, var(--et-color-primary)))) ) )}:where(.et-colored:active){--et-theme-color-primary-rgb: var( --et-color-primary-active, var(--et-color-primary-focus, var(--et-color-primary-hover, var(--et-color-primary))) );--et-theme-color-on-primary-rgb: var( --et-color-on-primary-active, var(--et-color-on-primary-focus, var(--et-color-on-primary-hover, var(--et-color-on-primary))) );--et-theme-color-ink-rgb: var( --et-color-primary-ink-active, var( --et-color-primary-ink-focus, var( --et-color-primary-ink-hover, var( --et-color-primary-ink, var( --et-color-primary-active, var(--et-color-primary-focus, var(--et-color-primary-hover, var(--et-color-primary))) ) ) ) ) )}:where(.et-colored[disabled]),:where(.et-colored[aria-disabled=true]){--et-theme-color-primary-rgb: var( --et-color-primary-disabled, var( --et-color-primary-active, var(--et-color-primary-focus, var(--et-color-primary-hover, var(--et-color-primary))) ) );--et-theme-color-on-primary-rgb: var( --et-color-on-primary-disabled, var( --et-color-on-primary-active, var(--et-color-on-primary-focus, var(--et-color-on-primary-hover, var(--et-color-on-primary))) ) );--et-theme-color-ink-rgb: var( --et-color-primary-ink-disabled, var( --et-color-primary-ink-active, var( --et-color-primary-ink-focus, var( --et-color-primary-ink-hover, var( --et-color-primary-ink, var( --et-color-primary-disabled, var( --et-color-primary-active, var(--et-color-primary-focus, var(--et-color-primary-hover, var(--et-color-primary))) ) ) ) ) ) ) )}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
5657
|
+
}
|
|
5658
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: ColoredStylesComponent, decorators: [{
|
|
5659
|
+
type: Component,
|
|
5660
|
+
args: [{ selector: 'et-colored-styles', template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":where(.et-colored){--et-theme-color-primary-rgb: var(--et-color-primary);--et-theme-color-primary-opacity: 1;--et-theme-color-primary-solid: rgb(var(--et-theme-color-primary-rgb));--et-theme-color-primary: rgb(var(--et-theme-color-primary-rgb) / var(--et-theme-color-primary-opacity));--et-theme-color-on-primary-rgb: var(--et-color-on-primary);--et-theme-color-on-primary-opacity: 1;--et-theme-color-on-primary-solid: rgb( var(--et-theme-color-on-primary-rgb) / var(--et-theme-color-on-primary-opacity) );--et-theme-color-on-primary: rgb(var(--et-theme-color-on-primary-rgb) / var(--et-theme-color-on-primary-opacity));--et-theme-color-ink-rgb: var(--et-color-primary-ink, var(--et-color-primary));--et-theme-color-ink-opacity: 1;--et-theme-color-ink-solid: rgb(var(--et-theme-color-ink-rgb) / var(--et-theme-color-ink-opacity));--et-theme-color-ink: rgb(var(--et-theme-color-ink-rgb) / var(--et-theme-color-ink-opacity))}:where(.et-colored:hover){--et-theme-color-primary-rgb: var(--et-color-primary-hover, var(--et-color-primary));--et-theme-color-on-primary-rgb: var(--et-color-on-primary-hover, var(--et-color-on-primary));--et-theme-color-ink-rgb: var( --et-color-primary-ink-hover, var(--et-color-primary-ink, var(--et-color-primary-hover, var(--et-color-primary))) )}:where(.et-colored:focus-visible){--et-theme-color-primary-rgb: var(--et-color-primary-focus, var(--et-color-primary-hover, var(--et-color-primary)));--et-theme-color-on-primary-rgb: var( --et-color-on-primary-focus, var(--et-color-on-primary-hover, var(--et-color-on-primary)) );--et-theme-color-ink-rgb: var( --et-color-primary-ink-focus, var( --et-color-primary-ink-hover, var(--et-color-primary-ink, var(--et-color-primary-focus, var(--et-color-primary-hover, var(--et-color-primary)))) ) )}:where(.et-colored:active){--et-theme-color-primary-rgb: var( --et-color-primary-active, var(--et-color-primary-focus, var(--et-color-primary-hover, var(--et-color-primary))) );--et-theme-color-on-primary-rgb: var( --et-color-on-primary-active, var(--et-color-on-primary-focus, var(--et-color-on-primary-hover, var(--et-color-on-primary))) );--et-theme-color-ink-rgb: var( --et-color-primary-ink-active, var( --et-color-primary-ink-focus, var( --et-color-primary-ink-hover, var( --et-color-primary-ink, var( --et-color-primary-active, var(--et-color-primary-focus, var(--et-color-primary-hover, var(--et-color-primary))) ) ) ) ) )}:where(.et-colored[disabled]),:where(.et-colored[aria-disabled=true]){--et-theme-color-primary-rgb: var( --et-color-primary-disabled, var( --et-color-primary-active, var(--et-color-primary-focus, var(--et-color-primary-hover, var(--et-color-primary))) ) );--et-theme-color-on-primary-rgb: var( --et-color-on-primary-disabled, var( --et-color-on-primary-active, var(--et-color-on-primary-focus, var(--et-color-on-primary-hover, var(--et-color-on-primary))) ) );--et-theme-color-ink-rgb: var( --et-color-primary-ink-disabled, var( --et-color-primary-ink-active, var( --et-color-primary-ink-focus, var( --et-color-primary-ink-hover, var( --et-color-primary-ink, var( --et-color-primary-disabled, var( --et-color-primary-active, var(--et-color-primary-focus, var(--et-color-primary-hover, var(--et-color-primary))) ) ) ) ) ) ) )}\n"] }]
|
|
5661
|
+
}] });
|
|
5662
|
+
|
|
5663
|
+
class ColoredDirective {
|
|
5664
|
+
constructor() {
|
|
5665
|
+
this.styleManager = injectStyleManager();
|
|
5666
|
+
this.styleManager.mount(ColoredStylesComponent);
|
|
5667
|
+
}
|
|
5668
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: ColoredDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
5669
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.1", type: ColoredDirective, isStandalone: true, selector: "[etColored]", host: { classAttribute: "et-colored" }, ngImport: i0 }); }
|
|
5670
|
+
}
|
|
5671
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: ColoredDirective, decorators: [{
|
|
5672
|
+
type: Directive,
|
|
5673
|
+
args: [{
|
|
5674
|
+
selector: '[etColored]',
|
|
5675
|
+
host: {
|
|
5676
|
+
class: 'et-colored',
|
|
5677
|
+
},
|
|
5678
|
+
}]
|
|
5679
|
+
}], ctorParameters: () => [] });
|
|
5680
|
+
|
|
5437
5681
|
/**
|
|
5438
5682
|
* @deprecated Migrate to Tailwind v4. Intent to remove in v6.
|
|
5439
5683
|
*/
|
|
5440
5684
|
const createSwatchCss = (swatch, isAlt, data) => {
|
|
5441
5685
|
const varSuffix = isAlt ? 'alt-' + swatch : swatch;
|
|
5442
5686
|
const varOnSuffix = isAlt ? 'alt-' : '';
|
|
5687
|
+
const inkDefault = data.inkColor?.default || data.color.default;
|
|
5688
|
+
const inkHover = data.inkColor?.hover || inkDefault;
|
|
5689
|
+
const inkFocus = data.inkColor?.focus || data.inkColor?.hover || inkDefault;
|
|
5690
|
+
const inkActive = data.inkColor?.active || inkDefault;
|
|
5691
|
+
const inkDisabled = data.inkColor?.disabled || inkDefault;
|
|
5443
5692
|
return `
|
|
5444
5693
|
--et-color-${varSuffix}: ${data.color.default};
|
|
5445
5694
|
--et-color-${varSuffix}-hover: ${data.color.hover};
|
|
@@ -5452,6 +5701,12 @@ const createSwatchCss = (swatch, isAlt, data) => {
|
|
|
5452
5701
|
--et-color-${varOnSuffix}on-${swatch}-focus: ${data.onColor.focus || data.onColor.hover || data.onColor.default};
|
|
5453
5702
|
--et-color-${varOnSuffix}on-${swatch}-active: ${data.onColor.active || data.onColor.default};
|
|
5454
5703
|
--et-color-${varOnSuffix}on-${swatch}-disabled: ${data.onColor.disabled || data.onColor.default};
|
|
5704
|
+
|
|
5705
|
+
--et-color-${varSuffix}-ink: ${inkDefault};
|
|
5706
|
+
--et-color-${varSuffix}-ink-hover: ${inkHover};
|
|
5707
|
+
--et-color-${varSuffix}-ink-focus: ${inkFocus};
|
|
5708
|
+
--et-color-${varSuffix}-ink-active: ${inkActive};
|
|
5709
|
+
--et-color-${varSuffix}-ink-disabled: ${inkDisabled};
|
|
5455
5710
|
`;
|
|
5456
5711
|
};
|
|
5457
5712
|
/**
|
|
@@ -5459,6 +5714,11 @@ const createSwatchCss = (swatch, isAlt, data) => {
|
|
|
5459
5714
|
*/
|
|
5460
5715
|
const createRootThemeCss = (themes) => {
|
|
5461
5716
|
const createVars = (name, swatch) => {
|
|
5717
|
+
const inkDefault = swatch.inkColor?.default || swatch.color.default;
|
|
5718
|
+
const inkHover = swatch.inkColor?.hover || inkDefault;
|
|
5719
|
+
const inkFocus = swatch.inkColor?.focus || swatch.inkColor?.hover || inkDefault;
|
|
5720
|
+
const inkActive = swatch.inkColor?.active || inkDefault;
|
|
5721
|
+
const inkDisabled = swatch.inkColor?.disabled || inkDefault;
|
|
5462
5722
|
return `
|
|
5463
5723
|
--et-color-${name}: ${swatch.color.default};
|
|
5464
5724
|
--et-color-${name}-hover: ${swatch.color.hover};
|
|
@@ -5471,11 +5731,17 @@ const createRootThemeCss = (themes) => {
|
|
|
5471
5731
|
--et-color-on-${name}-focus: ${swatch.onColor.focus || swatch.onColor.hover || swatch.onColor.default};
|
|
5472
5732
|
--et-color-on-${name}-active: ${swatch.onColor.active || swatch.onColor.default};
|
|
5473
5733
|
--et-color-on-${name}-disabled: ${swatch.onColor.disabled || swatch.onColor.default};
|
|
5734
|
+
|
|
5735
|
+
--et-color-${name}-ink: ${inkDefault};
|
|
5736
|
+
--et-color-${name}-ink-hover: ${inkHover};
|
|
5737
|
+
--et-color-${name}-ink-focus: ${inkFocus};
|
|
5738
|
+
--et-color-${name}-ink-active: ${inkActive};
|
|
5739
|
+
--et-color-${name}-ink-disabled: ${inkDisabled};
|
|
5474
5740
|
`;
|
|
5475
5741
|
};
|
|
5476
5742
|
const vars = [];
|
|
5477
5743
|
for (const theme of themes) {
|
|
5478
|
-
const name =
|
|
5744
|
+
const name = createCssColorThemeName(theme.name);
|
|
5479
5745
|
if (theme.secondary || theme.tertiary) {
|
|
5480
5746
|
vars.push(createVars(`${name}-primary`, theme.primary));
|
|
5481
5747
|
if (theme.secondary) {
|
|
@@ -5503,7 +5769,7 @@ const createRootThemeCss = (themes) => {
|
|
|
5503
5769
|
* @deprecated Migrate to Tailwind v4. Intent to remove in v6.
|
|
5504
5770
|
*/
|
|
5505
5771
|
const createThemeStyle = (theme, isAlt) => {
|
|
5506
|
-
const cssThemeName =
|
|
5772
|
+
const cssThemeName = createCssColorThemeName(theme.name);
|
|
5507
5773
|
const stringSuffix = isAlt ? '-alt' : '';
|
|
5508
5774
|
const selectors = [
|
|
5509
5775
|
...((theme.isDefault && !isAlt) || (theme.isDefaultAlt && isAlt)
|
|
@@ -5555,6 +5821,23 @@ const createTailwindColorThemes = (themes, prefix = 'et') => {
|
|
|
5555
5821
|
active: createTailwindRgbVar(theme.primary.onColor.active) || createTailwindRgbVar(theme.primary.onColor.default),
|
|
5556
5822
|
disabled: createTailwindRgbVar(theme.primary.onColor.disabled) || createTailwindRgbVar(theme.primary.onColor.default),
|
|
5557
5823
|
};
|
|
5824
|
+
const keyInk = `${prefix}-${theme.name}-ink`;
|
|
5825
|
+
twThemes[keyInk] = {
|
|
5826
|
+
DEFAULT: createTailwindRgbVar(theme.primary.inkColor?.default) || createTailwindRgbVar(theme.primary.color.default),
|
|
5827
|
+
hover: createTailwindRgbVar(theme.primary.inkColor?.hover) ||
|
|
5828
|
+
createTailwindRgbVar(theme.primary.inkColor?.default) ||
|
|
5829
|
+
createTailwindRgbVar(theme.primary.color.default),
|
|
5830
|
+
focus: createTailwindRgbVar(theme.primary.inkColor?.focus) ||
|
|
5831
|
+
createTailwindRgbVar(theme.primary.inkColor?.hover) ||
|
|
5832
|
+
createTailwindRgbVar(theme.primary.inkColor?.default) ||
|
|
5833
|
+
createTailwindRgbVar(theme.primary.color.default),
|
|
5834
|
+
active: createTailwindRgbVar(theme.primary.inkColor?.active) ||
|
|
5835
|
+
createTailwindRgbVar(theme.primary.inkColor?.default) ||
|
|
5836
|
+
createTailwindRgbVar(theme.primary.color.default),
|
|
5837
|
+
disabled: createTailwindRgbVar(theme.primary.inkColor?.disabled) ||
|
|
5838
|
+
createTailwindRgbVar(theme.primary.inkColor?.default) ||
|
|
5839
|
+
createTailwindRgbVar(theme.primary.color.default),
|
|
5840
|
+
};
|
|
5558
5841
|
}
|
|
5559
5842
|
return twThemes;
|
|
5560
5843
|
};
|
|
@@ -5580,44 +5863,44 @@ const provideColorThemes = (themes) => {
|
|
|
5580
5863
|
createThemeStyle(theme, true);
|
|
5581
5864
|
}
|
|
5582
5865
|
createRootThemeCss(themes);
|
|
5583
|
-
return [ɵProvideColorThemes(themes.map((theme) => theme.name)),
|
|
5866
|
+
return [ɵProvideColorThemes(themes.map((theme) => theme.name)), ɵProvideColorThemesPrefix('et')];
|
|
5584
5867
|
};
|
|
5585
5868
|
|
|
5586
|
-
const
|
|
5587
|
-
class
|
|
5869
|
+
const COLOR_PROVIDER = new InjectionToken('ColorProvider');
|
|
5870
|
+
class ProvideColorDirective {
|
|
5588
5871
|
constructor() {
|
|
5589
5872
|
this.themes = injectColorThemes({ optional: true });
|
|
5590
|
-
this.prefix =
|
|
5873
|
+
this.prefix = injectColorThemesPrefix({ optional: true });
|
|
5591
5874
|
this.injector = inject(Injector);
|
|
5592
5875
|
this.currentProviderSync = null;
|
|
5593
|
-
this.
|
|
5594
|
-
this.
|
|
5595
|
-
this.
|
|
5596
|
-
const value = this.
|
|
5876
|
+
this.mainColor = input(undefined, { ...(ngDevMode ? { debugName: "mainColor" } : {}), alias: 'etProvideColor' });
|
|
5877
|
+
this.altColor = input(undefined, { ...(ngDevMode ? { debugName: "altColor" } : {}), alias: 'etProvideAltColor' });
|
|
5878
|
+
this.mainColorName = computed(() => {
|
|
5879
|
+
const value = this.mainColor();
|
|
5597
5880
|
if (!this.themes || !value)
|
|
5598
5881
|
return;
|
|
5599
5882
|
if (isDevMode() && !this.themes?.some((theme) => theme === value) && value !== null) {
|
|
5600
5883
|
console.error(`Theme ${value} does not exist. Please make sure to add it to provideColorThemes()`);
|
|
5601
5884
|
}
|
|
5602
|
-
return
|
|
5603
|
-
}, ...(ngDevMode ? [{ debugName: "
|
|
5604
|
-
this.
|
|
5605
|
-
const value = this.
|
|
5885
|
+
return createCssColorThemeName(value);
|
|
5886
|
+
}, ...(ngDevMode ? [{ debugName: "mainColorName" }] : []));
|
|
5887
|
+
this.altColorName = computed(() => {
|
|
5888
|
+
const value = this.altColor();
|
|
5606
5889
|
if (!this.themes || !value)
|
|
5607
5890
|
return;
|
|
5608
5891
|
if (isDevMode() && !this.themes?.some((theme) => theme === value) && value !== null) {
|
|
5609
5892
|
console.warn(`Theme ${value} does not exist. Please make sure to add it to provideColorThemes()`);
|
|
5610
5893
|
}
|
|
5611
|
-
return
|
|
5612
|
-
}, ...(ngDevMode ? [{ debugName: "
|
|
5894
|
+
return createCssColorThemeName(value);
|
|
5895
|
+
}, ...(ngDevMode ? [{ debugName: "altColorName" }] : []));
|
|
5613
5896
|
this.themeClass = computed(() => {
|
|
5614
5897
|
const themes = [];
|
|
5615
5898
|
const prefix = this.prefix || 'et';
|
|
5616
|
-
if (this.
|
|
5617
|
-
themes.push(`${prefix}-
|
|
5899
|
+
if (this.mainColorName()) {
|
|
5900
|
+
themes.push(`${prefix}-color--${this.mainColorName()}`);
|
|
5618
5901
|
}
|
|
5619
|
-
if (this.
|
|
5620
|
-
themes.push(`${prefix}-
|
|
5902
|
+
if (this.altColorName()) {
|
|
5903
|
+
themes.push(`${prefix}-color-alt--${this.altColorName()}`);
|
|
5621
5904
|
}
|
|
5622
5905
|
return themes.join(' ');
|
|
5623
5906
|
}, ...(ngDevMode ? [{ debugName: "themeClass" }] : []));
|
|
@@ -5626,11 +5909,11 @@ class ProvideThemeDirective {
|
|
|
5626
5909
|
this.currentProviderSync?.destroy();
|
|
5627
5910
|
runInInjectionContext(this.injector, () => {
|
|
5628
5911
|
this.currentProviderSync = effect(() => {
|
|
5629
|
-
const
|
|
5630
|
-
const
|
|
5912
|
+
const provideMainColor = provider.mainColor();
|
|
5913
|
+
const provideAltColor = provider.altColor();
|
|
5631
5914
|
untracked(() => {
|
|
5632
|
-
setInputSignal(this.
|
|
5633
|
-
setInputSignal(this.
|
|
5915
|
+
setInputSignal(this.mainColor, provideMainColor);
|
|
5916
|
+
setInputSignal(this.altColor, provideAltColor);
|
|
5634
5917
|
});
|
|
5635
5918
|
}, ...(ngDevMode ? [{ debugName: "currentProviderSync" }] : []));
|
|
5636
5919
|
});
|
|
@@ -5639,23 +5922,152 @@ class ProvideThemeDirective {
|
|
|
5639
5922
|
this.currentProviderSync?.destroy();
|
|
5640
5923
|
this.currentProviderSync = null;
|
|
5641
5924
|
}
|
|
5642
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type:
|
|
5643
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.1", type:
|
|
5925
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: ProvideColorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
5926
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.1", type: ProvideColorDirective, isStandalone: true, selector: "[etProvideColor]", inputs: { mainColor: { classPropertyName: "mainColor", publicName: "etProvideColor", isSignal: true, isRequired: false, transformFunction: null }, altColor: { classPropertyName: "altColor", publicName: "etProvideAltColor", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "themeClass()" } }, providers: [{ provide: COLOR_PROVIDER, useExisting: ProvideColorDirective }], ngImport: i0 }); }
|
|
5644
5927
|
}
|
|
5645
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type:
|
|
5928
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: ProvideColorDirective, decorators: [{
|
|
5646
5929
|
type: Directive,
|
|
5647
5930
|
args: [{
|
|
5648
|
-
selector: '[
|
|
5649
|
-
providers: [{ provide:
|
|
5931
|
+
selector: '[etProvideColor]',
|
|
5932
|
+
providers: [{ provide: COLOR_PROVIDER, useExisting: ProvideColorDirective }],
|
|
5650
5933
|
host: {
|
|
5651
5934
|
'[class]': 'themeClass()',
|
|
5652
5935
|
},
|
|
5653
5936
|
}]
|
|
5654
|
-
}], propDecorators: {
|
|
5937
|
+
}], propDecorators: { mainColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "etProvideColor", required: false }] }], altColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "etProvideAltColor", required: false }] }] } });
|
|
5938
|
+
|
|
5939
|
+
const SURFACE_TYPE = {
|
|
5940
|
+
LIGHT: 'light',
|
|
5941
|
+
DARK: 'dark',
|
|
5942
|
+
};
|
|
5943
|
+
const createCssSurfaceName = (name) => name.replace(/([A-Z])/g, (g) => `-${g[0].toLowerCase()}`);
|
|
5944
|
+
const resolveSurfaceByElevation = (themes, type, elevation) => themes.find((t) => t.type === type && t.elevation === elevation) ?? null;
|
|
5945
|
+
const [ɵProvideSurfaceThemes, injectSurfaceThemes] = createStaticProvider(undefined, {
|
|
5946
|
+
name: 'Surface Themes',
|
|
5947
|
+
});
|
|
5948
|
+
const [ɵProvideSurfaceThemesPrefix, injectSurfaceThemesPrefix] = createStaticProvider('et', {
|
|
5949
|
+
name: 'Surface Themes Prefix',
|
|
5950
|
+
});
|
|
5951
|
+
const provideSurfaceThemesWithTailwind4 = (themes, prefix = 'et') => [
|
|
5952
|
+
ɵProvideSurfaceThemes(themes),
|
|
5953
|
+
ɵProvideSurfaceThemesPrefix(prefix),
|
|
5954
|
+
];
|
|
5955
|
+
|
|
5956
|
+
const SURFACE_PROVIDER = new InjectionToken('SurfaceProvider');
|
|
5957
|
+
class ProvideSurfaceDirective {
|
|
5958
|
+
constructor() {
|
|
5959
|
+
this.themes = injectSurfaceThemes({ optional: true });
|
|
5960
|
+
this.prefix = injectSurfaceThemesPrefix({ optional: true });
|
|
5961
|
+
this.injector = inject(Injector);
|
|
5962
|
+
this.currentProviderSync = null;
|
|
5963
|
+
this.surface = input(undefined, { ...(ngDevMode ? { debugName: "surface" } : {}), alias: 'etProvideSurface' });
|
|
5964
|
+
this.resolvedTheme = computed(() => {
|
|
5965
|
+
const value = this.surface();
|
|
5966
|
+
if (!this.themes || !value)
|
|
5967
|
+
return null;
|
|
5968
|
+
const theme = this.themes.find((t) => t.name === value) ?? null;
|
|
5969
|
+
if (isDevMode() && !theme && value !== null) {
|
|
5970
|
+
console.error(`Surface theme ${value} does not exist. Please make sure to add it to provideSurfaceThemesWithTailwind4()`);
|
|
5971
|
+
}
|
|
5972
|
+
return theme;
|
|
5973
|
+
}, ...(ngDevMode ? [{ debugName: "resolvedTheme" }] : []));
|
|
5974
|
+
this.elevation = computed(() => this.resolvedTheme()?.elevation ?? 0, ...(ngDevMode ? [{ debugName: "elevation" }] : []));
|
|
5975
|
+
this.surfaceType = computed(() => this.resolvedTheme()?.type ?? null, ...(ngDevMode ? [{ debugName: "surfaceType" }] : []));
|
|
5976
|
+
this.neutralColor = computed(() => this.resolvedTheme()?.neutralColor ?? null, ...(ngDevMode ? [{ debugName: "neutralColor" }] : []));
|
|
5977
|
+
this.surfaceName = computed(() => {
|
|
5978
|
+
const value = this.surface();
|
|
5979
|
+
if (!this.themes || !value)
|
|
5980
|
+
return;
|
|
5981
|
+
return createCssSurfaceName(value);
|
|
5982
|
+
}, ...(ngDevMode ? [{ debugName: "surfaceName" }] : []));
|
|
5983
|
+
this.surfaceClass = computed(() => {
|
|
5984
|
+
const prefix = this.prefix || 'et';
|
|
5985
|
+
if (this.surfaceName()) {
|
|
5986
|
+
return `${prefix}-surface--${this.surfaceName()}`;
|
|
5987
|
+
}
|
|
5988
|
+
return '';
|
|
5989
|
+
}, ...(ngDevMode ? [{ debugName: "surfaceClass" }] : []));
|
|
5990
|
+
}
|
|
5991
|
+
syncWithProvider(provider) {
|
|
5992
|
+
this.currentProviderSync?.destroy();
|
|
5993
|
+
runInInjectionContext(this.injector, () => {
|
|
5994
|
+
this.currentProviderSync = effect(() => {
|
|
5995
|
+
const provideSurface = provider.surface();
|
|
5996
|
+
untracked(() => {
|
|
5997
|
+
setInputSignal(this.surface, provideSurface);
|
|
5998
|
+
});
|
|
5999
|
+
}, ...(ngDevMode ? [{ debugName: "currentProviderSync" }] : []));
|
|
6000
|
+
});
|
|
6001
|
+
}
|
|
6002
|
+
stopSyncWithProvider() {
|
|
6003
|
+
this.currentProviderSync?.destroy();
|
|
6004
|
+
this.currentProviderSync = null;
|
|
6005
|
+
}
|
|
6006
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: ProvideSurfaceDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
6007
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.1", type: ProvideSurfaceDirective, isStandalone: true, selector: "[etProvideSurface]", inputs: { surface: { classPropertyName: "surface", publicName: "etProvideSurface", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "surfaceClass()" } }, providers: [{ provide: SURFACE_PROVIDER, useExisting: ProvideSurfaceDirective }], ngImport: i0 }); }
|
|
6008
|
+
}
|
|
6009
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: ProvideSurfaceDirective, decorators: [{
|
|
6010
|
+
type: Directive,
|
|
6011
|
+
args: [{
|
|
6012
|
+
selector: '[etProvideSurface]',
|
|
6013
|
+
providers: [{ provide: SURFACE_PROVIDER, useExisting: ProvideSurfaceDirective }],
|
|
6014
|
+
host: {
|
|
6015
|
+
'[class]': 'surfaceClass()',
|
|
6016
|
+
},
|
|
6017
|
+
}]
|
|
6018
|
+
}], propDecorators: { surface: [{ type: i0.Input, args: [{ isSignal: true, alias: "etProvideSurface", required: false }] }] } });
|
|
6019
|
+
|
|
6020
|
+
let uniqueId = 0;
|
|
6021
|
+
const [provideSurfaceContextTracker, injectSurfaceContextTracker] = createRootProvider(() => {
|
|
6022
|
+
const entries = signal([], ...(ngDevMode ? [{ debugName: "entries" }] : []));
|
|
6023
|
+
const topEntry = computed(() => {
|
|
6024
|
+
const stack = entries();
|
|
6025
|
+
return stack.length > 0 ? (stack[stack.length - 1] ?? null) : null;
|
|
6026
|
+
}, ...(ngDevMode ? [{ debugName: "topEntry" }] : []));
|
|
6027
|
+
const topType = computed(() => topEntry()?.type ?? null, ...(ngDevMode ? [{ debugName: "topType" }] : []));
|
|
6028
|
+
const topElevation = computed(() => topEntry()?.elevation ?? 0, ...(ngDevMode ? [{ debugName: "topElevation" }] : []));
|
|
6029
|
+
const topNeutralColor = computed(() => topEntry()?.neutralColor ?? null, ...(ngDevMode ? [{ debugName: "topNeutralColor" }] : []));
|
|
6030
|
+
const register = (type, elevation, neutralColor) => {
|
|
6031
|
+
const id = `surface-ctx-${uniqueId++}`;
|
|
6032
|
+
const entry = { id, type, elevation, neutralColor: neutralColor ?? null };
|
|
6033
|
+
entries.update((e) => [...e, entry]);
|
|
6034
|
+
return () => {
|
|
6035
|
+
entries.update((e) => e.filter((item) => item.id !== id));
|
|
6036
|
+
};
|
|
6037
|
+
};
|
|
6038
|
+
return { topType, topElevation, topNeutralColor, register };
|
|
6039
|
+
}, { name: 'SurfaceContextTracker' });
|
|
6040
|
+
|
|
6041
|
+
class SurfacedStylesComponent {
|
|
6042
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SurfacedStylesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6043
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: SurfacedStylesComponent, isStandalone: true, selector: "et-surfaced-styles", ngImport: i0, template: '', isInline: true, styles: [":where(.et-surfaced){--et-surface-background-rgb: var(--et-surface-background);--et-surface-background-solid: rgb(var(--et-surface-background-rgb));--et-surface-color-rgb: var(--et-surface-color);--et-surface-color-solid: rgb(var(--et-surface-color-rgb));--et-surface-color-muted-rgb: var(--et-surface-color-muted);--et-surface-color-muted-solid: rgb(var(--et-surface-color-muted-rgb));--et-surface-color-subtle-rgb: var(--et-surface-color-subtle);--et-surface-color-subtle-solid: rgb(var(--et-surface-color-subtle-rgb));--et-surface-border-rgb: var(--et-surface-border);--et-surface-border-solid: rgb(var(--et-surface-border-rgb))}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
6044
|
+
}
|
|
6045
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SurfacedStylesComponent, decorators: [{
|
|
6046
|
+
type: Component,
|
|
6047
|
+
args: [{ selector: 'et-surfaced-styles', template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":where(.et-surfaced){--et-surface-background-rgb: var(--et-surface-background);--et-surface-background-solid: rgb(var(--et-surface-background-rgb));--et-surface-color-rgb: var(--et-surface-color);--et-surface-color-solid: rgb(var(--et-surface-color-rgb));--et-surface-color-muted-rgb: var(--et-surface-color-muted);--et-surface-color-muted-solid: rgb(var(--et-surface-color-muted-rgb));--et-surface-color-subtle-rgb: var(--et-surface-color-subtle);--et-surface-color-subtle-solid: rgb(var(--et-surface-color-subtle-rgb));--et-surface-border-rgb: var(--et-surface-border);--et-surface-border-solid: rgb(var(--et-surface-border-rgb))}\n"] }]
|
|
6048
|
+
}] });
|
|
6049
|
+
|
|
6050
|
+
class SurfacedDirective {
|
|
6051
|
+
constructor() {
|
|
6052
|
+
this.styleManager = injectStyleManager();
|
|
6053
|
+
this.styleManager.mount(SurfacedStylesComponent);
|
|
6054
|
+
}
|
|
6055
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SurfacedDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
6056
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.1", type: SurfacedDirective, isStandalone: true, selector: "[etSurfaced]", host: { classAttribute: "et-surfaced" }, ngImport: i0 }); }
|
|
6057
|
+
}
|
|
6058
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SurfacedDirective, decorators: [{
|
|
6059
|
+
type: Directive,
|
|
6060
|
+
args: [{
|
|
6061
|
+
selector: '[etSurfaced]',
|
|
6062
|
+
host: {
|
|
6063
|
+
class: 'et-surfaced',
|
|
6064
|
+
},
|
|
6065
|
+
}]
|
|
6066
|
+
}], ctorParameters: () => [] });
|
|
5655
6067
|
|
|
5656
6068
|
/**
|
|
5657
6069
|
* Generated bundle index. Do not edit.
|
|
5658
6070
|
*/
|
|
5659
6071
|
|
|
5660
|
-
export { ANIMATABLE_TOKEN, ANIMATED_IF_TOKEN, ANIMATED_LIFECYCLE_TOKEN, AT_LEAST_ONE_REQUIRED, AnimatableDirective, AnimatedIfDirective, AnimatedLifecycleDirective, AnimatedOverlayDirective, BOUNDARY_ELEMENT_TOKEN, BREAKPOINT_INSTANCE_TOKEN, BREAKPOINT_ORDER, ClickOutsideDirective, DEFAULT_MULTI_INSTANCE_RELS, DEFAULT_MULTI_INSTANCE_TAGS, DEFAULT_VIEWPORT_CONFIG, DISABLE_LOGGER_PARAM, ET_DISABLE_SCROLL_TOP, ET_DISABLE_SCROLL_TOP_AS_RETURN_ROUTE, ET_DISABLE_SCROLL_TOP_ON_PATH_PARAM_CHANGE, ET_PROPERTY_REMOVED, FOCUS_VISIBLE_TRACKER_TOKEN, IS_ARRAY_NOT_EMPTY, IS_EMAIL, InferMimeTypePipe, IsArrayNotEmpty, IsEmail, jsonLd as JsonLD, KeyPressManager, MUST_MATCH, MustMatch, NormalizeGameResultTypePipe, NormalizeMatchParticipantsPipe, NormalizeMatchScorePipe, NormalizeMatchStatePipe, NormalizeMatchTypePipe, PropsDirective,
|
|
6072
|
+
export { ANIMATABLE_TOKEN, ANIMATED_IF_TOKEN, ANIMATED_LIFECYCLE_TOKEN, AT_LEAST_ONE_REQUIRED, AnimatableDirective, AnimatedIfDirective, AnimatedLifecycleDirective, AnimatedOverlayDirective, BOUNDARY_ELEMENT_TOKEN, BREAKPOINT_INSTANCE_TOKEN, BREAKPOINT_ORDER, COLOR_PROVIDER, ClickOutsideDirective, ColoredDirective, DEFAULT_MULTI_INSTANCE_RELS, DEFAULT_MULTI_INSTANCE_TAGS, DEFAULT_VIEWPORT_CONFIG, DISABLE_LOGGER_PARAM, DragHandleDirective, ET_DISABLE_SCROLL_TOP, ET_DISABLE_SCROLL_TOP_AS_RETURN_ROUTE, ET_DISABLE_SCROLL_TOP_ON_PATH_PARAM_CHANGE, ET_PROPERTY_REMOVED, FOCUS_VISIBLE_TRACKER_TOKEN, IS_ARRAY_NOT_EMPTY, IS_EMAIL, InferMimeTypePipe, IsArrayNotEmpty, IsEmail, jsonLd as JsonLD, KeyPressManager, MUST_MATCH, MustMatch, NormalizeGameResultTypePipe, NormalizeMatchParticipantsPipe, NormalizeMatchScorePipe, NormalizeMatchStatePipe, NormalizeMatchTypePipe, PropsDirective, ProvideColorDirective, ProvideSurfaceDirective, RUNTIME_ERROR_NO_DATA, RepeatDirective, ResizeHandlesComponent, RuntimeError, SEO_DIRECTIVE_TOKEN, SURFACE_PROVIDER, SURFACE_TYPE, ScrollObserverDirective, ScrollObserverEndDirective, ScrollObserverStartDirective, SeoDirective, StructuredDataComponent, SurfacedDirective, ToArrayPipe, TypedQueryList, ValidateAtLeastOneRequired, Validators, applyAlternateBinding, applyAlternateLanguagesBindings, applyArticleBindings, applyAuthorBinding, applyCanonicalBinding, applyDescriptionBinding, applyHeadBinding, applyHeadTitleBinding, applyHostListener, applyHostListeners, applyKeywordsBinding, applyLinkBinding, applyMetaBinding, applyNextBinding, applyOgBinding, applyOpenGraphBindings, applyPrevBinding, applyResourceHintsBindings, applyRobotsBinding, applySocialMediaBindings, applyStructuredDataBinding, applyTwitterCardBindings, areScrollStatesEqual, bindProps, boolBreakpointTransform, booleanBreakpointAttribute, boundingClientRectToElementRect, breakpointTransformBase, buildElementSignal, buildSignalEffects, clamp, clone, cloneFormGroup, computedTillFalsy, computedTillTruthy, controlValueSignal, controlValueSignalWithPrevious, createArrayPropertyBinding, createBulkPropertyBinding, createCanAnimateSignal, createComponentId, createCssColorThemeName, createCssSurfaceName, createDependencyStash, createDestroy, createDocumentElementSignal, createElementDictionary, createElementDimensions, createEmptyElementSignal, createFlipAnimation, createFlipAnimationGroup, createHostProps, createIsRenderedSignal, createLogger, createPropHandlers, createPropertyBinding, createProps, createProvider, createRootProvider, createRootThemeCss, createRxHostListener, createSetup, createStaticProvider, createStaticRootProvider, createSwatchCss, createTailwindColorThemes, createTailwindCssVar, createTailwindRgbVar, createThemeStyle, createUserConsentProvider, deferredSignal, deleteCookie, easeElastic, easeIn, easeInOut, easeLinear, easeOut, easeOutBack, easeOutBackStrong, elementCanScroll, equal, firstElementSignal, forceReflow, formatRuntimeError, fromNextFrame, getCookie, getDomain, getElementScrollCoordinates, getFormGroupValue, getGroupMatchPoints, getGroupMatchScore, getKnockoutMatchScore, getMatchScoreSubLine, getObjectProperty, getScrollContainerTarget, getScrollItemTarget, getScrollSnapTarget, hasCookie, inferMimeType, injectAngularRootElement, injectBoundaryElement, injectBreakpointInput, injectBreakpointIsMatched, injectBreakpointObserver, injectCanHover, injectColorThemes, injectColorThemesPrefix, injectCurrentBreakpoint, injectDeviceInputType, injectDisplayOrientation, injectFocusVisibleTracker, injectFragment, injectHasPrecisionInput, injectHasTouchInput, injectHostElement, injectIs2Xl, injectIsLandscape, injectIsLg, injectIsMd, injectIsPortrait, injectIsRouterInitialized, injectIsSm, injectIsXl, injectIsXs, injectLinkStore, injectLinkStoreConfig, injectLocale, injectMediaQueryIsMatched, injectMetaConfig, injectMetaStore, injectObserveBreakpoint, injectObserveMediaQuery, injectPathParam, injectPathParamChanges, injectPathParams, injectQueryParam, injectQueryParamChanges, injectQueryParams, injectRenderer, injectRoute, injectRouteData, injectRouteDataItem, injectRouteTitle, injectRouterEvent, injectRouterState, injectScrollbarDimensions, injectStructuredDataConfig, injectStructuredDataStore, injectStyleManager, injectSurfaceContextTracker, injectSurfaceThemes, injectSurfaceThemesPrefix, injectTemplateRef, injectTitleConfig, injectTitleStore, injectUrl, injectViewportConfig, injectViewportDimensions, injectViewportSize, isArray, isElementSignal, isElementVisible, isGroupMatch, isKnockoutMatch, isObject, maybeSignalValue, memoizeSignal, nextFrame, normalizeGameResultType, normalizeMatchParticipant, normalizeMatchParticipants, normalizeMatchScore, normalizeMatchState, normalizeMatchType, numberBreakpointAttribute, numberBreakpointTransform, previousSignalValue, provideBoundaryElement, provideBreakpointInstance, provideBreakpointObserver, provideColorThemes, provideColorThemesWithTailwind4, provideFocusVisibleTracker, provideLinkStore, provideLinkStoreConfig, provideLocale, provideMetaConfig, provideMetaStore, provideRenderer, provideStructuredDataConfig, provideStructuredDataStore, provideStyleManager, provideSurfaceContextTracker, provideSurfaceThemesWithTailwind4, provideTitleConfig, provideTitleStore, provideViewportConfig, resolveSurfaceByElevation, round, routerDisableScrollTop, scrollToElement, setCookie, setInputSignal, setupScrollRestoration, signalAnimatedNumber, signalAttributes, signalClasses, signalElementChildren, signalElementDimensions, signalElementIntersection, signalElementLastScrollDirection, signalElementMutations, signalElementScrollState, signalHostAttributes, signalHostClasses, signalHostElementDimensions, signalHostElementIntersection, signalHostElementLastScrollDirection, signalHostElementMutations, signalHostElementScrollState, signalHostStyles, signalIsRendered, signalStyles, switchQueryListChanges, syncSignal, templateComputed, toArray, toArrayTrackByFn, toStringBinding, transformOrReturn, typedBreakpointTransform, unbindProps, useCursorDragScroll, writeScrollbarSizeToCssVariables, writeViewportSizeToCssVariables, ɵProvideColorThemes, ɵProvideColorThemesPrefix, ɵProvideSurfaceThemes, ɵProvideSurfaceThemesPrefix };
|
|
5661
6073
|
//# sourceMappingURL=ethlete-core.mjs.map
|