@angular/common 19.0.0-next.8 → 19.0.0-rc.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/fesm2022/http.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v19.0.0-next.8
2
+ * @license Angular v19.0.0-rc.0
3
3
  * (c) 2010-2024 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -46,17 +46,26 @@ class HttpBackend {
46
46
  * @publicApi
47
47
  */
48
48
  class HttpHeaders {
49
+ /**
50
+ * Internal map of lowercase header names to values.
51
+ */
52
+ // TODO(issue/24571): remove '!'.
53
+ headers;
54
+ /**
55
+ * Internal map of lowercased header names to the normalized
56
+ * form of the name (the form seen first).
57
+ */
58
+ normalizedNames = new Map();
59
+ /**
60
+ * Complete the lazy initialization of this object (needed before reading).
61
+ */
62
+ lazyInit;
63
+ /**
64
+ * Queued updates to be materialized the next initialization.
65
+ */
66
+ lazyUpdate = null;
49
67
  /** Constructs a new HTTP header object with the given values.*/
50
68
  constructor(headers) {
51
- /**
52
- * Internal map of lowercased header names to the normalized
53
- * form of the name (the form seen first).
54
- */
55
- this.normalizedNames = new Map();
56
- /**
57
- * Queued updates to be materialized the next initialization.
58
- */
59
- this.lazyUpdate = null;
60
69
  if (!headers) {
61
70
  this.headers = new Map();
62
71
  }
@@ -373,9 +382,11 @@ function valueToString(value) {
373
382
  * @publicApi
374
383
  */
375
384
  class HttpParams {
385
+ map;
386
+ encoder;
387
+ updates = null;
388
+ cloneFrom = null;
376
389
  constructor(options = {}) {
377
- this.updates = null;
378
- this.cloneFrom = null;
379
390
  this.encoder = options.encoder || new HttpUrlEncodingCodec();
380
391
  if (!!options.fromString) {
381
392
  if (!!options.fromObject) {
@@ -556,6 +567,7 @@ class HttpParams {
556
567
  * @publicApi
557
568
  */
558
569
  class HttpContextToken {
570
+ defaultValue;
559
571
  constructor(defaultValue) {
560
572
  this.defaultValue = defaultValue;
561
573
  }
@@ -594,9 +606,7 @@ class HttpContextToken {
594
606
  * @publicApi
595
607
  */
596
608
  class HttpContext {
597
- constructor() {
598
- this.map = new Map();
599
- }
609
+ map = new Map();
600
610
  /**
601
611
  * Store a value in the context. If a value is already present it will be overwritten.
602
612
  *
@@ -709,36 +719,70 @@ function isUrlSearchParams(value) {
709
719
  * @publicApi
710
720
  */
711
721
  class HttpRequest {
722
+ url;
723
+ /**
724
+ * The request body, or `null` if one isn't set.
725
+ *
726
+ * Bodies are not enforced to be immutable, as they can include a reference to any
727
+ * user-defined data type. However, interceptors should take care to preserve
728
+ * idempotence by treating them as such.
729
+ */
730
+ body = null;
731
+ /**
732
+ * Outgoing headers for this request.
733
+ */
734
+ // TODO(issue/24571): remove '!'.
735
+ headers;
736
+ /**
737
+ * Shared and mutable context that can be used by interceptors
738
+ */
739
+ context;
740
+ /**
741
+ * Whether this request should be made in a way that exposes progress events.
742
+ *
743
+ * Progress events are expensive (change detection runs on each event) and so
744
+ * they should only be requested if the consumer intends to monitor them.
745
+ *
746
+ * Note: The `FetchBackend` doesn't support progress report on uploads.
747
+ */
748
+ reportProgress = false;
749
+ /**
750
+ * Whether this request should be sent with outgoing credentials (cookies).
751
+ */
752
+ withCredentials = false;
753
+ /**
754
+ * The expected response type of the server.
755
+ *
756
+ * This is used to parse the response appropriately before returning it to
757
+ * the requestee.
758
+ */
759
+ responseType = 'json';
760
+ /**
761
+ * The outgoing HTTP request method.
762
+ */
763
+ method;
764
+ /**
765
+ * Outgoing URL parameters.
766
+ *
767
+ * To pass a string representation of HTTP parameters in the URL-query-string format,
768
+ * the `HttpParamsOptions`' `fromString` may be used. For example:
769
+ *
770
+ * ```
771
+ * new HttpParams({fromString: 'angular=awesome'})
772
+ * ```
773
+ */
774
+ // TODO(issue/24571): remove '!'.
775
+ params;
776
+ /**
777
+ * The outgoing URL with all URL parameters set.
778
+ */
779
+ urlWithParams;
780
+ /**
781
+ * The HttpTransferCache option for the request
782
+ */
783
+ transferCache;
712
784
  constructor(method, url, third, fourth) {
713
785
  this.url = url;
714
- /**
715
- * The request body, or `null` if one isn't set.
716
- *
717
- * Bodies are not enforced to be immutable, as they can include a reference to any
718
- * user-defined data type. However, interceptors should take care to preserve
719
- * idempotence by treating them as such.
720
- */
721
- this.body = null;
722
- /**
723
- * Whether this request should be made in a way that exposes progress events.
724
- *
725
- * Progress events are expensive (change detection runs on each event) and so
726
- * they should only be requested if the consumer intends to monitor them.
727
- *
728
- * Note: The `FetchBackend` doesn't support progress report on uploads.
729
- */
730
- this.reportProgress = false;
731
- /**
732
- * Whether this request should be sent with outgoing credentials (cookies).
733
- */
734
- this.withCredentials = false;
735
- /**
736
- * The expected response type of the server.
737
- *
738
- * This is used to parse the response appropriately before returning it to
739
- * the requestee.
740
- */
741
- this.responseType = 'json';
742
786
  this.method = method.toUpperCase();
743
787
  // Next, need to figure out which argument holds the HttpRequestInit
744
788
  // options, if any.
@@ -967,6 +1011,33 @@ var HttpEventType;
967
1011
  * @publicApi
968
1012
  */
969
1013
  class HttpResponseBase {
1014
+ /**
1015
+ * All response headers.
1016
+ */
1017
+ headers;
1018
+ /**
1019
+ * Response status code.
1020
+ */
1021
+ status;
1022
+ /**
1023
+ * Textual description of response status code, defaults to OK.
1024
+ *
1025
+ * Do not depend on this.
1026
+ */
1027
+ statusText;
1028
+ /**
1029
+ * URL of the resource retrieved, or null if not available.
1030
+ */
1031
+ url;
1032
+ /**
1033
+ * Whether the status code falls in the 2xx range.
1034
+ */
1035
+ ok;
1036
+ /**
1037
+ * Type of the response, narrowed to either the full response or the header.
1038
+ */
1039
+ // TODO(issue/24571): remove '!'.
1040
+ type;
970
1041
  /**
971
1042
  * Super-constructor for all responses.
972
1043
  *
@@ -999,8 +1070,8 @@ class HttpHeaderResponse extends HttpResponseBase {
999
1070
  */
1000
1071
  constructor(init = {}) {
1001
1072
  super(init);
1002
- this.type = HttpEventType.ResponseHeader;
1003
1073
  }
1074
+ type = HttpEventType.ResponseHeader;
1004
1075
  /**
1005
1076
  * Copy this `HttpHeaderResponse`, overriding its contents with the
1006
1077
  * given parameter hash.
@@ -1026,14 +1097,18 @@ class HttpHeaderResponse extends HttpResponseBase {
1026
1097
  * @publicApi
1027
1098
  */
1028
1099
  class HttpResponse extends HttpResponseBase {
1100
+ /**
1101
+ * The response body, or `null` if one was not returned.
1102
+ */
1103
+ body;
1029
1104
  /**
1030
1105
  * Construct a new `HttpResponse`.
1031
1106
  */
1032
1107
  constructor(init = {}) {
1033
1108
  super(init);
1034
- this.type = HttpEventType.Response;
1035
1109
  this.body = init.body !== undefined ? init.body : null;
1036
1110
  }
1111
+ type = HttpEventType.Response;
1037
1112
  clone(update = {}) {
1038
1113
  return new HttpResponse({
1039
1114
  body: update.body !== undefined ? update.body : this.body,
@@ -1058,14 +1133,16 @@ class HttpResponse extends HttpResponseBase {
1058
1133
  * @publicApi
1059
1134
  */
1060
1135
  class HttpErrorResponse extends HttpResponseBase {
1136
+ name = 'HttpErrorResponse';
1137
+ message;
1138
+ error;
1139
+ /**
1140
+ * Errors are never okay, even when the status code is in the 2xx success range.
1141
+ */
1142
+ ok = false;
1061
1143
  constructor(init) {
1062
1144
  // Initialize with a default status of 0 / Unknown Error.
1063
1145
  super(init, 0, 'Unknown Error');
1064
- this.name = 'HttpErrorResponse';
1065
- /**
1066
- * Errors are never okay, even when the status code is in the 2xx success range.
1067
- */
1068
- this.ok = false;
1069
1146
  // If the response was successful, then this was a parse error. Otherwise, it was
1070
1147
  // a protocol-level failure of some sort. Either the request failed in transit
1071
1148
  // or the server returned an unsuccessful status code.
@@ -1234,6 +1311,7 @@ function addBody(options, body) {
1234
1311
  * @publicApi
1235
1312
  */
1236
1313
  class HttpClient {
1314
+ handler;
1237
1315
  constructor(handler) {
1238
1316
  this.handler = handler;
1239
1317
  }
@@ -1457,10 +1535,10 @@ class HttpClient {
1457
1535
  put(url, body, options = {}) {
1458
1536
  return this.request('PUT', url, addBody(options, body));
1459
1537
  }
1460
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpClient, deps: [{ token: HttpHandler }], target: i0.ɵɵFactoryTarget.Injectable }); }
1461
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpClient }); }
1538
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpClient, deps: [{ token: HttpHandler }], target: i0.ɵɵFactoryTarget.Injectable });
1539
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpClient });
1462
1540
  }
1463
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpClient, decorators: [{
1541
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpClient, decorators: [{
1464
1542
  type: Injectable
1465
1543
  }], ctorParameters: () => [{ type: HttpHandler }] });
1466
1544
 
@@ -1490,13 +1568,11 @@ function getResponseUrl$1(response) {
1490
1568
  * @publicApi
1491
1569
  */
1492
1570
  class FetchBackend {
1493
- constructor() {
1494
- // We use an arrow function to always reference the current global implementation of `fetch`.
1495
- // This is helpful for cases when the global `fetch` implementation is modified by external code,
1496
- // see https://github.com/angular/angular/issues/57527.
1497
- this.fetchImpl = inject(FetchFactory, { optional: true })?.fetch ?? ((...args) => globalThis.fetch(...args));
1498
- this.ngZone = inject(NgZone);
1499
- }
1571
+ // We use an arrow function to always reference the current global implementation of `fetch`.
1572
+ // This is helpful for cases when the global `fetch` implementation is modified by external code,
1573
+ // see https://github.com/angular/angular/issues/57527.
1574
+ fetchImpl = inject(FetchFactory, { optional: true })?.fetch ?? ((...args) => globalThis.fetch(...args));
1575
+ ngZone = inject(NgZone);
1500
1576
  handle(request) {
1501
1577
  return new Observable((observer) => {
1502
1578
  const aborter = new AbortController();
@@ -1673,10 +1749,10 @@ class FetchBackend {
1673
1749
  }
1674
1750
  return chunksAll;
1675
1751
  }
1676
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: FetchBackend, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1677
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: FetchBackend }); }
1752
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: FetchBackend, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1753
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: FetchBackend });
1678
1754
  }
1679
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: FetchBackend, decorators: [{
1755
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: FetchBackend, decorators: [{
1680
1756
  type: Injectable
1681
1757
  }] });
1682
1758
  /**
@@ -1765,13 +1841,15 @@ function resetFetchBackendWarningFlag() {
1765
1841
  fetchBackendWarningDisplayed = false;
1766
1842
  }
1767
1843
  class HttpInterceptorHandler extends HttpHandler {
1844
+ backend;
1845
+ injector;
1846
+ chain = null;
1847
+ pendingTasks = inject(ɵPendingTasks);
1848
+ contributeToStability = inject(REQUESTS_CONTRIBUTE_TO_STABILITY);
1768
1849
  constructor(backend, injector) {
1769
1850
  super();
1770
1851
  this.backend = backend;
1771
1852
  this.injector = injector;
1772
- this.chain = null;
1773
- this.pendingTasks = inject(ɵPendingTasks);
1774
- this.contributeToStability = inject(REQUESTS_CONTRIBUTE_TO_STABILITY);
1775
1853
  // We strongly recommend using fetch backend for HTTP calls when SSR is used
1776
1854
  // for an application. The logic below checks if that's the case and produces
1777
1855
  // a warning otherwise.
@@ -1810,10 +1888,10 @@ class HttpInterceptorHandler extends HttpHandler {
1810
1888
  return this.chain(initialRequest, (downstreamRequest) => this.backend.handle(downstreamRequest));
1811
1889
  }
1812
1890
  }
1813
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpInterceptorHandler, deps: [{ token: HttpBackend }, { token: i0.EnvironmentInjector }], target: i0.ɵɵFactoryTarget.Injectable }); }
1814
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpInterceptorHandler }); }
1891
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpInterceptorHandler, deps: [{ token: HttpBackend }, { token: i0.EnvironmentInjector }], target: i0.ɵɵFactoryTarget.Injectable });
1892
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpInterceptorHandler });
1815
1893
  }
1816
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpInterceptorHandler, decorators: [{
1894
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpInterceptorHandler, decorators: [{
1817
1895
  type: Injectable
1818
1896
  }], ctorParameters: () => [{ type: HttpBackend }, { type: i0.EnvironmentInjector }] });
1819
1897
 
@@ -1869,13 +1947,15 @@ function jsonpCallbackContext() {
1869
1947
  * @publicApi
1870
1948
  */
1871
1949
  class JsonpClientBackend {
1950
+ callbackMap;
1951
+ document;
1952
+ /**
1953
+ * A resolved promise that can be used to schedule microtasks in the event handlers.
1954
+ */
1955
+ resolvedPromise = Promise.resolve();
1872
1956
  constructor(callbackMap, document) {
1873
1957
  this.callbackMap = callbackMap;
1874
1958
  this.document = document;
1875
- /**
1876
- * A resolved promise that can be used to schedule microtasks in the event handlers.
1877
- */
1878
- this.resolvedPromise = Promise.resolve();
1879
1959
  }
1880
1960
  /**
1881
1961
  * Get the name of the next callback method, by incrementing the global `nextRequestId`.
@@ -2013,10 +2093,10 @@ class JsonpClientBackend {
2013
2093
  foreignDocument ??= this.document.implementation.createHTMLDocument();
2014
2094
  foreignDocument.adoptNode(script);
2015
2095
  }
2016
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: JsonpClientBackend, deps: [{ token: JsonpCallbackContext }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
2017
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: JsonpClientBackend }); }
2096
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: JsonpClientBackend, deps: [{ token: JsonpCallbackContext }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
2097
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: JsonpClientBackend });
2018
2098
  }
2019
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: JsonpClientBackend, decorators: [{
2099
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: JsonpClientBackend, decorators: [{
2020
2100
  type: Injectable
2021
2101
  }], ctorParameters: () => [{ type: JsonpCallbackContext }, { type: undefined, decorators: [{
2022
2102
  type: Inject,
@@ -2041,6 +2121,7 @@ function jsonpInterceptorFn(req, next) {
2041
2121
  * @publicApi
2042
2122
  */
2043
2123
  class JsonpInterceptor {
2124
+ injector;
2044
2125
  constructor(injector) {
2045
2126
  this.injector = injector;
2046
2127
  }
@@ -2054,10 +2135,10 @@ class JsonpInterceptor {
2054
2135
  intercept(initialRequest, next) {
2055
2136
  return runInInjectionContext(this.injector, () => jsonpInterceptorFn(initialRequest, (downstreamRequest) => next.handle(downstreamRequest)));
2056
2137
  }
2057
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: JsonpInterceptor, deps: [{ token: i0.EnvironmentInjector }], target: i0.ɵɵFactoryTarget.Injectable }); }
2058
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: JsonpInterceptor }); }
2138
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: JsonpInterceptor, deps: [{ token: i0.EnvironmentInjector }], target: i0.ɵɵFactoryTarget.Injectable });
2139
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: JsonpInterceptor });
2059
2140
  }
2060
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: JsonpInterceptor, decorators: [{
2141
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: JsonpInterceptor, decorators: [{
2061
2142
  type: Injectable
2062
2143
  }], ctorParameters: () => [{ type: i0.EnvironmentInjector }] });
2063
2144
 
@@ -2083,6 +2164,7 @@ function getResponseUrl(xhr) {
2083
2164
  * @publicApi
2084
2165
  */
2085
2166
  class HttpXhrBackend {
2167
+ xhrFactory;
2086
2168
  constructor(xhrFactory) {
2087
2169
  this.xhrFactory = xhrFactory;
2088
2170
  }
@@ -2337,10 +2419,10 @@ class HttpXhrBackend {
2337
2419
  });
2338
2420
  }));
2339
2421
  }
2340
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpXhrBackend, deps: [{ token: i1.XhrFactory }], target: i0.ɵɵFactoryTarget.Injectable }); }
2341
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpXhrBackend }); }
2422
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpXhrBackend, deps: [{ token: i1.XhrFactory }], target: i0.ɵɵFactoryTarget.Injectable });
2423
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpXhrBackend });
2342
2424
  }
