@modern-js/bff-core 2.69.5 → 3.0.0-alpha.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 (77) hide show
  1. package/dist/cjs/api.js +82 -78
  2. package/dist/cjs/client/generateClient.js +90 -76
  3. package/dist/cjs/client/index.js +55 -19
  4. package/dist/cjs/client/result.js +51 -42
  5. package/dist/cjs/compatible.js +17 -15
  6. package/dist/cjs/errors/http.js +43 -34
  7. package/dist/cjs/index.js +169 -54
  8. package/dist/cjs/operators/http.js +213 -212
  9. package/dist/cjs/router/constants.js +63 -57
  10. package/dist/cjs/router/index.js +271 -291
  11. package/dist/cjs/router/types.js +17 -15
  12. package/dist/cjs/router/utils.js +90 -92
  13. package/dist/cjs/types.js +84 -71
  14. package/dist/cjs/utils/alias.js +100 -103
  15. package/dist/cjs/utils/debug.js +34 -26
  16. package/dist/cjs/utils/index.js +98 -34
  17. package/dist/cjs/utils/meta.js +45 -38
  18. package/dist/cjs/utils/storage.js +58 -68
  19. package/dist/cjs/utils/validate.js +73 -72
  20. package/dist/esm/api.mjs +44 -0
  21. package/dist/esm/client/generateClient.mjs +60 -0
  22. package/dist/esm/client/result.mjs +19 -0
  23. package/dist/esm/compatible.mjs +0 -0
  24. package/dist/esm/errors/http.mjs +13 -0
  25. package/dist/esm/index.mjs +8 -0
  26. package/dist/esm/operators/http.mjs +135 -0
  27. package/dist/esm/router/constants.mjs +19 -0
  28. package/dist/esm/router/index.mjs +186 -0
  29. package/dist/esm/router/types.mjs +0 -0
  30. package/dist/esm/router/utils.mjs +42 -0
  31. package/dist/esm/types.mjs +39 -0
  32. package/dist/esm/utils/alias.mjs +57 -0
  33. package/dist/esm/utils/debug.mjs +3 -0
  34. package/dist/esm/utils/{index.js → index.mjs} +2 -4
  35. package/dist/esm/utils/meta.mjs +5 -0
  36. package/dist/esm/utils/storage.mjs +30 -0
  37. package/dist/esm/utils/validate.mjs +32 -0
  38. package/dist/esm-node/api.mjs +44 -0
  39. package/dist/esm-node/client/generateClient.mjs +60 -0
  40. package/dist/esm-node/client/index.mjs +1 -0
  41. package/dist/esm-node/client/result.mjs +19 -0
  42. package/dist/esm-node/errors/http.mjs +13 -0
  43. package/dist/esm-node/index.mjs +8 -0
  44. package/dist/esm-node/operators/http.mjs +135 -0
  45. package/dist/esm-node/router/constants.mjs +19 -0
  46. package/dist/esm-node/router/index.mjs +186 -0
  47. package/dist/esm-node/router/utils.mjs +42 -0
  48. package/dist/esm-node/types.mjs +39 -0
  49. package/dist/esm-node/utils/alias.mjs +57 -0
  50. package/dist/esm-node/utils/debug.mjs +3 -0
  51. package/dist/esm-node/utils/index.mjs +6 -0
  52. package/dist/esm-node/utils/meta.mjs +5 -0
  53. package/dist/esm-node/utils/storage.mjs +30 -0
  54. package/dist/esm-node/utils/validate.mjs +32 -0
  55. package/dist/types/client/generateClient.d.ts +1 -1
  56. package/dist/types/router/constants.d.ts +0 -10
  57. package/dist/types/router/index.d.ts +0 -5
  58. package/package.json +18 -18
  59. package/rslib.config.mts +4 -0
  60. package/dist/esm/api.js +0 -50
  61. package/dist/esm/client/generateClient.js +0 -60
  62. package/dist/esm/client/result.js +0 -22
  63. package/dist/esm/errors/http.js +0 -16
  64. package/dist/esm/index.js +0 -19
  65. package/dist/esm/operators/http.js +0 -178
  66. package/dist/esm/router/constants.js +0 -32
  67. package/dist/esm/router/index.js +0 -261
  68. package/dist/esm/router/utils.js +0 -62
  69. package/dist/esm/types.js +0 -46
  70. package/dist/esm/utils/alias.js +0 -75
  71. package/dist/esm/utils/debug.js +0 -5
  72. package/dist/esm/utils/meta.js +0 -14
  73. package/dist/esm/utils/storage.js +0 -40
  74. package/dist/esm/utils/validate.js +0 -45
  75. /package/dist/esm/client/{index.js → index.mjs} +0 -0
  76. /package/dist/{esm/compatible.js → esm-node/compatible.mjs} +0 -0
  77. /package/dist/{esm/router/types.js → esm-node/router/types.mjs} +0 -0
