@angular-wave/angular.ts 0.16.1 → 0.17.0
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/@types/angular.d.ts +4 -0
- package/@types/animations/animate-css-driver.d.ts +10 -2
- package/@types/animations/animate-css.d.ts +8 -14
- package/@types/animations/animation.d.ts +1 -3
- package/@types/animations/cache/animate-cache.d.ts +99 -0
- package/@types/animations/cache/interface.d.ts +17 -0
- package/@types/animations/interface.d.ts +15 -18
- package/@types/animations/raf/raf-scheduler.d.ts +37 -0
- package/@types/core/compile/interface.d.ts +36 -5
- package/@types/core/interpolate/interface.d.ts +7 -1
- package/@types/core/scope/interface.d.ts +14 -4
- package/@types/core/scope/scope.d.ts +58 -22
- package/@types/directive/form/form.d.ts +16 -4
- package/@types/directive/model/model.d.ts +6 -4
- package/@types/filters/order-by.d.ts +13 -0
- package/@types/interface.d.ts +3 -3
- package/@types/router/path/path-node.d.ts +1 -1
- package/@types/router/resolve/resolve-context.d.ts +1 -1
- package/@types/router/transition/hook-registry.d.ts +1 -1
- package/@types/router/url/url-matcher.d.ts +1 -1
- package/@types/services/sce/interface.d.ts +1 -4
- package/@types/services/sce/sce.d.ts +7 -2
- package/@types/shared/common.d.ts +100 -39
- package/@types/shared/node.d.ts +5 -5
- package/@types/shared/strings.d.ts +2 -2
- package/dist/angular-ts.esm.js +1342 -901
- package/dist/angular-ts.umd.js +1342 -901
- package/dist/angular-ts.umd.min.js +1 -1
- package/dist/angular-ts.umd.min.js.gz +0 -0
- package/dist/angular-ts.umd.min.js.map +1 -1
- package/package.json +1 -1
- package/@types/animations/animate-cache.d.ts +0 -94
- package/@types/animations/raf-scheduler.d.ts +0 -35
package/@types/angular.d.ts
CHANGED
|
@@ -85,6 +85,10 @@ export class Angular extends EventTarget {
|
|
|
85
85
|
requires?: Array<string>,
|
|
86
86
|
configFn?: ng.Injectable<any>,
|
|
87
87
|
): NgModule;
|
|
88
|
+
/**
|
|
89
|
+
* @param {CustomEvent} event
|
|
90
|
+
*/
|
|
91
|
+
dispatchEvent(event: CustomEvent): boolean;
|
|
88
92
|
/**
|
|
89
93
|
* Use this function to manually start up AngularTS application.
|
|
90
94
|
*
|
|
@@ -1,6 +1,14 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* @param {import("./animation.js").AnimationProvider} $$animationProvider
|
|
3
|
+
*/
|
|
4
|
+
export function AnimateCssDriverProvider(
|
|
5
|
+
$$animationProvider: import("./animation.js").AnimationProvider,
|
|
6
|
+
): void;
|
|
2
7
|
export class AnimateCssDriverProvider {
|
|
3
|
-
|
|
8
|
+
/**
|
|
9
|
+
* @param {import("./animation.js").AnimationProvider} $$animationProvider
|
|
10
|
+
*/
|
|
11
|
+
constructor($$animationProvider: import("./animation.js").AnimationProvider);
|
|
4
12
|
/**
|
|
5
13
|
* @returns {Function}
|
|
6
14
|
*/
|
|
@@ -1,17 +1,11 @@
|
|
|
1
1
|
export function AnimateCssProvider(): void;
|
|
2
2
|
export class AnimateCssProvider {
|
|
3
|
-
$get: (
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
) => {
|
|
12
|
-
$$willAnimate: boolean;
|
|
13
|
-
start(): any;
|
|
14
|
-
end: () => void;
|
|
15
|
-
})
|
|
16
|
-
)[];
|
|
3
|
+
$get: (() => (
|
|
4
|
+
element: HTMLElement,
|
|
5
|
+
initialOptions: ng.AnimationOptions,
|
|
6
|
+
) => {
|
|
7
|
+
$$willAnimate: boolean;
|
|
8
|
+
start(): any;
|
|
9
|
+
end: () => void;
|
|
10
|
+
})[];
|
|
17
11
|
}
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
export function AnimationProvider(): void;
|
|
2
2
|
export class AnimationProvider {
|
|
3
|
-
drivers:
|
|
3
|
+
drivers: string[];
|
|
4
4
|
$get: (
|
|
5
5
|
| string
|
|
6
6
|
| ((
|
|
7
7
|
$rootScope: ng.RootScopeService,
|
|
8
8
|
$injector: ng.InjectorService,
|
|
9
|
-
$$rAFScheduler: import("./raf-scheduler.js").RafScheduler,
|
|
10
|
-
$$animateCache: any,
|
|
11
9
|
) => (elementParam: any, event: any, options: any) => AnimateRunner)
|
|
12
10
|
)[];
|
|
13
11
|
}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Animation cache responsible for:
|
|
3
|
+
* - Generating stable animation cache keys
|
|
4
|
+
* - Tracking cached animation results
|
|
5
|
+
* - Avoiding repeated animation work
|
|
6
|
+
*
|
|
7
|
+
* Cache keys are scoped per parent node to prevent collisions between
|
|
8
|
+
* structurally identical nodes in different DOM subtrees.
|
|
9
|
+
*
|
|
10
|
+
* @internal
|
|
11
|
+
*/
|
|
12
|
+
export class AnimateCache {
|
|
13
|
+
/**
|
|
14
|
+
* Generates a stable cache key for an animation invocation.
|
|
15
|
+
*
|
|
16
|
+
* The key is derived from:
|
|
17
|
+
* - The node's parent (used as a cache namespace)
|
|
18
|
+
* - The animation method (e.g. enter, leave, addClass)
|
|
19
|
+
* - The node's current CSS class state
|
|
20
|
+
* - Any classes being added or removed
|
|
21
|
+
*
|
|
22
|
+
* If the node is not attached to the DOM, the node itself is used
|
|
23
|
+
* as the parent scope to avoid key collisions.
|
|
24
|
+
*
|
|
25
|
+
* @param {HTMLElement} node
|
|
26
|
+
* Target element being animated.
|
|
27
|
+
* @param {string} method
|
|
28
|
+
* Animation method name.
|
|
29
|
+
* @param {string} [addClass]
|
|
30
|
+
* CSS class scheduled to be added during the animation.
|
|
31
|
+
* @param {string} [removeClass]
|
|
32
|
+
* CSS class scheduled to be removed during the animation.
|
|
33
|
+
*
|
|
34
|
+
* @returns {string}
|
|
35
|
+
* A unique, deterministic cache key.
|
|
36
|
+
*/
|
|
37
|
+
_cacheKey(
|
|
38
|
+
node: HTMLElement,
|
|
39
|
+
method: string,
|
|
40
|
+
addClass?: string,
|
|
41
|
+
removeClass?: string,
|
|
42
|
+
): string;
|
|
43
|
+
/**
|
|
44
|
+
* Determines whether a cache entry exists but is marked as invalid.
|
|
45
|
+
*
|
|
46
|
+
* This is typically used to detect animations that were previously
|
|
47
|
+
* cached but resolved without a duration.
|
|
48
|
+
*
|
|
49
|
+
* @param {string} key
|
|
50
|
+
* Cache key to test.
|
|
51
|
+
* @returns {boolean}
|
|
52
|
+
* True if an invalid cache entry exists, false otherwise.
|
|
53
|
+
*/
|
|
54
|
+
_containsCachedAnimationWithoutDuration(key: string): boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Clears all cached animation entries.
|
|
57
|
+
*
|
|
58
|
+
* Does not reset parent IDs.
|
|
59
|
+
*
|
|
60
|
+
* @returns {void}
|
|
61
|
+
*/
|
|
62
|
+
_flush(): void;
|
|
63
|
+
/**
|
|
64
|
+
* Returns the number of times a cache entry has been used.
|
|
65
|
+
*
|
|
66
|
+
* @param {string} key
|
|
67
|
+
* Cache key to query.
|
|
68
|
+
* @returns {number}
|
|
69
|
+
* Usage count, or 0 if the entry does not exist.
|
|
70
|
+
*/
|
|
71
|
+
_count(key: string): number;
|
|
72
|
+
/**
|
|
73
|
+
* Retrieves the cached value associated with a cache key.
|
|
74
|
+
*
|
|
75
|
+
* @param {string} key
|
|
76
|
+
* Cache key to retrieve.
|
|
77
|
+
* @returns {any}
|
|
78
|
+
* Cached value, or undefined if not present.
|
|
79
|
+
*/
|
|
80
|
+
_get(key: string): any;
|
|
81
|
+
/**
|
|
82
|
+
* Inserts or updates a cache entry.
|
|
83
|
+
*
|
|
84
|
+
* Existing entries will have their usage count incremented
|
|
85
|
+
* and their value replaced.
|
|
86
|
+
*
|
|
87
|
+
* @param {string} key
|
|
88
|
+
* Cache key.
|
|
89
|
+
* @param {any} value
|
|
90
|
+
* Value to cache.
|
|
91
|
+
* @param {boolean} isValid
|
|
92
|
+
* Whether the cached value is considered valid.
|
|
93
|
+
*
|
|
94
|
+
* @returns {void}
|
|
95
|
+
*/
|
|
96
|
+
_put(key: string, value: any, isValid: boolean): void;
|
|
97
|
+
#private;
|
|
98
|
+
}
|
|
99
|
+
export const animateCache: AnimateCache;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Internal cache entry used to track animation results and usage.
|
|
3
|
+
*/
|
|
4
|
+
export interface CacheEntry {
|
|
5
|
+
/**
|
|
6
|
+
* Number of times this cache entry has been accessed or reused.
|
|
7
|
+
*/
|
|
8
|
+
total: number;
|
|
9
|
+
/**
|
|
10
|
+
* Cached animation result (typically an animation runner or metadata).
|
|
11
|
+
*/
|
|
12
|
+
value: any;
|
|
13
|
+
/**
|
|
14
|
+
* Whether the cached animation is considered valid (e.g. has a duration).
|
|
15
|
+
*/
|
|
16
|
+
isValid: boolean;
|
|
17
|
+
}
|
|
@@ -1,22 +1,5 @@
|
|
|
1
1
|
import { AnimateRunner } from "./runner/animate-runner.js";
|
|
2
2
|
import { QueuePhase } from "./queue/interface.ts";
|
|
3
|
-
export type RafScheduler = {
|
|
4
|
-
/**
|
|
5
|
-
* Schedules a list of functions to run on the next animation frame(s).
|
|
6
|
-
* @param tasks - The tasks to be scheduled.
|
|
7
|
-
*/
|
|
8
|
-
(tasks: Array<() => void>): void;
|
|
9
|
-
/**
|
|
10
|
-
* Internal queue of scheduled task arrays.
|
|
11
|
-
*/
|
|
12
|
-
_queue: Array<Array<() => void>>;
|
|
13
|
-
/**
|
|
14
|
-
* Waits until the animation frame is quiet before running the provided function.
|
|
15
|
-
* Cancels any previous animation frame requests.
|
|
16
|
-
* @param fn - The function to run when the frame is quiet.
|
|
17
|
-
*/
|
|
18
|
-
_waitUntilQuiet(fn: () => void): void;
|
|
19
|
-
};
|
|
20
3
|
export interface AnimationHost {
|
|
21
4
|
/** Pause animation. */
|
|
22
5
|
pause?: () => void;
|
|
@@ -100,10 +83,24 @@ export interface AnimationOptions {
|
|
|
100
83
|
tempClasses: string | string[];
|
|
101
84
|
/** Optional DOM operation callback executed before animation */
|
|
102
85
|
domOperation?: () => void;
|
|
103
|
-
|
|
86
|
+
onDone?: () => void;
|
|
87
|
+
_domOperationFired?: boolean;
|
|
104
88
|
$$prepared?: boolean;
|
|
89
|
+
$$skipPreparationClasses?: boolean;
|
|
90
|
+
cleanupStyles?: boolean;
|
|
105
91
|
preparationClasses?: string;
|
|
106
92
|
activeClasses?: string;
|
|
93
|
+
duration?: number | string;
|
|
94
|
+
event?: string | string[];
|
|
95
|
+
easing?: string;
|
|
96
|
+
delay?: string;
|
|
97
|
+
structural?: boolean;
|
|
98
|
+
transitionStyle?: string;
|
|
99
|
+
staggerIndex?: number;
|
|
100
|
+
skipBlocking?: boolean;
|
|
101
|
+
stagger?: number | string;
|
|
102
|
+
keyframeStyle?: string;
|
|
103
|
+
applyClassesEarly?: boolean;
|
|
107
104
|
}
|
|
108
105
|
export interface AnimateJsRunner {
|
|
109
106
|
$$willAnimate: true;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A requestAnimationFrame-based scheduler.
|
|
3
|
+
*/
|
|
4
|
+
export class RafScheduler {
|
|
5
|
+
/**
|
|
6
|
+
* Internal task queue, where each item is an array of functions to run.
|
|
7
|
+
* @type {Array<() => void>}
|
|
8
|
+
*/
|
|
9
|
+
_queue: Array<() => void>;
|
|
10
|
+
/**
|
|
11
|
+
* ID of the currently scheduled animation frame (if any).
|
|
12
|
+
* Used for cancellation and tracking.
|
|
13
|
+
* @type {number|null}
|
|
14
|
+
*/
|
|
15
|
+
_cancelFn: number | null;
|
|
16
|
+
/**
|
|
17
|
+
* Processes the next batch of tasks in the animation frame.
|
|
18
|
+
* Executes the first group of functions in the queue, then
|
|
19
|
+
* schedules the next frame if needed.
|
|
20
|
+
*/
|
|
21
|
+
_nextTick(): void;
|
|
22
|
+
/**
|
|
23
|
+
* The main scheduler function.
|
|
24
|
+
* Accepts an array of functions and schedules them to run in the next available frame(s).
|
|
25
|
+
*
|
|
26
|
+
* @param {Array<() => void>} tasks
|
|
27
|
+
*/
|
|
28
|
+
_schedule(tasks: Array<() => void>): void;
|
|
29
|
+
/**
|
|
30
|
+
* Cancels any pending frame and runs the given function once the frame is idle.
|
|
31
|
+
* Useful for debounced updates.
|
|
32
|
+
*
|
|
33
|
+
* @param {Function} fn - Function to run when the animation frame is quiet.
|
|
34
|
+
*/
|
|
35
|
+
_waitUntilQuiet(fn: Function): void;
|
|
36
|
+
}
|
|
37
|
+
export const rafScheduler: RafScheduler;
|
|
@@ -2,6 +2,7 @@ import type { Scope } from "../scope/scope.js";
|
|
|
2
2
|
import type { NodeRef } from "../../shared/noderef.js";
|
|
3
3
|
type TranscludedNodes = Node | Node[] | NodeList | null;
|
|
4
4
|
type TranscludeFnCb = (clone?: TranscludedNodes, scope?: Scope | null) => void;
|
|
5
|
+
export type ChildTranscludeOrLinkFn = TranscludeFn | PublicLinkFn;
|
|
5
6
|
/**
|
|
6
7
|
* A function passed as the fifth argument to a `PublicLinkFn` link function.
|
|
7
8
|
* It behaves like a linking function, with the `scope` argument automatically created
|
|
@@ -12,13 +13,33 @@ type TranscludeFnCb = (clone?: TranscludedNodes, scope?: Scope | null) => void;
|
|
|
12
13
|
export type TranscludeFn = {
|
|
13
14
|
(cb: TranscludeFnCb): void;
|
|
14
15
|
(scope: Scope, cb?: TranscludeFnCb): void;
|
|
15
|
-
|
|
16
|
+
_slots?: any;
|
|
16
17
|
};
|
|
18
|
+
export type CloneAttachFn = (
|
|
19
|
+
clone: Node | Element | NodeList,
|
|
20
|
+
scope?: Scope,
|
|
21
|
+
) => void;
|
|
17
22
|
/**
|
|
18
23
|
* A specialized version of `TranscludeFn` with the scope argument already bound.
|
|
19
24
|
* This function requires no parameters and returns the same result as `TranscludeFn`.
|
|
20
25
|
*/
|
|
21
|
-
export
|
|
26
|
+
export interface BoundTranscludeFn {
|
|
27
|
+
(
|
|
28
|
+
scope?: Scope,
|
|
29
|
+
cloneAttachFn?: CloneAttachFn,
|
|
30
|
+
transcludeControllers?: unknown,
|
|
31
|
+
_futureParentElement?: Node | Element,
|
|
32
|
+
scopeToChild?: Scope,
|
|
33
|
+
): Node | Element | NodeList;
|
|
34
|
+
_slots: Record<string, SlotTranscludeFn | null | undefined>;
|
|
35
|
+
}
|
|
36
|
+
export type SlotTranscludeFn = (
|
|
37
|
+
scope?: Scope,
|
|
38
|
+
cloneAttachFn?: CloneAttachFn,
|
|
39
|
+
transcludeControllers?: unknown,
|
|
40
|
+
_futureParentElement?: Node | Element,
|
|
41
|
+
scopeToChild?: Scope,
|
|
42
|
+
) => Node | Element | NodeList;
|
|
22
43
|
/**
|
|
23
44
|
* Represents a simple change in a watched value.
|
|
24
45
|
*/
|
|
@@ -60,17 +81,27 @@ export interface LinkFnMapping {
|
|
|
60
81
|
* Function that compiles a list of nodes and returns a composite linking function.
|
|
61
82
|
*/
|
|
62
83
|
export type CompileNodesFn = () => CompositeLinkFn;
|
|
84
|
+
export type ChildLinkFn = (
|
|
85
|
+
scope: Scope,
|
|
86
|
+
nodeRef: NodeRef,
|
|
87
|
+
_parentBoundTranscludeFn: BoundTranscludeFn | null,
|
|
88
|
+
) => void;
|
|
63
89
|
/**
|
|
64
90
|
* A function used to link a specific node.
|
|
65
91
|
*/
|
|
66
|
-
export type NodeLinkFn = (
|
|
92
|
+
export type NodeLinkFn = (
|
|
93
|
+
childLinkFn: ChildLinkFn | null,
|
|
94
|
+
scope: Scope,
|
|
95
|
+
node: Node | Element,
|
|
96
|
+
boundTranscludeFn: BoundTranscludeFn | null,
|
|
97
|
+
) => void;
|
|
67
98
|
/**
|
|
68
99
|
* Context information for a NodeLinkFn.
|
|
69
100
|
*/
|
|
70
101
|
export interface NodeLinkFnCtx {
|
|
71
102
|
nodeLinkFn: NodeLinkFn;
|
|
72
103
|
terminal: boolean;
|
|
73
|
-
transclude:
|
|
104
|
+
transclude: ChildTranscludeOrLinkFn;
|
|
74
105
|
transcludeOnThisElement: boolean;
|
|
75
106
|
templateOnThisElement: boolean;
|
|
76
107
|
newScope: boolean;
|
|
@@ -85,6 +116,6 @@ export type ApplyDirectivesToNodeFn = () => NodeLinkFn;
|
|
|
85
116
|
export type CompositeLinkFn = (
|
|
86
117
|
scope: Scope,
|
|
87
118
|
$linkNode: NodeRef,
|
|
88
|
-
|
|
119
|
+
_parentBoundTranscludeFn?: Function,
|
|
89
120
|
) => void;
|
|
90
121
|
export {};
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
export interface InterpolationFunction {
|
|
2
2
|
expressions: any[];
|
|
3
|
-
|
|
3
|
+
/**
|
|
4
|
+
* Evaluate the interpolation.
|
|
5
|
+
* @param context - The scope/context
|
|
6
|
+
* @param cb - Optional callback when expressions change
|
|
7
|
+
*/
|
|
8
|
+
(context: any, cb?: (val: any) => void): any;
|
|
9
|
+
exp: string;
|
|
4
10
|
}
|
|
5
11
|
export interface InterpolateService {
|
|
6
12
|
(
|
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
import type { CompiledExpression } from "../parse/interface.ts";
|
|
2
2
|
export type ListenerFn = (newValue?: any, originalTarget?: object) => void;
|
|
3
|
-
export type NonScope = string[] | boolean
|
|
3
|
+
export type NonScope = string[] | boolean;
|
|
4
|
+
export interface NonScopeMarked {
|
|
5
|
+
$nonscope?: NonScope;
|
|
6
|
+
[key: string]: any;
|
|
7
|
+
constructor?: {
|
|
8
|
+
$nonscope?: NonScope;
|
|
9
|
+
};
|
|
10
|
+
}
|
|
4
11
|
export interface Listener {
|
|
5
12
|
originalTarget: any;
|
|
6
13
|
listenerFn: ListenerFn;
|
|
@@ -9,17 +16,16 @@ export interface Listener {
|
|
|
9
16
|
scopeId: number;
|
|
10
17
|
property: string[];
|
|
11
18
|
watchProp?: string;
|
|
12
|
-
foreignListener?: ProxyConstructor;
|
|
13
19
|
}
|
|
14
20
|
export interface ScopeEvent {
|
|
15
21
|
/**
|
|
16
22
|
* the scope on which the event was $emit-ed or $broadcast-ed.
|
|
17
23
|
*/
|
|
18
|
-
targetScope: ng.Scope
|
|
24
|
+
targetScope: typeof Proxy<ng.Scope>;
|
|
19
25
|
/**
|
|
20
26
|
* the scope that is currently handling the event. Once the event propagates through the scope hierarchy, this property is set to null.
|
|
21
27
|
*/
|
|
22
|
-
currentScope: ng.Scope;
|
|
28
|
+
currentScope: typeof Proxy<ng.Scope> | null;
|
|
23
29
|
/**
|
|
24
30
|
* name of the event.
|
|
25
31
|
*/
|
|
@@ -32,6 +38,10 @@ export interface ScopeEvent {
|
|
|
32
38
|
* calling preventDefault sets defaultPrevented flag to true.
|
|
33
39
|
*/
|
|
34
40
|
preventDefault(): void;
|
|
41
|
+
/**
|
|
42
|
+
* Whether propagation has been stopped
|
|
43
|
+
*/
|
|
44
|
+
stopped: boolean;
|
|
35
45
|
/**
|
|
36
46
|
* true if preventDefault was called.
|
|
37
47
|
*/
|
|
@@ -46,9 +46,8 @@ export class Scope {
|
|
|
46
46
|
* @param {Scope} [parent] - Custom parent.
|
|
47
47
|
*/
|
|
48
48
|
constructor(context?: Scope, parent?: Scope);
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
watchers: Map<string, Array<import("./interface.ts").Listener>>;
|
|
49
|
+
/** @ignore @type {Map<string, Array<import('./interface.ts').Listener>>} Watch listeners */
|
|
50
|
+
_watchers: Map<string, Array<import("./interface.ts").Listener>>;
|
|
52
51
|
/** @private @type {Map<String, Function[]>} Event listeners */
|
|
53
52
|
private _listeners;
|
|
54
53
|
/** @private @type {Map<string, Array<import('./interface.ts').Listener>>} Watch listeners from other proxies */
|
|
@@ -59,25 +58,26 @@ export class Scope {
|
|
|
59
58
|
private _objectListeners;
|
|
60
59
|
/** @type {Proxy<Scope>} Current proxy being operated on */
|
|
61
60
|
$proxy: ProxyConstructor;
|
|
62
|
-
/** @type {Scope}
|
|
61
|
+
/** @type {Scope} This is the reference to the Scope object with acts as the actual proxy */
|
|
63
62
|
$handler: Scope;
|
|
64
63
|
/** @type {*} Current target being called on */
|
|
65
64
|
$target: any;
|
|
66
|
-
/** @type {*} Value wrapped by the proxy */
|
|
67
|
-
$value: any;
|
|
68
65
|
/**
|
|
69
|
-
* @type {Scope[]}
|
|
66
|
+
* @ignore @type {Scope[]}
|
|
70
67
|
*/
|
|
71
|
-
|
|
68
|
+
_children: Scope[];
|
|
72
69
|
/**
|
|
73
70
|
* @type {number} Unique model ID (monotonically increasing) useful for debugging.
|
|
74
71
|
*/
|
|
75
72
|
$id: number;
|
|
76
73
|
/**
|
|
77
|
-
* @type {
|
|
74
|
+
* @type {ng.RootScopeService}
|
|
78
75
|
*/
|
|
79
|
-
$root:
|
|
80
|
-
|
|
76
|
+
$root: ng.RootScopeService;
|
|
77
|
+
/**
|
|
78
|
+
* @type {Scope | undefined}
|
|
79
|
+
*/
|
|
80
|
+
$parent: Scope | undefined;
|
|
81
81
|
/** @ignore @type {boolean} */
|
|
82
82
|
_destroyed: boolean;
|
|
83
83
|
/** @private @type {import("./interface.ts").Listener[]} A list of scheduled Event listeners */
|
|
@@ -90,14 +90,14 @@ export class Scope {
|
|
|
90
90
|
* Intercepts and handles property assignments on the target object. If a new value is
|
|
91
91
|
* an object, it will be recursively proxied.
|
|
92
92
|
*
|
|
93
|
-
* @param {Object} target - The target object.
|
|
93
|
+
* @param {Object & Record<string, any>} target - The target object.
|
|
94
94
|
* @param {string} property - The name of the property being set.
|
|
95
95
|
* @param {*} value - The new value being assigned to the property.
|
|
96
96
|
* @param {Proxy<Scope>} proxy - The proxy intercepting property access
|
|
97
97
|
* @returns {boolean} - Returns true to indicate success of the operation.
|
|
98
98
|
*/
|
|
99
99
|
set(
|
|
100
|
-
target: any,
|
|
100
|
+
target: any & Record<string, any>,
|
|
101
101
|
property: string,
|
|
102
102
|
value: any,
|
|
103
103
|
proxy: ProxyConstructor,
|
|
@@ -107,17 +107,21 @@ export class Scope {
|
|
|
107
107
|
* properties (`watch` and `sync`) and binds their methods. For other properties,
|
|
108
108
|
* it returns the value directly.
|
|
109
109
|
*
|
|
110
|
-
* @param {Object} target - The target object.
|
|
110
|
+
* @param {Object & Record<string, any>} target - The target object.
|
|
111
111
|
* @param {string|number|symbol} property - The name of the property being accessed.
|
|
112
112
|
* @param {Proxy<Scope>} proxy - The proxy object being invoked
|
|
113
113
|
* @returns {*} - The value of the property or a method if accessing `watch` or `sync`.
|
|
114
114
|
*/
|
|
115
115
|
get(
|
|
116
|
-
target: any,
|
|
116
|
+
target: any & Record<string, any>,
|
|
117
117
|
property: string | number | symbol,
|
|
118
118
|
proxy: ProxyConstructor,
|
|
119
119
|
): any;
|
|
120
|
-
|
|
120
|
+
/**
|
|
121
|
+
* @param {Object & Record<string, any>} target - The target object.
|
|
122
|
+
* @param {string} property - The name of the property being deleted
|
|
123
|
+
*/
|
|
124
|
+
deleteProperty(target: any & Record<string, any>, property: string): boolean;
|
|
121
125
|
/**
|
|
122
126
|
* Registers a watcher for a property along with a listener function. The listener
|
|
123
127
|
* function is invoked when changes to that property are detected.
|
|
@@ -131,10 +135,42 @@ export class Scope {
|
|
|
131
135
|
listenerFn?: ng.ListenerFn,
|
|
132
136
|
lazy?: boolean,
|
|
133
137
|
): () => void;
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
+
/**
|
|
139
|
+
* @param {ng.Scope} [childInstance]
|
|
140
|
+
* @returns {Proxy<ng.Scope> & ng.Scope}
|
|
141
|
+
*/
|
|
142
|
+
$new(childInstance?: ng.Scope): ProxyConstructor & ng.Scope;
|
|
143
|
+
/**
|
|
144
|
+
* @param {ng.Scope} [instance]
|
|
145
|
+
* @returns {Proxy<ng.Scope> & ng.Scope}
|
|
146
|
+
*/
|
|
147
|
+
$newIsolate(instance?: ng.Scope): ProxyConstructor & ng.Scope;
|
|
148
|
+
/**
|
|
149
|
+
* @param {ng.Scope} parentInstance
|
|
150
|
+
* @returns {Proxy<ng.Scope> & ng.Scope}
|
|
151
|
+
*/
|
|
152
|
+
$transcluded(parentInstance: ng.Scope): ProxyConstructor & ng.Scope;
|
|
153
|
+
/**
|
|
154
|
+
* @param {string} key
|
|
155
|
+
* @param {import("./interface.ts").Listener} listener
|
|
156
|
+
*/
|
|
157
|
+
_registerForeignKey(
|
|
158
|
+
key: string,
|
|
159
|
+
listener: import("./interface.ts").Listener,
|
|
160
|
+
): void;
|
|
161
|
+
/**
|
|
162
|
+
* @param {string} key
|
|
163
|
+
* @param {number} id
|
|
164
|
+
*/
|
|
165
|
+
_deregisterForeignKey(key: string, id: number): boolean;
|
|
166
|
+
/**
|
|
167
|
+
* Evaluates an Angular expression in the context of this scope.
|
|
168
|
+
*
|
|
169
|
+
* @param {string} expr - Angular expression to evaluate
|
|
170
|
+
* @param {Record<string, any>} [locals] - Optional local variables
|
|
171
|
+
* @returns {any}
|
|
172
|
+
*/
|
|
173
|
+
$eval(expr: string, locals?: Record<string, any>): any;
|
|
138
174
|
/**
|
|
139
175
|
* @param {Object} newTarget
|
|
140
176
|
*/
|
|
@@ -153,9 +189,9 @@ export class Scope {
|
|
|
153
189
|
/**
|
|
154
190
|
* @param {string} name
|
|
155
191
|
* @param {...any} args
|
|
156
|
-
* @returns {
|
|
192
|
+
* @returns {ng.ScopeEvent | undefined}
|
|
157
193
|
*/
|
|
158
|
-
$emit(name: string, ...args: any[]):
|
|
194
|
+
$emit(name: string, ...args: any[]): ng.ScopeEvent | undefined;
|
|
159
195
|
/**
|
|
160
196
|
* @param {string} name
|
|
161
197
|
* @param {...any} args
|
|
@@ -1,4 +1,14 @@
|
|
|
1
1
|
export function setupValidity(instance: any): void;
|
|
2
|
+
/**
|
|
3
|
+
* @param {FormController|ng.NgModelController} ctrl
|
|
4
|
+
* @param {string} className
|
|
5
|
+
* @param {boolean} switchValue
|
|
6
|
+
*/
|
|
7
|
+
export function cachedToggleClass(
|
|
8
|
+
ctrl: FormController | ng.NgModelController,
|
|
9
|
+
className: string,
|
|
10
|
+
switchValue: boolean,
|
|
11
|
+
): void;
|
|
2
12
|
/**
|
|
3
13
|
* @type {{
|
|
4
14
|
* $nonscope: boolean,
|
|
@@ -74,21 +84,23 @@ export class FormController {
|
|
|
74
84
|
static $nonscope: boolean;
|
|
75
85
|
static $inject: string[];
|
|
76
86
|
/**
|
|
77
|
-
* @param {
|
|
87
|
+
* @param {HTMLFormElement} $element
|
|
78
88
|
* @param {ng.Attributes} $attrs
|
|
79
89
|
* @param {ng.Scope} $scope
|
|
80
90
|
* @param {ng.AnimateService} $animate
|
|
81
91
|
* @param {ng.InterpolateService} $interpolate
|
|
82
92
|
*/
|
|
83
93
|
constructor(
|
|
84
|
-
$element:
|
|
94
|
+
$element: HTMLFormElement,
|
|
85
95
|
$attrs: ng.Attributes,
|
|
86
96
|
$scope: ng.Scope,
|
|
87
97
|
$animate: ng.AnimateService,
|
|
88
98
|
$interpolate: ng.InterpolateService,
|
|
89
99
|
);
|
|
100
|
+
/** @type {boolean} */
|
|
101
|
+
_isAnimated: boolean;
|
|
90
102
|
_controls: any[];
|
|
91
|
-
$name:
|
|
103
|
+
$name: any;
|
|
92
104
|
/**
|
|
93
105
|
* @property {boolean} $dirty True if user has already interacted with the form.
|
|
94
106
|
*/
|
|
@@ -102,7 +114,7 @@ export class FormController {
|
|
|
102
114
|
$submitted: boolean;
|
|
103
115
|
/** @type {FormController|Object} */
|
|
104
116
|
_parentForm: FormController | any;
|
|
105
|
-
_element:
|
|
117
|
+
_element: HTMLFormElement;
|
|
106
118
|
_animate: import("../../animations/interface.ts").AnimateService;
|
|
107
119
|
$error: {};
|
|
108
120
|
_success: {};
|
|
@@ -52,7 +52,7 @@ export class NgModelController {
|
|
|
52
52
|
* @param {ng.Scope} $scope
|
|
53
53
|
* @param {ng.ExceptionHandlerService} $exceptionHandler
|
|
54
54
|
* @param {ng.Attributes} $attr
|
|
55
|
-
* @param {
|
|
55
|
+
* @param {HTMLElement} $element
|
|
56
56
|
* @param {ng.ParseService} $parse
|
|
57
57
|
* @param {ng.AnimateService} $animate
|
|
58
58
|
* @param {ng.InterpolateService} $interpolate
|
|
@@ -61,11 +61,13 @@ export class NgModelController {
|
|
|
61
61
|
$scope: ng.Scope,
|
|
62
62
|
$exceptionHandler: ng.ExceptionHandlerService,
|
|
63
63
|
$attr: ng.Attributes,
|
|
64
|
-
$element:
|
|
64
|
+
$element: HTMLElement,
|
|
65
65
|
$parse: ng.ParseService,
|
|
66
66
|
$animate: ng.AnimateService,
|
|
67
67
|
$interpolate: ng.InterpolateService,
|
|
68
68
|
);
|
|
69
|
+
/** @type {boolean} */
|
|
70
|
+
_isAnimated: boolean;
|
|
69
71
|
/** @type {any} The actual value from the control's view */
|
|
70
72
|
$viewValue: any;
|
|
71
73
|
/** @type {any} The value in the model that the control is bound to. */
|
|
@@ -97,7 +99,7 @@ export class NgModelController {
|
|
|
97
99
|
$error: {};
|
|
98
100
|
_success: {};
|
|
99
101
|
$pending: any;
|
|
100
|
-
$name:
|
|
102
|
+
$name: any;
|
|
101
103
|
_parentForm: {
|
|
102
104
|
$nonscope: boolean;
|
|
103
105
|
$addControl: Function;
|
|
@@ -144,7 +146,7 @@ export class NgModelController {
|
|
|
144
146
|
/** @type {ng.Scope} */
|
|
145
147
|
_scope: ng.Scope;
|
|
146
148
|
_attr: ng.Attributes;
|
|
147
|
-
_element:
|
|
149
|
+
_element: HTMLElement;
|
|
148
150
|
_animate: import("../../animations/interface.ts").AnimateService;
|
|
149
151
|
_parse: import("../../core/parse/interface.ts").ParseService;
|
|
150
152
|
_exceptionHandler: import("../../services/exception/interface.ts").ExceptionHandler;
|
|
@@ -6,3 +6,16 @@ export function orderByFilter($parse: ng.ParseService): ng.FilterFn;
|
|
|
6
6
|
export namespace orderByFilter {
|
|
7
7
|
let $inject: string[];
|
|
8
8
|
}
|
|
9
|
+
export type ComparisonObject = {
|
|
10
|
+
value: any;
|
|
11
|
+
tieBreaker: {
|
|
12
|
+
value: number;
|
|
13
|
+
type: string;
|
|
14
|
+
index: number;
|
|
15
|
+
};
|
|
16
|
+
predicateValues: Array<{
|
|
17
|
+
value: any;
|
|
18
|
+
type: string;
|
|
19
|
+
index: number;
|
|
20
|
+
}>;
|
|
21
|
+
};
|