xypriss 9.9.5 → 9.9.6

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.
@@ -7,6 +7,7 @@ var System = require('../../xhsc/System.js');
7
7
  var xhsc = require('../../xhsc.js');
8
8
  var env = require('../../xhsc/api/env/env.js');
9
9
  var ProjectDiscovery = require('../../utils/ProjectDiscovery.js');
10
+ var ConfigSyntaxParser = require('../../utils/ConfigSyntaxParser.js');
10
11
 
11
12
  function _interopNamespaceDefault(e) {
12
13
  var n = Object.create(null);
@@ -254,51 +255,9 @@ class ConfigLoader {
254
255
  }
255
256
  }
256
257
  }
257
- getDeepValue(obj, path) {
258
- if (!obj)
259
- return undefined;
260
- const parts = path.split(".");
261
- let current = obj;
262
- for (const part of parts) {
263
- if (current === null || typeof current !== "object")
264
- return undefined;
265
- current = current[part];
266
- }
267
- return current;
268
- }
269
258
  resolveRefs(obj) {
270
- if (typeof obj === "string") {
271
- // 1. Resolve $(env).KEY or &(env).KEY
272
- let resolved = obj.replace(/([\$\&])\(env\)\.([\w\d_.-]+)/g, (match, prefix, key) => {
273
- if (!xhsc.__sys__.__env__.has(key)) {
274
- throw new Error(`Dynamic configuration error: Environment variable "${key}" not found`);
275
- }
276
- return xhsc.__sys__.__env__.get(key);
277
- });
278
- // 2. Resolve $(pkg).path or &(pkg).path
279
- resolved = resolved.replace(/([\$\&])\(pkg\)\.([\w\d_.-]+)/g, (match, prefix, propPath) => {
280
- if (!this.packageJson)
281
- return match;
282
- const val = this.getDeepValue(this.packageJson, propPath);
283
- if (val === undefined) {
284
- throw new Error(`Dynamic configuration error: Property "${propPath}" not found in package.json`);
285
- }
286
- return String(val);
287
- });
288
- return resolved;
289
- }
290
- else if (Array.isArray(obj)) {
291
- return obj.map((item) => this.resolveRefs(item));
292
- }
293
- else if (typeof obj === "object" && obj !== null) {
294
- const resolved = {};
295
- for (const key in obj) {
296
- const resolvedKey = this.resolveRefs(key);
297
- resolved[resolvedKey] = this.resolveRefs(obj[key]);
298
- }
299
- return resolved;
300
- }
301
- return obj;
259
+ const parser = new ConfigSyntaxParser.ConfigSyntaxParser(this.packageJson, xhsc.__sys__?.__env__);
260
+ return parser.resolve(obj);
302
261
  }
