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.
@@ -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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yDAA+J;AAC/J,qDAA+D;AAC/D,gDAA6C;AAC7C,6BAA0B;AAC1B,+CAA4C;AAC5C,2CAA6B;AAE7B,MAAa,UAAW,SAAQ,yBAAW;IAEvC,YAAY,aAAqB,EAAE,aAAqB;QAEpD,KAAK,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IACxC,CAAC;IACwB,KAAK;;YAE1B,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YAEjB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACzB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YACjC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAC9B,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAC9B,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAE7B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;YAElC,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,0DAA0D,EAAE,YAAY,CAAC,CAAC;YAClG,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,uDAAuD,EAAE,YAAY,CAAC,CAAC;YAC/F,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,6DAA6D,EAAE,eAAe,CAAC,CAAC;YACxG,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,sEAAsE,EAAE,gBAAgB,CAAC,CAAC;YAClH,IAAI,WAAW,GAAQ;gBACnB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK,EAAE,IAAI,CAAC,KAAK,GAAG,cAAc;gBAClC,WAAW,EAAE,IAAI,CAAC,WAAW,GAAG,cAAc;gBAC9C,MAAM,EAAE,UAAU;gBAClB,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI;gBAC1B,UAAU,EAAE,IAAI;gBAChB,WAAW,EAAE,KAAK;gBAClB,aAAa,EAAE,SAAS;gBACxB,SAAS,EAAE,KAAK;gBAChB,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO;gBAChC,QAAQ,EAAE,iBAAiB;gBAC3B,SAAS,EAAE,KAAK;gBAChB,MAAM,EAAE,iBAAiB;gBACzB,OAAO,EAAE,mBAAmB;gBAC5B,SAAS,EAAE;oBACP,OAAO,EAAE,EAAE;iBACd;gBACD,cAAc,EAAE;oBACZ,iBAAiB,EAAE,QAAQ;oBAC3B,iBAAiB,EAAE,QAAQ;oBAC3B,qBAAqB,EAAE,QAAQ;iBAClC;gBACD,KAAK,EAAE,EAAE;aACZ,CAAC;YACF,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,uBAAuB,CAAC;YACxD,IAAI,IAAI,CAAC,OAAO;gBACZ,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,2BAA2B;oBACjD,WAAW,CAAC,YAAY,CAAC,oBAAoB,CAAC,GAAG,QAAQ,CAAC;YAElE,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;YAEnD,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC9B,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAE7B,IAAI,MAAM,GAAG,IAAI,qCAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAChD,IAAI,IAAI,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;YACpD,IAAI,KAAK,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;YAC7C,IAAI,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACjE,IAAI,QAAQ,GAAS,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EACpC;gBACI,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBACpB,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;gBAC3C,IAAI,GAAG;oBACH,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAC1B;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EACvD;gBACI,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;gBAC9C,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACzD,IAAI,GAAG;oBACH,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAC1B;YAED,IAAI,KAAK,GAAS,EAAE,CAAC;YACrB,IAAI,YAAY,GAAG,IAAI,OAAE,CAAC,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;YACpF,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;YACnF,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAChD,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAClD;gBACI,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAClC,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;gBAC/C,IAAI,EAAE;oBACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aACtB;YACD,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAGzB,IAAI,IAAI,GAAS,EAAE,CAAC;YACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EACpC;gBACI,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBACpB,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChC,IAAI,EAAE;oBACF,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aACrB;YACD,IAAI,iBAAiB,GAA+B,EAAE,CAAC;YACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EACpC;gBACI,IAAI,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;gBACnC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBAChC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;qBACzC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,OAAO,EACpD;oBACI,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;oBAClC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC7C,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;oBACnC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBACrB,MAAM,IAAI,KAAK,CAAC,aAAa,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,0CAA0C,CAAC,CAAC;iBACxF;aACJ;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EACrC;gBACI,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACvB,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBACpC,IAAI,GAAG;oBACH,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;aACzB;YACD,IAAI,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,WAAW,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YACvC,IAAI,WAAW,GAA0B,EAAE,CAAC;YAC5C,IAAI,OAAO,GAAS,EAAE,CAAC;YACvB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBAEf,IAAI,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;gBAC/B,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,CAAC,CAAC,CAAC;YACH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EACvD;gBACI,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;gBACrC,MAAM,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;aACjD;YACD,IAAI,GAAG,GAAG,CAAC,GAAG,QAAQ,EAAE,GAAG,KAAK,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,CAAC;YAC5E,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YACnD,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAEjB,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;KAAA;IACD,IAAI,CAAC,EAAM;QAEP,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC;IAC7D,CAAC;IACD,QAAQ,CAAC,GAAG,GAAS;QAEjB,IAAI,EAAE,GAAG,IAAI,OAAE,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;QACjD,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;QACpG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YAElD,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YACjD,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;QAAA,CAAC;QAC3D,OAAO,EAAE,CAAC;IACd,CAAC;IACK,MAAM,CAAC,IAAc;;YAEvB,IAAI,EAAE,GAAG,IAAI,OAAE,CAAC,eAAe,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YACxE,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC;YACjB,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YACxC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAC;YACnF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBAEf,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,GAAG,qBAAqB,GAAG,WAAW,CAAC,CAAC;YACxE,CAAC,CAAC,CAAC;YACH,IAAI,IAAI,CAAC,OAAO;gBACZ,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,2BAA2B;oBACjD,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;;oBAExE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;YAC9E,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,8BAA8B,IAAI,CAAC,OAAO,wBAAwB,CAAC,CAAC;YACpF,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC1B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBAEf,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC;YACtE,CAAC,CAAC,CAAC;YACH,IAAI,IAAI,CAAC,OAAO;gBACZ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;YACzD,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC3B,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC9B,OAAO,EAAE,CAAC;QACd,CAAC;KAAA;IACK,gBAAgB,CAAC,GAAW;;YAE9B,IAAI,EAAE,GAAG,IAAI,OAAE,CAAC,eAAe,EAAE,YAAY,EAAE,GAAG,GAAG,SAAS,EAAE,sBAAsB,EAAE,IAAI,CAAC,CAAC;YAC9F,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;YAC/E,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;gBAEzC,IAAI,UAAU,CAAC,GAAG,KAAK,GAAG,EAC1B;oBACI,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,GAAG,GAAG,UAAU,CAAC,IAAI,qBAAqB,GAAG,GAAG,UAAU,CAAC,IAAI,WAAW,CAAC,CAAC;iBAC3G;YACL,CAAC,CAAC,CAAC;YACH,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;YACpD,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC1B,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAC1C,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;gBAEzC,IAAI,UAAU,CAAC,GAAG,KAAK,GAAG,EAC1B;oBACI,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,UAAU,CAAC,CAAC;iBACxG;YACL,CAAC,CAAC,CAAC;YACH,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAChC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC1B,OAAO,EAAE,CAAC;QACd,CAAC;KAAA;IACK,uBAAuB,CAAC,UAA4B;;YAEtD,IAAI,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,QAAQ,CAAC;YAE1D,IAAI,IAAI,GAAG,oCAAgB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACjE,IAAI,OAAO,GAAG,oCAAgB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YACtD,IAAI,OAAO,IAAI,IAAI;gBACf,OAAO,GAAG,CAAC,IAAI,sCAAkB,CAAC,MAAM,EAAE,IAAI,6BAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAGpE,IAAI,eAAe,GAAG,CAAC,OAA4D,EAAE,EAAE;gBAEnF,IAAI,OAAO,IAAI,IAAI;oBACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE;wBACnC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACzD,CAAC,CAAC;YAEF,IAAI,EAAE,GAAG,IAAI,OAAE,CAAC,eAAe,EAAE,YAAY,EAAE,UAAU,CAAC,GAAG,GAAG,UAAU,CAAC,IAAI,GAAG,SAAS,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC;YACvH,IAAI,IAAI,CAAC,OAAO,EAChB;gBACI,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,2BAA2B;oBACjD,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;;oBAEnE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;gBAC1E,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;aACxE;YACD,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;YAC3E,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,SAAS,eAAe,SAAS,IAAI,CAAC,CAAC;YACnE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;YACpD,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC1B,IAAI,CAAC,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC;gBAC3B,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,oBAAoB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;iBAE1F;gBACI,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,oBAAoB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACnF,eAAe,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;oBAE7B,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBAClC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,sBAAsB,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC;oBAC5D,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;oBAC/C,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,oDAAoD,MAAM,CAAC,IAAI,aAAa,CAAC,CAAC;oBACnG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;oBACxE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,uBAAuB,MAAM,CAAC,IAAI,KAAK,CAAC,CAAC;oBAC9D,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;oBACnD,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;gBACxD,CAAC,CAAC,CAAC;gBACH,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;aACvC;YACD,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC1B,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YAC3C,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvB,IAAI,IAAI,CAAC,OAAO,EAChB;gBACI,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;gBACrE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;gBAC5C,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,gFAAgF,IAAI,CAAC,OAAO,2DAA2D,CAAC,CAAC;gBAC3K,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;gBAC7D,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;gBAC7E,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;aAC5D;YACD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,wBAAwB,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,yCAAyC,CAAC,CAAC;YAChK,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC;gBACnB,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,8BAA8B,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,UAAU,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,mBAAmB,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAE3K;gBACI,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,8BAA8B,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,UAAU,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,mBAAmB,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;gBACrM,eAAe,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;oBAE7B,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,MAAM,CAAC,IAAI,wBAAwB,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;gBACrG,CAAC,CAAC,CAAC;gBACH,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aAChC;YACD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;YACvE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvB,OAAO,EAAE,CAAC;QACd,CAAC;KAAA;IACK,OAAO,CAAC,YAAgB,EAAE,MAAoB;;YAEhD,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI;gBACvB,OAAO,IAAI,CAAC;YAChB,IAAI,KAAK,GAAG,CAAO,IAAY,EAAE,EAAE;gBAE/B,IAAI,KAAK,GAAG,kCAAgB,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,kCAAgB,CAAC,iBAAiB,CAAC,CAAC;gBAC3F,IAAI,KAAK,GAAG,kCAAgB,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,kCAAgB,CAAC,eAAe,CAAC,CAAC;gBACzF,IAAI,EAAE,GAAG,IAAI,OAAE,CAAC,YAAY,EAAE,SAAS,EAAE,KAAK,GAAG,WAAW,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;gBACrF,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;gBACpF,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;gBACrC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gBACtC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC1B,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,KAAK,OAAO,KAAK,KAAK,CAAC,CAAC;gBAC3D,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;gBAC7C,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,KAAK,uBAAuB,KAAK,aAAa,CAAC,CAAC;gBACtF,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,KAAK,KAAK,KAAK,YAAY,CAAC,CAAC;gBAChE,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,KAAK,UAAU,KAAK,cAAc,CAAC,CAAC;gBAC/E,IAAI,MAAM,CAAC,MAAM;oBACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAC7C;wBACI,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;wBAC/B,IAAI,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;wBACvB,IAAI,KAAK,GAAG,kCAAgB,CAAC,qBAAqB,CAAC,OAAO,CAAC,KAAK,EAAE,kCAAgB,CAAC,iBAAiB,CAAC,CAAC;wBACtG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,KAAK,mBAAmB,CAAC,CAAC;wBAChD,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,KAAK,yBAAyB,KAAK,OAAO,KAAK,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,KAAK,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;qBAClJ;gBACL,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACpB,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC/B,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC1B,OAAO,EAAE,CAAC;YACd,CAAC,CAAA,CAAC;YACF,IAAI,SAAS,GAAG,yBAAW,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC1D,IAAI,SAAS;gBACT,OAAO,MAAM,KAAK,CAAC,SAAS,CAAC,CAAC;YAClC,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;IACK,MAAM,CAAC,MAAoB;;YAE7B,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI;gBACvB,OAAO,IAAI,CAAC;YAChB,IAAI,KAAK,GAAG,CAAO,IAAY,EAAE,EAAE;gBAE/B,IAAI,EAAE,GAAG,IAAI,OAAE,CAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;gBAC/D,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,IAAI,KAAK,CAAC,CAAC;gBAC1C,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACzB,IAAI,MAAM,CAAC,MAAM;oBACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAC7C;wBACI,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;wBAC/B,IAAI,KAAK,GAAG,IAAI,yBAAW,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;wBAC9C,IAAI,IAAI,GAAmB,EAAE,CAAC;wBAC9B,IAAI,KAAK,GAAiB,EAAE,CAAC;wBAC7B,IAAI,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;4BAE3B,IAAI,CAAC,CAAC,IAAI,IAAI,gCAAY,CAAC,MAAM;gCAC7B,IAAI,CAAC,IAAI,CAAC,CAAiB,CAAC,CAAC;iCAC5B,IAAI,CAAC,CAAC,IAAI,IAAI,gCAAY,CAAC,IAAI;gCAChC,KAAK,CAAC,IAAI,CAAC,CAAe,CAAC,CAAC;wBACpC,CAAC,CAAC,CAAC;wBACH,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,IAAI,KAAK,IAAI,GAAG,CAAC,CAAC;wBACnD,IAAI,KAAK,CAAC,IAAI,EACd;4BACI,IAAI,IAAI,EACR;gCACI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EACpC;oCACI,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;oCACpB,IAAI,GAAG,CAAC,IAAI;wCACR,IAAI,GAAG,CAAC,QAAQ,IAAI,IAAI,EACxB;4CACI,IAAI,QAAQ,GAAG,yBAAW,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;4CAClD,IAAI,QAAQ;gDACR,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,QAAQ,cAAc,QAAQ,IAAI,CAAC,CAAC;yCACvE;;4CAEG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,YAAY,GAAG,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;iCACrF;6BACJ;4BACD,IAAI,KAAK,EACT;gCACI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EACrC;oCACI,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;oCACvB,IAAI,KAAK,CAAC,QAAQ,IAAI,IAAI,EAC1B;wCACI,IAAI,QAAQ,GAAG,yBAAW,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wCACnD,IAAI,QAAQ;4CACR,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,QAAQ,oBAAoB,QAAQ,IAAI,CAAC,CAAC;qCAC7E;;wCAEG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,IAAI,YAAY,KAAK,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;iCACrF;6BACJ;yBACJ;qBACJ;gBACL,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACzB,OAAO,EAAE,CAAC;YACd,CAAC,CAAA,CAAC;YACF,IAAI,QAAQ,GAAG,yBAAW,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACrD,IAAI,QAAQ;gBACR,OAAO,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;YACjC,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;IACK,OAAO,CAAC,MAAkB;;YAE5B,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI;gBACvB,OAAO,EAAE,CAAC;YACd,IAAI,EAAE,GAAG,IAAI,OAAE,CAAC,YAAY,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YACxE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YAC9C,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACrB,IAAI,MAAM,CAAC,MAAM;gBACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAC7C;oBACI,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBAC/B,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,KAAK,IAAI,CAAC,CAAC;iBACjD;YACL,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACrB,OAAO,CAAC,EAAE,CAAC,CAAC;QAChB,CAAC;KAAA;IAED,SAAS,CAAC,IAAc;QAEpB,IAAI,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,QAAQ,CAAC;QAC1D,IAAI,EAAE,GAAG,IAAI,OAAE,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QAC1C,IAAI,IAAI,CAAC,OAAO,EAChB;YACI,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,2BAA2B;gBACjD,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;;gBAElE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;SAC7E;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,SAAS,GAAG,GAAG,cAAc,SAAS,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC;QAEnG,IAAI,IAAI,CAAC,OAAO,EAChB;YACI,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;SAC5C;QACD,IAAI,IAAI,CAAC,GAAG,EACZ;YACI,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;SACnC;QAED,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,WAAW,EAAE,KAAK,SAAS,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC;QAEjF,IAAI,IAAI,GAAa,EAAE,CAAC;QACxB,IAAI,IAAI,GAAa,EAAE,CAAC;QACxB,IAAI,IAAI,CAAC,OAAO,EAChB;YACI,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACxB;QACD,IAAI,IAAI,CAAC,GAAG,EACZ;YACI,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACrB;QACD,IAAI,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACrB,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxD,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,IAAI,CAAC,OAAO;YACZ,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;QACxD,IAAI,IAAI,CAAC,GAAG;YACR,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,WAAW,EAAE,UAAU,SAAS,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACzH,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,OAAO,EAAE,CAAC;IACd,CAAC;IACD,aAAa;QAET,IAAI,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,YAAY,CAAC;QAC9D,IAAI,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,cAAc,CAAC;QACxE,IAAI,EAAE,GAAG,IAAI,OAAE,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;QACtD,IAAI,IAAI,CAAC,OAAO,EAChB;YACI,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,2BAA2B,EACrD;gBACI,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;gBAClF,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;aACrE;iBAED;gBACI,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;gBAC9E,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;aACzE;SACJ;aAED;YACI,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;SACtE;QAED,IAAI,IAAI,GAAa,EAAE,CAAC;QACxB,IAAI,IAAI,GAAa,CAAC,KAAK,IAAI,CAAC,GAAG,IAAI,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;QACzE,IAAI,IAAI,CAAC,OAAO,EAChB;YACI,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACxB;QACD,IAAI,IAAI,CAAC,GAAG,EACZ;YACI,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SAC7B;QACD,IAAI,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;QAC7C,IAAI,IAAI,CAAC,OAAO;YACZ,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEzB,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxD,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,CAAC,IAAI,CAAC,OAAO,EACjB;YACI,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACrC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;SACvD;QACD,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,OAAO,EAAE,CAAC;IACd,CAAC;IACD,YAAY,CAAC,GAAW;QAEpB,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,QAAQ,CAAC;QACzD,IAAI,UAAU,GAAG,QAAQ,GAAG,MAAM,CAAC;QACnC,IAAI,SAAS,GAAG,QAAQ,GAAG,GAAG,CAAC;QAC/B,IAAI,EAAE,GAAG,IAAI,OAAE,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;QACtD,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,UAAU,cAAc,UAAU,IAAI,CAAC,CAAC;QAEpE,IAAI,IAAI,GAAa,EAAE,CAAC;QACxB,IAAI,IAAI,GAAa,EAAE,CAAC;QACxB,IAAI,IAAI,CAAC,OAAO,EAChB;YACI,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,2BAA2B;gBACjD,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;;gBAElE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;YAC1E,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACxB;QACD,IAAI,IAAI,CAAC,GAAG,EACZ;YACI,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACrB;QACD,IAAI,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAErB,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxD,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EACvD;YACI,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACrC,IAAI,CAAC,CAAC,GAAG,IAAI,GAAG;gBACZ,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC;SAC/E;QACD,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,OAAO,EAAE,CAAC;IACd,CAAC;IACK,WAAW,CAAC,MAAwB,EAAE,EAAM;;YAE9C,IAAI,cAAc,GAAG,EAAE,CAAC;YACxB,IAAI,IAAI,GAAG,EAAE,CAAC;YACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EACjD;gBACI,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBACvC,IAAI,gBAAgB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;gBAChF,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,GAAG,IAAI,GAAG,gBAAgB,CAAC,CAAC;aACvD;YACD,IAAI,OAAO,GAAG,EAAE,CAAC;YACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAC9C;gBACI,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBAChC,IAAI,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC;gBACzB,IAAI,YAAY,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;gBACxE,IAAI,KAAK,CAAC,IAAI,IAAI,SAAS,EAC3B;oBACI,OAAO,GAAG,KAAK,CAAC,IAAI,GAAG,eAAe,CAAC;oBACvC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,OAAO,mCAAmC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;oBAC1F,YAAY,GAAG,qBAAqB,CAAC;oBACrC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;iBACpE;gBACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,GAAG,YAAY,CAAC,CAAC;gBAC5C,IAAI,OAAO,KAAK,KAAK,CAAC,IAAI;oBACtB,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;;oBAE9B,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC,CAAC;aACjD;YACD,IAAI,IAAI,GAAG,EAAE,CAAC;YACd,IAAI,MAAM,CAAC,IAAI,EACf;gBACI,IAAI,gBAAgB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;gBAC9E,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,gBAAgB,CAAC,CAAC;gBAC5C,IAAI,GAAG,QAAQ,CAAC;aACnB;YACD,IAAI,WAAW,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;YAC1E,IAAI,KAAK,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YAC7C,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC;gBACnB,KAAK,GAAG,IAAI,CAAC;YACjB,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,WAAW,GAAG,CAAC,CAAC;YACvF,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvB,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;YAC1D,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,oBAAoB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YAC9E,IAAI,WAAW,KAAK,MAAM;gBACtB,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,kCAAkC,4BAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,IAAI,WAAW,WAAW,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC;;gBAEvI,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,mBAAmB,4BAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,IAAI,WAAW,WAAW,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC;YAC5H,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,SAAS;gBACjC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;YAC5D,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,SAAS;gBACjC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YACjD,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,SAAS;gBAChC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;YACzD,IAAI,WAAW,KAAK,MAAM;gBACtB,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAC1C,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;KAAA;IACK,mBAAmB,CAAC,MAA6B,EAAE,EAAM,EAAE,SAAyB;;YAEtF,IAAI,WAAW,GAAG,IAAI,CAAC;YACvB,IAAI,MAAM,EACV;gBACI,IAAI,OAAO,GAAG,IAAI,yBAAW,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;gBACjD,IAAI,IAAI,GAAmB,EAAE,CAAC;gBAC9B,IAAI,KAAK,GAAiB,EAAE,CAAC;gBAC7B,WAAW,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;oBAEhC,IAAI,CAAC,CAAC,IAAI,IAAI,gCAAY,CAAC,MAAM;wBAC7B,IAAI,CAAC,IAAI,CAAC,CAAiB,CAAC,CAAC;yBAC5B,IAAI,CAAC,CAAC,IAAI,IAAI,gCAAY,CAAC,IAAI;wBAChC,KAAK,CAAC,IAAI,CAAC,CAAe,CAAC,CAAC;gBACpC,CAAC,CAAC,CAAC;gBACH,IAAI,IAAI,EACR;oBACI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EACpC;wBACI,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;wBACpB,IAAI,GAAG,CAAC,IAAI;4BACR,IAAI,GAAG,CAAC,QAAQ,IAAI,IAAI,EACxB;gCACI,IAAI,QAAQ,GAAG,yBAAW,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gCAClD,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,QAAQ,kBAAkB,QAAQ,IAAI,CAAC,CAAC;6BACvE;;gCAEG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,YAAY,GAAG,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;qBACrF;iBACJ;gBACD,IAAI,KAAK,EACT;oBACI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EACrC;wBACI,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;wBACvB,IAAI,KAAK,CAAC,QAAQ,IAAI,IAAI,EAC1B;4BACI,IAAI,QAAQ,GAAG,yBAAW,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;4BACnD,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,QAAQ,mBAAmB,QAAQ,IAAI,CAAC,CAAC;yBACxE;;4BAEG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,IAAI,YAAY,KAAK,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;qBACrF;iBACJ;aACJ;YACD,OAAO,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,MAAM,CAAC;QACjC,CAAC;KAAA;CACJ;AA1oBD,gCA0oBC"}
@@ -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 + "Row";
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":"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"}
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/row");
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 + "Row";
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":"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"}
package/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "framework": "npm",
9
9
  "application": "package",
10
10
  "private": false,
11
- "version": "1.3.48",
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.47",
22
+ "namirasoft-core": "^1.3.55",
23
23
  "namirasoft-node-cli": "^1.3.8",
24
- "namirasoft-schema": "^1.3.15"
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 + "Row";
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/row");
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 + "Row";
160
+ return name + postfix;
161
161
  }
162
162
  static getEnumName(name: string): string | null
163
163
  {