namirasoft-sdk-generator 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.gitlab-ci.yml +15 -0
- package/dist/BaseBuilder.d.ts +18 -0
- package/dist/BaseBuilder.js +101 -0
- package/dist/BaseBuilder.js.map +1 -0
- package/dist/BaseBuilderEnv.d.ts +11 -0
- package/dist/BaseBuilderEnv.js +124 -0
- package/dist/BaseBuilderEnv.js.map +1 -0
- package/dist/Logger.d.ts +16 -0
- package/dist/Logger.js +29 -0
- package/dist/Logger.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +71 -0
- package/dist/index.js.map +1 -0
- package/dist/npm/NPMBuilder.d.ts +14 -0
- package/dist/npm/NPMBuilder.js +225 -0
- package/dist/npm/NPMBuilder.js.map +1 -0
- package/dist/npm/Ts.d.ts +15 -0
- package/dist/npm/Ts.js +72 -0
- package/dist/npm/Ts.js.map +1 -0
- package/dist/npm/TypeBuilder.d.ts +24 -0
- package/dist/npm/TypeBuilder.js +132 -0
- package/dist/npm/TypeBuilder.js.map +1 -0
- package/package.json +19 -0
- package/src/BaseBuilder.ts +79 -0
- package/src/BaseBuilderEnv.ts +98 -0
- package/src/Logger.ts +29 -0
- package/src/index.ts +40 -0
- package/src/npm/NPMBuilder.ts +232 -0
- package/src/npm/Ts.ts +56 -0
- package/src/npm/TypeBuilder.ts +106 -0
- package/tsconfig.json +30 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NPMBuilder.js","sourceRoot":"","sources":["../../src/npm/NPMBuilder.ts"],"names":[],"mappings":"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"}
|
package/dist/npm/Ts.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare class Ts {
|
|
2
|
+
path: string;
|
|
3
|
+
exportPath: string;
|
|
4
|
+
name: string;
|
|
5
|
+
parent_name: string;
|
|
6
|
+
has_class: boolean;
|
|
7
|
+
imports: string[];
|
|
8
|
+
scripts: string[];
|
|
9
|
+
fields: string[];
|
|
10
|
+
constructors: string[];
|
|
11
|
+
functions: string[];
|
|
12
|
+
constructor(path: string, exportPath: string, name: string, parent_name?: string, has_class?: boolean);
|
|
13
|
+
getFilePath(): string;
|
|
14
|
+
getContent(): string;
|
|
15
|
+
}
|
package/dist/npm/Ts.js
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.Ts = void 0;
|
|
27
|
+
const path = __importStar(require("path"));
|
|
28
|
+
class Ts {
|
|
29
|
+
constructor(path, exportPath, name, parent_name = "", has_class = true) {
|
|
30
|
+
this.imports = [];
|
|
31
|
+
this.scripts = [];
|
|
32
|
+
this.fields = [];
|
|
33
|
+
this.constructors = [];
|
|
34
|
+
this.functions = [];
|
|
35
|
+
this.path = path;
|
|
36
|
+
this.exportPath = exportPath;
|
|
37
|
+
this.name = name;
|
|
38
|
+
this.parent_name = parent_name;
|
|
39
|
+
this.has_class = has_class;
|
|
40
|
+
}
|
|
41
|
+
getFilePath() {
|
|
42
|
+
let ans = path.join(this.path, this.name + ".ts");
|
|
43
|
+
if (this.path.startsWith("./"))
|
|
44
|
+
if (!ans.startsWith("./"))
|
|
45
|
+
ans = "./" + ans;
|
|
46
|
+
return ans;
|
|
47
|
+
}
|
|
48
|
+
getContent() {
|
|
49
|
+
let lines = [];
|
|
50
|
+
if (this.imports.length > 0) {
|
|
51
|
+
let is = [...new Set(this.imports)];
|
|
52
|
+
is.sort();
|
|
53
|
+
lines.push(...is);
|
|
54
|
+
lines.push("");
|
|
55
|
+
}
|
|
56
|
+
if (this.scripts.length > 0) {
|
|
57
|
+
lines.push(...this.scripts);
|
|
58
|
+
lines.push("");
|
|
59
|
+
}
|
|
60
|
+
if (this.has_class) {
|
|
61
|
+
lines.push("export class " + this.name + (this.parent_name ? (" extends " + this.parent_name) : ""));
|
|
62
|
+
lines.push("{");
|
|
63
|
+
lines.push(...(this.fields.map(x => " " + x)));
|
|
64
|
+
lines.push(...(this.constructors.map(x => " " + x)));
|
|
65
|
+
lines.push(...(this.functions.map(x => " " + x)));
|
|
66
|
+
lines.push("}");
|
|
67
|
+
}
|
|
68
|
+
return lines.join("\n");
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
exports.Ts = Ts;
|
|
72
|
+
//# sourceMappingURL=Ts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Ts.js","sourceRoot":"","sources":["../../src/npm/Ts.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA6B;AAC7B,MAAa,EAAE;IAYX,YAAY,IAAY,EAAE,UAAkB,EAAE,IAAY,EAAE,cAAsB,EAAE,EAAE,YAAqB,IAAI;QAL/G,YAAO,GAAa,EAAE,CAAC;QACvB,YAAO,GAAa,EAAE,CAAC;QACvB,WAAM,GAAa,EAAE,CAAC;QACtB,iBAAY,GAAa,EAAE,CAAC;QAC5B,cAAS,GAAa,EAAE,CAAC;QAGrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IACD,WAAW;QAEP,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;QAClD,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC;gBACrB,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC;QACzB,OAAO,GAAG,CAAC;IACf,CAAC;IACD,UAAU;QAEN,IAAI,KAAK,GAAG,EAAE,CAAC;QACf,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAC3B;YACI,IAAI,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YACpC,EAAE,CAAC,IAAI,EAAE,CAAC;YACV,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAClB;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAC3B;YACI,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAClB;QACD,IAAI,IAAI,CAAC,SAAS,EAClB;YACI,KAAK,CAAC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACrG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAClD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACxD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACrD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SACnB;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;CACJ;AAtDD,gBAsDC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { AnySchema, ArraySchema, BaseTypeBuilder, BigIntSchema, BoolSchema, DateSchema, DateTimeSchema, DecimalSchema, DoubleSchema, FloatSchema, IntegerSchema, MediumIntSchema, ObjectSchema, RealSchema, SmallIntSchema, StringSchema, TimeSchema, TinyIntSchema } from "namirasoft-schema";
|
|
2
|
+
import { EnumSchema } from "namirasoft-schema/dist/schema/type/EnumSchema";
|
|
3
|
+
export declare class TypeBuilder extends BaseTypeBuilder<string> {
|
|
4
|
+
private toBase;
|
|
5
|
+
protected _toAny(schema: AnySchema): Promise<string>;
|
|
6
|
+
protected _toBool(schema: BoolSchema): Promise<string>;
|
|
7
|
+
protected _toTinyInt(schema: TinyIntSchema): Promise<string>;
|
|
8
|
+
protected _toSmallInt(schema: SmallIntSchema): Promise<string>;
|
|
9
|
+
protected _toMediumInt(schema: MediumIntSchema): Promise<string>;
|
|
10
|
+
protected _toInteger(schema: IntegerSchema): Promise<string>;
|
|
11
|
+
protected _toBigInt(schema: BigIntSchema): Promise<string>;
|
|
12
|
+
protected _toFloat(schema: FloatSchema): Promise<string>;
|
|
13
|
+
protected _toDouble(schema: DoubleSchema): Promise<string>;
|
|
14
|
+
protected _toDecimal(schema: DecimalSchema): Promise<string>;
|
|
15
|
+
protected _toReal(schema: RealSchema): Promise<string>;
|
|
16
|
+
protected _toString(schema: StringSchema): Promise<string>;
|
|
17
|
+
protected _toDateTime(schema: DateTimeSchema): Promise<string>;
|
|
18
|
+
protected _toDate(schema: DateSchema): Promise<string>;
|
|
19
|
+
protected _toTime(schema: TimeSchema): Promise<string>;
|
|
20
|
+
protected _toEnum(schema: EnumSchema): Promise<string>;
|
|
21
|
+
protected _toArray(schema: ArraySchema): Promise<string>;
|
|
22
|
+
protected _toObject(schema: ObjectSchema): Promise<string>;
|
|
23
|
+
static getClassName(name: string): string;
|
|
24
|
+
}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.TypeBuilder = void 0;
|
|
13
|
+
const namirasoft_schema_1 = require("namirasoft-schema");
|
|
14
|
+
class TypeBuilder extends namirasoft_schema_1.BaseTypeBuilder {
|
|
15
|
+
toBase(schema, type) {
|
|
16
|
+
if (!schema.required)
|
|
17
|
+
type += " | null";
|
|
18
|
+
return type;
|
|
19
|
+
}
|
|
20
|
+
_toAny(schema) {
|
|
21
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
22
|
+
return this.toBase(schema, "any");
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
_toBool(schema) {
|
|
26
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
27
|
+
return this.toBase(schema, "boolean");
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
_toTinyInt(schema) {
|
|
31
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
32
|
+
return this.toBase(schema, "number");
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
_toSmallInt(schema) {
|
|
36
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
37
|
+
return this.toBase(schema, "number");
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
_toMediumInt(schema) {
|
|
41
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
42
|
+
return this.toBase(schema, "number");
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
_toInteger(schema) {
|
|
46
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
47
|
+
return this.toBase(schema, "number");
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
_toBigInt(schema) {
|
|
51
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
52
|
+
return this.toBase(schema, "number");
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
_toFloat(schema) {
|
|
56
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
57
|
+
return this.toBase(schema, "number");
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
_toDouble(schema) {
|
|
61
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
62
|
+
return this.toBase(schema, "number");
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
_toDecimal(schema) {
|
|
66
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
67
|
+
return this.toBase(schema, "number");
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
_toReal(schema) {
|
|
71
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
72
|
+
return this.toBase(schema, "number");
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
_toString(schema) {
|
|
76
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
77
|
+
return this.toBase(schema, "string");
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
_toDateTime(schema) {
|
|
81
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
82
|
+
return this.toBase(schema, "Date");
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
_toDate(schema) {
|
|
86
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
87
|
+
return this.toBase(schema, "");
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
_toTime(schema) {
|
|
91
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
92
|
+
return this.toBase(schema, "");
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
_toEnum(schema) {
|
|
96
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
97
|
+
return this.toBase(schema, "");
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
_toArray(schema) {
|
|
101
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
102
|
+
let names = [];
|
|
103
|
+
for (let i = 0; i < schema.items.length; i++) {
|
|
104
|
+
const item = schema.items[i];
|
|
105
|
+
let builder = new TypeBuilder(item);
|
|
106
|
+
let name = yield builder.run();
|
|
107
|
+
names.push(name !== null && name !== void 0 ? name : "any");
|
|
108
|
+
}
|
|
109
|
+
names = [...new Set(names)];
|
|
110
|
+
let ans = "";
|
|
111
|
+
if (names.length == 0)
|
|
112
|
+
ans = "any";
|
|
113
|
+
else if (names.length == 1)
|
|
114
|
+
ans = names[0];
|
|
115
|
+
else
|
|
116
|
+
ans = "(" + names.join(" | ") + ")";
|
|
117
|
+
return this.toBase(schema, ans + "[]");
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
_toObject(schema) {
|
|
121
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
122
|
+
return this.toBase(schema, TypeBuilder.getClassName(schema.name));
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
static getClassName(name) {
|
|
126
|
+
let ns = name.split('_');
|
|
127
|
+
ns = ns.map(n => n[0].toUpperCase() + n.substring(1).toLowerCase());
|
|
128
|
+
return ns.join("") + "Row";
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
exports.TypeBuilder = TypeBuilder;
|
|
132
|
+
//# sourceMappingURL=TypeBuilder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TypeBuilder.js","sourceRoot":"","sources":["../../src/npm/TypeBuilder.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "namirasoft-sdk-generator",
|
|
3
|
+
"description": "Namira Software SDK Generator NPM Package",
|
|
4
|
+
"version": "1.1.0",
|
|
5
|
+
"main": "./dist/index.js",
|
|
6
|
+
"types": "./dist/index.d.ts",
|
|
7
|
+
"scripts": {},
|
|
8
|
+
"author": "Amir Abolhasani",
|
|
9
|
+
"license": "MIT",
|
|
10
|
+
"bin": {
|
|
11
|
+
"namirasoft-sdk-generator": "./dist/index.js"
|
|
12
|
+
},
|
|
13
|
+
"dependencies": {
|
|
14
|
+
"@types/node": "^20.10.0",
|
|
15
|
+
"axios": "^1.6.2",
|
|
16
|
+
"namirasoft-log": "^1.1.3",
|
|
17
|
+
"namirasoft-schema": "^1.1.53"
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import * as fs from "fs"
|
|
2
|
+
import * as path from "path"
|
|
3
|
+
import { Logger } from "./Logger";
|
|
4
|
+
import { BaseBuilderEnv } from "./BaseBuilderEnv";
|
|
5
|
+
import { ApplicationSchema } from "namirasoft-schema";
|
|
6
|
+
|
|
7
|
+
export abstract class BaseBuilder
|
|
8
|
+
{
|
|
9
|
+
protected src: BaseBuilderEnv;
|
|
10
|
+
protected dst: BaseBuilderEnv;
|
|
11
|
+
protected json: any;
|
|
12
|
+
protected schema!: ApplicationSchema;
|
|
13
|
+
protected name: string;
|
|
14
|
+
protected title: string;
|
|
15
|
+
protected description: string;
|
|
16
|
+
protected url: string;
|
|
17
|
+
protected account: boolean = false;
|
|
18
|
+
constructor(src_directory: string, dst_directory: string)
|
|
19
|
+
{
|
|
20
|
+
this.src = new BaseBuilderEnv("src", src_directory);
|
|
21
|
+
this.dst = new BaseBuilderEnv("dst", dst_directory);
|
|
22
|
+
this.json = JSON.parse(fs.readFileSync(path.join(src_directory, "package.json"), 'utf8'));
|
|
23
|
+
this.name = this.json.name.replace(/-api-v\d/gm, "");
|
|
24
|
+
this.title = this.json.title.replace(/\sAPI\sV\d/gm, "");
|
|
25
|
+
this.description = this.json.description.replace(/\sAPI\sVersion\s\d/gm, "");
|
|
26
|
+
this.url = this.getURL(this.json.name);
|
|
27
|
+
}
|
|
28
|
+
protected getURL(name: any): string
|
|
29
|
+
{
|
|
30
|
+
let toks = name.split('-');
|
|
31
|
+
let index = toks.indexOf("api");
|
|
32
|
+
let subIndex = 2;
|
|
33
|
+
if (index < subIndex)
|
|
34
|
+
subIndex = index;
|
|
35
|
+
let subdomain = "";
|
|
36
|
+
if (index > 1)
|
|
37
|
+
subdomain = toks[1];
|
|
38
|
+
let ans = "https://";
|
|
39
|
+
if (subdomain)
|
|
40
|
+
ans += subdomain + ".";
|
|
41
|
+
ans += "namirasoft.com";
|
|
42
|
+
for (let i = subIndex; i < toks.length; i++)
|
|
43
|
+
ans += "/" + toks[i];
|
|
44
|
+
return ans;
|
|
45
|
+
}
|
|
46
|
+
async run(): Promise<void>
|
|
47
|
+
{
|
|
48
|
+
// command
|
|
49
|
+
await this.src.exec("ncu -u");
|
|
50
|
+
await this.src.exec("npm i");
|
|
51
|
+
await this.src.exec("tsc");
|
|
52
|
+
this.src.saveFileText(".env", `NAMIRASOFT_MUTE="true"\nBASE_PATH=/`);
|
|
53
|
+
await this.src.exec("node ./dist/index.js");
|
|
54
|
+
this.schema = ApplicationSchema.byFile(ApplicationSchema, this.src.getPath("application.schema"));
|
|
55
|
+
this.account = this.schema.tags.account == "true";
|
|
56
|
+
await this._run();
|
|
57
|
+
}
|
|
58
|
+
protected abstract _run(): Promise<void>;
|
|
59
|
+
copy(srcPath: string, dstPath: string): void
|
|
60
|
+
{
|
|
61
|
+
Logger.success("Copying file ...");
|
|
62
|
+
let src = path.join(this.src.directory, srcPath);
|
|
63
|
+
let dst = path.join(this.dst.directory, dstPath);
|
|
64
|
+
Logger.log(" source: " + srcPath);
|
|
65
|
+
Logger.log(" destination: " + dstPath);
|
|
66
|
+
Logger.log(" source full path: " + src);
|
|
67
|
+
Logger.log(" destination full path: " + dst);
|
|
68
|
+
if (fs.existsSync(src))
|
|
69
|
+
{
|
|
70
|
+
fs.copyFileSync(src, dst);
|
|
71
|
+
Logger.log(" source file was not found.");
|
|
72
|
+
Logger.log(" nothing was copied.");
|
|
73
|
+
}
|
|
74
|
+
else
|
|
75
|
+
{
|
|
76
|
+
Logger.log(" finished.");
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import * as fs from "fs"
|
|
2
|
+
import * as path from "path"
|
|
3
|
+
import axios from "axios"
|
|
4
|
+
import { execSync } from 'child_process';
|
|
5
|
+
import { Logger } from "./Logger";
|
|
6
|
+
export class BaseBuilderEnv
|
|
7
|
+
{
|
|
8
|
+
private name: string;
|
|
9
|
+
public directory: string;
|
|
10
|
+
constructor(name: string, directory: string)
|
|
11
|
+
{
|
|
12
|
+
this.name = name;
|
|
13
|
+
this.directory = directory;
|
|
14
|
+
}
|
|
15
|
+
getPath(directory: string)
|
|
16
|
+
{
|
|
17
|
+
return path.join(this.directory, directory);
|
|
18
|
+
}
|
|
19
|
+
mkFolder(directory: string)
|
|
20
|
+
{
|
|
21
|
+
Logger.success("Making directory ...");
|
|
22
|
+
Logger.log(" env: " + this.name);
|
|
23
|
+
Logger.log(" path: " + directory);
|
|
24
|
+
fs.mkdirSync(this.getPath(directory), { recursive: true });
|
|
25
|
+
Logger.log(" finished.");
|
|
26
|
+
}
|
|
27
|
+
saveFileText(filePath: string, data: string): void
|
|
28
|
+
{
|
|
29
|
+
Logger.success("Making file ...");
|
|
30
|
+
let src = this.getPath(filePath);
|
|
31
|
+
Logger.log(" env: " + this.name);
|
|
32
|
+
Logger.log(" name: " + filePath);
|
|
33
|
+
Logger.log(" path: " + src);
|
|
34
|
+
fs.writeFileSync(src, data);
|
|
35
|
+
Logger.log(" finished.");
|
|
36
|
+
}
|
|
37
|
+
saveFileJson(filePath: string, data: any): void
|
|
38
|
+
{
|
|
39
|
+
this.saveFileText(filePath, JSON.stringify(data, null, 4));
|
|
40
|
+
}
|
|
41
|
+
async exec(command: string)
|
|
42
|
+
{
|
|
43
|
+
try
|
|
44
|
+
{
|
|
45
|
+
Logger.success(command);
|
|
46
|
+
Logger.log(" env: " + this.name);
|
|
47
|
+
Logger.log(" cwd: " + this.directory);
|
|
48
|
+
let x = await execSync(command, { cwd: this.directory, encoding: 'utf-8' });
|
|
49
|
+
Logger.log(x);
|
|
50
|
+
Logger.log(" finished.");
|
|
51
|
+
} catch (error)
|
|
52
|
+
{
|
|
53
|
+
let e = error as any;
|
|
54
|
+
if (e.stdout)
|
|
55
|
+
Logger.error(e.stdout);
|
|
56
|
+
throw error;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
async download(url: string, filePath: string): Promise<void>
|
|
60
|
+
{
|
|
61
|
+
Logger.success("Donwloading file");
|
|
62
|
+
Logger.log(" env: " + this.name);
|
|
63
|
+
Logger.log(" file path: " + filePath);
|
|
64
|
+
Logger.log(" url: " + url);
|
|
65
|
+
try
|
|
66
|
+
{
|
|
67
|
+
const response = await axios({
|
|
68
|
+
method: 'get',
|
|
69
|
+
url: url,
|
|
70
|
+
responseType: 'stream',
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
const writer = fs.createWriteStream(this.getPath(filePath));
|
|
74
|
+
|
|
75
|
+
response.data.pipe(writer);
|
|
76
|
+
|
|
77
|
+
return new Promise((resolve, reject) =>
|
|
78
|
+
{
|
|
79
|
+
writer.on('finish', () =>
|
|
80
|
+
{
|
|
81
|
+
Logger.log(" finished succressfully");
|
|
82
|
+
resolve();
|
|
83
|
+
});
|
|
84
|
+
writer.on('error', reject);
|
|
85
|
+
});
|
|
86
|
+
} catch (error)
|
|
87
|
+
{
|
|
88
|
+
if (error instanceof Error)
|
|
89
|
+
Logger.error('Error downloading file: ' + error.message);
|
|
90
|
+
else
|
|
91
|
+
{
|
|
92
|
+
Logger.error('Error downloading file: ');
|
|
93
|
+
console.log(error)
|
|
94
|
+
}
|
|
95
|
+
throw error;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
package/src/Logger.ts
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export class Logger
|
|
2
|
+
{
|
|
3
|
+
static colors = {
|
|
4
|
+
reset: '\x1b[0m',
|
|
5
|
+
red: '\x1b[31m',
|
|
6
|
+
green: '\x1b[32m',
|
|
7
|
+
yellow: '\x1b[33m',
|
|
8
|
+
blue: '\x1b[34m',
|
|
9
|
+
magenta: '\x1b[35m',
|
|
10
|
+
cyan: '\x1b[36m',
|
|
11
|
+
white: '\x1b[37m',
|
|
12
|
+
};
|
|
13
|
+
static log(message: string)
|
|
14
|
+
{
|
|
15
|
+
console.info(Logger.colors.white + message + Logger.colors.reset);
|
|
16
|
+
}
|
|
17
|
+
static info(message: string)
|
|
18
|
+
{
|
|
19
|
+
console.info(Logger.colors.blue + message + Logger.colors.reset);
|
|
20
|
+
}
|
|
21
|
+
static success(message: string)
|
|
22
|
+
{
|
|
23
|
+
console.info(Logger.colors.green + message + Logger.colors.reset);
|
|
24
|
+
}
|
|
25
|
+
static error(message: string)
|
|
26
|
+
{
|
|
27
|
+
console.error(Logger.colors.red + message + Logger.colors.reset);
|
|
28
|
+
}
|
|
29
|
+
}
|
package/src/index.ts
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { Logger } from "./Logger";
|
|
3
|
+
import { NPMBuilder } from "./npm/NPMBuilder"
|
|
4
|
+
import * as path from "path"
|
|
5
|
+
|
|
6
|
+
if (process.argv.length != 5)
|
|
7
|
+
{
|
|
8
|
+
Logger.error("Error - invalid argument count.")
|
|
9
|
+
Logger.log(" Please use the following format");
|
|
10
|
+
Logger.log(" namirasoft-sdk-generator {platform name} {source directory} {destination directory}");
|
|
11
|
+
Logger.log(" example");
|
|
12
|
+
Logger.log(" namirasoft-sdk-generator npm . ./npm");
|
|
13
|
+
process.exit(1);
|
|
14
|
+
}
|
|
15
|
+
let platform = process.argv[2].toLowerCase();
|
|
16
|
+
let src_directory = path.resolve(process.argv[3].toLowerCase());
|
|
17
|
+
let dst_directory = path.resolve(process.argv[4].toLowerCase());
|
|
18
|
+
|
|
19
|
+
Logger.info(`----------------------------------------------------------------`);
|
|
20
|
+
Logger.info(`| Generating package |`);
|
|
21
|
+
Logger.info(`----------------------------------------------------------------`);
|
|
22
|
+
Logger.log(`Source directory: "${src_directory}"`);
|
|
23
|
+
Logger.log(`Destination directory: "${dst_directory}"`);
|
|
24
|
+
Logger.log(``);
|
|
25
|
+
async function main()
|
|
26
|
+
{
|
|
27
|
+
if (platform == "npm")
|
|
28
|
+
{
|
|
29
|
+
let builder = new NPMBuilder(src_directory, dst_directory);
|
|
30
|
+
await builder.run();
|
|
31
|
+
}
|
|
32
|
+
else
|
|
33
|
+
{
|
|
34
|
+
Logger.error("Error - invalid platform value: " + platform)
|
|
35
|
+
process.exit(1);
|
|
36
|
+
}
|
|
37
|
+
Logger.log(`Destination directory: "${dst_directory}"`);
|
|
38
|
+
Logger.success(`Pakcage was successfully generated.`);
|
|
39
|
+
}
|
|
40
|
+
main();
|