@zudojs/config 0.0.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.
- package/LICENSE +21 -0
- package/README.md +41 -0
- package/dist/.tsbuildinfo +1 -0
- package/dist/configEntry/configEntry.type.d.ts +77 -0
- package/dist/configEntry/configEntry.type.d.ts.map +1 -0
- package/dist/configEntry/configEntry.type.js +149 -0
- package/dist/configEntry/configEntry.type.js.map +1 -0
- package/dist/configEntry/index.d.ts +7 -0
- package/dist/configEntry/index.d.ts.map +1 -0
- package/dist/configEntry/index.js +7 -0
- package/dist/configEntry/index.js.map +1 -0
- package/dist/configFactory/configFactory.core.d.ts +54 -0
- package/dist/configFactory/configFactory.core.d.ts.map +1 -0
- package/dist/configFactory/configFactory.core.js +69 -0
- package/dist/configFactory/configFactory.core.js.map +1 -0
- package/dist/configFactory/index.d.ts +7 -0
- package/dist/configFactory/index.d.ts.map +1 -0
- package/dist/configFactory/index.js +7 -0
- package/dist/configFactory/index.js.map +1 -0
- package/dist/configLoader/configLoader.core.d.ts +121 -0
- package/dist/configLoader/configLoader.core.d.ts.map +1 -0
- package/dist/configLoader/configLoader.core.js +292 -0
- package/dist/configLoader/configLoader.core.js.map +1 -0
- package/dist/configLoader/index.d.ts +7 -0
- package/dist/configLoader/index.d.ts.map +1 -0
- package/dist/configLoader/index.js +7 -0
- package/dist/configLoader/index.js.map +1 -0
- package/dist/configManager/configManager.core.d.ts +165 -0
- package/dist/configManager/configManager.core.d.ts.map +1 -0
- package/dist/configManager/configManager.core.js +328 -0
- package/dist/configManager/configManager.core.js.map +1 -0
- package/dist/configManager/configManager.error.d.ts +18 -0
- package/dist/configManager/configManager.error.d.ts.map +1 -0
- package/dist/configManager/configManager.error.js +24 -0
- package/dist/configManager/configManager.error.js.map +1 -0
- package/dist/configManager/configManager.factory.d.ts +11 -0
- package/dist/configManager/configManager.factory.d.ts.map +1 -0
- package/dist/configManager/configManager.factory.js +22 -0
- package/dist/configManager/configManager.factory.js.map +1 -0
- package/dist/configManager/configManager.type.d.ts +48 -0
- package/dist/configManager/configManager.type.d.ts.map +1 -0
- package/dist/configManager/configManager.type.js +13 -0
- package/dist/configManager/configManager.type.js.map +1 -0
- package/dist/configManager/index.d.ts +10 -0
- package/dist/configManager/index.d.ts.map +1 -0
- package/dist/configManager/index.js +10 -0
- package/dist/configManager/index.js.map +1 -0
- package/dist/configResolver/accessors/configResolver.accessors.d.ts +19 -0
- package/dist/configResolver/accessors/configResolver.accessors.d.ts.map +1 -0
- package/dist/configResolver/accessors/configResolver.accessors.js +237 -0
- package/dist/configResolver/accessors/configResolver.accessors.js.map +1 -0
- package/dist/configResolver/accessors/configResolver.scoped.d.ts +28 -0
- package/dist/configResolver/accessors/configResolver.scoped.d.ts.map +1 -0
- package/dist/configResolver/accessors/configResolver.scoped.js +54 -0
- package/dist/configResolver/accessors/configResolver.scoped.js.map +1 -0
- package/dist/configResolver/accessors/index.d.ts +8 -0
- package/dist/configResolver/accessors/index.d.ts.map +1 -0
- package/dist/configResolver/accessors/index.js +8 -0
- package/dist/configResolver/accessors/index.js.map +1 -0
- package/dist/configResolver/core/configResolver.core.d.ts +100 -0
- package/dist/configResolver/core/configResolver.core.d.ts.map +1 -0
- package/dist/configResolver/core/configResolver.core.js +347 -0
- package/dist/configResolver/core/configResolver.core.js.map +1 -0
- package/dist/configResolver/core/configResolver.error.d.ts +8 -0
- package/dist/configResolver/core/configResolver.error.d.ts.map +1 -0
- package/dist/configResolver/core/configResolver.error.js +8 -0
- package/dist/configResolver/core/configResolver.error.js.map +1 -0
- package/dist/configResolver/core/configResolver.factory.d.ts +8 -0
- package/dist/configResolver/core/configResolver.factory.d.ts.map +1 -0
- package/dist/configResolver/core/configResolver.factory.js +8 -0
- package/dist/configResolver/core/configResolver.factory.js.map +1 -0
- package/dist/configResolver/core/configResolver.type.d.ts +20 -0
- package/dist/configResolver/core/configResolver.type.d.ts.map +1 -0
- package/dist/configResolver/core/configResolver.type.js +2 -0
- package/dist/configResolver/core/configResolver.type.js.map +1 -0
- package/dist/configResolver/core/index.d.ts +10 -0
- package/dist/configResolver/core/index.d.ts.map +1 -0
- package/dist/configResolver/core/index.js +10 -0
- package/dist/configResolver/core/index.js.map +1 -0
- package/dist/configResolver/index.d.ts +8 -0
- package/dist/configResolver/index.d.ts.map +1 -0
- package/dist/configResolver/index.js +8 -0
- package/dist/configResolver/index.js.map +1 -0
- package/dist/configSchema/configSchema.core.d.ts +8 -0
- package/dist/configSchema/configSchema.core.d.ts.map +1 -0
- package/dist/configSchema/configSchema.core.js +8 -0
- package/dist/configSchema/configSchema.core.js.map +1 -0
- package/dist/configSchema/configSchema.rules.d.ts +18 -0
- package/dist/configSchema/configSchema.rules.d.ts.map +1 -0
- package/dist/configSchema/configSchema.rules.js +108 -0
- package/dist/configSchema/configSchema.rules.js.map +1 -0
- package/dist/configSchema/configSchema.type.d.ts +115 -0
- package/dist/configSchema/configSchema.type.d.ts.map +1 -0
- package/dist/configSchema/configSchema.type.js +24 -0
- package/dist/configSchema/configSchema.type.js.map +1 -0
- package/dist/configSchema/configSchema.validator.d.ts +37 -0
- package/dist/configSchema/configSchema.validator.d.ts.map +1 -0
- package/dist/configSchema/configSchema.validator.js +340 -0
- package/dist/configSchema/configSchema.validator.js.map +1 -0
- package/dist/configSchema/index.d.ts +8 -0
- package/dist/configSchema/index.d.ts.map +1 -0
- package/dist/configSchema/index.js +8 -0
- package/dist/configSchema/index.js.map +1 -0
- package/dist/configSource/configSource.core.d.ts +131 -0
- package/dist/configSource/configSource.core.d.ts.map +1 -0
- package/dist/configSource/configSource.core.js +195 -0
- package/dist/configSource/configSource.core.js.map +1 -0
- package/dist/configSource/index.d.ts +7 -0
- package/dist/configSource/index.d.ts.map +1 -0
- package/dist/configSource/index.js +7 -0
- package/dist/configSource/index.js.map +1 -0
- package/dist/configStore/configStore.core.d.ts +124 -0
- package/dist/configStore/configStore.core.d.ts.map +1 -0
- package/dist/configStore/configStore.core.js +306 -0
- package/dist/configStore/configStore.core.js.map +1 -0
- package/dist/configStore/configStore.factory.d.ts +13 -0
- package/dist/configStore/configStore.factory.d.ts.map +1 -0
- package/dist/configStore/configStore.factory.js +14 -0
- package/dist/configStore/configStore.factory.js.map +1 -0
- package/dist/configStore/configStore.type.d.ts +24 -0
- package/dist/configStore/configStore.type.d.ts.map +1 -0
- package/dist/configStore/configStore.type.js +2 -0
- package/dist/configStore/configStore.type.js.map +1 -0
- package/dist/configStore/index.d.ts +9 -0
- package/dist/configStore/index.d.ts.map +1 -0
- package/dist/configStore/index.js +9 -0
- package/dist/configStore/index.js.map +1 -0
- package/dist/configValue/configValue.core.d.ts +97 -0
- package/dist/configValue/configValue.core.d.ts.map +1 -0
- package/dist/configValue/configValue.core.js +293 -0
- package/dist/configValue/configValue.core.js.map +1 -0
- package/dist/configValue/index.d.ts +7 -0
- package/dist/configValue/index.d.ts.map +1 -0
- package/dist/configValue/index.js +7 -0
- package/dist/configValue/index.js.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -0
- package/package.json +51 -0
|
@@ -0,0 +1,293 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration values used throughout Zudojs.
|
|
3
|
+
*
|
|
4
|
+
* This module provides the common value types and utilities used by
|
|
5
|
+
* the configuration system. Values remain JSON-compatible where
|
|
6
|
+
* possible, while allowing common runtime values such as undefined,
|
|
7
|
+
* Date, and Buffer-like binary data to be handled safely.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Checks whether a value is a configuration primitive.
|
|
11
|
+
*/
|
|
12
|
+
export function isConfigPrimitive(value) {
|
|
13
|
+
return (value === null ||
|
|
14
|
+
value === undefined ||
|
|
15
|
+
typeof value === "string" ||
|
|
16
|
+
typeof value === "number" ||
|
|
17
|
+
typeof value === "boolean" ||
|
|
18
|
+
typeof value === "bigint");
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Checks whether a value is a plain configuration object.
|
|
22
|
+
*/
|
|
23
|
+
export function isConfigObject(value) {
|
|
24
|
+
if (typeof value !== "object" ||
|
|
25
|
+
value === null ||
|
|
26
|
+
Array.isArray(value) ||
|
|
27
|
+
value instanceof Date) {
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
const prototype = Object.getPrototypeOf(value);
|
|
31
|
+
return prototype === Object.prototype || prototype === null;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Checks whether a value can be stored as a configuration value.
|
|
35
|
+
*/
|
|
36
|
+
export function isConfigValue(value) {
|
|
37
|
+
if (isConfigPrimitive(value)) {
|
|
38
|
+
return true;
|
|
39
|
+
}
|
|
40
|
+
if (value instanceof Date) {
|
|
41
|
+
return !Number.isNaN(value.getTime());
|
|
42
|
+
}
|
|
43
|
+
if (Array.isArray(value)) {
|
|
44
|
+
return value.every(isConfigValue);
|
|
45
|
+
}
|
|
46
|
+
if (isConfigObject(value)) {
|
|
47
|
+
return Object.values(value).every(isConfigValue);
|
|
48
|
+
}
|
|
49
|
+
return false;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Converts a configuration value into a JSON-compatible value.
|
|
53
|
+
*
|
|
54
|
+
* Undefined values are preserved by default so callers can decide
|
|
55
|
+
* whether they should be omitted.
|
|
56
|
+
*/
|
|
57
|
+
export function toConfigJsonValue(value) {
|
|
58
|
+
if (value === undefined) {
|
|
59
|
+
return undefined;
|
|
60
|
+
}
|
|
61
|
+
if (value === null ||
|
|
62
|
+
typeof value === "string" ||
|
|
63
|
+
typeof value === "boolean") {
|
|
64
|
+
return value;
|
|
65
|
+
}
|
|
66
|
+
if (typeof value === "number") {
|
|
67
|
+
if (Number.isFinite(value)) {
|
|
68
|
+
return value;
|
|
69
|
+
}
|
|
70
|
+
return null;
|
|
71
|
+
}
|
|
72
|
+
if (typeof value === "bigint") {
|
|
73
|
+
return value.toString();
|
|
74
|
+
}
|
|
75
|
+
if (value instanceof Date) {
|
|
76
|
+
return value.toISOString();
|
|
77
|
+
}
|
|
78
|
+
if (Array.isArray(value)) {
|
|
79
|
+
return value
|
|
80
|
+
.map(toConfigJsonValue)
|
|
81
|
+
.filter((item) => item !== undefined);
|
|
82
|
+
}
|
|
83
|
+
if (isConfigObject(value)) {
|
|
84
|
+
const result = {};
|
|
85
|
+
for (const [key, child] of Object.entries(value)) {
|
|
86
|
+
const converted = toConfigJsonValue(child);
|
|
87
|
+
if (converted !== undefined) {
|
|
88
|
+
result[key] = converted;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
return result;
|
|
92
|
+
}
|
|
93
|
+
return undefined;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Converts a configuration value to a string.
|
|
97
|
+
*
|
|
98
|
+
* This is primarily useful when generating environment-like output.
|
|
99
|
+
*/
|
|
100
|
+
export function configValueToString(value) {
|
|
101
|
+
if (value === undefined) {
|
|
102
|
+
return undefined;
|
|
103
|
+
}
|
|
104
|
+
if (value === null) {
|
|
105
|
+
return "null";
|
|
106
|
+
}
|
|
107
|
+
if (typeof value === "string") {
|
|
108
|
+
return value;
|
|
109
|
+
}
|
|
110
|
+
if (typeof value === "boolean") {
|
|
111
|
+
return value ? "true" : "false";
|
|
112
|
+
}
|
|
113
|
+
if (typeof value === "number") {
|
|
114
|
+
return String(value);
|
|
115
|
+
}
|
|
116
|
+
if (typeof value === "bigint") {
|
|
117
|
+
return `${value}n`;
|
|
118
|
+
}
|
|
119
|
+
if (value instanceof Date) {
|
|
120
|
+
return value.toISOString();
|
|
121
|
+
}
|
|
122
|
+
const json = toConfigJsonValue(value);
|
|
123
|
+
if (json === undefined) {
|
|
124
|
+
return undefined;
|
|
125
|
+
}
|
|
126
|
+
return JSON.stringify(json);
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Parses a primitive environment-style value.
|
|
130
|
+
*
|
|
131
|
+
* The parser intentionally does not aggressively infer numbers or
|
|
132
|
+
* booleans from arbitrary strings. Use the typed config resolvers
|
|
133
|
+
* when a specific type is required.
|
|
134
|
+
*/
|
|
135
|
+
export function parseConfigString(value) {
|
|
136
|
+
if (value === undefined) {
|
|
137
|
+
return undefined;
|
|
138
|
+
}
|
|
139
|
+
return value;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Parses a boolean configuration value.
|
|
143
|
+
*/
|
|
144
|
+
export function parseConfigBoolean(value) {
|
|
145
|
+
if (value === undefined) {
|
|
146
|
+
return undefined;
|
|
147
|
+
}
|
|
148
|
+
if (typeof value === "boolean") {
|
|
149
|
+
return value;
|
|
150
|
+
}
|
|
151
|
+
switch (value.trim().toLowerCase()) {
|
|
152
|
+
case "true":
|
|
153
|
+
case "1":
|
|
154
|
+
case "yes":
|
|
155
|
+
case "y":
|
|
156
|
+
case "on":
|
|
157
|
+
return true;
|
|
158
|
+
case "false":
|
|
159
|
+
case "0":
|
|
160
|
+
case "no":
|
|
161
|
+
case "n":
|
|
162
|
+
case "off":
|
|
163
|
+
return false;
|
|
164
|
+
default:
|
|
165
|
+
return undefined;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Parses a numeric configuration value.
|
|
170
|
+
*/
|
|
171
|
+
export function parseConfigNumber(value) {
|
|
172
|
+
if (value === undefined) {
|
|
173
|
+
return undefined;
|
|
174
|
+
}
|
|
175
|
+
if (typeof value === "number") {
|
|
176
|
+
return Number.isFinite(value) ? value : undefined;
|
|
177
|
+
}
|
|
178
|
+
const normalized = value.trim();
|
|
179
|
+
if (normalized.length === 0) {
|
|
180
|
+
return undefined;
|
|
181
|
+
}
|
|
182
|
+
const parsed = Number(normalized);
|
|
183
|
+
return Number.isFinite(parsed) ? parsed : undefined;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Parses a bigint configuration value.
|
|
187
|
+
*/
|
|
188
|
+
export function parseConfigBigInt(value) {
|
|
189
|
+
if (value === undefined) {
|
|
190
|
+
return undefined;
|
|
191
|
+
}
|
|
192
|
+
if (typeof value === "bigint") {
|
|
193
|
+
return value;
|
|
194
|
+
}
|
|
195
|
+
const normalized = value.trim();
|
|
196
|
+
if (normalized.length === 0) {
|
|
197
|
+
return undefined;
|
|
198
|
+
}
|
|
199
|
+
try {
|
|
200
|
+
return BigInt(normalized);
|
|
201
|
+
}
|
|
202
|
+
catch {
|
|
203
|
+
return undefined;
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Parses a Date configuration value.
|
|
208
|
+
*/
|
|
209
|
+
export function parseConfigDate(value) {
|
|
210
|
+
if (value === undefined) {
|
|
211
|
+
return undefined;
|
|
212
|
+
}
|
|
213
|
+
if (value instanceof Date) {
|
|
214
|
+
return Number.isNaN(value.getTime())
|
|
215
|
+
? undefined
|
|
216
|
+
: new Date(value.getTime());
|
|
217
|
+
}
|
|
218
|
+
const parsed = new Date(value);
|
|
219
|
+
return Number.isNaN(parsed.getTime()) ? undefined : parsed;
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Deeply freezes a configuration value.
|
|
223
|
+
*
|
|
224
|
+
* Configuration objects should normally be immutable after
|
|
225
|
+
* resolution to prevent accidental runtime mutation.
|
|
226
|
+
*/
|
|
227
|
+
export function freezeConfigValue(value) {
|
|
228
|
+
if (typeof value !== "object" || value === null) {
|
|
229
|
+
return value;
|
|
230
|
+
}
|
|
231
|
+
if (Object.isFrozen(value)) {
|
|
232
|
+
return value;
|
|
233
|
+
}
|
|
234
|
+
if (value instanceof Date) {
|
|
235
|
+
return Object.freeze(value);
|
|
236
|
+
}
|
|
237
|
+
for (const child of Object.values(value)) {
|
|
238
|
+
if (isConfigValue(child)) {
|
|
239
|
+
freezeConfigValue(child);
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
return Object.freeze(value);
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Deeply clones a configuration value.
|
|
246
|
+
*/
|
|
247
|
+
export function cloneConfigValue(value) {
|
|
248
|
+
if (value === null || value === undefined || typeof value !== "object") {
|
|
249
|
+
return value;
|
|
250
|
+
}
|
|
251
|
+
if (value instanceof Date) {
|
|
252
|
+
return new Date(value.getTime());
|
|
253
|
+
}
|
|
254
|
+
if (Array.isArray(value)) {
|
|
255
|
+
return value.map(cloneConfigValue);
|
|
256
|
+
}
|
|
257
|
+
if (isConfigObject(value)) {
|
|
258
|
+
const result = {};
|
|
259
|
+
for (const [key, child] of Object.entries(value)) {
|
|
260
|
+
result[key] = cloneConfigValue(child);
|
|
261
|
+
}
|
|
262
|
+
return result;
|
|
263
|
+
}
|
|
264
|
+
return value;
|
|
265
|
+
}
|
|
266
|
+
/**
|
|
267
|
+
* Compares two configuration values deeply.
|
|
268
|
+
*/
|
|
269
|
+
export function configValuesEqual(left, right) {
|
|
270
|
+
if (Object.is(left, right)) {
|
|
271
|
+
return true;
|
|
272
|
+
}
|
|
273
|
+
if (left instanceof Date && right instanceof Date) {
|
|
274
|
+
return left.getTime() === right.getTime();
|
|
275
|
+
}
|
|
276
|
+
if (Array.isArray(left) && Array.isArray(right)) {
|
|
277
|
+
if (left.length !== right.length) {
|
|
278
|
+
return false;
|
|
279
|
+
}
|
|
280
|
+
return left.every((value, index) => configValuesEqual(value, right[index]));
|
|
281
|
+
}
|
|
282
|
+
if (isConfigObject(left) && isConfigObject(right)) {
|
|
283
|
+
const leftKeys = Object.keys(left);
|
|
284
|
+
const rightKeys = Object.keys(right);
|
|
285
|
+
if (leftKeys.length !== rightKeys.length) {
|
|
286
|
+
return false;
|
|
287
|
+
}
|
|
288
|
+
return leftKeys.every((key) => Object.prototype.hasOwnProperty.call(right, key) &&
|
|
289
|
+
configValuesEqual(left[key], right[key]));
|
|
290
|
+
}
|
|
291
|
+
return false;
|
|
292
|
+
}
|
|
293
|
+
//# sourceMappingURL=configValue.core.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configValue.core.js","sourceRoot":"","sources":["../../src/configValue/configValue.core.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/configValue/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/configValue/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,uBAAuB,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @zudojs/config
|
|
3
|
+
*
|
|
4
|
+
* Layered configuration with sources, resolvers, and schema validation for the Zudojs framework.
|
|
5
|
+
*/
|
|
6
|
+
export * from "./configSchema/index.js";
|
|
7
|
+
export * from "./configResolver/index.js";
|
|
8
|
+
export * from "./configManager/index.js";
|
|
9
|
+
export * from "./configStore/index.js";
|
|
10
|
+
export * from "./configValue/index.js";
|
|
11
|
+
export * from "./configLoader/index.js";
|
|
12
|
+
export * from "./configSource/index.js";
|
|
13
|
+
export * from "./configEntry/index.js";
|
|
14
|
+
export * from "./configFactory/index.js";
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @zudojs/config
|
|
3
|
+
*
|
|
4
|
+
* Layered configuration with sources, resolvers, and schema validation for the Zudojs framework.
|
|
5
|
+
*/
|
|
6
|
+
export * from "./configSchema/index.js";
|
|
7
|
+
export * from "./configResolver/index.js";
|
|
8
|
+
export * from "./configManager/index.js";
|
|
9
|
+
export * from "./configStore/index.js";
|
|
10
|
+
export * from "./configValue/index.js";
|
|
11
|
+
export * from "./configLoader/index.js";
|
|
12
|
+
export * from "./configSource/index.js";
|
|
13
|
+
export * from "./configEntry/index.js";
|
|
14
|
+
export * from "./configFactory/index.js";
|
|
15
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@zudojs/config",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"description": "Layered configuration management with multiple sources, validation, and environment-specific overrides.",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"main": "./dist/index.js",
|
|
8
|
+
"module": "./dist/index.js",
|
|
9
|
+
"types": "./dist/index.d.ts",
|
|
10
|
+
"exports": {
|
|
11
|
+
".": {
|
|
12
|
+
"types": "./dist/index.d.ts",
|
|
13
|
+
"import": "./dist/index.js",
|
|
14
|
+
"default": "./dist/index.js"
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"files": [
|
|
18
|
+
"dist"
|
|
19
|
+
],
|
|
20
|
+
"engines": {
|
|
21
|
+
"node": ">=24.0.0"
|
|
22
|
+
},
|
|
23
|
+
"dependencies": {
|
|
24
|
+
"@zudojs/errors": "0.0.1"
|
|
25
|
+
},
|
|
26
|
+
"devDependencies": {
|
|
27
|
+
"typescript": "7.0.2",
|
|
28
|
+
"vitest": "^4.1.11"
|
|
29
|
+
},
|
|
30
|
+
"publishConfig": {
|
|
31
|
+
"access": "public"
|
|
32
|
+
},
|
|
33
|
+
"keywords": [
|
|
34
|
+
"zudojs",
|
|
35
|
+
"configuration",
|
|
36
|
+
"environment",
|
|
37
|
+
"settings"
|
|
38
|
+
],
|
|
39
|
+
"homepage": "https://github.com/oyinlola-tech/zudo#readme",
|
|
40
|
+
"repository": {
|
|
41
|
+
"type": "git",
|
|
42
|
+
"url": "https://github.com/oyinlola-tech/zudo"
|
|
43
|
+
},
|
|
44
|
+
"scripts": {
|
|
45
|
+
"build": "tsc -p tsconfig.json",
|
|
46
|
+
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
47
|
+
"clean": "rm -rf dist",
|
|
48
|
+
"test": "vitest run",
|
|
49
|
+
"test:watch": "vitest"
|
|
50
|
+
}
|
|
51
|
+
}
|