2343
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpXhrBackend, decorators: [{
2425
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpXhrBackend, decorators: [{
2344
2426
  type: Injectable
2345
2427
  }], ctorParameters: () => [{ type: i1.XhrFactory }] });
2346
2428
 
@@ -2366,16 +2448,19 @@ class HttpXsrfTokenExtractor {
2366
2448
  * `HttpXsrfTokenExtractor` which retrieves the token from a cookie.
2367
2449
  */
2368
2450
  class HttpXsrfCookieExtractor {
2451
+ doc;
2452
+ platform;
2453
+ cookieName;
2454
+ lastCookieString = '';
2455
+ lastToken = null;
2456
+ /**
2457
+ * @internal for testing
2458
+ */
2459
+ parseCount = 0;
2369
2460
  constructor(doc, platform, cookieName) {
2370
2461
  this.doc = doc;
2371
2462
  this.platform = platform;
2372
2463
  this.cookieName = cookieName;
2373
- this.lastCookieString = '';
2374
- this.lastToken = null;
2375
- /**
2376
- * @internal for testing
2377
- */
2378
- this.parseCount = 0;
2379
2464
  }
2380
2465
  getToken() {
2381
2466
  if (this.platform === 'server') {
@@ -2389,10 +2474,10 @@ class HttpXsrfCookieExtractor {
2389
2474
  }
2390
2475
  return this.lastToken;
2391
2476
  }
2392
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpXsrfCookieExtractor, deps: [{ token: DOCUMENT }, { token: PLATFORM_ID }, { token: XSRF_COOKIE_NAME }], target: i0.ɵɵFactoryTarget.Injectable }); }
2393
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpXsrfCookieExtractor }); }
2477
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpXsrfCookieExtractor, deps: [{ token: DOCUMENT }, { token: PLATFORM_ID }, { token: XSRF_COOKIE_NAME }], target: i0.ɵɵFactoryTarget.Injectable });
2478
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpXsrfCookieExtractor });
2394
2479
  }
