@angular/router 9.1.0 → 9.1.4

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.
Files changed (100) hide show
  1. package/bundles/router-testing.umd.js +24 -5
  2. package/bundles/router-testing.umd.js.map +1 -1
  3. package/bundles/router-testing.umd.min.js +4 -4
  4. package/bundles/router-testing.umd.min.js.map +1 -1
  5. package/bundles/router-upgrade.umd.js +4 -2
  6. package/bundles/router-upgrade.umd.js.map +1 -1
  7. package/bundles/router-upgrade.umd.min.js +1 -1
  8. package/bundles/router-upgrade.umd.min.js.map +1 -1
  9. package/bundles/router.umd.js +282 -138
  10. package/bundles/router.umd.js.map +1 -1
  11. package/bundles/router.umd.min.js +26 -26
  12. package/bundles/router.umd.min.js.map +1 -1
  13. package/esm2015/index.js +1 -1
  14. package/esm2015/public_api.js +1 -1
  15. package/esm2015/src/apply_redirects.js +6 -4
  16. package/esm2015/src/config.js +1 -1
  17. package/esm2015/src/create_url_tree.js +1 -1
  18. package/esm2015/src/directives/router_link.js +9 -4
  19. package/esm2015/src/directives/router_link_active.js +7 -3
  20. package/esm2015/src/directives/router_outlet.js +7 -3
  21. package/esm2015/src/events.js +13 -5
  22. package/esm2015/src/index.js +3 -3
  23. package/esm2015/src/interfaces.js +1 -1
  24. package/esm2015/src/operators/activate_routes.js +1 -1
  25. package/esm2015/src/operators/check_guards.js +8 -5
  26. package/esm2015/src/operators/prioritized_guard_value.js +7 -7
  27. package/esm2015/src/operators/recognize.js +1 -1
  28. package/esm2015/src/operators/resolve_data.js +4 -2
  29. package/esm2015/src/operators/switch_tap.js +1 -1
  30. package/esm2015/src/recognize.js +7 -5
  31. package/esm2015/src/route_reuse_strategy.js +10 -4
  32. package/esm2015/src/router.js +86 -55
  33. package/esm2015/src/router_config_loader.js +1 -1
  34. package/esm2015/src/router_module.js +4 -6
  35. package/esm2015/src/router_outlet_context.js +7 -3
  36. package/esm2015/src/router_preloader.js +13 -9
  37. package/esm2015/src/router_scroller.js +1 -1
  38. package/esm2015/src/router_state.js +42 -16
  39. package/esm2015/src/shared.js +10 -4
  40. package/esm2015/src/url_handling_strategy.js +10 -4
  41. package/esm2015/src/url_tree.js +21 -9
  42. package/esm2015/src/utils/collection.js +1 -1
  43. package/esm2015/src/utils/preactivation.js +1 -1
  44. package/esm2015/src/utils/tree.js +17 -9
  45. package/esm2015/src/version.js +1 -1
  46. package/esm2015/testing/src/router_testing_module.js +5 -3
  47. package/esm2015/upgrade/src/upgrade.js +4 -2
  48. package/esm5/src/apply_redirects.js +3 -3
  49. package/esm5/src/config.js +1 -1
  50. package/esm5/src/create_url_tree.js +1 -1
  51. package/esm5/src/directives/router_link.js +9 -4
  52. package/esm5/src/directives/router_link_active.js +7 -3
  53. package/esm5/src/directives/router_outlet.js +7 -3
  54. package/esm5/src/events.js +13 -5
  55. package/esm5/src/index.js +3 -3
  56. package/esm5/src/interfaces.js +1 -1
  57. package/esm5/src/operators/activate_routes.js +1 -1
  58. package/esm5/src/operators/check_guards.js +22 -19
  59. package/esm5/src/operators/prioritized_guard_value.js +7 -7
  60. package/esm5/src/operators/recognize.js +1 -1
  61. package/esm5/src/operators/resolve_data.js +1 -1
  62. package/esm5/src/operators/switch_tap.js +1 -1
  63. package/esm5/src/recognize.js +7 -5
  64. package/esm5/src/route_reuse_strategy.js +10 -4
  65. package/esm5/src/router.js +87 -54
  66. package/esm5/src/router_config_loader.js +1 -1
  67. package/esm5/src/router_module.js +5 -7
  68. package/esm5/src/router_outlet_context.js +7 -3
  69. package/esm5/src/router_preloader.js +13 -9
  70. package/esm5/src/router_scroller.js +1 -1
  71. package/esm5/src/router_state.js +46 -18
  72. package/esm5/src/shared.js +7 -3
  73. package/esm5/src/url_handling_strategy.js +10 -4
  74. package/esm5/src/url_tree.js +21 -9
  75. package/esm5/src/utils/collection.js +1 -1
  76. package/esm5/src/utils/preactivation.js +1 -1
  77. package/esm5/src/utils/tree.js +10 -4
  78. package/esm5/src/version.js +1 -1
  79. package/esm5/testing/src/router_testing_module.js +5 -3
  80. package/esm5/upgrade/src/upgrade.js +4 -2
  81. package/fesm2015/router.js +252 -121
  82. package/fesm2015/router.js.map +1 -1
  83. package/fesm2015/testing.js +4 -2
  84. package/fesm2015/testing.js.map +1 -1
  85. package/fesm2015/upgrade.js +4 -2
  86. package/fesm2015/upgrade.js.map +1 -1
  87. package/fesm5/router.js +262 -135
  88. package/fesm5/router.js.map +1 -1
  89. package/fesm5/testing.js +4 -2
  90. package/fesm5/testing.js.map +1 -1
  91. package/fesm5/upgrade.js +4 -2
  92. package/fesm5/upgrade.js.map +1 -1
  93. package/package.json +4 -4
  94. package/router.d.ts +25 -22
  95. package/router.metadata.json +1 -1
  96. package/testing/testing.d.ts +1 -1
  97. package/testing/testing.metadata.json +1 -1
  98. package/testing.d.ts +1 -1
  99. package/upgrade/upgrade.d.ts +1 -1
  100. package/upgrade.d.ts +1 -1
package/fesm5/router.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v9.1.0
2
+ * @license Angular v9.1.4
3
3
  * (c) 2010-2020 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -73,7 +73,9 @@ var NavigationStart = /** @class */ (function (_super) {
73
73
  return _this;
74
74
  }
75
75
  /** @docsNotRequired */
76
- NavigationStart.prototype.toString = function () { return "NavigationStart(id: " + this.id + ", url: '" + this.url + "')"; };
76
+ NavigationStart.prototype.toString = function () {
77
+ return "NavigationStart(id: " + this.id + ", url: '" + this.url + "')";
78
+ };
77
79
  return NavigationStart;
78
80
  }(RouterEvent));
