motia 0.14.0-beta.165-285707 → 0.15.0-beta.165
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/cli.d.mts +2 -0
- package/dist/cli.mjs +128 -0
- package/dist/cli.mjs.map +1 -0
- package/dist/cloud/build/build-validation.mjs +46 -0
- package/dist/cloud/build/build-validation.mjs.map +1 -0
- package/dist/cloud/build/builder.mjs +86 -0
- package/dist/cloud/build/builder.mjs.map +1 -0
- package/dist/cloud/build/builders/archiver.mjs +64 -0
- package/dist/cloud/build/builders/archiver.mjs.map +1 -0
- package/dist/cloud/build/builders/include-static-files.mjs +25 -0
- package/dist/cloud/build/builders/include-static-files.mjs.map +1 -0
- package/dist/cloud/build/builders/node/index.mjs +110 -0
- package/dist/cloud/build/builders/node/index.mjs.map +1 -0
- package/dist/cloud/build/builders/python/index.mjs +111 -0
- package/dist/cloud/build/builders/python/index.mjs.map +1 -0
- package/dist/cloud/build/builders/python/python-data/constants.mjs +112 -0
- package/dist/cloud/build/builders/python/python-data/constants.mjs.map +1 -0
- package/dist/cloud/build/builders/python/python-data/convert-import-path.mjs +16 -0
- package/dist/cloud/build/builders/python/python-data/convert-import-path.mjs.map +1 -0
- package/dist/cloud/build/builders/python/python-data/extract-python-data.mjs +24 -0
- package/dist/cloud/build/builders/python/python-data/extract-python-data.mjs.map +1 -0
- package/dist/cloud/build/builders/python/python-data/get-dependencies-from-file.mjs +52 -0
- package/dist/cloud/build/builders/python/python-data/get-dependencies-from-file.mjs.map +1 -0
- package/dist/cloud/build/builders/python/python-data/python-errors.mjs +26 -0
- package/dist/cloud/build/builders/python/python-data/python-errors.mjs.map +1 -0
- package/dist/cloud/build/builders/python/python-data/read-requirements.mjs +26 -0
- package/dist/cloud/build/builders/python/python-data/read-requirements.mjs.map +1 -0
- package/dist/cloud/build/builders/python/python-data/resolve-dep-names.mjs +37 -0
- package/dist/cloud/build/builders/python/python-data/resolve-dep-names.mjs.map +1 -0
- package/dist/cloud/build/builders/python/python-data/traverse-tree.mjs +41 -0
- package/dist/cloud/build/builders/python/python-data/traverse-tree.mjs.map +1 -0
- package/dist/cloud/build/builders/python/uv-packager.mjs +65 -0
- package/dist/cloud/build/builders/python/uv-packager.mjs.map +1 -0
- package/dist/cloud/build/validations/api-endpoints.validator.mjs +32 -0
- package/dist/cloud/build/validations/api-endpoints.validator.mjs.map +1 -0
- package/dist/cloud/build/validations/constants.mjs +11 -0
- package/dist/cloud/build/validations/constants.mjs.map +1 -0
- package/dist/cloud/build/validations/cron-expressions.validator.mjs +26 -0
- package/dist/cloud/build/validations/cron-expressions.validator.mjs.map +1 -0
- package/dist/cloud/build/validations/duplicate-step-names.validator.mjs +22 -0
- package/dist/cloud/build/validations/duplicate-step-names.validator.mjs.map +1 -0
- package/dist/cloud/build/validations/infrastructure-configs.validator.mjs +27 -0
- package/dist/cloud/build/validations/infrastructure-configs.validator.mjs.map +1 -0
- package/dist/cloud/build/validations/router-bundle-sizes.validator.mjs +31 -0
- package/dist/cloud/build/validations/router-bundle-sizes.validator.mjs.map +1 -0
- package/dist/cloud/build/validations/step-bundle-sizes.validator.mjs +37 -0
- package/dist/cloud/build/validations/step-bundle-sizes.validator.mjs.map +1 -0
- package/dist/cloud/build/validations/step-name-lengths.validator.mjs +24 -0
- package/dist/cloud/build/validations/step-name-lengths.validator.mjs.map +1 -0
- package/dist/cloud/cli/build.mjs +16 -0
- package/dist/cloud/cli/build.mjs.map +1 -0
- package/dist/cloud/cli/deploy.mjs +48 -0
- package/dist/cloud/cli/deploy.mjs.map +1 -0
- package/dist/cloud/cli-output-manager.mjs +118 -0
- package/dist/cloud/cli-output-manager.mjs.map +1 -0
- package/dist/cloud/cli.mjs +8 -0
- package/dist/cloud/cli.mjs.map +1 -0
- package/dist/cloud/config-utils.mjs +53 -0
- package/dist/cloud/config-utils.mjs.map +1 -0
- package/dist/cloud/endpoints.mjs +95 -0
- package/dist/cloud/endpoints.mjs.map +1 -0
- package/dist/cloud/index.mjs +4 -0
- package/dist/cloud/new-deployment/build.mjs +47 -0
- package/dist/cloud/new-deployment/build.mjs.map +1 -0
- package/dist/cloud/new-deployment/cloud-api/create-deployment.mjs +13 -0
- package/dist/cloud/new-deployment/cloud-api/create-deployment.mjs.map +1 -0
- package/dist/cloud/new-deployment/cloud-api/endpoints.mjs +12 -0
- package/dist/cloud/new-deployment/cloud-api/endpoints.mjs.map +1 -0
- package/dist/cloud/new-deployment/cloud-api/index.mjs +14 -0
- package/dist/cloud/new-deployment/cloud-api/index.mjs.map +1 -0
- package/dist/cloud/new-deployment/cloud-api/start-deployment.mjs +11 -0
- package/dist/cloud/new-deployment/cloud-api/start-deployment.mjs.map +1 -0
- package/dist/cloud/new-deployment/cloud-api/upload.mjs +12 -0
- package/dist/cloud/new-deployment/cloud-api/upload.mjs.map +1 -0
- package/dist/cloud/new-deployment/constants.mjs +11 -0
- package/dist/cloud/new-deployment/constants.mjs.map +1 -0
- package/dist/cloud/new-deployment/deploy.mjs +42 -0
- package/dist/cloud/new-deployment/deploy.mjs.map +1 -0
- package/dist/cloud/new-deployment/listeners/build-printer.mjs +81 -0
- package/dist/cloud/new-deployment/listeners/build-printer.mjs.map +1 -0
- package/dist/cloud/new-deployment/listeners/cli-listener.mjs +93 -0
- package/dist/cloud/new-deployment/listeners/cli-listener.mjs.map +1 -0
- package/dist/cloud/new-deployment/listeners/print-deployment-status.mjs +89 -0
- package/dist/cloud/new-deployment/listeners/print-deployment-status.mjs.map +1 -0
- package/dist/cloud/new-deployment/listeners/printer.mjs +77 -0
- package/dist/cloud/new-deployment/listeners/printer.mjs.map +1 -0
- package/dist/cloud/new-deployment/listeners/streaming-deployment-listener.mjs +259 -0
- package/dist/cloud/new-deployment/listeners/streaming-deployment-listener.mjs.map +1 -0
- package/dist/cloud/new-deployment/streams/deployment-stream.mjs +100 -0
- package/dist/cloud/new-deployment/streams/deployment-stream.mjs.map +1 -0
- package/dist/cloud/new-deployment/upload-artifacts.mjs +24 -0
- package/dist/cloud/new-deployment/upload-artifacts.mjs.map +1 -0
- package/dist/cloud/new-deployment/utils/load-env-data.mjs +34 -0
- package/dist/cloud/new-deployment/utils/load-env-data.mjs.map +1 -0
- package/dist/cloud/new-deployment/utils/pretty-bytes.mjs +14 -0
- package/dist/cloud/new-deployment/utils/pretty-bytes.mjs.map +1 -0
- package/dist/cloud/new-deployment/utils/upload.mjs +39 -0
- package/dist/cloud/new-deployment/utils/upload.mjs.map +1 -0
- package/dist/constants.mjs +15 -0
- package/dist/constants.mjs.map +1 -0
- package/dist/create/index.mjs +177 -0
- package/dist/create/index.mjs.map +1 -0
- package/dist/create/interactive.mjs +67 -0
- package/dist/create/interactive.mjs.map +1 -0
- package/dist/create/pull-rules.mjs +26 -0
- package/dist/create/pull-rules.mjs.map +1 -0
- package/dist/create/setup-template.mjs +14 -0
- package/dist/create/setup-template.mjs.map +1 -0
- package/dist/create/templates/generate.mjs +115 -0
- package/dist/create/templates/generate.mjs.map +1 -0
- package/dist/create/templates/generate.ts +141 -0
- package/dist/create/templates/hello/motia.config.ts.txt +10 -0
- package/dist/create/templates/hello_js/motia.config.ts.txt +10 -0
- package/dist/create/templates/hello_python/motia.config.ts.txt +10 -0
- package/dist/create/templates/index.mjs +15 -0
- package/dist/create/templates/index.mjs.map +1 -0
- package/dist/create/templates/nodejs/motia.config.ts.txt +10 -0
- package/dist/create/templates/nodejs/steps/petstore/notification.step.ts.txt +35 -0
- package/dist/create/templates/python/motia.config.ts.txt +10 -0
- package/dist/create/utils.mjs +18 -0
- package/dist/create/utils.mjs.map +1 -0
- package/dist/create-step/getAnswers.mjs +142 -0
- package/dist/create-step/getAnswers.mjs.map +1 -0
- package/dist/create-step/index.mjs +39 -0
- package/dist/create-step/index.mjs.map +1 -0
- package/dist/create-step/teamplateUtils.mjs +50 -0
- package/dist/create-step/teamplateUtils.mjs.map +1 -0
- package/dist/create-step/templates/ui/overrides.mjs +28 -0
- package/dist/create-step/templates/ui/overrides.mjs.map +1 -0
- package/dist/create-step/templates/ui/overrides.ts +26 -0
- package/dist/create-step/types.mjs +23 -0
- package/dist/create-step/types.mjs.map +1 -0
- package/dist/create-step/utils.mjs +13 -0
- package/dist/create-step/utils.mjs.map +1 -0
- package/dist/dev-watchers.mjs +84 -0
- package/dist/dev-watchers.mjs.map +1 -0
- package/dist/dev.mjs +118 -0
- package/dist/dev.mjs.map +1 -0
- package/dist/docker/build.mjs +27 -0
- package/dist/docker/build.mjs.map +1 -0
- package/dist/docker/run.mjs +44 -0
- package/dist/docker/run.mjs.map +1 -0
- package/dist/docker/setup.mjs +86 -0
- package/dist/docker/setup.mjs.map +1 -0
- package/dist/docker/utils/build-docker-image.mjs +21 -0
- package/dist/docker/utils/build-docker-image.mjs.map +1 -0
- package/dist/docker/utils/print-intro.mjs +8 -0
- package/dist/docker/utils/print-intro.mjs.map +1 -0
- package/dist/docker/utils/promised-exec.mjs +26 -0
- package/dist/docker/utils/promised-exec.mjs.map +1 -0
- package/dist/generate-locked-data.d.mts +19 -0
- package/dist/generate-locked-data.d.mts.map +1 -0
- package/dist/generate-locked-data.mjs +128 -0
- package/dist/generate-locked-data.mjs.map +1 -0
- package/dist/generate-types.mjs +33 -0
- package/dist/generate-types.mjs.map +1 -0
- package/dist/index.d.mts +3 -0
- package/dist/index.mjs +5 -0
- package/dist/install.mjs +64 -0
- package/dist/install.mjs.map +1 -0
- package/dist/load-motia-config.mjs +22 -0
- package/dist/load-motia-config.mjs.map +1 -0
- package/dist/openapi/generate.mjs +69 -0
- package/dist/openapi/generate.mjs.map +1 -0
- package/dist/openapi/process-schema.mjs +31 -0
- package/dist/openapi/process-schema.mjs.map +1 -0
- package/dist/openapi/utils.mjs +10 -0
- package/dist/openapi/utils.mjs.map +1 -0
- package/dist/plugins/collect-plugin-steps.mjs +39 -0
- package/dist/plugins/collect-plugin-steps.mjs.map +1 -0
- package/dist/plugins/create-plugin-context.mjs +35 -0
- package/dist/plugins/create-plugin-context.mjs.map +1 -0
- package/dist/plugins/index.mjs +3 -0
- package/dist/plugins/install-plugin-dependencies.mjs +54 -0
- package/dist/plugins/install-plugin-dependencies.mjs.map +1 -0
- package/dist/plugins/load-config.mjs +30 -0
- package/dist/plugins/load-config.mjs.map +1 -0
- package/dist/plugins/plugin-dependencies.mjs +13 -0
- package/dist/plugins/plugin-dependencies.mjs.map +1 -0
- package/dist/plugins/process-plugins.mjs +22 -0
- package/dist/plugins/process-plugins.mjs.map +1 -0
- package/dist/plugins/process-steps.mjs +36 -0
- package/dist/plugins/process-steps.mjs.map +1 -0
- package/dist/redis-memory-manager.mjs +109 -0
- package/dist/redis-memory-manager.mjs.map +1 -0
- package/dist/start.mjs +76 -0
- package/dist/start.mjs.map +1 -0
- package/dist/utils/activate-python-env.mjs +39 -0
- package/dist/utils/activate-python-env.mjs.map +1 -0
- package/dist/utils/amplitude/enrichment-plugin.mjs +27 -0
- package/dist/utils/amplitude/enrichment-plugin.mjs.map +1 -0
- package/dist/utils/analytics.mjs +62 -0
- package/dist/utils/analytics.mjs.map +1 -0
- package/dist/utils/ensure-uv.mjs +65 -0
- package/dist/utils/ensure-uv.mjs.map +1 -0
- package/dist/utils/errors/build.error.mjs +20 -0
- package/dist/utils/errors/build.error.mjs.map +1 -0
- package/dist/utils/errors/compilation.error.mjs +13 -0
- package/dist/utils/errors/compilation.error.mjs.map +1 -0
- package/dist/utils/errors/locked-data-generation.error.mjs +13 -0
- package/dist/utils/errors/locked-data-generation.error.mjs.map +1 -0
- package/dist/utils/execute-command.mjs +24 -0
- package/dist/utils/execute-command.mjs.map +1 -0
- package/dist/utils/get-package-manager.mjs +13 -0
- package/dist/utils/get-package-manager.mjs.map +1 -0
- package/dist/utils/install-lambda-python-packages.mjs +30 -0
- package/dist/utils/install-lambda-python-packages.mjs.map +1 -0
- package/dist/utils/internal-logger.mjs +30 -0
- package/dist/utils/internal-logger.mjs.map +1 -0
- package/dist/utils/python-version-utils.mjs +47 -0
- package/dist/utils/python-version-utils.mjs.map +1 -0
- package/dist/version.mjs +13 -0
- package/dist/version.mjs.map +1 -0
- package/dist/watcher.mjs +140 -0
- package/dist/watcher.mjs.map +1 -0
- package/dist/workbench.d.mts +1 -0
- package/dist/workbench.mjs +3 -0
- package/package.json +25 -25
- package/dist/cjs/__tests__/openapi/generate.test.d.ts +0 -2
- package/dist/cjs/__tests__/openapi/generate.test.d.ts.map +0 -1
- package/dist/cjs/__tests__/openapi/generate.test.js +0 -287
- package/dist/cjs/__tests__/redis-memory-manager.test.d.ts +0 -2
- package/dist/cjs/__tests__/redis-memory-manager.test.d.ts.map +0 -1
- package/dist/cjs/__tests__/redis-memory-manager.test.js +0 -176
- package/dist/cjs/__tests__/test-helpers/redis-test-helper.d.ts +0 -52
- package/dist/cjs/__tests__/test-helpers/redis-test-helper.d.ts.map +0 -1
- package/dist/cjs/__tests__/test-helpers/redis-test-helper.example.test.d.ts +0 -2
- package/dist/cjs/__tests__/test-helpers/redis-test-helper.example.test.d.ts.map +0 -1
- package/dist/cjs/__tests__/test-helpers/redis-test-helper.example.test.js +0 -83
- package/dist/cjs/__tests__/test-helpers/redis-test-helper.js +0 -101
- package/dist/cjs/cli.d.ts +0 -3
- package/dist/cjs/cli.d.ts.map +0 -1
- package/dist/cjs/cli.js +0 -190
- package/dist/cjs/cloud/build/__tests__/infrastructure-serialization.test.d.ts +0 -2
- package/dist/cjs/cloud/build/__tests__/infrastructure-serialization.test.d.ts.map +0 -1
- package/dist/cjs/cloud/build/__tests__/infrastructure-serialization.test.js +0 -322
- package/dist/cjs/cloud/build/__tests__/infrastructure-validation.test.d.ts +0 -2
- package/dist/cjs/cloud/build/__tests__/infrastructure-validation.test.d.ts.map +0 -1
- package/dist/cjs/cloud/build/__tests__/infrastructure-validation.test.js +0 -571
- package/dist/cjs/cloud/build/build-validation.d.ts +0 -6
- package/dist/cjs/cloud/build/build-validation.d.ts.map +0 -1
- package/dist/cjs/cloud/build/build-validation.js +0 -44
- package/dist/cjs/cloud/build/builder.d.ts +0 -58
- package/dist/cjs/cloud/build/builder.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builder.js +0 -94
- package/dist/cjs/cloud/build/builders/archiver.d.ts +0 -16
- package/dist/cjs/cloud/build/builders/archiver.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/archiver.js +0 -77
- package/dist/cjs/cloud/build/builders/include-static-files.d.ts +0 -5
- package/dist/cjs/cloud/build/builders/include-static-files.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/include-static-files.js +0 -28
- package/dist/cjs/cloud/build/builders/node/index.d.ts +0 -12
- package/dist/cjs/cloud/build/builders/node/index.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/node/index.js +0 -141
- package/dist/cjs/cloud/build/builders/node/router-template.d.ts +0 -10
- package/dist/cjs/cloud/build/builders/node/router-template.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/node/router-template.js +0 -6
- package/dist/cjs/cloud/build/builders/python/index.d.ts +0 -16
- package/dist/cjs/cloud/build/builders/python/index.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/python/index.js +0 -129
- package/dist/cjs/cloud/build/builders/python/python-data/__tests__/convert-import-path.test.d.ts +0 -2
- package/dist/cjs/cloud/build/builders/python/python-data/__tests__/convert-import-path.test.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/python/python-data/__tests__/convert-import-path.test.js +0 -24
- package/dist/cjs/cloud/build/builders/python/python-data/__tests__/extract-python-data.test.d.ts +0 -2
- package/dist/cjs/cloud/build/builders/python/python-data/__tests__/extract-python-data.test.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/python/python-data/__tests__/extract-python-data.test.js +0 -41
- package/dist/cjs/cloud/build/builders/python/python-data/__tests__/get-dependencies-from-file.test.d.ts +0 -2
- package/dist/cjs/cloud/build/builders/python/python-data/__tests__/get-dependencies-from-file.test.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/python/python-data/__tests__/get-dependencies-from-file.test.js +0 -64
- package/dist/cjs/cloud/build/builders/python/python-data/__tests__/read-requirements.test.d.ts +0 -2
- package/dist/cjs/cloud/build/builders/python/python-data/__tests__/read-requirements.test.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/python/python-data/__tests__/read-requirements.test.js +0 -94
- package/dist/cjs/cloud/build/builders/python/python-data/__tests__/resolve-dep-name.test.d.ts +0 -2
- package/dist/cjs/cloud/build/builders/python/python-data/__tests__/resolve-dep-name.test.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/python/python-data/__tests__/resolve-dep-name.test.js +0 -38
- package/dist/cjs/cloud/build/builders/python/python-data/constants.d.ts +0 -2
- package/dist/cjs/cloud/build/builders/python/python-data/constants.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/python/python-data/constants.js +0 -110
- package/dist/cjs/cloud/build/builders/python/python-data/convert-import-path.d.ts +0 -2
- package/dist/cjs/cloud/build/builders/python/python-data/convert-import-path.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/python/python-data/convert-import-path.js +0 -24
- package/dist/cjs/cloud/build/builders/python/python-data/extract-python-data.d.ts +0 -8
- package/dist/cjs/cloud/build/builders/python/python-data/extract-python-data.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/python/python-data/extract-python-data.js +0 -24
- package/dist/cjs/cloud/build/builders/python/python-data/get-dependencies-from-file.d.ts +0 -7
- package/dist/cjs/cloud/build/builders/python/python-data/get-dependencies-from-file.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/python/python-data/get-dependencies-from-file.js +0 -72
- package/dist/cjs/cloud/build/builders/python/python-data/python-errors.d.ts +0 -14
- package/dist/cjs/cloud/build/builders/python/python-data/python-errors.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/python/python-data/python-errors.js +0 -28
- package/dist/cjs/cloud/build/builders/python/python-data/read-requirements.d.ts +0 -14
- package/dist/cjs/cloud/build/builders/python/python-data/read-requirements.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/python/python-data/read-requirements.js +0 -32
- package/dist/cjs/cloud/build/builders/python/python-data/resolve-dep-names.d.ts +0 -7
- package/dist/cjs/cloud/build/builders/python/python-data/resolve-dep-names.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/python/python-data/resolve-dep-names.js +0 -52
- package/dist/cjs/cloud/build/builders/python/python-data/traverse-tree.d.ts +0 -7
- package/dist/cjs/cloud/build/builders/python/python-data/traverse-tree.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/python/python-data/traverse-tree.js +0 -60
- package/dist/cjs/cloud/build/builders/python/uv-packager.d.ts +0 -13
- package/dist/cjs/cloud/build/builders/python/uv-packager.d.ts.map +0 -1
- package/dist/cjs/cloud/build/builders/python/uv-packager.js +0 -69
- package/dist/cjs/cloud/build/validations/__tests__/api-endpoints.validator.test.d.ts +0 -2
- package/dist/cjs/cloud/build/validations/__tests__/api-endpoints.validator.test.d.ts.map +0 -1
- package/dist/cjs/cloud/build/validations/__tests__/api-endpoints.validator.test.js +0 -71
- package/dist/cjs/cloud/build/validations/__tests__/build-validation.test.d.ts +0 -2
- package/dist/cjs/cloud/build/validations/__tests__/build-validation.test.d.ts.map +0 -1
- package/dist/cjs/cloud/build/validations/__tests__/build-validation.test.js +0 -96
- package/dist/cjs/cloud/build/validations/__tests__/cron-expressions.validator.test.d.ts +0 -2
- package/dist/cjs/cloud/build/validations/__tests__/cron-expressions.validator.test.d.ts.map +0 -1
- package/dist/cjs/cloud/build/validations/__tests__/cron-expressions.validator.test.js +0 -68
- package/dist/cjs/cloud/build/validations/__tests__/duplicate-step-names.validator.test.d.ts +0 -2
- package/dist/cjs/cloud/build/validations/__tests__/duplicate-step-names.validator.test.d.ts.map +0 -1
- package/dist/cjs/cloud/build/validations/__tests__/duplicate-step-names.validator.test.js +0 -66
- package/dist/cjs/cloud/build/validations/__tests__/router-bundle-sizes.validator.test.d.ts +0 -2
- package/dist/cjs/cloud/build/validations/__tests__/router-bundle-sizes.validator.test.d.ts.map +0 -1
- package/dist/cjs/cloud/build/validations/__tests__/router-bundle-sizes.validator.test.js +0 -71
- package/dist/cjs/cloud/build/validations/__tests__/step-bundle-sizes.validator.test.d.ts +0 -2
- package/dist/cjs/cloud/build/validations/__tests__/step-bundle-sizes.validator.test.d.ts.map +0 -1
- package/dist/cjs/cloud/build/validations/__tests__/step-bundle-sizes.validator.test.js +0 -69
- package/dist/cjs/cloud/build/validations/__tests__/step-name-lengths.validator.test.d.ts +0 -2
- package/dist/cjs/cloud/build/validations/__tests__/step-name-lengths.validator.test.d.ts.map +0 -1
- package/dist/cjs/cloud/build/validations/__tests__/step-name-lengths.validator.test.js +0 -68
- package/dist/cjs/cloud/build/validations/api-endpoints.validator.d.ts +0 -3
- package/dist/cjs/cloud/build/validations/api-endpoints.validator.d.ts.map +0 -1
- package/dist/cjs/cloud/build/validations/api-endpoints.validator.js +0 -36
- package/dist/cjs/cloud/build/validations/constants.d.ts +0 -7
- package/dist/cjs/cloud/build/validations/constants.d.ts.map +0 -1
- package/dist/cjs/cloud/build/validations/constants.js +0 -9
- package/dist/cjs/cloud/build/validations/cron-expressions.validator.d.ts +0 -3
- package/dist/cjs/cloud/build/validations/cron-expressions.validator.d.ts.map +0 -1
- package/dist/cjs/cloud/build/validations/cron-expressions.validator.js +0 -62
- package/dist/cjs/cloud/build/validations/duplicate-step-names.validator.d.ts +0 -3
- package/dist/cjs/cloud/build/validations/duplicate-step-names.validator.d.ts.map +0 -1
- package/dist/cjs/cloud/build/validations/duplicate-step-names.validator.js +0 -26
- package/dist/cjs/cloud/build/validations/infrastructure-configs.validator.d.ts +0 -3
- package/dist/cjs/cloud/build/validations/infrastructure-configs.validator.d.ts.map +0 -1
- package/dist/cjs/cloud/build/validations/infrastructure-configs.validator.js +0 -32
- package/dist/cjs/cloud/build/validations/router-bundle-sizes.validator.d.ts +0 -3
- package/dist/cjs/cloud/build/validations/router-bundle-sizes.validator.d.ts.map +0 -1
- package/dist/cjs/cloud/build/validations/router-bundle-sizes.validator.js +0 -31
- package/dist/cjs/cloud/build/validations/step-bundle-sizes.validator.d.ts +0 -3
- package/dist/cjs/cloud/build/validations/step-bundle-sizes.validator.d.ts.map +0 -1
- package/dist/cjs/cloud/build/validations/step-bundle-sizes.validator.js +0 -36
- package/dist/cjs/cloud/build/validations/step-name-lengths.validator.d.ts +0 -3
- package/dist/cjs/cloud/build/validations/step-name-lengths.validator.d.ts.map +0 -1
- package/dist/cjs/cloud/build/validations/step-name-lengths.validator.js +0 -27
- package/dist/cjs/cloud/build/validations/types.d.ts +0 -8
- package/dist/cjs/cloud/build/validations/types.d.ts.map +0 -1
- package/dist/cjs/cloud/build/validations/types.js +0 -2
- package/dist/cjs/cloud/cli/build.d.ts +0 -2
- package/dist/cjs/cloud/cli/build.d.ts.map +0 -1
- package/dist/cjs/cloud/cli/build.js +0 -19
- package/dist/cjs/cloud/cli/deploy.d.ts +0 -2
- package/dist/cjs/cloud/cli/deploy.d.ts.map +0 -1
- package/dist/cjs/cloud/cli/deploy.js +0 -61
- package/dist/cjs/cloud/cli-output-manager.d.ts +0 -37
- package/dist/cjs/cloud/cli-output-manager.d.ts.map +0 -1
- package/dist/cjs/cloud/cli-output-manager.js +0 -131
- package/dist/cjs/cloud/cli.d.ts +0 -2
- package/dist/cjs/cloud/cli.d.ts.map +0 -1
- package/dist/cjs/cloud/cli.js +0 -5
- package/dist/cjs/cloud/config-utils.d.ts +0 -10
- package/dist/cjs/cloud/config-utils.d.ts.map +0 -1
- package/dist/cjs/cloud/config-utils.js +0 -64
- package/dist/cjs/cloud/endpoints.d.ts +0 -3
- package/dist/cjs/cloud/endpoints.d.ts.map +0 -1
- package/dist/cjs/cloud/endpoints.js +0 -93
- package/dist/cjs/cloud/index.d.ts +0 -3
- package/dist/cjs/cloud/index.d.ts.map +0 -1
- package/dist/cjs/cloud/index.js +0 -4
- package/dist/cjs/cloud/new-deployment/build.d.ts +0 -4
- package/dist/cjs/cloud/new-deployment/build.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/build.js +0 -61
- package/dist/cjs/cloud/new-deployment/cloud-api/create-deployment.d.ts +0 -18
- package/dist/cjs/cloud/new-deployment/cloud-api/create-deployment.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/cloud-api/create-deployment.js +0 -18
- package/dist/cjs/cloud/new-deployment/cloud-api/endpoints.d.ts +0 -8
- package/dist/cjs/cloud/new-deployment/cloud-api/endpoints.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/cloud-api/endpoints.js +0 -10
- package/dist/cjs/cloud/new-deployment/cloud-api/index.d.ts +0 -36
- package/dist/cjs/cloud/new-deployment/cloud-api/index.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/cloud-api/index.js +0 -11
- package/dist/cjs/cloud/new-deployment/cloud-api/start-deployment.d.ts +0 -14
- package/dist/cjs/cloud/new-deployment/cloud-api/start-deployment.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/cloud-api/start-deployment.js +0 -13
- package/dist/cjs/cloud/new-deployment/cloud-api/upload.d.ts +0 -14
- package/dist/cjs/cloud/new-deployment/cloud-api/upload.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/cloud-api/upload.js +0 -13
- package/dist/cjs/cloud/new-deployment/constants.d.ts +0 -5
- package/dist/cjs/cloud/new-deployment/constants.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/constants.js +0 -11
- package/dist/cjs/cloud/new-deployment/deploy.d.ts +0 -14
- package/dist/cjs/cloud/new-deployment/deploy.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/deploy.js +0 -49
- package/dist/cjs/cloud/new-deployment/listeners/build-printer.d.ts +0 -17
- package/dist/cjs/cloud/new-deployment/listeners/build-printer.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/listeners/build-printer.js +0 -107
- package/dist/cjs/cloud/new-deployment/listeners/cli-listener.d.ts +0 -35
- package/dist/cjs/cloud/new-deployment/listeners/cli-listener.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/listeners/cli-listener.js +0 -97
- package/dist/cjs/cloud/new-deployment/listeners/listener.types.d.ts +0 -67
- package/dist/cjs/cloud/new-deployment/listeners/listener.types.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/listeners/listener.types.js +0 -2
- package/dist/cjs/cloud/new-deployment/listeners/print-deployment-status.d.ts +0 -7
- package/dist/cjs/cloud/new-deployment/listeners/print-deployment-status.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/listeners/print-deployment-status.js +0 -93
- package/dist/cjs/cloud/new-deployment/listeners/printer.d.ts +0 -17
- package/dist/cjs/cloud/new-deployment/listeners/printer.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/listeners/printer.js +0 -98
- package/dist/cjs/cloud/new-deployment/listeners/streaming-deployment-listener.d.ts +0 -44
- package/dist/cjs/cloud/new-deployment/listeners/streaming-deployment-listener.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/listeners/streaming-deployment-listener.js +0 -278
- package/dist/cjs/cloud/new-deployment/streams/deployment-stream.d.ts +0 -47
- package/dist/cjs/cloud/new-deployment/streams/deployment-stream.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/streams/deployment-stream.js +0 -108
- package/dist/cjs/cloud/new-deployment/upload-artifacts.d.ts +0 -4
- package/dist/cjs/cloud/new-deployment/upload-artifacts.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/upload-artifacts.js +0 -25
- package/dist/cjs/cloud/new-deployment/utils/load-env-data.d.ts +0 -3
- package/dist/cjs/cloud/new-deployment/utils/load-env-data.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/utils/load-env-data.js +0 -48
- package/dist/cjs/cloud/new-deployment/utils/pretty-bytes.d.ts +0 -2
- package/dist/cjs/cloud/new-deployment/utils/pretty-bytes.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/utils/pretty-bytes.js +0 -19
- package/dist/cjs/cloud/new-deployment/utils/upload.d.ts +0 -2
- package/dist/cjs/cloud/new-deployment/utils/upload.d.ts.map +0 -1
- package/dist/cjs/cloud/new-deployment/utils/upload.js +0 -40
- package/dist/cjs/constants.d.ts +0 -3
- package/dist/cjs/constants.d.ts.map +0 -1
- package/dist/cjs/constants.js +0 -17
- package/dist/cjs/create/index.d.ts +0 -11
- package/dist/cjs/create/index.d.ts.map +0 -1
- package/dist/cjs/create/index.js +0 -215
- package/dist/cjs/create/interactive.d.ts +0 -9
- package/dist/cjs/create/interactive.d.ts.map +0 -1
- package/dist/cjs/create/interactive.js +0 -75
- package/dist/cjs/create/pull-rules.d.ts +0 -8
- package/dist/cjs/create/pull-rules.d.ts.map +0 -1
- package/dist/cjs/create/pull-rules.js +0 -28
- package/dist/cjs/create/setup-template.d.ts +0 -3
- package/dist/cjs/create/setup-template.d.ts.map +0 -1
- package/dist/cjs/create/setup-template.js +0 -15
- package/dist/cjs/create/templates/generate.d.ts +0 -5
- package/dist/cjs/create/templates/generate.d.ts.map +0 -1
- package/dist/cjs/create/templates/generate.js +0 -163
- package/dist/cjs/create/templates/generate.ts +0 -139
- package/dist/cjs/create/templates/hello/motia.config.ts.txt +0 -10
- package/dist/cjs/create/templates/hello_js/motia.config.ts.txt +0 -10
- package/dist/cjs/create/templates/hello_python/motia.config.ts.txt +0 -10
- package/dist/cjs/create/templates/index.d.ts +0 -3
- package/dist/cjs/create/templates/index.d.ts.map +0 -1
- package/dist/cjs/create/templates/index.js +0 -12
- package/dist/cjs/create/templates/nodejs/motia.config.ts.txt +0 -10
- package/dist/cjs/create/templates/nodejs/steps/petstore/notification.step.ts.txt +0 -35
- package/dist/cjs/create/templates/python/motia.config.ts.txt +0 -10
- package/dist/cjs/create/utils.d.ts +0 -3
- package/dist/cjs/create/utils.d.ts.map +0 -1
- package/dist/cjs/create/utils.js +0 -21
- package/dist/cjs/create-step/getAnswers.d.ts +0 -3
- package/dist/cjs/create-step/getAnswers.d.ts.map +0 -1
- package/dist/cjs/create-step/getAnswers.js +0 -170
- package/dist/cjs/create-step/index.d.ts +0 -4
- package/dist/cjs/create-step/index.d.ts.map +0 -1
- package/dist/cjs/create-step/index.js +0 -47
- package/dist/cjs/create-step/teamplateUtils.d.ts +0 -6
- package/dist/cjs/create-step/teamplateUtils.d.ts.map +0 -1
- package/dist/cjs/create-step/teamplateUtils.js +0 -50
- package/dist/cjs/create-step/templates/ui/overrides.d.ts +0 -6
- package/dist/cjs/create-step/templates/ui/overrides.d.ts.map +0 -1
- package/dist/cjs/create-step/templates/ui/overrides.js +0 -26
- package/dist/cjs/create-step/templates/ui/overrides.ts +0 -24
- package/dist/cjs/create-step/types.d.ts +0 -22
- package/dist/cjs/create-step/types.d.ts.map +0 -1
- package/dist/cjs/create-step/types.js +0 -6
- package/dist/cjs/create-step/utils.d.ts +0 -3
- package/dist/cjs/create-step/utils.d.ts.map +0 -1
- package/dist/cjs/create-step/utils.js +0 -13
- package/dist/cjs/dev-watchers.d.ts +0 -5
- package/dist/cjs/dev-watchers.d.ts.map +0 -1
- package/dist/cjs/dev-watchers.js +0 -101
- package/dist/cjs/dev.d.ts +0 -2
- package/dist/cjs/dev.d.ts.map +0 -1
- package/dist/cjs/dev.js +0 -128
- package/dist/cjs/docker/build.d.ts +0 -2
- package/dist/cjs/docker/build.d.ts.map +0 -1
- package/dist/cjs/docker/build.js +0 -59
- package/dist/cjs/docker/run.d.ts +0 -2
- package/dist/cjs/docker/run.d.ts.map +0 -1
- package/dist/cjs/docker/run.js +0 -83
- package/dist/cjs/docker/setup.d.ts +0 -2
- package/dist/cjs/docker/setup.d.ts.map +0 -1
- package/dist/cjs/docker/setup.js +0 -123
- package/dist/cjs/docker/utils/build-docker-image.d.ts +0 -2
- package/dist/cjs/docker/utils/build-docker-image.d.ts.map +0 -1
- package/dist/cjs/docker/utils/build-docker-image.js +0 -52
- package/dist/cjs/docker/utils/print-intro.d.ts +0 -2
- package/dist/cjs/docker/utils/print-intro.d.ts.map +0 -1
- package/dist/cjs/docker/utils/print-intro.js +0 -21
- package/dist/cjs/docker/utils/promised-exec.d.ts +0 -2
- package/dist/cjs/docker/utils/promised-exec.d.ts.map +0 -1
- package/dist/cjs/docker/utils/promised-exec.js +0 -28
- package/dist/cjs/generate-locked-data.d.ts +0 -18
- package/dist/cjs/generate-locked-data.d.ts.map +0 -1
- package/dist/cjs/generate-locked-data.js +0 -133
- package/dist/cjs/generate-types.d.ts +0 -2
- package/dist/cjs/generate-types.d.ts.map +0 -1
- package/dist/cjs/generate-types.js +0 -31
- package/dist/cjs/index.d.ts +0 -3
- package/dist/cjs/index.d.ts.map +0 -1
- package/dist/cjs/index.js +0 -21
- package/dist/cjs/install.d.ts +0 -11
- package/dist/cjs/install.d.ts.map +0 -1
- package/dist/cjs/install.js +0 -68
- package/dist/cjs/load-motia-config.d.ts +0 -4
- package/dist/cjs/load-motia-config.d.ts.map +0 -1
- package/dist/cjs/load-motia-config.js +0 -52
- package/dist/cjs/openapi/generate.d.ts +0 -3
- package/dist/cjs/openapi/generate.d.ts.map +0 -1
- package/dist/cjs/openapi/generate.js +0 -125
- package/dist/cjs/openapi/process-schema.d.ts +0 -3
- package/dist/cjs/openapi/process-schema.d.ts.map +0 -1
- package/dist/cjs/openapi/process-schema.js +0 -54
- package/dist/cjs/openapi/utils.d.ts +0 -3
- package/dist/cjs/openapi/utils.d.ts.map +0 -1
- package/dist/cjs/openapi/utils.js +0 -7
- package/dist/cjs/plugins/collect-plugin-steps.d.ts +0 -6
- package/dist/cjs/plugins/collect-plugin-steps.d.ts.map +0 -1
- package/dist/cjs/plugins/collect-plugin-steps.js +0 -44
- package/dist/cjs/plugins/create-plugin-context.d.ts +0 -3
- package/dist/cjs/plugins/create-plugin-context.d.ts.map +0 -1
- package/dist/cjs/plugins/create-plugin-context.js +0 -34
- package/dist/cjs/plugins/index.d.ts +0 -2
- package/dist/cjs/plugins/index.d.ts.map +0 -1
- package/dist/cjs/plugins/index.js +0 -5
- package/dist/cjs/plugins/install-plugin-dependencies.d.ts +0 -3
- package/dist/cjs/plugins/install-plugin-dependencies.d.ts.map +0 -1
- package/dist/cjs/plugins/install-plugin-dependencies.js +0 -61
- package/dist/cjs/plugins/load-config.d.ts +0 -3
- package/dist/cjs/plugins/load-config.d.ts.map +0 -1
- package/dist/cjs/plugins/load-config.js +0 -57
- package/dist/cjs/plugins/plugin-dependencies.d.ts +0 -2
- package/dist/cjs/plugins/plugin-dependencies.d.ts.map +0 -1
- package/dist/cjs/plugins/plugin-dependencies.js +0 -11
- package/dist/cjs/plugins/process-plugins.d.ts +0 -3
- package/dist/cjs/plugins/process-plugins.d.ts.map +0 -1
- package/dist/cjs/plugins/process-plugins.js +0 -20
- package/dist/cjs/plugins/process-steps.d.ts +0 -3
- package/dist/cjs/plugins/process-steps.d.ts.map +0 -1
- package/dist/cjs/plugins/process-steps.js +0 -40
- package/dist/cjs/redis-memory-manager.d.ts +0 -8
- package/dist/cjs/redis-memory-manager.d.ts.map +0 -1
- package/dist/cjs/redis-memory-manager.js +0 -126
- package/dist/cjs/start.d.ts +0 -2
- package/dist/cjs/start.d.ts.map +0 -1
- package/dist/cjs/start.js +0 -81
- package/dist/cjs/utils/activate-python-env.d.ts +0 -9
- package/dist/cjs/utils/activate-python-env.d.ts.map +0 -1
- package/dist/cjs/utils/activate-python-env.js +0 -48
- package/dist/cjs/utils/amplitude/enrichment-plugin.d.ts +0 -8
- package/dist/cjs/utils/amplitude/enrichment-plugin.d.ts.map +0 -1
- package/dist/cjs/utils/amplitude/enrichment-plugin.js +0 -32
- package/dist/cjs/utils/analytics.d.ts +0 -7
- package/dist/cjs/utils/analytics.d.ts.map +0 -1
- package/dist/cjs/utils/analytics.js +0 -92
- package/dist/cjs/utils/build-tools-error.d.ts +0 -8
- package/dist/cjs/utils/build-tools-error.d.ts.map +0 -1
- package/dist/cjs/utils/build-tools-error.js +0 -51
- package/dist/cjs/utils/ensure-uv.d.ts +0 -2
- package/dist/cjs/utils/ensure-uv.d.ts.map +0 -1
- package/dist/cjs/utils/ensure-uv.js +0 -81
- package/dist/cjs/utils/errors/build.error.d.ts +0 -11
- package/dist/cjs/utils/errors/build.error.d.ts.map +0 -1
- package/dist/cjs/utils/errors/build.error.js +0 -21
- package/dist/cjs/utils/errors/compilation.error.d.ts +0 -5
- package/dist/cjs/utils/errors/compilation.error.d.ts.map +0 -1
- package/dist/cjs/utils/errors/compilation.error.js +0 -11
- package/dist/cjs/utils/errors/locked-data-generation.error.d.ts +0 -5
- package/dist/cjs/utils/errors/locked-data-generation.error.d.ts.map +0 -1
- package/dist/cjs/utils/errors/locked-data-generation.error.js +0 -11
- package/dist/cjs/utils/execute-command.d.ts +0 -6
- package/dist/cjs/utils/execute-command.d.ts.map +0 -1
- package/dist/cjs/utils/execute-command.js +0 -26
- package/dist/cjs/utils/get-package-manager.d.ts +0 -2
- package/dist/cjs/utils/get-package-manager.d.ts.map +0 -1
- package/dist/cjs/utils/get-package-manager.js +0 -19
- package/dist/cjs/utils/install-lambda-python-packages.d.ts +0 -7
- package/dist/cjs/utils/install-lambda-python-packages.d.ts.map +0 -1
- package/dist/cjs/utils/install-lambda-python-packages.js +0 -35
- package/dist/cjs/utils/internal-logger.d.ts +0 -6
- package/dist/cjs/utils/internal-logger.d.ts.map +0 -1
- package/dist/cjs/utils/internal-logger.js +0 -30
- package/dist/cjs/utils/python-version-utils.d.ts +0 -4
- package/dist/cjs/utils/python-version-utils.d.ts.map +0 -1
- package/dist/cjs/utils/python-version-utils.js +0 -74
- package/dist/cjs/version.d.ts +0 -2
- package/dist/cjs/version.d.ts.map +0 -1
- package/dist/cjs/version.js +0 -11
- package/dist/cjs/watcher.d.ts +0 -42
- package/dist/cjs/watcher.d.ts.map +0 -1
- package/dist/cjs/watcher.js +0 -155
- package/dist/cjs/workbench.d.ts +0 -2
- package/dist/cjs/workbench.d.ts.map +0 -1
- package/dist/cjs/workbench.js +0 -17
- package/dist/esm/__tests__/openapi/generate.test.d.ts +0 -2
- package/dist/esm/__tests__/openapi/generate.test.d.ts.map +0 -1
- package/dist/esm/__tests__/openapi/generate.test.js +0 -252
- package/dist/esm/__tests__/redis-memory-manager.test.d.ts +0 -2
- package/dist/esm/__tests__/redis-memory-manager.test.d.ts.map +0 -1
- package/dist/esm/__tests__/redis-memory-manager.test.js +0 -174
- package/dist/esm/__tests__/test-helpers/redis-test-helper.d.ts +0 -52
- package/dist/esm/__tests__/test-helpers/redis-test-helper.d.ts.map +0 -1
- package/dist/esm/__tests__/test-helpers/redis-test-helper.example.test.d.ts +0 -2
- package/dist/esm/__tests__/test-helpers/redis-test-helper.example.test.d.ts.map +0 -1
- package/dist/esm/__tests__/test-helpers/redis-test-helper.example.test.js +0 -81
- package/dist/esm/__tests__/test-helpers/redis-test-helper.js +0 -94
- package/dist/esm/cli.d.ts +0 -3
- package/dist/esm/cli.d.ts.map +0 -1
- package/dist/esm/cli.js +0 -188
- package/dist/esm/cloud/build/__tests__/infrastructure-serialization.test.d.ts +0 -2
- package/dist/esm/cloud/build/__tests__/infrastructure-serialization.test.d.ts.map +0 -1
- package/dist/esm/cloud/build/__tests__/infrastructure-serialization.test.js +0 -320
- package/dist/esm/cloud/build/__tests__/infrastructure-validation.test.d.ts +0 -2
- package/dist/esm/cloud/build/__tests__/infrastructure-validation.test.d.ts.map +0 -1
- package/dist/esm/cloud/build/__tests__/infrastructure-validation.test.js +0 -569
- package/dist/esm/cloud/build/build-validation.d.ts +0 -6
- package/dist/esm/cloud/build/build-validation.d.ts.map +0 -1
- package/dist/esm/cloud/build/build-validation.js +0 -39
- package/dist/esm/cloud/build/builder.d.ts +0 -58
- package/dist/esm/cloud/build/builder.d.ts.map +0 -1
- package/dist/esm/cloud/build/builder.js +0 -90
- package/dist/esm/cloud/build/builders/archiver.d.ts +0 -16
- package/dist/esm/cloud/build/builders/archiver.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/archiver.js +0 -70
- package/dist/esm/cloud/build/builders/include-static-files.d.ts +0 -5
- package/dist/esm/cloud/build/builders/include-static-files.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/include-static-files.js +0 -21
- package/dist/esm/cloud/build/builders/node/index.d.ts +0 -12
- package/dist/esm/cloud/build/builders/node/index.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/node/index.js +0 -101
- package/dist/esm/cloud/build/builders/node/router-template.d.ts +0 -10
- package/dist/esm/cloud/build/builders/node/router-template.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/node/router-template.js +0 -3
- package/dist/esm/cloud/build/builders/node/router-template.ts +0 -14
- package/dist/esm/cloud/build/builders/python/index.d.ts +0 -16
- package/dist/esm/cloud/build/builders/python/index.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/python/index.js +0 -122
- package/dist/esm/cloud/build/builders/python/python-data/__tests__/convert-import-path.test.d.ts +0 -2
- package/dist/esm/cloud/build/builders/python/python-data/__tests__/convert-import-path.test.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/python/python-data/__tests__/convert-import-path.test.js +0 -22
- package/dist/esm/cloud/build/builders/python/python-data/__tests__/extract-python-data.test.d.ts +0 -2
- package/dist/esm/cloud/build/builders/python/python-data/__tests__/extract-python-data.test.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/python/python-data/__tests__/extract-python-data.test.js +0 -36
- package/dist/esm/cloud/build/builders/python/python-data/__tests__/get-dependencies-from-file.test.d.ts +0 -2
- package/dist/esm/cloud/build/builders/python/python-data/__tests__/get-dependencies-from-file.test.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/python/python-data/__tests__/get-dependencies-from-file.test.js +0 -62
- package/dist/esm/cloud/build/builders/python/python-data/__tests__/read-requirements.test.d.ts +0 -2
- package/dist/esm/cloud/build/builders/python/python-data/__tests__/read-requirements.test.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/python/python-data/__tests__/read-requirements.test.js +0 -89
- package/dist/esm/cloud/build/builders/python/python-data/__tests__/resolve-dep-name.test.d.ts +0 -2
- package/dist/esm/cloud/build/builders/python/python-data/__tests__/resolve-dep-name.test.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/python/python-data/__tests__/resolve-dep-name.test.js +0 -33
- package/dist/esm/cloud/build/builders/python/python-data/constants.d.ts +0 -2
- package/dist/esm/cloud/build/builders/python/python-data/constants.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/python/python-data/constants.js +0 -107
- package/dist/esm/cloud/build/builders/python/python-data/convert-import-path.d.ts +0 -2
- package/dist/esm/cloud/build/builders/python/python-data/convert-import-path.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/python/python-data/convert-import-path.js +0 -17
- package/dist/esm/cloud/build/builders/python/python-data/extract-python-data.d.ts +0 -8
- package/dist/esm/cloud/build/builders/python/python-data/extract-python-data.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/python/python-data/extract-python-data.js +0 -20
- package/dist/esm/cloud/build/builders/python/python-data/get-dependencies-from-file.d.ts +0 -7
- package/dist/esm/cloud/build/builders/python/python-data/get-dependencies-from-file.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/python/python-data/get-dependencies-from-file.js +0 -68
- package/dist/esm/cloud/build/builders/python/python-data/python-errors.d.ts +0 -14
- package/dist/esm/cloud/build/builders/python/python-data/python-errors.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/python/python-data/python-errors.js +0 -21
- package/dist/esm/cloud/build/builders/python/python-data/read-requirements.d.ts +0 -14
- package/dist/esm/cloud/build/builders/python/python-data/read-requirements.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/python/python-data/read-requirements.js +0 -25
- package/dist/esm/cloud/build/builders/python/python-data/resolve-dep-names.d.ts +0 -7
- package/dist/esm/cloud/build/builders/python/python-data/resolve-dep-names.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/python/python-data/resolve-dep-names.js +0 -45
- package/dist/esm/cloud/build/builders/python/python-data/traverse-tree.d.ts +0 -7
- package/dist/esm/cloud/build/builders/python/python-data/traverse-tree.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/python/python-data/traverse-tree.js +0 -53
- package/dist/esm/cloud/build/builders/python/router_template.py +0 -15
- package/dist/esm/cloud/build/builders/python/uv-packager.d.ts +0 -13
- package/dist/esm/cloud/build/builders/python/uv-packager.d.ts.map +0 -1
- package/dist/esm/cloud/build/builders/python/uv-packager.js +0 -62
- package/dist/esm/cloud/build/validations/__tests__/api-endpoints.validator.test.d.ts +0 -2
- package/dist/esm/cloud/build/validations/__tests__/api-endpoints.validator.test.d.ts.map +0 -1
- package/dist/esm/cloud/build/validations/__tests__/api-endpoints.validator.test.js +0 -69
- package/dist/esm/cloud/build/validations/__tests__/build-validation.test.d.ts +0 -2
- package/dist/esm/cloud/build/validations/__tests__/build-validation.test.d.ts.map +0 -1
- package/dist/esm/cloud/build/validations/__tests__/build-validation.test.js +0 -94
- package/dist/esm/cloud/build/validations/__tests__/cron-expressions.validator.test.d.ts +0 -2
- package/dist/esm/cloud/build/validations/__tests__/cron-expressions.validator.test.d.ts.map +0 -1
- package/dist/esm/cloud/build/validations/__tests__/cron-expressions.validator.test.js +0 -66
- package/dist/esm/cloud/build/validations/__tests__/duplicate-step-names.validator.test.d.ts +0 -2
- package/dist/esm/cloud/build/validations/__tests__/duplicate-step-names.validator.test.d.ts.map +0 -1
- package/dist/esm/cloud/build/validations/__tests__/duplicate-step-names.validator.test.js +0 -64
- package/dist/esm/cloud/build/validations/__tests__/router-bundle-sizes.validator.test.d.ts +0 -2
- package/dist/esm/cloud/build/validations/__tests__/router-bundle-sizes.validator.test.d.ts.map +0 -1
- package/dist/esm/cloud/build/validations/__tests__/router-bundle-sizes.validator.test.js +0 -69
- package/dist/esm/cloud/build/validations/__tests__/step-bundle-sizes.validator.test.d.ts +0 -2
- package/dist/esm/cloud/build/validations/__tests__/step-bundle-sizes.validator.test.d.ts.map +0 -1
- package/dist/esm/cloud/build/validations/__tests__/step-bundle-sizes.validator.test.js +0 -67
- package/dist/esm/cloud/build/validations/__tests__/step-name-lengths.validator.test.d.ts +0 -2
- package/dist/esm/cloud/build/validations/__tests__/step-name-lengths.validator.test.d.ts.map +0 -1
- package/dist/esm/cloud/build/validations/__tests__/step-name-lengths.validator.test.js +0 -66
- package/dist/esm/cloud/build/validations/api-endpoints.validator.d.ts +0 -3
- package/dist/esm/cloud/build/validations/api-endpoints.validator.d.ts.map +0 -1
- package/dist/esm/cloud/build/validations/api-endpoints.validator.js +0 -29
- package/dist/esm/cloud/build/validations/constants.d.ts +0 -7
- package/dist/esm/cloud/build/validations/constants.d.ts.map +0 -1
- package/dist/esm/cloud/build/validations/constants.js +0 -6
- package/dist/esm/cloud/build/validations/cron-expressions.validator.d.ts +0 -3
- package/dist/esm/cloud/build/validations/cron-expressions.validator.d.ts.map +0 -1
- package/dist/esm/cloud/build/validations/cron-expressions.validator.js +0 -22
- package/dist/esm/cloud/build/validations/duplicate-step-names.validator.d.ts +0 -3
- package/dist/esm/cloud/build/validations/duplicate-step-names.validator.d.ts.map +0 -1
- package/dist/esm/cloud/build/validations/duplicate-step-names.validator.js +0 -19
- package/dist/esm/cloud/build/validations/infrastructure-configs.validator.d.ts +0 -3
- package/dist/esm/cloud/build/validations/infrastructure-configs.validator.d.ts.map +0 -1
- package/dist/esm/cloud/build/validations/infrastructure-configs.validator.js +0 -25
- package/dist/esm/cloud/build/validations/router-bundle-sizes.validator.d.ts +0 -3
- package/dist/esm/cloud/build/validations/router-bundle-sizes.validator.d.ts.map +0 -1
- package/dist/esm/cloud/build/validations/router-bundle-sizes.validator.js +0 -24
- package/dist/esm/cloud/build/validations/step-bundle-sizes.validator.d.ts +0 -3
- package/dist/esm/cloud/build/validations/step-bundle-sizes.validator.d.ts.map +0 -1
- package/dist/esm/cloud/build/validations/step-bundle-sizes.validator.js +0 -29
- package/dist/esm/cloud/build/validations/step-name-lengths.validator.d.ts +0 -3
- package/dist/esm/cloud/build/validations/step-name-lengths.validator.d.ts.map +0 -1
- package/dist/esm/cloud/build/validations/step-name-lengths.validator.js +0 -20
- package/dist/esm/cloud/build/validations/types.d.ts +0 -8
- package/dist/esm/cloud/build/validations/types.d.ts.map +0 -1
- package/dist/esm/cloud/build/validations/types.js +0 -1
- package/dist/esm/cloud/cli/build.d.ts +0 -2
- package/dist/esm/cloud/cli/build.d.ts.map +0 -1
- package/dist/esm/cloud/cli/build.js +0 -17
- package/dist/esm/cloud/cli/deploy.d.ts +0 -2
- package/dist/esm/cloud/cli/deploy.d.ts.map +0 -1
- package/dist/esm/cloud/cli/deploy.js +0 -59
- package/dist/esm/cloud/cli-output-manager.d.ts +0 -37
- package/dist/esm/cloud/cli-output-manager.d.ts.map +0 -1
- package/dist/esm/cloud/cli-output-manager.js +0 -123
- package/dist/esm/cloud/cli.d.ts +0 -2
- package/dist/esm/cloud/cli.d.ts.map +0 -1
- package/dist/esm/cloud/cli.js +0 -2
- package/dist/esm/cloud/config-utils.d.ts +0 -10
- package/dist/esm/cloud/config-utils.d.ts.map +0 -1
- package/dist/esm/cloud/config-utils.js +0 -59
- package/dist/esm/cloud/endpoints.d.ts +0 -3
- package/dist/esm/cloud/endpoints.d.ts.map +0 -1
- package/dist/esm/cloud/endpoints.js +0 -89
- package/dist/esm/cloud/index.d.ts +0 -3
- package/dist/esm/cloud/index.d.ts.map +0 -1
- package/dist/esm/cloud/index.js +0 -2
- package/dist/esm/cloud/new-deployment/build.d.ts +0 -4
- package/dist/esm/cloud/new-deployment/build.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/build.js +0 -54
- package/dist/esm/cloud/new-deployment/cloud-api/create-deployment.d.ts +0 -18
- package/dist/esm/cloud/new-deployment/cloud-api/create-deployment.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/cloud-api/create-deployment.js +0 -11
- package/dist/esm/cloud/new-deployment/cloud-api/endpoints.d.ts +0 -8
- package/dist/esm/cloud/new-deployment/cloud-api/endpoints.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/cloud-api/endpoints.js +0 -7
- package/dist/esm/cloud/new-deployment/cloud-api/index.d.ts +0 -36
- package/dist/esm/cloud/new-deployment/cloud-api/index.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/cloud-api/index.js +0 -8
- package/dist/esm/cloud/new-deployment/cloud-api/start-deployment.d.ts +0 -14
- package/dist/esm/cloud/new-deployment/cloud-api/start-deployment.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/cloud-api/start-deployment.js +0 -6
- package/dist/esm/cloud/new-deployment/cloud-api/upload.d.ts +0 -14
- package/dist/esm/cloud/new-deployment/cloud-api/upload.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/cloud-api/upload.js +0 -6
- package/dist/esm/cloud/new-deployment/constants.d.ts +0 -5
- package/dist/esm/cloud/new-deployment/constants.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/constants.js +0 -5
- package/dist/esm/cloud/new-deployment/deploy.d.ts +0 -14
- package/dist/esm/cloud/new-deployment/deploy.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/deploy.js +0 -45
- package/dist/esm/cloud/new-deployment/listeners/build-printer.d.ts +0 -17
- package/dist/esm/cloud/new-deployment/listeners/build-printer.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/listeners/build-printer.js +0 -100
- package/dist/esm/cloud/new-deployment/listeners/cli-listener.d.ts +0 -35
- package/dist/esm/cloud/new-deployment/listeners/cli-listener.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/listeners/cli-listener.js +0 -90
- package/dist/esm/cloud/new-deployment/listeners/listener.types.d.ts +0 -67
- package/dist/esm/cloud/new-deployment/listeners/listener.types.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/listeners/listener.types.js +0 -1
- package/dist/esm/cloud/new-deployment/listeners/print-deployment-status.d.ts +0 -7
- package/dist/esm/cloud/new-deployment/listeners/print-deployment-status.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/listeners/print-deployment-status.js +0 -85
- package/dist/esm/cloud/new-deployment/listeners/printer.d.ts +0 -17
- package/dist/esm/cloud/new-deployment/listeners/printer.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/listeners/printer.js +0 -91
- package/dist/esm/cloud/new-deployment/listeners/streaming-deployment-listener.d.ts +0 -44
- package/dist/esm/cloud/new-deployment/listeners/streaming-deployment-listener.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/listeners/streaming-deployment-listener.js +0 -274
- package/dist/esm/cloud/new-deployment/streams/deployment-stream.d.ts +0 -47
- package/dist/esm/cloud/new-deployment/streams/deployment-stream.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/streams/deployment-stream.js +0 -103
- package/dist/esm/cloud/new-deployment/upload-artifacts.d.ts +0 -4
- package/dist/esm/cloud/new-deployment/upload-artifacts.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/upload-artifacts.js +0 -21
- package/dist/esm/cloud/new-deployment/utils/load-env-data.d.ts +0 -3
- package/dist/esm/cloud/new-deployment/utils/load-env-data.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/utils/load-env-data.js +0 -41
- package/dist/esm/cloud/new-deployment/utils/pretty-bytes.d.ts +0 -2
- package/dist/esm/cloud/new-deployment/utils/pretty-bytes.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/utils/pretty-bytes.js +0 -15
- package/dist/esm/cloud/new-deployment/utils/upload.d.ts +0 -2
- package/dist/esm/cloud/new-deployment/utils/upload.d.ts.map +0 -1
- package/dist/esm/cloud/new-deployment/utils/upload.js +0 -33
- package/dist/esm/constants.d.ts +0 -3
- package/dist/esm/constants.d.ts.map +0 -1
- package/dist/esm/constants.js +0 -11
- package/dist/esm/create/index.d.ts +0 -11
- package/dist/esm/create/index.d.ts.map +0 -1
- package/dist/esm/create/index.js +0 -208
- package/dist/esm/create/interactive.d.ts +0 -9
- package/dist/esm/create/interactive.d.ts.map +0 -1
- package/dist/esm/create/interactive.js +0 -68
- package/dist/esm/create/pull-rules.d.ts +0 -8
- package/dist/esm/create/pull-rules.d.ts.map +0 -1
- package/dist/esm/create/pull-rules.js +0 -21
- package/dist/esm/create/setup-template.d.ts +0 -3
- package/dist/esm/create/setup-template.d.ts.map +0 -1
- package/dist/esm/create/setup-template.js +0 -11
- package/dist/esm/create/templates/generate.d.ts +0 -5
- package/dist/esm/create/templates/generate.d.ts.map +0 -1
- package/dist/esm/create/templates/generate.js +0 -125
- package/dist/esm/create/templates/generate.ts +0 -139
- package/dist/esm/create/templates/hello/README.md.txt +0 -84
- package/dist/esm/create/templates/hello/motia-workbench.json +0 -16
- package/dist/esm/create/templates/hello/motia.config.ts.txt +0 -10
- package/dist/esm/create/templates/hello/steps/hello/hello-api.step.ts.txt +0 -46
- package/dist/esm/create/templates/hello/steps/hello/process-greeting.step.ts.txt +0 -41
- package/dist/esm/create/templates/hello_js/README.md.txt +0 -84
- package/dist/esm/create/templates/hello_js/motia-workbench.json +0 -16
- package/dist/esm/create/templates/hello_js/motia.config.ts.txt +0 -10
- package/dist/esm/create/templates/hello_js/steps/hello/hello-api.step.js.txt +0 -47
- package/dist/esm/create/templates/hello_js/steps/hello/process-greeting.step.js.txt +0 -42
- package/dist/esm/create/templates/hello_python/README.md.txt +0 -85
- package/dist/esm/create/templates/hello_python/motia-workbench.json +0 -16
- package/dist/esm/create/templates/hello_python/motia.config.ts.txt +0 -10
- package/dist/esm/create/templates/hello_python/requirements.txt +0 -2
- package/dist/esm/create/templates/hello_python/steps/hello/hello_api_step.py.txt +0 -74
- package/dist/esm/create/templates/hello_python/steps/hello/process_greeting_step.py.txt +0 -65
- package/dist/esm/create/templates/index.d.ts +0 -3
- package/dist/esm/create/templates/index.d.ts.map +0 -1
- package/dist/esm/create/templates/index.js +0 -9
- package/dist/esm/create/templates/index.ts +0 -10
- package/dist/esm/create/templates/nodejs/README.md.txt +0 -93
- package/dist/esm/create/templates/nodejs/motia-workbench.json +0 -27
- package/dist/esm/create/templates/nodejs/motia.config.ts.txt +0 -10
- package/dist/esm/create/templates/nodejs/src/services/pet-store.ts.txt +0 -29
- package/dist/esm/create/templates/nodejs/src/services/types.ts.txt +0 -22
- package/dist/esm/create/templates/nodejs/steps/petstore/api.step.ts.txt +0 -48
- package/dist/esm/create/templates/nodejs/steps/petstore/notification.step.ts.txt +0 -35
- package/dist/esm/create/templates/nodejs/steps/petstore/process-food-order.step.ts.txt +0 -46
- package/dist/esm/create/templates/nodejs/steps/petstore/state-audit-cron.step.ts.txt +0 -43
- package/dist/esm/create/templates/nodejs/tutorial/petstore/api.step.ts-features.json.txt +0 -50
- package/dist/esm/create/templates/nodejs/tutorial/petstore/process-food-order.step.ts-features.json.txt +0 -50
- package/dist/esm/create/templates/nodejs/tutorial/petstore/state-audit-cron.step.ts-features.json.txt +0 -20
- package/dist/esm/create/templates/nodejs/tutorial/tutorial.tsx.txt +0 -687
- package/dist/esm/create/templates/plugin/.gitignore.txt +0 -3
- package/dist/esm/create/templates/plugin/README.md.txt +0 -64
- package/dist/esm/create/templates/plugin/package.json.txt +0 -47
- package/dist/esm/create/templates/plugin/postcss.config.js.txt +0 -6
- package/dist/esm/create/templates/plugin/src/components/example-page.tsx.txt +0 -64
- package/dist/esm/create/templates/plugin/src/index.ts.txt +0 -4
- package/dist/esm/create/templates/plugin/src/plugin.ts.txt +0 -17
- package/dist/esm/create/templates/plugin/src/styles.css.txt +0 -3
- package/dist/esm/create/templates/plugin/tsconfig.json.txt +0 -27
- package/dist/esm/create/templates/plugin/vite.config.ts.txt +0 -30
- package/dist/esm/create/templates/python/README.md.txt +0 -94
- package/dist/esm/create/templates/python/motia-workbench.json +0 -27
- package/dist/esm/create/templates/python/motia.config.ts.txt +0 -10
- package/dist/esm/create/templates/python/requirements.txt +0 -2
- package/dist/esm/create/templates/python/src/__init__.py.txt +0 -0
- package/dist/esm/create/templates/python/src/services/__init__.py.txt +0 -0
- package/dist/esm/create/templates/python/src/services/pet_store.py.txt +0 -37
- package/dist/esm/create/templates/python/src/services/types.py.txt +0 -20
- package/dist/esm/create/templates/python/steps/petstore/api_step.py.txt +0 -50
- package/dist/esm/create/templates/python/steps/petstore/notification_step.py.txt +0 -40
- package/dist/esm/create/templates/python/steps/petstore/process_food_order_step.py.txt +0 -48
- package/dist/esm/create/templates/python/steps/petstore/state_audit_cron_step.py.txt +0 -39
- package/dist/esm/create/templates/python/tutorial/petstore/api_step.py-features.json.txt +0 -50
- package/dist/esm/create/templates/python/tutorial/petstore/process_food_order_step.py-features.json.txt +0 -50
- package/dist/esm/create/templates/python/tutorial/petstore/state_audit_cron_step.py-features.json.txt +0 -26
- package/dist/esm/create/templates/python/tutorial/tutorial.tsx.txt +0 -687
- package/dist/esm/create/utils.d.ts +0 -3
- package/dist/esm/create/utils.d.ts.map +0 -1
- package/dist/esm/create/utils.js +0 -13
- package/dist/esm/create-step/getAnswers.d.ts +0 -3
- package/dist/esm/create-step/getAnswers.d.ts.map +0 -1
- package/dist/esm/create-step/getAnswers.js +0 -163
- package/dist/esm/create-step/index.d.ts +0 -4
- package/dist/esm/create-step/index.d.ts.map +0 -1
- package/dist/esm/create-step/index.js +0 -41
- package/dist/esm/create-step/teamplateUtils.d.ts +0 -6
- package/dist/esm/create-step/teamplateUtils.d.ts.map +0 -1
- package/dist/esm/create-step/teamplateUtils.js +0 -44
- package/dist/esm/create-step/templates/api/template.javascript.txt +0 -25
- package/dist/esm/create-step/templates/api/template.python.txt +0 -29
- package/dist/esm/create-step/templates/api/template.ruby.txt +0 -22
- package/dist/esm/create-step/templates/api/template.typescript.txt +0 -31
- package/dist/esm/create-step/templates/cron/template.javascript.txt +0 -20
- package/dist/esm/create-step/templates/cron/template.python.txt +0 -19
- package/dist/esm/create-step/templates/cron/template.ruby.txt +0 -22
- package/dist/esm/create-step/templates/cron/template.type.txt +0 -22
- package/dist/esm/create-step/templates/cron/template.typescript.txt +0 -22
- package/dist/esm/create-step/templates/event/template.javascript.txt +0 -27
- package/dist/esm/create-step/templates/event/template.python.txt +0 -29
- package/dist/esm/create-step/templates/event/template.ruby.txt +0 -22
- package/dist/esm/create-step/templates/event/template.typescript.txt +0 -26
- package/dist/esm/create-step/templates/noop/template.javascript.txt +0 -8
- package/dist/esm/create-step/templates/noop/template.python.txt +0 -8
- package/dist/esm/create-step/templates/noop/template.ruby.txt +0 -10
- package/dist/esm/create-step/templates/noop/template.typescript.txt +0 -10
- package/dist/esm/create-step/templates/ui/api.step.txt +0 -20
- package/dist/esm/create-step/templates/ui/cron.step.txt +0 -15
- package/dist/esm/create-step/templates/ui/event.step.txt +0 -15
- package/dist/esm/create-step/templates/ui/noop.step.txt +0 -15
- package/dist/esm/create-step/templates/ui/overrides.d.ts +0 -6
- package/dist/esm/create-step/templates/ui/overrides.d.ts.map +0 -1
- package/dist/esm/create-step/templates/ui/overrides.js +0 -20
- package/dist/esm/create-step/templates/ui/overrides.ts +0 -24
- package/dist/esm/create-step/types.d.ts +0 -22
- package/dist/esm/create-step/types.d.ts.map +0 -1
- package/dist/esm/create-step/types.js +0 -3
- package/dist/esm/create-step/utils.d.ts +0 -3
- package/dist/esm/create-step/utils.d.ts.map +0 -1
- package/dist/esm/create-step/utils.js +0 -9
- package/dist/esm/cursor-rules/dot-files/.claude/agents/motia-developer.md +0 -95
- package/dist/esm/cursor-rules/dot-files/.cursor/architecture/architecture.mdc +0 -96
- package/dist/esm/cursor-rules/dot-files/.cursor/architecture/error-handling.mdc +0 -122
- package/dist/esm/cursor-rules/dot-files/.cursor/index.mdc +0 -34
- package/dist/esm/cursor-rules/dot-files/.cursor/rules/motia/api-steps.mdc +0 -441
- package/dist/esm/cursor-rules/dot-files/.cursor/rules/motia/cron-steps.mdc +0 -171
- package/dist/esm/cursor-rules/dot-files/.cursor/rules/motia/event-steps.mdc +0 -234
- package/dist/esm/cursor-rules/dot-files/.cursor/rules/motia/middlewares.mdc +0 -217
- package/dist/esm/cursor-rules/dot-files/.cursor/rules/motia/motia-config.mdc +0 -359
- package/dist/esm/cursor-rules/dot-files/.cursor/rules/motia/realtime-streaming.mdc +0 -401
- package/dist/esm/cursor-rules/dot-files/.cursor/rules/motia/state-management.mdc +0 -136
- package/dist/esm/cursor-rules/dot-files/.cursor/rules/motia/ui-steps.mdc +0 -76
- package/dist/esm/cursor-rules/dot-files/.cursor/rules/motia/virtual-steps.mdc +0 -251
- package/dist/esm/cursor-rules/dot-files/AGENTS.md +0 -215
- package/dist/esm/cursor-rules/dot-files/CLAUDE.md +0 -58
- package/dist/esm/cursor-rules/dot-files/opencode.json +0 -18
- package/dist/esm/dev-watchers.d.ts +0 -5
- package/dist/esm/dev-watchers.d.ts.map +0 -1
- package/dist/esm/dev-watchers.js +0 -94
- package/dist/esm/dev.d.ts +0 -2
- package/dist/esm/dev.d.ts.map +0 -1
- package/dist/esm/dev.js +0 -124
- package/dist/esm/docker/build.d.ts +0 -2
- package/dist/esm/docker/build.d.ts.map +0 -1
- package/dist/esm/docker/build.js +0 -22
- package/dist/esm/docker/run.d.ts +0 -2
- package/dist/esm/docker/run.d.ts.map +0 -1
- package/dist/esm/docker/run.js +0 -46
- package/dist/esm/docker/setup.d.ts +0 -2
- package/dist/esm/docker/setup.d.ts.map +0 -1
- package/dist/esm/docker/setup.js +0 -86
- package/dist/esm/docker/templates/.dockerignore.sample +0 -37
- package/dist/esm/docker/templates/MotiaDockerSample +0 -20
- package/dist/esm/docker/utils/build-docker-image.d.ts +0 -2
- package/dist/esm/docker/utils/build-docker-image.d.ts.map +0 -1
- package/dist/esm/docker/utils/build-docker-image.js +0 -15
- package/dist/esm/docker/utils/print-intro.d.ts +0 -2
- package/dist/esm/docker/utils/print-intro.d.ts.map +0 -1
- package/dist/esm/docker/utils/print-intro.js +0 -17
- package/dist/esm/docker/utils/promised-exec.d.ts +0 -2
- package/dist/esm/docker/utils/promised-exec.d.ts.map +0 -1
- package/dist/esm/docker/utils/promised-exec.js +0 -24
- package/dist/esm/generate-locked-data.d.ts +0 -18
- package/dist/esm/generate-locked-data.d.ts.map +0 -1
- package/dist/esm/generate-locked-data.js +0 -123
- package/dist/esm/generate-types.d.ts +0 -2
- package/dist/esm/generate-types.d.ts.map +0 -1
- package/dist/esm/generate-types.js +0 -24
- package/dist/esm/index.d.ts +0 -3
- package/dist/esm/index.d.ts.map +0 -1
- package/dist/esm/index.js +0 -2
- package/dist/esm/install.d.ts +0 -11
- package/dist/esm/install.d.ts.map +0 -1
- package/dist/esm/install.js +0 -60
- package/dist/esm/load-motia-config.d.ts +0 -4
- package/dist/esm/load-motia-config.d.ts.map +0 -1
- package/dist/esm/load-motia-config.js +0 -15
- package/dist/esm/openapi/generate.d.ts +0 -3
- package/dist/esm/openapi/generate.d.ts.map +0 -1
- package/dist/esm/openapi/generate.js +0 -89
- package/dist/esm/openapi/process-schema.d.ts +0 -3
- package/dist/esm/openapi/process-schema.d.ts.map +0 -1
- package/dist/esm/openapi/process-schema.js +0 -51
- package/dist/esm/openapi/utils.d.ts +0 -3
- package/dist/esm/openapi/utils.d.ts.map +0 -1
- package/dist/esm/openapi/utils.js +0 -4
- package/dist/esm/plugins/collect-plugin-steps.d.ts +0 -6
- package/dist/esm/plugins/collect-plugin-steps.d.ts.map +0 -1
- package/dist/esm/plugins/collect-plugin-steps.js +0 -37
- package/dist/esm/plugins/create-plugin-context.d.ts +0 -3
- package/dist/esm/plugins/create-plugin-context.d.ts.map +0 -1
- package/dist/esm/plugins/create-plugin-context.js +0 -30
- package/dist/esm/plugins/index.d.ts +0 -2
- package/dist/esm/plugins/index.d.ts.map +0 -1
- package/dist/esm/plugins/index.js +0 -1
- package/dist/esm/plugins/install-plugin-dependencies.d.ts +0 -3
- package/dist/esm/plugins/install-plugin-dependencies.d.ts.map +0 -1
- package/dist/esm/plugins/install-plugin-dependencies.js +0 -54
- package/dist/esm/plugins/load-config.d.ts +0 -3
- package/dist/esm/plugins/load-config.d.ts.map +0 -1
- package/dist/esm/plugins/load-config.js +0 -17
- package/dist/esm/plugins/plugin-dependencies.d.ts +0 -2
- package/dist/esm/plugins/plugin-dependencies.d.ts.map +0 -1
- package/dist/esm/plugins/plugin-dependencies.js +0 -8
- package/dist/esm/plugins/process-plugins.d.ts +0 -3
- package/dist/esm/plugins/process-plugins.d.ts.map +0 -1
- package/dist/esm/plugins/process-plugins.js +0 -16
- package/dist/esm/plugins/process-steps.d.ts +0 -3
- package/dist/esm/plugins/process-steps.d.ts.map +0 -1
- package/dist/esm/plugins/process-steps.js +0 -36
- package/dist/esm/redis-memory-manager.d.ts +0 -8
- package/dist/esm/redis-memory-manager.d.ts.map +0 -1
- package/dist/esm/redis-memory-manager.js +0 -121
- package/dist/esm/start.d.ts +0 -2
- package/dist/esm/start.d.ts.map +0 -1
- package/dist/esm/start.js +0 -74
- package/dist/esm/utils/activate-python-env.d.ts +0 -9
- package/dist/esm/utils/activate-python-env.d.ts.map +0 -1
- package/dist/esm/utils/activate-python-env.js +0 -40
- package/dist/esm/utils/amplitude/enrichment-plugin.d.ts +0 -8
- package/dist/esm/utils/amplitude/enrichment-plugin.d.ts.map +0 -1
- package/dist/esm/utils/amplitude/enrichment-plugin.js +0 -25
- package/dist/esm/utils/analytics.d.ts +0 -7
- package/dist/esm/utils/analytics.d.ts.map +0 -1
- package/dist/esm/utils/analytics.js +0 -84
- package/dist/esm/utils/build-tools-error.d.ts +0 -8
- package/dist/esm/utils/build-tools-error.d.ts.map +0 -1
- package/dist/esm/utils/build-tools-error.js +0 -46
- package/dist/esm/utils/ensure-uv.d.ts +0 -2
- package/dist/esm/utils/ensure-uv.d.ts.map +0 -1
- package/dist/esm/utils/ensure-uv.js +0 -77
- package/dist/esm/utils/errors/build.error.d.ts +0 -11
- package/dist/esm/utils/errors/build.error.d.ts.map +0 -1
- package/dist/esm/utils/errors/build.error.js +0 -17
- package/dist/esm/utils/errors/compilation.error.d.ts +0 -5
- package/dist/esm/utils/errors/compilation.error.d.ts.map +0 -1
- package/dist/esm/utils/errors/compilation.error.js +0 -7
- package/dist/esm/utils/errors/locked-data-generation.error.d.ts +0 -5
- package/dist/esm/utils/errors/locked-data-generation.error.d.ts.map +0 -1
- package/dist/esm/utils/errors/locked-data-generation.error.js +0 -7
- package/dist/esm/utils/execute-command.d.ts +0 -6
- package/dist/esm/utils/execute-command.d.ts.map +0 -1
- package/dist/esm/utils/execute-command.js +0 -22
- package/dist/esm/utils/get-package-manager.d.ts +0 -2
- package/dist/esm/utils/get-package-manager.d.ts.map +0 -1
- package/dist/esm/utils/get-package-manager.js +0 -15
- package/dist/esm/utils/install-lambda-python-packages.d.ts +0 -7
- package/dist/esm/utils/install-lambda-python-packages.d.ts.map +0 -1
- package/dist/esm/utils/install-lambda-python-packages.js +0 -28
- package/dist/esm/utils/internal-logger.d.ts +0 -6
- package/dist/esm/utils/internal-logger.d.ts.map +0 -1
- package/dist/esm/utils/internal-logger.js +0 -24
- package/dist/esm/utils/python-version-utils.d.ts +0 -4
- package/dist/esm/utils/python-version-utils.d.ts.map +0 -1
- package/dist/esm/utils/python-version-utils.js +0 -66
- package/dist/esm/version.d.ts +0 -2
- package/dist/esm/version.d.ts.map +0 -1
- package/dist/esm/version.js +0 -5
- package/dist/esm/watcher.d.ts +0 -42
- package/dist/esm/watcher.d.ts.map +0 -1
- package/dist/esm/watcher.js +0 -148
- package/dist/esm/workbench.d.ts +0 -2
- package/dist/esm/workbench.d.ts.map +0 -1
- package/dist/esm/workbench.js +0 -1
- package/dist/types/__tests__/openapi/generate.test.d.ts +0 -2
- package/dist/types/__tests__/openapi/generate.test.d.ts.map +0 -1
- package/dist/types/__tests__/redis-memory-manager.test.d.ts +0 -2
- package/dist/types/__tests__/redis-memory-manager.test.d.ts.map +0 -1
- package/dist/types/__tests__/test-helpers/redis-test-helper.d.ts +0 -52
- package/dist/types/__tests__/test-helpers/redis-test-helper.d.ts.map +0 -1
- package/dist/types/__tests__/test-helpers/redis-test-helper.example.test.d.ts +0 -2
- package/dist/types/__tests__/test-helpers/redis-test-helper.example.test.d.ts.map +0 -1
- package/dist/types/cli.d.ts +0 -3
- package/dist/types/cli.d.ts.map +0 -1
- package/dist/types/cloud/build/__tests__/infrastructure-serialization.test.d.ts +0 -2
- package/dist/types/cloud/build/__tests__/infrastructure-serialization.test.d.ts.map +0 -1
- package/dist/types/cloud/build/__tests__/infrastructure-validation.test.d.ts +0 -2
- package/dist/types/cloud/build/__tests__/infrastructure-validation.test.d.ts.map +0 -1
- package/dist/types/cloud/build/build-validation.d.ts +0 -6
- package/dist/types/cloud/build/build-validation.d.ts.map +0 -1
- package/dist/types/cloud/build/builder.d.ts +0 -58
- package/dist/types/cloud/build/builder.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/archiver.d.ts +0 -16
- package/dist/types/cloud/build/builders/archiver.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/include-static-files.d.ts +0 -5
- package/dist/types/cloud/build/builders/include-static-files.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/node/index.d.ts +0 -12
- package/dist/types/cloud/build/builders/node/index.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/node/router-template.d.ts +0 -10
- package/dist/types/cloud/build/builders/node/router-template.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/python/index.d.ts +0 -16
- package/dist/types/cloud/build/builders/python/index.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/python/python-data/__tests__/convert-import-path.test.d.ts +0 -2
- package/dist/types/cloud/build/builders/python/python-data/__tests__/convert-import-path.test.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/python/python-data/__tests__/extract-python-data.test.d.ts +0 -2
- package/dist/types/cloud/build/builders/python/python-data/__tests__/extract-python-data.test.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/python/python-data/__tests__/get-dependencies-from-file.test.d.ts +0 -2
- package/dist/types/cloud/build/builders/python/python-data/__tests__/get-dependencies-from-file.test.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/python/python-data/__tests__/read-requirements.test.d.ts +0 -2
- package/dist/types/cloud/build/builders/python/python-data/__tests__/read-requirements.test.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/python/python-data/__tests__/resolve-dep-name.test.d.ts +0 -2
- package/dist/types/cloud/build/builders/python/python-data/__tests__/resolve-dep-name.test.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/python/python-data/constants.d.ts +0 -2
- package/dist/types/cloud/build/builders/python/python-data/constants.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/python/python-data/convert-import-path.d.ts +0 -2
- package/dist/types/cloud/build/builders/python/python-data/convert-import-path.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/python/python-data/extract-python-data.d.ts +0 -8
- package/dist/types/cloud/build/builders/python/python-data/extract-python-data.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/python/python-data/get-dependencies-from-file.d.ts +0 -7
- package/dist/types/cloud/build/builders/python/python-data/get-dependencies-from-file.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/python/python-data/python-errors.d.ts +0 -14
- package/dist/types/cloud/build/builders/python/python-data/python-errors.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/python/python-data/read-requirements.d.ts +0 -14
- package/dist/types/cloud/build/builders/python/python-data/read-requirements.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/python/python-data/resolve-dep-names.d.ts +0 -7
- package/dist/types/cloud/build/builders/python/python-data/resolve-dep-names.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/python/python-data/traverse-tree.d.ts +0 -7
- package/dist/types/cloud/build/builders/python/python-data/traverse-tree.d.ts.map +0 -1
- package/dist/types/cloud/build/builders/python/uv-packager.d.ts +0 -13
- package/dist/types/cloud/build/builders/python/uv-packager.d.ts.map +0 -1
- package/dist/types/cloud/build/validations/__tests__/api-endpoints.validator.test.d.ts +0 -2
- package/dist/types/cloud/build/validations/__tests__/api-endpoints.validator.test.d.ts.map +0 -1
- package/dist/types/cloud/build/validations/__tests__/build-validation.test.d.ts +0 -2
- package/dist/types/cloud/build/validations/__tests__/build-validation.test.d.ts.map +0 -1
- package/dist/types/cloud/build/validations/__tests__/cron-expressions.validator.test.d.ts +0 -2
- package/dist/types/cloud/build/validations/__tests__/cron-expressions.validator.test.d.ts.map +0 -1
- package/dist/types/cloud/build/validations/__tests__/duplicate-step-names.validator.test.d.ts +0 -2
- package/dist/types/cloud/build/validations/__tests__/duplicate-step-names.validator.test.d.ts.map +0 -1
- package/dist/types/cloud/build/validations/__tests__/router-bundle-sizes.validator.test.d.ts +0 -2
- package/dist/types/cloud/build/validations/__tests__/router-bundle-sizes.validator.test.d.ts.map +0 -1
- package/dist/types/cloud/build/validations/__tests__/step-bundle-sizes.validator.test.d.ts +0 -2
- package/dist/types/cloud/build/validations/__tests__/step-bundle-sizes.validator.test.d.ts.map +0 -1
- package/dist/types/cloud/build/validations/__tests__/step-name-lengths.validator.test.d.ts +0 -2
- package/dist/types/cloud/build/validations/__tests__/step-name-lengths.validator.test.d.ts.map +0 -1
- package/dist/types/cloud/build/validations/api-endpoints.validator.d.ts +0 -3
- package/dist/types/cloud/build/validations/api-endpoints.validator.d.ts.map +0 -1
- package/dist/types/cloud/build/validations/constants.d.ts +0 -7
- package/dist/types/cloud/build/validations/constants.d.ts.map +0 -1
- package/dist/types/cloud/build/validations/cron-expressions.validator.d.ts +0 -3
- package/dist/types/cloud/build/validations/cron-expressions.validator.d.ts.map +0 -1
- package/dist/types/cloud/build/validations/duplicate-step-names.validator.d.ts +0 -3
- package/dist/types/cloud/build/validations/duplicate-step-names.validator.d.ts.map +0 -1
- package/dist/types/cloud/build/validations/infrastructure-configs.validator.d.ts +0 -3
- package/dist/types/cloud/build/validations/infrastructure-configs.validator.d.ts.map +0 -1
- package/dist/types/cloud/build/validations/router-bundle-sizes.validator.d.ts +0 -3
- package/dist/types/cloud/build/validations/router-bundle-sizes.validator.d.ts.map +0 -1
- package/dist/types/cloud/build/validations/step-bundle-sizes.validator.d.ts +0 -3
- package/dist/types/cloud/build/validations/step-bundle-sizes.validator.d.ts.map +0 -1
- package/dist/types/cloud/build/validations/step-name-lengths.validator.d.ts +0 -3
- package/dist/types/cloud/build/validations/step-name-lengths.validator.d.ts.map +0 -1
- package/dist/types/cloud/build/validations/types.d.ts +0 -8
- package/dist/types/cloud/build/validations/types.d.ts.map +0 -1
- package/dist/types/cloud/cli/build.d.ts +0 -2
- package/dist/types/cloud/cli/build.d.ts.map +0 -1
- package/dist/types/cloud/cli/deploy.d.ts +0 -2
- package/dist/types/cloud/cli/deploy.d.ts.map +0 -1
- package/dist/types/cloud/cli-output-manager.d.ts +0 -37
- package/dist/types/cloud/cli-output-manager.d.ts.map +0 -1
- package/dist/types/cloud/cli.d.ts +0 -2
- package/dist/types/cloud/cli.d.ts.map +0 -1
- package/dist/types/cloud/config-utils.d.ts +0 -10
- package/dist/types/cloud/config-utils.d.ts.map +0 -1
- package/dist/types/cloud/endpoints.d.ts +0 -3
- package/dist/types/cloud/endpoints.d.ts.map +0 -1
- package/dist/types/cloud/index.d.ts +0 -3
- package/dist/types/cloud/index.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/build.d.ts +0 -4
- package/dist/types/cloud/new-deployment/build.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/cloud-api/create-deployment.d.ts +0 -18
- package/dist/types/cloud/new-deployment/cloud-api/create-deployment.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/cloud-api/endpoints.d.ts +0 -8
- package/dist/types/cloud/new-deployment/cloud-api/endpoints.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/cloud-api/index.d.ts +0 -36
- package/dist/types/cloud/new-deployment/cloud-api/index.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/cloud-api/start-deployment.d.ts +0 -14
- package/dist/types/cloud/new-deployment/cloud-api/start-deployment.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/cloud-api/upload.d.ts +0 -14
- package/dist/types/cloud/new-deployment/cloud-api/upload.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/constants.d.ts +0 -5
- package/dist/types/cloud/new-deployment/constants.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/deploy.d.ts +0 -14
- package/dist/types/cloud/new-deployment/deploy.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/listeners/build-printer.d.ts +0 -17
- package/dist/types/cloud/new-deployment/listeners/build-printer.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/listeners/cli-listener.d.ts +0 -35
- package/dist/types/cloud/new-deployment/listeners/cli-listener.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/listeners/listener.types.d.ts +0 -67
- package/dist/types/cloud/new-deployment/listeners/listener.types.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/listeners/print-deployment-status.d.ts +0 -7
- package/dist/types/cloud/new-deployment/listeners/print-deployment-status.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/listeners/printer.d.ts +0 -17
- package/dist/types/cloud/new-deployment/listeners/printer.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/listeners/streaming-deployment-listener.d.ts +0 -44
- package/dist/types/cloud/new-deployment/listeners/streaming-deployment-listener.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/streams/deployment-stream.d.ts +0 -47
- package/dist/types/cloud/new-deployment/streams/deployment-stream.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/upload-artifacts.d.ts +0 -4
- package/dist/types/cloud/new-deployment/upload-artifacts.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/utils/load-env-data.d.ts +0 -3
- package/dist/types/cloud/new-deployment/utils/load-env-data.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/utils/pretty-bytes.d.ts +0 -2
- package/dist/types/cloud/new-deployment/utils/pretty-bytes.d.ts.map +0 -1
- package/dist/types/cloud/new-deployment/utils/upload.d.ts +0 -2
- package/dist/types/cloud/new-deployment/utils/upload.d.ts.map +0 -1
- package/dist/types/constants.d.ts +0 -3
- package/dist/types/constants.d.ts.map +0 -1
- package/dist/types/create/index.d.ts +0 -11
- package/dist/types/create/index.d.ts.map +0 -1
- package/dist/types/create/interactive.d.ts +0 -9
- package/dist/types/create/interactive.d.ts.map +0 -1
- package/dist/types/create/pull-rules.d.ts +0 -8
- package/dist/types/create/pull-rules.d.ts.map +0 -1
- package/dist/types/create/setup-template.d.ts +0 -3
- package/dist/types/create/setup-template.d.ts.map +0 -1
- package/dist/types/create/templates/generate.d.ts +0 -5
- package/dist/types/create/templates/generate.d.ts.map +0 -1
- package/dist/types/create/templates/index.d.ts +0 -3
- package/dist/types/create/templates/index.d.ts.map +0 -1
- package/dist/types/create/utils.d.ts +0 -3
- package/dist/types/create/utils.d.ts.map +0 -1
- package/dist/types/create-step/getAnswers.d.ts +0 -3
- package/dist/types/create-step/getAnswers.d.ts.map +0 -1
- package/dist/types/create-step/index.d.ts +0 -4
- package/dist/types/create-step/index.d.ts.map +0 -1
- package/dist/types/create-step/teamplateUtils.d.ts +0 -6
- package/dist/types/create-step/teamplateUtils.d.ts.map +0 -1
- package/dist/types/create-step/templates/ui/overrides.d.ts +0 -6
- package/dist/types/create-step/templates/ui/overrides.d.ts.map +0 -1
- package/dist/types/create-step/types.d.ts +0 -22
- package/dist/types/create-step/types.d.ts.map +0 -1
- package/dist/types/create-step/utils.d.ts +0 -3
- package/dist/types/create-step/utils.d.ts.map +0 -1
- package/dist/types/dev-watchers.d.ts +0 -5
- package/dist/types/dev-watchers.d.ts.map +0 -1
- package/dist/types/dev.d.ts +0 -2
- package/dist/types/dev.d.ts.map +0 -1
- package/dist/types/docker/build.d.ts +0 -2
- package/dist/types/docker/build.d.ts.map +0 -1
- package/dist/types/docker/run.d.ts +0 -2
- package/dist/types/docker/run.d.ts.map +0 -1
- package/dist/types/docker/setup.d.ts +0 -2
- package/dist/types/docker/setup.d.ts.map +0 -1
- package/dist/types/docker/utils/build-docker-image.d.ts +0 -2
- package/dist/types/docker/utils/build-docker-image.d.ts.map +0 -1
- package/dist/types/docker/utils/print-intro.d.ts +0 -2
- package/dist/types/docker/utils/print-intro.d.ts.map +0 -1
- package/dist/types/docker/utils/promised-exec.d.ts +0 -2
- package/dist/types/docker/utils/promised-exec.d.ts.map +0 -1
- package/dist/types/generate-locked-data.d.ts +0 -18
- package/dist/types/generate-locked-data.d.ts.map +0 -1
- package/dist/types/generate-types.d.ts +0 -2
- package/dist/types/generate-types.d.ts.map +0 -1
- package/dist/types/index.d.ts +0 -3
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/install.d.ts +0 -11
- package/dist/types/install.d.ts.map +0 -1
- package/dist/types/load-motia-config.d.ts +0 -4
- package/dist/types/load-motia-config.d.ts.map +0 -1
- package/dist/types/openapi/generate.d.ts +0 -3
- package/dist/types/openapi/generate.d.ts.map +0 -1
- package/dist/types/openapi/process-schema.d.ts +0 -3
- package/dist/types/openapi/process-schema.d.ts.map +0 -1
- package/dist/types/openapi/utils.d.ts +0 -3
- package/dist/types/openapi/utils.d.ts.map +0 -1
- package/dist/types/plugins/collect-plugin-steps.d.ts +0 -6
- package/dist/types/plugins/collect-plugin-steps.d.ts.map +0 -1
- package/dist/types/plugins/create-plugin-context.d.ts +0 -3
- package/dist/types/plugins/create-plugin-context.d.ts.map +0 -1
- package/dist/types/plugins/index.d.ts +0 -2
- package/dist/types/plugins/index.d.ts.map +0 -1
- package/dist/types/plugins/install-plugin-dependencies.d.ts +0 -3
- package/dist/types/plugins/install-plugin-dependencies.d.ts.map +0 -1
- package/dist/types/plugins/load-config.d.ts +0 -3
- package/dist/types/plugins/load-config.d.ts.map +0 -1
- package/dist/types/plugins/plugin-dependencies.d.ts +0 -2
- package/dist/types/plugins/plugin-dependencies.d.ts.map +0 -1
- package/dist/types/plugins/process-plugins.d.ts +0 -3
- package/dist/types/plugins/process-plugins.d.ts.map +0 -1
- package/dist/types/plugins/process-steps.d.ts +0 -3
- package/dist/types/plugins/process-steps.d.ts.map +0 -1
- package/dist/types/redis-memory-manager.d.ts +0 -8
- package/dist/types/redis-memory-manager.d.ts.map +0 -1
- package/dist/types/start.d.ts +0 -2
- package/dist/types/start.d.ts.map +0 -1
- package/dist/types/utils/activate-python-env.d.ts +0 -9
- package/dist/types/utils/activate-python-env.d.ts.map +0 -1
- package/dist/types/utils/amplitude/enrichment-plugin.d.ts +0 -8
- package/dist/types/utils/amplitude/enrichment-plugin.d.ts.map +0 -1
- package/dist/types/utils/analytics.d.ts +0 -7
- package/dist/types/utils/analytics.d.ts.map +0 -1
- package/dist/types/utils/build-tools-error.d.ts +0 -8
- package/dist/types/utils/build-tools-error.d.ts.map +0 -1
- package/dist/types/utils/ensure-uv.d.ts +0 -2
- package/dist/types/utils/ensure-uv.d.ts.map +0 -1
- package/dist/types/utils/errors/build.error.d.ts +0 -11
- package/dist/types/utils/errors/build.error.d.ts.map +0 -1
- package/dist/types/utils/errors/compilation.error.d.ts +0 -5
- package/dist/types/utils/errors/compilation.error.d.ts.map +0 -1
- package/dist/types/utils/errors/locked-data-generation.error.d.ts +0 -5
- package/dist/types/utils/errors/locked-data-generation.error.d.ts.map +0 -1
- package/dist/types/utils/execute-command.d.ts +0 -6
- package/dist/types/utils/execute-command.d.ts.map +0 -1
- package/dist/types/utils/get-package-manager.d.ts +0 -2
- package/dist/types/utils/get-package-manager.d.ts.map +0 -1
- package/dist/types/utils/install-lambda-python-packages.d.ts +0 -7
- package/dist/types/utils/install-lambda-python-packages.d.ts.map +0 -1
- package/dist/types/utils/internal-logger.d.ts +0 -6
- package/dist/types/utils/internal-logger.d.ts.map +0 -1
- package/dist/types/utils/python-version-utils.d.ts +0 -4
- package/dist/types/utils/python-version-utils.d.ts.map +0 -1
- package/dist/types/version.d.ts +0 -2
- package/dist/types/version.d.ts.map +0 -1
- package/dist/types/watcher.d.ts +0 -42
- package/dist/types/watcher.d.ts.map +0 -1
- package/dist/types/workbench.d.ts +0 -2
- package/dist/types/workbench.d.ts.map +0 -1
- /package/dist/{cjs/cloud → cloud}/build/builders/node/router-template.ts +0 -0
- /package/dist/{cjs/cloud → cloud}/build/builders/python/router_template.py +0 -0
- /package/dist/{cjs/create → create}/templates/hello/README.md.txt +0 -0
- /package/dist/{cjs/create → create}/templates/hello/motia-workbench.json +0 -0
- /package/dist/{cjs/create → create}/templates/hello/steps/hello/hello-api.step.ts.txt +0 -0
- /package/dist/{cjs/create → create}/templates/hello/steps/hello/process-greeting.step.ts.txt +0 -0
- /package/dist/{cjs/create → create}/templates/hello_js/README.md.txt +0 -0
- /package/dist/{cjs/create → create}/templates/hello_js/motia-workbench.json +0 -0
- /package/dist/{cjs/create → create}/templates/hello_js/steps/hello/hello-api.step.js.txt +0 -0
- /package/dist/{cjs/create → create}/templates/hello_js/steps/hello/process-greeting.step.js.txt +0 -0
- /package/dist/{cjs/create → create}/templates/hello_python/README.md.txt +0 -0
- /package/dist/{cjs/create → create}/templates/hello_python/motia-workbench.json +0 -0
- /package/dist/{cjs/create → create}/templates/hello_python/requirements.txt +0 -0
- /package/dist/{cjs/create → create}/templates/hello_python/steps/hello/hello_api_step.py.txt +0 -0
- /package/dist/{cjs/create → create}/templates/hello_python/steps/hello/process_greeting_step.py.txt +0 -0
- /package/dist/{cjs/create → create}/templates/index.ts +0 -0
- /package/dist/{cjs/create → create}/templates/nodejs/README.md.txt +0 -0
- /package/dist/{cjs/create → create}/templates/nodejs/motia-workbench.json +0 -0
- /package/dist/{cjs/create → create}/templates/nodejs/src/services/pet-store.ts.txt +0 -0
- /package/dist/{cjs/create → create}/templates/nodejs/src/services/types.ts.txt +0 -0
- /package/dist/{cjs/create → create}/templates/nodejs/steps/petstore/api.step.ts.txt +0 -0
- /package/dist/{cjs/create → create}/templates/nodejs/steps/petstore/process-food-order.step.ts.txt +0 -0
- /package/dist/{cjs/create → create}/templates/nodejs/steps/petstore/state-audit-cron.step.ts.txt +0 -0
- /package/dist/{cjs/create → create}/templates/nodejs/tutorial/petstore/api.step.ts-features.json.txt +0 -0
- /package/dist/{cjs/create → create}/templates/nodejs/tutorial/petstore/process-food-order.step.ts-features.json.txt +0 -0
- /package/dist/{cjs/create → create}/templates/nodejs/tutorial/petstore/state-audit-cron.step.ts-features.json.txt +0 -0
- /package/dist/{cjs/create → create}/templates/nodejs/tutorial/tutorial.tsx.txt +0 -0
- /package/dist/{cjs/create → create}/templates/plugin/.gitignore.txt +0 -0
- /package/dist/{cjs/create → create}/templates/plugin/README.md.txt +0 -0
- /package/dist/{cjs/create → create}/templates/plugin/package.json.txt +0 -0
- /package/dist/{cjs/create → create}/templates/plugin/postcss.config.js.txt +0 -0
- /package/dist/{cjs/create → create}/templates/plugin/src/components/example-page.tsx.txt +0 -0
- /package/dist/{cjs/create → create}/templates/plugin/src/index.ts.txt +0 -0
- /package/dist/{cjs/create → create}/templates/plugin/src/plugin.ts.txt +0 -0
- /package/dist/{cjs/create → create}/templates/plugin/src/styles.css.txt +0 -0
- /package/dist/{cjs/create → create}/templates/plugin/tsconfig.json.txt +0 -0
- /package/dist/{cjs/create → create}/templates/plugin/vite.config.ts.txt +0 -0
- /package/dist/{cjs/create → create}/templates/python/README.md.txt +0 -0
- /package/dist/{cjs/create → create}/templates/python/motia-workbench.json +0 -0
- /package/dist/{cjs/create → create}/templates/python/requirements.txt +0 -0
- /package/dist/{cjs/create → create}/templates/python/src/__init__.py.txt +0 -0
- /package/dist/{cjs/create → create}/templates/python/src/services/__init__.py.txt +0 -0
- /package/dist/{cjs/create → create}/templates/python/src/services/pet_store.py.txt +0 -0
- /package/dist/{cjs/create → create}/templates/python/src/services/types.py.txt +0 -0
- /package/dist/{cjs/create → create}/templates/python/steps/petstore/api_step.py.txt +0 -0
- /package/dist/{cjs/create → create}/templates/python/steps/petstore/notification_step.py.txt +0 -0
- /package/dist/{cjs/create → create}/templates/python/steps/petstore/process_food_order_step.py.txt +0 -0
- /package/dist/{cjs/create → create}/templates/python/steps/petstore/state_audit_cron_step.py.txt +0 -0
- /package/dist/{cjs/create → create}/templates/python/tutorial/petstore/api_step.py-features.json.txt +0 -0
- /package/dist/{cjs/create → create}/templates/python/tutorial/petstore/process_food_order_step.py-features.json.txt +0 -0
- /package/dist/{cjs/create → create}/templates/python/tutorial/petstore/state_audit_cron_step.py-features.json.txt +0 -0
- /package/dist/{cjs/create → create}/templates/python/tutorial/tutorial.tsx.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/api/template.javascript.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/api/template.python.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/api/template.ruby.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/api/template.typescript.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/cron/template.javascript.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/cron/template.python.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/cron/template.ruby.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/cron/template.type.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/cron/template.typescript.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/event/template.javascript.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/event/template.python.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/event/template.ruby.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/event/template.typescript.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/noop/template.javascript.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/noop/template.python.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/noop/template.ruby.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/noop/template.typescript.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/ui/api.step.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/ui/cron.step.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/ui/event.step.txt +0 -0
- /package/dist/{cjs/create-step → create-step}/templates/ui/noop.step.txt +0 -0
- /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.claude/agents/motia-developer.md +0 -0
- /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/architecture/architecture.mdc +0 -0
- /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/architecture/error-handling.mdc +0 -0
- /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/index.mdc +0 -0
- /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/rules/motia/api-steps.mdc +0 -0
- /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/rules/motia/cron-steps.mdc +0 -0
- /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/rules/motia/event-steps.mdc +0 -0
- /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/rules/motia/middlewares.mdc +0 -0
- /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/rules/motia/motia-config.mdc +0 -0
- /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/rules/motia/realtime-streaming.mdc +0 -0
- /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/rules/motia/state-management.mdc +0 -0
- /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/rules/motia/ui-steps.mdc +0 -0
- /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/.cursor/rules/motia/virtual-steps.mdc +0 -0
- /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/AGENTS.md +0 -0
- /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/CLAUDE.md +0 -0
- /package/dist/{cjs/cursor-rules → cursor-rules}/dot-files/opencode.json +0 -0
- /package/dist/{cjs/docker → docker}/templates/.dockerignore.sample +0 -0
- /package/dist/{cjs/docker → docker}/templates/MotiaDockerSample +0 -0
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { activatePythonVenv, getSitePackagesPath } from "../../../../utils/activate-python-env.mjs";
|
|
2
|
+
import { distDir } from "../../../new-deployment/constants.mjs";
|
|
3
|
+
import { Archiver } from "../archiver.mjs";
|
|
4
|
+
import { includeStaticFiles } from "../include-static-files.mjs";
|
|
5
|
+
import { extractPythonData } from "./python-data/extract-python-data.mjs";
|
|
6
|
+
import { readRequirements } from "./python-data/read-requirements.mjs";
|
|
7
|
+
import { resolveDepNames } from "./python-data/resolve-dep-names.mjs";
|
|
8
|
+
import { UvPackager } from "./uv-packager.mjs";
|
|
9
|
+
import fs from "fs";
|
|
10
|
+
import path from "path";
|
|
11
|
+
import { fileURLToPath } from "url";
|
|
12
|
+
|
|
13
|
+
//#region src/cloud/build/builders/python/index.ts
|
|
14
|
+
var PythonBuilder = class {
|
|
15
|
+
constructor(builder, listener) {
|
|
16
|
+
this.builder = builder;
|
|
17
|
+
this.listener = listener;
|
|
18
|
+
activatePythonVenv({ baseDir: this.builder.projectDir });
|
|
19
|
+
this.packager = new UvPackager();
|
|
20
|
+
}
|
|
21
|
+
async buildApiSteps(steps) {
|
|
22
|
+
const zipName = "router-python.zip";
|
|
23
|
+
const archive = new Archiver(path.join(distDir, zipName));
|
|
24
|
+
const bundleDir = path.join(distDir, "python", "router");
|
|
25
|
+
try {
|
|
26
|
+
fs.mkdirSync(bundleDir, { recursive: true });
|
|
27
|
+
const routerTemplate = this.createRouterTemplate(steps);
|
|
28
|
+
archive.append(routerTemplate, "router.py");
|
|
29
|
+
await this.generatePackage(bundleDir, "router.py", archive, routerTemplate);
|
|
30
|
+
includeStaticFiles(steps, this.builder, archive);
|
|
31
|
+
const { compressedSize, uncompressedSize } = await archive.finalize();
|
|
32
|
+
return {
|
|
33
|
+
compressedSize,
|
|
34
|
+
uncompressedSize,
|
|
35
|
+
path: zipName
|
|
36
|
+
};
|
|
37
|
+
} catch (error) {
|
|
38
|
+
throw new Error(`Failed to build Python API router: ${error}`);
|
|
39
|
+
} finally {
|
|
40
|
+
this.cleanup(bundleDir);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
async build(step) {
|
|
44
|
+
const entrypointPath = step.filePath.replace(this.builder.projectDir, "");
|
|
45
|
+
const bundlePath = path.join("python", entrypointPath.replace(/(.*)\.py$/, "$1.zip"));
|
|
46
|
+
const bundleDir = path.join(distDir, "python", entrypointPath.replace(/(.*)\.py$/, "$1"));
|
|
47
|
+
const outfile = path.join(distDir, bundlePath);
|
|
48
|
+
this.builder.registerStep({
|
|
49
|
+
entrypointPath,
|
|
50
|
+
bundlePath,
|
|
51
|
+
step,
|
|
52
|
+
type: "python"
|
|
53
|
+
});
|
|
54
|
+
this.listener.onBuildStart(step);
|
|
55
|
+
try {
|
|
56
|
+
fs.mkdirSync(path.dirname(outfile), { recursive: true });
|
|
57
|
+
fs.mkdirSync(bundleDir, { recursive: true });
|
|
58
|
+
const archive = new Archiver(outfile);
|
|
59
|
+
await this.generatePackage(bundleDir, entrypointPath, archive);
|
|
60
|
+
includeStaticFiles([step], this.builder, archive);
|
|
61
|
+
const { compressedSize, uncompressedSize } = await archive.finalize();
|
|
62
|
+
this.builder.recordStepSize(step, compressedSize, uncompressedSize);
|
|
63
|
+
this.listener.onBuildEnd(step, compressedSize);
|
|
64
|
+
} catch (err) {
|
|
65
|
+
this.listener.onBuildError(step, err);
|
|
66
|
+
throw err;
|
|
67
|
+
} finally {
|
|
68
|
+
this.cleanup(bundleDir);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
async generatePackage(bundleDir, entrypointPath, archive, fileContent) {
|
|
72
|
+
const requirements = readRequirements(path.join(this.builder.projectDir, "requirements.txt"));
|
|
73
|
+
const sitePackagesPath = getSitePackagesPath({ baseDir: this.builder.projectDir });
|
|
74
|
+
const dependenciesMap = resolveDepNames(Object.keys(requirements), sitePackagesPath);
|
|
75
|
+
const { externalDependencies, files } = extractPythonData(this.builder.projectDir, entrypointPath, dependenciesMap, fileContent);
|
|
76
|
+
for (const file of files) {
|
|
77
|
+
fs.mkdirSync(path.dirname(path.join(bundleDir, file)), { recursive: true });
|
|
78
|
+
if (fileContent && file === entrypointPath) fs.writeFileSync(path.join(bundleDir, file), fileContent);
|
|
79
|
+
else fs.copyFileSync(path.join(this.builder.projectDir, file), path.join(bundleDir, file));
|
|
80
|
+
}
|
|
81
|
+
if (Object.values(externalDependencies).length > 0) {
|
|
82
|
+
const requirementsContent = Object.values(externalDependencies).map((dependency) => requirements[dependency]).join("\n");
|
|
83
|
+
fs.writeFileSync(path.join(bundleDir, "requirements.txt"), requirementsContent);
|
|
84
|
+
await this.packager.packageDependencies(bundleDir);
|
|
85
|
+
}
|
|
86
|
+
archive.appendDirectory(bundleDir, "/");
|
|
87
|
+
}
|
|
88
|
+
cleanup(bundleDir) {
|
|
89
|
+
if (bundleDir && fs.existsSync(bundleDir)) try {
|
|
90
|
+
fs.rmSync(bundleDir, {
|
|
91
|
+
recursive: true,
|
|
92
|
+
force: true
|
|
93
|
+
});
|
|
94
|
+
} catch (_error) {}
|
|
95
|
+
}
|
|
96
|
+
createRouterTemplate(steps) {
|
|
97
|
+
const imports = steps.map((step, index) => `from ${this.getModuleName(step)} import handler as route${index}_handler, config as route${index}_config`).join("\n");
|
|
98
|
+
const routerPaths = steps.map((step, index) => {
|
|
99
|
+
return ` '${step.config.method.toUpperCase()} ${step.config.path}': RouterPath('${step.config.name}', '${step.config.method.toLowerCase()}', route${index}_handler, route${index}_config)`;
|
|
100
|
+
}).join(",\n");
|
|
101
|
+
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
102
|
+
return fs.readFileSync(path.join(__dirname, "router_template.py"), "utf-8").replace("# {{imports}}", imports).replace(" # {{router paths}}", routerPaths);
|
|
103
|
+
}
|
|
104
|
+
getModuleName(step) {
|
|
105
|
+
return step.filePath.replace(this.builder.projectDir, "").substring(1).replace(/\.py$/, "").replace(/[\\/]/g, ".");
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
|
|
109
|
+
//#endregion
|
|
110
|
+
export { PythonBuilder };
|
|
111
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["builder: Builder","listener: BuildListener"],"sources":["../../../../../src/cloud/build/builders/python/index.ts"],"sourcesContent":["import type { ApiRouteConfig, Step } from '@motiadev/core'\nimport fs from 'fs'\nimport path from 'path'\nimport { fileURLToPath } from 'url'\nimport { activatePythonVenv, getSitePackagesPath } from '../../../../utils/activate-python-env'\nimport { distDir } from '../../../new-deployment/constants'\nimport type { BuildListener } from '../../../new-deployment/listeners/listener.types'\nimport type { Builder, RouterBuildResult, StepBuilder } from '../../builder'\nimport { Archiver } from '../archiver'\nimport { includeStaticFiles } from '../include-static-files'\nimport { extractPythonData } from './python-data/extract-python-data'\nimport { readRequirements } from './python-data/read-requirements'\nimport { resolveDepNames } from './python-data/resolve-dep-names'\nimport { UvPackager } from './uv-packager'\n\nexport class PythonBuilder implements StepBuilder {\n private packager: UvPackager\n\n constructor(\n private readonly builder: Builder,\n private readonly listener: BuildListener,\n ) {\n activatePythonVenv({ baseDir: this.builder.projectDir })\n this.packager = new UvPackager()\n }\n\n async buildApiSteps(steps: Step<ApiRouteConfig>[]): Promise<RouterBuildResult> {\n const zipName = 'router-python.zip'\n const archive = new Archiver(path.join(distDir, zipName))\n const bundleDir = path.join(distDir, 'python', 'router')\n\n try {\n fs.mkdirSync(bundleDir, { recursive: true })\n\n const routerTemplate = this.createRouterTemplate(steps)\n archive.append(routerTemplate, 'router.py')\n\n await this.generatePackage(bundleDir, 'router.py', archive, routerTemplate)\n\n includeStaticFiles(steps, this.builder, archive)\n\n const { compressedSize, uncompressedSize } = await archive.finalize()\n\n return { compressedSize, uncompressedSize, path: zipName }\n } catch (error) {\n throw new Error(`Failed to build Python API router: ${error}`)\n } finally {\n this.cleanup(bundleDir)\n }\n }\n\n async build(step: Step): Promise<void> {\n const entrypointPath = step.filePath.replace(this.builder.projectDir, '')\n const bundlePath = path.join('python', entrypointPath.replace(/(.*)\\.py$/, '$1.zip'))\n const bundleDir = path.join(distDir, 'python', entrypointPath.replace(/(.*)\\.py$/, '$1'))\n const outfile = path.join(distDir, bundlePath)\n\n this.builder.registerStep({ entrypointPath, bundlePath, step, type: 'python' })\n this.listener.onBuildStart(step)\n\n try {\n fs.mkdirSync(path.dirname(outfile), { recursive: true })\n fs.mkdirSync(bundleDir, { recursive: true })\n const archive = new Archiver(outfile)\n\n await this.generatePackage(bundleDir, entrypointPath, archive)\n\n // Include static files\n includeStaticFiles([step], this.builder, archive)\n\n const { compressedSize, uncompressedSize } = await archive.finalize()\n this.builder.recordStepSize(step, compressedSize, uncompressedSize)\n this.listener.onBuildEnd(step, compressedSize)\n } catch (err) {\n this.listener.onBuildError(step, err as Error)\n throw err\n } finally {\n this.cleanup(bundleDir)\n }\n }\n\n private async generatePackage(bundleDir: string, entrypointPath: string, archive: Archiver, fileContent?: string) {\n const requirementsFile = path.join(this.builder.projectDir, 'requirements.txt')\n const requirements = readRequirements(requirementsFile)\n const sitePackagesPath = getSitePackagesPath({ baseDir: this.builder.projectDir })\n const dependenciesMap = resolveDepNames(Object.keys(requirements), sitePackagesPath)\n\n const { externalDependencies, files } = extractPythonData(\n this.builder.projectDir,\n entrypointPath,\n dependenciesMap,\n fileContent,\n )\n\n // move files\n for (const file of files) {\n fs.mkdirSync(path.dirname(path.join(bundleDir, file)), { recursive: true })\n\n if (fileContent && file === entrypointPath) {\n fs.writeFileSync(path.join(bundleDir, file), fileContent)\n } else {\n fs.copyFileSync(path.join(this.builder.projectDir, file), path.join(bundleDir, file))\n }\n }\n\n const dependencies = Object.values(externalDependencies)\n\n if (dependencies.length > 0) {\n // create requirements.txt\n const requirementsContent = Object.values(externalDependencies)\n .map((dependency) => requirements[dependency])\n .join('\\n')\n\n fs.writeFileSync(path.join(bundleDir, 'requirements.txt'), requirementsContent)\n await this.packager.packageDependencies(bundleDir)\n }\n\n // zip entire folder\n archive.appendDirectory(bundleDir, '/')\n }\n\n private cleanup(bundleDir: string): void {\n if (bundleDir && fs.existsSync(bundleDir)) {\n try {\n fs.rmSync(bundleDir, { recursive: true, force: true })\n } catch (_error) {\n // Ignore cleanup errors\n }\n }\n }\n\n private createRouterTemplate(steps: Step<ApiRouteConfig>[]): string {\n const imports = steps\n .map(\n (step, index) =>\n `from ${this.getModuleName(step)} import handler as route${index}_handler, config as route${index}_config`,\n )\n .join('\\n')\n\n const routerPaths = steps\n .map((step, index) => {\n const method = step.config.method.toUpperCase()\n const path = step.config.path\n return ` '${method} ${path}': RouterPath('${step.config.name}', '${step.config.method.toLowerCase()}', route${index}_handler, route${index}_config)`\n })\n .join(',\\n')\n\n const __dirname = path.dirname(fileURLToPath(import.meta.url))\n\n return fs\n .readFileSync(path.join(__dirname, 'router_template.py'), 'utf-8')\n .replace('# {{imports}}', imports)\n .replace(' # {{router paths}}', routerPaths)\n }\n\n private getModuleName(step: Step): string {\n // return step path\n return step.filePath.replace(this.builder.projectDir, '').substring(1).replace(/\\.py$/, '').replace(/[\\\\/]/g, '.')\n }\n}\n"],"mappings":";;;;;;;;;;;;;AAeA,IAAa,gBAAb,MAAkD;CAGhD,YACE,AAAiBA,SACjB,AAAiBC,UACjB;EAFiB;EACA;AAEjB,qBAAmB,EAAE,SAAS,KAAK,QAAQ,YAAY,CAAC;AACxD,OAAK,WAAW,IAAI,YAAY;;CAGlC,MAAM,cAAc,OAA2D;EAC7E,MAAM,UAAU;EAChB,MAAM,UAAU,IAAI,SAAS,KAAK,KAAK,SAAS,QAAQ,CAAC;EACzD,MAAM,YAAY,KAAK,KAAK,SAAS,UAAU,SAAS;AAExD,MAAI;AACF,MAAG,UAAU,WAAW,EAAE,WAAW,MAAM,CAAC;GAE5C,MAAM,iBAAiB,KAAK,qBAAqB,MAAM;AACvD,WAAQ,OAAO,gBAAgB,YAAY;AAE3C,SAAM,KAAK,gBAAgB,WAAW,aAAa,SAAS,eAAe;AAE3E,sBAAmB,OAAO,KAAK,SAAS,QAAQ;GAEhD,MAAM,EAAE,gBAAgB,qBAAqB,MAAM,QAAQ,UAAU;AAErE,UAAO;IAAE;IAAgB;IAAkB,MAAM;IAAS;WACnD,OAAO;AACd,SAAM,IAAI,MAAM,sCAAsC,QAAQ;YACtD;AACR,QAAK,QAAQ,UAAU;;;CAI3B,MAAM,MAAM,MAA2B;EACrC,MAAM,iBAAiB,KAAK,SAAS,QAAQ,KAAK,QAAQ,YAAY,GAAG;EACzE,MAAM,aAAa,KAAK,KAAK,UAAU,eAAe,QAAQ,aAAa,SAAS,CAAC;EACrF,MAAM,YAAY,KAAK,KAAK,SAAS,UAAU,eAAe,QAAQ,aAAa,KAAK,CAAC;EACzF,MAAM,UAAU,KAAK,KAAK,SAAS,WAAW;AAE9C,OAAK,QAAQ,aAAa;GAAE;GAAgB;GAAY;GAAM,MAAM;GAAU,CAAC;AAC/E,OAAK,SAAS,aAAa,KAAK;AAEhC,MAAI;AACF,MAAG,UAAU,KAAK,QAAQ,QAAQ,EAAE,EAAE,WAAW,MAAM,CAAC;AACxD,MAAG,UAAU,WAAW,EAAE,WAAW,MAAM,CAAC;GAC5C,MAAM,UAAU,IAAI,SAAS,QAAQ;AAErC,SAAM,KAAK,gBAAgB,WAAW,gBAAgB,QAAQ;AAG9D,sBAAmB,CAAC,KAAK,EAAE,KAAK,SAAS,QAAQ;GAEjD,MAAM,EAAE,gBAAgB,qBAAqB,MAAM,QAAQ,UAAU;AACrE,QAAK,QAAQ,eAAe,MAAM,gBAAgB,iBAAiB;AACnE,QAAK,SAAS,WAAW,MAAM,eAAe;WACvC,KAAK;AACZ,QAAK,SAAS,aAAa,MAAM,IAAa;AAC9C,SAAM;YACE;AACR,QAAK,QAAQ,UAAU;;;CAI3B,MAAc,gBAAgB,WAAmB,gBAAwB,SAAmB,aAAsB;EAEhH,MAAM,eAAe,iBADI,KAAK,KAAK,KAAK,QAAQ,YAAY,mBAAmB,CACxB;EACvD,MAAM,mBAAmB,oBAAoB,EAAE,SAAS,KAAK,QAAQ,YAAY,CAAC;EAClF,MAAM,kBAAkB,gBAAgB,OAAO,KAAK,aAAa,EAAE,iBAAiB;EAEpF,MAAM,EAAE,sBAAsB,UAAU,kBACtC,KAAK,QAAQ,YACb,gBACA,iBACA,YACD;AAGD,OAAK,MAAM,QAAQ,OAAO;AACxB,MAAG,UAAU,KAAK,QAAQ,KAAK,KAAK,WAAW,KAAK,CAAC,EAAE,EAAE,WAAW,MAAM,CAAC;AAE3E,OAAI,eAAe,SAAS,eAC1B,IAAG,cAAc,KAAK,KAAK,WAAW,KAAK,EAAE,YAAY;OAEzD,IAAG,aAAa,KAAK,KAAK,KAAK,QAAQ,YAAY,KAAK,EAAE,KAAK,KAAK,WAAW,KAAK,CAAC;;AAMzF,MAFqB,OAAO,OAAO,qBAAqB,CAEvC,SAAS,GAAG;GAE3B,MAAM,sBAAsB,OAAO,OAAO,qBAAqB,CAC5D,KAAK,eAAe,aAAa,YAAY,CAC7C,KAAK,KAAK;AAEb,MAAG,cAAc,KAAK,KAAK,WAAW,mBAAmB,EAAE,oBAAoB;AAC/E,SAAM,KAAK,SAAS,oBAAoB,UAAU;;AAIpD,UAAQ,gBAAgB,WAAW,IAAI;;CAGzC,AAAQ,QAAQ,WAAyB;AACvC,MAAI,aAAa,GAAG,WAAW,UAAU,CACvC,KAAI;AACF,MAAG,OAAO,WAAW;IAAE,WAAW;IAAM,OAAO;IAAM,CAAC;WAC/C,QAAQ;;CAMrB,AAAQ,qBAAqB,OAAuC;EAClE,MAAM,UAAU,MACb,KACE,MAAM,UACL,QAAQ,KAAK,cAAc,KAAK,CAAC,0BAA0B,MAAM,2BAA2B,MAAM,SACrG,CACA,KAAK,KAAK;EAEb,MAAM,cAAc,MACjB,KAAK,MAAM,UAAU;AAGpB,UAAO,QAFQ,KAAK,OAAO,OAAO,aAAa,CAEzB,GADT,KAAK,OAAO,KACK,iBAAiB,KAAK,OAAO,KAAK,MAAM,KAAK,OAAO,OAAO,aAAa,CAAC,UAAU,MAAM,iBAAiB,MAAM;IAC9I,CACD,KAAK,MAAM;EAEd,MAAM,YAAY,KAAK,QAAQ,cAAc,OAAO,KAAK,IAAI,CAAC;AAE9D,SAAO,GACJ,aAAa,KAAK,KAAK,WAAW,qBAAqB,EAAE,QAAQ,CACjE,QAAQ,iBAAiB,QAAQ,CACjC,QAAQ,0BAA0B,YAAY;;CAGnD,AAAQ,cAAc,MAAoB;AAExC,SAAO,KAAK,SAAS,QAAQ,KAAK,QAAQ,YAAY,GAAG,CAAC,UAAU,EAAE,CAAC,QAAQ,SAAS,GAAG,CAAC,QAAQ,UAAU,IAAI"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
//#region src/cloud/build/builders/python/python-data/constants.ts
|
|
2
|
+
const STANDARD_LIB_MODULES = new Set([
|
|
3
|
+
"abc",
|
|
4
|
+
"argparse",
|
|
5
|
+
"array",
|
|
6
|
+
"ast",
|
|
7
|
+
"asyncio",
|
|
8
|
+
"atexit",
|
|
9
|
+
"base64",
|
|
10
|
+
"binascii",
|
|
11
|
+
"bisect",
|
|
12
|
+
"builtins",
|
|
13
|
+
"bz2",
|
|
14
|
+
"calendar",
|
|
15
|
+
"cmath",
|
|
16
|
+
"cmd",
|
|
17
|
+
"code",
|
|
18
|
+
"codecs",
|
|
19
|
+
"collections",
|
|
20
|
+
"contextlib",
|
|
21
|
+
"copy",
|
|
22
|
+
"csv",
|
|
23
|
+
"ctypes",
|
|
24
|
+
"dataclasses",
|
|
25
|
+
"datetime",
|
|
26
|
+
"decimal",
|
|
27
|
+
"difflib",
|
|
28
|
+
"dis",
|
|
29
|
+
"email",
|
|
30
|
+
"enum",
|
|
31
|
+
"errno",
|
|
32
|
+
"fcntl",
|
|
33
|
+
"fileinput",
|
|
34
|
+
"fnmatch",
|
|
35
|
+
"fractions",
|
|
36
|
+
"functools",
|
|
37
|
+
"gc",
|
|
38
|
+
"getopt",
|
|
39
|
+
"getpass",
|
|
40
|
+
"glob",
|
|
41
|
+
"gzip",
|
|
42
|
+
"hashlib",
|
|
43
|
+
"heapq",
|
|
44
|
+
"hmac",
|
|
45
|
+
"html",
|
|
46
|
+
"http",
|
|
47
|
+
"importlib",
|
|
48
|
+
"inspect",
|
|
49
|
+
"io",
|
|
50
|
+
"itertools",
|
|
51
|
+
"json",
|
|
52
|
+
"keyword",
|
|
53
|
+
"locale",
|
|
54
|
+
"logging",
|
|
55
|
+
"lzma",
|
|
56
|
+
"math",
|
|
57
|
+
"mmap",
|
|
58
|
+
"multiprocessing",
|
|
59
|
+
"numbers",
|
|
60
|
+
"operator",
|
|
61
|
+
"os",
|
|
62
|
+
"pathlib",
|
|
63
|
+
"pickle",
|
|
64
|
+
"platform",
|
|
65
|
+
"pprint",
|
|
66
|
+
"profile",
|
|
67
|
+
"queue",
|
|
68
|
+
"random",
|
|
69
|
+
"re",
|
|
70
|
+
"readline",
|
|
71
|
+
"resource",
|
|
72
|
+
"secrets",
|
|
73
|
+
"select",
|
|
74
|
+
"shelve",
|
|
75
|
+
"shlex",
|
|
76
|
+
"shutil",
|
|
77
|
+
"signal",
|
|
78
|
+
"socket",
|
|
79
|
+
"sqlite3",
|
|
80
|
+
"ssl",
|
|
81
|
+
"stat",
|
|
82
|
+
"statistics",
|
|
83
|
+
"string",
|
|
84
|
+
"struct",
|
|
85
|
+
"subprocess",
|
|
86
|
+
"sys",
|
|
87
|
+
"tarfile",
|
|
88
|
+
"tempfile",
|
|
89
|
+
"textwrap",
|
|
90
|
+
"threading",
|
|
91
|
+
"time",
|
|
92
|
+
"timeit",
|
|
93
|
+
"token",
|
|
94
|
+
"tokenize",
|
|
95
|
+
"traceback",
|
|
96
|
+
"types",
|
|
97
|
+
"typing",
|
|
98
|
+
"unittest",
|
|
99
|
+
"urllib",
|
|
100
|
+
"uuid",
|
|
101
|
+
"warnings",
|
|
102
|
+
"weakref",
|
|
103
|
+
"xml",
|
|
104
|
+
"xmlrpc",
|
|
105
|
+
"zipfile",
|
|
106
|
+
"zlib",
|
|
107
|
+
"__future__"
|
|
108
|
+
]);
|
|
109
|
+
|
|
110
|
+
//#endregion
|
|
111
|
+
export { STANDARD_LIB_MODULES };
|
|
112
|
+
//# sourceMappingURL=constants.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.mjs","names":[],"sources":["../../../../../../src/cloud/build/builders/python/python-data/constants.ts"],"sourcesContent":["export const STANDARD_LIB_MODULES = new Set([\n 'abc',\n 'argparse',\n 'array',\n 'ast',\n 'asyncio',\n 'atexit',\n 'base64',\n 'binascii',\n 'bisect',\n 'builtins',\n 'bz2',\n 'calendar',\n 'cmath',\n 'cmd',\n 'code',\n 'codecs',\n 'collections',\n 'contextlib',\n 'copy',\n 'csv',\n 'ctypes',\n 'dataclasses',\n 'datetime',\n 'decimal',\n 'difflib',\n 'dis',\n 'email',\n 'enum',\n 'errno',\n 'fcntl',\n 'fileinput',\n 'fnmatch',\n 'fractions',\n 'functools',\n 'gc',\n 'getopt',\n 'getpass',\n 'glob',\n 'gzip',\n 'hashlib',\n 'heapq',\n 'hmac',\n 'html',\n 'http',\n 'importlib',\n 'inspect',\n 'io',\n 'itertools',\n 'json',\n 'keyword',\n 'locale',\n 'logging',\n 'lzma',\n 'math',\n 'mmap',\n 'multiprocessing',\n 'numbers',\n 'operator',\n 'os',\n 'pathlib',\n 'pickle',\n 'platform',\n 'pprint',\n 'profile',\n 'queue',\n 'random',\n 're',\n 'readline',\n 'resource',\n 'secrets',\n 'select',\n 'shelve',\n 'shlex',\n 'shutil',\n 'signal',\n 'socket',\n 'sqlite3',\n 'ssl',\n 'stat',\n 'statistics',\n 'string',\n 'struct',\n 'subprocess',\n 'sys',\n 'tarfile',\n 'tempfile',\n 'textwrap',\n 'threading',\n 'time',\n 'timeit',\n 'token',\n 'tokenize',\n 'traceback',\n 'types',\n 'typing',\n 'unittest',\n 'urllib',\n 'uuid',\n 'warnings',\n 'weakref',\n 'xml',\n 'xmlrpc',\n 'zipfile',\n 'zlib',\n '__future__',\n])\n"],"mappings":";AAAA,MAAa,uBAAuB,IAAI,IAAI;CAC1C;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACD,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import path from "path";
|
|
2
|
+
|
|
3
|
+
//#region src/cloud/build/builders/python/python-data/convert-import-path.ts
|
|
4
|
+
const convertImportToPath = (module) => {
|
|
5
|
+
const match = module.match(/^(\.*)(.*)$/);
|
|
6
|
+
if (!match) return module;
|
|
7
|
+
const leadingDots = match[1] || "";
|
|
8
|
+
const rest = match[2] || "";
|
|
9
|
+
const upLevels = leadingDots.length > 1 ? Array.from({ length: leadingDots.length - 1 }).map(() => "..") : [];
|
|
10
|
+
const restParts = rest ? rest.split(".") : [];
|
|
11
|
+
return path.join(...upLevels, ...restParts);
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
//#endregion
|
|
15
|
+
export { convertImportToPath };
|
|
16
|
+
//# sourceMappingURL=convert-import-path.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convert-import-path.mjs","names":[],"sources":["../../../../../../src/cloud/build/builders/python/python-data/convert-import-path.ts"],"sourcesContent":["import path from 'path'\n\nexport const convertImportToPath = (module: string): string => {\n // Match leading dots (may be empty)\n const match = module.match(/^(\\.*)(.*)$/)\n\n if (!match) {\n return module\n }\n\n const leadingDots = match[1] || ''\n const rest = match[2] || ''\n\n // Each leading dot represents going up one level\n // Single dot = current directory, multiple dots = go up levels\n const upLevels = leadingDots.length > 1 ? Array.from({ length: leadingDots.length - 1 }).map(() => '..') : []\n\n // Convert remaining part to path segments\n const restParts = rest ? rest.split('.') : []\n\n // Build full paths\n return path.join(...upLevels, ...restParts)\n}\n"],"mappings":";;;AAEA,MAAa,uBAAuB,WAA2B;CAE7D,MAAM,QAAQ,OAAO,MAAM,cAAc;AAEzC,KAAI,CAAC,MACH,QAAO;CAGT,MAAM,cAAc,MAAM,MAAM;CAChC,MAAM,OAAO,MAAM,MAAM;CAIzB,MAAM,WAAW,YAAY,SAAS,IAAI,MAAM,KAAK,EAAE,QAAQ,YAAY,SAAS,GAAG,CAAC,CAAC,UAAU,KAAK,GAAG,EAAE;CAG7G,MAAM,YAAY,OAAO,KAAK,MAAM,IAAI,GAAG,EAAE;AAG7C,QAAO,KAAK,KAAK,GAAG,UAAU,GAAG,UAAU"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { traverseTree } from "./traverse-tree.mjs";
|
|
2
|
+
|
|
3
|
+
//#region src/cloud/build/builders/python/python-data/extract-python-data.ts
|
|
4
|
+
const extractPythonData = (rootDir, filePath, dependenciesMap, fileContent) => {
|
|
5
|
+
const result = {
|
|
6
|
+
standardLibDependencies: /* @__PURE__ */ new Set(),
|
|
7
|
+
externalDependencies: /* @__PURE__ */ new Set(),
|
|
8
|
+
files: /* @__PURE__ */ new Set()
|
|
9
|
+
};
|
|
10
|
+
traverseTree(rootDir, filePath, result, dependenciesMap, fileContent);
|
|
11
|
+
const resultDependencies = {};
|
|
12
|
+
result.externalDependencies.forEach((dependency) => {
|
|
13
|
+
resultDependencies[dependency] = dependenciesMap[dependency];
|
|
14
|
+
});
|
|
15
|
+
return {
|
|
16
|
+
standardLibDependencies: Array.from(result.standardLibDependencies),
|
|
17
|
+
externalDependencies: resultDependencies,
|
|
18
|
+
files: Array.from(result.files)
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
//#endregion
|
|
23
|
+
export { extractPythonData };
|
|
24
|
+
//# sourceMappingURL=extract-python-data.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extract-python-data.mjs","names":["result: TraverseTreeResult","resultDependencies: Requirements"],"sources":["../../../../../../src/cloud/build/builders/python/python-data/extract-python-data.ts"],"sourcesContent":["import type { Requirements } from './read-requirements'\nimport { type TraverseTreeResult, traverseTree } from './traverse-tree'\n\nexport type PythonResult = {\n standardLibDependencies: string[]\n externalDependencies: Requirements\n files: string[] // relative to rootDir\n}\n\nexport const extractPythonData = (\n rootDir: string,\n filePath: string,\n dependenciesMap: Record<string, string>,\n // optional\n fileContent?: string, // used on files that are not on the file system\n): PythonResult => {\n const result: TraverseTreeResult = {\n standardLibDependencies: new Set(),\n externalDependencies: new Set(),\n files: new Set(),\n }\n\n traverseTree(rootDir, filePath, result, dependenciesMap, fileContent)\n\n const resultDependencies: Requirements = {}\n\n result.externalDependencies.forEach((dependency) => {\n resultDependencies[dependency] = dependenciesMap[dependency]\n })\n\n return {\n standardLibDependencies: Array.from(result.standardLibDependencies),\n externalDependencies: resultDependencies,\n files: Array.from(result.files),\n }\n}\n"],"mappings":";;;AASA,MAAa,qBACX,SACA,UACA,iBAEA,gBACiB;CACjB,MAAMA,SAA6B;EACjC,yCAAyB,IAAI,KAAK;EAClC,sCAAsB,IAAI,KAAK;EAC/B,uBAAO,IAAI,KAAK;EACjB;AAED,cAAa,SAAS,UAAU,QAAQ,iBAAiB,YAAY;CAErE,MAAMC,qBAAmC,EAAE;AAE3C,QAAO,qBAAqB,SAAS,eAAe;AAClD,qBAAmB,cAAc,gBAAgB;GACjD;AAEF,QAAO;EACL,yBAAyB,MAAM,KAAK,OAAO,wBAAwB;EACnE,sBAAsB;EACtB,OAAO,MAAM,KAAK,OAAO,MAAM;EAChC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { STANDARD_LIB_MODULES } from "./constants.mjs";
|
|
2
|
+
import { PythonCompilationError } from "./python-errors.mjs";
|
|
3
|
+
import { CharStreams, CommonTokenStream } from "antlr4ts";
|
|
4
|
+
import { createVisitor } from "python-ast";
|
|
5
|
+
import { Python3Lexer } from "python-ast/dist/parser/Python3Lexer.js";
|
|
6
|
+
import { Python3Parser } from "python-ast/dist/parser/Python3Parser.js";
|
|
7
|
+
|
|
8
|
+
//#region src/cloud/build/builders/python/python-data/get-dependencies-from-file.ts
|
|
9
|
+
function parse(source, sourceName) {
|
|
10
|
+
const parser = new Python3Parser(new CommonTokenStream(new Python3Lexer(CharStreams.fromString(source, sourceName))));
|
|
11
|
+
parser.removeErrorListeners();
|
|
12
|
+
parser.addErrorListener({ syntaxError: (_recognizer, _offendingSymbol, line, charPositionInLine, msg) => {
|
|
13
|
+
throw new PythonCompilationError(sourceName, `${msg} at line ${line}:${charPositionInLine}`);
|
|
14
|
+
} });
|
|
15
|
+
return parser.file_input();
|
|
16
|
+
}
|
|
17
|
+
const getDependenciesFromFile = (content, path, externalDependenciesMap) => {
|
|
18
|
+
const result = parse(content + "\n", path);
|
|
19
|
+
const modulesSet = /* @__PURE__ */ new Set();
|
|
20
|
+
createVisitor({
|
|
21
|
+
visitImport_from: (ctx) => {
|
|
22
|
+
const name = ctx.dotted_name();
|
|
23
|
+
if (name) {
|
|
24
|
+
let dots = ctx.DOT().map((dot) => dot.text).join("");
|
|
25
|
+
const dotsText = ctx.getChild(1)?.text ?? "";
|
|
26
|
+
if (!dots && dotsText[0] === ".") dots = dotsText;
|
|
27
|
+
modulesSet.add(dots.concat(name.text));
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
visitImport_name: (ctx) => {
|
|
31
|
+
const names = ctx.dotted_as_names();
|
|
32
|
+
modulesSet.add(names.dotted_as_name(0)?.getChild(0)?.text ?? names.text);
|
|
33
|
+
}
|
|
34
|
+
}).visit(result);
|
|
35
|
+
const dependencies = {
|
|
36
|
+
standardLibDependencies: /* @__PURE__ */ new Set(),
|
|
37
|
+
externalDependencies: /* @__PURE__ */ new Set(),
|
|
38
|
+
projectDependencies: /* @__PURE__ */ new Set()
|
|
39
|
+
};
|
|
40
|
+
for (const module of modulesSet) {
|
|
41
|
+
const [moduleName] = module.split(".");
|
|
42
|
+
if (module[0] === ".") dependencies.projectDependencies.add(module);
|
|
43
|
+
else if (STANDARD_LIB_MODULES.has(module)) dependencies.standardLibDependencies.add(module);
|
|
44
|
+
else if (externalDependenciesMap[module] || externalDependenciesMap[moduleName]) dependencies.externalDependencies.add(module);
|
|
45
|
+
else dependencies.projectDependencies.add(module);
|
|
46
|
+
}
|
|
47
|
+
return dependencies;
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
//#endregion
|
|
51
|
+
export { getDependenciesFromFile };
|
|
52
|
+
//# sourceMappingURL=get-dependencies-from-file.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-dependencies-from-file.mjs","names":["dependencies: Dependencies"],"sources":["../../../../../../src/cloud/build/builders/python/python-data/get-dependencies-from-file.ts"],"sourcesContent":["import { type ANTLRErrorListener, CharStreams, CommonTokenStream, type Token } from 'antlr4ts'\nimport { createVisitor } from 'python-ast'\nimport { Python3Lexer } from 'python-ast/dist/parser/Python3Lexer.js'\nimport { Python3Parser } from 'python-ast/dist/parser/Python3Parser.js'\nimport { STANDARD_LIB_MODULES } from './constants'\nimport { PythonCompilationError } from './python-errors'\n\nfunction parse(source: string, sourceName: string) {\n const chars = CharStreams.fromString(source, sourceName)\n const lexer = new Python3Lexer(chars)\n const tokens = new CommonTokenStream(lexer)\n const parser = new Python3Parser(tokens)\n\n // Remove default console error listeners\n parser.removeErrorListeners()\n\n const listener: ANTLRErrorListener<Token> = {\n syntaxError: (_recognizer, _offendingSymbol, line, charPositionInLine, msg) => {\n throw new PythonCompilationError(sourceName, `${msg} at line ${line}:${charPositionInLine}`)\n },\n }\n\n // Add your custom one\n parser.addErrorListener(listener)\n\n return parser.file_input()\n}\n\nexport type Dependencies = {\n standardLibDependencies: Set<string>\n externalDependencies: Set<string>\n projectDependencies: Set<string>\n}\n\nexport const getDependenciesFromFile = (\n content: string,\n path: string,\n externalDependenciesMap: Record<string, string>,\n): Dependencies => {\n const result = parse(content + '\\n', path)\n const modulesSet = new Set<string>()\n\n createVisitor({\n visitImport_from: (ctx) => {\n const name = ctx.dotted_name()\n\n if (name) {\n let dots = ctx\n .DOT()\n .map((dot) => dot.text)\n .join('')\n\n const dotsText = ctx.getChild(1)?.text ?? ''\n\n // when ...package the parser doesn't return as ctx.DOT() — we need to handle it manually\n if (!dots && dotsText[0] === '.') {\n dots = dotsText\n }\n\n modulesSet.add(dots.concat(name.text))\n }\n },\n visitImport_name: (ctx) => {\n const names = ctx.dotted_as_names()\n modulesSet.add(names.dotted_as_name(0)?.getChild(0)?.text ?? names.text)\n },\n }).visit(result)\n\n const dependencies: Dependencies = {\n standardLibDependencies: new Set(),\n externalDependencies: new Set(),\n projectDependencies: new Set(),\n }\n\n for (const module of modulesSet) {\n const [moduleName] = module.split('.')\n\n if (module[0] === '.') {\n dependencies.projectDependencies.add(module)\n } else if (STANDARD_LIB_MODULES.has(module)) {\n dependencies.standardLibDependencies.add(module)\n } else if (externalDependenciesMap[module] || externalDependenciesMap[moduleName]) {\n dependencies.externalDependencies.add(module)\n } else {\n dependencies.projectDependencies.add(module)\n }\n }\n\n return dependencies\n}\n"],"mappings":";;;;;;;;AAOA,SAAS,MAAM,QAAgB,YAAoB;CAIjD,MAAM,SAAS,IAAI,cADJ,IAAI,kBADL,IAAI,aADJ,YAAY,WAAW,QAAQ,WAAW,CACnB,CACM,CACH;AAGxC,QAAO,sBAAsB;AAS7B,QAAO,iBAPqC,EAC1C,cAAc,aAAa,kBAAkB,MAAM,oBAAoB,QAAQ;AAC7E,QAAM,IAAI,uBAAuB,YAAY,GAAG,IAAI,WAAW,KAAK,GAAG,qBAAqB;IAE/F,CAGgC;AAEjC,QAAO,OAAO,YAAY;;AAS5B,MAAa,2BACX,SACA,MACA,4BACiB;CACjB,MAAM,SAAS,MAAM,UAAU,MAAM,KAAK;CAC1C,MAAM,6BAAa,IAAI,KAAa;AAEpC,eAAc;EACZ,mBAAmB,QAAQ;GACzB,MAAM,OAAO,IAAI,aAAa;AAE9B,OAAI,MAAM;IACR,IAAI,OAAO,IACR,KAAK,CACL,KAAK,QAAQ,IAAI,KAAK,CACtB,KAAK,GAAG;IAEX,MAAM,WAAW,IAAI,SAAS,EAAE,EAAE,QAAQ;AAG1C,QAAI,CAAC,QAAQ,SAAS,OAAO,IAC3B,QAAO;AAGT,eAAW,IAAI,KAAK,OAAO,KAAK,KAAK,CAAC;;;EAG1C,mBAAmB,QAAQ;GACzB,MAAM,QAAQ,IAAI,iBAAiB;AACnC,cAAW,IAAI,MAAM,eAAe,EAAE,EAAE,SAAS,EAAE,EAAE,QAAQ,MAAM,KAAK;;EAE3E,CAAC,CAAC,MAAM,OAAO;CAEhB,MAAMA,eAA6B;EACjC,yCAAyB,IAAI,KAAK;EAClC,sCAAsB,IAAI,KAAK;EAC/B,qCAAqB,IAAI,KAAK;EAC/B;AAED,MAAK,MAAM,UAAU,YAAY;EAC/B,MAAM,CAAC,cAAc,OAAO,MAAM,IAAI;AAEtC,MAAI,OAAO,OAAO,IAChB,cAAa,oBAAoB,IAAI,OAAO;WACnC,qBAAqB,IAAI,OAAO,CACzC,cAAa,wBAAwB,IAAI,OAAO;WACvC,wBAAwB,WAAW,wBAAwB,YACpE,cAAa,qBAAqB,IAAI,OAAO;MAE7C,cAAa,oBAAoB,IAAI,OAAO;;AAIhD,QAAO"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
//#region src/cloud/build/builders/python/python-data/python-errors.ts
|
|
2
|
+
var PythonError = class extends Error {
|
|
3
|
+
constructor(message, filePath) {
|
|
4
|
+
super(message);
|
|
5
|
+
this.filePath = filePath;
|
|
6
|
+
}
|
|
7
|
+
};
|
|
8
|
+
var PythonFileNotFoundError = class extends PythonError {
|
|
9
|
+
constructor(filePath) {
|
|
10
|
+
super(`File not found: ${filePath}`, filePath);
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
var PythonImportNotFoundError = class extends PythonError {
|
|
14
|
+
constructor(filePath, importName) {
|
|
15
|
+
super(`Import not found: ${importName} in ${filePath}`, filePath);
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
var PythonCompilationError = class extends PythonError {
|
|
19
|
+
constructor(filePath, errorMessage) {
|
|
20
|
+
super(`Compilation error: ${errorMessage} in ${filePath}`, filePath);
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
//#endregion
|
|
25
|
+
export { PythonCompilationError, PythonError, PythonFileNotFoundError, PythonImportNotFoundError };
|
|
26
|
+
//# sourceMappingURL=python-errors.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"python-errors.mjs","names":[],"sources":["../../../../../../src/cloud/build/builders/python/python-data/python-errors.ts"],"sourcesContent":["export class PythonError extends Error {\n filePath: string\n\n constructor(message: string, filePath: string) {\n super(message)\n this.filePath = filePath\n }\n}\n\nexport class PythonFileNotFoundError extends PythonError {\n constructor(filePath: string) {\n super(`File not found: ${filePath}`, filePath)\n }\n}\n\nexport class PythonImportNotFoundError extends PythonError {\n constructor(filePath: string, importName: string) {\n super(`Import not found: ${importName} in ${filePath}`, filePath)\n }\n}\n\nexport class PythonCompilationError extends PythonError {\n constructor(filePath: string, errorMessage: string) {\n super(`Compilation error: ${errorMessage} in ${filePath}`, filePath)\n }\n}\n"],"mappings":";AAAA,IAAa,cAAb,cAAiC,MAAM;CAGrC,YAAY,SAAiB,UAAkB;AAC7C,QAAM,QAAQ;AACd,OAAK,WAAW;;;AAIpB,IAAa,0BAAb,cAA6C,YAAY;CACvD,YAAY,UAAkB;AAC5B,QAAM,mBAAmB,YAAY,SAAS;;;AAIlD,IAAa,4BAAb,cAA+C,YAAY;CACzD,YAAY,UAAkB,YAAoB;AAChD,QAAM,qBAAqB,WAAW,MAAM,YAAY,SAAS;;;AAIrE,IAAa,yBAAb,cAA4C,YAAY;CACtD,YAAY,UAAkB,cAAsB;AAClD,QAAM,sBAAsB,aAAa,MAAM,YAAY,SAAS"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import fs from "fs";
|
|
2
|
+
|
|
3
|
+
//#region src/cloud/build/builders/python/python-data/read-requirements.ts
|
|
4
|
+
/**
|
|
5
|
+
* Read the requirements.txt file and return a set of dependencies
|
|
6
|
+
* @param filePath
|
|
7
|
+
* @returns set of all dependencies names
|
|
8
|
+
*/
|
|
9
|
+
const readRequirements = (filePath) => {
|
|
10
|
+
const lines = fs.readFileSync(filePath, "utf8").split("\n");
|
|
11
|
+
const requirements = {};
|
|
12
|
+
for (const line of lines) {
|
|
13
|
+
const trimmedLine = line.trim();
|
|
14
|
+
if (!trimmedLine || trimmedLine.startsWith("#")) continue;
|
|
15
|
+
const packageMatch = trimmedLine.match(/^([a-zA-Z0-9_-]+)/);
|
|
16
|
+
if (packageMatch) {
|
|
17
|
+
const packageName = packageMatch[1];
|
|
18
|
+
requirements[packageName] = trimmedLine;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
return requirements;
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
//#endregion
|
|
25
|
+
export { readRequirements };
|
|
26
|
+
//# sourceMappingURL=read-requirements.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read-requirements.mjs","names":["requirements: Requirements"],"sources":["../../../../../../src/cloud/build/builders/python/python-data/read-requirements.ts"],"sourcesContent":["import fs from 'fs'\n\n/**\n * { libraryName: lineFromRequirementsFile }\n *\n * Example:\n * { scikit-learn: 'scikit-learn==1.0.2' }\n */\nexport type Requirements = Record<string, string>\n\n/**\n * Read the requirements.txt file and return a set of dependencies\n * @param filePath\n * @returns set of all dependencies names\n */\nexport const readRequirements = (filePath: string): Requirements => {\n const content = fs.readFileSync(filePath, 'utf8')\n\n const lines = content.split('\\n')\n const requirements: Requirements = {}\n\n for (const line of lines) {\n const trimmedLine = line.trim()\n\n // Skip empty lines and comments\n if (!trimmedLine || trimmedLine.startsWith('#')) {\n continue\n }\n\n // Extract package name (everything before version specifiers)\n const packageMatch = trimmedLine.match(/^([a-zA-Z0-9_-]+)/)\n\n if (packageMatch) {\n const packageName = packageMatch[1]\n requirements[packageName] = trimmedLine\n }\n }\n\n return requirements\n}\n"],"mappings":";;;;;;;;AAeA,MAAa,oBAAoB,aAAmC;CAGlE,MAAM,QAFU,GAAG,aAAa,UAAU,OAAO,CAE3B,MAAM,KAAK;CACjC,MAAMA,eAA6B,EAAE;AAErC,MAAK,MAAM,QAAQ,OAAO;EACxB,MAAM,cAAc,KAAK,MAAM;AAG/B,MAAI,CAAC,eAAe,YAAY,WAAW,IAAI,CAC7C;EAIF,MAAM,eAAe,YAAY,MAAM,oBAAoB;AAE3D,MAAI,cAAc;GAChB,MAAM,cAAc,aAAa;AACjC,gBAAa,eAAe;;;AAIhC,QAAO"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { PythonError } from "./python-errors.mjs";
|
|
2
|
+
import fs from "fs";
|
|
3
|
+
import path from "path";
|
|
4
|
+
|
|
5
|
+
//#region src/cloud/build/builders/python/python-data/resolve-dep-names.ts
|
|
6
|
+
/**
|
|
7
|
+
* Resolve the name of the import from the name of the package
|
|
8
|
+
* @param depName the package name
|
|
9
|
+
* @returns a map of the import name to the package name
|
|
10
|
+
*/
|
|
11
|
+
const resolveDepNames = (depNames, sitePackagesDir) => {
|
|
12
|
+
const folders = fs.readdirSync(sitePackagesDir).filter((folder) => fs.statSync(path.join(sitePackagesDir, folder)).isDirectory());
|
|
13
|
+
const result = {};
|
|
14
|
+
for (const depName of depNames) {
|
|
15
|
+
const regex = /* @__PURE__ */ new RegExp(`^${depName.replace(/-/g, "[-_]")}-.*\\.dist-info$`);
|
|
16
|
+
const folder = folders.find((folder$1) => regex.test(folder$1));
|
|
17
|
+
if (folder) {
|
|
18
|
+
const topLevelFile = fs.existsSync(path.join(sitePackagesDir, folder, "top_level.txt"));
|
|
19
|
+
const recordFile = fs.existsSync(path.join(sitePackagesDir, folder, "RECORD"));
|
|
20
|
+
if (topLevelFile) {
|
|
21
|
+
const topLevel = fs.readFileSync(path.join(sitePackagesDir, folder, "top_level.txt"), "utf8").trim();
|
|
22
|
+
result[topLevel] = depName;
|
|
23
|
+
} else if (recordFile) {
|
|
24
|
+
const recordLines = fs.readFileSync(path.join(sitePackagesDir, folder, "RECORD"), "utf8").trim().split("\n").filter((line) => line.trim());
|
|
25
|
+
for (const line of recordLines) {
|
|
26
|
+
const match = /^([^/]+)\/__init__\.py,/.exec(line);
|
|
27
|
+
if (match) result[match[1]] = depName;
|
|
28
|
+
}
|
|
29
|
+
} else throw new PythonError(`Could not find dependency name in site-packages: ${depName}`, depName);
|
|
30
|
+
} else throw new PythonError(`Could not find dependency name in site-packages: ${depName}`, depName);
|
|
31
|
+
}
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
//#endregion
|
|
36
|
+
export { resolveDepNames };
|
|
37
|
+
//# sourceMappingURL=resolve-dep-names.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolve-dep-names.mjs","names":["result: Record<string, string>","folder"],"sources":["../../../../../../src/cloud/build/builders/python/python-data/resolve-dep-names.ts"],"sourcesContent":["import fs from 'fs'\nimport path from 'path'\nimport { PythonError } from './python-errors'\n\n/**\n * Resolve the name of the import from the name of the package\n * @param depName the package name\n * @returns a map of the import name to the package name\n */\nexport const resolveDepNames = (depNames: string[], sitePackagesDir: string): Record<string, string> => {\n const folders = fs\n .readdirSync(sitePackagesDir)\n .filter((folder) => fs.statSync(path.join(sitePackagesDir, folder)).isDirectory())\n\n const result: Record<string, string> = {}\n\n for (const depName of depNames) {\n const regex = new RegExp(`^${depName.replace(/-/g, '[-_]')}-.*\\\\.dist-info$`)\n const folder = folders.find((folder) => regex.test(folder))\n\n if (folder) {\n const topLevelFile = fs.existsSync(path.join(sitePackagesDir, folder, 'top_level.txt'))\n const recordFile = fs.existsSync(path.join(sitePackagesDir, folder, 'RECORD'))\n\n if (topLevelFile) {\n const topLevel = fs.readFileSync(path.join(sitePackagesDir, folder, 'top_level.txt'), 'utf8').trim()\n result[topLevel] = depName\n } else if (recordFile) {\n const record = fs.readFileSync(path.join(sitePackagesDir, folder, 'RECORD'), 'utf8').trim()\n\n // Parse RECORD file to find the main module name\n const recordLines = record.split('\\n').filter((line) => line.trim())\n\n for (const line of recordLines) {\n // RECORD format: path/__init__.py,sha256=hash,size\n const match = /^([^/]+)\\/__init__\\.py,/.exec(line)\n\n if (match) {\n result[match[1]] = depName\n }\n }\n } else {\n throw new PythonError(`Could not find dependency name in site-packages: ${depName}`, depName)\n }\n } else {\n throw new PythonError(`Could not find dependency name in site-packages: ${depName}`, depName)\n }\n }\n\n return result\n}\n"],"mappings":";;;;;;;;;;AASA,MAAa,mBAAmB,UAAoB,oBAAoD;CACtG,MAAM,UAAU,GACb,YAAY,gBAAgB,CAC5B,QAAQ,WAAW,GAAG,SAAS,KAAK,KAAK,iBAAiB,OAAO,CAAC,CAAC,aAAa,CAAC;CAEpF,MAAMA,SAAiC,EAAE;AAEzC,MAAK,MAAM,WAAW,UAAU;EAC9B,MAAM,wBAAQ,IAAI,OAAO,IAAI,QAAQ,QAAQ,MAAM,OAAO,CAAC,kBAAkB;EAC7E,MAAM,SAAS,QAAQ,MAAM,aAAW,MAAM,KAAKC,SAAO,CAAC;AAE3D,MAAI,QAAQ;GACV,MAAM,eAAe,GAAG,WAAW,KAAK,KAAK,iBAAiB,QAAQ,gBAAgB,CAAC;GACvF,MAAM,aAAa,GAAG,WAAW,KAAK,KAAK,iBAAiB,QAAQ,SAAS,CAAC;AAE9E,OAAI,cAAc;IAChB,MAAM,WAAW,GAAG,aAAa,KAAK,KAAK,iBAAiB,QAAQ,gBAAgB,EAAE,OAAO,CAAC,MAAM;AACpG,WAAO,YAAY;cACV,YAAY;IAIrB,MAAM,cAHS,GAAG,aAAa,KAAK,KAAK,iBAAiB,QAAQ,SAAS,EAAE,OAAO,CAAC,MAAM,CAGhE,MAAM,KAAK,CAAC,QAAQ,SAAS,KAAK,MAAM,CAAC;AAEpE,SAAK,MAAM,QAAQ,aAAa;KAE9B,MAAM,QAAQ,0BAA0B,KAAK,KAAK;AAElD,SAAI,MACF,QAAO,MAAM,MAAM;;SAIvB,OAAM,IAAI,YAAY,oDAAoD,WAAW,QAAQ;QAG/F,OAAM,IAAI,YAAY,oDAAoD,WAAW,QAAQ;;AAIjG,QAAO"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { convertImportToPath } from "./convert-import-path.mjs";
|
|
2
|
+
import { PythonFileNotFoundError, PythonImportNotFoundError } from "./python-errors.mjs";
|
|
3
|
+
import { getDependenciesFromFile } from "./get-dependencies-from-file.mjs";
|
|
4
|
+
import fs from "fs";
|
|
5
|
+
import path from "path";
|
|
6
|
+
|
|
7
|
+
//#region src/cloud/build/builders/python/python-data/traverse-tree.ts
|
|
8
|
+
const traverseTree = (rootDir, filePath, result, dependenciesMap, fileContent) => {
|
|
9
|
+
const fileAbsolutePath = path.join(rootDir, filePath);
|
|
10
|
+
if (!fileContent && !fs.existsSync(fileAbsolutePath)) throw new PythonFileNotFoundError(filePath);
|
|
11
|
+
const initPath = path.resolve(path.dirname(fileAbsolutePath), "__init__.py");
|
|
12
|
+
if (fs.existsSync(initPath)) result.files.add(initPath.replace(rootDir, ""));
|
|
13
|
+
const dependencies = getDependenciesFromFile(fileContent || fs.readFileSync(fileAbsolutePath, "utf8"), filePath, dependenciesMap);
|
|
14
|
+
result.files.add(filePath);
|
|
15
|
+
dependencies.externalDependencies.forEach((dependency) => {
|
|
16
|
+
result.externalDependencies.add(dependency);
|
|
17
|
+
});
|
|
18
|
+
dependencies.standardLibDependencies.forEach((dependency) => {
|
|
19
|
+
result.standardLibDependencies.add(dependency);
|
|
20
|
+
});
|
|
21
|
+
for (const dependency of dependencies.projectDependencies) {
|
|
22
|
+
const pythonPath = convertImportToPath(dependency);
|
|
23
|
+
const fileFolder = path.dirname(fileAbsolutePath);
|
|
24
|
+
const dependencyPath = path.resolve(fileFolder, `${pythonPath}.py`).replace(rootDir, "");
|
|
25
|
+
if (!result.files.has(dependencyPath)) try {
|
|
26
|
+
traverseTree(rootDir, dependencyPath, result, dependenciesMap);
|
|
27
|
+
} catch (error) {
|
|
28
|
+
if (error instanceof PythonFileNotFoundError) {
|
|
29
|
+
if (dependency[0] !== ".") try {
|
|
30
|
+
return traverseTree(rootDir, path.resolve(rootDir, `${pythonPath}.py`).replace(rootDir, ""), result, dependenciesMap);
|
|
31
|
+
} catch (_error) {}
|
|
32
|
+
throw new PythonImportNotFoundError(filePath, dependency);
|
|
33
|
+
}
|
|
34
|
+
throw error;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
//#endregion
|
|
40
|
+
export { traverseTree };
|
|
41
|
+
//# sourceMappingURL=traverse-tree.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"traverse-tree.mjs","names":[],"sources":["../../../../../../src/cloud/build/builders/python/python-data/traverse-tree.ts"],"sourcesContent":["import fs from 'fs'\nimport path from 'path'\nimport { convertImportToPath } from './convert-import-path'\nimport { getDependenciesFromFile } from './get-dependencies-from-file'\nimport { PythonFileNotFoundError, PythonImportNotFoundError } from './python-errors'\n\nexport type TraverseTreeResult = {\n standardLibDependencies: Set<string>\n externalDependencies: Set<string>\n files: Set<string> // relative to rootDir\n}\n\nexport const traverseTree = (\n rootDir: string,\n filePath: string,\n result: TraverseTreeResult,\n dependenciesMap: Record<string, string>,\n // optional\n fileContent?: string,\n): void => {\n const fileAbsolutePath = path.join(rootDir, filePath)\n\n if (!fileContent && !fs.existsSync(fileAbsolutePath)) {\n throw new PythonFileNotFoundError(filePath)\n }\n\n const initPath = path.resolve(path.dirname(fileAbsolutePath), '__init__.py')\n\n if (fs.existsSync(initPath)) {\n result.files.add(initPath.replace(rootDir, ''))\n }\n\n const content = fileContent || fs.readFileSync(fileAbsolutePath, 'utf8')\n const dependencies = getDependenciesFromFile(content, filePath, dependenciesMap)\n\n result.files.add(filePath)\n\n dependencies.externalDependencies.forEach((dependency) => {\n result.externalDependencies.add(dependency)\n })\n dependencies.standardLibDependencies.forEach((dependency) => {\n result.standardLibDependencies.add(dependency)\n })\n\n for (const dependency of dependencies.projectDependencies) {\n const pythonPath = convertImportToPath(dependency)\n const fileFolder = path.dirname(fileAbsolutePath)\n const dependencyFilePath = path.resolve(fileFolder, `${pythonPath}.py`)\n const dependencyPath = dependencyFilePath.replace(rootDir, '')\n\n if (!result.files.has(dependencyPath)) {\n try {\n traverseTree(rootDir, dependencyPath, result, dependenciesMap)\n } catch (error) {\n if (error instanceof PythonFileNotFoundError) {\n if (dependency[0] !== '.') {\n // try root folder\n try {\n const rootDependencyFilePath = path.resolve(rootDir, `${pythonPath}.py`).replace(rootDir, '')\n return traverseTree(rootDir, rootDependencyFilePath, result, dependenciesMap)\n } catch (_error) {\n // let it throw\n }\n }\n\n throw new PythonImportNotFoundError(filePath, dependency)\n }\n\n throw error\n }\n }\n }\n}\n"],"mappings":";;;;;;;AAYA,MAAa,gBACX,SACA,UACA,QACA,iBAEA,gBACS;CACT,MAAM,mBAAmB,KAAK,KAAK,SAAS,SAAS;AAErD,KAAI,CAAC,eAAe,CAAC,GAAG,WAAW,iBAAiB,CAClD,OAAM,IAAI,wBAAwB,SAAS;CAG7C,MAAM,WAAW,KAAK,QAAQ,KAAK,QAAQ,iBAAiB,EAAE,cAAc;AAE5E,KAAI,GAAG,WAAW,SAAS,CACzB,QAAO,MAAM,IAAI,SAAS,QAAQ,SAAS,GAAG,CAAC;CAIjD,MAAM,eAAe,wBADL,eAAe,GAAG,aAAa,kBAAkB,OAAO,EAClB,UAAU,gBAAgB;AAEhF,QAAO,MAAM,IAAI,SAAS;AAE1B,cAAa,qBAAqB,SAAS,eAAe;AACxD,SAAO,qBAAqB,IAAI,WAAW;GAC3C;AACF,cAAa,wBAAwB,SAAS,eAAe;AAC3D,SAAO,wBAAwB,IAAI,WAAW;GAC9C;AAEF,MAAK,MAAM,cAAc,aAAa,qBAAqB;EACzD,MAAM,aAAa,oBAAoB,WAAW;EAClD,MAAM,aAAa,KAAK,QAAQ,iBAAiB;EAEjD,MAAM,iBADqB,KAAK,QAAQ,YAAY,GAAG,WAAW,KAAK,CAC7B,QAAQ,SAAS,GAAG;AAE9D,MAAI,CAAC,OAAO,MAAM,IAAI,eAAe,CACnC,KAAI;AACF,gBAAa,SAAS,gBAAgB,QAAQ,gBAAgB;WACvD,OAAO;AACd,OAAI,iBAAiB,yBAAyB;AAC5C,QAAI,WAAW,OAAO,IAEpB,KAAI;AAEF,YAAO,aAAa,SADW,KAAK,QAAQ,SAAS,GAAG,WAAW,KAAK,CAAC,QAAQ,SAAS,GAAG,EACxC,QAAQ,gBAAgB;aACtE,QAAQ;AAKnB,UAAM,IAAI,0BAA0B,UAAU,WAAW;;AAG3D,SAAM"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import path from "path";
|
|
2
|
+
import { spawn } from "child_process";
|
|
3
|
+
|
|
4
|
+
//#region src/cloud/build/builders/python/uv-packager.ts
|
|
5
|
+
const defaultUvConfig = {
|
|
6
|
+
pythonVersion: process.env.MOTIA_PYTHON_VERSION || "3.13",
|
|
7
|
+
platform: process.env.MOTIA_PLATFORM || "x86_64-manylinux2014",
|
|
8
|
+
onlyBinary: process.env.MOTIA_ONLY_BINARY !== "false"
|
|
9
|
+
};
|
|
10
|
+
var UvPackager = class {
|
|
11
|
+
constructor(config = defaultUvConfig) {
|
|
12
|
+
this.config = config;
|
|
13
|
+
}
|
|
14
|
+
async packageDependencies(cwd) {
|
|
15
|
+
const args = [
|
|
16
|
+
"pip",
|
|
17
|
+
"install",
|
|
18
|
+
"--target",
|
|
19
|
+
cwd,
|
|
20
|
+
"--requirement",
|
|
21
|
+
path.join(cwd, "requirements.txt"),
|
|
22
|
+
"--python-version",
|
|
23
|
+
this.config.pythonVersion || "3.13",
|
|
24
|
+
"--python-platform",
|
|
25
|
+
this.config.platform || "x86_64-manylinux2014"
|
|
26
|
+
];
|
|
27
|
+
if (this.config.onlyBinary) args.push("--only-binary=:all:");
|
|
28
|
+
await this.runCommand("uv", args, { cwd });
|
|
29
|
+
}
|
|
30
|
+
async runCommand(command, args, options) {
|
|
31
|
+
return new Promise((resolve, reject) => {
|
|
32
|
+
const child = spawn(command, args, {
|
|
33
|
+
cwd: options?.cwd,
|
|
34
|
+
stdio: [
|
|
35
|
+
"pipe",
|
|
36
|
+
"pipe",
|
|
37
|
+
"pipe"
|
|
38
|
+
]
|
|
39
|
+
});
|
|
40
|
+
let stdout = "";
|
|
41
|
+
let stderr = "";
|
|
42
|
+
child.stdout?.on("data", (data) => {
|
|
43
|
+
stdout += data.toString();
|
|
44
|
+
if (options?.showOutput) process.stdout.write(data);
|
|
45
|
+
});
|
|
46
|
+
child.stderr?.on("data", (data) => {
|
|
47
|
+
stderr += data.toString();
|
|
48
|
+
});
|
|
49
|
+
child.on("close", (code) => {
|
|
50
|
+
if (code === 0) resolve(stdout);
|
|
51
|
+
else {
|
|
52
|
+
const errorPrefix = `Command '${command}'`;
|
|
53
|
+
reject(/* @__PURE__ */ new Error(`${errorPrefix} failed: ${stderr || stdout}`));
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
child.on("error", (error) => {
|
|
57
|
+
reject(/* @__PURE__ */ new Error(`Failed to spawn ${command}: ${error.message}`));
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
//#endregion
|
|
64
|
+
export { UvPackager };
|
|
65
|
+
//# sourceMappingURL=uv-packager.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uv-packager.mjs","names":["defaultUvConfig: UvPackageConfig","config: UvPackageConfig"],"sources":["../../../../../src/cloud/build/builders/python/uv-packager.ts"],"sourcesContent":["import { spawn } from 'child_process'\nimport path from 'path'\n\nexport interface UvPackageConfig {\n pythonVersion?: string\n platform?: string\n onlyBinary?: boolean\n}\n\nexport const defaultUvConfig: UvPackageConfig = {\n pythonVersion: process.env.MOTIA_PYTHON_VERSION || '3.13',\n platform: process.env.MOTIA_PLATFORM || 'x86_64-manylinux2014',\n onlyBinary: process.env.MOTIA_ONLY_BINARY !== 'false',\n}\n\nexport class UvPackager {\n constructor(private readonly config: UvPackageConfig = defaultUvConfig) {}\n\n async packageDependencies(cwd: string): Promise<void> {\n const requirementsFile = path.join(cwd, 'requirements.txt')\n const args = [\n 'pip',\n 'install',\n '--target',\n cwd,\n '--requirement',\n requirementsFile,\n '--python-version',\n this.config.pythonVersion || '3.13',\n '--python-platform',\n this.config.platform || 'x86_64-manylinux2014',\n ]\n\n if (this.config.onlyBinary) {\n args.push('--only-binary=:all:')\n }\n\n await this.runCommand('uv', args, { cwd })\n }\n\n private async runCommand(\n command: string,\n args: string[],\n options?: {\n cwd?: string\n showOutput?: boolean\n },\n ): Promise<string> {\n return new Promise((resolve, reject) => {\n const child = spawn(command, args, {\n cwd: options?.cwd,\n stdio: ['pipe', 'pipe', 'pipe'],\n })\n\n let stdout = ''\n let stderr = ''\n\n child.stdout?.on('data', (data) => {\n stdout += data.toString()\n if (options?.showOutput) {\n process.stdout.write(data)\n }\n })\n\n child.stderr?.on('data', (data) => {\n stderr += data.toString()\n })\n\n child.on('close', (code) => {\n if (code === 0) {\n resolve(stdout)\n } else {\n const errorPrefix = `Command '${command}'`\n reject(new Error(`${errorPrefix} failed: ${stderr || stdout}`))\n }\n })\n\n child.on('error', (error) => {\n reject(new Error(`Failed to spawn ${command}: ${error.message}`))\n })\n })\n }\n}\n"],"mappings":";;;;AASA,MAAaA,kBAAmC;CAC9C,eAAe,QAAQ,IAAI,wBAAwB;CACnD,UAAU,QAAQ,IAAI,kBAAkB;CACxC,YAAY,QAAQ,IAAI,sBAAsB;CAC/C;AAED,IAAa,aAAb,MAAwB;CACtB,YAAY,AAAiBC,SAA0B,iBAAiB;EAA3C;;CAE7B,MAAM,oBAAoB,KAA4B;EAEpD,MAAM,OAAO;GACX;GACA;GACA;GACA;GACA;GANuB,KAAK,KAAK,KAAK,mBAAmB;GAQzD;GACA,KAAK,OAAO,iBAAiB;GAC7B;GACA,KAAK,OAAO,YAAY;GACzB;AAED,MAAI,KAAK,OAAO,WACd,MAAK,KAAK,sBAAsB;AAGlC,QAAM,KAAK,WAAW,MAAM,MAAM,EAAE,KAAK,CAAC;;CAG5C,MAAc,WACZ,SACA,MACA,SAIiB;AACjB,SAAO,IAAI,SAAS,SAAS,WAAW;GACtC,MAAM,QAAQ,MAAM,SAAS,MAAM;IACjC,KAAK,SAAS;IACd,OAAO;KAAC;KAAQ;KAAQ;KAAO;IAChC,CAAC;GAEF,IAAI,SAAS;GACb,IAAI,SAAS;AAEb,SAAM,QAAQ,GAAG,SAAS,SAAS;AACjC,cAAU,KAAK,UAAU;AACzB,QAAI,SAAS,WACX,SAAQ,OAAO,MAAM,KAAK;KAE5B;AAEF,SAAM,QAAQ,GAAG,SAAS,SAAS;AACjC,cAAU,KAAK,UAAU;KACzB;AAEF,SAAM,GAAG,UAAU,SAAS;AAC1B,QAAI,SAAS,EACX,SAAQ,OAAO;SACV;KACL,MAAM,cAAc,YAAY,QAAQ;AACxC,4BAAO,IAAI,MAAM,GAAG,YAAY,WAAW,UAAU,SAAS,CAAC;;KAEjE;AAEF,SAAM,GAAG,UAAU,UAAU;AAC3B,2BAAO,IAAI,MAAM,mBAAmB,QAAQ,IAAI,MAAM,UAAU,CAAC;KACjE;IACF"}
|