@incanta/config 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/lib/config.d.ts.map +1 -1
  2. package/lib/config.js +5 -1
  3. package/lib/config.js.map +1 -1
  4. package/package.json +1 -1
  5. package/src/config.ts +5 -1
  6. package/test/config-env/config-env.test.ts +0 -29
  7. package/test/config-env/default/thing.yaml +0 -1
  8. package/test/config-env/dev/thing.yaml +0 -1
  9. package/test/config-env/production/thing.yaml +0 -1
  10. package/test/config-json/config-json.test.ts +0 -23
  11. package/test/config-json/default/foo.json +0 -3
  12. package/test/config-json/default/goodbye/index.json +0 -8
  13. package/test/config-json/default/index.json +0 -3
  14. package/test/config-json5/config-json5.test.ts +0 -23
  15. package/test/config-json5/default/foo.json5 +0 -4
  16. package/test/config-json5/default/goodbye/index.json5 +0 -9
  17. package/test/config-json5/default/index.json5 +0 -4
  18. package/test/config-jsonc/config-jsonc.test.ts +0 -23
  19. package/test/config-jsonc/default/foo.jsonc +0 -4
  20. package/test/config-jsonc/default/goodbye/index.jsonc +0 -9
  21. package/test/config-jsonc/default/index.jsonc +0 -4
  22. package/test/config-local/config-local.test.ts +0 -13
  23. package/test/config-local/default/thing.yaml +0 -1
  24. package/test/config-local/local/thing.yaml +0 -1
  25. package/test/config-local/production/thing.yaml +0 -1
  26. package/test/config-multi/config-multi.test.ts +0 -23
  27. package/test/config-multi/default/foo.json +0 -3
  28. package/test/config-multi/default/goodbye/index.json5 +0 -9
  29. package/test/config-multi/default/index.yaml +0 -1
  30. package/test/config-override/config-override.test.ts +0 -13
  31. package/test/config-override/default/thing.yaml +0 -1
  32. package/test/config-override/local/thing.yaml +0 -1
  33. package/test/config-override/override.json +0 -5
  34. package/test/config-override/production/thing.yaml +0 -1
  35. package/test/config-yaml/config-yaml.test.ts +0 -23
  36. package/test/config-yaml/default/foo.yaml +0 -1
  37. package/test/config-yaml/default/goodbye/index.yaml +0 -5
  38. package/test/config-yaml/default/index.yaml +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,MAAM;IACjB,OAAO,CAAC,SAAS,CAAS;IAE1B,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,YAAY,CAAM;gBAEP,OAAO,CAAC,EAAE,cAAc;IAgCpC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC;IAKtB,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC;IAkBtC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAUzB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAKnC,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAe7C,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAMnC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,MAAM;IACjB,OAAO,CAAC,SAAS,CAAS;IAE1B,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,YAAY,CAAM;gBAEP,OAAO,CAAC,EAAE,cAAc;IAoCpC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC;IAKtB,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC;IAkBtC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAUzB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAKnC,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAe7C,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAMnC"}
