speedly 2.0.23 → 2.0.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.
|
@@ -209,7 +209,7 @@ function findRoutersInDir(dir) {
|
|
|
209
209
|
}
|
|
210
210
|
return routers;
|
|
211
211
|
}
|
|
212
|
-
function RouterFetcher(baseDir) {
|
|
212
|
+
function RouterFetcher(baseDir, servers) {
|
|
213
213
|
const modules = findRoutersInDir(baseDir);
|
|
214
214
|
let paths = {};
|
|
215
215
|
const tags = [];
|
|
@@ -253,8 +253,8 @@ function RouterFetcher(baseDir) {
|
|
|
253
253
|
};
|
|
254
254
|
}
|
|
255
255
|
/* ==================== EXPORT HOOK ==================== */
|
|
256
|
-
function swaggerLoader(app, baseDir = path_1.default.join(process.cwd(), "src/module")) {
|
|
257
|
-
const doc = RouterFetcher(baseDir);
|
|
256
|
+
function swaggerLoader(app, baseDir = path_1.default.join(process.cwd(), "src/module"), servers = [{ url: "/api/v1" }]) {
|
|
257
|
+
const doc = RouterFetcher(baseDir, servers);
|
|
258
258
|
const theme = new swagger_themes_1.SwaggerTheme();
|
|
259
259
|
app.use("/docs", swagger_ui_express_1.default.serve, swagger_ui_express_1.default.setup(doc, {
|
|
260
260
|
customCss: theme.getBuffer(swagger_themes_1.SwaggerThemeNameEnum.DARK),
|
|
@@ -13,13 +13,15 @@ const find = (field, ...args) => {
|
|
|
13
13
|
};
|
|
14
14
|
const findStartingWith = (start, rel, field) => {
|
|
15
15
|
const file = path_1.default.join(start, rel);
|
|
16
|
-
const formats = [
|
|
16
|
+
const formats = [".ts", ".js", ".json"];
|
|
17
17
|
for (const [index, format] of formats.entries()) {
|
|
18
18
|
try {
|
|
19
19
|
if (fs_1.default.statSync(file + format))
|
|
20
20
|
return require(file + format)[field] || {};
|
|
21
21
|
}
|
|
22
22
|
catch (err) {
|
|
23
|
+
if (err instanceof Error && "code" in err && err.code !== "ENOENT")
|
|
24
|
+
throw err;
|
|
23
25
|
if (index + 1 != formats.length)
|
|
24
26
|
continue;
|
|
25
27
|
if (path_1.default.dirname(start) !== start) {
|
|
@@ -30,7 +32,7 @@ const findStartingWith = (start, rel, field) => {
|
|
|
30
32
|
}
|
|
31
33
|
};
|
|
32
34
|
const configGetter = (configField) => {
|
|
33
|
-
const foundData = find(configField,
|
|
35
|
+
const foundData = find(configField, "speedly.config");
|
|
34
36
|
if (foundData)
|
|
35
37
|
return foundData;
|
|
36
38
|
return {};
|
|
@@ -209,7 +209,7 @@ function findRoutersInDir(dir) {
|
|
|
209
209
|
}
|
|
210
210
|
return routers;
|
|
211
211
|
}
|
|
212
|
-
function RouterFetcher(baseDir) {
|
|
212
|
+
function RouterFetcher(baseDir, servers) {
|
|
213
213
|
const modules = findRoutersInDir(baseDir);
|
|
214
214
|
let paths = {};
|
|
215
215
|
const tags = [];
|
|
@@ -253,8 +253,8 @@ function RouterFetcher(baseDir) {
|
|
|
253
253
|
};
|
|
254
254
|
}
|
|
255
255
|
/* ==================== EXPORT HOOK ==================== */
|
|
256
|
-
function swaggerLoader(app, baseDir = path_1.default.join(process.cwd(), "src/module")) {
|
|
257
|
-
const doc = RouterFetcher(baseDir);
|
|
256
|
+
function swaggerLoader(app, baseDir = path_1.default.join(process.cwd(), "src/module"), servers = [{ url: "/api/v1" }]) {
|
|
257
|
+
const doc = RouterFetcher(baseDir, servers);
|
|
258
258
|
const theme = new swagger_themes_1.SwaggerTheme();
|
|
259
259
|
app.use("/docs", swagger_ui_express_1.default.serve, swagger_ui_express_1.default.setup(doc, {
|
|
260
260
|
customCss: theme.getBuffer(swagger_themes_1.SwaggerThemeNameEnum.DARK),
|
|
@@ -13,13 +13,15 @@ const find = (field, ...args) => {
|
|
|
13
13
|
};
|
|
14
14
|
const findStartingWith = (start, rel, field) => {
|
|
15
15
|
const file = path_1.default.join(start, rel);
|
|
16
|
-
const formats = [
|
|
16
|
+
const formats = [".ts", ".js", ".json"];
|
|
17
17
|
for (const [index, format] of formats.entries()) {
|
|
18
18
|
try {
|
|
19
19
|
if (fs_1.default.statSync(file + format))
|
|
20
20
|
return require(file + format)[field] || {};
|
|
21
21
|
}
|
|
22
22
|
catch (err) {
|
|
23
|
+
if (err instanceof Error && "code" in err && err.code !== "ENOENT")
|
|
24
|
+
throw err;
|
|
23
25
|
if (index + 1 != formats.length)
|
|
24
26
|
continue;
|
|
25
27
|
if (path_1.default.dirname(start) !== start) {
|
|
@@ -30,7 +32,7 @@ const findStartingWith = (start, rel, field) => {
|
|
|
30
32
|
}
|
|
31
33
|
};
|
|
32
34
|
const configGetter = (configField) => {
|
|
33
|
-
const foundData = find(configField,
|
|
35
|
+
const foundData = find(configField, "speedly.config");
|
|
34
36
|
if (foundData)
|
|
35
37
|
return foundData;
|
|
36
38
|
return {};
|