@bleedingdev/modern-js-plugin-bff 3.5.0-ultramodern.6 → 3.5.0-ultramodern.75
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/compress.js +52 -0
- package/dist/cjs/cli/generator.js +152 -0
- package/dist/cjs/cli/prefix.js +50 -0
- package/dist/cjs/cli/serverGlobalVars.js +127 -0
- package/dist/cjs/cli/watch.js +51 -0
- package/dist/cjs/cli.js +11 -130
- package/dist/cjs/loader.js +19 -2
- package/dist/cjs/runtime/data-platform/batch/queue.js +284 -0
- package/dist/cjs/runtime/data-platform/batch/request.js +98 -0
- package/dist/cjs/runtime/data-platform/batch/response.js +64 -0
- package/dist/cjs/runtime/data-platform/batch/telemetry.js +67 -0
- package/dist/cjs/runtime/data-platform/batch/url.js +69 -0
- package/dist/cjs/runtime/data-platform/batch-transport.js +59 -0
- package/dist/cjs/runtime/data-platform/codec.js +155 -0
- package/dist/cjs/runtime/data-platform/index.js +30 -633
- package/dist/cjs/runtime/data-platform/invalidation.js +61 -0
- package/dist/cjs/runtime/data-platform/trace.js +73 -0
- package/dist/cjs/runtime/data-platform/types.js +48 -0
- package/dist/cjs/runtime/data-platform/validation.js +178 -0
- package/dist/cjs/runtime/effect/adapter/constants.js +44 -0
- package/dist/cjs/runtime/effect/adapter/cross-project-policy.js +61 -0
- package/dist/cjs/runtime/effect/adapter/entry.js +92 -0
- package/dist/cjs/runtime/effect/adapter/error-response.js +79 -0
- package/dist/cjs/runtime/effect/adapter/handler.js +53 -0
- package/dist/cjs/runtime/effect/adapter.js +26 -146
- package/dist/cjs/runtime/effect/backend-federation/entry.js +99 -0
- package/dist/cjs/runtime/effect/backend-federation/identity.js +82 -0
- package/dist/cjs/runtime/effect/backend-federation/load.js +66 -0
- package/dist/cjs/runtime/effect/backend-federation/plugin.js +53 -0
- package/dist/cjs/runtime/effect/backend-federation/remotes.js +50 -0
- package/dist/cjs/runtime/effect/backend-federation/runtime.js +64 -0
- package/dist/cjs/runtime/effect/backend-federation/types.js +18 -0
- package/dist/cjs/runtime/effect/backend-federation/utils.js +48 -0
- package/dist/cjs/runtime/effect/backend-federation-manifest/errors.js +83 -0
- package/dist/cjs/runtime/effect/backend-federation-manifest/index.js +55 -0
- package/dist/cjs/runtime/effect/backend-federation-manifest/load.js +94 -0
- package/dist/cjs/runtime/effect/backend-federation-manifest/metadata.js +101 -0
- package/dist/cjs/runtime/effect/backend-federation-manifest/reference.js +120 -0
- package/dist/cjs/runtime/effect/backend-federation-manifest/remote.js +68 -0
- package/dist/cjs/runtime/effect/backend-federation-manifest/types.js +18 -0
- package/dist/cjs/runtime/effect/backend-federation-manifest/validation.js +109 -0
- package/dist/cjs/runtime/effect/backend-federation-manifest.js +62 -0
- package/dist/cjs/runtime/effect/backend-federation.js +65 -0
- package/dist/cjs/runtime/effect/dispatch.js +101 -0
- package/dist/cjs/runtime/effect/edge.js +64 -71
- package/dist/cjs/runtime/effect/endpoint-contracts.js +7 -21
- package/dist/cjs/runtime/effect/entry-shape.js +84 -0
- package/dist/cjs/runtime/effect/handler/batch-handler.js +161 -0
- package/dist/cjs/runtime/effect/handler/batch.js +195 -0
- package/dist/cjs/runtime/effect/handler/definition.js +101 -0
- package/dist/cjs/runtime/effect/handler/envelope.js +104 -0
- package/dist/cjs/runtime/effect/handler/http.js +96 -0
- package/dist/cjs/runtime/effect/handler/openapi.js +57 -0
- package/dist/cjs/runtime/effect/handler/routing.js +100 -0
- package/dist/cjs/runtime/effect/handler/rpc.js +63 -0
- package/dist/cjs/runtime/effect/handler/types.js +43 -0
- package/dist/cjs/runtime/effect/handler.js +37 -529
- package/dist/cjs/runtime/effect/index.js +91 -15
- package/dist/cjs/runtime/effect/module.js +23 -80
- package/dist/cjs/runtime/effect/rpcSerialization.js +54 -0
- package/dist/cjs/runtime/effect-client/batch.js +73 -0
- package/dist/cjs/runtime/effect-client/envelope.js +145 -0
- package/dist/cjs/runtime/effect-client/guards.js +44 -0
- package/dist/cjs/runtime/effect-client/index.js +6 -16
- package/dist/cjs/runtime/effect-client/request-context.js +64 -0
- package/dist/cjs/runtime/effect-client/request.js +66 -0
- package/dist/cjs/runtime/effect-client/runtime.js +12 -178
- package/dist/cjs/runtime/effect-client/types.js +18 -0
- package/dist/cjs/runtime/safe-failure.js +2 -1
- package/dist/cjs/utils/client-generator/files.js +152 -0
- package/dist/cjs/utils/client-generator/generate.js +138 -0
- package/dist/cjs/utils/client-generator/index.js +83 -0
- package/dist/cjs/utils/client-generator/package-json.js +132 -0
- package/dist/cjs/utils/client-generator/write-package.js +125 -0
- package/dist/cjs/utils/clientGenerator.js +26 -303
- package/dist/cjs/utils/effect-client-generator/generator.js +68 -0
- package/dist/cjs/utils/effect-client-generator/index.js +51 -0
- package/dist/cjs/utils/effect-client-generator/paths.js +73 -0
- package/dist/cjs/utils/effect-client-generator/rendering.js +231 -0
- package/dist/cjs/utils/effect-client-generator/runtime.js +85 -0
- package/dist/cjs/utils/effect-client-generator/types.js +18 -0
- package/dist/cjs/utils/effectClientGenerator.js +5 -262
- package/dist/cjs/utils/effectSourceLoader.js +173 -0
- package/dist/esm/cli/compress.mjs +14 -0
- package/dist/esm/cli/generator.mjs +101 -0
- package/dist/esm/cli/prefix.mjs +9 -0
- package/dist/esm/cli/serverGlobalVars.mjs +76 -0
- package/dist/esm/cli/watch.mjs +13 -0
- package/dist/esm/cli.mjs +7 -121
- package/dist/esm/loader.mjs +19 -2
- package/dist/esm/runtime/data-platform/batch/queue.mjs +246 -0
- package/dist/esm/runtime/data-platform/batch/request.mjs +45 -0
- package/dist/esm/runtime/data-platform/batch/response.mjs +23 -0
- package/dist/esm/runtime/data-platform/batch/telemetry.mjs +23 -0
- package/dist/esm/runtime/data-platform/batch/url.mjs +25 -0
- package/dist/esm/runtime/data-platform/batch-transport.mjs +12 -0
- package/dist/esm/runtime/data-platform/codec.mjs +90 -0
- package/dist/esm/runtime/data-platform/index.mjs +6 -610
- package/dist/esm/runtime/data-platform/invalidation.mjs +20 -0
- package/dist/esm/runtime/data-platform/trace.mjs +29 -0
- package/dist/esm/runtime/data-platform/types.mjs +4 -0
- package/dist/esm/runtime/data-platform/validation.mjs +128 -0
- package/dist/esm/runtime/effect/adapter/constants.mjs +6 -0
- package/dist/esm/runtime/effect/adapter/cross-project-policy.mjs +23 -0
- package/dist/esm/runtime/effect/adapter/entry.mjs +44 -0
- package/dist/esm/runtime/effect/adapter/error-response.mjs +41 -0
- package/dist/esm/runtime/effect/adapter/handler.mjs +15 -0
- package/dist/esm/runtime/effect/adapter.mjs +27 -147
- package/dist/esm/runtime/effect/backend-federation/entry.mjs +61 -0
- package/dist/esm/runtime/effect/backend-federation/identity.mjs +41 -0
- package/dist/esm/runtime/effect/backend-federation/load.mjs +28 -0
- package/dist/esm/runtime/effect/backend-federation/plugin.mjs +15 -0
- package/dist/esm/runtime/effect/backend-federation/remotes.mjs +12 -0
- package/dist/esm/runtime/effect/backend-federation/runtime.mjs +26 -0
- package/dist/esm/runtime/effect/backend-federation/types.mjs +0 -0
- package/dist/esm/runtime/effect/backend-federation/utils.mjs +7 -0
- package/dist/esm/runtime/effect/backend-federation-manifest/errors.mjs +32 -0
- package/dist/esm/runtime/effect/backend-federation-manifest/index.mjs +4 -0
- package/dist/esm/runtime/effect/backend-federation-manifest/load.mjs +56 -0
- package/dist/esm/runtime/effect/backend-federation-manifest/metadata.mjs +42 -0
- package/dist/esm/runtime/effect/backend-federation-manifest/reference.mjs +76 -0
- package/dist/esm/runtime/effect/backend-federation-manifest/remote.mjs +30 -0
- package/dist/esm/runtime/effect/backend-federation-manifest/types.mjs +0 -0
- package/dist/esm/runtime/effect/backend-federation-manifest/validation.mjs +65 -0
- package/dist/esm/runtime/effect/backend-federation-manifest.mjs +1 -0
- package/dist/esm/runtime/effect/backend-federation.mjs +5 -0
- package/dist/esm/runtime/effect/dispatch.mjs +63 -0
- package/dist/esm/runtime/effect/edge.mjs +17 -63
- package/dist/esm/runtime/effect/endpoint-contracts.mjs +8 -13
- package/dist/esm/runtime/effect/entry-shape.mjs +36 -0
- package/dist/esm/runtime/effect/handler/batch-handler.mjs +123 -0
- package/dist/esm/runtime/effect/handler/batch.mjs +124 -0
- package/dist/esm/runtime/effect/handler/definition.mjs +60 -0
- package/dist/esm/runtime/effect/handler/envelope.mjs +63 -0
- package/dist/esm/runtime/effect/handler/http.mjs +58 -0
- package/dist/esm/runtime/effect/handler/openapi.mjs +19 -0
- package/dist/esm/runtime/effect/handler/routing.mjs +50 -0
- package/dist/esm/runtime/effect/handler/rpc.mjs +22 -0
- package/dist/esm/runtime/effect/handler/types.mjs +5 -0
- package/dist/esm/runtime/effect/handler.mjs +11 -506
- package/dist/esm/runtime/effect/index.mjs +5 -2
- package/dist/esm/runtime/effect/module.mjs +25 -82
- package/dist/esm/runtime/effect/rpcSerialization.mjs +16 -0
- package/dist/esm/runtime/effect-client/batch.mjs +35 -0
- package/dist/esm/runtime/effect-client/envelope.mjs +104 -0
- package/dist/esm/runtime/effect-client/guards.mjs +3 -0
- package/dist/esm/runtime/effect-client/index.mjs +27 -37
- package/dist/esm/runtime/effect-client/request-context.mjs +23 -0
- package/dist/esm/runtime/effect-client/request.mjs +28 -0
- package/dist/esm/runtime/effect-client/runtime.mjs +12 -178
- package/dist/esm/runtime/effect-client/types.mjs +0 -0
- package/dist/esm/runtime/safe-failure.mjs +2 -1
- package/dist/esm/utils/client-generator/files.mjs +68 -0
- package/dist/esm/utils/client-generator/generate.mjs +88 -0
- package/dist/esm/utils/client-generator/index.mjs +4 -0
- package/dist/esm/utils/client-generator/package-json.mjs +78 -0
- package/dist/esm/utils/client-generator/write-package.mjs +74 -0
- package/dist/esm/utils/clientGenerator.mjs +2 -293
- package/dist/esm/utils/effect-client-generator/generator.mjs +27 -0
- package/dist/esm/utils/effect-client-generator/index.mjs +3 -0
- package/dist/esm/utils/effect-client-generator/paths.mjs +25 -0
- package/dist/esm/utils/effect-client-generator/rendering.mjs +180 -0
- package/dist/esm/utils/effect-client-generator/runtime.mjs +34 -0
- package/dist/esm/utils/effect-client-generator/types.mjs +0 -0
- package/dist/esm/utils/effectClientGenerator.mjs +1 -249
- package/dist/esm/utils/effectSourceLoader.mjs +123 -0
- package/dist/esm-node/cli/compress.mjs +15 -0
- package/dist/esm-node/cli/generator.mjs +102 -0
- package/dist/esm-node/cli/prefix.mjs +10 -0
- package/dist/esm-node/cli/serverGlobalVars.mjs +77 -0
- package/dist/esm-node/cli/watch.mjs +14 -0
- package/dist/esm-node/cli.mjs +7 -121
- package/dist/esm-node/loader.mjs +19 -2
- package/dist/esm-node/runtime/data-platform/batch/queue.mjs +247 -0
- package/dist/esm-node/runtime/data-platform/batch/request.mjs +46 -0
- package/dist/esm-node/runtime/data-platform/batch/response.mjs +24 -0
- package/dist/esm-node/runtime/data-platform/batch/telemetry.mjs +24 -0
- package/dist/esm-node/runtime/data-platform/batch/url.mjs +26 -0
- package/dist/esm-node/runtime/data-platform/batch-transport.mjs +13 -0
- package/dist/esm-node/runtime/data-platform/codec.mjs +91 -0
- package/dist/esm-node/runtime/data-platform/index.mjs +6 -610
- package/dist/esm-node/runtime/data-platform/invalidation.mjs +21 -0
- package/dist/esm-node/runtime/data-platform/trace.mjs +30 -0
- package/dist/esm-node/runtime/data-platform/types.mjs +5 -0
- package/dist/esm-node/runtime/data-platform/validation.mjs +129 -0
- package/dist/esm-node/runtime/effect/adapter/constants.mjs +7 -0
- package/dist/esm-node/runtime/effect/adapter/cross-project-policy.mjs +24 -0
- package/dist/esm-node/runtime/effect/adapter/entry.mjs +45 -0
- package/dist/esm-node/runtime/effect/adapter/error-response.mjs +42 -0
- package/dist/esm-node/runtime/effect/adapter/handler.mjs +16 -0
- package/dist/esm-node/runtime/effect/adapter.mjs +28 -149
- package/dist/esm-node/runtime/effect/backend-federation/entry.mjs +62 -0
- package/dist/esm-node/runtime/effect/backend-federation/identity.mjs +42 -0
- package/dist/esm-node/runtime/effect/backend-federation/load.mjs +29 -0
- package/dist/esm-node/runtime/effect/backend-federation/plugin.mjs +16 -0
- package/dist/esm-node/runtime/effect/backend-federation/remotes.mjs +13 -0
- package/dist/esm-node/runtime/effect/backend-federation/runtime.mjs +27 -0
- package/dist/esm-node/runtime/effect/backend-federation/types.mjs +1 -0
- package/dist/esm-node/runtime/effect/backend-federation/utils.mjs +8 -0
- package/dist/esm-node/runtime/effect/backend-federation-manifest/errors.mjs +33 -0
- package/dist/esm-node/runtime/effect/backend-federation-manifest/index.mjs +5 -0
- package/dist/esm-node/runtime/effect/backend-federation-manifest/load.mjs +57 -0
- package/dist/esm-node/runtime/effect/backend-federation-manifest/metadata.mjs +43 -0
- package/dist/esm-node/runtime/effect/backend-federation-manifest/reference.mjs +77 -0
- package/dist/esm-node/runtime/effect/backend-federation-manifest/remote.mjs +31 -0
- package/dist/esm-node/runtime/effect/backend-federation-manifest/types.mjs +1 -0
- package/dist/esm-node/runtime/effect/backend-federation-manifest/validation.mjs +66 -0
- package/dist/esm-node/runtime/effect/backend-federation-manifest.mjs +2 -0
- package/dist/esm-node/runtime/effect/backend-federation.mjs +6 -0
- package/dist/esm-node/runtime/effect/dispatch.mjs +64 -0
- package/dist/esm-node/runtime/effect/edge.mjs +17 -63
- package/dist/esm-node/runtime/effect/endpoint-contracts.mjs +8 -13
- package/dist/esm-node/runtime/effect/entry-shape.mjs +37 -0
- package/dist/esm-node/runtime/effect/handler/batch-handler.mjs +124 -0
- package/dist/esm-node/runtime/effect/handler/batch.mjs +125 -0
- package/dist/esm-node/runtime/effect/handler/definition.mjs +61 -0
- package/dist/esm-node/runtime/effect/handler/envelope.mjs +64 -0
- package/dist/esm-node/runtime/effect/handler/http.mjs +59 -0
- package/dist/esm-node/runtime/effect/handler/openapi.mjs +20 -0
- package/dist/esm-node/runtime/effect/handler/routing.mjs +51 -0
- package/dist/esm-node/runtime/effect/handler/rpc.mjs +23 -0
- package/dist/esm-node/runtime/effect/handler/types.mjs +6 -0
- package/dist/esm-node/runtime/effect/handler.mjs +11 -506
- package/dist/esm-node/runtime/effect/index.mjs +5 -2
- package/dist/esm-node/runtime/effect/module.mjs +25 -82
- package/dist/esm-node/runtime/effect/rpcSerialization.mjs +17 -0
- package/dist/esm-node/runtime/effect-client/batch.mjs +36 -0
- package/dist/esm-node/runtime/effect-client/envelope.mjs +105 -0
- package/dist/esm-node/runtime/effect-client/guards.mjs +4 -0
- package/dist/esm-node/runtime/effect-client/index.mjs +27 -37
- package/dist/esm-node/runtime/effect-client/request-context.mjs +24 -0
- package/dist/esm-node/runtime/effect-client/request.mjs +29 -0
- package/dist/esm-node/runtime/effect-client/runtime.mjs +12 -178
- package/dist/esm-node/runtime/effect-client/types.mjs +1 -0
- package/dist/esm-node/runtime/safe-failure.mjs +2 -1
- package/dist/esm-node/utils/client-generator/files.mjs +69 -0
- package/dist/esm-node/utils/client-generator/generate.mjs +89 -0
- package/dist/esm-node/utils/client-generator/index.mjs +5 -0
- package/dist/esm-node/utils/client-generator/package-json.mjs +79 -0
- package/dist/esm-node/utils/client-generator/write-package.mjs +75 -0
- package/dist/esm-node/utils/clientGenerator.mjs +2 -293
- package/dist/esm-node/utils/effect-client-generator/generator.mjs +28 -0
- package/dist/esm-node/utils/effect-client-generator/index.mjs +4 -0
- package/dist/esm-node/utils/effect-client-generator/paths.mjs +26 -0
- package/dist/esm-node/utils/effect-client-generator/rendering.mjs +181 -0
- package/dist/esm-node/utils/effect-client-generator/runtime.mjs +36 -0
- package/dist/esm-node/utils/effect-client-generator/types.mjs +1 -0
- package/dist/esm-node/utils/effectClientGenerator.mjs +2 -251
- package/dist/esm-node/utils/effectSourceLoader.mjs +124 -0
- package/dist/types/cli/compress.d.ts +2 -0
- package/dist/types/cli/generator.d.ts +7 -0
- package/dist/types/cli/prefix.d.ts +2 -0
- package/dist/types/cli/serverGlobalVars.d.ts +4 -0
- package/dist/types/cli/watch.d.ts +1 -0
- package/dist/types/cli.d.ts +0 -1
- package/dist/types/runtime/data-platform/batch/queue.d.ts +8 -0
- package/dist/types/runtime/data-platform/batch/request.d.ts +13 -0
- package/dist/types/runtime/data-platform/batch/response.d.ts +3 -0
- package/dist/types/runtime/data-platform/batch/telemetry.d.ts +4 -0
- package/dist/types/runtime/data-platform/batch/url.d.ts +4 -0
- package/dist/types/runtime/data-platform/batch-transport.d.ts +3 -0
- package/dist/types/runtime/data-platform/codec.d.ts +17 -0
- package/dist/types/runtime/data-platform/index.d.ts +7 -191
- package/dist/types/runtime/data-platform/invalidation.d.ts +8 -0
- package/dist/types/runtime/data-platform/trace.d.ts +4 -0
- package/dist/types/runtime/data-platform/types.d.ts +146 -0
- package/dist/types/runtime/data-platform/validation.d.ts +29 -0
- package/dist/types/runtime/effect/adapter/constants.d.ts +1 -0
- package/dist/types/runtime/effect/adapter/cross-project-policy.d.ts +4 -0
- package/dist/types/runtime/effect/adapter/entry.d.ts +2 -0
- package/dist/types/runtime/effect/adapter/error-response.d.ts +2 -0
- package/dist/types/runtime/effect/adapter/handler.d.ts +7 -0
- package/dist/types/runtime/effect/adapter.d.ts +4 -13
- package/dist/types/runtime/effect/backend-federation/entry.d.ts +2 -0
- package/dist/types/runtime/effect/backend-federation/identity.d.ts +30 -0
- package/dist/types/runtime/effect/backend-federation/load.d.ts +13 -0
- package/dist/types/runtime/effect/backend-federation/plugin.d.ts +3 -0
- package/dist/types/runtime/effect/backend-federation/remotes.d.ts +2 -0
- package/dist/types/runtime/effect/backend-federation/runtime.d.ts +3 -0
- package/dist/types/runtime/effect/backend-federation/types.d.ts +73 -0
- package/dist/types/runtime/effect/backend-federation/utils.d.ts +2 -0
- package/dist/types/runtime/effect/backend-federation-manifest/errors.d.ts +11 -0
- package/dist/types/runtime/effect/backend-federation-manifest/index.d.ts +6 -0
- package/dist/types/runtime/effect/backend-federation-manifest/load.d.ts +3 -0
- package/dist/types/runtime/effect/backend-federation-manifest/metadata.d.ts +18 -0
- package/dist/types/runtime/effect/backend-federation-manifest/reference.d.ts +4 -0
- package/dist/types/runtime/effect/backend-federation-manifest/remote.d.ts +3 -0
- package/dist/types/runtime/effect/backend-federation-manifest/types.d.ts +51 -0
- package/dist/types/runtime/effect/backend-federation-manifest/validation.d.ts +5 -0
- package/dist/types/runtime/effect/backend-federation-manifest.d.ts +1 -0
- package/dist/types/runtime/effect/backend-federation.d.ts +7 -0
- package/dist/types/runtime/effect/dispatch.d.ts +13 -0
- package/dist/types/runtime/effect/edge.d.ts +8 -8
- package/dist/types/runtime/effect/endpoint-contracts.d.ts +5 -7
- package/dist/types/runtime/effect/entry-shape.d.ts +31 -0
- package/dist/types/runtime/effect/handler/batch-handler.d.ts +11 -0
- package/dist/types/runtime/effect/handler/batch.d.ts +17 -0
- package/dist/types/runtime/effect/handler/definition.d.ts +17 -0
- package/dist/types/runtime/effect/handler/envelope.d.ts +13 -0
- package/dist/types/runtime/effect/handler/http.d.ts +14 -0
- package/dist/types/runtime/effect/handler/openapi.d.ts +4 -0
- package/dist/types/runtime/effect/handler/routing.d.ts +5 -0
- package/dist/types/runtime/effect/handler/rpc.d.ts +7 -0
- package/dist/types/runtime/effect/handler/types.d.ts +148 -0
- package/dist/types/runtime/effect/handler.d.ts +4 -190
- package/dist/types/runtime/effect/index.d.ts +3 -0
- package/dist/types/runtime/effect/module.d.ts +3 -2
- package/dist/types/runtime/effect/rpcSerialization.d.ts +3 -0
- package/dist/types/runtime/effect-client/batch.d.ts +2 -0
- package/dist/types/runtime/effect-client/envelope.d.ts +15 -0
- package/dist/types/runtime/effect-client/guards.d.ts +2 -0
- package/dist/types/runtime/effect-client/index.d.ts +1 -1
- package/dist/types/runtime/effect-client/request-context.d.ts +3 -0
- package/dist/types/runtime/effect-client/request.d.ts +1 -0
- package/dist/types/runtime/effect-client/runtime.d.ts +2 -68
- package/dist/types/runtime/effect-client/types.d.ts +68 -0
- package/dist/types/utils/client-generator/files.d.ts +28 -0
- package/dist/types/utils/client-generator/generate.d.ts +26 -0
- package/dist/types/utils/client-generator/index.d.ts +7 -0
- package/dist/types/utils/client-generator/package-json.d.ts +16 -0
- package/dist/types/utils/client-generator/write-package.d.ts +6 -0
- package/dist/types/utils/clientGenerator.d.ts +2 -37
- package/dist/types/utils/crossProjectServerPolicy.d.ts +3 -2
- package/dist/types/utils/effect-client-generator/generator.d.ts +10 -0
- package/dist/types/utils/effect-client-generator/index.d.ts +4 -0
- package/dist/types/utils/effect-client-generator/paths.d.ts +5 -0
- package/dist/types/utils/effect-client-generator/rendering.d.ts +4 -0
- package/dist/types/utils/effect-client-generator/runtime.d.ts +12 -0
- package/dist/types/utils/effect-client-generator/types.d.ts +27 -0
- package/dist/types/utils/effectClientGenerator.d.ts +2 -41
- package/dist/types/utils/effectSourceLoader.d.ts +10 -0
- package/package.json +45 -33
|
@@ -0,0 +1,52 @@
|
|
|
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
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
31
|
+
createCompressConfig: ()=>createCompressConfig
|
|
32
|
+
});
|
|
33
|
+
const external_prefix_js_namespaceObject = require("./prefix.js");
|
|
34
|
+
const createCompressConfig = (devServer, prefix)=>{
|
|
35
|
+
if (!devServer || 'object' != typeof devServer || Array.isArray(devServer)) return;
|
|
36
|
+
const { compress } = devServer;
|
|
37
|
+
if (void 0 === compress || true === compress) {
|
|
38
|
+
const prefixes = (0, external_prefix_js_namespaceObject.normalizePrefixList)(prefix);
|
|
39
|
+
return {
|
|
40
|
+
filter: (req)=>!prefixes.some((item)=>req.url?.includes(item))
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
if (false === compress) return false;
|
|
44
|
+
return compress;
|
|
45
|
+
};
|
|
46
|
+
exports.createCompressConfig = __webpack_exports__.createCompressConfig;
|
|
47
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
48
|
+
"createCompressConfig"
|
|
49
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
50
|
+
Object.defineProperty(exports, '__esModule', {
|
|
51
|
+
value: true
|
|
52
|
+
});
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
"use strict";
|
|
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, 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");
|
|
22
|
+
};
|
|
23
|
+
})();
|
|
24
|
+
(()=>{
|
|
25
|
+
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
26
|
+
})();
|
|
27
|
+
(()=>{
|
|
28
|
+
__webpack_require__.r = (exports1)=>{
|
|
29
|
+
if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
30
|
+
value: 'Module'
|
|
31
|
+
});
|
|
32
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
33
|
+
value: true
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
})();
|
|
37
|
+
var __webpack_exports__ = {};
|
|
38
|
+
__webpack_require__.r(__webpack_exports__);
|
|
39
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
40
|
+
createBffGenerator: ()=>createBffGenerator
|
|
41
|
+
});
|
|
42
|
+
const bff_core_namespaceObject = require("@modern-js/bff-core");
|
|
43
|
+
const server_utils_namespaceObject = require("@modern-js/server-utils");
|
|
44
|
+
const utils_namespaceObject = require("@modern-js/utils");
|
|
45
|
+
const external_path_namespaceObject = require("path");
|
|
46
|
+
var external_path_default = /*#__PURE__*/ __webpack_require__.n(external_path_namespaceObject);
|
|
47
|
+
const clientGenerator_js_namespaceObject = require("../utils/clientGenerator.js");
|
|
48
|
+
var clientGenerator_js_default = /*#__PURE__*/ __webpack_require__.n(clientGenerator_js_namespaceObject);
|
|
49
|
+
const pluginGenerator_js_namespaceObject = require("../utils/pluginGenerator.js");
|
|
50
|
+
var pluginGenerator_js_default = /*#__PURE__*/ __webpack_require__.n(pluginGenerator_js_namespaceObject);
|
|
51
|
+
const runtimeGenerator_js_namespaceObject = require("../utils/runtimeGenerator.js");
|
|
52
|
+
var runtimeGenerator_js_default = /*#__PURE__*/ __webpack_require__.n(runtimeGenerator_js_namespaceObject);
|
|
53
|
+
const external_prefix_js_namespaceObject = require("./prefix.js");
|
|
54
|
+
const external_serverGlobalVars_js_namespaceObject = require("./serverGlobalVars.js");
|
|
55
|
+
const RUNTIME_CREATE_REQUEST = '@modern-js/plugin-bff/client';
|
|
56
|
+
const createBffGenerator = (api)=>{
|
|
57
|
+
const compileApi = async ()=>{
|
|
58
|
+
const { appDirectory, distDirectory, apiDirectory, sharedDirectory, moduleType } = api.getAppContext();
|
|
59
|
+
const modernConfig = api.getNormalizedConfig();
|
|
60
|
+
const distDir = external_path_default().resolve(distDirectory);
|
|
61
|
+
const apiDir = apiDirectory || external_path_default().resolve(appDirectory, utils_namespaceObject.API_DIR);
|
|
62
|
+
const sharedDir = sharedDirectory || external_path_default().resolve(appDirectory, utils_namespaceObject.SHARED_DIR);
|
|
63
|
+
const tsconfigPath = (0, utils_namespaceObject.resolveServerTsconfig)(appDirectory, modernConfig?.server?.tsconfigPath);
|
|
64
|
+
const sourceDirs = [];
|
|
65
|
+
if (await utils_namespaceObject.fs.pathExists(apiDir)) sourceDirs.push(apiDir);
|
|
66
|
+
if (await utils_namespaceObject.fs.pathExists(sharedDir)) sourceDirs.push(sharedDir);
|
|
67
|
+
const { alias, globalVars } = modernConfig.source;
|
|
68
|
+
const { alias: resolveAlias } = modernConfig.resolve;
|
|
69
|
+
if (sourceDirs.length > 0) {
|
|
70
|
+
const combinedAlias = [].concat(alias ?? []).concat(resolveAlias ?? []);
|
|
71
|
+
const serializedGlobalVars = (0, external_serverGlobalVars_js_namespaceObject.serializeServerGlobalVars)(globalVars);
|
|
72
|
+
await (0, server_utils_namespaceObject.compile)(appDirectory, {
|
|
73
|
+
alias: combinedAlias
|
|
74
|
+
}, {
|
|
75
|
+
sourceDirs,
|
|
76
|
+
distDir,
|
|
77
|
+
tsconfigPath,
|
|
78
|
+
moduleType,
|
|
79
|
+
throwErrorInsteadOfExit: true
|
|
80
|
+
});
|
|
81
|
+
await (0, external_serverGlobalVars_js_namespaceObject.transformServerGlobalVars)(sourceDirs.map((sourceDir)=>external_path_default().resolve(distDir, external_path_default().relative(appDirectory, sourceDir))), serializedGlobalVars);
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
const generate = async ()=>{
|
|
85
|
+
const { appDirectory, apiDirectory, lambdaDirectory, port, bffRuntimeFramework } = api.getAppContext();
|
|
86
|
+
const modernConfig = api.getNormalizedConfig();
|
|
87
|
+
const relativeDistPath = modernConfig?.output?.distPath?.root || 'dist';
|
|
88
|
+
const { bff } = modernConfig || {};
|
|
89
|
+
const prefix = (0, external_prefix_js_namespaceObject.getPrimaryPrefix)(bff?.prefix);
|
|
90
|
+
const httpMethodDecider = bff?.httpMethodDecider;
|
|
91
|
+
const apiRouter = new bff_core_namespaceObject.ApiRouter({
|
|
92
|
+
apiDir: apiDirectory,
|
|
93
|
+
appDir: appDirectory,
|
|
94
|
+
lambdaDir: lambdaDirectory,
|
|
95
|
+
prefix,
|
|
96
|
+
httpMethodDecider,
|
|
97
|
+
isBuild: true
|
|
98
|
+
});
|
|
99
|
+
const lambdaDir = apiRouter.getLambdaDir();
|
|
100
|
+
const existLambda = apiRouter.isExistLambda();
|
|
101
|
+
const runtime = bff?.runtimeCreateRequest || RUNTIME_CREATE_REQUEST;
|
|
102
|
+
const relativeApiPath = external_path_default().relative(appDirectory, apiDirectory);
|
|
103
|
+
const relativeLambdaPath = external_path_default().relative(appDirectory, lambdaDir);
|
|
104
|
+
await pluginGenerator_js_default()({
|
|
105
|
+
prefix,
|
|
106
|
+
appDirectory,
|
|
107
|
+
relativeDistPath,
|
|
108
|
+
relativeApiPath,
|
|
109
|
+
relativeLambdaPath,
|
|
110
|
+
runtimeFramework: 'hono' === bffRuntimeFramework ? 'hono' : 'effect'
|
|
111
|
+
});
|
|
112
|
+
await clientGenerator_js_default()({
|
|
113
|
+
prefix,
|
|
114
|
+
appDir: appDirectory,
|
|
115
|
+
apiDir: apiDirectory,
|
|
116
|
+
lambdaDir,
|
|
117
|
+
existLambda,
|
|
118
|
+
port,
|
|
119
|
+
requestCreator: bff?.requestCreator,
|
|
120
|
+
httpMethodDecider,
|
|
121
|
+
relativeDistPath,
|
|
122
|
+
relativeApiPath,
|
|
123
|
+
bffRuntimeFramework,
|
|
124
|
+
effectEntry: bff?.effect?.entry,
|
|
125
|
+
effectDataPlatformBatch: bff?.effect?.dataPlatform?.batch
|
|
126
|
+
});
|
|
127
|
+
await runtimeGenerator_js_default()({
|
|
128
|
+
runtime,
|
|
129
|
+
appDirectory,
|
|
130
|
+
relativeDistPath
|
|
131
|
+
});
|
|
132
|
+
};
|
|
133
|
+
const handleCrossProjectInvocation = async (isBuild = false)=>{
|
|
134
|
+
const { bff } = api.getNormalizedConfig();
|
|
135
|
+
if (bff?.crossProject) {
|
|
136
|
+
if (!isBuild) await compileApi();
|
|
137
|
+
await generate();
|
|
138
|
+
}
|
|
139
|
+
};
|
|
140
|
+
return {
|
|
141
|
+
compileApi,
|
|
142
|
+
generate,
|
|
143
|
+
handleCrossProjectInvocation
|
|
144
|
+
};
|
|
145
|
+
};
|
|
146
|
+
exports.createBffGenerator = __webpack_exports__.createBffGenerator;
|
|
147
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
148
|
+
"createBffGenerator"
|
|
149
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
150
|
+
Object.defineProperty(exports, '__esModule', {
|
|
151
|
+
value: true
|
|
152
|
+
});
|
|
@@ -0,0 +1,50 @@
|
|
|
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
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
31
|
+
getPrimaryPrefix: ()=>getPrimaryPrefix,
|
|
32
|
+
normalizePrefixList: ()=>normalizePrefixList
|
|
33
|
+
});
|
|
34
|
+
const utils_namespaceObject = require("@modern-js/utils");
|
|
35
|
+
const normalizePrefixList = (prefix)=>{
|
|
36
|
+
if (Array.isArray(prefix)) return prefix.filter(Boolean);
|
|
37
|
+
return [
|
|
38
|
+
prefix || utils_namespaceObject.DEFAULT_API_PREFIX
|
|
39
|
+
];
|
|
40
|
+
};
|
|
41
|
+
const getPrimaryPrefix = (prefix)=>normalizePrefixList(prefix)[0] || utils_namespaceObject.DEFAULT_API_PREFIX;
|
|
42
|
+
exports.getPrimaryPrefix = __webpack_exports__.getPrimaryPrefix;
|
|
43
|
+
exports.normalizePrefixList = __webpack_exports__.normalizePrefixList;
|
|
44
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
45
|
+
"getPrimaryPrefix",
|
|
46
|
+
"normalizePrefixList"
|
|
47
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
48
|
+
Object.defineProperty(exports, '__esModule', {
|
|
49
|
+
value: true
|
|
50
|
+
});
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
"use strict";
|
|
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, 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");
|
|
22
|
+
};
|
|
23
|
+
})();
|
|
24
|
+
(()=>{
|
|
25
|
+
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
26
|
+
})();
|
|
27
|
+
(()=>{
|
|
28
|
+
__webpack_require__.r = (exports1)=>{
|
|
29
|
+
if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
30
|
+
value: 'Module'
|
|
31
|
+
});
|
|
32
|
+
Object.defineProperty(exports1, '__esModule', {
|
|
33
|
+
value: true
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
})();
|
|
37
|
+
var __webpack_exports__ = {};
|
|
38
|
+
__webpack_require__.r(__webpack_exports__);
|
|
39
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
40
|
+
serializeServerGlobalVars: ()=>serializeServerGlobalVars,
|
|
41
|
+
transformServerGlobalVars: ()=>transformServerGlobalVars
|
|
42
|
+
});
|
|
43
|
+
const utils_namespaceObject = require("@modern-js/utils");
|
|
44
|
+
const core_namespaceObject = require("@swc/core");
|
|
45
|
+
const external_path_namespaceObject = require("path");
|
|
46
|
+
var external_path_default = /*#__PURE__*/ __webpack_require__.n(external_path_namespaceObject);
|
|
47
|
+
const RELEASE_IDENTITY_GLOBAL_NAMES = [
|
|
48
|
+
'ULTRAMODERN_BUILD_MARKER',
|
|
49
|
+
'ULTRAMODERN_SOURCE_REVISION',
|
|
50
|
+
'ULTRAMODERN_RELEASE_VERSION'
|
|
51
|
+
];
|
|
52
|
+
const collectJavaScriptFiles = async (directory)=>{
|
|
53
|
+
const entries = await utils_namespaceObject.fs.readdir(directory, {
|
|
54
|
+
withFileTypes: true
|
|
55
|
+
});
|
|
56
|
+
const nested = await Promise.all(entries.map(async (entry)=>{
|
|
57
|
+
const absolutePath = external_path_default().join(directory, entry.name);
|
|
58
|
+
if (entry.isDirectory()) return collectJavaScriptFiles(absolutePath);
|
|
59
|
+
return /\.(?:c|m)?js$/u.test(entry.name) ? [
|
|
60
|
+
absolutePath
|
|
61
|
+
] : [];
|
|
62
|
+
}));
|
|
63
|
+
return nested.flat();
|
|
64
|
+
};
|
|
65
|
+
const serializeServerGlobalVars = (options)=>{
|
|
66
|
+
const globalVars = (0, utils_namespaceObject.applyOptionsChain)({}, options, {
|
|
67
|
+
env: 'server',
|
|
68
|
+
target: 'node'
|
|
69
|
+
});
|
|
70
|
+
return Object.fromEntries(Object.entries(globalVars).map(([key, value])=>{
|
|
71
|
+
let serialized;
|
|
72
|
+
try {
|
|
73
|
+
serialized = JSON.stringify(value);
|
|
74
|
+
} catch (error) {
|
|
75
|
+
throw new Error(`source.globalVars["${key}"] cannot be serialized exactly for BFF compilation.`, {
|
|
76
|
+
cause: error
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
if (void 0 === serialized) throw new Error(`source.globalVars["${key}"] cannot be serialized exactly for BFF compilation.`);
|
|
80
|
+
return [
|
|
81
|
+
key,
|
|
82
|
+
serialized
|
|
83
|
+
];
|
|
84
|
+
}));
|
|
85
|
+
};
|
|
86
|
+
const transformServerGlobalVars = async (outputDirectories, globalVars)=>{
|
|
87
|
+
if (0 === Object.keys(globalVars).length) return;
|
|
88
|
+
const existingDirectories = (await Promise.all(outputDirectories.map(async (directory)=>await utils_namespaceObject.fs.pathExists(directory) ? directory : void 0))).filter((directory)=>Boolean(directory));
|
|
89
|
+
const files = (await Promise.all(existingDirectories.map(collectJavaScriptFiles))).flat();
|
|
90
|
+
const releaseIdentityBanner = RELEASE_IDENTITY_GLOBAL_NAMES.every((name)=>Object.hasOwn(globalVars, name)) ? `${RELEASE_IDENTITY_GLOBAL_NAMES.map((name)=>`void ${globalVars[name]};`).join('')}\n` : '';
|
|
91
|
+
await Promise.all(files.map(async (filename)=>{
|
|
92
|
+
const source = await utils_namespaceObject.fs.readFile(filename, 'utf8');
|
|
93
|
+
const sourceMapFilename = `${filename}.map`;
|
|
94
|
+
const sourceMapExists = await utils_namespaceObject.fs.pathExists(sourceMapFilename);
|
|
95
|
+
const inputSourceMap = sourceMapExists ? await utils_namespaceObject.fs.readFile(sourceMapFilename, 'utf8') : void 0;
|
|
96
|
+
const result = await (0, core_namespaceObject.transform)(`${releaseIdentityBanner}${source}`, {
|
|
97
|
+
filename,
|
|
98
|
+
inputSourceMap,
|
|
99
|
+
sourceMaps: sourceMapExists,
|
|
100
|
+
jsc: {
|
|
101
|
+
parser: {
|
|
102
|
+
syntax: "ecmascript"
|
|
103
|
+
},
|
|
104
|
+
preserveAllComments: true,
|
|
105
|
+
target: 'es2022',
|
|
106
|
+
transform: {
|
|
107
|
+
optimizer: {
|
|
108
|
+
globals: {
|
|
109
|
+
vars: globalVars
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
await utils_namespaceObject.fs.writeFile(filename, result.code);
|
|
116
|
+
if (sourceMapExists && result.map) await utils_namespaceObject.fs.writeFile(sourceMapFilename, result.map);
|
|
117
|
+
}));
|
|
118
|
+
};
|
|
119
|
+
exports.serializeServerGlobalVars = __webpack_exports__.serializeServerGlobalVars;
|
|
120
|
+
exports.transformServerGlobalVars = __webpack_exports__.transformServerGlobalVars;
|
|
121
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
122
|
+
"serializeServerGlobalVars",
|
|
123
|
+
"transformServerGlobalVars"
|
|
124
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
125
|
+
Object.defineProperty(exports, '__esModule', {
|
|
126
|
+
value: true
|
|
127
|
+
});
|
|
@@ -0,0 +1,51 @@
|
|
|
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 WATCHABLE_EXTENSIONS = [
|
|
31
|
+
'.ts',
|
|
32
|
+
'.tsx',
|
|
33
|
+
'.js',
|
|
34
|
+
'.jsx',
|
|
35
|
+
'.mts',
|
|
36
|
+
'.cts',
|
|
37
|
+
'.mjs',
|
|
38
|
+
'.cjs',
|
|
39
|
+
'.json'
|
|
40
|
+
];
|
|
41
|
+
const isWatchableBffFile = (filename)=>WATCHABLE_EXTENSIONS.some((ext)=>filename.endsWith(ext));
|
|
42
|
+
__webpack_require__.d(__webpack_exports__, {}, {
|
|
43
|
+
isWatchableBffFile: isWatchableBffFile
|
|
44
|
+
});
|
|
45
|
+
exports.isWatchableBffFile = __webpack_exports__.isWatchableBffFile;
|
|
46
|
+
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
47
|
+
"isWatchableBffFile"
|
|
48
|
+
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
49
|
+
Object.defineProperty(exports, '__esModule', {
|
|
50
|
+
value: true
|
|
51
|
+
});
|
package/dist/cjs/cli.js
CHANGED
|
@@ -37,40 +37,16 @@ var __webpack_require__ = {};
|
|
|
37
37
|
var __webpack_exports__ = {};
|
|
38
38
|
__webpack_require__.r(__webpack_exports__);
|
|
39
39
|
__webpack_require__.d(__webpack_exports__, {
|
|
40
|
-
bffPlugin: ()=>bffPlugin
|
|
41
|
-
default: ()=>cli
|
|
40
|
+
bffPlugin: ()=>bffPlugin
|
|
42
41
|
});
|
|
43
42
|
const bff_core_namespaceObject = require("@modern-js/bff-core");
|
|
44
|
-
const server_utils_namespaceObject = require("@modern-js/server-utils");
|
|
45
43
|
const utils_namespaceObject = require("@modern-js/utils");
|
|
46
44
|
const external_path_namespaceObject = require("path");
|
|
47
45
|
var external_path_default = /*#__PURE__*/ __webpack_require__.n(external_path_namespaceObject);
|
|
48
|
-
const
|
|
49
|
-
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
const runtimeGenerator_js_namespaceObject = require("./utils/runtimeGenerator.js");
|
|
53
|
-
var runtimeGenerator_js_default = /*#__PURE__*/ __webpack_require__.n(runtimeGenerator_js_namespaceObject);
|
|
54
|
-
const RUNTIME_CREATE_REQUEST = '@modern-js/plugin-bff/client';
|
|
55
|
-
const WATCHABLE_EXTENSIONS = [
|
|
56
|
-
'.ts',
|
|
57
|
-
'.tsx',
|
|
58
|
-
'.js',
|
|
59
|
-
'.jsx',
|
|
60
|
-
'.mts',
|
|
61
|
-
'.cts',
|
|
62
|
-
'.mjs',
|
|
63
|
-
'.cjs',
|
|
64
|
-
'.json'
|
|
65
|
-
];
|
|
66
|
-
const isWatchableBffFile = (filename)=>WATCHABLE_EXTENSIONS.some((ext)=>filename.endsWith(ext));
|
|
67
|
-
const normalizePrefixList = (prefix)=>{
|
|
68
|
-
if (Array.isArray(prefix)) return prefix.filter(Boolean);
|
|
69
|
-
return [
|
|
70
|
-
prefix || utils_namespaceObject.DEFAULT_API_PREFIX
|
|
71
|
-
];
|
|
72
|
-
};
|
|
73
|
-
const getPrimaryPrefix = (prefix)=>normalizePrefixList(prefix)[0] || utils_namespaceObject.DEFAULT_API_PREFIX;
|
|
46
|
+
const compress_js_namespaceObject = require("./cli/compress.js");
|
|
47
|
+
const generator_js_namespaceObject = require("./cli/generator.js");
|
|
48
|
+
const prefix_js_namespaceObject = require("./cli/prefix.js");
|
|
49
|
+
const watch_js_namespaceObject = require("./cli/watch.js");
|
|
74
50
|
const bffPlugin = ()=>({
|
|
75
51
|
name: '@modern-js/plugin-bff',
|
|
76
52
|
setup: (api)=>{
|
|
@@ -82,107 +58,15 @@ const bffPlugin = ()=>({
|
|
|
82
58
|
bffRuntimeFramework: 'hono' === userRuntimeFramework ? 'hono' : 'effect'
|
|
83
59
|
});
|
|
84
60
|
}
|
|
85
|
-
const compileApi =
|
|
86
|
-
const { appDirectory, distDirectory, apiDirectory, sharedDirectory, moduleType } = api.getAppContext();
|
|
87
|
-
const modernConfig = api.getNormalizedConfig();
|
|
88
|
-
const distDir = external_path_default().resolve(distDirectory);
|
|
89
|
-
const apiDir = apiDirectory || external_path_default().resolve(appDirectory, utils_namespaceObject.API_DIR);
|
|
90
|
-
const sharedDir = sharedDirectory || external_path_default().resolve(appDirectory, utils_namespaceObject.SHARED_DIR);
|
|
91
|
-
const tsconfigPath = (0, utils_namespaceObject.resolveServerTsconfig)(appDirectory, modernConfig?.server?.tsconfigPath);
|
|
92
|
-
const sourceDirs = [];
|
|
93
|
-
if (await utils_namespaceObject.fs.pathExists(apiDir)) sourceDirs.push(apiDir);
|
|
94
|
-
if (await utils_namespaceObject.fs.pathExists(sharedDir)) sourceDirs.push(sharedDir);
|
|
95
|
-
const { alias } = modernConfig.source;
|
|
96
|
-
const { alias: resolveAlias } = modernConfig.resolve;
|
|
97
|
-
if (sourceDirs.length > 0) {
|
|
98
|
-
const combinedAlias = [].concat(alias ?? []).concat(resolveAlias ?? []);
|
|
99
|
-
await (0, server_utils_namespaceObject.compile)(appDirectory, {
|
|
100
|
-
alias: combinedAlias
|
|
101
|
-
}, {
|
|
102
|
-
sourceDirs,
|
|
103
|
-
distDir,
|
|
104
|
-
tsconfigPath,
|
|
105
|
-
moduleType,
|
|
106
|
-
throwErrorInsteadOfExit: true
|
|
107
|
-
});
|
|
108
|
-
}
|
|
109
|
-
};
|
|
110
|
-
const generator = async ()=>{
|
|
111
|
-
const { appDirectory, apiDirectory, lambdaDirectory, port, bffRuntimeFramework } = api.getAppContext();
|
|
112
|
-
const modernConfig = api.getNormalizedConfig();
|
|
113
|
-
const relativeDistPath = modernConfig?.output?.distPath?.root || 'dist';
|
|
114
|
-
const { bff } = modernConfig || {};
|
|
115
|
-
const prefix = getPrimaryPrefix(bff?.prefix);
|
|
116
|
-
const httpMethodDecider = bff?.httpMethodDecider;
|
|
117
|
-
const apiRouter = new bff_core_namespaceObject.ApiRouter({
|
|
118
|
-
apiDir: apiDirectory,
|
|
119
|
-
appDir: appDirectory,
|
|
120
|
-
lambdaDir: lambdaDirectory,
|
|
121
|
-
prefix,
|
|
122
|
-
httpMethodDecider,
|
|
123
|
-
isBuild: true
|
|
124
|
-
});
|
|
125
|
-
const lambdaDir = apiRouter.getLambdaDir();
|
|
126
|
-
const existLambda = apiRouter.isExistLambda();
|
|
127
|
-
const runtime = bff?.runtimeCreateRequest || RUNTIME_CREATE_REQUEST;
|
|
128
|
-
const relativeApiPath = external_path_default().relative(appDirectory, apiDirectory);
|
|
129
|
-
const relativeLambdaPath = external_path_default().relative(appDirectory, lambdaDir);
|
|
130
|
-
await pluginGenerator_js_default()({
|
|
131
|
-
prefix,
|
|
132
|
-
appDirectory,
|
|
133
|
-
relativeDistPath,
|
|
134
|
-
relativeApiPath,
|
|
135
|
-
relativeLambdaPath,
|
|
136
|
-
runtimeFramework: 'hono' === bffRuntimeFramework ? 'hono' : 'effect'
|
|
137
|
-
});
|
|
138
|
-
await clientGenerator_js_default()({
|
|
139
|
-
prefix,
|
|
140
|
-
appDir: appDirectory,
|
|
141
|
-
apiDir: apiDirectory,
|
|
142
|
-
lambdaDir,
|
|
143
|
-
existLambda,
|
|
144
|
-
port,
|
|
145
|
-
requestCreator: bff?.requestCreator,
|
|
146
|
-
httpMethodDecider,
|
|
147
|
-
relativeDistPath,
|
|
148
|
-
relativeApiPath,
|
|
149
|
-
bffRuntimeFramework,
|
|
150
|
-
effectEntry: bff?.effect?.entry,
|
|
151
|
-
effectDataPlatformBatch: bff?.effect?.dataPlatform?.batch
|
|
152
|
-
});
|
|
153
|
-
await runtimeGenerator_js_default()({
|
|
154
|
-
runtime,
|
|
155
|
-
appDirectory,
|
|
156
|
-
relativeDistPath
|
|
157
|
-
});
|
|
158
|
-
};
|
|
159
|
-
const handleCrossProjectInvocation = async (isBuild = false)=>{
|
|
160
|
-
const { bff } = api.getNormalizedConfig();
|
|
161
|
-
if (bff?.crossProject) {
|
|
162
|
-
if (!isBuild) await compileApi();
|
|
163
|
-
await generator();
|
|
164
|
-
}
|
|
165
|
-
};
|
|
61
|
+
const { compileApi, handleCrossProjectInvocation } = (0, generator_js_namespaceObject.createBffGenerator)(api);
|
|
166
62
|
const isHono = ()=>{
|
|
167
63
|
const { bffRuntimeFramework } = api.getAppContext();
|
|
168
64
|
return 'hono' === bffRuntimeFramework;
|
|
169
65
|
};
|
|
170
|
-
const createCompressConfig = (devServer, prefix)=>{
|
|
171
|
-
if (!devServer || 'object' != typeof devServer || Array.isArray(devServer)) return;
|
|
172
|
-
const { compress } = devServer;
|
|
173
|
-
if (void 0 === compress || true === compress) {
|
|
174
|
-
const prefixes = normalizePrefixList(prefix);
|
|
175
|
-
return {
|
|
176
|
-
filter: (req)=>!prefixes.some((item)=>req.url?.includes(item))
|
|
177
|
-
};
|
|
178
|
-
}
|
|
179
|
-
if (false === compress) return false;
|
|
180
|
-
return compress;
|
|
181
|
-
};
|
|
182
66
|
api.config(async ()=>{
|
|
183
67
|
const devServer = api.getConfig()?.tools?.devServer;
|
|
184
|
-
const prefix = api.getConfig()?.bff?.prefix
|
|
185
|
-
const compress = createCompressConfig(devServer, prefix);
|
|
68
|
+
const prefix = api.getConfig()?.bff?.prefix;
|
|
69
|
+
const compress = (0, compress_js_namespaceObject.createCompressConfig)(devServer, prefix);
|
|
186
70
|
return {
|
|
187
71
|
tools: {
|
|
188
72
|
devServer: {
|
|
@@ -192,7 +76,7 @@ const bffPlugin = ()=>({
|
|
|
192
76
|
const { port, appDirectory, apiDirectory, lambdaDirectory, bffRuntimeFramework } = api.getAppContext();
|
|
193
77
|
const modernConfig = api.getNormalizedConfig();
|
|
194
78
|
const { bff } = modernConfig || {};
|
|
195
|
-
const prefix = getPrimaryPrefix(bff?.prefix);
|
|
79
|
+
const prefix = (0, prefix_js_namespaceObject.getPrimaryPrefix)(bff?.prefix);
|
|
196
80
|
const httpMethodDecider = bff?.httpMethodDecider;
|
|
197
81
|
const apiRouter = new bff_core_namespaceObject.ApiRouter({
|
|
198
82
|
apiDir: apiDirectory,
|
|
@@ -282,16 +166,13 @@ const bffPlugin = ()=>({
|
|
|
282
166
|
const relativeSharedPath = sharedDirectory ? external_path_default().relative(appDirectory, sharedDirectory) : '';
|
|
283
167
|
const isApiFile = filename.startsWith(`${relativeApiPath}/`);
|
|
284
168
|
const isSharedFile = relativeSharedPath ? filename.startsWith(`${relativeSharedPath}/`) : false;
|
|
285
|
-
if (!isPrivate && ('add' === eventType || 'change' === eventType || 'unlink' === eventType) && (isApiFile || isSharedFile) && isWatchableBffFile(filename)) await handleCrossProjectInvocation();
|
|
169
|
+
if (!isPrivate && ('add' === eventType || 'change' === eventType || 'unlink' === eventType) && (isApiFile || isSharedFile) && (0, watch_js_namespaceObject.isWatchableBffFile)(filename)) await handleCrossProjectInvocation();
|
|
286
170
|
});
|
|
287
171
|
}
|
|
288
172
|
});
|
|
289
|
-
const cli = bffPlugin;
|
|
290
173
|
exports.bffPlugin = __webpack_exports__.bffPlugin;
|
|
291
|
-
exports["default"] = __webpack_exports__["default"];
|
|
292
174
|
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
293
|
-
"bffPlugin"
|
|
294
|
-
"default"
|
|
175
|
+
"bffPlugin"
|
|
295
176
|
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
296
177
|
Object.defineProperty(exports, '__esModule', {
|
|
297
178
|
value: true
|
package/dist/cjs/loader.js
CHANGED
|
@@ -44,6 +44,8 @@ const utils_namespaceObject = require("@modern-js/utils");
|
|
|
44
44
|
const external_path_namespaceObject = require("path");
|
|
45
45
|
var external_path_default = /*#__PURE__*/ __webpack_require__.n(external_path_namespaceObject);
|
|
46
46
|
const effectClientGenerator_js_namespaceObject = require("./utils/effectClientGenerator.js");
|
|
47
|
+
const EFFECT_BFF_WORKER_RUNTIME_QUERY = 'modern-bff-runtime';
|
|
48
|
+
const EFFECT_BFF_WORKER_RUNTIME_SOURCE_QUERY = 'modern-bff-runtime-source';
|
|
47
49
|
async function transformEffectRuntimeSource(source, filename) {
|
|
48
50
|
const swc = await import("@swc/core");
|
|
49
51
|
const result = await swc.transform(source, {
|
|
@@ -62,22 +64,36 @@ async function transformEffectRuntimeSource(source, filename) {
|
|
|
62
64
|
});
|
|
63
65
|
return result.code;
|
|
64
66
|
}
|
|
67
|
+
function createEffectWorkerRuntimeWrapper(resourcePath) {
|
|
68
|
+
const sourceRequest = `${resourcePath}?${EFFECT_BFF_WORKER_RUNTIME_SOURCE_QUERY}`;
|
|
69
|
+
return `import * as effectBffModule from ${JSON.stringify(sourceRequest)};
|
|
70
|
+
import { createEffectBffEdgeDispatcher } from '@modern-js/plugin-bff/effect-edge';
|
|
71
|
+
|
|
72
|
+
export const __modern_create_effect_bff_dispatcher = options =>
|
|
73
|
+
createEffectBffEdgeDispatcher({
|
|
74
|
+
...options,
|
|
75
|
+
module: effectBffModule,
|
|
76
|
+
});
|
|
77
|
+
`;
|
|
78
|
+
}
|
|
65
79
|
async function loader(source) {
|
|
66
80
|
this.cacheable();
|
|
67
81
|
const { resourcePath } = this;
|
|
68
82
|
delete require.cache[resourcePath];
|
|
69
83
|
const callback = this.async();
|
|
70
84
|
const draftOptions = this.getOptions();
|
|
85
|
+
const resourceQueries = new URLSearchParams(this.resourceQuery);
|
|
71
86
|
const effectEntryFile = (0, effectClientGenerator_js_namespaceObject.resolveEffectEntryFile)({
|
|
72
87
|
appDir: draftOptions.appDir,
|
|
73
88
|
apiDir: draftOptions.apiDir,
|
|
74
89
|
effectEntry: draftOptions.effectEntry
|
|
75
90
|
});
|
|
76
|
-
if ('effect' === draftOptions.bffRuntimeFramework && effectEntryFile && external_path_default().resolve(effectEntryFile) === external_path_default().resolve(resourcePath) &&
|
|
91
|
+
if ('effect' === draftOptions.bffRuntimeFramework && effectEntryFile && external_path_default().resolve(effectEntryFile) === external_path_default().resolve(resourcePath) && resourceQueries.has(EFFECT_BFF_WORKER_RUNTIME_SOURCE_QUERY)) {
|
|
77
92
|
const code = await transformEffectRuntimeSource(source, resourcePath);
|
|
78
93
|
callback(void 0, code);
|
|
79
94
|
return;
|
|
80
95
|
}
|
|
96
|
+
if ('effect' === draftOptions.bffRuntimeFramework && effectEntryFile && external_path_default().resolve(effectEntryFile) === external_path_default().resolve(resourcePath) && resourceQueries.has(EFFECT_BFF_WORKER_RUNTIME_QUERY)) return void callback(void 0, createEffectWorkerRuntimeWrapper(resourcePath));
|
|
81
97
|
if ('effect' === draftOptions.bffRuntimeFramework && effectEntryFile && external_path_default().resolve(effectEntryFile) === external_path_default().resolve(resourcePath)) {
|
|
82
98
|
const code = await (0, effectClientGenerator_js_namespaceObject.generateEffectClientCode)({
|
|
83
99
|
appDir: draftOptions.appDir,
|
|
@@ -88,7 +104,8 @@ async function loader(source) {
|
|
|
88
104
|
target: draftOptions.target,
|
|
89
105
|
requestCreator: draftOptions.requestCreator,
|
|
90
106
|
httpMethodDecider: draftOptions.httpMethodDecider,
|
|
91
|
-
dataPlatformBatch: draftOptions.effectDataPlatformBatch
|
|
107
|
+
dataPlatformBatch: draftOptions.effectDataPlatformBatch,
|
|
108
|
+
onDependency: (dependency)=>this.addDependency(dependency)
|
|
92
109
|
});
|
|
93
110
|
if (code) return void callback(void 0, code);
|
|
94
111
|
callback(void 0, `throw new Error('Failed to generate Effect client for ${resourcePath}')`);
|