From 288238abef8fbd80a353be7ff3f00f08bc49ec94 Mon Sep 17 00:00:00 2001 From: Anuj Chhajed Date: Thu, 4 Dec 2025 19:49:18 +0530 Subject: [PATCH] refactor(core): correct all `typeof ngDevMode` comparison patterns introduced by #63875 This change replaces all remaining occurrences of `typeof ngDevMode !== undefined` with the correct `typeof ngDevMode !== 'undefined'` form. This aligns the codebase with JavaScript typeof semantics and maintains consistency with other Angular code. (cherry picked from commit 96b79fc393855777c69e817a5bddbc295af4806b) --- packages/common/http/src/interceptor.ts | 8 ++++---- packages/common/http/src/provider.ts | 2 +- packages/common/http/src/transfer_cache.ts | 4 ++-- packages/common/http/src/xsrf.ts | 6 +++--- .../ng_optimized_image/image_loaders/image_loader.ts | 2 +- .../ng_optimized_image/preconnect_link_checker.ts | 2 +- packages/common/src/location/location_strategy.ts | 2 +- packages/common/src/location/platform_location.ts | 2 +- packages/common/src/pipes/date_pipe.ts | 4 ++-- .../common/upgrade/src/location_upgrade_module.ts | 4 ++-- packages/core/src/application/application_tokens.ts | 12 ++++++------ packages/core/src/application/tracing.ts | 2 +- .../use_exhaustive_check_no_changes.ts | 2 +- packages/core/src/defer/registry.ts | 2 +- packages/core/src/defer/rendering.ts | 2 +- packages/core/src/di/host_tag_name_token.ts | 2 +- packages/core/src/di/initializer_token.ts | 2 +- packages/core/src/di/injector_token.ts | 2 +- packages/core/src/di/internal_tokens.ts | 2 +- packages/core/src/di/scope.ts | 2 +- packages/core/src/document.ts | 2 +- packages/core/src/error_handler.ts | 2 +- packages/core/src/event_delegation_utils.ts | 2 +- packages/core/src/hydration/tokens.ts | 2 +- packages/core/src/i18n/tokens.ts | 8 ++++---- packages/core/src/linker/compiler.ts | 2 +- packages/core/src/platform/bootstrap.ts | 2 +- .../core/src/platform/platform_destroy_listeners.ts | 2 +- packages/forms/signals/src/api/field_directive.ts | 2 +- .../forms/src/directives/control_value_accessor.ts | 2 +- .../forms/src/directives/default_value_accessor.ts | 2 +- .../reactive_directives/form_control_directive.ts | 2 +- packages/forms/src/validators.ts | 4 ++-- .../animations/async/src/async_animation_renderer.ts | 2 +- packages/platform-browser/src/dom/dom_renderer.ts | 2 +- .../platform-browser/src/dom/events/event_manager.ts | 2 +- packages/router/src/directives/router_outlet.ts | 2 +- packages/router/src/router_config_loader.ts | 2 +- packages/router/src/utils/view_transition.ts | 4 ++-- packages/service-worker/src/provider.ts | 2 +- 40 files changed, 58 insertions(+), 58 deletions(-) diff --git a/packages/common/http/src/interceptor.ts b/packages/common/http/src/interceptor.ts index 07e72b65a85..463ae98f650 100644 --- a/packages/common/http/src/interceptor.ts +++ b/packages/common/http/src/interceptor.ts @@ -192,14 +192,14 @@ export function chainedInterceptorFn( * @publicApi */ export const HTTP_INTERCEPTORS = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'HTTP_INTERCEPTORS' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'HTTP_INTERCEPTORS' : '', ); /** * A multi-provided token of `HttpInterceptorFn`s. */ export const HTTP_INTERCEPTOR_FNS = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'HTTP_INTERCEPTOR_FNS' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'HTTP_INTERCEPTOR_FNS' : '', {factory: () => []}, ); @@ -207,14 +207,14 @@ export const HTTP_INTERCEPTOR_FNS = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'HTTP_ROOT_INTERCEPTOR_FNS' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'HTTP_ROOT_INTERCEPTOR_FNS' : '', ); // TODO(atscott): We need a larger discussion about stability and what should contribute to stability. // Should the whole interceptor chain contribute to stability or just the backend request #55075? // Should HttpClient contribute to stability automatically at all? export const REQUESTS_CONTRIBUTE_TO_STABILITY = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'REQUESTS_CONTRIBUTE_TO_STABILITY' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'REQUESTS_CONTRIBUTE_TO_STABILITY' : '', {providedIn: 'root', factory: () => true}, ); diff --git a/packages/common/http/src/provider.ts b/packages/common/http/src/provider.ts index 0fe763a4a91..dfee321420d 100644 --- a/packages/common/http/src/provider.ts +++ b/packages/common/http/src/provider.ts @@ -156,7 +156,7 @@ export function withInterceptors( } const LEGACY_INTERCEPTOR_FN = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'LEGACY_INTERCEPTOR_FN' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'LEGACY_INTERCEPTOR_FN' : '', ); /** diff --git a/packages/common/http/src/transfer_cache.ts b/packages/common/http/src/transfer_cache.ts index 210fa319b06..b0bc58c3503 100644 --- a/packages/common/http/src/transfer_cache.ts +++ b/packages/common/http/src/transfer_cache.ts @@ -81,7 +81,7 @@ export type HttpTransferCacheOptions = { * @publicApi */ export const HTTP_TRANSFER_CACHE_ORIGIN_MAP = new InjectionToken>( - typeof ngDevMode !== undefined && ngDevMode ? 'HTTP_TRANSFER_CACHE_ORIGIN_MAP' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'HTTP_TRANSFER_CACHE_ORIGIN_MAP' : '', ); /** @@ -115,7 +115,7 @@ interface CacheOptions extends HttpTransferCacheOptions { } const CACHE_OPTIONS = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'HTTP_TRANSFER_STATE_CACHE_OPTIONS' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'HTTP_TRANSFER_STATE_CACHE_OPTIONS' : '', ); /** diff --git a/packages/common/http/src/xsrf.ts b/packages/common/http/src/xsrf.ts index c736ffe8599..6555fbc99b5 100644 --- a/packages/common/http/src/xsrf.ts +++ b/packages/common/http/src/xsrf.ts @@ -22,7 +22,7 @@ import {HttpRequest} from './request'; import {HttpEvent} from './response'; export const XSRF_ENABLED = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'XSRF_ENABLED' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'XSRF_ENABLED' : '', { factory: () => true, }, @@ -30,7 +30,7 @@ export const XSRF_ENABLED = new InjectionToken( export const XSRF_DEFAULT_COOKIE_NAME = 'XSRF-TOKEN'; export const XSRF_COOKIE_NAME = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'XSRF_COOKIE_NAME' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'XSRF_COOKIE_NAME' : '', { providedIn: 'root', factory: () => XSRF_DEFAULT_COOKIE_NAME, @@ -39,7 +39,7 @@ export const XSRF_COOKIE_NAME = new InjectionToken( export const XSRF_DEFAULT_HEADER_NAME = 'X-XSRF-TOKEN'; export const XSRF_HEADER_NAME = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'XSRF_HEADER_NAME' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'XSRF_HEADER_NAME' : '', { providedIn: 'root', factory: () => XSRF_DEFAULT_HEADER_NAME, diff --git a/packages/common/src/directives/ng_optimized_image/image_loaders/image_loader.ts b/packages/common/src/directives/ng_optimized_image/image_loaders/image_loader.ts index ed569eb2fac..f3d5a0e4523 100644 --- a/packages/common/src/directives/ng_optimized_image/image_loaders/image_loader.ts +++ b/packages/common/src/directives/ng_optimized_image/image_loaders/image_loader.ts @@ -71,7 +71,7 @@ export type ImageLoaderInfo = { * @publicApi */ export const IMAGE_LOADER = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'ImageLoader' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'ImageLoader' : '', { factory: () => noopImageLoader, }, diff --git a/packages/common/src/directives/ng_optimized_image/preconnect_link_checker.ts b/packages/common/src/directives/ng_optimized_image/preconnect_link_checker.ts index df135560d6f..62c259b6294 100644 --- a/packages/common/src/directives/ng_optimized_image/preconnect_link_checker.ts +++ b/packages/common/src/directives/ng_optimized_image/preconnect_link_checker.ts @@ -43,7 +43,7 @@ const INTERNAL_PRECONNECT_CHECK_BLOCKLIST = new Set(['localhost', '127.0.0.1', ' * @publicApi */ export const PRECONNECT_CHECK_BLOCKLIST = new InjectionToken>( - typeof ngDevMode !== undefined && ngDevMode ? 'PRECONNECT_CHECK_BLOCKLIST' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'PRECONNECT_CHECK_BLOCKLIST' : '', ); /** diff --git a/packages/common/src/location/location_strategy.ts b/packages/common/src/location/location_strategy.ts index d4556490b0c..e5bbd332b77 100644 --- a/packages/common/src/location/location_strategy.ts +++ b/packages/common/src/location/location_strategy.ts @@ -76,7 +76,7 @@ export abstract class LocationStrategy { * @publicApi */ export const APP_BASE_HREF = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'appBaseHref' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'appBaseHref' : '', ); /** diff --git a/packages/common/src/location/platform_location.ts b/packages/common/src/location/platform_location.ts index b65e6034cfc..649b403b66c 100644 --- a/packages/common/src/location/platform_location.ts +++ b/packages/common/src/location/platform_location.ts @@ -73,7 +73,7 @@ export abstract class PlatformLocation { * @publicApi */ export const LOCATION_INITIALIZED = new InjectionToken>( - typeof ngDevMode !== undefined && ngDevMode ? 'Location Initialized' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'Location Initialized' : '', ); /** diff --git a/packages/common/src/pipes/date_pipe.ts b/packages/common/src/pipes/date_pipe.ts index 1870d31f83c..eafb04e1a2d 100644 --- a/packages/common/src/pipes/date_pipe.ts +++ b/packages/common/src/pipes/date_pipe.ts @@ -20,7 +20,7 @@ import {invalidPipeArgumentError} from './invalid_pipe_argument_error'; * @deprecated use DATE_PIPE_DEFAULT_OPTIONS token to configure DatePipe */ export const DATE_PIPE_DEFAULT_TIMEZONE = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'DATE_PIPE_DEFAULT_TIMEZONE' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'DATE_PIPE_DEFAULT_TIMEZONE' : '', ); /** @@ -55,7 +55,7 @@ export const DATE_PIPE_DEFAULT_TIMEZONE = new InjectionToken( * ``` */ export const DATE_PIPE_DEFAULT_OPTIONS = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'DATE_PIPE_DEFAULT_OPTIONS' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'DATE_PIPE_DEFAULT_OPTIONS' : '', ); /** diff --git a/packages/common/upgrade/src/location_upgrade_module.ts b/packages/common/upgrade/src/location_upgrade_module.ts index 44ec81b687a..e08029085ee 100644 --- a/packages/common/upgrade/src/location_upgrade_module.ts +++ b/packages/common/upgrade/src/location_upgrade_module.ts @@ -56,11 +56,11 @@ export interface LocationUpgradeConfig { * @publicApi */ export const LOCATION_UPGRADE_CONFIGURATION = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'LOCATION_UPGRADE_CONFIGURATION' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'LOCATION_UPGRADE_CONFIGURATION' : '', ); const APP_BASE_HREF_RESOLVED = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'APP_BASE_HREF_RESOLVED' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'APP_BASE_HREF_RESOLVED' : '', ); /** diff --git a/packages/core/src/application/application_tokens.ts b/packages/core/src/application/application_tokens.ts index 5f0a106dbd4..bbc36dcbeb5 100644 --- a/packages/core/src/application/application_tokens.ts +++ b/packages/core/src/application/application_tokens.ts @@ -42,7 +42,7 @@ import {RuntimeError, RuntimeErrorCode} from '../errors'; * @publicApi */ export const APP_ID = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'AppId' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'AppId' : '', { factory: () => DEFAULT_APP_ID, }, @@ -79,7 +79,7 @@ export const validAppIdInitializer: StaticProvider = { * @publicApi */ export const PLATFORM_INITIALIZER = new InjectionToken void>>( - typeof ngDevMode !== undefined && ngDevMode ? 'Platform Initializer' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'Platform Initializer' : '', ); /** @@ -87,7 +87,7 @@ export const PLATFORM_INITIALIZER = new InjectionToken void> * @publicApi */ export const PLATFORM_ID = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'Platform ID' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'Platform ID' : '', { providedIn: 'platform', factory: () => 'unknown', // set a default platform name, when none set explicitly @@ -104,7 +104,7 @@ export const PLATFORM_ID = new InjectionToken( * @publicApi */ export const ANIMATION_MODULE_TYPE = new InjectionToken<'NoopAnimations' | 'BrowserAnimations'>( - typeof ngDevMode !== undefined && ngDevMode ? 'AnimationModuleType' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'AnimationModuleType' : '', ); // TODO(crisbeto): link to CSP guide here. @@ -118,7 +118,7 @@ export const ANIMATION_MODULE_TYPE = new InjectionToken<'NoopAnimations' | 'Brow * @publicApi */ export const CSP_NONCE = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'CSP nonce' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'CSP nonce' : '', { factory: () => { // Ideally we wouldn't have to use `querySelector` here since we know that the nonce will be on @@ -184,7 +184,7 @@ export const IMAGE_CONFIG_DEFAULTS: ImageConfig = { * @publicApi */ export const IMAGE_CONFIG = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'ImageConfig' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'ImageConfig' : '', { factory: () => IMAGE_CONFIG_DEFAULTS, }, diff --git a/packages/core/src/application/tracing.ts b/packages/core/src/application/tracing.ts index d241171c22c..1e25341b18e 100644 --- a/packages/core/src/application/tracing.ts +++ b/packages/core/src/application/tracing.ts @@ -26,7 +26,7 @@ export interface TracingSnapshot { * Injection token for a `TracingService`, optionally provided. */ export const TracingService = new InjectionToken>( - typeof ngDevMode !== undefined && ngDevMode ? 'TracingService' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'TracingService' : '', ); /** diff --git a/packages/core/src/change_detection/use_exhaustive_check_no_changes.ts b/packages/core/src/change_detection/use_exhaustive_check_no_changes.ts index f95c1ac9ec1..a290776ba10 100644 --- a/packages/core/src/change_detection/use_exhaustive_check_no_changes.ts +++ b/packages/core/src/change_detection/use_exhaustive_check_no_changes.ts @@ -11,5 +11,5 @@ import {InjectionToken} from '../di'; export const USE_EXHAUSTIVE_CHECK_NO_CHANGES_DEFAULT = false; export const UseExhaustiveCheckNoChanges = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'exhaustive checkNoChanges' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'exhaustive checkNoChanges' : '', ); diff --git a/packages/core/src/defer/registry.ts b/packages/core/src/defer/registry.ts index a62595699ce..462a5434a3c 100644 --- a/packages/core/src/defer/registry.ts +++ b/packages/core/src/defer/registry.ts @@ -22,7 +22,7 @@ import type {PromiseWithResolvers} from '../util/promise_with_resolvers'; * in a tree-shakable way. */ export const DEHYDRATED_BLOCK_REGISTRY = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'DEHYDRATED_BLOCK_REGISTRY' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'DEHYDRATED_BLOCK_REGISTRY' : '', ); /** diff --git a/packages/core/src/defer/rendering.ts b/packages/core/src/defer/rendering.ts index f148cf39b4d..86164ff3e36 100644 --- a/packages/core/src/defer/rendering.ts +++ b/packages/core/src/defer/rendering.ts @@ -72,7 +72,7 @@ export const DEFER_BLOCK_DEPENDENCY_INTERCEPTOR = * **INTERNAL**, token used for configuring defer block behavior. */ export const DEFER_BLOCK_CONFIG = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'DEFER_BLOCK_CONFIG' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'DEFER_BLOCK_CONFIG' : '', ); /** diff --git a/packages/core/src/di/host_tag_name_token.ts b/packages/core/src/di/host_tag_name_token.ts index a88028ad7b1..5dc8cc7dd0e 100644 --- a/packages/core/src/di/host_tag_name_token.ts +++ b/packages/core/src/di/host_tag_name_token.ts @@ -44,7 +44,7 @@ export const HOST_TAG_NAME: InjectionToken = /* @__PURE__ */ (() => { // the top level instead, the mutation would look like a side effect, // forcing the bundler to keep it even when unused. const HOST_TAG_NAME_TOKEN = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'HOST_TAG_NAME' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'HOST_TAG_NAME' : '', ); // HOST_TAG_NAME should be resolved at the current node, similar to e.g. ElementRef, diff --git a/packages/core/src/di/initializer_token.ts b/packages/core/src/di/initializer_token.ts index 49ba6b9d227..6ab97d6af2c 100644 --- a/packages/core/src/di/initializer_token.ts +++ b/packages/core/src/di/initializer_token.ts @@ -22,5 +22,5 @@ import {InjectionToken} from './injection_token'; * @publicApi */ export const ENVIRONMENT_INITIALIZER = new InjectionToken void>>( - typeof ngDevMode !== undefined && ngDevMode ? 'ENVIRONMENT_INITIALIZER' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'ENVIRONMENT_INITIALIZER' : '', ); diff --git a/packages/core/src/di/injector_token.ts b/packages/core/src/di/injector_token.ts index cbe081b65fa..6363cb46417 100644 --- a/packages/core/src/di/injector_token.ts +++ b/packages/core/src/di/injector_token.ts @@ -19,7 +19,7 @@ import {InjectorMarkers} from './injector_marker'; * @publicApi */ export const INJECTOR = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'INJECTOR' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'INJECTOR' : '', // Disable tslint because this is const enum which gets inlined not top level prop access. // tslint:disable-next-line: no-toplevel-property-access InjectorMarkers.Injector as any, // Special value used by Ivy to identify `Injector`. diff --git a/packages/core/src/di/internal_tokens.ts b/packages/core/src/di/internal_tokens.ts index 22cf186dda3..d0f8656b13d 100644 --- a/packages/core/src/di/internal_tokens.ts +++ b/packages/core/src/di/internal_tokens.ts @@ -11,5 +11,5 @@ import {Type} from '../interface/type'; import {InjectionToken} from './injection_token'; export const INJECTOR_DEF_TYPES = new InjectionToken>>( - typeof ngDevMode !== undefined && ngDevMode ? 'INJECTOR_DEF_TYPES' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'INJECTOR_DEF_TYPES' : '', ); diff --git a/packages/core/src/di/scope.ts b/packages/core/src/di/scope.ts index 30e9d3cc6d9..7c0e9714433 100644 --- a/packages/core/src/di/scope.ts +++ b/packages/core/src/di/scope.ts @@ -16,5 +16,5 @@ export type InjectorScope = 'root' | 'platform' | 'environment'; * they are provided in the root scope. */ export const INJECTOR_SCOPE = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'Set Injector scope.' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'Set Injector scope.' : '', ); diff --git a/packages/core/src/document.ts b/packages/core/src/document.ts index d81bd31c709..8099f31b24f 100644 --- a/packages/core/src/document.ts +++ b/packages/core/src/document.ts @@ -18,5 +18,5 @@ import {InjectionToken} from './di'; * @publicApi */ export const DOCUMENT = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'DocumentToken' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'DocumentToken' : '', ); diff --git a/packages/core/src/error_handler.ts b/packages/core/src/error_handler.ts index 696ddb24ab7..a47f8abfeb2 100644 --- a/packages/core/src/error_handler.ts +++ b/packages/core/src/error_handler.ts @@ -106,7 +106,7 @@ export const errorHandlerEnvironmentInitializer = { }; const globalErrorListeners = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'GlobalErrorListeners' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'GlobalErrorListeners' : '', { factory: () => { if (typeof ngServerMode !== 'undefined' && ngServerMode) { diff --git a/packages/core/src/event_delegation_utils.ts b/packages/core/src/event_delegation_utils.ts index b6a7bf84006..10cb9b1e943 100644 --- a/packages/core/src/event_delegation_utils.ts +++ b/packages/core/src/event_delegation_utils.ts @@ -95,7 +95,7 @@ export interface EventContractDetails { } export const JSACTION_EVENT_CONTRACT = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'EVENT_CONTRACT_DETAILS' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'EVENT_CONTRACT_DETAILS' : '', { factory: () => ({}), }, diff --git a/packages/core/src/hydration/tokens.ts b/packages/core/src/hydration/tokens.ts index a0b8b985269..eb882311123 100644 --- a/packages/core/src/hydration/tokens.ts +++ b/packages/core/src/hydration/tokens.ts @@ -61,7 +61,7 @@ export const IS_INCREMENTAL_HYDRATION_ENABLED = new InjectionToken( * A map of DOM elements with `jsaction` attributes grouped by action names. */ export const JSACTION_BLOCK_ELEMENT_MAP = new InjectionToken>>( - typeof ngDevMode !== undefined && ngDevMode ? 'JSACTION_BLOCK_ELEMENT_MAP' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'JSACTION_BLOCK_ELEMENT_MAP' : '', { factory: () => new Map>(), }, diff --git a/packages/core/src/i18n/tokens.ts b/packages/core/src/i18n/tokens.ts index abc7220dd42..aa2da2ffaae 100644 --- a/packages/core/src/i18n/tokens.ts +++ b/packages/core/src/i18n/tokens.ts @@ -79,7 +79,7 @@ export function getGlobalLocale(): string { * @publicApi */ export const LOCALE_ID: InjectionToken = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'LocaleId' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'LocaleId' : '', { factory: () => inject(LOCALE_ID, {optional: true, skipSelf: true}) || getGlobalLocale(), }, @@ -129,7 +129,7 @@ export const LOCALE_ID: InjectionToken = new InjectionToken( * @publicApi */ export const DEFAULT_CURRENCY_CODE = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'DefaultCurrencyCode' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'DefaultCurrencyCode' : '', { factory: () => USD_CURRENCY_CODE, }, @@ -169,7 +169,7 @@ export const DEFAULT_CURRENCY_CODE = new InjectionToken( * @publicApi */ export const TRANSLATIONS = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'Translations' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'Translations' : '', ); /** @@ -203,7 +203,7 @@ export const TRANSLATIONS = new InjectionToken( * @publicApi */ export const TRANSLATIONS_FORMAT = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'TranslationsFormat' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'TranslationsFormat' : '', ); /** diff --git a/packages/core/src/linker/compiler.ts b/packages/core/src/linker/compiler.ts index 901d3858198..646d1c1ce3d 100644 --- a/packages/core/src/linker/compiler.ts +++ b/packages/core/src/linker/compiler.ts @@ -126,7 +126,7 @@ export type CompilerOptions = { * @publicApi */ export const COMPILER_OPTIONS = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'compilerOptions' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'compilerOptions' : '', ); /** diff --git a/packages/core/src/platform/bootstrap.ts b/packages/core/src/platform/bootstrap.ts index 6462a1a09df..515866db178 100644 --- a/packages/core/src/platform/bootstrap.ts +++ b/packages/core/src/platform/bootstrap.ts @@ -49,7 +49,7 @@ import {PendingTasksInternal} from '../pending_tasks_internal'; * from component rendering. */ export const ENABLE_ROOT_COMPONENT_BOOTSTRAP = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'ENABLE_ROOT_COMPONENT_BOOTSTRAP' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'ENABLE_ROOT_COMPONENT_BOOTSTRAP' : '', ); export interface BootstrapConfig { diff --git a/packages/core/src/platform/platform_destroy_listeners.ts b/packages/core/src/platform/platform_destroy_listeners.ts index ca694064257..4cd6aa0e423 100644 --- a/packages/core/src/platform/platform_destroy_listeners.ts +++ b/packages/core/src/platform/platform_destroy_listeners.ts @@ -15,5 +15,5 @@ import {InjectionToken} from '../di'; * entire class tree-shakeable. */ export const PLATFORM_DESTROY_LISTENERS = new InjectionToken>( - typeof ngDevMode !== undefined && ngDevMode ? 'PlatformDestroyListeners' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'PlatformDestroyListeners' : '', ); diff --git a/packages/forms/signals/src/api/field_directive.ts b/packages/forms/signals/src/api/field_directive.ts index e058b5ec081..4714542dbdd 100644 --- a/packages/forms/signals/src/api/field_directive.ts +++ b/packages/forms/signals/src/api/field_directive.ts @@ -33,7 +33,7 @@ import type {FieldTree} from './types'; * @experimental 21.0.0 */ export const FIELD = new InjectionToken>( - typeof ngDevMode !== undefined && ngDevMode ? 'FIELD' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'FIELD' : '', ); /** diff --git a/packages/forms/src/directives/control_value_accessor.ts b/packages/forms/src/directives/control_value_accessor.ts index 2a5c16594a8..27129fab868 100644 --- a/packages/forms/src/directives/control_value_accessor.ts +++ b/packages/forms/src/directives/control_value_accessor.ts @@ -212,5 +212,5 @@ export class BuiltInControlValueAccessor extends BaseControlValueAccessor {} * @publicApi */ export const NG_VALUE_ACCESSOR = new InjectionToken>( - typeof ngDevMode !== undefined && ngDevMode ? 'NgValueAccessor' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'NgValueAccessor' : '', ); diff --git a/packages/forms/src/directives/default_value_accessor.ts b/packages/forms/src/directives/default_value_accessor.ts index 4972a7c90a8..31638c1d2e1 100644 --- a/packages/forms/src/directives/default_value_accessor.ts +++ b/packages/forms/src/directives/default_value_accessor.ts @@ -46,7 +46,7 @@ function _isAndroid(): boolean { * @publicApi */ export const COMPOSITION_BUFFER_MODE = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'CompositionEventMode' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'CompositionEventMode' : '', ); /** diff --git a/packages/forms/src/directives/reactive_directives/form_control_directive.ts b/packages/forms/src/directives/reactive_directives/form_control_directive.ts index 471efeaed19..4ce114d0a08 100644 --- a/packages/forms/src/directives/reactive_directives/form_control_directive.ts +++ b/packages/forms/src/directives/reactive_directives/form_control_directive.ts @@ -42,7 +42,7 @@ import {AsyncValidator, AsyncValidatorFn, Validator, ValidatorFn} from '../valid * Token to provide to turn off the ngModel warning on formControl and formControlName. */ export const NG_MODEL_WITH_FORM_CONTROL_WARNING = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'NgModelWithFormControlWarning' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'NgModelWithFormControlWarning' : '', ); const formControlBinding: Provider = { diff --git a/packages/forms/src/validators.ts b/packages/forms/src/validators.ts index 1470db16f0f..8868376a20c 100644 --- a/packages/forms/src/validators.ts +++ b/packages/forms/src/validators.ts @@ -79,7 +79,7 @@ function lengthOrSize(value: unknown): number | null { * @publicApi */ export const NG_VALIDATORS = new InjectionToken>( - typeof ngDevMode !== undefined && ngDevMode ? 'NgValidators' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'NgValidators' : '', ); /** @@ -114,7 +114,7 @@ export const NG_VALIDATORS = new InjectionToken>( - typeof ngDevMode !== undefined && ngDevMode ? 'NgAsyncValidators' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'NgAsyncValidators' : '', ); /** diff --git a/packages/platform-browser/animations/async/src/async_animation_renderer.ts b/packages/platform-browser/animations/async/src/async_animation_renderer.ts index daec1d0ac8b..8e2d36c6816 100644 --- a/packages/platform-browser/animations/async/src/async_animation_renderer.ts +++ b/packages/platform-browser/animations/async/src/async_animation_renderer.ts @@ -324,5 +324,5 @@ export class DynamicDelegationRenderer implements Renderer2 { * Private token for investigation purposes */ export const ɵASYNC_ANIMATION_LOADING_SCHEDULER_FN = new InjectionToken<(loadFn: () => T) => T>( - typeof ngDevMode !== undefined && ngDevMode ? 'async_animation_loading_scheduler_fn' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'async_animation_loading_scheduler_fn' : '', ); diff --git a/packages/platform-browser/src/dom/dom_renderer.ts b/packages/platform-browser/src/dom/dom_renderer.ts index d983439ecac..a7a9ddcca08 100644 --- a/packages/platform-browser/src/dom/dom_renderer.ts +++ b/packages/platform-browser/src/dom/dom_renderer.ts @@ -63,7 +63,7 @@ const REMOVE_STYLES_ON_COMPONENT_DESTROY_DEFAULT = true; * @publicApi */ export const REMOVE_STYLES_ON_COMPONENT_DESTROY = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'RemoveStylesOnCompDestroy' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'RemoveStylesOnCompDestroy' : '', { factory: () => REMOVE_STYLES_ON_COMPONENT_DESTROY_DEFAULT, }, diff --git a/packages/platform-browser/src/dom/events/event_manager.ts b/packages/platform-browser/src/dom/events/event_manager.ts index 5aa464bdc0e..c0873039d63 100644 --- a/packages/platform-browser/src/dom/events/event_manager.ts +++ b/packages/platform-browser/src/dom/events/event_manager.ts @@ -29,7 +29,7 @@ import {DomEventsPlugin} from './dom_events'; * @publicApi */ export const EVENT_MANAGER_PLUGINS = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'EventManagerPlugins' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'EventManagerPlugins' : '', ); /** diff --git a/packages/router/src/directives/router_outlet.ts b/packages/router/src/directives/router_outlet.ts index be5c99e9fc9..3de1f9039f5 100644 --- a/packages/router/src/directives/router_outlet.ts +++ b/packages/router/src/directives/router_outlet.ts @@ -58,7 +58,7 @@ import {PRIMARY_OUTLET} from '../shared'; * @see [Page routerOutletData](guide/routing/show-routes-with-outlets#passing-contextual-data-to-routed-components) */ export const ROUTER_OUTLET_DATA = new InjectionToken>( - typeof ngDevMode !== undefined && ngDevMode ? 'RouterOutlet data' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'RouterOutlet data' : '', ); /** diff --git a/packages/router/src/router_config_loader.ts b/packages/router/src/router_config_loader.ts index e86d9a57c6d..e2018309ab3 100644 --- a/packages/router/src/router_config_loader.ts +++ b/packages/router/src/router_config_loader.ts @@ -35,7 +35,7 @@ import {wrapIntoPromise} from './utils/collection'; * @publicApi */ export const ROUTES = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'ROUTES' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'ROUTES' : '', ); @Injectable({providedIn: 'root'}) diff --git a/packages/router/src/utils/view_transition.ts b/packages/router/src/utils/view_transition.ts index f8d0a29643f..706f48b20ed 100644 --- a/packages/router/src/utils/view_transition.ts +++ b/packages/router/src/utils/view_transition.ts @@ -12,11 +12,11 @@ import {afterNextRender, InjectionToken, Injector, runInInjectionContext} from ' import {ActivatedRouteSnapshot} from '../router_state'; export const CREATE_VIEW_TRANSITION = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'view transition helper' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'view transition helper' : '', ); export const VIEW_TRANSITION_OPTIONS = new InjectionToken< ViewTransitionsFeatureOptions & {skipNextTransition: boolean} ->(typeof ngDevMode !== undefined && ngDevMode ? 'view transition options' : ''); +>(typeof ngDevMode !== 'undefined' && ngDevMode ? 'view transition options' : ''); /** * Options to configure the View Transitions integration in the Router. diff --git a/packages/service-worker/src/provider.ts b/packages/service-worker/src/provider.ts index 847f5da66db..e9d0dd3f1a8 100644 --- a/packages/service-worker/src/provider.ts +++ b/packages/service-worker/src/provider.ts @@ -26,7 +26,7 @@ import {SwUpdate} from './update'; import {RuntimeErrorCode} from './errors'; export const SCRIPT = new InjectionToken( - typeof ngDevMode !== undefined && ngDevMode ? 'NGSW_REGISTER_SCRIPT' : '', + typeof ngDevMode !== 'undefined' && ngDevMode ? 'NGSW_REGISTER_SCRIPT' : '', ); export function ngswAppInitializer(): void {