2395
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpXsrfCookieExtractor, decorators: [{
2480
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpXsrfCookieExtractor, decorators: [{
2396
2481
  type: Injectable
2397
2482
  }], ctorParameters: () => [{ type: undefined, decorators: [{
2398
2483
  type: Inject,
@@ -2429,16 +2514,17 @@ function xsrfInterceptorFn(req, next) {
2429
2514
  * `HttpInterceptor` which adds an XSRF token to eligible outgoing requests.
2430
2515
  */
2431
2516
  class HttpXsrfInterceptor {
2517
+ injector;
2432
2518
  constructor(injector) {
2433
2519
  this.injector = injector;
2434
2520
  }
2435
2521
  intercept(initialRequest, next) {
2436
2522
  return runInInjectionContext(this.injector, () => xsrfInterceptorFn(initialRequest, (downstreamRequest) => next.handle(downstreamRequest)));
2437
2523
  }
2438
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpXsrfInterceptor, deps: [{ token: i0.EnvironmentInjector }], target: i0.ɵɵFactoryTarget.Injectable }); }
2439
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpXsrfInterceptor }); }
2524
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpXsrfInterceptor, deps: [{ token: i0.EnvironmentInjector }], target: i0.ɵɵFactoryTarget.Injectable });
2525
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpXsrfInterceptor });
2440
2526
  }
