gg-express 1.0.72 → 1.0.74

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.
@@ -0,0 +1,72 @@
1
+
2
+ import axios from "axios"
3
+ import { staticRouteInterface_hotel } from "./staticRouteInterface_hotel"
4
+
5
+ export class GGApi {
6
+ constructor() {}
7
+
8
+ get<T extends keyof staticRouteInterface_hotel["get"]>(
9
+ url: T,
10
+ requireParams: staticRouteInterface_hotel["get"][T]["requireParams"]
11
+ ): Promise<staticRouteInterface_hotel["get"][T]["responseStructure"]> {
12
+ return new Promise((resolve, reject) => {
13
+ axios
14
+ .get(url as string, { params: { data: requireParams } })
15
+ .then((response) => {
16
+ resolve(response.data)
17
+ })
18
+ .catch((error) => {
19
+ reject(error)
20
+ })
21
+ })
22
+ }
23
+
24
+ post<T extends keyof staticRouteInterface_hotel["post"]>(
25
+ url: T,
26
+ requireParams: staticRouteInterface_hotel["post"][T]["requireParams"]
27
+ ): Promise<staticRouteInterface_hotel["post"][T]["responseStructure"]> {
28
+ return new Promise((resolve, reject) => {
29
+ axios
30
+ .post(url as string, { data: requireParams })
31
+ .then((response) => {
32
+ resolve(response.data)
33
+ })
34
+ .catch((error) => {
35
+ reject(error)
36
+ })
37
+ })
38
+ }
39
+ put<T extends keyof staticRouteInterface_hotel["put"]>(
40
+ url: T,
41
+ requireParams: staticRouteInterface_hotel["put"][T]["requireParams"]
42
+ ): Promise<staticRouteInterface_hotel["put"][T]["responseStructure"]> {
43
+ return new Promise((resolve, reject) => {
44
+ axios
45
+ .put(url as string, { data: requireParams })
46
+ .then((response) => {
47
+ resolve(response.data)
48
+ })
49
+ .catch((error) => {
50
+ reject(error)
51
+ })
52
+ })
53
+ }
54
+ delete<T extends keyof staticRouteInterface_hotel["delete"]>(
55
+ url: T,
56
+ requireParams: staticRouteInterface_hotel["delete"][T]["requireParams"]
57
+ ): Promise<staticRouteInterface_hotel["delete"][T]["responseStructure"]> {
58
+ return new Promise((resolve, reject) => {
59
+ axios
60
+ .delete(url as string, { data: { data: requireParams } })
61
+ .then((response) => {
62
+ resolve(response.data)
63
+ })
64
+ .catch((error) => {
65
+ reject(error)
66
+ })
67
+ })
68
+ }
69
+ }
70
+
71
+
72
+
package/dist/GGExpress.js CHANGED
@@ -150,15 +150,26 @@ class GGExpress {
150
150
  let requireParamCode = `{${[requireParameterCode(), requireDataCode()]
151
151
  .filter((row) => row.length > 0)
152
152
  .join(",")}}`;
153
- return ` "${row.url}" : {
154
- requireParams : ${requireParamCode},
155
- responseStructure : {
156
- status : "SUCCESS" | "ERROR",
157
- message : string,
158
- parameter : {${genParamCodeParameter(row.responseStructure)}}, data : { ${genDataParamCode(row.responseStructure)} } ${isArray(row.responseStructure)}}
159
- } `;
153
+ let tempURL;
154
+ if (Array.isArray(row.url)) {
155
+ tempURL = row.url;
156
+ }
157
+ else {
158
+ tempURL = [row.url];
159
+ }
160
+ return tempURL
161
+ .map((url) => {
162
+ return ` "${url}" : {
163
+ requireParams : ${requireParamCode},
164
+ responseStructure : {
165
+ status : "SUCCESS" | "ERROR",
166
+ message : string,
167
+ parameter : {${genParamCodeParameter(row.responseStructure)}}, data : { ${genDataParamCode(row.responseStructure)} } ${isArray(row.responseStructure)}}
168
+ } `;
169
+ })
170
+ .join(",");
160
171
  })
161
- .join(",");
172
+ .join(" , ");
162
173
  return rawString;
163
174
  };
164
175
  const getRoute = myExpressRouteList.filter((row) => row.method === "get");
package/dist/run.test.js CHANGED
@@ -82,6 +82,35 @@ function run() {
82
82
  },
83
83
  });
84
84
  });
