@coolon/i18n-resource-generator 2.0.14 → 2.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/CHANGELOG.md +15 -0
- package/build/main/lib/bin/cli.js +16 -11
- package/build/main/lib/enumNode.class.js +4 -4
- package/build/main/lib/i18nGenerator.d.ts +1 -1
- package/build/main/lib/i18nGenerator.js +3 -3
- package/build/main/lib/i18nNode.class.d.ts +2 -1
- package/build/main/lib/i18nNode.class.js +2 -2
- package/build/main/lib/rootNode.class.d.ts +3 -1
- package/build/main/lib/rootNode.class.js +7 -3
- package/build/module/lib/bin/cli.js +16 -11
- package/build/module/lib/enumNode.class.js +4 -4
- package/build/module/lib/i18nGenerator.d.ts +1 -1
- package/build/module/lib/i18nGenerator.js +3 -3
- package/build/module/lib/i18nNode.class.d.ts +2 -1
- package/build/module/lib/i18nNode.class.js +2 -2
- package/build/module/lib/rootNode.class.d.ts +3 -1
- package/build/module/lib/rootNode.class.js +7 -3
- package/package.json +4 -3
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,21 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
<a name="2.1.0"></a>
|
|
6
|
+
# [2.1.0](https://github.com/YOUR_GITHUB_USER_NAME/i18n-resource-generator/compare/v2.0.15...v2.1.0) (2021-03-06)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* added support for custom output files and namespace ([ae055eb](https://github.com/YOUR_GITHUB_USER_NAME/i18n-resource-generator/commit/ae055eb))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
<a name="2.0.15"></a>
|
|
16
|
+
## [2.0.15](https://github.com/YOUR_GITHUB_USER_NAME/i18n-resource-generator/compare/v2.0.14...v2.0.15) (2021-03-06)
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
5
20
|
<a name="2.0.14"></a>
|
|
6
21
|
## [2.0.14](https://github.com/YOUR_GITHUB_USER_NAME/i18n-resource-generator/compare/v2.0.13...v2.0.14) (2021-02-26)
|
|
7
22
|
|
|
@@ -11,6 +11,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
11
11
|
return result;
|
|
12
12
|
};
|
|
13
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
const typescript_utilities_1 = require("@coolon/typescript-utilities");
|
|
14
15
|
const commander_1 = __importDefault(require("commander"));
|
|
15
16
|
const fs = __importStar(require("fs"));
|
|
16
17
|
const glob_1 = __importDefault(require("glob"));
|
|
@@ -21,7 +22,7 @@ commander_1.default
|
|
|
21
22
|
.name('i18n-resource-generator')
|
|
22
23
|
.version('0.1.0')
|
|
23
24
|
.arguments('<sourceDir> <outputDir>')
|
|
24
|
-
.action(function (sourceDir, outputDir) {
|
|
25
|
+
.action(function (sourceDir, outputDir, outputFile) {
|
|
25
26
|
srcDir = sourceDir;
|
|
26
27
|
outDir = outputDir;
|
|
27
28
|
})
|
|
@@ -41,19 +42,22 @@ let localeDir = `${outDir}/locales`;
|
|
|
41
42
|
if (!fs.existsSync(localeDir)) {
|
|
42
43
|
fs.mkdirSync(localeDir);
|
|
43
44
|
}
|
|
44
|
-
const gen = new i18nGenerator_1.I18nGenerator();
|
|
45
45
|
const configFile = `${srcDir}/config.json`;
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
const defaultKeysBundleFile = `${outDir}/locales/message-keys.json`;
|
|
46
|
+
let rootNamespace;
|
|
47
|
+
let imports;
|
|
49
48
|
if (fs.existsSync(configFile)) {
|
|
50
49
|
const config = JSON.parse(fs.readFileSync(configFile, 'utf8'));
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
console.log(`registering import: ${key} --> ${imports[key]}`);
|
|
54
|
-
gen.registerType(key, imports[key]);
|
|
55
|
-
}
|
|
50
|
+
rootNamespace = config['class'] || 'I18n';
|
|
51
|
+
imports = config['customTypeImports'] || [];
|
|
56
52
|
}
|
|
53
|
+
const gen = new i18nGenerator_1.I18nGenerator(rootNamespace);
|
|
54
|
+
for (let key in imports) {
|
|
55
|
+
console.log(`registering import: ${key} --> ${imports[key]}`);
|
|
56
|
+
gen.registerType(key, imports[key]);
|
|
57
|
+
}
|
|
58
|
+
const defaultBundleFile = `${outDir}/locales/en.json`;
|
|
59
|
+
const defaultKeysBundleFile = `${outDir}/locales/message-keys.json`;
|
|
60
|
+
const apiFile = `${outDir}/${typescript_utilities_1.Stringy.from(rootNamespace).dasherize().toString()}.ts`;
|
|
57
61
|
const pattern = `${srcDir}/**/*.yml`;
|
|
58
62
|
console.log(`Scanning -> ${pattern}`);
|
|
59
63
|
glob_1.default(pattern, {}, function (error, files) {
|
|
@@ -72,9 +76,10 @@ glob_1.default(pattern, {}, function (error, files) {
|
|
|
72
76
|
files.forEach(f => {
|
|
73
77
|
gen.readFile(f);
|
|
74
78
|
});
|
|
79
|
+
console.log(`Writing to -> ${apiFile}`);
|
|
75
80
|
fs.writeFileSync(apiFile, gen.getApiContent());
|
|
76
81
|
fs.writeFileSync(defaultBundleFile, gen.getDefaultBundleContent('text'));
|
|
77
82
|
fs.writeFileSync(defaultKeysBundleFile, gen.getDefaultBundleContent('keys'));
|
|
78
83
|
}
|
|
79
84
|
});
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9iaW4vY2xpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFDQSx1RUFBdUQ7QUFDdkQsMERBQWdDO0FBQ2hDLHVDQUF5QjtBQUN6QixnREFBd0I7QUFDeEIsb0RBQWlEO0FBRWpELElBQUksTUFBTSxDQUFDO0FBQ1gsSUFBSSxNQUFNLENBQUM7QUFFWCxtQkFBTztLQUNKLElBQUksQ0FBQyx5QkFBeUIsQ0FBQztLQUMvQixPQUFPLENBQUMsT0FBTyxDQUFDO0tBQ2hCLFNBQVMsQ0FBQyx5QkFBeUIsQ0FBQztLQUNwQyxNQUFNLENBQUMsVUFBUyxTQUFTLEVBQUUsU0FBUyxFQUFFLFVBQVU7SUFDL0MsTUFBTSxHQUFHLFNBQVMsQ0FBQztJQUNuQixNQUFNLEdBQUcsU0FBUyxDQUFDO0FBQ3JCLENBQUMsQ0FBQztLQUNELEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7QUFFdkIsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLEVBQUU7SUFDakMsT0FBTyxDQUFDLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO0lBQzlDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7Q0FDakI7QUFFRCxJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVcsRUFBRTtJQUNqQyxPQUFPLENBQUMsS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7SUFDaEQsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztDQUNqQjtBQUVELElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFO0lBQzFCLEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7Q0FDdEI7QUFDRCxJQUFJLFNBQVMsR0FBRyxHQUFHLE1BQU0sVUFBVSxDQUFDO0FBQ3BDLElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFD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
|
|
@@ -68,21 +68,21 @@ class EnumNode extends i18nNode_class_1.I18nNode {
|
|
|
68
68
|
namespace.createFunction('tryLookup', arguments_class_1.Arguments.createSingle('key', 'string'), enumType.name, out => {
|
|
69
69
|
this.eachChild(child => {
|
|
70
70
|
// if (child instanceof EnumEntryNode) {
|
|
71
|
-
out.println(`if ([${child.name.validKeys().map(k => `'${k}'`)}].includes(key)) { return
|
|
71
|
+
out.println(`if ([${child.name.validKeys().map(k => `'${k}'`)}].includes(key)) { return ${this.rootNode().namespace}.${child.accessor}; }`);
|
|
72
72
|
// }
|
|
73
73
|
});
|
|
74
74
|
out.println(`return null;`);
|
|
75
75
|
});
|
|
76
76
|
namespace.createFunction('nameOf', arguments_class_1.Arguments.createSingle('option', enumType.name), enumKeyType, out => {
|
|
77
77
|
this.eachChild(child => {
|
|
78
|
-
out.println(`if (option ===
|
|
78
|
+
out.println(`if (option === ${this.rootNode().namespace}.${child.accessor}) { return '${child.name.asJsIdentifier}'; }`);
|
|
79
79
|
});
|
|
80
80
|
out.println(`throw new Error("Unknown enum")`);
|
|
81
81
|
});
|
|
82
82
|
namespace.createFunction('asArray', arguments_class_1.Arguments.empty(), `${enumType.name}[]`, out => {
|
|
83
83
|
out.println(`return [`);
|
|
84
84
|
this.eachChild(child => {
|
|
85
|
-
out.indent(_out => _out.println(
|
|
85
|
+
out.indent(_out => _out.println(`${this.rootNode().namespace}.${child.accessor},`));
|
|
86
86
|
});
|
|
87
87
|
out.println(']');
|
|
88
88
|
});
|
|
@@ -96,4 +96,4 @@ class EnumNode extends i18nNode_class_1.I18nNode {
|
|
|
96
96
|
}
|
|
97
97
|
}
|
|
98
98
|
exports.EnumNode = EnumNode;
|
|
99
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bU5vZGUuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2VudW1Ob2RlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLHVEQUE4QztBQUU5QywrREFBc0Q7QUFDdEQsMkRBQWtEO0FBRWxELHFEQUE0QztBQUM1QywrREFBc0Q7QUFFdEQscURBQTRDO0FBQzVDLDBDQUE0QjtBQUU1QixNQUFNLGNBQWUsU0FBUSx5QkFBUTtDQUlwQztBQUVELE1BQU0sYUFBYyxTQUFRLHlCQUFRO0lBRWxDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBYyxFQUFFLElBQVM7UUFDdEMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsV0FBVyxDQUFDLE1BQXdCLEVBQUUsUUFBaUI7UUFDckQsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxFQUFFO1lBQzVDLEdBQUcsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDckIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNsRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQUdELE1BQWEsUUFBUyxTQUFRLHlCQUFRO0lBRXBDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBYyxFQUFFLFFBQWE7UUFDMUMscUJBQXFCO1FBQ3JCLE9BQU8sUUFBUSxJQUFJLElBQUksQ0FBQyxjQUFjLEtBQUssTUFBTSxDQUFDO0lBQ3BELENBQUM7SUFFUyxVQUFVLENBQXFCLElBQWMsRUFBRSxJQUFTLEVBQUUsZUFBK0I7UUFDakcsSUFBSSxlQUFlLENBQUMsTUFBTSxDQUFDLEtBQUssbUNBQWEsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNyRCxPQUFPLEtBQUssQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFF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
|
|
@@ -2,7 +2,7 @@ export declare class I18nGenerator {
|
|
|
2
2
|
private rootNode;
|
|
3
3
|
private customTypes;
|
|
4
4
|
private _schema;
|
|
5
|
-
constructor();
|
|
5
|
+
constructor(rootNamespace: string);
|
|
6
6
|
registerType(typeName: string, importDeclaration: string): void;
|
|
7
7
|
readFile(fileName: string): void;
|
|
8
8
|
getApiContent(): string;
|
|
@@ -57,8 +57,8 @@ const writer_class_1 = require("./writer.class");
|
|
|
57
57
|
//
|
|
58
58
|
// TODO: replace custom gulp task with https://www.npmjs.com/package/gulp-reduce-file
|
|
59
59
|
class I18nGenerator {
|
|
60
|
-
constructor() {
|
|
61
|
-
this.rootNode = new rootNode_class_1.RootNode();
|
|
60
|
+
constructor(rootNamespace) {
|
|
61
|
+
this.rootNode = new rootNode_class_1.RootNode(rootNamespace);
|
|
62
62
|
this.rootNode.registerNodeTypes([
|
|
63
63
|
enumNode_class_1.EnumNode, customTypeArrayNode_class_1.CustomTypeArrayNode, customTypeNode_class_1.CustomTypeNode, textNode_class_1.TextNode, textArrayNode_class_1.TextArrayNode, valueNode_class_1.ValueNode, namespaceNode_class_1.NameSpaceNode
|
|
64
64
|
]);
|
|
@@ -91,4 +91,4 @@ class I18nGenerator {
|
|
|
91
91
|
}
|
|
92
92
|
}
|
|
93
93
|
exports.I18nGenerator = I18nGenerator;
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bkdlbmVyYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvaTE4bkdlbmVyYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxvQkFBb0I7QUFDcEIsdUNBQXlCO0FBQ3pCLDhDQUFnQztBQUVoQywyREFBK0M7QUFDL0MsMkVBQWtFO0FBQ2xFLGlFQUF3RDtBQUV4RCxxREFBNEM7QUFDNUMsK0RBQXNEO0FBQ3RELHFEQUE0QztBQUM1QywrREFBc0Q7QUFDdEQscURBQTRDO0FBQzVDLHVEQUE4QztBQUM5QyxpREFBNEM7QUFJNUMsc0JBQXNCO0FBQ3RCLDBDQUEwQztBQUMxQyxpQ0FBaUM7QUFDakMsdUNBQXVDO0FBQ3ZDLElBQUk7QUFDSixFQUFFO0FBQ0YsZ0NBQWdDO0FBQ2hDLGdEQUFnRDtBQUNoRCxNQUFNO0FBQ04sSUFBSTtBQUNKLEVBQUU7QUFDRiw4QkFBOEI7QUFDOUIsc0ZBQXNGO0FBQ3RGLE1BQU07QUFDTixJQUFJO0FBQ0osRUFBRTtBQUNGLG1DQUFtQztBQUNuQyxzRkFBc0Y7QUFDdEYsTUFBTTtBQUNOLElBQUk7QUFFSixxR0FBcUc7QUFDckcseUdBQXlHO0FBQ3pHLDBFQUEwRTtBQUMxRSxvREFBb0Q7QUFDcEQscUJBQXFCO0FBQ3JCLGlDQUFpQztBQUNqQyxrREFBa0Q7QUFDbEQsOENBQThDO0FBQzlDLE9BQU87QUFDUCxzQ0FBc0M7QUFDdEMsNEVBQTRFO0FBQzVFLCtFQUErRTtBQUMvRSxNQUFNO0FBQ04sRUFBRTtBQUNGLEVBQUU7QUFFRixxRkFBcUY7QUFDckYsTUFBYSxhQUFhO0lBTXhCLFlBQVksYUFBcUI7UUFDL0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLHlCQUFRLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQztZQUM5Qix5QkFBUSxFQUFFLCtDQUFtQixFQUFFLHFDQUFjLEVBQUUseUJBQVEsRUFBRSxtQ0FBYSxFQUFFLDJCQUFTLEVBQUUsbUNBQWE7U0FDakcsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFlBQVksQ0FBQyxRQUFnQixFQUFFLGlCQUF5QjtRQUN0RCxJQUFJLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsUUFBUSxDQUFDLFFBQWdCO1FBQ3ZCLDRDQUE0QztRQUM1QyxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksUUFBUSxFQUFFLENBQUMsQ0FBQztRQUNwQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDbEUsSUFBSTtZQUNGLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQy9CO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDVixNQUFNLElBQUksS0FBSyxDQUFDLHdCQUF3QixRQUFRLFFBQVEsQ0FBQyxDQUFDLE9BQU8sUUFBUSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztTQUNyRjtJQUNILENBQUM7SUFFRCxhQUFhO1FBQ1gsTUFBTSxNQUFNLEdBQUcsSUFBSSx5QkFBVSxFQUFFLENBQUM7UUFDaEMsTUFBTSxNQUFNLEdBQUcsSUFBSSx3QkFBTSxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbEMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6QixPQUFPLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsdUJBQXVCLENBQUMsT0FBc0I7UUFDNUMsTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMscUJBQXFCLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ25ELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7Q0FFRjtBQTFDRCxzQ0EwQ0MifQ==
|
|
@@ -2,6 +2,7 @@ import { Arguments } from './arguments.class';
|
|
|
2
2
|
import { ContainerElement } from './ast/containerElement.class';
|
|
3
3
|
import { Constructor } from './constructor.class';
|
|
4
4
|
import { NodeName } from './nodeName';
|
|
5
|
+
import { RootNode } from './rootNode.class';
|
|
5
6
|
import { Writer } from './writer.class';
|
|
6
7
|
export declare type NodeConstructor<T extends I18nNode> = {
|
|
7
8
|
matches(name: NodeName, data: any): boolean;
|
|
@@ -25,7 +26,7 @@ export declare class I18nNode {
|
|
|
25
26
|
parse(yamlData: any): void;
|
|
26
27
|
protected parseChild<T extends I18nNode>(name: NodeName, data: any, defaultNodeType: Constructor<T>): I18nNode;
|
|
27
28
|
getOrCreatNode(name: NodeName, type: typeof I18nNode): I18nNode;
|
|
28
|
-
rootNode():
|
|
29
|
+
rootNode(): RootNode;
|
|
29
30
|
nodeTypes(): NodeConstructor<any>[];
|
|
30
31
|
protected computeNodeTypeOf(name: NodeName, data: any): NodeConstructor<any>;
|
|
31
32
|
protected supportedChildNodeTypes(): NodeConstructor<any>[];
|
|
@@ -66,7 +66,7 @@ class I18nNode {
|
|
|
66
66
|
return node;
|
|
67
67
|
}
|
|
68
68
|
rootNode() {
|
|
69
|
-
return this.parent
|
|
69
|
+
return this.parent.rootNode();
|
|
70
70
|
}
|
|
71
71
|
nodeTypes() {
|
|
72
72
|
return this.rootNode().nodeTypes();
|
|
@@ -151,4 +151,4 @@ class I18nNode {
|
|
|
151
151
|
}
|
|
152
152
|
}
|
|
153
153
|
exports.I18nNode = I18nNode;
|
|
154
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
154
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bk5vZGUuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2kxOG5Ob2RlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLDBDQUE0QjtBQUc1Qix1REFBOEM7QUFHOUMseUNBQXNDO0FBV3RDLE1BQWEsUUFBUTtJQUtuQixZQUFzQixNQUFnQixFQUFrQixJQUFjO1FBQWhELFdBQU0sR0FBTixNQUFNLENBQVU7UUFBa0IsU0FBSSxHQUFKLElBQUksQ0FBVTtRQUg5RCxlQUFVLEdBQTBCLElBQUksR0FBRyxFQUFvQixDQUFDO1FBQ2hFLGlCQUFZLEdBQWMsSUFBSSwyQkFBUyxFQUFFLENBQUM7SUFHbEQsQ0FBQztJQUdELElBQUksR0FBRztRQUNMLE9BQU8sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLFFBQVE7UUFDVixNQUFNLE1BQU0sR0FBYSxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQzFFLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsaUJBQWlCLENBQUMsU0FBbUI7UUFDbkMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELE1BQU07UUFDSixPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN0QixDQUFDO0lBRUQsVUFB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
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { Module } from './ast/moduleDef.class';
|
|
2
2
|
import { I18nNode, NodeConstructor } from './i18nNode.class';
|
|
3
3
|
export declare class RootNode extends I18nNode {
|
|
4
|
+
readonly namespace: string;
|
|
4
5
|
private _nodeTypes;
|
|
5
6
|
private readonly customTypesImports;
|
|
6
|
-
constructor();
|
|
7
|
+
constructor(namespace?: string);
|
|
7
8
|
registerNodeTypes(nodeTypes: NodeConstructor<any>[]): void;
|
|
8
9
|
nodeTypes(): NodeConstructor<any>[];
|
|
10
|
+
rootNode(): RootNode;
|
|
9
11
|
parse(yamlData: any): void;
|
|
10
12
|
appendNamespaceTo(collector: string[]): void;
|
|
11
13
|
/*********
|
|
@@ -4,8 +4,9 @@ const arguments_class_1 = require("./arguments.class");
|
|
|
4
4
|
const i18nNode_class_1 = require("./i18nNode.class");
|
|
5
5
|
const nodeName_1 = require("./nodeName");
|
|
6
6
|
class RootNode extends i18nNode_class_1.I18nNode {
|
|
7
|
-
constructor() {
|
|
7
|
+
constructor(namespace = "I18n") {
|
|
8
8
|
super(null, new nodeName_1.NodeName(''));
|
|
9
|
+
this.namespace = namespace;
|
|
9
10
|
this._nodeTypes = [];
|
|
10
11
|
this.customTypesImports = new Map();
|
|
11
12
|
}
|
|
@@ -15,6 +16,9 @@ class RootNode extends i18nNode_class_1.I18nNode {
|
|
|
15
16
|
nodeTypes() {
|
|
16
17
|
return this._nodeTypes;
|
|
17
18
|
}
|
|
19
|
+
rootNode() {
|
|
20
|
+
return this;
|
|
21
|
+
}
|
|
18
22
|
parse(yamlData) {
|
|
19
23
|
this.withEachProperty(yamlData, (name, data) => {
|
|
20
24
|
const node = this.getOrCreatNode(name, this.computeNodeTypeOf(name, data));
|
|
@@ -42,7 +46,7 @@ class RootNode extends i18nNode_class_1.I18nNode {
|
|
|
42
46
|
module.addImport('import defaultBundle from \'./locales/en.json\'');
|
|
43
47
|
module.addImport('import messageKeysBundle from \'./locales/message-keys.json\'');
|
|
44
48
|
module.createStatement('const _messageLocaleKey = "message-keys"');
|
|
45
|
-
module.nestedContainer(
|
|
49
|
+
module.nestedContainer(this.namespace, namespace => {
|
|
46
50
|
namespace.createStatement('let _locale:string = null');
|
|
47
51
|
namespace.createStatement('let _activeBundle:any = null');
|
|
48
52
|
namespace.createStatement('const _bundles = new Map<string,any>()');
|
|
@@ -86,4 +90,4 @@ class RootNode extends i18nNode_class_1.I18nNode {
|
|
|
86
90
|
}
|
|
87
91
|
}
|
|
88
92
|
exports.RootNode = RootNode;
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdE5vZGUuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3Jvb3ROb2RlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsdURBQThDO0FBRzlDLHFEQUE2RDtBQUM3RCx5Q0FBc0M7QUFFdEMsTUFBYSxRQUFTLFNBQVEseUJBQVE7SUFLcEMsWUFBcUIsWUFBbUIsTUFBTTtRQUM1QyxLQUFLLENBQUMsSUFBSSxFQUFFLElBQUksbUJBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRFgsY0FBUyxHQUFULFNBQVMsQ0FBZ0I7UUFIdEMsZUFBVSxHQUEyQixFQUFFLENBQUM7UUFDL0IsdUJBQWtCLEdBQUcsSUFBSSxHQUFHLEVBQWtCLENBQUM7SUFJaEUsQ0FBQztJQUVELGlCQUFpQixDQUFDLFNBQWlDO1FBQ2pELElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO0lBQzlCLENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsS0FBSyxDQUFDLFFBQWE7UUFDakIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxDQUFDLElBQWMsRUFBRSxJQUFTLEVBQUUsRUFBRTtZQUM1RCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDM0UsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxTQUFtQjtRQUNuQyxRQUFRO0lBQ1YsQ0FBQztJQUVEOztjQUVVO0lBQ1YsV0FBVyxDQUFDLE1BQWM7UUFDeEIsTUFBTSxDQUFDLFNB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
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
import { Stringy } from '@coolon/typescript-utilities';
|
|
2
3
|
import program from 'commander';
|
|
3
4
|
import * as fs from 'fs';
|
|
4
5
|
import glob from 'glob';
|
|
@@ -9,7 +10,7 @@ program
|
|
|
9
10
|
.name('i18n-resource-generator')
|
|
10
11
|
.version('0.1.0')
|
|
11
12
|
.arguments('<sourceDir> <outputDir>')
|
|
12
|
-
.action(function (sourceDir, outputDir) {
|
|
13
|
+
.action(function (sourceDir, outputDir, outputFile) {
|
|
13
14
|
srcDir = sourceDir;
|
|
14
15
|
outDir = outputDir;
|
|
15
16
|
})
|
|
@@ -29,19 +30,22 @@ let localeDir = `${outDir}/locales`;
|
|
|
29
30
|
if (!fs.existsSync(localeDir)) {
|
|
30
31
|
fs.mkdirSync(localeDir);
|
|
31
32
|
}
|
|
32
|
-
const gen = new I18nGenerator();
|
|
33
33
|
const configFile = `${srcDir}/config.json`;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
const defaultKeysBundleFile = `${outDir}/locales/message-keys.json`;
|
|
34
|
+
let rootNamespace;
|
|
35
|
+
let imports;
|
|
37
36
|
if (fs.existsSync(configFile)) {
|
|
38
37
|
const config = JSON.parse(fs.readFileSync(configFile, 'utf8'));
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
console.log(`registering import: ${key} --> ${imports[key]}`);
|
|
42
|
-
gen.registerType(key, imports[key]);
|
|
43
|
-
}
|
|
38
|
+
rootNamespace = config['class'] || 'I18n';
|
|
39
|
+
imports = config['customTypeImports'] || [];
|
|
44
40
|
}
|
|
41
|
+
const gen = new I18nGenerator(rootNamespace);
|
|
42
|
+
for (let key in imports) {
|
|
43
|
+
console.log(`registering import: ${key} --> ${imports[key]}`);
|
|
44
|
+
gen.registerType(key, imports[key]);
|
|
45
|
+
}
|
|
46
|
+
const defaultBundleFile = `${outDir}/locales/en.json`;
|
|
47
|
+
const defaultKeysBundleFile = `${outDir}/locales/message-keys.json`;
|
|
48
|
+
const apiFile = `${outDir}/${Stringy.from(rootNamespace).dasherize().toString()}.ts`;
|
|
45
49
|
const pattern = `${srcDir}/**/*.yml`;
|
|
46
50
|
console.log(`Scanning -> ${pattern}`);
|
|
47
51
|
glob(pattern, {}, function (error, files) {
|
|
@@ -60,9 +64,10 @@ glob(pattern, {}, function (error, files) {
|
|
|
60
64
|
files.forEach(f => {
|
|
61
65
|
gen.readFile(f);
|
|
62
66
|
});
|
|
67
|
+
console.log(`Writing to -> ${apiFile}`);
|
|
63
68
|
fs.writeFileSync(apiFile, gen.getApiContent());
|
|
64
69
|
fs.writeFileSync(defaultBundleFile, gen.getDefaultBundleContent('text'));
|
|
65
70
|
fs.writeFileSync(defaultKeysBundleFile, gen.getDefaultBundleContent('keys'));
|
|
66
71
|
}
|
|
67
72
|
});
|
|
68
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9iaW4vY2xpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkQsT0FBTyxPQUFPLE1BQU0sV0FBVyxDQUFDO0FBQ2hDLE9BQU8sS0FBSyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBQ3pCLE9BQU8sSUFBSSxNQUFNLE1BQU0sQ0FBQztBQUN4QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFakQsSUFBSSxNQUFNLENBQUM7QUFDWCxJQUFJLE1BQU0sQ0FBQztBQUVYLE9BQU87S0FDSixJQUFJLENBQUMseUJBQXlCLENBQUM7S0FDL0IsT0FBTyxDQUFDLE9BQU8sQ0FBQztLQUNoQixTQUFTLENBQUMseUJBQXlCLENBQUM7S0FDcEMsTUFBTSxDQUFDLFVBQVMsU0FBUyxFQUFFLFNBQVMsRUFBRSxVQUFVO0lBQy9DLE1BQU0sR0FBRyxTQUFTLENBQUM7SUFDbkIsTUFBTSxHQUFHLFNBQVMsQ0FBQztBQUNyQixDQUFDLENBQUM7S0FDRCxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBRXZCLElBQUksT0FBTyxNQUFNLEtBQUssV0FBVyxFQUFFO0lBQ2pDLE9BQU8sQ0FBQyxLQUFLLENBQUMsOEJBQThCLENBQUMsQ0FBQztJQUM5QyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0NBQ2pCO0FBRUQsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLEVBQUU7SUFDakMsT0FBTyxDQUFDLEtBQUssQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO0lBQ2hELE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7Q0FDakI7QUFFRCxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRTtJQUMxQixFQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0NBQ3RCO0FBQ0QsSUFBSSxTQUFTLEdBQUcsR0FBRyxNQUFNLFVBQVUsQ0FBQztBQUNwQyxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRTtJQUM3QixFQUFFLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0NBQ3pCO0FBR0QsTUFBTSxVQUFVLEdBQUcsR0FBRyxNQUFNLGNBQWMsQ0FBQztBQUMzQyxJQUFJLGFBQXFCLENBQUM7QUFDMUIsSUFBSSxPQUFrQyxDQUFDO0FBRXZDLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsRUFBRTtJQUM3QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDL0QsYUFBYSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxNQUFNLENBQUM7SUFDMUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztDQUM3QztBQUVELE1BQU0sR0FBRyxHQUFHLElBQUksYUFBYSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0FBQzdDLEtBQUssSUFBSSxHQUFHLElBQUksT0FBTyxFQUFFO0lBQ3ZCLE9BQU8sQ0FBQyxHQUFHLENBQUMsdUJBQXVCLEdBQUcsUUFBUSxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzlELEdBQUcsQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0NBQ3JDO0FBR0QsTUFBTSxpQkFBaUIsR0FBRyxHQUFHLE1BQU0sa0JBQWtCLENBQUM7QUFDdEQsTUFBTSxxQkFBcUIsR0FBRyxHQUFHLE1BQU0sNEJBQTRCLENBQUM7QUFFcEUsTUFBTSxPQUFPLEdBQUcsR0FBRyxNQUFNLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDO0FBQ3JGLE1BQU0sT0FBTyxHQUFHLEdBQUcsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxlQUFlLE9BQU8sRUFBRSxDQUFDLENBQUM7QUFDdEMsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLEVBQUUsVUFBUyxLQUFLLEVBQUUsS0FBSztJQUNyQyxrQ0FBa0M7SUFDbEMsNkNBQTZDO0lBQzdDLHVDQUF1QztJQUN2QyxpQ0FBaUM7SUFDakMsSUFBSSxLQUFLLEVBQUU7UUFDVCxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDakI7SUFDRCxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQ3BCLE9BQU8sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQztLQUNoQztTQUFNO1FBQ0wsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNoQixHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUN4QyxFQUFFLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQztRQUMvQyxFQUFFLENBQUMsYUFBYSxDQUFDLGlCQUFpQixFQUFFLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ3pFLEVBQUUsQ0FBQyxhQUFhLENBQUMscUJBQXFCLEVBQUUsR0FBRyxDQUFDLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7S0FDOUU7QUFDSCxDQUFDLENBQUMsQ0FBQyJ9
|
|
@@ -59,21 +59,21 @@ export class EnumNode extends I18nNode {
|
|
|
59
59
|
namespace.createFunction('tryLookup', Arguments.createSingle('key', 'string'), enumType.name, out => {
|
|
60
60
|
this.eachChild(child => {
|
|
61
61
|
// if (child instanceof EnumEntryNode) {
|
|
62
|
-
out.println(`if ([${child.name.validKeys().map(k => `'${k}'`)}].includes(key)) { return
|
|
62
|
+
out.println(`if ([${child.name.validKeys().map(k => `'${k}'`)}].includes(key)) { return ${this.rootNode().namespace}.${child.accessor}; }`);
|
|
63
63
|
// }
|
|
64
64
|
});
|
|
65
65
|
out.println(`return null;`);
|
|
66
66
|
});
|
|
67
67
|
namespace.createFunction('nameOf', Arguments.createSingle('option', enumType.name), enumKeyType, out => {
|
|
68
68
|
this.eachChild(child => {
|
|
69
|
-
out.println(`if (option ===
|
|
69
|
+
out.println(`if (option === ${this.rootNode().namespace}.${child.accessor}) { return '${child.name.asJsIdentifier}'; }`);
|
|
70
70
|
});
|
|
71
71
|
out.println(`throw new Error("Unknown enum")`);
|
|
72
72
|
});
|
|
73
73
|
namespace.createFunction('asArray', Arguments.empty(), `${enumType.name}[]`, out => {
|
|
74
74
|
out.println(`return [`);
|
|
75
75
|
this.eachChild(child => {
|
|
76
|
-
out.indent(_out => _out.println(
|
|
76
|
+
out.indent(_out => _out.println(`${this.rootNode().namespace}.${child.accessor},`));
|
|
77
77
|
});
|
|
78
78
|
out.println(']');
|
|
79
79
|
});
|
|
@@ -86,4 +86,4 @@ export class EnumNode extends I18nNode {
|
|
|
86
86
|
return _.uniq(this.children.map(child => `'${child.name.camelisedName}'`).concat(this.children.map(child => `'${child.name.asJsIdentifier}'`)));
|
|
87
87
|
}
|
|
88
88
|
}
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bU5vZGUuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2VudW1Ob2RlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU5QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRWxELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFdEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBRTVCLE1BQU0sY0FBZSxTQUFRLFFBQVE7Q0FJcEM7QUFFRCxNQUFNLGFBQWMsU0FBUSxRQUFRO0lBRWxDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBYyxFQUFFLElBQVM7UUFDdEMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsV0FBVyxDQUFDLE1BQXdCLEVBQUUsUUFBaUI7UUFDckQsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxFQUFFO1lBQzVDLEdBQUcsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDckIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNsRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQUdELE1BQU0sT0FBTyxRQUFTLFNBQVEsUUFBUTtJQUVwQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQWMsRUFBRSxRQUFhO1FBQzFDLHFCQUFxQjtRQUNyQixPQUFP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
|
|
@@ -2,7 +2,7 @@ export declare class I18nGenerator {
|
|
|
2
2
|
private rootNode;
|
|
3
3
|
private customTypes;
|
|
4
4
|
private _schema;
|
|
5
|
-
constructor();
|
|
5
|
+
constructor(rootNamespace: string);
|
|
6
6
|
registerType(typeName: string, importDeclaration: string): void;
|
|
7
7
|
readFile(fileName: string): void;
|
|
8
8
|
getApiContent(): string;
|
|
@@ -48,8 +48,8 @@ import { RootWriter } from './writer.class';
|
|
|
48
48
|
//
|
|
49
49
|
// TODO: replace custom gulp task with https://www.npmjs.com/package/gulp-reduce-file
|
|
50
50
|
export class I18nGenerator {
|
|
51
|
-
constructor() {
|
|
52
|
-
this.rootNode = new RootNode();
|
|
51
|
+
constructor(rootNamespace) {
|
|
52
|
+
this.rootNode = new RootNode(rootNamespace);
|
|
53
53
|
this.rootNode.registerNodeTypes([
|
|
54
54
|
EnumNode, CustomTypeArrayNode, CustomTypeNode, TextNode, TextArrayNode, ValueNode, NameSpaceNode
|
|
55
55
|
]);
|
|
@@ -81,4 +81,4 @@ export class I18nGenerator {
|
|
|
81
81
|
return JSON.stringify(json, null, 3);
|
|
82
82
|
}
|
|
83
83
|
}
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bkdlbmVyYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvaTE4bkdlbmVyYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQkFBb0I7QUFDcEIsT0FBTyxLQUFLLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFDekIsT0FBTyxLQUFLLElBQUksTUFBTSxTQUFTLENBQUM7QUFFaEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV4RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDNUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJNUMsc0JBQXNCO0FBQ3RCLDBDQUEwQztBQUMxQyxpQ0FBaUM7QUFDakMsdUNBQXVDO0FBQ3ZDLElBQUk7QUFDSixFQUFFO0FBQ0YsZ0NBQWdDO0FBQ2hDLGdEQUFnRDtBQUNoRCxNQUFNO0FBQ04sSUFBSTtBQUNKLEVBQUU7QUFDRiw4QkFBOEI7QUFDOUIsc0ZBQXNGO0FBQ3RGLE1BQU07QUFDTixJQUFJO0FBQ0osRUFBRTtBQUNGLG1DQUFtQztBQUNuQyxzRkFBc0Y7QUFDdEYsTUFBTTtBQUNOLElBQUk7QUFFSixxR0FBcUc7QUFDckcseUdBQXlHO0FBQ3pHLDBFQUEwRTtBQUMxRSxvREFBb0Q7QUFDcEQscUJBQXFCO0FBQ3JCLGlDQUFpQztBQUNqQyxrREFBa0Q7QUFDbEQsOENBQThDO0FBQzlDLE9BQU87QUFDUCxzQ0FBc0M7QUFDdEMsNEVBQTRFO0FBQzVFLCtFQUErRTtBQUMvRSxNQUFNO0FBQ04sRUFBRTtBQUNGLEVBQUU7QUFFRixxRkFBcUY7QUFDckYsTUFBTSxPQUFPLGFBQWE7SUFNeEIsWUFBWSxhQUFxQjtRQUMvQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUM7WUFDOUIsUUFBUSxFQUFFLG1CQUFtQixFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxhQUFhO1NBQ2pHLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxZQUFZLENBQUMsUUFBZ0IsRUFBRSxpQkFBeUI7UUFDdEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVELFFBQVEsQ0FBQyxRQUFnQjtRQUN2Qiw0Q0FBNEM7UUFDNUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDcEMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ2xFLElBQUk7WUFDRixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUMvQjtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsUUFBUSxRQUFRLENBQUMsQ0FBQyxPQUFPLFFBQVEsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7U0FDckY7SUFDSCxDQUFDO0lBRUQsYUFBYTtRQUNYLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFDaEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxNQUFNLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsQyxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3pCLE9BQU8sTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxPQUFzQjtRQUM1QyxNQUFNLElBQUksR0FBRyxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDbkQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDdkMsQ0FBQztDQUVGIn0=
|
|
@@ -2,6 +2,7 @@ import { Arguments } from './arguments.class';
|
|
|
2
2
|
import { ContainerElement } from './ast/containerElement.class';
|
|
3
3
|
import { Constructor } from './constructor.class';
|
|
4
4
|
import { NodeName } from './nodeName';
|
|
5
|
+
import { RootNode } from './rootNode.class';
|
|
5
6
|
import { Writer } from './writer.class';
|
|
6
7
|
export declare type NodeConstructor<T extends I18nNode> = {
|
|
7
8
|
matches(name: NodeName, data: any): boolean;
|
|
@@ -25,7 +26,7 @@ export declare class I18nNode {
|
|
|
25
26
|
parse(yamlData: any): void;
|
|
26
27
|
protected parseChild<T extends I18nNode>(name: NodeName, data: any, defaultNodeType: Constructor<T>): I18nNode;
|
|
27
28
|
getOrCreatNode(name: NodeName, type: typeof I18nNode): I18nNode;
|
|
28
|
-
rootNode():
|
|
29
|
+
rootNode(): RootNode;
|
|
29
30
|
nodeTypes(): NodeConstructor<any>[];
|
|
30
31
|
protected computeNodeTypeOf(name: NodeName, data: any): NodeConstructor<any>;
|
|
31
32
|
protected supportedChildNodeTypes(): NodeConstructor<any>[];
|
|
@@ -57,7 +57,7 @@ export class I18nNode {
|
|
|
57
57
|
return node;
|
|
58
58
|
}
|
|
59
59
|
rootNode() {
|
|
60
|
-
return this.parent
|
|
60
|
+
return this.parent.rootNode();
|
|
61
61
|
}
|
|
62
62
|
nodeTypes() {
|
|
63
63
|
return this.rootNode().nodeTypes();
|
|
@@ -141,4 +141,4 @@ export class I18nNode {
|
|
|
141
141
|
});
|
|
142
142
|
}
|
|
143
143
|
}
|
|
144
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
144
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bk5vZGUuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2kxOG5Ob2RlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBRzVCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUc5QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBV3RDLE1BQU0sT0FBTyxRQUFRO0lBS25CLFlBQXNCLE1BQWdCLEVBQWtCLElBQWM7UUFBaEQsV0FBTSxHQUFOLE1BQU0sQ0FBVTtRQUFrQixTQUFJLEdBQUosSUFBSSxDQUFVO1FBSDlELGVBQVUsR0FBMEIsSUFBSSxHQUFHLEVBQW9CLENBQUM7UUFDaEUsaUJBQVksR0FBYyxJQUFJLFNBQVMsRUFBRSxDQUFDO0lBR2xELENBQUM7SUFHRCxJQUFJLEdBQUc7UUFDTCxPQUFPLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxRQUFRO1FBQ1YsTUFBTSxNQUFNLEdBQWEsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUMxRSxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVELGlCQUFpQixDQUFDLFNBQW1CO1FBQ25DLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFD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
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { Module } from './ast/moduleDef.class';
|
|
2
2
|
import { I18nNode, NodeConstructor } from './i18nNode.class';
|
|
3
3
|
export declare class RootNode extends I18nNode {
|
|
4
|
+
readonly namespace: string;
|
|
4
5
|
private _nodeTypes;
|
|
5
6
|
private readonly customTypesImports;
|
|
6
|
-
constructor();
|
|
7
|
+
constructor(namespace?: string);
|
|
7
8
|
registerNodeTypes(nodeTypes: NodeConstructor<any>[]): void;
|
|
8
9
|
nodeTypes(): NodeConstructor<any>[];
|
|
10
|
+
rootNode(): RootNode;
|
|
9
11
|
parse(yamlData: any): void;
|
|
10
12
|
appendNamespaceTo(collector: string[]): void;
|
|
11
13
|
/*********
|
|
@@ -2,8 +2,9 @@ import { Arguments } from './arguments.class';
|
|
|
2
2
|
import { I18nNode } from './i18nNode.class';
|
|
3
3
|
import { NodeName } from './nodeName';
|
|
4
4
|
export class RootNode extends I18nNode {
|
|
5
|
-
constructor() {
|
|
5
|
+
constructor(namespace = "I18n") {
|
|
6
6
|
super(null, new NodeName(''));
|
|
7
|
+
this.namespace = namespace;
|
|
7
8
|
this._nodeTypes = [];
|
|
8
9
|
this.customTypesImports = new Map();
|
|
9
10
|
}
|
|
@@ -13,6 +14,9 @@ export class RootNode extends I18nNode {
|
|
|
13
14
|
nodeTypes() {
|
|
14
15
|
return this._nodeTypes;
|
|
15
16
|
}
|
|
17
|
+
rootNode() {
|
|
18
|
+
return this;
|
|
19
|
+
}
|
|
16
20
|
parse(yamlData) {
|
|
17
21
|
this.withEachProperty(yamlData, (name, data) => {
|
|
18
22
|
const node = this.getOrCreatNode(name, this.computeNodeTypeOf(name, data));
|
|
@@ -40,7 +44,7 @@ export class RootNode extends I18nNode {
|
|
|
40
44
|
module.addImport('import defaultBundle from \'./locales/en.json\'');
|
|
41
45
|
module.addImport('import messageKeysBundle from \'./locales/message-keys.json\'');
|
|
42
46
|
module.createStatement('const _messageLocaleKey = "message-keys"');
|
|
43
|
-
module.nestedContainer(
|
|
47
|
+
module.nestedContainer(this.namespace, namespace => {
|
|
44
48
|
namespace.createStatement('let _locale:string = null');
|
|
45
49
|
namespace.createStatement('let _activeBundle:any = null');
|
|
46
50
|
namespace.createStatement('const _bundles = new Map<string,any>()');
|
|
@@ -83,4 +87,4 @@ export class RootNode extends I18nNode {
|
|
|
83
87
|
this.customTypesImports.set(customType.typeName, customType.importDeclaration);
|
|
84
88
|
}
|
|
85
89
|
}
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdE5vZGUuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3Jvb3ROb2RlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUc5QyxPQUFPLEVBQUUsUUFBUSxFQUFtQixNQUFNLGtCQUFrQixDQUFDO0FBQzdELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFdEMsTUFBTSxPQUFPLFFBQVMsU0FBUSxRQUFRO0lBS3BDLFlBQXFCLFlBQW1CLE1BQU07UUFDNUMsS0FBSyxDQUFDLElBQUksRUFBRSxJQUFJLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRFgsY0FBUyxHQUFULFNBQVMsQ0FBZ0I7UUFIdEMsZUFBVSxHQUEyQixFQUFFLENBQUM7UUFDL0IsdUJBQWtCLEdBQUcsSUFBSSxHQUFHLEVBQWtCLENBQUM7SUFJaEUsQ0FBQztJQUVELGlCQUFpQixDQUFDLFNBQWlDO1FBQ2pELElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO0lBQzlCLENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsS0FBSyxDQUFDLFFBQWE7UUFDakIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxDQUFDLElBQWMsRUFBRSxJQUFTLEVBQUUsRUFBRTtZQUM1RCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDM0UsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFF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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@coolon/i18n-resource-generator",
|
|
3
|
-
"version": "2.0
|
|
3
|
+
"version": "2.1.0",
|
|
4
4
|
"description": "Generates typescript classes from yml resource bundles using the icu message format",
|
|
5
5
|
"main": "build/main/index.js",
|
|
6
6
|
"typings": "build/main/index.d.ts",
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
"node": ">=8.9"
|
|
59
59
|
},
|
|
60
60
|
"dependencies": {
|
|
61
|
-
"@coolon/typescript-utilities": "^2.
|
|
61
|
+
"@coolon/typescript-utilities": "^2.2.0",
|
|
62
62
|
"@typescript-plus/fast-memoize-decorator": "^0.1.0",
|
|
63
63
|
"barrelsby": "^2.1.1",
|
|
64
64
|
"format-message-interpret": "^6.2.3",
|
|
@@ -70,7 +70,8 @@
|
|
|
70
70
|
"string": "^3.3.3",
|
|
71
71
|
"through2": "^2.0.3",
|
|
72
72
|
"ts-morph": "^3.1.3",
|
|
73
|
-
"vinyl": "^2.0.1"
|
|
73
|
+
"vinyl": "^2.0.1",
|
|
74
|
+
"reflect-metadata": "^0.1.13"
|
|
74
75
|
},
|
|
75
76
|
"devDependencies": {
|
|
76
77
|
"@types/chai": "^4.1.7",
|