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