1- /* Version: 0.9.0 - September 12 , 2025 22:41:28 */
1+ /* Version: 0.9.1 - October 8 , 2025 04:11:27 */
22const VALID_CLASS = "ng-valid";
33const INVALID_CLASS = "ng-invalid";
44const PRISTINE_CLASS = "ng-pristine";
@@ -906,16 +906,7 @@ function assertArgFn(arg, name, acceptArrayAnnotation) {
906906 return arg;
907907}
908908
909- /**
910- * @typedef {Object} ErrorHandlingConfig
911- * Error configuration object. May only contain the options that need to be updated.
912- * @property {number=} objectMaxDepth - The max depth for stringifying objects. Setting to a
913- * non-positive or non-numeric value removes the max depth limit. Default: 5.
914- * @property {boolean=} urlErrorParamsEnabled - Specifies whether the generated error URL will
915- * contain the parameters of the thrown error. Default: true. When used without argument, it returns the current value.
916- */
917-
918- /** @type {ErrorHandlingConfig} */
909+ /** @type {import("./interface.js").ErrorHandlingConfig} */
919910const minErrConfig = {
920911 objectMaxDepth: 5,
921912 urlErrorParamsEnabled: true,
@@ -927,8 +918,8 @@ const minErrConfig = {
927918 *
928919 * Omitted or undefined options will leave the corresponding configuration values unchanged.
929920 *
930- * @param {ErrorHandlingConfig} [config]
931- * @returns {ErrorHandlingConfig}
921+ * @param {import("./interface.ts"). ErrorHandlingConfig} [config]
922+ * @returns {import("./interface.ts"). ErrorHandlingConfig}
932923 */
933924function errorHandlingConfig(config) {
934925 if (isObject(config)) {
@@ -12386,6 +12377,7 @@ const optGroupTemplate = document.createElement("optgroup");
1238612377
1238712378const NG_OPTIONS_REGEXP =
1238812379 /^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\s+([\s\S]+?))?(?:\s+disable\s+when\s+([\s\S]+?))?\s+for\s+(?:([$\w][$\w]*)|(?:\(\s*([$\w][$\w]*)\s*,\s*([$\w][$\w]*)\s*\)))\s+in\s+([\s\S]+?)(?:\s+track\s+by\s+([\s\S]+?))?$/;
12380+
1238912381// 1: value expression (valueFn)
1239012382// 2: label expression (displayFn)
1239112383// 3: group by expression (groupByFn)
@@ -20213,6 +20205,7 @@ const NONSCOPE = "$nonscope";
2021320205 * Scope class for the Proxy. It intercepts operations like property access (get)
2021420206 * and property setting (set), and adds support for deep change tracking and
2021520207 * observer-like behavior.
20208+ * @extends {Record<string, any>}
2021620209 */
2021720210class Scope {
2021820211 /**
@@ -20628,6 +20621,7 @@ class Scope {
2062820621 return true;
2062920622 }
2063020623
20624+ /** @internal **/
2063120625 #checkeListenersForAllKeys(value) {
2063220626 if (isUndefined(value)) {
2063320627 return;
@@ -20967,6 +20961,7 @@ class Scope {
2096720961 return proxy;
2096820962 }
2096920963
20964+ /** @internal **/
2097020965 #registerKey(key, listener) {
2097120966 if (this.watchers.has(key)) {
2097220967 this.watchers.get(key).push(listener);
@@ -20975,6 +20970,7 @@ class Scope {
2097520970 }
2097620971 }
2097720972
20973+ /** @internal **/
2097820974 #registerForeignKey(key, listener) {
2097920975 if (this.foreignListeners.has(key)) {
2098020976 this.foreignListeners.get(key).push(listener);
@@ -21106,7 +21102,8 @@ class Scope {
2110621102 }
2110721103
2110821104 /**
21109- * @returns {void}
21105+ * @internal
21106+ * @returns {any}
2111021107 */
2111121108 #eventHelper({ name, event, broadcast }, ...args) {
2111221109 if (!broadcast) {
@@ -21187,6 +21184,7 @@ class Scope {
2118721184 }
2118821185
2118921186 /**
21187+ * @internal
2119021188 * @returns {boolean}
2119121189 */
2119221190 #isRoot() {
@@ -21221,6 +21219,7 @@ class Scope {
2122121219 }
2122221220
2122321221 /**
21222+ * @internal
2122421223 * @param {Listener} listener - The property path that was changed.
2122521224 */
2122621225 #notifyListener(listener, target) {
@@ -23256,15 +23255,15 @@ function AnimateQueueProvider($animateProvider) {
2325623255 });
2325723256
2325823257 this.$get = [
23259- "$ rootScope" ,
23260- "$ injector" ,
23261- "$$ animation" ,
23262- "$$ AnimateRunner" ,
23263- "$ templateRequest" ,
23258+ $injectTokens.$ rootScope,
23259+ $injectTokens.$ injector,
23260+ $injectTokens.$$ animation,
23261+ $injectTokens.$$ AnimateRunner,
23262+ $injectTokens.$ templateRequest,
2326423263 /**
2326523264 *
2326623265 * @param {import('../core/scope/scope.js').Scope} $rootScope
23267- * @param {* } $injector
23266+ * @param {import('../core/di/internal-injector.js').InjectorService } $injector
2326823267 * @param {*} $$animation
2326923268 * @param {*} $$AnimateRunner
2327023269 * @param {*} $templateRequest
@@ -23977,7 +23976,7 @@ function AnimateQueueProvider($animateProvider) {
2397723976AnimateJsProvider.$inject = ["$animateProvider"];
2397823977function AnimateJsProvider($animateProvider) {
2397923978 this.$get = [
23980- "$ injector" ,
23979+ $injectTokens.$ injector,
2398123980 "$$AnimateRunner",
2398223981 /**
2398323982 *
@@ -25835,20 +25834,6 @@ const anyTrueR = (memo, elem) => memo || elem;
2583525834 * ```
2583625835 */
2583725836const unnestR = (memo, elem) => memo.concat(elem);
25838- /**
25839- * Reduce function which recursively un-nests all arrays
25840- *
25841- * @example
25842- * ```
25843- *
25844- * let input = [ [ "a", "b" ], [ "c", "d" ], [ [ "double", "nested" ] ] ];
25845- * input.reduce(unnestR, []) // [ "a", "b", "c", "d", "double, "nested" ]
25846- * ```
25847- */
25848- const flattenR = (memo, elem) =>
25849- Array.isArray(elem)
25850- ? memo.concat(elem.reduce(flattenR, []))
25851- : pushR(memo, elem);
2585225837/**
2585325838 * Reduce function that pushes an object to an array, then returns the array.
2585425839 * Mostly just for [[flattenR]] and [[uniqR]]
@@ -27949,10 +27934,6 @@ class ResolveContext {
2794927934 return Promise.all(promises);
2795027935 }
2795127936
27952- injector() {
27953- return this._injector || (this._injector = new UIInjectorImpl());
27954- }
27955-
2795627937 findNode(resolvable) {
2795727938 return find(this._path, (node) => node.resolvables.includes(resolvable));
2795827939 }
@@ -27987,21 +27968,6 @@ class ResolveContext {
2798727968 }
2798827969}
2798927970
27990- class UIInjectorImpl {
27991- constructor() {
27992- this.native = window["angular"].$injector;
27993- }
27994- get(token) {
27995- return window["angular"].$injector.get(token);
27996- }
27997- getAsync(token) {
27998- return Promise.resolve(window["angular"].$injector.get(token));
27999- }
28000- getNative(token) {
28001- return window["angular"].$injector.get(token);
28002- }
28003- }
28004-
2800527971function getViewConfigFactory() {
2800627972 let templateFactory = null;
2800727973 return (path, view) => {
@@ -29703,90 +29669,7 @@ class Transition {
2970329669 .reduce((acc, obj) => ({ ...acc, ...obj }), {}),
2970429670 );
2970529671 }
29706- paramsChanged() {
29707- const fromParams = this.params("from");
29708- const toParams = this.params("to");
29709- // All the parameters declared on both the "to" and "from" paths
29710- const allParamDescriptors = []
29711- .concat(this._treeChanges.to)
29712- .concat(this._treeChanges.from)
29713- .map((pathNode) => pathNode.paramSchema)
29714- .reduce(flattenR, [])
29715- .reduce(uniqR, []);
29716- const changedParamDescriptors = Param.changed(
29717- allParamDescriptors,
29718- fromParams,
29719- toParams,
29720- );
29721- return changedParamDescriptors.reduce((changedValues, descriptor) => {
29722- changedValues[descriptor.id] = toParams[descriptor.id];
29723- return changedValues;
29724- }, {});
29725- }
29726- /**
29727- * Creates a [[UIInjector]] Dependency Injector
29728- *
29729- * Returns a Dependency Injector for the Transition's target state (to state).
29730- * The injector provides resolve values which the target state has access to.
29731- *
29732- * The `UIInjector` can also provide values from the native root/global injector (ng1/ng2).
29733- *
29734- * #### Example:
29735- * ```js
29736- * .onEnter({ entering: 'myState' }, trans => {
29737- * var myResolveValue = trans.injector().get('myResolve');
29738- * // Inject a global service from the global/native injector (if it exists)
29739- * var MyService = trans.injector().get('MyService');
29740- * })
29741- * ```
29742- *
29743- * In some cases (such as `onBefore`), you may need access to some resolve data but it has not yet been fetched.
29744- * You can use [[UIInjector.getAsync]] to get a promise for the data.
29745- * #### Example:
29746- * ```js
29747- * .onBefore({}, trans => {
29748- * return trans.injector().getAsync('myResolve').then(myResolveValue =>
29749- * return myResolveValue !== 'ABORT';
29750- * });
29751- * });
29752- * ```
29753- *
29754- * If a `state` is provided, the injector that is returned will be limited to resolve values that the provided state has access to.
29755- * This can be useful if both a parent state `foo` and a child state `foo.bar` have both defined a resolve such as `data`.
29756- * #### Example:
29757- * ```js
29758- * .onEnter({ to: 'foo.bar' }, trans => {
29759- * // returns result of `foo` state's `myResolve` resolve
29760- * // even though `foo.bar` also has a `myResolve` resolve
29761- * var fooData = trans.injector('foo').get('myResolve');
29762- * });
29763- * ```
29764- *
29765- * If you need resolve data from the exiting states, pass `'from'` as `pathName`.
29766- * The resolve data from the `from` path will be returned.
29767- * #### Example:
29768- * ```js
29769- * .onExit({ exiting: 'foo.bar' }, trans => {
29770- * // Gets the resolve value of `myResolve` from the state being exited
29771- * var fooData = trans.injector(null, 'from').get('myResolve');
29772- * });
29773- * ```
29774- *
29775- *
29776- * @param state Limits the resolves provided to only the resolves the provided state has access to.
29777- * @param pathName Default: `'to'`: Chooses the path for which to create the injector. Use this to access resolves for `exiting` states.
29778- *
29779- * @returns a [[UIInjector]]
29780- */
29781- injector(state, pathName = "to") {
29782- let path = this._treeChanges[pathName];
29783- if (state)
29784- path = PathUtils.subPath(
29785- path,
29786- (node) => node.state === state || node.state.name === state,
29787- );
29788- return new ResolveContext(path).injector();
29789- }
29672+
2979029673 /**
2979129674 * Gets all available resolve tokens (keys)
2979229675 *
@@ -31019,19 +30902,20 @@ class StateProvider {
3101930902 return this.globals.$current;
3102030903 }
3102130904
31022- /* @ignore */ static $inject = ["$routerProvider", "$transitionsProvider"];
30905+ static $inject = ["$routerProvider", "$transitionsProvider"];
3102330906
31024- // Needs access to urlService, stateRegistry
3102530907 /**
3102630908 *
3102730909 * @param {import('../router.js').Router} globals
3102830910 * @param {*} transitionService
30911+ * @param {import('../../core/di/internal-injector.js').InjectorService} $injector
3102930912 */
31030- constructor(globals, transitionService) {
30913+ constructor(globals, transitionService, $injector ) {
3103130914 this.stateRegistry = undefined;
3103230915 this.urlService = undefined;
3103330916 this.globals = globals;
3103430917 this.transitionService = transitionService;
30918+ this.$injector = $injector;
3103530919 this.invalidCallbacks = [];
3103630920
3103730921 this._defaultErrorHandler = function $defaultErrorHandler($error$) {
@@ -31188,7 +31072,7 @@ class StateProvider {
3118831072 const latest = latestThing();
3118931073 /** @type {Queue<Function>} */
3119031074 const callbackQueue = new Queue(this.invalidCallbacks.slice());
31191- const injector = new ResolveContext(fromPath). injector() ;
31075+ const injector = this.$ injector;
3119231076 const checkForRedirect = (result) => {
3119331077 if (!(result instanceof TargetState)) {
3119431078 return;
@@ -34116,12 +34000,7 @@ class StateQueueManager {
3411634000 *
3411734001 */
3411834002class StateRegistryProvider {
34119- /* @ignore */ static $inject = provider([
34120- $injectTokens.$url,
34121- $injectTokens.$state,
34122- $injectTokens.$router,
34123- $injectTokens.$view,
34124- ]);
34003+ static $inject = provider([$injectTokens.$url, $injectTokens.$state, $injectTokens.$router, $injectTokens.$view]);
3412534004
3412634005 /**
3412734006 * @param urlService
@@ -34160,11 +34039,9 @@ class StateRegistryProvider {
3416034039 globals.current = globals.$current.self;
3416134040 }
3416234041
34163- /** @type {import('../../interface.ts').AnnotatedFactory} */
3416434042 $get = [
34165- "$ injector" ,
34043+ $injectTokens.$ injector,
3416634044 /**
34167- *
3416834045 * @param {import("../../core/di/internal-injector").InjectorService} $injector
3416934046 * @returns {StateRegistryProvider}
3417034047 */
@@ -35825,7 +35702,7 @@ class Angular {
3582535702 /**
3582635703 * @type {string} `version` from `package.json`
3582735704 */
35828- this.version = "0.9.0 "; //inserted via rollup plugin
35705+ this.version = "0.9.1 "; //inserted via rollup plugin
3582935706
3583035707 /** @type {!Array<string|any>} */
3583135708 this.bootsrappedModules = [];
0 commit comments