@@ -1,37 +1,101 @@
1
1
  "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
2
+ var __webpack_modules__ = {
3
+ "./alias" (module) {
4
+ module.exports = require("./alias.js");
5
+ },
6
+ "./debug" (module) {
7
+ module.exports = require("./debug.js");
8
+ },
9
+ "./meta" (module) {
10
+ module.exports = require("./meta.js");
11
+ },
12
+ "./storage" (module) {
13
+ module.exports = require("./storage.js");
14
+ },
15
+ "./validate" (module) {
16
+ module.exports = require("./validate.js");
17
+ }
9
18
  };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
19
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
- var utils_exports = {};
21
- __export(utils_exports, {
22
- debug: () => import_debug.debug
23
- });
24
- module.exports = __toCommonJS(utils_exports);
25
- __reExport(utils_exports, require("./storage"), module.exports);
26
- __reExport(utils_exports, require("./alias"), module.exports);
27
- var import_debug = require("./debug");
28
- __reExport(utils_exports, require("./meta"), module.exports);
29
- __reExport(utils_exports, require("./validate"), module.exports);
30
- // Annotate the CommonJS export names for ESM import in node:
31
- 0 && (module.exports = {
32
- debug,
33
- ...require("./storage"),
34
- ...require("./alias"),
35
- ...require("./meta"),
36
- ...require("./validate")
19
+ var __webpack_module_cache__ = {};
20
+ function __webpack_require__(moduleId) {
21
+ var cachedModule = __webpack_module_cache__[moduleId];
22
+ if (void 0 !== cachedModule) return cachedModule.exports;
23
+ var module = __webpack_module_cache__[moduleId] = {
24
+ exports: {}
25
+ };
26
+ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
27
+ return module.exports;
28
+ }
29
+ (()=>{
30
+ __webpack_require__.n = (module)=>{
31
+ var getter = module && module.__esModule ? ()=>module['default'] : ()=>module;
32
+ __webpack_require__.d(getter, {
33
+ a: getter
34
+ });
35
+ return getter;
36
+ };
37
+ })();
38
+ (()=>{
39
+ __webpack_require__.d = (exports1, definition)=>{
40
+ for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
41
+ enumerable: true,
42
+ get: definition[key]
43
+ });
44
+ };
45
+ })();
46
+ (()=>{
47
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
48
+ })();
49
+ (()=>{
50
+ __webpack_require__.r = (exports1)=>{
51
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
52
+ value: 'Module'
53
+ });
54
+ Object.defineProperty(exports1, '__esModule', {
55
+ value: true
56
+ });
57
+ };
58
+ })();
59
+ var __webpack_exports__ = {};
60
+ (()=>{
61
+ __webpack_require__.r(__webpack_exports__);
62
+ __webpack_require__.d(__webpack_exports__, {
63
+ debug: ()=>_debug__rspack_import_2.debug
64
+ });
65
+ var _storage__rspack_import_0 = __webpack_require__("./storage");
66
+ var __rspack_reexport = {};
67
+ for(const __rspack_import_key in _storage__rspack_import_0)if ([
68
+ "debug",
69
+ "default"
70
+ ].indexOf(__rspack_import_key) < 0) __rspack_reexport[__rspack_import_key] = ()=>_storage__rspack_import_0[__rspack_import_key];
71
+ __webpack_require__.d(__webpack_exports__, __rspack_reexport);
72
+ var _alias__rspack_import_1 = __webpack_require__("./alias");
73
+ var __rspack_reexport = {};
74
+ for(const __rspack_import_key in _alias__rspack_import_1)if ([
75
+ "debug",
76
+ "default"
77
+ ].indexOf(__rspack_import_key) < 0) __rspack_reexport[__rspack_import_key] = ()=>_alias__rspack_import_1[__rspack_import_key];
78
+ __webpack_require__.d(__webpack_exports__, __rspack_reexport);
79
+ var _debug__rspack_import_2 = __webpack_require__("./debug");
80
+ var _meta__rspack_import_3 = __webpack_require__("./meta");
81
+ var __rspack_reexport = {};
82
+ for(const __rspack_import_key in _meta__rspack_import_3)if ([
83
+ "debug",
84
+ "default"
85
+ ].indexOf(__rspack_import_key) < 0) __rspack_reexport[__rspack_import_key] = ()=>_meta__rspack_import_3[__rspack_import_key];
86
+ __webpack_require__.d(__webpack_exports__, __rspack_reexport);
87
+ var _validate__rspack_import_4 = __webpack_require__("./validate");
88
+ var __rspack_reexport = {};
89
+ for(const __rspack_import_key in _validate__rspack_import_4)if ([
90
+ "debug",
91
+ "default"
92
+ ].indexOf(__rspack_import_key) < 0) __rspack_reexport[__rspack_import_key] = ()=>_validate__rspack_import_4[__rspack_import_key];
93
+ __webpack_require__.d(__webpack_exports__, __rspack_reexport);
94
+ })();
95
+ exports.debug = __webpack_exports__.debug;
96
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
97
+ "debug"
98
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
99
+ Object.defineProperty(exports, '__esModule', {
100
+ value: true
37
101
  });
