typed-settings 0.1.4 → 0.2.1

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 (81) hide show
  1. package/README.md +14 -7
  2. package/bin/typed-settings.mjs +5 -0
  3. package/dist/adapters/joi.cjs +1 -26
  4. package/dist/adapters/joi.d.cts +2 -1
  5. package/dist/adapters/joi.d.ts +2 -1
  6. package/dist/adapters/joi.js +1 -1
  7. package/dist/adapters/superstruct.cjs +1 -26
  8. package/dist/adapters/superstruct.js +1 -1
  9. package/dist/adapters/yup.cjs +1 -25
  10. package/dist/adapters/yup.js +1 -1
  11. package/dist/adapters/zod.cjs +3 -36
  12. package/dist/adapters/zod.js +1 -33
  13. package/dist/check-XVFZEVNV.js +1 -0
  14. package/dist/chunk-4EAMKDNK.js +3 -0
  15. package/dist/chunk-5D2AQWDG.js +1 -0
  16. package/dist/chunk-C6CG2D4B.js +2 -0
  17. package/dist/chunk-FQYD5ZKE.js +1 -0
  18. package/dist/chunk-NQDE3WLR.js +3 -0
  19. package/dist/chunk-RURPDXIJ.js +1 -0
  20. package/dist/cli/main.cjs +36 -2225
  21. package/dist/cli/main.js +32 -806
  22. package/dist/errors-JkkOM0u-.d.cts +25 -0
  23. package/dist/errors-JkkOM0u-.d.ts +25 -0
  24. package/dist/framework/next.cjs +5 -1158
  25. package/dist/framework/next.d.cts +3 -3
  26. package/dist/framework/next.d.ts +3 -3
  27. package/dist/framework/next.js +1 -15
  28. package/dist/framework/vite.cjs +5 -1156
  29. package/dist/framework/vite.d.cts +8 -3
  30. package/dist/framework/vite.d.ts +8 -3
  31. package/dist/framework/vite.js +1 -14
  32. package/dist/index.cjs +5 -1181
  33. package/dist/index.d.cts +38 -7
  34. package/dist/index.d.ts +38 -7
  35. package/dist/index.js +1 -6
  36. package/dist/node.cjs +6 -1241
  37. package/dist/node.d.cts +23 -9
  38. package/dist/node.d.ts +23 -9
  39. package/dist/node.js +1 -7
  40. package/dist/{types-B_Dc2L4T.d.cts → types-CcsYDAdO.d.cts} +23 -1
  41. package/dist/{types-B_Dc2L4T.d.ts → types-CcsYDAdO.d.ts} +23 -1
  42. package/dist/vault/aws.cjs +4 -217
  43. package/dist/vault/aws.d.cts +1 -1
  44. package/dist/vault/aws.d.ts +1 -1
  45. package/dist/vault/aws.js +2 -167
  46. package/dist/vault/hashicorp.cjs +4 -183
  47. package/dist/vault/hashicorp.d.cts +1 -1
  48. package/dist/vault/hashicorp.d.ts +1 -1
  49. package/dist/vault/hashicorp.js +2 -77
  50. package/dist/vault/http.cjs +4 -185
  51. package/dist/vault/http.d.cts +1 -1
  52. package/dist/vault/http.d.ts +1 -1
  53. package/dist/vault/http.js +2 -79
  54. package/package.json +2 -3
  55. package/dist/chunk-33M5GIKQ.js +0 -13
  56. package/dist/chunk-A5TCQJ7L.js +0 -65
  57. package/dist/chunk-DEP5SD4J.js +0 -233
  58. package/dist/chunk-EE6LXNJV.js +0 -34
  59. package/dist/chunk-F6DX3HXZ.js +0 -101
  60. package/dist/chunk-OVFMKC2O.js +0 -15
  61. package/dist/chunk-RQC6OMVV.js +0 -86
  62. package/dist/chunk-UFUHHR2J.js +0 -38
  63. package/dist/chunk-YVJEZPPZ.js +0 -989
  64. package/dist/errors-itGaU4Q8.d.cts +0 -17
  65. package/dist/errors-itGaU4Q8.d.ts +0 -17
  66. package/dist/formats/env.cjs +0 -103
  67. package/dist/formats/env.d.cts +0 -8
  68. package/dist/formats/env.d.ts +0 -8
  69. package/dist/formats/env.js +0 -1
  70. package/dist/formats/json.cjs +0 -15
  71. package/dist/formats/json.d.cts +0 -7
  72. package/dist/formats/json.d.ts +0 -7
  73. package/dist/formats/json.js +0 -1
  74. package/dist/formats/toml.cjs +0 -17
  75. package/dist/formats/toml.d.cts +0 -7
  76. package/dist/formats/toml.d.ts +0 -7
  77. package/dist/formats/toml.js +0 -1
  78. package/dist/formats/yaml.cjs +0 -40
  79. package/dist/formats/yaml.d.cts +0 -8
  80. package/dist/formats/yaml.d.ts +0 -8
  81. package/dist/formats/yaml.js +0 -1
