mock-config-server 2.0.2 → 2.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/README.md +33 -1
- package/dist/bin/{mock-config-server.d.ts → bin.d.ts} +2 -2
- package/dist/bin/bin.js +8 -0
- package/dist/bin/cli.d.ts +1 -0
- package/dist/bin/cli.js +36 -0
- package/dist/bin/{resolveExportsFromSourceCode.d.ts → resolveExportsFromSourceCode/resolveExportsFromSourceCode.d.ts} +1 -1
- package/dist/bin/{resolveExportsFromSourceCode.js → resolveExportsFromSourceCode/resolveExportsFromSourceCode.js} +11 -11
- package/dist/bin/start.d.ts +3 -0
- package/dist/bin/{mock-config-server.js → start.js} +73 -67
- package/dist/bin/validateMockServerConfig/validateBaseUrl/validateBaseUrl.d.ts +1 -1
- package/dist/bin/validateMockServerConfig/validateBaseUrl/validateBaseUrl.js +12 -12
- package/dist/bin/validateMockServerConfig/validateCors/validateCors.d.ts +1 -1
- package/dist/bin/validateMockServerConfig/validateCors/validateCors.js +82 -82
- package/dist/bin/validateMockServerConfig/validateGraphqlConfig/validateGraphqlConfig.d.ts +1 -1
- package/dist/bin/validateMockServerConfig/validateGraphqlConfig/validateGraphqlConfig.js +48 -48
- package/dist/bin/validateMockServerConfig/validateGraphqlConfig/validateRoutes/validateRoutes.d.ts +2 -2
- package/dist/bin/validateMockServerConfig/validateGraphqlConfig/validateRoutes/validateRoutes.js +71 -71
- package/dist/bin/validateMockServerConfig/validateInterceptors/validateInterceptors.d.ts +1 -1
- package/dist/bin/validateMockServerConfig/validateInterceptors/validateInterceptors.js +21 -21
- package/dist/bin/validateMockServerConfig/validateMockServerConfig.d.ts +2 -1
- package/dist/bin/validateMockServerConfig/validateMockServerConfig.js +30 -34
- package/dist/bin/validateMockServerConfig/validatePort/validatePort.d.ts +1 -1
- package/dist/bin/validateMockServerConfig/validatePort/validatePort.js +9 -9
- package/dist/bin/validateMockServerConfig/validateRestConfig/validateRestConfig.d.ts +1 -1
- package/dist/bin/validateMockServerConfig/validateRestConfig/validateRestConfig.js +52 -52
- package/dist/bin/validateMockServerConfig/validateRestConfig/validateRoutes/validateRoutes.d.ts +2 -2
- package/dist/bin/validateMockServerConfig/validateRestConfig/validateRoutes/validateRoutes.js +105 -104
- package/dist/bin/validateMockServerConfig/validateStaticPath/validateStaticPath.d.ts +1 -1
- package/dist/bin/validateMockServerConfig/validateStaticPath/validateStaticPath.js +44 -44
- package/dist/index.d.ts +1 -1
- package/dist/index.js +17 -17
- package/dist/src/{graphql → core/graphql}/createGraphQLRoutes/createGraphQLRoutes.d.ts +3 -3
- package/dist/src/{graphql → core/graphql}/createGraphQLRoutes/createGraphQLRoutes.js +76 -73
- package/dist/src/core/graphql/createGraphQLRoutes/helpers/index.d.ts +1 -0
- package/dist/src/{notFound/urlSuggestions → core/graphql/createGraphQLRoutes/helpers}/index.js +17 -18
- package/dist/src/{graphql → core/graphql/createGraphQLRoutes/helpers}/prepareGraphQLRequestConfigs/prepareGraphQLRequestConfigs.d.ts +2 -2
- package/dist/src/{graphql → core/graphql/createGraphQLRoutes/helpers}/prepareGraphQLRequestConfigs/prepareGraphQLRequestConfigs.js +28 -28
- package/dist/src/core/graphql/index.d.ts +1 -0
- package/dist/src/{notFound/urlSuggestions/getGraphqlUrlSuggestions → core/graphql}/index.js +17 -17
- package/dist/src/{cors → core/middlewares}/corsMiddleware/corsMiddleware.d.ts +3 -3
- package/dist/src/{cors → core/middlewares}/corsMiddleware/corsMiddleware.js +44 -44
- package/dist/src/{cors/getOrigins → core/middlewares/corsMiddleware/helpers/getAllowedOrigins}/getAllowedOrigins.d.ts +2 -2
- package/dist/src/{cors/getOrigins → core/middlewares/corsMiddleware/helpers/getAllowedOrigins}/getAllowedOrigins.js +13 -13
- package/dist/src/core/middlewares/corsMiddleware/helpers/index.d.ts +1 -0
- package/dist/src/{notFound/urlSuggestions/getRestUrlSuggestions → core/middlewares/corsMiddleware/helpers}/index.js +17 -17
- package/dist/src/core/middlewares/index.d.ts +4 -0
- package/dist/src/core/middlewares/index.js +20 -0
- package/dist/src/{cors → core/middlewares}/noCorsMiddleware/noCorsMiddleware.d.ts +2 -2
- package/dist/src/{cors → core/middlewares}/noCorsMiddleware/noCorsMiddleware.js +24 -20
- package/dist/src/{notFound/urlSuggestions → core/middlewares/notFoundMiddleware/helpers}/getGraphqlUrlSuggestions/getGraphqlUrlSuggestions.d.ts +6 -6
- package/dist/src/{notFound/urlSuggestions → core/middlewares/notFoundMiddleware/helpers}/getGraphqlUrlSuggestions/getGraphqlUrlSuggestions.js +18 -18
- package/dist/src/{notFound/urlSuggestions → core/middlewares/notFoundMiddleware/helpers}/getLevenshteinDistance/getLevenshteinDistance.d.ts +1 -1
- package/dist/src/{notFound/urlSuggestions → core/middlewares/notFoundMiddleware/helpers}/getLevenshteinDistance/getLevenshteinDistance.js +80 -80
- package/dist/src/{notFound/urlSuggestions → core/middlewares/notFoundMiddleware/helpers}/getRestUrlSuggestions/getRestUrlSuggestions.d.ts +6 -6
- package/dist/src/{notFound/urlSuggestions → core/middlewares/notFoundMiddleware/helpers}/getRestUrlSuggestions/getRestUrlSuggestions.js +34 -34
- package/dist/src/{notFound/urlSuggestions → core/middlewares/notFoundMiddleware/helpers}/getRestUrlSuggestions/helpers/getActualRestUrlMeaningfulString/getActualRestUrlMeaningfulString.d.ts +1 -1
- package/dist/src/{notFound/urlSuggestions → core/middlewares/notFoundMiddleware/helpers}/getRestUrlSuggestions/helpers/getActualRestUrlMeaningfulString/getActualRestUrlMeaningfulString.js +7 -7
- package/dist/src/{notFound/urlSuggestions → core/middlewares/notFoundMiddleware/helpers}/getRestUrlSuggestions/helpers/getPatternRestUrlMeaningfulString/getPatternRestUrlMeaningfulString.d.ts +1 -1
- package/dist/src/{notFound/urlSuggestions → core/middlewares/notFoundMiddleware/helpers}/getRestUrlSuggestions/helpers/getPatternRestUrlMeaningfulString/getPatternRestUrlMeaningfulString.js +5 -5
- package/dist/src/{notFound/urlSuggestions → core/middlewares/notFoundMiddleware/helpers}/getRestUrlSuggestions/helpers/index.d.ts +2 -2
- package/dist/src/{notFound/urlSuggestions → core/middlewares/notFoundMiddleware/helpers}/getRestUrlSuggestions/helpers/index.js +18 -18
- package/dist/src/core/middlewares/notFoundMiddleware/helpers/index.d.ts +3 -0
- package/dist/src/core/middlewares/notFoundMiddleware/helpers/index.js +19 -0
- package/dist/src/{notFound → core/middlewares/notFoundMiddleware}/notFoundMiddleware.d.ts +8 -8
- package/dist/src/{notFound → core/middlewares/notFoundMiddleware}/notFoundMiddleware.js +47 -47
- package/dist/src/{static → core/middlewares}/staticMiddleware/staticMiddleware.d.ts +3 -3
- package/dist/src/{static → core/middlewares}/staticMiddleware/staticMiddleware.js +30 -30
- package/dist/src/{rest → core/rest}/createRestRoutes/createRestRoutes.d.ts +3 -3
- package/dist/src/{rest → core/rest}/createRestRoutes/createRestRoutes.js +46 -41
- package/dist/src/core/rest/createRestRoutes/helpers/index.d.ts +1 -0
- package/dist/src/core/rest/createRestRoutes/helpers/index.js +17 -0
- package/dist/src/{rest → core/rest/createRestRoutes/helpers}/prepareRestRequestConfigs/prepareRestRequestConfigs.d.ts +2 -2
- package/dist/src/{rest → core/rest/createRestRoutes/helpers}/prepareRestRequestConfigs/prepareRestRequestConfigs.js +30 -30
- package/dist/src/core/rest/index.d.ts +1 -0
- package/dist/src/core/rest/index.js +17 -0
- package/dist/src/index.d.ts +3 -3
- package/dist/src/index.js +19 -19
- package/dist/src/server/createMockServer/createMockServer.d.ts +3 -3
- package/dist/src/server/createMockServer/createMockServer.js +46 -49
- package/dist/src/server/index.d.ts +2 -0
- package/dist/src/server/index.js +18 -0
- package/dist/src/server/startMockServer/startMockServer.d.ts +2 -2
- package/dist/src/server/startMockServer/startMockServer.js +17 -17
- package/dist/src/utils/constants/appPath.d.ts +1 -1
- package/dist/src/utils/constants/appPath.js +4 -4
- package/dist/src/utils/constants/default.d.ts +11 -11
- package/dist/src/utils/constants/default.js +14 -14
- package/dist/src/utils/constants/index.d.ts +2 -2
- package/dist/src/utils/constants/index.js +18 -18
- package/dist/src/utils/helpers/config/index.d.ts +1 -0
- package/dist/src/utils/helpers/config/index.js +17 -0
- package/dist/src/{configs → utils/helpers/config}/isEntitiesEqual/isEntityValuesEqual.d.ts +1 -1
- package/dist/src/{configs → utils/helpers/config}/isEntitiesEqual/isEntityValuesEqual.js +29 -29
- package/dist/src/{graphql → utils/helpers/graphql}/getGraphQLInput/getGraphQLInput.d.ts +3 -3
- package/dist/src/{graphql → utils/helpers/graphql}/getGraphQLInput/getGraphQLInput.js +21 -21
- package/dist/src/utils/helpers/graphql/index.d.ts +3 -0
- package/dist/src/utils/helpers/graphql/index.js +19 -0
- package/dist/src/{graphql → utils/helpers/graphql}/parseGraphQLRequest/parseGraphQLRequest.d.ts +3 -3
- package/dist/src/{graphql → utils/helpers/graphql}/parseGraphQLRequest/parseGraphQLRequest.js +12 -12
- package/dist/src/{graphql → utils/helpers/graphql}/parseQuery/parseQuery.d.ts +7 -7
- package/dist/src/{graphql → utils/helpers/graphql}/parseQuery/parseQuery.js +21 -21
- package/dist/src/utils/helpers/index.d.ts +6 -3
- package/dist/src/utils/helpers/index.js +22 -19
- package/dist/src/{routes → utils/helpers/interceptors}/callRequestInterceptors/callRequestInterceptors.d.ts +12 -12
- package/dist/src/{routes → utils/helpers/interceptors}/callRequestInterceptors/callRequestInterceptors.js +13 -13
- package/dist/src/{routes → utils/helpers/interceptors}/callResponseInterceptors/callResponseInterceptors.d.ts +14 -14
- package/dist/src/{routes → utils/helpers/interceptors}/callResponseInterceptors/callResponseInterceptors.js +55 -31
- package/dist/src/utils/helpers/interceptors/index.d.ts +2 -0
- package/dist/src/utils/helpers/interceptors/index.js +18 -0
- package/dist/src/utils/helpers/{isPlainObject.d.ts → isPlainObject/isPlainObject.d.ts} +1 -1
- package/dist/src/utils/helpers/{isPlainObject.js → isPlainObject/isPlainObject.js} +5 -5
- package/dist/src/utils/helpers/sleep.d.ts +1 -1
- package/dist/src/utils/helpers/sleep.js +7 -7
- package/dist/src/utils/helpers/url/convertWin32PathToUnix/convertWin32PathToUnix.d.ts +1 -1
- package/dist/src/utils/helpers/url/convertWin32PathToUnix/convertWin32PathToUnix.js +8 -8
- package/dist/src/utils/helpers/url/getUrlParts/getUrlParts.d.ts +1 -1
- package/dist/src/utils/helpers/url/getUrlParts/getUrlParts.js +6 -6
- package/dist/src/utils/helpers/url/index.d.ts +4 -4
- package/dist/src/utils/helpers/url/index.js +20 -20
- package/dist/src/utils/helpers/url/removeLeadingAndTrailingSlashes/removeLeadingAndTrailingSlashes.d.ts +1 -1
- package/dist/src/utils/helpers/url/removeLeadingAndTrailingSlashes/removeLeadingAndTrailingSlashes.js +5 -5
- package/dist/src/utils/helpers/url/urlJoin/urlJoin.d.ts +1 -1
- package/dist/src/utils/helpers/url/urlJoin/urlJoin.js +14 -14
- package/dist/src/utils/types/graphql.d.ts +34 -5
- package/dist/src/utils/types/graphql.js +2 -2
- package/dist/src/utils/types/index.d.ts +5 -4
- package/dist/src/utils/types/index.js +21 -20
- package/dist/src/utils/types/interceptors.d.ts +21 -15
- package/dist/src/utils/types/interceptors.js +2 -2
- package/dist/src/utils/types/rest.d.ts +38 -0
- package/dist/src/utils/types/{configs.js → rest.js} +2 -2
- package/dist/src/utils/types/server.d.ts +37 -32
- package/dist/src/utils/types/server.js +2 -2
- package/dist/src/utils/types/values.d.ts +9 -0
- package/dist/src/utils/types/values.js +2 -0
- package/package.json +19 -17
- package/dist/src/notFound/urlSuggestions/getGraphqlUrlSuggestions/index.d.ts +0 -1
- package/dist/src/notFound/urlSuggestions/getRestUrlSuggestions/index.d.ts +0 -1
- package/dist/src/notFound/urlSuggestions/index.d.ts +0 -2
- package/dist/src/utils/types/configs.d.ts +0 -63
package/README.md
CHANGED
|
@@ -57,7 +57,7 @@ export default mockServerConfig;
|
|
|
57
57
|
Start **🎉 Mock Config Server**
|
|
58
58
|
|
|
59
59
|
```bash
|
|
60
|
-
$ npx
|
|
60
|
+
$ npx mcs
|
|
61
61
|
|
|
62
62
|
# 🎉 Mock Config Server is running at http://localhost:31299
|
|
63
63
|
```
|
|
@@ -241,6 +241,38 @@ Functions to change request or response parameters
|
|
|
241
241
|
- `delay` {number} seconds of delay time
|
|
242
242
|
- `setStatusCode` (statusCode) => void
|
|
243
243
|
- `statusCode` {number} status code for response
|
|
244
|
+
- `setHeader` (name, value) => void
|
|
245
|
+
- `name` {string} name of response header
|
|
246
|
+
- `value` {string | string[] | undefined} value of response header
|
|
247
|
+
- `appendHeader` (name, value) => void
|
|
248
|
+
- `name` {string} name of response header
|
|
249
|
+
- `value` {string | string[] | undefined} value of response header
|
|
250
|
+
- `setCookie` (name, value, options) => void
|
|
251
|
+
- `name` {string} name of cookie
|
|
252
|
+
- `value` {string} value of cookie
|
|
253
|
+
- `options` {[CookieOptions](https://expressjs.com/en/resources/middleware/cookie-session.html) | undefined} cookie options (like path, expires, etc.)
|
|
254
|
+
- `clearCookie` (name, options) => void
|
|
255
|
+
- `name` {string} name of cookie
|
|
256
|
+
- `options` {[CookieOptions](https://expressjs.com/en/resources/middleware/cookie-session.html) | undefined} cookie options (like path, expires, etc.)
|
|
257
|
+
- `attachment` (filename) => void
|
|
258
|
+
- `filename` {string} name of file in 'Content-Disposition' header
|
|
259
|
+
|
|
260
|
+
## CLI usage
|
|
261
|
+
```
|
|
262
|
+
mcs [options]
|
|
263
|
+
|
|
264
|
+
Options:
|
|
265
|
+
--baseUrl, -b Set base url
|
|
266
|
+
--port, -p Set port
|
|
267
|
+
--staticPath, -s Set static path
|
|
268
|
+
|
|
269
|
+
--version, -v Show version number
|
|
270
|
+
--help, -h Show help
|
|
271
|
+
|
|
272
|
+
Examples:
|
|
273
|
+
mcs --baseurl /base/url --port 3000
|
|
274
|
+
mcs --help
|
|
275
|
+
```
|
|
244
276
|
|
|
245
277
|
## ✨ Contributors
|
|
246
278
|
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
export {};
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
export {};
|
package/dist/bin/bin.js
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
const pleaseUpgradeNode = require('please-upgrade-node');
|
|
5
|
+
const packageJson = require('../../package.json');
|
|
6
|
+
pleaseUpgradeNode(packageJson);
|
|
7
|
+
const { cli } = require('./cli');
|
|
8
|
+
cli();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const cli: () => void;
|
package/dist/bin/cli.js
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.cli = void 0;
|
|
7
|
+
const yargs_1 = __importDefault(require("yargs"));
|
|
8
|
+
const helpers_1 = require("yargs/helpers");
|
|
9
|
+
const start_1 = require("./start");
|
|
10
|
+
const cli = () => {
|
|
11
|
+
const argv = (0, yargs_1.default)((0, helpers_1.hideBin)(process.argv))
|
|
12
|
+
.options({
|
|
13
|
+
baseUrl: {
|
|
14
|
+
alias: 'b',
|
|
15
|
+
description: 'Set base url for mock server',
|
|
16
|
+
type: 'string'
|
|
17
|
+
},
|
|
18
|
+
port: {
|
|
19
|
+
alias: 'p',
|
|
20
|
+
description: 'Set port for server',
|
|
21
|
+
type: 'number'
|
|
22
|
+
},
|
|
23
|
+
staticPath: {
|
|
24
|
+
alias: 's',
|
|
25
|
+
description: 'Set static path for mock server',
|
|
26
|
+
type: 'string'
|
|
27
|
+
}
|
|
28
|
+
})
|
|
29
|
+
.version()
|
|
30
|
+
.alias('version', 'v')
|
|
31
|
+
.help()
|
|
32
|
+
.alias('help', 'h')
|
|
33
|
+
.parse();
|
|
34
|
+
(0, start_1.start)(argv);
|
|
35
|
+
};
|
|
36
|
+
exports.cli = cli;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const resolveExportsFromSourceCode: (sourceCode: string) => any;
|
|
1
|
+
export declare const resolveExportsFromSourceCode: (sourceCode: string) => any;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.resolveExportsFromSourceCode = void 0;
|
|
4
|
-
const resolveExportsFromSourceCode = (sourceCode) => {
|
|
5
|
-
// @ts-ignore
|
|
6
|
-
const moduleInstance = new module.constructor();
|
|
7
|
-
// eslint-disable-next-line no-underscore-dangle
|
|
8
|
-
moduleInstance._compile(sourceCode, '');
|
|
9
|
-
return moduleInstance.exports;
|
|
10
|
-
};
|
|
11
|
-
exports.resolveExportsFromSourceCode = resolveExportsFromSourceCode;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.resolveExportsFromSourceCode = void 0;
|
|
4
|
+
const resolveExportsFromSourceCode = (sourceCode) => {
|
|
5
|
+
// @ts-ignore
|
|
6
|
+
const moduleInstance = new module.constructor();
|
|
7
|
+
// eslint-disable-next-line no-underscore-dangle
|
|
8
|
+
moduleInstance._compile(sourceCode, '');
|
|
9
|
+
return moduleInstance.exports;
|
|
10
|
+
};
|
|
11
|
+
exports.resolveExportsFromSourceCode = resolveExportsFromSourceCode;
|
|
@@ -1,67 +1,73 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
"use strict";
|
|
3
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
-
if (k2 === undefined) k2 = k;
|
|
5
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
-
}
|
|
9
|
-
Object.defineProperty(o, k2, desc);
|
|
10
|
-
}) : (function(o, m, k, k2) {
|
|
11
|
-
if (k2 === undefined) k2 = k;
|
|
12
|
-
o[k2] = m[k];
|
|
13
|
-
}));
|
|
14
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
15
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
16
|
-
}) : function(o, v) {
|
|
17
|
-
o["default"] = v;
|
|
18
|
-
});
|
|
19
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
20
|
-
if (mod && mod.__esModule) return mod;
|
|
21
|
-
var result = {};
|
|
22
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
23
|
-
__setModuleDefault(result, mod);
|
|
24
|
-
return result;
|
|
25
|
-
};
|
|
26
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
-
|
|
28
|
-
const fs = __importStar(require("fs"));
|
|
29
|
-
const
|
|
30
|
-
const
|
|
31
|
-
const
|
|
32
|
-
const
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
const
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
+
if (k2 === undefined) k2 = k;
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
+
}
|
|
9
|
+
Object.defineProperty(o, k2, desc);
|
|
10
|
+
}) : (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
o[k2] = m[k];
|
|
13
|
+
}));
|
|
14
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
15
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
16
|
+
}) : function(o, v) {
|
|
17
|
+
o["default"] = v;
|
|
18
|
+
});
|
|
19
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
20
|
+
if (mod && mod.__esModule) return mod;
|
|
21
|
+
var result = {};
|
|
22
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
23
|
+
__setModuleDefault(result, mod);
|
|
24
|
+
return result;
|
|
25
|
+
};
|
|
26
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
+
exports.start = void 0;
|
|
28
|
+
const fs = __importStar(require("fs"));
|
|
29
|
+
const esbuild_1 = require("esbuild");
|
|
30
|
+
const server_1 = require("../src/server");
|
|
31
|
+
const helpers_1 = require("../src/utils/helpers");
|
|
32
|
+
const resolveExportsFromSourceCode_1 = require("./resolveExportsFromSourceCode/resolveExportsFromSourceCode");
|
|
33
|
+
const validateMockServerConfig_1 = require("./validateMockServerConfig/validateMockServerConfig");
|
|
34
|
+
const start = async (argv) => {
|
|
35
|
+
try {
|
|
36
|
+
const appPath = process.cwd();
|
|
37
|
+
const mockServerConfigFileRegex = /mock-server.config.(?:ts|js)/;
|
|
38
|
+
const mockServerConfigFile = fs
|
|
39
|
+
.readdirSync(appPath)
|
|
40
|
+
.find((file) => mockServerConfigFileRegex.test(file));
|
|
41
|
+
if (!mockServerConfigFile) {
|
|
42
|
+
throw new Error('Cannot find config file mock-server.config.(ts|js)');
|
|
43
|
+
}
|
|
44
|
+
const { outputFiles } = await (0, esbuild_1.build)({
|
|
45
|
+
entryPoints: [mockServerConfigFile],
|
|
46
|
+
bundle: true,
|
|
47
|
+
platform: 'node',
|
|
48
|
+
target: 'esnext',
|
|
49
|
+
minifySyntax: true,
|
|
50
|
+
minify: true,
|
|
51
|
+
write: false,
|
|
52
|
+
metafile: false
|
|
53
|
+
});
|
|
54
|
+
const mockServerConfigSourceCode = outputFiles[0]?.text;
|
|
55
|
+
if (!mockServerConfigSourceCode) {
|
|
56
|
+
throw new Error('Cannot handle source code of mock-server.config.(ts|js)');
|
|
57
|
+
}
|
|
58
|
+
const mockServerConfigExports = (0, resolveExportsFromSourceCode_1.resolveExportsFromSourceCode)(mockServerConfigSourceCode);
|
|
59
|
+
if (!mockServerConfigExports?.default) {
|
|
60
|
+
throw new Error('Cannot handle exports of mock-server.config.(ts|js)');
|
|
61
|
+
}
|
|
62
|
+
if (!(0, helpers_1.isPlainObject)(mockServerConfigExports.default)) {
|
|
63
|
+
throw new Error('configuration should be plain object; see our doc (https://www.npmjs.com/package/mock-config-server) for more information');
|
|
64
|
+
}
|
|
65
|
+
const mergedMockServerConfig = { ...mockServerConfigExports.default, ...argv };
|
|
66
|
+
(0, validateMockServerConfig_1.validateMockServerConfig)(mergedMockServerConfig);
|
|
67
|
+
(0, server_1.startMockServer)(mergedMockServerConfig);
|
|
68
|
+
}
|
|
69
|
+
catch (error) {
|
|
70
|
+
console.error(error.message);
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
exports.start = start;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const validateBaseUrl: (baseUrl: unknown) => void;
|
|
1
|
+
export declare const validateBaseUrl: (baseUrl: unknown) => void;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.validateBaseUrl = void 0;
|
|
4
|
-
const validateBaseUrl = (baseUrl) => {
|
|
5
|
-
if (typeof baseUrl !== 'string' && typeof baseUrl !== 'undefined') {
|
|
6
|
-
throw new Error('baseUrl');
|
|
7
|
-
}
|
|
8
|
-
if (typeof baseUrl === 'string' && !baseUrl.startsWith('/')) {
|
|
9
|
-
throw new Error('baseUrl');
|
|
10
|
-
}
|
|
11
|
-
};
|
|
12
|
-
exports.validateBaseUrl = validateBaseUrl;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateBaseUrl = void 0;
|
|
4
|
+
const validateBaseUrl = (baseUrl) => {
|
|
5
|
+
if (typeof baseUrl !== 'string' && typeof baseUrl !== 'undefined') {
|
|
6
|
+
throw new Error('baseUrl');
|
|
7
|
+
}
|
|
8
|
+
if (typeof baseUrl === 'string' && !baseUrl.startsWith('/')) {
|
|
9
|
+
throw new Error('baseUrl');
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
exports.validateBaseUrl = validateBaseUrl;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const validateCors: (cors: unknown) => void;
|
|
1
|
+
export declare const validateCors: (cors: unknown) => void;
|
|
@@ -1,82 +1,82 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.validateCors = void 0;
|
|
4
|
-
const helpers_1 = require("../../../src/utils/helpers");
|
|
5
|
-
const validateOrigin = (origin) => {
|
|
6
|
-
const isOriginArray = Array.isArray(origin);
|
|
7
|
-
if (isOriginArray) {
|
|
8
|
-
origin.forEach((originElement, index) => {
|
|
9
|
-
const isOriginElementStringOrRegExp = typeof originElement === 'string' || originElement instanceof RegExp;
|
|
10
|
-
if (!isOriginElementStringOrRegExp) {
|
|
11
|
-
throw new Error(`origin[${index}]`);
|
|
12
|
-
}
|
|
13
|
-
});
|
|
14
|
-
return;
|
|
15
|
-
}
|
|
16
|
-
const isOriginStringOrRegexp = typeof origin === 'string' || origin instanceof RegExp;
|
|
17
|
-
const isOriginFunction = typeof origin === 'function';
|
|
18
|
-
if (!isOriginStringOrRegexp && !isOriginFunction) {
|
|
19
|
-
throw new Error('origin');
|
|
20
|
-
}
|
|
21
|
-
};
|
|
22
|
-
const validateMethods = (methods) => {
|
|
23
|
-
const isMethodsArray = Array.isArray(methods);
|
|
24
|
-
if (isMethodsArray) {
|
|
25
|
-
const allowedMethods = ['GET', 'POST', 'PUT', 'DELETE', 'PATCH'];
|
|
26
|
-
methods.forEach((method, index) => {
|
|
27
|
-
// ✅ important:
|
|
28
|
-
// compare without 'toUpperCase' because 'Access-Control-Allow-Methods' value is case-sensitive
|
|
29
|
-
if (!allowedMethods.includes(method)) {
|
|
30
|
-
throw new Error(`methods[${index}]`);
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
if (typeof methods !== 'undefined') {
|
|
36
|
-
throw new Error('methods');
|
|
37
|
-
}
|
|
38
|
-
};
|
|
39
|
-
const validateHeaders = (headers) => {
|
|
40
|
-
const isHeadersArray = Array.isArray(headers);
|
|
41
|
-
if (isHeadersArray) {
|
|
42
|
-
headers.forEach((header, index) => {
|
|
43
|
-
if (typeof header !== 'string') {
|
|
44
|
-
throw new Error(`headers[${index}]`);
|
|
45
|
-
}
|
|
46
|
-
});
|
|
47
|
-
return;
|
|
48
|
-
}
|
|
49
|
-
if (typeof headers !== 'undefined') {
|
|
50
|
-
throw new Error('headers');
|
|
51
|
-
}
|
|
52
|
-
};
|
|
53
|
-
const validateCredentials = (credentials) => {
|
|
54
|
-
if (typeof credentials !== 'boolean' && typeof credentials !== 'undefined') {
|
|
55
|
-
throw new Error('credentials');
|
|
56
|
-
}
|
|
57
|
-
};
|
|
58
|
-
const validateMaxAge = (maxAge) => {
|
|
59
|
-
if (typeof maxAge !== 'number' && typeof maxAge !== 'undefined') {
|
|
60
|
-
throw new Error('maxAge');
|
|
61
|
-
}
|
|
62
|
-
};
|
|
63
|
-
const validateCors = (cors) => {
|
|
64
|
-
const isCorsObject = (0, helpers_1.isPlainObject)(cors);
|
|
65
|
-
if (isCorsObject) {
|
|
66
|
-
try {
|
|
67
|
-
validateOrigin(cors.origin);
|
|
68
|
-
validateMethods(cors.methods);
|
|
69
|
-
validateHeaders(cors.headers);
|
|
70
|
-
validateCredentials(cors.credentials);
|
|
71
|
-
validateMaxAge(cors.maxAge);
|
|
72
|
-
}
|
|
73
|
-
catch (error) {
|
|
74
|
-
throw new Error(`cors.${error.message}`);
|
|
75
|
-
}
|
|
76
|
-
return;
|
|
77
|
-
}
|
|
78
|
-
if (typeof cors !== 'undefined') {
|
|
79
|
-
throw new Error('cors');
|
|
80
|
-
}
|
|
81
|
-
};
|
|
82
|
-
exports.validateCors = validateCors;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateCors = void 0;
|
|
4
|
+
const helpers_1 = require("../../../src/utils/helpers");
|
|
5
|
+
const validateOrigin = (origin) => {
|
|
6
|
+
const isOriginArray = Array.isArray(origin);
|
|
7
|
+
if (isOriginArray) {
|
|
8
|
+
origin.forEach((originElement, index) => {
|
|
9
|
+
const isOriginElementStringOrRegExp = typeof originElement === 'string' || originElement instanceof RegExp;
|
|
10
|
+
if (!isOriginElementStringOrRegExp) {
|
|
11
|
+
throw new Error(`origin[${index}]`);
|
|
12
|
+
}
|
|
13
|
+
});
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
const isOriginStringOrRegexp = typeof origin === 'string' || origin instanceof RegExp;
|
|
17
|
+
const isOriginFunction = typeof origin === 'function';
|
|
18
|
+
if (!isOriginStringOrRegexp && !isOriginFunction) {
|
|
19
|
+
throw new Error('origin');
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
const validateMethods = (methods) => {
|
|
23
|
+
const isMethodsArray = Array.isArray(methods);
|
|
24
|
+
if (isMethodsArray) {
|
|
25
|
+
const allowedMethods = ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'OPTIONS'];
|
|
26
|
+
methods.forEach((method, index) => {
|
|
27
|
+
// ✅ important:
|
|
28
|
+
// compare without 'toUpperCase' because 'Access-Control-Allow-Methods' value is case-sensitive
|
|
29
|
+
if (!allowedMethods.includes(method)) {
|
|
30
|
+
throw new Error(`methods[${index}]`);
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
if (typeof methods !== 'undefined') {
|
|
36
|
+
throw new Error('methods');
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
const validateHeaders = (headers) => {
|
|
40
|
+
const isHeadersArray = Array.isArray(headers);
|
|
41
|
+
if (isHeadersArray) {
|
|
42
|
+
headers.forEach((header, index) => {
|
|
43
|
+
if (typeof header !== 'string') {
|
|
44
|
+
throw new Error(`headers[${index}]`);
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
if (typeof headers !== 'undefined') {
|
|
50
|
+
throw new Error('headers');
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
const validateCredentials = (credentials) => {
|
|
54
|
+
if (typeof credentials !== 'boolean' && typeof credentials !== 'undefined') {
|
|
55
|
+
throw new Error('credentials');
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
const validateMaxAge = (maxAge) => {
|
|
59
|
+
if (typeof maxAge !== 'number' && typeof maxAge !== 'undefined') {
|
|
60
|
+
throw new Error('maxAge');
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
const validateCors = (cors) => {
|
|
64
|
+
const isCorsObject = (0, helpers_1.isPlainObject)(cors);
|
|
65
|
+
if (isCorsObject) {
|
|
66
|
+
try {
|
|
67
|
+
validateOrigin(cors.origin);
|
|
68
|
+
validateMethods(cors.methods);
|
|
69
|
+
validateHeaders(cors.headers);
|
|
70
|
+
validateCredentials(cors.credentials);
|
|
71
|
+
validateMaxAge(cors.maxAge);
|
|
72
|
+
}
|
|
73
|
+
catch (error) {
|
|
74
|
+
throw new Error(`cors.${error.message}`);
|
|
75
|
+
}
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
if (typeof cors !== 'undefined') {
|
|
79
|
+
throw new Error('cors');
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
exports.validateCors = validateCors;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const validateGraphqlConfig: (graphqlConfig: unknown) => void;
|
|
1
|
+
export declare const validateGraphqlConfig: (graphqlConfig: unknown) => void;
|
|
@@ -1,48 +1,48 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.validateGraphqlConfig = void 0;
|
|
4
|
-
const helpers_1 = require("../../../src/utils/helpers");
|
|
5
|
-
const validateBaseUrl_1 = require("../validateBaseUrl/validateBaseUrl");
|
|
6
|
-
const validateInterceptors_1 = require("../validateInterceptors/validateInterceptors");
|
|
7
|
-
const validateRoutes_1 = require("./validateRoutes/validateRoutes");
|
|
8
|
-
const validateConfigs = (configs) => {
|
|
9
|
-
const isConfigsArray = Array.isArray(configs);
|
|
10
|
-
if (isConfigsArray) {
|
|
11
|
-
configs.forEach((config, index) => {
|
|
12
|
-
const { operationType, operationName } = config;
|
|
13
|
-
if (operationType !== 'query' && operationType !== 'mutation') {
|
|
14
|
-
throw new Error(`configs[${index}].operationType`);
|
|
15
|
-
}
|
|
16
|
-
const isOperationNameStringOrRegExp = typeof operationName === 'string' || operationName instanceof RegExp;
|
|
17
|
-
if (!isOperationNameStringOrRegExp) {
|
|
18
|
-
throw new Error(`configs[${index}].operationName`);
|
|
19
|
-
}
|
|
20
|
-
try {
|
|
21
|
-
(0, validateRoutes_1.validateRoutes)(config.routes, operationType);
|
|
22
|
-
(0, validateInterceptors_1.validateInterceptors)(config.interceptors);
|
|
23
|
-
}
|
|
24
|
-
catch (error) {
|
|
25
|
-
throw new Error(`configs[${index}].${error.message}`);
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
return;
|
|
29
|
-
}
|
|
30
|
-
throw new Error('configs');
|
|
31
|
-
};
|
|
32
|
-
const validateGraphqlConfig = (graphqlConfig) => {
|
|
33
|
-
const isGraphqlConfigObject = (0, helpers_1.isPlainObject)(graphqlConfig);
|
|
34
|
-
if (isGraphqlConfigObject) {
|
|
35
|
-
try {
|
|
36
|
-
(0, validateBaseUrl_1.validateBaseUrl)(graphqlConfig.baseUrl);
|
|
37
|
-
validateConfigs(graphqlConfig.configs);
|
|
38
|
-
}
|
|
39
|
-
catch (error) {
|
|
40
|
-
throw new Error(`graphql.${error.message}`);
|
|
41
|
-
}
|
|
42
|
-
return;
|
|
43
|
-
}
|
|
44
|
-
if (typeof graphqlConfig !== 'undefined') {
|
|
45
|
-
throw new Error('graphql');
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
exports.validateGraphqlConfig = validateGraphqlConfig;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateGraphqlConfig = void 0;
|
|
4
|
+
const helpers_1 = require("../../../src/utils/helpers");
|
|
5
|
+
const validateBaseUrl_1 = require("../validateBaseUrl/validateBaseUrl");
|
|
6
|
+
const validateInterceptors_1 = require("../validateInterceptors/validateInterceptors");
|
|
7
|
+
const validateRoutes_1 = require("./validateRoutes/validateRoutes");
|
|
8
|
+
const validateConfigs = (configs) => {
|
|
9
|
+
const isConfigsArray = Array.isArray(configs);
|
|
10
|
+
if (isConfigsArray) {
|
|
11
|
+
configs.forEach((config, index) => {
|
|
12
|
+
const { operationType, operationName } = config;
|
|
13
|
+
if (operationType !== 'query' && operationType !== 'mutation') {
|
|
14
|
+
throw new Error(`configs[${index}].operationType`);
|
|
15
|
+
}
|
|
16
|
+
const isOperationNameStringOrRegExp = typeof operationName === 'string' || operationName instanceof RegExp;
|
|
17
|
+
if (!isOperationNameStringOrRegExp) {
|
|
18
|
+
throw new Error(`configs[${index}].operationName`);
|
|
19
|
+
}
|
|
20
|
+
try {
|
|
21
|
+
(0, validateRoutes_1.validateRoutes)(config.routes, operationType);
|
|
22
|
+
(0, validateInterceptors_1.validateInterceptors)(config.interceptors);
|
|
23
|
+
}
|
|
24
|
+
catch (error) {
|
|
25
|
+
throw new Error(`configs[${index}].${error.message}`);
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
throw new Error('configs');
|
|
31
|
+
};
|
|
32
|
+
const validateGraphqlConfig = (graphqlConfig) => {
|
|
33
|
+
const isGraphqlConfigObject = (0, helpers_1.isPlainObject)(graphqlConfig);
|
|
34
|
+
if (isGraphqlConfigObject) {
|
|
35
|
+
try {
|
|
36
|
+
(0, validateBaseUrl_1.validateBaseUrl)(graphqlConfig.baseUrl);
|
|
37
|
+
validateConfigs(graphqlConfig.configs);
|
|
38
|
+
}
|
|
39
|
+
catch (error) {
|
|
40
|
+
throw new Error(`graphql.${error.message}`);
|
|
41
|
+
}
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
if (typeof graphqlConfig !== 'undefined') {
|
|
45
|
+
throw new Error('graphql');
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
exports.validateGraphqlConfig = validateGraphqlConfig;
|
package/dist/bin/validateMockServerConfig/validateGraphqlConfig/validateRoutes/validateRoutes.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { GraphQLOperationType } from '../../../../src';
|
|
2
|
-
export declare const validateRoutes: (routes: unknown, operationType: GraphQLOperationType) => void;
|
|
1
|
+
import type { GraphQLOperationType } from '../../../../src/utils/types';
|
|
2
|
+
export declare const validateRoutes: (routes: unknown, operationType: GraphQLOperationType) => void;
|