@celljs/cli 3.8.0 → 4.0.0
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 +442 -1
- package/agent/guide.md +39 -0
- package/bin/cell.js +2 -0
- package/lib/agent/agent-guide.d.ts +39 -0
- package/lib/agent/agent-guide.d.ts.map +1 -0
- package/lib/agent/agent-guide.js +67 -0
- package/lib/agent/agent-guide.js.map +1 -0
- package/lib/build/executable-compiler.d.ts +44 -0
- package/lib/build/executable-compiler.d.ts.map +1 -0
- package/lib/build/executable-compiler.js +145 -0
- package/lib/build/executable-compiler.js.map +1 -0
- package/lib/build/executable-compiler.spec.d.ts +2 -0
- package/lib/build/executable-compiler.spec.d.ts.map +1 -0
- package/lib/build/executable-compiler.spec.js +71 -0
- package/lib/build/executable-compiler.spec.js.map +1 -0
- package/lib/build/single-compile.spec.d.ts +2 -0
- package/lib/build/single-compile.spec.d.ts.map +1 -0
- package/lib/build/single-compile.spec.js +135 -0
- package/lib/build/single-compile.spec.js.map +1 -0
- package/lib/check/project-checker.d.ts +85 -0
- package/lib/check/project-checker.d.ts.map +1 -0
- package/lib/check/project-checker.js +332 -0
- package/lib/check/project-checker.js.map +1 -0
- package/lib/check/project-checker.spec.d.ts +2 -0
- package/lib/check/project-checker.spec.d.ts.map +1 -0
- package/lib/check/project-checker.spec.js +147 -0
- package/lib/check/project-checker.spec.js.map +1 -0
- package/lib/cli/agent-command.d.ts +15 -0
- package/lib/cli/agent-command.d.ts.map +1 -0
- package/lib/cli/agent-command.js +42 -0
- package/lib/cli/agent-command.js.map +1 -0
- package/lib/cli/build-command.d.ts +84 -0
- package/lib/cli/build-command.d.ts.map +1 -0
- package/lib/cli/build-command.js +170 -0
- package/lib/cli/build-command.js.map +1 -0
- package/lib/cli/cell-cli.d.ts +35 -0
- package/lib/cli/cell-cli.d.ts.map +1 -0
- package/lib/cli/cell-cli.js +159 -0
- package/lib/cli/cell-cli.js.map +1 -0
- package/lib/cli/cell-cli.spec.d.ts +2 -0
- package/lib/cli/cell-cli.spec.d.ts.map +1 -0
- package/lib/cli/cell-cli.spec.js +195 -0
- package/lib/cli/cell-cli.spec.js.map +1 -0
- package/lib/cli/check-command.d.ts +31 -0
- package/lib/cli/check-command.d.ts.map +1 -0
- package/lib/cli/check-command.js +67 -0
- package/lib/cli/check-command.js.map +1 -0
- package/lib/cli/command.d.ts +24 -0
- package/lib/cli/command.d.ts.map +1 -0
- package/lib/cli/command.js +10 -0
- package/lib/cli/command.js.map +1 -0
- package/lib/cli/config-command.d.ts +29 -0
- package/lib/cli/config-command.d.ts.map +1 -0
- package/lib/cli/config-command.js +71 -0
- package/lib/cli/config-command.js.map +1 -0
- package/lib/cli/config-command.spec.d.ts +2 -0
- package/lib/cli/config-command.spec.d.ts.map +1 -0
- package/lib/cli/config-command.spec.js +79 -0
- package/lib/cli/config-command.spec.js.map +1 -0
- package/lib/cli/deploy-command.d.ts +41 -0
- package/lib/cli/deploy-command.d.ts.map +1 -0
- package/lib/cli/deploy-command.js +114 -0
- package/lib/cli/deploy-command.js.map +1 -0
- package/lib/cli/dev-command.d.ts +47 -0
- package/lib/cli/dev-command.d.ts.map +1 -0
- package/lib/cli/dev-command.js +219 -0
- package/lib/cli/dev-command.js.map +1 -0
- package/lib/cli/dev-command.spec.d.ts +2 -0
- package/lib/cli/dev-command.spec.d.ts.map +1 -0
- package/lib/cli/dev-command.spec.js +149 -0
- package/lib/cli/dev-command.spec.js.map +1 -0
- package/lib/cli/docs-command.d.ts +19 -0
- package/lib/cli/docs-command.d.ts.map +1 -0
- package/lib/cli/docs-command.js +47 -0
- package/lib/cli/docs-command.js.map +1 -0
- package/lib/cli/info-command.d.ts +44 -0
- package/lib/cli/info-command.d.ts.map +1 -0
- package/lib/cli/info-command.js +39 -0
- package/lib/cli/info-command.js.map +1 -0
- package/lib/cli/info-command.spec.d.ts +2 -0
- package/lib/cli/info-command.spec.d.ts.map +1 -0
- package/lib/cli/info-command.spec.js +236 -0
- package/lib/cli/info-command.spec.js.map +1 -0
- package/lib/cli/init-command.d.ts +20 -0
- package/lib/cli/init-command.d.ts.map +1 -0
- package/lib/cli/init-command.js +43 -0
- package/lib/cli/init-command.js.map +1 -0
- package/lib/cli/main.d.ts +2 -0
- package/lib/cli/main.d.ts.map +1 -0
- package/lib/cli/main.js +3 -0
- package/lib/cli/main.js.map +1 -0
- package/lib/cli/mcp-command.d.ts +34 -0
- package/lib/cli/mcp-command.d.ts.map +1 -0
- package/lib/cli/mcp-command.js +85 -0
- package/lib/cli/mcp-command.js.map +1 -0
- package/lib/cli/mcp-command.spec.d.ts +2 -0
- package/lib/cli/mcp-command.spec.d.ts.map +1 -0
- package/lib/cli/mcp-command.spec.js +132 -0
- package/lib/cli/mcp-command.spec.js.map +1 -0
- package/lib/cli/preview-command.d.ts +24 -0
- package/lib/cli/preview-command.d.ts.map +1 -0
- package/lib/cli/preview-command.js +91 -0
- package/lib/cli/preview-command.js.map +1 -0
- package/lib/cli/reporter.d.ts +26 -0
- package/lib/cli/reporter.d.ts.map +1 -0
- package/lib/cli/reporter.js +58 -0
- package/lib/cli/reporter.js.map +1 -0
- package/lib/config/config-build.spec.d.ts +2 -0
- package/lib/config/config-build.spec.d.ts.map +1 -0
- package/lib/config/config-build.spec.js +111 -0
- package/lib/config/config-build.spec.js.map +1 -0
- package/lib/config/config-explainer.d.ts +48 -0
- package/lib/config/config-explainer.d.ts.map +1 -0
- package/lib/config/config-explainer.js +130 -0
- package/lib/config/config-explainer.js.map +1 -0
- package/lib/config/config-file-loader.d.ts +22 -0
- package/lib/config/config-file-loader.d.ts.map +1 -0
- package/lib/config/config-file-loader.js +63 -0
- package/lib/config/config-file-loader.js.map +1 -0
- package/lib/config/config-resolver.d.ts +111 -0
- package/lib/config/config-resolver.d.ts.map +1 -0
- package/lib/config/config-resolver.js +215 -0
- package/lib/config/config-resolver.js.map +1 -0
- package/lib/config/config-resolver.spec.d.ts +2 -0
- package/lib/config/config-resolver.spec.d.ts.map +1 -0
- package/lib/config/config-resolver.spec.js +159 -0
- package/lib/config/config-resolver.spec.js.map +1 -0
- package/lib/config/config-validator.d.ts +35 -0
- package/lib/config/config-validator.d.ts.map +1 -0
- package/lib/config/config-validator.js +160 -0
- package/lib/config/config-validator.js.map +1 -0
- package/lib/config/config-validator.spec.d.ts +2 -0
- package/lib/config/config-validator.spec.d.ts.map +1 -0
- package/lib/config/config-validator.spec.js +77 -0
- package/lib/config/config-validator.spec.js.map +1 -0
- package/lib/config/define-config.d.ts +4 -0
- package/lib/config/define-config.d.ts.map +1 -0
- package/lib/config/define-config.js +5 -0
- package/lib/config/define-config.js.map +1 -0
- package/lib/config/types.d.ts +53 -0
- package/lib/config/types.d.ts.map +1 -0
- package/lib/config/types.js +2 -0
- package/lib/config/types.js.map +1 -0
- package/lib/deploy/cloud-api.d.ts +58 -0
- package/lib/deploy/cloud-api.d.ts.map +1 -0
- package/lib/deploy/cloud-api.js +189 -0
- package/lib/deploy/cloud-api.js.map +1 -0
- package/lib/deploy/code-package.d.ts +15 -0
- package/lib/deploy/code-package.d.ts.map +1 -0
- package/lib/deploy/code-package.js +40 -0
- package/lib/deploy/code-package.js.map +1 -0
- package/lib/deploy/deploy-utils.spec.d.ts +2 -0
- package/lib/deploy/deploy-utils.spec.d.ts.map +1 -0
- package/lib/deploy/deploy-utils.spec.js +56 -0
- package/lib/deploy/deploy-utils.spec.js.map +1 -0
- package/lib/deploy/deployer-registry.d.ts +11 -0
- package/lib/deploy/deployer-registry.d.ts.map +1 -0
- package/lib/deploy/deployer-registry.js +40 -0
- package/lib/deploy/deployer-registry.js.map +1 -0
- package/lib/deploy/request-signer.d.ts +51 -0
- package/lib/deploy/request-signer.d.ts.map +1 -0
- package/lib/deploy/request-signer.js +109 -0
- package/lib/deploy/request-signer.js.map +1 -0
- package/lib/deploy/zip-writer.d.ts +32 -0
- package/lib/deploy/zip-writer.d.ts.map +1 -0
- package/lib/deploy/zip-writer.js +114 -0
- package/lib/deploy/zip-writer.js.map +1 -0
- package/lib/docs/docs-index.d.ts +54 -0
- package/lib/docs/docs-index.d.ts.map +1 -0
- package/lib/docs/docs-index.js +140 -0
- package/lib/docs/docs-index.js.map +1 -0
- package/lib/docs/docs-index.spec.d.ts +2 -0
- package/lib/docs/docs-index.spec.d.ts.map +1 -0
- package/lib/docs/docs-index.spec.js +52 -0
- package/lib/docs/docs-index.spec.js.map +1 -0
- package/lib/events/event-bus.d.ts +30 -0
- package/lib/events/event-bus.d.ts.map +1 -0
- package/lib/events/event-bus.js +81 -0
- package/lib/events/event-bus.js.map +1 -0
- package/lib/events/event-bus.spec.d.ts +2 -0
- package/lib/events/event-bus.spec.d.ts.map +1 -0
- package/lib/events/event-bus.spec.js +69 -0
- package/lib/events/event-bus.spec.js.map +1 -0
- package/lib/events/hook-runner.d.ts +27 -0
- package/lib/events/hook-runner.d.ts.map +1 -0
- package/lib/events/hook-runner.js +65 -0
- package/lib/events/hook-runner.js.map +1 -0
- package/lib/events/hook-runner.spec.d.ts +2 -0
- package/lib/events/hook-runner.spec.d.ts.map +1 -0
- package/lib/events/hook-runner.spec.js +36 -0
- package/lib/events/hook-runner.spec.js.map +1 -0
- package/lib/index.d.ts +57 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +57 -2
- package/lib/index.js.map +1 -1
- package/lib/info/project-inspector.d.ts +143 -0
- package/lib/info/project-inspector.d.ts.map +1 -0
- package/lib/info/project-inspector.js +244 -0
- package/lib/info/project-inspector.js.map +1 -0
- package/lib/init/project-initializer.d.ts +44 -0
- package/lib/init/project-initializer.d.ts.map +1 -0
- package/lib/init/project-initializer.js +90 -0
- package/lib/init/project-initializer.js.map +1 -0
- package/lib/init/project-initializer.spec.d.ts +2 -0
- package/lib/init/project-initializer.spec.d.ts.map +1 -0
- package/lib/init/project-initializer.spec.js +88 -0
- package/lib/init/project-initializer.spec.js.map +1 -0
- package/lib/mcp/dev-activity.d.ts +34 -0
- package/lib/mcp/dev-activity.d.ts.map +1 -0
- package/lib/mcp/dev-activity.js +46 -0
- package/lib/mcp/dev-activity.js.map +1 -0
- package/lib/mcp/dev-mcp-endpoint.d.ts +62 -0
- package/lib/mcp/dev-mcp-endpoint.d.ts.map +1 -0
- package/lib/mcp/dev-mcp-endpoint.js +280 -0
- package/lib/mcp/dev-mcp-endpoint.js.map +1 -0
- package/lib/mcp/dev-mcp-endpoint.spec.d.ts +2 -0
- package/lib/mcp/dev-mcp-endpoint.spec.d.ts.map +1 -0
- package/lib/mcp/dev-mcp-endpoint.spec.js +143 -0
- package/lib/mcp/dev-mcp-endpoint.spec.js.map +1 -0
- package/lib/mcp/mcp-server.d.ts +64 -0
- package/lib/mcp/mcp-server.d.ts.map +1 -0
- package/lib/mcp/mcp-server.js +201 -0
- package/lib/mcp/mcp-server.js.map +1 -0
- package/lib/mcp/mcp-server.spec.d.ts +2 -0
- package/lib/mcp/mcp-server.spec.d.ts.map +1 -0
- package/lib/mcp/mcp-server.spec.js +136 -0
- package/lib/mcp/mcp-server.spec.js.map +1 -0
- package/lib/mcp/project-mcp-tools.d.ts +35 -0
- package/lib/mcp/project-mcp-tools.d.ts.map +1 -0
- package/lib/mcp/project-mcp-tools.js +199 -0
- package/lib/mcp/project-mcp-tools.js.map +1 -0
- package/lib/modules/module-host.d.ts +118 -0
- package/lib/modules/module-host.d.ts.map +1 -0
- package/lib/modules/module-host.js +405 -0
- package/lib/modules/module-host.js.map +1 -0
- package/lib/modules/module-host.spec.d.ts +2 -0
- package/lib/modules/module-host.spec.d.ts.map +1 -0
- package/lib/modules/module-host.spec.js +220 -0
- package/lib/modules/module-host.spec.js.map +1 -0
- package/lib/preset/builtin-presets.d.ts +9 -0
- package/lib/preset/builtin-presets.d.ts.map +1 -0
- package/lib/preset/builtin-presets.js +24 -0
- package/lib/preset/builtin-presets.js.map +1 -0
- package/lib/preset/cloudflare/cloudflare-deployer.d.ts +26 -0
- package/lib/preset/cloudflare/cloudflare-deployer.d.ts.map +1 -0
- package/lib/preset/cloudflare/cloudflare-deployer.js +116 -0
- package/lib/preset/cloudflare/cloudflare-deployer.js.map +1 -0
- package/lib/preset/cloudflare/cloudflare-preset.d.ts +16 -0
- package/lib/preset/cloudflare/cloudflare-preset.d.ts.map +1 -0
- package/lib/preset/cloudflare/cloudflare-preset.js +97 -0
- package/lib/preset/cloudflare/cloudflare-preset.js.map +1 -0
- package/lib/preset/cloudflare/cloudflare.spec.d.ts +2 -0
- package/lib/preset/cloudflare/cloudflare.spec.d.ts.map +1 -0
- package/lib/preset/cloudflare/cloudflare.spec.js +212 -0
- package/lib/preset/cloudflare/cloudflare.spec.js.map +1 -0
- package/lib/preset/cloudflare/wrangler-config.d.ts +50 -0
- package/lib/preset/cloudflare/wrangler-config.d.ts.map +1 -0
- package/lib/preset/cloudflare/wrangler-config.js +160 -0
- package/lib/preset/cloudflare/wrangler-config.js.map +1 -0
- package/lib/preset/cloudflare/wrangler-config.spec.d.ts +2 -0
- package/lib/preset/cloudflare/wrangler-config.spec.d.ts.map +1 -0
- package/lib/preset/cloudflare/wrangler-config.spec.js +112 -0
- package/lib/preset/cloudflare/wrangler-config.spec.js.map +1 -0
- package/lib/preset/cloudflare/wrangler.d.ts +38 -0
- package/lib/preset/cloudflare/wrangler.d.ts.map +1 -0
- package/lib/preset/cloudflare/wrangler.js +90 -0
- package/lib/preset/cloudflare/wrangler.js.map +1 -0
- package/lib/preset/cloudflare/wrangler.spec.d.ts +2 -0
- package/lib/preset/cloudflare/wrangler.spec.d.ts.map +1 -0
- package/lib/preset/cloudflare/wrangler.spec.js +64 -0
- package/lib/preset/cloudflare/wrangler.spec.js.map +1 -0
- package/lib/preset/fc/fc-deployer.d.ts +50 -0
- package/lib/preset/fc/fc-deployer.d.ts.map +1 -0
- package/lib/preset/fc/fc-deployer.js +209 -0
- package/lib/preset/fc/fc-deployer.js.map +1 -0
- package/lib/preset/fc/fc-preset.d.ts +20 -0
- package/lib/preset/fc/fc-preset.d.ts.map +1 -0
- package/lib/preset/fc/fc-preset.js +46 -0
- package/lib/preset/fc/fc-preset.js.map +1 -0
- package/lib/preset/lambda/lambda-deployer.d.ts +50 -0
- package/lib/preset/lambda/lambda-deployer.d.ts.map +1 -0
- package/lib/preset/lambda/lambda-deployer.js +274 -0
- package/lib/preset/lambda/lambda-deployer.js.map +1 -0
- package/lib/preset/lambda/lambda-preset.d.ts +14 -0
- package/lib/preset/lambda/lambda-preset.d.ts.map +1 -0
- package/lib/preset/lambda/lambda-preset.js +44 -0
- package/lib/preset/lambda/lambda-preset.js.map +1 -0
- package/lib/preset/preset-output.d.ts +19 -0
- package/lib/preset/preset-output.d.ts.map +1 -0
- package/lib/preset/preset-output.js +45 -0
- package/lib/preset/preset-output.js.map +1 -0
- package/lib/preset/preset-registry.d.ts +16 -0
- package/lib/preset/preset-registry.d.ts.map +1 -0
- package/lib/preset/preset-registry.js +58 -0
- package/lib/preset/preset-registry.js.map +1 -0
- package/lib/preset/preset-registry.spec.d.ts +2 -0
- package/lib/preset/preset-registry.spec.d.ts.map +1 -0
- package/lib/preset/preset-registry.spec.js +28 -0
- package/lib/preset/preset-registry.spec.js.map +1 -0
- package/lib/preset/scf/scf-deployer.d.ts +54 -0
- package/lib/preset/scf/scf-deployer.d.ts.map +1 -0
- package/lib/preset/scf/scf-deployer.js +202 -0
- package/lib/preset/scf/scf-deployer.js.map +1 -0
- package/lib/preset/scf/scf-preset.d.ts +19 -0
- package/lib/preset/scf/scf-preset.d.ts.map +1 -0
- package/lib/preset/scf/scf-preset.js +43 -0
- package/lib/preset/scf/scf-preset.js.map +1 -0
- package/lib/preset/serverless-deployers.spec.d.ts +2 -0
- package/lib/preset/serverless-deployers.spec.d.ts.map +1 -0
- package/lib/preset/serverless-deployers.spec.js +307 -0
- package/lib/preset/serverless-deployers.spec.js.map +1 -0
- package/lib/preset/serverless-presets.spec.d.ts +2 -0
- package/lib/preset/serverless-presets.spec.d.ts.map +1 -0
- package/lib/preset/serverless-presets.spec.js +280 -0
- package/lib/preset/serverless-presets.spec.js.map +1 -0
- package/lib/preset/serverless-scripts.d.ts +29 -0
- package/lib/preset/serverless-scripts.d.ts.map +1 -0
- package/lib/preset/serverless-scripts.js +120 -0
- package/lib/preset/serverless-scripts.js.map +1 -0
- package/lib/preset/vercel/vercel-deployer.d.ts +38 -0
- package/lib/preset/vercel/vercel-deployer.d.ts.map +1 -0
- package/lib/preset/vercel/vercel-deployer.js +160 -0
- package/lib/preset/vercel/vercel-deployer.js.map +1 -0
- package/lib/preset/vercel/vercel-preset.d.ts +19 -0
- package/lib/preset/vercel/vercel-preset.d.ts.map +1 -0
- package/lib/preset/vercel/vercel-preset.js +102 -0
- package/lib/preset/vercel/vercel-preset.js.map +1 -0
- package/lib/test/fixture-project.d.ts +17 -0
- package/lib/test/fixture-project.d.ts.map +1 -0
- package/lib/test/fixture-project.js +43 -0
- package/lib/test/fixture-project.js.map +1 -0
- package/lib/testing/create-test-app.d.ts +27 -0
- package/lib/testing/create-test-app.d.ts.map +1 -0
- package/lib/testing/create-test-app.js +54 -0
- package/lib/testing/create-test-app.js.map +1 -0
- package/lib/testing/create-test-app.spec.d.ts +2 -0
- package/lib/testing/create-test-app.spec.d.ts.map +1 -0
- package/lib/testing/create-test-app.spec.js +66 -0
- package/lib/testing/create-test-app.spec.js.map +1 -0
- package/lib/toolchain/toolchain.d.ts +49 -0
- package/lib/toolchain/toolchain.d.ts.map +1 -0
- package/lib/toolchain/toolchain.js +100 -0
- package/lib/toolchain/toolchain.js.map +1 -0
- package/lib/utils/json-util.d.ts +11 -0
- package/lib/utils/json-util.d.ts.map +1 -0
- package/lib/utils/json-util.js +73 -0
- package/lib/utils/json-util.js.map +1 -0
- package/lib/utils/json-util.spec.d.ts +2 -0
- package/lib/utils/json-util.spec.d.ts.map +1 -0
- package/lib/utils/json-util.spec.js +18 -0
- package/lib/utils/json-util.spec.js.map +1 -0
- package/lib/utils/text-util.d.ts +19 -0
- package/lib/utils/text-util.d.ts.map +1 -0
- package/lib/utils/text-util.js +66 -0
- package/lib/utils/text-util.js.map +1 -0
- package/lib/utils/text-util.spec.d.ts +2 -0
- package/lib/utils/text-util.spec.d.ts.map +1 -0
- package/lib/utils/text-util.spec.js +22 -0
- package/lib/utils/text-util.spec.js.map +1 -0
- package/package.json +28 -30
- package/src/agent/agent-guide.ts +90 -0
- package/src/build/executable-compiler.ts +179 -0
- package/src/check/project-checker.ts +365 -0
- package/src/cli/agent-command.ts +46 -0
- package/src/cli/build-command.ts +189 -0
- package/src/cli/cell-cli.ts +174 -0
- package/src/cli/check-command.ts +74 -0
- package/src/cli/command.ts +29 -0
- package/src/cli/config-command.ts +73 -0
- package/src/cli/deploy-command.ts +122 -0
- package/src/cli/dev-command.ts +232 -0
- package/src/cli/docs-command.ts +53 -0
- package/src/cli/info-command.ts +40 -0
- package/src/cli/init-command.ts +53 -0
- package/src/cli/main.ts +3 -0
- package/src/cli/mcp-command.ts +98 -0
- package/src/cli/preview-command.ts +98 -0
- package/src/cli/reporter.ts +67 -0
- package/src/config/config-explainer.ts +158 -0
- package/src/config/config-file-loader.ts +76 -0
- package/src/config/config-resolver.ts +300 -0
- package/src/config/config-validator.ts +208 -0
- package/src/config/define-config.ts +6 -0
- package/src/config/types.ts +57 -0
- package/src/deploy/cloud-api.ts +194 -0
- package/src/deploy/code-package.ts +44 -0
- package/src/deploy/deployer-registry.ts +44 -0
- package/src/deploy/request-signer.ts +155 -0
- package/src/deploy/zip-writer.ts +132 -0
- package/src/docs/docs-index.ts +174 -0
- package/src/events/event-bus.ts +94 -0
- package/src/events/hook-runner.ts +78 -0
- package/src/index.ts +57 -0
- package/src/info/project-inspector.ts +352 -0
- package/src/init/project-initializer.ts +111 -0
- package/src/mcp/dev-activity.ts +71 -0
- package/src/mcp/dev-mcp-endpoint.ts +323 -0
- package/src/mcp/mcp-server.ts +251 -0
- package/src/mcp/project-mcp-tools.ts +216 -0
- package/src/modules/module-host.ts +489 -0
- package/src/preset/builtin-presets.ts +26 -0
- package/src/preset/cloudflare/cloudflare-deployer.ts +126 -0
- package/src/preset/cloudflare/cloudflare-preset.ts +97 -0
- package/src/preset/cloudflare/wrangler-config.ts +173 -0
- package/src/preset/cloudflare/wrangler.ts +113 -0
- package/src/preset/fc/fc-deployer.ts +237 -0
- package/src/preset/fc/fc-preset.ts +51 -0
- package/src/preset/lambda/lambda-deployer.ts +317 -0
- package/src/preset/lambda/lambda-preset.ts +45 -0
- package/src/preset/preset-output.ts +55 -0
- package/src/preset/preset-registry.ts +65 -0
- package/src/preset/scf/scf-deployer.ts +232 -0
- package/src/preset/scf/scf-preset.ts +45 -0
- package/src/preset/serverless-scripts.ts +132 -0
- package/src/preset/vercel/vercel-deployer.ts +168 -0
- package/src/preset/vercel/vercel-preset.ts +111 -0
- package/src/test/fixture-project.ts +50 -0
- package/src/testing/create-test-app.ts +73 -0
- package/src/toolchain/toolchain.ts +121 -0
- package/src/utils/json-util.ts +67 -0
- package/src/utils/text-util.ts +68 -0
- package/templates/backend/README.md +13 -0
- package/templates/backend/_gitignore +5 -0
- package/templates/backend/cell.yml +3 -0
- package/templates/backend/package.json +23 -0
- package/templates/{file-service/src → backend/src/node}/home-controller.ts +5 -2
- package/templates/{file-service/src → backend/src/node}/module.ts +0 -1
- package/templates/backend/template.json +3 -0
- package/templates/backend/test/app.spec.ts +19 -0
- package/templates/backend/tsconfig.json +25 -0
- package/templates/fullstack/README.md +13 -0
- package/templates/fullstack/_gitignore +5 -0
- package/templates/fullstack/cell.yml +6 -0
- package/templates/fullstack/package.json +27 -0
- package/templates/fullstack/src/browser/home.view.tsx +19 -0
- package/templates/{cell-component/src → fullstack/src/browser}/module.ts +1 -1
- package/templates/fullstack/src/common/greeting-protocol.ts +5 -0
- package/templates/fullstack/src/node/greeting-server.ts +13 -0
- package/templates/{admin-app/src/browser → fullstack/src/node}/module.ts +2 -1
- package/templates/fullstack/template.json +3 -0
- package/templates/fullstack/test/app.spec.ts +18 -0
- package/templates/fullstack/tsconfig.json +27 -0
- package/bin/cell +0 -2
- package/lib/build/build-manager.d.ts +0 -9
- package/lib/build/build-manager.d.ts.map +0 -1
- package/lib/build/build-manager.js +0 -41
- package/lib/build/build-manager.js.map +0 -1
- package/lib/build/build.d.ts +0 -6
- package/lib/build/build.d.ts.map +0 -1
- package/lib/build/build.js +0 -16
- package/lib/build/build.js.map +0 -1
- package/lib/cell-main.d.ts +0 -2
- package/lib/cell-main.d.ts.map +0 -1
- package/lib/cell-main.js +0 -110
- package/lib/cell-main.js.map +0 -1
- package/lib/cell.d.ts +0 -2
- package/lib/cell.d.ts.map +0 -1
- package/lib/cell.js +0 -194
- package/lib/cell.js.map +0 -1
- package/lib/config/config.d.ts +0 -12
- package/lib/config/config.d.ts.map +0 -1
- package/lib/config/config.js +0 -48
- package/lib/config/config.js.map +0 -1
- package/lib/deploy/deploy.d.ts +0 -7
- package/lib/deploy/deploy.d.ts.map +0 -1
- package/lib/deploy/deploy.js +0 -30
- package/lib/deploy/deploy.js.map +0 -1
- package/lib/info/info.d.ts +0 -6
- package/lib/info/info.d.ts.map +0 -1
- package/lib/info/info.js +0 -21
- package/lib/info/info.js.map +0 -1
- package/lib/init/init-manager.d.ts +0 -33
- package/lib/init/init-manager.d.ts.map +0 -1
- package/lib/init/init-manager.js +0 -141
- package/lib/init/init-manager.js.map +0 -1
- package/lib/init/init.d.ts +0 -4
- package/lib/init/init.d.ts.map +0 -1
- package/lib/init/init.js +0 -17
- package/lib/init/init.js.map +0 -1
- package/lib/init/templates.d.ts +0 -2
- package/lib/init/templates.d.ts.map +0 -1
- package/lib/init/templates.js +0 -23
- package/lib/init/templates.js.map +0 -1
- package/lib/package.spec.d.ts +0 -2
- package/lib/package.spec.d.ts.map +0 -1
- package/lib/package.spec.js +0 -7
- package/lib/package.spec.js.map +0 -1
- package/lib/props/props.d.ts +0 -9
- package/lib/props/props.d.ts.map +0 -1
- package/lib/props/props.js +0 -49
- package/lib/props/props.js.map +0 -1
- package/lib/serve/serve-manager.d.ts +0 -8
- package/lib/serve/serve-manager.d.ts.map +0 -1
- package/lib/serve/serve-manager.js +0 -44
- package/lib/serve/serve-manager.js.map +0 -1
- package/lib/serve/serve.d.ts +0 -8
- package/lib/serve/serve.d.ts.map +0 -1
- package/lib/serve/serve.js +0 -25
- package/lib/serve/serve.js.map +0 -1
- package/lib/update/update.d.ts +0 -9
- package/lib/update/update.d.ts.map +0 -1
- package/lib/update/update.js +0 -56
- package/lib/update/update.js.map +0 -1
- package/lib/utils/banner-util.d.ts +0 -6
- package/lib/utils/banner-util.d.ts.map +0 -1
- package/lib/utils/banner-util.js +0 -44
- package/lib/utils/banner-util.js.map +0 -1
- package/lib/utils/index.d.ts +0 -2
- package/lib/utils/index.d.ts.map +0 -1
- package/lib/utils/index.js +0 -18
- package/lib/utils/index.js.map +0 -1
- package/src/build/build-manager.ts +0 -50
- package/src/build/build.ts +0 -17
- package/src/cell-main.ts +0 -125
- package/src/cell.ts +0 -215
- package/src/config/config.ts +0 -56
- package/src/deploy/deploy.ts +0 -31
- package/src/info/info.ts +0 -23
- package/src/init/init-manager.ts +0 -163
- package/src/init/init.ts +0 -15
- package/src/init/templates.ts +0 -19
- package/src/package.spec.ts +0 -5
- package/src/props/props.ts +0 -48
- package/src/serve/serve-manager.ts +0 -51
- package/src/serve/serve.ts +0 -29
- package/src/update/update.ts +0 -61
- package/src/utils/banner-util.ts +0 -41
- package/src/utils/index.ts +0 -1
- package/templates/accounts/README.md +0 -92
- package/templates/accounts/cell-database.yml +0 -17
- package/templates/accounts/cell-locale.yml +0 -17
- package/templates/accounts/cell-oauth2.0.yml +0 -8
- package/templates/accounts/cell-theme.yml +0 -9
- package/templates/accounts/cell.yml +0 -10
- package/templates/accounts/favicon.ico +0 -0
- package/templates/accounts/package.json +0 -48
- package/templates/accounts/src/browser/home.view.tsx +0 -86
- package/templates/accounts/src/browser/index.ts +0 -3
- package/templates/accounts/src/browser/login.view.tsx +0 -78
- package/templates/accounts/src/browser/module.ts +0 -3
- package/templates/accounts/src/common/entity-protocol.ts +0 -7
- package/templates/accounts/src/common/index.ts +0 -1
- package/templates/accounts/src/node/authentication/authentication-success-handler.ts +0 -69
- package/templates/accounts/src/node/authentication/index.ts +0 -1
- package/templates/accounts/src/node/entity/base-entity.ts +0 -13
- package/templates/accounts/src/node/entity/connection.ts +0 -52
- package/templates/accounts/src/node/entity/index.ts +0 -1
- package/templates/accounts/src/node/entity/user.ts +0 -73
- package/templates/accounts/src/node/error/error.ts +0 -14
- package/templates/accounts/src/node/error/index.ts +0 -1
- package/templates/accounts/src/node/index.ts +0 -2
- package/templates/accounts/src/node/module.ts +0 -9
- package/templates/accounts/src/node/user/index.ts +0 -4
- package/templates/accounts/src/node/user/user-protocol.ts +0 -19
- package/templates/accounts/src/node/user/user-repository.ts +0 -72
- package/templates/accounts/src/node/user/user-service.ts +0 -36
- package/templates/accounts/tsconfig.json +0 -32
- package/templates/admin-app/.github/workflows/deploy.yml +0 -25
- package/templates/admin-app/.vscode/launch.json +0 -23
- package/templates/admin-app/README.md +0 -92
- package/templates/admin-app/cell-database.yml +0 -7
- package/templates/admin-app/cell.yml +0 -93
- package/templates/admin-app/package.json +0 -37
- package/templates/admin-app/src/browser/user.view.tsx +0 -40
- package/templates/admin-app/src/common/index.ts +0 -1
- package/templates/admin-app/src/common/user-protocol.ts +0 -23
- package/templates/admin-app/src/node/entity/index.ts +0 -1
- package/templates/admin-app/src/node/entity/user.ts +0 -15
- package/templates/admin-app/src/node/module.ts +0 -8
- package/templates/admin-app/src/node/user-service.ts +0 -41
- package/templates/admin-app/tsconfig.json +0 -32
- package/templates/backend-app/.github/workflows/deploy.yml +0 -25
- package/templates/backend-app/.vscode/launch.json +0 -23
- package/templates/backend-app/README.md +0 -92
- package/templates/backend-app/cell.yml +0 -0
- package/templates/backend-app/package.json +0 -33
- package/templates/backend-app/src/home-controller.ts +0 -11
- package/templates/backend-app/src/module.ts +0 -4
- package/templates/backend-app/src/user-controller.ts +0 -48
- package/templates/backend-app/test/home-controller.spec.ts +0 -19
- package/templates/backend-app/tsconfig.json +0 -32
- package/templates/cell-component/README.md +0 -27
- package/templates/cell-component/cell.yml +0 -0
- package/templates/cell-component/package.json +0 -29
- package/templates/cell-component/src/echo-service.ts +0 -16
- package/templates/cell-component/src/index.ts +0 -1
- package/templates/cell-component/src/package.spec.ts +0 -5
- package/templates/cell-component/tsconfig.json +0 -37
- package/templates/database-app/.github/workflows/deploy.yml +0 -25
- package/templates/database-app/.vscode/launch.json +0 -23
- package/templates/database-app/README.md +0 -92
- package/templates/database-app/cell.yml +0 -17
- package/templates/database-app/package.json +0 -31
- package/templates/database-app/src/entity/index.ts +0 -1
- package/templates/database-app/src/entity/user.ts +0 -13
- package/templates/database-app/src/home-controller.ts +0 -11
- package/templates/database-app/src/module.ts +0 -8
- package/templates/database-app/src/user-controller.ts +0 -43
- package/templates/database-app/tsconfig.json +0 -32
- package/templates/docker-app/.github/workflows/deploy.yml +0 -25
- package/templates/docker-app/.vscode/launch.json +0 -23
- package/templates/docker-app/Dockerfile +0 -27
- package/templates/docker-app/README.md +0 -93
- package/templates/docker-app/cell.yml +0 -0
- package/templates/docker-app/package.json +0 -31
- package/templates/docker-app/src/browser/assets/logo.png +0 -0
- package/templates/docker-app/src/browser/css-shims.d.ts +0 -30
- package/templates/docker-app/src/browser/hello.view.tsx +0 -31
- package/templates/docker-app/src/browser/module.ts +0 -3
- package/templates/docker-app/src/browser/style/hello.module.scss +0 -4
- package/templates/docker-app/src/common/welcome-protocol.ts +0 -5
- package/templates/docker-app/src/node/module.ts +0 -3
- package/templates/docker-app/src/node/welcome-server.ts +0 -9
- package/templates/docker-app/tsconfig.json +0 -33
- package/templates/file-service/.github/workflows/deploy.yml +0 -25
- package/templates/file-service/.vscode/launch.json +0 -23
- package/templates/file-service/README.md +0 -92
- package/templates/file-service/cell.yml +0 -12
- package/templates/file-service/package.json +0 -34
- package/templates/file-service/src/file-controller.ts +0 -47
- package/templates/file-service/tsconfig.json +0 -32
- package/templates/jwt-app/.github/workflows/deploy.yml +0 -25
- package/templates/jwt-app/.vscode/launch.json +0 -23
- package/templates/jwt-app/README.md +0 -92
- package/templates/jwt-app/cell.yml +0 -4
- package/templates/jwt-app/package.json +0 -36
- package/templates/jwt-app/src/context.ts +0 -16
- package/templates/jwt-app/src/error-handler.ts +0 -30
- package/templates/jwt-app/src/error.ts +0 -4
- package/templates/jwt-app/src/home-controller.ts +0 -23
- package/templates/jwt-app/src/index.ts +0 -5
- package/templates/jwt-app/src/jwt-middleware.ts +0 -36
- package/templates/jwt-app/src/module.ts +0 -3
- package/templates/jwt-app/test/home-controller.spec.ts +0 -19
- package/templates/jwt-app/tsconfig.json +0 -32
- package/templates/koa-app/app.js +0 -8
- package/templates/koa-app/package.json +0 -9
- package/templates/microservice/.github/workflows/deploy.yml +0 -28
- package/templates/microservice/.vscode/launch.json +0 -24
- package/templates/microservice/README.md +0 -92
- package/templates/microservice/examples/backend-app/README.md +0 -92
- package/templates/microservice/examples/backend-app/cell-remote.yml +0 -4
- package/templates/microservice/examples/backend-app/cell.yml +0 -3
- package/templates/microservice/examples/backend-app/package.json +0 -32
- package/templates/microservice/examples/backend-app/src/api-controller.ts +0 -31
- package/templates/microservice/examples/backend-app/src/module.ts +0 -3
- package/templates/microservice/examples/backend-app/tsconfig.json +0 -32
- package/templates/microservice/package.json +0 -20
- package/templates/microservice/packages/api/README.md +0 -92
- package/templates/microservice/packages/api/cell.yml +0 -0
- package/templates/microservice/packages/api/package.json +0 -25
- package/templates/microservice/packages/api/src/common/api-protocol.ts +0 -10
- package/templates/microservice/packages/api/src/common/index.ts +0 -1
- package/templates/microservice/packages/api/tsconfig.json +0 -30
- package/templates/microservice/packages/serviceA/.vscode/launch.json +0 -23
- package/templates/microservice/packages/serviceA/README.md +0 -92
- package/templates/microservice/packages/serviceA/cell.yml +0 -6
- package/templates/microservice/packages/serviceA/package.json +0 -29
- package/templates/microservice/packages/serviceA/src/node/module.ts +0 -3
- package/templates/microservice/packages/serviceA/src/node/service-a.ts +0 -9
- package/templates/microservice/packages/serviceA/tsconfig.json +0 -30
- package/templates/microservice/packages/serviceB/README.md +0 -92
- package/templates/microservice/packages/serviceB/cell.yml +0 -5
- package/templates/microservice/packages/serviceB/package.json +0 -29
- package/templates/microservice/packages/serviceB/src/node/module.ts +0 -3
- package/templates/microservice/packages/serviceB/src/node/service-b.ts +0 -9
- package/templates/microservice/packages/serviceB/tsconfig.json +0 -30
- package/templates/microservice/tsconfig.json +0 -32
- package/templates/mycli/.vscode/launch.json +0 -33
- package/templates/mycli/bin/mycli +0 -2
- package/templates/mycli/bin/mycli-deploy +0 -2
- package/templates/mycli/bin/mycli-init +0 -2
- package/templates/mycli/package.json +0 -33
- package/templates/mycli/src/bootstrap.ts +0 -7
- package/templates/mycli/src/constants.ts +0 -1
- package/templates/mycli/src/deploy/deploy-manager.ts +0 -12
- package/templates/mycli/src/deploy/deploy.ts +0 -16
- package/templates/mycli/src/deploy/index.ts +0 -1
- package/templates/mycli/src/index.ts +0 -2
- package/templates/mycli/src/init/index.ts +0 -1
- package/templates/mycli/src/init/init-manager.ts +0 -85
- package/templates/mycli/src/init/init.ts +0 -25
- package/templates/mycli/src/init/templates.ts +0 -3
- package/templates/mycli/src/module.ts +0 -3
- package/templates/mycli/src/mycli.ts +0 -13
- package/templates/mycli/templates/application-template/README.md +0 -0
- package/templates/mycli/tsconfig.json +0 -32
- package/templates/nest-app/.eslintrc.js +0 -25
- package/templates/nest-app/.prettierrc +0 -4
- package/templates/nest-app/README.md +0 -73
- package/templates/nest-app/nest-cli.json +0 -8
- package/templates/nest-app/package.json +0 -69
- package/templates/nest-app/src/app.controller.spec.ts +0 -22
- package/templates/nest-app/src/app.controller.ts +0 -12
- package/templates/nest-app/src/app.module.ts +0 -10
- package/templates/nest-app/src/app.service.ts +0 -8
- package/templates/nest-app/src/main.ts +0 -8
- package/templates/nest-app/test/app.e2e-spec.ts +0 -24
- package/templates/nest-app/test/jest-e2e.json +0 -9
- package/templates/nest-app/tsconfig.build.json +0 -12
- package/templates/nest-app/tsconfig.json +0 -25
- package/templates/nextjs-app/.eslintrc.json +0 -3
- package/templates/nextjs-app/README.md +0 -34
- package/templates/nextjs-app/next.config.js +0 -6
- package/templates/nextjs-app/package.json +0 -20
- package/templates/nextjs-app/pages/_app.js +0 -7
- package/templates/nextjs-app/pages/api/hello.js +0 -5
- package/templates/nextjs-app/pages/index.js +0 -69
- package/templates/nextjs-app/public/favicon.ico +0 -0
- package/templates/nextjs-app/public/vercel.svg +0 -4
- package/templates/nextjs-app/styles/Home.module.css +0 -116
- package/templates/nextjs-app/styles/globals.css +0 -16
- package/templates/sample-app/.github/workflows/deploy.yml +0 -25
- package/templates/sample-app/.vscode/launch.json +0 -23
- package/templates/sample-app/README.md +0 -92
- package/templates/sample-app/cell.yml +0 -0
- package/templates/sample-app/package.json +0 -31
- package/templates/sample-app/src/browser/assets/logo.png +0 -0
- package/templates/sample-app/src/browser/css-shims.d.ts +0 -30
- package/templates/sample-app/src/browser/hello.view.tsx +0 -31
- package/templates/sample-app/src/browser/module.ts +0 -3
- package/templates/sample-app/src/browser/style/hello.module.scss +0 -4
- package/templates/sample-app/src/common/welcome-protocol.ts +0 -5
- package/templates/sample-app/src/node/module.ts +0 -3
- package/templates/sample-app/src/node/welcome-server.ts +0 -9
- package/templates/sample-app/tsconfig.json +0 -32
- package/templates/schedule/.github/workflows/deploy.yml +0 -25
- package/templates/schedule/.vscode/launch.json +0 -23
- package/templates/schedule/README.md +0 -92
- package/templates/schedule/cell.yml +0 -1
- package/templates/schedule/package.json +0 -29
- package/templates/schedule/src/module.ts +0 -3
- package/templates/schedule/src/scheduler.ts +0 -10
- package/templates/schedule/tsconfig.json +0 -32
- package/templates/standalone-app/package.json +0 -17
- package/templates/standalone-app/src/app.service.ts +0 -10
- package/templates/standalone-app/src/main.ts +0 -14
- package/templates/standalone-app/src/module.ts +0 -3
- package/templates/standalone-app/tsconfig.json +0 -30
- package/templates/vue-app/.github/workflows/deploy.yml +0 -25
- package/templates/vue-app/.vscode/launch.json +0 -23
- package/templates/vue-app/README.md +0 -92
- package/templates/vue-app/cell.yml +0 -0
- package/templates/vue-app/package.json +0 -32
- package/templates/vue-app/src/browser/App.vue +0 -32
- package/templates/vue-app/src/browser/app.ts +0 -7
- package/templates/vue-app/src/browser/components/HelloWorld.vue +0 -42
- package/templates/vue-app/src/browser/declare.d.ts +0 -7
- package/templates/vue-app/src/browser/images/logo.png +0 -0
- package/templates/vue-app/src/browser/module.ts +0 -3
- package/templates/vue-app/src/browser/router.ts +0 -13
- package/templates/vue-app/src/browser/shims-vue.d.ts +0 -5
- package/templates/vue-app/src/browser/views/About.vue +0 -5
- package/templates/vue-app/src/browser/views/Root.vue +0 -37
- package/templates/vue-app/src/common/welcome-protocol.ts +0 -5
- package/templates/vue-app/src/node/module.ts +0 -3
- package/templates/vue-app/src/node/welcome-server.ts +0 -9
- package/templates/vue-app/tsconfig.json +0 -32
package/src/info/info.ts
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { CliContext } from '@celljs/cli-common/lib/context/context-protocol';
|
|
2
|
-
import { HookExecutor, HookStage } from '@celljs/cli-common/lib/hook/hook-executor';
|
|
3
|
-
import { LoggerUtil } from '@celljs/cli-common/lib/utils/logger-util';
|
|
4
|
-
|
|
5
|
-
export interface InfoOptions {}
|
|
6
|
-
|
|
7
|
-
export default async (ctx: CliContext, options: InfoOptions) => {
|
|
8
|
-
try {
|
|
9
|
-
ctx.options = options;
|
|
10
|
-
const hookExecutor = new HookExecutor();
|
|
11
|
-
await hookExecutor.executeInfoHooks(ctx, HookStage.before);
|
|
12
|
-
|
|
13
|
-
LoggerUtil.printStage(ctx);
|
|
14
|
-
LoggerUtil.printMode(ctx);
|
|
15
|
-
LoggerUtil.printTargets(ctx);
|
|
16
|
-
LoggerUtil.printComponents(ctx);
|
|
17
|
-
|
|
18
|
-
await hookExecutor.executeInfoHooks(ctx);
|
|
19
|
-
} catch (error) {
|
|
20
|
-
console.error(error);
|
|
21
|
-
process.exit(-1);
|
|
22
|
-
}
|
|
23
|
-
};
|
package/src/init/init-manager.ts
DELETED
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
import { resolve, basename, relative, join } from 'path';
|
|
2
|
-
import { existsSync, copy, readFile, writeJSON } from 'fs-extra';
|
|
3
|
-
import { templates } from './templates';
|
|
4
|
-
import { CliContext } from '@celljs/cli-common/lib/context/context-protocol';
|
|
5
|
-
import { getPackager, spawnProcess } from '@celljs/cli-common/lib/packager/utils';
|
|
6
|
-
import { HookExecutor } from '@celljs/cli-common/lib/hook/hook-executor';
|
|
7
|
-
import { CommandUtil } from '@celljs/cli-common/lib/utils/command-util';
|
|
8
|
-
import { prompts } from 'prompts';
|
|
9
|
-
import ora from 'ora';
|
|
10
|
-
const rimraf = require('rimraf');
|
|
11
|
-
const chalk = require('chalk');
|
|
12
|
-
import { ok } from 'assert';
|
|
13
|
-
import { RuntimeUtil } from '@celljs/cli-runtime';
|
|
14
|
-
const version = require('../../package.json').version;
|
|
15
|
-
|
|
16
|
-
const PLACEHOLD = '{{ templatePath }}';
|
|
17
|
-
|
|
18
|
-
const remoteTemplateRegex = /^(https?:|git@)/i;
|
|
19
|
-
|
|
20
|
-
export interface Template {
|
|
21
|
-
name: string;
|
|
22
|
-
location: string;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
export interface InitOptions {
|
|
26
|
-
template?: string;
|
|
27
|
-
packager?: 'pnpm' | 'yarn' | 'npm';
|
|
28
|
-
outputDir: string;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
export class InitManager {
|
|
32
|
-
|
|
33
|
-
protected source: any[];
|
|
34
|
-
protected templateName: string;
|
|
35
|
-
protected location: string;
|
|
36
|
-
protected cliContext: CliContext;
|
|
37
|
-
constructor(protected readonly opts: InitOptions) {
|
|
38
|
-
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
async output(): Promise<void> {
|
|
42
|
-
await this.selectTemplate();
|
|
43
|
-
await this.checkOutputDir();
|
|
44
|
-
await this.doOutput();
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
async render(): Promise<void> {
|
|
48
|
-
const packageJsonPath = resolve(this.outputDir, 'package.json');
|
|
49
|
-
if (existsSync(packageJsonPath)) {
|
|
50
|
-
let packageJsonStr = await readFile(packageJsonPath, { encoding: 'utf8' });
|
|
51
|
-
packageJsonStr = packageJsonStr.replace(/{{\s*version\s*}}/g, version);
|
|
52
|
-
const packageJson = JSON.parse(packageJsonStr);
|
|
53
|
-
packageJson.name = basename(this.outputDir);
|
|
54
|
-
await writeJSON(packageJsonPath, packageJson, { encoding: 'utf8', spaces: 2 });
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
async install(): Promise<void> {
|
|
59
|
-
const pkg = CommandUtil.getPkg(undefined, this.outputDir);
|
|
60
|
-
const packager = this.opts.packager || pkg.rootComponentPackage.cellComponent?.packager;
|
|
61
|
-
|
|
62
|
-
await getPackager(packager, this.outputDir).install({}, this.outputDir);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
async executeHooks(): Promise<void> {
|
|
66
|
-
const outputDir = this.outputDir;
|
|
67
|
-
const initContext = await this.getCliContext();
|
|
68
|
-
await new HookExecutor().executeHooks(initContext, 'initHooks');
|
|
69
|
-
console.log(chalk`{bold.green Success!} Initialized "${ this.templateName }" example in {bold.blue ${outputDir}}.`);
|
|
70
|
-
process.exit(0);
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
protected async getCliContext(): Promise<CliContext> {
|
|
74
|
-
if (!this.cliContext) {
|
|
75
|
-
this.cliContext = await RuntimeUtil.initRuntimeAndLoadContext(this.outputDir);
|
|
76
|
-
this.cliContext.location = this.realLocation;
|
|
77
|
-
this.cliContext.outputDir = this.outputDir;
|
|
78
|
-
}
|
|
79
|
-
return this.cliContext;
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
protected get outputDir(): string {
|
|
83
|
-
return resolve(process.cwd(), this.opts.outputDir ? this.opts.outputDir : this.location.split('/').pop()!.replace('.git', ''));
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
protected async checkOutputDir(): Promise<void> {
|
|
87
|
-
if (existsSync(this.outputDir)) {
|
|
88
|
-
// eslint-disable-next-line @typescript-eslint/await-thenable
|
|
89
|
-
await prompts.confirm({
|
|
90
|
-
name: 'remove',
|
|
91
|
-
type: 'confirm',
|
|
92
|
-
message: `App already exists, remove the app (dir: ${join(relative(process.cwd(), this.outputDir))})`,
|
|
93
|
-
onState: ({ value }) => {
|
|
94
|
-
if (value === true) {
|
|
95
|
-
rimraf.sync(this.outputDir);
|
|
96
|
-
} else {
|
|
97
|
-
process.exit(0);
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
protected toOfficialTemplate(name: string, location: string): any {
|
|
105
|
-
return { title: `${name} ${chalk.italic.gray('Official')}`, value: { location, name} };
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
protected toThirdPartyTemplate(item: any): any {
|
|
109
|
-
return { title: `${item.name} ${chalk.italic.gray(item.stargazers_count + '⭑')}`, value: { location: item.clone_url, name: item.name }};
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
protected async selectTemplate(): Promise<void> {
|
|
113
|
-
const { template } = this.opts;
|
|
114
|
-
if (template) {
|
|
115
|
-
this.templateName = template;
|
|
116
|
-
if (remoteTemplateRegex.test(template)) {
|
|
117
|
-
this.location = template;
|
|
118
|
-
} else {
|
|
119
|
-
Object.keys(templates).forEach(key => {
|
|
120
|
-
if (key === template) {
|
|
121
|
-
this.location = templates[key];
|
|
122
|
-
}
|
|
123
|
-
});
|
|
124
|
-
ok(this.location, `"${template}" template not found`);
|
|
125
|
-
}
|
|
126
|
-
return;
|
|
127
|
-
}
|
|
128
|
-
const spinner = ora({ text: 'loading...', discardStdin: false }).start();
|
|
129
|
-
const officialTemplates = Object.keys(templates).map(key => this.toOfficialTemplate(key, templates[key]));
|
|
130
|
-
const choices = officialTemplates;
|
|
131
|
-
spinner.stop();
|
|
132
|
-
const answer = await prompts.autocomplete({
|
|
133
|
-
type: 'autocomplete',
|
|
134
|
-
name: 'template',
|
|
135
|
-
limit: 12,
|
|
136
|
-
message: 'Select a template to init',
|
|
137
|
-
choices,
|
|
138
|
-
suggest: async input => choices.filter(item => !input || item.title.toLowerCase().includes(input.toLowerCase()))
|
|
139
|
-
});
|
|
140
|
-
this.templateName = answer.name;
|
|
141
|
-
this.location = answer.location;
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
protected get realLocation() {
|
|
145
|
-
return this.location.replace(PLACEHOLD, resolve(__dirname, '..', '..', 'templates'));
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
protected async doOutput(): Promise<void> {
|
|
149
|
-
if (remoteTemplateRegex.test(this.location)) {
|
|
150
|
-
await this.outputRemoteTempate();
|
|
151
|
-
} else {
|
|
152
|
-
await this.outputLocalTemplate();
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
protected async outputLocalTemplate(): Promise<void> {
|
|
156
|
-
await copy(this.realLocation, this.outputDir);
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
protected outputRemoteTempate(): Promise<any> {
|
|
160
|
-
const dir = this.opts.outputDir ? [ this.opts.outputDir ] : [];
|
|
161
|
-
return spawnProcess('git', [ 'clone', '--depth=1', this.location, ...dir ], { stdio: 'inherit', shell: true });
|
|
162
|
-
}
|
|
163
|
-
}
|
package/src/init/init.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { InitManager, InitOptions } from './init-manager';
|
|
2
|
-
|
|
3
|
-
export default async (options: InitOptions) => {
|
|
4
|
-
try {
|
|
5
|
-
const initManager = new InitManager(options);
|
|
6
|
-
await initManager.output();
|
|
7
|
-
await initManager.render();
|
|
8
|
-
await initManager.install();
|
|
9
|
-
await initManager.executeHooks();
|
|
10
|
-
} catch (error) {
|
|
11
|
-
console.error(error);
|
|
12
|
-
process.exit(-1);
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
};
|
package/src/init/templates.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
export const templates: any = {
|
|
2
|
-
'backend-app': '{{ templatePath }}/backend-app',
|
|
3
|
-
'sample-app': '{{ templatePath }}/sample-app',
|
|
4
|
-
'cell-component': '{{ templatePath }}/cell-component',
|
|
5
|
-
'docker-app': '{{ templatePath }}/docker-app',
|
|
6
|
-
'nest-app': '{{ templatePath }}/nest-app',
|
|
7
|
-
'nextjs-app': '{{ templatePath }}/nextjs-app',
|
|
8
|
-
'koa-app': '{{ templatePath }}/koa-app',
|
|
9
|
-
'vue-app': '{{ templatePath }}/vue-app',
|
|
10
|
-
'database-app': '{{ templatePath }}/database-app',
|
|
11
|
-
'jwt-app': '{{ templatePath }}/jwt-app',
|
|
12
|
-
'accounts': '{{ templatePath }}/accounts',
|
|
13
|
-
'schedule': '{{ templatePath }}/schedule',
|
|
14
|
-
'admin-app': '{{ templatePath }}/admin-app',
|
|
15
|
-
'microservice': '{{ templatePath }}/microservice',
|
|
16
|
-
'standalone-app': '{{ templatePath }}/standalone-app',
|
|
17
|
-
'file-service': '{{ templatePath }}/file-service',
|
|
18
|
-
'mycli': '{{ templatePath }}/mycli'
|
|
19
|
-
};
|
package/src/package.spec.ts
DELETED
package/src/props/props.ts
DELETED
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { CliContext } from '@celljs/cli-common/lib/context/context-protocol';
|
|
2
|
-
import { ConfigUtil } from '@celljs/cli-common/lib/utils/config-util';
|
|
3
|
-
import { dump } from 'js-yaml';
|
|
4
|
-
import traverse from 'traverse';
|
|
5
|
-
const chalk = require('chalk');
|
|
6
|
-
|
|
7
|
-
export interface PropsOptions {
|
|
8
|
-
backend?: boolean;
|
|
9
|
-
frontend?: boolean;
|
|
10
|
-
name?: string;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export default async (ctx: CliContext, options: PropsOptions) => {
|
|
14
|
-
try {
|
|
15
|
-
ctx.options = options;
|
|
16
|
-
let backendProps: any;
|
|
17
|
-
let frontendProps: any;
|
|
18
|
-
|
|
19
|
-
if (options.frontend) {
|
|
20
|
-
frontendProps = ConfigUtil.getFrontendConfig(ctx.cfg);
|
|
21
|
-
} else if (options.backend) {
|
|
22
|
-
backendProps = ConfigUtil.getBackendConfig(ctx.cfg);
|
|
23
|
-
} else {
|
|
24
|
-
frontendProps = ConfigUtil.getFrontendConfig(ctx.cfg);
|
|
25
|
-
backendProps = ConfigUtil.getBackendConfig(ctx.cfg);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
if (frontendProps) {
|
|
29
|
-
console.log(chalk`{bold.magenta - Frontend: }`);
|
|
30
|
-
if (options.name) {
|
|
31
|
-
console.log(`${options.name}: ${traverse(frontendProps).get(options.name.split('.'))}`);
|
|
32
|
-
} else {
|
|
33
|
-
console.log(dump(ConfigUtil.getFrontendConfig(ctx.cfg), { skipInvalid: true }));
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
if (backendProps) {
|
|
37
|
-
console.log(chalk`{bold.magenta - Backend: }`);
|
|
38
|
-
if (options.name) {
|
|
39
|
-
console.log(`${options.name}: ${traverse(backendProps).get(options.name.split('.'))}`);
|
|
40
|
-
} else {
|
|
41
|
-
console.log(dump(ConfigUtil.getBackendConfig(ctx.cfg), { skipInvalid: true }));
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
} catch (error) {
|
|
45
|
-
console.error(error);
|
|
46
|
-
process.exit(-1);
|
|
47
|
-
}
|
|
48
|
-
};
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { LoggerUtil } from '@celljs/cli-common/lib/utils/logger-util';
|
|
2
|
-
import { CommandUtil, CommandType, CommandStage } from '@celljs/cli-common/lib/utils/command-util';
|
|
3
|
-
import { CliContext } from '@celljs/cli-common/lib/context/context-protocol';
|
|
4
|
-
import { HookExecutor, HookStage } from '@celljs/cli-common/lib/hook/hook-executor';
|
|
5
|
-
import { ConfigUtil } from '@celljs/cli-common/lib/utils';
|
|
6
|
-
|
|
7
|
-
export class ServeManager {
|
|
8
|
-
|
|
9
|
-
constructor(
|
|
10
|
-
protected readonly context: CliContext) {
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
protected log() {
|
|
14
|
-
LoggerUtil.printStage(this.context);
|
|
15
|
-
LoggerUtil.printMode(this.context);
|
|
16
|
-
LoggerUtil.printTargets(this.context);
|
|
17
|
-
LoggerUtil.printComponents(this.context);
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
async start() {
|
|
21
|
-
|
|
22
|
-
this.log();
|
|
23
|
-
|
|
24
|
-
const commandRender = async (command: string, target: string) => {
|
|
25
|
-
const { cfg, port } = this.context;
|
|
26
|
-
const realPort = ConfigUtil.getPort(cfg, target, port);
|
|
27
|
-
return command
|
|
28
|
-
.replace(/\$PATH/g, ConfigUtil.getCellConfig(cfg, target).server?.path)
|
|
29
|
-
.replace(/\$PORT/g, realPort);
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
const hookExecutor = new HookExecutor();
|
|
33
|
-
await CommandUtil.executeCommand(this.context, CommandType.CompileCommand, CommandStage.before);
|
|
34
|
-
await hookExecutor.executeCompileHooks(this.context, HookStage.before);
|
|
35
|
-
|
|
36
|
-
await CommandUtil.executeCommand(this.context, CommandType.CompileCommand);
|
|
37
|
-
await hookExecutor.executeCompileHooks(this.context);
|
|
38
|
-
|
|
39
|
-
await CommandUtil.executeCommand(this.context, CommandType.ServeCommand, CommandStage.before, commandRender);
|
|
40
|
-
await hookExecutor.executeServeHooks(this.context, HookStage.before);
|
|
41
|
-
|
|
42
|
-
await CommandUtil.executeCommand(this.context, CommandType.ServeCommand, CommandStage.on, commandRender);
|
|
43
|
-
await hookExecutor.executeServeHooks(this.context);
|
|
44
|
-
|
|
45
|
-
await hookExecutor.executeCompileHooks(this.context, HookStage.after);
|
|
46
|
-
await CommandUtil.executeCommand(this.context, CommandType.CompileCommand, CommandStage.after);
|
|
47
|
-
|
|
48
|
-
await hookExecutor.executeServeHooks(this.context, HookStage.after);
|
|
49
|
-
await CommandUtil.executeCommand(this.context, CommandType.ServeCommand, CommandStage.after, commandRender);
|
|
50
|
-
}
|
|
51
|
-
}
|
package/src/serve/serve.ts
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
import { ServeManager } from './serve-manager';
|
|
3
|
-
import { CliContext, ContextUtils } from '@celljs/cli-common/lib/context/context-protocol';
|
|
4
|
-
|
|
5
|
-
export interface ServeOptions {
|
|
6
|
-
port?: string;
|
|
7
|
-
command?: string;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export default async (ctx: CliContext, options: ServeOptions) => {
|
|
11
|
-
try {
|
|
12
|
-
process.argv = [process.argv[0], process.argv[1]];
|
|
13
|
-
if (options.command) {
|
|
14
|
-
// Replace process.argv with custom command arguments, keeping original first two items
|
|
15
|
-
const args = options.command.split(' ').filter(Boolean);
|
|
16
|
-
if (args[0] === '@') {
|
|
17
|
-
args.shift();
|
|
18
|
-
}
|
|
19
|
-
process.argv = process.argv.concat(args);
|
|
20
|
-
}
|
|
21
|
-
ctx.options = options;
|
|
22
|
-
ctx = ContextUtils.mergeContext(ctx, { dev: true, ...options });
|
|
23
|
-
await new ServeManager(ctx).start();
|
|
24
|
-
} catch (error) {
|
|
25
|
-
console.error(error);
|
|
26
|
-
process.exit(-1);
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
};
|
package/src/update/update.ts
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { getPackager } from '@celljs/cli-common/lib/packager/utils';
|
|
2
|
-
import { CliContext } from '@celljs/cli-common/lib/context/context-protocol';
|
|
3
|
-
import { join } from 'path';
|
|
4
|
-
import { readJSON, existsSync, writeJSON } from 'fs-extra';
|
|
5
|
-
const updateNotifier = require('update-notifier');
|
|
6
|
-
const pkg = require('../../package.json');
|
|
7
|
-
const semver = require('semver');
|
|
8
|
-
|
|
9
|
-
export interface UpdateOptions {
|
|
10
|
-
version?: string;
|
|
11
|
-
distTag?: string;
|
|
12
|
-
skipIntallingComponent?: boolean;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
async function updatePackage(version: string, skipIntallingComponent?: boolean) {
|
|
16
|
-
const packagePath = join(process.cwd(), 'package.json');
|
|
17
|
-
if (existsSync(packagePath)) {
|
|
18
|
-
const projectPkg = await readJSON(packagePath);
|
|
19
|
-
const dependencies = projectPkg.dependencies ?? {};
|
|
20
|
-
const devDependencies = projectPkg.devDependencies ?? {};
|
|
21
|
-
for (const name of Object.keys(dependencies)) {
|
|
22
|
-
if (name.startsWith('@celljs/')) {
|
|
23
|
-
dependencies[name] = version;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
for (const name of Object.keys(devDependencies)) {
|
|
28
|
-
if (name.startsWith('@celljs/')) {
|
|
29
|
-
devDependencies[name] = version;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
await writeJSON(packagePath, projectPkg, { spaces: 2 });
|
|
33
|
-
if (skipIntallingComponent) {
|
|
34
|
-
await getPackager().install();
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
export default async (ctx: CliContext, options: UpdateOptions) => {
|
|
40
|
-
try {
|
|
41
|
-
ctx.options = options;
|
|
42
|
-
const version = options.version;
|
|
43
|
-
if (version) {
|
|
44
|
-
if (version !== pkg.version) {
|
|
45
|
-
await updatePackage(version, options.skipIntallingComponent);
|
|
46
|
-
await getPackager('npm').add([`${pkg.name}@${version}`], { global: true });
|
|
47
|
-
}
|
|
48
|
-
} else {
|
|
49
|
-
const notifier = updateNotifier({ pkg, distTag: options.distTag });
|
|
50
|
-
const { latest, current } = await notifier.fetchInfo();
|
|
51
|
-
if (semver.gt(latest, current)) {
|
|
52
|
-
await updatePackage(latest, options.skipIntallingComponent);
|
|
53
|
-
await getPackager('npm').add([`${pkg.name}@${latest}`], { global: true });
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
} catch (error) {
|
|
57
|
-
console.error(error);
|
|
58
|
-
process.exit(-1);
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
};
|
package/src/utils/banner-util.ts
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { Runtimes } from '@celljs/cli-runtime/lib/runtime-protocol';
|
|
2
|
-
import { Framework } from '@celljs/frameworks/lib/detector/detector-protocol';
|
|
3
|
-
import { Settings } from '@celljs/cli-common/lib/settings/settings-protocol';
|
|
4
|
-
|
|
5
|
-
const chalk = require('chalk');
|
|
6
|
-
|
|
7
|
-
export namespace BannerUtil {
|
|
8
|
-
export function print(version: string, settings: Settings, runtime?: string, framework?: Framework) {
|
|
9
|
-
let runtimeStrLine = '';
|
|
10
|
-
let runtimeStr = '';
|
|
11
|
-
if (runtime && runtime !== Runtimes.empty) {
|
|
12
|
-
runtimeStr = runtime;
|
|
13
|
-
if (framework) {
|
|
14
|
-
runtimeStr = runtime === Runtimes.default ? framework.name : `${runtime}.${framework.name}`;
|
|
15
|
-
}
|
|
16
|
-
runtimeStr = `Runtime<${runtimeStr}>`;
|
|
17
|
-
runtimeStrLine = '\n│';
|
|
18
|
-
runtimeStrLine += chalk.yellow.bold(runtimeStr.padStart(20 + Math.floor(runtimeStr.length / 2)).padEnd(40)) + '│';
|
|
19
|
-
}
|
|
20
|
-
const banner = process.env.CELL_BANNER || settings.banner;
|
|
21
|
-
if (banner) {
|
|
22
|
-
console.log(banner.replace('{ version }', version).replace('{ runtime }', runtimeStr));
|
|
23
|
-
} else {
|
|
24
|
-
const versionStr = `@celljs/cli@${version}`;
|
|
25
|
-
const versionStrLine = `\n│${chalk.yellow.bold(versionStr.padStart(20 + Math.floor(versionStr.length / 2)).padEnd(40))}│`;
|
|
26
|
-
console.log(`
|
|
27
|
-
____ ___ ___
|
|
28
|
-
/\\ _\`\\ /\\_ \\ /\\_ \\
|
|
29
|
-
\\ \\ \\/\\_\\ __\\//\\ \\ \\//\\ \\
|
|
30
|
-
\\ \\ \\/_/_ /'__\`\\\\ \\ \\ \\ \\ \\
|
|
31
|
-
\\ \\ \\L\\ \\/\\ __/ \\_\\ \\_ \\_\\ \\_
|
|
32
|
-
\\ \\____/\\ \\____\\/\\____\\/\\____\\
|
|
33
|
-
\\/___/ \\/____/\\/____/\\/____/
|
|
34
|
-
|
|
35
|
-
╭────────────────────────────────────────╮
|
|
36
|
-
│ Cell Development Framework │${versionStrLine}${runtimeStrLine}
|
|
37
|
-
╰────────────────────────────────────────╯
|
|
38
|
-
`);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
}
|
package/src/utils/index.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './banner-util';
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
# 开发说明
|
|
2
|
-
|
|
3
|
-
## 安装依赖
|
|
4
|
-
|
|
5
|
-
以下使用 yarn 工具来说明,你也可以使用 npm。
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
# 通过 cell init 初始化应用的时候已经自动安装了依赖,所以你只需要安装你额外需要的依赖即可
|
|
9
|
-
|
|
10
|
-
$ yarn add xxxx
|
|
11
|
-
```
|
|
12
|
-
|
|
13
|
-
## 本地运行
|
|
14
|
-
|
|
15
|
-
```shell
|
|
16
|
-
# 启动本地服务,端口默认 3000
|
|
17
|
-
# 在终端中会输出本地服务的 URL 链接
|
|
18
|
-
|
|
19
|
-
$ yarn start # 或者执行 cell serve 命令
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
## 构建部署
|
|
23
|
-
|
|
24
|
-
模板默认提供了四套隔离环境:本地(local)、测试(test)、预发(pre)、线上(prod)。每个环境对应着一个 cell 配置文件(可选),类似 cell-test.yml。而 cell.yml 文件一般用于放所有环境的公共配置。第一次部署的时候可能会提示你填写相关云厂商 ak 信息。如果是 Vercel 云平台的模板,会提示你需要登录到 Vercel 平台。你也可以在项目通过 .env 提供云厂商的 ak 信息。
|
|
25
|
-
|
|
26
|
-
```bash
|
|
27
|
-
|
|
28
|
-
$ cell deploy -m scf # 部署到腾讯云函数测试环境
|
|
29
|
-
$ cell deploy -m scf -m test # 部署到腾讯云测试环境
|
|
30
|
-
$ cell deploy -m scf -m pre # 部署到腾讯云预发环境
|
|
31
|
-
$ cell deploy -m scf -m prod # 部署到腾讯云线上环境
|
|
32
|
-
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
## 关于 Cell Framework
|
|
36
|
-
|
|
37
|
-
Cell 是基于 TypeScript 的 Serverless First、组件化、平台无关的渐进式应用框架。
|
|
38
|
-
|
|
39
|
-
## 特征
|
|
40
|
-
|
|
41
|
-
- 约定大于配置,零配置,开箱即用
|
|
42
|
-
- TypeScript 版 Spring Boot
|
|
43
|
-
- Serverless First
|
|
44
|
-
- 平台不锁定
|
|
45
|
-
- 支持前后端一体化,前端框架不锁定
|
|
46
|
-
- 支持微服务
|
|
47
|
-
- 组件化,渐进式
|
|
48
|
-
- 命令行工具插件化
|
|
49
|
-
- 依赖注入
|
|
50
|
-
- 面向切面编程(AOP)
|
|
51
|
-
- 集成了流行的 ORM 框架,使用装饰器声明式事务管理
|
|
52
|
-
- 支持 OIDC 认证
|
|
53
|
-
- 支持 OAuth2 授权
|
|
54
|
-
- 使用 rxjs 管理状态
|
|
55
|
-
- 提供 REST 和 RPC 两种接口风格
|
|
56
|
-
|
|
57
|
-
Cell 名字由来:在我的家乡,谐音“吗啦咕”是小石头的意思,小石头堆砌起来可以建成高楼大厦、道路桥梁,而 Cell 组件编排可以实现千变万化的应用。
|
|
58
|
-
|
|
59
|
-
## 快速开始
|
|
60
|
-
|
|
61
|
-
```bash
|
|
62
|
-
# 安装命令行工具
|
|
63
|
-
npm install -g @celljs/cli
|
|
64
|
-
|
|
65
|
-
# 初始化
|
|
66
|
-
cell init -o project-name
|
|
67
|
-
cd project-name # 进入项目根目录
|
|
68
|
-
|
|
69
|
-
# 运行
|
|
70
|
-
cell serve
|
|
71
|
-
|
|
72
|
-
# 部署
|
|
73
|
-
cell deploy
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
[](https://asciinema.org/a/474104?speed=2.5&autoplay=1)
|
|
77
|
-
|
|
78
|
-
### 文档
|
|
79
|
-
|
|
80
|
-
- [介绍](https://cell.cellbang.com/guide/%E4%BB%8B%E7%BB%8D)
|
|
81
|
-
- [创建第一个应用](https://cell.cellbang.com/guide/%E5%88%9B%E5%BB%BA%E7%AC%AC%E4%B8%80%E4%B8%AA%E5%BA%94%E7%94%A8)
|
|
82
|
-
- [命令行工具](https://cell.cellbang.com/guide/%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%B7%A5%E5%85%B7)
|
|
83
|
-
- [控制器](https://cell.cellbang.com/guide/%E6%8E%A7%E5%88%B6%E5%99%A8)
|
|
84
|
-
- [数据库操作](https://cell.cellbang.com/guide/%E6%95%B0%E6%8D%AE%E5%BA%93typeorm)
|
|
85
|
-
- [微服务](https://cell.cellbang.com/dev/%E5%BE%AE%E6%9C%8D%E5%8A%A1)
|
|
86
|
-
- [认证与授权](https://cell.cellbang.com/guide/%E8%AE%A4%E8%AF%81%E4%B8%8E%E6%8E%88%E6%9D%83)
|
|
87
|
-
- [云平台适配](https://cell.cellbang.com/cloud/%E4%BA%91%E5%B9%B3%E5%8F%B0%E9%80%82%E9%85%8D)
|
|
88
|
-
- [依赖注入](https://cell.cellbang.com/guide/%E4%BE%9D%E8%B5%96%E6%B3%A8%E5%85%A5)
|
|
89
|
-
- [组件设计](https://cell.cellbang.com/guide/%E7%BB%84%E4%BB%B6%E8%AE%BE%E8%AE%A1)
|
|
90
|
-
- [前端架构](https://cell.cellbang.com/guide/%E5%89%8D%E7%AB%AF%E6%9E%B6%E6%9E%84)
|
|
91
|
-
- [React 开发](https://cell.cellbang.com/dev/react)
|
|
92
|
-
- [前后端一体化开发](https://cell.cellbang.com/dev/%E5%89%8D%E5%90%8E%E7%AB%AF%E4%B8%80%E4%BD%93%E5%8C%96%E5%BC%80%E5%8F%91)
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
cell:
|
|
2
|
-
typeorm:
|
|
3
|
-
ormConfig:
|
|
4
|
-
- type: better-sqlite3
|
|
5
|
-
database: mydb.sql
|
|
6
|
-
synchronize: true
|
|
7
|
-
logging: true
|
|
8
|
-
# cell:
|
|
9
|
-
# typeorm:
|
|
10
|
-
# ormConfig:
|
|
11
|
-
# - type: mysql
|
|
12
|
-
# host: localhost
|
|
13
|
-
# port: 3306
|
|
14
|
-
# synchronize: true
|
|
15
|
-
# username: root
|
|
16
|
-
# password: root
|
|
17
|
-
# database: test
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
frontend:
|
|
2
|
-
cell:
|
|
3
|
-
locales:
|
|
4
|
-
zh-CN:
|
|
5
|
-
label: 简体中文
|
|
6
|
-
messages:
|
|
7
|
-
accounts.login.label: 登录
|
|
8
|
-
accounts.logout.label: 登出
|
|
9
|
-
accounts.logo.label: 细胞矩阵
|
|
10
|
-
accounts.quick.login.label: 请选择快捷登录方式
|
|
11
|
-
en-US:
|
|
12
|
-
label: English
|
|
13
|
-
messages:
|
|
14
|
-
accounts.login.label: Login
|
|
15
|
-
accounts.logout.label: Logout
|
|
16
|
-
accounts.logo.label: Cellbang
|
|
17
|
-
accounts.quick.login.label: Please select Quick Login
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
cell:
|
|
2
|
-
oauth2:
|
|
3
|
-
client:
|
|
4
|
-
registrations:
|
|
5
|
-
github: # 仅仅提供测试使用,确保应用启动的地址为 http://localhost:3000,正式环境,请替换为自己的
|
|
6
|
-
clientName: Github
|
|
7
|
-
clientId: ${ '78c92fa811a8177acb42' | onTarget('backend') }
|
|
8
|
-
clientSecret: ${ 'e02ed015711aec29ecebfc4668e0b4c755212ef0' | onTarget('backend') }
|
|
Binary file
|