sonamu 0.2.13 → 0.2.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/templates/generated_http.template.d.ts +2 -3
- package/dist/templates/generated_http.template.d.ts.map +1 -1
- package/dist/templates/generated_http.template.js +37 -30
- package/dist/templates/generated_http.template.js.map +1 -1
- package/package.json +1 -1
- package/src/templates/generated_http.template.ts +33 -26
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { TemplateOptions } from "../types/types";
|
|
3
|
-
import { EntityNamesRecord } from "../entity/entity-manager";
|
|
4
3
|
import { ExtendedApi } from "../api/decorators";
|
|
5
4
|
import { Template } from "./base-template";
|
|
6
5
|
export declare class Template__generated_http extends Template {
|
|
7
6
|
constructor();
|
|
8
|
-
getTargetAndPath(
|
|
7
|
+
getTargetAndPath(): {
|
|
9
8
|
target: string;
|
|
10
9
|
path: string;
|
|
11
10
|
};
|
|
12
|
-
render({
|
|
11
|
+
render({}: TemplateOptions["generated_http"]): {
|
|
13
12
|
body: string;
|
|
14
13
|
importKeys: never[];
|
|
15
14
|
target: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generated_http.template.d.ts","sourceRoot":"","sources":["../../src/templates/generated_http.template.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"generated_http.template.d.ts","sourceRoot":"","sources":["../../src/templates/generated_http.template.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAI3C,qBAAa,wBAAyB,SAAQ,QAAQ;;IAKpD,gBAAgB;;;;IAOhB,MAAM,CAAC,EAAE,EAAE,eAAe,CAAC,gBAAgB,CAAC;;;;;;IA+C5C,mBAAmB,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IA2CvE,gBAAgB,CACd,GAAG,EAAE,WAAW,EAChB,UAAU,EAAE;QAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;KAAE,GACnD;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE;CAM9B"}
|
|
@@ -6,53 +6,60 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.Template__generated_http = void 0;
|
|
7
7
|
const qs_1 = __importDefault(require("qs"));
|
|
8
8
|
const zod_1 = require("zod");
|
|
9
|
-
const entity_manager_1 = require("../entity/entity-manager");
|
|
10
9
|
const code_converters_1 = require("../api/code-converters");
|
|
11
10
|
const base_template_1 = require("./base-template");
|
|
12
11
|
const prettier_1 = __importDefault(require("prettier"));
|
|
13
|
-
const luxon_1 = require("luxon");
|
|
14
12
|
const sonamu_1 = require("../api/sonamu");
|
|
15
13
|
class Template__generated_http extends base_template_1.Template {
|
|
16
14
|
constructor() {
|
|
17
15
|
super("generated_http");
|
|
18
16
|
}
|
|
19
|
-
getTargetAndPath(
|
|
17
|
+
getTargetAndPath() {
|
|
20
18
|
return {
|
|
21
19
|
target: "api/src/application",
|
|
22
|
-
path:
|
|
20
|
+
path: `sonamu.generated.http`,
|
|
23
21
|
};
|
|
24
22
|
}
|
|
25
|
-
render({
|
|
26
|
-
const
|
|
27
|
-
const references = sonamu_1.Sonamu.syncer.types;
|
|
23
|
+
render({}) {
|
|
24
|
+
const { types, apis } = sonamu_1.Sonamu.syncer;
|
|
28
25
|
const lines = apis.map((api) => {
|
|
29
|
-
var _a, _b
|
|
30
|
-
const reqObject = this.resolveApiParams(api,
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
26
|
+
var _a, _b;
|
|
27
|
+
const reqObject = this.resolveApiParams(api, types);
|
|
28
|
+
const dataLines = (() => {
|
|
29
|
+
var _a;
|
|
30
|
+
if (((_a = api.options.httpMethod) !== null && _a !== void 0 ? _a : "GET") === "GET") {
|
|
31
|
+
return {
|
|
32
|
+
querystring: [
|
|
33
|
+
qs_1.default
|
|
34
|
+
.stringify(reqObject, { encode: false })
|
|
35
|
+
.split("&")
|
|
36
|
+
.join("\n\t&"),
|
|
37
|
+
],
|
|
38
|
+
body: [],
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
return {
|
|
43
|
+
querystring: [],
|
|
44
|
+
body: [
|
|
45
|
+
"",
|
|
46
|
+
prettier_1.default.format(JSON.stringify(reqObject), {
|
|
47
|
+
parser: "json",
|
|
48
|
+
}),
|
|
49
|
+
],
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
})();
|
|
46
53
|
return [
|
|
47
54
|
[
|
|
48
|
-
`${(
|
|
49
|
-
...
|
|
55
|
+
`${(_a = api.options.httpMethod) !== null && _a !== void 0 ? _a : "GET"} {{baseUrl}}/api${api.path}`,
|
|
56
|
+
...dataLines.querystring,
|
|
50
57
|
].join("\n\t?"),
|
|
51
|
-
`Content-Type: ${(
|
|
52
|
-
...
|
|
58
|
+
`Content-Type: ${(_b = api.options.contentType) !== null && _b !== void 0 ? _b : "application/json"}`,
|
|
59
|
+
...dataLines.body,
|
|
53
60
|
].join("\n");
|
|
54
61
|
});
|
|
55
|
-
return Object.assign(Object.assign({}, this.getTargetAndPath(
|
|
62
|
+
return Object.assign(Object.assign({}, this.getTargetAndPath()), { body: lines.join("\n\n###\n\n"), importKeys: [] });
|
|
56
63
|
}
|
|
57
64
|
zodTypeToReqDefault(zodType, name) {
|
|
58
65
|
var _a;
|
|
@@ -67,7 +74,7 @@ class Template__generated_http extends base_template_1.Template {
|
|
|
67
74
|
}
|
|
68
75
|
else if (zodType instanceof zod_1.z.ZodString) {
|
|
69
76
|
if (name.endsWith("_at") || name.endsWith("_date") || name === "range") {
|
|
70
|
-
return
|
|
77
|
+
return "2000-01-01";
|
|
71
78
|
}
|
|
72
79
|
else {
|
|
73
80
|
return name.toUpperCase();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generated_http.template.js","sourceRoot":"","sources":["../../src/templates/generated_http.template.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,6BAAwB;AAExB,
|
|
1
|
+
{"version":3,"file":"generated_http.template.js","sourceRoot":"","sources":["../../src/templates/generated_http.template.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import qs from "qs";
|
|
2
2
|
import { z } from "zod";
|
|
3
3
|
import { TemplateOptions } from "../types/types";
|
|
4
|
-
import { EntityManager, EntityNamesRecord } from "../entity/entity-manager";
|
|
5
4
|
import { getZodObjectFromApi } from "../api/code-converters";
|
|
6
5
|
import { ExtendedApi } from "../api/decorators";
|
|
7
6
|
import { Template } from "./base-template";
|
|
8
7
|
import prettier from "prettier";
|
|
9
|
-
import { DateTime } from "luxon";
|
|
10
8
|
import { Sonamu } from "../api/sonamu";
|
|
11
9
|
|
|
12
10
|
export class Template__generated_http extends Template {
|
|
@@ -14,46 +12,55 @@ export class Template__generated_http extends Template {
|
|
|
14
12
|
super("generated_http");
|
|
15
13
|
}
|
|
16
14
|
|
|
17
|
-
getTargetAndPath(
|
|
15
|
+
getTargetAndPath() {
|
|
18
16
|
return {
|
|
19
17
|
target: "api/src/application",
|
|
20
|
-
path:
|
|
18
|
+
path: `sonamu.generated.http`,
|
|
21
19
|
};
|
|
22
20
|
}
|
|
23
21
|
|
|
24
|
-
render({
|
|
25
|
-
const
|
|
26
|
-
const references = Sonamu.syncer.types;
|
|
22
|
+
render({}: TemplateOptions["generated_http"]) {
|
|
23
|
+
const { types, apis } = Sonamu.syncer;
|
|
27
24
|
|
|
28
25
|
const lines = apis.map((api) => {
|
|
29
|
-
const reqObject = this.resolveApiParams(api,
|
|
26
|
+
const reqObject = this.resolveApiParams(api, types);
|
|
27
|
+
|
|
28
|
+
const dataLines = (() => {
|
|
29
|
+
if ((api.options.httpMethod ?? "GET") === "GET") {
|
|
30
|
+
return {
|
|
31
|
+
querystring: [
|
|
32
|
+
qs
|
|
33
|
+
.stringify(reqObject, { encode: false })
|
|
34
|
+
.split("&")
|
|
35
|
+
.join("\n\t&"),
|
|
36
|
+
],
|
|
37
|
+
body: [],
|
|
38
|
+
};
|
|
39
|
+
} else {
|
|
40
|
+
return {
|
|
41
|
+
querystring: [],
|
|
42
|
+
body: [
|
|
43
|
+
"",
|
|
44
|
+
prettier.format(JSON.stringify(reqObject), {
|
|
45
|
+
parser: "json",
|
|
46
|
+
}),
|
|
47
|
+
],
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
})();
|
|
30
51
|
|
|
31
|
-
let qsLines: string[] = [];
|
|
32
|
-
let bodyLines: string[] = [];
|
|
33
|
-
if ((api.options.httpMethod ?? "GET") === "GET") {
|
|
34
|
-
qsLines = [
|
|
35
|
-
qs.stringify(reqObject, { encode: false }).split("&").join("\n\t&"),
|
|
36
|
-
];
|
|
37
|
-
} else {
|
|
38
|
-
bodyLines = [
|
|
39
|
-
"",
|
|
40
|
-
prettier.format(JSON.stringify(reqObject), {
|
|
41
|
-
parser: "json",
|
|
42
|
-
}),
|
|
43
|
-
];
|
|
44
|
-
}
|
|
45
52
|
return [
|
|
46
53
|
[
|
|
47
54
|
`${api.options.httpMethod ?? "GET"} {{baseUrl}}/api${api.path}`,
|
|
48
|
-
...
|
|
55
|
+
...dataLines.querystring,
|
|
49
56
|
].join("\n\t?"),
|
|
50
57
|
`Content-Type: ${api.options.contentType ?? "application/json"}`,
|
|
51
|
-
...
|
|
58
|
+
...dataLines.body,
|
|
52
59
|
].join("\n");
|
|
53
60
|
});
|
|
54
61
|
|
|
55
62
|
return {
|
|
56
|
-
...this.getTargetAndPath(
|
|
63
|
+
...this.getTargetAndPath(),
|
|
57
64
|
body: lines.join("\n\n###\n\n"),
|
|
58
65
|
importKeys: [],
|
|
59
66
|
};
|
|
@@ -71,7 +78,7 @@ export class Template__generated_http extends Template {
|
|
|
71
78
|
return [this.zodTypeToReqDefault(zodType.element, name)];
|
|
72
79
|
} else if (zodType instanceof z.ZodString) {
|
|
73
80
|
if (name.endsWith("_at") || name.endsWith("_date") || name === "range") {
|
|
74
|
-
return
|
|
81
|
+
return "2000-01-01";
|
|
75
82
|
} else {
|
|
76
83
|
return name.toUpperCase();
|
|
77
84
|
}
|