From a3f139a40d238b34969c3ea0c6582f6705129e36 Mon Sep 17 00:00:00 2001 From: Janne Savolainen Date: Wed, 27 Apr 2022 15:55:09 +0300 Subject: [PATCH] Adapt vars after merge Co-authored-by: Mikko Aspiala Signed-off-by: Janne Savolainen --- src/common/vars.ts | 6 +++++- src/common/vars/is-development.injectable.ts | 11 +++++++++-- src/common/vars/is-production.injectable.ts | 18 ++++++++++++++++++ .../vars/lens-resources-dir.injectable.ts | 14 ++++++-------- 4 files changed, 38 insertions(+), 11 deletions(-) create mode 100644 src/common/vars/is-production.injectable.ts diff --git a/src/common/vars.ts b/src/common/vars.ts index 20e1bfa8e1..6435acda3a 100644 --- a/src/common/vars.ts +++ b/src/common/vars.ts @@ -26,9 +26,13 @@ export const isLinux = process.platform === "linux"; export const isDebugging = ["true", "1", "yes", "y", "on"].includes((process.env.DEBUG ?? "").toLowerCase()); export const isSnap = !!process.env.SNAP; -export const isProduction = process.env.NODE_ENV === "production"; export const isTestEnv = !!process.env.JEST_WORKER_ID; +/** + * @deprecated Switch to using isProductionInjectable + */ +export const isProduction = process.env.NODE_ENV === "production"; + /** * @deprecated Switch to using isDevelopmentInjectable */ diff --git a/src/common/vars/is-development.injectable.ts b/src/common/vars/is-development.injectable.ts index 62f27a8e5e..6eb399b6be 100644 --- a/src/common/vars/is-development.injectable.ts +++ b/src/common/vars/is-development.injectable.ts @@ -3,11 +3,18 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ import { getInjectable } from "@ogre-tools/injectable"; -import { isProduction, isTestEnv } from "../vars"; +import { isTestEnv } from "../vars"; +import isProductionInjectable from "./is-production.injectable"; const isDevelopmentInjectable = getInjectable({ id: "is-development", - instantiate: () => !isTestEnv && !isProduction, + + instantiate: (di) => { + const isProduction = di.inject(isProductionInjectable); + + return !isTestEnv && !isProduction; + }, + causesSideEffects: true, }); diff --git a/src/common/vars/is-production.injectable.ts b/src/common/vars/is-production.injectable.ts new file mode 100644 index 0000000000..085b091dfa --- /dev/null +++ b/src/common/vars/is-production.injectable.ts @@ -0,0 +1,18 @@ +/** + * Copyright (c) OpenLens Authors. All rights reserved. + * Licensed under MIT License. See LICENSE in root directory for more information. + */ +import { getInjectable } from "@ogre-tools/injectable"; +import environmentVariablesInjectable from "../utils/environment-variables.injectable"; + +const isProductionInjectable = getInjectable({ + id: "is-production", + + instantiate: (di) => { + const { NODE_ENV: nodeEnv } = di.inject(environmentVariablesInjectable); + + return nodeEnv === "production"; + }, +}); + +export default isProductionInjectable; diff --git a/src/common/vars/lens-resources-dir.injectable.ts b/src/common/vars/lens-resources-dir.injectable.ts index 9e0122cbfb..c454afb005 100644 --- a/src/common/vars/lens-resources-dir.injectable.ts +++ b/src/common/vars/lens-resources-dir.injectable.ts @@ -3,22 +3,20 @@ * Licensed under MIT License. See LICENSE in root directory for more information. */ import { getInjectable } from "@ogre-tools/injectable"; -import contextDirInjectable from "./context-dir.injectable"; -import isDevelopmentInjectable from "./is-development.injectable"; +import isProductionInjectable from "./is-production.injectable"; const lensResourcesDirInjectable = getInjectable({ id: "lens-resources-dir", instantiate: (di) => { - const isDevelopment = di.inject(isDevelopmentInjectable); - const contextDir = di.inject(contextDirInjectable); + const isProduction = di.inject(isProductionInjectable); - return isDevelopment - ? contextDir - : (process.resourcesPath ?? contextDir); + return !isProduction + ? process.cwd() + : process.resourcesPath; }, - causesSideEffects: true, + causesSideEffects: true, }); export default lensResourcesDirInjectable;