mock-config-server 2.3.0 → 3.0.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.
Files changed (160) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +502 -326
  3. package/package.json +113 -106
  4. package/dist/bin/bin.d.ts +0 -2
  5. package/dist/bin/bin.js +0 -8
  6. package/dist/bin/build.d.ts +0 -2
  7. package/dist/bin/build.js +0 -49
  8. package/dist/bin/cli.d.ts +0 -1
  9. package/dist/bin/cli.js +0 -48
  10. package/dist/bin/helpers/index.d.ts +0 -3
  11. package/dist/bin/helpers/index.js +0 -19
  12. package/dist/bin/helpers/resolveConfigFile.d.ts +0 -2
  13. package/dist/bin/helpers/resolveConfigFile.js +0 -20
  14. package/dist/bin/helpers/resolveConfigFilePath.d.ts +0 -1
  15. package/dist/bin/helpers/resolveConfigFilePath.js +0 -39
  16. package/dist/bin/helpers/resolveExportsFromSourceCode.d.ts +0 -1
  17. package/dist/bin/helpers/resolveExportsFromSourceCode.js +0 -11
  18. package/dist/bin/resolveConfigFilePath/resolveConfigFilePath.d.ts +0 -1
  19. package/dist/bin/resolveConfigFilePath/resolveConfigFilePath.js +0 -39
  20. package/dist/bin/run.d.ts +0 -6
  21. package/dist/bin/run.js +0 -17
  22. package/dist/bin/validateMockServerConfig/validateBaseUrl/validateBaseUrl.d.ts +0 -1
  23. package/dist/bin/validateMockServerConfig/validateBaseUrl/validateBaseUrl.js +0 -12
  24. package/dist/bin/validateMockServerConfig/validateCors/validateCors.d.ts +0 -1
  25. package/dist/bin/validateMockServerConfig/validateCors/validateCors.js +0 -82
  26. package/dist/bin/validateMockServerConfig/validateGraphqlConfig/validateGraphqlConfig.d.ts +0 -1
  27. package/dist/bin/validateMockServerConfig/validateGraphqlConfig/validateGraphqlConfig.js +0 -48
  28. package/dist/bin/validateMockServerConfig/validateGraphqlConfig/validateRoutes/validateRoutes.d.ts +0 -2
  29. package/dist/bin/validateMockServerConfig/validateGraphqlConfig/validateRoutes/validateRoutes.js +0 -71
  30. package/dist/bin/validateMockServerConfig/validateInterceptors/validateInterceptors.d.ts +0 -1
  31. package/dist/bin/validateMockServerConfig/validateInterceptors/validateInterceptors.js +0 -21
  32. package/dist/bin/validateMockServerConfig/validateMockServerConfig.d.ts +0 -2
  33. package/dist/bin/validateMockServerConfig/validateMockServerConfig.js +0 -30
  34. package/dist/bin/validateMockServerConfig/validatePort/validatePort.d.ts +0 -1
  35. package/dist/bin/validateMockServerConfig/validatePort/validatePort.js +0 -9
  36. package/dist/bin/validateMockServerConfig/validateRestConfig/validateRestConfig.d.ts +0 -1
  37. package/dist/bin/validateMockServerConfig/validateRestConfig/validateRestConfig.js +0 -52
  38. package/dist/bin/validateMockServerConfig/validateRestConfig/validateRoutes/validateRoutes.d.ts +0 -2
  39. package/dist/bin/validateMockServerConfig/validateRestConfig/validateRoutes/validateRoutes.js +0 -105
  40. package/dist/bin/validateMockServerConfig/validateStaticPath/validateStaticPath.d.ts +0 -1
  41. package/dist/bin/validateMockServerConfig/validateStaticPath/validateStaticPath.js +0 -44
  42. package/dist/index.d.ts +0 -1
  43. package/dist/index.js +0 -17
  44. package/dist/src/core/graphql/createGraphQLRoutes/createGraphQLRoutes.d.ts +0 -3
  45. package/dist/src/core/graphql/createGraphQLRoutes/createGraphQLRoutes.js +0 -74
  46. package/dist/src/core/graphql/createGraphQLRoutes/helpers/index.d.ts +0 -1
  47. package/dist/src/core/graphql/createGraphQLRoutes/helpers/index.js +0 -17
  48. package/dist/src/core/graphql/createGraphQLRoutes/helpers/prepareGraphQLRequestConfigs/prepareGraphQLRequestConfigs.d.ts +0 -2
  49. package/dist/src/core/graphql/createGraphQLRoutes/helpers/prepareGraphQLRequestConfigs/prepareGraphQLRequestConfigs.js +0 -30
  50. package/dist/src/core/graphql/index.d.ts +0 -1
  51. package/dist/src/core/graphql/index.js +0 -17
  52. package/dist/src/core/middlewares/cookieParseMiddleware/cookieParseMiddleware.d.ts +0 -2
  53. package/dist/src/core/middlewares/cookieParseMiddleware/cookieParseMiddleware.js +0 -16
  54. package/dist/src/core/middlewares/cookieParseMiddleware/helpers/index.d.ts +0 -1
  55. package/dist/src/core/middlewares/cookieParseMiddleware/helpers/index.js +0 -17
  56. package/dist/src/core/middlewares/cookieParseMiddleware/helpers/parseCookie/parseCookie.d.ts +0 -3
  57. package/dist/src/core/middlewares/cookieParseMiddleware/helpers/parseCookie/parseCookie.js +0 -17
  58. package/dist/src/core/middlewares/corsMiddleware/corsMiddleware.d.ts +0 -3
  59. package/dist/src/core/middlewares/corsMiddleware/corsMiddleware.js +0 -44
  60. package/dist/src/core/middlewares/corsMiddleware/helpers/getAllowedOrigins/getAllowedOrigins.d.ts +0 -2
  61. package/dist/src/core/middlewares/corsMiddleware/helpers/getAllowedOrigins/getAllowedOrigins.js +0 -13
  62. package/dist/src/core/middlewares/corsMiddleware/helpers/index.d.ts +0 -1
  63. package/dist/src/core/middlewares/corsMiddleware/helpers/index.js +0 -17
  64. package/dist/src/core/middlewares/destroyerMiddleware/destroyerMiddleware.d.ts +0 -7
  65. package/dist/src/core/middlewares/destroyerMiddleware/destroyerMiddleware.js +0 -23
  66. package/dist/src/core/middlewares/index.d.ts +0 -7
  67. package/dist/src/core/middlewares/index.js +0 -23
  68. package/dist/src/core/middlewares/noCorsMiddleware/noCorsMiddleware.d.ts +0 -2
  69. package/dist/src/core/middlewares/noCorsMiddleware/noCorsMiddleware.js +0 -24
  70. package/dist/src/core/middlewares/notFoundMiddleware/helpers/getGraphqlUrlSuggestions/getGraphqlUrlSuggestions.d.ts +0 -6
  71. package/dist/src/core/middlewares/notFoundMiddleware/helpers/getGraphqlUrlSuggestions/getGraphqlUrlSuggestions.js +0 -18
  72. package/dist/src/core/middlewares/notFoundMiddleware/helpers/getLevenshteinDistance/getLevenshteinDistance.d.ts +0 -1
  73. package/dist/src/core/middlewares/notFoundMiddleware/helpers/getLevenshteinDistance/getLevenshteinDistance.js +0 -80
  74. package/dist/src/core/middlewares/notFoundMiddleware/helpers/getRestUrlSuggestions/getRestUrlSuggestions.d.ts +0 -6
  75. package/dist/src/core/middlewares/notFoundMiddleware/helpers/getRestUrlSuggestions/getRestUrlSuggestions.js +0 -34
  76. package/dist/src/core/middlewares/notFoundMiddleware/helpers/getRestUrlSuggestions/helpers/getActualRestUrlMeaningfulString/getActualRestUrlMeaningfulString.d.ts +0 -1
  77. package/dist/src/core/middlewares/notFoundMiddleware/helpers/getRestUrlSuggestions/helpers/getActualRestUrlMeaningfulString/getActualRestUrlMeaningfulString.js +0 -7
  78. package/dist/src/core/middlewares/notFoundMiddleware/helpers/getRestUrlSuggestions/helpers/getPatternRestUrlMeaningfulString/getPatternRestUrlMeaningfulString.d.ts +0 -1
  79. package/dist/src/core/middlewares/notFoundMiddleware/helpers/getRestUrlSuggestions/helpers/getPatternRestUrlMeaningfulString/getPatternRestUrlMeaningfulString.js +0 -5
  80. package/dist/src/core/middlewares/notFoundMiddleware/helpers/getRestUrlSuggestions/helpers/index.d.ts +0 -2
  81. package/dist/src/core/middlewares/notFoundMiddleware/helpers/getRestUrlSuggestions/helpers/index.js +0 -18
  82. package/dist/src/core/middlewares/notFoundMiddleware/helpers/index.d.ts +0 -3
  83. package/dist/src/core/middlewares/notFoundMiddleware/helpers/index.js +0 -19
  84. package/dist/src/core/middlewares/notFoundMiddleware/notFoundMiddleware.d.ts +0 -8
  85. package/dist/src/core/middlewares/notFoundMiddleware/notFoundMiddleware.js +0 -47
  86. package/dist/src/core/middlewares/requestInterceptorMiddleware/requestInterceptorMiddleware.d.ts +0 -3
  87. package/dist/src/core/middlewares/requestInterceptorMiddleware/requestInterceptorMiddleware.js +0 -11
  88. package/dist/src/core/middlewares/staticMiddleware/staticMiddleware.d.ts +0 -3
  89. package/dist/src/core/middlewares/staticMiddleware/staticMiddleware.js +0 -30
  90. package/dist/src/core/rest/createRestRoutes/createRestRoutes.d.ts +0 -3
  91. package/dist/src/core/rest/createRestRoutes/createRestRoutes.js +0 -44
  92. package/dist/src/core/rest/createRestRoutes/helpers/index.d.ts +0 -1
  93. package/dist/src/core/rest/createRestRoutes/helpers/index.js +0 -17
  94. package/dist/src/core/rest/createRestRoutes/helpers/prepareRestRequestConfigs/prepareRestRequestConfigs.d.ts +0 -2
  95. package/dist/src/core/rest/createRestRoutes/helpers/prepareRestRequestConfigs/prepareRestRequestConfigs.js +0 -32
  96. package/dist/src/core/rest/index.d.ts +0 -1
  97. package/dist/src/core/rest/index.js +0 -17
  98. package/dist/src/index.d.ts +0 -3
  99. package/dist/src/index.js +0 -19
  100. package/dist/src/server/createMockServer/createMockServer.d.ts +0 -3
  101. package/dist/src/server/createMockServer/createMockServer.js +0 -59
  102. package/dist/src/server/index.d.ts +0 -2
  103. package/dist/src/server/index.js +0 -18
  104. package/dist/src/server/startMockServer/startMockServer.d.ts +0 -5
  105. package/dist/src/server/startMockServer/startMockServer.js +0 -20
  106. package/dist/src/static/views/notFound.ejs +0 -42
  107. package/dist/src/utils/constants/appPath.d.ts +0 -1
  108. package/dist/src/utils/constants/appPath.js +0 -4
  109. package/dist/src/utils/constants/default.d.ts +0 -11
  110. package/dist/src/utils/constants/default.js +0 -14
  111. package/dist/src/utils/constants/index.d.ts +0 -2
  112. package/dist/src/utils/constants/index.js +0 -18
  113. package/dist/src/utils/helpers/config/index.d.ts +0 -1
  114. package/dist/src/utils/helpers/config/index.js +0 -17
  115. package/dist/src/utils/helpers/config/isEntitiesEqual/isEntityValuesEqual.d.ts +0 -1
  116. package/dist/src/utils/helpers/config/isEntitiesEqual/isEntityValuesEqual.js +0 -29
  117. package/dist/src/utils/helpers/graphql/getGraphQLInput/getGraphQLInput.d.ts +0 -3
  118. package/dist/src/utils/helpers/graphql/getGraphQLInput/getGraphQLInput.js +0 -21
  119. package/dist/src/utils/helpers/graphql/index.d.ts +0 -3
  120. package/dist/src/utils/helpers/graphql/index.js +0 -19
  121. package/dist/src/utils/helpers/graphql/parseGraphQLRequest/parseGraphQLRequest.d.ts +0 -3
  122. package/dist/src/utils/helpers/graphql/parseGraphQLRequest/parseGraphQLRequest.js +0 -12
  123. package/dist/src/utils/helpers/graphql/parseQuery/parseQuery.d.ts +0 -7
  124. package/dist/src/utils/helpers/graphql/parseQuery/parseQuery.js +0 -21
  125. package/dist/src/utils/helpers/index.d.ts +0 -6
  126. package/dist/src/utils/helpers/index.js +0 -22
  127. package/dist/src/utils/helpers/interceptors/callRequestInterceptor/callRequestInterceptor.d.ts +0 -8
  128. package/dist/src/utils/helpers/interceptors/callRequestInterceptor/callRequestInterceptor.js +0 -19
  129. package/dist/src/utils/helpers/interceptors/callResponseInterceptors/callResponseInterceptors.d.ts +0 -15
  130. package/dist/src/utils/helpers/interceptors/callResponseInterceptors/callResponseInterceptors.js +0 -52
  131. package/dist/src/utils/helpers/interceptors/helpers/setDelay.d.ts +0 -1
  132. package/dist/src/utils/helpers/interceptors/helpers/setDelay.js +0 -8
  133. package/dist/src/utils/helpers/interceptors/index.d.ts +0 -2
  134. package/dist/src/utils/helpers/interceptors/index.js +0 -18
  135. package/dist/src/utils/helpers/isPlainObject/isPlainObject.d.ts +0 -1
  136. package/dist/src/utils/helpers/isPlainObject/isPlainObject.js +0 -5
  137. package/dist/src/utils/helpers/sleep.d.ts +0 -1
  138. package/dist/src/utils/helpers/sleep.js +0 -7
  139. package/dist/src/utils/helpers/url/convertWin32PathToUnix/convertWin32PathToUnix.d.ts +0 -1
  140. package/dist/src/utils/helpers/url/convertWin32PathToUnix/convertWin32PathToUnix.js +0 -8
  141. package/dist/src/utils/helpers/url/getUrlParts/getUrlParts.d.ts +0 -1
  142. package/dist/src/utils/helpers/url/getUrlParts/getUrlParts.js +0 -6
  143. package/dist/src/utils/helpers/url/index.d.ts +0 -4
  144. package/dist/src/utils/helpers/url/index.js +0 -20
  145. package/dist/src/utils/helpers/url/removeLeadingAndTrailingSlashes/removeLeadingAndTrailingSlashes.d.ts +0 -1
  146. package/dist/src/utils/helpers/url/removeLeadingAndTrailingSlashes/removeLeadingAndTrailingSlashes.js +0 -5
  147. package/dist/src/utils/helpers/url/urlJoin/urlJoin.d.ts +0 -1
  148. package/dist/src/utils/helpers/url/urlJoin/urlJoin.js +0 -14
  149. package/dist/src/utils/types/graphql.d.ts +0 -34
  150. package/dist/src/utils/types/graphql.js +0 -2
  151. package/dist/src/utils/types/index.d.ts +0 -5
  152. package/dist/src/utils/types/index.js +0 -21
  153. package/dist/src/utils/types/interceptors.d.ts +0 -30
  154. package/dist/src/utils/types/interceptors.js +0 -2
  155. package/dist/src/utils/types/rest.d.ts +0 -38
  156. package/dist/src/utils/types/rest.js +0 -2
  157. package/dist/src/utils/types/server.d.ts +0 -47
  158. package/dist/src/utils/types/server.js +0 -2
  159. package/dist/src/utils/types/values.d.ts +0 -10
  160. package/dist/src/utils/types/values.js +0 -2