303
262
  resolveEnvRefs(obj) {
304
263
  return this.resolveRefs(obj);
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigLoader.js","sources":["../../../../../src/server/utils/ConfigLoader.ts"],"sourcesContent":[null],"names":["path","fs","getCallerProjectRoot","__sys__","logger","XyPrissFS","XY_XHSC_REGISTER_FS"],"mappings":"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"}
1
+ {"version":3,"file":"ConfigLoader.js","sources":["../../../../../src/server/utils/ConfigLoader.ts"],"sourcesContent":[null],"names":["path","fs","getCallerProjectRoot","__sys__","logger","XyPrissFS","XY_XHSC_REGISTER_FS","ConfigSyntaxParser"],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * **Config Syntax Parser**
5
+ *
6
+ * Handles resolution of dynamic references in configuration files:
7
+ * - `$(env).KEY` / `&(env).KEY` : Environment variables
8
+ * - `$(pkg).path` / `&(pkg).path` : package.json properties
9
+ */
10
+ class ConfigSyntaxParser {
11
+ constructor(packageJson = null, envProvider = null) {
12
+ this.packageJson = packageJson;
13
+ this.envProvider = envProvider;
14
+ }
15
+ /**
16
+ * Resolves all dynamic references in a configuration object or string.
17
+ */
18
+ resolve(obj) {
19
+ if (typeof obj === "string") {
20
+ return this.resolveString(obj);
21
+ }
22
+ else if (Array.isArray(obj)) {
23
+ return obj.map((item) => this.resolve(item));
24
+ }
25
+ else if (typeof obj === "object" && obj !== null) {
26
+ const resolved = {};
27
+ for (const key in obj) {
28
+ const resolvedKey = this.resolve(key);
29
+ resolved[resolvedKey] = this.resolve(obj[key]);
30
+ }
31
+ return resolved;
32
+ }
33
+ return obj;
34
+ }
35
+ /**
36
+ * Resolves dynamic references in a string.
37
+ */
38
+ resolveString(value) {
39
+ let resolved = value;
40
+ // 1. Resolve $(env).KEY or &(env).KEY
41
+ resolved = resolved.replace(/([\$\&])\(env\)\.([\w\d_.-]+)/g, (match, _prefix, key) => {
42
+ const env = this.envProvider;
43
+ if (!env)
44
+ return match; // Fallback to original if no env provider
45
+ if (!env.has(key)) {
46
+ throw new Error(`Dynamic configuration error: Environment variable "${key}" not found`);
47
+ }
48
+ return env.get(key);
49
+ });
50
+ // 2. Resolve $(pkg).path or &(pkg).path
51
+ resolved = resolved.replace(/([\$\&])\(pkg\)\.([\w\d_.-]+)/g, (_match, _prefix, propPath) => {
52
+ if (!this.packageJson)
53
+ return _match;
54
+ const val = this.getDeepValue(this.packageJson, propPath);
55
+ if (val === undefined) {
56
+ throw new Error(`Dynamic configuration error: Property "${propPath}" not found in package.json`);
57
+ }
58
+ return String(val);
59
+ });
60
+ return resolved;
61
+ }
62
+ /**
63
+ * Retrieves a value from a nested object using dot notation.
64
+ */
65
+ getDeepValue(obj, path) {
66
+ if (!obj)
67
+ return undefined;
68
+ const parts = path.split(".");
69
+ let current = obj;
70
+ for (const part of parts) {
71
+ if (current === null || typeof current !== "object")
72
+ return undefined;
73
+ current = current[part];
74
+ }
75
+ return current;
76
+ }
77
+ }
78
+
79
+ exports.ConfigSyntaxParser = ConfigSyntaxParser;
80
+ //# sourceMappingURL=ConfigSyntaxParser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigSyntaxParser.js","sources":["../../../../src/utils/ConfigSyntaxParser.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;;;;;;AAMG;MACU,kBAAkB,CAAA;AAC3B,IAAA,WAAA,CACqB,WAAA,GAAmB,IAAI,EACvB,WAAA,GAA0F,IAAI,EAAA;QAD9F,IAAA,CAAA,WAAW,GAAX,WAAW;QACX,IAAA,CAAA,WAAW,GAAX,WAAW;IAC7B;AAEH;;AAEG;AACI,IAAA,OAAO,CAAC,GAAQ,EAAA;AACnB,QAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;AACzB,YAAA,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC;QAClC;AAAO,aAAA,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;AAC3B,YAAA,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD;aAAO,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE;YAChD,MAAM,QAAQ,GAAQ,EAAE;AACxB,YAAA,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE;gBACnB,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;AACrC,gBAAA,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClD;AACA,YAAA,OAAO,QAAQ;QACnB;AACA,QAAA,OAAO,GAAG;IACd;AAEA;;AAEG;AACK,IAAA,aAAa,CAAC,KAAa,EAAA;QAC/B,IAAI,QAAQ,GAAG,KAAK;;AAGpB,QAAA,QAAQ,GAAG,QAAQ,CAAC,OAAO,CACvB,gCAAgC,EAChC,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,KAAI;AACpB,YAAA,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW;AAC5B,YAAA,IAAI,CAAC,GAAG;gBAAE,OAAO,KAAK,CAAC;YAEvB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AACf,gBAAA,MAAM,IAAI,KAAK,CACX,sDAAsD,GAAG,CAAA,WAAA,CAAa,CACzE;YACL;AACA,YAAA,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAE;AACxB,QAAA,CAAC,CACJ;;AAGD,QAAA,QAAQ,GAAG,QAAQ,CAAC,OAAO,CACvB,gCAAgC,EAChC,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,KAAI;YAC1B,IAAI,CAAC,IAAI,CAAC,WAAW;AAAE,gBAAA,OAAO,MAAM;AACpC,YAAA,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC;AACzD,YAAA,IAAI,GAAG,KAAK,SAAS,EAAE;AACnB,gBAAA,MAAM,IAAI,KAAK,CACX,0CAA0C,QAAQ,CAAA,2BAAA,CAA6B,CAClF;YACL;AACA,YAAA,OAAO,MAAM,CAAC,GAAG,CAAC;AACtB,QAAA,CAAC,CACJ;AAED,QAAA,OAAO,QAAQ;IACnB;AAEA;;AAEG;IACK,YAAY,CAAC,GAAQ,EAAE,IAAY,EAAA;AACvC,QAAA,IAAI,CAAC,GAAG;AAAE,YAAA,OAAO,SAAS;QAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QAC7B,IAAI,OAAO,GAAG,GAAG;AACjB,QAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;AACtB,YAAA,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ;AAAE,gBAAA,OAAO,SAAS;AACrE,YAAA,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;QAC3B;AACA,QAAA,OAAO,OAAO;IAClB;AACH;;;;"}
@@ -2,6 +2,7 @@
2
2
 
3
3
  var fs = require('fs');
4
4
  var path = require('path');
5
+ var ConfigSyntaxParser = require('./ConfigSyntaxParser.js');
5
6
 
6
7
  /**
7
8
  * Checks if a directory is a "Real Project" root based on hierarchical criteria.
@@ -158,7 +159,20 @@ function loadXyConfig(projectRoot) {
158
159
  const clean = raw
159
160
  .replace(/("(?:[^"\\]|\\.)*")|\/\/.*|\/\*[\s\S]*?\*\//g, (m, g) => (g ? g : ""))
160
161
  .replace(/("(?:[^"\\]|\\.)*")|,\s*([}\]])/g, (m, g1, g2) => g1 ? g1 : g2);
161
- return JSON.parse(clean);
162
+ const rawJson = JSON.parse(clean);
163
+ // Load package.json from the same directory for resolution
164
+ let pkgJson = null;
165
+ const pkgPath = path.join(projectRoot, "package.json");
166
+ if (fs.existsSync(pkgPath)) {
167
+ try {
168
+ pkgJson = JSON.parse(fs.readFileSync(pkgPath, "utf-8"));
169
+ }
170
+ catch { /* ignore */ }
171
+ }
172
+ // Resolve references $(pkg), $(env), etc.
173
+ const sys = globalThis.__sys__;
174
+ const parser = new ConfigSyntaxParser.ConfigSyntaxParser(pkgJson, sys?.__env__);
175
+ return parser.resolve(rawJson);
162
176
  }
