@bleedingdev/modern-js-plugin-bff-extensions 3.9.0-ultramodern.4 → 3.9.0-ultramodern.6
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/README.md +6 -3
- package/dist/cjs/backend-federation/edge-runtime.js +3 -15
- package/dist/cjs/backend-federation/edge.js +8 -9
- package/dist/cjs/backend-federation/identity.js +17 -23
- package/dist/cjs/backend-federation/index.js +5 -5
- package/dist/cjs/backend-federation/load.js +3 -13
- package/dist/cjs/backend-federation/validate-loaded.js +2 -4
- package/dist/cjs/backend-federation-manifest/load.js +9 -7
- package/dist/cjs/backend-federation-manifest/metadata.js +3 -3
- package/dist/cjs/backend-federation-manifest/remote.js +2 -2
- package/dist/cjs/backend-federation-manifest/validation.js +7 -7
- package/dist/cjs/cross-project-policy/evaluation.js +3 -3
- package/dist/cjs/cross-project-policy/node.js +4 -3
- package/dist/cjs/{backend-federation/legacy-warning.js → cross-project-policy/producer-runtime.js} +23 -5
- package/dist/cjs/effect-adapter/entry.js +1 -0
- package/dist/cjs/effect-adapter/index.js +9 -2
- package/dist/cjs/{client-generator → effect-source-loader}/built-entry.js +1 -1
- package/dist/cjs/{client-generator/runtime.js → effect-source-loader/http-api-runtime.js} +12 -20
- package/dist/cjs/effect-source-loader/index.js +14 -6
- package/dist/cjs/effect-source-loader/loader.js +6 -4
- package/dist/cjs/effect-source-loader/operation-contracts.js +83 -0
- package/dist/cjs/effect-source-loader/rspack-loader.js +73 -0
- package/dist/cjs/effect-source-loader/worker-runtime-wrapper.js +7 -50
- package/dist/cjs/hono/cross-project-policy.js +2 -1
- package/dist/cjs/hono/node.js +51 -0
- package/dist/esm/backend-federation/edge-runtime.mjs +2 -11
- package/dist/esm/backend-federation/edge.mjs +4 -5
- package/dist/esm/backend-federation/identity.mjs +17 -23
- package/dist/esm/backend-federation/index.mjs +1 -1
- package/dist/esm/backend-federation/load.mjs +2 -12
- package/dist/esm/backend-federation/validate-loaded.mjs +2 -4
- package/dist/esm/backend-federation-manifest/load.mjs +9 -7
- package/dist/esm/backend-federation-manifest/metadata.mjs +1 -1
- package/dist/esm/backend-federation-manifest/remote.mjs +1 -1
- package/dist/esm/backend-federation-manifest/validation.mjs +5 -5
- package/dist/esm/cross-project-policy/evaluation.mjs +1 -1
- package/dist/esm/cross-project-policy/node.mjs +2 -1
- package/dist/esm/cross-project-policy/producer-runtime.mjs +20 -0
- package/dist/esm/effect-adapter/entry.mjs +1 -0
- package/dist/esm/effect-adapter/index.mjs +5 -1
- package/dist/esm/{client-generator → effect-source-loader}/built-entry.mjs +1 -1
- package/dist/esm/effect-source-loader/http-api-runtime.mjs +19 -0
- package/dist/esm/effect-source-loader/index.mjs +4 -2
- package/dist/esm/effect-source-loader/loader.mjs +6 -4
- package/dist/esm/effect-source-loader/operation-contracts.mjs +45 -0
- package/dist/esm/effect-source-loader/rspack-loader.mjs +35 -0
- package/dist/esm/effect-source-loader/worker-runtime-wrapper.mjs +5 -45
- package/dist/esm/hono/cross-project-policy.mjs +2 -1
- package/dist/esm-node/backend-federation/edge-runtime.mjs +2 -11
- package/dist/esm-node/backend-federation/edge.mjs +4 -5
- package/dist/esm-node/backend-federation/identity.mjs +17 -23
- package/dist/esm-node/backend-federation/index.mjs +1 -1
- package/dist/esm-node/backend-federation/load.mjs +2 -12
- package/dist/esm-node/backend-federation/validate-loaded.mjs +2 -4
- package/dist/esm-node/backend-federation-manifest/load.mjs +9 -7
- package/dist/esm-node/backend-federation-manifest/metadata.mjs +1 -1
- package/dist/esm-node/backend-federation-manifest/remote.mjs +1 -1
- package/dist/esm-node/backend-federation-manifest/validation.mjs +5 -5
- package/dist/esm-node/cross-project-policy/evaluation.mjs +1 -1
- package/dist/esm-node/cross-project-policy/node.mjs +2 -1
- package/dist/esm-node/cross-project-policy/producer-runtime.mjs +21 -0
- package/dist/esm-node/effect-adapter/entry.mjs +1 -0
- package/dist/esm-node/effect-adapter/index.mjs +5 -1
- package/dist/esm-node/{client-generator → effect-source-loader}/built-entry.mjs +1 -1
- package/dist/esm-node/effect-source-loader/http-api-runtime.mjs +20 -0
- package/dist/esm-node/effect-source-loader/index.mjs +4 -2
- package/dist/esm-node/effect-source-loader/loader.mjs +6 -4
- package/dist/esm-node/effect-source-loader/operation-contracts.mjs +46 -0
- package/dist/esm-node/effect-source-loader/rspack-loader.mjs +37 -0
- package/dist/esm-node/effect-source-loader/worker-runtime-wrapper.mjs +5 -45
- package/dist/esm-node/hono/cross-project-policy.mjs +2 -1
- package/dist/esm-node/hono/node.mjs +14 -0
- package/dist/types/backend-federation/edge-runtime.d.ts +0 -5
- package/dist/types/backend-federation/edge.d.ts +1 -3
- package/dist/types/backend-federation/identity.d.ts +2 -11
- package/dist/types/backend-federation/index.d.ts +1 -1
- package/dist/types/backend-federation/load.d.ts +1 -7
- package/dist/types/backend-federation/node.d.ts +1 -3
- package/dist/types/backend-federation/types.d.ts +1 -7
- package/dist/types/backend-federation/validate-loaded.d.ts +1 -2
- package/dist/types/backend-federation-manifest/metadata.d.ts +0 -6
- package/dist/types/cross-project-policy/evaluation.d.ts +1 -1
- package/dist/types/cross-project-policy/node.d.ts +2 -1
- package/dist/types/cross-project-policy/producer-runtime.d.ts +20 -0
- package/dist/types/effect-adapter/entry.d.ts +1 -0
- package/dist/types/effect-adapter/index.d.ts +2 -0
- package/dist/types/effect-source-loader/index.d.ts +4 -2
- package/dist/types/effect-source-loader/operation-contracts.d.ts +8 -0
- package/dist/types/effect-source-loader/rspack-loader.d.ts +9 -0
- package/dist/types/effect-source-loader/worker-runtime-wrapper.d.ts +4 -22
- package/dist/types/hono/node.d.ts +4 -0
- package/package.json +48 -20
- package/src/backend-federation/edge-runtime.ts +2 -13
- package/src/backend-federation/edge.ts +9 -17
- package/src/backend-federation/identity.ts +9 -27
- package/src/backend-federation/index.ts +1 -1
- package/src/backend-federation/load.ts +7 -34
- package/src/backend-federation/node.ts +0 -11
- package/src/backend-federation/types.ts +1 -7
- package/src/backend-federation/validate-loaded.ts +2 -7
- package/src/backend-federation-manifest/load.ts +20 -14
- package/src/backend-federation-manifest/metadata.ts +1 -7
- package/src/backend-federation-manifest/remote.ts +1 -1
- package/src/backend-federation-manifest/validation.ts +10 -13
- package/src/cross-project-policy/evaluation.ts +1 -1
- package/src/cross-project-policy/node.ts +3 -3
- package/src/cross-project-policy/producer-runtime.ts +43 -0
- package/src/effect-adapter/entry.ts +1 -0
- package/src/effect-adapter/index.ts +5 -0
- package/src/{client-generator → effect-source-loader}/built-entry.ts +1 -3
- package/src/effect-source-loader/http-api-runtime.ts +39 -0
- package/src/effect-source-loader/index.ts +7 -5
- package/src/effect-source-loader/loader.ts +29 -23
- package/src/effect-source-loader/operation-contracts.ts +72 -0
- package/src/effect-source-loader/rspack-loader.ts +72 -0
- package/src/effect-source-loader/worker-runtime-wrapper.ts +5 -75
- package/src/hono/cross-project-policy.ts +2 -1
- package/src/hono/node.ts +24 -0
- package/dist/cjs/client-generator/generator.js +0 -73
- package/dist/cjs/client-generator/index.js +0 -54
- package/dist/cjs/client-generator/rendering.js +0 -253
- package/dist/cjs/client-generator/types.js +0 -18
- package/dist/esm/backend-federation/legacy-warning.mjs +0 -2
- package/dist/esm/client-generator/generator.mjs +0 -32
- package/dist/esm/client-generator/index.mjs +0 -3
- package/dist/esm/client-generator/rendering.mjs +0 -209
- package/dist/esm/client-generator/runtime.mjs +0 -27
- package/dist/esm/client-generator/types.mjs +0 -0
- package/dist/esm-node/backend-federation/legacy-warning.mjs +0 -3
- package/dist/esm-node/client-generator/generator.mjs +0 -33
- package/dist/esm-node/client-generator/index.mjs +0 -4
- package/dist/esm-node/client-generator/rendering.mjs +0 -210
- package/dist/esm-node/client-generator/runtime.mjs +0 -29
- package/dist/esm-node/client-generator/types.mjs +0 -1
- package/dist/types/backend-federation/legacy-warning.d.ts +0 -1
- package/dist/types/client-generator/generator.d.ts +0 -3
- package/dist/types/client-generator/index.d.ts +0 -4
- package/dist/types/client-generator/rendering.d.ts +0 -24
- package/dist/types/client-generator/types.d.ts +0 -33
- package/src/backend-federation/legacy-warning.ts +0 -2
- package/src/client-generator/generator.ts +0 -52
- package/src/client-generator/index.ts +0 -10
- package/src/client-generator/rendering.ts +0 -307
- package/src/client-generator/runtime.ts +0 -69
- package/src/client-generator/types.ts +0 -35
- /package/dist/cjs/{client-generator → effect-source-loader}/paths.js +0 -0
- /package/dist/esm/{client-generator → effect-source-loader}/paths.mjs +0 -0
- /package/dist/esm-node/{client-generator → effect-source-loader}/paths.mjs +0 -0
- /package/dist/types/{client-generator → effect-source-loader}/built-entry.d.ts +0 -0
- /package/dist/types/{client-generator/runtime.d.ts → effect-source-loader/http-api-runtime.d.ts} +0 -0
- /package/dist/types/{client-generator → effect-source-loader}/paths.d.ts +0 -0
- /package/src/{client-generator → effect-source-loader}/paths.ts +0 -0
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
extractHttpApiFromModule,
|
|
3
|
-
type HttpApiLike,
|
|
4
|
-
type HttpApiReflect,
|
|
5
|
-
} from '@modern-js/bff-effect/effect';
|
|
6
|
-
import { compatibleRequire, upath as path } from '@modern-js/utils';
|
|
7
|
-
import { loadEffectSourceModule } from '../effect-source-loader/loader';
|
|
8
|
-
|
|
9
|
-
type HttpApiRuntime = {
|
|
10
|
-
isHttpApi: (value: unknown) => boolean;
|
|
11
|
-
reflect: HttpApiReflect;
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
let httpApiRuntimePromise: Promise<HttpApiRuntime> | undefined;
|
|
15
|
-
|
|
16
|
-
function isRecord(value: unknown): value is Record<string, unknown> {
|
|
17
|
-
return typeof value === 'object' && value !== null;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
function isHttpApiRuntime(value: unknown): value is HttpApiRuntime {
|
|
21
|
-
return (
|
|
22
|
-
isRecord(value) &&
|
|
23
|
-
typeof value.isHttpApi === 'function' &&
|
|
24
|
-
typeof value.reflect === 'function'
|
|
25
|
-
);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export function getHttpApiRuntime(): Promise<HttpApiRuntime> {
|
|
29
|
-
if (httpApiRuntimePromise === undefined) {
|
|
30
|
-
httpApiRuntimePromise = compatibleRequire('effect/unstable/httpapi', false)
|
|
31
|
-
.catch(error => {
|
|
32
|
-
const message = error instanceof Error ? error.message : String(error);
|
|
33
|
-
if (!message.includes("Cannot find module 'effect/unstable/httpapi'")) {
|
|
34
|
-
throw error;
|
|
35
|
-
}
|
|
36
|
-
const effectPackageJson = require.resolve('effect/package.json');
|
|
37
|
-
const effectHttpApiRuntimePath = path.join(
|
|
38
|
-
path.dirname(effectPackageJson),
|
|
39
|
-
'dist',
|
|
40
|
-
'unstable',
|
|
41
|
-
'httpapi',
|
|
42
|
-
'index.js',
|
|
43
|
-
);
|
|
44
|
-
return compatibleRequire(effectHttpApiRuntimePath, false);
|
|
45
|
-
})
|
|
46
|
-
.then(mod => {
|
|
47
|
-
if (isRecord(mod) && isHttpApiRuntime(mod.HttpApi)) {
|
|
48
|
-
return mod.HttpApi;
|
|
49
|
-
}
|
|
50
|
-
throw new Error(
|
|
51
|
-
'[BFF][Effect] Unable to resolve HttpApi runtime from effect/unstable/httpapi.',
|
|
52
|
-
);
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
return httpApiRuntimePromise;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
export function loadEffectApi(options: {
|
|
60
|
-
appDir: string;
|
|
61
|
-
resourcePath: string;
|
|
62
|
-
onDependency?: (dependency: string) => void;
|
|
63
|
-
}): Promise<HttpApiLike | null> {
|
|
64
|
-
return getHttpApiRuntime().then(httpApiRuntime =>
|
|
65
|
-
loadEffectSourceModule(options).then(mod =>
|
|
66
|
-
extractHttpApiFromModule(mod, httpApiRuntime.isHttpApi),
|
|
67
|
-
),
|
|
68
|
-
);
|
|
69
|
-
}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import type { OperationContractMap } from '@modern-js/bff-core';
|
|
2
|
-
import type { EffectEndpointMeta } from '@modern-js/bff-effect/effect';
|
|
3
|
-
import type { HttpMethodDecider } from '@modern-js/types';
|
|
4
|
-
|
|
5
|
-
export type EffectClientCodegenOptions = {
|
|
6
|
-
appDir: string;
|
|
7
|
-
apiDir: string;
|
|
8
|
-
resourcePath: string;
|
|
9
|
-
prefix: string;
|
|
10
|
-
port: number;
|
|
11
|
-
target?: string;
|
|
12
|
-
/** Producer identity used by cross-project clients and server contracts. */
|
|
13
|
-
requestId?: string;
|
|
14
|
-
requestCreator?: string;
|
|
15
|
-
httpMethodDecider?: HttpMethodDecider;
|
|
16
|
-
onDependency?: (dependency: string) => void;
|
|
17
|
-
dataPlatformBatch?: {
|
|
18
|
-
enabled?: boolean;
|
|
19
|
-
endpoint?: string;
|
|
20
|
-
flushIntervalMs?: number;
|
|
21
|
-
maxBatchSize?: number;
|
|
22
|
-
maxBatchBytes?: number;
|
|
23
|
-
requestTimeoutMs?: number;
|
|
24
|
-
allowedMethods?: string[];
|
|
25
|
-
};
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
export type GeneratedEffectClientArtifacts = {
|
|
29
|
-
code: string;
|
|
30
|
-
declaration: string;
|
|
31
|
-
endpoints: EffectEndpointMeta[];
|
|
32
|
-
operationContracts: OperationContractMap;
|
|
33
|
-
operationVersion: number;
|
|
34
|
-
requestId: string;
|
|
35
|
-
};
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/types/{client-generator/runtime.d.ts → effect-source-loader/http-api-runtime.d.ts}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|