@@ -1,32 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.prepareRestRequestConfigs = void 0;
4
- const helpers_1 = require("../../../../../utils/helpers");
5
- const calculateRouteConfigWeight = (restRouteConfig) => {
6
- const { entities } = restRouteConfig;
7
- if (!entities)
8
- return 0;
9
- let routeConfigWeight = 0;
10
- const { headers, cookies, query, params, body } = entities;
11
- if (headers)
12
- routeConfigWeight += Object.keys(headers).length;
13
- if (cookies)
14
- routeConfigWeight += Object.keys(cookies).length;
15
- if (query)
16
- routeConfigWeight += Object.keys(query).length;
17
- if (params)
18
- routeConfigWeight += Object.keys(params).length;
19
- if (body)
20
- routeConfigWeight += (0, helpers_1.isPlainObject)(body) ? Object.keys(body).length : 1;
21
- return routeConfigWeight;
22
- };
23
- const prepareRestRequestConfigs = (requestConfigs) => {
24
- requestConfigs.forEach((requestConfig) => {
25
- requestConfig.routes.sort((first, second) =>
26
- // ✅ important:
27
- // Lift more specific configs for correct working of routes
28
- calculateRouteConfigWeight(second) - calculateRouteConfigWeight(first));
29
- });
30
- return requestConfigs;
31
- };
32
- exports.prepareRestRequestConfigs = prepareRestRequestConfigs;
@@ -1 +0,0 @@
1
- export * from './createRestRoutes/createRestRoutes';
@@ -1,17 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./createRestRoutes/createRestRoutes"), exports);
@@ -1,3 +0,0 @@
1
- export * from './server/createMockServer/createMockServer';
2
- export * from './server/startMockServer/startMockServer';
3
- export * from './utils/types';
package/dist/src/index.js DELETED
@@ -1,19 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./server/createMockServer/createMockServer"), exports);
18
- __exportStar(require("./server/startMockServer/startMockServer"), exports);
19
- __exportStar(require("./utils/types"), exports);
@@ -1,3 +0,0 @@
1
- import type { Express } from 'express';
2
- import type { MockServerConfig } from '../../utils/types';
3
- export declare const createMockServer: (mockServerConfig: Omit<MockServerConfig, 'port'>) => Express;
@@ -1,59 +0,0 @@
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.createMockServer = void 0;
7
- const body_parser_1 = __importDefault(require("body-parser"));
8
- const express_1 = __importDefault(require("express"));
9
- const graphql_1 = require("../../core/graphql");
10
- const middlewares_1 = require("../../core/middlewares");
11
- const rest_1 = require("../../core/rest");
12
- const helpers_1 = require("../../utils/helpers");
13
- const createMockServer = (mockServerConfig) => {
14
- const { cors, staticPath, rest, graphql, interceptors } = mockServerConfig;
15
- const server = (0, express_1.default)();
16
- server.set('views', (0, helpers_1.urlJoin)(__dirname, '../../static/views'));
17
- server.set('view engine', 'ejs');
18
- server.use(body_parser_1.default.urlencoded({ extended: false }));
19
- server.use(body_parser_1.default.json({ limit: '10mb' }));
20
- (0, middlewares_1.cookieParseMiddleware)(server);
21
- const serverRequestInterceptor = mockServerConfig.interceptors?.request;
22
- if (serverRequestInterceptor) {
23
- (0, middlewares_1.requestInterceptorMiddleware)(server, serverRequestInterceptor);
24
- }
25
- const baseUrl = mockServerConfig.baseUrl ?? '/';
26
- if (cors) {
27
- (0, middlewares_1.corsMiddleware)(server, cors);
28
- }
29
- else {
30
- (0, middlewares_1.noCorsMiddleware)(server);
31
- }
32
- if (staticPath) {
33
- (0, middlewares_1.staticMiddleware)(server, baseUrl, staticPath);
34
- }
35
- if (rest) {
36
- const routerWithRestRoutes = (0, rest_1.createRestRoutes)(express_1.default.Router(), rest, interceptors?.response);
37
- const apiRequestInterceptor = rest.interceptors?.request;
38
- if (apiRequestInterceptor) {
39
- (0, middlewares_1.requestInterceptorMiddleware)(server, apiRequestInterceptor);
40
- }
41
- const restBaseUrl = (0, helpers_1.urlJoin)(baseUrl, rest.baseUrl ?? '/');
42
- server.use(restBaseUrl, routerWithRestRoutes);
43
- }
44
- if (graphql) {
45
- const routerWithGraphQLRoutes = (0, graphql_1.createGraphQLRoutes)(express_1.default.Router(), graphql, interceptors?.response);
46
- const apiRequestInterceptor = graphql.interceptors?.request;
47
- if (apiRequestInterceptor) {
48
- (0, middlewares_1.requestInterceptorMiddleware)(server, apiRequestInterceptor);
49
- }
50
- const graphqlBaseUrl = (0, helpers_1.urlJoin)(baseUrl, graphql.baseUrl ?? '/');
51
- server.use(graphqlBaseUrl, routerWithGraphQLRoutes);
52
- }
53
- (0, middlewares_1.notFoundMiddleware)({
54
- server,
55
- mockServerConfig
56
- });
57
- return server;
58
- };
59
- exports.createMockServer = createMockServer;
@@ -1,2 +0,0 @@
1
- export * from './createMockServer/createMockServer';
2
- export * from './startMockServer/startMockServer';
@@ -1,18 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./createMockServer/createMockServer"), exports);
18
- __exportStar(require("./startMockServer/startMockServer"), exports);
@@ -1,5 +0,0 @@
1
- /// <reference types="node" />
2
- import type { MockServerConfig } from '../../utils/types';
3
- export declare const startMockServer: (mockServerConfig: MockServerConfig) => import("http").Server<typeof import("http").IncomingMessage, typeof import("http").ServerResponse> & {
4
- destroy: (callback?: ((err?: Error | undefined) => void) | undefined) => import("http").Server<typeof import("http").IncomingMessage, typeof import("http").ServerResponse>;
5
- };
@@ -1,20 +0,0 @@
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.startMockServer = void 0;
7
- const ansi_colors_1 = __importDefault(require("ansi-colors"));
8
- const middlewares_1 = require("../../core/middlewares");
9
- const constants_1 = require("../../utils/constants");
10
- const createMockServer_1 = require("../createMockServer/createMockServer");
11
- const startMockServer = (mockServerConfig) => {
12
- const mockServer = (0, createMockServer_1.createMockServer)(mockServerConfig);
13
- const port = mockServerConfig.port ?? constants_1.DEFAULT.PORT;
14
- const server = mockServer.listen(port, () => {
15
- console.log(ansi_colors_1.default.green(`🎉 Mock Server is running at http://localhost:${port}`));
16
- });
17
- // ✅ important: add destroy method for closing keep-alive connections after server shutdown
18
- return (0, middlewares_1.destroyerMiddleware)(server);
19
- };
20
- exports.startMockServer = startMockServer;
@@ -1,42 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <body class="container">
4
- <h1>404</h1>
5
- <div>
6
- Seems to be your config does not have data for <%= requestMethod %>
7
- <%= decodeURIComponent(url) %> request, or you have typo in it.
8
- </div>
9
-
10
- <% if (restUrlSuggestions.length || graphqlUrlSuggestions.length) { %>
11
- <h2>
12
- Maybe you are looking for one of these paths?
13
- </h2>
14
- <% } %>
15
-
16
- <% if (restUrlSuggestions.length) { %>
17
- <div>
18
- <h3>REST</h3>
19
- <ul>
20
- <% restUrlSuggestions.forEach((restUrlSuggestion) => { %>
21
- <li>
22
- <a href=<%= restUrlSuggestion %>><%= decodeURIComponent(restUrlSuggestion) %></a>
23
- </li>
24
- <% }) %>
25
- </ul>
26
- </div>
27
- <% } %>
28
-
29
- <% if (graphqlUrlSuggestions.length) { %>
30
- <div>
31
- <h3>GraphQL</h3>
32
- <ul>
33
- <% graphqlUrlSuggestions.forEach((graphqlUrlSuggestion) => { %>
34
- <li>
35
- <%= decodeURIComponent(graphqlUrlSuggestion) %>
36
- </li>
37
- <% }) %>
38
- </ul>
39
- </div>
40
- <% } %>
41
- </body>
42
- </html>
@@ -1 +0,0 @@
1
- export declare const APP_PATH: string;
@@ -1,4 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.APP_PATH = void 0;
4
- exports.APP_PATH = process.cwd();
@@ -1,11 +0,0 @@
1
- export declare const DEFAULT: {
2
- PORT: number;
3
- CORS: {
4
- ORIGIN: string;
5
- METHODS: string;
6
- ALLOWED_HEADERS: string;
7
- EXPOSED_HEADERS: string;
8
- CREDENTIALS: boolean;
9
- MAX_AGE: number;
10
- };
11
- };
@@ -1,14 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEFAULT = void 0;
4
- exports.DEFAULT = {
5
- PORT: 31299,
6
- CORS: {
7
- ORIGIN: '*',
8
- METHODS: '*',
9
- ALLOWED_HEADERS: '*',
10
- EXPOSED_HEADERS: '*',
11
- CREDENTIALS: true,
12
- MAX_AGE: 3600
13
- }
14
- };
@@ -1,2 +0,0 @@
1
- export * from './appPath';
2
- export * from './default';
@@ -1,18 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./appPath"), exports);
18
- __exportStar(require("./default"), exports);
@@ -1 +0,0 @@
1
- export * from './isEntitiesEqual/isEntityValuesEqual';
@@ -1,17 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./isEntitiesEqual/isEntityValuesEqual"), exports);
@@ -1 +0,0 @@
1
- export declare const isEntityValuesEqual: (firstEntityValue: any, secondEntityValue: any) => boolean;
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isEntityValuesEqual = void 0;
4
- const flat_1 = require("flat");
5
- const isPlainObject_1 = require("../../isPlainObject/isPlainObject");
6
- const isEntityValuesEqual = (firstEntityValue, secondEntityValue) => {
7
- const isValuesArePlainObjects = (0, isPlainObject_1.isPlainObject)(firstEntityValue) && (0, isPlainObject_1.isPlainObject)(secondEntityValue);
8
- if (isValuesArePlainObjects) {
9
- const flattenFirstEntityValue = (0, flat_1.flatten)(firstEntityValue);
10
- const flattenSecondEntityValue = (0, flat_1.flatten)(secondEntityValue);
11
- return Object.keys(flattenFirstEntityValue).every((key) =>
12
- // ✅ important:
13
- // call 'toString' for ignore types of values
14
- flattenFirstEntityValue[key].toString() === flattenSecondEntityValue[key]?.toString());
15
- }
16
- const isValuesAreArrays = Array.isArray(firstEntityValue) && Array.isArray(secondEntityValue);
17
- if (isValuesAreArrays) {
18
- const flattenFirstEntityValue = (0, flat_1.flatten)(firstEntityValue);
19
- const flattenSecondEntityValue = (0, flat_1.flatten)(secondEntityValue);
20
- return (Object.keys(flattenFirstEntityValue).length ===
21
- Object.keys(flattenSecondEntityValue).length &&
22
- Object.keys(flattenFirstEntityValue).every((key) =>
23
- // ✅ important:
24
- // call 'toString' for ignore types of values
25
- flattenFirstEntityValue[key].toString() === flattenSecondEntityValue[key].toString()));
26
- }
27
- return `${firstEntityValue}` === `${secondEntityValue}`;
28
- };
29
- exports.isEntityValuesEqual = isEntityValuesEqual;
@@ -1,3 +0,0 @@
1
- import type { Request } from 'express';
2
- import type { GraphQLInput } from '../../../types';
3
- export declare const getGraphQLInput: (request: Request) => GraphQLInput;
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getGraphQLInput = void 0;
4
- const getGraphQLInput = (request) => {
5
- if (request.method === 'GET') {
6
- const { query, variables } = request.query;
7
- return {
8
- query: query?.toString(),
9
- variables: JSON.parse(variables ?? '{}')
10
- };
11
- }
12
- if (request.method === 'POST') {
13
- const { query, variables } = request.body;
14
- return {
15
- query,
16
- variables: variables ?? {}
17
- };
18
- }
19
- throw new Error('Not allowed request method for graphql request');
20
- };
21
- exports.getGraphQLInput = getGraphQLInput;
@@ -1,3 +0,0 @@
1
- export * from './parseGraphQLRequest/parseGraphQLRequest';
2
- export * from './parseQuery/parseQuery';
3
- export * from './getGraphQLInput/getGraphQLInput';
@@ -1,19 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./parseGraphQLRequest/parseGraphQLRequest"), exports);
18
- __exportStar(require("./parseQuery/parseQuery"), exports);
19
- __exportStar(require("./getGraphQLInput/getGraphQLInput"), exports);
@@ -1,3 +0,0 @@
1
- import type { Request } from 'express';
2
- import { parseQuery } from '../parseQuery/parseQuery';
3
- export declare const parseGraphQLRequest: (request: Request) => ReturnType<typeof parseQuery>;
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseGraphQLRequest = void 0;
4
- const getGraphQLInput_1 = require("../getGraphQLInput/getGraphQLInput");
5
- const parseQuery_1 = require("../parseQuery/parseQuery");
6
- const parseGraphQLRequest = (request) => {
7
- const graphQLInput = (0, getGraphQLInput_1.getGraphQLInput)(request);
8
- if (!graphQLInput.query)
9
- return null;
10
- return (0, parseQuery_1.parseQuery)(graphQLInput.query);
11
- };
12
- exports.parseGraphQLRequest = parseGraphQLRequest;
@@ -1,7 +0,0 @@
1
- import type { OperationTypeNode } from 'graphql';
2
- interface ParseDocumentNodeResult {
3
- operationType: OperationTypeNode;
4
- operationName: string;
5
- }
6
- export declare const parseQuery: (query: string) => ParseDocumentNodeResult | null;
7
- export {};
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseQuery = void 0;
4
- const graphql_1 = require("graphql");
5
- const parseDocumentNode = (node) => {
6
- const operationDefinition = node.definitions.find((definition) => definition.kind === 'OperationDefinition');
7
- return {
8
- operationType: operationDefinition.operation,
9
- operationName: operationDefinition.name?.value ?? ''
10
- };
11
- };
12
- const parseQuery = (query) => {
13
- try {
14
- const document = (0, graphql_1.parse)(query);
15
- return parseDocumentNode(document);
16
- }
17
- catch {
18
- return null;
19
- }
20
- };
21
- exports.parseQuery = parseQuery;
@@ -1,6 +0,0 @@
1
- export * from './isPlainObject/isPlainObject';
2
- export * from './sleep';
3
- export * from './url';
4
- export * from './config';
5
- export * from './interceptors';
6
- export * from './graphql';
@@ -1,22 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./isPlainObject/isPlainObject"), exports);
18
- __exportStar(require("./sleep"), exports);
19
- __exportStar(require("./url"), exports);
20
- __exportStar(require("./config"), exports);
21
- __exportStar(require("./interceptors"), exports);
22
- __exportStar(require("./graphql"), exports);
@@ -1,8 +0,0 @@
1
- import type { Request } from 'express';
2
- import type { RequestInterceptor } from '../../../types';
3
- interface CallRequestInterceptorParams {
4
- request: Request;
5
- interceptor: RequestInterceptor;
6
- }
7
- export declare const callRequestInterceptor: (params: CallRequestInterceptorParams) => Promise<void>;
8
- export {};
@@ -1,19 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.callRequestInterceptor = void 0;
4
- const setDelay_1 = require("../helpers/setDelay");
5
- const callRequestInterceptor = async (params) => {
6
- const { request, interceptor } = params;
7
- const getHeader = (field) => request.headers[field];
8
- const getHeaders = () => request.headers;
9
- const getCookie = (name) => request.cookies[name];
10
- const requestInterceptorParams = {
11
- request,
12
- setDelay: setDelay_1.setDelay,
13
- getHeader,
14
- getHeaders,
15
- getCookie
16
- };
17
- await interceptor(requestInterceptorParams);
18
- };
19
- exports.callRequestInterceptor = callRequestInterceptor;
@@ -1,15 +0,0 @@
1
- import type { Request, Response } from 'express';
2
- import type { Data, ResponseInterceptor } from '../../../types';
3
- interface CallResponseInterceptorsParams {
4
- data: Data;
5
- request: Request;
6
- response: Response;
7
- interceptors?: {
8
- routeInterceptor?: ResponseInterceptor;
9
- requestInterceptor?: ResponseInterceptor;
10
- apiInterceptor?: ResponseInterceptor;
11
- serverInterceptor?: ResponseInterceptor;
12
- };
13
- }
14
- export declare const callResponseInterceptors: (params: CallResponseInterceptorsParams) => Promise<Data>;
15
- export {};
@@ -1,52 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.callResponseInterceptors = void 0;
4
- const setDelay_1 = require("../helpers/setDelay");
5
- const callResponseInterceptors = async (params) => {
6
- const { data, request, response, interceptors } = params;
7
- const getHeader = (field) => response.getHeader(field);
8
- const getHeaders = () => response.getHeaders();
9
- const getCookie = (name) => request.cookies[name];
10
- const setStatusCode = (statusCode) => {
11
- response.statusCode = statusCode;
12
- };
13
- const setHeader = (field, value) => response.set(field, value);
14
- const appendHeader = (field, value) => response.append(field, value);
15
- const setCookie = (name, value, options) => {
16
- if (options) {
17
- response.cookie(name, value, options);
18
- }
19
- response.cookie(name, value);
20
- };
21
- const clearCookie = (name, options) => response.clearCookie(name, options);
22
- const attachment = (filename) => response.attachment(filename);
23
- const ResponseInterceptorParams = {
24
- request,
25
- response,
26
- setDelay: setDelay_1.setDelay,
27
- setStatusCode,
28
- setHeader,
29
- appendHeader,
30
- getHeader,
31
- getHeaders,
32
- setCookie,
33
- getCookie,
34
- clearCookie,
35
- attachment
36
- };
37
- let updatedData = data;
38
- if (interceptors?.routeInterceptor) {
39
- updatedData = await interceptors.routeInterceptor(updatedData, ResponseInterceptorParams);
40
- }
41
- if (interceptors?.requestInterceptor) {
42
- updatedData = await interceptors.requestInterceptor(updatedData, ResponseInterceptorParams);
43
- }
44
- if (interceptors?.apiInterceptor) {
45
- updatedData = await interceptors.apiInterceptor(updatedData, ResponseInterceptorParams);
46
- }
47
- if (interceptors?.serverInterceptor) {
48
- updatedData = await interceptors.serverInterceptor(updatedData, ResponseInterceptorParams);
49
- }
50
- return updatedData;
51
- };
52
- exports.callResponseInterceptors = callResponseInterceptors;
@@ -1 +0,0 @@
1
- export declare const setDelay: (delay: number) => Promise<void>;
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.setDelay = void 0;
4
- const sleep_1 = require("../../sleep");
5
- const setDelay = async (delay) => {
6
- await (0, sleep_1.sleep)(delay === Infinity ? 99999999 : delay);
7
- };
8
- exports.setDelay = setDelay;
@@ -1,2 +0,0 @@
1
- export * from './callRequestInterceptor/callRequestInterceptor';
2
- export * from './callResponseInterceptors/callResponseInterceptors';
@@ -1,18 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./callRequestInterceptor/callRequestInterceptor"), exports);
18
- __exportStar(require("./callResponseInterceptors/callResponseInterceptors"), exports);
@@ -1 +0,0 @@
1
- export declare const isPlainObject: (value: any) => value is Record<string, unknown>;
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isPlainObject = void 0;
4
- const isPlainObject = (value) => typeof value === 'object' && !Array.isArray(value) && value !== null;
5
- exports.isPlainObject = isPlainObject;