@@ -1,41 +1,48 @@
1
1
  "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var meta_exports = {};
20
- __export(meta_exports, {
21
- HANDLER_WITH_META: () => HANDLER_WITH_META,
22
- INPUT_PARAMS_DECIDER: () => INPUT_PARAMS_DECIDER,
23
- isInputParamsDeciderHandler: () => isInputParamsDeciderHandler,
24
- isWithMetaHandler: () => isWithMetaHandler
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, definition)=>{
5
+ for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
6
+ enumerable: true,
7
+ get: definition[key]
8
+ });
9
+ };
10
+ })();
11
+ (()=>{
12
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
13
+ })();
14
+ (()=>{
15
+ __webpack_require__.r = (exports1)=>{
16
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
17
+ value: 'Module'
18
+ });
19
+ Object.defineProperty(exports1, '__esModule', {
20
+ value: true
21
+ });
22
+ };
23
+ })();
24
+ var __webpack_exports__ = {};
25
+ __webpack_require__.r(__webpack_exports__);
26
+ __webpack_require__.d(__webpack_exports__, {
27
+ HANDLER_WITH_META: ()=>HANDLER_WITH_META,
28
+ INPUT_PARAMS_DECIDER: ()=>INPUT_PARAMS_DECIDER,
29
+ isInputParamsDeciderHandler: ()=>isInputParamsDeciderHandler,
30
+ isWithMetaHandler: ()=>isWithMetaHandler
25
31
  });