79
81
  /**
@@ -122,7 +124,9 @@ var NavigationCancel = /** @class */ (function (_super) {
122
124
  return _this;
123
125
  }
124
126
  /** @docsNotRequired */
125
- NavigationCancel.prototype.toString = function () { return "NavigationCancel(id: " + this.id + ", url: '" + this.url + "')"; };
127
+ NavigationCancel.prototype.toString = function () {
128
+ return "NavigationCancel(id: " + this.id + ", url: '" + this.url + "')";
129
+ };
126
130
  return NavigationCancel;
127
131
  }(RouterEvent));
128
132
  /**
@@ -298,7 +302,9 @@ var RouteConfigLoadStart = /** @class */ (function () {
298
302
  route) {
299
303
  this.route = route;
300
304
  }
301
- RouteConfigLoadStart.prototype.toString = function () { return "RouteConfigLoadStart(path: " + this.route.path + ")"; };
305
+ RouteConfigLoadStart.prototype.toString = function () {
306
+ return "RouteConfigLoadStart(path: " + this.route.path + ")";
307
+ };
302
308
  return RouteConfigLoadStart;
303
309
  }());
304
310
  /**
@@ -312,7 +318,9 @@ var RouteConfigLoadEnd = /** @class */ (function () {
312
318
  route) {
313
319
  this.route = route;
314
320
  }
315
- RouteConfigLoadEnd.prototype.toString = function () { return "RouteConfigLoadEnd(path: " + this.route.path + ")"; };
321
+ RouteConfigLoadEnd.prototype.toString = function () {
322
+ return "RouteConfigLoadEnd(path: " + this.route.path + ")";
323
+ };
316
324
  return RouteConfigLoadEnd;
317
325
  }());
318
326
  /**
@@ -460,7 +468,9 @@ var ParamsAsMap = /** @class */ (function () {
460
468
  function ParamsAsMap(params) {
461
469
  this.params = params || {};
462
470
  }
463
- ParamsAsMap.prototype.has = function (name) { return this.params.hasOwnProperty(name); };
471
+ ParamsAsMap.prototype.has = function (name) {
472
+ return this.params.hasOwnProperty(name);
473
+ };
464
474
  ParamsAsMap.prototype.get = function (name) {
465
475
  if (this.has(name)) {
466
476
  var v = this.params[name];
@@ -476,7 +486,9 @@ var ParamsAsMap = /** @class */ (function () {
476
486
  return [];
477
487
  };
478
488
  Object.defineProperty(ParamsAsMap.prototype, "keys", {
479
- get: function () { return Object.keys(this.params); },
489
+ get: function () {
490
+ return Object.keys(this.params);
491
+ },
480
492
  enumerable: true,
481
493
  configurable: true
482
494
  });
@@ -863,7 +875,9 @@ var UrlTree = /** @class */ (function () {
863
875
  configurable: true
864
876
  });
865
877
  /** @docsNotRequired */
866
- UrlTree.prototype.toString = function () { return DEFAULT_SERIALIZER.serialize(this); };
878
+ UrlTree.prototype.toString = function () {
879
+ return DEFAULT_SERIALIZER.serialize(this);
880
+ };
867
881
  return UrlTree;
868
882
  }());
869
883
  /**
@@ -889,15 +903,21 @@ var UrlSegmentGroup = /** @class */ (function () {
889
903
  forEach(children, function (v, k) { return v.parent = _this; });
890
904
  }
891
905
  /** Whether the segment has child segments */
892
- UrlSegmentGroup.prototype.hasChildren = function () { return this.numberOfChildren > 0; };
906
+ UrlSegmentGroup.prototype.hasChildren = function () {
907
+ return this.numberOfChildren > 0;
908
+ };
893
909
  Object.defineProperty(UrlSegmentGroup.prototype, "numberOfChildren", {
894
910
  /** Number of child segments */
895
- get: function () { return Object.keys(this.children).length; },
911
+ get: function () {
912
+ return Object.keys(this.children).length;
913
+ },
896
914
  enumerable: true,
897
915
  configurable: true
898
916
  });
899
917
  /** @docsNotRequired */
900
- UrlSegmentGroup.prototype.toString = function () { return serializePaths(this); };
918
+ UrlSegmentGroup.prototype.toString = function () {
919
+ return serializePaths(this);
920
+ };
901
921
  return UrlSegmentGroup;
902
922
  }());
903
923
  /**
@@ -946,7 +966,9 @@ var UrlSegment = /** @class */ (function () {
946
966
  configurable: true
947
967
  });
948
968
  /** @docsNotRequired */
949
- UrlSegment.prototype.toString = function () { return serializePath(this); };
969
+ UrlSegment.prototype.toString = function () {
970
+ return serializePath(this);
971
+ };
950
972
  return UrlSegment;
951
973
  }());
952
974
  function equalSegments(as, bs) {
@@ -1117,7 +1139,7 @@ function serializeQueryParams(params) {
1117
1139
  value.map(function (v) { return encodeUriQuery(name) + "=" + encodeUriQuery(v); }).join('&') :
1118
1140
  encodeUriQuery(name) + "=" + encodeUriQuery(value);
1119
1141
  });
1120
- return strParams.length ? "?" + strParams.join("&") : '';
1142
+ return strParams.length ? "?" + strParams.join('&') : '';
1121
1143
  }