2441
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpXsrfInterceptor, decorators: [{
2527
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpXsrfInterceptor, decorators: [{
2442
2528
  type: Injectable
2443
2529
  }], ctorParameters: () => [{ type: i0.EnvironmentInjector }] });
2444
2530
 
@@ -2635,7 +2721,7 @@ function withJsonpSupport() {
2635
2721
  * this option.
2636
2722
  *
2637
2723
  * @see {@link provideHttpClient}
2638
- * @developerPreview
2724
+ * @publicApi
2639
2725
  */
2640
2726
  function withRequestsMadeViaParent() {
2641
2727
  return makeHttpFeature(HttpFeatureKind.RequestsMadeViaParent, [
@@ -2703,9 +2789,9 @@ class HttpClientXsrfModule {
2703
2789
  providers: withXsrfConfiguration(options).ɵproviders,
2704
2790
  };
2705
2791
  }
2706
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpClientXsrfModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2707
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpClientXsrfModule }); }
2708
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpClientXsrfModule, providers: [
2792
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpClientXsrfModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2793
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpClientXsrfModule });
2794
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpClientXsrfModule, providers: [
2709
2795
  HttpXsrfInterceptor,
2710
2796
  { provide: HTTP_INTERCEPTORS, useExisting: HttpXsrfInterceptor, multi: true },
2711
2797
  { provide: HttpXsrfTokenExtractor, useClass: HttpXsrfCookieExtractor },
@@ -2714,9 +2800,9 @@ class HttpClientXsrfModule {
2714
2800
  headerName: XSRF_DEFAULT_HEADER_NAME,
2715
2801
  }).ɵproviders,
