@modern-js/bff-core 2.0.0-beta.2 → 2.0.0-beta.4

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 (40) hide show
  1. package/CHANGELOG.md +72 -0
  2. package/dist/js/modern/api.js +49 -25
  3. package/dist/js/modern/client/generate-client.js +51 -24
  4. package/dist/js/modern/client/index.js +1 -1
  5. package/dist/js/modern/client/result.js +9 -8
  6. package/dist/js/modern/errors/http.js +8 -7
  7. package/dist/js/modern/index.js +19 -3
  8. package/dist/js/modern/operators/http.js +139 -87
  9. package/dist/js/modern/router/constants.js +31 -11
  10. package/dist/js/modern/router/index.js +66 -69
  11. package/dist/js/modern/router/types.js +0 -1
  12. package/dist/js/modern/router/utils.js +36 -37
  13. package/dist/js/modern/types.js +45 -37
  14. package/dist/js/modern/utils/alias.js +32 -30
  15. package/dist/js/modern/utils/debug.js +5 -2
  16. package/dist/js/modern/utils/index.js +5 -2
  17. package/dist/js/modern/utils/meta.js +8 -4
  18. package/dist/js/modern/utils/storage.js +8 -4
  19. package/dist/js/modern/utils/validate.js +22 -23
  20. package/dist/js/node/api.js +74 -32
  21. package/dist/js/node/client/generate-client.js +79 -37
  22. package/dist/js/node/client/index.js +17 -16
  23. package/dist/js/node/client/result.js +26 -14
  24. package/dist/js/node/errors/http.js +23 -11
  25. package/dist/js/node/index.js +35 -112
  26. package/dist/js/node/operators/http.js +166 -124
  27. package/dist/js/node/router/constants.js +50 -24
  28. package/dist/js/node/router/index.js +108 -127
  29. package/dist/js/node/router/types.js +0 -5
  30. package/dist/js/node/router/utils.js +63 -51
  31. package/dist/js/node/types.js +62 -47
  32. package/dist/js/node/utils/alias.js +57 -42
  33. package/dist/js/node/utils/debug.js +23 -8
  34. package/dist/js/node/utils/index.js +25 -60
  35. package/dist/js/node/utils/meta.js +25 -10
  36. package/dist/js/node/utils/storage.js +32 -11
  37. package/dist/js/node/utils/validate.js +43 -28
  38. package/dist/types/router/constants.d.ts +1 -0
  39. package/dist/types/router/index.d.ts +1 -0
  40. package/package.json +5 -10
