configorama 0.9.14 → 0.9.16
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/index.d.ts +4 -0
- package/package.json +1 -1
- package/src/display.js +485 -0
- package/src/index.js +2 -0
- package/src/main.js +55 -878
- package/src/metadata.js +451 -0
- package/src/resolvers/valueFromGit.js +3 -2
- package/src/utils/BoundedMap.js +25 -0
- package/src/utils/BoundedMap.test.js +91 -0
- package/src/utils/parsing/parse.js +51 -1
- package/src/utils/paths/findLineForKey.js +134 -1
- package/src/utils/regex/index.js +2 -2
- package/src/utils/strings/replaceAll.js +2 -1
- package/types/src/display.d.ts +62 -0
- package/types/src/display.d.ts.map +1 -0
- package/types/src/index.d.ts +8 -0
- package/types/src/index.d.ts.map +1 -1
- package/types/src/main.d.ts +2 -16
- package/types/src/main.d.ts.map +1 -1
- package/types/src/metadata.d.ts +26 -0
- package/types/src/metadata.d.ts.map +1 -0
- package/types/src/resolvers/valueFromGit.d.ts.map +1 -1
- package/types/src/utils/BoundedMap.d.ts +10 -0
- package/types/src/utils/BoundedMap.d.ts.map +1 -0
- package/types/src/utils/parsing/parse.d.ts.map +1 -1
- package/types/src/utils/paths/findLineForKey.d.ts +9 -0
- package/types/src/utils/paths/findLineForKey.d.ts.map +1 -1
- package/types/src/utils/strings/replaceAll.d.ts.map +1 -1
- package/types/src/resolvers/valueFromSelf.d.ts +0 -1
- package/types/src/resolvers/valueFromSelf.d.ts.map +0 -1
|
@@ -42,6 +42,139 @@ function findLineForKey(keyToFind, lines, fileType) {
|
|
|
42
42
|
return lineIdx !== -1 ? lineIdx + 1 : 0
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
+
/**
|
|
46
|
+
* Walk a dot-separated config path through raw file lines to find the exact line.
|
|
47
|
+
* YAML uses indentation-based nesting, JSON uses brace-based nesting.
|
|
48
|
+
* @param {string} configPath - Dot-separated path (e.g. 'resources.Parameters.Description')
|
|
49
|
+
* @param {string[]} lines - Array of file lines
|
|
50
|
+
* @param {string} fileType - File extension (e.g., '.yml', '.json')
|
|
51
|
+
* @returns {number} Line number (1-indexed) or 0 if not found
|
|
52
|
+
*/
|
|
53
|
+
function findLineByPath(configPath, lines, fileType) {
|
|
54
|
+
if (!configPath || !lines || !lines.length) return 0
|
|
55
|
+
|
|
56
|
+
const isYaml = fileType === '.yml' || fileType === '.yaml'
|
|
57
|
+
const isJson = fileType === '.json' || fileType === '.json5' || fileType === '.jsonc'
|
|
58
|
+
if (!isYaml && !isJson) return 0
|
|
59
|
+
|
|
60
|
+
const segments = configPath.split('.')
|
|
61
|
+
if (isYaml) return findLineByPathYaml(segments, lines)
|
|
62
|
+
return findLineByPathJson(segments, lines)
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* @param {string[]} segments
|
|
67
|
+
* @param {string[]} lines
|
|
68
|
+
* @returns {number}
|
|
69
|
+
*/
|
|
70
|
+
function findLineByPathYaml(segments, lines) {
|
|
71
|
+
let searchStart = 0
|
|
72
|
+
let parentIndent = -1
|
|
73
|
+
|
|
74
|
+
for (let si = 0; si < segments.length; si++) {
|
|
75
|
+
const key = segments[si]
|
|
76
|
+
const escaped = key.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')
|
|
77
|
+
const keyPattern = new RegExp(`^(\\s*)${escaped}\\s*:`)
|
|
78
|
+
let found = false
|
|
79
|
+
|
|
80
|
+
for (let li = searchStart; li < lines.length; li++) {
|
|
81
|
+
const match = keyPattern.exec(lines[li])
|
|
82
|
+
if (!match) continue
|
|
83
|
+
|
|
84
|
+
const indent = match[1].length
|
|
85
|
+
// Must be exactly one level deeper than parent (or top-level if parentIndent is -1)
|
|
86
|
+
if (parentIndent === -1 && indent === 0) {
|
|
87
|
+
// Top-level key
|
|
88
|
+
} else if (indent <= parentIndent) {
|
|
89
|
+
// We've left the parent's scope — key not found under this parent
|
|
90
|
+
break
|
|
91
|
+
} else if (indent <= parentIndent) {
|
|
92
|
+
continue
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
// Found the key at this nesting level
|
|
96
|
+
if (si === segments.length - 1) {
|
|
97
|
+
return li + 1
|
|
98
|
+
}
|
|
99
|
+
// Descend: next segment must be indented deeper, starting after this line
|
|
100
|
+
parentIndent = indent
|
|
101
|
+
searchStart = li + 1
|
|
102
|
+
found = true
|
|
103
|
+
break
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
if (!found) return 0
|
|
107
|
+
}
|
|
108
|
+
return 0
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
/**
|
|
112
|
+
* @param {string[]} segments
|
|
113
|
+
* @param {string[]} lines
|
|
114
|
+
* @returns {number}
|
|
115
|
+
*/
|
|
116
|
+
function findLineByPathJson(segments, lines) {
|
|
117
|
+
let searchStart = 0
|
|
118
|
+
let targetDepth = 1 // JSON top-level keys are at brace depth 1
|
|
119
|
+
|
|
120
|
+
for (let si = 0; si < segments.length; si++) {
|
|
121
|
+
const key = segments[si]
|
|
122
|
+
const escaped = key.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')
|
|
123
|
+
const keyPattern = new RegExp(`"${escaped}"\\s*:`)
|
|
124
|
+
let depth = 0
|
|
125
|
+
let found = false
|
|
126
|
+
|
|
127
|
+
for (let li = searchStart; li < lines.length; li++) {
|
|
128
|
+
const line = lines[li]
|
|
129
|
+
// Track brace depth character by character
|
|
130
|
+
for (let ci = 0; ci < line.length; ci++) {
|
|
131
|
+
const ch = line[ci]
|
|
132
|
+
if (ch === '{') depth++
|
|
133
|
+
else if (ch === '}') depth--
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
// Check for key match at the right depth
|
|
137
|
+
// We need to check depth BEFORE the line's closing braces
|
|
138
|
+
let depthBeforeLine = depth
|
|
139
|
+
for (let ci = 0; ci < line.length; ci++) {
|
|
140
|
+
if (line[ci] === '{') depthBeforeLine--
|
|
141
|
+
else if (line[ci] === '}') depthBeforeLine++
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
if (keyPattern.test(line)) {
|
|
145
|
+
// Calculate depth at the point where the key appears
|
|
146
|
+
let depthAtKey = 0
|
|
147
|
+
for (let cli = 0; cli < li; cli++) {
|
|
148
|
+
for (let ci = 0; ci < lines[cli].length; ci++) {
|
|
149
|
+
if (lines[cli][ci] === '{') depthAtKey++
|
|
150
|
+
else if (lines[cli][ci] === '}') depthAtKey--
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
// Account for any opening braces before the key on this line
|
|
154
|
+
const keyIdx = line.search(keyPattern)
|
|
155
|
+
for (let ci = 0; ci < keyIdx; ci++) {
|
|
156
|
+
if (line[ci] === '{') depthAtKey++
|
|
157
|
+
else if (line[ci] === '}') depthAtKey--
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
if (depthAtKey === targetDepth) {
|
|
161
|
+
if (si === segments.length - 1) {
|
|
162
|
+
return li + 1
|
|
163
|
+
}
|
|
164
|
+
targetDepth++
|
|
165
|
+
searchStart = li + 1
|
|
166
|
+
found = true
|
|
167
|
+
break
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
if (!found) return 0
|
|
173
|
+
}
|
|
174
|
+
return 0
|
|
175
|
+
}
|
|
176
|
+
|
|
45
177
|
module.exports = {
|
|
46
|
-
findLineForKey
|
|
178
|
+
findLineForKey,
|
|
179
|
+
findLineByPath
|
|
47
180
|
}
|
package/src/utils/regex/index.js
CHANGED
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
* @returns {any} Regex-like result array or null
|
|
11
11
|
*/
|
|
12
12
|
function parseFunctionCall(str) {
|
|
13
|
-
if (!str || typeof str !== 'string') return null
|
|
14
|
-
|
|
13
|
+
if (!str || typeof str !== 'string' || str.indexOf('(') === -1) return null
|
|
14
|
+
|
|
15
15
|
// Find function name followed by opening paren
|
|
16
16
|
const funcMatch = str.match(/(\w+)\s*\(/)
|
|
17
17
|
if (!funcMatch) return null
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
const BoundedMap = require('../BoundedMap')
|
|
1
2
|
const REPLACE_PATTERN = /([\/\,\!\\\^\$\{\}\[\]\(\)\.\*\+\?\|<>\-\&])/g
|
|
2
3
|
|
|
3
4
|
// Cache for compiled regex patterns (perf: avoid recompilation)
|
|
4
|
-
const regexCache = new
|
|
5
|
+
const regexCache = new BoundedMap(200)
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* Replace all occurrences of a string while handling regex special characters
|
|
@@ -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"}
|
package/types/src/index.d.ts
CHANGED
|
@@ -57,6 +57,14 @@ type ConfigoramaSettings = {
|
|
|
57
57
|
* - return both config and metadata about variables found
|
|
58
58
|
*/
|
|
59
59
|
returnMetadata?: boolean;
|
|
60
|
+
/**
|
|
61
|
+
* - suppress env-stage-loader logs when useDotenv/useDotEnv is enabled
|
|
62
|
+
*/
|
|
63
|
+
dotEnvSilent?: boolean;
|
|
64
|
+
/**
|
|
65
|
+
* - enable env-stage-loader debug logs when useDotenv/useDotEnv is enabled
|
|
66
|
+
*/
|
|
67
|
+
dotEnvDebug?: boolean;
|
|
60
68
|
/**
|
|
61
69
|
* - keys to merge in arrays of objects
|
|
62
70
|
*/
|
package/types/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.js"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.js"],"names":[],"mappings":";;;AAyCiB,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;;;;;;;;;;;;;;;;aAtHa,MAAM;;;;gBACN,MAAM;;;;;;;;;;;;;;;;;;;;uBAIN,OAAO;;;;2BACP,OAAO;;;;kBACP,cAAe;;;;qBACf,OAAO;;;;mBACP,OAAO;;;;kBACP,OAAO;;;;gBACP,MAAM,EAAE;;;;;;;;uBAKR,CAAC;;;;oBAED,MAAM;;;;;;;;;;YAEN,CAAC"}
|
package/types/src/main.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ declare class Configorama {
|
|
|
7
7
|
foundVariables: any[];
|
|
8
8
|
fileRefsFound: any[];
|
|
9
9
|
resolutionTracking: {};
|
|
10
|
+
_trackCalls: boolean;
|
|
10
11
|
variableSyntax: RegExp;
|
|
11
12
|
varPrefix: string;
|
|
12
13
|
varSuffix: string;
|
|
@@ -64,22 +65,7 @@ declare class Configorama {
|
|
|
64
65
|
* @returns {object} Metadata object containing variables, fileRefs, and summary
|
|
65
66
|
*/
|
|
66
67
|
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
|
-
};
|
|
68
|
+
_cachedMetadata: any;
|
|
83
69
|
/**
|
|
84
70
|
* Populate the variables in the given object.
|
|
85
71
|
* @param objectToPopulate The object to populate variables within.
|
package/types/src/main.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/main.js"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/main.js"],"names":[],"mappings":";AA2GA;IACE,0CAieC;IAzdC,cAkBW;IAuBX,gBAAqB;IAErB,mCAAoC;IAEpC,sBAAwB;IACxB,qBAAuB;IAGvB,uBAA4B;IAE5B,qBAAmD;IAsBnD,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,CA6UxB;IA1UC,aAA4B;IAc1B,2BAA4B;IAmB1B,sBAA0C;IAC1C,4BAAkC;IA0SxC;;;OAGG;IACH,2BAFa,MAAM,CAsBlB;IAdC,qBAWE;IAIJ;;;;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,CA0iBxB;IACD,+EA+BC;IACD,yDAiBC;IACD,oEA6BC;IAKD,8CAQC;IACD,kDAyBC;IACD;;;;;;;;;;;;;OAaG;IACH,wEAoDC;IAKD,4BAOC;IACD,sCAqEC;CACF"}
|
|
@@ -0,0 +1,26 @@
|
|
|
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
|
+
* @returns {Object} Metadata object containing variables, fileDependencies, and summary
|
|
14
|
+
*/
|
|
15
|
+
export function collectVariableMetadata({ variableSyntax, variablesKnownTypes, variableTypes, filterMatch, configFilePath, displayConfig, originalConfig, varSuffix, varSuffixWithSpacePattern, }: {
|
|
16
|
+
variableSyntax: RegExp;
|
|
17
|
+
variablesKnownTypes: any;
|
|
18
|
+
variableTypes: any;
|
|
19
|
+
filterMatch: RegExp | null;
|
|
20
|
+
configFilePath: string;
|
|
21
|
+
displayConfig: any;
|
|
22
|
+
originalConfig: any;
|
|
23
|
+
varSuffix: string;
|
|
24
|
+
varSuffixWithSpacePattern: RegExp;
|
|
25
|
+
}): any;
|
|
26
|
+
//# sourceMappingURL=metadata.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/metadata.js"],"names":[],"mappings":"AAWA;;;;;;;;;;;;;GAaG;AACH,mMAXG;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;CACd,OAyaF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"valueFromGit.d.ts","sourceRoot":"","sources":["../../../src/resolvers/valueFromGit.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"valueFromGit.d.ts","sourceRoot":"","sources":["../../../src/resolvers/valueFromGit.js"],"names":[],"mappings":"AA4XiB;;;;;;;;EAUhB"}
|
|
@@ -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":";;;;
|
|
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"}
|
|
@@ -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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replaceAll.d.ts","sourceRoot":"","sources":["../../../../src/utils/strings/replaceAll.js"],"names":[],"mappings":"
|
|
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"}
|
|
@@ -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":""}
|