@bleedingdev/modern-js-plugin-bff 3.5.0-ultramodern.3 → 3.5.0-ultramodern.30

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/dist/cjs/runtime/effect/adapter.js +9 -40
  2. package/dist/cjs/runtime/effect/backend-federation-manifest.js +287 -0
  3. package/dist/cjs/runtime/effect/backend-federation.js +189 -0
  4. package/dist/cjs/runtime/effect/dispatch.js +116 -0
  5. package/dist/cjs/runtime/effect/edge.js +58 -69
  6. package/dist/cjs/runtime/effect/endpoint-contracts.js +7 -12
  7. package/dist/cjs/runtime/effect/entry-shape.js +87 -0
  8. package/dist/cjs/runtime/effect/handler.js +15 -16
  9. package/dist/cjs/runtime/effect/index.js +91 -15
  10. package/dist/cjs/runtime/effect/module.js +23 -80
  11. package/dist/esm/runtime/effect/adapter.mjs +10 -41
  12. package/dist/esm/runtime/effect/backend-federation-manifest.mjs +237 -0
  13. package/dist/esm/runtime/effect/backend-federation.mjs +132 -0
  14. package/dist/esm/runtime/effect/dispatch.mjs +63 -0
  15. package/dist/esm/runtime/effect/edge.mjs +17 -63
  16. package/dist/esm/runtime/effect/endpoint-contracts.mjs +7 -12
  17. package/dist/esm/runtime/effect/entry-shape.mjs +36 -0
  18. package/dist/esm/runtime/effect/handler.mjs +1 -4
  19. package/dist/esm/runtime/effect/index.mjs +3 -0
  20. package/dist/esm/runtime/effect/module.mjs +23 -80
  21. package/dist/esm-node/runtime/effect/adapter.mjs +10 -41
  22. package/dist/esm-node/runtime/effect/backend-federation-manifest.mjs +238 -0
  23. package/dist/esm-node/runtime/effect/backend-federation.mjs +133 -0
  24. package/dist/esm-node/runtime/effect/dispatch.mjs +64 -0
  25. package/dist/esm-node/runtime/effect/edge.mjs +17 -63
  26. package/dist/esm-node/runtime/effect/endpoint-contracts.mjs +7 -12
  27. package/dist/esm-node/runtime/effect/entry-shape.mjs +37 -0
  28. package/dist/esm-node/runtime/effect/handler.mjs +1 -4
  29. package/dist/esm-node/runtime/effect/index.mjs +3 -0
  30. package/dist/esm-node/runtime/effect/module.mjs +23 -80
  31. package/dist/types/runtime/effect/backend-federation-manifest.d.ts +60 -0
  32. package/dist/types/runtime/effect/backend-federation.d.ts +60 -0
  33. package/dist/types/runtime/effect/dispatch.d.ts +17 -0
  34. package/dist/types/runtime/effect/edge.d.ts +9 -8
  35. package/dist/types/runtime/effect/endpoint-contracts.d.ts +2 -2
  36. package/dist/types/runtime/effect/entry-shape.d.ts +31 -0
  37. package/dist/types/runtime/effect/handler.d.ts +4 -20
  38. package/dist/types/runtime/effect/index.d.ts +3 -0
  39. package/dist/types/runtime/effect-client/index.d.ts +1 -1
  40. package/package.json +26 -14
@@ -1,7 +1,10 @@
1
1
  "use strict";