163
177
  catch (e) {
164
178
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectDiscovery.js","sources":["../../../../src/utils/ProjectDiscovery.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProjectDiscovery.js","sources":["../../../../src/utils/ProjectDiscovery.ts"],"sourcesContent":[null],"names":["ConfigSyntaxParser"],"mappings":"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"}
@@ -5,6 +5,7 @@ import { XyPrissFS } from '../../xhsc/System.js';
5
5
  import { __sys__ } from '../../xhsc.js';
6
6
  import { XY_XHSC_REGISTER_FS } from '../../xhsc/api/env/env.js';
7
7
  import { getCallerProjectRoot } from '../../utils/ProjectDiscovery.js';
8
+ import { ConfigSyntaxParser } from '../../utils/ConfigSyntaxParser.js';
8
9
 
9
10
  /**
10
11
  * XyPriss Configuration Loader
@@ -232,51 +233,9 @@ class ConfigLoader {
232
233
  }
233
234
  }
234
235
  }
235
- getDeepValue(obj, path) {
236
- if (!obj)
237
- return undefined;
238
- const parts = path.split(".");
239
- let current = obj;
240
- for (const part of parts) {
241
- if (current === null || typeof current !== "object")
242
- return undefined;
243
- current = current[part];
244
- }
245
- return current;
246
- }
247
236
  resolveRefs(obj) {
248
- if (typeof obj === "string") {
249
- // 1. Resolve $(env).KEY or &(env).KEY
250
- let resolved = obj.replace(/([\$\&])\(env\)\.([\w\d_.-]+)/g, (match, prefix, key) => {
251
- if (!__sys__.__env__.has(key)) {
252
- throw new Error(`Dynamic configuration error: Environment variable "${key}" not found`);
253
- }
254
- return __sys__.__env__.get(key);
255
- });
256
- // 2. Resolve $(pkg).path or &(pkg).path
257
- resolved = resolved.replace(/([\$\&])\(pkg\)\.([\w\d_.-]+)/g, (match, prefix, propPath) => {
258
- if (!this.packageJson)
259
- return match;
260
- const val = this.getDeepValue(this.packageJson, propPath);
261
- if (val === undefined) {
262
- throw new Error(`Dynamic configuration error: Property "${propPath}" not found in package.json`);
263
- }
264
- return String(val);
265
- });
266
- return resolved;
267
- }
268
- else if (Array.isArray(obj)) {
269
- return obj.map((item) => this.resolveRefs(item));
270
- }
271
- else if (typeof obj === "object" && obj !== null) {
272
- const resolved = {};
273
- for (const key in obj) {
274
- const resolvedKey = this.resolveRefs(key);
275
- resolved[resolvedKey] = this.resolveRefs(obj[key]);
276
- }
277
- return resolved;
278
- }
279
- return obj;
237
+ const parser = new ConfigSyntaxParser(this.packageJson, __sys__?.__env__);
238
+ return parser.resolve(obj);
280
239
  }
281
240
  resolveEnvRefs(obj) {
282
241
  return this.resolveRefs(obj);
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigLoader.js","sources":["../../../../../src/server/utils/ConfigLoader.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConfigLoader.js","sources":["../../../../../src/server/utils/ConfigLoader.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * **Config Syntax Parser**
3
+ *
4
+ * Handles resolution of dynamic references in configuration files:
5
+ * - `$(env).KEY` / `&(env).KEY` : Environment variables
6
+ * - `$(pkg).path` / `&(pkg).path` : package.json properties
7
+ */
8
+ class ConfigSyntaxParser {
9
+ constructor(packageJson = null, envProvider = null) {
10
+ this.packageJson = packageJson;
11
+ this.envProvider = envProvider;
12
+ }
13
+ /**
14
+ * Resolves all dynamic references in a configuration object or string.
15
+ */
16
+ resolve(obj) {
17
+ if (typeof obj === "string") {
18
+ return this.resolveString(obj);
19
+ }
20
+ else if (Array.isArray(obj)) {
21
+ return obj.map((item) => this.resolve(item));
22
+ }
23
+ else if (typeof obj === "object" && obj !== null) {
24
+ const resolved = {};
25
+ for (const key in obj) {
26
+ const resolvedKey = this.resolve(key);
27
+ resolved[resolvedKey] = this.resolve(obj[key]);
28
+ }
29
+ return resolved;
30
+ }
31
+ return obj;
32
+ }
33
+ /**
34
+ * Resolves dynamic references in a string.
35
+ */
36
+ resolveString(value) {
37
+ let resolved = value;
38
+ // 1. Resolve $(env).KEY or &(env).KEY
39
+ resolved = resolved.replace(/([\$\&])\(env\)\.([\w\d_.-]+)/g, (match, _prefix, key) => {
40
+ const env = this.envProvider;
41
+ if (!env)
42
+ return match; // Fallback to original if no env provider
43
+ if (!env.has(key)) {
44
+ throw new Error(`Dynamic configuration error: Environment variable "${key}" not found`);
45
+ }
46
+ return env.get(key);
47
+ });
48
+ // 2. Resolve $(pkg).path or &(pkg).path
49
+ resolved = resolved.replace(/([\$\&])\(pkg\)\.([\w\d_.-]+)/g, (_match, _prefix, propPath) => {
50
+ if (!this.packageJson)
51
+ return _match;
52
+ const val = this.getDeepValue(this.packageJson, propPath);
53
+ if (val === undefined) {
54
+ throw new Error(`Dynamic configuration error: Property "${propPath}" not found in package.json`);
55
+ }
56
+ return String(val);
57
+ });
58
+ return resolved;
59
+ }
60
+ /**
61
+ * Retrieves a value from a nested object using dot notation.
62
+ */
63
+ getDeepValue(obj, path) {
64
+ if (!obj)
65
+ return undefined;
66
+ const parts = path.split(".");
67
+ let current = obj;
68
+ for (const part of parts) {
69
+ if (current === null || typeof current !== "object")
70
+ return undefined;
71
+ current = current[part];
72
+ }
73
+ return current;
74
+ }
75
+ }
76
+
77
+ export { ConfigSyntaxParser };
78
+ //# sourceMappingURL=ConfigSyntaxParser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigSyntaxParser.js","sources":["../../../../src/utils/ConfigSyntaxParser.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA;;;;;;AAMG;MACU,kBAAkB,CAAA;AAC3B,IAAA,WAAA,CACqB,WAAA,GAAmB,IAAI,EACvB,WAAA,GAA0F,IAAI,EAAA;QAD9F,IAAA,CAAA,WAAW,GAAX,WAAW;QACX,IAAA,CAAA,WAAW,GAAX,WAAW;IAC7B;AAEH;;AAEG;AACI,IAAA,OAAO,CAAC,GAAQ,EAAA;AACnB,QAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;AACzB,YAAA,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC;QAClC;AAAO,aAAA,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;AAC3B,YAAA,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD;aAAO,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE;YAChD,MAAM,QAAQ,GAAQ,EAAE;AACxB,YAAA,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE;gBACnB,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;AACrC,gBAAA,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClD;AACA,YAAA,OAAO,QAAQ;QACnB;AACA,QAAA,OAAO,GAAG;IACd;AAEA;;AAEG;AACK,IAAA,aAAa,CAAC,KAAa,EAAA;QAC/B,IAAI,QAAQ,GAAG,KAAK;;AAGpB,QAAA,QAAQ,GAAG,QAAQ,CAAC,OAAO,CACvB,gCAAgC,EAChC,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,KAAI;AACpB,YAAA,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW;AAC5B,YAAA,IAAI,CAAC,GAAG;gBAAE,OAAO,KAAK,CAAC;YAEvB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AACf,gBAAA,MAAM,IAAI,KAAK,CACX,sDAAsD,GAAG,CAAA,WAAA,CAAa,CACzE;YACL;AACA,YAAA,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAE;AACxB,QAAA,CAAC,CACJ;;AAGD,QAAA,QAAQ,GAAG,QAAQ,CAAC,OAAO,CACvB,gCAAgC,EAChC,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,KAAI;YAC1B,IAAI,CAAC,IAAI,CAAC,WAAW;AAAE,gBAAA,OAAO,MAAM;AACpC,YAAA,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC;AACzD,YAAA,IAAI,GAAG,KAAK,SAAS,EAAE;AACnB,gBAAA,MAAM,IAAI,KAAK,CACX,0CAA0C,QAAQ,CAAA,2BAAA,CAA6B,CAClF;YACL;AACA,YAAA,OAAO,MAAM,CAAC,GAAG,CAAC;AACtB,QAAA,CAAC,CACJ;AAED,QAAA,OAAO,QAAQ;IACnB;AAEA;;AAEG;IACK,YAAY,CAAC,GAAQ,EAAE,IAAY,EAAA;AACvC,QAAA,IAAI,CAAC,GAAG;AAAE,YAAA,OAAO,SAAS;QAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QAC7B,IAAI,OAAO,GAAG,GAAG;AACjB,QAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;AACtB,YAAA,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ;AAAE,gBAAA,OAAO,SAAS;AACrE,YAAA,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;QAC3B;AACA,QAAA,OAAO,OAAO;IAClB;AACH;;;;"}
@@ -1,5 +1,6 @@
1
1
  import fs__default from 'fs';
2
2
  import path__default from 'path';
3
+ import { ConfigSyntaxParser } from './ConfigSyntaxParser.js';
3
4
 
4
5
  /**
5
6
  * Checks if a directory is a "Real Project" root based on hierarchical criteria.
@@ -156,7 +157,20 @@ function loadXyConfig(projectRoot) {
156
157
  const clean = raw
157
158
  .replace(/("(?:[^"\\]|\\.)*")|\/\/.*|\/\*[\s\S]*?\*\//g, (m, g) => (g ? g : ""))
158
159
  .replace(/("(?:[^"\\]|\\.)*")|,\s*([}\]])/g, (m, g1, g2) => g1 ? g1 : g2);
159
- return JSON.parse(clean);
160
+ const rawJson = JSON.parse(clean);
161
+ // Load package.json from the same directory for resolution
162
+ let pkgJson = null;
163
+ const pkgPath = path__default.join(projectRoot, "package.json");
164
+ if (fs__default.existsSync(pkgPath)) {
165
+ try {
166
+ pkgJson = JSON.parse(fs__default.readFileSync(pkgPath, "utf-8"));
167
+ }
168
+ catch { /* ignore */ }
169
+ }
170
+ // Resolve references $(pkg), $(env), etc.
171
+ const sys = globalThis.__sys__;
172
+ const parser = new ConfigSyntaxParser(pkgJson, sys?.__env__);
173
+ return parser.resolve(rawJson);
160
174
  }
161
175
  catch (e) {
162
176
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectDiscovery.js","sources":["../../../../src/utils/ProjectDiscovery.ts"],"sourcesContent":[null],"names":["path","fs"],"mappings":"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"}
1
+ {"version":3,"file":"ProjectDiscovery.js","sources":["../../../../src/utils/ProjectDiscovery.ts"],"sourcesContent":[null],"names":["path","fs"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -8414,12 +8414,6 @@ interface XyApp {
8414
8414
  connect(path: string, ...handlers: RequestHandler[]): void;
8415
8415
  trace(path: string, ...handlers: RequestHandler[]): void;
8416
8416
  all(path: string, ...handlers: RequestHandler[]): void;
8417
- /**
8418
- * Map a path to a static directory.
8419
- * @param path - URL prefix
8420
- * @param filePath - Local directory path
8421
- */
8422
- static(path: string, filePath: string): void;
8423
8417
  /**
8424
8418
  * Register a route-level redirect from one path to another path or external URL.
8425
8419
  *
package/package.json CHANGED
@@ -70,5 +70,5 @@
70
70
  },
71
71
  "type": "module",
72
72
  "types": "./dist/index.d.ts",
73
- "version": "9.9.5"
73
+ "version": "9.9.6"
74
74
  }