From 1e2a70c8dbb05a0c7482d3f1ffe2bb6221ec4287 Mon Sep 17 00:00:00 2001 From: arturovt Date: Thu, 30 Jan 2025 23:50:48 +0200 Subject: [PATCH] refactor(common): drop platform checks in `HttpXsrfCookieExtractor` (#59810) Replaces `PLATFORM_ID` checks with `ngServerMode` within the `HttpXsrfCookieExtractor`. It is not part of the public API, and thus this change should not affect consumers who may have called the constructor directly. PR Close #59810 --- packages/common/http/src/xsrf.ts | 4 +--- packages/common/http/test/resource_spec.ts | 8 ++++++++ packages/common/http/test/xsrf_spec.ts | 2 +- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/packages/common/http/src/xsrf.ts b/packages/common/http/src/xsrf.ts index 250e79a4af7..88d0781aabd 100644 --- a/packages/common/http/src/xsrf.ts +++ b/packages/common/http/src/xsrf.ts @@ -13,7 +13,6 @@ import { inject, Injectable, InjectionToken, - PLATFORM_ID, runInInjectionContext, } from '@angular/core'; import {Observable} from 'rxjs'; @@ -66,12 +65,11 @@ export class HttpXsrfCookieExtractor implements HttpXsrfTokenExtractor { constructor( @Inject(DOCUMENT) private doc: any, - @Inject(PLATFORM_ID) private platform: string, @Inject(XSRF_COOKIE_NAME) private cookieName: string, ) {} getToken(): string | null { - if (this.platform === 'server') { + if (typeof ngServerMode !== 'undefined' && ngServerMode) { return null; } const cookieString = this.doc.cookie || ''; diff --git a/packages/common/http/test/resource_spec.ts b/packages/common/http/test/resource_spec.ts index ebfc842f1c1..c5277c8d677 100644 --- a/packages/common/http/test/resource_spec.ts +++ b/packages/common/http/test/resource_spec.ts @@ -18,6 +18,14 @@ import { import {HttpTestingController, provideHttpClientTesting} from '../testing'; describe('httpResource', () => { + beforeEach(() => { + globalThis['ngServerMode'] = isNode; + }); + + afterEach(() => { + globalThis['ngServerMode'] = undefined; + }); + beforeEach(() => { TestBed.configureTestingModule({providers: [provideHttpClient(), provideHttpClientTesting()]}); }); diff --git a/packages/common/http/test/xsrf_spec.ts b/packages/common/http/test/xsrf_spec.ts index 7b37db78ed9..0db531a862a 100644 --- a/packages/common/http/test/xsrf_spec.ts +++ b/packages/common/http/test/xsrf_spec.ts @@ -122,7 +122,7 @@ describe('HttpXsrfCookieExtractor', () => { document = { cookie: 'XSRF-TOKEN=test', }; - extractor = new HttpXsrfCookieExtractor(document, 'browser', 'XSRF-TOKEN'); + extractor = new HttpXsrfCookieExtractor(document, 'XSRF-TOKEN'); }); it('parses the cookie from document.cookie', () => { expect(extractor.getToken()).toEqual('test');