everything-dev
Version:
A consolidated product package for building Module Federation apps with oRPC APIs.
1 lines • 7.92 kB
Source Map (JSON)
{"version":3,"file":"plugin.mjs","names":[],"sources":["../src/plugin.ts"],"sourcesContent":["import process from \"node:process\";\nimport * as p from \"@clack/prompts\";\nimport { Context, Effect, Layer } from \"effect\";\nimport { buildScoped, buildScopedContext } from \"every-plugin\";\nimport { cliDeployTrainRender } from \"./cli/render/deploy-train\";\nimport { cliWorkspaceBuildRender } from \"./cli/render/workspace-build\";\nimport { bosContract } from \"./contract\";\nimport { DatabaseBindings, DrizzleKit, makeDatabaseBindings, makeDrizzleKitLive } from \"./db\";\nimport { ProjectEnv, ProjectEnvLive } from \"./env/project-env\";\nimport { registerBuild } from \"./handlers/build\";\nimport { registerConfig } from \"./handlers/config\";\nimport { registerDb } from \"./handlers/db\";\nimport { registerDeploy } from \"./handlers/deploy\";\nimport { registerDev } from \"./handlers/dev\";\nimport { registerImport } from \"./handlers/import\";\nimport { registerInit } from \"./handlers/init\";\nimport { registerKeys } from \"./handlers/keys\";\nimport { registerOps } from \"./handlers/ops\";\nimport { registerPlugins } from \"./handlers/plugins\";\nimport { registerProcesses } from \"./handlers/processes\";\nimport { registerSecrets } from \"./handlers/secrets\";\nimport { registerSmoke } from \"./handlers/smoke\";\nimport { registerUpgrade } from \"./handlers/upgrade\";\nimport { createPlugin, z } from \"./sdk\";\nimport { DeviceLoginService } from \"./services/auth/device-login\";\nimport { SessionStore } from \"./services/auth/session-store\";\nimport { SignerService } from \"./services/auth/signer\";\nimport { SiteClient } from \"./services/auth/site-client\";\nimport { DbOpsService } from \"./services/db/ops\";\nimport { BundleStorage, RegistryStore } from \"./services/deploy/deps\";\nimport { DeployTrainRenderService } from \"./services/deploy/render\";\nimport { DeployTrainService } from \"./services/deploy/train\";\nimport { DevFlowService } from \"./services/dev/flow\";\nimport { OpsService } from \"./services/ops\";\nimport { PlatformManifestService } from \"./services/platform/manifest\";\nimport { PluginAdminService } from \"./services/plugins-admin\";\nimport { ProcessesService } from \"./services/processes/service\";\nimport { openResolution, ResolutionSessionService } from \"./services/resolution/session\";\nimport { InitFlowService } from \"./services/scaffold/init-flow\";\nimport { BuildTrainService, WorkspaceBuildRenderService } from \"./services/workspace/build-train\";\n\nexport { resolveRemoteConfigChain } from \"./handlers/config\";\nexport { type ProgressEvent, pluginEvents } from \"./services/dev/progress\";\nexport type { DevSessionData, StartSummary } from \"./services/dev/session\";\n\nconst buildRenderLayer = Layer.succeed(\n WorkspaceBuildRenderService,\n WorkspaceBuildRenderService.of(cliWorkspaceBuildRender),\n);\n\nconst deployRenderLayer = Layer.succeed(\n DeployTrainRenderService,\n DeployTrainRenderService.of(cliDeployTrainRender),\n);\n\nconst buildTrainLayer = BuildTrainService.Live.pipe(Layer.provide(buildRenderLayer));\n\nexport default createPlugin({\n variables: z.object({\n configPath: z.string().optional(),\n // The artifact root (cwd-derived) — decoupled from configPath so an\n // explicit boot config (--config-path fixture) validates and loads\n // without redirecting where the CLI writes generated artifacts.\n configDir: z.string().optional(),\n }),\n secrets: z.object({}),\n contract: bosContract,\n initialize: (config, _plugins) =>\n Effect.gen(function* () {\n const session = yield* Effect.promise(() =>\n openResolution({ path: config.variables.configPath }),\n );\n\n const projectEnv = yield* buildScoped(ProjectEnv, ProjectEnvLive);\n const effectContext = yield* Effect.context();\n\n const configDir = config.variables.configDir ?? session?.root ?? process.cwd();\n\n const services = yield* buildScopedContext(\n Layer.mergeAll(\n makeDatabaseBindings({\n projectDir: configDir,\n loadRuntimeConfig: async () => (await session?.buildRuntime()) ?? null,\n loadEnv: () => Effect.runPromiseWith(effectContext)(projectEnv.load(configDir)),\n }),\n makeDrizzleKitLive({\n projectDir: configDir,\n onLog: (message) => p.log.info(message),\n }),\n ),\n );\n\n const dbBindingsLayer = Layer.succeed(\n DatabaseBindings,\n Context.get(services, DatabaseBindings),\n );\n const drizzleKitLayer = Layer.succeed(DrizzleKit, Context.get(services, DrizzleKit));\n const deployTrainLayer = DeployTrainService.Live.pipe(\n Layer.provide(\n Layer.mergeAll(\n BundleStorage.Live,\n RegistryStore.Live,\n SignerService.Live,\n buildTrainLayer,\n ),\n ),\n );\n\n return Layer.mergeAll(\n Layer.succeed(ResolutionSessionService, session),\n dbBindingsLayer,\n drizzleKitLayer,\n ProcessesService.Live,\n SiteClient.Live,\n SessionStore.Live,\n DeviceLoginService.Live.pipe(Layer.provide(SiteClient.Live)),\n buildRenderLayer,\n buildTrainLayer,\n deployTrainLayer,\n deployRenderLayer,\n OpsService.Live,\n DbOpsService.Live.pipe(Layer.provide(Layer.mergeAll(dbBindingsLayer, drizzleKitLayer))),\n PluginAdminService.Live.pipe(Layer.provide(deployTrainLayer)),\n DevFlowService.Live,\n InitFlowService.Live,\n PlatformManifestService.Live,\n );\n }),\n createRouter: (builder) => ({\n ...registerConfig(builder),\n ...registerPlugins(builder),\n ...registerDev(builder),\n ...registerBuild(builder),\n ...registerDeploy(builder),\n ...registerSmoke(builder),\n ...registerKeys(builder),\n ...registerSecrets(builder),\n ...registerProcesses(builder),\n ...registerInit(builder),\n ...registerImport(builder),\n ...registerUpgrade(builder),\n ...registerDb(builder),\n ...registerOps(builder),\n }),\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6CA,MAAM,mBAAmB,MAAM,QAC7B,6BACA,4BAA4B,GAAG,uBAAuB,CACxD;AAEA,MAAM,oBAAoB,MAAM,QAC9B,0BACA,yBAAyB,GAAG,oBAAoB,CAClD;AAEA,MAAM,kBAAkB,kBAAkB,KAAK,KAAK,MAAM,QAAQ,gBAAgB,CAAC;AAEnF,qBAAe,aAAa;CAC1B,WAAW,EAAE,OAAO;EAClB,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS;EAIhC,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS;CACjC,CAAC;CACD,SAAS,EAAE,OAAO,CAAC,CAAC;CACpB,UAAU;CACV,aAAa,QAAQ,aACnB,OAAO,IAAI,aAAa;EACtB,MAAM,UAAU,OAAO,OAAO,cAC5B,eAAe,EAAE,MAAM,OAAO,UAAU,WAAW,CAAC,CACtD;EAEA,MAAM,aAAa,OAAO,YAAY,YAAY,cAAc;EAChE,MAAM,gBAAgB,OAAO,OAAO,QAAQ;EAE5C,MAAM,YAAY,OAAO,UAAU,aAAa,SAAS,QAAQ,QAAQ,IAAI;EAE7E,MAAM,WAAW,OAAO,mBACtB,MAAM,SACJ,qBAAqB;GACnB,YAAY;GACZ,mBAAmB,YAAa,MAAM,SAAS,aAAa,KAAM;GAClE,eAAe,OAAO,eAAe,aAAa,CAAC,CAAC,WAAW,KAAK,SAAS,CAAC;EAChF,CAAC,GACD,mBAAmB;GACjB,YAAY;GACZ,QAAQ,YAAY,EAAE,IAAI,KAAK,OAAO;EACxC,CAAC,CACH,CACF;EAEA,MAAM,kBAAkB,MAAM,QAC5B,kBACA,QAAQ,IAAI,UAAU,gBAAgB,CACxC;EACA,MAAM,kBAAkB,MAAM,QAAQ,YAAY,QAAQ,IAAI,UAAU,UAAU,CAAC;EACnF,MAAM,mBAAmB,mBAAmB,KAAK,KAC/C,MAAM,QACJ,MAAM,SACJ,cAAc,MACd,cAAc,MACd,cAAc,MACd,eACF,CACF,CACF;EAEA,OAAO,MAAM,SACX,MAAM,QAAQ,0BAA0B,OAAO,GAC/C,iBACA,iBACA,iBAAiB,MACjB,WAAW,MACX,aAAa,MACb,mBAAmB,KAAK,KAAK,MAAM,QAAQ,WAAW,IAAI,CAAC,GAC3D,kBACA,iBACA,kBACA,mBACA,WAAW,MACX,aAAa,KAAK,KAAK,MAAM,QAAQ,MAAM,SAAS,iBAAiB,eAAe,CAAC,CAAC,GACtF,mBAAmB,KAAK,KAAK,MAAM,QAAQ,gBAAgB,CAAC,GAC5D,eAAe,MACf,gBAAgB,MAChB,wBAAwB,IAC1B;CACF,CAAC;CACH,eAAe,aAAa;EAC1B,GAAG,eAAe,OAAO;EACzB,GAAG,gBAAgB,OAAO;EAC1B,GAAG,YAAY,OAAO;EACtB,GAAG,cAAc,OAAO;EACxB,GAAG,eAAe,OAAO;EACzB,GAAG,cAAc,OAAO;EACxB,GAAG,aAAa,OAAO;EACvB,GAAG,gBAAgB,OAAO;EAC1B,GAAG,kBAAkB,OAAO;EAC5B,GAAG,aAAa,OAAO;EACvB,GAAG,eAAe,OAAO;EACzB,GAAG,gBAAgB,OAAO;EAC1B,GAAG,WAAW,OAAO;EACrB,GAAG,YAAY,OAAO;CACxB;AACF,CAAC"}