projen 0.70.2 → 0.70.4
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/.jsii +108 -90
- package/docs/api/API.md +2 -0
- package/lib/.types-compat/ts3.9/lib/_resolve.d.ts +2 -0
- package/lib/.types-compat/ts3.9/lib/awscdk/auto-discover.d.ts +129 -0
- package/lib/.types-compat/ts3.9/lib/awscdk/awscdk-app-java.d.ts +53 -0
- package/lib/.types-compat/ts3.9/lib/awscdk/awscdk-app-py.d.ts +49 -0
- package/lib/.types-compat/ts3.9/lib/awscdk/awscdk-app-ts.d.ts +81 -0
- package/lib/.types-compat/ts3.9/lib/awscdk/awscdk-construct.d.ts +89 -0
- package/lib/.types-compat/ts3.9/lib/awscdk/awscdk-deps-java.d.ts +7 -0
- package/lib/.types-compat/ts3.9/lib/awscdk/awscdk-deps-js.d.ts +7 -0
- package/lib/.types-compat/ts3.9/lib/awscdk/awscdk-deps-py.d.ts +7 -0
- package/lib/.types-compat/ts3.9/lib/awscdk/awscdk-deps.d.ts +168 -0
- package/lib/.types-compat/ts3.9/lib/awscdk/awscdk-pytest-sample.d.ts +5 -0
- package/lib/.types-compat/ts3.9/lib/awscdk/cdk-config.d.ts +122 -0
- package/lib/.types-compat/ts3.9/lib/awscdk/cdk-tasks.d.ts +33 -0
- package/lib/.types-compat/ts3.9/lib/awscdk/index.d.ts +14 -0
- package/lib/.types-compat/ts3.9/lib/awscdk/integration-test.d.ts +46 -0
- package/lib/.types-compat/ts3.9/lib/awscdk/internal.d.ts +20 -0
- package/lib/.types-compat/ts3.9/lib/awscdk/lambda-extension.d.ts +68 -0
- package/lib/.types-compat/ts3.9/lib/awscdk/lambda-function.d.ts +171 -0
- package/lib/.types-compat/ts3.9/lib/build/build-workflow.d.ts +180 -0
- package/lib/.types-compat/ts3.9/lib/build/index.d.ts +1 -0
- package/lib/.types-compat/ts3.9/lib/builtin-example.task.d.ts +0 -0
- package/lib/.types-compat/ts3.9/lib/cdk/auto-discover-base.d.ts +45 -0
- package/lib/.types-compat/ts3.9/lib/cdk/construct-lib.d.ts +38 -0
- package/lib/.types-compat/ts3.9/lib/cdk/consts.d.ts +6 -0
- package/lib/.types-compat/ts3.9/lib/cdk/index.d.ts +5 -0
- package/lib/.types-compat/ts3.9/lib/cdk/integration-test-base.d.ts +53 -0
- package/lib/.types-compat/ts3.9/lib/cdk/internal.d.ts +4 -0
- package/lib/.types-compat/ts3.9/lib/cdk/jsii-docgen.d.ts +20 -0
- package/lib/.types-compat/ts3.9/lib/cdk/jsii-project.d.ts +153 -0
- package/lib/.types-compat/ts3.9/lib/cdk8s/auto-discover.d.ts +33 -0
- package/lib/.types-compat/ts3.9/lib/cdk8s/cdk8s-app-py.d.ts +39 -0
- package/lib/.types-compat/ts3.9/lib/cdk8s/cdk8s-app-ts.d.ts +45 -0
- package/lib/.types-compat/ts3.9/lib/cdk8s/cdk8s-construct.d.ts +71 -0
- package/lib/.types-compat/ts3.9/lib/cdk8s/cdk8s-deps-js.d.ts +4 -0
- package/lib/.types-compat/ts3.9/lib/cdk8s/cdk8s-deps-py.d.ts +4 -0
- package/lib/.types-compat/ts3.9/lib/cdk8s/cdk8s-deps.d.ts +144 -0
- package/lib/.types-compat/ts3.9/lib/cdk8s/index.d.ts +7 -0
- package/lib/.types-compat/ts3.9/lib/cdk8s/integration-test.d.ts +13 -0
- package/lib/.types-compat/ts3.9/lib/cdktf/cdktf-construct.d.ts +26 -0
- package/lib/.types-compat/ts3.9/lib/cdktf/index.d.ts +1 -0
- package/lib/.types-compat/ts3.9/lib/circleci/circleci.d.ts +132 -0
- package/lib/.types-compat/ts3.9/lib/circleci/constant.d.ts +5 -0
- package/lib/.types-compat/ts3.9/lib/circleci/index.d.ts +3 -0
- package/lib/.types-compat/ts3.9/lib/circleci/model.d.ts +260 -0
- package/lib/.types-compat/ts3.9/lib/cleanup.d.ts +2 -0
- package/lib/.types-compat/ts3.9/lib/cli/cmds/new.d.ts +9 -0
- package/lib/.types-compat/ts3.9/lib/cli/index.d.ts +1 -0
- package/lib/.types-compat/ts3.9/lib/cli/macros.d.ts +1 -0
- package/lib/.types-compat/ts3.9/lib/cli/synth.d.ts +19 -0
- package/lib/.types-compat/ts3.9/lib/cli/tasks.d.ts +7 -0
- package/lib/.types-compat/ts3.9/lib/cli/util.d.ts +19 -0
- package/lib/.types-compat/ts3.9/lib/clobber.d.ts +5 -0
- package/lib/.types-compat/ts3.9/lib/common.d.ts +5 -0
- package/lib/.types-compat/ts3.9/lib/component.d.ts +20 -0
- package/lib/.types-compat/ts3.9/lib/dependencies.d.ts +160 -0
- package/lib/.types-compat/ts3.9/lib/dev-env.d.ts +80 -0
- package/lib/.types-compat/ts3.9/lib/docker-compose/docker-compose-network.d.ts +103 -0
- package/lib/.types-compat/ts3.9/lib/docker-compose/docker-compose-port.d.ts +44 -0
- package/lib/.types-compat/ts3.9/lib/docker-compose/docker-compose-render.d.ts +2 -0
- package/lib/.types-compat/ts3.9/lib/docker-compose/docker-compose-service.d.ts +155 -0
- package/lib/.types-compat/ts3.9/lib/docker-compose/docker-compose-volume.d.ts +64 -0
- package/lib/.types-compat/ts3.9/lib/docker-compose/docker-compose.d.ts +99 -0
- package/lib/.types-compat/ts3.9/lib/docker-compose/index.d.ts +5 -0
- package/lib/.types-compat/ts3.9/lib/file.d.ts +119 -0
- package/lib/.types-compat/ts3.9/lib/gitattributes.d.ts +26 -0
- package/lib/.types-compat/ts3.9/lib/github/actions-provider.d.ts +28 -0
- package/lib/.types-compat/ts3.9/lib/github/auto-approve.d.ts +44 -0
- package/lib/.types-compat/ts3.9/lib/github/auto-merge.d.ts +41 -0
- package/lib/.types-compat/ts3.9/lib/github/constants.d.ts +20 -0
- package/lib/.types-compat/ts3.9/lib/github/dependabot.d.ts +247 -0
- package/lib/.types-compat/ts3.9/lib/github/github-credentials.d.ts +58 -0
- package/lib/.types-compat/ts3.9/lib/github/github-project.d.ts +177 -0
- package/lib/.types-compat/ts3.9/lib/github/github.d.ts +110 -0
- package/lib/.types-compat/ts3.9/lib/github/index.d.ts +15 -0
- package/lib/.types-compat/ts3.9/lib/github/mergify.d.ts +81 -0
- package/lib/.types-compat/ts3.9/lib/github/pr-template.d.ts +19 -0
- package/lib/.types-compat/ts3.9/lib/github/pull-request-lint.d.ts +48 -0
- package/lib/.types-compat/ts3.9/lib/github/stale-util.d.ts +8 -0
- package/lib/.types-compat/ts3.9/lib/github/stale.d.ts +85 -0
- package/lib/.types-compat/ts3.9/lib/github/task-workflow.d.ts +119 -0
- package/lib/.types-compat/ts3.9/lib/github/util.d.ts +1 -0
- package/lib/.types-compat/ts3.9/lib/github/workflow-actions.d.ts +78 -0
- package/lib/.types-compat/ts3.9/lib/github/workflows-model.d.ts +1031 -0
- package/lib/.types-compat/ts3.9/lib/github/workflows.d.ts +108 -0
- package/lib/.types-compat/ts3.9/lib/gitlab/configuration-model.d.ts +536 -0
- package/lib/.types-compat/ts3.9/lib/gitlab/configuration.d.ts +170 -0
- package/lib/.types-compat/ts3.9/lib/gitlab/gitlab-configuration.d.ts +19 -0
- package/lib/.types-compat/ts3.9/lib/gitlab/index.d.ts +4 -0
- package/lib/.types-compat/ts3.9/lib/gitlab/nested-configuration.d.ts +11 -0
- package/lib/.types-compat/ts3.9/lib/gitpod.d.ts +301 -0
- package/lib/.types-compat/ts3.9/lib/ignore-file.d.ts +59 -0
- package/lib/.types-compat/ts3.9/lib/index.d.ts +51 -0
- package/lib/.types-compat/ts3.9/lib/ini.d.ts +15 -0
- package/lib/.types-compat/ts3.9/lib/inventory.d.ts +46 -0
- package/lib/.types-compat/ts3.9/lib/java/index.d.ts +7 -0
- package/lib/.types-compat/ts3.9/lib/java/java-project.d.ts +141 -0
- package/lib/.types-compat/ts3.9/lib/java/junit.d.ts +29 -0
- package/lib/.types-compat/ts3.9/lib/java/maven-compile.d.ts +26 -0
- package/lib/.types-compat/ts3.9/lib/java/maven-packaging.d.ts +34 -0
- package/lib/.types-compat/ts3.9/lib/java/maven-sample.d.ts +14 -0
- package/lib/.types-compat/ts3.9/lib/java/pom.d.ts +214 -0
- package/lib/.types-compat/ts3.9/lib/java/projenrc.d.ts +59 -0
- package/lib/.types-compat/ts3.9/lib/javascript/bundler.d.ts +174 -0
- package/lib/.types-compat/ts3.9/lib/javascript/eslint.d.ts +175 -0
- package/lib/.types-compat/ts3.9/lib/javascript/index.d.ts +10 -0
- package/lib/.types-compat/ts3.9/lib/javascript/jest.d.ts +599 -0
- package/lib/.types-compat/ts3.9/lib/javascript/node-package.d.ts +605 -0
- package/lib/.types-compat/ts3.9/lib/javascript/node-project.d.ts +464 -0
- package/lib/.types-compat/ts3.9/lib/javascript/npm-config.d.ts +40 -0
- package/lib/.types-compat/ts3.9/lib/javascript/prettier.d.ts +358 -0
- package/lib/.types-compat/ts3.9/lib/javascript/projenrc.d.ts +18 -0
- package/lib/.types-compat/ts3.9/lib/javascript/render-options.d.ts +88 -0
- package/lib/.types-compat/ts3.9/lib/javascript/typescript-config.d.ts +403 -0
- package/lib/.types-compat/ts3.9/lib/javascript/upgrade-dependencies.d.ts +188 -0
- package/lib/.types-compat/ts3.9/lib/javascript/util.d.ts +21 -0
- package/lib/.types-compat/ts3.9/lib/json-patch.d.ts +75 -0
- package/lib/.types-compat/ts3.9/lib/json.d.ts +27 -0
- package/lib/.types-compat/ts3.9/lib/license.d.ts +31 -0
- package/lib/.types-compat/ts3.9/lib/logger.d.ts +73 -0
- package/lib/.types-compat/ts3.9/lib/logging.d.ts +8 -0
- package/lib/.types-compat/ts3.9/lib/makefile.d.ts +77 -0
- package/lib/.types-compat/ts3.9/lib/object-file.d.ts +155 -0
- package/lib/.types-compat/ts3.9/lib/option-hints.d.ts +18 -0
- package/lib/.types-compat/ts3.9/lib/project-build.d.ts +41 -0
- package/lib/.types-compat/ts3.9/lib/project.d.ts +374 -0
- package/lib/.types-compat/ts3.9/lib/projects.d.ts +63 -0
- package/lib/.types-compat/ts3.9/lib/projenrc-json.d.ts +27 -0
- package/lib/.types-compat/ts3.9/lib/projenrc.d.ts +18 -0
- package/lib/.types-compat/ts3.9/lib/python/index.d.ts +14 -0
- package/lib/.types-compat/ts3.9/lib/python/pip.d.ts +32 -0
- package/lib/.types-compat/ts3.9/lib/python/poetry.d.ts +177 -0
- package/lib/.types-compat/ts3.9/lib/python/projenrc.d.ts +32 -0
- package/lib/.types-compat/ts3.9/lib/python/pytest-sample.d.ts +21 -0
- package/lib/.types-compat/ts3.9/lib/python/pytest.d.ts +24 -0
- package/lib/.types-compat/ts3.9/lib/python/python-deps.d.ts +30 -0
- package/lib/.types-compat/ts3.9/lib/python/python-env.d.ts +6 -0
- package/lib/.types-compat/ts3.9/lib/python/python-packaging.d.ts +62 -0
- package/lib/.types-compat/ts3.9/lib/python/python-project.d.ts +190 -0
- package/lib/.types-compat/ts3.9/lib/python/python-sample.d.ts +17 -0
- package/lib/.types-compat/ts3.9/lib/python/requirements-file.d.ts +29 -0
- package/lib/.types-compat/ts3.9/lib/python/setuppy.d.ts +70 -0
- package/lib/.types-compat/ts3.9/lib/python/setuptools.d.ts +15 -0
- package/lib/.types-compat/ts3.9/lib/python/venv.d.ts +28 -0
- package/lib/.types-compat/ts3.9/lib/readme.d.ts +28 -0
- package/lib/.types-compat/ts3.9/lib/release/bump-version.d.ts +72 -0
- package/lib/.types-compat/ts3.9/lib/release/bump-version.task.d.ts +1 -0
- package/lib/.types-compat/ts3.9/lib/release/index.d.ts +3 -0
- package/lib/.types-compat/ts3.9/lib/release/publisher.d.ts +533 -0
- package/lib/.types-compat/ts3.9/lib/release/release-trigger.d.ts +97 -0
- package/lib/.types-compat/ts3.9/lib/release/release.d.ts +338 -0
- package/lib/.types-compat/ts3.9/lib/release/reset-version.task.d.ts +1 -0
- package/lib/.types-compat/ts3.9/lib/release/tag-version.d.ts +31 -0
- package/lib/.types-compat/ts3.9/lib/release/tag-version.task.d.ts +1 -0
- package/lib/.types-compat/ts3.9/lib/release/update-changelog.d.ts +36 -0
- package/lib/.types-compat/ts3.9/lib/release/update-changelog.task.d.ts +1 -0
- package/lib/.types-compat/ts3.9/lib/renovatebot.d.ts +99 -0
- package/lib/.types-compat/ts3.9/lib/run-projenrc-json.task.d.ts +1 -0
- package/lib/.types-compat/ts3.9/lib/sample-file.d.ts +88 -0
- package/lib/.types-compat/ts3.9/lib/semver.d.ts +34 -0
- package/lib/.types-compat/ts3.9/lib/smithy/smithy-build.d.ts +156 -0
- package/lib/.types-compat/ts3.9/lib/source-code.d.ts +46 -0
- package/lib/.types-compat/ts3.9/lib/task-model.d.ts +130 -0
- package/lib/.types-compat/ts3.9/lib/task-runtime.d.ts +32 -0
- package/lib/.types-compat/ts3.9/lib/task.d.ts +129 -0
- package/lib/.types-compat/ts3.9/lib/tasks.d.ts +51 -0
- package/lib/.types-compat/ts3.9/lib/testing.d.ts +18 -0
- package/lib/.types-compat/ts3.9/lib/textfile.d.ts +33 -0
- package/lib/.types-compat/ts3.9/lib/toml.d.ts +15 -0
- package/lib/.types-compat/ts3.9/lib/typescript/index.d.ts +4 -0
- package/lib/.types-compat/ts3.9/lib/typescript/projenrc-ts.d.ts +43 -0
- package/lib/.types-compat/ts3.9/lib/typescript/projenrc.d.ts +27 -0
- package/lib/.types-compat/ts3.9/lib/typescript/typescript-typedoc.d.ts +7 -0
- package/lib/.types-compat/ts3.9/lib/typescript/typescript.d.ts +163 -0
- package/lib/.types-compat/ts3.9/lib/util/semver.d.ts +43 -0
- package/lib/.types-compat/ts3.9/lib/util/synth.d.ts +42 -0
- package/lib/.types-compat/ts3.9/lib/util.d.ts +131 -0
- package/lib/.types-compat/ts3.9/lib/version.d.ts +45 -0
- package/lib/.types-compat/ts3.9/lib/vscode/devcontainer.d.ts +86 -0
- package/lib/.types-compat/ts3.9/lib/vscode/extensions.d.ts +36 -0
- package/lib/.types-compat/ts3.9/lib/vscode/index.d.ts +5 -0
- package/lib/.types-compat/ts3.9/lib/vscode/launch-config.d.ts +90 -0
- package/lib/.types-compat/ts3.9/lib/vscode/settings.d.ts +24 -0
- package/lib/.types-compat/ts3.9/lib/vscode/vscode.d.ts +14 -0
- package/lib/.types-compat/ts3.9/lib/web/index.d.ts +4 -0
- package/lib/.types-compat/ts3.9/lib/web/next.d.ts +100 -0
- package/lib/.types-compat/ts3.9/lib/web/postcss.d.ts +28 -0
- package/lib/.types-compat/ts3.9/lib/web/react.d.ts +105 -0
- package/lib/.types-compat/ts3.9/lib/web/tailwind.d.ts +21 -0
- package/lib/.types-compat/ts3.9/lib/xmlfile.d.ts +18 -0
- package/lib/.types-compat/ts3.9/lib/yaml.d.ts +25 -0
- package/lib/awscdk/auto-discover.js +5 -5
- package/lib/awscdk/awscdk-app-java.js +1 -1
- package/lib/awscdk/awscdk-app-py.js +1 -1
- package/lib/awscdk/awscdk-app-ts.js +1 -1
- package/lib/awscdk/awscdk-construct.js +2 -2
- package/lib/awscdk/awscdk-deps-java.js +1 -1
- package/lib/awscdk/awscdk-deps-js.js +1 -1
- package/lib/awscdk/awscdk-deps-py.js +1 -1
- package/lib/awscdk/awscdk-deps.js +1 -1
- package/lib/awscdk/cdk-config.js +1 -1
- package/lib/awscdk/cdk-tasks.js +1 -1
- package/lib/awscdk/integration-test.js +1 -1
- package/lib/awscdk/lambda-extension.js +1 -1
- package/lib/awscdk/lambda-function.js +2 -2
- package/lib/build/build-workflow.js +1 -1
- package/lib/cdk/auto-discover-base.js +2 -2
- package/lib/cdk/construct-lib.js +1 -1
- package/lib/cdk/integration-test-base.js +1 -1
- package/lib/cdk/jsii-docgen.js +1 -1
- package/lib/cdk/jsii-project.js +8 -5
- package/lib/cdk8s/auto-discover.js +2 -2
- package/lib/cdk8s/cdk8s-app-py.js +1 -1
- package/lib/cdk8s/cdk8s-app-ts.js +1 -1
- package/lib/cdk8s/cdk8s-construct.js +1 -1
- package/lib/cdk8s/cdk8s-deps-py.js +1 -1
- package/lib/cdk8s/cdk8s-deps.js +1 -1
- package/lib/cdk8s/integration-test.js +1 -1
- package/lib/cdktf/cdktf-construct.js +1 -1
- package/lib/circleci/circleci.js +1 -1
- package/lib/cli/index.js +2 -18
- package/lib/component.js +1 -1
- package/lib/dependencies.js +1 -1
- package/lib/dev-env.js +1 -1
- package/lib/docker-compose/docker-compose-service.js +1 -1
- package/lib/docker-compose/docker-compose.js +1 -1
- package/lib/file.js +1 -1
- package/lib/gitattributes.js +1 -1
- package/lib/github/actions-provider.js +1 -1
- package/lib/github/auto-approve.js +1 -1
- package/lib/github/auto-merge.js +1 -1
- package/lib/github/dependabot.js +1 -1
- package/lib/github/github-credentials.js +1 -1
- package/lib/github/github-project.js +1 -1
- package/lib/github/github.js +1 -1
- package/lib/github/mergify.js +1 -1
- package/lib/github/pr-template.js +1 -1
- package/lib/github/pull-request-lint.js +1 -1
- package/lib/github/stale.js +1 -1
- package/lib/github/task-workflow.js +1 -1
- package/lib/github/workflows.js +1 -1
- package/lib/gitlab/configuration.js +1 -1
- package/lib/gitlab/gitlab-configuration.js +1 -1
- package/lib/gitlab/nested-configuration.js +1 -1
- package/lib/gitpod.js +1 -1
- package/lib/ignore-file.js +1 -1
- package/lib/ini.js +1 -1
- package/lib/java/java-project.js +1 -1
- package/lib/java/junit.js +1 -1
- package/lib/java/maven-compile.js +1 -1
- package/lib/java/maven-packaging.js +1 -1
- package/lib/java/maven-sample.js +1 -1
- package/lib/java/pom.js +1 -1
- package/lib/java/projenrc.js +1 -1
- package/lib/javascript/bundler.js +1 -1
- package/lib/javascript/eslint.js +1 -1
- package/lib/javascript/jest.js +4 -4
- package/lib/javascript/node-package.js +1 -1
- package/lib/javascript/node-project.js +1 -1
- package/lib/javascript/npm-config.js +1 -1
- package/lib/javascript/prettier.js +1 -1
- package/lib/javascript/projenrc.js +1 -1
- package/lib/javascript/typescript-config.js +1 -1
- package/lib/javascript/upgrade-dependencies.js +2 -2
- package/lib/json-patch.js +1 -1
- package/lib/json.js +1 -1
- package/lib/license.js +1 -1
- package/lib/logger.js +1 -1
- package/lib/makefile.js +1 -1
- package/lib/object-file.js +1 -1
- package/lib/project-build.js +1 -1
- package/lib/project.js +1 -1
- package/lib/projects.js +1 -1
- package/lib/projenrc-json.js +2 -2
- package/lib/projenrc.js +1 -1
- package/lib/python/pip.js +1 -1
- package/lib/python/poetry.js +2 -2
- package/lib/python/projenrc.js +1 -1
- package/lib/python/pytest-sample.js +1 -1
- package/lib/python/pytest.js +1 -1
- package/lib/python/python-project.js +1 -1
- package/lib/python/python-sample.js +1 -1
- package/lib/python/requirements-file.js +1 -1
- package/lib/python/setuppy.js +1 -1
- package/lib/python/setuptools.js +1 -1
- package/lib/python/venv.js +1 -1
- package/lib/readme.js +1 -1
- package/lib/release/publisher.d.ts +7 -0
- package/lib/release/publisher.js +9 -2
- package/lib/release/release-trigger.js +1 -1
- package/lib/release/release.js +3 -2
- package/lib/renovatebot.js +1 -1
- package/lib/sample-file.js +2 -2
- package/lib/semver.js +1 -1
- package/lib/source-code.js +1 -1
- package/lib/task-runtime.js +1 -1
- package/lib/task.js +1 -1
- package/lib/tasks.js +1 -1
- package/lib/testing.js +1 -1
- package/lib/textfile.js +1 -1
- package/lib/toml.js +1 -1
- package/lib/typescript/projenrc-ts.js +1 -1
- package/lib/typescript/projenrc.js +1 -1
- package/lib/typescript/typescript-typedoc.js +1 -1
- package/lib/typescript/typescript.js +3 -3
- package/lib/util.d.ts +19 -0
- package/lib/util.js +33 -2
- package/lib/version.js +1 -1
- package/lib/vscode/devcontainer.js +1 -1
- package/lib/vscode/extensions.js +1 -1
- package/lib/vscode/launch-config.js +1 -1
- package/lib/vscode/settings.js +1 -1
- package/lib/vscode/vscode.js +1 -1
- package/lib/web/next.js +3 -3
- package/lib/web/postcss.js +1 -1
- package/lib/web/react.js +4 -4
- package/lib/web/tailwind.js +1 -1
- package/lib/xmlfile.js +1 -1
- package/lib/yaml.js +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,338 @@
|
|
|
1
|
+
import { Publisher } from "./publisher";
|
|
2
|
+
import { ReleaseTrigger } from "./release-trigger";
|
|
3
|
+
import { Component } from "../component";
|
|
4
|
+
import { GitHubProject } from "../github";
|
|
5
|
+
import { Job, JobPermissions, JobStep } from "../github/workflows-model";
|
|
6
|
+
import { Task } from "../task";
|
|
7
|
+
type BranchHook = (branch: string) => void;
|
|
8
|
+
/**
|
|
9
|
+
* Project options for release.
|
|
10
|
+
*/
|
|
11
|
+
export interface ReleaseProjectOptions {
|
|
12
|
+
/**
|
|
13
|
+
* Automatically release new versions every commit to one of branches in `releaseBranches`.
|
|
14
|
+
*
|
|
15
|
+
* @default true
|
|
16
|
+
*
|
|
17
|
+
* @deprecated Use `releaseTrigger: ReleaseTrigger.continuous()` instead
|
|
18
|
+
*/
|
|
19
|
+
readonly releaseEveryCommit?: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* CRON schedule to trigger new releases.
|
|
22
|
+
*
|
|
23
|
+
* @default - no scheduled releases
|
|
24
|
+
*
|
|
25
|
+
* @deprecated Use `releaseTrigger: ReleaseTrigger.scheduled()` instead
|
|
26
|
+
*/
|
|
27
|
+
readonly releaseSchedule?: string;
|
|
28
|
+
/**
|
|
29
|
+
* The release trigger to use.
|
|
30
|
+
*
|
|
31
|
+
* @default - Continuous releases (`ReleaseTrigger.continuous()`)
|
|
32
|
+
*/
|
|
33
|
+
readonly releaseTrigger?: ReleaseTrigger;
|
|
34
|
+
/**
|
|
35
|
+
* A set of workflow steps to execute in order to setup the workflow
|
|
36
|
+
* container.
|
|
37
|
+
*/
|
|
38
|
+
readonly releaseWorkflowSetupSteps?: JobStep[];
|
|
39
|
+
/**
|
|
40
|
+
* Container image to use for GitHub workflows.
|
|
41
|
+
*
|
|
42
|
+
* @default - default image
|
|
43
|
+
*/
|
|
44
|
+
readonly workflowContainerImage?: string;
|
|
45
|
+
/**
|
|
46
|
+
* Version requirement of `publib` which is used to publish modules to npm.
|
|
47
|
+
* @default "latest"
|
|
48
|
+
*/
|
|
49
|
+
readonly jsiiReleaseVersion?: string;
|
|
50
|
+
/**
|
|
51
|
+
* Steps to execute after build as part of the release workflow.
|
|
52
|
+
* @default []
|
|
53
|
+
*/
|
|
54
|
+
readonly postBuildSteps?: JobStep[];
|
|
55
|
+
/**
|
|
56
|
+
* Major version to release from the default branch.
|
|
57
|
+
*
|
|
58
|
+
* If this is specified, we bump the latest version of this major version line.
|
|
59
|
+
* If not specified, we bump the global latest version.
|
|
60
|
+
*
|
|
61
|
+
* @default - Major version is not enforced.
|
|
62
|
+
*/
|
|
63
|
+
readonly majorVersion?: number;
|
|
64
|
+
/**
|
|
65
|
+
* Minimal Major version to release
|
|
66
|
+
*
|
|
67
|
+
*
|
|
68
|
+
* This can be useful to set to 1, as breaking changes before the 1.x major
|
|
69
|
+
* release are not incrementing the major version number.
|
|
70
|
+
*
|
|
71
|
+
* Can not be set together with `majorVersion`.
|
|
72
|
+
*
|
|
73
|
+
* @default - No minimum version is being enforced
|
|
74
|
+
*/
|
|
75
|
+
readonly minMajorVersion?: number;
|
|
76
|
+
/**
|
|
77
|
+
* Bump versions from the default branch as pre-releases (e.g. "beta",
|
|
78
|
+
* "alpha", "pre").
|
|
79
|
+
*
|
|
80
|
+
* @default - normal semantic versions
|
|
81
|
+
*/
|
|
82
|
+
readonly prerelease?: string;
|
|
83
|
+
/**
|
|
84
|
+
* The npmDistTag to use when publishing from the default branch.
|
|
85
|
+
*
|
|
86
|
+
* To set the npm dist-tag for release branches, set the `npmDistTag` property
|
|
87
|
+
* for each branch.
|
|
88
|
+
*
|
|
89
|
+
* @default "latest"
|
|
90
|
+
*/
|
|
91
|
+
readonly npmDistTag?: string;
|
|
92
|
+
/**
|
|
93
|
+
* The name of the default release workflow.
|
|
94
|
+
*
|
|
95
|
+
* @default "Release"
|
|
96
|
+
*/
|
|
97
|
+
readonly releaseWorkflowName?: string;
|
|
98
|
+
/**
|
|
99
|
+
* Defines additional release branches. A workflow will be created for each
|
|
100
|
+
* release branch which will publish releases from commits in this branch.
|
|
101
|
+
* Each release branch _must_ be assigned a major version number which is used
|
|
102
|
+
* to enforce that versions published from that branch always use that major
|
|
103
|
+
* version. If multiple branches are used, the `majorVersion` field must also
|
|
104
|
+
* be provided for the default branch.
|
|
105
|
+
*
|
|
106
|
+
* @default - no additional branches are used for release. you can use
|
|
107
|
+
* `addBranch()` to add additional branches.
|
|
108
|
+
*/
|
|
109
|
+
readonly releaseBranches?: {
|
|
110
|
+
[name: string]: BranchOptions;
|
|
111
|
+
};
|
|
112
|
+
/**
|
|
113
|
+
* Create a github issue on every failed publishing task.
|
|
114
|
+
*
|
|
115
|
+
* @default false
|
|
116
|
+
*/
|
|
117
|
+
readonly releaseFailureIssue?: boolean;
|
|
118
|
+
/**
|
|
119
|
+
* The label to apply to issues indicating publish failures.
|
|
120
|
+
* Only applies if `releaseFailureIssue` is true.
|
|
121
|
+
*
|
|
122
|
+
* @default "failed-release"
|
|
123
|
+
*/
|
|
124
|
+
readonly releaseFailureIssueLabel?: string;
|
|
125
|
+
/**
|
|
126
|
+
* Automatically add the given prefix to release tags.
|
|
127
|
+
* Useful if you are releasing on multiple branches with overlapping
|
|
128
|
+
* version numbers.
|
|
129
|
+
*
|
|
130
|
+
* Note: this prefix is used to detect the latest tagged version
|
|
131
|
+
* when bumping, so if you change this on a project with an existing version
|
|
132
|
+
* history, you may need to manually tag your latest release
|
|
133
|
+
* with the new prefix.
|
|
134
|
+
*
|
|
135
|
+
* @default "v"
|
|
136
|
+
*/
|
|
137
|
+
readonly releaseTagPrefix?: string;
|
|
138
|
+
/**
|
|
139
|
+
* Custom configuration used when creating changelog with standard-version package.
|
|
140
|
+
* Given values either append to default configuration or overwrite values in it.
|
|
141
|
+
*
|
|
142
|
+
* @default - standard configuration applicable for GitHub repositories
|
|
143
|
+
*/
|
|
144
|
+
readonly versionrcOptions?: Record<string, any>;
|
|
145
|
+
/**
|
|
146
|
+
* Github Runner selection labels
|
|
147
|
+
* @default ["ubuntu-latest"]
|
|
148
|
+
*/
|
|
149
|
+
readonly workflowRunsOn?: string[];
|
|
150
|
+
/**
|
|
151
|
+
* Define publishing tasks that can be executed manually as well as workflows.
|
|
152
|
+
*
|
|
153
|
+
* Normally, publishing only happens within automated workflows. Enable this
|
|
154
|
+
* in order to create a publishing task for each publishing activity.
|
|
155
|
+
*
|
|
156
|
+
* @default false
|
|
157
|
+
*/
|
|
158
|
+
readonly publishTasks?: boolean;
|
|
159
|
+
/**
|
|
160
|
+
* Instead of actually publishing to package managers, just print the publishing command.
|
|
161
|
+
*
|
|
162
|
+
* @default false
|
|
163
|
+
*/
|
|
164
|
+
readonly publishDryRun?: boolean;
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Options for `Release`.
|
|
168
|
+
*/
|
|
169
|
+
export interface ReleaseOptions extends ReleaseProjectOptions {
|
|
170
|
+
/**
|
|
171
|
+
* The task to execute in order to create the release artifacts. Artifacts are
|
|
172
|
+
* expected to reside under `artifactsDirectory` (defaults to `dist/`) once
|
|
173
|
+
* build is complete.
|
|
174
|
+
*/
|
|
175
|
+
readonly task: Task;
|
|
176
|
+
/**
|
|
177
|
+
* A name of a .json file to set the `version` field in after a bump.
|
|
178
|
+
*
|
|
179
|
+
* @example "package.json"
|
|
180
|
+
*/
|
|
181
|
+
readonly versionFile: string;
|
|
182
|
+
/**
|
|
183
|
+
* The default branch name to release from.
|
|
184
|
+
*
|
|
185
|
+
* Use `majorVersion` to restrict this branch to only publish releases with a
|
|
186
|
+
* specific major version.
|
|
187
|
+
*
|
|
188
|
+
* You can add additional branches using `addBranch()`.
|
|
189
|
+
*/
|
|
190
|
+
readonly branch: string;
|
|
191
|
+
/**
|
|
192
|
+
* Create a GitHub release for each release.
|
|
193
|
+
*
|
|
194
|
+
* @default true
|
|
195
|
+
*/
|
|
196
|
+
readonly githubRelease?: boolean;
|
|
197
|
+
/**
|
|
198
|
+
* A directory which will contain build artifacts.
|
|
199
|
+
*
|
|
200
|
+
* @default "dist"
|
|
201
|
+
*/
|
|
202
|
+
readonly artifactsDirectory: string;
|
|
203
|
+
/**
|
|
204
|
+
* Node version to setup in GitHub workflows if any node-based CLI utilities
|
|
205
|
+
* are needed. For example `publib`, the CLI projen uses to publish releases,
|
|
206
|
+
* is an npm library.
|
|
207
|
+
*
|
|
208
|
+
* @default 16.x
|
|
209
|
+
*/
|
|
210
|
+
readonly workflowNodeVersion?: string;
|
|
211
|
+
/**
|
|
212
|
+
* Permissions granted to the release workflow job
|
|
213
|
+
* @default `{ contents: JobPermission.WRITE }`
|
|
214
|
+
*/
|
|
215
|
+
readonly workflowPermissions?: JobPermissions;
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Manages releases (currently through GitHub workflows).
|
|
219
|
+
*
|
|
220
|
+
* By default, no branches are released. To add branches, call `addBranch()`.
|
|
221
|
+
*/
|
|
222
|
+
export declare class Release extends Component {
|
|
223
|
+
static readonly ANTI_TAMPER_CMD = "git diff --ignore-space-at-eol --exit-code";
|
|
224
|
+
/**
|
|
225
|
+
* Returns the `Release` component of a project or `undefined` if the project
|
|
226
|
+
* does not have a Release component.
|
|
227
|
+
*/
|
|
228
|
+
static of(project: GitHubProject): Release | undefined;
|
|
229
|
+
/**
|
|
230
|
+
* Package publisher.
|
|
231
|
+
*/
|
|
232
|
+
readonly publisher: Publisher;
|
|
233
|
+
private readonly buildTask;
|
|
234
|
+
private readonly version;
|
|
235
|
+
private readonly postBuildSteps;
|
|
236
|
+
private readonly versionFile;
|
|
237
|
+
private readonly releaseTrigger;
|
|
238
|
+
private readonly preBuildSteps;
|
|
239
|
+
private readonly containerImage?;
|
|
240
|
+
private readonly _branches;
|
|
241
|
+
private readonly jobs;
|
|
242
|
+
private readonly defaultBranch;
|
|
243
|
+
private readonly github?;
|
|
244
|
+
private readonly workflowRunsOn?;
|
|
245
|
+
private readonly workflowPermissions;
|
|
246
|
+
private readonly _branchHooks;
|
|
247
|
+
/**
|
|
248
|
+
* Location of build artifacts.
|
|
249
|
+
*/
|
|
250
|
+
readonly artifactsDirectory: string;
|
|
251
|
+
constructor(project: GitHubProject, options: ReleaseOptions);
|
|
252
|
+
/**
|
|
253
|
+
* Add a hook that should be run for every branch (including those that will
|
|
254
|
+
* be added by future `addBranch` calls).
|
|
255
|
+
* @internal
|
|
256
|
+
*/
|
|
257
|
+
_forEachBranch(hook: BranchHook): void;
|
|
258
|
+
/**
|
|
259
|
+
* Adds a release branch.
|
|
260
|
+
*
|
|
261
|
+
* It is a git branch from which releases are published. If a project has more than one release
|
|
262
|
+
* branch, we require that `majorVersion` is also specified for the primary branch in order to
|
|
263
|
+
* ensure branches always release the correct version.
|
|
264
|
+
*
|
|
265
|
+
* @param branch The branch to monitor (e.g. `main`, `v2.x`)
|
|
266
|
+
* @param options Branch definition
|
|
267
|
+
*/
|
|
268
|
+
addBranch(branch: string, options: BranchOptions): void;
|
|
269
|
+
/**
|
|
270
|
+
* Adds a release branch.
|
|
271
|
+
*
|
|
272
|
+
* It is a git branch from which releases are published. If a project has more than one release
|
|
273
|
+
* branch, we require that `majorVersion` is also specified for the primary branch in order to
|
|
274
|
+
* ensure branches always release the correct version.
|
|
275
|
+
*
|
|
276
|
+
* @param branch The branch to monitor (e.g. `main`, `v2.x`)
|
|
277
|
+
* @param options Branch definition
|
|
278
|
+
*/
|
|
279
|
+
private _addBranch;
|
|
280
|
+
preSynthesize(): void;
|
|
281
|
+
/**
|
|
282
|
+
* Adds jobs to all release workflows.
|
|
283
|
+
* @param jobs The jobs to add (name => job)
|
|
284
|
+
*/
|
|
285
|
+
addJobs(jobs: Record<string, Job>): void;
|
|
286
|
+
/**
|
|
287
|
+
* Retrieve all release branch names
|
|
288
|
+
*/
|
|
289
|
+
get branches(): string[];
|
|
290
|
+
/**
|
|
291
|
+
* @returns a workflow or `undefined` if github integration is disabled.
|
|
292
|
+
*/
|
|
293
|
+
private createWorkflow;
|
|
294
|
+
}
|
|
295
|
+
/**
|
|
296
|
+
* Options for a release branch.
|
|
297
|
+
*/
|
|
298
|
+
export interface BranchOptions {
|
|
299
|
+
/**
|
|
300
|
+
* The name of the release workflow.
|
|
301
|
+
* @default "release-BRANCH"
|
|
302
|
+
*/
|
|
303
|
+
readonly workflowName?: string;
|
|
304
|
+
/**
|
|
305
|
+
* The major versions released from this branch.
|
|
306
|
+
*/
|
|
307
|
+
readonly majorVersion: number;
|
|
308
|
+
/**
|
|
309
|
+
* The minimum major version to release.
|
|
310
|
+
*/
|
|
311
|
+
readonly minMajorVersion?: number;
|
|
312
|
+
/**
|
|
313
|
+
* Bump the version as a pre-release tag.
|
|
314
|
+
*
|
|
315
|
+
* @default - normal releases
|
|
316
|
+
*/
|
|
317
|
+
readonly prerelease?: string;
|
|
318
|
+
/**
|
|
319
|
+
* Automatically add the given prefix to release tags.
|
|
320
|
+
* Useful if you are releasing on multiple branches with overlapping
|
|
321
|
+
* version numbers.
|
|
322
|
+
*
|
|
323
|
+
* Note: this prefix is used to detect the latest tagged version
|
|
324
|
+
* when bumping, so if you change this on a project with an existing version
|
|
325
|
+
* history, you may need to manually tag your latest release
|
|
326
|
+
* with the new prefix.
|
|
327
|
+
*
|
|
328
|
+
* @default - no prefix
|
|
329
|
+
*/
|
|
330
|
+
readonly tagPrefix?: string;
|
|
331
|
+
/**
|
|
332
|
+
* The npm distribution tag to use for this branch.
|
|
333
|
+
*
|
|
334
|
+
* @default "latest"
|
|
335
|
+
*/
|
|
336
|
+
readonly npmDistTag?: string;
|
|
337
|
+
}
|
|
338
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export interface TagOptions {
|
|
2
|
+
/**
|
|
3
|
+
* Path to release tag file housing the release version.
|
|
4
|
+
*
|
|
5
|
+
* Relative to cwd.
|
|
6
|
+
*
|
|
7
|
+
* @example `dist/releaseTag.txt`
|
|
8
|
+
*/
|
|
9
|
+
readonly releaseTagFile: string;
|
|
10
|
+
/**
|
|
11
|
+
* Path to release-specific changelog file.
|
|
12
|
+
*
|
|
13
|
+
* Relative to cwd.
|
|
14
|
+
*
|
|
15
|
+
* @example `dist/changelog.md`
|
|
16
|
+
*/
|
|
17
|
+
readonly changelog: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Generate an annotated release tag using version and changelog files.
|
|
21
|
+
*
|
|
22
|
+
* The tag will be normalized to the format "v<version>" where version comes
|
|
23
|
+
* from the provided version file.
|
|
24
|
+
*
|
|
25
|
+
* The tag annotation message will be set to the content of the provided release
|
|
26
|
+
* changelog file.
|
|
27
|
+
*
|
|
28
|
+
* @param cwd working directory (git repository)
|
|
29
|
+
* @param options options
|
|
30
|
+
*/
|
|
31
|
+
export declare function tag(cwd: string, options: TagOptions): Promise<void>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export interface UpdateChangelogOptions {
|
|
2
|
+
/**
|
|
3
|
+
* Path to input changelog entry file.
|
|
4
|
+
*
|
|
5
|
+
* Relative to cwd.
|
|
6
|
+
*
|
|
7
|
+
* @example dist/changelog.md
|
|
8
|
+
*/
|
|
9
|
+
inputChangelog: string;
|
|
10
|
+
/**
|
|
11
|
+
* Path to project-level changelog.
|
|
12
|
+
*
|
|
13
|
+
* The contents of inputChangelog will be prepended onto
|
|
14
|
+
* this changelog.
|
|
15
|
+
*
|
|
16
|
+
* Relative to cwd
|
|
17
|
+
*
|
|
18
|
+
* @example changelog.md
|
|
19
|
+
*/
|
|
20
|
+
outputChangelog: string;
|
|
21
|
+
/**
|
|
22
|
+
* Release version.
|
|
23
|
+
*/
|
|
24
|
+
versionFile: string;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Prepends input changelog entry onto project-level changelog.
|
|
28
|
+
*
|
|
29
|
+
* Currently assumes a headerless changelog formatted according to
|
|
30
|
+
* [conventional-changelog](https://github.com/conventional-changelog/conventional-changelog)
|
|
31
|
+
* rules.
|
|
32
|
+
*
|
|
33
|
+
* @param cwd working directory (git repository)
|
|
34
|
+
* @param options options
|
|
35
|
+
*/
|
|
36
|
+
export declare function updateChangelog(cwd: string, options: UpdateChangelogOptions): Promise<void>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { Component } from "./component";
|
|
2
|
+
import { Project } from "./project";
|
|
3
|
+
/**
|
|
4
|
+
* Options for Renovatebot
|
|
5
|
+
*/
|
|
6
|
+
export interface RenovatebotOptions {
|
|
7
|
+
/**
|
|
8
|
+
* How often to check for new versions and raise pull requests.
|
|
9
|
+
*
|
|
10
|
+
* Can be given in CRON or LATER format, and use multiple schedules
|
|
11
|
+
* (e.g. different for weekdays and weekends). Multiple rules are
|
|
12
|
+
* handles as OR.
|
|
13
|
+
*
|
|
14
|
+
* Some normal scheduling values defined in enum `RenovatebotScheduleInterval`.
|
|
15
|
+
*
|
|
16
|
+
* @see https://docs.renovatebot.com/configuration-options/#schedule
|
|
17
|
+
* @default ["at any time"]
|
|
18
|
+
*/
|
|
19
|
+
readonly scheduleInterval?: string[];
|
|
20
|
+
/**
|
|
21
|
+
* You can use the `ignore` option to customize which dependencies are updated.
|
|
22
|
+
* The ignore option supports just package name.
|
|
23
|
+
* @default []
|
|
24
|
+
*/
|
|
25
|
+
readonly ignore?: string[];
|
|
26
|
+
/**
|
|
27
|
+
* Ignores updates to `projen`.
|
|
28
|
+
*
|
|
29
|
+
* This is required since projen updates may cause changes in committed files
|
|
30
|
+
* and anti-tamper checks will fail.
|
|
31
|
+
*
|
|
32
|
+
* Projen upgrades are covered through the `ProjenUpgrade` class.
|
|
33
|
+
*
|
|
34
|
+
* @default true
|
|
35
|
+
*/
|
|
36
|
+
readonly ignoreProjen?: boolean;
|
|
37
|
+
/**
|
|
38
|
+
* List of labels to apply to the created PR's.
|
|
39
|
+
*/
|
|
40
|
+
readonly labels?: string[];
|
|
41
|
+
readonly overrideConfig?: any;
|
|
42
|
+
readonly marker?: boolean;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* How often to check for new versions and raise pull requests for version
|
|
46
|
+
* updates.
|
|
47
|
+
*
|
|
48
|
+
* @see https://docs.renovatebot.com/presets-schedule/
|
|
49
|
+
*/
|
|
50
|
+
export declare enum RenovatebotScheduleInterval {
|
|
51
|
+
/**
|
|
52
|
+
* Run at any time
|
|
53
|
+
*/
|
|
54
|
+
ANY_TIME = "at any time",
|
|
55
|
+
/**
|
|
56
|
+
* Weekly schedule on early monday mornings
|
|
57
|
+
*/
|
|
58
|
+
EARLY_MONDAYS = "before 3am on Monday",
|
|
59
|
+
/**
|
|
60
|
+
* Schedule daily
|
|
61
|
+
*/
|
|
62
|
+
DAILY = "before 2am",
|
|
63
|
+
/**
|
|
64
|
+
* Schedule weekly
|
|
65
|
+
*/
|
|
66
|
+
WEEKLY = "before 3am on Monday",
|
|
67
|
+
/**
|
|
68
|
+
* Schedule monthly
|
|
69
|
+
*/
|
|
70
|
+
MONTHLY = "before 3am on the first day of the month",
|
|
71
|
+
/**
|
|
72
|
+
* Schedule quarterly
|
|
73
|
+
*/
|
|
74
|
+
QUARTERLY = "every 3 months on the first day of the month",
|
|
75
|
+
/**
|
|
76
|
+
* Schedule for weekends
|
|
77
|
+
*/
|
|
78
|
+
WEEKENDS = "every weekend",
|
|
79
|
+
/**
|
|
80
|
+
* Schedule for weekdays
|
|
81
|
+
*/
|
|
82
|
+
WEEKDAYS = "every weekday"
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Defines renovatebot configuration for projen project.
|
|
86
|
+
*
|
|
87
|
+
* Ignores the versions controlled by Projen.
|
|
88
|
+
*/
|
|
89
|
+
export declare class Renovatebot extends Component {
|
|
90
|
+
private readonly _project;
|
|
91
|
+
private readonly explicitIgnores;
|
|
92
|
+
private readonly scheduleInterval;
|
|
93
|
+
private readonly labels?;
|
|
94
|
+
private readonly marker?;
|
|
95
|
+
private readonly overrideConfig?;
|
|
96
|
+
constructor(project: Project, options?: RenovatebotOptions);
|
|
97
|
+
preSynthesize(): void;
|
|
98
|
+
private createRenovateConfiguration;
|
|
99
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { Component } from "./component";
|
|
2
|
+
import { Project } from "./project";
|
|
3
|
+
/**
|
|
4
|
+
* Options for the SampleFile object.
|
|
5
|
+
*/
|
|
6
|
+
export interface SampleFileOptions {
|
|
7
|
+
/**
|
|
8
|
+
* The contents of the file to write.
|
|
9
|
+
*/
|
|
10
|
+
readonly contents?: string;
|
|
11
|
+
/**
|
|
12
|
+
* Absolute path to a file to copy the contents from (does not need to be
|
|
13
|
+
* a text file).
|
|
14
|
+
*
|
|
15
|
+
* If your project is Typescript-based and has configured `testdir` to be a
|
|
16
|
+
* subdirectory of `src`, sample files should outside of the `src` directory,
|
|
17
|
+
* otherwise they may not be copied. For example:
|
|
18
|
+
* ```
|
|
19
|
+
* new SampleFile(this, 'assets/icon.png', { source: path.join(__dirname, '..', 'sample-assets', 'icon.png') });
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
readonly sourcePath?: string;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Produces a file with the given contents but only once, if the file doesn't already exist.
|
|
26
|
+
* Use this for creating example code files or other resources.
|
|
27
|
+
*/
|
|
28
|
+
export declare class SampleFile extends Component {
|
|
29
|
+
private readonly filePath;
|
|
30
|
+
private readonly options;
|
|
31
|
+
/**
|
|
32
|
+
* Creates a new SampleFile object
|
|
33
|
+
* @param project - the project to tie this file to.
|
|
34
|
+
* @param filePath - the relative path in the project to put the file
|
|
35
|
+
* @param options - the options for the file.
|
|
36
|
+
*/
|
|
37
|
+
constructor(project: Project, filePath: string, options: SampleFileOptions);
|
|
38
|
+
synthesize(): void;
|
|
39
|
+
/**
|
|
40
|
+
* A helper function that will write the file once and return if it was written or not.
|
|
41
|
+
* @param dir - the directory for the new file
|
|
42
|
+
* @param filename - the filename for the new file
|
|
43
|
+
* @param contents - the contents of the file to write
|
|
44
|
+
* @return boolean - whether a new file was written or not.
|
|
45
|
+
* @private
|
|
46
|
+
*/
|
|
47
|
+
private writeOnceFileContents;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* SampleDir options
|
|
51
|
+
*/
|
|
52
|
+
export interface SampleDirOptions {
|
|
53
|
+
/**
|
|
54
|
+
* The files to render into the directory. These files get added after
|
|
55
|
+
* any files from `source` if that option is specified (replacing if names
|
|
56
|
+
* overlap).
|
|
57
|
+
*/
|
|
58
|
+
readonly files?: {
|
|
59
|
+
[fileName: string]: string;
|
|
60
|
+
};
|
|
61
|
+
/**
|
|
62
|
+
* Absolute path to a directory to copy files from (does not need to be text
|
|
63
|
+
* files).
|
|
64
|
+
*
|
|
65
|
+
* If your project is typescript-based and has configured `testdir` to be a
|
|
66
|
+
* subdirectory of `src`, sample files should outside of the `src` directory
|
|
67
|
+
* otherwise they may not be copied. For example:
|
|
68
|
+
* ```
|
|
69
|
+
* new SampleDir(this, 'public', { source: path.join(__dirname, '..', 'sample-assets') });
|
|
70
|
+
* ```
|
|
71
|
+
*/
|
|
72
|
+
readonly sourceDir?: string;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Renders the given files into the directory if the directory does not exist. Use this to create sample code files
|
|
76
|
+
*/
|
|
77
|
+
export declare class SampleDir extends Component {
|
|
78
|
+
private readonly dir;
|
|
79
|
+
private readonly options;
|
|
80
|
+
/**
|
|
81
|
+
* Create sample files in the given directory if the given directory does not exist
|
|
82
|
+
* @param project Parent project to add files to.
|
|
83
|
+
* @param dir directory to add files to. If directory already exists, nothing is added.
|
|
84
|
+
* @param options options for which files to create.
|
|
85
|
+
*/
|
|
86
|
+
constructor(project: Project, dir: string, options: SampleDirOptions);
|
|
87
|
+
synthesize(): void;
|
|
88
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @deprecated This class will be removed in upcoming releases. if you wish to
|
|
3
|
+
* specify semver requirements in `deps`, `devDeps`, etc, specify them like so
|
|
4
|
+
* `express@^2.1`.
|
|
5
|
+
*/
|
|
6
|
+
export declare class Semver {
|
|
7
|
+
readonly spec: string;
|
|
8
|
+
static of(spec: string): Semver;
|
|
9
|
+
/**
|
|
10
|
+
* Latest version.
|
|
11
|
+
*/
|
|
12
|
+
static latest(): Semver;
|
|
13
|
+
/**
|
|
14
|
+
* Accept only an exact version
|
|
15
|
+
*/
|
|
16
|
+
static pinned(version: string): Semver;
|
|
17
|
+
/**
|
|
18
|
+
* Accept any minor version.
|
|
19
|
+
*
|
|
20
|
+
* >= version
|
|
21
|
+
* < next major version
|
|
22
|
+
*/
|
|
23
|
+
static caret(version: string): Semver;
|
|
24
|
+
/**
|
|
25
|
+
* Accept patches.
|
|
26
|
+
*
|
|
27
|
+
* >= version
|
|
28
|
+
* < next minor version
|
|
29
|
+
*/
|
|
30
|
+
static tilde(version: string): Semver;
|
|
31
|
+
readonly mode?: string;
|
|
32
|
+
private constructor();
|
|
33
|
+
get version(): string | undefined;
|
|
34
|
+
}
|