2716
2802
  { provide: XSRF_ENABLED, useValue: true },
2717
- ] }); }
2803
+ ] });
2718
2804
  }
2719
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpClientXsrfModule, decorators: [{
2805
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpClientXsrfModule, decorators: [{
2720
2806
  type: NgModule,
2721
2807
  args: [{
2722
2808
  providers: [
@@ -2742,11 +2828,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
2742
2828
  * @deprecated use `provideHttpClient(withInterceptorsFromDi())` as providers instead
2743
2829
  */
2744
2830
  class HttpClientModule {
2745
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpClientModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2746
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpClientModule }); }
2747
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpClientModule, providers: [provideHttpClient(withInterceptorsFromDi())] }); }
2831
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpClientModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2832
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpClientModule });
2833
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpClientModule, providers: [provideHttpClient(withInterceptorsFromDi())] });
2748
2834
  }
2749
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpClientModule, decorators: [{
2835
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpClientModule, decorators: [{
2750
2836
  type: NgModule,
2751
2837
  args: [{
2752
2838
  /**
@@ -2766,11 +2852,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8",
2766
2852
  * @deprecated `withJsonpSupport()` as providers instead
2767
2853
  */
2768
2854
  class HttpClientJsonpModule {
2769
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpClientJsonpModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2770
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpClientJsonpModule }); }
2771
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpClientJsonpModule, providers: [withJsonpSupport().ɵproviders] }); }
2855
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpClientJsonpModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2856
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpClientJsonpModule });
2857
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpClientJsonpModule, providers: [withJsonpSupport().ɵproviders] });
2772
2858
  }
2773
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.8", ngImport: i0, type: HttpClientJsonpModule, decorators: [{
2859
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-rc.0", ngImport: i0, type: HttpClientJsonpModule, decorators: [{
2774
2860
  type: NgModule,
2775
2861
  args: [{
2776
2862
  providers: [withJsonpSupport().ɵproviders],