@modern-js/bff-core 1.21.2-beta.4 → 1.21.3-beta.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 (56) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/package.json +6 -5
  3. package/dist/js/modern/api.js +0 -54
  4. package/dist/js/modern/client/generate-client.js +0 -63
  5. package/dist/js/modern/client/index.js +0 -1
  6. package/dist/js/modern/client/result.js +0 -20
  7. package/dist/js/modern/errors/http.js +0 -22
  8. package/dist/js/modern/index.js +0 -7
  9. package/dist/js/modern/operators/http.js +0 -187
  10. package/dist/js/modern/router/constants.js +0 -14
  11. package/dist/js/modern/router/index.js +0 -299
  12. package/dist/js/modern/router/types.js +0 -1
  13. package/dist/js/modern/router/utils.js +0 -101
  14. package/dist/js/modern/types.js +0 -47
  15. package/dist/js/modern/utils/alias.js +0 -91
  16. package/dist/js/modern/utils/debug.js +0 -2
  17. package/dist/js/modern/utils/index.js +0 -5
  18. package/dist/js/modern/utils/meta.js +0 -4
  19. package/dist/js/modern/utils/storage.js +0 -48
  20. package/dist/js/modern/utils/validate.js +0 -49
  21. package/dist/js/node/api.js +0 -66
  22. package/dist/js/node/client/generate-client.js +0 -81
  23. package/dist/js/node/client/index.js +0 -18
  24. package/dist/js/node/client/result.js +0 -32
  25. package/dist/js/node/errors/http.js +0 -34
  26. package/dist/js/node/index.js +0 -125
  27. package/dist/js/node/operators/http.js +0 -226
  28. package/dist/js/node/router/constants.js +0 -29
  29. package/dist/js/node/router/index.js +0 -345
  30. package/dist/js/node/router/types.js +0 -5
  31. package/dist/js/node/router/utils.js +0 -123
  32. package/dist/js/node/types.js +0 -59
  33. package/dist/js/node/utils/alias.js +0 -115
  34. package/dist/js/node/utils/debug.js +0 -11
  35. package/dist/js/node/utils/index.js +0 -72
  36. package/dist/js/node/utils/meta.js +0 -14
  37. package/dist/js/node/utils/storage.js +0 -59
  38. package/dist/js/node/utils/validate.js +0 -68
  39. package/dist/types/api.d.ts +0 -3
  40. package/dist/types/client/generate-client.d.ts +0 -24
  41. package/dist/types/client/index.d.ts +0 -1
  42. package/dist/types/client/result.d.ts +0 -15
  43. package/dist/types/errors/http.d.ts +0 -8
  44. package/dist/types/index.d.ts +0 -7
  45. package/dist/types/operators/http.d.ts +0 -39
  46. package/dist/types/router/constants.d.ts +0 -17
  47. package/dist/types/router/index.d.ts +0 -51
  48. package/dist/types/router/types.d.ts +0 -17
  49. package/dist/types/router/utils.d.ts +0 -10
  50. package/dist/types/types.d.ts +0 -58
  51. package/dist/types/utils/alias.d.ts +0 -7
  52. package/dist/types/utils/debug.d.ts +0 -1
  53. package/dist/types/utils/index.d.ts +0 -5
  54. package/dist/types/utils/meta.d.ts +0 -2
  55. package/dist/types/utils/storage.d.ts +0 -5
  56. package/dist/types/utils/validate.d.ts +0 -5