@@ -1,36 +1,100 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var stdin_exports = {};
19
+ __export(stdin_exports, {
20
+ Connect: () => Connect,
21
+ Data: () => Data,
22
+ Delete: () => Delete,
23
+ Get: () => Get,
24
+ Head: () => Head,
25
+ Headers: () => Headers,
26
+ HttpCode: () => HttpCode,
27
+ Option: () => Option,
28
+ Params: () => Params,
29
+ Patch: () => Patch,
30
+ Post: () => Post,
31
+ Put: () => Put,
32
+ Query: () => Query,
33
+ Redirect: () => Redirect,
34
+ SetHeaders: () => SetHeaders,
35
+ Trace: () => Trace,
36
+ createHttpOperator: () => createHttpOperator
5
37
  });
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
- var _types = require("../types");
8
- var _http = require("../errors/http");
9
- 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; }
10
- 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; }
11
- 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; }
12
- const validateInput = async (schema, input) => {
38
+ module.exports = __toCommonJS(stdin_exports);
39
+ var import_types = require("../types");
40
+ var import_http = require("../errors/http");
41
+ var __defProp2 = Object.defineProperty;
42
+ var __defProps = Object.defineProperties;
43
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
44
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
45
+ var __hasOwnProp2 = Object.prototype.hasOwnProperty;
46
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
47
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
48
+ var __spreadValues = (a, b) => {
49
+ for (var prop in b || (b = {}))
50
+ if (__hasOwnProp2.call(b, prop))
51
+ __defNormalProp(a, prop, b[prop]);
52
+ if (__getOwnPropSymbols)
53
+ for (var prop of __getOwnPropSymbols(b)) {
54
+ if (__propIsEnum.call(b, prop))
55
+ __defNormalProp(a, prop, b[prop]);
56
+ }
57
+ return a;
58
+ };
59
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
60
+ var __async = (__this, __arguments, generator) => {
61
+ return new Promise((resolve, reject) => {
62
+ var fulfilled = (value) => {
63
+ try {
64
+ step(generator.next(value));
65
+ } catch (e) {
66
+ reject(e);
67
+ }
68
+ };
69
+ var rejected = (value) => {
70
+ try {
71
+ step(generator.throw(value));
72
+ } catch (e) {
73
+ reject(e);
74
+ }
75
+ };
76
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
77
+ step((generator = generator.apply(__this, __arguments)).next());
78
+ });
79
+ };
80
+ const validateInput = (schema, input) => __async(void 0, null, function* () {
13
81
  try {
14
- return await schema.parseAsync(input);
82
+ return yield schema.parseAsync(input);
15
83
  } catch (error) {
16
- const {
17
- z: zod
18
- } = require('zod');
84
+ const { z: zod } = require("zod");
19
85
  if (error instanceof zod.ZodError) {
20
- throw new _http.ValidationError(400, error.message);
86
+ throw new import_http.ValidationError(400, error.message);
21
87
  }
22
88
  throw error;
23
89
  }
24
- };
25
- const createHttpOperator = method => {
26
- return urlPath => {
90
+ });
91
+ const createHttpOperator = (method) => {
92
+ return (urlPath) => {
27
93
  return {
28
94
  name: method,
29
- metadata({
30
- setMetadata
31
- }) {
32
- setMetadata(_types.OperatorType.Trigger, {
33
- type: _types.TriggerType.Http,
95
+ metadata({ setMetadata }) {
96
+ setMetadata(import_types.OperatorType.Trigger, {
97
+ type: import_types.TriggerType.Http,
34
98
  path: urlPath,
35
99
  method
36
100
  });
@@ -38,144 +102,122 @@ const createHttpOperator = method => {
38
102
  };
39
103
  };
40
104
  };
41
- exports.createHttpOperator = createHttpOperator;
42
- const Get = createHttpOperator(_types.HttpMethod.Get);
43
- exports.Get = Get;
44
- const Post = createHttpOperator(_types.HttpMethod.Post);
45
- exports.Post = Post;
46
- const Put = createHttpOperator(_types.HttpMethod.Put);
47
- exports.Put = Put;
48
- const Delete = createHttpOperator(_types.HttpMethod.Delete);
49
- exports.Delete = Delete;
50
- const Connect = createHttpOperator(_types.HttpMethod.Connect);
51
- exports.Connect = Connect;
52
- const Trace = createHttpOperator(_types.HttpMethod.Trace);
53
- exports.Trace = Trace;
54
- const Patch = createHttpOperator(_types.HttpMethod.Patch);
55
- exports.Patch = Patch;
56
- const Option = createHttpOperator(_types.HttpMethod.Option);
57
- exports.Option = Option;
58
- const Head = createHttpOperator(_types.HttpMethod.Head);
59
- exports.Head = Head;
60
- const Data = schema => {
105
+ const Get = createHttpOperator(import_types.HttpMethod.Get);
106
+ const Post = createHttpOperator(import_types.HttpMethod.Post);
107
+ const Put = createHttpOperator(import_types.HttpMethod.Put);
108
+ const Delete = createHttpOperator(import_types.HttpMethod.Delete);
109
+ const Connect = createHttpOperator(import_types.HttpMethod.Connect);
110
+ const Trace = createHttpOperator(import_types.HttpMethod.Trace);
111
+ const Patch = createHttpOperator(import_types.HttpMethod.Patch);
112
+ const Option = createHttpOperator(import_types.HttpMethod.Option);
113
+ const Head = createHttpOperator(import_types.HttpMethod.Head);
114
+ const Data = (schema) => {
61
115
  return {
62
- name: _types.HttpMetadata.Data,
63
- metadata({
64
- setMetadata
65
- }) {
66
- setMetadata(_types.HttpMetadata.Data, schema);
116
+ name: import_types.HttpMetadata.Data,
117
+ metadata({ setMetadata }) {
118
+ setMetadata(import_types.HttpMetadata.Data, schema);
67
119
  },
68
- async validate(helper, next) {
69
- const {
70
- inputs: {
71
- data
72
- }
73
- } = helper;
74
- helper.inputs = _objectSpread(_objectSpread({}, helper.inputs), {}, {
75
- data: await validateInput(schema, data)
120
+ validate(helper, next) {
121
+ return __async(this, null, function* () {
122
+ const {
123
+ inputs: { data }
124
+ } = helper;
125
+ helper.inputs = __spreadProps(__spreadValues({}, helper.inputs), {
126
+ data: yield validateInput(schema, data)
127
+ });
128
+ return next();
76
129
  });
77
- return next();
78
130
  }
79
131
  };
80
132
  };
81
- exports.Data = Data;
82
- const Query = schema => {
133
+ const Query = (schema) => {
83
134
  return {
84
- name: _types.HttpMetadata.Query,
85
- metadata({
86
- setMetadata
87
- }) {
88
- setMetadata(_types.HttpMetadata.Query, schema);
135
+ name: import_types.HttpMetadata.Query,
136
+ metadata({ setMetadata }) {
137
+ setMetadata(import_types.HttpMetadata.Query, schema);
89
138
  },
90
- async validate(helper, next) {
91
- const {
92
- inputs: {
93
- query
94
- }
95
- } = helper;
96
- helper.inputs = _objectSpread(_objectSpread({}, helper.inputs), {}, {
97
- query: await validateInput(schema, query)
139
+ validate(helper, next) {
140
+ return __async(this, null, function* () {
141
+ const {
142
+ inputs: { query }
143
+ } = helper;
144
+ helper.inputs = __spreadProps(__spreadValues({}, helper.inputs), {
145
+ query: yield validateInput(schema, query)
146
+ });
147
+ return next();
98
148
  });
99
- return next();
100
149
  }
101
150
  };
102
151
  };
103
- exports.Query = Query;
104
- const Params = schema => {
152
+ const Params = (schema) => {
105
153
  return {
106
- name: _types.HttpMetadata.Params,
107
- metadata({
108
- setMetadata
109
- }) {
110
- setMetadata(_types.HttpMetadata.Params, schema);
154
+ name: import_types.HttpMetadata.Params,
155
+ metadata({ setMetadata }) {
156
+ setMetadata(import_types.HttpMetadata.Params, schema);
111
157
  },
112
- async validate(helper, next) {
113
- const {
114
- inputs: {
115
- params
116
- }
117
- } = helper;
118
- helper.inputs = _objectSpread(_objectSpread({}, helper.inputs), {}, {
119
- params: await validateInput(schema, params)
158
+ validate(helper, next) {
159
+ return __async(this, null, function* () {
160
+ const {
161
+ inputs: { params }
162
+ } = helper;
163
+ helper.inputs = __spreadProps(__spreadValues({}, helper.inputs), {
164
+ params: yield validateInput(schema, params)
165
+ });
166
+ return next();
120
167
  });
121
- return next();
122
168
  }
123
169
  };
124
170
  };
125
- exports.Params = Params;
126
- const Headers = schema => {
171
+ const Headers = (schema) => {
127
172
  return {
128
- name: _types.HttpMetadata.Headers,
129
- metadata({
130
- setMetadata
131
- }) {
132
- setMetadata(_types.HttpMetadata.Headers, schema);
173
+ name: import_types.HttpMetadata.Headers,
174
+ metadata({ setMetadata }) {
175
+ setMetadata(import_types.HttpMetadata.Headers, schema);
133
176
  },
134
- async validate(helper, next) {
135
- const {
136
- inputs: {
137
- headers
138
- }
139
- } = helper;
140
- helper.inputs = _objectSpread(_objectSpread({}, helper.inputs), {}, {
141
- headers: await validateInput(schema, headers)
177
+ validate(helper, next) {
178
+ return __async(this, null, function* () {
179
+ const {
180
+ inputs: { headers }
181
+ } = helper;
182
+ helper.inputs = __spreadProps(__spreadValues({}, helper.inputs), {
183
+ headers: yield validateInput(schema, headers)
184
+ });
185
+ return next();
142
186
  });
143
- return next();
144
187
  }
145
188
  };
146
189
  };
147
- exports.Headers = Headers;
148
190
  const setResponseMeta = (helper, type, value) => {
149
- const responseMetaData = helper.getMetadata(_types.HttpMetadata.Response) || [];
150
- helper.setMetadata(_types.HttpMetadata.Response, [...responseMetaData, {
151
- type,
152
- value
153
- }]);
191
+ const responseMetaData = helper.getMetadata(import_types.HttpMetadata.Response) || [];
192
+ helper.setMetadata(import_types.HttpMetadata.Response, [
193
+ ...responseMetaData,
194
+ {
195
+ type,
196
+ value
197
+ }
198
+ ]);
154
199
  };
155
- const HttpCode = statusCode => {
200
+ const HttpCode = (statusCode) => {
156
201
  return {
157
- name: 'HttpCode',
202
+ name: "HttpCode",
158
203
  metadata(helper) {
159
- setResponseMeta(helper, _types.ResponseMetaType.StatusCode, statusCode);
204
+ setResponseMeta(helper, import_types.ResponseMetaType.StatusCode, statusCode);
160
205
  }
161
206
  };
162
207
  };
163
- exports.HttpCode = HttpCode;
164
- const SetHeaders = headers => {
208
+ const SetHeaders = (headers) => {
165
209
  return {
166
- name: 'SetHeaders',
210
+ name: "SetHeaders",
167
211
  metadata(helper) {
168
- setResponseMeta(helper, _types.ResponseMetaType.Headers, headers);
212
+ setResponseMeta(helper, import_types.ResponseMetaType.Headers, headers);
169
213
  }
170
214
  };
171
215
  };
172
- exports.SetHeaders = SetHeaders;
173
- const Redirect = url => {
216
+ const Redirect = (url) => {
174
217
  return {
175
- name: 'Redirect',
218
+ name: "Redirect",
176
219
  metadata(helper) {
177
- setResponseMeta(helper, _types.ResponseMetaType.Redirect, url);
220
+ setResponseMeta(helper, import_types.ResponseMetaType.Redirect, url);
178
221
  }
179
222
  };
180
223
  };
181
- exports.Redirect = Redirect;
@@ -1,25 +1,51 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var stdin_exports = {};
19
+ __export(stdin_exports, {
20
+ APIMode: () => APIMode,
21
+ API_DIR: () => API_DIR,
22
+ API_FILE_RULES: () => API_FILE_RULES,
23
+ AllHttpMethods: () => AllHttpMethods,
24
+ FRAMEWORK_MODE_APP_DIR: () => FRAMEWORK_MODE_APP_DIR,
25
+ FRAMEWORK_MODE_LAMBDA_DIR: () => FRAMEWORK_MODE_LAMBDA_DIR,
26
+ INDEX_SUFFIX: () => INDEX_SUFFIX
5
27
  });
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
- var _types = require("../types");
8
- const AllHttpMethods = Object.values(_types.HttpMethod);
9
- exports.AllHttpMethods = AllHttpMethods;
10
- let APIMode;
11
- exports.APIMode = APIMode;
12
- (function (APIMode) {
13
- APIMode["FARMEWORK"] = "framework";
14
- APIMode["FUNCTION"] = "function";
15
- })(APIMode || (exports.APIMode = APIMode = {}));
16
- const FRAMEWORK_MODE_LAMBDA_DIR = 'lambda';
17
- exports.FRAMEWORK_MODE_LAMBDA_DIR = FRAMEWORK_MODE_LAMBDA_DIR;
18
- const FRAMEWORK_MODE_APP_DIR = 'app';
19
- exports.FRAMEWORK_MODE_APP_DIR = FRAMEWORK_MODE_APP_DIR;
20
- const INDEX_SUFFIX = 'index';
21
- exports.INDEX_SUFFIX = INDEX_SUFFIX;
22
- const API_DIR = 'api';
23
- exports.API_DIR = API_DIR;
24
- const API_FILE_RULES = ['**/*.[tj]s', '!**/_*', '!**/_*/**/*.[tj]s', '!**/*.test.js', '!**/*.test.ts', '!**/*.d.ts', '!__test__/*.ts', '!__tests__/*.ts', '!node_modules/**', '!bootstrap.js'];
25
- exports.API_FILE_RULES = API_FILE_RULES;
28
+ module.exports = __toCommonJS(stdin_exports);
29
+ var import_types = require("../types");
30
+ const AllHttpMethods = Object.values(import_types.HttpMethod);
31
+ var APIMode = /* @__PURE__ */ ((APIMode2) => {
32
+ APIMode2["FARMEWORK"] = "framework";
33
+ APIMode2["FUNCTION"] = "function";
34
+ return APIMode2;
35
+ })(APIMode || {});
36
+ const FRAMEWORK_MODE_LAMBDA_DIR = "lambda";
37
+ const FRAMEWORK_MODE_APP_DIR = "app";
38
+ const INDEX_SUFFIX = "index";
39
+ const API_DIR = "api";
40
+ const API_FILE_RULES = [
41
+ "**/*.[tj]s",
42
+ "!**/_*",
43
+ "!**/_*/**/*.[tj]s",
44
+ "!**/*.test.js",
45
+ "!**/*.test.ts",
46
+ "!**/*.d.ts",
47
+ "!__test__/*.ts",
48
+ "!__tests__/*.ts",
49
+ "!node_modules/**",
50
+ "!bootstrap.js"
51
+ ];