From 4d6c534641b98af1444d7ad3417479cd3128ed65 Mon Sep 17 00:00:00 2001 From: Richard Frost Date: Wed, 15 Oct 2025 23:12:07 -0600 Subject: [PATCH 1/3] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20(build):=20Move=20Envi?= =?UTF-8?q?ronment=20static=20values=20to=20end=20of=20class?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/script/Environment.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/script/Environment.ts b/src/script/Environment.ts index ceac9968..6e1df1ee 100644 --- a/src/script/Environment.ts +++ b/src/script/Environment.ts @@ -70,12 +70,6 @@ export default class Environment { static readonly OS_UNKNOWN = 'unknown' as const; static readonly OS_WINDOWS = 'windows' as const; - // Static environment values - computed once and cached - private static readonly _BUILD_INFO: Readonly = Object.freeze( - typeof __BUILD__ === 'undefined' ? BUILD_DEFAULTS : __BUILD__, - ); - private static readonly _BROWSER_INFO = Environment._computeBrowserInfoSafe(); - // Static getters for browser info static get browser(): BrowserInfo['browser'] { return this._BROWSER_INFO.browser; @@ -299,6 +293,12 @@ export default class Environment { return { browser, os, device }; } + // Static environment values - computed once and cached + private static readonly _BUILD_INFO: Readonly = Object.freeze( + typeof __BUILD__ === 'undefined' ? BUILD_DEFAULTS : __BUILD__, + ); + private static readonly _BROWSER_INFO = Environment._computeBrowserInfoSafe(); + constructor() { throw new Error('Environment is a static class and cannot be instantiated'); } From 242c6545949bf3ad40cf763555c77f1ee6668a8b Mon Sep 17 00:00:00 2001 From: Richard Frost Date: Wed, 15 Oct 2025 23:12:09 -0600 Subject: [PATCH 2/3] =?UTF-8?q?=F0=9F=92=A1=20(build):=20Normalize=20comme?= =?UTF-8?q?nts=20in=20Environment?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/script/Environment.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/script/Environment.ts b/src/script/Environment.ts index 6e1df1ee..2c930fb2 100644 --- a/src/script/Environment.ts +++ b/src/script/Environment.ts @@ -70,7 +70,7 @@ export default class Environment { static readonly OS_UNKNOWN = 'unknown' as const; static readonly OS_WINDOWS = 'windows' as const; - // Static getters for browser info + // Browser info static getters static get browser(): BrowserInfo['browser'] { return this._BROWSER_INFO.browser; } @@ -81,7 +81,7 @@ export default class Environment { return this._BROWSER_INFO.device; } - // Static getters for build info + // Build info static getters static get buildTarget(): BuildInfo['target'] { return this._BUILD_INFO.target; } @@ -293,7 +293,7 @@ export default class Environment { return { browser, os, device }; } - // Static environment values - computed once and cached + // Environment values (computed once) private static readonly _BUILD_INFO: Readonly = Object.freeze( typeof __BUILD__ === 'undefined' ? BUILD_DEFAULTS : __BUILD__, ); From df71f02f98cf9e540a3bfbeaece13c46a62f6257 Mon Sep 17 00:00:00 2001 From: Richard Frost Date: Wed, 15 Oct 2025 23:12:13 -0600 Subject: [PATCH 3/3] =?UTF-8?q?=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20(build)?= =?UTF-8?q?:=20Add=20Enviornment.info?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/script/Environment.ts | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/script/Environment.ts b/src/script/Environment.ts index 2c930fb2..e311d67f 100644 --- a/src/script/Environment.ts +++ b/src/script/Environment.ts @@ -70,6 +70,11 @@ export default class Environment { static readonly OS_UNKNOWN = 'unknown' as const; static readonly OS_WINDOWS = 'windows' as const; + // Static getters + static get info() { + return this._INFO; + } + // Browser info static getters static get browser(): BrowserInfo['browser'] { return this._BROWSER_INFO.browser; @@ -298,6 +303,16 @@ export default class Environment { typeof __BUILD__ === 'undefined' ? BUILD_DEFAULTS : __BUILD__, ); private static readonly _BROWSER_INFO = Environment._computeBrowserInfoSafe(); + private static readonly _INFO = Object.freeze({ + browser: this.browser, + os: this.os, + device: this.device, + manifestVersion: this.manifestVersion, + release: this.release, + buildTarget: this.buildTarget, + version: this.version, + config: this.config, + }); constructor() { throw new Error('Environment is a static class and cannot be instantiated');