From 12a825f1dcb7465d1d061c39c0a388a5cb038b69 Mon Sep 17 00:00:00 2001 From: Alexander Zinchuk Date: Tue, 6 Feb 2024 16:48:15 +0100 Subject: [PATCH] Electron: Rename `IS_ELECTRON_BUILD` -> `IS_PACKAGED_ELECTRON` (#4179) --- package.json | 4 ++-- src/components/common/helpers/renderText.tsx | 4 ++-- src/components/middle/composer/EmojiButton.tsx | 4 ++-- src/config.ts | 2 +- src/serviceWorker/index.ts | 4 ++-- src/util/cacheApi.ts | 6 +++--- src/util/mediaLoader.ts | 4 ++-- webpack.config.ts | 10 +++++----- 8 files changed, 19 insertions(+), 19 deletions(-) diff --git a/package.json b/package.json index 725123b70..6cc513734 100644 --- a/package.json +++ b/package.json @@ -11,9 +11,9 @@ "build:mocked": "cross-env APP_ENV=test APP_MOCKED_CLIENT=1 npm run build:dev", "build:production": "webpack && bash ./deploy/copy_to_dist.sh", "web:release:production": "npm i && npm run build:production && git add -A && git commit -a -m '[Build]' --no-verify && git push", - "electron:dev": "npm run electron:webpack && IS_ELECTRON_BUILD=true concurrently -n main,renderer,electron \"npm run electron:webpack -- --watch\" \"npm run dev\" \"electronmon dist/electron\"", + "electron:dev": "npm run electron:webpack && IS_PACKAGED_ELECTRON=true concurrently -n main,renderer,electron \"npm run electron:webpack -- --watch\" \"npm run dev\" \"electronmon dist/electron\"", "electron:webpack": "cross-env APP_ENV=$ENV webpack --config ./webpack-electron.config.ts", - "electron:build": "IS_ELECTRON_BUILD=true npm run build:$ENV && electron-builder install-app-deps && electron-rebuild && ENV=$ENV npm run electron:webpack", + "electron:build": "IS_PACKAGED_ELECTRON=true npm run build:$ENV && electron-builder install-app-deps && electron-rebuild && ENV=$ENV npm run electron:webpack", "electron:package": "npm run electron:build && npx rimraf dist-electron && electron-builder build --win --mac --linux --config src/electron/config.yml", "electron:package:staging": "ENV=staging npm run electron:package -- -p never", "electron:release:production": "ENV=production npm run electron:package -- -p always", diff --git a/src/components/common/helpers/renderText.tsx b/src/components/common/helpers/renderText.tsx index c68a99b48..21841fda9 100644 --- a/src/components/common/helpers/renderText.tsx +++ b/src/components/common/helpers/renderText.tsx @@ -4,7 +4,7 @@ import React from '../../../lib/teact/teact'; import type { TextPart } from '../../../types'; import { - BASE_URL, IS_ELECTRON_BUILD, RE_LINK_TEMPLATE, RE_MENTION_TEMPLATE, + BASE_URL, IS_PACKAGED_ELECTRON, RE_LINK_TEMPLATE, RE_MENTION_TEMPLATE, } from '../../../config'; import EMOJI_REGEX from '../../../lib/twemojiRegex'; import buildClassName from '../../../util/buildClassName'; @@ -115,7 +115,7 @@ function replaceEmojis(textParts: TextPart[], size: 'big' | 'small', type: 'jsx' if (!code) { emojiResult.push(emoji); } else { - const baseSrcUrl = IS_ELECTRON_BUILD ? BASE_URL : '.'; + const baseSrcUrl = IS_PACKAGED_ELECTRON ? BASE_URL : '.'; const src = `${baseSrcUrl}/img-apple-${size === 'big' ? '160' : '64'}/${code}.png`; const className = buildClassName( 'emoji', diff --git a/src/components/middle/composer/EmojiButton.tsx b/src/components/middle/composer/EmojiButton.tsx index f9e162f5f..1b09a3087 100644 --- a/src/components/middle/composer/EmojiButton.tsx +++ b/src/components/middle/composer/EmojiButton.tsx @@ -1,7 +1,7 @@ import type { FC } from '../../../lib/teact/teact'; import React, { memo } from '../../../lib/teact/teact'; -import { BASE_URL, IS_ELECTRON_BUILD } from '../../../config'; +import { BASE_URL, IS_PACKAGED_ELECTRON } from '../../../config'; import buildClassName from '../../../util/buildClassName'; import { handleEmojiLoad, LOADED_EMOJIS } from '../../../util/emoji'; import { IS_EMOJI_SUPPORTED } from '../../../util/windowEnvironment'; @@ -31,7 +31,7 @@ const EmojiButton: FC = ({ focus && 'focus', ); - const src = `${IS_ELECTRON_BUILD ? BASE_URL : '.'}/img-apple-64/${emoji.image}.png`; + const src = `${IS_PACKAGED_ELECTRON ? BASE_URL : '.'}/img-apple-64/${emoji.image}.png`; const isLoaded = LOADED_EMOJIS.has(src); return ( diff --git a/src/config.ts b/src/config.ts index 4aaee462d..262ab9a85 100644 --- a/src/config.ts +++ b/src/config.ts @@ -14,7 +14,7 @@ export const IS_MOCKED_CLIENT = process.env.APP_MOCKED_CLIENT === '1'; export const IS_TEST = process.env.APP_ENV === 'test'; export const IS_PERF = process.env.APP_ENV === 'perf'; export const IS_BETA = process.env.APP_ENV === 'staging'; -export const IS_ELECTRON_BUILD = process.env.IS_ELECTRON_BUILD; +export const IS_PACKAGED_ELECTRON = process.env.IS_PACKAGED_ELECTRON; export const DEBUG = process.env.APP_ENV !== 'production'; export const DEBUG_MORE = false; diff --git a/src/serviceWorker/index.ts b/src/serviceWorker/index.ts index 185fbe1b9..5d478e368 100644 --- a/src/serviceWorker/index.ts +++ b/src/serviceWorker/index.ts @@ -1,4 +1,4 @@ -import { DEBUG, ELECTRON_HOST_URL, IS_ELECTRON_BUILD } from '../config'; +import { DEBUG, ELECTRON_HOST_URL, IS_PACKAGED_ELECTRON } from '../config'; import { pause } from '../util/schedulers'; import { clearAssetCache, respondWithCache, respondWithCacheNetworkFirst } from './assetCache'; import { respondForDownload } from './download'; @@ -47,7 +47,7 @@ self.addEventListener('activate', (e) => { self.addEventListener('fetch', (e: FetchEvent) => { const { url } = e.request; - const scope = IS_ELECTRON_BUILD ? ELECTRON_HOST_URL : self.registration.scope; + const scope = IS_PACKAGED_ELECTRON ? ELECTRON_HOST_URL : self.registration.scope; if (!url.startsWith(scope)) { return false; } diff --git a/src/util/cacheApi.ts b/src/util/cacheApi.ts index b75b712c4..32ee9d78c 100644 --- a/src/util/cacheApi.ts +++ b/src/util/cacheApi.ts @@ -1,4 +1,4 @@ -import { ELECTRON_HOST_URL, IS_ELECTRON_BUILD } from '../config'; +import { ELECTRON_HOST_URL, IS_PACKAGED_ELECTRON } from '../config'; // eslint-disable-next-line no-restricted-globals const cacheApi = self.caches; @@ -28,7 +28,7 @@ export async function fetch( try { // To avoid the error "Request scheme 'webdocument' is unsupported" - const request = IS_ELECTRON_BUILD + const request = IS_PACKAGED_ELECTRON ? `${ELECTRON_HOST_URL}/${key.replace(/:/g, '_')}` : new Request(key.replace(/:/g, '_')); const cache = await cacheApi.open(cacheName); @@ -88,7 +88,7 @@ export async function save(cacheName: string, key: string, data: AnyLiteral | Bl ? data : JSON.stringify(data); // To avoid the error "Request scheme 'webdocument' is unsupported" - const request = IS_ELECTRON_BUILD + const request = IS_PACKAGED_ELECTRON ? `${ELECTRON_HOST_URL}/${key.replace(/:/g, '_')}` : new Request(key.replace(/:/g, '_')); const response = new Response(cacheData); diff --git a/src/util/mediaLoader.ts b/src/util/mediaLoader.ts index d67888834..5510e1654 100644 --- a/src/util/mediaLoader.ts +++ b/src/util/mediaLoader.ts @@ -9,7 +9,7 @@ import { import { DEBUG, ELECTRON_HOST_URL, - IS_ELECTRON_BUILD, MEDIA_CACHE_DISABLED, MEDIA_CACHE_NAME, MEDIA_CACHE_NAME_AVATARS, + IS_PACKAGED_ELECTRON, MEDIA_CACHE_DISABLED, MEDIA_CACHE_NAME, MEDIA_CACHE_NAME_AVATARS, } from '../config'; import { callApi, cancelApiProgress } from '../api/gramjs'; import * as cacheApi from './cacheApi'; @@ -26,7 +26,7 @@ const asCacheApiType = { [ApiMediaFormat.Progressive]: undefined, }; -const PROGRESSIVE_URL_PREFIX = `${IS_ELECTRON_BUILD ? ELECTRON_HOST_URL : '.'}/progressive/`; +const PROGRESSIVE_URL_PREFIX = `${IS_PACKAGED_ELECTRON ? ELECTRON_HOST_URL : '.'}/progressive/`; const URL_DOWNLOAD_PREFIX = './download/'; const RETRY_MEDIA_AFTER = 2000; const MAX_MEDIA_RETRIES = 3; diff --git a/webpack.config.ts b/webpack.config.ts index 840871a49..db689ec86 100644 --- a/webpack.config.ts +++ b/webpack.config.ts @@ -22,7 +22,7 @@ const { HEAD, APP_ENV = 'production', APP_MOCKED_CLIENT = '', - IS_ELECTRON_BUILD, + IS_PACKAGED_ELECTRON, } = process.env; dotenv.config(); @@ -44,8 +44,8 @@ const CSP = ` script-src 'self' 'wasm-unsafe-eval' https://t.me/_websync_ https://telegram.me/_websync_; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: https://ss3.4sqi.net/img/categories_v2/ - ${IS_ELECTRON_BUILD ? `${BASE_URL}/` : ''}; - media-src 'self' blob: data: ${IS_ELECTRON_BUILD ? [`${BASE_URL}/`, ELECTRON_HOST_URL].join(' ') : ''}; + ${IS_PACKAGED_ELECTRON ? `${BASE_URL}/` : ''}; + media-src 'self' blob: data: ${IS_PACKAGED_ELECTRON ? [`${BASE_URL}/`, ELECTRON_HOST_URL].join(' ') : ''}; object-src 'none'; frame-src http: https:; base-uri 'none'; @@ -204,7 +204,7 @@ export default function createConfig( TELEGRAM_API_HASH: undefined, // eslint-disable-next-line no-null/no-null TEST_SESSION: null, - IS_ELECTRON_BUILD: false, + IS_PACKAGED_ELECTRON: false, ELECTRON_HOST_URL, BASE_URL, }), @@ -232,7 +232,7 @@ export default function createConfig( }), ], - devtool: APP_ENV === 'production' && IS_ELECTRON_BUILD ? undefined : 'source-map', + devtool: APP_ENV === 'production' && IS_PACKAGED_ELECTRON ? undefined : 'source-map', optimization: { splitChunks: {