From 6989fbdd444ec7e7f01ee732b39c233228f7535a Mon Sep 17 00:00:00 2001 From: Cooldude2606 <25043174+Cooldude2606@users.noreply.github.com> Date: Fri, 9 May 2025 22:44:56 +0100 Subject: [PATCH] Move defaultAccess to static property --- packages/lib/src/config/classes.ts | 6 ++++-- test/lib/config/classes.js | 6 ++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/lib/src/config/classes.ts b/packages/lib/src/config/classes.ts index 310312ba..ab0b056d 100644 --- a/packages/lib/src/config/classes.ts +++ b/packages/lib/src/config/classes.ts @@ -198,6 +198,9 @@ export class Config< return config; } + /** Defines the default access locations for the config class */ + static defaultAccess: ConfigLocation[] = ["controller", "host", "control"]; + fields: Fields; _unknownFields: Record = {}; @@ -217,7 +220,6 @@ export class Config< constructor( public location: ConfigLocation, fields?: Static, - public defaultAccess: ConfigLocation[] = ["controller", "host", "control"], ) { if (typeof location !== "string") { throw new Error("location must be a string"); @@ -262,7 +264,7 @@ export class Config< || ( (!def.credential || mode & ConfigAccess.write) && (!def.readonly || mode & ConfigAccess.read) - && !(def.access ?? this.defaultAccess).includes(location) + && !(def.access ?? this.constructor.defaultAccess).includes(location) ) ) { if (error) { diff --git a/test/lib/config/classes.js b/test/lib/config/classes.js index b9ac399b..abe35efe 100644 --- a/test/lib/config/classes.js +++ b/test/lib/config/classes.js @@ -7,6 +7,8 @@ const CA = lib.ConfigAccess; describe("lib/config/classes", function() { describe("Config", function() { class TestConfig extends lib.Config { + static defaultAccess = ["local", "remote"]; + static migrations(config) { if (config.hasOwnProperty("test.migration")) { config["alpha.foo"] = config["test.migration"]; @@ -38,10 +40,6 @@ describe("lib/config/classes", function() { "test.cred": { credential: ["local"] }, "test.rdo": { readonly: ["local"] }, }; - - constructor(location, fields) { - super(location, fields, ["local", "remote"]); - } } describe("constructor", function() {