1122
1144
  var SEGMENT_RE = /^[^\/()?;=#]+/;
1123
1145
  function matchSegments(str) {
@@ -1280,7 +1302,9 @@ var UrlParser = /** @class */ (function () {
1280
1302
  }
1281
1303
  return segments;
1282
1304
  };
1283
- UrlParser.prototype.peekStartsWith = function (str) { return this.remaining.startsWith(str); };
1305
+ UrlParser.prototype.peekStartsWith = function (str) {
1306
+ return this.remaining.startsWith(str);
1307
+ };
1284
1308
  // Consumes the prefix when it is present and returns whether it has been consumed
1285
1309
  UrlParser.prototype.consumeOptional = function (str) {
1286
1310
  if (this.peekStartsWith(str)) {
@@ -1309,7 +1333,9 @@ var Tree = /** @class */ (function () {
1309
1333
  this._root = root;
1310
1334
  }
1311
1335
  Object.defineProperty(Tree.prototype, "root", {
1312
- get: function () { return this._root.value; },
1336
+ get: function () {
1337
+ return this._root.value;
1338
+ },
1313
1339
  enumerable: true,
1314
1340
  configurable: true
1315
1341
  });
@@ -1347,7 +1373,9 @@ var Tree = /** @class */ (function () {
1347
1373
  /**
1348
1374
  * @internal
1349
1375
  */
1350
- Tree.prototype.pathFromRoot = function (t) { return findPath(t, this._root).map(function (s) { return s.value; }); };
1376
+ Tree.prototype.pathFromRoot = function (t) {
1377
+ return findPath(t, this._root).map(function (s) { return s.value; });
1378
+ };
1351
1379
  return Tree;
1352
1380
  }());
1353
1381
  // DFS for the node matching the value
@@ -1401,7 +1429,9 @@ var TreeNode = /** @class */ (function () {
1401
1429
  this.value = value;
1402
1430
  this.children = children;
1403
1431
  }
1404
- TreeNode.prototype.toString = function () { return "TreeNode(" + this.value + ")"; };
1432
+ TreeNode.prototype.toString = function () {
1433
+ return "TreeNode(" + this.value + ")";
1434
+ };
1405
1435
  return TreeNode;
1406
1436
  }());
1407
1437
  // Return the list of T indexed by outlet name
@@ -1460,7 +1490,9 @@ var RouterState = /** @class */ (function (_super) {
1460
1490
  setRouterState(_this, root);
1461
1491
  return _this;
1462
1492
  }
1463
- RouterState.prototype.toString = function () { return this.snapshot.toString(); };
1493
+ RouterState.prototype.toString = function () {
1494
+ return this.snapshot.toString();
1495
+ };
1464
1496
  return RouterState;
1465
1497
  }(Tree));
1466
1498
  function createEmptyState(urlTree, rootComponent) {
@@ -1521,44 +1553,58 @@ var ActivatedRoute = /** @class */ (function () {
1521
1553
  }
1522
1554
  Object.defineProperty(ActivatedRoute.prototype, "routeConfig", {
1523
1555
  /** The configuration used to match this route. */
1524
- get: function () { return this._futureSnapshot.routeConfig; },
1556
+ get: function () {
1557
+ return this._futureSnapshot.routeConfig;
1558
+ },
1525
1559
  enumerable: true,
1526
1560
  configurable: true
1527
1561
  });
1528
1562
  Object.defineProperty(ActivatedRoute.prototype, "root", {
1529
1563
  /** The root of the router state. */
1530
- get: function () { return this._routerState.root; },
1564
+ get: function () {
1565
+ return this._routerState.root;
1566
+ },
1531
1567
  enumerable: true,
1532
1568
  configurable: true
1533
1569
  });
1534
1570
  Object.defineProperty(ActivatedRoute.prototype, "parent", {
1535
1571
  /** The parent of this route in the router state tree. */
1536
- get: function () { return this._routerState.parent(this); },
1572
+ get: function () {
1573
+ return this._routerState.parent(this);
1574
+ },
1537
1575
  enumerable: true,
1538
1576
  configurable: true
1539
1577
  });
1540
1578
  Object.defineProperty(ActivatedRoute.prototype, "firstChild", {
1541
1579
  /** The first child of this route in the router state tree. */
1542
- get: function () { return this._routerState.firstChild(this); },
1580
+ get: function () {
1581
+ return this._routerState.firstChild(this);
1582
+ },
1543
1583
  enumerable: true,
1544
1584
  configurable: true
1545
1585
  });
1546
1586
  Object.defineProperty(ActivatedRoute.prototype, "children", {
1547
1587
  /** The children of this route in the router state tree. */
1548
- get: function () { return this._routerState.children(this); },
1588
+ get: function () {
1589
+ return this._routerState.children(this);
1590
+ },
1549
1591
  enumerable: true,
1550
1592
  configurable: true
1551
1593
  });
1552
1594
  Object.defineProperty(ActivatedRoute.prototype, "pathFromRoot", {
1553
1595
  /** The path from the root of the router state tree to this route. */
1554
- get: function () { return this._routerState.pathFromRoot(this); },
1596
+ get: function () {
1597
+ return this._routerState.pathFromRoot(this);
1598
+ },
1555
1599
  enumerable: true,
1556
1600
  configurable: true
1557
1601
  });
1558
1602
  Object.defineProperty(ActivatedRoute.prototype, "paramMap", {
1559
- /** An Observable that contains a map of the required and optional parameters
1603
+ /**
1604
+ * An Observable that contains a map of the required and optional parameters
1560
1605
  * specific to the route.
1561
- * The map supports retrieving single and multiple values from the same parameter. */
1606
+ * The map supports retrieving single and multiple values from the same parameter.
1607
+ */
1562
1608
  get: function () {
1563
1609
  if (!this._paramMap) {
1564
1610
  this._paramMap = this.params.pipe(map(function (p) { return convertToParamMap(p); }));
@@ -1677,31 +1723,41 @@ var ActivatedRouteSnapshot = /** @class */ (function () {
1677
1723
  }
1678
1724
  Object.defineProperty(ActivatedRouteSnapshot.prototype, "root", {
1679
1725
  /** The root of the router state */
1680
- get: function () { return this._routerState.root; },
1726
+ get: function () {
1727
+ return this._routerState.root;
1728
+ },
1681
1729
  enumerable: true,
1682
1730
  configurable: true
1683
1731
  });
1684
1732
  Object.defineProperty(ActivatedRouteSnapshot.prototype, "parent", {
1685
1733
  /** The parent of this route in the router state tree */
1686
- get: function () { return this._routerState.parent(this); },
1734
+ get: function () {
1735
+ return this._routerState.parent(this);
1736
+ },
1687
1737
  enumerable: true,
1688
1738
  configurable: true
1689
1739
  });
1690
1740
  Object.defineProperty(ActivatedRouteSnapshot.prototype, "firstChild", {
1691
1741
  /** The first child of this route in the router state tree */
1692
- get: function () { return this._routerState.firstChild(this); },
1742
+ get: function () {
1743
+ return this._routerState.firstChild(this);
1744
+ },
1693
1745
  enumerable: true,
1694
1746
  configurable: true
1695
1747
  });
1696
1748
  Object.defineProperty(ActivatedRouteSnapshot.prototype, "children", {
1697
1749
  /** The children of this route in the router state tree */
1698
- get: function () { return this._routerState.children(this); },
1750
+ get: function () {
1751
+ return this._routerState.children(this);
1752
+ },
1699
1753
  enumerable: true,
1700
1754
  configurable: true
1701
1755
  });
1702
1756
  Object.defineProperty(ActivatedRouteSnapshot.prototype, "pathFromRoot", {
1703
1757
  /** The path from the root of the router state tree to this route */
1704
- get: function () { return this._routerState.pathFromRoot(this); },
1758
+ get: function () {
1759
+ return this._routerState.pathFromRoot(this);
1760
+ },
1705
1761
  enumerable: true,
1706
1762
  configurable: true
1707
1763
  });
@@ -1770,7 +1826,9 @@ var RouterStateSnapshot = /** @class */ (function (_super) {
1770
1826
  setRouterState(_this, root);
1771
1827
  return _this;
1772
1828
  }
1773
- RouterStateSnapshot.prototype.toString = function () { return serializeNode(this._root); };
1829
+ RouterStateSnapshot.prototype.toString = function () {
1830
+ return serializeNode(this._root);
1831
+ };
1774
1832
  return RouterStateSnapshot;
1775
1833
  }(Tree));
1776
1834
  function setRouterState(state, node) {
@@ -3004,13 +3062,13 @@ function prioritizedGuardValue() {
3004
3062
  // Toggle pending flag if any values haven't been set yet
3005
3063
  if (val === INITIAL_VALUE)
3006
3064
  isPending = true;
3007
- // Any other return values are only valid if we haven't yet hit a pending call.
3008
- // This guarantees that in the case of a guard at the bottom of the tree that
3009
- // returns a redirect, we will wait for the higher priority guard at the top to
3010
- // finish before performing the redirect.
3065
+ // Any other return values are only valid if we haven't yet hit a pending
3066
+ // call. This guarantees that in the case of a guard at the bottom of the
3067
+ // tree that returns a redirect, we will wait for the higher priority
3068
+ // guard at the top to finish before performing the redirect.
3011
3069
  if (!isPending) {
3012
- // Early return when we hit a `false` value as that should always cancel
3013
- // navigation
3070
+ // Early return when we hit a `false` value as that should always
3071
+ // cancel navigation
3014
3072
  if (val === false)
3015
3073
  return val;
3016
3074
  if (i === list.length - 1 || isUrlTree(val)) {
@@ -3050,7 +3108,9 @@ function checkGuards(moduleInjector, forwardEvent) {
3050
3108
  function runCanDeactivateChecks(checks, futureRSS, currRSS, moduleInjector) {
3051
3109
  return from(checks).pipe(mergeMap(function (check) {
3052
3110
  return runCanDeactivate(check.component, check.route, currRSS, futureRSS, moduleInjector);
3053
- }), first(function (result) { return result !== true; }, true));
3111
+ }), first(function (result) {
3112
+ return result !== true;
3113
+ }, true));
3054
3114
  }
3055
3115
  function runCanActivateChecks(futureSnapshot, checks, moduleInjector, forwardEvent) {
3056
3116
  return from(checks).pipe(concatMap(function (check) {
@@ -3063,16 +3123,18 @@ function runCanActivateChecks(futureSnapshot, checks, moduleInjector, forwardEve
3063
3123
  .pipe(concatAll(), first(function (result) {
3064
3124
  return result !== true;
3065
3125
  }, true));
3066
- }), first(function (result) { return result !== true; }, true));
3126
+ }), first(function (result) {
3127
+ return result !== true;
3128
+ }, true));
3067
3129
  }
3068
3130
  /**
3069
- * This should fire off `ActivationStart` events for each route being activated at this
3070
- * level.
3071
- * In other words, if you're activating `a` and `b` below, `path` will contain the
3072
- * `ActivatedRouteSnapshot`s for both and we will fire `ActivationStart` for both. Always
3073
- * return
3074
- * `true` so checks continue to run.
3075
- */
3131
+ * This should fire off `ActivationStart` events for each route being activated at this
3132
+ * level.
3133
+ * In other words, if you're activating `a` and `b` below, `path` will contain the
3134
+ * `ActivatedRouteSnapshot`s for both and we will fire `ActivationStart` for both. Always
3135
+ * return
3136
+ * `true` so checks continue to run.
3137
+ */
3076
3138
  function fireActivationStart(snapshot, forwardEvent) {
3077
3139
  if (snapshot !== null && forwardEvent) {
3078
3140
  forwardEvent(new ActivationStart(snapshot));
@@ -3080,13 +3142,13 @@ function fireActivationStart(snapshot, forwardEvent) {
3080
3142
  return of(true);
3081
3143
  }
3082
3144
  /**
3083
- * This should fire off `ChildActivationStart` events for each route being activated at this
3084
- * level.
3085
- * In other words, if you're activating `a` and `b` below, `path` will contain the
3086
- * `ActivatedRouteSnapshot`s for both and we will fire `ChildActivationStart` for both. Always
3087
- * return
3088
- * `true` so checks continue to run.
3089
- */
3145
+ * This should fire off `ChildActivationStart` events for each route being activated at this
3146
+ * level.
3147
+ * In other words, if you're activating `a` and `b` below, `path` will contain the
3148
+ * `ActivatedRouteSnapshot`s for both and we will fire `ChildActivationStart` for both. Always
3149
+ * return
3150
+ * `true` so checks continue to run.
3151
+ */
3090
3152
  function fireChildActivationStart(snapshot, forwardEvent) {
3091
3153
  if (snapshot !== null && forwardEvent) {
3092
3154
  forwardEvent(new ChildActivationStart(snapshot));
@@ -3150,8 +3212,7 @@ function runCanDeactivate(component, currARS, currRSS, futureRSS, moduleInjector
3150
3212
  var guard = getToken(c, currARS, moduleInjector);
3151
3213
  var observable;
3152
3214
  if (isCanDeactivate(guard)) {
3153
- observable =
3154
- wrapIntoObservable(guard.canDeactivate(component, currARS, currRSS, futureRSS));
3215
+ observable = wrapIntoObservable(guard.canDeactivate(component, currARS, currRSS, futureRSS));
3155
3216
  }
3156
3217
  else if (isFunction(guard)) {
3157
3218
  observable = wrapIntoObservable(guard(component, currARS, currRSS, futureRSS));
@@ -3317,7 +3378,9 @@ function match$1(segmentGroup, route, segments) {
3317
3378
  if (!res)
3318
3379
  throw new NoMatch$1();
3319
3380
  var posParams = {};
3320
- forEach(res.posParams, function (v, k) { posParams[k] = v.path; });
3381
+ forEach(res.posParams, function (v, k) {
3382
+ posParams[k] = v.path;
3383
+ });
3321
3384
  var parameters = res.consumed.length > 0 ? __assign(__assign({}, posParams), res.consumed[res.consumed.length - 1].parameters) :
3322
3385
  posParams;
3323
3386
  return { consumedSegments: res.consumed, lastChild: res.consumed.length, parameters: parameters };
@@ -3567,10 +3630,16 @@ var RouteReuseStrategy = /** @class */ (function () {
3567
3630
  var DefaultRouteReuseStrategy = /** @class */ (function () {
3568
3631
  function DefaultRouteReuseStrategy() {
3569
3632
  }
3570
- DefaultRouteReuseStrategy.prototype.shouldDetach = function (route) { return false; };
3633
+ DefaultRouteReuseStrategy.prototype.shouldDetach = function (route) {
3634
+ return false;
3635
+ };
3571
3636
  DefaultRouteReuseStrategy.prototype.store = function (route, detachedTree) { };
3572
- DefaultRouteReuseStrategy.prototype.shouldAttach = function (route) { return false; };
3573
- DefaultRouteReuseStrategy.prototype.retrieve = function (route) { return null; };
3637
+ DefaultRouteReuseStrategy.prototype.shouldAttach = function (route) {
3638
+ return false;
3639
+ };
3640
+ DefaultRouteReuseStrategy.prototype.retrieve = function (route) {
3641
+ return null;
3642
+ };
3574
3643
  DefaultRouteReuseStrategy.prototype.shouldReuseRoute = function (future, curr) {
3575
3644
  return future.routeConfig === curr.routeConfig;
3576
3645
  };
@@ -3655,9 +3724,15 @@ var UrlHandlingStrategy = /** @class */ (function () {
3655
3724
  var DefaultUrlHandlingStrategy = /** @class */ (function () {
3656
3725
  function DefaultUrlHandlingStrategy() {
3657
3726
  }
3658
- DefaultUrlHandlingStrategy.prototype.shouldProcessUrl = function (url) { return true; };
3659
- DefaultUrlHandlingStrategy.prototype.extract = function (url) { return url; };
3660
- DefaultUrlHandlingStrategy.prototype.merge = function (newUrlPart, wholeUrl) { return newUrlPart; };
3727
+ DefaultUrlHandlingStrategy.prototype.shouldProcessUrl = function (url) {
3728
+ return true;
3729
+ };
3730
+ DefaultUrlHandlingStrategy.prototype.extract = function (url) {
3731
+ return url;
3732
+ };
3733
+ DefaultUrlHandlingStrategy.prototype.merge = function (newUrlPart, wholeUrl) {
3734
+ return newUrlPart;
3735
+ };
3661
3736
  return DefaultUrlHandlingStrategy;
3662
3737
  }());
3663
3738
 
@@ -3736,10 +3811,7 @@ var Router = /** @class */ (function () {
3736
3811
  *
3737
3812
  * @internal
3738
3813
  */
3739
- this.hooks = {
3740
- beforePreactivation: defaultRouterHook,
3741
- afterPreactivation: defaultRouterHook
3742
- };
3814
+ this.hooks = { beforePreactivation: defaultRouterHook, afterPreactivation: defaultRouterHook };
3743
3815
  /**
3744
3816
  * A strategy for extracting and merging URLs.
3745
3817
  * Used for AngularJS to Angular migrations.
@@ -3818,7 +3890,9 @@ var Router = /** @class */ (function () {
3818
3890
  var eventsSubject = this.events;
3819
3891
  return transitions.pipe(filter(function (t) { return t.id !== 0; }),
3820
3892
  // Extract URL
3821
- map(function (t) { return (__assign(__assign({}, t), { extractedUrl: _this.urlHandlingStrategy.extract(t.rawUrl) })); }),
3893
+ map(function (t) {
3894
+ return (__assign(__assign({}, t), { extractedUrl: _this.urlHandlingStrategy.extract(t.rawUrl) }));
3895
+ }),
3822
3896
  // Using switchMap so we cancel executing navigations when a new one comes in
3823
3897
  switchMap(function (t) {
3824
3898
  var completed = false;
@@ -3836,7 +3910,8 @@ var Router = /** @class */ (function () {
3836
3910
  null
3837
3911
  };
3838
3912
  }), switchMap(function (t) {
3839
- var urlTransition = !_this.navigated || t.extractedUrl.toString() !== _this.browserUrlTree.toString();
3913
+ var urlTransition = !_this.navigated ||
3914
+ t.extractedUrl.toString() !== _this.browserUrlTree.toString();
3840
3915
  var processCurrentUrl = (_this.onSameUrlNavigation === 'reload' ? true : urlTransition) &&
3841
3916
  _this.urlHandlingStrategy.shouldProcessUrl(t.rawUrl);
3842
3917
  if (processCurrentUrl) {
@@ -3850,8 +3925,8 @@ var Router = /** @class */ (function () {
3850
3925
  }
3851
3926
  return [t];
3852
3927
  }),
3853
- // This delay is required to match old behavior that forced navigation to
3854
- // always be async
3928
+ // This delay is required to match old behavior that forced navigation
3929
+ // to always be async
3855
3930
  switchMap(function (t) { return Promise.resolve(t); }),
3856
3931
  // ApplyRedirects
3857
3932
  applyRedirects$1(_this.ngModule.injector, _this.configLoader, _this.urlSerializer, _this.config),
@@ -3879,9 +3954,9 @@ var Router = /** @class */ (function () {
3879
3954
  else {
3880
3955
  var processPreviousUrl = urlTransition && _this.rawUrlTree &&
3881
3956
  _this.urlHandlingStrategy.shouldProcessUrl(_this.rawUrlTree);
3882
- /* When the current URL shouldn't be processed, but the previous one was, we
3883
- * handle this "error condition" by navigating to the previously successful URL,
3884
- * but leaving the URL intact.*/
3957
+ /* When the current URL shouldn't be processed, but the previous one was,
3958
+ * we handle this "error condition" by navigating to the previously
3959
+ * successful URL, but leaving the URL intact.*/
3885
3960
  if (processPreviousUrl) {
3886
3961
  var id = t.id, extractedUrl = t.extractedUrl, source = t.source, restoredState = t.restoredState, extras = t.extras;
3887
3962
  var navStart = new NavigationStart(id, _this.serializeUrl(extractedUrl), source, restoredState);
@@ -3890,9 +3965,10 @@ var Router = /** @class */ (function () {
3890
3965
  return of(__assign(__assign({}, t), { targetSnapshot: targetSnapshot, urlAfterRedirects: extractedUrl, extras: __assign(__assign({}, extras), { skipLocationChange: false, replaceUrl: false }) }));
3891
3966
  }
3892
3967
  else {
3893
- /* When neither the current or previous URL can be processed, do nothing other
3894
- * than update router's internal reference to the current "settled" URL. This
3895
- * way the next navigation will be coming from the current URL in the browser.
3968
+ /* When neither the current or previous URL can be processed, do nothing
3969
+ * other than update router's internal reference to the current "settled"
3970
+ * URL. This way the next navigation will be coming from the current URL
3971
+ * in the browser.
3896
3972
  */
3897
3973
  _this.rawUrlTree = t.rawUrl;
3898
3974
  _this.browserUrlTree = t.urlAfterRedirects;
@@ -3963,14 +4039,15 @@ var Router = /** @class */ (function () {
3963
4039
  var targetRouterState = createRouterState(_this.routeReuseStrategy, t.targetSnapshot, t.currentRouterState);
3964
4040
  return (__assign(__assign({}, t), { targetRouterState: targetRouterState }));
3965
4041
  }),
3966
- /* Once here, we are about to activate syncronously. The assumption is this will
3967
- succeed, and user code may read from the Router service. Therefore before
3968
- activation, we need to update router properties storing the current URL and the
3969
- RouterState, as well as updated the browser URL. All this should happen *before*
3970
- activating. */
4042
+ /* Once here, we are about to activate syncronously. The assumption is this
4043
+ will succeed, and user code may read from the Router service. Therefore
4044
+ before activation, we need to update router properties storing the current
4045
+ URL and the RouterState, as well as updated the browser URL. All this should
4046
+ happen *before* activating. */
3971
4047
  tap(function (t) {
3972
4048
  _this.currentUrlTree = t.urlAfterRedirects;
3973
- _this.rawUrlTree = _this.urlHandlingStrategy.merge(_this.currentUrlTree, t.rawUrl);
4049
+ _this.rawUrlTree =
4050
+ _this.urlHandlingStrategy.merge(_this.currentUrlTree, t.rawUrl);
3974
4051
  _this.routerState = t.targetRouterState;
3975
4052
  if (_this.urlUpdateStrategy === 'deferred') {
3976
4053
  if (!t.extras.skipLocationChange) {
@@ -3978,40 +4055,50 @@ var Router = /** @class */ (function () {
3978
4055
  }
3979
4056
  _this.browserUrlTree = t.urlAfterRedirects;
3980
4057
  }
3981
- }), activateRoutes(_this.rootContexts, _this.routeReuseStrategy, function (evt) { return _this.triggerEvent(evt); }), tap({ next: function () { completed = true; }, complete: function () { completed = true; } }), finalize(function () {
3982
- /* When the navigation stream finishes either through error or success, we set the
3983
- * `completed` or `errored` flag. However, there are some situations where we could
3984
- * get here without either of those being set. For instance, a redirect during
3985
- * NavigationStart. Therefore, this is a catch-all to make sure the NavigationCancel
3986
- * event is fired when a navigation gets cancelled but not caught by other means. */
4058
+ }), activateRoutes(_this.rootContexts, _this.routeReuseStrategy, function (evt) { return _this.triggerEvent(evt); }), tap({
4059
+ next: function () {
4060
+ completed = true;
4061
+ },
4062
+ complete: function () {
4063
+ completed = true;
4064
+ }
4065
+ }), finalize(function () {
4066
+ /* When the navigation stream finishes either through error or success, we
4067
+ * set the `completed` or `errored` flag. However, there are some situations
4068
+ * where we could get here without either of those being set. For instance, a
4069
+ * redirect during NavigationStart. Therefore, this is a catch-all to make
4070
+ * sure the NavigationCancel
4071
+ * event is fired when a navigation gets cancelled but not caught by other
4072
+ * means. */
3987
4073
  if (!completed && !errored) {
3988
- // Must reset to current URL tree here to ensure history.state is set. On a fresh
3989
- // page load, if a new navigation comes in before a successful navigation
3990
- // completes, there will be nothing in history.state.navigationId. This can cause
3991
- // sync problems with AngularJS sync code which looks for a value here in order
3992
- // to determine whether or not to handle a given popstate event or to leave it
3993
- // to the Angualr router.
4074
+ // Must reset to current URL tree here to ensure history.state is set. On a
4075
+ // fresh page load, if a new navigation comes in before a successful
4076
+ // navigation completes, there will be nothing in
4077
+ // history.state.navigationId. This can cause sync problems with AngularJS
4078
+ // sync code which looks for a value here in order to determine whether or
4079
+ // not to handle a given popstate event or to leave it to the Angualr
4080
+ // router.
3994
4081
  _this.resetUrlToCurrentUrlTree();
3995
4082
  var navCancel = new NavigationCancel(t.id, _this.serializeUrl(t.extractedUrl), "Navigation ID " + t.id + " is not equal to the current navigation id " + _this.navigationId);
3996
4083
  eventsSubject.next(navCancel);
3997
4084
  t.resolve(false);
3998
4085
  }
3999
4086
  // currentNavigation should always be reset to null here. If navigation was
4000
- // successful, lastSuccessfulTransition will have already been set. Therefore we
4001
- // can safely set currentNavigation to null here.
4087
+ // successful, lastSuccessfulTransition will have already been set. Therefore
4088
+ // we can safely set currentNavigation to null here.
4002
4089
  _this.currentNavigation = null;
4003
4090
  }), catchError(function (e) {
4004
4091
  errored = true;
4005
- /* This error type is issued during Redirect, and is handled as a cancellation
4006
- * rather than an error. */
4092
+ /* This error type is issued during Redirect, and is handled as a
4093
+ * cancellation rather than an error. */
4007
4094
  if (isNavigationCancelingError(e)) {
4008
4095
  var redirecting = isUrlTree(e.url);
4009
4096
  if (!redirecting) {
4010
4097
  // Set property only if we're not redirecting. If we landed on a page and
4011
- // redirect to `/` route, the new navigation is going to see the `/` isn't
4012
- // a change from the default currentUrlTree and won't navigate. This is
4013
- // only applicable with initial navigation, so setting `navigated` only when
4014
- // not redirecting resolves this scenario.
4098
+ // redirect to `/` route, the new navigation is going to see the `/`
4099
+ // isn't a change from the default currentUrlTree and won't navigate.
4100
+ // This is only applicable with initial navigation, so setting
4101
+ // `navigated` only when not redirecting resolves this scenario.
4015
4102
  _this.navigated = true;
4016
4103
  _this.resetStateAndUrl(t.currentRouterState, t.currentUrlTree, t.rawUrl);
4017
4104
  }
@@ -4036,8 +4123,8 @@ var Router = /** @class */ (function () {
4036
4123
  return _this.scheduleNavigation(mergedTree, 'imperative', null, extras, { resolve: t.resolve, reject: t.reject, promise: t.promise });
4037
4124
  }, 0);
4038
4125
  }
4039
- /* All other errors should reset to the router's internal URL reference to the
4040
- * pre-error state. */
4126
+ /* All other errors should reset to the router's internal URL reference to
4127
+ * the pre-error state. */
4041
4128
  }
4042
4129
  else {
4043
4130
  _this.resetStateAndUrl(t.currentRouterState, t.currentUrlTree, t.rawUrl);
@@ -4100,20 +4187,28 @@ var Router = /** @class */ (function () {
4100
4187
  // Navigations coming from Angular router have a navigationId state property. When this
4101
4188
  // exists, restore the state.
4102
4189
  var state = change.state && change.state.navigationId ? change.state : null;
4103
- setTimeout(function () { _this.scheduleNavigation(rawUrlTree, source, state, { replaceUrl: true }); }, 0);
4190
+ setTimeout(function () {
4191
+ _this.scheduleNavigation(rawUrlTree, source, state, { replaceUrl: true });
4192
+ }, 0);
4104
4193
  });
4105
4194
  }
4106
4195
  };
4107
4196
  Object.defineProperty(Router.prototype, "url", {
4108
4197
  /** The current URL. */
4109
- get: function () { return this.serializeUrl(this.currentUrlTree); },
4198
+ get: function () {
4199
+ return this.serializeUrl(this.currentUrlTree);
4200
+ },
4110
4201
  enumerable: true,
4111
4202
  configurable: true
4112
4203
  });
4113
4204
  /** The current Navigation object if one exists */
4114
- Router.prototype.getCurrentNavigation = function () { return this.currentNavigation; };
4205
+ Router.prototype.getCurrentNavigation = function () {
4206
+ return this.currentNavigation;
4207
+ };
4115
4208
  /** @internal */
4116
- Router.prototype.triggerEvent = function (event) { this.events.next(event); };
4209
+ Router.prototype.triggerEvent = function (event) {
4210
+ this.events.next(event);
4211
+ };
4117
4212
  /**
4118
4213
  * Resets the configuration used for navigation and generating links.
4119
4214
  *
@@ -4137,7 +4232,9 @@ var Router = /** @class */ (function () {
4137
4232
  this.lastSuccessfulId = -1;
4138
4233
  };
4139
4234
  /** @docsNotRequired */
4140
- Router.prototype.ngOnDestroy = function () { this.dispose(); };
4235
+ Router.prototype.ngOnDestroy = function () {
4236
+ this.dispose();
4237
+ };
4141
4238
  /** Disposes of the router. */
4142
4239
  Router.prototype.dispose = function () {
4143
4240
  if (this.locationSubscription) {
@@ -4282,7 +4379,9 @@ var Router = /** @class */ (function () {
4282
4379
  return this.navigateByUrl(this.createUrlTree(commands, extras), extras);
4283
4380
  };
4284
4381
  /** Serializes a `UrlTree` into a string */
4285
- Router.prototype.serializeUrl = function (url) { return this.urlSerializer.serialize(url); };
4382
+ Router.prototype.serializeUrl = function (url) {
4383
+ return this.urlSerializer.serialize(url);
4384
+ };
4286
4385
  /** Parses a string into a `UrlTree` */
4287
4386
  Router.prototype.parseUrl = function (url) {
4288
4387
  var urlTree;
@@ -4321,7 +4420,9 @@ var Router = /** @class */ (function () {
4321
4420
  _this.lastSuccessfulNavigation = _this.currentNavigation;
4322
4421
  _this.currentNavigation = null;
4323
4422
  t.resolve(true);
4324
- }, function (e) { _this.console.warn("Unhandled Navigation Error: "); });
4423
+ }, function (e) {
4424
+ _this.console.warn("Unhandled Navigation Error: ");
4425
+ });
4325
4426
  };
4326
4427
  Router.prototype.scheduleNavigation = function (rawUrl, source, restoredState, extras, priorPromise) {
4327
4428
  var lastNavigation = this.getTransition();
@@ -4366,13 +4467,20 @@ var Router = /** @class */ (function () {
4366
4467
  source: source,
4367
4468
  restoredState: restoredState,
4368
4469
  currentUrlTree: this.currentUrlTree,
4369
- currentRawUrl: this.rawUrlTree, rawUrl: rawUrl, extras: extras, resolve: resolve, reject: reject, promise: promise,
4470
+ currentRawUrl: this.rawUrlTree,
4471
+ rawUrl: rawUrl,
4472
+ extras: extras,
4473
+ resolve: resolve,
4474
+ reject: reject,
4475
+ promise: promise,
4370
4476
  currentSnapshot: this.routerState.snapshot,
4371
4477
  currentRouterState: this.routerState
4372
4478
  });
4373
4479
  // Make sure that the error is propagated even though `processNavigations` catch
4374
4480
  // handler does not rethrow
4375
- return promise.catch(function (e) { return Promise.reject(e); });
4481
+ return promise.catch(function (e) {
4482
+ return Promise.reject(e);
4483
+ });
4376
4484
  };
4377
4485
  Router.prototype.setBrowserUrl = function (url, replaceUrl, id, state) {
4378
4486
  var path = this.urlSerializer.serialize(url);
@@ -4544,6 +4652,7 @@ var RouterLink = /** @class */ (function () {
4544
4652
  var extras = {
4545
4653
  skipLocationChange: attrBoolValue(this.skipLocationChange),
4546
4654
  replaceUrl: attrBoolValue(this.replaceUrl),
4655
+ state: this.state,
4547
4656
  };
4548
4657
  this.router.navigateByUrl(this.urlTree, extras);
4549
4658
  return true;
@@ -4659,8 +4768,12 @@ var RouterLinkWithHref = /** @class */ (function () {
4659
4768
  enumerable: true,
4660
4769
  configurable: true
4661
4770
  });
4662
- RouterLinkWithHref.prototype.ngOnChanges = function (changes) { this.updateTargetUrlAndHref(); };
4663
- RouterLinkWithHref.prototype.ngOnDestroy = function () { this.subscription.unsubscribe(); };
4771
+ RouterLinkWithHref.prototype.ngOnChanges = function (changes) {
4772
+ this.updateTargetUrlAndHref();
4773
+ };
4774
+ RouterLinkWithHref.prototype.ngOnDestroy = function () {
4775
+ this.subscription.unsubscribe();
4776
+ };
4664
4777
  RouterLinkWithHref.prototype.onClick = function (button, ctrlKey, metaKey, shiftKey) {
4665
4778
  if (button !== 0 || ctrlKey || metaKey || shiftKey) {
4666
4779
  return true;
@@ -4851,8 +4964,12 @@ var RouterLinkActive = /** @class */ (function () {
4851
4964
  enumerable: true,
4852
4965
  configurable: true
4853
4966
  });
4854
- RouterLinkActive.prototype.ngOnChanges = function (changes) { this.update(); };
4855
- RouterLinkActive.prototype.ngOnDestroy = function () { this.subscription.unsubscribe(); };
4967
+ RouterLinkActive.prototype.ngOnChanges = function (changes) {
4968
+ this.update();
4969
+ };
4970
+ RouterLinkActive.prototype.ngOnDestroy = function () {
4971
+ this.subscription.unsubscribe();
4972
+ };
4856
4973
  RouterLinkActive.prototype.update = function () {
4857
4974
  var _this = this;
4858
4975
  if (!this.links || !this.linksWithHrefs || !this.router.navigated)
@@ -4973,7 +5090,9 @@ var ChildrenOutletContexts = /** @class */ (function () {
4973
5090
  this.contexts = new Map();
4974
5091
  return contexts;
4975
5092
  };
4976
- ChildrenOutletContexts.prototype.onOutletReAttached = function (contexts) { this.contexts = contexts; };
5093
+ ChildrenOutletContexts.prototype.onOutletReAttached = function (contexts) {
5094
+ this.contexts = contexts;
5095
+ };
4977
5096
  ChildrenOutletContexts.prototype.getOrCreateContext = function (childName) {
4978
5097
  var context = this.getContext(childName);
4979
5098
  if (!context) {
@@ -4982,7 +5101,9 @@ var ChildrenOutletContexts = /** @class */ (function () {
4982
5101
  }
4983
5102
  return context;
4984
5103
  };
4985
- ChildrenOutletContexts.prototype.getContext = function (childName) { return this.contexts.get(childName) || null; };
5104
+ ChildrenOutletContexts.prototype.getContext = function (childName) {
5105
+ return this.contexts.get(childName) || null;
5106
+ };
4986
5107
  return ChildrenOutletContexts;
4987
5108
  }());
4988
5109
 
@@ -5032,7 +5153,9 @@ var RouterOutlet = /** @class */ (function () {
5032
5153
  this.name = name || PRIMARY_OUTLET;
5033
5154
  parentContexts.onChildOutletCreated(this.name, this);
5034
5155
  }
5035
- RouterOutlet.prototype.ngOnDestroy = function () { this.parentContexts.onChildOutletDestroyed(this.name); };
5156
+ RouterOutlet.prototype.ngOnDestroy = function () {
5157
+ this.parentContexts.onChildOutletDestroyed(this.name);
5158
+ };
5036
5159
  RouterOutlet.prototype.ngOnInit = function () {
5037
5160
  if (!this.activated) {
5038
5161
  // If the outlet was not instantiated at the time the route got activated we need to populate
@@ -5051,7 +5174,9 @@ var RouterOutlet = /** @class */ (function () {
5051
5174
  }
5052
5175
  };
5053
5176
  Object.defineProperty(RouterOutlet.prototype, "isActivated", {
5054
- get: function () { return !!this.activated; },
5177
+ get: function () {
5178
+ return !!this.activated;
5179
+ },
5055
5180
  enumerable: true,
5056
5181
  configurable: true
5057
5182
  });
@@ -5164,12 +5289,12 @@ var OutletInjector = /** @class */ (function () {
5164
5289
  }());
5165
5290
 
5166
5291
  /**
5167
- *@license
5168
- *Copyright Google Inc. All Rights Reserved.
5169
- *
5170
- *Use of this source code is governed by an MIT-style license that can be
5171
- *found in the LICENSE file at https://angular.io/license
5172
- */
5292
+ *@license
5293
+ *Copyright Google Inc. All Rights Reserved.
5294
+ *
5295
+ *Use of this source code is governed by an MIT-style license that can be
5296
+ *found in the LICENSE file at https://angular.io/license
5297
+ */
5173
5298
  /**
5174
5299
  * @description
5175
5300
  *
@@ -5213,7 +5338,9 @@ var PreloadAllModules = /** @class */ (function () {
5213
5338
  var NoPreloading = /** @class */ (function () {
5214
5339
  function NoPreloading() {
5215
5340
  }
5216
- NoPreloading.prototype.preload = function (route, fn) { return of(null); };
5341
+ NoPreloading.prototype.preload = function (route, fn) {
5342
+ return of(null);
5343
+ };
5217
5344
  return NoPreloading;
5218
5345
  }());
5219
5346
  /**
@@ -5251,7 +5378,9 @@ var RouterPreloader = /** @class */ (function () {
5251
5378
  // TODO(jasonaden): This class relies on code external to the class to call setUpPreloading. If
5252
5379
  // this hasn't been done, ngOnDestroy will fail as this.subscription will be undefined. This
5253
5380
  // should be refactored.
5254
- RouterPreloader.prototype.ngOnDestroy = function () { this.subscription.unsubscribe(); };
5381
+ RouterPreloader.prototype.ngOnDestroy = function () {
5382
+ this.subscription.unsubscribe();
5383
+ };
5255
5384
  RouterPreloader.prototype.processRoutes = function (ngModule, routes) {
5256
5385
  var e_1, _a;
5257
5386
  var res = [];
@@ -5494,7 +5623,7 @@ var RouterModule = /** @class */ (function () {
5494
5623
  * @param routes An array of `Route` objects that define the navigation paths for the application.
5495
5624
  * @param config An `ExtraOptions` configuration object that controls how navigation is performed.
5496
5625
  * @return The new router module.
5497
- */
5626
+ */
5498
5627
  RouterModule.forRoot = function (routes, config) {
5499
5628
  return {
5500
5629
  ngModule: RouterModule_1,
@@ -5510,9 +5639,7 @@ var RouterModule = /** @class */ (function () {
5510
5639
  {
5511
5640
  provide: LocationStrategy,
5512
5641
  useFactory: provideLocationStrategy,
5513
- deps: [
5514
- PlatformLocation, [new Inject(APP_BASE_HREF), new Optional()], ROUTER_CONFIGURATION
5515
- ]
5642
+ deps: [PlatformLocation, [new Inject(APP_BASE_HREF), new Optional()], ROUTER_CONFIGURATION]
5516
5643
  },
5517
5644
  {
5518
5645
  provide: RouterScroller,
@@ -5751,7 +5878,7 @@ function provideRouterInitializer() {
5751
5878
  /**
5752
5879
  * @publicApi
5753
5880
  */
5754
- var VERSION = new Version('9.1.0');
5881
+ var VERSION = new Version('9.1.4');
5755
5882
 
5756
5883
  /**
5757
5884
  * @license