configorama 0.10.4 → 0.11.0

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/cli.js CHANGED
@@ -215,6 +215,7 @@ if (argv._.length) {
215
215
 
216
216
  // Set -- flags as options
217
217
  options.options = rest
218
+ options.handleSignalEvents = true
218
219
 
219
220
  // Process the configuration
220
221
  configorama(inputFile, options)
package/index.d.ts CHANGED
@@ -75,6 +75,8 @@ interface ConfigoramaSettings {
75
75
  mergeKeys?: string[]
76
76
  /** Map of file paths to override */
77
77
  filePathOverrides?: Record<string, string>
78
+ /** Install Configorama CLI signal handlers. Defaults to false for library calls. */
79
+ handleSignalEvents?: boolean
78
80
  }
79
81
 
80
82
  interface ConfigoramaResult<T = any> {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "configorama",
3
- "version": "0.10.4",
3
+ "version": "0.11.0",
4
4
  "description": "Variable support for configuration files",
5
5
  "main": "src/index.js",
6
6
  "types": "index.d.ts",
package/src/index.js CHANGED
@@ -22,6 +22,7 @@ const { buildVariableSyntax } = require('./utils/variables/variableUtils')
22
22
  * @property {boolean} [dotEnvDebug] - enable env-stage-loader debug logs when useDotenv/useDotEnv is enabled
23
23
  * @property {string[]} [mergeKeys] - keys to merge in arrays of objects
24
24
  * @property {Object.<string, string>} [filePathOverrides] - map of file paths to override
25
+ * @property {boolean} [handleSignalEvents] - install Configorama CLI signal handlers. Defaults to false for library calls.
25
26
  */
26
27
 
27
28
  /**
package/src/main.js CHANGED
@@ -138,8 +138,8 @@ let DEBUG_TYPE = false
138
138
 
139
139
  class Configorama {
140
140
  constructor(fileOrObject, opts) {
141
- /* attach sig events on async calls */
142
- if (opts && !opts.sync) {
141
+ /* CLI-only by default. Library consumers should not get process-level signal handlers. */
142
+ if (opts && opts.handleSignalEvents && !opts.sync) {
143
143
  handleSignalEvents()
144
144
  }
145
145
 
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Display "No Variables Found" message
3
+ * @param {string} configFilePath
4
+ * @param {RegExp} variableSyntax
5
+ * @param {Object} variableTypes
6
+ */
7
+ export function displayNoVariablesFound(configFilePath: string, variableSyntax: RegExp, variableTypes: any): void;
8
+ /**
9
+ * Display variable details in stacked box format
10
+ * @param {Object} params
11
+ * @param {string[]} params.varKeys
12
+ * @param {Object} params.variableData
13
+ * @param {Object} params.uniqueVariables
14
+ * @param {RegExp} params.varPrefixPattern
15
+ * @param {RegExp} params.varSuffixPattern
16
+ * @param {string[]} params.lines
17
+ * @param {string} params.fileType
18
+ * @param {string} params.configFilePath
19
+ */
20
+ export function displayVariableDetails({ varKeys, variableData, uniqueVariables, varPrefixPattern, varSuffixPattern, lines, fileType, configFilePath }: {
21
+ varKeys: string[];
22
+ variableData: any;
23
+ uniqueVariables: any;
24
+ varPrefixPattern: RegExp;
25
+ varSuffixPattern: RegExp;
26
+ lines: string[];
27
+ fileType: string;
28
+ configFilePath: string;
29
+ }): void;
30
+ /**
31
+ * Display unique variables in stacked box format
32
+ * @param {Object} params
33
+ * @param {string[]} params.uniqueVarKeys
34
+ * @param {Object} params.uniqueVariables
35
+ * @param {string[]} params.lines
36
+ * @param {string} params.fileType
37
+ * @param {string} params.configFilePath
38
+ */
39
+ export function displayUniqueVariables({ uniqueVarKeys, uniqueVariables, lines, fileType, configFilePath }: {
40
+ uniqueVarKeys: string[];
41
+ uniqueVariables: any;
42
+ lines: string[];
43
+ fileType: string;
44
+ configFilePath: string;
45
+ }): void;
46
+ /**
47
+ * Display configurable variables grouped by source type
48
+ * @param {Object} params
49
+ * @param {string[]} params.uniqueVarKeys
50
+ * @param {Object} params.uniqueVariables
51
+ * @param {string[]} params.lines
52
+ * @param {string} params.fileType
53
+ * @param {string} params.configFilePath
54
+ */
55
+ export function displayConfigurableVariables({ uniqueVarKeys, uniqueVariables, lines, fileType, configFilePath }: {
56
+ uniqueVarKeys: string[];
57
+ uniqueVariables: any;
58
+ lines: string[];
59
+ fileType: string;
60
+ configFilePath: string;
61
+ }): void;
62
+ //# sourceMappingURL=display.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display.d.ts","sourceRoot":"","sources":["../../src/display.js"],"names":[],"mappings":"AAcA;;;;;GAKG;AACH,wDAJW,MAAM,kBACN,MAAM,4BAwBhB;AAED;;;;;;;;;;;GAWG;AACH,wJATG;IAAyB,OAAO,EAAxB,MAAM,EAAE;IACO,YAAY;IACZ,eAAe;IACf,gBAAgB,EAA/B,MAAM;IACS,gBAAgB,EAA/B,MAAM;IACW,KAAK,EAAtB,MAAM,EAAE;IACO,QAAQ,EAAvB,MAAM;IACS,cAAc,EAA7B,MAAM;CAChB,QAyJA;AAED;;;;;;;;GAQG;AACH,4GANG;IAAyB,aAAa,EAA9B,MAAM,EAAE;IACO,eAAe;IACb,KAAK,EAAtB,MAAM,EAAE;IACO,QAAQ,EAAvB,MAAM;IACS,cAAc,EAA7B,MAAM;CAChB,QAiHA;AAED;;;;;;;;GAQG;AACH,kHANG;IAAyB,aAAa,EAA9B,MAAM,EAAE;IACO,eAAe;IACb,KAAK,EAAtB,MAAM,EAAE;IACO,QAAQ,EAAvB,MAAM;IACS,cAAc,EAA7B,MAAM;CAChB,QAyIA"}
@@ -49,6 +49,18 @@ type ConfigoramaSettings = {
49
49
  * - allow undefined values to pass through without throwing errors
50
50
  */
51
51
  allowUndefinedValues?: boolean;
52
+ /**
53
+ * - glob-like config paths whose values should be left verbatim
54
+ */
55
+ ignorePaths?: string[];
56
+ /**
57
+ * - alias for ignorePaths
58
+ */
59
+ skipResolutionPaths?: string[];
60
+ /**
61
+ * - disable built-in CloudFormation and embedded-code ignore paths
62
+ */
63
+ disableDefaultIgnorePaths?: boolean;
52
64
  /**
53
65
  * - values passed into .js config files if user using javascript config
54
66
  */
@@ -57,6 +69,14 @@ type ConfigoramaSettings = {
57
69
  * - return both config and metadata about variables found
58
70
  */
59
71
  returnMetadata?: boolean;
72
+ /**
73
+ * - suppress env-stage-loader logs when useDotenv/useDotEnv is enabled
74
+ */
75
+ dotEnvSilent?: boolean;
76
+ /**
77
+ * - enable env-stage-loader debug logs when useDotenv/useDotEnv is enabled
78
+ */
79
+ dotEnvDebug?: boolean;
60
80
  /**
61
81
  * - keys to merge in arrays of objects
62
82
  */
@@ -67,6 +87,10 @@ type ConfigoramaSettings = {
67
87
  filePathOverrides?: {
68
88
  [x: string]: string;
69
89
  };
90
+ /**
91
+ * - install Configorama CLI signal handlers. Defaults to false for library calls.
92
+ */
93
+ handleSignalEvents?: boolean;
70
94
  };
71
95
  type ConfigoramaResult<T = any> = {
72
96
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.js"],"names":[],"mappings":";;;AAuCiB,0BALH,CAAC,4BACJ,MAAM,MAAO,aACb,mBAAmB,GACjB,OAAO,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAiD7C;;IASqB,qBALR,CAAC,4BACJ,MAAM,MAAO,aACb,mBAAmB,GACjB,CAAC,CAgBb;IAQwB,4CAJb,MAAM,GAAC,MAAM,aACd,MAAM,gBAUhB;;;;;;;;;;;;;;;;aApHa,MAAM;;;;gBACN,MAAM;;;;;;;;;;;;;;;;;;;;uBAIN,OAAO;;;;2BACP,OAAO;;;;kBACP,cAAe;;;;qBACf,OAAO;;;;gBACP,MAAM,EAAE;;;;;;;;uBAKR,CAAC;;;;oBAED,MAAM;;;;;;;;;;YAEN,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.js"],"names":[],"mappings":";;;AA6CiB,0BALH,CAAC,4BACJ,MAAM,MAAO,aACb,mBAAmB,GACjB,OAAO,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAiD7C;;IASqB,qBALR,CAAC,4BACJ,MAAM,MAAO,aACb,mBAAmB,GACjB,CAAC,CAgBb;IAQwB,4CAJb,MAAM,GAAC,MAAM,aACd,MAAM,gBAUhB;;;;;;;;;;;;;;;;aA1Ha,MAAM;;;;gBACN,MAAM;;;;;;;;;;;;;;;;;;;;uBAIN,OAAO;;;;2BACP,OAAO;;;;kBACP,MAAM,EAAE;;;;0BACR,MAAM,EAAE;;;;gCACR,OAAO;;;;kBACP,cAAe;;;;qBACf,OAAO;;;;mBACP,OAAO;;;;kBACP,OAAO;;;;gBACP,MAAM,EAAE;;;;;;;;;;yBAER,OAAO;;uBAIP,CAAC;;;;oBAED,MAAM;;;;;;;;;;YAEN,CAAC"}
@@ -4,15 +4,21 @@ declare class Configorama {
4
4
  settings: any;
5
5
  filterCache: {};
6
6
  _originalValueCache: Map<any, any>;
7
+ _resolvedPaths: Set<any>;
8
+ _fileContentCache: Map<any, any>;
9
+ _needsRawClone: boolean;
7
10
  foundVariables: any[];
8
11
  fileRefsFound: any[];
9
12
  resolutionTracking: {};
13
+ _trackCalls: boolean;
10
14
  variableSyntax: RegExp;
15
+ variableSyntaxTest: RegExp;
11
16
  varPrefix: string;
12
17
  varSuffix: string;
13
18
  varPrefixPattern: RegExp;
14
19
  varSuffixPattern: RegExp;
15
20
  varSuffixWithSpacePattern: RegExp;
21
+ ignorePathPatterns: string[][];
16
22
  rawOriginalConfig: any;
17
23
  config: any;
18
24
  originalConfig: any;
@@ -64,22 +70,7 @@ declare class Configorama {
64
70
  * @returns {object} Metadata object containing variables, fileRefs, and summary
65
71
  */
66
72
  collectVariableMetadata(): object;
67
- _cachedMetadata: {
68
- variables: {};
69
- uniqueVariables: {};
70
- fileDependencies: {
71
- globPatterns: any[];
72
- dynamicPaths: any[];
73
- resolvedPaths: any[];
74
- byConfigPath: any[];
75
- references: any[];
76
- };
77
- summary: {
78
- totalVariables: number;
79
- requiredVariables: number;
80
- variablesWithDefaults: number;
81
- };
82
- };
73
+ _cachedMetadata: any;
83
74
  /**
84
75
  * Populate the variables in the given object.
85
76
  * @param objectToPopulate The object to populate variables within.
@@ -87,6 +78,7 @@ declare class Configorama {
87
78
  */
88
79
  populateObject(objectToPopulate: any): Promise<any>;
89
80
  populateObjectImpl(objectToPopulate: any): any;
81
+ shouldSkipResolution(pathValue: any): any;
90
82
  /**
91
83
  * The declaration of a terminal property. This declaration includes the path and value of the
92
84
  * property.
@@ -1 +1 @@
1
- {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/main.js"],"names":[],"mappings":";AA0GA;IACE,0CA2dC;IAndC,cAcW;IAuBX,gBAAqB;IAErB,mCAAoC;IAEpC,sBAAwB;IACxB,qBAAuB;IAGvB,uBAA4B;IAsB5B,uBAAoC;IAIpC,kBAAqC;IACrC,kBAAqC;IAErC,yBAA+F;IAC/F,yBAAuD;IACvD,kCAAyE;IAKvE,uBAAgD;IAKhD,YAAuB;IAEvB,oBAA0C;IAE1C,gBAAoD;IAOpD,uBAAkC;IAElC,uBAA8B;IAE9B,uBAAkC;IASpC,wBAAmC;IAGnC,mBAqHC;IAwED,4BAA8C;IAG9C,iCAAkC;IAalC,aA2EC;IAUD,oBAEC;IAGD,eAiDC;IAOD,YAAc;IACd,cAAgB;IAChB,kBAAkB;IAGpB;;;;OAIG;IACH,0BAHW,MAAM,GACJ,OAAO,CAQnB;IAED;;;;OAIG;IACH,6BAHW,MAAM,GACJ,MAAM,GAAC,IAAI,CAOvB;IAED;;;;OAIG;IACH,gCAHW,MAAM,GACJ,OAAO,CA2BnB;IAKD;;;;;OAKG;IACH,oBAFa,OAAO,CAAC,GAAG,CAAC,CA6vBxB;IA1vBC,aAA4B;IAc1B,2BAA4B;IAmB1B,sBAA0C;IAC1C,4BAAkC;IA0tBxC;;;OAGG;IACH,2BAFa,MAAM,CA6alB;IAvBC;;;;;;;;;;;;;;;MAoBC;IAIH;;;;OAIG;IACH,uCAFa,OAAO,CAAC,GAAG,CAAC,CAIxB;IACD,+CAsBC;IAKD;;;;;;;;;;;;;;;;;;;OAmBG;IACH;;;;;;;;;;;OAWG;IACH,mFAHa;;;;cAZC,QAAQ;;;;eACR,IAAI,GAAC,MAAM,SAAO;OAWD,CA6E9B;IACD;;;OAGG;IACH;;;;;OAKG;IACH,oCAHa,OAAO,CAAC;;;;cAjGP,QAAQ;;;;eACR,IAAI,GAAC,MAAM,SAAO;OAgGgB,CAAC,EAAE,CA6BlD;IACD;;;;;OAKG;IACH,iDAFa,OAAO,CAAC,IAAI,CAAC,CAWzB;IAID;;;;;OAKG;IACH;;;;OAIG;IACH,2BAFa,eAAc;;;;;;;;;;OAAa,CAavC;IACD;;;;;OAKG;IACH,yBAHW;;;;;;;;;;OAAa,gCACX,cAAS,CAOrB;IACD;;;;;;OAMG;IACH,6DAFa,GAAC,CAiLb;IAKD;;;;;;;OAOG;IACH,yDAHa,OAAO,CAAC,GAAG,CAAC,CAiCxB;IACD;;;;OAIG;IAOH;;;;;;OAMG;IACH,wFA2BC;IACD;;;;;;;;;;;OAWG;IACH,8BARG;QAAyB,KAAK,EAAtB,GAAG;QACoB,IAAI,GAA3B,MAAM,EAAE;QACa,cAAc,GAAnC,MAAM;QACc,iBAAiB;KAC7C,6CAEU;QAAC,KAAK,EAAE,GAAG,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAC;QAAC,iBAAiB,CAAC,QAAQ;QAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAC,CAsa9J;IAID;;;;;;;;OAQG;IACH,qEAHa,OAAO,CAAC,GAAG,CAAC,CAoExB;IAKD;;;;;;;OAOG;IACH,0FAFa,OAAO,CAAC,GAAG,CAAC,CAiiBxB;IACD,+EA+BC;IACD,yDAiBC;IACD,oEA6BC;IAKD,8CAQC;IACD,kDAyBC;IACD;;;;;;;;;;;;;OAaG;IACH,wEAoDC;IAKD,4BAOC;IACD,sCAqEC;CACF"}
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/main.js"],"names":[],"mappings":";AA0IA;IACE,0CA8fC;IAtfC,cAuBW;IAuBX,gBAAqB;IAErB,mCAAoC;IAGpC,yBAA+B;IAG/B,iCAAkC;IAMlC,wBAIC;IAED,sBAAwB;IACxB,qBAAuB;IAGvB,uBAA4B;IAE5B,qBAAmD;IAuBnD,uBAAoC;IAIpC,2BAAkG;IAIlG,kBAAqC;IACrC,kBAAqC;IAErC,yBAA+F;IAC/F,yBAAuD;IACvD,kCAAyE;IACzE,+BAAiF;IAM7E,uBAAgD;IAMlD,YAAuB;IAEvB,oBAA0C;IAE1C,gBAAoD;IAOpD,uBAAkC;IAElC,uBAA8B;IAE9B,uBAAkC;IASpC,wBAAmC;IAGnC,mBAqHC;IAwED,4BAA8C;IAG9C,iCAAkC;IAalC,aA2EC;IAUD,oBAEC;IAGD,eAiDC;IAOD,YAAc;IACd,cAAgB;IAChB,kBAAkB;IAGpB;;;;OAIG;IACH,0BAHW,MAAM,GACJ,OAAO,CAQnB;IAED;;;;OAIG;IACH,6BAHW,MAAM,GACJ,MAAM,GAAC,IAAI,CAOvB;IAED;;;;OAIG;IACH,gCAHW,MAAM,GACJ,OAAO,CA2BnB;IAKD;;;;;OAKG;IACH,oBAFa,OAAO,CAAC,GAAG,CAAC,CA+UxB;IA5UC,aAA4B;IAc1B,2BAA4B;IAqB1B,sBAA0C;IAC1C,4BAAkC;IA0SxC;;;OAGG;IACH,2BAFa,MAAM,CAuBlB;IAfC,qBAYE;IAIJ;;;;OAIG;IACH,uCAFa,OAAO,CAAC,GAAG,CAAC,CAIxB;IACD,+CAsBC;IAKD,0CAEC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH;;;;;;;;;;;OAWG;IACH,mFAHa;;;;cAZC,QAAQ;;;;eACR,IAAI,GAAC,MAAM,SAAO;OAWD,CAsG9B;IACD;;;OAGG;IACH;;;;;OAKG;IACH,oCAHa,OAAO,CAAC;;;;cA1HP,QAAQ;;;;eACR,IAAI,GAAC,MAAM,SAAO;OAyHgB,CAAC,EAAE,CA2ClD;IACD;;;;;OAKG;IACH,iDAFa,OAAO,CAAC,IAAI,CAAC,CAoBzB;IAID;;;;;OAKG;IACH;;;;OAIG;IACH,2BAFa,eAAc;;;;;;;;;;OAAa,CAavC;IACD;;;;;OAKG;IACH,yBAHW;;;;;;;;;;OAAa,gCACX,cAAS,CAOrB;IACD;;;;;;OAMG;IACH,6DAFa,GAAC,CAiLb;IAKD;;;;;;;OAOG;IACH,yDAHa,OAAO,CAAC,GAAG,CAAC,CAoCxB;IACD;;;;OAIG;IAOH;;;;;;OAMG;IACH,wFA2BC;IACD;;;;;;;;;;;OAWG;IACH,8BARG;QAAyB,KAAK,EAAtB,GAAG;QACoB,IAAI,GAA3B,MAAM,EAAE;QACa,cAAc,GAAnC,MAAM;QACc,iBAAiB;KAC7C,6CAEU;QAAC,KAAK,EAAE,GAAG,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAC;QAAC,iBAAiB,CAAC,QAAQ;QAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAC,CAsa9J;IAID;;;;;;;;OAQG;IACH,qEAHa,OAAO,CAAC,GAAG,CAAC,CAoExB;IAKD;;;;;;;OAOG;IACH,0FAFa,OAAO,CAAC,GAAG,CAAC,CAgiBxB;IACD,+EA+BC;IACD,yDAkBC;IACD,oEA6BC;IAKD,8CAQC;IACD,kDAyBC;IACD;;;;;;;;;;;;;OAaG;IACH,wEAoDC;IAKD,4BAOC;IACD,sCAqEC;CACF"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Collect metadata about all variables found in the configuration
3
+ * @param {Object} params
4
+ * @param {RegExp} params.variableSyntax
5
+ * @param {Object} params.variablesKnownTypes
6
+ * @param {Object} params.variableTypes
7
+ * @param {RegExp|null} params.filterMatch
8
+ * @param {string} params.configFilePath
9
+ * @param {Object} params.displayConfig - rawOriginalConfig || originalConfig, used for traversal
10
+ * @param {Object} params.originalConfig - this.originalConfig, used for dotProp.get checks
11
+ * @param {string} params.varSuffix
12
+ * @param {RegExp} params.varSuffixWithSpacePattern
13
+ * @param {string[][]} [params.ignorePathPatterns]
14
+ * @returns {Object} Metadata object containing variables, fileDependencies, and summary
15
+ */
16
+ export function collectVariableMetadata({ variableSyntax, variablesKnownTypes, variableTypes, filterMatch, configFilePath, displayConfig, originalConfig, varSuffix, varSuffixWithSpacePattern, ignorePathPatterns, }: {
17
+ variableSyntax: RegExp;
18
+ variablesKnownTypes: any;
19
+ variableTypes: any;
20
+ filterMatch: RegExp | null;
21
+ configFilePath: string;
22
+ displayConfig: any;
23
+ originalConfig: any;
24
+ varSuffix: string;
25
+ varSuffixWithSpacePattern: RegExp;
26
+ ignorePathPatterns?: string[][];
27
+ }): any;
28
+ //# sourceMappingURL=metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/metadata.js"],"names":[],"mappings":"AAYA;;;;;;;;;;;;;;GAcG;AACH,uNAZG;IAAuB,cAAc,EAA7B,MAAM;IACS,mBAAmB;IACnB,aAAa;IACR,WAAW,EAA/B,MAAM,GAAC,IAAI;IACI,cAAc,EAA7B,MAAM;IACS,aAAa;IACb,cAAc;IACd,SAAS,EAAxB,MAAM;IACS,yBAAyB,EAAxC,MAAM;IACc,kBAAkB,GAAtC,MAAM,EAAE,EAAE;CAClB,OA0aF"}
@@ -14,6 +14,7 @@
14
14
  * @param {RegExp} ctx.textRefSyntax - Regex for text() syntax
15
15
  * @param {string} ctx.varPrefix - Variable prefix (e.g., '${')
16
16
  * @param {string} ctx.varSuffix - Variable suffix (e.g., '}')
17
+ * @param {Map<string, string>} [ctx.fileContentCache] - Optional per-instance read cache keyed by absolute file path
17
18
  * @param {string} variableString - The variable string to resolve
18
19
  * @param {object} options - Resolution options
19
20
  * @returns {Promise<any>}
@@ -32,6 +33,7 @@ export function getValueFromFile(ctx: {
32
33
  textRefSyntax: RegExp;
33
34
  varPrefix: string;
34
35
  varSuffix: string;
36
+ fileContentCache?: Map<string, string>;
35
37
  }, variableString: string, options: object): Promise<any>;
36
38
  /**
37
39
  * Parse file contents based on file extension
@@ -1 +1 @@
1
- {"version":3,"file":"valueFromFile.d.ts","sourceRoot":"","sources":["../../../src/resolvers/valueFromFile.js"],"names":[],"mappings":"AA8FA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,sCAjBG;IAAoB,UAAU,EAAtB,MAAM;IACK,aAAa;IACZ,cAAc,EAA1B,MAAM;IACM,mBAAmB,EAA/B,MAAM;IACM,aAAa,EAAzB,MAAM;IACM,IAAI,EAAhB,MAAM;IACM,cAAc,EAA1B,MAAM;IACM,MAAM,EAAlB,MAAM;IACQ,cAAc;IAChB,aAAa,EAAzB,MAAM;IACM,aAAa,EAAzB,MAAM;IACM,SAAS,EAArB,MAAM;IACM,SAAS,EAArB,MAAM;CACd,kBAAQ,MAAM,WACN,MAAM,GACJ,OAAO,CAAC,GAAG,CAAC,CAwVxB;AApYD;;;;;GAKG;AACH,2CAJW,MAAM,YACN,MAAM,GACJ,GAAC,CAoBb;AA8WD;;;;;;GAMG;AACH,qDAJW,MAAM,qBACN,MAAM,GACJ;IAAE,aAAa,EAAE,MAAM,EAAE,CAAC;IAAC,UAAU,EAAE,MAAM,GAAC,IAAI,CAAA;CAAE,CAkBhE;AAED;;;;;;GAMG;AACH,sDALW,MAAM,qBACN,MAAM,yBACN,OAAO,GACL,MAAM,EAAE,CAcpB"}
1
+ {"version":3,"file":"valueFromFile.d.ts","sourceRoot":"","sources":["../../../src/resolvers/valueFromFile.js"],"names":[],"mappings":"AA8FA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,sCAlBG;IAAoB,UAAU,EAAtB,MAAM;IACK,aAAa;IACZ,cAAc,EAA1B,MAAM;IACM,mBAAmB,EAA/B,MAAM;IACM,aAAa,EAAzB,MAAM;IACM,IAAI,EAAhB,MAAM;IACM,cAAc,EAA1B,MAAM;IACM,MAAM,EAAlB,MAAM;IACQ,cAAc;IAChB,aAAa,EAAzB,MAAM;IACM,aAAa,EAAzB,MAAM;IACM,SAAS,EAArB,MAAM;IACM,SAAS,EAArB,MAAM;IACoB,gBAAgB,GAA1C,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;CAC3B,kBAAQ,MAAM,WACN,MAAM,GACJ,OAAO,CAAC,GAAG,CAAC,CA+VxB;AA5YD;;;;;GAKG;AACH,2CAJW,MAAM,YACN,MAAM,GACJ,GAAC,CAoBb;AAsXD;;;;;;GAMG;AACH,qDAJW,MAAM,qBACN,MAAM,GACJ;IAAE,aAAa,EAAE,MAAM,EAAE,CAAC;IAAC,UAAU,EAAE,MAAM,GAAC,IAAI,CAAA;CAAE,CAkBhE;AAED;;;;;;GAMG;AACH,sDALW,MAAM,qBACN,MAAM,yBACN,OAAO,GACL,MAAM,EAAE,CAcpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"valueFromGit.d.ts","sourceRoot":"","sources":["../../../src/resolvers/valueFromGit.js"],"names":[],"mappings":"AA2XiB;;;;;;;;EAUhB"}
1
+ {"version":3,"file":"valueFromGit.d.ts","sourceRoot":"","sources":["../../../src/resolvers/valueFromGit.js"],"names":[],"mappings":"AA4XiB;;;;;;;;EAUhB"}
@@ -0,0 +1,10 @@
1
+ export = BoundedMap;
2
+ declare class BoundedMap {
3
+ constructor(maxSize?: number);
4
+ _map: Map<any, any>;
5
+ _maxSize: number;
6
+ get(key: any): any;
7
+ has(key: any): boolean;
8
+ set(key: any, value: any): this;
9
+ }
10
+ //# sourceMappingURL=BoundedMap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoundedMap.d.ts","sourceRoot":"","sources":["../../../src/utils/BoundedMap.js"],"names":[],"mappings":";AAGA;IACE,8BAGC;IAFC,oBAAqB;IACrB,iBAAuB;IAEzB,mBAEC;IACD,uBAEC;IACD,gCAOC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../../src/utils/parsing/parse.js"],"names":[],"mappings":";;;;cAgBc,MAAM;;;;cACN,MAAM;;;;eACN,MAAM;;;;kBACN,cAAe;;;;;;eAmIf,MAAM;;;;kBACN,cAAe;;AAzI7B;;;;;;GAMG;AAEH;;;;GAIG;AACH,iFAHW,YAAY,OA0HtB;AAED;;;;GAIG;AAEH;;;;;GAKG;AACH,oCAJW,MAAM,SACN,gBAAgB,OAW1B"}
1
+ {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../../src/utils/parsing/parse.js"],"names":[],"mappings":";;;;cA4Dc,MAAM;;;;cACN,MAAM;;;;eACN,MAAM;;;;kBACN,cAAe;;;;;;eAyIf,MAAM;;;;kBACN,cAAe;;AA/I7B;;;;;;GAMG;AAEH;;;;GAIG;AACH,iFAHW,YAAY,OAgItB;AAED;;;;GAIG;AAEH;;;;;GAKG;AACH,oCAJW,MAAM,SACN,gBAAgB,OAW1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"preProcess.d.ts","sourceRoot":"","sources":["../../../../src/utils/parsing/preProcess.js"],"names":[],"mappings":";AASA;;;;;;;;GAQG;AACH,+DANW,MAAM,mCAGd;IAA0B,eAAe,GAAjC,OAAO;CACf,OAgYF"}
1
+ {"version":3,"file":"preProcess.d.ts","sourceRoot":"","sources":["../../../../src/utils/parsing/preProcess.js"],"names":[],"mappings":";AASA;;;;;;;;GAQG;AACH,+DANW,MAAM,mCAGd;IAA0B,eAAe,GAAjC,OAAO;CACf,OA4XF"}
@@ -9,4 +9,13 @@
9
9
  * @returns {number} Line number (1-indexed) or 0 if not found
10
10
  */
11
11
  export function findLineForKey(keyToFind: string, lines: string[], fileType: string): number;
12
+ /**
13
+ * Walk a dot-separated config path through raw file lines to find the exact line.
14
+ * YAML uses indentation-based nesting, JSON uses brace-based nesting.
15
+ * @param {string} configPath - Dot-separated path (e.g. 'resources.Parameters.Description')
16
+ * @param {string[]} lines - Array of file lines
17
+ * @param {string} fileType - File extension (e.g., '.yml', '.json')
18
+ * @returns {number} Line number (1-indexed) or 0 if not found
19
+ */
20
+ export function findLineByPath(configPath: string, lines: string[], fileType: string): number;
12
21
  //# sourceMappingURL=findLineForKey.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"findLineForKey.d.ts","sourceRoot":"","sources":["../../../../src/utils/paths/findLineForKey.js"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;GAMG;AACH,0CALW,MAAM,SACN,MAAM,EAAE,YACR,MAAM,GACJ,MAAM,CAiClB"}
1
+ {"version":3,"file":"findLineForKey.d.ts","sourceRoot":"","sources":["../../../../src/utils/paths/findLineForKey.js"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;GAMG;AACH,0CALW,MAAM,SACN,MAAM,EAAE,YACR,MAAM,GACJ,MAAM,CAiClB;AAED;;;;;;;GAOG;AACH,2CALW,MAAM,SACN,MAAM,EAAE,YACR,MAAM,GACJ,MAAM,CAYlB"}
@@ -0,0 +1,5 @@
1
+ export const DEFAULT_IGNORE_PATHS: string[];
2
+ export function normalizeIgnorePaths(options?: {}): any[];
3
+ export function compileIgnorePaths(patterns: any): string[][];
4
+ export function shouldIgnorePath(pathValue: any, compiledPatterns: any): any;
5
+ //# sourceMappingURL=ignorePaths.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ignorePaths.d.ts","sourceRoot":"","sources":["../../../../src/utils/paths/ignorePaths.js"],"names":[],"mappings":"AAAA,4CAcC;AA8BD,0DAOC;AAED,8DAEC;AAED,6EAIC"}
@@ -1 +1 @@
1
- {"version":3,"file":"replaceAll.d.ts","sourceRoot":"","sources":["../../../../src/utils/strings/replaceAll.js"],"names":[],"mappings":"AAKA;;;;;;GAMG;AACH,wCALW,MAAM,YACN,MAAM,UACN,MAAM,GACJ,MAAM,CAelB"}
1
+ {"version":3,"file":"replaceAll.d.ts","sourceRoot":"","sources":["../../../../src/utils/strings/replaceAll.js"],"names":[],"mappings":"AAMA;;;;;;GAMG;AACH,wCALW,MAAM,YACN,MAAM,UACN,MAAM,GACJ,MAAM,CAelB"}
@@ -23,7 +23,7 @@ export function verifyVariable(variableString: any, valueObject: any, variableTy
23
23
  * Excludes suffix characters from the allowed set to prevent parsing issues
24
24
  * @param {string} [prefix='${'] - Variable prefix
25
25
  * @param {string} [suffix='}'] - Variable suffix
26
- * @param {string[]} [excludePatterns=['AWS', 'stageVariables']] - Patterns to exclude via negative lookahead
26
+ * @param {string[]} [excludePatterns=['AWS', 'aws:', 'stageVariables']] - Patterns to exclude via negative lookahead
27
27
  * @returns {string} Regex source string
28
28
  */
29
29
  export function buildVariableSyntax(prefix?: string, suffix?: string, excludePatterns?: string[]): string;
@@ -1 +0,0 @@
1
- //# sourceMappingURL=valueFromSelf.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"valueFromSelf.d.ts","sourceRoot":"","sources":["../../../src/resolvers/valueFromSelf.js"],"names":[],"mappings":""}