26
- module.exports = __toCommonJS(meta_exports);
27
- const HANDLER_WITH_META = "HANDLER_WITH_META";
28
- const INPUT_PARAMS_DECIDER = "INPUT_PARAMS_DECIDER";
29
- const isWithMetaHandler = (handler) => {
30
- return typeof handler === "function" && handler[HANDLER_WITH_META];
31
- };
32
- const isInputParamsDeciderHandler = (handler) => {
33
- return typeof handler === "function" && handler[INPUT_PARAMS_DECIDER];
34
- };
35
- // Annotate the CommonJS export names for ESM import in node:
36
- 0 && (module.exports = {
37
- HANDLER_WITH_META,
38
- INPUT_PARAMS_DECIDER,
39
- isInputParamsDeciderHandler,
40
- isWithMetaHandler
32
+ const HANDLER_WITH_META = 'HANDLER_WITH_META';
33
+ const INPUT_PARAMS_DECIDER = 'INPUT_PARAMS_DECIDER';
34
+ const isWithMetaHandler = (handler)=>'function' == typeof handler && handler[HANDLER_WITH_META];
35
+ const isInputParamsDeciderHandler = (handler)=>'function' == typeof handler && handler[INPUT_PARAMS_DECIDER];
36
+ exports.HANDLER_WITH_META = __webpack_exports__.HANDLER_WITH_META;
37
+ exports.INPUT_PARAMS_DECIDER = __webpack_exports__.INPUT_PARAMS_DECIDER;
38
+ exports.isInputParamsDeciderHandler = __webpack_exports__.isInputParamsDeciderHandler;
39
+ exports.isWithMetaHandler = __webpack_exports__.isWithMetaHandler;
40
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
41
+ "HANDLER_WITH_META",
42
+ "INPUT_PARAMS_DECIDER",
43
+ "isInputParamsDeciderHandler",
44
+ "isWithMetaHandler"
45
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
46
+ Object.defineProperty(exports, '__esModule', {
47
+ value: true
41
48
  });
@@ -1,74 +1,64 @@
1
1
  "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var storage_exports = {};
30
- __export(storage_exports, {
31
- createStorage: () => createStorage
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, definition)=>{
5
+ for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
6
+ enumerable: true,
7
+ get: definition[key]
8
+ });
9
+ };
10
+ })();
11
+ (()=>{
12
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
13
+ })();
14
+ (()=>{
15
+ __webpack_require__.r = (exports1)=>{
16
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
17
+ value: 'Module'
18
+ });
19
+ Object.defineProperty(exports1, '__esModule', {
20
+ value: true
21
+ });
22
+ };
23
+ })();
24
+ var __webpack_exports__ = {};
25
+ __webpack_require__.r(__webpack_exports__);
26
+ __webpack_require__.d(__webpack_exports__, {
27
+ createStorage: ()=>createStorage
32
28
  });
33
- module.exports = __toCommonJS(storage_exports);
34
- var ah = __toESM(require("async_hooks"));
35
- const createStorage = () => {
36
- let storage;
37
- if (typeof ah.AsyncLocalStorage !== "undefined") {
38
- storage = new ah.AsyncLocalStorage();
39
- }
40
- const run = (context, cb) => {
41
- if (!storage) {
42
- throw new Error(`Unable to use async_hook, please confirm the node version >= 12.17
29
+ const external_async_hooks_namespaceObject = require("async_hooks");
30
+ const createStorage = ()=>{
31
+ let storage;
32
+ if (void 0 !== external_async_hooks_namespaceObject.AsyncLocalStorage) storage = new external_async_hooks_namespaceObject.AsyncLocalStorage();
33
+ const run = (context, cb)=>{
34
+ if (!storage) throw new Error(`Unable to use async_hook, please confirm the node version >= 12.17
43
35
  `);
44
- }
45
- return new Promise((resolve, reject) => {
46
- storage.run(context, () => {
47
- try {
48
- return resolve(cb());
49
- } catch (error) {
50
- return reject(error);
51
- }
52
- });
53
- });
54
- };
55
- const useContext = () => {
56
- if (!storage) {
57
- throw new Error(`Unable to use async_hook, please confirm the node version >= 12.17
36
+ return new Promise((resolve, reject)=>{
37
+ storage.run(context, ()=>{
38
+ try {
39
+ return resolve(cb());
40
+ } catch (error) {
41
+ return reject(error);
42
+ }
43
+ });
44
+ });
45
+ };
46
+ const useContext = ()=>{
47
+ if (!storage) throw new Error(`Unable to use async_hook, please confirm the node version >= 12.17
58
48
  `);
59
- }
60
- const context = storage.getStore();
61
- if (!context) {
62
- throw new Error(`Can't call useContext out of scope, it should be placed in the bff function`);
63
- }
64
- return context;
65
- };
66
- return {
67
- run,
68
- useContext
69
- };
49
+ const context = storage.getStore();
50
+ if (!context) throw new Error("Can't call useContext out of scope, it should be placed in the bff function");
51
+ return context;
52
+ };
53
+ return {
54
+ run,
55
+ useContext
56
+ };
70
57
  };
