@warlock.js/core 2.0.0 → 2.0.3
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/cjs/builder/config-loader-builder.js +17 -17
- package/cjs/http/UploadedFile.d.ts +15 -0
- package/cjs/http/UploadedFile.d.ts.map +1 -1
- package/cjs/http/UploadedFile.js +15 -0
- package/cjs/http/UploadedFile.js.map +1 -1
- package/cjs/http/request.d.ts +14 -1
- package/cjs/http/request.d.ts.map +1 -1
- package/cjs/http/request.js +37 -23
- package/cjs/http/request.js.map +1 -1
- package/cjs/http/response.d.ts +6 -2
- package/cjs/http/response.d.ts.map +1 -1
- package/cjs/http/response.js +16 -0
- package/cjs/http/response.js.map +1 -1
- package/cjs/index.d.ts +1 -0
- package/cjs/index.d.ts.map +1 -1
- package/cjs/index.js +1 -1
- package/cjs/modules/uploads/controllers/upload-files.d.ts +1 -0
- package/cjs/modules/uploads/controllers/upload-files.d.ts.map +1 -1
- package/cjs/modules/uploads/controllers/upload-files.js +28 -7
- package/cjs/modules/uploads/controllers/upload-files.js.map +1 -1
- package/cjs/modules/uploads/utils/uploadable.d.ts +1 -1
- package/cjs/modules/uploads/utils/uploadable.d.ts.map +1 -1
- package/cjs/modules/uploads/utils/uploadable.js +3 -15
- package/cjs/modules/uploads/utils/uploadable.js.map +1 -1
- package/cjs/postman/index.d.ts +6 -0
- package/cjs/postman/index.d.ts.map +1 -0
- package/cjs/postman/index.js +30 -0
- package/cjs/postman/index.js.map +1 -0
- package/cjs/postman/postman-events.d.ts +6 -0
- package/cjs/postman/postman-events.d.ts.map +1 -0
- package/cjs/postman/postman-events.js +8 -0
- package/cjs/postman/postman-events.js.map +1 -0
- package/cjs/postman/postman-generator.d.ts +70 -0
- package/cjs/postman/postman-generator.d.ts.map +1 -0
- package/cjs/postman/postman-generator.js +401 -0
- package/cjs/postman/postman-generator.js.map +1 -0
- package/cjs/postman/types.d.ts +135 -0
- package/cjs/postman/types.d.ts.map +1 -0
- package/cjs/repositories/repository-listing.d.ts.map +1 -1
- package/cjs/repositories/repository-listing.js +3 -0
- package/cjs/repositories/repository-listing.js.map +1 -1
- package/cjs/router/route.d.ts +26 -0
- package/cjs/router/route.d.ts.map +1 -0
- package/cjs/router/router.d.ts.map +1 -1
- package/cjs/router/router.js +3 -0
- package/cjs/router/router.js.map +1 -1
- package/cjs/router/types.d.ts +44 -0
- package/cjs/router/types.d.ts.map +1 -1
- package/cjs/validator/index.d.ts +1 -0
- package/cjs/validator/index.d.ts.map +1 -1
- package/cjs/validator/locales.js +6 -2
- package/cjs/validator/locales.js.map +1 -1
- package/cjs/validator/rules/file.d.ts.map +1 -1
- package/cjs/validator/rules/file.js +1 -0
- package/cjs/validator/rules/file.js.map +1 -1
- package/cjs/validator/rules/in.js +1 -1
- package/cjs/validator/rules/in.js.map +1 -1
- package/cjs/validator/v/array-validator.d.ts +21 -0
- package/cjs/validator/v/array-validator.d.ts.map +1 -0
- package/cjs/validator/v/base-validator.d.ts +117 -0
- package/cjs/validator/v/base-validator.d.ts.map +1 -0
- package/cjs/validator/v/index.d.ts +3 -0
- package/cjs/validator/v/index.d.ts.map +1 -0
- package/cjs/validator/v/mutators.d.ts +23 -0
- package/cjs/validator/v/mutators.d.ts.map +1 -0
- package/cjs/validator/v/mutators.js +83 -0
- package/cjs/validator/v/mutators.js.map +1 -0
- package/cjs/validator/v/number-validator.d.ts +21 -0
- package/cjs/validator/v/number-validator.d.ts.map +1 -0
- package/cjs/validator/v/object-validator.d.ts +37 -0
- package/cjs/validator/v/object-validator.d.ts.map +1 -0
- package/cjs/validator/v/rules.d.ts +83 -0
- package/cjs/validator/v/rules.d.ts.map +1 -0
- package/cjs/validator/v/rules.js +457 -0
- package/cjs/validator/v/rules.js.map +1 -0
- package/cjs/validator/v/schema.d.ts +159 -0
- package/cjs/validator/v/schema.d.ts.map +1 -0
- package/cjs/validator/v/schema.js +516 -0
- package/cjs/validator/v/schema.js.map +1 -0
- package/cjs/validator/v/string-validator.d.ts +41 -0
- package/cjs/validator/v/string-validator.d.ts.map +1 -0
- package/cjs/validator/v/types.d.ts +63 -0
- package/cjs/validator/v/types.d.ts.map +1 -0
- package/cjs/validator/v/utils.d.ts +5 -0
- package/cjs/validator/v/utils.d.ts.map +1 -0
- package/cjs/validator/v/utils.js +22 -0
- package/cjs/validator/v/utils.js.map +1 -0
- package/cjs/validator/validateAll.d.ts.map +1 -1
- package/cjs/validator/validateAll.js +17 -1
- package/cjs/validator/validateAll.js.map +1 -1
- package/esm/builder/config-loader-builder.js +17 -17
- package/esm/http/UploadedFile.d.ts +15 -0
- package/esm/http/UploadedFile.d.ts.map +1 -1
- package/esm/http/UploadedFile.js +15 -0
- package/esm/http/UploadedFile.js.map +1 -1
- package/esm/http/request.d.ts +14 -1
- package/esm/http/request.d.ts.map +1 -1
- package/esm/http/request.js +37 -23
- package/esm/http/request.js.map +1 -1
- package/esm/http/response.d.ts +6 -2
- package/esm/http/response.d.ts.map +1 -1
- package/esm/http/response.js +16 -0
- package/esm/http/response.js.map +1 -1
- package/esm/index.d.ts +1 -0
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +1 -1
- package/esm/modules/uploads/controllers/upload-files.d.ts +1 -0
- package/esm/modules/uploads/controllers/upload-files.d.ts.map +1 -1
- package/esm/modules/uploads/controllers/upload-files.js +28 -7
- package/esm/modules/uploads/controllers/upload-files.js.map +1 -1
- package/esm/modules/uploads/utils/uploadable.d.ts +1 -1
- package/esm/modules/uploads/utils/uploadable.d.ts.map +1 -1
- package/esm/modules/uploads/utils/uploadable.js +3 -15
- package/esm/modules/uploads/utils/uploadable.js.map +1 -1
- package/esm/postman/index.d.ts +6 -0
- package/esm/postman/index.d.ts.map +1 -0
- package/esm/postman/index.js +30 -0
- package/esm/postman/index.js.map +1 -0
- package/esm/postman/postman-events.d.ts +6 -0
- package/esm/postman/postman-events.d.ts.map +1 -0
- package/esm/postman/postman-events.js +8 -0
- package/esm/postman/postman-events.js.map +1 -0
- package/esm/postman/postman-generator.d.ts +70 -0
- package/esm/postman/postman-generator.d.ts.map +1 -0
- package/esm/postman/postman-generator.js +401 -0
- package/esm/postman/postman-generator.js.map +1 -0
- package/esm/postman/types.d.ts +135 -0
- package/esm/postman/types.d.ts.map +1 -0
- package/esm/repositories/repository-listing.d.ts.map +1 -1
- package/esm/repositories/repository-listing.js +4 -1
- package/esm/repositories/repository-listing.js.map +1 -1
- package/esm/router/route.d.ts +26 -0
- package/esm/router/route.d.ts.map +1 -0
- package/esm/router/router.d.ts.map +1 -1
- package/esm/router/router.js +3 -0
- package/esm/router/router.js.map +1 -1
- package/esm/router/types.d.ts +44 -0
- package/esm/router/types.d.ts.map +1 -1
- package/esm/validator/index.d.ts +1 -0
- package/esm/validator/index.d.ts.map +1 -1
- package/esm/validator/locales.js +6 -2
- package/esm/validator/locales.js.map +1 -1
- package/esm/validator/rules/file.d.ts.map +1 -1
- package/esm/validator/rules/file.js +1 -0
- package/esm/validator/rules/file.js.map +1 -1
- package/esm/validator/rules/in.js +1 -1
- package/esm/validator/rules/in.js.map +1 -1
- package/esm/validator/v/array-validator.d.ts +21 -0
- package/esm/validator/v/array-validator.d.ts.map +1 -0
- package/esm/validator/v/base-validator.d.ts +117 -0
- package/esm/validator/v/base-validator.d.ts.map +1 -0
- package/esm/validator/v/index.d.ts +3 -0
- package/esm/validator/v/index.d.ts.map +1 -0
- package/esm/validator/v/mutators.d.ts +23 -0
- package/esm/validator/v/mutators.d.ts.map +1 -0
- package/esm/validator/v/mutators.js +83 -0
- package/esm/validator/v/mutators.js.map +1 -0
- package/esm/validator/v/number-validator.d.ts +21 -0
- package/esm/validator/v/number-validator.d.ts.map +1 -0
- package/esm/validator/v/object-validator.d.ts +37 -0
- package/esm/validator/v/object-validator.d.ts.map +1 -0
- package/esm/validator/v/rules.d.ts +83 -0
- package/esm/validator/v/rules.d.ts.map +1 -0
- package/esm/validator/v/rules.js +457 -0
- package/esm/validator/v/rules.js.map +1 -0
- package/esm/validator/v/schema.d.ts +159 -0
- package/esm/validator/v/schema.d.ts.map +1 -0
- package/esm/validator/v/schema.js +516 -0
- package/esm/validator/v/schema.js.map +1 -0
- package/esm/validator/v/string-validator.d.ts +41 -0
- package/esm/validator/v/string-validator.d.ts.map +1 -0
- package/esm/validator/v/types.d.ts +63 -0
- package/esm/validator/v/types.d.ts.map +1 -0
- package/esm/validator/v/utils.d.ts +5 -0
- package/esm/validator/v/utils.d.ts.map +1 -0
- package/esm/validator/v/utils.js +22 -0
- package/esm/validator/v/utils.js.map +1 -0
- package/esm/validator/validateAll.d.ts.map +1 -1
- package/esm/validator/validateAll.js +17 -1
- package/esm/validator/validateAll.js.map +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1,401 @@
|
|
|
1
|
+
import config from'@mongez/config';import {putJsonFile}from'@mongez/fs';import {capitalize,trim,rtrim}from'@mongez/reinforcements';import {isEmpty}from'@mongez/supportive-is';import {router,getValidationSchema,rootPath,ArraySchema,ValidationSchema,getRuleHandler}from'@warlock.js/core';import {log}from'@warlock.js/logger';import {singular,plural}from'pluralize';import {PostmanEvents}from'./postman-events.js';/* eslint-disable no-prototype-builtins */
|
|
2
|
+
class Postman {
|
|
3
|
+
/**
|
|
4
|
+
* Base url for the postman
|
|
5
|
+
*/
|
|
6
|
+
_baseUrl = "";
|
|
7
|
+
/**
|
|
8
|
+
* Postman info
|
|
9
|
+
*/
|
|
10
|
+
_info = {
|
|
11
|
+
name: "",
|
|
12
|
+
schema: "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Variables list
|
|
16
|
+
*/
|
|
17
|
+
_variables = {};
|
|
18
|
+
/**
|
|
19
|
+
* Postman tree
|
|
20
|
+
* A tree is a list of folders and sub folders, each folder/sub-folder has a list of requests but not necessarily
|
|
21
|
+
*/
|
|
22
|
+
_tree = [];
|
|
23
|
+
/**
|
|
24
|
+
* Set the base url
|
|
25
|
+
*/
|
|
26
|
+
setBaseUrl(baseUrl) {
|
|
27
|
+
this._baseUrl = baseUrl;
|
|
28
|
+
return this;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Set the variables
|
|
32
|
+
*/
|
|
33
|
+
setVariables(variables) {
|
|
34
|
+
this._variables = variables;
|
|
35
|
+
return this;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Set tree
|
|
39
|
+
*/
|
|
40
|
+
setTree(tree) {
|
|
41
|
+
this._tree = tree;
|
|
42
|
+
return this;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Generate the postman json
|
|
46
|
+
*/
|
|
47
|
+
toJson() {
|
|
48
|
+
//
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* folders list
|
|
52
|
+
*/
|
|
53
|
+
folders = [];
|
|
54
|
+
flatFolders = [];
|
|
55
|
+
/**
|
|
56
|
+
* Generate postman
|
|
57
|
+
*/
|
|
58
|
+
async generate() {
|
|
59
|
+
log.info("postman", "generating", "Generating postman collection");
|
|
60
|
+
const postmanCollection = {
|
|
61
|
+
item: [],
|
|
62
|
+
parent: "",
|
|
63
|
+
id: "",
|
|
64
|
+
name: "",
|
|
65
|
+
namespace: "",
|
|
66
|
+
};
|
|
67
|
+
this.flatFolders.push(postmanCollection);
|
|
68
|
+
for (const route of router.list()) {
|
|
69
|
+
const { path, method, $prefixStack } = route;
|
|
70
|
+
const parentFolders = $prefixStack.map((prefix, index) => {
|
|
71
|
+
let parent = "";
|
|
72
|
+
for (let i = 0; i < index; i++) {
|
|
73
|
+
parent += `${$prefixStack[i]}`;
|
|
74
|
+
}
|
|
75
|
+
const namespace = parent + prefix;
|
|
76
|
+
return {
|
|
77
|
+
name: prepareSegment(prefix),
|
|
78
|
+
namespace,
|
|
79
|
+
id: prefix,
|
|
80
|
+
item: [],
|
|
81
|
+
parent,
|
|
82
|
+
type: "folder",
|
|
83
|
+
};
|
|
84
|
+
});
|
|
85
|
+
let inputs = [];
|
|
86
|
+
if (route.handler.validation?.rules) {
|
|
87
|
+
const validationSchema = getValidationSchema(route.handler.validation?.rules);
|
|
88
|
+
inputs = parseValidationSchema(validationSchema);
|
|
89
|
+
}
|
|
90
|
+
const request = {
|
|
91
|
+
method,
|
|
92
|
+
header: [],
|
|
93
|
+
url: {
|
|
94
|
+
raw: `{{baseUrl}}${path}`,
|
|
95
|
+
host: [`{{baseUrl}}${path}`],
|
|
96
|
+
},
|
|
97
|
+
};
|
|
98
|
+
if (!isEmpty(inputs)) {
|
|
99
|
+
if (method === "GET") {
|
|
100
|
+
request.url.query = inputs;
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
const hasFileInput = inputs.find(input => input.type === "file") !== undefined;
|
|
104
|
+
request.body = {
|
|
105
|
+
mode: hasFileInput ? "formdata" : "raw",
|
|
106
|
+
};
|
|
107
|
+
if (hasFileInput) {
|
|
108
|
+
request.body.formdata = inputs;
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
request.body.options = {
|
|
112
|
+
raw: {
|
|
113
|
+
language: "json",
|
|
114
|
+
},
|
|
115
|
+
};
|
|
116
|
+
request.body.raw = JSON.stringify(this.inputsListToObject(inputs), null, 2);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
for (const folder of parentFolders) {
|
|
121
|
+
// check if folder id equals to namespace
|
|
122
|
+
// if so, then it is a parent folder
|
|
123
|
+
if (!this.flatFolders.find(f => f.namespace === folder.namespace)) {
|
|
124
|
+
this.flatFolders.push(folder);
|
|
125
|
+
}
|
|
126
|
+
const parentFolder = this.flatFolders.find(f => f.id === folder.parent);
|
|
127
|
+
if (parentFolder) {
|
|
128
|
+
// make sure first the folder is not in the parent list
|
|
129
|
+
if (!parentFolder.item.find((f) => f.namespace === folder.namespace)) {
|
|
130
|
+
parentFolder.item.push(folder);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
const currentFolder = parentFolders.length > 0
|
|
135
|
+
? this.flatFolders.find(f => f.namespace ===
|
|
136
|
+
parentFolders[parentFolders.length - 1].namespace) || postmanCollection
|
|
137
|
+
: postmanCollection;
|
|
138
|
+
// Add the request to the current folder
|
|
139
|
+
const postmanRequest = {
|
|
140
|
+
name: route.description ||
|
|
141
|
+
route.handler.description ||
|
|
142
|
+
namedMethodRoute(path, method),
|
|
143
|
+
request,
|
|
144
|
+
};
|
|
145
|
+
if (route.middleware) {
|
|
146
|
+
const middlewareThatsHasPostman = route.middleware.filter(middleware => middleware.postman !== undefined);
|
|
147
|
+
middlewareThatsHasPostman.forEach(middleware => {
|
|
148
|
+
middleware?.postman?.onAddingRequest?.({
|
|
149
|
+
...postmanRequest,
|
|
150
|
+
route,
|
|
151
|
+
});
|
|
152
|
+
if (middleware?.postman?.onCollectingVariables) {
|
|
153
|
+
PostmanEvents.onCollectingVariables(middleware?.postman?.onCollectingVariables);
|
|
154
|
+
}
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
currentFolder.item.push(postmanRequest);
|
|
158
|
+
}
|
|
159
|
+
const prepareFolders = (folders) => {
|
|
160
|
+
return folders.map((item) => {
|
|
161
|
+
if (item.type !== "folder") {
|
|
162
|
+
return item;
|
|
163
|
+
}
|
|
164
|
+
return {
|
|
165
|
+
name: item.name,
|
|
166
|
+
item: prepareFolders(item.item),
|
|
167
|
+
};
|
|
168
|
+
});
|
|
169
|
+
};
|
|
170
|
+
const collectionName = config.get("postman.collectionName") || config.get("app.appName");
|
|
171
|
+
const wrappedCollection = {
|
|
172
|
+
info: {
|
|
173
|
+
name: collectionName,
|
|
174
|
+
description: config.get("postman.description", ""),
|
|
175
|
+
schema: "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
|
|
176
|
+
},
|
|
177
|
+
item: prepareFolders(postmanCollection.item),
|
|
178
|
+
variable: this.generateVariables(),
|
|
179
|
+
};
|
|
180
|
+
const logFolder = (folder) => {
|
|
181
|
+
for (const item of folder.item) {
|
|
182
|
+
if (item.type === "folder") {
|
|
183
|
+
logFolder(item);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
};
|
|
187
|
+
logFolder(postmanCollection);
|
|
188
|
+
const outputFile = rootPath("postman.json");
|
|
189
|
+
putJsonFile(outputFile, wrappedCollection, {
|
|
190
|
+
spaces: 2,
|
|
191
|
+
});
|
|
192
|
+
log.success("postman", "generated", "Postman collection generated in postman.json");
|
|
193
|
+
}
|
|
194
|
+
inputsListToObject(inputs) {
|
|
195
|
+
const obj = {};
|
|
196
|
+
for (const input of inputs) {
|
|
197
|
+
obj[input.key] =
|
|
198
|
+
(input.value || input.type) +
|
|
199
|
+
(input.description ? ": " + input.description : "");
|
|
200
|
+
}
|
|
201
|
+
return obj;
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Generate variables
|
|
205
|
+
*/
|
|
206
|
+
generateVariables() {
|
|
207
|
+
const variables = [];
|
|
208
|
+
variables.push(this.newVariable("baseUrl", config.get("postman.baseUrl", this._baseUrl)));
|
|
209
|
+
const otherVariables = config.get("postman.variables", {});
|
|
210
|
+
for (const variable in otherVariables) {
|
|
211
|
+
const value = otherVariables[variable];
|
|
212
|
+
variables.push(this.newVariable(variable, value));
|
|
213
|
+
}
|
|
214
|
+
PostmanEvents.trigger("collectingVariables", variables);
|
|
215
|
+
return variables;
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
/**
|
|
219
|
+
* Make a new variable
|
|
220
|
+
*/
|
|
221
|
+
newVariable(key, value, type = "string") {
|
|
222
|
+
return {
|
|
223
|
+
id: key,
|
|
224
|
+
key,
|
|
225
|
+
value,
|
|
226
|
+
type,
|
|
227
|
+
};
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
function prepareSegment(segment) {
|
|
231
|
+
return capitalize(trim(segment, "/").replace(/\/|-/g, " "));
|
|
232
|
+
}
|
|
233
|
+
function removeId(path) {
|
|
234
|
+
// remove :id from the end of the path
|
|
235
|
+
return trim(path.replace(/:id$/, "")).replace(/\s+/g, " ");
|
|
236
|
+
}
|
|
237
|
+
function renderGetMethodRoute(path) {
|
|
238
|
+
if (path.includes(":")) {
|
|
239
|
+
// we need to get rid of the word that starts with that `:` first
|
|
240
|
+
const segments = path
|
|
241
|
+
.split("/")
|
|
242
|
+
.filter(segment => !segment.startsWith(":"));
|
|
243
|
+
const lastSegment = segments.pop();
|
|
244
|
+
return `Get ${capitalize(singular(lastSegment))}`;
|
|
245
|
+
}
|
|
246
|
+
const lastSegment = path.split("/").pop();
|
|
247
|
+
return `Get ${capitalize(plural(lastSegment))} list`;
|
|
248
|
+
}
|
|
249
|
+
function namedMethodRoute(path, method) {
|
|
250
|
+
switch (method) {
|
|
251
|
+
case "GET":
|
|
252
|
+
return renderGetMethodRoute(path);
|
|
253
|
+
case "POST":
|
|
254
|
+
path = prepareSegment(path);
|
|
255
|
+
return `Create New ${singular(path)}`;
|
|
256
|
+
case "PUT":
|
|
257
|
+
path = prepareSegment(path);
|
|
258
|
+
return `Update ${singular(removeId(path))}`;
|
|
259
|
+
case "DELETE":
|
|
260
|
+
path = prepareSegment(path);
|
|
261
|
+
if (path.includes(":")) {
|
|
262
|
+
return `Delete ${singular(removeId(path))}`;
|
|
263
|
+
}
|
|
264
|
+
return `Delete ${plural(removeId(path))} list`;
|
|
265
|
+
case "PATCH":
|
|
266
|
+
path = prepareSegment(path);
|
|
267
|
+
return `Patch ${singular(removeId(path))}`;
|
|
268
|
+
default:
|
|
269
|
+
return path;
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
function getJsonValidationSchema(schema) {
|
|
273
|
+
const inputs = schema.inputs;
|
|
274
|
+
const finalInputs = [];
|
|
275
|
+
for (const input in inputs) {
|
|
276
|
+
const inputRules = inputs[input];
|
|
277
|
+
if (inputRules instanceof ArraySchema) {
|
|
278
|
+
finalInputs.push(...parseValidationSchema(inputRules, input + ".$"));
|
|
279
|
+
}
|
|
280
|
+
else if (inputRules instanceof ValidationSchema) {
|
|
281
|
+
finalInputs.push(...parseValidationSchema(inputRules, input));
|
|
282
|
+
}
|
|
283
|
+
else {
|
|
284
|
+
const data = {
|
|
285
|
+
key: input,
|
|
286
|
+
type: "text",
|
|
287
|
+
};
|
|
288
|
+
// now we need to generate the description from the rules
|
|
289
|
+
let description = "";
|
|
290
|
+
let isLocalized = false;
|
|
291
|
+
for (const rule of inputRules) {
|
|
292
|
+
const ruleHandler = getRuleHandler(rule);
|
|
293
|
+
const expectedType = ruleHandler.expectedType();
|
|
294
|
+
if (expectedType) {
|
|
295
|
+
data.type = getProperType(expectedType);
|
|
296
|
+
}
|
|
297
|
+
ruleHandler.setInput(input);
|
|
298
|
+
if (ruleHandler.getName() === "localized") {
|
|
299
|
+
isLocalized = true;
|
|
300
|
+
}
|
|
301
|
+
else {
|
|
302
|
+
description += `${ruleHandler.toJson()} | `;
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
description = rtrim(description, " | ");
|
|
306
|
+
if (isLocalized) {
|
|
307
|
+
finalInputs.push({
|
|
308
|
+
key: input,
|
|
309
|
+
description,
|
|
310
|
+
value: [
|
|
311
|
+
{
|
|
312
|
+
value: "",
|
|
313
|
+
localeCode: "",
|
|
314
|
+
},
|
|
315
|
+
],
|
|
316
|
+
});
|
|
317
|
+
}
|
|
318
|
+
else {
|
|
319
|
+
data.description = description;
|
|
320
|
+
finalInputs.push(data);
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
return finalInputs;
|
|
325
|
+
}
|
|
326
|
+
function parseValidationSchema(schema, baseInputName = "") {
|
|
327
|
+
const inputs = schema.inputs;
|
|
328
|
+
const finalInputs = [];
|
|
329
|
+
for (const input in inputs) {
|
|
330
|
+
const inputRules = inputs[input];
|
|
331
|
+
if (inputRules instanceof ArraySchema) {
|
|
332
|
+
finalInputs.push(...parseValidationSchema(inputRules, input + ".$"));
|
|
333
|
+
}
|
|
334
|
+
else if (inputRules instanceof ValidationSchema) {
|
|
335
|
+
finalInputs.push(...parseValidationSchema(inputRules, input));
|
|
336
|
+
}
|
|
337
|
+
else {
|
|
338
|
+
const data = {
|
|
339
|
+
key: baseInputName ? baseInputName + "." + input : input,
|
|
340
|
+
type: "text",
|
|
341
|
+
};
|
|
342
|
+
// now we need to generate the description from the rules
|
|
343
|
+
let description = "";
|
|
344
|
+
let isLocalized = false;
|
|
345
|
+
for (const rule of inputRules) {
|
|
346
|
+
const ruleHandler = getRuleHandler(rule);
|
|
347
|
+
const expectedType = ruleHandler.expectedType();
|
|
348
|
+
if (expectedType) {
|
|
349
|
+
data.type = getProperType(expectedType);
|
|
350
|
+
}
|
|
351
|
+
ruleHandler.setInput(input);
|
|
352
|
+
if (ruleHandler.getName() === "localized") {
|
|
353
|
+
isLocalized = true;
|
|
354
|
+
}
|
|
355
|
+
else {
|
|
356
|
+
description += `${ruleHandler.toJson()} | `;
|
|
357
|
+
}
|
|
358
|
+
}
|
|
359
|
+
description = rtrim(description, " | ");
|
|
360
|
+
if (isLocalized) {
|
|
361
|
+
const valueInputKey = data.key + ".$.value";
|
|
362
|
+
const localeCodeInputKey = data.key + ".$.localeCode";
|
|
363
|
+
const locales = config.get("app.localeCodes");
|
|
364
|
+
finalInputs.push({
|
|
365
|
+
...data,
|
|
366
|
+
description,
|
|
367
|
+
key: valueInputKey,
|
|
368
|
+
});
|
|
369
|
+
finalInputs.push({
|
|
370
|
+
...data,
|
|
371
|
+
description: (description ? description + " | " : "") +
|
|
372
|
+
"One Of: '" +
|
|
373
|
+
locales.join("', '") +
|
|
374
|
+
"'",
|
|
375
|
+
key: localeCodeInputKey,
|
|
376
|
+
});
|
|
377
|
+
}
|
|
378
|
+
else {
|
|
379
|
+
data.description = description;
|
|
380
|
+
finalInputs.push(data);
|
|
381
|
+
}
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
return finalInputs;
|
|
385
|
+
}
|
|
386
|
+
function getProperType(type) {
|
|
387
|
+
switch (type) {
|
|
388
|
+
case "int":
|
|
389
|
+
case "integer":
|
|
390
|
+
case "float":
|
|
391
|
+
case "number":
|
|
392
|
+
return "number";
|
|
393
|
+
case "bool":
|
|
394
|
+
case "boolean":
|
|
395
|
+
return "boolean";
|
|
396
|
+
case "file":
|
|
397
|
+
return "file";
|
|
398
|
+
default:
|
|
399
|
+
return "text";
|
|
400
|
+
}
|
|
401
|
+
}export{Postman,getJsonValidationSchema,namedMethodRoute,parseValidationSchema,renderGetMethodRoute};//# sourceMappingURL=postman-generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"postman-generator.js","sources":["../../src/postman/postman-generator.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { type GenericObject } from "@mongez/reinforcements";
|
|
2
|
+
import { type Route } from "@warlock.js/core";
|
|
3
|
+
export type PostmanInput = {
|
|
4
|
+
key: string;
|
|
5
|
+
type: "text" | "file" | "number" | "boolean" | "array" | "object";
|
|
6
|
+
description?: string;
|
|
7
|
+
value?: any;
|
|
8
|
+
};
|
|
9
|
+
export type PostmanNode = PostmanCategoryType | PostmanRequestType;
|
|
10
|
+
export type PostmanCategoryType = {
|
|
11
|
+
name: string;
|
|
12
|
+
description?: string;
|
|
13
|
+
item: PostmanNode[];
|
|
14
|
+
};
|
|
15
|
+
interface PostmanFolder {
|
|
16
|
+
name: string;
|
|
17
|
+
item: (PostmanFolder | PostmanRequestType)[];
|
|
18
|
+
}
|
|
19
|
+
export interface PostmanOutput {
|
|
20
|
+
info: GenericObject;
|
|
21
|
+
item: (PostmanFolder | PostmanRequestType)[];
|
|
22
|
+
variable: PostmanVariable[];
|
|
23
|
+
}
|
|
24
|
+
export type MethodType = "GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "OPTIONS" | "HEAD";
|
|
25
|
+
export type PostmanBodyType = {
|
|
26
|
+
mode: "urlencoded" | "raw" | "formdata" | "file";
|
|
27
|
+
raw: string;
|
|
28
|
+
options?: GenericObject;
|
|
29
|
+
};
|
|
30
|
+
export type PostmanQueryType = {
|
|
31
|
+
key: string;
|
|
32
|
+
value: string;
|
|
33
|
+
};
|
|
34
|
+
export type PostmanRequestUrl = {
|
|
35
|
+
raw: string;
|
|
36
|
+
host?: string[];
|
|
37
|
+
protocol?: string;
|
|
38
|
+
path?: string[];
|
|
39
|
+
query?: PostmanInput[];
|
|
40
|
+
};
|
|
41
|
+
export type PostmanRequestHeader = {
|
|
42
|
+
key: string;
|
|
43
|
+
value: string;
|
|
44
|
+
};
|
|
45
|
+
export type PostmanInternalRequestType = {
|
|
46
|
+
method: MethodType;
|
|
47
|
+
header: PostmanRequestHeader[];
|
|
48
|
+
body?: GenericObject;
|
|
49
|
+
url: PostmanRequestUrl;
|
|
50
|
+
};
|
|
51
|
+
export type PostmanRequestType = {
|
|
52
|
+
name: string;
|
|
53
|
+
request: PostmanInternalRequestType;
|
|
54
|
+
response?: GenericObject[];
|
|
55
|
+
};
|
|
56
|
+
export type PostmanConfigurations = {
|
|
57
|
+
/**
|
|
58
|
+
* Base url
|
|
59
|
+
*/
|
|
60
|
+
baseUrl?: string;
|
|
61
|
+
/**
|
|
62
|
+
* Collection name
|
|
63
|
+
*/
|
|
64
|
+
collectionName?: string;
|
|
65
|
+
/**
|
|
66
|
+
* Description
|
|
67
|
+
*/
|
|
68
|
+
description?: string;
|
|
69
|
+
/**
|
|
70
|
+
* Variables
|
|
71
|
+
*/
|
|
72
|
+
variables?: {
|
|
73
|
+
[key: string]: string;
|
|
74
|
+
};
|
|
75
|
+
};
|
|
76
|
+
export interface PostmanVariable {
|
|
77
|
+
id?: string;
|
|
78
|
+
key: string;
|
|
79
|
+
value: string;
|
|
80
|
+
type?: "string" | "number" | "boolean";
|
|
81
|
+
}
|
|
82
|
+
export type PostmanResponse = GenericObject;
|
|
83
|
+
export type PostmanRequestEvent = {
|
|
84
|
+
route: Route;
|
|
85
|
+
} & PostmanRequest;
|
|
86
|
+
export type PostmanRequest = {
|
|
87
|
+
request: PostmanInternalRequestType;
|
|
88
|
+
response?: PostmanResponse[];
|
|
89
|
+
name: string;
|
|
90
|
+
};
|
|
91
|
+
declare module "@warlock.js/core" {
|
|
92
|
+
interface RouteHandlers {
|
|
93
|
+
/**
|
|
94
|
+
* Route configurations
|
|
95
|
+
* Used only when generating postman
|
|
96
|
+
*/
|
|
97
|
+
postman?: {
|
|
98
|
+
/**
|
|
99
|
+
* Define examples for the response
|
|
100
|
+
*/
|
|
101
|
+
examples?: PostmanExample[];
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
interface Middlewares {
|
|
105
|
+
/**
|
|
106
|
+
* Postman configurations
|
|
107
|
+
* Used only when generating postman
|
|
108
|
+
*/
|
|
109
|
+
postman?: {
|
|
110
|
+
/**
|
|
111
|
+
* Called when collecting variables
|
|
112
|
+
*/
|
|
113
|
+
onCollectingVariables?: (variables: PostmanVariable[]) => void;
|
|
114
|
+
/**
|
|
115
|
+
* Called when adding the request to the collection
|
|
116
|
+
*/
|
|
117
|
+
onAddingRequest?: (postmanRequest: PostmanRequestEvent) => void;
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
export type PostmanExample = {
|
|
122
|
+
description: string;
|
|
123
|
+
request: {
|
|
124
|
+
body?: GenericObject;
|
|
125
|
+
query?: GenericObject;
|
|
126
|
+
headers?: GenericObject;
|
|
127
|
+
};
|
|
128
|
+
response: {
|
|
129
|
+
status: number;
|
|
130
|
+
body?: GenericObject;
|
|
131
|
+
headers?: GenericObject;
|
|
132
|
+
};
|
|
133
|
+
};
|
|
134
|
+
export {};
|
|
135
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/postman/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repository-listing.d.ts","sourceRoot":"","sources":["../../src/repositories/repository-listing.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,KAAK,EACL,cAAc,EACd,iBAAiB,EACjB,aAAa,EACd,MAAM,qBAAqB,CAAC;AAO7B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEhF,qBAAa,iBAAiB,CAC5B,CAAC,SAAS,KAAK,EACf,CAAC,SAAS,OAAO,KAAK,GAAG,OAAO,KAAK;IAsCnC,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC;IACpD,SAAS,CAAC,QAAQ,EAAE,eAAe;IArCrC;;OAEG;IACI,KAAK,EAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IAEjC;;;;OAIG;IACI,cAAc,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAE/D;;OAEG;IACH,SAAS,CAAC,OAAO,EAAE,iBAAiB,CAAM;IAE1C;;OAEG;IACI,SAAS,EAAE,CAAC,EAAE,CAAM;IAE3B;;OAEG;IACH,SAAS,CAAC,cAAc,SAAM;IAE9B;;OAEG;IACH,SAAS,CAAC,UAAU,SAAM;IAE1B;;OAEG;gBAES,iBAAiB,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,EAC1C,QAAQ,GAAE,eAAoB,EACxC,OAAO,CAAC,EAAE,iBAAiB;IAM7B;;OAEG;IACI,iBAAiB,CAAC,MAAM,EAAE,MAAM;IAMvC;;OAEG;IACI,aAAa,CAAC,MAAM,EAAE,MAAM;IAMnC;;OAEG;IACU,YAAY;IAwBzB;;OAEG;IACU,IAAI;IA2CjB;;OAEG;IACU,KAAK,CAChB,QAAQ,EAAE,CACR,SAAS,EAAE,CAAC,EAAE,EACd,cAAc,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,KACnD,OAAO,CAAC,KAAK,GAAG,GAAG,CAAC;IAO3B;;OAEG;IACU,KAAK;IA0BlB;;OAEG;IACI,aAAa;IAIpB;;OAEG;IACH,SAAS,CAAC,SAAS,CACjB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,KAAK,EAAE,GAAG,EACV,OAAO,EAAE,MAAM,EAAE,GAAG,SAAS;IAe/B;;OAEG;IACH,SAAS,CAAC,WAAW,CACnB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,KAAK,EAAE,GAAG,EACV,OAAO,EAAE,MAAM,EAAE,GAAG,SAAS;IAe/B;;OAEG;IACH,SAAS,CAAC,oBAAoB,CAC5B,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,KAAK,EAAE,GAAG,EACV,OAAO,EAAE,MAAM,EAAE,GAAG,SAAS,EAC7B,UAAU,EAAE,aAAa;IAiB3B;;OAEG;cACa,aAAa;IAwnB7B;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,GAAG;IAYlC;;OAEG;IACI,GAAG,CAAC,MAAM,EAAE,MAAM;IAIzB;;OAEG;IACH,SAAS,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY;;;;;;;;;IAgCvE;;OAEG;IACH,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,GAAG;IAIhD;;OAEG;IACH,SAAS,CAAC,YAAY,CAAC,cAAc,EAAE,GAAG;IAoB1C;;OAEG;IACH,SAAS,CAAC,cAAc,CAAC,OAAO,GAAE,iBAAsB;IAOxD;;OAEG;IACH,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,SAAkB;
|
|
1
|
+
{"version":3,"file":"repository-listing.d.ts","sourceRoot":"","sources":["../../src/repositories/repository-listing.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,KAAK,EACL,cAAc,EACd,iBAAiB,EACjB,aAAa,EACd,MAAM,qBAAqB,CAAC;AAO7B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEhF,qBAAa,iBAAiB,CAC5B,CAAC,SAAS,KAAK,EACf,CAAC,SAAS,OAAO,KAAK,GAAG,OAAO,KAAK;IAsCnC,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC;IACpD,SAAS,CAAC,QAAQ,EAAE,eAAe;IArCrC;;OAEG;IACI,KAAK,EAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IAEjC;;;;OAIG;IACI,cAAc,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAE/D;;OAEG;IACH,SAAS,CAAC,OAAO,EAAE,iBAAiB,CAAM;IAE1C;;OAEG;IACI,SAAS,EAAE,CAAC,EAAE,CAAM;IAE3B;;OAEG;IACH,SAAS,CAAC,cAAc,SAAM;IAE9B;;OAEG;IACH,SAAS,CAAC,UAAU,SAAM;IAE1B;;OAEG;gBAES,iBAAiB,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,EAC1C,QAAQ,GAAE,eAAoB,EACxC,OAAO,CAAC,EAAE,iBAAiB;IAM7B;;OAEG;IACI,iBAAiB,CAAC,MAAM,EAAE,MAAM;IAMvC;;OAEG;IACI,aAAa,CAAC,MAAM,EAAE,MAAM;IAMnC;;OAEG;IACU,YAAY;IAwBzB;;OAEG;IACU,IAAI;IA2CjB;;OAEG;IACU,KAAK,CAChB,QAAQ,EAAE,CACR,SAAS,EAAE,CAAC,EAAE,EACd,cAAc,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,KACnD,OAAO,CAAC,KAAK,GAAG,GAAG,CAAC;IAO3B;;OAEG;IACU,KAAK;IA0BlB;;OAEG;IACI,aAAa;IAIpB;;OAEG;IACH,SAAS,CAAC,SAAS,CACjB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,KAAK,EAAE,GAAG,EACV,OAAO,EAAE,MAAM,EAAE,GAAG,SAAS;IAe/B;;OAEG;IACH,SAAS,CAAC,WAAW,CACnB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,KAAK,EAAE,GAAG,EACV,OAAO,EAAE,MAAM,EAAE,GAAG,SAAS;IAe/B;;OAEG;IACH,SAAS,CAAC,oBAAoB,CAC5B,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,KAAK,EAAE,GAAG,EACV,OAAO,EAAE,MAAM,EAAE,GAAG,SAAS,EAC7B,UAAU,EAAE,aAAa;IAiB3B;;OAEG;cACa,aAAa;IAwnB7B;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,GAAG;IAYlC;;OAEG;IACI,GAAG,CAAC,MAAM,EAAE,MAAM;IAIzB;;OAEG;IACH,SAAS,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY;;;;;;;;;IAgCvE;;OAEG;IACH,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,GAAG;IAIhD;;OAEG;IACH,SAAS,CAAC,YAAY,CAAC,cAAc,EAAE,GAAG;IAoB1C;;OAEG;IACH,SAAS,CAAC,cAAc,CAAC,OAAO,GAAE,iBAAsB;IAOxD;;OAEG;IACH,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,SAAkB;CAazD"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {get}from'@mongez/reinforcements';import {isIterable}from'@mongez/supportive-is';import {toOperator,whereOperators,WhereExpression}from'@warlock.js/cascade';import dayjs from'dayjs';class RepositoryListing {
|
|
1
|
+
import {get}from'@mongez/reinforcements';import {isIterable,isNumeric}from'@mongez/supportive-is';import {toOperator,whereOperators,WhereExpression}from'@warlock.js/cascade';import dayjs from'dayjs';class RepositoryListing {
|
|
2
2
|
repositoryManager;
|
|
3
3
|
filterBy;
|
|
4
4
|
/**
|
|
@@ -788,6 +788,9 @@ import {get}from'@mongez/reinforcements';import {isIterable}from'@mongez/support
|
|
|
788
788
|
parseDate(value, format = this.dateFormat) {
|
|
789
789
|
if (value instanceof Date)
|
|
790
790
|
return value;
|
|
791
|
+
if (isNumeric(value)) {
|
|
792
|
+
return new Date(parseInt(value));
|
|
793
|
+
}
|
|
791
794
|
if (typeof value === "string") {
|
|
792
795
|
return dayjs(value, format);
|
|
793
796
|
}
|