@memberjunction/codegen-lib 4.4.0 → 5.1.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/README.md +163 -0
- package/dist/Angular/angular-codegen.d.ts +12 -0
- package/dist/Angular/angular-codegen.d.ts.map +1 -1
- package/dist/Angular/angular-codegen.js +78 -12
- package/dist/Angular/angular-codegen.js.map +1 -1
- package/dist/Angular/related-entity-components.d.ts.map +1 -1
- package/dist/Angular/related-entity-components.js +10 -3
- package/dist/Angular/related-entity-components.js.map +1 -1
- package/dist/Database/manage-metadata.d.ts +40 -0
- package/dist/Database/manage-metadata.d.ts.map +1 -1
- package/dist/Database/manage-metadata.js +103 -13
- package/dist/Database/manage-metadata.js.map +1 -1
- package/dist/Database/sql_codegen.d.ts +10 -3
- package/dist/Database/sql_codegen.d.ts.map +1 -1
- package/dist/Database/sql_codegen.js +79 -15
- package/dist/Database/sql_codegen.js.map +1 -1
- package/dist/EntityNameScanner/EntityNameScanner.d.ts +166 -0
- package/dist/EntityNameScanner/EntityNameScanner.d.ts.map +1 -0
- package/dist/EntityNameScanner/EntityNameScanner.js +758 -0
- package/dist/EntityNameScanner/EntityNameScanner.js.map +1 -0
- package/dist/EntityNameScanner/HtmlEntityNameScanner.d.ts +86 -0
- package/dist/EntityNameScanner/HtmlEntityNameScanner.d.ts.map +1 -0
- package/dist/EntityNameScanner/HtmlEntityNameScanner.js +262 -0
- package/dist/EntityNameScanner/HtmlEntityNameScanner.js.map +1 -0
- package/dist/EntityNameScanner/MetadataNameScanner.d.ts +90 -0
- package/dist/EntityNameScanner/MetadataNameScanner.d.ts.map +1 -0
- package/dist/EntityNameScanner/MetadataNameScanner.js +426 -0
- package/dist/EntityNameScanner/MetadataNameScanner.js.map +1 -0
- package/dist/EntityNameScanner/entity-rename-map.d.ts +31 -0
- package/dist/EntityNameScanner/entity-rename-map.d.ts.map +1 -0
- package/dist/EntityNameScanner/entity-rename-map.js +3012 -0
- package/dist/EntityNameScanner/entity-rename-map.js.map +1 -0
- package/dist/Misc/action_subclasses_codegen.d.ts +2 -2
- package/dist/Misc/action_subclasses_codegen.d.ts.map +1 -1
- package/dist/Misc/action_subclasses_codegen.js.map +1 -1
- package/dist/Misc/createNewUser.js +6 -6
- package/dist/Misc/createNewUser.js.map +1 -1
- package/dist/Misc/entity_subclasses_codegen.js +2 -2
- package/dist/Misc/entity_subclasses_codegen.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/runCodeGen.d.ts.map +1 -1
- package/dist/runCodeGen.js +24 -3
- package/dist/runCodeGen.js.map +1 -1
- package/package.json +15 -15
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EntityNameScanner.js","sourceRoot":"","sources":["../../src/EntityNameScanner/EntityNameScanner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Regex-based scanner/fixer for hardcoded entity names in Angular HTML templates.
|
|
3
|
+
*
|
|
4
|
+
* Since HTML templates cannot be parsed with the TypeScript AST, this scanner
|
|
5
|
+
* uses targeted regex patterns to find entity name references in:
|
|
6
|
+
* - Method calls in template expressions (event bindings, property bindings)
|
|
7
|
+
* - Static attribute values for entity-name-related attributes
|
|
8
|
+
*
|
|
9
|
+
* Uses the same rename map as EntityNameScanner (built from entity_subclasses.ts).
|
|
10
|
+
*
|
|
11
|
+
* Usage (via MJCLI):
|
|
12
|
+
* mj codegen fix-html-entity-names --path packages/Angular
|
|
13
|
+
* mj codegen fix-html-entity-names --path packages/Angular --fix
|
|
14
|
+
*
|
|
15
|
+
* Or programmatically:
|
|
16
|
+
* import { scanHtmlEntityNames } from '@memberjunction/codegen-lib';
|
|
17
|
+
* const result = await scanHtmlEntityNames({ TargetPath: './packages/Angular' });
|
|
18
|
+
*/
|
|
19
|
+
/** The kind of HTML pattern where an old entity name was found. */
|
|
20
|
+
export type HtmlPatternKind = 'methodCallSingleQuote' | 'methodCallDoubleQuote' | 'attributeValue';
|
|
21
|
+
/**
|
|
22
|
+
* A single finding: one entity name reference in an HTML template that needs
|
|
23
|
+
* the "MJ: " prefix.
|
|
24
|
+
*/
|
|
25
|
+
export interface HtmlEntityNameFinding {
|
|
26
|
+
/** Absolute path to the source file */
|
|
27
|
+
FilePath: string;
|
|
28
|
+
/** 1-based line number */
|
|
29
|
+
Line: number;
|
|
30
|
+
/** The old entity name found */
|
|
31
|
+
OldName: string;
|
|
32
|
+
/** The corrected entity name */
|
|
33
|
+
NewName: string;
|
|
34
|
+
/** The kind of HTML pattern matched */
|
|
35
|
+
PatternKind: HtmlPatternKind;
|
|
36
|
+
/** Contextual description of the match */
|
|
37
|
+
Context: string;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Options for the HTML entity name scanner.
|
|
41
|
+
*/
|
|
42
|
+
export interface HtmlEntityNameScanOptions {
|
|
43
|
+
/** File or directory to scan */
|
|
44
|
+
TargetPath: string;
|
|
45
|
+
/**
|
|
46
|
+
* Path to entity_subclasses.ts for building the rename map.
|
|
47
|
+
* If not provided, attempts to locate it relative to common workspace roots.
|
|
48
|
+
*/
|
|
49
|
+
EntitySubclassesPath?: string;
|
|
50
|
+
/** Whether to apply fixes in place. Default: false (dry-run). */
|
|
51
|
+
Fix?: boolean;
|
|
52
|
+
/** Additional glob patterns to exclude from scanning. */
|
|
53
|
+
ExcludePatterns?: string[];
|
|
54
|
+
/** If true, logs progress to console. Default: true. */
|
|
55
|
+
Verbose?: boolean;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Result of a scan (and optional fix) operation.
|
|
59
|
+
*/
|
|
60
|
+
export interface HtmlEntityNameScanResult {
|
|
61
|
+
Success: boolean;
|
|
62
|
+
/** All findings across all scanned files */
|
|
63
|
+
Findings: HtmlEntityNameFinding[];
|
|
64
|
+
/** Absolute paths of files that were modified (only in fix mode) */
|
|
65
|
+
FixedFiles: string[];
|
|
66
|
+
/** Number of files scanned */
|
|
67
|
+
FilesScanned: number;
|
|
68
|
+
/** Number of entries in the rename map */
|
|
69
|
+
RenameMapSize: number;
|
|
70
|
+
/** Errors encountered during scanning */
|
|
71
|
+
Errors: string[];
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Scans a single HTML file for entity name references that need the "MJ: " prefix.
|
|
75
|
+
*/
|
|
76
|
+
export declare function scanHtmlFile(filePath: string, sourceText: string, renameMap: Map<string, string>): HtmlEntityNameFinding[];
|
|
77
|
+
/**
|
|
78
|
+
* Applies entity name fixes to an HTML file using targeted string replacements.
|
|
79
|
+
*/
|
|
80
|
+
export declare function fixHtmlFile(sourceText: string, findings: HtmlEntityNameFinding[]): string;
|
|
81
|
+
/**
|
|
82
|
+
* Scans HTML template files for hardcoded entity names that need the "MJ: " prefix,
|
|
83
|
+
* and optionally fixes them in place.
|
|
84
|
+
*/
|
|
85
|
+
export declare function scanHtmlEntityNames(options: HtmlEntityNameScanOptions): Promise<HtmlEntityNameScanResult>;
|
|
86
|
+
//# sourceMappingURL=HtmlEntityNameScanner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HtmlEntityNameScanner.d.ts","sourceRoot":"","sources":["../../src/EntityNameScanner/HtmlEntityNameScanner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAWH,mEAAmE;AACnE,MAAM,MAAM,eAAe,GACrB,uBAAuB,GACvB,uBAAuB,GACvB,gBAAgB,CAAC;AAEvB;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IAClC,uCAAuC;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,WAAW,EAAE,eAAe,CAAC;IAC7B,0CAA0C;IAC1C,OAAO,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACtC,gCAAgC;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,iEAAiE;IACjE,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,yDAAyD;IACzD,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,wDAAwD;IACxD,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,4CAA4C;IAC5C,QAAQ,EAAE,qBAAqB,EAAE,CAAC;IAClC,oEAAoE;IACpE,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,aAAa,EAAE,MAAM,CAAC;IACtB,yCAAyC;IACzC,MAAM,EAAE,MAAM,EAAE,CAAC;CACpB;AA2ED;;GAEG;AACH,wBAAgB,YAAY,CACxB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,qBAAqB,EAAE,CAsDzB;AAMD;;GAEG;AACH,wBAAgB,WAAW,CACvB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,qBAAqB,EAAE,GAClC,MAAM,CAaR;AAWD;;;GAGG;AACH,wBAAsB,mBAAmB,CACrC,OAAO,EAAE,yBAAyB,GACnC,OAAO,CAAC,wBAAwB,CAAC,CA+FnC"}
|
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Regex-based scanner/fixer for hardcoded entity names in Angular HTML templates.
|
|
3
|
+
*
|
|
4
|
+
* Since HTML templates cannot be parsed with the TypeScript AST, this scanner
|
|
5
|
+
* uses targeted regex patterns to find entity name references in:
|
|
6
|
+
* - Method calls in template expressions (event bindings, property bindings)
|
|
7
|
+
* - Static attribute values for entity-name-related attributes
|
|
8
|
+
*
|
|
9
|
+
* Uses the same rename map as EntityNameScanner (built from entity_subclasses.ts).
|
|
10
|
+
*
|
|
11
|
+
* Usage (via MJCLI):
|
|
12
|
+
* mj codegen fix-html-entity-names --path packages/Angular
|
|
13
|
+
* mj codegen fix-html-entity-names --path packages/Angular --fix
|
|
14
|
+
*
|
|
15
|
+
* Or programmatically:
|
|
16
|
+
* import { scanHtmlEntityNames } from '@memberjunction/codegen-lib';
|
|
17
|
+
* const result = await scanHtmlEntityNames({ TargetPath: './packages/Angular' });
|
|
18
|
+
*/
|
|
19
|
+
import * as fs from 'fs';
|
|
20
|
+
import * as path from 'path';
|
|
21
|
+
import { glob } from 'glob';
|
|
22
|
+
import { resolveEntityNameMap } from './EntityNameScanner.js';
|
|
23
|
+
// ============================================================================
|
|
24
|
+
// Default Configuration
|
|
25
|
+
// ============================================================================
|
|
26
|
+
const DEFAULT_EXCLUDE_PATTERNS = [
|
|
27
|
+
'**/node_modules/**',
|
|
28
|
+
'**/dist/**',
|
|
29
|
+
'**/build/**',
|
|
30
|
+
'**/.git/**',
|
|
31
|
+
'**/generated/**',
|
|
32
|
+
'**/Demos/**',
|
|
33
|
+
];
|
|
34
|
+
/**
|
|
35
|
+
* Method names that take an entity name as their first string argument
|
|
36
|
+
* in Angular template expressions.
|
|
37
|
+
*/
|
|
38
|
+
const HTML_ENTITY_NAME_METHODS = [
|
|
39
|
+
'navigateToEntity',
|
|
40
|
+
'openEntityRecord',
|
|
41
|
+
'OpenEntityRecord',
|
|
42
|
+
'BuildRelationshipViewParamsByEntityName',
|
|
43
|
+
'NewRecordValues',
|
|
44
|
+
'IsCurrentTab',
|
|
45
|
+
'GetEntityObject',
|
|
46
|
+
];
|
|
47
|
+
/**
|
|
48
|
+
* HTML attribute names whose static string value is an entity name.
|
|
49
|
+
*/
|
|
50
|
+
const HTML_ENTITY_NAME_ATTRIBUTES = [
|
|
51
|
+
'RowsEntityName',
|
|
52
|
+
'JoinEntityName',
|
|
53
|
+
];
|
|
54
|
+
// ============================================================================
|
|
55
|
+
// HTML File Scanner
|
|
56
|
+
// ============================================================================
|
|
57
|
+
/**
|
|
58
|
+
* Builds regex patterns for matching entity name references in HTML templates.
|
|
59
|
+
*/
|
|
60
|
+
function buildMethodCallRegexes() {
|
|
61
|
+
const methodGroup = HTML_ENTITY_NAME_METHODS.join('|');
|
|
62
|
+
return [
|
|
63
|
+
// Single-quoted: someMethod('EntityName' — in event/property bindings
|
|
64
|
+
new RegExp(`(?:${methodGroup})\\s*\\(\\s*'([^']+)'`, 'g'),
|
|
65
|
+
// Double-quoted inside single-quoted binding: someMethod("EntityName"
|
|
66
|
+
// This handles cases like (click)="someMethod('EntityName')"
|
|
67
|
+
// The outer quotes are double, inner are single — already caught above.
|
|
68
|
+
// But also: [Prop]="someMethod('EntityName')" — same pattern.
|
|
69
|
+
];
|
|
70
|
+
}
|
|
71
|
+
function buildAttributeRegexes() {
|
|
72
|
+
const attrGroup = HTML_ENTITY_NAME_ATTRIBUTES.join('|');
|
|
73
|
+
return [
|
|
74
|
+
// Static attribute: RowsEntityName="Entity Name"
|
|
75
|
+
new RegExp(`(?:${attrGroup})="([^"]+)"`, 'g'),
|
|
76
|
+
];
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Gets the 1-based line number for a character offset in the source text.
|
|
80
|
+
*/
|
|
81
|
+
function getLineNumber(sourceText, offset) {
|
|
82
|
+
let line = 1;
|
|
83
|
+
for (let i = 0; i < offset && i < sourceText.length; i++) {
|
|
84
|
+
if (sourceText[i] === '\n')
|
|
85
|
+
line++;
|
|
86
|
+
}
|
|
87
|
+
return line;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Scans a single HTML file for entity name references that need the "MJ: " prefix.
|
|
91
|
+
*/
|
|
92
|
+
export function scanHtmlFile(filePath, sourceText, renameMap) {
|
|
93
|
+
const findings = [];
|
|
94
|
+
// Quick check: does this file contain any old entity name?
|
|
95
|
+
let hasRelevantContent = false;
|
|
96
|
+
for (const oldName of renameMap.keys()) {
|
|
97
|
+
if (sourceText.includes(oldName)) {
|
|
98
|
+
hasRelevantContent = true;
|
|
99
|
+
break;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
if (!hasRelevantContent)
|
|
103
|
+
return findings;
|
|
104
|
+
// Scan method call patterns
|
|
105
|
+
const methodRegexes = buildMethodCallRegexes();
|
|
106
|
+
for (const regex of methodRegexes) {
|
|
107
|
+
regex.lastIndex = 0;
|
|
108
|
+
let match;
|
|
109
|
+
while ((match = regex.exec(sourceText)) !== null) {
|
|
110
|
+
const entityName = match[1];
|
|
111
|
+
if (renameMap.has(entityName)) {
|
|
112
|
+
findings.push({
|
|
113
|
+
FilePath: filePath,
|
|
114
|
+
Line: getLineNumber(sourceText, match.index),
|
|
115
|
+
OldName: entityName,
|
|
116
|
+
NewName: renameMap.get(entityName),
|
|
117
|
+
PatternKind: 'methodCallSingleQuote',
|
|
118
|
+
Context: match[0],
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
// Scan attribute patterns
|
|
124
|
+
const attrRegexes = buildAttributeRegexes();
|
|
125
|
+
for (const regex of attrRegexes) {
|
|
126
|
+
regex.lastIndex = 0;
|
|
127
|
+
let match;
|
|
128
|
+
while ((match = regex.exec(sourceText)) !== null) {
|
|
129
|
+
const entityName = match[1];
|
|
130
|
+
if (renameMap.has(entityName)) {
|
|
131
|
+
findings.push({
|
|
132
|
+
FilePath: filePath,
|
|
133
|
+
Line: getLineNumber(sourceText, match.index),
|
|
134
|
+
OldName: entityName,
|
|
135
|
+
NewName: renameMap.get(entityName),
|
|
136
|
+
PatternKind: 'attributeValue',
|
|
137
|
+
Context: match[0],
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
return findings;
|
|
143
|
+
}
|
|
144
|
+
// ============================================================================
|
|
145
|
+
// HTML File Fixer
|
|
146
|
+
// ============================================================================
|
|
147
|
+
/**
|
|
148
|
+
* Applies entity name fixes to an HTML file using targeted string replacements.
|
|
149
|
+
*/
|
|
150
|
+
export function fixHtmlFile(sourceText, findings) {
|
|
151
|
+
if (findings.length === 0)
|
|
152
|
+
return sourceText;
|
|
153
|
+
let result = sourceText;
|
|
154
|
+
for (const finding of findings) {
|
|
155
|
+
// Replace old context with new context (old name swapped for new name)
|
|
156
|
+
const oldContext = finding.Context;
|
|
157
|
+
const newContext = oldContext.replace(finding.OldName, finding.NewName);
|
|
158
|
+
result = replaceAll(result, oldContext, newContext);
|
|
159
|
+
}
|
|
160
|
+
return result;
|
|
161
|
+
}
|
|
162
|
+
/** Simple replaceAll using split/join for broad compatibility. */
|
|
163
|
+
function replaceAll(text, search, replacement) {
|
|
164
|
+
return text.split(search).join(replacement);
|
|
165
|
+
}
|
|
166
|
+
// ============================================================================
|
|
167
|
+
// Main Entry Point
|
|
168
|
+
// ============================================================================
|
|
169
|
+
/**
|
|
170
|
+
* Scans HTML template files for hardcoded entity names that need the "MJ: " prefix,
|
|
171
|
+
* and optionally fixes them in place.
|
|
172
|
+
*/
|
|
173
|
+
export async function scanHtmlEntityNames(options) {
|
|
174
|
+
const errors = [];
|
|
175
|
+
const verbose = options.Verbose !== false;
|
|
176
|
+
// Resolve target path
|
|
177
|
+
const targetPath = path.resolve(options.TargetPath);
|
|
178
|
+
if (!fs.existsSync(targetPath)) {
|
|
179
|
+
return {
|
|
180
|
+
Success: false,
|
|
181
|
+
Findings: [],
|
|
182
|
+
FixedFiles: [],
|
|
183
|
+
FilesScanned: 0,
|
|
184
|
+
RenameMapSize: 0,
|
|
185
|
+
Errors: [`Target path does not exist: ${targetPath}`],
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
// Build rename map (tries .ts file first, falls back to embedded rename map)
|
|
189
|
+
let renameMap;
|
|
190
|
+
try {
|
|
191
|
+
renameMap = resolveEntityNameMap(targetPath, options.EntitySubclassesPath, verbose);
|
|
192
|
+
}
|
|
193
|
+
catch (err) {
|
|
194
|
+
return {
|
|
195
|
+
Success: false,
|
|
196
|
+
Findings: [],
|
|
197
|
+
FixedFiles: [],
|
|
198
|
+
FilesScanned: 0,
|
|
199
|
+
RenameMapSize: 0,
|
|
200
|
+
Errors: [err.message],
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
// Find HTML files
|
|
204
|
+
const isFile = fs.statSync(targetPath).isFile();
|
|
205
|
+
let htmlFiles;
|
|
206
|
+
if (isFile) {
|
|
207
|
+
htmlFiles = [targetPath];
|
|
208
|
+
}
|
|
209
|
+
else {
|
|
210
|
+
const excludePatterns = [
|
|
211
|
+
...DEFAULT_EXCLUDE_PATTERNS,
|
|
212
|
+
...(options.ExcludePatterns ?? []),
|
|
213
|
+
];
|
|
214
|
+
htmlFiles = await glob('**/*.html', {
|
|
215
|
+
cwd: targetPath,
|
|
216
|
+
absolute: true,
|
|
217
|
+
ignore: excludePatterns,
|
|
218
|
+
});
|
|
219
|
+
}
|
|
220
|
+
if (verbose) {
|
|
221
|
+
console.log(`Scanning ${htmlFiles.length} HTML files...`);
|
|
222
|
+
}
|
|
223
|
+
// Scan files
|
|
224
|
+
const allFindings = [];
|
|
225
|
+
const fixedFiles = [];
|
|
226
|
+
for (const filePath of htmlFiles) {
|
|
227
|
+
try {
|
|
228
|
+
const sourceText = fs.readFileSync(filePath, 'utf-8');
|
|
229
|
+
const findings = scanHtmlFile(filePath, sourceText, renameMap);
|
|
230
|
+
if (findings.length > 0) {
|
|
231
|
+
allFindings.push(...findings);
|
|
232
|
+
if (options.Fix) {
|
|
233
|
+
const fixedText = fixHtmlFile(sourceText, findings);
|
|
234
|
+
fs.writeFileSync(filePath, fixedText, 'utf-8');
|
|
235
|
+
fixedFiles.push(filePath);
|
|
236
|
+
if (verbose) {
|
|
237
|
+
console.log(` Fixed ${findings.length} entity name(s) in ${filePath}`);
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
else if (verbose) {
|
|
241
|
+
console.log(` Found ${findings.length} entity name(s) in ${filePath}`);
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
catch (err) {
|
|
246
|
+
const message = `Error scanning ${filePath}: ${err.message}`;
|
|
247
|
+
errors.push(message);
|
|
248
|
+
if (verbose) {
|
|
249
|
+
console.error(` ${message}`);
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
return {
|
|
254
|
+
Success: errors.length === 0,
|
|
255
|
+
Findings: allFindings,
|
|
256
|
+
FixedFiles: fixedFiles,
|
|
257
|
+
FilesScanned: htmlFiles.length,
|
|
258
|
+
RenameMapSize: renameMap.size,
|
|
259
|
+
Errors: errors,
|
|
260
|
+
};
|
|
261
|
+
}
|
|
262
|
+
//# sourceMappingURL=HtmlEntityNameScanner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HtmlEntityNameScanner.js","sourceRoot":"","sources":["../../src/EntityNameScanner/HtmlEntityNameScanner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* JSON-based scanner/fixer for entity names in MemberJunction metadata files.
|
|
3
|
+
*
|
|
4
|
+
* Scans metadata directories for entity name references that need the "MJ: "
|
|
5
|
+
* prefix, including:
|
|
6
|
+
* - `@lookup:` references (both the entity name and the lookup value)
|
|
7
|
+
* - `.mj-sync.json` / `.mj-folder.json` entity/entityName config fields
|
|
8
|
+
* - `relatedEntities` object keys
|
|
9
|
+
*
|
|
10
|
+
* Reuses the rename map from {@link buildEntityNameMap} (entity_subclasses.ts).
|
|
11
|
+
*
|
|
12
|
+
* Usage (via MJCLI):
|
|
13
|
+
* mj codegen fix-metadata-names --path metadata/
|
|
14
|
+
* mj codegen fix-metadata-names --path metadata/ --fix
|
|
15
|
+
*
|
|
16
|
+
* Or programmatically:
|
|
17
|
+
* import { scanMetadataNames } from '@memberjunction/codegen-lib';
|
|
18
|
+
* const result = await scanMetadataNames({ TargetPath: './metadata' });
|
|
19
|
+
*/
|
|
20
|
+
/** The kind of pattern where an old entity name was found in metadata. */
|
|
21
|
+
export type MetadataPatternKind = 'lookupEntity' | 'lookupValue' | 'folderConfig' | 'relatedEntityKey' | 'entityNameField';
|
|
22
|
+
/**
|
|
23
|
+
* A single finding: one entity name reference in a metadata file that needs
|
|
24
|
+
* the "MJ: " prefix.
|
|
25
|
+
*/
|
|
26
|
+
export interface MetadataFinding {
|
|
27
|
+
/** Absolute path to the source file */
|
|
28
|
+
FilePath: string;
|
|
29
|
+
/** 1-based line number */
|
|
30
|
+
Line: number;
|
|
31
|
+
/** The old entity name found */
|
|
32
|
+
OldName: string;
|
|
33
|
+
/** The corrected entity name */
|
|
34
|
+
NewName: string;
|
|
35
|
+
/** The kind of metadata pattern matched */
|
|
36
|
+
PatternKind: MetadataPatternKind;
|
|
37
|
+
/** Human-readable context (e.g., the full @lookup string) */
|
|
38
|
+
Context: string;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Options for the metadata name scanner.
|
|
42
|
+
*/
|
|
43
|
+
export interface MetadataNameScanOptions {
|
|
44
|
+
/** File or directory to scan */
|
|
45
|
+
TargetPath: string;
|
|
46
|
+
/**
|
|
47
|
+
* Path to entity_subclasses.ts for building the rename map.
|
|
48
|
+
* If not provided, attempts to locate it relative to common workspace roots.
|
|
49
|
+
*/
|
|
50
|
+
EntitySubclassesPath?: string;
|
|
51
|
+
/** Whether to apply fixes in place. Default: false (dry-run). */
|
|
52
|
+
Fix?: boolean;
|
|
53
|
+
/** If true, logs progress to console. Default: true. */
|
|
54
|
+
Verbose?: boolean;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Result of a metadata scan (and optional fix) operation.
|
|
58
|
+
*/
|
|
59
|
+
export interface MetadataNameScanResult {
|
|
60
|
+
Success: boolean;
|
|
61
|
+
/** All findings across all scanned files */
|
|
62
|
+
Findings: MetadataFinding[];
|
|
63
|
+
/** Absolute paths of files that were modified (only in fix mode) */
|
|
64
|
+
FixedFiles: string[];
|
|
65
|
+
/** Number of files scanned */
|
|
66
|
+
FilesScanned: number;
|
|
67
|
+
/** Number of entries in the rename map */
|
|
68
|
+
RenameMapSize: number;
|
|
69
|
+
/** Errors encountered during scanning */
|
|
70
|
+
Errors: string[];
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Scans a single metadata JSON file for entity name references that need
|
|
74
|
+
* the "MJ: " prefix.
|
|
75
|
+
*
|
|
76
|
+
* @param isEntitiesFolder - If true, the folder's .mj-sync.json entity is
|
|
77
|
+
* "Entities" or "MJ: Entities", so `fields.Name` values are entity names.
|
|
78
|
+
*/
|
|
79
|
+
export declare function scanMetadataFile(filePath: string, sourceText: string, renameMap: Map<string, string>, isEntitiesFolder?: boolean): MetadataFinding[];
|
|
80
|
+
/**
|
|
81
|
+
* Applies entity name fixes to a metadata file using targeted string
|
|
82
|
+
* replacements that preserve original formatting.
|
|
83
|
+
*/
|
|
84
|
+
export declare function fixMetadataFile(sourceText: string, findings: MetadataFinding[]): string;
|
|
85
|
+
/**
|
|
86
|
+
* Scans metadata JSON files for entity name references that need the "MJ: "
|
|
87
|
+
* prefix, and optionally fixes them in place.
|
|
88
|
+
*/
|
|
89
|
+
export declare function scanMetadataNames(options: MetadataNameScanOptions): Promise<MetadataNameScanResult>;
|
|
90
|
+
//# sourceMappingURL=MetadataNameScanner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MetadataNameScanner.d.ts","sourceRoot":"","sources":["../../src/EntityNameScanner/MetadataNameScanner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAWH,0EAA0E;AAC1E,MAAM,MAAM,mBAAmB,GACzB,cAAc,GACd,aAAa,GACb,cAAc,GACd,kBAAkB,GAClB,iBAAiB,CAAC;AAExB;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC5B,uCAAuC;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,2CAA2C;IAC3C,WAAW,EAAE,mBAAmB,CAAC;IACjC,6DAA6D;IAC7D,OAAO,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACpC,gCAAgC;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,iEAAiE;IACjE,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,wDAAwD;IACxD,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,4CAA4C;IAC5C,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,oEAAoE;IACpE,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,aAAa,EAAE,MAAM,CAAC;IACtB,yCAAyC;IACzC,MAAM,EAAE,MAAM,EAAE,CAAC;CACpB;AAwED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC5B,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,gBAAgB,CAAC,EAAE,OAAO,GAC3B,eAAe,EAAE,CAuCnB;AA0ND;;;GAGG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,MAAM,CAkDvF;AAqBD;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAmGzG"}
|