package/dist/index.d.cts CHANGED
@@ -1,7 +1,34 @@
1
1
  import { StandardSchemaV1 } from '@standard-schema/spec';
2
- import { S as SettingsOptions, F as Flat } from './types-B_Dc2L4T.cjs';
3
- export { A as ArrayStrategy, a as SecretProvider, b as SourceInput, U as UnknownKeys } from './types-B_Dc2L4T.cjs';
4
- export { C as ConfigError } from './errors-itGaU4Q8.cjs';
2
+ import { S as SettingsOptions, F as Flat } from './types-CcsYDAdO.cjs';
3
+ export { A as ArrayStrategy, a as SecretProvider, b as SourceInput, U as UnknownKeys } from './types-CcsYDAdO.cjs';
4
+ export { C as ConfigError, i as isSecretKey } from './errors-JkkOM0u-.cjs';
5
+
6
+ /** Validation outcome with root-attributed, path-normalized issues. */
7
+ interface NormalizedResult {
8
+ ok: boolean;
9
+ value?: unknown;
10
+ issues?: {
11
+ path: string;
12
+ message: string;
13
+ }[];
14
+ }
15
+ /**
16
+ * Runs a Standard Schema `validate()` and normalizes the outcome. Sync results
17
+ * return `{ value }` or `{ issues, async: false }`; a thenable (checked by shape,
18
+ * not `instanceof`) returns `{ promise }` for the async path. Throwing validators
19
+ * become root issues instead of leaking.
20
+ */
21
+ declare function validateStandard<S extends StandardSchemaV1>(schema: S, input: unknown): {
22
+ value: unknown;
23
+ } | {
24
+ issues: {
25
+ path: string;
26
+ message: string;
27
+ }[];
28
+ async: false;
29
+ } | {
30
+ promise: Promise<NormalizedResult>;
31
+ };
5
32
 
6
33
  /**
7
34
  * Typed config in one call.
@@ -18,6 +45,9 @@ export { C as ConfigError } from './errors-itGaU4Q8.cjs';
18
45
  * Runs `fn` with `process.env` patched by `map` (`undefined` deletes a key),
19
46
  * then restores the exact previous environment — synchronously for sync `fn`,
20
47
  * held until settle for async `fn`. Restores on throw too.
48
+ *
49
+ * NOTE: not safe for overlapping concurrent use — two in-flight `withOverrides`
50
+ * calls interleave on the shared global. Serialize them, or pass `env:` instead.
21
51
  */
22
52
  declare function withOverrides<T>(map: Flat, fn: () => T): T;
23
53
  /**
@@ -42,10 +72,11 @@ declare function viteSettings<S extends StandardSchemaV1>(opts: SettingsOptions<
42
72
  */
43
73
  declare function settings<S extends StandardSchemaV1>(opts: SettingsOptions<S>): StandardSchemaV1.InferOutput<S>;
44
74
  /**
45
- * Async twin of `settings()`: awaits async providers (whole collection races
46
- * `timeoutMs`) and async schemas, with the same merge/expand/coerce/validate/
47
- * freeze pipeline and the same `ConfigError` contract.
75
+ * Async twin of `settings()`: awaits async providers (the whole collection
76
+ * shares one `timeoutMs` deadline) and async schemas (which race a separate
77
+ * `timeoutMs` budget), with the same merge/expand/coerce/validate/freeze
78
+ * pipeline and the same `ConfigError` contract.
48
79
  */
49
80
  declare function settingsAsync<S extends StandardSchemaV1>(opts: SettingsOptions<S>): Promise<StandardSchemaV1.InferOutput<S>>;
50
81
 
51
- export { Flat, SettingsOptions, pickPublic, settings, settingsAsync, viteSettings, withOverrides };
82
+ export { Flat, SettingsOptions, pickPublic, settings, settingsAsync, validateStandard, viteSettings, withOverrides };
package/dist/index.d.ts CHANGED
@@ -1,7 +1,34 @@
1
1
  import { StandardSchemaV1 } from '@standard-schema/spec';
