@coolon/i18n-resource-generator 2.0.2 → 2.0.3
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/CHANGELOG.md +5 -0
- package/build/main/lib/arguments.class.d.ts +6 -8
- package/build/main/lib/arguments.class.js +9 -2
- package/build/main/lib/ast/abstractContainerElement.d.ts +4 -4
- package/build/main/lib/ast/abstractContainerElement.js +3 -2
- package/build/main/lib/ast/abstractElement.d.ts +2 -2
- package/build/main/lib/ast/abstractElement.js +1 -1
- package/build/main/lib/ast/containerElement.class.d.ts +11 -10
- package/build/main/lib/ast/jsonModule.class.d.ts +8 -0
- package/build/main/lib/ast/jsonModule.class.js +21 -0
- package/build/main/lib/ast/namespaceDef.class.d.ts +1 -0
- package/build/main/lib/ast/namespaceDef.class.js +8 -1
- package/build/main/lib/ast/objectDef.class.d.ts +9 -8
- package/build/main/lib/ast/objectDef.class.js +11 -7
- package/build/main/lib/ast/statementDef.class.d.ts +7 -0
- package/build/main/lib/ast/statementDef.class.js +14 -0
- package/build/main/lib/bin/cli.js +21 -17
- package/build/main/lib/customTypeArrayNode.class.d.ts +6 -6
- package/build/main/lib/customTypeArrayNode.class.js +8 -11
- package/build/main/lib/customTypeNode.class.d.ts +6 -20
- package/build/main/lib/customTypeNode.class.js +18 -20
- package/build/main/lib/enumNode.class.d.ts +6 -6
- package/build/main/lib/enumNode.class.js +28 -45
- package/build/main/lib/i18nGenerator.d.ts +2 -10
- package/build/main/lib/i18nGenerator.js +39 -78
- package/build/main/lib/i18nNode.class.d.ts +10 -12
- package/build/main/lib/i18nNode.class.js +30 -44
- package/build/main/lib/namespaceNode.class.d.ts +5 -4
- package/build/main/lib/namespaceNode.class.js +4 -4
- package/build/main/lib/nodeName.d.ts +13 -0
- package/build/main/lib/nodeName.js +90 -0
- package/build/main/lib/rootNode.class.d.ts +10 -1
- package/build/main/lib/rootNode.class.js +42 -6
- package/build/main/lib/textArrayNode.class.d.ts +4 -3
- package/build/main/lib/textArrayNode.class.js +6 -5
- package/build/main/lib/textNode.class.d.ts +4 -2
- package/build/main/lib/textNode.class.js +9 -13
- package/build/main/lib/valueNode.class.d.ts +5 -4
- package/build/main/lib/valueNode.class.js +5 -5
- package/build/main/lib/writer.class.js +2 -2
- package/build/module/lib/arguments.class.d.ts +6 -8
- package/build/module/lib/arguments.class.js +10 -3
- package/build/module/lib/ast/abstractContainerElement.d.ts +4 -4
- package/build/module/lib/ast/abstractContainerElement.js +4 -3
- package/build/module/lib/ast/abstractElement.d.ts +2 -2
- package/build/module/lib/ast/abstractElement.js +1 -1
- package/build/module/lib/ast/containerElement.class.d.ts +11 -10
- package/build/module/lib/ast/jsonModule.class.d.ts +8 -0
- package/build/module/lib/ast/jsonModule.class.js +18 -0
- package/build/module/lib/ast/namespaceDef.class.d.ts +1 -0
- package/build/module/lib/ast/namespaceDef.class.js +8 -1
- package/build/module/lib/ast/objectDef.class.d.ts +9 -8
- package/build/module/lib/ast/objectDef.class.js +12 -8
- package/build/module/lib/ast/statementDef.class.d.ts +7 -0
- package/build/module/lib/ast/statementDef.class.js +11 -0
- package/build/module/lib/bin/cli.js +21 -17
- package/build/module/lib/customTypeArrayNode.class.d.ts +6 -6
- package/build/module/lib/customTypeArrayNode.class.js +9 -12
- package/build/module/lib/customTypeNode.class.d.ts +6 -20
- package/build/module/lib/customTypeNode.class.js +18 -20
- package/build/module/lib/enumNode.class.d.ts +6 -6
- package/build/module/lib/enumNode.class.js +30 -47
- package/build/module/lib/i18nGenerator.d.ts +2 -10
- package/build/module/lib/i18nGenerator.js +49 -87
- package/build/module/lib/i18nNode.class.d.ts +10 -12
- package/build/module/lib/i18nNode.class.js +30 -41
- package/build/module/lib/namespaceNode.class.d.ts +5 -4
- package/build/module/lib/namespaceNode.class.js +5 -5
- package/build/module/lib/nodeName.d.ts +13 -0
- package/build/module/lib/nodeName.js +77 -0
- package/build/module/lib/rootNode.class.d.ts +10 -1
- package/build/module/lib/rootNode.class.js +42 -6
- package/build/module/lib/textArrayNode.class.d.ts +4 -3
- package/build/module/lib/textArrayNode.class.js +7 -6
- package/build/module/lib/textNode.class.d.ts +4 -2
- package/build/module/lib/textNode.class.js +9 -13
- package/build/module/lib/valueNode.class.d.ts +5 -4
- package/build/module/lib/valueNode.class.js +5 -5
- package/build/module/lib/writer.class.js +2 -2
- package/fixtures/config.json +1 -0
- package/fixtures/ui.alarms.en.yml +108 -0
- package/fixtures/ui.common.en.yml +23 -0
- package/fixtures/ui.date_time.en.yml +94 -0
- package/fixtures/ui.devices.en.yml +288 -0
- package/fixtures/ui.lux.en.yml +44 -0
- package/fixtures/ui.notification.en.yml +238 -0
- package/fixtures/ui.places.en.yml +104 -0
- package/fixtures/ui.reports.en.yml +138 -0
- package/fixtures/ui.scene.en.yml +11 -0
- package/fixtures/ui.schedule.en.yml +7 -0
- package/fixtures/ui.search.en.yml +73 -0
- package/fixtures/ui.validation.en.yml +63 -0
- package/fixtures/ui.zones.en.yml +121 -0
- package/package.json +7 -4
- package/fixtures/test.yml +0 -20
|
@@ -3,6 +3,7 @@ import { ClassDef } from './classDef.class';
|
|
|
3
3
|
import { FunctionDef } from './functionDef.class';
|
|
4
4
|
import { InterfaceDef } from './interfaceDef.class';
|
|
5
5
|
import { ObjectDef } from './objectDef.class';
|
|
6
|
+
import { StatementDef } from './statementDef.class';
|
|
6
7
|
import { TypeDef } from './typeDef.class';
|
|
7
8
|
export class NamespaceDef extends AbstractContainerElement {
|
|
8
9
|
constructor(name) {
|
|
@@ -11,6 +12,9 @@ export class NamespaceDef extends AbstractContainerElement {
|
|
|
11
12
|
nestedContainer(name, configure) {
|
|
12
13
|
return this.addElement(new NamespaceDef(name), configure);
|
|
13
14
|
}
|
|
15
|
+
createStatement(statement) {
|
|
16
|
+
this.addElement(new StatementDef(statement));
|
|
17
|
+
}
|
|
14
18
|
defineInterface(name, configure) {
|
|
15
19
|
return this.addElement(new InterfaceDef(name), configure);
|
|
16
20
|
}
|
|
@@ -27,6 +31,9 @@ export class NamespaceDef extends AbstractContainerElement {
|
|
|
27
31
|
this.addElement(new FunctionDef(name, args, returnType, bodyContent));
|
|
28
32
|
}
|
|
29
33
|
writeBody(writer) {
|
|
34
|
+
this.forEach(StatementDef, def => {
|
|
35
|
+
def.writeBody(writer);
|
|
36
|
+
});
|
|
30
37
|
this.forEach(TypeDef, def => {
|
|
31
38
|
writer.println(`export type ${def.name} = ${def.value};`);
|
|
32
39
|
});
|
|
@@ -57,4 +64,4 @@ export class NamespaceDef extends AbstractContainerElement {
|
|
|
57
64
|
});
|
|
58
65
|
}
|
|
59
66
|
}
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFtZXNwYWNlRGVmLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9hc3QvbmFtZXNwYWNlRGVmLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUU1QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDcEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRzFDLE1BQU0sT0FBTyxZQUFhLFNBQVEsd0JBQXdCO0lBRXhELFlBQVksSUFBWTtRQUN0QixLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDZCxDQUFDO0lBRUQsZUFBZSxDQUFDLElBQVksRUFBRSxTQUEwQztRQUN0RSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELGVBQWUsQ0FBQyxTQUFpQjtRQUMvQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELGVBQWUsQ0FBQyxJQUFZLEVBQUUsU0FBdUM7UUFDbkUsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxVQUFVLENBQUMsSUFBWSxFQUFFLEtBQWE7UUFDcEMs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
|
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { AbstractContainerElement } from
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { NamespaceDef } from
|
|
8
|
-
import { TypeDef } from
|
|
1
|
+
import { Arguments } from '../arguments.class';
|
|
2
|
+
import { Writer } from '../writer.class';
|
|
3
|
+
import { AbstractContainerElement } from './abstractContainerElement';
|
|
4
|
+
import { ClassDef } from './classDef.class';
|
|
5
|
+
import { ContainerElement } from './containerElement.class';
|
|
6
|
+
import { InterfaceDef } from './interfaceDef.class';
|
|
7
|
+
import { NamespaceDef } from './namespaceDef.class';
|
|
8
|
+
import { TypeDef } from './typeDef.class';
|
|
9
9
|
export declare class ObjectDef extends AbstractContainerElement implements ContainerElement {
|
|
10
10
|
private _typeName;
|
|
11
11
|
constructor(name: string);
|
|
12
12
|
asType(typeName: string): this;
|
|
13
13
|
typeName(): string;
|
|
14
|
+
createStatement(statement: string): void;
|
|
14
15
|
nestedContainer(name: string, configure: (context: ContainerElement) => void): void;
|
|
15
16
|
defineInterface(name: string, configure: (def: InterfaceDef) => void): InterfaceDef;
|
|
16
17
|
defineClass(name: string, args: Arguments, configure: (def: ClassDef) => void): ClassDef;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import * as _ from 'lodash';
|
|
2
|
-
import { AbstractContainerElement } from "./abstractContainerElement";
|
|
3
|
-
import { NamespaceDef } from "./namespaceDef.class";
|
|
4
|
-
import { FunctionDef } from "./functionDef.class";
|
|
5
2
|
import { capitalize } from '../stringUtil';
|
|
3
|
+
import { AbstractContainerElement } from './abstractContainerElement';
|
|
4
|
+
import { FunctionDef } from './functionDef.class';
|
|
5
|
+
import { NamespaceDef } from './namespaceDef.class';
|
|
6
|
+
import { StatementDef } from './statementDef.class';
|
|
6
7
|
export class ObjectDef extends AbstractContainerElement {
|
|
7
8
|
constructor(name) {
|
|
8
9
|
super(name);
|
|
@@ -15,6 +16,9 @@ export class ObjectDef extends AbstractContainerElement {
|
|
|
15
16
|
typeName() {
|
|
16
17
|
return this._typeName;
|
|
17
18
|
}
|
|
19
|
+
createStatement(statement) {
|
|
20
|
+
this.addElement(new StatementDef(statement));
|
|
21
|
+
}
|
|
18
22
|
nestedContainer(name, configure) {
|
|
19
23
|
this.addElement(new ObjectDef(name), configure);
|
|
20
24
|
}
|
|
@@ -44,16 +48,16 @@ export class ObjectDef extends AbstractContainerElement {
|
|
|
44
48
|
return this.typeName() ? ` as ${this.typeName()}` : '';
|
|
45
49
|
}
|
|
46
50
|
writeBody(writer) {
|
|
47
|
-
this.forEach(FunctionDef, def => {
|
|
51
|
+
this.forEach(FunctionDef, (def, last) => {
|
|
48
52
|
writer.println(`${def.name}(${def.args.asParameterDeclaration()}):${def.returnType} {`);
|
|
49
53
|
writer.indent(writer => def.writeBody(writer));
|
|
50
|
-
writer.println(`}
|
|
54
|
+
writer.println(`}${last ? '' : ','}`);
|
|
51
55
|
});
|
|
52
|
-
this.forEach(ObjectDef, def => {
|
|
56
|
+
this.forEach(ObjectDef, (def, last) => {
|
|
53
57
|
writer.println(`${def.name}: {`);
|
|
54
58
|
writer.indent(writer => def.writeBody(writer));
|
|
55
|
-
writer.println(`}${def.asTypeDecl()}
|
|
59
|
+
writer.println(`}${def.asTypeDecl()}${last ? '' : ','}`);
|
|
56
60
|
});
|
|
57
61
|
}
|
|
58
62
|
}
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0RGVmLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9hc3Qvb2JqZWN0RGVmLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBRTVCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFHdEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRWxELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHcEQsTUFBTSxPQUFPLFNBQVUsU0FBUSx3QkFBd0I7SUFJckQsWUFBWSxJQUFZO1FBQ3RCLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUhOLGNBQVMsR0FBVyxJQUFJLENBQUM7SUFJakMsQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUFnQjtRQUNyQixJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztRQUMxQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxlQUFlLENBQUMsU0FBaUI7UUFDL0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxlQUFlLENBQUMsSUFBWSxFQUFFLFNBQThDO1FBQzFFLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELGVBQWUsQ0FBQyxJQUFZLEVBQUUsU0FBc0M7UUFDbEUsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRUQsV0FBVyxDQUFDLElBQVksRUFBRSxJQUFlLEVBQUUsU0FBa0M7UUFDM0UsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDakYsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFZLEVBQUUsS0FBYTtRQUNwQyxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUFZLEVBQUUsU0FBbUM7UUFDNUQsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxjQUFjLENBQUMsSUFBWSxFQUFFLElBQWUsRUFBRSxVQUFrQixFQUFFLFdBQWtDO1FBQ2xHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxXQUFXLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRVMsZ0JBQWdCO1FBQ3hCLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLFlBQVksWUFBWSxDQUFpQixDQUFDO0lBQ25HLENBQUM7SUFFUyxNQUFNLENBQUMsT0FBZTtRQUM5QixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUM3QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDO0lBQ2hHLENBQUM7SUFFRCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUN6RCxDQUFDO0lBRUQsU0FBUyxDQUFDLE1BQWM7UUFFdEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUU7WUFDdEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsQ0FBQyxJQUFJLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxLQUFLLEdBQUcsQ0FBQyxVQUFVLElBQUksQ0FBQyxDQUFDO1lBQ3hGLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDL0MsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQ3hDLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUU7WUFDcEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFDO1lBQ2pDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDL0MsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsQ0FBQyxVQUFVLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUMzRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FFRiJ9
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { AbstractElement } from './abstractElement';
|
|
2
|
+
export class StatementDef extends AbstractElement {
|
|
3
|
+
constructor(line) {
|
|
4
|
+
super('');
|
|
5
|
+
this.line = line;
|
|
6
|
+
}
|
|
7
|
+
writeBody(writer) {
|
|
8
|
+
writer.println(`${this.line}${this.line.endsWith(';') ? '' : ';'}`);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGVtZW50RGVmLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9hc3Qvc3RhdGVtZW50RGVmLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVwRCxNQUFNLE9BQU8sWUFBYSxTQUFRLGVBQWU7SUFDL0MsWUFBb0IsSUFBWTtRQUM5QixLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFEUSxTQUFJLEdBQUosSUFBSSxDQUFRO0lBRWhDLENBQUM7SUFFRCxTQUFTLENBQUMsTUFBYztRQUN0QixNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7Q0FDRiJ9
|
|
@@ -3,26 +3,35 @@ import program from 'commander';
|
|
|
3
3
|
import * as fs from 'fs';
|
|
4
4
|
import glob from "glob";
|
|
5
5
|
import { I18nGenerator } from "../i18nGenerator";
|
|
6
|
-
let
|
|
7
|
-
let
|
|
6
|
+
let srcDir;
|
|
7
|
+
let outDir;
|
|
8
8
|
program
|
|
9
9
|
.version('0.1.0')
|
|
10
10
|
.arguments('<src> <out>')
|
|
11
11
|
.action(function (src, out) {
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
srcDir = src;
|
|
13
|
+
outDir = out;
|
|
14
14
|
})
|
|
15
15
|
.parse(process.argv);
|
|
16
|
-
if (typeof
|
|
16
|
+
if (typeof srcDir === 'undefined') {
|
|
17
17
|
console.error('src directory not specified!');
|
|
18
18
|
process.exit(1);
|
|
19
19
|
}
|
|
20
|
-
if (typeof
|
|
21
|
-
console.error('no output
|
|
20
|
+
if (typeof outDir === 'undefined') {
|
|
21
|
+
console.error('no output directory specified!');
|
|
22
22
|
process.exit(1);
|
|
23
23
|
}
|
|
24
|
+
if (!fs.existsSync(outDir)) {
|
|
25
|
+
fs.mkdirSync(outDir);
|
|
26
|
+
}
|
|
27
|
+
let localeDir = `${outDir}/locales`;
|
|
28
|
+
if (!fs.existsSync(localeDir)) {
|
|
29
|
+
fs.mkdirSync(localeDir);
|
|
30
|
+
}
|
|
24
31
|
const gen = new I18nGenerator();
|
|
25
|
-
const configFile = `${
|
|
32
|
+
const configFile = `${srcDir}/config.json`;
|
|
33
|
+
const apiFile = `${outDir}/i18n.ts`;
|
|
34
|
+
const defaultBundleFile = `${outDir}/locales/en.json`;
|
|
26
35
|
if (fs.existsSync(configFile)) {
|
|
27
36
|
const config = JSON.parse(fs.readFileSync(configFile, 'utf8'));
|
|
28
37
|
const imports = config['customTypeImports'];
|
|
@@ -31,7 +40,7 @@ if (fs.existsSync(configFile)) {
|
|
|
31
40
|
gen.registerType(key, imports[key]);
|
|
32
41
|
}
|
|
33
42
|
}
|
|
34
|
-
const pattern = `${
|
|
43
|
+
const pattern = `${srcDir}/**/*.yml`;
|
|
35
44
|
console.log(`Scanning -> ${pattern}`);
|
|
36
45
|
glob(pattern, {}, function (error, files) {
|
|
37
46
|
// files is an array of filenames.
|
|
@@ -47,15 +56,10 @@ glob(pattern, {}, function (error, files) {
|
|
|
47
56
|
}
|
|
48
57
|
else {
|
|
49
58
|
files.forEach(f => {
|
|
50
|
-
// console.log(`parsing->${f}`);
|
|
51
59
|
gen.readFile(f);
|
|
52
60
|
});
|
|
53
|
-
fs.writeFileSync(
|
|
54
|
-
|
|
55
|
-
// function(err, stdout, stderr) {
|
|
56
|
-
// if (err) throw err;
|
|
57
|
-
// else console.log(stdout);
|
|
58
|
-
// })
|
|
61
|
+
fs.writeFileSync(apiFile, gen.getApiContent());
|
|
62
|
+
fs.writeFileSync(defaultBundleFile, gen.getDefaultBundleContent());
|
|
59
63
|
}
|
|
60
64
|
});
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9iaW4vY2xpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLE9BQU8sTUFBTSxXQUFXLENBQUM7QUFDaEMsT0FBTyxLQUFLLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFDekIsT0FBTyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBRXhCLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUUvQyxJQUFJLE1BQU0sQ0FBQztBQUNYLElBQUksTUFBTSxDQUFDO0FBRVgsT0FBTztLQUNKLE9BQU8sQ0FBQyxPQUFPLENBQUM7S0FDaEIsU0FBUyxDQUFDLGFBQWEsQ0FBQztLQUN4QixNQUFNLENBQUMsVUFBVSxHQUFHLEVBQUUsR0FBRztJQUN4QixNQUFNLEdBQUcsR0FBRyxDQUFDO0lBQ2IsTUFBTSxHQUFHLEdBQUcsQ0FBQztBQUNmLENBQUMsQ0FBQztLQUNELEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7QUFFdkIsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLEVBQUU7SUFDakMsT0FBTyxDQUFDLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO0lBQzlDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7Q0FDakI7QUFFRCxJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVcsRUFBRTtJQUNqQyxPQUFPLENBQUMsS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7SUFDaEQsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztDQUNqQjtBQUVELElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFO0lBQzFCLEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7Q0FDdEI7QUFDRCxJQUFJLFNBQVMsR0FBRyxHQUFHLE1BQU0sVUFBVSxDQUFDO0FBQ3BDLElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxFQUFFO0lBQzdCLEVBQUUsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7Q0FDekI7QUFHRCxNQUFNLEdBQUcsR0FBRyxJQUFJLGFBQWEsRUFBRSxDQUFDO0FBRWhDLE1BQU0sVUFBVSxHQUFHLEdBQUcsTUFBTSxjQUFjLENBQUM7QUFDM0MsTUFBTSxPQUFPLEdBQUcsR0FBRyxNQUFNLFVBQVUsQ0FBQztBQUNwQyxNQUFNLGlCQUFpQixHQUFHLEdBQUcsTUFBTSxrQkFBa0IsQ0FBQztBQUV0RCxJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLEVBQUU7SUFDN0IsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQy9ELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBQzVDLEtBQUssSUFBSSxHQUFHLElBQUksT0FBTyxFQUFFO1FBQ3ZCLE9BQU8sQ0FBQyxHQUFHLENBQUMsdUJBQXVCLEdBQUcsUUFBUSxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzlELEdBQUcsQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0tBQ3JDO0NBQ0Y7QUFHRCxNQUFNLE9BQU8sR0FBRyxHQUFHLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0FBQ3RDLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxFQUFFLFVBQVUsS0FBSyxFQUFFLEtBQUs7SUFDdEMsa0NBQWtDO0lBQ2xDLDZDQUE2QztJQUM3Qyx1Q0FBdUM7SUFDdkMsaUNBQWlDO0lBQ2pDLElBQUksS0FBSyxFQUFFO1FBQ1QsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ2pCO0lBQ0QsSUFBSSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtRQUNwQixPQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUE7S0FDL0I7U0FBTTtRQUNMLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDaEIsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsQixDQUFDLENBQUMsQ0FBQztRQUNILEVBQUUsQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1FBQy9DLEVBQUUsQ0FBQyxhQUFhLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxDQUFDLHVCQUF1QixFQUFFLENBQUMsQ0FBQztLQUNwRTtBQUNILENBQUMsQ0FBQyxDQUFDIn0=
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { ContainerElement } from
|
|
2
|
-
import { Constructor } from
|
|
1
|
+
import { ContainerElement } from './ast/containerElement.class';
|
|
2
|
+
import { Constructor } from './constructor.class';
|
|
3
3
|
import { I18nNode } from './i18nNode.class';
|
|
4
|
+
import { NodeName } from './nodeName';
|
|
4
5
|
export declare class CustomTypeArrayNode extends I18nNode {
|
|
5
6
|
private customType;
|
|
6
|
-
static matches(yamlData: any): boolean;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
compile(parent: ContainerElement): void;
|
|
7
|
+
static matches(name: NodeName, yamlData: any): boolean;
|
|
8
|
+
protected parseChild<T extends I18nNode>(name: NodeName, data: any, defaultNodeType: Constructor<T>): I18nNode;
|
|
9
|
+
generateApi(parent: ContainerElement): void;
|
|
10
10
|
}
|
|
@@ -1,22 +1,19 @@
|
|
|
1
|
-
import { CustomTypeNode } from
|
|
1
|
+
import { CustomTypeNode } from './customTypeNode.class';
|
|
2
2
|
import { I18nNode } from './i18nNode.class';
|
|
3
|
+
import { NodeName } from './nodeName';
|
|
3
4
|
export class CustomTypeArrayNode extends I18nNode {
|
|
4
|
-
static matches(yamlData) {
|
|
5
|
-
return yamlData &&
|
|
5
|
+
static matches(name, yamlData) {
|
|
6
|
+
return yamlData && name.customTypeName && name.isArray;
|
|
6
7
|
}
|
|
7
|
-
|
|
8
|
-
this.
|
|
9
|
-
return super.parse(container['content']);
|
|
8
|
+
parseChild(name, data, defaultNodeType) {
|
|
9
|
+
return super.parseChild(NodeName.parse(`${name.safeName}(${this.name.customTypeName})`), data, CustomTypeNode);
|
|
10
10
|
}
|
|
11
|
-
|
|
12
|
-
return super.parseEntry(name, { customType: this.customType, content: data }, CustomTypeNode);
|
|
13
|
-
}
|
|
14
|
-
compile(parent) {
|
|
11
|
+
generateApi(parent) {
|
|
15
12
|
parent.nestedContainer(this.namespaceName, namespace => {
|
|
16
13
|
this.eachChild(child => {
|
|
17
|
-
child.
|
|
14
|
+
child.generateApi(namespace);
|
|
18
15
|
});
|
|
19
16
|
});
|
|
20
17
|
}
|
|
21
18
|
}
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tVHlwZUFycmF5Tm9kZS5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvY3VzdG9tVHlwZUFycmF5Tm9kZS5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFeEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFdEMsTUFBTSxPQUFPLG1CQUFvQixTQUFRLFFBQVE7SUFJL0MsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFjLEVBQUUsUUFBYTtRQUMxQyxPQUFPLFFBQVEsSUFBSSxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDekQsQ0FBQztJQUVTLFVBQVUsQ0FBcUIsSUFBYyxFQUFFLElBQVMsRUFBRSxlQUErQjtRQUNqRyxPQUFPLEtBQUssQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsQ0FBQyxFQUFFLElBQUksRUFBRSxjQUFjLENBQUMsQ0FBQztJQUNqSCxDQUFDO0lBRUQsV0FBVyxDQUFDLE1BQXdCO1FBQ2xDLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxTQUFTLENBQUMsRUFBRTtZQUNyRCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUNyQixLQUFLLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQy9CLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBRUYifQ==
|
|
@@ -1,24 +1,10 @@
|
|
|
1
1
|
import { ContainerElement } from './ast/containerElement.class';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { TextArrayNode } from './textArrayNode.class';
|
|
5
|
-
import { TextNode } from './textNode.class';
|
|
6
|
-
import { ValueNode } from './valueNode.class';
|
|
7
|
-
declare class CustomTextNode extends TextNode {
|
|
8
|
-
static matches(yamlData: any): boolean;
|
|
9
|
-
compile(container: ContainerElement): void;
|
|
10
|
-
}
|
|
11
|
-
declare class CustomTextArrayNode extends TextArrayNode {
|
|
12
|
-
static matches(yamlData: any): boolean;
|
|
13
|
-
compile(container: ContainerElement): void;
|
|
14
|
-
createFunctionBody(out: any): void;
|
|
15
|
-
}
|
|
2
|
+
import { I18nNode, NodeConstructor } from './i18nNode.class';
|
|
3
|
+
import { NodeName } from './nodeName';
|
|
16
4
|
export declare class CustomTypeNode extends I18nNode {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
supportedChildNodeTypes(): (typeof ValueNode | typeof CustomTextArrayNode | typeof CustomTextNode)[];
|
|
5
|
+
static matches(name: NodeName, yamlData: any): boolean;
|
|
6
|
+
supportedChildNodeTypes(): NodeConstructor<any>[];
|
|
20
7
|
parse(container: any): void;
|
|
21
|
-
|
|
22
|
-
|
|
8
|
+
generateApi(parent: ContainerElement): any;
|
|
9
|
+
readonly namespaceName: string;
|
|
23
10
|
}
|
|
24
|
-
export {};
|
|
@@ -5,22 +5,22 @@ import { TextArrayNode } from './textArrayNode.class';
|
|
|
5
5
|
import { TextNode } from './textNode.class';
|
|
6
6
|
import { ValueNode } from './valueNode.class';
|
|
7
7
|
class CustomTextNode extends TextNode {
|
|
8
|
-
static matches(yamlData) {
|
|
9
|
-
return TextNode.matches(yamlData);
|
|
8
|
+
static matches(name, yamlData) {
|
|
9
|
+
return TextNode.matches(name, yamlData);
|
|
10
10
|
}
|
|
11
|
-
|
|
11
|
+
generateApi(container) {
|
|
12
12
|
// we get our args from our outer function.
|
|
13
|
-
container.createFunction(this.
|
|
13
|
+
container.createFunction(this.name.asJsIdentifier, Arguments.empty(), 'string', out => {
|
|
14
14
|
this.createFunctionBody(out);
|
|
15
15
|
});
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
18
|
class CustomTextArrayNode extends TextArrayNode {
|
|
19
|
-
static matches(yamlData) {
|
|
20
|
-
return TextArrayNode.matches(yamlData);
|
|
19
|
+
static matches(name, yamlData) {
|
|
20
|
+
return TextArrayNode.matches(name, yamlData);
|
|
21
21
|
}
|
|
22
|
-
|
|
23
|
-
container.createFunction(this.
|
|
22
|
+
generateApi(container) {
|
|
23
|
+
container.createFunction(this.name.asJsIdentifier, Arguments.empty(), 'string[]', out => {
|
|
24
24
|
this.createFunctionBody(out);
|
|
25
25
|
});
|
|
26
26
|
}
|
|
@@ -37,27 +37,22 @@ class CustomTextArrayNode extends TextArrayNode {
|
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
39
|
export class CustomTypeNode extends I18nNode {
|
|
40
|
-
static matches(yamlData) {
|
|
41
|
-
return yamlData &&
|
|
40
|
+
static matches(name, yamlData) {
|
|
41
|
+
return yamlData && name.customTypeName && !name.isArray;
|
|
42
42
|
}
|
|
43
43
|
supportedChildNodeTypes() {
|
|
44
44
|
return [CustomTextArrayNode, CustomTextNode, ValueNode];
|
|
45
45
|
}
|
|
46
46
|
parse(container) {
|
|
47
|
-
|
|
48
|
-
super.parse(container['content']);
|
|
47
|
+
super.parse(container);
|
|
49
48
|
this.eachChild(child => this.getArgs().merge(child.getArgs()));
|
|
50
49
|
}
|
|
51
|
-
|
|
52
|
-
// console.log(defaultNodeType);
|
|
53
|
-
return super.parseEntry(name, data, defaultNodeType);
|
|
54
|
-
}
|
|
55
|
-
compile(parent) {
|
|
50
|
+
generateApi(parent) {
|
|
56
51
|
const tempContainer = new ObjectDef('!temp!');
|
|
57
52
|
this.eachChild(child => {
|
|
58
|
-
child.
|
|
53
|
+
child.generateApi(tempContainer);
|
|
59
54
|
});
|
|
60
|
-
parent.createFunction(this.
|
|
55
|
+
parent.createFunction(this.name.asJsIdentifier, this.getArgs(), this.name.customTypeName, body => {
|
|
61
56
|
body.println('return {');
|
|
62
57
|
body.indent(out => {
|
|
63
58
|
tempContainer.writeBody(out);
|
|
@@ -65,5 +60,8 @@ export class CustomTypeNode extends I18nNode {
|
|
|
65
60
|
body.println('}');
|
|
66
61
|
});
|
|
67
62
|
}
|
|
63
|
+
get namespaceName() {
|
|
64
|
+
return super.namespaceName;
|
|
65
|
+
}
|
|
68
66
|
}
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tVHlwZU5vZGUuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2N1c3RvbVR5cGVOb2RlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU5QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFbEQsT0FBTyxFQUFFLFFBQVEsRUFBbUIsTUFBTSxrQkFBa0IsQ0FBQztBQUU3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUc5QyxNQUFNLGNBQWUsU0FBUSxRQUFRO0lBRW5DLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBYyxFQUFFLFFBQWE7UUFDMUMsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsV0FBVyxDQUFDLFNBQTJCO1FBQ3JDLDJDQUEyQztRQUMzQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxRQUFRLEVBQUUsR0FBRyxDQUFDLEVBQUU7WUFDcEYsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBRUQsTUFBTSxtQkFBb0IsU0FBUSxhQUFhO0lBRTdDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBYyxFQUFFLFFBQWE7UUFDMUMsT0FBTyxhQUFhLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsV0FBVyxDQUFD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
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
+
import { ContainerElement } from './ast/containerElement.class';
|
|
2
|
+
import { Constructor } from './constructor.class';
|
|
1
3
|
import { I18nNode } from './i18nNode.class';
|
|
2
|
-
import {
|
|
3
|
-
import { Constructor } from "./constructor.class";
|
|
4
|
+
import { NodeName } from './nodeName';
|
|
4
5
|
export declare class EnumNode extends I18nNode {
|
|
5
|
-
static matches(yamlData: any): boolean;
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
compile(parent: ContainerElement): void;
|
|
6
|
+
static matches(name: NodeName, yamlData: any): boolean;
|
|
7
|
+
protected parseChild<T extends I18nNode>(name: NodeName, data: any, defaultNodeType: Constructor<T>): I18nNode;
|
|
8
|
+
generateApi(parent: ContainerElement): void;
|
|
9
9
|
lookupKeys(): string[];
|
|
10
10
|
}
|
|
@@ -1,47 +1,42 @@
|
|
|
1
|
+
import { Arguments } from './arguments.class';
|
|
2
|
+
import { FunctionDef } from './ast/functionDef.class';
|
|
3
|
+
import { ObjectDef } from './ast/objectDef.class';
|
|
1
4
|
import { I18nNode } from './i18nNode.class';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { ObjectDef } from "./ast/objectDef.class";
|
|
5
|
-
import { FunctionDef } from "./ast/functionDef.class";
|
|
6
|
-
import { NameSpaceNode } from "./namespaceNode.class";
|
|
5
|
+
import { NameSpaceNode } from './namespaceNode.class';
|
|
6
|
+
import { TextNode } from './textNode.class';
|
|
7
7
|
class EnumMethodNode extends TextNode {
|
|
8
8
|
}
|
|
9
9
|
class EnumEntryNode extends I18nNode {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
10
|
+
static matches(name, data) {
|
|
11
|
+
return true;
|
|
12
|
+
}
|
|
13
|
+
generateApi(parent, typeName) {
|
|
14
14
|
parent.createObject(this.namespaceName, def => {
|
|
15
15
|
def.asType(typeName);
|
|
16
|
-
this.eachChild(child => child.
|
|
16
|
+
this.eachChild(child => child.generateApi(def));
|
|
17
17
|
});
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
20
|
export class EnumNode extends I18nNode {
|
|
21
|
-
static matches(yamlData) {
|
|
22
|
-
|
|
21
|
+
static matches(name, yamlData) {
|
|
22
|
+
// console.log(name);
|
|
23
|
+
return yamlData && name.customTypeName === 'Enum';
|
|
23
24
|
}
|
|
24
|
-
|
|
25
|
-
// return [EnumEntryNode];
|
|
26
|
-
// }
|
|
27
|
-
parse(enumResourceContainer) {
|
|
28
|
-
return super.parse(enumResourceContainer['content']);
|
|
29
|
-
}
|
|
30
|
-
parseEntry(name, data, defaultNodeType) {
|
|
25
|
+
parseChild(name, data, defaultNodeType) {
|
|
31
26
|
if (defaultNodeType['name'] === NameSpaceNode['name']) {
|
|
32
|
-
return super.
|
|
27
|
+
return super.parseChild(name, data, EnumEntryNode);
|
|
33
28
|
}
|
|
34
29
|
else {
|
|
35
|
-
throw new Error(`entry '${name}' in '${this.accessor}' is not an object.
|
|
30
|
+
throw new Error(`entry '${name}' in '${this.accessor}' is not an object. Enum children to be an object.`);
|
|
36
31
|
}
|
|
37
32
|
}
|
|
38
|
-
|
|
33
|
+
generateApi(parent) {
|
|
39
34
|
parent.nestedContainer(this.namespaceName, namespace => {
|
|
40
35
|
const enumType = namespace.defineInterface(`${this.className}Entry`);
|
|
41
36
|
// only process enum entry nodes for now so we guarantee all the children
|
|
42
37
|
// are enum types.
|
|
43
38
|
this.eachChild(child => {
|
|
44
|
-
child.
|
|
39
|
+
child.generateApi(namespace, enumType.name);
|
|
45
40
|
});
|
|
46
41
|
const enums = namespace.allOfType(ObjectDef);
|
|
47
42
|
enums[0].forEach(FunctionDef, f => {
|
|
@@ -50,56 +45,44 @@ export class EnumNode extends I18nNode {
|
|
|
50
45
|
enums[0].forEach(ObjectDef, f => {
|
|
51
46
|
enumType.createObject(f.name, f.typeName());
|
|
52
47
|
});
|
|
53
|
-
// compile the rest of the children.
|
|
54
|
-
// this.eachChild(child => {
|
|
55
|
-
// if (!(child instanceof EnumEntryNode)) {
|
|
56
|
-
// child.compile(namespace);
|
|
57
|
-
// }
|
|
58
|
-
// });
|
|
59
48
|
const enumKeyType = `${this.fqClassName}Key`;
|
|
60
|
-
namespace.defineType(enumKeyType, this.children.map(child => `'${child.
|
|
49
|
+
namespace.defineType(enumKeyType, this.children.map(child => `'${child.name.asJsIdentifier}'`).join('|'));
|
|
61
50
|
// now create our lookup functions for the enum notes
|
|
62
|
-
namespace.createFunction('lookup', Arguments.
|
|
63
|
-
|
|
64
|
-
// if (child instanceof EnumEntryNode) {
|
|
65
|
-
// out.println(`if (key === '${child.camelCaseName}') { return I18n.${child.accessor}; }`);
|
|
66
|
-
// }
|
|
67
|
-
// });
|
|
68
|
-
out.println(`const result = this.tryLookup(key);`);
|
|
51
|
+
namespace.createFunction('lookup', Arguments.createSingle('key', enumKeyType), enumType.name, out => {
|
|
52
|
+
out.println(`const result = tryLookup(key);`);
|
|
69
53
|
out.println(`if (!result) {`);
|
|
70
54
|
out.println(` throw new Error("Unknown enum key '" + key + "'. Must be one of ${this.lookupKeys().join(', ')}")`);
|
|
71
55
|
out.println(`}`);
|
|
72
56
|
out.println(`return result;`);
|
|
73
57
|
});
|
|
74
|
-
namespace.createFunction('tryLookup', Arguments.
|
|
58
|
+
namespace.createFunction('tryLookup', Arguments.createSingle('key', 'string'), enumType.name, out => {
|
|
75
59
|
this.eachChild(child => {
|
|
76
60
|
// if (child instanceof EnumEntryNode) {
|
|
77
|
-
out.println(`if (key === '${child.
|
|
61
|
+
out.println(`if (key === '${child.name.asJsIdentifier}') { return I18n.${child.accessor}; }`);
|
|
78
62
|
// }
|
|
79
63
|
});
|
|
80
64
|
out.println(`return null;`);
|
|
81
65
|
});
|
|
82
|
-
namespace.createFunction('nameOf', Arguments.
|
|
66
|
+
namespace.createFunction('nameOf', Arguments.createSingle('option', enumType.name), enumKeyType, out => {
|
|
83
67
|
this.eachChild(child => {
|
|
84
|
-
|
|
85
|
-
out.println(`if (option === I18n.${child.accessor}) { return '${child.camelCaseName}'; }`);
|
|
86
|
-
// }
|
|
68
|
+
out.println(`if (option === I18n.${child.accessor}) { return '${child.name.asJsIdentifier}'; }`);
|
|
87
69
|
});
|
|
88
70
|
out.println(`throw new Error("Unknown enum")`);
|
|
89
71
|
});
|
|
90
72
|
namespace.createFunction('asArray', Arguments.empty(), `${enumType.name}[]`, out => {
|
|
91
73
|
out.println(`return [`);
|
|
92
74
|
this.eachChild(child => {
|
|
93
|
-
// if (child instanceof EnumEntryNode) {
|
|
94
75
|
out.indent(_out => _out.println(`I18n.${child.accessor},`));
|
|
95
|
-
// }
|
|
96
76
|
});
|
|
97
77
|
out.println(']');
|
|
98
78
|
});
|
|
99
79
|
});
|
|
100
80
|
}
|
|
81
|
+
// generateMessageBundle(parent: ContainerElement): void {
|
|
82
|
+
//
|
|
83
|
+
// }
|
|
101
84
|
lookupKeys() {
|
|
102
|
-
return this.children.map(child => child.
|
|
85
|
+
return this.children.map(child => child.name.asJsIdentifier);
|
|
103
86
|
}
|
|
104
87
|
}
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bU5vZGUuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2VudW1Ob2RlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU5QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRWxELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFdEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRzVDLE1BQU0sY0FBZSxTQUFRLFFBQVE7Q0FJcEM7QUFFRCxNQUFNLGFBQWMsU0FBUSxRQUFRO0lBRWxDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBYyxFQUFFLElBQVM7UUFDdEMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsV0FBVyxDQUFDLE1BQXdCLEVBQUUsUUFBaUI7UUFDckQsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxFQUFFO1lBQzVDLEdBQUcsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDckIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNsRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQUdELE1BQU0sT0FBTyxRQUFTLFNBQVEsUUFBUTtJQUVwQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQWMsRUFBRSxRQUFhO1FBQzFDLHFCQUFxQjtRQUNyQixPQUFPLFFBQVEsSUFBSSxJQUFJLENBQUMsY0FBYyxLQUFLLE1BQU0s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
|
|
@@ -1,11 +1,3 @@
|
|
|
1
|
-
import * as yaml from 'js-yaml';
|
|
2
|
-
export declare class CustomType {
|
|
3
|
-
readonly className: string;
|
|
4
|
-
readonly importDeclaration: string;
|
|
5
|
-
constructor(className: string, importDeclaration: string);
|
|
6
|
-
asYamlType(): yaml.Type;
|
|
7
|
-
asYamlListType(): yaml.Type;
|
|
8
|
-
}
|
|
9
1
|
export declare class I18nGenerator {
|
|
10
2
|
private rootNode;
|
|
11
3
|
private customTypes;
|
|
@@ -13,6 +5,6 @@ export declare class I18nGenerator {
|
|
|
13
5
|
constructor();
|
|
14
6
|
registerType(typeName: string, importDeclaration: string): void;
|
|
15
7
|
readFile(fileName: string): void;
|
|
16
|
-
|
|
17
|
-
|
|
8
|
+
getApiContent(): string;
|
|
9
|
+
getDefaultBundleContent(): string;
|
|
18
10
|
}
|