@@ -1,66 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.Api = Api;
7
-
8
- require("reflect-metadata");
9
-
10
- var _koaCompose = _interopRequireDefault(require("koa-compose"));
11
-
12
- var _utils = require("./utils");
13
-
14
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
-
16
- function Api(...args) {
17
- const handler = args.pop();
18
- (0, _utils.validateFunction)(handler, 'Apihandler');
19
- const operators = args;
20
- const metadataHelper = {
21
- getMetadata(key) {
22
- return Reflect.getMetadata(key, runner);
23
- },
24
-
25
- setMetadata(key, value) {
26
- return Reflect.defineMetadata(key, value, runner);
27
- }
28
-
29
- };
30
-
31
- for (const operator of operators) {
32
- if (operator.metadata) {
33
- operator.metadata(metadataHelper);
34
- }
35
- }
36
-
37
- const validateHandlers = operators.filter(operator => operator.validate).map(operator => operator.validate);
38
- const pipeHandlers = operators.filter(operator => operator.execute).map(operator => operator.execute);
39
-
40
- async function runner(inputs) {
41
- const executeHelper = {
42
- result: null,
43
-
44
- get inputs() {
45
- return inputs;
46
- },
47
-
48
- set inputs(val) {
49
- // eslint-disable-next-line no-param-reassign
50
- inputs = val;
51
- }
52
-
53
- };
54
- const stack = [...validateHandlers, ...pipeHandlers];
55
- stack.push(async (helper, next) => {
56
- const res = await handler(helper.inputs);
57
- helper.result = res;
58
- return next();
59
- });
60
- await (0, _koaCompose.default)(stack)(executeHelper);
61
- return executeHelper.result;
62
- }
63
-
64
- runner[_utils.HANDLER_WITH_META] = true;
65
- return runner;
66
- }
@@ -1,81 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.generateClient = exports.DEFAULT_CLIENT_REQUEST_CREATOR = void 0;
7
-
8
- var path = _interopRequireWildcard(require("path"));
9
-
10
- var _router = require("../router");
11
-
12
- var _result = require("./result");
13
-
14
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
-
16
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
17
-
18
- const DEFAULT_CLIENT_REQUEST_CREATOR = '@modern-js/create-request';
19
- exports.DEFAULT_CLIENT_REQUEST_CREATOR = DEFAULT_CLIENT_REQUEST_CREATOR;
20
-
21
- const generateClient = async ({
22
- resourcePath,
23
- apiDir,
24
- prefix,
25
- port,
26
- target,
27
- requestCreator,
28
- fetcher,
29
- requireResolve: _requireResolve = require.resolve
30
- }) => {
31
- if (!requestCreator) {
32
- // eslint-disable-next-line no-param-reassign
33
- requestCreator = _requireResolve(`${DEFAULT_CLIENT_REQUEST_CREATOR}${target ? `/${target}` : ''}`).replace(/\\/g, '/');
34
- } else {
35
- // 这里约束传入的 requestCreator 包也必须有两个导出 client 和 server,因为目前的机制 client 和 server 要导出不同的 configure 函数;该 api 不对使用者暴露,后续可优化
36
- let resolvedPath = requestCreator;
37
-
38
- try {
39
- resolvedPath = path.dirname(_requireResolve(requestCreator));
40
- } catch (error) {} // eslint-disable-next-line no-param-reassign
41
-
42
-
43
- requestCreator = `${resolvedPath}${target ? `/${target}` : ''}`.replace(/\\/g, '/');
44
- }
45
-
46
- const apiRouter = new _router.ApiRouter({
47
- apiDir,
48
- prefix
49
- });
50
- const handlerInfos = apiRouter.getSingleModuleHandlers(resourcePath);
51
-
52
- if (!handlerInfos) {
53
- return (0, _result.Err)(`generate client error: Cannot require module ${resourcePath}`);
54
- }
55
-
56
- let handlersCode = '';
57
-
58
- for (const handlerInfo of handlerInfos) {
59
- const {
60
- name,
61
- httpMethod,
62
- routePath
63
- } = handlerInfo;
64
- let exportStatement = `const ${name} =`;
65
-
66
- if (name.toLowerCase() === 'default') {
67
- exportStatement = 'default';
68
- }
69
-
70
- const upperHttpMethod = httpMethod.toUpperCase();
71
- const routeName = routePath;
72
- handlersCode += `export ${exportStatement} createRequest('${routeName}', '${upperHttpMethod}', process.env.PORT || ${String(port)}${fetcher ? `, fetch` : ''});
73
- `;
74
- }
75
-
76
- const importCode = `import { createRequest } from '${requestCreator}';
77
- ${fetcher ? `import { fetch } from '${fetcher}';\n` : ''}`;
78
- return (0, _result.Ok)(`${importCode}\n${handlersCode}`);
79
- };
80
-
81
- exports.generateClient = generateClient;
@@ -1,18 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
-
7
- var _generateClient = require("./generate-client");
8
-
9
- Object.keys(_generateClient).forEach(function (key) {
10
- if (key === "default" || key === "__esModule") return;
11
- if (key in exports && exports[key] === _generateClient[key]) return;
12
- Object.defineProperty(exports, key, {
13
- enumerable: true,
14
- get: function () {
15
- return _generateClient[key];
16
- }
17
- });
18
- });
@@ -1,32 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.Ok = exports.Err = void 0;
7
-
8
- // eslint-disable-next-line @typescript-eslint/no-redeclare
9
- const Err = value => {
10
- const err = {
11
- kind: 'Err',
12
- value,
13
- isErr: true,
14
- isOk: false
15
- };
16
- return err;
17
- }; // eslint-disable-next-line @typescript-eslint/no-redeclare
18
-
19
-
20
- exports.Err = Err;
21
-
22
- const Ok = value => {
23
- const ok = {
24
- kind: 'Ok',
25
- value,
26
- isErr: false,
27
- isOk: true
28
- };
29
- return ok;
30
- };
31
-
32
- exports.Ok = Ok;
@@ -1,34 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.ValidationError = exports.HttpError = void 0;
7
-
8
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
9
-
10
- class HttpError extends Error {
11
- constructor(status, message) {
12
- super(message);
13
-
14
- _defineProperty(this, "status", void 0);
15
-
16
- this.status = status;
17
- }
18
-
19
- }
20
-
21
- exports.HttpError = HttpError;
22
-
23
- class ValidationError extends HttpError {
24
- constructor(status, message) {
25
- super(status, message);
26
-
27
- _defineProperty(this, "code", void 0);
28
-
29
- this.code = 'VALIDATION_ERROR';
30
- }
31
-
32
- }
33
-
34
- exports.ValidationError = ValidationError;
@@ -1,125 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- var _exportNames = {
7
- Api: true,
8
- HttpError: true,
9
- ValidationError: true,
10
- getRelativeRuntimePath: true,
11
- HANDLER_WITH_META: true,
12
- isWithMetaHandler: true,
13
- createStorage: true,
14
- registerPaths: true
15
- };
16
- Object.defineProperty(exports, "Api", {
17
- enumerable: true,
18
- get: function () {
19
- return _api.Api;
20
- }
21
- });
22
- Object.defineProperty(exports, "HANDLER_WITH_META", {
23
- enumerable: true,
24
- get: function () {
25
- return _utils.HANDLER_WITH_META;
26
- }
27
- });
28
- Object.defineProperty(exports, "HttpError", {
29
- enumerable: true,
30
- get: function () {
31
- return _http.HttpError;
32
- }
33
- });
34
- Object.defineProperty(exports, "ValidationError", {
35
- enumerable: true,
36
- get: function () {
37
- return _http.ValidationError;
38
- }
39
- });
40
- Object.defineProperty(exports, "createStorage", {
41
- enumerable: true,
42
- get: function () {
43
- return _utils.createStorage;
44
- }
45
- });
46
- Object.defineProperty(exports, "getRelativeRuntimePath", {
47
- enumerable: true,
48
- get: function () {
49
- return _utils.getRelativeRuntimePath;
50
- }
51
- });
52
- Object.defineProperty(exports, "isWithMetaHandler", {
53
- enumerable: true,
54
- get: function () {
55
- return _utils.isWithMetaHandler;
56
- }
57
- });
58
- Object.defineProperty(exports, "registerPaths", {
59
- enumerable: true,
60
- get: function () {
61
- return _utils.registerPaths;
62
- }
63
- });
64
-
65
- var _api = require("./api");
66
-
67
- var _http = require("./errors/http");
68
-
69
- var _router = require("./router");
70
-
71
- Object.keys(_router).forEach(function (key) {
72
- if (key === "default" || key === "__esModule") return;
73
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
74
- if (key in exports && exports[key] === _router[key]) return;
75
- Object.defineProperty(exports, key, {
76
- enumerable: true,
77
- get: function () {
78
- return _router[key];
79
- }
80
- });
81
- });
82
-
83
- var _types = require("./types");
84
-
85
- Object.keys(_types).forEach(function (key) {
86
- if (key === "default" || key === "__esModule") return;
87
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
88
- if (key in exports && exports[key] === _types[key]) return;
89
- Object.defineProperty(exports, key, {
90
- enumerable: true,
91
- get: function () {
92
- return _types[key];
93
- }
94
- });
95
- });
96
-
97
- var _client = require("./client");
98
-
99
- Object.keys(_client).forEach(function (key) {
100
- if (key === "default" || key === "__esModule") return;
101
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
102
- if (key in exports && exports[key] === _client[key]) return;
103
- Object.defineProperty(exports, key, {
104
- enumerable: true,
105
- get: function () {
106
- return _client[key];
107
- }
108
- });
109
- });
110
-
111
- var _http2 = require("./operators/http");
112
-
113
- Object.keys(_http2).forEach(function (key) {
114
- if (key === "default" || key === "__esModule") return;
115
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
116
- if (key in exports && exports[key] === _http2[key]) return;
117
- Object.defineProperty(exports, key, {
118
- enumerable: true,
119
- get: function () {
120
- return _http2[key];
121
- }
122
- });
123
- });
124
-
125
- var _utils = require("./utils");
@@ -1,226 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createHttpOperator = exports.Trace = exports.SetHeaders = exports.Redirect = exports.Query = exports.Put = exports.Post = exports.Patch = exports.Params = exports.Option = exports.HttpCode = exports.Headers = exports.Head = exports.Get = exports.Delete = exports.Data = exports.Connect = void 0;
7
-
8
- var _types = require("../types");
9
-
10
- var _http = require("../errors/http");
11
-
12
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
13
-
14
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
15
-
16
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
17
-
18
- const validateInput = async (schema, input) => {
19
- try {
20
- return await schema.parseAsync(input);
21
- } catch (error) {
22
- const {
23
- z: zod
24
- } = require('zod');
25
-
26
- if (error instanceof zod.ZodError) {
27
- throw new _http.ValidationError(400, error.message);
28
- }
29
-
30
- throw error;
31
- }
32
- };
33
-
34
- const createHttpOperator = method => {
35
- return urlPath => {
36
- return {
37
- name: method,
38
-
39
- metadata({
40
- setMetadata
41
- }) {
42
- setMetadata(_types.OperatorType.Trigger, {
43
- type: _types.TriggerType.Http,
44
- path: urlPath,
45
- method
46
- });
47
- }
48
-
49
- };
50
- };
51
- };
52
-
53
- exports.createHttpOperator = createHttpOperator;
54
- const Get = createHttpOperator(_types.HttpMethod.Get);
55
- exports.Get = Get;
56
- const Post = createHttpOperator(_types.HttpMethod.Post);
57
- exports.Post = Post;
58
- const Put = createHttpOperator(_types.HttpMethod.Put);
59
- exports.Put = Put;
60
- const Delete = createHttpOperator(_types.HttpMethod.Delete);
61
- exports.Delete = Delete;
62
- const Connect = createHttpOperator(_types.HttpMethod.Connect);
63
- exports.Connect = Connect;
64
- const Trace = createHttpOperator(_types.HttpMethod.Trace);
65
- exports.Trace = Trace;
66
- const Patch = createHttpOperator(_types.HttpMethod.Patch);
67
- exports.Patch = Patch;
68
- const Option = createHttpOperator(_types.HttpMethod.Option);
69
- exports.Option = Option;
70
- const Head = createHttpOperator(_types.HttpMethod.Head);
71
- exports.Head = Head;
72
-
73
- const Data = schema => {
74
- return {
75
- name: _types.HttpMetadata.Data,
76
-
77
- metadata({
78
- setMetadata
79
- }) {
80
- setMetadata(_types.HttpMetadata.Data, schema);
81
- },
82
-
83
- async validate(helper, next) {
84
- const {
85
- inputs: {
86
- data
87
- }
88
- } = helper;
89
- helper.inputs = _objectSpread(_objectSpread({}, helper.inputs), {}, {
90
- data: await validateInput(schema, data)
91
- });
92
- return next();
93
- }
94
-
95
- };
96
- };
97
-
98
- exports.Data = Data;
99
-
100
- const Query = schema => {
101
- return {
102
- name: _types.HttpMetadata.Query,
103
-
104
- metadata({
105
- setMetadata
106
- }) {
107
- setMetadata(_types.HttpMetadata.Query, schema);
108
- },
109
-
110
- async validate(helper, next) {
111
- const {
112
- inputs: {
113
- query
114
- }
115
- } = helper;
116
- helper.inputs = _objectSpread(_objectSpread({}, helper.inputs), {}, {
117
- query: await validateInput(schema, query)
118
- });
119
- return next();
120
- }
121
-
122
- };
123
- };
124
-
125
- exports.Query = Query;
126
-
127
- const Params = schema => {
128
- return {
129
- name: _types.HttpMetadata.Params,
130
-
131
- metadata({
132
- setMetadata
133
- }) {
134
- setMetadata(_types.HttpMetadata.Params, schema);
135
- },
136
-
137
- async validate(helper, next) {
138
- const {
139
- inputs: {
140
- params
141
- }
142
- } = helper;
143
- helper.inputs = _objectSpread(_objectSpread({}, helper.inputs), {}, {
144
- params: await validateInput(schema, params)
145
- });
146
- return next();
147
- }
148
-
149
- };
150
- };
151
-
152
- exports.Params = Params;
153
-
154
- const Headers = schema => {
155
- return {
156
- name: _types.HttpMetadata.Headers,
157
-
158
- metadata({
159
- setMetadata
160
- }) {
161
- setMetadata(_types.HttpMetadata.Headers, schema);
162
- },
163
-
164
- async validate(helper, next) {
165
- const {
166
- inputs: {
167
- headers
168
- }
169
- } = helper;
170
- helper.inputs = _objectSpread(_objectSpread({}, helper.inputs), {}, {
171
- headers: await validateInput(schema, headers)
172
- });
173
- return next();
174
- }
175
-
176
- };
177
- };
178
-
179
- exports.Headers = Headers;
180
-
181
- const setResponseMeta = (helper, type, value) => {
182
- const responseMetaData = helper.getMetadata(_types.HttpMetadata.Response) || [];
183
- helper.setMetadata(_types.HttpMetadata.Response, [...responseMetaData, {
184
- type,
185
- value
186
- }]);
187
- };
188
-
189
- const HttpCode = statusCode => {
190
- return {
191
- name: 'HttpCode',
192
-
193
- metadata(helper) {
194
- setResponseMeta(helper, _types.ResponseMetaType.StatusCode, statusCode);
195
- }
196
-
197
- };
198
- };
199
-
200
- exports.HttpCode = HttpCode;
201
-
202
- const SetHeaders = headers => {
203
- return {
204
- name: 'SetHeaders',
205
-
206
- metadata(helper) {
207
- setResponseMeta(helper, _types.ResponseMetaType.Headers, headers);
208
- }
209
-
210
- };
211
- };
212
-
213
- exports.SetHeaders = SetHeaders;
214
-
215
- const Redirect = url => {
216
- return {
217
- name: 'Redirect',
218
-
219
- metadata(helper) {
220
- setResponseMeta(helper, _types.ResponseMetaType.Redirect, url);
221
- }
222
-
223
- };
224
- };
225
-
226
- exports.Redirect = Redirect;
@@ -1,29 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.INDEX_SUFFIX = exports.FRAMEWORK_MODE_LAMBDA_DIR = exports.FRAMEWORK_MODE_APP_DIR = exports.AllHttpMethods = exports.API_FILE_RULES = exports.API_DIR = exports.APIMode = void 0;
7
-
8
- var _types = require("../types");
9
-
10
- const AllHttpMethods = Object.values(_types.HttpMethod);
11
- exports.AllHttpMethods = AllHttpMethods;
12
- let APIMode;
13
- exports.APIMode = APIMode;
14
-
15
- (function (APIMode) {
16
- APIMode["FARMEWORK"] = "framework";
17
- APIMode["FUNCTION"] = "function";
18
- })(APIMode || (exports.APIMode = APIMode = {}));
19
-
20
- const FRAMEWORK_MODE_LAMBDA_DIR = 'lambda';
21
- exports.FRAMEWORK_MODE_LAMBDA_DIR = FRAMEWORK_MODE_LAMBDA_DIR;
22
- const FRAMEWORK_MODE_APP_DIR = 'app';
23
- exports.FRAMEWORK_MODE_APP_DIR = FRAMEWORK_MODE_APP_DIR;
24
- const INDEX_SUFFIX = 'index';
25
- exports.INDEX_SUFFIX = INDEX_SUFFIX;
26
- const API_DIR = 'api';
27
- exports.API_DIR = API_DIR;
28
- const API_FILE_RULES = ['**/*.[tj]s', '!**/_*', '!**/_*/**/*.[tj]s', '!**/*.test.js', '!**/*.test.ts', '!**/*.d.ts', '!__test__/*.ts', '!__tests__/*.ts', '!node_modules/**', '!bootstrap.js'];
29
- exports.API_FILE_RULES = API_FILE_RULES;