2
- import { S as SettingsOptions, F as Flat } from './types-B_Dc2L4T.js';
3
- export { A as ArrayStrategy, a as SecretProvider, b as SourceInput, U as UnknownKeys } from './types-B_Dc2L4T.js';
4
- export { C as ConfigError } from './errors-itGaU4Q8.js';
2
+ import { S as SettingsOptions, F as Flat } from './types-CcsYDAdO.js';
3
+ export { A as ArrayStrategy, a as SecretProvider, b as SourceInput, U as UnknownKeys } from './types-CcsYDAdO.js';
4
+ export { C as ConfigError, i as isSecretKey } from './errors-JkkOM0u-.js';
5
+
6
+ /** Validation outcome with root-attributed, path-normalized issues. */
7
+ interface NormalizedResult {
8
+ ok: boolean;
9
+ value?: unknown;
10
+ issues?: {
11
+ path: string;
12
+ message: string;
13
+ }[];
14
+ }
15
+ /**
16
+ * Runs a Standard Schema `validate()` and normalizes the outcome. Sync results
17
+ * return `{ value }` or `{ issues, async: false }`; a thenable (checked by shape,
18
+ * not `instanceof`) returns `{ promise }` for the async path. Throwing validators
19
+ * become root issues instead of leaking.
20
+ */
21
+ declare function validateStandard<S extends StandardSchemaV1>(schema: S, input: unknown): {
22
+ value: unknown;
23
+ } | {
24
+ issues: {
25
+ path: string;
26
+ message: string;
27
+ }[];
28
+ async: false;
29
+ } | {
30
+ promise: Promise<NormalizedResult>;
31
+ };
5
32
 
6
33
  /**
7
34
  * Typed config in one call.
@@ -18,6 +45,9 @@ export { C as ConfigError } from './errors-itGaU4Q8.js';
18
45
  * Runs `fn` with `process.env` patched by `map` (`undefined` deletes a key),
19
46
  * then restores the exact previous environment — synchronously for sync `fn`,
20
47
  * held until settle for async `fn`. Restores on throw too.
48
+ *
49
+ * NOTE: not safe for overlapping concurrent use — two in-flight `withOverrides`
50
+ * calls interleave on the shared global. Serialize them, or pass `env:` instead.
21
51
  */
22
52
  declare function withOverrides<T>(map: Flat, fn: () => T): T;
23
53
  /**
@@ -42,10 +72,11 @@ declare function viteSettings<S extends StandardSchemaV1>(opts: SettingsOptions<
42
72
  */
43
73
  declare function settings<S extends StandardSchemaV1>(opts: SettingsOptions<S>): StandardSchemaV1.InferOutput<S>;
44
74
  /**
45
- * Async twin of `settings()`: awaits async providers (whole collection races
46
- * `timeoutMs`) and async schemas, with the same merge/expand/coerce/validate/
47
- * freeze pipeline and the same `ConfigError` contract.
75
+ * Async twin of `settings()`: awaits async providers (the whole collection
76
+ * shares one `timeoutMs` deadline) and async schemas (which race a separate
77
+ * `timeoutMs` budget), with the same merge/expand/coerce/validate/freeze
78
+ * pipeline and the same `ConfigError` contract.
48
79
  */
49
80
  declare function settingsAsync<S extends StandardSchemaV1>(opts: SettingsOptions<S>): Promise<StandardSchemaV1.InferOutput<S>>;
50
81
 
51
- export { Flat, SettingsOptions, pickPublic, settings, settingsAsync, viteSettings, withOverrides };
82
+ export { Flat, SettingsOptions, pickPublic, settings, settingsAsync, validateStandard, viteSettings, withOverrides };
package/dist/index.js CHANGED
@@ -1,6 +1 @@
1
- export { pickPublic, settings, settingsAsync, viteSettings, withOverrides } from './chunk-YVJEZPPZ.js';
2
- import './chunk-33M5GIKQ.js';
3
- import './chunk-OVFMKC2O.js';
4
- import './chunk-UFUHHR2J.js';
5
- export { ConfigError } from './chunk-EE6LXNJV.js';
6
- import './chunk-F6DX3HXZ.js';
1
+ export{d as pickPublic,f as settings,g as settingsAsync,b as validateStandard,e as viteSettings,c as withOverrides}from'./chunk-4EAMKDNK.js';export{d as ConfigError,a as isSecretKey}from'./chunk-NQDE3WLR.js';