namirasoft-sdk-generator 1.3.22 → 1.3.24

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.
@@ -1,6 +1,7 @@
1
1
  export declare class PHP {
2
2
  save: boolean;
3
3
  index: boolean;
4
+ namespace: string;
4
5
  path: string;
5
6
  exportPath: string;
6
7
  name: string;
@@ -13,7 +14,7 @@ export declare class PHP {
13
14
  fields: string[];
14
15
  constructors: string[];
15
16
  functions: string[];
16
- constructor(path: string, exportPath: string, name: string, parent_name?: string, has_class?: boolean);
17
+ constructor(namespace: string, path: string, exportPath: string, name: string, parent_name?: string, has_class?: boolean);
17
18
  getFilePath(): string;
18
19
  getContent(): string;
19
20
  }
@@ -26,7 +26,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.PHP = void 0;
27
27
  const path = __importStar(require("path"));
28
28
  class PHP {
29
- constructor(path, exportPath, name, parent_name = "", has_class = true) {
29
+ constructor(namespace, path, exportPath, name, parent_name = "", has_class = true) {
30
30
  this.save = true;
31
31
  this.index = true;
32
32
  this.prelines = [];
@@ -36,6 +36,7 @@ class PHP {
36
36
  this.fields = [];
37
37
  this.constructors = [];
38
38
  this.functions = [];
39
+ this.namespace = namespace;
39
40
  this.path = path;
40
41
  this.exportPath = exportPath;
41
42
  this.name = name;
@@ -73,6 +74,8 @@ class PHP {
73
74
  lines.push("/* */");
74
75
  lines.push("/****************************************************************/");
75
76
  lines.push("");
77
+ lines.push(`namespace ${this.namespace};`);
78
+ lines.push("");
76
79
  if (this.imports.length > 0) {
77
80
  let is = [...new Set(this.imports)];
78
81
  is.sort();
@@ -1 +1 @@
1
- {"version":3,"file":"PHP.js","sourceRoot":"","sources":["../../../src/builder/php/PHP.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PHP.js","sourceRoot":"","sources":["../../../src/builder/php/PHP.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { BaseBuilder } from "../BaseBuilder";
3
3
  import { PHP } from "./PHP";
4
4
  export declare class PHPBuilder extends BaseBuilder {
5
5
  constructor(src_directory: string, dst_directory: string);
6
+ private getNameSpace;
6
7
  protected onRun(): Promise<void>;
7
8
  save(php: PHP): void;
8
9
  getRow(schema: ObjectSchema): Promise<PHP[] | null>;
@@ -19,6 +19,14 @@ class PHPBuilder extends BaseBuilder_1.BaseBuilder {
19
19
  constructor(src_directory, dst_directory) {
20
20
  super(src_directory, dst_directory);
21
21
  }
22
+ getNameSpace(folder) {
23
+ if (folder)
24
+ folder = this.name + "-" + folder;
25
+ else
26
+ folder = this.name;
27
+ let NameSpaceCase = new namirasoft_core_1.NamingConvention("NameSpaceCase", "\\", namirasoft_core_1.NamingConvention.formatter_pascal, namirasoft_core_1.NamingConvention.splitter_uppercase);
28
+ return namirasoft_core_1.NamingConvention.lower_case_dash.convert(folder, NameSpaceCase);
29
+ }
22
30
  onRun() {
23
31
  return __awaiter(this, void 0, void 0, function* () {
24
32
  this.dst.clean();
@@ -40,14 +48,13 @@ class PHPBuilder extends BaseBuilder_1.BaseBuilder {
40
48
  ],
41
49
  "license": "MIT",
42
50
  "autoload": {
43
- "psr-4": {
44
- "Namirasoft\\ApiLink\\": "src/"
45
- }
51
+ "psr-4": {}
46
52
  },
47
53
  "require": {
48
54
  "namirasoft/core": "^1.3.0",
49
55
  }
50
56
  };
57
+ composerjson["autoload"]["psr-4"][this.getNameSpace("") + "\\"] = "src/";
51
58
  let packagejson = {
52
59
  name: this.name,
53
60
  title: this.title + " PHP Package",
@@ -114,7 +121,7 @@ class PHPBuilder extends BaseBuilder_1.BaseBuilder {
114
121
  if (schema.external != null)
115
122
  return [];
116
123
  let getPHP = (name, read_only) => __awaiter(this, void 0, void 0, function* () {
117
- let php = new PHP_1.PHP("./src/row", "./row/", name, undefined, true);
124
+ let php = new PHP_1.PHP(this.getNameSpace("row"), "./src/row", "./row/", name, undefined, true);
118
125
  if (schema.fields)
119
126
  for (let i = 0; i < schema.fields.length; i++) {
120
127
  const field = schema.fields[i];
@@ -137,10 +144,10 @@ class PHPBuilder extends BaseBuilder_1.BaseBuilder {
137
144
  if (row.external == null) {
138
145
  let typename = TypeBuilder_1.TypeBuilder.getClassName(row.name);
139
146
  if (typename)
140
- php.imports.push(`require_once "./${typename}";`);
147
+ php.uses.push(`use ${this.getNameSpace("") + "\\" + typename};`);
148
+ }
149
+ else {
141
150
  }
142
- else
143
- php.imports.push(`require_once "${row.external.package}";`);
144
151
  }
145
152
  }
146
153
  if (enums) {
@@ -149,7 +156,7 @@ class PHPBuilder extends BaseBuilder_1.BaseBuilder {
149
156
  if (_enum.external == null) {
150
157
  let typename = TypeBuilder_1.TypeBuilder.getEnumName(_enum.name);
151
158
  if (typename)
152
- php.imports.push(`require_once "../enum/${typename}";`);
159
+ php.uses.push(`use ${this.getNameSpace("enum") + "\\" + typename};`);
153
160
  }
154
161
  else
155
162
  php.imports.push(`import { ${_enum.name} } from "${_enum.external.package}";`);
@@ -176,7 +183,7 @@ class PHPBuilder extends BaseBuilder_1.BaseBuilder {
176
183
  return __awaiter(this, void 0, void 0, function* () {
177
184
  if (schema.external != null)
178
185
  return [];
179
- let php = new PHP_1.PHP("./src/enum", "./enum/", schema.name, undefined, false);
186
+ let php = new PHP_1.PHP(this.getNameSpace("enum"), "./src/enum", "./enum/", schema.name, undefined, false);
180
187
  php.scripts.push(`export enum ${schema.name}`);
181
188
  php.scripts.push(`{`);
182
189
  if (schema.valids)
@@ -190,21 +197,21 @@ class PHPBuilder extends BaseBuilder_1.BaseBuilder {
190
197
  }
191
198
  getServer(tags) {
192
199
  let className = this.title.replace(/\s/gm, "") + "Server";
193
- let php = new PHP_1.PHP("./src", "./", className);
200
+ let php = new PHP_1.PHP(this.getNameSpace(""), "./src", "./", className);
194
201
  if (this.account) {
195
202
  if (this.src.json.name == "namirasoft-account-api-v1")
196
203
  php.imports.push(`require_once "./TokenManager";`);
197
204
  else
198
205
  php.imports.push(`require_once "namirasoft/account";`);
199
206
  }
200
- tags.forEach(tag => php.imports.push(`require_once "./${className}${tag}";`));
207
+ tags.forEach(tag => php.uses.push(`use ${this.getNameSpace("") + "\\" + className + tag};`));
201
208
  if (this.account) {
202
- php.fields.push(`TokenManager manager;`);
209
+ php.fields.push(`TokenManager manager; `);
203
210
  }
204
211
  if (this.nws) {
205
- php.fields.push(`string zone;`);
212
+ php.fields.push(`string zone; `);
206
213
  }
207
- tags.forEach(tag => php.fields.push(`public ${className}${tag} $${tag.toLowerCase()};`));
214
+ tags.forEach(tag => php.fields.push(`public ${className}${tag} $${tag.toLowerCase()}; `));
208
215
  let pars = [];
209
216
  let args = [];
210
217
  if (this.account) {
@@ -220,29 +227,30 @@ class PHPBuilder extends BaseBuilder_1.BaseBuilder {
220
227
  php.constructors.push(`public function __construct(${pars.join(", ")})`);
221
228
  php.constructors.push(`{`);
222
229
  if (this.account)
223
- php.constructors.push(` $this->manager = manager;`);
230
+ php.constructors.push(` $this->manager = manager; `);
224
231
  if (this.nws)
225
- php.constructors.push(` $this->zone = zone;`);
226
- tags.forEach(tag => php.constructors.push(` $this->${tag.toLowerCase()} = new ${className}${tag}(${args.join(", ")});`));
227
- php.constructors.push(`}`);
232
+ php.constructors.push(` $this->zone = zone; `);
233
+ tags.forEach(tag => php.constructors.push(` $this->${tag.toLowerCase()} = new ${className}${tag} (${args.join(", ")}); `));
234
+ php.constructors.push(`} `);
228
235
  return php;
229
236
  }
230
237
  getServerBase() {
231
238
  let className = this.title.replace(/\s/gm, "") + "ServerBase";
232
239
  let parentName = this.account ? "NamirasoftServerBase" : "BaseServer";
233
- let php = new PHP_1.PHP("./src", "./", className, parentName);
240
+ let php = new PHP_1.PHP(this.getNameSpace(""), "./src", "./", className, parentName);
234
241
  if (this.account) {
235
242
  if (this.src.json.name == "namirasoft-account-api-v1") {
236
- php.imports.push(`require_once "./NamirasoftServerBase";`);
237
- php.imports.push(`require_once "./TokenManager";`);
243
+ php.imports.push(`require_once "./NamirasoftServerBase"; `);
244
+ php.imports.push(`require_once "./TokenManager"; `);
238
245
  }
239
246
  else {
240
- php.imports.push(`require_once "namirasoft/account";`);
247
+ php.imports.push(`require_once "namirasoft/account"; `);
248
+ php.uses.push(`use Namirasoft\\Account\\NamirasoftServerBase; `);
249
+ php.uses.push(`use Namirasoft\\Account\\TokenManager; `);
241
250
  }
242
251
  }
243
- else {
244
- php.imports.push(`require_once "namirasoft/core";`);
245
- }
252
+ else
253
+ php.uses.push(`use Namirasoft\\Core\\BaseServer;`);
246
254
  let pars = [];
247
255
  let args = [`\`${this.url}\``];
248
256
  if (this.account) {
@@ -281,8 +289,8 @@ class PHPBuilder extends BaseBuilder_1.BaseBuilder {
281
289
  let baseName = this.title.replace(/\s/gm, "") + "Server";
282
290
  let parentName = baseName + "Base";
283
291
  let className = baseName + tag;
284
- let php = new PHP_1.PHP("./src", "./", className, parentName);
285
- php.imports.push(`require_once "./${parentName}";`);
292
+ let php = new PHP_1.PHP(this.getNameSpace(""), "./src", "./", className, parentName);
293
+ php.uses.push(`use ${this.getNameSpace("") + "\\" + parentName};`);
286
294
  return php;
287
295
  }
288
296
  addFunction(schema, php) {
@@ -301,19 +309,18 @@ class PHPBuilder extends BaseBuilder_1.BaseBuilder {
301
309
  let query_output = yield this.addFunction_GetType(query.type, php, null);
302
310
  if (query.name == "filters") {
303
311
  newname = "filters_string_value";
304
- function_lines.push(...[`$${newname} ;`,
312
+ function_lines.push(...[`$${newname} = "";`,
305
313
  `if ($filters != null)`,
306
314
  `{`,
307
315
  ` $temp = [];`,
308
316
  ` for ($i = 0; $i < count($filters); $i++)`,
309
317
  ` {`,
310
- ` $temp[] = $filters[$i]->.getCommand();`,
318
+ ` $temp[] = $filters[$i]->getCommand();`,
311
319
  ` }`,
312
- ` $${newname} = implode(";", $temp);`,
320
+ ` $${newname} = implode(";", $temp);`,
313
321
  `}`
314
322
  ]);
315
- query_output = "?FilterItem[]";
316
- php.imports.push(`require_once "namirasoft/core";`);
323
+ query_output = "array";
317
324
  }
318
325
  pars.push(query_output + " $" + query.name);
319
326
  queries.push(newname);
@@ -362,10 +369,10 @@ class PHPBuilder extends BaseBuilder_1.BaseBuilder {
362
369
  if (row.name)
363
370
  if (row.external == null) {
364
371
  let typename = TypeBuilder_1.TypeBuilder.getClassName(row.name);
365
- php.imports.push(`require_once "./row/${typename + postfix}";`);
372
+ php.uses.push(`use ${this.getNameSpace("row") + "\\" + typename + postfix};`);
366
373
  }
367
374
  else {
368
- php.imports.push(`require_once "${row.external.package.replace("namirasoft-", "namirasoft/")}";`);
375
+ php.uses.push(`use ${row.name};`);
369
376
  }
370
377
  }
371
378
  }
@@ -374,11 +381,10 @@ class PHPBuilder extends BaseBuilder_1.BaseBuilder {
374
381
  const _enum = enums[j];
375
382
  if (_enum.external == null) {
376
383
  let typename = TypeBuilder_1.TypeBuilder.getEnumName(_enum.name);
377
- php.imports.push(`require_once "./enum/${typename}";`);
384
+ php.uses.push(`use ${this.getNameSpace("enum") + "\\" + typename};`);
378
385
  }
379
386
  else {
380
- php.imports.push(`require_once "${_enum.external.package.replace("namirasoft-", "namirasoft/")}";`);
381
- php.uses.push(`use ${_enum.name};`);
387
+ php.uses.push(`use ${this.getNameSpace("enum") + "\\" + _enum.name};`);
382
388
  }
383
389
  }
384
390
  }
@@ -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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"}
@@ -1,7 +1,7 @@
1
1
  import { AnySchema, ArraySchema, BaseTypeBuilder, BaseTypeSchema, BigIntSchema, BoolSchema, DateSchema, DateTimeSchema, DecimalSchema, DoubleSchema, EmailSchema, FloatSchema, IPV4Schema, IPV6Schema, IntegerSchema, MediumIntSchema, ObjectSchema, PhoneSchema, RealSchema, SmallIntSchema, StringSchema, TimeSchema, DurationSchema, TinyIntSchema } from "namirasoft-schema";
2
2
  import { EnumSchema } from "namirasoft-schema/dist/schema/type/EnumSchema";
3
3
  export declare class TypeBuilder extends BaseTypeBuilder<string> {
4
- private read_only;
4
+ read_only: boolean | null;
5
5
  private postfix;
6
6
  constructor(schema: BaseTypeSchema | null, read_only: boolean | null, postfix?: string);
7
7
  private toBase;
@@ -27,7 +27,7 @@ export declare class TypeBuilder extends BaseTypeBuilder<string> {
27
27
  protected _toIPV6(schema: IPV6Schema): Promise<string>;
28
28
  protected _toEnum(schema: EnumSchema): Promise<string>;
29
29
  protected _toArray(schema: ArraySchema, __: (schema: BaseTypeSchema) => void): Promise<string>;
30
- protected _toObject(schema: ObjectSchema, callback: (schema: BaseTypeSchema) => void): Promise<string>;
30
+ protected _toObject(schema: ObjectSchema, _: (schema: BaseTypeSchema) => void): Promise<string>;
31
31
  static getClassName(name: string, postfix?: string): string | null;
32
32
  static getEnumName(name: string): string | null;
33
33
  }
@@ -133,7 +133,7 @@ class TypeBuilder extends namirasoft_schema_1.BaseTypeBuilder {
133
133
  return this.toBase(schema, "array");
134
134
  });
135
135
  }
136
- _toObject(schema, callback) {
136
+ _toObject(schema, _) {
137
137
  return __awaiter(this, void 0, void 0, function* () {
138
138
  let type = null;
139
139
  if (schema.external != null)
@@ -141,23 +141,7 @@ class TypeBuilder extends namirasoft_schema_1.BaseTypeBuilder {
141
141
  else
142
142
  type = TypeBuilder.getClassName(schema.name, this.postfix);
143
143
  if (!type) {
144
- type = "";
145
- if (schema.fields == null)
146
- type = "object";
147
- else if (schema.fields.length == 0)
148
- type = "object";
149
- else {
150
- let fields = [];
151
- for (let i = 0; i < schema.fields.length; i++) {
152
- const f = schema.fields[i];
153
- if (this.read_only == null || f.type.read_only == this.read_only) {
154
- let builder = new TypeBuilder(f.type, this.read_only, this.postfix);
155
- let fieldtype = yield builder.run(callback);
156
- fields.push(`${f.name}: ${fieldtype}`);
157
- }
158
- }
159
- type = "{ " + fields.join(", ") + " }";
160
- }
144
+ type = "object";
161
145
  }
162
146
  return this.toBase(schema, type);
163
147
  });
@@ -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.22",
11
+ "version": "1.3.24",
12
12
  "author": "Amir Abolhasani",
13
13
  "license": "MIT",
14
14
  "main": "./dist/index.js",
@@ -19,7 +19,7 @@
19
19
  "dependencies": {
20
20
  "@types/node": "^20.12.12",
21
21
  "axios": "^1.6.8",
22
- "namirasoft-core": "^1.3.26",
22
+ "namirasoft-core": "^1.3.27",
23
23
  "namirasoft-node-cli": "^1.3.8",
24
24
  "namirasoft-schema": "^1.3.9"
25
25
  },
@@ -3,6 +3,7 @@ export class PHP
3
3
  {
4
4
  save: boolean = true;
5
5
  index: boolean = true;
6
+ namespace: string;
6
7
  path: string;
7
8
  exportPath: string;
8
9
  name: string;
@@ -15,8 +16,9 @@ export class PHP
15
16
  fields: string[] = [];
16
17
  constructors: string[] = [];
17
18
  functions: string[] = [];
18
- constructor(path: string, exportPath: string, name: string, parent_name: string = "", has_class: boolean = true)
19
+ constructor(namespace: string, path: string, exportPath: string, name: string, parent_name: string = "", has_class: boolean = true)
19
20
  {
21
+ this.namespace = namespace;
20
22
  this.path = path;
21
23
  this.exportPath = exportPath;
22
24
  this.name = name;
@@ -56,6 +58,8 @@ export class PHP
56
58
  lines.push("/* */");
57
59
  lines.push("/****************************************************************/");
58
60
  lines.push("");
61
+ lines.push(`namespace ${this.namespace};`);
62
+ lines.push("");
59
63
  if (this.imports.length > 0)
60
64
  {
61
65
  let is = [...new Set(this.imports)];
@@ -1,5 +1,5 @@
1
1
  import { ApplicationLooper, BaseTypeSchema, 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 { PHP } from "./PHP";
5
5
  import { TypeBuilder } from "./TypeBuilder";
@@ -10,6 +10,15 @@ export class PHPBuilder extends BaseBuilder
10
10
  {
11
11
  super(src_directory, dst_directory);
12
12
  }
13
+ private getNameSpace(folder: string): string
14
+ {
15
+ if (folder)
16
+ folder = this.name + "-" + folder;
17
+ else
18
+ folder = this.name;
19
+ let NameSpaceCase: NamingConvention = new NamingConvention("NameSpaceCase", "\\", NamingConvention.formatter_pascal, NamingConvention.splitter_uppercase);
20
+ return NamingConvention.lower_case_dash.convert(folder, NameSpaceCase);
21
+ }
13
22
  protected override async onRun()
14
23
  {
15
24
  this.dst.clean();
@@ -36,13 +45,13 @@ export class PHPBuilder extends BaseBuilder
36
45
  "license": "MIT",
37
46
  "autoload": {
38
47
  "psr-4": {
39
- "Namirasoft\\ApiLink\\": "src/"
40
48
  }
41
49
  },
42
50
  "require": {
43
51
  "namirasoft/core": "^1.3.0",
44
52
  }
45
53
  };
54
+ composerjson["autoload"]["psr-4"][this.getNameSpace("") + "\\"] = "src/";
46
55
 
47
56
  let packagejson: any = {
48
57
  name: this.name,
@@ -117,7 +126,7 @@ export class PHPBuilder extends BaseBuilder
117
126
  }
118
127
  // getIndex(...all: PHP[]): PHP
119
128
  // {
120
- // let php = new PHP("./src", "", "index", "", false);
129
+ // let php = new PHP(this.getNameSpace(""), "./src", "", "index", "", false);
121
130
  // all.filter(a => a.index).forEach(x => php.imports.push(`export * from "${x.exportPath}${x.name}";`));
122
131
  // this.dst.kepts.filter(x => x.endsWith('.php')).map(x =>
123
132
  // {
@@ -132,7 +141,7 @@ export class PHPBuilder extends BaseBuilder
132
141
  return [];
133
142
  let getPHP = async (name: string, read_only: boolean | null) =>
134
143
  {
135
- let php = new PHP("./src/row", "./row/", name, undefined, true);
144
+ let php = new PHP(this.getNameSpace("row"), "./src/row", "./row/", name, undefined, true);
136
145
  if (schema.fields)
137
146
  for (let i = 0; i < schema.fields.length; i++)
138
147
  {
@@ -162,10 +171,12 @@ export class PHPBuilder extends BaseBuilder
162
171
  {
163
172
  let typename = TypeBuilder.getClassName(row.name);
164
173
  if (typename)
165
- php.imports.push(`require_once "./${typename}";`);
174
+ php.uses.push(`use ${this.getNameSpace("") + "\\" + typename};`);
166
175
  }
167
176
  else
168
- php.imports.push(`require_once "${row.external.package}";`);
177
+ {
178
+ // php.imports.push(`require_once "${row.external.package}";`);
179
+ }
169
180
  }
170
181
  }
171
182
  if (enums)
@@ -177,7 +188,7 @@ export class PHPBuilder extends BaseBuilder
177
188
  {
178
189
  let typename = TypeBuilder.getEnumName(_enum.name);
179
190
  if (typename)
180
- php.imports.push(`require_once "../enum/${typename}";`);
191
+ php.uses.push(`use ${this.getNameSpace("enum") + "\\" + typename};`);
181
192
  }
182
193
  else
183
194
  php.imports.push(`import { ${_enum.name} } from "${_enum.external.package}";`);
@@ -204,7 +215,7 @@ export class PHPBuilder extends BaseBuilder
204
215
  {
205
216
  if (schema.external != null)
206
217
  return [];
207
- let php = new PHP("./src/enum", "./enum/", schema.name, undefined, false);
218
+ let php = new PHP(this.getNameSpace("enum"), "./src/enum", "./enum/", schema.name, undefined, false);
208
219
  php.scripts.push(`export enum ${schema.name}`);
209
220
  php.scripts.push(`{`);
210
221
  if (schema.valids)
@@ -220,7 +231,7 @@ export class PHPBuilder extends BaseBuilder
220
231
  getServer(tags: string[]): PHP
221
232
  {
222
233
  let className = this.title.replace(/\s/gm, "") + "Server";
223
- let php = new PHP("./src", "./", className);
234
+ let php = new PHP(this.getNameSpace(""), "./src", "./", className);
224
235
  if (this.account)
225
236
  {
226
237
  if (this.src.json.name == "namirasoft-account-api-v1")
@@ -228,18 +239,18 @@ export class PHPBuilder extends BaseBuilder
228
239
  else
229
240
  php.imports.push(`require_once "namirasoft/account";`);
230
241
  }
231
- tags.forEach(tag => php.imports.push(`require_once "./${className}${tag}";`));
242
+ tags.forEach(tag => php.uses.push(`use ${this.getNameSpace("") + "\\" + className + tag};`));
232
243
 
233
244
  if (this.account)
234
245
  {
235
- php.fields.push(`TokenManager manager;`);
246
+ php.fields.push(`TokenManager manager; `);
236
247
  }
237
248
  if (this.nws)
238
249
  {
239
- php.fields.push(`string zone;`);
250
+ php.fields.push(`string zone; `);
240
251
  }
241
252
 
242
- tags.forEach(tag => php.fields.push(`public ${className}${tag} $${tag.toLowerCase()};`));
253
+ tags.forEach(tag => php.fields.push(`public ${className}${tag} $${tag.toLowerCase()}; `));
243
254
 
244
255
  let pars: string[] = [];
245
256
  let args: string[] = [];
@@ -258,36 +269,34 @@ export class PHPBuilder extends BaseBuilder
258
269
  php.constructors.push(`public function __construct(${pars.join(", ")})`);
259
270
  php.constructors.push(`{`);
260
271
  if (this.account)
261
- php.constructors.push(` $this->manager = manager;`);
272
+ php.constructors.push(` $this->manager = manager; `);
262
273
  if (this.nws)
263
- php.constructors.push(` $this->zone = zone;`);
264
- tags.forEach(tag => php.constructors.push(` $this->${tag.toLowerCase()} = new ${className}${tag}(${args.join(", ")});`));
265
- php.constructors.push(`}`);
274
+ php.constructors.push(` $this->zone = zone; `);
275
+ tags.forEach(tag => php.constructors.push(` $this->${tag.toLowerCase()} = new ${className}${tag} (${args.join(", ")}); `));
276
+ php.constructors.push(`} `);
266
277
  return php;
267
278
  }
268
279
  getServerBase(): PHP
269
280
  {
270
281
  let className = this.title.replace(/\s/gm, "") + "ServerBase";
271
282
  let parentName = this.account ? "NamirasoftServerBase" : "BaseServer";
272
- let php = new PHP("./src", "./", className, parentName);
283
+ let php = new PHP(this.getNameSpace(""), "./src", "./", className, parentName);
273
284
  if (this.account)
274
285
  {
275
286
  if (this.src.json.name == "namirasoft-account-api-v1")
276
287
  {
277
- php.imports.push(`require_once "./NamirasoftServerBase";`);
278
- php.imports.push(`require_once "./TokenManager";`);
288
+ php.imports.push(`require_once "./NamirasoftServerBase"; `);
289
+ php.imports.push(`require_once "./TokenManager"; `);
279
290
  }
280
291
  else
281
292
  {
282
- php.imports.push(`require_once "namirasoft/account";`);
283
- // php.uses.push(`use NamirasoftServerBase;`);
284
- // php.uses.push(`use TokenManager;`);
293
+ php.imports.push(`require_once "namirasoft/account"; `);
294
+ php.uses.push(`use Namirasoft\\Account\\NamirasoftServerBase; `);
295
+ php.uses.push(`use Namirasoft\\Account\\TokenManager; `);
285
296
  }
286
297
  }
287
298
  else
288
- {
289
- php.imports.push(`require_once "namirasoft/core";`);
290
- }
299
+ php.uses.push(`use Namirasoft\\Core\\BaseServer;`);
291
300
 
292
301
  let pars: string[] = [];
293
302
  let args: string[] = [`\`${this.url}\``];
@@ -332,8 +341,8 @@ export class PHPBuilder extends BaseBuilder
332
341
  let baseName = this.title.replace(/\s/gm, "") + "Server";
333
342
  let parentName = baseName + "Base";
334
343
  let className = baseName + tag;
335
- let php = new PHP("./src", "./", className, parentName);
336
- php.imports.push(`require_once "./${parentName}";`);
344
+ let php = new PHP(this.getNameSpace(""), "./src", "./", className, parentName);
345
+ php.uses.push(`use ${this.getNameSpace("") + "\\" + parentName};`);
337
346
  return php;
338
347
  }
339
348
  async addFunction(schema: ControllerSchema, php: PHP): Promise<void>
@@ -355,20 +364,19 @@ export class PHPBuilder extends BaseBuilder
355
364
  if (query.name == "filters")
356
365
  {
357
366
  newname = "filters_string_value";
358
- function_lines.push(...[`$${newname} ;`,
367
+ function_lines.push(...[`$${newname} = "";`,
359
368
  `if ($filters != null)`,
360
369
  `{`,
361
370
  ` $temp = [];`,
362
371
  ` for ($i = 0; $i < count($filters); $i++)`,
363
372
  ` {`,
364
- ` $temp[] = $filters[$i]->.getCommand();`,
373
+ ` $temp[] = $filters[$i]->getCommand();`,
365
374
  ` }`,
366
- ` $${newname} = implode(";", $temp);`,
375
+ ` $${newname} = implode(";", $temp);`,
367
376
  `}`
368
377
  ]);
369
- query_output = "?FilterItem[]";
370
- php.imports.push(`require_once "namirasoft/core";`);
371
- // php.uses.push(`use FilterItem;`);
378
+ query_output = "array"; // "?FilterItem[]";
379
+ // php.uses.push(`use Namirasoft\\Core\\FilterItem;`);
372
380
  }
373
381
  pars.push(query_output + " $" + query.name);
374
382
  queries.push(newname);
@@ -422,12 +430,12 @@ export class PHPBuilder extends BaseBuilder
422
430
  if (row.external == null)
423
431
  {
424
432
  let typename = TypeBuilder.getClassName(row.name);
425
- php.imports.push(`require_once "./row/${typename + postfix}";`);
433
+ php.uses.push(`use ${this.getNameSpace("row") + "\\" + typename + postfix};`);
426
434
  }
427
435
  else
428
436
  {
429
- php.imports.push(`require_once "${row.external.package.replace("namirasoft-", "namirasoft/")}";`);
430
- // php.uses.push(`use ${row.name};`);
437
+ // php.imports.push(`require_once "${row.external.package.replace("namirasoft-", "namirasoft/")}";`);
438
+ php.uses.push(`use ${row.name};`);
431
439
  }
432
440
  }
433
441
  }
@@ -439,12 +447,13 @@ export class PHPBuilder extends BaseBuilder
439
447
  if (_enum.external == null)
440
448
  {
441
449
  let typename = TypeBuilder.getEnumName(_enum.name);
442
- php.imports.push(`require_once "./enum/${typename}";`);
450
+ // php.imports.push(`require_once "./enum/${typename}";`);
451
+ php.uses.push(`use ${this.getNameSpace("enum") + "\\" + typename};`);
443
452
  }
444
453
  else
445
454
  {
446
- php.imports.push(`require_once "${_enum.external.package.replace("namirasoft-", "namirasoft/")}";`);
447
- php.uses.push(`use ${_enum.name};`);
455
+ // php.imports.push(`require_once "${_enum.external.package.replace("namirasoft-", "namirasoft/")}";`);
456
+ php.uses.push(`use ${this.getNameSpace("enum") + "\\" + _enum.name};`);
448
457
  }
449
458
  }
450
459
  }
@@ -4,7 +4,7 @@ import { EnumSchema } from "namirasoft-schema/dist/schema/type/EnumSchema";
4
4
 
5
5
  export class TypeBuilder extends BaseTypeBuilder<string>
6
6
  {
7
- private read_only: boolean | null;
7
+ public read_only: boolean | null;
8
8
  private postfix: string;
9
9
  constructor(schema: BaseTypeSchema | null, read_only: boolean | null, postfix: string = "")
10
10
  {
@@ -123,7 +123,7 @@ export class TypeBuilder extends BaseTypeBuilder<string>
123
123
  // ans = "(" + names.join(" | ") + ")";
124
124
  // return this.toBase(schema, ans + "[]");
125
125
  }
126
- protected override async _toObject(schema: ObjectSchema, callback: (schema: BaseTypeSchema) => void)
126
+ protected override async _toObject(schema: ObjectSchema, _: (schema: BaseTypeSchema) => void)
127
127
  {
128
128
  let type = null;
129
129
  if (schema.external != null)
@@ -132,26 +132,26 @@ export class TypeBuilder extends BaseTypeBuilder<string>
132
132
  type = TypeBuilder.getClassName(schema.name, this.postfix);
133
133
  if (!type)
134
134
  {
135
- type = "";
136
- if (schema.fields == null)
137
- type = "object";
138
- else if (schema.fields.length == 0)
139
- type = "object";
140
- else
141
- {
142
- let fields: string[] = [];
143
- for (let i = 0; i < schema.fields.length; i++)
144
- {
145
- const f = schema.fields[i];
146
- if (this.read_only == null || f.type.read_only == this.read_only)
147
- {
148
- let builder = new TypeBuilder(f.type, this.read_only, this.postfix);
149
- let fieldtype = await builder.run(callback);
150
- fields.push(`${f.name}: ${fieldtype}`);
151
- }
152
- }
153
- type = "{ " + fields.join(", ") + " }";
154
- }
135
+ type = "object";
136
+ // if (schema.fields == null)
137
+ // type = "any";
138
+ // else if (schema.fields.length == 0)
139
+ // type = "{}";
140
+ // else
141
+ // {
142
+ // let fields: string[] = [];
143
+ // for (let i = 0; i < schema.fields.length; i++)
144
+ // {
145
+ // const f = schema.fields[i];
146
+ // if (this.read_only == null || f.type.read_only == this.read_only)
147
+ // {
148
+ // let builder = new TypeBuilder(f.type, this.read_only, this.postfix);
149
+ // let fieldtype = await builder.run(callback);
150
+ // fields.push(`${f.name}: ${fieldtype}`);
151
+ // }
152
+ // }
153
+ // type = "{ " + fields.join(", ") + " }";
154
+ // }
155
155
  }
156
156
  return this.toBase(schema, type);
157
157
  }