package/lib/config.js CHANGED
@@ -15,7 +15,11 @@ class Config {
15
15
  constructor(options) {
16
16
  this.values = {};
17
17
  this.customValues = {};
18
- this.configDir = options?.configDir || path_1.default.join(process.cwd(), "config");
18
+ this.configDir =
19
+ options?.configDir ||
20
+ (process.env["NODE_CONFIG_DIR"] &&
21
+ path_1.default.relative(process.cwd(), process.env["NODE_CONFIG_DIR"])) ||
22
+ path_1.default.join(process.cwd(), "config");
19
23
  const defaultValues = loader_1.Loader.load(path_1.default.join(this.configDir, "default"));
20
24
  let envValues = {};
21
25
  const configEnvDir = options?.configEnv || process.env["NODE_CONFIG_ENV"];
package/lib/config.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@incanta/config",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "main": "lib/index.js",
5
5
  "exports": {
6
6
  ".": "./lib/index.js",
package/src/config.ts CHANGED
@@ -18,7 +18,11 @@ export class Config {
18
18
  this.values = {};
19
19
  this.customValues = {};
20
20
 
21
- this.configDir = options?.configDir || path.join(process.cwd(), "config");
21
+ this.configDir =
22
+ options?.configDir ||
23
+ (process.env["NODE_CONFIG_DIR"] &&
24
+ path.relative(process.cwd(), process.env["NODE_CONFIG_DIR"])) ||
25
+ path.join(process.cwd(), "config");
22
26
 
23
27
  const defaultValues = Loader.load(path.join(this.configDir, "default"));
24
28
 
@@ -1,29 +0,0 @@
1
- import { describe, expect, test } from "@jest/globals";
2
- import { Config } from "../../src/config";
3
- import path from "path";
4
-
5
- describe("Config with env folder", () => {
6
- test("correctly loaded production directory", () => {
7
- const config = new Config({
8
- configDir: path.join(__dirname),
9
- configEnv: "production",
10
- });
11
- expect(config.get<number>("thing.test")).toBe(2);
12
- });
13
-
14
- test("correctly loaded dev directory", () => {
15
- const config = new Config({
16
- configDir: path.join(__dirname),
17
- configEnv: "dev",
18
- });
19
- expect(config.get<number>("thing.test")).toBe(3);
20
- });
21
-
22
- test("correctly shows default value for invalid env directory", () => {
23
- const config = new Config({
24
- configDir: path.join(__dirname),
25
- configEnv: "invalid",
26
- });
27
- expect(config.get<number>("thing.test")).toBe(1);
28
- });
29
- });
@@ -1 +0,0 @@
1
- test: 1
@@ -1 +0,0 @@
1
- test: 3
@@ -1 +0,0 @@
1
- test: 2
@@ -1,23 +0,0 @@
1
- import { describe, expect, test } from "@jest/globals";
2
- import { Config } from "../../src/config";
3
- import path from "path";
4
-
5
- describe("Config with JSON files", () => {
6
- const config = new Config({
7
- configDir: path.join(__dirname),
8
- });
9
-
10
- test("correctly loaded default directory", () => {
11
- expect(config.get<string>("hello")).toBe("world");
12
- expect(config.get<number>("foo.bar")).toBe(42);
13
- });
14
-
15
- test("correctly loaded sub default directory", () => {
16
- const arr = config.get<number[]>("goodbye.universe");
17
- expect(arr.length).toBe(4);
18
- expect(arr[0]).toBe(1);
19
- expect(arr[1]).toBe(3);
20
- expect(arr[2]).toBe(3);
21
- expect(arr[3]).toBe(7);
22
- });
23
- });
@@ -1,3 +0,0 @@
1
- {
2
- "bar": 42
3
- }
@@ -1,8 +0,0 @@
1
- {
2
- "universe": [
3
- 1,
4
- 3,
5
- 3,
6
- 7
7
- ]
8
- }
@@ -1,3 +0,0 @@
1
- {
2
- "hello": "world"
3
- }
@@ -1,23 +0,0 @@
1
- import { describe, expect, test } from "@jest/globals";
2
- import { Config } from "../../src/config";
3
- import path from "path";
4
-
5
- describe("Config with JSON5 files", () => {
6
- const config = new Config({
7
- configDir: path.join(__dirname),
8
- });
9
-
10
- test("correctly loaded default directory", () => {
11
- expect(config.get<string>("hello")).toBe("world");
12
- expect(config.get<number>("foo.bar")).toBe(42);
13
- });
14
-
15
- test("correctly loaded sub default directory", () => {
16
- const arr = config.get<number[]>("goodbye.universe");
17
- expect(arr.length).toBe(4);
18
- expect(arr[0]).toBe(1);
19
- expect(arr[1]).toBe(3);
20
- expect(arr[2]).toBe(3);
21
- expect(arr[3]).toBe(7);
22
- });
23
- });
@@ -1,4 +0,0 @@
1
- {
2
- // Comment
3
- "bar": 42
4
- }
@@ -1,9 +0,0 @@
1
- {
2
- // Comment
3
- "universe": [
4
- 1,
5
- 3,
6
- 3,
7
- 7
8
- ]
9
- }
@@ -1,4 +0,0 @@
1
- {
2
- // Comment
3
- "hello": "world"
4
- }
@@ -1,23 +0,0 @@
1
- import { describe, expect, test } from "@jest/globals";
2
- import { Config } from "../../src/config";
3
- import path from "path";
4
-
5
- describe("Config with JSONC files", () => {
6
- const config = new Config({
7
- configDir: path.join(__dirname),
8
- });
9
-
10
- test("correctly loaded default directory", () => {
11
- expect(config.get<string>("hello")).toBe("world");
12
- expect(config.get<number>("foo.bar")).toBe(42);
13
- });
14
-
15
- test("correctly loaded sub default directory", () => {
16
- const arr = config.get<number[]>("goodbye.universe");
17
- expect(arr.length).toBe(4);
18
- expect(arr[0]).toBe(1);
19
- expect(arr[1]).toBe(3);
20
- expect(arr[2]).toBe(3);
21
- expect(arr[3]).toBe(7);
22
- });
23
- });
@@ -1,4 +0,0 @@
1
- {
2
- // Comment
3
- "bar": 42
4
- }
@@ -1,9 +0,0 @@
1
- {
2
- // Comment
3
- "universe": [
4
- 1,
5
- 3,
6
- 3,
7
- 7
8
- ]
9
- }
@@ -1,4 +0,0 @@
1
- {
2
- // Comment
3
- "hello": "world"
4
- }
@@ -1,13 +0,0 @@
1
- import { describe, expect, test } from "@jest/globals";
2
- import { Config } from "../../src/config";
3
- import path from "path";
4
-
5
- describe("Config with local folder", () => {
6
- const config = new Config({
7
- configDir: path.join(__dirname),
8
- });
9
-
10
- test("correctly loaded local directory", () => {
11
- expect(config.get<number>("thing.test")).toBe(3);
12
- });
13
- });
@@ -1 +0,0 @@
1
- test: 1
@@ -1 +0,0 @@
1
- test: 3
@@ -1 +0,0 @@
1
- test: 2
@@ -1,23 +0,0 @@
1
- import { describe, expect, test } from "@jest/globals";
2
- import { Config } from "../../src/config";
3
- import path from "path";
4
-
5
- describe("Config with mixed file types", () => {
6
- const config = new Config({
7
- configDir: path.join(__dirname),
8
- });
9
-
10
- test("correctly loaded default directory", () => {
11
- expect(config.get<string>("hello")).toBe("world");
12
- expect(config.get<number>("foo.bar")).toBe(42);
13
- });
14
-
15
- test("correctly loaded sub default directory", () => {
16
- const arr = config.get<number[]>("goodbye.universe");
17
- expect(arr.length).toBe(4);
18
- expect(arr[0]).toBe(1);
19
- expect(arr[1]).toBe(3);
20
- expect(arr[2]).toBe(3);
21
- expect(arr[3]).toBe(7);
22
- });
23
- });
@@ -1,3 +0,0 @@
1
- {
2
- "bar": 42
3
- }
@@ -1,9 +0,0 @@
1
- {
2
- // Comment
3
- "universe": [
4
- 1,
5
- 3,
6
- 3,
7
- 7
8
- ]
9
- }
@@ -1 +0,0 @@
1
- hello: world
@@ -1,13 +0,0 @@
1
- import { describe, expect, test } from "@jest/globals";
2
- import { Config } from "../../src/config";
3
- import path from "path";
4
-
5
- describe("Config with override folder", () => {
6
- test("correctly loaded production directory", () => {
7
- const config = new Config({
8
- configDir: path.join(__dirname),
9
- configEnv: "production",
10
- });
11
- expect(config.get<number>("thing.test")).toBe(4);
12
- });
13
- });
@@ -1 +0,0 @@
1
- test: 1
@@ -1 +0,0 @@
1
- test: 3
@@ -1,5 +0,0 @@
1
- {
2
- "thing": {
3
- "test": 4
4
- }
5
- }
@@ -1 +0,0 @@
1
- test: 2
@@ -1,23 +0,0 @@
1
- import { describe, expect, test } from "@jest/globals";
2
- import { Config } from "../../src/config";
3
- import path from "path";
4
-
5
- describe("Config with YAML files", () => {
6
- const config = new Config({
7
- configDir: path.join(__dirname),
8
- });
9
-
10
- test("correctly loaded default directory", () => {
11
- expect(config.get<string>("hello")).toBe("world");
12
- expect(config.get<number>("foo.bar")).toBe(42);
13
- });
14
-
15
- test("correctly loaded sub default directory", () => {
16
- const arr = config.get<number[]>("goodbye.universe");
17
- expect(arr.length).toBe(4);
18
- expect(arr[0]).toBe(1);
19
- expect(arr[1]).toBe(3);
20
- expect(arr[2]).toBe(3);
21
- expect(arr[3]).toBe(7);
22
- });
23
- });
@@ -1 +0,0 @@
1
- bar: 42
@@ -1,5 +0,0 @@
1
- universe:
2
- - 1
3
- - 3
4
- - 3
5
- - 7
@@ -1 +0,0 @@
1
- hello: world