71
- // Annotate the CommonJS export names for ESM import in node:
72
- 0 && (module.exports = {
73
- createStorage
58
+ exports.createStorage = __webpack_exports__.createStorage;
59
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
60
+ "createStorage"
61
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
62
+ Object.defineProperty(exports, '__esModule', {
63
+ value: true
74
64
  });
@@ -1,81 +1,82 @@
1
1
  "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var validate_exports = {};
30
- __export(validate_exports, {
31
- ERR_INVALID_ARG_TYPE: () => ERR_INVALID_ARG_TYPE,
32
- getTypeErrorMessage: () => getTypeErrorMessage,
33
- validateFunction: () => validateFunction
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.n = (module)=>{
5
+ var getter = module && module.__esModule ? ()=>module['default'] : ()=>module;
6
+ __webpack_require__.d(getter, {
7
+ a: getter
8
+ });
9
+ return getter;
10
+ };
11
+ })();
12
+ (()=>{
13
+ __webpack_require__.d = (exports1, definition)=>{
14
+ for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
15
+ enumerable: true,
16
+ get: definition[key]
17
+ });
18
+ };
19
+ })();
20
+ (()=>{
21
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
22
+ })();
23
+ (()=>{
24
+ __webpack_require__.r = (exports1)=>{
25
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
26
+ value: 'Module'
27
+ });
28
+ Object.defineProperty(exports1, '__esModule', {
29
+ value: true
30
+ });
31
+ };
32
+ })();
33
+ var __webpack_exports__ = {};
34
+ __webpack_require__.r(__webpack_exports__);
35
+ __webpack_require__.d(__webpack_exports__, {
36
+ ERR_INVALID_ARG_TYPE: ()=>ERR_INVALID_ARG_TYPE,
37
+ getTypeErrorMessage: ()=>getTypeErrorMessage,
38
+ validateFunction: ()=>validateFunction
34
39
  });