2
2
  var __webpack_modules__ = {
3
- "../safe-failure" (module) {
4
- module.exports = require("../safe-failure.js");
3
+ "./backend-federation" (module) {
4
+ module.exports = require("./backend-federation.js");
5
+ },
6
+ "./dispatch" (module) {
7
+ module.exports = require("./dispatch.js");
5
8
  },
6
9
  "./edge-context" (module) {
7
10
  module.exports = require("./edge-context.js");
@@ -63,85 +66,39 @@ function __webpack_require__(moduleId) {
63
66
  var __webpack_exports__ = {};
64
67
  (()=>{
65
68
  __webpack_require__.r(__webpack_exports__);
66
- var _safe_failure__rspack_import_0 = __webpack_require__("../safe-failure");
69
+ var _dispatch__rspack_import_0 = __webpack_require__("./dispatch");
67
70
  var _edge_context__rspack_import_1 = __webpack_require__("./edge-context");
68
71
  var _module__rspack_import_2 = __webpack_require__("./module");
69
- var _operation_context__rspack_import_3 = __webpack_require__("./operation-context");
72
+ var _backend_federation__rspack_import_3 = __webpack_require__("./backend-federation");
70
73
  var _handler__rspack_import_4 = __webpack_require__("./handler");
71
74
  var __rspack_reexport = {};
72
75
  for(const __rspack_import_key in _handler__rspack_import_4)if ([
73
- "runWithEffectContext",
74
- "useEffectContext",
75
- "default",
76
+ "createBackendFederationLoadEntryPlugin",
76
77
  "useOperationContext",
78
+ "BACKEND_FEDERATION_MANIFEST_FILE",
77
79
  "createEffectOperationContext",
80
+ "loadBackendFederatedEffectApi",
81
+ "BACKEND_FEDERATION_CONTRACT_VERSION",
82
+ "createEffectBffEdgeHandler",
83
+ "runWithEffectContext",
84
+ "BACKEND_FEDERATION_EFFECT_EXPOSE",
85
+ "useEffectContext",
78
86
  "dispatchEffectBffRequest",
87
+ "default",
88
+ "BACKEND_FEDERATION_NODE_ADAPTER_VERSION",
79
89
  "createEffectBffTestHandler",
80
- "createEffectBffEdgeHandler"
90
+ "createBackendFederationRuntime",
91
+ "createEffectBffEdgeDispatcher"
81
92
  ].indexOf(__rspack_import_key) < 0) __rspack_reexport[__rspack_import_key] = ()=>_handler__rspack_import_4[__rspack_import_key];
82
93
  __webpack_require__.d(__webpack_exports__, __rspack_reexport);
83
- function normalizePrefix(prefix) {
84
- if (!prefix || '/' === prefix) return '';
85
- return prefix.endsWith('/') ? prefix.slice(0, -1) : prefix;
86
- }
87
- function removePrefixFromPath(pathname, prefix) {
88
- const normalized = normalizePrefix(prefix);
89
- if (!normalized || pathname !== normalized && !pathname.startsWith(`${normalized}/`)) return pathname;
90
- const sliced = pathname.slice(normalized.length);
91
- return sliced.startsWith('/') ? sliced : `/${sliced}`;
92
- }
93
- function matchesPrefix(pathname, prefix) {
94
- const normalized = normalizePrefix(prefix);
95
- return !normalized || pathname === normalized || pathname.startsWith(`${normalized}/`);
96
- }
97
- function createRequestForMountedPrefix(req, prefix) {
98
- const url = new URL(req.url);
99
- const nextPath = removePrefixFromPath(url.pathname, prefix);
100
- if (nextPath === url.pathname) return req;
101
- url.pathname = nextPath;
102
- return new Request(url, req);
103
- }
104
- function createEdgeEffectContext(originalRequest, effectRequest, options) {
105
- const originalPath = options.path || new URL(originalRequest.url).pathname;
106
- const method = options.method || originalRequest.method;
107
- return {
108
- request: effectRequest,
109
- env: options.env || {},
110
- path: originalPath,
111
- method,
112
- operationContext: (0, _operation_context__rspack_import_3.createEffectOperationContext)({
113
- request: effectRequest,
114
- env: options.env || {},
115
- path: originalPath,
116
- method
117
- })
118
- };
119
- }
120
- function createRuntimeErrorResponse(error) {
121
- return (0, _safe_failure__rspack_import_0.createSafeFailureResponse)(error);
122
- }
94
+ var _operation_context__rspack_import_5 = __webpack_require__("./operation-context");
123
95
  async function dispatchEffectBffRequest(handler, request, options = {}) {
124
- const requestPathname = new URL(request.url).pathname;
125
- if (!matchesPrefix(requestPathname, options.prefix)) return new Response(null, {
126
- status: 404
96
+ return (0, _dispatch__rspack_import_0.dispatchEffectBffRequestWithContext)(handler, request, {
97
+ ...options,
98
+ runWithEffectContext: _edge_context__rspack_import_1.runWithEffectContext
127
99
  });
128
- const effectRequest = createRequestForMountedPrefix(request, options.prefix);
129
- const effectContext = createEdgeEffectContext(request, effectRequest, options);
130
- try {
131
- const response = await (0, _edge_context__rspack_import_1.runWithEffectContext)(effectContext, ()=>handler.length > 1 ? handler(effectRequest, effectContext) : handler(effectRequest));
132
- if (!(response instanceof Response)) throw new Error('[BFF][Effect] Effect handler must return a Response instance.');
133
- return new Response(response.body, response);
134
- } catch (error) {
135
- if (error instanceof Response) return new Response(error.body, error);
136
- if (options.onError) {
137
- const errorResponse = await options.onError(error, effectContext);
138
- if (errorResponse instanceof Response) return errorResponse;
139
- }
140
- return createRuntimeErrorResponse(error);
141
- }
142
100
  }
143
- const createEffectBffTestHandler = createEffectBffEdgeHandler;
144
- async function createEffectBffEdgeHandler(options) {
101
+ async function createEffectBffEdgeDispatcher(options) {
145
102
  const loaded = await (0, _module__rspack_import_2.resolveEffectBffModuleHandler)(options.module, {
146
103
  openapi: options.openapi,
147
104
  dataPlatform: options.dataPlatform,
@@ -149,7 +106,7 @@ var __webpack_exports__ = {};
149
106
  });
150
107
  if (!loaded) throw new Error('[BFF][Effect] Invalid Effect edge module. Export defineEffectBff(...) or a { api, layer } HttpApi module.');
151
108
  return {
152
- handler: (request, dispatchOptions = {})=>dispatchEffectBffRequest(loaded.handler, request, {
109
+ dispatch: (request, dispatchOptions = {})=>dispatchEffectBffRequest(loaded.handler, request, {
153
110
  ...dispatchOptions,
154
111
  prefix: options.prefix,
155
112
  onError: options.onError
@@ -159,10 +116,26 @@ var __webpack_exports__ = {};
159
116
  }
160
117
  };
161
118
  }
119
+ const createEffectBffTestHandler = createEffectBffEdgeHandler;
120
+ async function createEffectBffEdgeHandler(options) {
121
+ const dispatcher = await createEffectBffEdgeDispatcher(options);
122
+ return {
123
+ handler: dispatcher.dispatch,
124
+ dispose: dispatcher.dispose
125
+ };
126
+ }
162
127
  __webpack_require__.d(__webpack_exports__, {
128
+ BACKEND_FEDERATION_CONTRACT_VERSION: ()=>_backend_federation__rspack_import_3.BACKEND_FEDERATION_CONTRACT_VERSION,
129
+ BACKEND_FEDERATION_EFFECT_EXPOSE: ()=>_backend_federation__rspack_import_3.BACKEND_FEDERATION_EFFECT_EXPOSE,
130
+ BACKEND_FEDERATION_MANIFEST_FILE: ()=>_backend_federation__rspack_import_3.BACKEND_FEDERATION_MANIFEST_FILE,
131
+ BACKEND_FEDERATION_NODE_ADAPTER_VERSION: ()=>_backend_federation__rspack_import_3.BACKEND_FEDERATION_NODE_ADAPTER_VERSION,
132
+ createBackendFederationLoadEntryPlugin: ()=>_backend_federation__rspack_import_3.createBackendFederationLoadEntryPlugin,
133
+ createBackendFederationRuntime: ()=>_backend_federation__rspack_import_3.createBackendFederationRuntime,
134
+ createEffectBffEdgeDispatcher: ()=>createEffectBffEdgeDispatcher,
163
135
  createEffectBffEdgeHandler: ()=>createEffectBffEdgeHandler,
164
- createEffectOperationContext: ()=>_operation_context__rspack_import_3.createEffectOperationContext,
136
+ createEffectOperationContext: ()=>_operation_context__rspack_import_5.createEffectOperationContext,
165
137
  dispatchEffectBffRequest: ()=>dispatchEffectBffRequest,
138
+ loadBackendFederatedEffectApi: ()=>_backend_federation__rspack_import_3.loadBackendFederatedEffectApi,
166
139
  runWithEffectContext: ()=>_edge_context__rspack_import_1.runWithEffectContext,
167
140
  useEffectContext: ()=>_edge_context__rspack_import_1.useEffectContext,
168
141
  useOperationContext: ()=>_edge_context__rspack_import_1.useOperationContext
@@ -170,18 +143,34 @@ var __webpack_exports__ = {};
170
143
  createEffectBffTestHandler: createEffectBffTestHandler
171
144
  });
172
145
  })();
146
+ exports.BACKEND_FEDERATION_CONTRACT_VERSION = __webpack_exports__.BACKEND_FEDERATION_CONTRACT_VERSION;
147
+ exports.BACKEND_FEDERATION_EFFECT_EXPOSE = __webpack_exports__.BACKEND_FEDERATION_EFFECT_EXPOSE;
148
+ exports.BACKEND_FEDERATION_MANIFEST_FILE = __webpack_exports__.BACKEND_FEDERATION_MANIFEST_FILE;
149
+ exports.BACKEND_FEDERATION_NODE_ADAPTER_VERSION = __webpack_exports__.BACKEND_FEDERATION_NODE_ADAPTER_VERSION;
150
+ exports.createBackendFederationLoadEntryPlugin = __webpack_exports__.createBackendFederationLoadEntryPlugin;
151
+ exports.createBackendFederationRuntime = __webpack_exports__.createBackendFederationRuntime;
152
+ exports.createEffectBffEdgeDispatcher = __webpack_exports__.createEffectBffEdgeDispatcher;
173
153
  exports.createEffectBffEdgeHandler = __webpack_exports__.createEffectBffEdgeHandler;
174
154
  exports.createEffectBffTestHandler = __webpack_exports__.createEffectBffTestHandler;
175
155
  exports.createEffectOperationContext = __webpack_exports__.createEffectOperationContext;
176
156
  exports.dispatchEffectBffRequest = __webpack_exports__.dispatchEffectBffRequest;
157
+ exports.loadBackendFederatedEffectApi = __webpack_exports__.loadBackendFederatedEffectApi;
177
158
  exports.runWithEffectContext = __webpack_exports__.runWithEffectContext;
178
159
  exports.useEffectContext = __webpack_exports__.useEffectContext;
179
160
  exports.useOperationContext = __webpack_exports__.useOperationContext;
180
161
  for(var __rspack_i in __webpack_exports__)if (-1 === [
162
+ "BACKEND_FEDERATION_CONTRACT_VERSION",
163
+ "BACKEND_FEDERATION_EFFECT_EXPOSE",
164
+ "BACKEND_FEDERATION_MANIFEST_FILE",
165
+ "BACKEND_FEDERATION_NODE_ADAPTER_VERSION",
166
+ "createBackendFederationLoadEntryPlugin",
167
+ "createBackendFederationRuntime",
168
+ "createEffectBffEdgeDispatcher",
181
169
  "createEffectBffEdgeHandler",
182
170
  "createEffectBffTestHandler",
183
171
  "createEffectOperationContext",
184
172
  "dispatchEffectBffRequest",
173
+ "loadBackendFederatedEffectApi",
185
174
  "runWithEffectContext",
186
175
  "useEffectContext",
187
176
  "useOperationContext"
@@ -39,6 +39,7 @@ __webpack_require__.d(__webpack_exports__, {
39
39
  toOperationContractSources: ()=>toOperationContractSources
40
40
  });
41
41
  const bff_core_namespaceObject = require("@modern-js/bff-core");
42
+ const external_entry_shape_js_namespaceObject = require("./entry-shape.js");
42
43
  function ensureLeadingSlash(pathname) {
43
44
  return pathname.startsWith('/') ? pathname : `/${pathname}`;
44
45
  }
@@ -88,19 +89,13 @@ function createEffectOperationContractSource(endpoint) {
88
89
  routePath: endpoint.routePath
89
90
  };
90
91
  }
91
- function isRecord(value) {
92
- return 'object' == typeof value && null !== value;
93
- }
94
92
  async function extractHttpApiFromModule(mod, isHttpApi) {
95
- if (!isRecord(mod)) return null;
96
- if (isHttpApi(mod.api)) return mod.api;
97
- const entry = mod.default;
98
- if (isRecord(entry) && isHttpApi(entry.api)) return entry.api;
99
- if ('function' == typeof entry && 0 === entry.length) {
100
- const output = await entry();
101
- if (isRecord(output) && isHttpApi(output.api)) return output.api;
102
- }
103
- return null;
93
+ const facts = (0, external_entry_shape_js_namespaceObject.classifyEffectBffEntryModule)(mod, {
94
+ isRequestHandler: (value)=>'function' == typeof value,
95
+ isValidatorAwareHandlerFactory: external_entry_shape_js_namespaceObject.isValidatorAwareHandlerFactory,
96
+ isHttpApi
97
+ });
98
+ return !facts?.legacyShape && facts?.api !== void 0 && facts.hasRuntimeLayer && (void 0 === facts.createHandler || facts.createHandlerValidatorAware) ? facts.api : null;
104
99
  }
105
100
  function createEffectEndpointContractHash(endpoint, requestId) {
106
101
  return (0, bff_core_namespaceObject.createOperationContractHash)(createEffectOperationContractSource(endpoint), requestId);
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
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");
13
+ };
14
+ })();
15
+ (()=>{
16
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
17
+ })();
18
+ (()=>{
19
+ __webpack_require__.r = (exports1)=>{
20
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
21
+ value: 'Module'
22
+ });
23
+ Object.defineProperty(exports1, '__esModule', {
24
+ value: true
25
+ });
26
+ };
27
+ })();
28
+ var __webpack_exports__ = {};
29
+ __webpack_require__.r(__webpack_exports__);
30
+ const EFFECT_VALIDATOR_AWARE_FACTORY = Symbol.for('modernjs.effect.validatorAware');
31
+ function isValidatorAwareHandlerFactory(factory) {
32
+ return Boolean('function' == typeof factory && factory[EFFECT_VALIDATOR_AWARE_FACTORY]);
33
+ }
34
+ const strictEffectApproachMessage = '[BFF][Effect] strictEffectApproach is enforced: Effect API entries export defineEffectBff(...) or { api, layer } HttpApi module. Raw handler exports, default request handlers, unbranded custom createHandler factories not valid Effect API entries.';
35
+ function isEffectEntryRecord(value) {
36
+ return 'object' == typeof value && null !== value;
37
+ }
38
+ function classifyEffectBffEntryModule(value, predicates) {
39
+ if (!isEffectEntryRecord(value)) return null;
40
+ const rootModule = value;
41
+ if (predicates.isRequestHandler(rootModule.handler)) return createEntryShapeFacts(rootModule, predicates, '`handler` export');
42
+ const defaultEntry = rootModule.default;
43
+ if (predicates.isRequestHandler(defaultEntry)) return createEntryShapeFacts(rootModule, predicates, 'default request handler');
44
+ const module = isEffectEntryRecord(defaultEntry) ? {
45
+ ...rootModule,
46
+ ...defaultEntry
47
+ } : rootModule;
48
+ if (predicates.isRequestHandler(module.handler)) return createEntryShapeFacts(module, predicates, '`handler` export');
49
+ return createEntryShapeFacts(module, predicates);
50
+ }
51
+ function createEntryShapeFacts(module, predicates, legacyShape) {
52
+ const createHandler = 'function' == typeof module.createHandler ? module.createHandler : void 0;
53
+ const api = predicates.isHttpApi(module.api) ? module.api : void 0;
54
+ const hasRuntimeLayer = void 0 !== module.layer;
55
+ return {
56
+ module,
57
+ legacyShape,
58
+ createHandler,
59
+ createHandlerValidatorAware: void 0 !== createHandler && predicates.isValidatorAwareHandlerFactory(createHandler),
60
+ api,
61
+ layer: module.layer,
62
+ hasRuntimeLayer
63
+ };
64
+ }
65
+ __webpack_require__.d(__webpack_exports__, {
66
+ classifyEffectBffEntryModule: ()=>classifyEffectBffEntryModule,
67
+ isEffectEntryRecord: ()=>isEffectEntryRecord,
68
+ isValidatorAwareHandlerFactory: ()=>isValidatorAwareHandlerFactory
69
+ }, {
70
+ EFFECT_VALIDATOR_AWARE_FACTORY: EFFECT_VALIDATOR_AWARE_FACTORY,
71
+ strictEffectApproachMessage: strictEffectApproachMessage
72
+ });
73
+ exports.EFFECT_VALIDATOR_AWARE_FACTORY = __webpack_exports__.EFFECT_VALIDATOR_AWARE_FACTORY;
74
+ exports.classifyEffectBffEntryModule = __webpack_exports__.classifyEffectBffEntryModule;
75
+ exports.isEffectEntryRecord = __webpack_exports__.isEffectEntryRecord;
76
+ exports.isValidatorAwareHandlerFactory = __webpack_exports__.isValidatorAwareHandlerFactory;
77
+ exports.strictEffectApproachMessage = __webpack_exports__.strictEffectApproachMessage;
78
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
79
+ "EFFECT_VALIDATOR_AWARE_FACTORY",
80
+ "classifyEffectBffEntryModule",
81
+ "isEffectEntryRecord",
82
+ "isValidatorAwareHandlerFactory",
83
+ "strictEffectApproachMessage"
84
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
85
+ Object.defineProperty(exports, '__esModule', {
86
+ value: true
87
+ });
@@ -3,6 +3,9 @@ var __webpack_modules__ = {
3
3
  "../data-platform" (module) {
4
4
  module.exports = require("../data-platform/index.js");
5
5
  },
6
+ "./entry-shape" (module) {
7
+ module.exports = require("./entry-shape.js");
8
+ },
6
9
  "effect/Config" (module) {
7
10
  module.exports = require("effect/Config");
8
11
  },
@@ -84,10 +87,11 @@ var __webpack_exports__ = {};
84
87
  var effect_unstable_httpapi__rspack_import_3 = __webpack_require__("effect/unstable/httpapi");
85
88
  var effect_unstable_rpc__rspack_import_4 = __webpack_require__("effect/unstable/rpc");
86
89
  var _data_platform__rspack_import_5 = __webpack_require__("../data-platform");
87
- var effect_Config__rspack_import_6 = __webpack_require__("effect/Config");
88
- var effect_Effect__rspack_import_7 = __webpack_require__("effect/Effect");
89
- var effect_Option__rspack_import_8 = __webpack_require__("effect/Option");
90
- var effect_Schema__rspack_import_9 = __webpack_require__("effect/Schema");
90
+ var _entry_shape__rspack_import_6 = __webpack_require__("./entry-shape");
91
+ var effect_Config__rspack_import_7 = __webpack_require__("effect/Config");
92
+ var effect_Effect__rspack_import_8 = __webpack_require__("effect/Effect");
93
+ var effect_Option__rspack_import_9 = __webpack_require__("effect/Option");
94
+ var effect_Schema__rspack_import_10 = __webpack_require__("effect/Schema");
91
95
  var __rspack_reexport = {};
92
96
  for(const __rspack_import_key in effect_unstable_http__rspack_import_2)if ([
93
97
  "Config",
@@ -142,10 +146,6 @@ var __webpack_exports__ = {};
142
146
  const emptyEffectServiceContext = effect_Context__rspack_import_0.empty();
143
147
  const isEffectServiceContext = (context)=>'object' == typeof context && null !== context && 'mapUnsafe' in context;
144
148
  const toEffectServiceContext = (context)=>isEffectServiceContext(context) ? context : emptyEffectServiceContext;
145
- const EFFECT_VALIDATOR_AWARE_FACTORY = Symbol.for('modernjs.effect.validatorAware');
146
- function isValidatorAwareHandlerFactory(factory) {
147
- return 'function' == typeof factory && true === factory[EFFECT_VALIDATOR_AWARE_FACTORY];
148
- }
149
149
  function normalizeOpenApiPath(pathname) {
150
150
  if (!pathname.startsWith('/')) return `/${pathname}`;
151
151
  return pathname;
@@ -440,7 +440,7 @@ var __webpack_exports__ = {};
440
440
  validateRequest: options?.validateRequest
441
441
  });
442
442
  };
443
- Object.defineProperty(createHandler, EFFECT_VALIDATOR_AWARE_FACTORY, {
443
+ Object.defineProperty(createHandler, _entry_shape__rspack_import_6.EFFECT_VALIDATOR_AWARE_FACTORY, {
444
444
  value: true
445
445
  });
446
446
  const client = createLoaderMaterializedClientPlaceholder();
@@ -635,19 +635,18 @@ var __webpack_exports__ = {};
635
635
  };
636
636
  }
637
637
  __webpack_require__.d(__webpack_exports__, {
638
- Config: ()=>effect_Config__rspack_import_6,
639
- Effect: ()=>effect_Effect__rspack_import_7,
638
+ Config: ()=>effect_Config__rspack_import_7,
639
+ EFFECT_VALIDATOR_AWARE_FACTORY: ()=>_entry_shape__rspack_import_6.EFFECT_VALIDATOR_AWARE_FACTORY,
640
+ Effect: ()=>effect_Effect__rspack_import_8,
640
641
  HttpApiBuilder: ()=>effect_unstable_httpapi__rspack_import_3.HttpApiBuilder,
641
642
  HttpTraceContext: ()=>effect_unstable_http__rspack_import_2.HttpTraceContext,
642
643
  Layer: ()=>effect_Layer__rspack_import_1,
643
- Option: ()=>effect_Option__rspack_import_8,
644
- Schema: ()=>effect_Schema__rspack_import_9,
644
+ Option: ()=>effect_Option__rspack_import_9,
645
+ Schema: ()=>effect_Schema__rspack_import_10,
645
646
  createHttpApiHandler: ()=>createHttpApiHandler,
646
647
  defineEffectBff: ()=>defineEffectBff,
647
648
  defineEffectRpcBff: ()=>defineEffectRpcBff,
648
- isValidatorAwareHandlerFactory: ()=>isValidatorAwareHandlerFactory
649
- }, {
650
- EFFECT_VALIDATOR_AWARE_FACTORY: EFFECT_VALIDATOR_AWARE_FACTORY
649
+ isValidatorAwareHandlerFactory: ()=>_entry_shape__rspack_import_6.isValidatorAwareHandlerFactory
651
650
  });
652
651
  })();
653
652
  exports.Config = __webpack_exports__.Config;
@@ -1,5 +1,11 @@
1
1
  "use strict";
2
2
  var __webpack_modules__ = {
3
+ "./backend-federation-manifest" (module) {
4
+ module.exports = require("./backend-federation-manifest.js");
5
+ },
6
+ "./backend-federation" (module) {
7
+ module.exports = require("./backend-federation.js");
8
+ },
3
9
  "./context" (module) {
4
10
  module.exports = require("./context.js");
5
11
  },
@@ -61,47 +67,117 @@ var __webpack_exports__ = {};
61
67
  (()=>{
62
68
  __webpack_require__.r(__webpack_exports__);
63
69
  var _effect_opentelemetry__rspack_import_0 = __webpack_require__("@effect/opentelemetry");
64
- var _context__rspack_import_1 = __webpack_require__("./context");
65
- var _edge__rspack_import_2 = __webpack_require__("./edge");
66
- var _handler__rspack_import_3 = __webpack_require__("./handler");
70
+ var _backend_federation__rspack_import_1 = __webpack_require__("./backend-federation");
67
71
  var __rspack_reexport = {};
68
- for(const __rspack_import_key in _handler__rspack_import_3)if ([
72
+ for(const __rspack_import_key in _backend_federation__rspack_import_1)if ([
73
+ "createBackendFederationLoadEntryPlugin",
74
+ "createEffectOperationContext",
75
+ "BACKEND_FEDERATION_MANIFEST_FILE",
76
+ "useOperationContext",
77
+ "loadBackendFederatedEffectApi",
78
+ "BACKEND_FEDERATION_CONTRACT_VERSION",
79
+ "OpenTelemetry",
80
+ "loadBackendFederatedEffectApiFromManifest",
81
+ "createEffectBffEdgeHandler",
82
+ "BackendFederationManifestAdapterError",
83
+ "resolveBackendFederationRemoteFromManifest",
84
+ "BACKEND_FEDERATION_EFFECT_EXPOSE",
69
85
  "runWithEffectContext",
70
86
  "useEffectContext",
87
+ "loadBackendFederationManifest",
88
+ "dispatchEffectBffRequest",
71
89
  "default",
72
- "useOperationContext",
90
+ "BACKEND_FEDERATION_NODE_ADAPTER_VERSION",
91
+ "createEffectBffTestHandler",
92
+ "createBackendFederationRuntime"
93
+ ].indexOf(__rspack_import_key) < 0) __rspack_reexport[__rspack_import_key] = ()=>_backend_federation__rspack_import_1[__rspack_import_key];
94
+ __webpack_require__.d(__webpack_exports__, __rspack_reexport);
95
+ var _backend_federation_manifest__rspack_import_2 = __webpack_require__("./backend-federation-manifest");
96
+ var _context__rspack_import_3 = __webpack_require__("./context");
97
+ var _edge__rspack_import_4 = __webpack_require__("./edge");
98
+ var _handler__rspack_import_5 = __webpack_require__("./handler");
99
+ var __rspack_reexport = {};
100
+ for(const __rspack_import_key in _handler__rspack_import_5)if ([
101
+ "createBackendFederationLoadEntryPlugin",
73
102
  "createEffectOperationContext",
103
+ "BACKEND_FEDERATION_MANIFEST_FILE",
104
+ "useOperationContext",
105
+ "loadBackendFederatedEffectApi",
106
+ "BACKEND_FEDERATION_CONTRACT_VERSION",
107
+ "OpenTelemetry",
108
+ "loadBackendFederatedEffectApiFromManifest",
109
+ "createEffectBffEdgeHandler",
110
+ "BackendFederationManifestAdapterError",
111
+ "resolveBackendFederationRemoteFromManifest",
112
+ "BACKEND_FEDERATION_EFFECT_EXPOSE",
113
+ "runWithEffectContext",
114
+ "useEffectContext",
115
+ "loadBackendFederationManifest",
74
116
  "dispatchEffectBffRequest",
117
+ "default",
118
+ "BACKEND_FEDERATION_NODE_ADAPTER_VERSION",
75
119
  "createEffectBffTestHandler",
76
- "OpenTelemetry",
77
- "createEffectBffEdgeHandler"
78
- ].indexOf(__rspack_import_key) < 0) __rspack_reexport[__rspack_import_key] = ()=>_handler__rspack_import_3[__rspack_import_key];
120
+ "createBackendFederationRuntime"
121
+ ].indexOf(__rspack_import_key) < 0) __rspack_reexport[__rspack_import_key] = ()=>_handler__rspack_import_5[__rspack_import_key];
79
122
  __webpack_require__.d(__webpack_exports__, __rspack_reexport);
80
123
  __webpack_require__.d(__webpack_exports__, {
124
+ BACKEND_FEDERATION_CONTRACT_VERSION: ()=>_backend_federation__rspack_import_1.BACKEND_FEDERATION_CONTRACT_VERSION,
125
+ BACKEND_FEDERATION_EFFECT_EXPOSE: ()=>_backend_federation__rspack_import_1.BACKEND_FEDERATION_EFFECT_EXPOSE,
126
+ BACKEND_FEDERATION_MANIFEST_FILE: ()=>_backend_federation__rspack_import_1.BACKEND_FEDERATION_MANIFEST_FILE,
127
+ BACKEND_FEDERATION_NODE_ADAPTER_VERSION: ()=>_backend_federation__rspack_import_1.BACKEND_FEDERATION_NODE_ADAPTER_VERSION,
128
+ BackendFederationManifestAdapterError: ()=>_backend_federation_manifest__rspack_import_2.BackendFederationManifestAdapterError,
81
129
  OpenTelemetry: ()=>_effect_opentelemetry__rspack_import_0,
82
- createEffectBffEdgeHandler: ()=>_edge__rspack_import_2.createEffectBffEdgeHandler,
83
- createEffectBffTestHandler: ()=>_edge__rspack_import_2.createEffectBffTestHandler,
84
- createEffectOperationContext: ()=>_context__rspack_import_1.createEffectOperationContext,
85
- dispatchEffectBffRequest: ()=>_edge__rspack_import_2.dispatchEffectBffRequest,
86
- runWithEffectContext: ()=>_context__rspack_import_1.runWithEffectContext,
87
- useEffectContext: ()=>_context__rspack_import_1.useEffectContext,
88
- useOperationContext: ()=>_context__rspack_import_1.useOperationContext
130
+ createBackendFederationLoadEntryPlugin: ()=>_backend_federation__rspack_import_1.createBackendFederationLoadEntryPlugin,
131
+ createBackendFederationRuntime: ()=>_backend_federation__rspack_import_1.createBackendFederationRuntime,
132
+ createEffectBffEdgeHandler: ()=>_edge__rspack_import_4.createEffectBffEdgeHandler,
133
+ createEffectBffTestHandler: ()=>_edge__rspack_import_4.createEffectBffTestHandler,
134
+ createEffectOperationContext: ()=>_context__rspack_import_3.createEffectOperationContext,
135
+ dispatchEffectBffRequest: ()=>_edge__rspack_import_4.dispatchEffectBffRequest,
136
+ loadBackendFederatedEffectApi: ()=>_backend_federation__rspack_import_1.loadBackendFederatedEffectApi,
137
+ loadBackendFederatedEffectApiFromManifest: ()=>_backend_federation_manifest__rspack_import_2.loadBackendFederatedEffectApiFromManifest,
138
+ loadBackendFederationManifest: ()=>_backend_federation_manifest__rspack_import_2.loadBackendFederationManifest,
139
+ resolveBackendFederationRemoteFromManifest: ()=>_backend_federation_manifest__rspack_import_2.resolveBackendFederationRemoteFromManifest,
140
+ runWithEffectContext: ()=>_context__rspack_import_3.runWithEffectContext,
141
+ useEffectContext: ()=>_context__rspack_import_3.useEffectContext,
142
+ useOperationContext: ()=>_context__rspack_import_3.useOperationContext
89
143
  });
90
144
  })();
145
+ exports.BACKEND_FEDERATION_CONTRACT_VERSION = __webpack_exports__.BACKEND_FEDERATION_CONTRACT_VERSION;
146
+ exports.BACKEND_FEDERATION_EFFECT_EXPOSE = __webpack_exports__.BACKEND_FEDERATION_EFFECT_EXPOSE;
147
+ exports.BACKEND_FEDERATION_MANIFEST_FILE = __webpack_exports__.BACKEND_FEDERATION_MANIFEST_FILE;
148
+ exports.BACKEND_FEDERATION_NODE_ADAPTER_VERSION = __webpack_exports__.BACKEND_FEDERATION_NODE_ADAPTER_VERSION;
149
+ exports.BackendFederationManifestAdapterError = __webpack_exports__.BackendFederationManifestAdapterError;
91
150
  exports.OpenTelemetry = __webpack_exports__.OpenTelemetry;
151
+ exports.createBackendFederationLoadEntryPlugin = __webpack_exports__.createBackendFederationLoadEntryPlugin;
152
+ exports.createBackendFederationRuntime = __webpack_exports__.createBackendFederationRuntime;
92
153
  exports.createEffectBffEdgeHandler = __webpack_exports__.createEffectBffEdgeHandler;
93
154
  exports.createEffectBffTestHandler = __webpack_exports__.createEffectBffTestHandler;
94
155
  exports.createEffectOperationContext = __webpack_exports__.createEffectOperationContext;
95
156
  exports.dispatchEffectBffRequest = __webpack_exports__.dispatchEffectBffRequest;
157
+ exports.loadBackendFederatedEffectApi = __webpack_exports__.loadBackendFederatedEffectApi;
158
+ exports.loadBackendFederatedEffectApiFromManifest = __webpack_exports__.loadBackendFederatedEffectApiFromManifest;
159
+ exports.loadBackendFederationManifest = __webpack_exports__.loadBackendFederationManifest;
160
+ exports.resolveBackendFederationRemoteFromManifest = __webpack_exports__.resolveBackendFederationRemoteFromManifest;
96
161
  exports.runWithEffectContext = __webpack_exports__.runWithEffectContext;
97
162
  exports.useEffectContext = __webpack_exports__.useEffectContext;
98
163
  exports.useOperationContext = __webpack_exports__.useOperationContext;
99
164
  for(var __rspack_i in __webpack_exports__)if (-1 === [
165
+ "BACKEND_FEDERATION_CONTRACT_VERSION",
166
+ "BACKEND_FEDERATION_EFFECT_EXPOSE",
167
+ "BACKEND_FEDERATION_MANIFEST_FILE",
168
+ "BACKEND_FEDERATION_NODE_ADAPTER_VERSION",
169
+ "BackendFederationManifestAdapterError",
100
170
  "OpenTelemetry",
171
+ "createBackendFederationLoadEntryPlugin",
172
+ "createBackendFederationRuntime",
101
173
  "createEffectBffEdgeHandler",
102
174
  "createEffectBffTestHandler",
103
175
  "createEffectOperationContext",
104
176
  "dispatchEffectBffRequest",
177
+ "loadBackendFederatedEffectApi",
178
+ "loadBackendFederatedEffectApiFromManifest",
179
+ "loadBackendFederationManifest",
180
+ "resolveBackendFederationRemoteFromManifest",
105
181
  "runWithEffectContext",
106
182
  "useEffectContext",
107
183
  "useOperationContext"