namirasoft-sdk-generator 1.3.48 → 1.3.49
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/builder/npm/NPMBuilder.d.ts +1 -0
- package/dist/builder/npm/NPMBuilder.js +53 -3
- package/dist/builder/npm/NPMBuilder.js.map +1 -1
- package/dist/builder/npm/TypeBuilder.d.ts +1 -1
- package/dist/builder/npm/TypeBuilder.js +2 -2
- package/dist/builder/npm/TypeBuilder.js.map +1 -1
- package/dist/builder/php/PHPBuilder.d.ts +1 -0
- package/dist/builder/php/PHPBuilder.js +52 -2
- package/dist/builder/php/PHPBuilder.js.map +1 -1
- package/dist/builder/php/TypeBuilder.d.ts +1 -1
- package/dist/builder/php/TypeBuilder.js +2 -2
- package/dist/builder/php/TypeBuilder.js.map +1 -1
- package/package.json +3 -3
- package/src/builder/npm/NPMBuilder.ts +59 -4
- package/src/builder/npm/TypeBuilder.ts +2 -2
- package/src/builder/php/PHPBuilder.ts +186 -2
- package/src/builder/php/TypeBuilder.ts +2 -2
|
@@ -9,6 +9,7 @@ export declare class NPMBuilder extends BaseBuilder {
|
|
|
9
9
|
getCLI(tags: string[]): Promise<TS>;
|
|
10
10
|
getCLITagCommand(tag: string): Promise<TS>;
|
|
11
11
|
getCLIControllerCommand(controller: ControllerSchema): Promise<TS>;
|
|
12
|
+
getMeta(metadatabase: TS, schema: ObjectSchema): Promise<TS | null>;
|
|
12
13
|
getRow(schema: ObjectSchema): Promise<TS | null>;
|
|
13
14
|
getEnum(schema: EnumSchema): Promise<TS[] | null>;
|
|
14
15
|
getServer(tags: string[]): TS;
|
|
@@ -47,9 +47,10 @@ class NPMBuilder extends BaseBuilder_1.BaseBuilder {
|
|
|
47
47
|
return __awaiter(this, void 0, void 0, function* () {
|
|
48
48
|
this.dst.clean();
|
|
49
49
|
this.dst.mkFolder("src");
|
|
50
|
-
this.dst.mkFolder("src/row");
|
|
51
|
-
this.dst.mkFolder("src/enum");
|
|
52
50
|
this.dst.mkFolder("src/command");
|
|
51
|
+
this.dst.mkFolder("src/enum");
|
|
52
|
+
this.dst.mkFolder("src/meta");
|
|
53
|
+
this.dst.mkFolder("src/row");
|
|
53
54
|
this.copy("logo.png", "logo.png");
|
|
54
55
|
yield this.dst.download("https://static.namirasoft.com/template/npm/ts/.gitignore", ".gitignore");
|
|
55
56
|
yield this.dst.download("https://static.namirasoft.com/template/npm/.npmignore", ".npmignore");
|
|
@@ -104,6 +105,19 @@ class NPMBuilder extends BaseBuilder_1.BaseBuilder {
|
|
|
104
105
|
if (tss)
|
|
105
106
|
commands.push(tss);
|
|
106
107
|
}
|
|
108
|
+
let metas = [];
|
|
109
|
+
let metadatabase = new TS_1.TS("./src/meta", "./meta/", "MetaDatabase", undefined, true);
|
|
110
|
+
metadatabase.fields.push(`public static main: MetaDatabase = new MetaDatabase();`);
|
|
111
|
+
metadatabase.constructors.push(`constructor()`);
|
|
112
|
+
metadatabase.constructors.push(`{`);
|
|
113
|
+
for (let i = 0; i < this.schema.tables.length; i++) {
|
|
114
|
+
const obj = this.schema.tables[i];
|
|
115
|
+
let ts = yield this.getMeta(metadatabase, obj);
|
|
116
|
+
if (ts)
|
|
117
|
+
metas.push(ts);
|
|
118
|
+
}
|
|
119
|
+
metadatabase.constructors.push(`}`);
|
|
120
|
+
metas.push(metadatabase);
|
|
107
121
|
let rows = [];
|
|
108
122
|
for (let i = 0; i < objs.length; i++) {
|
|
109
123
|
const obj = objs[i];
|
|
@@ -143,7 +157,7 @@ class NPMBuilder extends BaseBuilder_1.BaseBuilder {
|
|
|
143
157
|
const c = this.schema.controllers[i];
|
|
144
158
|
yield this.addFunction(c, server_tags[c.tag]);
|
|
145
159
|
}
|
|
146
|
-
let all = [...commands, ...rows, server, server_base, ...servers];
|
|
160
|
+
let all = [...commands, ...metas, ...rows, server, server_base, ...servers];
|
|
147
161
|
all.filter(a => a.save).forEach(x => this.save(x));
|
|
148
162
|
let index = this.getIndex(...all);
|
|
149
163
|
this.save(index);
|
|
@@ -277,6 +291,42 @@ class NPMBuilder extends BaseBuilder_1.BaseBuilder {
|
|
|
277
291
|
return ts;
|
|
278
292
|
});
|
|
279
293
|
}
|
|
294
|
+
getMeta(metadatabase, schema) {
|
|
295
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
296
|
+
if (schema.external != null)
|
|
297
|
+
return null;
|
|
298
|
+
let getTS = (name) => __awaiter(this, void 0, void 0, function* () {
|
|
299
|
+
let TName = namirasoft_core_1.NamingConvention.Pascal_Case.convert(name, namirasoft_core_1.NamingConvention.Pascal_Case_Space);
|
|
300
|
+
let tname = namirasoft_core_1.NamingConvention.Pascal_Case.convert(name, namirasoft_core_1.NamingConvention.lower_case_dash);
|
|
301
|
+
let ts = new TS_1.TS("./src/meta", "./meta/", TName + "MetaTable", "BaseMetaTable", true);
|
|
302
|
+
ts.imports.push(`import { BaseMetaColumn, BaseMetaTable } from "namirasoft-core";`);
|
|
303
|
+
ts.fields.push(`public columns!: {`);
|
|
304
|
+
ts.constructors.push(`constructor()`);
|
|
305
|
+
ts.constructors.push(`{`);
|
|
306
|
+
ts.constructors.push(` super("${tname}", "${TName}");`);
|
|
307
|
+
ts.constructors.push(` this.columns = {`);
|
|
308
|
+
metadatabase.imports.push(`import { ${TName}MetaTable } from "./${TName}MetaTable";`);
|
|
309
|
+
metadatabase.fields.push(`public ${tname}: ${TName}MetaTable;`);
|
|
310
|
+
metadatabase.constructors.push(` this.${tname} = new ${TName}MetaTable();`);
|
|
311
|
+
if (schema.fields)
|
|
312
|
+
for (let i = 0; i < schema.fields.length; i++) {
|
|
313
|
+
const field = schema.fields[i];
|
|
314
|
+
let fname = field.name;
|
|
315
|
+
let FName = namirasoft_core_1.NamingConvention.lower_case_underscore.convert(fname, namirasoft_core_1.NamingConvention.Pascal_Case_Space);
|
|
316
|
+
ts.fields.push(` ${fname}: BaseMetaColumn;`);
|
|
317
|
+
ts.constructors.push(` ${fname}: new BaseMetaColumn("${fname}", "${FName}", "${field.type.type.toString()}", ${field.type.required}),`);
|
|
318
|
+
}
|
|
319
|
+
ts.fields.push(`}`);
|
|
320
|
+
ts.constructors.push(` };`);
|
|
321
|
+
ts.constructors.push(`}`);
|
|
322
|
+
return ts;
|
|
323
|
+
});
|
|
324
|
+
let name_meta = TypeBuilder_1.TypeBuilder.getClassName(schema.name, "");
|
|
325
|
+
if (name_meta)
|
|
326
|
+
return yield getTS(name_meta);
|
|
327
|
+
return null;
|
|
328
|
+
});
|
|
329
|
+
}
|
|
280
330
|
getRow(schema) {
|
|
281
331
|
return __awaiter(this, void 0, void 0, function* () {
|
|
282
332
|
if (schema.external != null)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NPMBuilder.js","sourceRoot":"","sources":["../../../src/builder/npm/NPMBuilder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NPMBuilder.js","sourceRoot":"","sources":["../../../src/builder/npm/NPMBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,6 @@ export declare class TypeBuilder extends BaseTypeBuilder<string> {
|
|
|
27
27
|
protected _toEnum(schema: EnumSchema): Promise<string>;
|
|
28
28
|
protected _toArray(schema: ArraySchema, callback: (schema: BaseTypeSchema) => void): Promise<string>;
|
|
29
29
|
protected _toObject(schema: ObjectSchema, callback: (schema: BaseTypeSchema) => void): Promise<string>;
|
|
30
|
-
static getClassName(name: string): string | null;
|
|
30
|
+
static getClassName(name: string, postFix?: string): string | null;
|
|
31
31
|
static getEnumName(name: string): string | null;
|
|
32
32
|
}
|
|
@@ -175,10 +175,10 @@ class TypeBuilder extends namirasoft_schema_1.BaseTypeBuilder {
|
|
|
175
175
|
return this.toBase(schema, type);
|
|
176
176
|
});
|
|
177
177
|
}
|
|
178
|
-
static getClassName(name) {
|
|
178
|
+
static getClassName(name, postFix = "Row") {
|
|
179
179
|
if (!name)
|
|
180
180
|
return null;
|
|
181
|
-
return name +
|
|
181
|
+
return name + postFix;
|
|
182
182
|
}
|
|
183
183
|
static getEnumName(name) {
|
|
184
184
|
return name;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TypeBuilder.js","sourceRoot":"","sources":["../../../src/builder/npm/TypeBuilder.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAiX;AAGjX,MAAa,WAAY,SAAQ,mCAAuB;IAGpD,YAAY,MAA6B,EAAE,SAAyB;QAEhE,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IACO,MAAM,CAAC,MAAsB,EAAE,IAAY;QAE/C,IAAI,CAAC,MAAM,CAAC,QAAQ;YAChB,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,UAAU,CAAC;QACnC,OAAO,IAAI,CAAC;IAChB,CAAC;IACwB,MAAM,CAAC,MAAiB;;YAE7C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACtC,CAAC;KAAA;IACwB,OAAO,CAAC,MAAkB;;YAE/C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC1C,CAAC;KAAA;IACwB,UAAU,CAAC,MAAqB;;YAErD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,WAAW,CAAC,MAAsB;;YAEvD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,YAAY,CAAC,MAAuB;;YAEzD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,UAAU,CAAC,MAAqB;;YAErD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,SAAS,CAAC,MAAoB;;YAEnD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,QAAQ,CAAC,MAAmB;;YAEjD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,SAAS,CAAC,MAAoB;;YAEnD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,UAAU,CAAC,MAAqB;;YAErD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,OAAO,CAAC,MAAkB;;YAE/C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,SAAS,CAAC,MAAoB;;YAEnD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,WAAW,CAAC,MAAsB;;YAEvD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACvC,CAAC;KAAA;IACwB,OAAO,CAAC,MAAkB;;YAE/C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACvC,CAAC;KAAA;IACwB,OAAO,CAAC,MAAkB;;YAE/C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,WAAW,CAAC,MAAsB;;YAEvD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,QAAQ,CAAC,MAAmB;;YAEjD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,QAAQ,CAAC,MAAmB;;YAEjD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,OAAO,CAAC,MAAkB;;YAE/C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,OAAO,CAAC,MAAkB;;YAE/C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,OAAO,CAAC,MAAkB;;YAE/C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC;KAAA;IACwB,QAAQ,CAAC,MAAmB,EAAE,QAA0C;;YAE7F,IAAI,KAAK,GAAa,EAAE,CAAC;YACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAC5C;gBACI,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC7B,IAAI,OAAO,GAAG,IAAI,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;gBACpD,IAAI,IAAI,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACvC,KAAK,CAAC,IAAI,CAAC,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,KAAK,CAAC,CAAC;aAC7B;YACD,KAAK,GAAG,CAAC,GAAI,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YAC7B,IAAI,GAAG,GAAG,EAAE,CAAC;YACb,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;gBACjB,GAAG,GAAG,KAAK,CAAC;iBACX,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;gBACtB,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;;gBAEf,GAAG,GAAG,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC;YACxC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC,CAAC;QAC3C,CAAC;KAAA;IACwB,SAAS,CAAC,MAAoB,EAAE,QAA0C;;YAE/F,IAAI,IAAI,GAAG,IAAI,CAAC;YAChB,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI;gBACvB,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;;gBAEnB,IAAI,GAAG,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACjD,IAAI,CAAC,IAAI,EACT;gBACI,IAAI,GAAG,EAAE,CAAC;gBACV,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI;oBACrB,IAAI,GAAG,KAAK,CAAC;qBACZ,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC;oBAC9B,IAAI,GAAG,IAAI,CAAC;qBAEhB;oBACI,IAAI,MAAM,GAAa,EAAE,CAAC;oBAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAC7C;wBACI,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;wBAC3B,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,EAChE;4BACI,IAAI,OAAO,GAAG,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;4BACtD,IAAI,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;4BAC5C,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC,CAAC;yBAC1C;qBACJ;oBACD,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;iBAC1C;aACJ;YACD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACrC,CAAC;KAAA;IACD,MAAM,CAAC,YAAY,CAAC,IAAY;
|
|
1
|
+
{"version":3,"file":"TypeBuilder.js","sourceRoot":"","sources":["../../../src/builder/npm/TypeBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ export declare class PHPBuilder extends BaseBuilder {
|
|
|
6
6
|
private getNameSpace;
|
|
7
7
|
protected onRun(): Promise<void>;
|
|
8
8
|
save(php: PHP): void;
|
|
9
|
+
getMeta(metadatabase: PHP, schema: ObjectSchema): Promise<PHP | null>;
|
|
9
10
|
getRow(schema: ObjectSchema): Promise<PHP | null>;
|
|
10
11
|
getEnum(schema: EnumSchema): Promise<PHP[] | null>;
|
|
11
12
|
getServer(tags: string[]): PHP;
|
|
@@ -31,8 +31,9 @@ class PHPBuilder extends BaseBuilder_1.BaseBuilder {
|
|
|
31
31
|
return __awaiter(this, void 0, void 0, function* () {
|
|
32
32
|
this.dst.clean();
|
|
33
33
|
this.dst.mkFolder("src");
|
|
34
|
-
this.dst.mkFolder("src/
|
|
34
|
+
this.dst.mkFolder("src/meta");
|
|
35
35
|
this.dst.mkFolder("src/enum");
|
|
36
|
+
this.dst.mkFolder("src/row");
|
|
36
37
|
this.copy("logo.png", "logo.png");
|
|
37
38
|
yield this.dst.download("https://static.namirasoft.com/template/composer/php/.gitignore", ".gitignore");
|
|
38
39
|
let composerjson = {
|
|
@@ -81,6 +82,19 @@ class PHPBuilder extends BaseBuilder_1.BaseBuilder {
|
|
|
81
82
|
let objs = yield looper.getObjects(true, () => { });
|
|
82
83
|
let enums = yield looper.getEnums(() => { });
|
|
83
84
|
let tags = [...new Set(this.schema.controllers.map(c => c.tag))];
|
|
85
|
+
let metas = [];
|
|
86
|
+
let metadatabase = new PHP_1.PHP(this.getNameSpace("meta"), "./src/meta", "./meta/", "MetaDatabase", undefined, true);
|
|
87
|
+
metadatabase.fields.push(`public static main: MetaDatabase = new MetaDatabase();`);
|
|
88
|
+
metadatabase.constructors.push(`constructor()`);
|
|
89
|
+
metadatabase.constructors.push(`{`);
|
|
90
|
+
for (let i = 0; i < this.schema.tables.length; i++) {
|
|
91
|
+
const obj = this.schema.tables[i];
|
|
92
|
+
let ts = yield this.getMeta(metadatabase, obj);
|
|
93
|
+
if (ts)
|
|
94
|
+
metas.push(ts);
|
|
95
|
+
}
|
|
96
|
+
metadatabase.constructors.push(`}`);
|
|
97
|
+
metas.push(metadatabase);
|
|
84
98
|
let rows = [];
|
|
85
99
|
for (let i = 0; i < objs.length; i++) {
|
|
86
100
|
const obj = objs[i];
|
|
@@ -120,7 +134,7 @@ class PHPBuilder extends BaseBuilder_1.BaseBuilder {
|
|
|
120
134
|
const c = this.schema.controllers[i];
|
|
121
135
|
yield this.addFunction(c, server_tags[c.tag]);
|
|
122
136
|
}
|
|
123
|
-
let all = [...rows, server, server_base, ...servers];
|
|
137
|
+
let all = [...metas, ...rows, server, server_base, ...servers];
|
|
124
138
|
all.filter(a => a.save).forEach(x => this.save(x));
|
|
125
139
|
yield this.dst.exec("composer validate");
|
|
126
140
|
});
|
|
@@ -128,6 +142,42 @@ class PHPBuilder extends BaseBuilder_1.BaseBuilder {
|
|
|
128
142
|
save(php) {
|
|
129
143
|
this.dst.saveFileText(php.getFilePath(), php.getContent());
|
|
130
144
|
}
|
|
145
|
+
getMeta(metadatabase, schema) {
|
|
146
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
147
|
+
if (schema.external != null)
|
|
148
|
+
return null;
|
|
149
|
+
let getPHP = (name) => __awaiter(this, void 0, void 0, function* () {
|
|
150
|
+
let TName = namirasoft_core_1.NamingConvention.Pascal_Case.convert(name, namirasoft_core_1.NamingConvention.Pascal_Case_Space);
|
|
151
|
+
let tname = namirasoft_core_1.NamingConvention.Pascal_Case.convert(name, namirasoft_core_1.NamingConvention.lower_case_dash);
|
|
152
|
+
let php = new PHP_1.PHP(this.getNameSpace("meta"), "./src/meta", "./meta/", TName + "MetaTable", "BaseMetaTable", true);
|
|
153
|
+
php.imports.push(`import { BaseMetaColumn, BaseMetaTable } from "namirasoft-core";`);
|
|
154
|
+
php.fields.push(`public columns!: {`);
|
|
155
|
+
php.constructors.push(`constructor()`);
|
|
156
|
+
php.constructors.push(`{`);
|
|
157
|
+
php.constructors.push(` super("${tname}", "${TName}");`);
|
|
158
|
+
php.constructors.push(` this.columns = {`);
|
|
159
|
+
metadatabase.imports.push(`import { ${TName}MetaTable } from "./${TName}MetaTable";`);
|
|
160
|
+
metadatabase.fields.push(`public ${TName}MetaTable ${tname};`);
|
|
161
|
+
metadatabase.constructors.push(` $this->${tname} = new ${TName}MetaTable();`);
|
|
162
|
+
if (schema.fields)
|
|
163
|
+
for (let i = 0; i < schema.fields.length; i++) {
|
|
164
|
+
const field = schema.fields[i];
|
|
165
|
+
let fname = field.name;
|
|
166
|
+
let FName = namirasoft_core_1.NamingConvention.lower_case_underscore.convert(fname, namirasoft_core_1.NamingConvention.Pascal_Case_Space);
|
|
167
|
+
php.fields.push(` BaseMetaColumn $${fname};`);
|
|
168
|
+
php.constructors.push(` $${fname} = new BaseMetaColumn("${fname}", "${FName}", "${field.type.type.toString()}", ${field.type.required}),`);
|
|
169
|
+
}
|
|
170
|
+
php.fields.push(`}`);
|
|
171
|
+
php.constructors.push(` };`);
|
|
172
|
+
php.constructors.push(`}`);
|
|
173
|
+
return php;
|
|
174
|
+
});
|
|
175
|
+
let name_meta = TypeBuilder_1.TypeBuilder.getClassName(schema.name, "");
|
|
176
|
+
if (name_meta)
|
|
177
|
+
return yield getPHP(name_meta);
|
|
178
|
+
return null;
|
|
179
|
+
});
|
|
180
|
+
}
|
|
131
181
|
getRow(schema) {
|
|
132
182
|
return __awaiter(this, void 0, void 0, function* () {
|
|
133
183
|
if (schema.external != null)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PHPBuilder.js","sourceRoot":"","sources":["../../../src/builder/php/PHPBuilder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PHPBuilder.js","sourceRoot":"","sources":["../../../src/builder/php/PHPBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,6 @@ export declare class TypeBuilder extends BaseTypeBuilder<string> {
|
|
|
27
27
|
protected _toEnum(schema: EnumSchema): Promise<string>;
|
|
28
28
|
protected _toArray(schema: ArraySchema, __: (schema: BaseTypeSchema) => void): Promise<string>;
|
|
29
29
|
protected _toObject(schema: ObjectSchema, _: (schema: BaseTypeSchema) => void): Promise<string>;
|
|
30
|
-
static getClassName(name: string): string | null;
|
|
30
|
+
static getClassName(name: string, postfix?: string): string | null;
|
|
31
31
|
static getEnumName(name: string): string | null;
|
|
32
32
|
}
|
|
@@ -145,10 +145,10 @@ class TypeBuilder extends namirasoft_schema_1.BaseTypeBuilder {
|
|
|
145
145
|
return this.toBase(schema, type);
|
|
146
146
|
});
|
|
147
147
|
}
|
|
148
|
-
static getClassName(name) {
|
|
148
|
+
static getClassName(name, postfix = "Row") {
|
|
149
149
|
if (!name)
|
|
150
150
|
return null;
|
|
151
|
-
return name +
|
|
151
|
+
return name + postfix;
|
|
152
152
|
}
|
|
153
153
|
static getEnumName(name) {
|
|
154
154
|
return name;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TypeBuilder.js","sourceRoot":"","sources":["../../../src/builder/php/TypeBuilder.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"TypeBuilder.js","sourceRoot":"","sources":["../../../src/builder/php/TypeBuilder.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAiX;AAGjX,MAAa,WAAY,SAAQ,mCAAuB;IAGpD,YAAY,MAA6B,EAAE,aAAsB;QAE7D,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACvC,CAAC;IACO,MAAM,CAAC,MAAsB,EAAE,IAAY;QAE/C,IAAI,CAAC,IAAI,CAAC,aAAa;YACnB,IAAI,CAAC,MAAM,CAAC,QAAQ;gBAChB,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC;QAC1B,OAAO,IAAI,CAAC;IAChB,CAAC;IACwB,MAAM,CAAC,MAAiB;;YAE7C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACtC,CAAC;KAAA;IACwB,OAAO,CAAC,MAAkB;;YAE/C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACvC,CAAC;KAAA;IACwB,UAAU,CAAC,MAAqB;;YAErD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACtC,CAAC;KAAA;IACwB,WAAW,CAAC,MAAsB;;YAEvD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACtC,CAAC;KAAA;IACwB,YAAY,CAAC,MAAuB;;YAEzD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACtC,CAAC;KAAA;IACwB,UAAU,CAAC,MAAqB;;YAErD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACtC,CAAC;KAAA;IACwB,SAAS,CAAC,MAAoB;;YAEnD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACtC,CAAC;KAAA;IACwB,QAAQ,CAAC,MAAmB;;YAEjD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACxC,CAAC;KAAA;IACwB,SAAS,CAAC,MAAoB;;YAEnD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACxC,CAAC;KAAA;IACwB,UAAU,CAAC,MAAqB;;YAErD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACxC,CAAC;KAAA;IACwB,OAAO,CAAC,MAAkB;;YAE/C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACxC,CAAC;KAAA;IACwB,SAAS,CAAC,MAAoB;;YAEnD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,WAAW,CAAC,MAAsB;;YAEvD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC7C,CAAC;KAAA;IACwB,OAAO,CAAC,MAAkB;;YAE/C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC7C,CAAC;KAAA;IACwB,OAAO,CAAC,MAAkB;;YAE/C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC7C,CAAC;KAAA;IACwB,WAAW,CAAC,MAAsB;;YAEvD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,QAAQ,CAAC,MAAmB;;YAEjD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,QAAQ,CAAC,MAAmB;;YAEjD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,OAAO,CAAC,MAAkB;;YAE/C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,OAAO,CAAC,MAAkB;;YAE/C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KAAA;IACwB,OAAO,CAAC,MAAkB;;YAE/C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC;KAAA;IACwB,QAAQ,CAAC,MAAmB,EAAE,EAAoC;;YAEvF,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAkBxC,CAAC;KAAA;IACwB,SAAS,CAAC,MAAoB,EAAE,CAAmC;;YAExF,IAAI,IAAI,GAAG,IAAI,CAAC;YAChB,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI;gBACvB,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;;gBAEnB,IAAI,GAAG,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACjD,IAAI,CAAC,IAAI,EACT;gBACI,IAAI,GAAG,QAAQ,CAAC;aAoBnB;YACD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACrC,CAAC;KAAA;IACD,MAAM,CAAC,YAAY,CAAC,IAAY,EAAE,UAAkB,KAAK;QAErD,IAAI,CAAC,IAAI;YACL,OAAO,IAAI,CAAC;QAChB,OAAO,IAAI,GAAG,OAAO,CAAC;IAC1B,CAAC;IACD,MAAM,CAAC,WAAW,CAAC,IAAY;QAE3B,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAlKD,kCAkKC"}
|
package/package.json
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"framework": "npm",
|
|
9
9
|
"application": "package",
|
|
10
10
|
"private": false,
|
|
11
|
-
"version": "1.3.
|
|
11
|
+
"version": "1.3.49",
|
|
12
12
|
"author": "Amir Abolhasani",
|
|
13
13
|
"license": "MIT",
|
|
14
14
|
"main": "./dist/index.js",
|
|
@@ -19,9 +19,9 @@
|
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"@types/node": "^20.14.2",
|
|
21
21
|
"axios": "^1.7.2",
|
|
22
|
-
"namirasoft-core": "^1.3.
|
|
22
|
+
"namirasoft-core": "^1.3.55",
|
|
23
23
|
"namirasoft-node-cli": "^1.3.8",
|
|
24
|
-
"namirasoft-schema": "^1.3.
|
|
24
|
+
"namirasoft-schema": "^1.3.16"
|
|
25
25
|
},
|
|
26
26
|
"bin": {
|
|
27
27
|
"ns-sdkg": "./dist/index.js"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AnySchema, ApplicationLooper, BaseTypeSchema, BaseVariableSchema, ControllerSchema, EnumSchema, ObjectSchema, VariableType } from "namirasoft-schema";
|
|
2
|
-
import { HTTPMethod } from "namirasoft-core";
|
|
2
|
+
import { HTTPMethod, NamingConvention } from "namirasoft-core";
|
|
3
3
|
import { BaseBuilder } from "../BaseBuilder";
|
|
4
4
|
import { TS } from "./TS";
|
|
5
5
|
import { TypeBuilder } from "./TypeBuilder";
|
|
@@ -16,9 +16,10 @@ export class NPMBuilder extends BaseBuilder
|
|
|
16
16
|
this.dst.clean();
|
|
17
17
|
// folder
|
|
18
18
|
this.dst.mkFolder("src");
|
|
19
|
-
this.dst.mkFolder("src/row");
|
|
20
|
-
this.dst.mkFolder("src/enum");
|
|
21
19
|
this.dst.mkFolder("src/command");
|
|
20
|
+
this.dst.mkFolder("src/enum");
|
|
21
|
+
this.dst.mkFolder("src/meta");
|
|
22
|
+
this.dst.mkFolder("src/row");
|
|
22
23
|
// copy
|
|
23
24
|
this.copy("logo.png", "logo.png");
|
|
24
25
|
// download
|
|
@@ -80,6 +81,23 @@ export class NPMBuilder extends BaseBuilder
|
|
|
80
81
|
if (tss)
|
|
81
82
|
commands.push(tss);
|
|
82
83
|
}
|
|
84
|
+
// Meta
|
|
85
|
+
let metas: TS[] = [];
|
|
86
|
+
let metadatabase = new TS("./src/meta", "./meta/", "MetaDatabase", undefined, true);
|
|
87
|
+
metadatabase.fields.push(`public static main: MetaDatabase = new MetaDatabase();`);
|
|
88
|
+
metadatabase.constructors.push(`constructor()`);
|
|
89
|
+
metadatabase.constructors.push(`{`);
|
|
90
|
+
for (let i = 0; i < this.schema.tables.length; i++)
|
|
91
|
+
{
|
|
92
|
+
const obj = this.schema.tables[i];
|
|
93
|
+
let ts = await this.getMeta(metadatabase, obj);
|
|
94
|
+
if (ts)
|
|
95
|
+
metas.push(ts);
|
|
96
|
+
}
|
|
97
|
+
metadatabase.constructors.push(`}`);
|
|
98
|
+
metas.push(metadatabase);
|
|
99
|
+
|
|
100
|
+
// Row
|
|
83
101
|
let rows: TS[] = [];
|
|
84
102
|
for (let i = 0; i < objs.length; i++)
|
|
85
103
|
{
|
|
@@ -125,7 +143,7 @@ export class NPMBuilder extends BaseBuilder
|
|
|
125
143
|
const c = this.schema.controllers[i];
|
|
126
144
|
await this.addFunction(c, server_tags[c.tag]);
|
|
127
145
|
}
|
|
128
|
-
let all = [...commands, ...rows, server, server_base, ...servers];
|
|
146
|
+
let all = [...commands, ...metas, ...rows, server, server_base, ...servers];
|
|
129
147
|
all.filter(a => a.save).forEach(x => this.save(x));
|
|
130
148
|
let index = this.getIndex(...all);
|
|
131
149
|
this.save(index);
|
|
@@ -275,6 +293,43 @@ export class NPMBuilder extends BaseBuilder
|
|
|
275
293
|
ts.functions.push(`}`);
|
|
276
294
|
return ts;
|
|
277
295
|
}
|
|
296
|
+
async getMeta(metadatabase: TS, schema: ObjectSchema): Promise<TS | null>
|
|
297
|
+
{
|
|
298
|
+
if (schema.external != null)
|
|
299
|
+
return null;
|
|
300
|
+
let getTS = async (name: string) =>
|
|
301
|
+
{
|
|
302
|
+
let TName = NamingConvention.Pascal_Case.convert(name, NamingConvention.Pascal_Case_Space);
|
|
303
|
+
let tname = NamingConvention.Pascal_Case.convert(name, NamingConvention.lower_case_dash);
|
|
304
|
+
let ts = new TS("./src/meta", "./meta/", TName + "MetaTable", "BaseMetaTable", true);
|
|
305
|
+
ts.imports.push(`import { BaseMetaColumn, BaseMetaTable } from "namirasoft-core";`);
|
|
306
|
+
ts.fields.push(`public columns!: {`);
|
|
307
|
+
ts.constructors.push(`constructor()`);
|
|
308
|
+
ts.constructors.push(`{`);
|
|
309
|
+
ts.constructors.push(` super("${tname}", "${TName}");`);
|
|
310
|
+
ts.constructors.push(` this.columns = {`);
|
|
311
|
+
metadatabase.imports.push(`import { ${TName}MetaTable } from "./${TName}MetaTable";`);
|
|
312
|
+
metadatabase.fields.push(`public ${tname}: ${TName}MetaTable;`);
|
|
313
|
+
metadatabase.constructors.push(` this.${tname} = new ${TName}MetaTable();`);
|
|
314
|
+
if (schema.fields)
|
|
315
|
+
for (let i = 0; i < schema.fields.length; i++)
|
|
316
|
+
{
|
|
317
|
+
const field = schema.fields[i];
|
|
318
|
+
let fname = field.name;
|
|
319
|
+
let FName = NamingConvention.lower_case_underscore.convert(fname, NamingConvention.Pascal_Case_Space);
|
|
320
|
+
ts.fields.push(` ${fname}: BaseMetaColumn;`);
|
|
321
|
+
ts.constructors.push(` ${fname}: new BaseMetaColumn("${fname}", "${FName}", "${field.type.type.toString()}", ${field.type.required}),`);
|
|
322
|
+
}
|
|
323
|
+
ts.fields.push(`}`);
|
|
324
|
+
ts.constructors.push(` };`);
|
|
325
|
+
ts.constructors.push(`}`);
|
|
326
|
+
return ts;
|
|
327
|
+
};
|
|
328
|
+
let name_meta = TypeBuilder.getClassName(schema.name, "");
|
|
329
|
+
if (name_meta)
|
|
330
|
+
return await getTS(name_meta);
|
|
331
|
+
return null;
|
|
332
|
+
}
|
|
278
333
|
async getRow(schema: ObjectSchema): Promise<TS | null>
|
|
279
334
|
{
|
|
280
335
|
if (schema.external != null)
|
|
@@ -151,11 +151,11 @@ export class TypeBuilder extends BaseTypeBuilder<string>
|
|
|
151
151
|
}
|
|
152
152
|
return this.toBase(schema, type);
|
|
153
153
|
}
|
|
154
|
-
static getClassName(name: string): string | null
|
|
154
|
+
static getClassName(name: string, postFix: string = "Row"): string | null
|
|
155
155
|
{
|
|
156
156
|
if (!name)
|
|
157
157
|
return null;
|
|
158
|
-
return name +
|
|
158
|
+
return name + postFix;
|
|
159
159
|
}
|
|
160
160
|
static getEnumName(name: string): string | null
|
|
161
161
|
{
|
|
@@ -24,8 +24,9 @@ export class PHPBuilder extends BaseBuilder
|
|
|
24
24
|
this.dst.clean();
|
|
25
25
|
// folder
|
|
26
26
|
this.dst.mkFolder("src");
|
|
27
|
-
this.dst.mkFolder("src/
|
|
27
|
+
this.dst.mkFolder("src/meta");
|
|
28
28
|
this.dst.mkFolder("src/enum");
|
|
29
|
+
this.dst.mkFolder("src/row");
|
|
29
30
|
// copy
|
|
30
31
|
this.copy("logo.png", "logo.png");
|
|
31
32
|
// download
|
|
@@ -82,6 +83,24 @@ export class PHPBuilder extends BaseBuilder
|
|
|
82
83
|
let objs = await looper.getObjects(true, () => { });
|
|
83
84
|
let enums = await looper.getEnums(() => { });
|
|
84
85
|
let tags = [...new Set(this.schema.controllers.map(c => c.tag))];
|
|
86
|
+
|
|
87
|
+
// Meta
|
|
88
|
+
let metas: PHP[] = [];
|
|
89
|
+
let metadatabase = new PHP(this.getNameSpace("meta"), "./src/meta", "./meta/", "MetaDatabase", undefined, true);
|
|
90
|
+
metadatabase.fields.push(`public static main: MetaDatabase = new MetaDatabase();`);
|
|
91
|
+
metadatabase.constructors.push(`constructor()`);
|
|
92
|
+
metadatabase.constructors.push(`{`);
|
|
93
|
+
for (let i = 0; i < this.schema.tables.length; i++)
|
|
94
|
+
{
|
|
95
|
+
const obj = this.schema.tables[i];
|
|
96
|
+
let ts = await this.getMeta(metadatabase, obj);
|
|
97
|
+
if (ts)
|
|
98
|
+
metas.push(ts);
|
|
99
|
+
}
|
|
100
|
+
metadatabase.constructors.push(`}`);
|
|
101
|
+
metas.push(metadatabase);
|
|
102
|
+
|
|
103
|
+
// Row
|
|
85
104
|
let rows: PHP[] = [];
|
|
86
105
|
for (let i = 0; i < objs.length; i++)
|
|
87
106
|
{
|
|
@@ -127,7 +146,7 @@ export class PHPBuilder extends BaseBuilder
|
|
|
127
146
|
const c = this.schema.controllers[i];
|
|
128
147
|
await this.addFunction(c, server_tags[c.tag]);
|
|
129
148
|
}
|
|
130
|
-
let all = [...rows, server, server_base, ...servers];
|
|
149
|
+
let all = [...metas, ...rows, server, server_base, ...servers];
|
|
131
150
|
all.filter(a => a.save).forEach(x => this.save(x));
|
|
132
151
|
// let index = this.getIndex(...all);
|
|
133
152
|
// this.save(index);
|
|
@@ -149,6 +168,171 @@ export class PHPBuilder extends BaseBuilder
|
|
|
149
168
|
// }).forEach(x => php.imports.push(`export * from "${x}";`));;
|
|
150
169
|
// return php;
|
|
151
170
|
// }
|
|
171
|
+
// async getCLI(tags: string[]): Promise<TS>
|
|
172
|
+
// {
|
|
173
|
+
// let ts = new TS("./src/command", "./command/", "cli", undefined, false);
|
|
174
|
+
// ts.index = false;
|
|
175
|
+
// ts.prelines.push(`#!/usr/bin/env node`);
|
|
176
|
+
// ts.imports.push(`import { Application, BaseStorage } from "namirasoft-node-cli";`);
|
|
177
|
+
// tags.forEach(tag =>
|
|
178
|
+
// {
|
|
179
|
+
// ts.imports.push(`import { ${tag}Command } from "./${tag}Command";`);
|
|
180
|
+
// });
|
|
181
|
+
// if (this.account)
|
|
182
|
+
// if (this.src.json.name != "namirasoft-account-api-v1")
|
|
183
|
+
// ts.imports.push(`import { AccountCommand } from "namirasoft-account";`);
|
|
184
|
+
// else
|
|
185
|
+
// ts.imports.push(`import { AccountCommand } from "./AccountCommand";`);
|
|
186
|
+
// ts.scripts.push(`let app = new Application("${this.command}", new BaseStorage(), `);
|
|
187
|
+
// ts.scripts.push(` { `);
|
|
188
|
+
// tags.forEach(tag =>
|
|
189
|
+
// {
|
|
190
|
+
// ts.scripts.push(` "${tag.toLowerCase()}": ${tag}Command,`);
|
|
191
|
+
// });
|
|
192
|
+
// if (this.account)
|
|
193
|
+
// ts.scripts.push(` "account": AccountCommand`);
|
|
194
|
+
// ts.scripts.push(` });`);
|
|
195
|
+
// ts.scripts.push(`app.run();`);
|
|
196
|
+
// return ts;
|
|
197
|
+
// }
|
|
198
|
+
// async getCLITagCommand(tag: string): Promise<TS>
|
|
199
|
+
// {
|
|
200
|
+
// let ts = new TS("./src/command", "./command/", tag + "Command", "BaseNavigatorCommand", true);
|
|
201
|
+
// ts.imports.push(`import { BaseNavigatorCommand } from "namirasoft-node-cli";`);
|
|
202
|
+
// this.schema.controllers.forEach(controller =>
|
|
203
|
+
// {
|
|
204
|
+
// if (controller.tag === tag)
|
|
205
|
+
// {
|
|
206
|
+
// ts.imports.push(`import { ${tag + controller.name}Command } from "./${tag + controller.name}Command";`);
|
|
207
|
+
// }
|
|
208
|
+
// });
|
|
209
|
+
// ts.constructors.push(`constructor(argv: string[])`);
|
|
210
|
+
// ts.constructors.push(`{`);
|
|
211
|
+
// ts.constructors.push(` super(argv, {`);
|
|
212
|
+
// this.schema.controllers.forEach(controller =>
|
|
213
|
+
// {
|
|
214
|
+
// if (controller.tag === tag)
|
|
215
|
+
// {
|
|
216
|
+
// ts.constructors.push(` "${controller.name.toLowerCase()}": ${tag + controller.name}Command,`);
|
|
217
|
+
// }
|
|
218
|
+
// });
|
|
219
|
+
// ts.constructors.push(` });`);
|
|
220
|
+
// ts.constructors.push(`}`);
|
|
221
|
+
// return ts;
|
|
222
|
+
// }
|
|
223
|
+
// async getCLIControllerCommand(controller: ControllerSchema): Promise<TS>
|
|
224
|
+
// {
|
|
225
|
+
// let className = this.title.replace(/\s/gm, "") + "Server";
|
|
226
|
+
|
|
227
|
+
// let args = ControllerSchema.getArgs(controller).map(a => a.name);
|
|
228
|
+
// let options = ControllerSchema.getOptions(controller);
|
|
229
|
+
// if (options == null)
|
|
230
|
+
// options = [new BaseVariableSchema("body", new AnySchema(true))];
|
|
231
|
+
|
|
232
|
+
// // Loops
|
|
233
|
+
// let forEachVariable = (handler: (option: BaseVariableSchema, last: boolean) => void) =>
|
|
234
|
+
// {
|
|
235
|
+
// if (options != null)
|
|
236
|
+
// for (let i = 0; i < options.length; i++)
|
|
237
|
+
// handler(options[i], i == options.length - 1);
|
|
238
|
+
// };
|
|
239
|
+
|
|
240
|
+
// let ts = new TS("./src/command", "./command/", controller.tag + controller.name + "Command", "BaseFinalCommand", true);
|
|
241
|
+
// if (this.account)
|
|
242
|
+
// {
|
|
243
|
+
// if (this.src.json.name == "namirasoft-account-api-v1")
|
|
244
|
+
// ts.imports.push(`import { TokenManager } from "../TokenManager";`);
|
|
245
|
+
// else
|
|
246
|
+
// ts.imports.push(`import { TokenManager } from "namirasoft-account";`);
|
|
247
|
+
// ts.imports.push(`import { IStorageMemory } from "namirasoft-core";`);
|
|
248
|
+
// }
|
|
249
|
+
// ts.imports.push(`import { BaseFinalCommand } from "namirasoft-node-cli";`);
|
|
250
|
+
// ts.imports.push(`import { ${className} } from "../${className}";`);
|
|
251
|
+
// ts.constructors.push(`constructor(argv: string[])`);
|
|
252
|
+
// ts.constructors.push(`{`);
|
|
253
|
+
// if ((options ?? []).length == 0)
|
|
254
|
+
// ts.constructors.push(` super(argv, [${args.map(a => `"${a}"`).join(", ")}], []);`);
|
|
255
|
+
// else
|
|
256
|
+
// {
|
|
257
|
+
// ts.constructors.push(` super(argv, [${args.map(a => `"${a}"`).join(", ")}], [`);
|
|
258
|
+
// forEachVariable((option, last) =>
|
|
259
|
+
// {
|
|
260
|
+
// ts.constructors.push(` {`);
|
|
261
|
+
// ts.constructors.push(` name: "${option.name}",`);
|
|
262
|
+
// ts.constructors.push(` short: "",`);
|
|
263
|
+
// ts.constructors.push(` description: "Provides the value of '${option.name}' in body",`);
|
|
264
|
+
// ts.constructors.push(` optional: ${!option.type.required},`);
|
|
265
|
+
// ts.constructors.push(` args: ["${option.name}"],`);
|
|
266
|
+
// ts.constructors.push(` defaults: [""]`);
|
|
267
|
+
// ts.constructors.push(` }${last ? "" : ","}`);
|
|
268
|
+
// });
|
|
269
|
+
// ts.constructors.push(` ]);`);
|
|
270
|
+
// }
|
|
271
|
+
// ts.constructors.push(`}`);
|
|
272
|
+
// ts.functions.push(`override async exec()`);
|
|
273
|
+
// ts.functions.push(`{`);
|
|
274
|
+
// if (this.account)
|
|
275
|
+
// {
|
|
276
|
+
// ts.functions.push(` let token = this.app.storage.getNSAToken();`);
|
|
277
|
+
// ts.functions.push(` if (token == null)`);
|
|
278
|
+
// ts.functions.push(` throw new Error("Token is not available. Please login first using:\\n${this.command} account config \\nor \\n{this.command} account login.");`); // todo
|
|
279
|
+
// ts.functions.push(` let storage = new IStorageMemory();`);
|
|
280
|
+
// ts.functions.push(` let manager = new TokenManager(storage, () => { });`);
|
|
281
|
+
// ts.functions.push(` manager.setValue(token, false);`);
|
|
282
|
+
// }
|
|
283
|
+
// ts.functions.push(` let server = new ${className}(${this.account ? "manager, " : ""}${this.nws ? "\"zone\", " : ""}e => this.app.logger.error(e.message));`);
|
|
284
|
+
// if (options.length == 0)
|
|
285
|
+
// ts.functions.push(` let ans = await server.${controller.tag.toLowerCase()}.${controller.name}(${args.map((_, index) => `this.arg_values[${index}]`).join(", ")});`);
|
|
286
|
+
// else
|
|
287
|
+
// {
|
|
288
|
+
// ts.functions.push(` let ans = await server.${controller.tag.toLowerCase()}.${controller.name}(${args.map((_, index) => `this.arg_values[${index}]`).join(", ")}${args.length == 0 ? "" : ", "}{`);
|
|
289
|
+
// forEachVariable((option, last) =>
|
|
290
|
+
// {
|
|
291
|
+
// ts.functions.push(` ${option.name}: this.option_values.${option.name}${last ? "" : ","}`);
|
|
292
|
+
// });
|
|
293
|
+
// ts.functions.push(` });`);
|
|
294
|
+
// }
|
|
295
|
+
// ts.functions.push(` this.app.logger.success(JSON.stringify(ans));`);
|
|
296
|
+
// ts.functions.push(`}`);
|
|
297
|
+
// return ts;
|
|
298
|
+
// }
|
|
299
|
+
async getMeta(metadatabase: PHP, schema: ObjectSchema): Promise<PHP | null>
|
|
300
|
+
{
|
|
301
|
+
if (schema.external != null)
|
|
302
|
+
return null;
|
|
303
|
+
let getPHP = async (name: string) =>
|
|
304
|
+
{
|
|
305
|
+
let TName = NamingConvention.Pascal_Case.convert(name, NamingConvention.Pascal_Case_Space);
|
|
306
|
+
let tname = NamingConvention.Pascal_Case.convert(name, NamingConvention.lower_case_dash);
|
|
307
|
+
let php = new PHP(this.getNameSpace("meta"), "./src/meta", "./meta/", TName + "MetaTable", "BaseMetaTable", true);
|
|
308
|
+
php.imports.push(`import { BaseMetaColumn, BaseMetaTable } from "namirasoft-core";`);
|
|
309
|
+
php.fields.push(`public columns!: {`);
|
|
310
|
+
php.constructors.push(`constructor()`);
|
|
311
|
+
php.constructors.push(`{`);
|
|
312
|
+
php.constructors.push(` super("${tname}", "${TName}");`);
|
|
313
|
+
php.constructors.push(` this.columns = {`);
|
|
314
|
+
metadatabase.imports.push(`import { ${TName}MetaTable } from "./${TName}MetaTable";`);
|
|
315
|
+
metadatabase.fields.push(`public ${TName}MetaTable ${tname};`);
|
|
316
|
+
metadatabase.constructors.push(` $this->${tname} = new ${TName}MetaTable();`);
|
|
317
|
+
if (schema.fields)
|
|
318
|
+
for (let i = 0; i < schema.fields.length; i++)
|
|
319
|
+
{
|
|
320
|
+
const field = schema.fields[i];
|
|
321
|
+
let fname = field.name;
|
|
322
|
+
let FName = NamingConvention.lower_case_underscore.convert(fname, NamingConvention.Pascal_Case_Space);
|
|
323
|
+
php.fields.push(` BaseMetaColumn $${fname};`);
|
|
324
|
+
php.constructors.push(` $${fname} = new BaseMetaColumn("${fname}", "${FName}", "${field.type.type.toString()}", ${field.type.required}),`);
|
|
325
|
+
}
|
|
326
|
+
php.fields.push(`}`);
|
|
327
|
+
php.constructors.push(` };`);
|
|
328
|
+
php.constructors.push(`}`);
|
|
329
|
+
return php;
|
|
330
|
+
};
|
|
331
|
+
let name_meta = TypeBuilder.getClassName(schema.name, "");
|
|
332
|
+
if (name_meta)
|
|
333
|
+
return await getPHP(name_meta);
|
|
334
|
+
return null;
|
|
335
|
+
}
|
|
152
336
|
async getRow(schema: ObjectSchema): Promise<PHP | null>
|
|
153
337
|
{
|
|
154
338
|
if (schema.external != null)
|
|
@@ -153,11 +153,11 @@ export class TypeBuilder extends BaseTypeBuilder<string>
|
|
|
153
153
|
}
|
|
154
154
|
return this.toBase(schema, type);
|
|
155
155
|
}
|
|
156
|
-
static getClassName(name: string): string | null
|
|
156
|
+
static getClassName(name: string, postfix: string = "Row"): string | null
|
|
157
157
|
{
|
|
158
158
|
if (!name)
|
|
159
159
|
return null;
|
|
160
|
-
return name +
|
|
160
|
+
return name + postfix;
|
|
161
161
|
}
|
|
162
162
|
static getEnumName(name: string): string | null
|
|
163
163
|
{
|