35
- module.exports = __toCommonJS(validate_exports);
36
- var import_util = __toESM(require("util"));
37
- const getTypeErrorMessage = (actual) => {
38
- let msg = "";
39
- if (actual == null) {
40
- msg += `. Received ${actual}`;
41
- } else if (typeof actual === "function" && actual.name) {
42
- msg += `. Received function ${actual.name}`;
43
- } else if (typeof actual === "object") {
44
- var _actual_constructor;
45
- if ((_actual_constructor = actual.constructor) === null || _actual_constructor === void 0 ? void 0 : _actual_constructor.name) {
46
- msg += `. Received an instance of ${actual.constructor.name}`;
47
- } else {
48
- const inspected = import_util.default.inspect(actual, {
49
- depth: -1
50
- });
51
- msg += `. Received ${inspected}`;
40
+ const external_util_namespaceObject = require("util");
41
+ var external_util_default = /*#__PURE__*/ __webpack_require__.n(external_util_namespaceObject);
42
+ const getTypeErrorMessage = (actual)=>{
43
+ let msg = '';
44
+ if (null == actual) msg += `. Received ${actual}`;
45
+ else if ('function' == typeof actual && actual.name) msg += `. Received function ${actual.name}`;
46
+ else if ('object' == typeof actual) if (actual.constructor?.name) msg += `. Received an instance of ${actual.constructor.name}`;
47
+ else {
48
+ const inspected = external_util_default().inspect(actual, {
49
+ depth: -1
50
+ });
51
+ msg += `. Received ${inspected}`;
52
52
  }
53
- } else {
54
- let inspected = import_util.default.inspect(actual, {
55
- colors: false
56
- });
57
- if (inspected.length > 25) {
58
- inspected = `${inspected.slice(0, 25)}...`;
53
+ else {
54
+ let inspected = external_util_default().inspect(actual, {
55
+ colors: false
56
+ });
57
+ if (inspected.length > 25) inspected = `${inspected.slice(0, 25)}...`;
58
+ msg += `. Received type ${typeof actual} (${inspected})`;
59
59
  }
60
- msg += `. Received type ${typeof actual} (${inspected})`;
61
- }
62
- return msg;
60
+ return msg;
63
61
  };
64
62
  class ERR_INVALID_ARG_TYPE extends Error {
65
- constructor(funcName, expectedType, actual) {
66
- const message = `[ERR_INVALID_ARG_TYPE]: The '${funcName}' argument must be of type ${expectedType}${getTypeErrorMessage(actual)}`;
67
- super(message);
68
- }
63
+ constructor(funcName, expectedType, actual){
64
+ const message = `[ERR_INVALID_ARG_TYPE]: The '${funcName}' argument must be of type ${expectedType}${getTypeErrorMessage(actual)}`;
65
+ super(message);
66
+ }
69
67
  }
70
- const validateFunction = (maybeFunc, name) => {
71
- if (typeof maybeFunc !== "function") {
72
- throw new ERR_INVALID_ARG_TYPE(name, "function", maybeFunc);
73
- }
74
- return true;
68
+ const validateFunction = (maybeFunc, name)=>{
69
+ if ('function' != typeof maybeFunc) throw new ERR_INVALID_ARG_TYPE(name, 'function', maybeFunc);
70
+ return true;
75
71
  };
76
- // Annotate the CommonJS export names for ESM import in node:
77
- 0 && (module.exports = {
78
- ERR_INVALID_ARG_TYPE,
79
- getTypeErrorMessage,
80
- validateFunction
72
+ exports.ERR_INVALID_ARG_TYPE = __webpack_exports__.ERR_INVALID_ARG_TYPE;
73
+ exports.getTypeErrorMessage = __webpack_exports__.getTypeErrorMessage;
74
+ exports.validateFunction = __webpack_exports__.validateFunction;
75
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
76
+ "ERR_INVALID_ARG_TYPE",
77
+ "getTypeErrorMessage",
78
+ "validateFunction"
79
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
80
+ Object.defineProperty(exports, '__esModule', {
81
+ value: true
81
82
  });
@@ -0,0 +1,44 @@
1
+ import "reflect-metadata";
2
+ import koa_compose from "koa-compose";
3
+ import { HANDLER_WITH_META, validateFunction } from "./utils";
4
+ function Api(...args) {
5
+ const handler = args.pop();
6
+ validateFunction(handler, 'Apihandler');
7
+ const operators = args;
8
+ const metadataHelper = {
9
+ getMetadata (key) {
10
+ return Reflect.getMetadata(key, runner);
11
+ },
12
+ setMetadata (key, value) {
13
+ return Reflect.defineMetadata(key, value, runner);
14
+ }
15
+ };
16
+ for (const operator of operators)if (operator.metadata) operator.metadata(metadataHelper);
17
+ const validateHandlers = operators.filter((operator)=>operator.validate).map((operator)=>operator.validate);
18
+ const pipeHandlers = operators.filter((operator)=>operator.execute).map((operator)=>operator.execute);
19
+ async function runner(inputs) {
20
+ const executeHelper = {
21
+ result: null,
22
+ get inputs () {
23
+ return inputs;
24
+ },
25
+ set inputs (val){
26
+ inputs = val;
27
+ }
28
+ };
29
+ const stack = [
30
+ ...validateHandlers,
31
+ ...pipeHandlers
32
+ ];
33
+ stack.push(async (helper, next)=>{
34
+ const res = await handler(helper.inputs);
35
+ helper.result = res;
36
+ return next();
37
+ });
38
+ await koa_compose(stack)(executeHelper);
39
+ return executeHelper.result;
40
+ }
41
+ runner[HANDLER_WITH_META] = true;
42
+ return runner;
43
+ }
44
+ export { Api };
@@ -0,0 +1,60 @@
1
+ import { resolve } from "path";
2
+ import { ApiRouter } from "../router";
3
+ import { Err, Ok } from "./result";
4
+ const getPackageName = (appDir)=>{
5
+ try {
6
+ const packageJsonPath = resolve(appDir, './package.json');
7
+ const packageJson = require(packageJsonPath);
8
+ return packageJson.name;
9
+ } catch (error) {
10
+ return;
11
+ }
12
+ };
13
+ const DEFAULT_CLIENT_REQUEST_CREATOR = '@modern-js/create-request';
14
+ const INNER_CLIENT_REQUEST_CREATOR = '@modern-js/plugin-bff/client';
15
+ const generateClient = async ({ appDir, resourcePath, apiDir, lambdaDir, prefix, port, target, requestCreator, fetcher, requireResolve = require.resolve, httpMethodDecider, domain })=>{
16
+ requestCreator = requestCreator || INNER_CLIENT_REQUEST_CREATOR;
17
+ const apiRouter = new ApiRouter({
18
+ appDir,
19
+ apiDir,
20
+ lambdaDir,
21
+ prefix,
22
+ httpMethodDecider
23
+ });
24
+ const handlerInfos = await apiRouter.getSingleModuleHandlers(resourcePath);
25
+ if (!handlerInfos) return Err(`generate client error: Cannot require module ${resourcePath}`);
26
+ let handlersCode = '';
27
+ for (const handlerInfo of handlerInfos){
28
+ const { name, httpMethod, routePath, action } = handlerInfo;
29
+ let exportStatement = `var ${name} =`;
30
+ if ('default' === name.toLowerCase()) exportStatement = 'default';
31
+ const upperHttpMethod = httpMethod.toUpperCase();
32
+ const routeName = routePath;
33
+ const requestId = 'bundle' === target ? getPackageName(appDir) || process.env.npm_package_name : void 0;
34
+ if ('upload' === action) {
35
+ const requestOptions = {
36
+ path: routeName,
37
+ domain,
38
+ requestId
39
+ };
40
+ handlersCode += `export ${exportStatement} createUploader(${JSON.stringify(requestOptions)});`;
41
+ } else {
42
+ const portValue = 'server' === target ? `process.env.PORT || ${String(port)}` : String(port);
43
+ const optionsStr = `{
44
+ path: '${routeName}',
45
+ method: '${upperHttpMethod}',
46
+ port: ${portValue},
47
+ httpMethodDecider: '${httpMethodDecider || 'functionName'}'
48
+ ${domain ? `, domain: '${domain}'` : ''}
49
+ ${fetcher ? ", fetch: 'fetch'" : ''}
50
+ ${requestId ? `, requestId: '${requestId}'` : ''}
51
+ }`.replace(/\n\s*/g, '');
52
+ handlersCode += `export ${exportStatement} createRequest(${optionsStr});
53
+ `;
54
+ }
55
+ }
56
+ const importCode = `import { createRequest${handlerInfos.find((i)=>'upload' === i.action) ? ', createUploader' : ''} } from '${requestCreator}';
57
+ ${fetcher ? `import { fetch } from '${fetcher}';\n` : ''}`;
58
+ return Ok(`${importCode}\n${handlersCode}`);
59
+ };
60
+ export { DEFAULT_CLIENT_REQUEST_CREATOR, INNER_CLIENT_REQUEST_CREATOR, generateClient };
@@ -0,0 +1,19 @@
1
+ const Err = (value)=>{
2
+ const err = {
3
+ kind: 'Err',
4
+ value,
5
+ isErr: true,
6
+ isOk: false
7
+ };
8
+ return err;
9
+ };
10
+ const Ok = (value)=>{
11
+ const ok = {
12
+ kind: 'Ok',
13
+ value,
14
+ isErr: false,
15
+ isOk: true
16
+ };
17
+ return ok;
18
+ };
19
+ export { Err, Ok };
File without changes