@ethlete/core 5.0.0-next.62 → 5.0.0-next.64
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 +23 -0
- package/fesm2022/ethlete-core.mjs +301 -98
- package/fesm2022/ethlete-core.mjs.map +1 -1
- package/generators/generators.json +5 -0
- package/generators/migrate-color-theme-variants/color-theme-variants.js +136 -0
- package/generators/migrate-color-theme-variants/migration.js +46 -0
- package/generators/migrate-color-theme-variants/schema.json +26 -0
- package/generators/tailwind-4-surface-theme/generator.js +10 -0
- package/package.json +1 -1
- package/types/ethlete-core.d.ts +67 -23
|
@@ -21,6 +21,11 @@
|
|
|
21
21
|
"schema": "./migrate-surface-interaction-swatch/schema.json",
|
|
22
22
|
"description": "Rewrite surface theme interactionColor maps into the { color, onColor, inkColor } swatch shape"
|
|
23
23
|
},
|
|
24
|
+
"migrate-color-theme-variants": {
|
|
25
|
+
"implementation": "./migrate-color-theme-variants/migration",
|
|
26
|
+
"schema": "./migrate-color-theme-variants/schema.json",
|
|
27
|
+
"description": "Rewrite surface theme colorTheme and semanticColorThemes into colorThemeVariants"
|
|
28
|
+
},
|
|
24
29
|
"migrate-legacy-color-themes": {
|
|
25
30
|
"implementation": "./migrate-legacy-color-themes/migration",
|
|
26
31
|
"schema": "./migrate-legacy-color-themes/schema.json",
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { Project, SyntaxKind } from 'ts-morph';
|
|
2
|
+
const createProject = () => new Project({
|
|
3
|
+
useInMemoryFileSystem: true,
|
|
4
|
+
compilerOptions: {
|
|
5
|
+
target: 99,
|
|
6
|
+
module: 99,
|
|
7
|
+
},
|
|
8
|
+
});
|
|
9
|
+
const findProperty = (literal, name) => {
|
|
10
|
+
const property = literal.getProperty(name);
|
|
11
|
+
return property?.isKind(SyntaxKind.PropertyAssignment) ? property : undefined;
|
|
12
|
+
};
|
|
13
|
+
const stringValue = (property) => {
|
|
14
|
+
const initializer = property?.getInitializer();
|
|
15
|
+
return initializer?.isKind(SyntaxKind.StringLiteral) || initializer?.isKind(SyntaxKind.NoSubstitutionTemplateLiteral)
|
|
16
|
+
? initializer.getLiteralText()
|
|
17
|
+
: undefined;
|
|
18
|
+
};
|
|
19
|
+
const literalsOf = (sourceFile) => sourceFile.getDescendantsOfKind(SyntaxKind.ObjectLiteralExpression);
|
|
20
|
+
export const collectColorThemesInFile = (filePath, content) => {
|
|
21
|
+
if (!content.includes('primary'))
|
|
22
|
+
return [];
|
|
23
|
+
return literalsOf(createProject().createSourceFile(filePath, content)).flatMap((literal) => {
|
|
24
|
+
const name = stringValue(findProperty(literal, 'name'));
|
|
25
|
+
if (!name || !literal.getProperty('primary'))
|
|
26
|
+
return [];
|
|
27
|
+
return [
|
|
28
|
+
{
|
|
29
|
+
name,
|
|
30
|
+
type: stringValue(findProperty(literal, 'type')),
|
|
31
|
+
isDefault: findProperty(literal, 'isDefault')?.getInitializer()?.getText() === 'true',
|
|
32
|
+
},
|
|
33
|
+
];
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
const uniqueName = (names) => {
|
|
37
|
+
const unique = [...new Set(names)];
|
|
38
|
+
return unique.length === 1 ? unique[0] : undefined;
|
|
39
|
+
};
|
|
40
|
+
const quote = (value) => (/^[A-Za-z_$][\w$]*$/.test(value) ? value : `'${value}'`);
|
|
41
|
+
/**
|
|
42
|
+
* Rewrites a surface theme's deprecated `colorTheme` and `semanticColorThemes` into `colorThemeVariants`, keyed by
|
|
43
|
+
* the `isDefault` theme and the theme of each `type` in `themes`. Existing `colorThemeVariants` entries win, then
|
|
44
|
+
* `semanticColorThemes`, then `colorTheme`, the same order the runtime resolves them in.
|
|
45
|
+
*/
|
|
46
|
+
export const migrateColorThemeVariantsInFile = (filePath, content, themes) => {
|
|
47
|
+
if (!content.includes('colorTheme') && !content.includes('semanticColorThemes')) {
|
|
48
|
+
return { changed: false, content, unresolved: [] };
|
|
49
|
+
}
|
|
50
|
+
const defaultName = uniqueName(themes.filter((theme) => theme.isDefault).map((theme) => theme.name));
|
|
51
|
+
const nameOfType = (type) => uniqueName(themes.filter((theme) => theme.type === type).map((theme) => theme.name));
|
|
52
|
+
const sourceFile = createProject().createSourceFile(filePath, content);
|
|
53
|
+
const unresolved = [];
|
|
54
|
+
let changed = false;
|
|
55
|
+
const surfaces = literalsOf(sourceFile).filter((literal) => literal.getProperty('elevation'));
|
|
56
|
+
for (const literal of surfaces) {
|
|
57
|
+
const colorTheme = findProperty(literal, 'colorTheme');
|
|
58
|
+
const semantic = findProperty(literal, 'semanticColorThemes');
|
|
59
|
+
if (!colorTheme && !semantic)
|
|
60
|
+
continue;
|
|
61
|
+
const surfaceName = stringValue(findProperty(literal, 'name')) ?? '<unnamed surface>';
|
|
62
|
+
const variants = findProperty(literal, 'colorThemeVariants');
|
|
63
|
+
const variantsLiteral = variants?.getInitializer();
|
|
64
|
+
if (variants && !variantsLiteral?.isKind(SyntaxKind.ObjectLiteralExpression)) {
|
|
65
|
+
unresolved.push(`${surfaceName}: colorThemeVariants is not an object literal`);
|
|
66
|
+
continue;
|
|
67
|
+
}
|
|
68
|
+
const existingKeys = new Set(variantsLiteral?.isKind(SyntaxKind.ObjectLiteralExpression)
|
|
69
|
+
? variantsLiteral
|
|
70
|
+
.getProperties()
|
|
71
|
+
.flatMap((property) => property.isKind(SyntaxKind.PropertyAssignment) ? [property.getName().replace(/['"]/g, '')] : [])
|
|
72
|
+
: []);
|
|
73
|
+
const additions = new Map();
|
|
74
|
+
const toRemove = [];
|
|
75
|
+
const add = (key, value) => {
|
|
76
|
+
if (!existingKeys.has(key) && !additions.has(key))
|
|
77
|
+
additions.set(key, value);
|
|
78
|
+
};
|
|
79
|
+
let semanticResolved = true;
|
|
80
|
+
if (semantic) {
|
|
81
|
+
const semanticLiteral = semantic.getInitializer();
|
|
82
|
+
if (!semanticLiteral?.isKind(SyntaxKind.ObjectLiteralExpression)) {
|
|
83
|
+
semanticResolved = false;
|
|
84
|
+
unresolved.push(`${surfaceName}: semanticColorThemes is not an object literal`);
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
const pending = [];
|
|
88
|
+
for (const property of semanticLiteral.getProperties()) {
|
|
89
|
+
const type = property.isKind(SyntaxKind.PropertyAssignment) ? property.getName().replace(/['"]/g, '') : '';
|
|
90
|
+
const value = property.isKind(SyntaxKind.PropertyAssignment) ? stringValue(property) : undefined;
|
|
91
|
+
const key = type ? nameOfType(type) : undefined;
|
|
92
|
+
if (!value || !key) {
|
|
93
|
+
semanticResolved = false;
|
|
94
|
+
unresolved.push(`${surfaceName}: semanticColorThemes entry ${property.getText()} has no single color theme of that type or no string value`);
|
|
95
|
+
continue;
|
|
96
|
+
}
|
|
97
|
+
pending.push([key, value]);
|
|
98
|
+
}
|
|
99
|
+
if (semanticResolved)
|
|
100
|
+
pending.forEach(([key, value]) => add(key, value));
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
let colorThemeResolved = true;
|
|
104
|
+
if (colorTheme) {
|
|
105
|
+
const value = stringValue(colorTheme);
|
|
106
|
+
if (!value || !defaultName) {
|
|
107
|
+
colorThemeResolved = false;
|
|
108
|
+
unresolved.push(`${surfaceName}: colorTheme ${colorTheme.getInitializer()?.getText()} needs a string value and exactly one isDefault color theme`);
|
|
109
|
+
}
|
|
110
|
+
else if (value !== defaultName) {
|
|
111
|
+
add(defaultName, value);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
const added = [...additions];
|
|
115
|
+
if (semantic && semanticResolved) {
|
|
116
|
+
toRemove.push(semantic);
|
|
117
|
+
}
|
|
118
|
+
if (colorTheme && colorThemeResolved) {
|
|
119
|
+
toRemove.push(colorTheme);
|
|
120
|
+
}
|
|
121
|
+
if (toRemove.length === 0)
|
|
122
|
+
continue;
|
|
123
|
+
if (added.length > 0) {
|
|
124
|
+
const text = added.map(([key, value]) => `${quote(key)}: '${value}'`).join(', ');
|
|
125
|
+
if (variantsLiteral?.isKind(SyntaxKind.ObjectLiteralExpression)) {
|
|
126
|
+
variantsLiteral.addPropertyAssignments(added.map(([key, value]) => ({ name: quote(key), initializer: `'${value}'` })));
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
toRemove.shift()?.replaceWithText(`colorThemeVariants: { ${text} }`);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
toRemove.forEach((property) => property.remove());
|
|
133
|
+
changed = true;
|
|
134
|
+
}
|
|
135
|
+
return { changed, content: changed ? sourceFile.getFullText() : content, unresolved };
|
|
136
|
+
};
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { formatFiles, visitNotIgnoredFiles } from '@nx/devkit';
|
|
2
|
+
import { createMigrationScope } from '../migrate-provider-shape/migration-scope.js';
|
|
3
|
+
import { collectColorThemesInFile, migrateColorThemeVariantsInFile } from './color-theme-variants.js';
|
|
4
|
+
const isSource = (filePath) => filePath.endsWith('.ts') && !filePath.endsWith('.d.ts');
|
|
5
|
+
export default async function migrateColorThemeVariants(tree, schema) {
|
|
6
|
+
console.log('\n🔄 Migrating surface colorTheme and semanticColorThemes to colorThemeVariants...');
|
|
7
|
+
const themes = [];
|
|
8
|
+
visitNotIgnoredFiles(tree, '', (filePath) => {
|
|
9
|
+
if (!isSource(filePath))
|
|
10
|
+
return;
|
|
11
|
+
const content = tree.read(filePath, 'utf-8');
|
|
12
|
+
if (content)
|
|
13
|
+
themes.push(...collectColorThemesInFile(filePath, content));
|
|
14
|
+
});
|
|
15
|
+
const defaults = themes.filter((theme) => theme.isDefault).map((theme) => theme.name);
|
|
16
|
+
console.log(` Color themes found: ${themes.map((theme) => theme.name).join(', ') || 'none'}`);
|
|
17
|
+
console.log(` Default color theme: ${defaults.join(', ') || 'none'}`);
|
|
18
|
+
const scope = createMigrationScope(tree, schema);
|
|
19
|
+
console.log(` Scope: ${scope.describe()}`);
|
|
20
|
+
let filesChanged = 0;
|
|
21
|
+
let unresolvedCount = 0;
|
|
22
|
+
scope.visit(tree, (filePath) => {
|
|
23
|
+
if (!isSource(filePath))
|
|
24
|
+
return;
|
|
25
|
+
const before = tree.read(filePath, 'utf-8');
|
|
26
|
+
if (!before)
|
|
27
|
+
return;
|
|
28
|
+
const result = migrateColorThemeVariantsInFile(filePath, before, themes);
|
|
29
|
+
for (const message of result.unresolved) {
|
|
30
|
+
unresolvedCount++;
|
|
31
|
+
console.warn(` ⚠ ${filePath}: ${message}`);
|
|
32
|
+
}
|
|
33
|
+
if (!result.changed)
|
|
34
|
+
return;
|
|
35
|
+
tree.write(filePath, result.content);
|
|
36
|
+
filesChanged++;
|
|
37
|
+
console.log(` ✓ ${filePath}`);
|
|
38
|
+
});
|
|
39
|
+
console.log(filesChanged === 0 ? ' Nothing to migrate.\n' : `\n✅ Migrated ${filesChanged} file(s).\n`);
|
|
40
|
+
if (unresolvedCount > 0) {
|
|
41
|
+
console.warn(` Review ${unresolvedCount} unresolved value(s) manually. They keep working until the next major.\n`);
|
|
42
|
+
}
|
|
43
|
+
if (!schema.skipFormat) {
|
|
44
|
+
await formatFiles(tree);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/schema",
|
|
3
|
+
"$id": "migrate-color-theme-variants",
|
|
4
|
+
"title": "Migrate surface colorTheme and semanticColorThemes to colorThemeVariants",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"projects": {
|
|
8
|
+
"type": "array",
|
|
9
|
+
"items": { "type": "string" },
|
|
10
|
+
"description": "Nx projects to migrate. Defaults to every project in the workspace.",
|
|
11
|
+
"alias": "project"
|
|
12
|
+
},
|
|
13
|
+
"include": {
|
|
14
|
+
"type": "array",
|
|
15
|
+
"items": { "type": "string" },
|
|
16
|
+
"description": "Path prefixes to migrate, relative to the workspace root (e.g. 'apps/web'). Unioned with `projects`. Defaults to the whole workspace.",
|
|
17
|
+
"alias": "includePath"
|
|
18
|
+
},
|
|
19
|
+
"skipFormat": {
|
|
20
|
+
"type": "boolean",
|
|
21
|
+
"description": "Skip formatting files after migration",
|
|
22
|
+
"default": false
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"required": []
|
|
26
|
+
}
|
|
@@ -423,6 +423,8 @@ function generateSurfaceThemeCss(themes, utilityPrefix, runtimePrefix, schema) {
|
|
|
423
423
|
if (defaultLight && defaultDark) {
|
|
424
424
|
pushSchemeSurfaceVars(themeVars, runtimePrefix, defaultLight);
|
|
425
425
|
pushSchemeSurfaceVars(themeVars, runtimePrefix, defaultDark);
|
|
426
|
+
pushForcedSchemeSurfaceVars(themeVars, runtimePrefix, defaultLight);
|
|
427
|
+
pushForcedSchemeSurfaceVars(themeVars, runtimePrefix, defaultDark);
|
|
426
428
|
}
|
|
427
429
|
else {
|
|
428
430
|
// A single registered surface type has no other scheme to switch to, so its default must
|
|
@@ -568,6 +570,14 @@ function pushSchemeSurfaceVars(vars, runtimePrefix, theme) {
|
|
|
568
570
|
vars.push(` }`);
|
|
569
571
|
vars.push(`}\n`);
|
|
570
572
|
}
|
|
573
|
+
// `:root.<prefix>-scheme--<type>` must out-specify the `:root` inside the media query above, so the
|
|
574
|
+
// class set by `provideColorScheme()` overrides the OS preference regardless of source order.
|
|
575
|
+
function pushForcedSchemeSurfaceVars(vars, runtimePrefix, theme) {
|
|
576
|
+
vars.push(`:root.${runtimePrefix}-scheme--${theme.type} {`);
|
|
577
|
+
pushSurfaceVars(vars, runtimePrefix, theme, ' ');
|
|
578
|
+
vars.push(` color-scheme: ${theme.type};`);
|
|
579
|
+
vars.push(`}\n`);
|
|
580
|
+
}
|
|
571
581
|
function pushSurfaceVars(vars, runtimePrefix, theme, indent) {
|
|
572
582
|
vars.push(`${indent}--${runtimePrefix}-surface-background: ${theme.background};`);
|
|
573
583
|
vars.push(`${indent}--${runtimePrefix}-surface-color: ${theme.color};`);
|
package/package.json
CHANGED
package/types/ethlete-core.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ import * as _angular_platform_browser from '@angular/platform-browser';
|
|
|
9
9
|
import { AbstractControl, FormGroup, ValidationErrors, ValidatorFn } from '@angular/forms';
|
|
10
10
|
import * as _angular_router from '@angular/router';
|
|
11
11
|
import { Data, Params, Router } from '@angular/router';
|
|
12
|
+
import { Location } from '@angular/common';
|
|
12
13
|
import { FieldTree } from '@angular/forms/signals';
|
|
13
14
|
|
|
14
15
|
declare const ANIMATABLE_TOKEN: InjectionToken<AnimatableDirective>;
|
|
@@ -106,6 +107,7 @@ declare class AnimatedLifecycleDirective implements AfterViewInit {
|
|
|
106
107
|
leave(): void;
|
|
107
108
|
forceEnteredState(): void;
|
|
108
109
|
forceLeftState(): void;
|
|
110
|
+
private settleInstantly;
|
|
109
111
|
private markForcedThisFrame;
|
|
110
112
|
private handleNormalTransition;
|
|
111
113
|
private handleInterruptedTransition;
|
|
@@ -1329,9 +1331,10 @@ declare const createRouterState: (router: Router) => RouterState;
|
|
|
1329
1331
|
/**
|
|
1330
1332
|
* Read the current route (the committed url without query params and fragment) straight from the router.
|
|
1331
1333
|
* Unlike the `injectRoute` signal this reads synchronously, so it can be used inside a `router.events` handler
|
|
1332
|
-
* where `router.url` is already committed.
|
|
1334
|
+
* where `router.url` is already committed. Before the first navigation commits it falls back to `location`
|
|
1335
|
+
* (without the base href) when given, else to the browser location.
|
|
1333
1336
|
*/
|
|
1334
|
-
declare const createRoute: (router: Router) => string;
|
|
1337
|
+
declare const createRoute: (router: Router, location?: Location) => string;
|
|
1335
1338
|
/**
|
|
1336
1339
|
* Inject the complete router state. This includes the current route data, path params, query params, title and fragment.
|
|
1337
1340
|
*/
|
|
@@ -1910,6 +1913,7 @@ declare const isHTMLOrSVGElement: (value: unknown) => value is HTMLElement | SVG
|
|
|
1910
1913
|
*/
|
|
1911
1914
|
declare const ownsActiveElement: (hostElement: HTMLElement, document: Document) => boolean;
|
|
1912
1915
|
declare const isFocusable: (element: HTMLElement, document: Document) => boolean;
|
|
1916
|
+
/** The elements Tab stops on inside `container`, with each named radio group collapsed to its checked (else first) radio. */
|
|
1913
1917
|
declare const getFocusableElements: (container: HTMLElement, document: Document) => HTMLElement[];
|
|
1914
1918
|
declare const getHeadingElement: (container: HTMLElement) => HTMLElement | null;
|
|
1915
1919
|
declare const focusElement: (element: HTMLElement | null) => void;
|
|
@@ -2598,7 +2602,7 @@ type CurrentElementVisibility = {
|
|
|
2598
2602
|
*/
|
|
2599
2603
|
isIntersecting: boolean;
|
|
2600
2604
|
/**
|
|
2601
|
-
* The
|
|
2605
|
+
* The share of the element's area inside the container, like `IntersectionObserverEntry.intersectionRatio`.
|
|
2602
2606
|
*/
|
|
2603
2607
|
intersectionRatio: number;
|
|
2604
2608
|
/**
|
|
@@ -3276,9 +3280,14 @@ declare const ɵProvideColorThemesPrefix: (valueOverride?: string | undefined) =
|
|
|
3276
3280
|
declare const injectColorThemesPrefix: _ethlete_core.InjectFn<string>;
|
|
3277
3281
|
declare const provideColorThemesWithTailwind4: (themes: ColorTheme[], prefix?: string) => _angular_core.StaticProvider[][];
|
|
3278
3282
|
/**
|
|
3279
|
-
*
|
|
3280
|
-
*
|
|
3281
|
-
|
|
3283
|
+
* The color theme name that draws `chosenName` on `surface`: the surface's `colorThemeVariants` entry for it,
|
|
3284
|
+
* else `chosenName` itself. Always pass the chosen accent, never an already swapped one.
|
|
3285
|
+
*/
|
|
3286
|
+
declare const resolveColorThemeVariant: (surface: SurfaceTheme | null | undefined, chosenName: string, themes: ColorTheme[] | null | undefined) => string;
|
|
3287
|
+
/**
|
|
3288
|
+
* A signal of the color theme for `type` on the surface this element renders on: the first registered theme
|
|
3289
|
+
* of that `type`, swapped for the nearest surface's `colorThemeVariants` entry. Reading it throws when the app
|
|
3290
|
+
* registered no theme of that `type`, so read it only for a state that renders.
|
|
3282
3291
|
*
|
|
3283
3292
|
* @example
|
|
3284
3293
|
* protected successTheme = injectSemanticColorTheme('success');
|
|
@@ -3333,15 +3342,15 @@ type SurfaceTheme = {
|
|
|
3333
3342
|
isDefault?: boolean;
|
|
3334
3343
|
interactionColor?: SurfaceInteractionColor;
|
|
3335
3344
|
/**
|
|
3336
|
-
*
|
|
3337
|
-
* `{
|
|
3338
|
-
*
|
|
3345
|
+
* Swaps a chosen color theme for a version that reads well on this surface, e.g.
|
|
3346
|
+
* `{ brand: 'brand-on-light', grey: 'grey-light' }`. The chosen theme is the nearest `[etProvideColor]`, the
|
|
3347
|
+
* `isDefault` theme where there is none, or the theme of a `type` for `injectSemanticColorTheme()`. An
|
|
3348
|
+
* accent without an entry stays the same on this surface.
|
|
3339
3349
|
*/
|
|
3350
|
+
colorThemeVariants?: Partial<Record<RegisteredColorThemeName, RegisteredColorThemeName>>;
|
|
3351
|
+
/** @deprecated Use `colorThemeVariants`, keyed by the name of the theme with that `type`. */
|
|
3340
3352
|
semanticColorThemes?: Partial<Record<ColorThemeType, RegisteredColorThemeName>>;
|
|
3341
|
-
/**
|
|
3342
|
-
* The registered color theme a `[etProvideSurface]` element applies to its subtree, e.g. a darker
|
|
3343
|
-
* `brand-on-light` on a light surface. An `[etProvideColor]` on or above the surface element wins.
|
|
3344
|
-
*/
|
|
3353
|
+
/** @deprecated Use `colorThemeVariants`, keyed by the name of the `isDefault` color theme. */
|
|
3345
3354
|
colorTheme?: RegisteredColorThemeName;
|
|
3346
3355
|
background: SurfaceThemeColor;
|
|
3347
3356
|
color: SurfaceThemeColor;
|
|
@@ -3384,8 +3393,8 @@ declare const provideSurfaceThemesWithTailwind4: (themes: SurfaceTheme[], prefix
|
|
|
3384
3393
|
/**
|
|
3385
3394
|
* Inject the registered `isDefault` surface theme of a `type` - the surface an app renders on
|
|
3386
3395
|
* where nothing scopes one. Without a `type`, resolves the default of the only surface type the
|
|
3387
|
-
* app registers; an app registering both must name the one it means
|
|
3388
|
-
*
|
|
3396
|
+
* app registers; an app registering both must name the one it means. `null` when neither applies.
|
|
3397
|
+
* For the theme the root paints right now, use `injectRootSurfaceTheme()`.
|
|
3389
3398
|
*/
|
|
3390
3399
|
declare const injectDefaultSurfaceTheme: (type?: SurfaceType) => SurfaceTheme | null;
|
|
3391
3400
|
|
|
@@ -3395,10 +3404,13 @@ declare class ProvideSurfaceDirective {
|
|
|
3395
3404
|
private prefix;
|
|
3396
3405
|
private injector;
|
|
3397
3406
|
private parentProvider;
|
|
3398
|
-
private
|
|
3407
|
+
private hostElement;
|
|
3408
|
+
private rootTheme;
|
|
3409
|
+
private hasColorScheme;
|
|
3399
3410
|
private colorThemes;
|
|
3400
3411
|
private colorPrefix;
|
|
3401
3412
|
private colorProvider;
|
|
3413
|
+
private ownColorProvider;
|
|
3402
3414
|
private currentProviderSync;
|
|
3403
3415
|
private forcedSurface;
|
|
3404
3416
|
surface: InputSignal<RegisteredSurfaceThemeName | null | undefined>;
|
|
@@ -3413,6 +3425,7 @@ declare class ProvideSurfaceDirective {
|
|
|
3413
3425
|
elevation: Signal<number>;
|
|
3414
3426
|
surfaceType: Signal<_ethlete_core.SurfaceType | null>;
|
|
3415
3427
|
surfaceName: Signal<string | undefined>;
|
|
3428
|
+
private inheritedSurfaceTheme;
|
|
3416
3429
|
private colorThemeClass;
|
|
3417
3430
|
protected surfaceClass: Signal<string>;
|
|
3418
3431
|
syncWithProvider(provider: ProvideSurfaceDirective): void;
|
|
@@ -3432,9 +3445,8 @@ declare const injectSurfaceType: () => Signal<_ethlete_core.SurfaceType | null>;
|
|
|
3432
3445
|
* effect on the surrounding surface provider, or the app's default surface where nothing provides
|
|
3433
3446
|
* one. Use it to derive an elevation relative to the surrounding surface.
|
|
3434
3447
|
*
|
|
3435
|
-
* `null` where the app registers no surface themes, or registers a default per surface type
|
|
3436
|
-
*
|
|
3437
|
-
* resolved at runtime.
|
|
3448
|
+
* `null` where the app registers no surface themes, or registers a default per surface type
|
|
3449
|
+
* without `provideColorScheme()`.
|
|
3438
3450
|
*/
|
|
3439
3451
|
declare const injectParentSurface: () => Signal<SurfaceTheme | null>;
|
|
3440
3452
|
|
|
@@ -3520,6 +3532,36 @@ declare function injectColorPalette(options: InjectOptions): ColorPaletteEntry[]
|
|
|
3520
3532
|
declare const injectSurfaceColorPalette: () => Signal<ColorPaletteEntry[] | null>;
|
|
3521
3533
|
declare const COLOR_PALETTE: _angular_core.InjectionToken<ColorPaletteConfig>;
|
|
3522
3534
|
|
|
3535
|
+
type ColorSchemeMode = SurfaceType | 'system';
|
|
3536
|
+
type ColorSchemeConfig = {
|
|
3537
|
+
/** The mode the app starts in. Defaults to `'system'`. */
|
|
3538
|
+
mode?: ColorSchemeMode;
|
|
3539
|
+
};
|
|
3540
|
+
/**
|
|
3541
|
+
* Inject the app's color scheme: `mode()` is what the app asked for, `type()` the surface type the
|
|
3542
|
+
* root paints, `rootSurface()` the default surface theme of that type, and `setMode()` switches it.
|
|
3543
|
+
* Needs `provideColorScheme()`.
|
|
3544
|
+
*/
|
|
3545
|
+
declare const injectColorScheme: _ethlete_core.InjectFn<{
|
|
3546
|
+
mode: Signal<ColorSchemeMode>;
|
|
3547
|
+
type: Signal<SurfaceType>;
|
|
3548
|
+
rootSurface: Signal<SurfaceTheme | null>;
|
|
3549
|
+
setMode: (next: ColorSchemeMode) => void;
|
|
3550
|
+
}>;
|
|
3551
|
+
/**
|
|
3552
|
+
* Lets the app switch between its default light and dark surface with a class on `<html>`, instead of
|
|
3553
|
+
* only following `prefers-color-scheme`. It also paints the root surface's `colorThemeVariants` entry for the
|
|
3554
|
+
* default accent on `<html>`. Add it to the application config, next to
|
|
3555
|
+
* `provideSurfaceThemesWithTailwind4()`.
|
|
3556
|
+
*/
|
|
3557
|
+
declare const provideColorScheme: (config?: ColorSchemeConfig) => EnvironmentProviders;
|
|
3558
|
+
/**
|
|
3559
|
+
* Inject a signal of the default surface theme the root paints where nothing scopes one. If the app
|
|
3560
|
+
* registers a default for both surface types, it follows `injectColorScheme()`, and is `null` without
|
|
3561
|
+
* `provideColorScheme()`.
|
|
3562
|
+
*/
|
|
3563
|
+
declare const injectRootSurfaceTheme: () => Signal<SurfaceTheme | null>;
|
|
3564
|
+
|
|
3523
3565
|
/**
|
|
3524
3566
|
* @deprecated Migrate to Tailwind v4. Intent to remove in v6.
|
|
3525
3567
|
*/
|
|
@@ -3569,6 +3611,7 @@ declare class ProvideColorDirective {
|
|
|
3569
3611
|
private themes;
|
|
3570
3612
|
private prefix;
|
|
3571
3613
|
private injector;
|
|
3614
|
+
private rootSurfaceTheme;
|
|
3572
3615
|
private parentProvider;
|
|
3573
3616
|
private appRef;
|
|
3574
3617
|
private currentProviderSync;
|
|
@@ -3584,6 +3627,7 @@ declare class ProvideColorDirective {
|
|
|
3584
3627
|
*/
|
|
3585
3628
|
resolvedColor: _angular_core.Signal<ColorThemeInput | undefined>;
|
|
3586
3629
|
colorName: _angular_core.Signal<string | undefined>;
|
|
3630
|
+
private paintedColorName;
|
|
3587
3631
|
protected themeClass: _angular_core.Signal<string>;
|
|
3588
3632
|
syncWithProvider(provider: ProvideColorDirective): void;
|
|
3589
3633
|
stopSyncWithProvider(): void;
|
|
@@ -3823,7 +3867,7 @@ type CreateUnsavedChangesTrackerConfig<T> = {
|
|
|
3823
3867
|
source: UnsavedChangesSource<T>;
|
|
3824
3868
|
/**
|
|
3825
3869
|
* The baseline the current value is compared against.
|
|
3826
|
-
* If omitted
|
|
3870
|
+
* If omitted or `null`, the first non-null value the source produces is captured automatically (so
|
|
3827
3871
|
* async-filled forms work without wiring). A function is evaluated once, eagerly.
|
|
3828
3872
|
*/
|
|
3829
3873
|
defaultValue?: T | (() => T);
|
|
@@ -3939,7 +3983,7 @@ type UnsavedChangesGuardRef<T> = UnsavedChangesTrackerRef<T> & {
|
|
|
3939
3983
|
declare const createUnsavedChangesGuard: <T>(config: CreateUnsavedChangesGuardConfig<T>) => UnsavedChangesGuardRef<T>;
|
|
3940
3984
|
|
|
3941
3985
|
/** The version of `@ethlete/core` this build was cut from. */
|
|
3942
|
-
declare const CORE_VERSION = "5.0.0-next.
|
|
3986
|
+
declare const CORE_VERSION = "5.0.0-next.64";
|
|
3943
3987
|
|
|
3944
|
-
export { ANIMATABLE_TOKEN, ANIMATED_IF_TOKEN, ANIMATED_LIFECYCLE_TOKEN, ANIMATION_DEBUG_STORAGE_KEY, ANIMATION_ERROR_CODES, AT_LEAST_ONE_REQUIRED, AnimatableDirective, AnimatedIfDirective, AnimatedLifecycleDirective, AutoSurfaceDirective, BOUNDARY_ELEMENT_TOKEN, BREAKPOINT_INSTANCE_TOKEN, BREAKPOINT_ORDER, COLOR_PALETTE, COLOR_PROVIDER, CORE_VERSION, ClickOutsideDirective, ColorInteractiveContainerDirective, ColorInteractiveDirective, ColorInteractiveExcludeDirective, ColorInteractiveHasFocusDirective, DEFAULT_MULTI_INSTANCE_RELS, DEFAULT_MULTI_INSTANCE_TAGS, DEFAULT_OVERLAY_LAYER, 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, ET_RESTORE_SCROLL, EasingTokensStylesComponent, EthleteValidators, FOCUSABLE_SELECTOR, FOCUS_VISIBLE_TRACKER_TOKEN, HtmlToMarkdownPipe, IS_ARRAY_NOT_EMPTY, IS_EMAIL, InferMimeTypePipe, InitialsPipe, IsArrayNotEmpty, IsEmail, jsonLd_d as JsonLD, KeyPressManager, MARKDOWN_VERBATIM_ATTR, MUST_MATCH, MarkdownToHtmlPipe, MatchStateType, MustMatch, NOTIFICATION_CLICK_MESSAGE_TYPE, NormalizeGameResultTypePipe, NormalizeMatchParticipantsPipe, NormalizeMatchScorePipe, NormalizeMatchStatePipe, NormalizeMatchTypePipe, OVERLAY_LAYER_ATTRIBUTE, ProvideColorDirective, ProvideSurfaceDirective, RUNTIME_ERROR_NO_DATA, RepeatDirective, ResizeHandlesComponent, RestoreScrollDirective, RuntimeError, SURFACE_COLOR, SURFACE_PROVIDER, SURFACE_TYPE, SWIPE_VELOCITY_WINDOW_MS, ScrollObserverDirective, ScrollObserverEndDirective, ScrollObserverStartDirective, SlugifyPipe, StructuredDataComponent, SurfaceInteractiveDirective, ToArrayPipe, TypedQueryList, UNSAVED_CHANGES_CONFIRM, UNSAVED_CHANGES_ERROR_CODES, UNSAVED_CHANGES_TITLE_MARKER, ValidateAtLeastOneRequired, VisuallyHiddenStylesComponent, anchoredOverlayPosition, animationDebugLog, applyAlternateBinding, applyAlternateLanguagesBindings, applyArticleBindings, applyAuthorBinding, applyCanonicalBinding, applyCenteredPosition, applyDescriptionBinding, applyFaviconOverlay, applyGlobalPosition, applyHeadBinding, applyHeadTitleBinding, applyHeadTitleMarker, applyHostListener, applyHostListeners, applyInitialFocus, applyKeywordsBinding, applyLinkBinding, applyMetaBinding, applyNextBinding, applyOgBinding, applyOpenGraphBindings, applyPrevBinding, applyResourceHintsBindings, applyRobotsBinding, applySocialMediaBindings, applyStructuredDataBinding, applyTwitterCardBindings, boolBreakpointTransform, boundingClientRectToElementRect, breakpointTransformBase, buildElementSignal, buildSignalEffects, canUseSessionMemory, clamp, clone, cloneFormGroup, computedTillFalsy, computedTillTruthy, controlValueSignal, controlValueSignalWithPrevious, copyToClipboard, createAnchoredPositionCleanup, createArrayPropertyBinding, createAutoSessionMemoryKey, createCanAnimateSignal, createComponentId, createCssColorThemeName, createCssSurfaceName, createDestroy, createDocumentElementSignal, createElementDimensions, createEmptyElementSignal, createFlipAnimation, createFlipAnimationGroup, createIsRenderedSignal, createLogger, createObjectUrlHandle, createPropertyBinding, createRootThemeCss, createRoute, createRouterState, createRxHostListener, createSessionMemory, createSwatchCss, createSwipeTracker, createTailwindColorThemes, createTailwindCssVar, createTailwindRgbVar, createThemeStyle, createUnsavedChangesGuard, createUnsavedChangesTabLock, createUnsavedChangesTracker, createUserConsentProvider, deferredSignal, defineLabels, defineProvider, defineRootProvider, defineStaticProvider, defineStaticRootProvider, deleteCookie, dragGestureFrom, easeElastic, easeIn, easeInOut, easeLinear, easeOut, easeOutBack, easeOutBackStrong, elementCanScroll, enableAnchoredOverlayPositionExtras, equal, fetchDeployedBuildFingerprint$, firstElementSignal, focusElement, forceReflow, formatRuntimeError, fromNextFrame, getCookie, getDomain, getElementScrollCoordinates, getFocusableElements, getFormGroupValue, getGroupMatchPoints, getGroupMatchScore, getHeadingElement, getKnockoutMatchScore, getMatchScoreSubLine, getObjectProperty, getScrollContainerTarget, getScrollItemTarget, getScrollSnapTarget, hasCookie, holdScrollRestoration, htmlToMarkdown, inferMimeType, initials, injectAngularRootElement, injectAnimatedBlockSize, injectAppUpdates, injectAppUpdatesConfig, injectBoundaryElement, injectBreakpointInput, injectBreakpointIsMatched, injectBreakpointObserver, injectCanHover, injectColorPalette, injectColorThemes, injectColorThemesPrefix, injectCurrentBreakpoint, injectDefaultColorTheme, injectDefaultSurfaceTheme, injectDeviceInputType, injectDisplayOrientation, injectErrorTheme, injectFaviconStore, injectFileDownload, injectFocusVisibleTracker, injectFragment, injectHasPrecisionInput, injectHasTouchInput, injectHostElement, injectIs2Xl, injectIsDocumentVisible, injectIsLandscape, injectIsLg, injectIsMd, injectIsPortrait, injectIsRouterInitialized, injectIsSm, injectIsXl, injectIsXs, injectLinkStore, injectLinkStoreConfig, injectLocale, injectMediaQueryIsMatched, injectMetaConfig, injectMetaStore, injectNotifications, injectObserveBreakpoint, injectObserveMediaQuery, injectOverlayRuntime, injectParentSurface, injectPathParam, injectPathParamChanges, injectPathParams, injectPrefersReducedMotion, injectQueryParam, injectQueryParamAll, injectQueryParamChanges, injectQueryParams, injectRenderer, injectRoute, injectRouteData, injectRouteDataItem, injectRouteTitle, injectRouterEvent, injectRouterNavigationState, injectRouterState, injectScrollbarDimensions, injectSemanticColorTheme, injectStructuredDataConfig, injectStructuredDataStore, injectStyleManager, injectSuccessTheme, injectSurfaceColorPalette, injectSurfaceContextTracker, injectSurfaceThemes, injectSurfaceThemesPrefix, injectSurfaceType, injectTemplateRef, injectTitleConfig, injectTitleStore, injectUnsavedChangesCoordinator, injectUrl, injectViewportConfig, injectViewportDimensions, injectViewportSize, injectWarningTheme, isAnimationDebugEnabled, isArray, isElement, isElementSignal, isElementVisible, isFocusable, isGroupMatch, isHTMLElement, isHTMLOrSVGElement, isKnockoutMatch, isObject, isOnHigherOverlayLayer, isSafeLinkUrl, isSafeUrl, isStaleBuildError, markdownToHtml, matchesReducedMotion, maybeSignalValue, memoizeSignal, mountEasingTokens, mountVisuallyHidden, nextFrame, normalizeGameResultType, normalizeMatchParticipant, normalizeMatchParticipants, normalizeMatchScore, normalizeMatchState, normalizeMatchType, normalizeUnsavedChangesSource, numberBreakpointTransform, onOverlayViewportInsetsChange, optionalBooleanAttribute, overlayViewportInsets, overlayViewportInsetsFor, ownsActiveElement, previousSignalValue, provideAppUpdates, provideAppUpdatesConfig, provideAppUpdatesInstance, provideBoundaryElement, provideBreakpointInstance, provideBreakpointObserver, provideColorPalette, provideColorThemes, provideColorThemesWithTailwind4, provideFaviconStore, provideFocusVisibleTracker, provideLinkStore, provideLinkStoreConfig, provideLocale, provideMetaConfig, provideMetaStore, provideNotifications, provideOverlayRuntime, provideRenderer, provideStructuredDataConfig, provideStructuredDataStore, provideStyleManager, provideSurfaceContextTracker, provideSurfaceThemesWithTailwind4, provideTitleConfig, provideTitleStore, provideUnsavedChangesConfirm, provideUnsavedChangesCoordinator, provideViewportConfig, randomId, readBuildFingerprint, readFromClipboard, reserveOverlayViewportSpace, resolveAppRootColorProvider, resolveOverlayLayer, resolveSurfaceByElevation, round, routerDisableScrollTop, routerRestoreScroll, scrollToElement, setCookie, setInputSignal, setupFocusTrap, setupPositioning, setupScrollRestoration, signalAnimatedNumber, signalAttributes, signalClasses, signalCountdown, signalDeferredLoading, signalElementChildren, signalElementDimensions, signalElementIntersection, signalElementLastScrollDirection, signalElementMutations, signalElementScrollState, signalHostAttributes, signalHostClasses, signalHostElementDimensions, signalHostElementIntersection, signalHostElementLastScrollDirection, signalHostElementMutations, signalHostElementScrollState, signalHostStyles, signalIsRendered, signalStyles, slugify, suppressTextSelection, switchQueryListChanges, syncSignal, toArray, toArrayTrackByFn, toInjectFn, toProvideFn, toStringBinding, toToken, transformOrReturn, typedBreakpointTransform, useCursorDragScroll, writeScrollbarSizeToCssVariables, writeViewportSizeToCssVariables, ɵProvideColorThemes, ɵProvideColorThemesPrefix, ɵProvideSurfaceThemes, ɵProvideSurfaceThemesPrefix };
|
|
3945
|
-
export type { AlternateLanguagesConfig, AngularRenderer, AnimatedBlockSizeConfig, AnimatedIfContext, AnimatedLifecycleState, AnimatedNumberSignal, AnimatedSizeAxis, AnimationEndEvent, AppUpdates, AppUpdatesConfig, ArticleConfig, BoolBreakpointSignal, Breakpoint, BreakpointInput, BreakpointMap, BuildMediaQueryOptions, BuildSignalEffectsConfig, ColorPaletteBySurface, ColorPaletteConfig, ColorPaletteEntry, ColorTheme, ColorThemeInput, ColorThemeType, ConsentHandler, ControlValueSignalOptions, Countdown, CountdownDeadline, CreateLoggerConfig, CreateSessionMemoryConfig, CreateUnsavedChangesGuardConfig, CreateUnsavedChangesTabLockConfig, CreateUnsavedChangesTrackerConfig, CreateUserConsentProviderOptions, CurrentElementVisibility, CursorDragScrollDirection, CursorDragScrollOptions, DragEndEvent, DragGestureEvent, DragMoveEvent, DragStartEvent, ElementDimensions, ElementLastScrollDirection, ElementLastScrollDirectionType, ElementRect, ElementScrollState, ElementSignal, ElementSignalValue, ElementSize, EthleteColorThemeNameRegistry, EthleteSurfaceThemeNameRegistry, FaviconOverlay, FileDownloadOptions, FlipAnimationConfig, InjectFn, InjectQueryParamAllConfig, InjectQueryParamConfig, InjectUtilConfig, InjectUtilTransformConfig, IntersectionObserverEntryWithDetails, IsElementVisibleOptions, LabelsDefinition, LabelsSource, LinkConfig, LinkStoreConfig, LogicalSize, MaybeSignal, MetaConfig, MetaTagConfig, NgClassType, NormalizedGameResultType, NormalizedMatchParticipant, NormalizedMatchParticipants, NormalizedMatchScore, NormalizedUnsavedChangesSource, NotificationActionConfig, NotificationClickContext, NotificationClickMessage, NotificationDeliveryPath, NotificationPermissionState, NotificationRef, Notifications, NullableElementDimensions, NumberBreakpointSignal, ObjectUrlHandle, OnThemeColorMap, OpenGraphConfig, OverlayRuntime, OverlayRuntimeAnchoredPosition, OverlayRuntimeAnimationDelegate, OverlayRuntimeAnimationDelegateEnterContext, OverlayRuntimeAnimationDelegateLeaveContext, OverlayRuntimeAutoFocusTarget, OverlayRuntimeCenteredPosition, OverlayRuntimeCloseEvent, OverlayRuntimeCloseGuard, OverlayRuntimeCloseSource, OverlayRuntimeComponentBase, OverlayRuntimeElements, OverlayRuntimeGlobalPosition, OverlayRuntimeGlobalPositionAlignment, OverlayRuntimeMountConfig, OverlayRuntimePositionStrategy, OverlayRuntimeRef, OverlayRuntimeRole, OverlayRuntimeShiftOptions, OverlayRuntimeState, OverlayViewportInset, OverlayViewportReservation, ProviderDefinition, ProviderDefinitionOptions, RegisteredColorThemeName, RegisteredSurfaceThemeName, ResizeEdge, ResizeMoveEvent, ResourceHintsConfig, RobotsConfig, RouterDisableScrollTopConfig, RouterState, ScrollContainerTarget, ScrollItemTarget, ScrollRestorationRestoreConfig, ScrollRestorationScrollElement, ScrollSnapOrigin, ScrollSnapTarget, ScrollToElementOptions, SetupScrollRestorationConfig, ShowNotificationConfig, SignalAnimatedNumberOptions, SignalDeferredLoadingOptions, SignalElementBindingComplexType, SignalElementBindingType, SignalElementChildrenOptions, SignalElementIntersectionOptions, SignalElementScrollStateOptions, SocialMediaConfig, StaticProviderDefinition, StructuredDataConfig, StyleManager, SurfaceColor, SurfaceContextEntry, SurfaceContextSurface, SurfaceContextTracker, SurfaceInteractionColor, SurfaceInteractionColorMap, SurfaceOnInteractionColorMap, SurfaceTheme, SurfaceThemeColor, SurfaceType, SwipeEndEvent, SwipeTracker, SwipeUpdateEvent, SyncSignalOptions, ThemeColor, ThemeColorMap, ThemeHSLColor, ThemeInkColorMap, ThemeRGBColor, ThemeSwatch, TitleConfig, TitlePart, Translatable, TwitterCardConfig, TypedBreakpointSignal, UnsavedChangesAbandonReason, UnsavedChangesConfirmContext, UnsavedChangesConfirmFn, UnsavedChangesGuardRef, UnsavedChangesRegistration, UnsavedChangesSource, UnsavedChangesTabConfig, UnsavedChangesTabLockRef, UnsavedChangesTrackerRef, ValidateAtLeastOneRequiredConfig, Vec2, ViewportConfig };
|
|
3988
|
+
export { ANIMATABLE_TOKEN, ANIMATED_IF_TOKEN, ANIMATED_LIFECYCLE_TOKEN, ANIMATION_DEBUG_STORAGE_KEY, ANIMATION_ERROR_CODES, AT_LEAST_ONE_REQUIRED, AnimatableDirective, AnimatedIfDirective, AnimatedLifecycleDirective, AutoSurfaceDirective, BOUNDARY_ELEMENT_TOKEN, BREAKPOINT_INSTANCE_TOKEN, BREAKPOINT_ORDER, COLOR_PALETTE, COLOR_PROVIDER, CORE_VERSION, ClickOutsideDirective, ColorInteractiveContainerDirective, ColorInteractiveDirective, ColorInteractiveExcludeDirective, ColorInteractiveHasFocusDirective, DEFAULT_MULTI_INSTANCE_RELS, DEFAULT_MULTI_INSTANCE_TAGS, DEFAULT_OVERLAY_LAYER, 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, ET_RESTORE_SCROLL, EasingTokensStylesComponent, EthleteValidators, FOCUSABLE_SELECTOR, FOCUS_VISIBLE_TRACKER_TOKEN, HtmlToMarkdownPipe, IS_ARRAY_NOT_EMPTY, IS_EMAIL, InferMimeTypePipe, InitialsPipe, IsArrayNotEmpty, IsEmail, jsonLd_d as JsonLD, KeyPressManager, MARKDOWN_VERBATIM_ATTR, MUST_MATCH, MarkdownToHtmlPipe, MatchStateType, MustMatch, NOTIFICATION_CLICK_MESSAGE_TYPE, NormalizeGameResultTypePipe, NormalizeMatchParticipantsPipe, NormalizeMatchScorePipe, NormalizeMatchStatePipe, NormalizeMatchTypePipe, OVERLAY_LAYER_ATTRIBUTE, ProvideColorDirective, ProvideSurfaceDirective, RUNTIME_ERROR_NO_DATA, RepeatDirective, ResizeHandlesComponent, RestoreScrollDirective, RuntimeError, SURFACE_COLOR, SURFACE_PROVIDER, SURFACE_TYPE, SWIPE_VELOCITY_WINDOW_MS, ScrollObserverDirective, ScrollObserverEndDirective, ScrollObserverStartDirective, SlugifyPipe, StructuredDataComponent, SurfaceInteractiveDirective, ToArrayPipe, TypedQueryList, UNSAVED_CHANGES_CONFIRM, UNSAVED_CHANGES_ERROR_CODES, UNSAVED_CHANGES_TITLE_MARKER, ValidateAtLeastOneRequired, VisuallyHiddenStylesComponent, anchoredOverlayPosition, animationDebugLog, applyAlternateBinding, applyAlternateLanguagesBindings, applyArticleBindings, applyAuthorBinding, applyCanonicalBinding, applyCenteredPosition, applyDescriptionBinding, applyFaviconOverlay, applyGlobalPosition, applyHeadBinding, applyHeadTitleBinding, applyHeadTitleMarker, applyHostListener, applyHostListeners, applyInitialFocus, applyKeywordsBinding, applyLinkBinding, applyMetaBinding, applyNextBinding, applyOgBinding, applyOpenGraphBindings, applyPrevBinding, applyResourceHintsBindings, applyRobotsBinding, applySocialMediaBindings, applyStructuredDataBinding, applyTwitterCardBindings, boolBreakpointTransform, boundingClientRectToElementRect, breakpointTransformBase, buildElementSignal, buildSignalEffects, canUseSessionMemory, clamp, clone, cloneFormGroup, computedTillFalsy, computedTillTruthy, controlValueSignal, controlValueSignalWithPrevious, copyToClipboard, createAnchoredPositionCleanup, createArrayPropertyBinding, createAutoSessionMemoryKey, createCanAnimateSignal, createComponentId, createCssColorThemeName, createCssSurfaceName, createDestroy, createDocumentElementSignal, createElementDimensions, createEmptyElementSignal, createFlipAnimation, createFlipAnimationGroup, createIsRenderedSignal, createLogger, createObjectUrlHandle, createPropertyBinding, createRootThemeCss, createRoute, createRouterState, createRxHostListener, createSessionMemory, createSwatchCss, createSwipeTracker, createTailwindColorThemes, createTailwindCssVar, createTailwindRgbVar, createThemeStyle, createUnsavedChangesGuard, createUnsavedChangesTabLock, createUnsavedChangesTracker, createUserConsentProvider, deferredSignal, defineLabels, defineProvider, defineRootProvider, defineStaticProvider, defineStaticRootProvider, deleteCookie, dragGestureFrom, easeElastic, easeIn, easeInOut, easeLinear, easeOut, easeOutBack, easeOutBackStrong, elementCanScroll, enableAnchoredOverlayPositionExtras, equal, fetchDeployedBuildFingerprint$, firstElementSignal, focusElement, forceReflow, formatRuntimeError, fromNextFrame, getCookie, getDomain, getElementScrollCoordinates, getFocusableElements, getFormGroupValue, getGroupMatchPoints, getGroupMatchScore, getHeadingElement, getKnockoutMatchScore, getMatchScoreSubLine, getObjectProperty, getScrollContainerTarget, getScrollItemTarget, getScrollSnapTarget, hasCookie, holdScrollRestoration, htmlToMarkdown, inferMimeType, initials, injectAngularRootElement, injectAnimatedBlockSize, injectAppUpdates, injectAppUpdatesConfig, injectBoundaryElement, injectBreakpointInput, injectBreakpointIsMatched, injectBreakpointObserver, injectCanHover, injectColorPalette, injectColorScheme, injectColorThemes, injectColorThemesPrefix, injectCurrentBreakpoint, injectDefaultColorTheme, injectDefaultSurfaceTheme, injectDeviceInputType, injectDisplayOrientation, injectErrorTheme, injectFaviconStore, injectFileDownload, injectFocusVisibleTracker, injectFragment, injectHasPrecisionInput, injectHasTouchInput, injectHostElement, injectIs2Xl, injectIsDocumentVisible, injectIsLandscape, injectIsLg, injectIsMd, injectIsPortrait, injectIsRouterInitialized, injectIsSm, injectIsXl, injectIsXs, injectLinkStore, injectLinkStoreConfig, injectLocale, injectMediaQueryIsMatched, injectMetaConfig, injectMetaStore, injectNotifications, injectObserveBreakpoint, injectObserveMediaQuery, injectOverlayRuntime, injectParentSurface, injectPathParam, injectPathParamChanges, injectPathParams, injectPrefersReducedMotion, injectQueryParam, injectQueryParamAll, injectQueryParamChanges, injectQueryParams, injectRenderer, injectRootSurfaceTheme, injectRoute, injectRouteData, injectRouteDataItem, injectRouteTitle, injectRouterEvent, injectRouterNavigationState, injectRouterState, injectScrollbarDimensions, injectSemanticColorTheme, injectStructuredDataConfig, injectStructuredDataStore, injectStyleManager, injectSuccessTheme, injectSurfaceColorPalette, injectSurfaceContextTracker, injectSurfaceThemes, injectSurfaceThemesPrefix, injectSurfaceType, injectTemplateRef, injectTitleConfig, injectTitleStore, injectUnsavedChangesCoordinator, injectUrl, injectViewportConfig, injectViewportDimensions, injectViewportSize, injectWarningTheme, isAnimationDebugEnabled, isArray, isElement, isElementSignal, isElementVisible, isFocusable, isGroupMatch, isHTMLElement, isHTMLOrSVGElement, isKnockoutMatch, isObject, isOnHigherOverlayLayer, isSafeLinkUrl, isSafeUrl, isStaleBuildError, markdownToHtml, matchesReducedMotion, maybeSignalValue, memoizeSignal, mountEasingTokens, mountVisuallyHidden, nextFrame, normalizeGameResultType, normalizeMatchParticipant, normalizeMatchParticipants, normalizeMatchScore, normalizeMatchState, normalizeMatchType, normalizeUnsavedChangesSource, numberBreakpointTransform, onOverlayViewportInsetsChange, optionalBooleanAttribute, overlayViewportInsets, overlayViewportInsetsFor, ownsActiveElement, previousSignalValue, provideAppUpdates, provideAppUpdatesConfig, provideAppUpdatesInstance, provideBoundaryElement, provideBreakpointInstance, provideBreakpointObserver, provideColorPalette, provideColorScheme, provideColorThemes, provideColorThemesWithTailwind4, provideFaviconStore, provideFocusVisibleTracker, provideLinkStore, provideLinkStoreConfig, provideLocale, provideMetaConfig, provideMetaStore, provideNotifications, provideOverlayRuntime, provideRenderer, provideStructuredDataConfig, provideStructuredDataStore, provideStyleManager, provideSurfaceContextTracker, provideSurfaceThemesWithTailwind4, provideTitleConfig, provideTitleStore, provideUnsavedChangesConfirm, provideUnsavedChangesCoordinator, provideViewportConfig, randomId, readBuildFingerprint, readFromClipboard, reserveOverlayViewportSpace, resolveAppRootColorProvider, resolveColorThemeVariant, resolveOverlayLayer, resolveSurfaceByElevation, round, routerDisableScrollTop, routerRestoreScroll, scrollToElement, setCookie, setInputSignal, setupFocusTrap, setupPositioning, setupScrollRestoration, signalAnimatedNumber, signalAttributes, signalClasses, signalCountdown, signalDeferredLoading, signalElementChildren, signalElementDimensions, signalElementIntersection, signalElementLastScrollDirection, signalElementMutations, signalElementScrollState, signalHostAttributes, signalHostClasses, signalHostElementDimensions, signalHostElementIntersection, signalHostElementLastScrollDirection, signalHostElementMutations, signalHostElementScrollState, signalHostStyles, signalIsRendered, signalStyles, slugify, suppressTextSelection, switchQueryListChanges, syncSignal, toArray, toArrayTrackByFn, toInjectFn, toProvideFn, toStringBinding, toToken, transformOrReturn, typedBreakpointTransform, useCursorDragScroll, writeScrollbarSizeToCssVariables, writeViewportSizeToCssVariables, ɵProvideColorThemes, ɵProvideColorThemesPrefix, ɵProvideSurfaceThemes, ɵProvideSurfaceThemesPrefix };
|
|
3989
|
+
export type { AlternateLanguagesConfig, AngularRenderer, AnimatedBlockSizeConfig, AnimatedIfContext, AnimatedLifecycleState, AnimatedNumberSignal, AnimatedSizeAxis, AnimationEndEvent, AppUpdates, AppUpdatesConfig, ArticleConfig, BoolBreakpointSignal, Breakpoint, BreakpointInput, BreakpointMap, BuildMediaQueryOptions, BuildSignalEffectsConfig, ColorPaletteBySurface, ColorPaletteConfig, ColorPaletteEntry, ColorSchemeConfig, ColorSchemeMode, ColorTheme, ColorThemeInput, ColorThemeType, ConsentHandler, ControlValueSignalOptions, Countdown, CountdownDeadline, CreateLoggerConfig, CreateSessionMemoryConfig, CreateUnsavedChangesGuardConfig, CreateUnsavedChangesTabLockConfig, CreateUnsavedChangesTrackerConfig, CreateUserConsentProviderOptions, CurrentElementVisibility, CursorDragScrollDirection, CursorDragScrollOptions, DragEndEvent, DragGestureEvent, DragMoveEvent, DragStartEvent, ElementDimensions, ElementLastScrollDirection, ElementLastScrollDirectionType, ElementRect, ElementScrollState, ElementSignal, ElementSignalValue, ElementSize, EthleteColorThemeNameRegistry, EthleteSurfaceThemeNameRegistry, FaviconOverlay, FileDownloadOptions, FlipAnimationConfig, InjectFn, InjectQueryParamAllConfig, InjectQueryParamConfig, InjectUtilConfig, InjectUtilTransformConfig, IntersectionObserverEntryWithDetails, IsElementVisibleOptions, LabelsDefinition, LabelsSource, LinkConfig, LinkStoreConfig, LogicalSize, MaybeSignal, MetaConfig, MetaTagConfig, NgClassType, NormalizedGameResultType, NormalizedMatchParticipant, NormalizedMatchParticipants, NormalizedMatchScore, NormalizedUnsavedChangesSource, NotificationActionConfig, NotificationClickContext, NotificationClickMessage, NotificationDeliveryPath, NotificationPermissionState, NotificationRef, Notifications, NullableElementDimensions, NumberBreakpointSignal, ObjectUrlHandle, OnThemeColorMap, OpenGraphConfig, OverlayRuntime, OverlayRuntimeAnchoredPosition, OverlayRuntimeAnimationDelegate, OverlayRuntimeAnimationDelegateEnterContext, OverlayRuntimeAnimationDelegateLeaveContext, OverlayRuntimeAutoFocusTarget, OverlayRuntimeCenteredPosition, OverlayRuntimeCloseEvent, OverlayRuntimeCloseGuard, OverlayRuntimeCloseSource, OverlayRuntimeComponentBase, OverlayRuntimeElements, OverlayRuntimeGlobalPosition, OverlayRuntimeGlobalPositionAlignment, OverlayRuntimeMountConfig, OverlayRuntimePositionStrategy, OverlayRuntimeRef, OverlayRuntimeRole, OverlayRuntimeShiftOptions, OverlayRuntimeState, OverlayViewportInset, OverlayViewportReservation, ProviderDefinition, ProviderDefinitionOptions, RegisteredColorThemeName, RegisteredSurfaceThemeName, ResizeEdge, ResizeMoveEvent, ResourceHintsConfig, RobotsConfig, RouterDisableScrollTopConfig, RouterState, ScrollContainerTarget, ScrollItemTarget, ScrollRestorationRestoreConfig, ScrollRestorationScrollElement, ScrollSnapOrigin, ScrollSnapTarget, ScrollToElementOptions, SetupScrollRestorationConfig, ShowNotificationConfig, SignalAnimatedNumberOptions, SignalDeferredLoadingOptions, SignalElementBindingComplexType, SignalElementBindingType, SignalElementChildrenOptions, SignalElementIntersectionOptions, SignalElementScrollStateOptions, SocialMediaConfig, StaticProviderDefinition, StructuredDataConfig, StyleManager, SurfaceColor, SurfaceContextEntry, SurfaceContextSurface, SurfaceContextTracker, SurfaceInteractionColor, SurfaceInteractionColorMap, SurfaceOnInteractionColorMap, SurfaceTheme, SurfaceThemeColor, SurfaceType, SwipeEndEvent, SwipeTracker, SwipeUpdateEvent, SyncSignalOptions, ThemeColor, ThemeColorMap, ThemeHSLColor, ThemeInkColorMap, ThemeRGBColor, ThemeSwatch, TitleConfig, TitlePart, Translatable, TwitterCardConfig, TypedBreakpointSignal, UnsavedChangesAbandonReason, UnsavedChangesConfirmContext, UnsavedChangesConfirmFn, UnsavedChangesGuardRef, UnsavedChangesRegistration, UnsavedChangesSource, UnsavedChangesTabConfig, UnsavedChangesTabLockRef, UnsavedChangesTrackerRef, ValidateAtLeastOneRequiredConfig, Vec2, ViewportConfig };
|