85
+ ggapp.get(["/api/seed/memo/id",
86
+ "/api/hotel/memo/id"
87
+ ], {
88
+ requireParams: {
89
+ parameter: { files: "string[]" },
90
+ dataType: "arrayObject",
91
+ structure: { id: "number", name: ["A", "B"] },
92
+ },
93
+ responseStructure: {
94
+ parameter: { numberOfPeople: "number", itemName: "string" },
95
+ dataType: "arrayObject",
96
+ structure: {
97
+ id: "number",
98
+ name: "string",
99
+ },
100
+ },
101
+ }, (req, res, next) => {
102
+ req.query.data.data.forEach((row) => row.name === "A");
103
+ console.log(req.query);
104
+ return res.json({
105
+ message: "",
106
+ status: "SUCCESS",
107
+ data: [],
108
+ parameter: {
109
+ itemName: "",
110
+ numberOfPeople: 2,
111
+ },
112
+ });
113
+ });
85
114
  app.listen(3002, () => {
86
115
  ggapp.generateAPIFiles();
87
116
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gg-express",
3
- "version": "1.0.72",
3
+ "version": "1.0.74",
4
4
  "description": "",
5
5
  "main": "dist/GGExpress.js",
6
6
  "scripts": {
package/src/GGExpress.ts CHANGED
@@ -389,19 +389,30 @@ export default class GGExpress<appName extends string> {
389
389
  .filter((row) => row.length > 0)
390
390
  .join(",")}}`
391
391
 
392
- return ` "${row.url}" : {
393
- requireParams : ${requireParamCode},
394
- responseStructure : {
395
- status : "SUCCESS" | "ERROR",
396
- message : string,
397
- parameter : {${genParamCodeParameter(
398
- row.responseStructure
399
- )}}, data : { ${genDataParamCode(row.responseStructure)} } ${isArray(
400
- row.responseStructure
401
- )}}
402
- } `
392
+ let tempURL
393
+ if (Array.isArray(row.url)) {
394
+ tempURL = row.url
395
+ } else {
396
+ tempURL = [row.url]
397
+ }
398
+ return tempURL
399
+ .map((url) => {
400
+ return ` "${url}" : {
401
+ requireParams : ${requireParamCode},
402
+ responseStructure : {
403
+ status : "SUCCESS" | "ERROR",
404
+ message : string,
405
+ parameter : {${genParamCodeParameter(
406
+ row.responseStructure
407
+ )}}, data : { ${genDataParamCode(
408
+ row.responseStructure
409
+ )} } ${isArray(row.responseStructure)}}
410
+ } `
411
+ })
412
+ .join(",")
403
413
  })
404
- .join(",")
414
+ .join(" , ")
415
+
405
416
  return rawString
406
417
  }
407
418
 
package/src/run.test.ts CHANGED
@@ -87,6 +87,40 @@ function run() {
87
87
  })
88
88
  }
89
89
  )
90
+
91
+ ggapp.get(
92
+ ["/api/seed/memo/id",
93
+ "/api/hotel/memo/id"
94
+ ],
95
+ {
96
+ requireParams: {
97
+ parameter: { files: "string[]" },
98
+ dataType: "arrayObject",
99
+ structure: { id: "number", name: ["A", "B"] },
100
+ },
101
+ responseStructure: {
102
+ parameter: { numberOfPeople: "number", itemName: "string" },
103
+ dataType: "arrayObject",
104
+ structure: {
105
+ id: "number",
106
+ name: "string",
107
+ },
108
+ },
109
+ },
110
+ (req, res, next) => {
111
+ req.query.data.data.forEach((row) => row.name === "A")
112
+ console.log(req.query)
113
+ return res.json({
114
+ message: "",
115
+ status: "SUCCESS",
116
+ data: [],
117
+ parameter: {
118
+ itemName: "",
119
+ numberOfPeople: 2,
120
+ },
121
+ })
122
+ }
123
+ )
90
124
  app.listen(3002, () => {
91
125
  ggapp.generateAPIFiles()
92
126
  })
@@ -0,0 +1,30 @@
1
+ export interface staticRouteInterface_hotel {
2
+ get : { "/api/hotel/users/id" : {
3
+ requireParams : { parameter:{ files : string[]}, data:{ id : number, name : "A" | "B"}[]},
4
+ responseStructure : {
5
+ status : "SUCCESS" | "ERROR",
6
+ message : string,
7
+ parameter : { numberOfPeople : number, itemName : string}, data : { id : number, name : string } []}
8
+ } , "/api/seed/memo/id" : {
9
+ requireParams : { parameter:{ files : string[]}, data:{ id : number, name : "A" | "B"}[]},
10
+ responseStructure : {
11
+ status : "SUCCESS" | "ERROR",
12
+ message : string,
13
+ parameter : { numberOfPeople : number, itemName : string}, data : { id : number, name : string } []}
14
+ } , "/api/hotel/memo/id" : {
15
+ requireParams : { parameter:{ files : string[]}, data:{ id : number, name : "A" | "B"}[]},
16
+ responseStructure : {
17
+ status : "SUCCESS" | "ERROR",
18
+ message : string,
19
+ parameter : { numberOfPeople : number, itemName : string}, data : { id : number, name : string } []}
20
+ } },
21
+ post : { "/api/hotel/item" : {
22
+ requireParams : { parameter:Partial<{ lotNumber : number}>, data:Partial<{ id : number, name : "item-1" | "item-2", price : number}>},
23
+ responseStructure : {
24
+ status : "SUCCESS" | "ERROR",
25
+ message : string,
26
+ parameter : { numberOfPeople : number, itemName : string}, data : { id : number, name : string } []}
27
+ } },
28
+ put : { },
29
+ delete : { },
30
+ }