@bleedingdev/modern-js-plugin-bff 3.2.0-ultramodern.102 → 3.2.0-ultramodern.104
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.
- package/dist/cjs/cli.js +9 -5
- package/dist/cjs/constants.js +13 -9
- package/dist/cjs/index.js +9 -5
- package/dist/cjs/loader.js +9 -5
- package/dist/cjs/runtime/create-request/index.js +9 -5
- package/dist/cjs/runtime/data-platform/index.js +9 -5
- package/dist/cjs/runtime/effect/adapter.js +9 -5
- package/dist/cjs/runtime/effect/context.js +9 -5
- package/dist/cjs/runtime/effect/edge.js +14 -10
- package/dist/cjs/runtime/effect/handler.js +59 -60
- package/dist/cjs/runtime/effect/index.js +28 -16
- package/dist/cjs/runtime/effect/module.js +59 -32
- package/dist/cjs/runtime/effect/operation-context.js +9 -5
- package/dist/cjs/runtime/effect-client/index.js +10 -6
- package/dist/cjs/runtime/hono/adapter.js +9 -5
- package/dist/cjs/runtime/hono/index.js +9 -5
- package/dist/cjs/runtime/hono/operators.js +9 -5
- package/dist/cjs/server.js +9 -5
- package/dist/cjs/utils/clientGenerator.js +9 -5
- package/dist/cjs/utils/createHonoRoutes.js +9 -5
- package/dist/cjs/utils/crossProjectApiPlugin.js +9 -5
- package/dist/cjs/utils/effectClientGenerator.js +9 -5
- package/dist/cjs/utils/pluginGenerator.js +9 -5
- package/dist/cjs/utils/runtimeGenerator.js +9 -5
- package/dist/esm/runtime/effect/handler.mjs +7 -6
- package/dist/esm/runtime/effect/index.mjs +2 -0
- package/dist/esm/runtime/effect/module.mjs +50 -27
- package/dist/esm/runtime/effect-client/index.mjs +1 -1
- package/dist/esm-node/runtime/effect/handler.mjs +7 -6
- package/dist/esm-node/runtime/effect/index.mjs +2 -0
- package/dist/esm-node/runtime/effect/module.mjs +50 -27
- package/dist/esm-node/runtime/effect-client/index.mjs +1 -1
- package/dist/types/runtime/effect/context.d.ts +1 -1
- package/dist/types/runtime/effect/handler.d.ts +7 -4
- package/dist/types/runtime/effect/index.d.ts +1 -0
- package/dist/types/runtime/effect/module.d.ts +1 -1
- package/dist/types/utils/createHonoRoutes.d.ts +3 -3
- package/dist/types/utils/effectClientGenerator.d.ts +1 -1
- package/package.json +13 -13
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __webpack_require__ = {};
|
|
3
3
|
(()=>{
|
|
4
|
-
__webpack_require__.d = (exports1,
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
9
13
|
};
|
|
10
14
|
})();
|
|
11
15
|
(()=>{
|
|
@@ -26,6 +30,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
26
30
|
__webpack_require__.d(__webpack_exports__, {
|
|
27
31
|
resolveEffectBffModuleHandler: ()=>resolveEffectBffModuleHandler
|
|
28
32
|
});
|
|
33
|
+
const Context_namespaceObject = require("effect/Context");
|
|
29
34
|
const httpapi_namespaceObject = require("effect/unstable/httpapi");
|
|
30
35
|
const external_handler_js_namespaceObject = require("./handler.js");
|
|
31
36
|
function isRecord(value) {
|
|
@@ -40,15 +45,29 @@ function isRequestHandler(value) {
|
|
|
40
45
|
function isEffectApiDefinition(module) {
|
|
41
46
|
return httpapi_namespaceObject.HttpApi.isHttpApi(module.api) && void 0 !== module.layer;
|
|
42
47
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
48
|
+
function isEffectServiceContext(context) {
|
|
49
|
+
return 'object' == typeof context && null !== context && 'mapUnsafe' in context;
|
|
50
|
+
}
|
|
51
|
+
const emptyEffectServiceContext = Context_namespaceObject.empty();
|
|
52
|
+
function callEffectBffRequestHandler(handler, request, context) {
|
|
53
|
+
return void 0 === context ? handler(request) : handler(request, context);
|
|
54
|
+
}
|
|
55
|
+
function createLoadedHandler(webHandler) {
|
|
56
|
+
return {
|
|
57
|
+
handler: (request, context)=>callEffectBffRequestHandler(webHandler.handler, request, context),
|
|
58
|
+
dispose: webHandler.dispose
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
function createLoadedHttpApiHandler(webHandler) {
|
|
62
|
+
return {
|
|
63
|
+
handler: (request, context)=>{
|
|
64
|
+
const effectContext = isEffectServiceContext(context) ? context : emptyEffectServiceContext;
|
|
65
|
+
return webHandler.handler(request, effectContext);
|
|
66
|
+
},
|
|
67
|
+
dispose: webHandler.dispose
|
|
51
68
|
};
|
|
69
|
+
}
|
|
70
|
+
function resolveNormalizedEffectBffModuleHandler(normalizedModule, options = {}) {
|
|
52
71
|
if (isRequestHandler(normalizedModule.handler)) return {
|
|
53
72
|
handler: normalizedModule.handler
|
|
54
73
|
};
|
|
@@ -56,13 +75,6 @@ async function resolveEffectBffModuleHandler(mod, options = {}) {
|
|
|
56
75
|
if (isRequestHandler(entry)) return {
|
|
57
76
|
handler: entry
|
|
58
77
|
};
|
|
59
|
-
if ('function' == typeof entry && 0 === entry.length) {
|
|
60
|
-
const out = await entry();
|
|
61
|
-
if (isRequestHandler(out)) return {
|
|
62
|
-
handler: out
|
|
63
|
-
};
|
|
64
|
-
mergeRuntimeExports(out);
|
|
65
|
-
}
|
|
66
78
|
if (isRecord(entry)) normalizedModule = {
|
|
67
79
|
...normalizedModule,
|
|
68
80
|
...entry
|
|
@@ -82,12 +94,7 @@ async function resolveEffectBffModuleHandler(mod, options = {}) {
|
|
|
82
94
|
openapi: options.openapi,
|
|
83
95
|
dataPlatform: options.dataPlatform
|
|
84
96
|
});
|
|
85
|
-
return
|
|
86
|
-
handler: async (request, context)=>webHandler.handler(request, context),
|
|
87
|
-
dispose: async ()=>{
|
|
88
|
-
await webHandler.dispose();
|
|
89
|
-
}
|
|
90
|
-
};
|
|
97
|
+
return createLoadedHandler(webHandler);
|
|
91
98
|
}
|
|
92
99
|
if (isEffectApiDefinition(normalizedModule)) {
|
|
93
100
|
options.onWarning?.('[BFF][Effect] Detected { api, layer } export without createHandler. Prefer `defineEffectBff(...)` from @modern-js/plugin-bff/server to avoid module instance mismatch.');
|
|
@@ -97,15 +104,35 @@ async function resolveEffectBffModuleHandler(mod, options = {}) {
|
|
|
97
104
|
openapi: options.openapi,
|
|
98
105
|
dataPlatform: options.dataPlatform
|
|
99
106
|
});
|
|
100
|
-
return
|
|
101
|
-
handler: async (request, context)=>webHandler.handler(request, context),
|
|
102
|
-
dispose: async ()=>{
|
|
103
|
-
await webHandler.dispose();
|
|
104
|
-
}
|
|
105
|
-
};
|
|
107
|
+
return createLoadedHttpApiHandler(webHandler);
|
|
106
108
|
}
|
|
107
109
|
return null;
|
|
108
110
|
}
|
|
111
|
+
function resolveEffectBffModuleHandler(mod, options = {}) {
|
|
112
|
+
let normalizedModule = mod;
|
|
113
|
+
const mergeRuntimeExports = (value)=>{
|
|
114
|
+
if (!isRecord(value) || !includesRuntimeExports(value)) return;
|
|
115
|
+
normalizedModule = {
|
|
116
|
+
...normalizedModule,
|
|
117
|
+
...value
|
|
118
|
+
};
|
|
119
|
+
};
|
|
120
|
+
if (isRequestHandler(normalizedModule.handler)) return Promise.resolve({
|
|
121
|
+
handler: normalizedModule.handler
|
|
122
|
+
});
|
|
123
|
+
const entry = normalizedModule.default;
|
|
124
|
+
if (isRequestHandler(entry)) return Promise.resolve({
|
|
125
|
+
handler: entry
|
|
126
|
+
});
|
|
127
|
+
if ('function' == typeof entry && 0 === entry.length) return Promise.resolve(entry()).then((out)=>{
|
|
128
|
+
if (isRequestHandler(out)) return {
|
|
129
|
+
handler: out
|
|
130
|
+
};
|
|
131
|
+
mergeRuntimeExports(out);
|
|
132
|
+
return resolveNormalizedEffectBffModuleHandler(normalizedModule, options);
|
|
133
|
+
});
|
|
134
|
+
return Promise.resolve(resolveNormalizedEffectBffModuleHandler(normalizedModule, options));
|
|
135
|
+
}
|
|
109
136
|
exports.resolveEffectBffModuleHandler = __webpack_exports__.resolveEffectBffModuleHandler;
|
|
110
137
|
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
111
138
|
"resolveEffectBffModuleHandler"
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __webpack_require__ = {};
|
|
3
3
|
(()=>{
|
|
4
|
-
__webpack_require__.d = (exports1,
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
9
13
|
};
|
|
10
14
|
})();
|
|
11
15
|
(()=>{
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __webpack_require__ = {};
|
|
3
3
|
(()=>{
|
|
4
|
-
__webpack_require__.d = (exports1,
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
9
13
|
};
|
|
10
14
|
})();
|
|
11
15
|
(()=>{
|
|
@@ -102,7 +106,7 @@ function makeEffectHttpApiClient(api, options) {
|
|
|
102
106
|
for (const [header, value] of Object.entries(requestContextHeaders))if (void 0 === nextRequest.headers[header.toLowerCase()]) nextRequest = http_namespaceObject.HttpClientRequest.setHeader(nextRequest, header, value);
|
|
103
107
|
return nextRequest;
|
|
104
108
|
}));
|
|
105
|
-
return options?.transformClient ? options.transformClient(contextClient) : contextClient;
|
|
109
|
+
return 'function' == typeof options?.transformClient ? options.transformClient(contextClient) : contextClient;
|
|
106
110
|
};
|
|
107
111
|
return httpapi_namespaceObject.HttpApiClient.make(api, {
|
|
108
112
|
baseUrl: options?.baseUrl,
|
|
@@ -10,11 +10,15 @@ var __webpack_require__ = {};
|
|
|
10
10
|
};
|
|
11
11
|
})();
|
|
12
12
|
(()=>{
|
|
13
|
-
__webpack_require__.d = (exports1,
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
14
|
+
var define = (defs, kind)=>{
|
|
15
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
16
|
+
enumerable: true,
|
|
17
|
+
[kind]: defs[key]
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
define(getters, "get");
|
|
21
|
+
define(values, "value");
|
|
18
22
|
};
|
|
19
23
|
})();
|
|
20
24
|
(()=>{
|
|
@@ -27,11 +27,15 @@ function __webpack_require__(moduleId) {
|
|
|
27
27
|
};
|
|
28
28
|
})();
|
|
29
29
|
(()=>{
|
|
30
|
-
__webpack_require__.d = (exports1,
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
30
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
31
|
+
var define = (defs, kind)=>{
|
|
32
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
33
|
+
enumerable: true,
|
|
34
|
+
[kind]: defs[key]
|
|
35
|
+
});
|
|
36
|
+
};
|
|
37
|
+
define(getters, "get");
|
|
38
|
+
define(values, "value");
|
|
35
39
|
};
|
|
36
40
|
})();
|
|
37
41
|
(()=>{
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __webpack_require__ = {};
|
|
3
3
|
(()=>{
|
|
4
|
-
__webpack_require__.d = (exports1,
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
5
|
+
var define = (defs, kind)=>{
|
|
6
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
[kind]: defs[key]
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
define(getters, "get");
|
|
12
|
+
define(values, "value");
|
|
9
13
|
};
|
|
10
14
|
})();
|
|
11
15
|
(()=>{
|
package/dist/cjs/server.js
CHANGED
|
@@ -10,11 +10,15 @@ var __webpack_require__ = {};
|
|
|
10
10
|
};
|
|
11
11
|
})();
|
|
12
12
|
(()=>{
|
|
13
|
-
__webpack_require__.d = (exports1,
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
14
|
+
var define = (defs, kind)=>{
|
|
15
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
16
|
+
enumerable: true,
|
|
17
|
+
[kind]: defs[key]
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
define(getters, "get");
|
|
21
|
+
define(values, "value");
|
|
18
22
|
};
|
|
19
23
|
})();
|
|
20
24
|
(()=>{
|
|
@@ -10,11 +10,15 @@ var __webpack_require__ = {};
|
|
|
10
10
|
};
|
|
11
11
|
})();
|
|
12
12
|
(()=>{
|
|
13
|
-
__webpack_require__.d = (exports1,
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
14
|
+
var define = (defs, kind)=>{
|
|
15
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
16
|
+
enumerable: true,
|
|
17
|
+
[kind]: defs[key]
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
define(getters, "get");
|
|
21
|
+
define(values, "value");
|
|
18
22
|
};
|
|
19
23
|
})();
|
|
20
24
|
(()=>{
|
|
@@ -10,11 +10,15 @@ var __webpack_require__ = {};
|
|
|
10
10
|
};
|
|
11
11
|
})();
|
|
12
12
|
(()=>{
|
|
13
|
-
__webpack_require__.d = (exports1,
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
14
|
+
var define = (defs, kind)=>{
|
|
15
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
16
|
+
enumerable: true,
|
|
17
|
+
[kind]: defs[key]
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
define(getters, "get");
|
|
21
|
+
define(values, "value");
|
|
18
22
|
};
|
|
19
23
|
})();
|
|
20
24
|
(()=>{
|
|
@@ -10,11 +10,15 @@ var __webpack_require__ = {};
|
|
|
10
10
|
};
|
|
11
11
|
})();
|
|
12
12
|
(()=>{
|
|
13
|
-
__webpack_require__.d = (exports1,
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
14
|
+
var define = (defs, kind)=>{
|
|
15
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
16
|
+
enumerable: true,
|
|
17
|
+
[kind]: defs[key]
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
define(getters, "get");
|
|
21
|
+
define(values, "value");
|
|
18
22
|
};
|
|
19
23
|
})();
|
|
20
24
|
(()=>{
|
|
@@ -10,11 +10,15 @@ var __webpack_require__ = {};
|
|
|
10
10
|
};
|
|
11
11
|
})();
|
|
12
12
|
(()=>{
|
|
13
|
-
__webpack_require__.d = (exports1,
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
14
|
+
var define = (defs, kind)=>{
|
|
15
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
16
|
+
enumerable: true,
|
|
17
|
+
[kind]: defs[key]
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
define(getters, "get");
|
|
21
|
+
define(values, "value");
|
|
18
22
|
};
|
|
19
23
|
})();
|
|
20
24
|
(()=>{
|
|
@@ -10,11 +10,15 @@ var __webpack_require__ = {};
|
|
|
10
10
|
};
|
|
11
11
|
})();
|
|
12
12
|
(()=>{
|
|
13
|
-
__webpack_require__.d = (exports1,
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
14
|
+
var define = (defs, kind)=>{
|
|
15
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
16
|
+
enumerable: true,
|
|
17
|
+
[kind]: defs[key]
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
define(getters, "get");
|
|
21
|
+
define(values, "value");
|
|
18
22
|
};
|
|
19
23
|
})();
|
|
20
24
|
(()=>{
|
|
@@ -10,11 +10,15 @@ var __webpack_require__ = {};
|
|
|
10
10
|
};
|
|
11
11
|
})();
|
|
12
12
|
(()=>{
|
|
13
|
-
__webpack_require__.d = (exports1,
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
__webpack_require__.d = (exports1, getters, values)=>{
|
|
14
|
+
var define = (defs, kind)=>{
|
|
15
|
+
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
16
|
+
enumerable: true,
|
|
17
|
+
[kind]: defs[key]
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
define(getters, "get");
|
|
21
|
+
define(values, "value");
|
|
18
22
|
};
|
|
19
23
|
})();
|
|
20
24
|
(()=>{
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import * as __rspack_external_effect_Layer_16f7a8fc from "effect/Layer";
|
|
2
|
-
import { HttpRouter, HttpServerResponse, HttpTraceContext } from "effect/unstable/http";
|
|
2
|
+
import { HttpRouter, HttpServer, HttpServerResponse, HttpTraceContext } from "effect/unstable/http";
|
|
3
3
|
import { HttpApiBuilder, OpenApi } from "effect/unstable/httpapi";
|
|
4
4
|
import { RpcSerialization, RpcServer } from "effect/unstable/rpc";
|
|
5
5
|
import { DEFAULT_DATA_BATCH_ENDPOINT, DEFAULT_DATA_BATCH_HEADER, DEFAULT_DATA_ENVELOPE_HEADER, decodeRequestEnvelopeHeader, validateRequestEnvelope, validateSelectionPlan } from "../data-platform/index.mjs";
|
|
6
|
-
import * as __rspack_external__effect_opentelemetry_8bbbb5af from "@effect/opentelemetry";
|
|
7
6
|
import * as __rspack_external_effect_Config_29be8a92 from "effect/Config";
|
|
8
7
|
import * as __rspack_external_effect_Effect_194ac36c from "effect/Effect";
|
|
9
8
|
import * as __rspack_external_effect_Option_4d691636 from "effect/Option";
|
|
@@ -11,6 +10,8 @@ import * as __rspack_external_effect_Schema_f8472650 from "effect/Schema";
|
|
|
11
10
|
export * from "effect/unstable/http";
|
|
12
11
|
export * from "effect/unstable/httpapi";
|
|
13
12
|
export * from "effect/unstable/rpc";
|
|
13
|
+
import * as __rspack_external_effect_Context_f1289ca3 from "effect/Context";
|
|
14
|
+
const emptyEffectServiceContext = __rspack_external_effect_Context_f1289ca3.empty();
|
|
14
15
|
function normalizeOpenApiPath(pathname) {
|
|
15
16
|
if (!pathname.startsWith('/')) return `/${pathname}`;
|
|
16
17
|
return pathname;
|
|
@@ -287,7 +288,7 @@ function defineEffectRpcBff(definition) {
|
|
|
287
288
|
};
|
|
288
289
|
}
|
|
289
290
|
function createHttpApiHandler(options) {
|
|
290
|
-
const apiLayer = options.layer;
|
|
291
|
+
const apiLayer = options.layer.pipe(__rspack_external_effect_Layer_16f7a8fc.provide(HttpServer.layerServices));
|
|
291
292
|
const openApiLayer = createOpenApiLayer(options.api, options.openapi);
|
|
292
293
|
const mergedLayer = openApiLayer ? __rspack_external_effect_Layer_16f7a8fc.mergeAll(apiLayer, openApiLayer) : apiLayer;
|
|
293
294
|
const httpApiHandler = HttpRouter.toWebHandler(mergedLayer);
|
|
@@ -304,7 +305,7 @@ function createHttpApiHandler(options) {
|
|
|
304
305
|
const withDataPlatformValidation = async (request, context)=>{
|
|
305
306
|
const validationError = validateDataPlatformRequestEnvelope(request, options.dataPlatform);
|
|
306
307
|
if (validationError) return validationError;
|
|
307
|
-
return httpApiHandler.handler(request, context);
|
|
308
|
+
return httpApiHandler.handler(request, context ?? emptyEffectServiceContext);
|
|
308
309
|
};
|
|
309
310
|
const handleBatchRequest = async (request, context)=>{
|
|
310
311
|
const mountedPrefix = getMountedPrefixFromContext(request, context);
|
|
@@ -423,7 +424,7 @@ function createHttpApiHandler(options) {
|
|
|
423
424
|
const rpcHandler = createRpcApiHandler(options.rpc);
|
|
424
425
|
return {
|
|
425
426
|
handler: async (request, context)=>{
|
|
426
|
-
if (isRpcRequest(request, rpcPath)) return rpcHandler.handler(request, context);
|
|
427
|
+
if (isRpcRequest(request, rpcPath)) return rpcHandler.handler(request, context ?? emptyEffectServiceContext);
|
|
427
428
|
return handleHttpApiRequest(request);
|
|
428
429
|
},
|
|
429
430
|
dispose: async ()=>{
|
|
@@ -434,4 +435,4 @@ function createHttpApiHandler(options) {
|
|
|
434
435
|
}
|
|
435
436
|
};
|
|
436
437
|
}
|
|
437
|
-
export { HttpApiBuilder, HttpTraceContext,
|
|
438
|
+
export { HttpApiBuilder, HttpTraceContext, __rspack_external_effect_Config_29be8a92 as Config, __rspack_external_effect_Effect_194ac36c as Effect, __rspack_external_effect_Layer_16f7a8fc as Layer, __rspack_external_effect_Option_4d691636 as Option, __rspack_external_effect_Schema_f8472650 as Schema, createHttpApiHandler, defineEffectBff, defineEffectRpcBff };
|
|
@@ -1,2 +1,4 @@
|
|
|
1
|
+
import * as __rspack_external__effect_opentelemetry_8bbbb5af from "@effect/opentelemetry";
|
|
1
2
|
export * from "./handler.mjs";
|
|
2
3
|
export { createEffectOperationContext, useEffectContext, useOperationContext } from "./context.mjs";
|
|
4
|
+
export { __rspack_external__effect_opentelemetry_8bbbb5af as OpenTelemetry };
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { HttpApi } from "effect/unstable/httpapi";
|
|
2
2
|
import { createHttpApiHandler } from "./handler.mjs";
|
|
3
|
+
import * as __rspack_external_effect_Context_f1289ca3 from "effect/Context";
|
|
3
4
|
function isRecord(value) {
|
|
4
5
|
return 'object' == typeof value && null !== value;
|
|
5
6
|
}
|
|
@@ -12,15 +13,29 @@ function isRequestHandler(value) {
|
|
|
12
13
|
function isEffectApiDefinition(module) {
|
|
13
14
|
return HttpApi.isHttpApi(module.api) && void 0 !== module.layer;
|
|
14
15
|
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
16
|
+
function isEffectServiceContext(context) {
|
|
17
|
+
return 'object' == typeof context && null !== context && 'mapUnsafe' in context;
|
|
18
|
+
}
|
|
19
|
+
const emptyEffectServiceContext = __rspack_external_effect_Context_f1289ca3.empty();
|
|
20
|
+
function callEffectBffRequestHandler(handler, request, context) {
|
|
21
|
+
return void 0 === context ? handler(request) : handler(request, context);
|
|
22
|
+
}
|
|
23
|
+
function createLoadedHandler(webHandler) {
|
|
24
|
+
return {
|
|
25
|
+
handler: (request, context)=>callEffectBffRequestHandler(webHandler.handler, request, context),
|
|
26
|
+
dispose: webHandler.dispose
|
|
23
27
|
};
|
|
28
|
+
}
|
|
29
|
+
function createLoadedHttpApiHandler(webHandler) {
|
|
30
|
+
return {
|
|
31
|
+
handler: (request, context)=>{
|
|
32
|
+
const effectContext = isEffectServiceContext(context) ? context : emptyEffectServiceContext;
|
|
33
|
+
return webHandler.handler(request, effectContext);
|
|
34
|
+
},
|
|
35
|
+
dispose: webHandler.dispose
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
function resolveNormalizedEffectBffModuleHandler(normalizedModule, options = {}) {
|
|
24
39
|
if (isRequestHandler(normalizedModule.handler)) return {
|
|
25
40
|
handler: normalizedModule.handler
|
|
26
41
|
};
|
|
@@ -28,13 +43,6 @@ async function resolveEffectBffModuleHandler(mod, options = {}) {
|
|
|
28
43
|
if (isRequestHandler(entry)) return {
|
|
29
44
|
handler: entry
|
|
30
45
|
};
|
|
31
|
-
if ('function' == typeof entry && 0 === entry.length) {
|
|
32
|
-
const out = await entry();
|
|
33
|
-
if (isRequestHandler(out)) return {
|
|
34
|
-
handler: out
|
|
35
|
-
};
|
|
36
|
-
mergeRuntimeExports(out);
|
|
37
|
-
}
|
|
38
46
|
if (isRecord(entry)) normalizedModule = {
|
|
39
47
|
...normalizedModule,
|
|
40
48
|
...entry
|
|
@@ -54,12 +62,7 @@ async function resolveEffectBffModuleHandler(mod, options = {}) {
|
|
|
54
62
|
openapi: options.openapi,
|
|
55
63
|
dataPlatform: options.dataPlatform
|
|
56
64
|
});
|
|
57
|
-
return
|
|
58
|
-
handler: async (request, context)=>webHandler.handler(request, context),
|
|
59
|
-
dispose: async ()=>{
|
|
60
|
-
await webHandler.dispose();
|
|
61
|
-
}
|
|
62
|
-
};
|
|
65
|
+
return createLoadedHandler(webHandler);
|
|
63
66
|
}
|
|
64
67
|
if (isEffectApiDefinition(normalizedModule)) {
|
|
65
68
|
options.onWarning?.('[BFF][Effect] Detected { api, layer } export without createHandler. Prefer `defineEffectBff(...)` from @modern-js/plugin-bff/server to avoid module instance mismatch.');
|
|
@@ -69,13 +72,33 @@ async function resolveEffectBffModuleHandler(mod, options = {}) {
|
|
|
69
72
|
openapi: options.openapi,
|
|
70
73
|
dataPlatform: options.dataPlatform
|
|
71
74
|
});
|
|
72
|
-
return
|
|
73
|
-
handler: async (request, context)=>webHandler.handler(request, context),
|
|
74
|
-
dispose: async ()=>{
|
|
75
|
-
await webHandler.dispose();
|
|
76
|
-
}
|
|
77
|
-
};
|
|
75
|
+
return createLoadedHttpApiHandler(webHandler);
|
|
78
76
|
}
|
|
79
77
|
return null;
|
|
80
78
|
}
|
|
79
|
+
function resolveEffectBffModuleHandler(mod, options = {}) {
|
|
80
|
+
let normalizedModule = mod;
|
|
81
|
+
const mergeRuntimeExports = (value)=>{
|
|
82
|
+
if (!isRecord(value) || !includesRuntimeExports(value)) return;
|
|
83
|
+
normalizedModule = {
|
|
84
|
+
...normalizedModule,
|
|
85
|
+
...value
|
|
86
|
+
};
|
|
87
|
+
};
|
|
88
|
+
if (isRequestHandler(normalizedModule.handler)) return Promise.resolve({
|
|
89
|
+
handler: normalizedModule.handler
|
|
90
|
+
});
|
|
91
|
+
const entry = normalizedModule.default;
|
|
92
|
+
if (isRequestHandler(entry)) return Promise.resolve({
|
|
93
|
+
handler: entry
|
|
94
|
+
});
|
|
95
|
+
if ('function' == typeof entry && 0 === entry.length) return Promise.resolve(entry()).then((out)=>{
|
|
96
|
+
if (isRequestHandler(out)) return {
|
|
97
|
+
handler: out
|
|
98
|
+
};
|
|
99
|
+
mergeRuntimeExports(out);
|
|
100
|
+
return resolveNormalizedEffectBffModuleHandler(normalizedModule, options);
|
|
101
|
+
});
|
|
102
|
+
return Promise.resolve(resolveNormalizedEffectBffModuleHandler(normalizedModule, options));
|
|
103
|
+
}
|
|
81
104
|
export { resolveEffectBffModuleHandler };
|
|
@@ -55,7 +55,7 @@ function makeEffectHttpApiClient(api, options) {
|
|
|
55
55
|
for (const [header, value] of Object.entries(requestContextHeaders))if (void 0 === nextRequest.headers[header.toLowerCase()]) nextRequest = HttpClientRequest.setHeader(nextRequest, header, value);
|
|
56
56
|
return nextRequest;
|
|
57
57
|
}));
|
|
58
|
-
return options?.transformClient ? options.transformClient(contextClient) : contextClient;
|
|
58
|
+
return 'function' == typeof options?.transformClient ? options.transformClient(contextClient) : contextClient;
|
|
59
59
|
};
|
|
60
60
|
return HttpApiClient.make(api, {
|
|
61
61
|
baseUrl: options?.baseUrl,
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import "node:module";
|
|
2
2
|
import * as __rspack_external_effect_Layer_16f7a8fc from "effect/Layer";
|
|
3
|
-
import { HttpRouter, HttpServerResponse, HttpTraceContext } from "effect/unstable/http";
|
|
3
|
+
import { HttpRouter, HttpServer, HttpServerResponse, HttpTraceContext } from "effect/unstable/http";
|
|
4
4
|
import { HttpApiBuilder, OpenApi } from "effect/unstable/httpapi";
|
|
5
5
|
import { RpcSerialization, RpcServer } from "effect/unstable/rpc";
|
|
6
6
|
import { DEFAULT_DATA_BATCH_ENDPOINT, DEFAULT_DATA_BATCH_HEADER, DEFAULT_DATA_ENVELOPE_HEADER, decodeRequestEnvelopeHeader, validateRequestEnvelope, validateSelectionPlan } from "../data-platform/index.mjs";
|
|
7
|
-
import * as __rspack_external__effect_opentelemetry_8bbbb5af from "@effect/opentelemetry";
|
|
8
7
|
import * as __rspack_external_effect_Config_29be8a92 from "effect/Config";
|
|
9
8
|
import * as __rspack_external_effect_Effect_194ac36c from "effect/Effect";
|
|
10
9
|
import * as __rspack_external_effect_Option_4d691636 from "effect/Option";
|
|
@@ -12,6 +11,8 @@ import * as __rspack_external_effect_Schema_f8472650 from "effect/Schema";
|
|
|
12
11
|
export * from "effect/unstable/http";
|
|
13
12
|
export * from "effect/unstable/httpapi";
|
|
14
13
|
export * from "effect/unstable/rpc";
|
|
14
|
+
import * as __rspack_external_effect_Context_f1289ca3 from "effect/Context";
|
|
15
|
+
const emptyEffectServiceContext = __rspack_external_effect_Context_f1289ca3.empty();
|
|
15
16
|
function normalizeOpenApiPath(pathname) {
|
|
16
17
|
if (!pathname.startsWith('/')) return `/${pathname}`;
|
|
17
18
|
return pathname;
|
|
@@ -288,7 +289,7 @@ function defineEffectRpcBff(definition) {
|
|
|
288
289
|
};
|
|
289
290
|
}
|
|
290
291
|
function createHttpApiHandler(options) {
|
|
291
|
-
const apiLayer = options.layer;
|
|
292
|
+
const apiLayer = options.layer.pipe(__rspack_external_effect_Layer_16f7a8fc.provide(HttpServer.layerServices));
|
|
292
293
|
const openApiLayer = createOpenApiLayer(options.api, options.openapi);
|
|
293
294
|
const mergedLayer = openApiLayer ? __rspack_external_effect_Layer_16f7a8fc.mergeAll(apiLayer, openApiLayer) : apiLayer;
|
|
294
295
|
const httpApiHandler = HttpRouter.toWebHandler(mergedLayer);
|
|
@@ -305,7 +306,7 @@ function createHttpApiHandler(options) {
|
|
|
305
306
|
const withDataPlatformValidation = async (request, context)=>{
|
|
306
307
|
const validationError = validateDataPlatformRequestEnvelope(request, options.dataPlatform);
|
|
307
308
|
if (validationError) return validationError;
|
|
308
|
-
return httpApiHandler.handler(request, context);
|
|
309
|
+
return httpApiHandler.handler(request, context ?? emptyEffectServiceContext);
|
|
309
310
|
};
|
|
310
311
|
const handleBatchRequest = async (request, context)=>{
|
|
311
312
|
const mountedPrefix = getMountedPrefixFromContext(request, context);
|
|
@@ -424,7 +425,7 @@ function createHttpApiHandler(options) {
|
|
|
424
425
|
const rpcHandler = createRpcApiHandler(options.rpc);
|
|
425
426
|
return {
|
|
426
427
|
handler: async (request, context)=>{
|
|
427
|
-
if (isRpcRequest(request, rpcPath)) return rpcHandler.handler(request, context);
|
|
428
|
+
if (isRpcRequest(request, rpcPath)) return rpcHandler.handler(request, context ?? emptyEffectServiceContext);
|
|
428
429
|
return handleHttpApiRequest(request);
|
|
429
430
|
},
|
|
430
431
|
dispose: async ()=>{
|
|
@@ -435,4 +436,4 @@ function createHttpApiHandler(options) {
|
|
|
435
436
|
}
|
|
436
437
|
};
|
|
437
438
|
}
|
|
438
|
-
export { HttpApiBuilder, HttpTraceContext,
|
|
439
|
+
export { HttpApiBuilder, HttpTraceContext, __rspack_external_effect_Config_29be8a92 as Config, __rspack_external_effect_Effect_194ac36c as Effect, __rspack_external_effect_Layer_16f7a8fc as Layer, __rspack_external_effect_Option_4d691636 as Option, __rspack_external_effect_Schema_f8472650 as Schema, createHttpApiHandler, defineEffectBff, defineEffectRpcBff };
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
import "node:module";
|
|
2
|
+
import * as __rspack_external__effect_opentelemetry_8bbbb5af from "@effect/opentelemetry";
|
|
2
3
|
export * from "./handler.mjs";
|
|
3
4
|
export { createEffectOperationContext, useEffectContext, useOperationContext } from "./context.mjs";
|
|
5
|
+
export { __rspack_external__effect_opentelemetry_8bbbb5af as OpenTelemetry };
|