@angular/core 22.0.0-next.1 → 22.0.0-next.11
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/fesm2022/_attribute-chunk.mjs +1 -1
- package/fesm2022/_attribute-chunk.mjs.map +1 -1
- package/fesm2022/_debug_node-chunk.mjs +2440 -2014
- package/fesm2022/_debug_node-chunk.mjs.map +1 -1
- package/fesm2022/_effect-chunk.mjs +3 -5
- package/fesm2022/_effect-chunk.mjs.map +1 -1
- package/fesm2022/_not_found-chunk.mjs +1 -1
- package/fesm2022/_not_found-chunk.mjs.map +1 -1
- package/fesm2022/_pending_tasks-chunk.mjs +145 -44
- package/fesm2022/_pending_tasks-chunk.mjs.map +1 -1
- package/fesm2022/_resource-chunk.mjs +108 -33
- package/fesm2022/_resource-chunk.mjs.map +1 -1
- package/fesm2022/_untracked-chunk.mjs +10 -7
- package/fesm2022/_untracked-chunk.mjs.map +1 -1
- package/fesm2022/_weak_ref-chunk.mjs +1 -1
- package/fesm2022/_weak_ref-chunk.mjs.map +1 -1
- package/fesm2022/core.mjs +2368 -1892
- package/fesm2022/core.mjs.map +1 -1
- package/fesm2022/primitives-di.mjs +1 -1
- package/fesm2022/primitives-di.mjs.map +1 -1
- package/fesm2022/primitives-event-dispatch.mjs +2 -24
- package/fesm2022/primitives-event-dispatch.mjs.map +1 -1
- package/fesm2022/primitives-signals.mjs +2 -2
- package/fesm2022/primitives-signals.mjs.map +1 -1
- package/fesm2022/rxjs-interop.mjs +6 -3
- package/fesm2022/rxjs-interop.mjs.map +1 -1
- package/fesm2022/testing.mjs +56 -25
- package/fesm2022/testing.mjs.map +1 -1
- package/package.json +7 -3
- package/schematics/bundles/apply_import_manager-CxA_YYgB.cjs +1 -1
- package/schematics/bundles/can-match-snapshot-required.cjs +104 -0
- package/schematics/bundles/change-detection-eager.cjs +1 -1
- package/schematics/bundles/cleanup-unused-imports.cjs +1 -1
- package/schematics/bundles/common-to-standalone-migration.cjs +1 -1
- package/schematics/bundles/compiler_host-CY14HvaP.cjs +1 -1
- package/schematics/bundles/control-flow-migration.cjs +1 -1
- package/schematics/bundles/http-xhr-backend.cjs +6 -11
- package/schematics/bundles/imports-CKV-ITqD.cjs +1 -1
- package/schematics/bundles/incremental-hydration.cjs +94 -0
- package/schematics/bundles/{index-BtLcQH8g.cjs → index-DcezkXLN.cjs} +10 -3
- package/schematics/bundles/inject-migration.cjs +26 -18
- package/schematics/bundles/json-file-Drblb4E1.cjs +1916 -0
- package/schematics/bundles/leading_space-BTPRV0wu.cjs +1 -1
- package/schematics/bundles/{migrate_ts_type_references-MWoZx-Cb.cjs → migrate_ts_type_references-xRTTASnu.cjs} +48 -28
- package/schematics/bundles/model-output.cjs +200 -0
- package/schematics/bundles/ng_component_template-DPAF1aEA.cjs +1 -1
- package/schematics/bundles/ng_decorators-IVztR9rk.cjs +1 -1
- package/schematics/bundles/ngclass-to-class-migration.cjs +14 -6
- package/schematics/bundles/ngstyle-to-style-migration.cjs +14 -6
- package/schematics/bundles/nodes-ZSQ7WZRB.cjs +1 -1
- package/schematics/bundles/output-migration.cjs +2 -2
- package/schematics/bundles/parse_html-C8eKA9px.cjs +1 -1
- package/schematics/bundles/project_paths-D2V-Uh2L.cjs +1 -1
- package/schematics/bundles/project_tsconfig_paths-DkkMibv-.cjs +1 -1
- package/schematics/bundles/property_name-BCpALNpZ.cjs +1 -1
- package/schematics/bundles/route-lazy-loading.cjs +22 -2
- package/schematics/bundles/router-testing-module-migration.cjs +1 -1
- package/schematics/bundles/safe-optional-chaining.cjs +571 -0
- package/schematics/bundles/self-closing-tags-migration.cjs +1 -1
- package/schematics/bundles/signal-input-migration.cjs +3 -3
- package/schematics/bundles/signal-queries-migration.cjs +3 -3
- package/schematics/bundles/signals.cjs +3 -3
- package/schematics/bundles/standalone-migration.cjs +29 -17
- package/schematics/bundles/strict-safe-navigation-narrow.cjs +32 -0
- package/schematics/bundles/strict-templates-default.cjs +63 -0
- package/schematics/migrations.json +30 -0
- package/third_party/@mcp-b/webmcp-types/LICENSE +21 -0
- package/third_party/@mcp-b/webmcp-types/dist/common.d.ts +297 -0
- package/third_party/@mcp-b/webmcp-types/dist/json-schema.d.ts +196 -0
- package/third_party/@mcp-b/webmcp-types/index.d.ts +9 -0
- package/types/_api-chunk.d.ts +44 -17
- package/types/_chrome_dev_tools_performance-chunk.d.ts +4 -3
- package/types/{_discovery-chunk.d.ts → _debug_node-chunk.d.ts} +2157 -2258
- package/types/_effect-chunk.d.ts +1 -1
- package/types/_event_dispatcher-chunk.d.ts +1 -1
- package/types/_formatter-chunk.d.ts +1 -1
- package/types/_weak_ref-chunk.d.ts +1 -1
- package/types/core.d.ts +6833 -6485
- package/types/primitives-di.d.ts +1 -1
- package/types/primitives-event-dispatch.d.ts +1 -1
- package/types/primitives-signals.d.ts +1 -1
- package/types/rxjs-interop.d.ts +5 -4
- package/types/testing.d.ts +6 -6
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
import type { JsonPrimitive, JsonValue } from './common.js';
|
|
2
|
+
/**
|
|
3
|
+
* Primitive JSON Schema `type` values supported by the MVP inference layer.
|
|
4
|
+
*/
|
|
5
|
+
export type JsonSchemaPrimitiveType = 'string' | 'number' | 'integer' | 'boolean' | 'null';
|
|
6
|
+
/**
|
|
7
|
+
* JSON Schema `type` values supported by the MVP inference layer.
|
|
8
|
+
*/
|
|
9
|
+
export type JsonSchemaType = JsonSchemaPrimitiveType | 'object' | 'array';
|
|
10
|
+
/**
|
|
11
|
+
* JSON Schema multi-type tuple (for example `["string", "null"]`).
|
|
12
|
+
*/
|
|
13
|
+
export type JsonSchemaTypeArray = readonly [JsonSchemaType, ...JsonSchemaType[]];
|
|
14
|
+
/**
|
|
15
|
+
* Literal values supported in JSON Schema `enum`/`const`.
|
|
16
|
+
*/
|
|
17
|
+
export type JsonSchemaEnumValue = JsonPrimitive | JsonValue;
|
|
18
|
+
/**
|
|
19
|
+
* Extra JSON Schema keywords tolerated by the inference layer.
|
|
20
|
+
*
|
|
21
|
+
* These keys are intentionally accepted as opaque metadata. Inference only uses
|
|
22
|
+
* the core MVP keywords and ignores these fields.
|
|
23
|
+
*/
|
|
24
|
+
interface SupplementalJsonSchemaKeywords {
|
|
25
|
+
$defs?: unknown;
|
|
26
|
+
$ref?: unknown;
|
|
27
|
+
additionalItems?: unknown;
|
|
28
|
+
allOf?: unknown;
|
|
29
|
+
anyOf?: unknown;
|
|
30
|
+
contains?: unknown;
|
|
31
|
+
definitions?: unknown;
|
|
32
|
+
dependentRequired?: unknown;
|
|
33
|
+
dependentSchemas?: unknown;
|
|
34
|
+
format?: unknown;
|
|
35
|
+
if?: unknown;
|
|
36
|
+
maxContains?: unknown;
|
|
37
|
+
minContains?: unknown;
|
|
38
|
+
not?: unknown;
|
|
39
|
+
oneOf?: unknown;
|
|
40
|
+
patternProperties?: unknown;
|
|
41
|
+
prefixItems?: unknown;
|
|
42
|
+
propertyNames?: unknown;
|
|
43
|
+
then?: unknown;
|
|
44
|
+
unevaluatedItems?: unknown;
|
|
45
|
+
unevaluatedProperties?: unknown;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Non-validation metadata accepted by the MVP inference subset.
|
|
49
|
+
*/
|
|
50
|
+
interface JsonSchemaMetadata extends SupplementalJsonSchemaKeywords {
|
|
51
|
+
default?: JsonValue;
|
|
52
|
+
description?: string;
|
|
53
|
+
examples?: readonly JsonValue[];
|
|
54
|
+
/**
|
|
55
|
+
* OpenAPI-compatible nullability marker.
|
|
56
|
+
*/
|
|
57
|
+
nullable?: boolean;
|
|
58
|
+
title?: string;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* JSON Schema for `type: "string"`.
|
|
62
|
+
*/
|
|
63
|
+
export interface JsonSchemaString extends JsonSchemaMetadata {
|
|
64
|
+
const?: string;
|
|
65
|
+
enum?: readonly string[];
|
|
66
|
+
maxLength?: number;
|
|
67
|
+
minLength?: number;
|
|
68
|
+
pattern?: string;
|
|
69
|
+
type: 'string';
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* JSON Schema for `type: "number"` and `type: "integer"`.
|
|
73
|
+
*/
|
|
74
|
+
export interface JsonSchemaNumber extends JsonSchemaMetadata {
|
|
75
|
+
const?: number;
|
|
76
|
+
enum?: readonly number[];
|
|
77
|
+
exclusiveMaximum?: number;
|
|
78
|
+
exclusiveMinimum?: number;
|
|
79
|
+
maximum?: number;
|
|
80
|
+
minimum?: number;
|
|
81
|
+
multipleOf?: number;
|
|
82
|
+
type: 'number' | 'integer';
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* JSON Schema for `type: "boolean"`.
|
|
86
|
+
*/
|
|
87
|
+
export interface JsonSchemaBoolean extends JsonSchemaMetadata {
|
|
88
|
+
const?: boolean;
|
|
89
|
+
enum?: readonly boolean[];
|
|
90
|
+
type: 'boolean';
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* JSON Schema for `type: "null"`.
|
|
94
|
+
*/
|
|
95
|
+
export interface JsonSchemaNull extends JsonSchemaMetadata {
|
|
96
|
+
const?: null;
|
|
97
|
+
enum?: readonly null[];
|
|
98
|
+
type: 'null';
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* JSON Schema for `type: "array"`.
|
|
102
|
+
*/
|
|
103
|
+
export interface JsonSchemaArray extends JsonSchemaMetadata {
|
|
104
|
+
items: JsonSchemaForInference;
|
|
105
|
+
maxItems?: number;
|
|
106
|
+
minItems?: number;
|
|
107
|
+
type: 'array';
|
|
108
|
+
uniqueItems?: boolean;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* JSON Schema for `type: "object"`.
|
|
112
|
+
*/
|
|
113
|
+
export interface JsonSchemaObject extends JsonSchemaMetadata {
|
|
114
|
+
additionalProperties?: boolean | JsonSchemaForInference;
|
|
115
|
+
maxProperties?: number;
|
|
116
|
+
minProperties?: number;
|
|
117
|
+
properties?: Readonly<Record<string, JsonSchemaForInference>>;
|
|
118
|
+
required?: readonly string[];
|
|
119
|
+
type: 'object';
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* JSON Schema for multi-type unions via `type: [...]`.
|
|
123
|
+
*/
|
|
124
|
+
export interface JsonSchemaMultiType extends JsonSchemaMetadata {
|
|
125
|
+
additionalProperties?: boolean | JsonSchemaForInference;
|
|
126
|
+
const?: JsonSchemaEnumValue;
|
|
127
|
+
enum?: readonly JsonSchemaEnumValue[];
|
|
128
|
+
items?: JsonSchemaForInference;
|
|
129
|
+
properties?: Readonly<Record<string, JsonSchemaForInference>>;
|
|
130
|
+
required?: readonly string[];
|
|
131
|
+
type: JsonSchemaTypeArray;
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* JSON Schema subset supported by the MVP type inference layer.
|
|
135
|
+
*/
|
|
136
|
+
export type JsonSchemaForInference = JsonSchemaArray | JsonSchemaBoolean | JsonSchemaMultiType | JsonSchemaNull | JsonSchemaNumber | JsonSchemaObject | JsonSchemaString;
|
|
137
|
+
type Simplify<T> = {
|
|
138
|
+
[K in keyof T]: T[K];
|
|
139
|
+
} & {};
|
|
140
|
+
type EmptyObject = Record<never, never>;
|
|
141
|
+
type EnumLiteral<TSchema> = TSchema extends {
|
|
142
|
+
enum: infer TEnum extends readonly unknown[];
|
|
143
|
+
} ? Extract<TEnum[number], JsonSchemaEnumValue> : never;
|
|
144
|
+
type ConstLiteral<TSchema> = TSchema extends {
|
|
145
|
+
const: infer TConst;
|
|
146
|
+
} ? Extract<TConst, JsonSchemaEnumValue> : never;
|
|
147
|
+
type PropertiesOf<TSchema> = TSchema extends {
|
|
148
|
+
properties: infer TProperties extends Readonly<Record<string, JsonSchemaForInference>>;
|
|
149
|
+
} ? TProperties : EmptyObject;
|
|
150
|
+
type RequiredKeysOf<TSchema, TProperties extends Record<string, unknown>> = TSchema extends {
|
|
151
|
+
required: readonly (infer TRequired)[];
|
|
152
|
+
} ? string extends TRequired ? never : Extract<TRequired, keyof TProperties & string> : never;
|
|
153
|
+
type RequiredProps<TProperties extends Record<string, JsonSchemaForInference>, TRequiredKeys extends string> = {
|
|
154
|
+
[K in keyof TProperties as K extends TRequiredKeys ? K : never]-?: InferJsonSchema<TProperties[K]>;
|
|
155
|
+
};
|
|
156
|
+
type OptionalProps<TProperties extends Record<string, JsonSchemaForInference>, TRequiredKeys extends string> = {
|
|
157
|
+
[K in keyof TProperties as K extends TRequiredKeys ? never : K]?: InferJsonSchema<TProperties[K]>;
|
|
158
|
+
};
|
|
159
|
+
type PropertyKeysOf<TSchema> = keyof PropertiesOf<TSchema> & string;
|
|
160
|
+
type AdditionalSchemaOf<TSchema> = TSchema extends {
|
|
161
|
+
additionalProperties: infer TAdditional;
|
|
162
|
+
} ? TAdditional : undefined;
|
|
163
|
+
type AdditionalPropsValue<TSchema> = AdditionalSchemaOf<TSchema> extends JsonSchemaForInference ? InferJsonSchema<AdditionalSchemaOf<TSchema>> : unknown;
|
|
164
|
+
type AdditionalPropsOf<TSchema> = TSchema extends {
|
|
165
|
+
additionalProperties: false;
|
|
166
|
+
} ? EmptyObject : AdditionalSchemaOf<TSchema> extends JsonSchemaForInference ? PropertyKeysOf<TSchema> extends never ? Record<string, AdditionalPropsValue<TSchema>> : Record<string, unknown> : Record<string, unknown>;
|
|
167
|
+
type InferObject<TSchema> = Simplify<RequiredProps<PropertiesOf<TSchema>, RequiredKeysOf<TSchema, PropertiesOf<TSchema>>> & OptionalProps<PropertiesOf<TSchema>, RequiredKeysOf<TSchema, PropertiesOf<TSchema>>> & AdditionalPropsOf<TSchema>>;
|
|
168
|
+
type TypeKeywordOf<TSchema> = TSchema extends {
|
|
169
|
+
type?: infer TType;
|
|
170
|
+
} ? 'type' extends keyof TSchema ? TType : undefined : undefined;
|
|
171
|
+
type TypeOptionsOf<TSchema> = [TypeKeywordOf<TSchema>] extends [undefined] ? 'object' : TypeKeywordOf<TSchema> extends readonly unknown[] ? Extract<TypeKeywordOf<TSchema>[number], JsonSchemaType> : Extract<TypeKeywordOf<TSchema>, JsonSchemaType>;
|
|
172
|
+
type InferFromTypeOption<TSchema, TType extends JsonSchemaType> = TType extends 'object' ? InferObject<TSchema> : TType extends 'array' ? TSchema extends {
|
|
173
|
+
items: infer TItems;
|
|
174
|
+
} ? InferJsonSchema<TItems>[] : unknown[] : TType extends 'string' ? string : TType extends 'number' | 'integer' ? number : TType extends 'boolean' ? boolean : TType extends 'null' ? null : unknown;
|
|
175
|
+
type InferFromTypeKeyword<TSchema> = TypeOptionsOf<TSchema> extends never ? unknown : InferFromTypeOption<TSchema, TypeOptionsOf<TSchema>>;
|
|
176
|
+
type ApplyNullable<TSchema, TValue> = TSchema extends {
|
|
177
|
+
nullable: true;
|
|
178
|
+
} ? TValue | null : TValue;
|
|
179
|
+
/**
|
|
180
|
+
* Infers a TypeScript type from the supported JSON Schema subset.
|
|
181
|
+
*
|
|
182
|
+
* `const` and `enum` take precedence when present.
|
|
183
|
+
*/
|
|
184
|
+
export type InferJsonSchema<TSchema> = [ConstLiteral<TSchema>] extends [never] ? [EnumLiteral<TSchema>] extends [never] ? ApplyNullable<TSchema, InferFromTypeKeyword<TSchema>> : ApplyNullable<TSchema, EnumLiteral<TSchema>> : ApplyNullable<TSchema, ConstLiteral<TSchema>>;
|
|
185
|
+
type IsWidenedTypeKeyword<TTypeKeyword> = string extends TTypeKeyword ? true : TTypeKeyword extends readonly unknown[] ? string extends TTypeKeyword[number] ? true : false : false;
|
|
186
|
+
type IncludesObjectType<TSchema> = TypeOptionsOf<TSchema> extends never ? false : 'object' extends TypeOptionsOf<TSchema> ? true : false;
|
|
187
|
+
/**
|
|
188
|
+
* Infers tool argument types from a root `InputSchema`.
|
|
189
|
+
*
|
|
190
|
+
* If the schema is not a literal object schema (for example a widened
|
|
191
|
+
* `InputSchema` loaded at runtime), this intentionally falls back to
|
|
192
|
+
* `Record<string, unknown>`.
|
|
193
|
+
*/
|
|
194
|
+
export type InferArgsFromInputSchema<TSchema> = IsWidenedTypeKeyword<TypeKeywordOf<TSchema>> extends true ? Record<string, unknown> : IncludesObjectType<TSchema> extends true ? InferObject<TSchema> : Record<string, unknown>;
|
|
195
|
+
export {};
|
|
196
|
+
//# sourceMappingURL=json-schema.d.ts.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
export {InferArgsFromInputSchema, JsonSchemaForInference} from './dist/json-schema.js';
|
package/types/_api-chunk.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Angular v22.0.0-next.
|
|
2
|
+
* @license Angular v22.0.0-next.11
|
|
3
3
|
* (c) 2010-2026 Google LLC. https://angular.dev/
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import { OutputRef, OutputRefSubscription, DestroyRef, Signal,
|
|
7
|
+
import { OutputRef, OutputRefSubscription, DestroyRef, Signal, ValueEqualityFn, Injector, WritableSignal } from './_chrome_dev_tools_performance-chunk.js';
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* An `OutputEmitterRef` is created by the `output()` function and can be
|
|
@@ -138,7 +138,7 @@ interface ResourceParamsContext {
|
|
|
138
138
|
*
|
|
139
139
|
* `local` - The resource's value was set locally via `.set()` or `.update()`.
|
|
140
140
|
*
|
|
141
|
-
* @
|
|
141
|
+
* @publicApi 22.0
|
|
142
142
|
*/
|
|
143
143
|
type ResourceStatus = 'idle' | 'error' | 'loading' | 'reloading' | 'resolved' | 'local';
|
|
144
144
|
/**
|
|
@@ -148,7 +148,7 @@ type ResourceStatus = 'idle' | 'error' | 'loading' | 'reloading' | 'resolved' |
|
|
|
148
148
|
* The usual way of creating a `Resource` is through the `resource` function, but various other APIs
|
|
149
149
|
* may present `Resource` instances to describe their own concepts.
|
|
150
150
|
*
|
|
151
|
-
* @
|
|
151
|
+
* @publicApi 22.0
|
|
152
152
|
*/
|
|
153
153
|
interface Resource<T> {
|
|
154
154
|
/**
|
|
@@ -185,7 +185,7 @@ interface Resource<T> {
|
|
|
185
185
|
*
|
|
186
186
|
* Overwriting the value of a resource sets it to the 'local' state.
|
|
187
187
|
*
|
|
188
|
-
* @
|
|
188
|
+
* @publicApi 22.0
|
|
189
189
|
*/
|
|
190
190
|
interface WritableResource<T> extends Resource<T> {
|
|
191
191
|
readonly value: WritableSignal<T>;
|
|
@@ -213,7 +213,7 @@ interface WritableResource<T> extends Resource<T> {
|
|
|
213
213
|
/**
|
|
214
214
|
* A `WritableResource` created through the `resource` function.
|
|
215
215
|
*
|
|
216
|
-
* @
|
|
216
|
+
* @publicApi 22.0
|
|
217
217
|
*/
|
|
218
218
|
interface ResourceRef<T> extends WritableResource<T> {
|
|
219
219
|
hasValue(this: T extends undefined ? this : never): this is ResourceRef<Exclude<T, undefined>>;
|
|
@@ -227,7 +227,7 @@ interface ResourceRef<T> extends WritableResource<T> {
|
|
|
227
227
|
* Parameter to a `ResourceLoader` which gives the request and other options for the current loading
|
|
228
228
|
* operation.
|
|
229
229
|
*
|
|
230
|
-
* @
|
|
230
|
+
* @publicApi 22.0
|
|
231
231
|
*/
|
|
232
232
|
interface ResourceLoaderParams<R> {
|
|
233
233
|
params: NoInfer<Exclude<R, undefined>>;
|
|
@@ -239,19 +239,19 @@ interface ResourceLoaderParams<R> {
|
|
|
239
239
|
/**
|
|
240
240
|
* Loading function for a `Resource`.
|
|
241
241
|
*
|
|
242
|
-
* @
|
|
242
|
+
* @publicApi 22.0
|
|
243
243
|
*/
|
|
244
244
|
type ResourceLoader<T, R> = (param: ResourceLoaderParams<R>) => PromiseLike<T>;
|
|
245
245
|
/**
|
|
246
246
|
* Streaming loader for a `Resource`.
|
|
247
247
|
*
|
|
248
|
-
* @
|
|
248
|
+
* @publicApi 22.0
|
|
249
249
|
*/
|
|
250
|
-
type ResourceStreamingLoader<T, R> = (param: ResourceLoaderParams<R>) => PromiseLike<Signal<ResourceStreamItem<T
|
|
250
|
+
type ResourceStreamingLoader<T, R> = (param: ResourceLoaderParams<R>) => Signal<ResourceStreamItem<T>> | PromiseLike<Signal<ResourceStreamItem<T>>> | undefined;
|
|
251
251
|
/**
|
|
252
252
|
* Options to the `resource` function, for creating a resource.
|
|
253
253
|
*
|
|
254
|
-
* @
|
|
254
|
+
* @publicApi 22.0
|
|
255
255
|
*/
|
|
256
256
|
interface BaseResourceOptions<T, R> {
|
|
257
257
|
/**
|
|
@@ -274,11 +274,16 @@ interface BaseResourceOptions<T, R> {
|
|
|
274
274
|
* Overrides the `Injector` used by `resource`.
|
|
275
275
|
*/
|
|
276
276
|
injector?: Injector;
|
|
277
|
+
/**
|
|
278
|
+
* Identifier used to cache the resource data in the `TransferState` during server-side rendering and to retrieve it on the client side.
|
|
279
|
+
* This value value needs to be identical for both the client and server.
|
|
280
|
+
*/
|
|
281
|
+
id?: string;
|
|
277
282
|
}
|
|
278
283
|
/**
|
|
279
284
|
* Options to the `resource` function, for creating a resource.
|
|
280
285
|
*
|
|
281
|
-
* @
|
|
286
|
+
* @publicApi 22.0
|
|
282
287
|
*/
|
|
283
288
|
interface PromiseResourceOptions<T, R> extends BaseResourceOptions<T, R> {
|
|
284
289
|
/**
|
|
@@ -293,7 +298,7 @@ interface PromiseResourceOptions<T, R> extends BaseResourceOptions<T, R> {
|
|
|
293
298
|
/**
|
|
294
299
|
* Options to the `resource` function, for creating a resource.
|
|
295
300
|
*
|
|
296
|
-
* @
|
|
301
|
+
* @publicApi 22.0
|
|
297
302
|
*/
|
|
298
303
|
interface StreamingResourceOptions<T, R> extends BaseResourceOptions<T, R> {
|
|
299
304
|
/**
|
|
@@ -307,7 +312,7 @@ interface StreamingResourceOptions<T, R> extends BaseResourceOptions<T, R> {
|
|
|
307
312
|
loader?: never;
|
|
308
313
|
}
|
|
309
314
|
/**
|
|
310
|
-
* @
|
|
315
|
+
* @publicApi 22.0
|
|
311
316
|
*/
|
|
312
317
|
type ResourceOptions<T, R> = (PromiseResourceOptions<T, R> | StreamingResourceOptions<T, R>) & {
|
|
313
318
|
/**
|
|
@@ -316,7 +321,7 @@ type ResourceOptions<T, R> = (PromiseResourceOptions<T, R> | StreamingResourceOp
|
|
|
316
321
|
debugName?: string;
|
|
317
322
|
};
|
|
318
323
|
/**
|
|
319
|
-
* @
|
|
324
|
+
* @publicApi 22.0
|
|
320
325
|
*/
|
|
321
326
|
type ResourceStreamItem<T> = {
|
|
322
327
|
value: T;
|
|
@@ -326,7 +331,7 @@ type ResourceStreamItem<T> = {
|
|
|
326
331
|
/**
|
|
327
332
|
* An explicit representation of a resource's state.
|
|
328
333
|
*
|
|
329
|
-
* @
|
|
334
|
+
* @publicApi 22.0
|
|
330
335
|
* @see [Resource composition with snapshots](guide/signals/resource#resource-composition-with-snapshots)
|
|
331
336
|
*/
|
|
332
337
|
type ResourceSnapshot<T> = {
|
|
@@ -342,6 +347,28 @@ type ResourceSnapshot<T> = {
|
|
|
342
347
|
readonly status: 'error';
|
|
343
348
|
readonly error: Error;
|
|
344
349
|
};
|
|
350
|
+
/**
|
|
351
|
+
* Options for `debounced`.
|
|
352
|
+
*
|
|
353
|
+
* @see [Debouncing signals with `debounced`](guide/signals/debounced)
|
|
354
|
+
*
|
|
355
|
+
* @experimental 22.0
|
|
356
|
+
*/
|
|
357
|
+
interface DebouncedOptions<T> {
|
|
358
|
+
/** The `Injector` to use for the debounced resource. */
|
|
359
|
+
injector?: Injector;
|
|
360
|
+
/** The equality function to use for comparing values. */
|
|
361
|
+
equal?: ValueEqualityFn<T>;
|
|
362
|
+
}
|
|
363
|
+
/**
|
|
364
|
+
* Represents the wait condition for item debouncing.
|
|
365
|
+
* Can be a number of milliseconds or a function that returns a Promise.
|
|
366
|
+
*
|
|
367
|
+
* @see [Debouncing signals with `debounced`](guide/signals/debounced)
|
|
368
|
+
*
|
|
369
|
+
* @experimental 22.0
|
|
370
|
+
*/
|
|
371
|
+
type DebounceTimer<T> = number | ((value: T, lastValue: ResourceSnapshot<T>) => Promise<void> | void);
|
|
345
372
|
|
|
346
373
|
export { OutputEmitterRef, ResourceDependencyError, ResourceParamsStatus, getOutputDestroyRef, output };
|
|
347
|
-
export type { BaseResourceOptions, OutputOptions, PromiseResourceOptions, Resource, ResourceLoader, ResourceLoaderParams, ResourceOptions, ResourceParamsContext, ResourceRef, ResourceSnapshot, ResourceStatus, ResourceStreamItem, ResourceStreamingLoader, StreamingResourceOptions, WritableResource };
|
|
374
|
+
export type { BaseResourceOptions, DebounceTimer, DebouncedOptions, OutputOptions, PromiseResourceOptions, Resource, ResourceLoader, ResourceLoaderParams, ResourceOptions, ResourceParamsContext, ResourceRef, ResourceSnapshot, ResourceStatus, ResourceStreamItem, ResourceStreamingLoader, StreamingResourceOptions, WritableResource };
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Angular v22.0.0-next.
|
|
2
|
+
* @license Angular v22.0.0-next.11
|
|
3
3
|
* (c) 2010-2026 Google LLC. https://angular.dev/
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
import { SIGNAL } from './_formatter-chunk.js';
|
|
8
|
+
import * as _angular_core from '@angular/core';
|
|
8
9
|
import { EventContract } from './_event_dispatcher-chunk.js';
|
|
9
10
|
|
|
10
11
|
/** Symbol used distinguish `WritableSignal` from other non-writable signals and functions. */
|
|
@@ -741,7 +742,7 @@ declare abstract class Injector {
|
|
|
741
742
|
name?: string;
|
|
742
743
|
}): DestroyableInjector;
|
|
743
744
|
/** @nocollapse */
|
|
744
|
-
static ɵprov:
|
|
745
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<Injector>;
|
|
745
746
|
}
|
|
746
747
|
/**
|
|
747
748
|
* An Injector that the owner can destroy and trigger the DestroyRef.destroy hooks.
|
|
@@ -843,7 +844,7 @@ type TimeStampName = string;
|
|
|
843
844
|
type DevToolsColor = 'primary' | 'primary-light' | 'primary-dark' | 'secondary' | 'secondary-light' | 'secondary-dark' | 'tertiary' | 'tertiary-light' | 'tertiary-dark' | 'error';
|
|
844
845
|
declare global {
|
|
845
846
|
interface Console {
|
|
846
|
-
timeStamp(label: string, start: TimeStampName, end?: TimeStampName, trackName?: string, trackGroup?: string, color?: DevToolsColor): void;
|
|
847
|
+
timeStamp(label: string, start: TimeStampName, end?: TimeStampName, trackName?: string, trackGroup?: string, color?: DevToolsColor, detail?: object): void;
|
|
847
848
|
}
|
|
848
849
|
}
|
|
849
850
|
/**
|