harmonyc 0.27.0 → 0.28.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/dist/code_generator/VitestGenerator.js +4 -3
- package/dist/code_generator/VitestGenerator.js.map +1 -1
- package/dist/code_generator/outFile.js +4 -2
- package/dist/code_generator/outFile.js.map +1 -1
- package/dist/compiler/compile.d.ts +1 -0
- package/dist/compiler/compile.js.map +1 -1
- package/dist/model/model.d.ts +10 -8
- package/dist/model/model.js +10 -5
- package/dist/model/model.js.map +1 -1
- package/dist/optimizations/autoLabel/autoLabel.js +6 -1
- package/dist/optimizations/autoLabel/autoLabel.js.map +1 -1
- package/dist/phrases_assistant/phrases_assistant.d.ts +6 -1
- package/dist/phrases_assistant/phrases_assistant.js +29 -3
- package/dist/phrases_assistant/phrases_assistant.js.map +1 -1
- package/dist/vitest/index.d.ts +2 -0
- package/dist/vitest/index.js +3 -3
- package/dist/vitest/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -43,8 +43,8 @@ export class VitestGenerator {
|
|
|
43
43
|
}
|
|
44
44
|
this.tf.print(``);
|
|
45
45
|
for (const ph of this.phraseFns.keys()) {
|
|
46
|
-
const
|
|
47
|
-
const parameters =
|
|
46
|
+
const phrase = this.phraseFns.get(ph);
|
|
47
|
+
const parameters = phrase.args.map((a, i) => {
|
|
48
48
|
const declaration = a.toDeclaration(this, i);
|
|
49
49
|
const parts = declaration.split(': ');
|
|
50
50
|
return {
|
|
@@ -52,7 +52,7 @@ export class VitestGenerator {
|
|
|
52
52
|
type: parts[1] || 'any',
|
|
53
53
|
};
|
|
54
54
|
});
|
|
55
|
-
if (
|
|
55
|
+
if (phrase instanceof Response) {
|
|
56
56
|
parameters.push({
|
|
57
57
|
name: 'res',
|
|
58
58
|
type: 'any',
|
|
@@ -60,6 +60,7 @@ export class VitestGenerator {
|
|
|
60
60
|
}
|
|
61
61
|
this.phraseMethods.push({
|
|
62
62
|
name: ph,
|
|
63
|
+
phrase,
|
|
63
64
|
parameters,
|
|
64
65
|
});
|
|
65
66
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VitestGenerator.js","sourceRoot":"","sources":["../../src/code_generator/VitestGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AAC/B,OAAO,EAAmB,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAC/D,OAAO,EAQL,QAAQ,GAKT,MAAM,mBAAmB,CAAA;AAG1B,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,CAAE,CAAA;AAC7B,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,CAAE,CAAA;AAE7B,MAAM,OAAO,eAAe;IAC1B,MAAM,CAAC,KAAK,CAAC,OAAe,EAAE,KAAa;QACzC,OAAO,6BAA6B,GAAG,CAAC,OAAO,CAAC;;;MAG9C,KAAK,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;IACnC,CAAC;IAQD,YACU,EAAW,EACX,cAAsB,EACtB,IAAqB;QAFrB,OAAE,GAAF,EAAE,CAAS;QACX,mBAAc,GAAd,cAAc,CAAQ;QACtB,SAAI,GAAJ,IAAI,CAAiB;QAT/B,cAAS,GAAG,QAAQ,CAAA;QACpB,cAAS,GAAG,IAAI,GAAG,EAAkB,CAAA;QACrC,uBAAkB,GAAG,EAAE,CAAA;QAEvB,kBAAa,GAAmB,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"VitestGenerator.js","sourceRoot":"","sources":["../../src/code_generator/VitestGenerator.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,13 +31,15 @@ export class OutFile {
|
|
|
31
31
|
write(line, start, name, end) {
|
|
32
32
|
const chunk = line;
|
|
33
33
|
if (start) {
|
|
34
|
-
this.sm.add(new SourceNode(start.line
|
|
34
|
+
this.sm.add(new SourceNode(start.line + 1, // SourceNode lines are 1-based
|
|
35
|
+
start.column, // SourceNode columns are 0-based
|
|
36
|
+
this.sourceFile, chunk, name));
|
|
35
37
|
}
|
|
36
38
|
else {
|
|
37
39
|
this.sm.add(new SourceNode(null, null, null, chunk));
|
|
38
40
|
}
|
|
39
41
|
if (end) {
|
|
40
|
-
this.sm.add(new SourceNode(end.line, end.column, this.sourceFile));
|
|
42
|
+
this.sm.add(new SourceNode(end.line + 1, end.column, this.sourceFile));
|
|
41
43
|
}
|
|
42
44
|
}
|
|
43
45
|
nl() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"outFile.js","sourceRoot":"","sources":["../../src/code_generator/outFile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAG1C,MAAM,OAAO,OAAO;IAIlB,
|
|
1
|
+
{"version":3,"file":"outFile.js","sourceRoot":"","sources":["../../src/code_generator/outFile.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compile.js","sourceRoot":"","sources":["../../src/compiler/compile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAA;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AACtD,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,EAAE,OAAO,EAAW,MAAM,mBAAmB,CAAA;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AACnE,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"compile.js","sourceRoot":"","sources":["../../src/compiler/compile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAA;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AACtD,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,EAAE,OAAO,EAAW,MAAM,mBAAmB,CAAA;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AACnE,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAY3C,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,CAAE,CAAA;AAC7B,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,CAAE,CAAA;AAC7B,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,CAAE,CAAA;AAC7B,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,CAAE,CAAA;AAE7B,MAAM,UAAU,KAAK,CAAC,KAAa;IACjC,OAAO,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;AACzD,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,KAAa;IACjC,OAAO,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;AACzD,CAAC;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAoB;IACvD,mBAAmB,EAAE,KAAK;CAC3B,CAAA;AAED,MAAM,UAAU,cAAc,CAC5B,QAAgB,EAChB,GAAW,EACX,OAAiC,EAAE;IAEnC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;IACrD,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,CAAY,CAAA;IACtC,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QAChB,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC;YAC5B,CAAC,CAAC,OAAO;gBACP,CAAC,CAAC,KAAK,GAAG,YAAY,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,WAAW,KAAK,CAAC,CAAC,YAAY,EAAE,CAAA;QAC9F,CAAC;aAAM,CAAC;YACN,CAAC,CAAC,KAAK,GAAG,YAAY,QAAQ,KAAK,CAAC,CAAC,KAAK,EAAE,CAAA;QAC9C,CAAC;QACD,MAAM,CAAC,CAAA;IACT,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;IAChC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IACvB,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;IACrC,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAC9C,MAAM,EAAE,GAAG,IAAI,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE;QACjD,GAAG,wBAAwB;QAC3B,GAAG,IAAI;KACR,CAAC,CAAA;IACF,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IAClB,OAAO;QACL,OAAO,EAAE,QAAQ;QACjB,aAAa,EAAE,EAAE,CAAC,aAAa;QAC/B,gBAAgB,EAAE,EAAE,CAAC,gBAAgB;KACtC,CAAA;AACH,CAAC"}
|
package/dist/model/model.d.ts
CHANGED
|
@@ -19,13 +19,16 @@ export interface CodeGenerator {
|
|
|
19
19
|
}
|
|
20
20
|
export interface PhraseMethod {
|
|
21
21
|
name: string;
|
|
22
|
+
phrase: Phrase;
|
|
22
23
|
parameters: {
|
|
23
24
|
name: string;
|
|
24
25
|
type: string;
|
|
25
26
|
}[];
|
|
26
27
|
}
|
|
27
28
|
export interface Location {
|
|
29
|
+
/** Line number (0-based) */
|
|
28
30
|
line: number;
|
|
31
|
+
/** Column number (0-based) */
|
|
29
32
|
column: number;
|
|
30
33
|
}
|
|
31
34
|
export declare class Feature {
|
|
@@ -38,23 +41,21 @@ export declare class Feature {
|
|
|
38
41
|
toCode(cg: CodeGenerator): void;
|
|
39
42
|
}
|
|
40
43
|
export declare abstract class Node {
|
|
41
|
-
start?:
|
|
42
|
-
|
|
43
|
-
column: number;
|
|
44
|
-
};
|
|
45
|
-
end?: {
|
|
46
|
-
line: number;
|
|
47
|
-
column: number;
|
|
48
|
-
};
|
|
44
|
+
start?: Location;
|
|
45
|
+
end?: Location;
|
|
49
46
|
at([startToken, endToken]: [Token<any> | undefined, Token<any> | undefined]): this;
|
|
50
47
|
atSameAs(other: Node): this;
|
|
51
48
|
abstract get childNodes(): Node[];
|
|
52
49
|
/**
|
|
53
50
|
* Check if a position (line, character) falls within this node's range
|
|
51
|
+
* @param line Line number (0-based)
|
|
52
|
+
* @param character Character number (0-based)
|
|
54
53
|
*/
|
|
55
54
|
containsPosition(line: number, character: number): boolean;
|
|
56
55
|
/**
|
|
57
56
|
* Find the deepest node (including phrases) that contains the given position
|
|
57
|
+
* @param line Line number (0-based)
|
|
58
|
+
* @param character Character number (0-based)
|
|
58
59
|
*/
|
|
59
60
|
findNodeAtPosition(line: number, character: number): Node | null;
|
|
60
61
|
}
|
|
@@ -103,6 +104,7 @@ export declare class Label extends Node {
|
|
|
103
104
|
constructor(text?: string);
|
|
104
105
|
get childNodes(): Node[];
|
|
105
106
|
get isEmpty(): boolean;
|
|
107
|
+
toString(): string;
|
|
106
108
|
}
|
|
107
109
|
export declare class Section extends Branch {
|
|
108
110
|
label: Label;
|
package/dist/model/model.js
CHANGED
|
@@ -22,17 +22,15 @@ export class Node {
|
|
|
22
22
|
}
|
|
23
23
|
if (startToken) {
|
|
24
24
|
this.start = {
|
|
25
|
-
line: startToken.pos.rowBegin,
|
|
25
|
+
line: startToken.pos.rowBegin - 1,
|
|
26
26
|
column: startToken.pos.columnBegin - 1,
|
|
27
27
|
};
|
|
28
|
-
}
|
|
29
|
-
if (startToken && endToken) {
|
|
30
28
|
let t = startToken;
|
|
31
29
|
while (t.next && t.next !== endToken) {
|
|
32
30
|
t = t.next;
|
|
33
31
|
}
|
|
34
32
|
this.end = {
|
|
35
|
-
line: t.pos.rowEnd,
|
|
33
|
+
line: t.pos.rowEnd - 1,
|
|
36
34
|
column: t.pos.columnEnd - 1,
|
|
37
35
|
};
|
|
38
36
|
}
|
|
@@ -45,6 +43,8 @@ export class Node {
|
|
|
45
43
|
}
|
|
46
44
|
/**
|
|
47
45
|
* Check if a position (line, character) falls within this node's range
|
|
46
|
+
* @param line Line number (0-based)
|
|
47
|
+
* @param character Character number (0-based)
|
|
48
48
|
*/
|
|
49
49
|
containsPosition(line, character) {
|
|
50
50
|
if (!this.start || !this.end) {
|
|
@@ -57,6 +57,8 @@ export class Node {
|
|
|
57
57
|
}
|
|
58
58
|
/**
|
|
59
59
|
* Find the deepest node (including phrases) that contains the given position
|
|
60
|
+
* @param line Line number (0-based)
|
|
61
|
+
* @param character Character number (0-based)
|
|
60
62
|
*/
|
|
61
63
|
findNodeAtPosition(line, character) {
|
|
62
64
|
if (!this.containsPosition(line, character)) {
|
|
@@ -210,6 +212,9 @@ export class Label extends Node {
|
|
|
210
212
|
get isEmpty() {
|
|
211
213
|
return this.text === '';
|
|
212
214
|
}
|
|
215
|
+
toString() {
|
|
216
|
+
return this.text + ':';
|
|
217
|
+
}
|
|
213
218
|
}
|
|
214
219
|
export class Section extends Branch {
|
|
215
220
|
constructor(label, children, isFork = false) {
|
|
@@ -223,7 +228,7 @@ export class Section extends Branch {
|
|
|
223
228
|
toString() {
|
|
224
229
|
if (this.label.text === '')
|
|
225
230
|
return super.toString();
|
|
226
|
-
return this.label.
|
|
231
|
+
return this.label.toString() + indent(super.toString());
|
|
227
232
|
}
|
|
228
233
|
get isEmpty() {
|
|
229
234
|
return this.label.isEmpty;
|
package/dist/model/model.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../src/model/model.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../src/model/model.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,12 @@ export function autoLabel(b) {
|
|
|
5
5
|
forks
|
|
6
6
|
.filter((child) => child instanceof Step)
|
|
7
7
|
.forEach((step) => {
|
|
8
|
-
const label = step.action
|
|
8
|
+
const label = step.action
|
|
9
|
+
.toSingleLineString()
|
|
10
|
+
// remove JSON special chars to work around VSCode Vitest extension bug
|
|
11
|
+
.replace(/\\*"/g, '”')
|
|
12
|
+
.replace(/\n|\\n/g, '│')
|
|
13
|
+
.replace(/\\+/g, '╲');
|
|
9
14
|
const autoLabel = new Label(label);
|
|
10
15
|
autoLabel.atSameAs(step.action);
|
|
11
16
|
const autoSection = new Section(autoLabel, [], step.isFork);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autoLabel.js","sourceRoot":"","sources":["../../../src/optimizations/autoLabel/autoLabel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAEnE,MAAM,UAAU,SAAS,CAAC,CAAS;IACjC,MAAM,KAAK,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;IAC9D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,KAAK;aACF,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,YAAY,IAAI,CAAC;aACxC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAChB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"autoLabel.js","sourceRoot":"","sources":["../../../src/optimizations/autoLabel/autoLabel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAEnE,MAAM,UAAU,SAAS,CAAC,CAAS;IACjC,MAAM,KAAK,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;IAC9D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,KAAK;aACF,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,YAAY,IAAI,CAAC;aACxC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAChB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM;iBACtB,kBAAkB,EAAE;gBACrB,uEAAuE;iBACtE,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;iBACrB,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC;iBACvB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;YACvB,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,CAAA;YAClC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAC/B,MAAM,WAAW,GAAG,IAAI,OAAO,CAAC,SAAS,EAAE,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YAC3D,gFAAgF;YAChF,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAC1B,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAA;YAC7B,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC5B,CAAC,CAAC,CAAA;IACN,CAAC;IACD,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;AACzC,CAAC"}
|
|
@@ -5,7 +5,12 @@ export declare class PhrasesAssistant {
|
|
|
5
5
|
file: t.SourceFile;
|
|
6
6
|
clazz: t.ClassDeclaration;
|
|
7
7
|
existingMethods: Set<string>;
|
|
8
|
-
|
|
8
|
+
opts: {
|
|
9
|
+
legacyArgumentPlaceholder?: string | ((index: number) => string);
|
|
10
|
+
};
|
|
11
|
+
constructor(project: t.Project, path: string, className: string, opts?: {
|
|
12
|
+
legacyArgumentPlaceholder?: string | ((index: number) => string);
|
|
13
|
+
});
|
|
9
14
|
discoverMethods(clazz: t.ClassDeclaration): void;
|
|
10
15
|
ensureMethods(methods: PhraseMethod[]): void;
|
|
11
16
|
ensureMethod(method: PhraseMethod): void;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import * as t from 'ts-morph';
|
|
2
2
|
export class PhrasesAssistant {
|
|
3
|
-
constructor(project, path, className) {
|
|
3
|
+
constructor(project, path, className, opts = {}) {
|
|
4
4
|
var _a;
|
|
5
5
|
this.existingMethods = new Set();
|
|
6
6
|
this.project = project;
|
|
7
|
+
this.opts = opts;
|
|
7
8
|
this.file = this.project.addSourceFileAtPath(path);
|
|
8
9
|
this.file.refreshFromFileSystemSync();
|
|
9
10
|
const clazz = this.file.getClass(className);
|
|
@@ -57,9 +58,34 @@ export class PhrasesAssistant {
|
|
|
57
58
|
this.sortMethods(methods.map((m) => m.name));
|
|
58
59
|
}
|
|
59
60
|
ensureMethod(method) {
|
|
60
|
-
if (
|
|
61
|
-
|
|
61
|
+
if (this.existingMethods.has(method.name))
|
|
62
|
+
return;
|
|
63
|
+
// Check for legacy method name and rename if found
|
|
64
|
+
if (this.opts.legacyArgumentPlaceholder !== undefined) {
|
|
65
|
+
const legacyMethodName = method.phrase.toFunctionName({
|
|
66
|
+
argumentPlaceholder: this.opts.legacyArgumentPlaceholder,
|
|
67
|
+
});
|
|
68
|
+
if (this.existingMethods.has(legacyMethodName)) {
|
|
69
|
+
let clazz = this.clazz;
|
|
70
|
+
while (clazz) {
|
|
71
|
+
const legacyMethod = clazz.getMethod(legacyMethodName);
|
|
72
|
+
if (legacyMethod) {
|
|
73
|
+
legacyMethod.rename(method.name);
|
|
74
|
+
if (clazz !== this.clazz) {
|
|
75
|
+
// will write current file anyway but if a superclass, write it now
|
|
76
|
+
clazz.getSourceFile().saveSync();
|
|
77
|
+
}
|
|
78
|
+
this.existingMethods.delete(legacyMethodName);
|
|
79
|
+
this.existingMethods.add(method.name);
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
clazz = clazz.getBaseClass();
|
|
83
|
+
}
|
|
84
|
+
// should never end up here, but if ever, just continue to add new method
|
|
85
|
+
}
|
|
62
86
|
}
|
|
87
|
+
this.addMethod(method);
|
|
88
|
+
this.existingMethods.add(method.name);
|
|
63
89
|
}
|
|
64
90
|
addMethod(method) {
|
|
65
91
|
const m = this.clazz.addMethod({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phrases_assistant.js","sourceRoot":"","sources":["../../src/phrases_assistant/phrases_assistant.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,UAAU,CAAA;AAG7B,MAAM,OAAO,gBAAgB;
|
|
1
|
+
{"version":3,"file":"phrases_assistant.js","sourceRoot":"","sources":["../../src/phrases_assistant/phrases_assistant.ts"],"names":[],"mappings":"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"}
|
package/dist/vitest/index.d.ts
CHANGED
|
@@ -2,6 +2,8 @@ import type { Plugin } from 'vite';
|
|
|
2
2
|
import { CompilerOptions } from '../compiler/compile.ts';
|
|
3
3
|
export interface HarmonyPluginOptions extends Partial<CompilerOptions> {
|
|
4
4
|
autoEditPhrases?: boolean;
|
|
5
|
+
/** Argument placheholder to detect existing phrase methods with an older scheme, and migrate them */
|
|
6
|
+
legacyArgumentPlaceholder?: string | ((index: number) => string);
|
|
5
7
|
}
|
|
6
8
|
export default function harmonyPlugin(opts?: HarmonyPluginOptions): Plugin;
|
|
7
9
|
declare module 'vitest' {
|
package/dist/vitest/index.js
CHANGED
|
@@ -23,7 +23,7 @@ export default function harmonyPlugin(opts = {}) {
|
|
|
23
23
|
code = preprocess(code);
|
|
24
24
|
const { outFile, phraseMethods, featureClassName } = compileFeature(id, code, opts);
|
|
25
25
|
if (options.autoEditPhrases) {
|
|
26
|
-
void updatePhrasesFile(project, id, phraseMethods, featureClassName);
|
|
26
|
+
void updatePhrasesFile(project, id, phraseMethods, featureClassName, options);
|
|
27
27
|
}
|
|
28
28
|
return {
|
|
29
29
|
code: outFile.valueWithoutSourceMap,
|
|
@@ -83,7 +83,7 @@ function addPhrases(task, depth = 2) {
|
|
|
83
83
|
delete task.meta.phrases; // to make sure not to add them again
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
|
-
async function updatePhrasesFile(project, id, phraseMethods, featureClassName) {
|
|
86
|
+
async function updatePhrasesFile(project, id, phraseMethods, featureClassName, opts) {
|
|
87
87
|
try {
|
|
88
88
|
const phrasesFile = id.replace(/\.harmony$/, '.phrases.ts');
|
|
89
89
|
let phrasesFileContent = '';
|
|
@@ -93,7 +93,7 @@ async function updatePhrasesFile(project, id, phraseMethods, featureClassName) {
|
|
|
93
93
|
catch {
|
|
94
94
|
// File doesn't exist
|
|
95
95
|
}
|
|
96
|
-
const pa = new PhrasesAssistant(project, phrasesFile, featureClassName);
|
|
96
|
+
const pa = new PhrasesAssistant(project, phrasesFile, featureClassName, opts);
|
|
97
97
|
pa.ensureMethods(phraseMethods);
|
|
98
98
|
const newContent = pa.toCode();
|
|
99
99
|
if (newContent === phrasesFileContent) {
|
package/dist/vitest/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vitest/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,CAAC,MAAM,aAAa,CAAA;AAC3B,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAKlC,OAAO,EAAE,cAAc,EAAmB,MAAM,wBAAwB,CAAA;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vitest/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED