release-monorepo-semantically 1.5.2 → 1.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +126 -0
- package/dist/exceptions/DomainException.d.ts +17 -0
- package/dist/exceptions/DomainException.d.ts.map +1 -0
- package/dist/exceptions/DomainException.js +37 -0
- package/dist/exceptions/DomainException.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +14 -3
- package/dist/index.js.map +1 -1
- package/dist/main.spec.js +3 -3
- package/dist/main.spec.js.map +1 -1
- package/dist/models/NpmPackage.d.ts.map +1 -1
- package/dist/models/NpmPackage.js +2 -1
- package/dist/models/NpmPackage.js.map +1 -1
- package/dist/plugins/ChangelogPlugin.spec.d.ts +2 -0
- package/dist/plugins/ChangelogPlugin.spec.d.ts.map +1 -0
- package/dist/plugins/ChangelogPlugin.spec.js +43 -0
- package/dist/plugins/ChangelogPlugin.spec.js.map +1 -0
- package/dist/plugins/GitPlugin.spec.d.ts +2 -0
- package/dist/plugins/GitPlugin.spec.d.ts.map +1 -0
- package/dist/plugins/GitPlugin.spec.js +60 -0
- package/dist/plugins/GitPlugin.spec.js.map +1 -0
- package/dist/plugins/GithubPlugin.d.ts +18 -0
- package/dist/plugins/GithubPlugin.d.ts.map +1 -0
- package/dist/plugins/GithubPlugin.js +49 -0
- package/dist/plugins/GithubPlugin.js.map +1 -0
- package/dist/plugins/GithubPlugin.spec.d.ts +2 -0
- package/dist/plugins/GithubPlugin.spec.d.ts.map +1 -0
- package/dist/plugins/GithubPlugin.spec.js +114 -0
- package/dist/plugins/GithubPlugin.spec.js.map +1 -0
- package/dist/plugins/NpmPlugin.spec.d.ts +2 -0
- package/dist/plugins/NpmPlugin.spec.d.ts.map +1 -0
- package/dist/plugins/NpmPlugin.spec.js +58 -0
- package/dist/plugins/NpmPlugin.spec.js.map +1 -0
- package/dist/plugins/PackageJsonPlugin.spec.d.ts +2 -0
- package/dist/plugins/PackageJsonPlugin.spec.d.ts.map +1 -0
- package/dist/plugins/PackageJsonPlugin.spec.js +70 -0
- package/dist/plugins/PackageJsonPlugin.spec.js.map +1 -0
- package/dist/services/ChangelogView.spec.d.ts +2 -0
- package/dist/services/ChangelogView.spec.d.ts.map +1 -0
- package/dist/services/ChangelogView.spec.js +56 -0
- package/dist/services/ChangelogView.spec.js.map +1 -0
- package/dist/services/ExceptionHandler.d.ts +4 -0
- package/dist/services/ExceptionHandler.d.ts.map +1 -0
- package/dist/services/ExceptionHandler.js +15 -0
- package/dist/services/ExceptionHandler.js.map +1 -0
- package/dist/services/ExceptionHandler.spec.d.ts +2 -0
- package/dist/services/ExceptionHandler.spec.d.ts.map +1 -0
- package/dist/services/ExceptionHandler.spec.js +21 -0
- package/dist/services/ExceptionHandler.spec.js.map +1 -0
- package/dist/services/GitService.spec.js +34 -0
- package/dist/services/GitService.spec.js.map +1 -1
- package/dist/services/GithubReleaseView.d.ts +17 -0
- package/dist/services/GithubReleaseView.d.ts.map +1 -0
- package/dist/services/GithubReleaseView.js +17 -0
- package/dist/services/GithubReleaseView.js.map +1 -0
- package/dist/services/GithubReleaseView.spec.d.ts +2 -0
- package/dist/services/GithubReleaseView.spec.d.ts.map +1 -0
- package/dist/services/GithubReleaseView.spec.js +27 -0
- package/dist/services/GithubReleaseView.spec.js.map +1 -0
- package/dist/services/GithubService.d.ts +13 -0
- package/dist/services/GithubService.d.ts.map +1 -0
- package/dist/services/GithubService.js +39 -0
- package/dist/services/GithubService.js.map +1 -0
- package/dist/services/HandlebarsRenderService.d.ts.map +1 -1
- package/dist/services/HandlebarsRenderService.js +3 -2
- package/dist/services/HandlebarsRenderService.js.map +1 -1
- package/dist/services/NodeFileSystemService.spec.d.ts +2 -0
- package/dist/services/NodeFileSystemService.spec.d.ts.map +1 -0
- package/dist/services/NodeFileSystemService.spec.js +62 -0
- package/dist/services/NodeFileSystemService.spec.js.map +1 -0
- package/dist/services/ReleaseCommitView.spec.d.ts +2 -0
- package/dist/services/ReleaseCommitView.spec.d.ts.map +1 -0
- package/dist/services/ReleaseCommitView.spec.js +35 -0
- package/dist/services/ReleaseCommitView.spec.js.map +1 -0
- package/dist/utils.spec.d.ts +2 -0
- package/dist/utils.spec.d.ts.map +1 -0
- package/dist/utils.spec.js +28 -0
- package/dist/utils.spec.js.map +1 -0
- package/package.json +2 -1
- package/templates/github-release-notes.hbs +21 -0
- package/dist/services/ErrorHandler.d.ts +0 -4
- package/dist/services/ErrorHandler.d.ts.map +0 -1
- package/dist/services/ErrorHandler.js +0 -10
- package/dist/services/ErrorHandler.js.map +0 -1
package/README.md
ADDED
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
# monorepo-semantic-release
|
|
2
|
+
|
|
3
|
+
CLI for semantic versioning and release automation in `pnpm` monorepos.
|
|
4
|
+
|
|
5
|
+
It discovers workspace packages, analyzes conventional commits per package scope, bumps versions in dependency order, updates internal dependency versions, generates changelogs, creates a release commit and tags, optionally creates GitHub Releases, and publishes to npm.
|
|
6
|
+
|
|
7
|
+
## Requirements
|
|
8
|
+
|
|
9
|
+
- Node.js: `>=22 <23`
|
|
10
|
+
- pnpm: `10.20.0`
|
|
11
|
+
- Git repository with conventional commits
|
|
12
|
+
|
|
13
|
+
## Installation
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
pnpm add -D release-monorepo-semantically
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Run from your monorepo root:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
pnpm monorepo-semantic-release
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Commit conventions
|
|
26
|
+
|
|
27
|
+
Release-triggering commits:
|
|
28
|
+
|
|
29
|
+
- `feat(scope): ...` -> `minor`
|
|
30
|
+
- `fix(scope): ...` -> `patch`
|
|
31
|
+
- `perf(scope): ...` -> `patch`
|
|
32
|
+
- `BREAKING CHANGE` or `!` -> `major`
|
|
33
|
+
|
|
34
|
+
Non-release types: `docs`, `test`, `ci`, `chore`, `refactor`, `style`.
|
|
35
|
+
|
|
36
|
+
Package scope is matched by package name.
|
|
37
|
+
|
|
38
|
+
## Release flow
|
|
39
|
+
|
|
40
|
+
1. Discover workspace packages from root `package.json` workspaces.
|
|
41
|
+
2. Exclude private packages.
|
|
42
|
+
3. Sort packages so dependencies are processed first.
|
|
43
|
+
4. Read commits since `<package-name>@<version>` tag.
|
|
44
|
+
5. Compute bump type (`major > minor > patch > none`).
|
|
45
|
+
6. Update package versions and internal dependency versions.
|
|
46
|
+
7. Render changelog entries.
|
|
47
|
+
8. Create one release commit and per-package tags.
|
|
48
|
+
9. Push commit/tags (unless disabled).
|
|
49
|
+
10. Create GitHub Releases (if configured).
|
|
50
|
+
11. Publish released packages (unless disabled).
|
|
51
|
+
|
|
52
|
+
## CLI options
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
monorepo-semantic-release [options]
|
|
56
|
+
|
|
57
|
+
Options:
|
|
58
|
+
--dry-run Preview changes without mutating files/git/publish
|
|
59
|
+
--no-push Skip git push
|
|
60
|
+
--no-publish Skip npm publish
|
|
61
|
+
--changelog-template <path> Override changelog template
|
|
62
|
+
--release-commit-template <path> Override release commit template
|
|
63
|
+
-h, --help Show help
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## Template overrides
|
|
67
|
+
|
|
68
|
+
You can override templates via CLI options or root `package.json`:
|
|
69
|
+
|
|
70
|
+
```json
|
|
71
|
+
{
|
|
72
|
+
"releaseTemplates": {
|
|
73
|
+
"changelogTemplate": "templates/changelog.hbs",
|
|
74
|
+
"releaseCommitTemplate": "templates/release-commit-msg.hbs"
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Built-in templates:
|
|
80
|
+
|
|
81
|
+
- `templates/changelog.hbs`
|
|
82
|
+
- `templates/release-commit-msg.hbs`
|
|
83
|
+
- `templates/github-release-notes.hbs`
|
|
84
|
+
|
|
85
|
+
## GitHub Releases
|
|
86
|
+
|
|
87
|
+
GitHub release creation runs only when all conditions are met:
|
|
88
|
+
|
|
89
|
+
- `GITHUB_ACTIONS=true`
|
|
90
|
+
- `GITHUB_REPOSITORY` is set (for example `owner/repo`)
|
|
91
|
+
- `GITHUB_TOKEN` is set
|
|
92
|
+
- `gh` CLI is available
|
|
93
|
+
- not `--dry-run`
|
|
94
|
+
- not `--no-push`
|
|
95
|
+
|
|
96
|
+
Each released package creates a release:
|
|
97
|
+
|
|
98
|
+
- tag: `<package-name>@<version>`
|
|
99
|
+
- title: `<package-name> v<version>`
|
|
100
|
+
- notes rendered from `templates/github-release-notes.hbs`
|
|
101
|
+
|
|
102
|
+
## Plugin architecture
|
|
103
|
+
|
|
104
|
+
Release lifecycle is implemented by plugins:
|
|
105
|
+
|
|
106
|
+
- `PackageJsonPlugin`: updates internal dependency versions in `package.json`
|
|
107
|
+
- `ChangelogPlugin`: writes per-package changelog updates
|
|
108
|
+
- `GitPlugin`: creates release commit, tags, and push
|
|
109
|
+
- `GithubPlugin`: creates GitHub Releases
|
|
110
|
+
- `NpmPlugin`: bumps package version and publishes
|
|
111
|
+
|
|
112
|
+
## Development
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
pnpm install
|
|
116
|
+
pnpm run build
|
|
117
|
+
pnpm test
|
|
118
|
+
pnpm run test:e2e
|
|
119
|
+
pnpm run lint
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
## Notes
|
|
123
|
+
|
|
124
|
+
- Internal monorepo dependencies are written as exact versions.
|
|
125
|
+
- Tag format is fixed: `<package-name>@<version>`.
|
|
126
|
+
- In `--dry-run`, no files/git/releases/publish actions are performed.
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare abstract class DomainException extends Error {
|
|
2
|
+
readonly code: string;
|
|
3
|
+
protected constructor(code: string, message: string);
|
|
4
|
+
}
|
|
5
|
+
export declare class MissingDependencyVersionException extends DomainException {
|
|
6
|
+
constructor(packageName: string, dependencyName: string);
|
|
7
|
+
}
|
|
8
|
+
export declare class GithubCliUnavailableException extends DomainException {
|
|
9
|
+
constructor();
|
|
10
|
+
}
|
|
11
|
+
export declare class TemplateInvocationTargetException extends DomainException {
|
|
12
|
+
constructor(methodName: string);
|
|
13
|
+
}
|
|
14
|
+
export declare class TemplateMethodNotFunctionException extends DomainException {
|
|
15
|
+
constructor(methodName: string);
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=DomainException.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DomainException.d.ts","sourceRoot":"","sources":["../../src/exceptions/DomainException.ts"],"names":[],"mappings":"AAAA,8BAAsB,eAAgB,SAAQ,KAAK;IAE/C,QAAQ,CAAC,IAAI,EAAE,MAAM;IADvB,SAAS,aACE,IAAI,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM;CAKlB;AAED,qBAAa,iCAAkC,SAAQ,eAAe;gBACxD,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM;CAGxD;AAED,qBAAa,6BAA8B,SAAQ,eAAe;;CAIjE;AAED,qBAAa,iCAAkC,SAAQ,eAAe;gBACxD,UAAU,EAAE,MAAM;CAG/B;AAED,qBAAa,kCAAmC,SAAQ,eAAe;gBACzD,UAAU,EAAE,MAAM;CAG/B"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TemplateMethodNotFunctionException = exports.TemplateInvocationTargetException = exports.GithubCliUnavailableException = exports.MissingDependencyVersionException = exports.DomainException = void 0;
|
|
4
|
+
class DomainException extends Error {
|
|
5
|
+
code;
|
|
6
|
+
constructor(code, message) {
|
|
7
|
+
super(message);
|
|
8
|
+
this.code = code;
|
|
9
|
+
this.name = new.target.name;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.DomainException = DomainException;
|
|
13
|
+
class MissingDependencyVersionException extends DomainException {
|
|
14
|
+
constructor(packageName, dependencyName) {
|
|
15
|
+
super('MISSING_DEPENDENCY_VERSION', `Dependency ${dependencyName} not found in ${packageName}`);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.MissingDependencyVersionException = MissingDependencyVersionException;
|
|
19
|
+
class GithubCliUnavailableException extends DomainException {
|
|
20
|
+
constructor() {
|
|
21
|
+
super('GITHUB_CLI_UNAVAILABLE', 'GitHub release creation requires `gh` CLI when running in GitHub Actions');
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
exports.GithubCliUnavailableException = GithubCliUnavailableException;
|
|
25
|
+
class TemplateInvocationTargetException extends DomainException {
|
|
26
|
+
constructor(methodName) {
|
|
27
|
+
super('TEMPLATE_INVOCATION_TARGET_INVALID', `Cannot call method ${methodName} on non-object target`);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.TemplateInvocationTargetException = TemplateInvocationTargetException;
|
|
31
|
+
class TemplateMethodNotFunctionException extends DomainException {
|
|
32
|
+
constructor(methodName) {
|
|
33
|
+
super('TEMPLATE_METHOD_NOT_FUNCTION', `Method ${methodName} is not a function`);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
exports.TemplateMethodNotFunctionException = TemplateMethodNotFunctionException;
|
|
37
|
+
//# sourceMappingURL=DomainException.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DomainException.js","sourceRoot":"","sources":["../../src/exceptions/DomainException.ts"],"names":[],"mappings":";;;AAAA,MAAsB,eAAgB,SAAQ,KAAK;IAEtC;IADX,YACW,IAAY,EACrB,OAAe;QAEf,KAAK,CAAC,OAAO,CAAC,CAAC;QAHN,SAAI,GAAJ,IAAI,CAAQ;QAIrB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;IAC9B,CAAC;CACF;AARD,0CAQC;AAED,MAAa,iCAAkC,SAAQ,eAAe;IACpE,YAAY,WAAmB,EAAE,cAAsB;QACrD,KAAK,CAAC,4BAA4B,EAAE,cAAc,cAAc,iBAAiB,WAAW,EAAE,CAAC,CAAC;IAClG,CAAC;CACF;AAJD,8EAIC;AAED,MAAa,6BAA8B,SAAQ,eAAe;IAChE;QACE,KAAK,CAAC,wBAAwB,EAAE,0EAA0E,CAAC,CAAC;IAC9G,CAAC;CACF;AAJD,sEAIC;AAED,MAAa,iCAAkC,SAAQ,eAAe;IACpE,YAAY,UAAkB;QAC5B,KAAK,CAAC,oCAAoC,EAAE,sBAAsB,UAAU,uBAAuB,CAAC,CAAC;IACvG,CAAC;CACF;AAJD,8EAIC;AAED,MAAa,kCAAmC,SAAQ,eAAe;IACrE,YAAY,UAAkB;QAC5B,KAAK,CAAC,8BAA8B,EAAE,UAAU,UAAU,oBAAoB,CAAC,CAAC;IAClF,CAAC;CACF;AAJD,gFAIC"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,UAAU,EAAqB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,UAAU,EAAqB,MAAM,cAAc,CAAC;AA2B7D,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CA8B1D;AAYD,wBAAgB,MAAM,CAAC,GAAG,SAAgB,EAAE,OAAO,WAAwB,GAAG,MAAM,CA6CnF;AAED,eAAe,MAAM,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -13,13 +13,16 @@ const HandlebarsRenderService_1 = require("./services/HandlebarsRenderService");
|
|
|
13
13
|
const ReleaseCommitView_1 = require("./services/ReleaseCommitView");
|
|
14
14
|
const PackageManager_1 = require("./services/PackageManager");
|
|
15
15
|
const ConsoleLogger_1 = require("./services/ConsoleLogger");
|
|
16
|
-
const
|
|
16
|
+
const ExceptionHandler_1 = require("./services/ExceptionHandler");
|
|
17
17
|
const commander_1 = require("commander");
|
|
18
18
|
const node_path_1 = __importDefault(require("node:path"));
|
|
19
19
|
const ChangelogPlugin_1 = require("./plugins/ChangelogPlugin");
|
|
20
20
|
const GitPlugin_1 = require("./plugins/GitPlugin");
|
|
21
21
|
const NpmPlugin_1 = require("./plugins/NpmPlugin");
|
|
22
22
|
const PackageJsonPlugin_1 = require("./plugins/PackageJsonPlugin");
|
|
23
|
+
const GithubPlugin_1 = require("./plugins/GithubPlugin");
|
|
24
|
+
const GithubService_1 = require("./services/GithubService");
|
|
25
|
+
const GithubReleaseView_1 = require("./services/GithubReleaseView");
|
|
23
26
|
function createProgram() {
|
|
24
27
|
return new commander_1.Command()
|
|
25
28
|
.name('monorepo-semantic-release')
|
|
@@ -72,7 +75,7 @@ function runCli(cwd = process.cwd(), cliArgs = process.argv.slice(2)) {
|
|
|
72
75
|
const cliOptions = parseCliOptions(cliArgs);
|
|
73
76
|
const fsService = new NodeFileSystemService_1.NodeFileSystemService();
|
|
74
77
|
const vcsService = new GitService_1.GitService();
|
|
75
|
-
const
|
|
78
|
+
const exceptionHandler = new ExceptionHandler_1.ExceptionHandler();
|
|
76
79
|
if (cliOptions.help) {
|
|
77
80
|
return 0;
|
|
78
81
|
}
|
|
@@ -82,11 +85,19 @@ function runCli(cwd = process.cwd(), cliArgs = process.argv.slice(2)) {
|
|
|
82
85
|
const renderService = new HandlebarsRenderService_1.HandlebarsRenderService(cwd, node_path_1.default.resolve(__dirname, '..'));
|
|
83
86
|
const changelogView = new ChangelogView_1.ChangelogView(templateOverrides.changelogTemplate, renderService);
|
|
84
87
|
const releaseCommitView = new ReleaseCommitView_1.ReleaseCommitView(templateOverrides.releaseCommitTemplate, renderService);
|
|
88
|
+
const githubReleaseView = new GithubReleaseView_1.GithubReleaseView(undefined, renderService);
|
|
85
89
|
const packageManager = new PackageManager_1.PackageManager();
|
|
90
|
+
const githubService = new GithubService_1.GithubService();
|
|
91
|
+
const githubConfig = {
|
|
92
|
+
isGithubActions: process.env.GITHUB_ACTIONS === 'true',
|
|
93
|
+
repository: process.env.GITHUB_REPOSITORY,
|
|
94
|
+
token: process.env.GITHUB_TOKEN,
|
|
95
|
+
};
|
|
86
96
|
const controller = new MonorepoController_1.MonorepoController([
|
|
87
97
|
new PackageJsonPlugin_1.PackageJsonPlugin(fsService, logger),
|
|
88
98
|
new ChangelogPlugin_1.ChangelogPlugin('CHANGELOG.md', changelogView, fsService, logger),
|
|
89
99
|
new GitPlugin_1.GitPlugin(vcsService, releaseCommitView, logger),
|
|
100
|
+
new GithubPlugin_1.GithubPlugin(githubService, logger, githubConfig, githubReleaseView),
|
|
90
101
|
new NpmPlugin_1.NpmPlugin(packageManager, logger),
|
|
91
102
|
], fsService, vcsService, logger);
|
|
92
103
|
controller.discoverPackages(cwd);
|
|
@@ -94,7 +105,7 @@ function runCli(cwd = process.cwd(), cliArgs = process.argv.slice(2)) {
|
|
|
94
105
|
return 0;
|
|
95
106
|
}
|
|
96
107
|
catch (error) {
|
|
97
|
-
|
|
108
|
+
exceptionHandler.handle(error);
|
|
98
109
|
return 1;
|
|
99
110
|
}
|
|
100
111
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/main.spec.js
CHANGED
|
@@ -4,7 +4,7 @@ const vitest_1 = require("vitest");
|
|
|
4
4
|
const index_1 = require("./index");
|
|
5
5
|
const MonorepoController_1 = require("./MonorepoController");
|
|
6
6
|
const NodeFileSystemService_1 = require("./services/NodeFileSystemService");
|
|
7
|
-
const
|
|
7
|
+
const ExceptionHandler_1 = require("./services/ExceptionHandler");
|
|
8
8
|
(0, vitest_1.describe)('runCli', () => {
|
|
9
9
|
(0, vitest_1.afterEach)(() => {
|
|
10
10
|
vitest_1.vi.restoreAllMocks();
|
|
@@ -46,9 +46,9 @@ const ErrorHandler_1 = require("./services/ErrorHandler");
|
|
|
46
46
|
releaseCommitTemplate: 'templates/custom-release.hbs',
|
|
47
47
|
});
|
|
48
48
|
});
|
|
49
|
-
(0, vitest_1.it)('given a runtime error when the cli fails then it delegates error reporting to
|
|
49
|
+
(0, vitest_1.it)('given a runtime error when the cli fails then it delegates error reporting to ExceptionHandler', () => {
|
|
50
50
|
const expectedError = new Error('boom');
|
|
51
|
-
const handleSpy = vitest_1.vi.spyOn(
|
|
51
|
+
const handleSpy = vitest_1.vi.spyOn(ExceptionHandler_1.ExceptionHandler.prototype, 'handle').mockImplementation(() => undefined);
|
|
52
52
|
vitest_1.vi.spyOn(NodeFileSystemService_1.NodeFileSystemService.prototype, 'readJson').mockImplementation(() => {
|
|
53
53
|
throw expectedError;
|
|
54
54
|
});
|
package/dist/main.spec.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.spec.js","sourceRoot":"","sources":["../src/main.spec.ts"],"names":[],"mappings":";;AAAA,mCAA6D;AAC7D,mCAAkD;AAClD,6DAA0D;AAC1D,4EAAyE;AACzE,
|
|
1
|
+
{"version":3,"file":"main.spec.js","sourceRoot":"","sources":["../src/main.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NpmPackage.d.ts","sourceRoot":"","sources":["../../src/models/NpmPackage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"NpmPackage.d.ts","sourceRoot":"","sources":["../../src/models/NpmPackage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,qBAAa,UAAW,YAAW,QAAQ;IAMvC,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM;IACxB,QAAQ,CAAC,SAAS,EAAE,OAAO;IAC3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAC7C,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAVlD,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,GAAG,UAAU;gBAKnE,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,OAAO,EAClB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACpC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAGlD,kBAAkB,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE;IAIvD,aAAa,CAAC,UAAU,EAAE,MAAM;IAIhC,YAAY,IAAI,MAAM;IAItB,OAAO,CAAC,iCAAiC;IAQzC,OAAO,CAAC,qBAAqB;IAK7B,oBAAoB,CAAC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,uBAAuB,EAAE;IAiBtF,oBAAoB,CAAC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAI1D,aAAa,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM;CAahD"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.NpmPackage = void 0;
|
|
4
4
|
const SemVerBumpType_1 = require("./SemVerBumpType");
|
|
5
|
+
const DomainException_1 = require("../exceptions/DomainException");
|
|
5
6
|
class NpmPackage {
|
|
6
7
|
name;
|
|
7
8
|
dirname;
|
|
@@ -32,7 +33,7 @@ class NpmPackage {
|
|
|
32
33
|
findDependencyVersionByNameOrFail(depName) {
|
|
33
34
|
const dependencyVersion = this.dependencies[depName] ?? this.devDependencies[depName];
|
|
34
35
|
if (!dependencyVersion) {
|
|
35
|
-
throw new
|
|
36
|
+
throw new DomainException_1.MissingDependencyVersionException(this.name, depName);
|
|
36
37
|
}
|
|
37
38
|
return dependencyVersion;
|
|
38
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NpmPackage.js","sourceRoot":"","sources":["../../src/models/NpmPackage.ts"],"names":[],"mappings":";;;AAGA,qDAAkD;
|
|
1
|
+
{"version":3,"file":"NpmPackage.js","sourceRoot":"","sources":["../../src/models/NpmPackage.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChangelogPlugin.spec.d.ts","sourceRoot":"","sources":["../../src/plugins/ChangelogPlugin.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const vitest_1 = require("vitest");
|
|
4
|
+
const ChangelogPlugin_1 = require("./ChangelogPlugin");
|
|
5
|
+
const NpmPackage_1 = require("../models/NpmPackage");
|
|
6
|
+
const ConventionalCommit_1 = require("../models/ConventionalCommit");
|
|
7
|
+
(0, vitest_1.describe)('ChangelogPlugin', () => {
|
|
8
|
+
(0, vitest_1.it)('given existing changelog when package is released then existing content is passed to view and file is rewritten', () => {
|
|
9
|
+
const view = {
|
|
10
|
+
render: vitest_1.vi.fn().mockReturnValue('new changelog'),
|
|
11
|
+
};
|
|
12
|
+
const fs = {
|
|
13
|
+
fileExists: vitest_1.vi.fn().mockReturnValue(true),
|
|
14
|
+
readFile: vitest_1.vi.fn().mockReturnValue('old changelog'),
|
|
15
|
+
writeFile: vitest_1.vi.fn(),
|
|
16
|
+
};
|
|
17
|
+
const logger = {
|
|
18
|
+
info: vitest_1.vi.fn(),
|
|
19
|
+
};
|
|
20
|
+
const plugin = new ChangelogPlugin_1.ChangelogPlugin('CHANGELOG.md', view, fs, logger);
|
|
21
|
+
const pkg = NpmPackage_1.NpmPackage.createFromPackage({ name: 'pkg-a', version: '1.0.0' }, '/repo/packages/pkg-a');
|
|
22
|
+
const commits = [ConventionalCommit_1.ConventionalCommit.parse('fix(pkg-a): patch')];
|
|
23
|
+
plugin.onPackageReleased?.({
|
|
24
|
+
dryRun: false,
|
|
25
|
+
noPush: false,
|
|
26
|
+
noPublish: false,
|
|
27
|
+
pkg,
|
|
28
|
+
releasedVersions: new Map([['pkg-a', '1.0.1']]),
|
|
29
|
+
releasedPackages: [pkg],
|
|
30
|
+
releasedCommits: commits,
|
|
31
|
+
});
|
|
32
|
+
(0, vitest_1.expect)(view.render).toHaveBeenCalledWith({
|
|
33
|
+
pkg,
|
|
34
|
+
releasedPackages: [pkg],
|
|
35
|
+
releasedVersions: new Map([['pkg-a', '1.0.1']]),
|
|
36
|
+
releasedCommits: commits,
|
|
37
|
+
existing: 'old changelog',
|
|
38
|
+
});
|
|
39
|
+
(0, vitest_1.expect)(fs.writeFile).toHaveBeenCalledWith('/repo/packages/pkg-a/CHANGELOG.md', 'new changelog');
|
|
40
|
+
(0, vitest_1.expect)(logger.info).toHaveBeenCalledWith('WRITE pkg-a CHANGELOG.md');
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
//# sourceMappingURL=ChangelogPlugin.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChangelogPlugin.spec.js","sourceRoot":"","sources":["../../src/plugins/ChangelogPlugin.spec.ts"],"names":[],"mappings":";;AAAA,mCAAkD;AAClD,uDAAoD;AACpD,qDAAkD;AAClD,qEAAkE;AAElE,IAAA,iBAAQ,EAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,IAAA,WAAE,EAAC,iHAAiH,EAAE,GAAG,EAAE;QACzH,MAAM,IAAI,GAAG;YACX,MAAM,EAAE,WAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,eAAe,CAAC;SACjD,CAAC;QACF,MAAM,EAAE,GAAG;YACT,UAAU,EAAE,WAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC;YACzC,QAAQ,EAAE,WAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,eAAe,CAAC;YAClD,SAAS,EAAE,WAAE,CAAC,EAAE,EAAE;SACnB,CAAC;QACF,MAAM,MAAM,GAAG;YACb,IAAI,EAAE,WAAE,CAAC,EAAE,EAAE;SACd,CAAC;QAEF,MAAM,MAAM,GAAG,IAAI,iCAAe,CAAC,cAAc,EAAE,IAAa,EAAE,EAAW,EAAE,MAAe,CAAC,CAAC;QAChG,MAAM,GAAG,GAAG,uBAAU,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,sBAAsB,CAAC,CAAC;QACtG,MAAM,OAAO,GAAG,CAAC,uCAAkB,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAEhE,MAAM,CAAC,iBAAiB,EAAE,CAAC;YACzB,MAAM,EAAE,KAAK;YACb,MAAM,EAAE,KAAK;YACb,SAAS,EAAE,KAAK;YAChB,GAAG;YACH,gBAAgB,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YAC/C,gBAAgB,EAAE,CAAC,GAAG,CAAC;YACvB,eAAe,EAAE,OAAO;SACzB,CAAC,CAAC;QAEH,IAAA,eAAM,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC;YACvC,GAAG;YACH,gBAAgB,EAAE,CAAC,GAAG,CAAC;YACvB,gBAAgB,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YAC/C,eAAe,EAAE,OAAO;YACxB,QAAQ,EAAE,eAAe;SAC1B,CAAC,CAAC;QACH,IAAA,eAAM,EAAC,EAAE,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,mCAAmC,EAAE,eAAe,CAAC,CAAC;QAChG,IAAA,eAAM,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC,oBAAoB,CAAC,6BAA6B,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GitPlugin.spec.d.ts","sourceRoot":"","sources":["../../src/plugins/GitPlugin.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const vitest_1 = require("vitest");
|
|
4
|
+
const GitPlugin_1 = require("./GitPlugin");
|
|
5
|
+
const NpmPackage_1 = require("../models/NpmPackage");
|
|
6
|
+
(0, vitest_1.describe)('GitPlugin', () => {
|
|
7
|
+
(0, vitest_1.it)('given dry run when release completes then no git actions are executed', () => {
|
|
8
|
+
const vcs = {
|
|
9
|
+
commit: vitest_1.vi.fn(),
|
|
10
|
+
createTag: vitest_1.vi.fn(),
|
|
11
|
+
push: vitest_1.vi.fn(),
|
|
12
|
+
};
|
|
13
|
+
const releaseCommitView = {
|
|
14
|
+
render: vitest_1.vi.fn().mockReturnValue('release commit message'),
|
|
15
|
+
};
|
|
16
|
+
const logger = {
|
|
17
|
+
info: vitest_1.vi.fn(),
|
|
18
|
+
};
|
|
19
|
+
const plugin = new GitPlugin_1.GitPlugin(vcs, releaseCommitView, logger);
|
|
20
|
+
plugin.onReleaseComplete?.({
|
|
21
|
+
dryRun: true,
|
|
22
|
+
noPush: false,
|
|
23
|
+
noPublish: false,
|
|
24
|
+
releasedPackages: [],
|
|
25
|
+
releasedVersions: new Map(),
|
|
26
|
+
releasedCommits: new Map(),
|
|
27
|
+
});
|
|
28
|
+
(0, vitest_1.expect)(releaseCommitView.render).not.toHaveBeenCalled();
|
|
29
|
+
(0, vitest_1.expect)(vcs.commit).not.toHaveBeenCalled();
|
|
30
|
+
(0, vitest_1.expect)(vcs.createTag).not.toHaveBeenCalled();
|
|
31
|
+
(0, vitest_1.expect)(vcs.push).not.toHaveBeenCalled();
|
|
32
|
+
});
|
|
33
|
+
(0, vitest_1.it)('given no push option when release completes then commit and tags are created but push is skipped', () => {
|
|
34
|
+
const vcs = {
|
|
35
|
+
commit: vitest_1.vi.fn(),
|
|
36
|
+
createTag: vitest_1.vi.fn(),
|
|
37
|
+
push: vitest_1.vi.fn(),
|
|
38
|
+
};
|
|
39
|
+
const releaseCommitView = {
|
|
40
|
+
render: vitest_1.vi.fn().mockReturnValue('release commit message'),
|
|
41
|
+
};
|
|
42
|
+
const logger = {
|
|
43
|
+
info: vitest_1.vi.fn(),
|
|
44
|
+
};
|
|
45
|
+
const plugin = new GitPlugin_1.GitPlugin(vcs, releaseCommitView, logger);
|
|
46
|
+
const pkg = NpmPackage_1.NpmPackage.createFromPackage({ name: 'pkg-a', version: '1.0.0' }, '/repo/packages/pkg-a');
|
|
47
|
+
plugin.onReleaseComplete?.({
|
|
48
|
+
dryRun: false,
|
|
49
|
+
noPush: true,
|
|
50
|
+
noPublish: false,
|
|
51
|
+
releasedPackages: [pkg],
|
|
52
|
+
releasedVersions: new Map([['pkg-a', '1.0.1']]),
|
|
53
|
+
releasedCommits: new Map(),
|
|
54
|
+
});
|
|
55
|
+
(0, vitest_1.expect)(vcs.commit).toHaveBeenCalledWith('release commit message');
|
|
56
|
+
(0, vitest_1.expect)(vcs.createTag).toHaveBeenCalledWith('pkg-a@1.0.1');
|
|
57
|
+
(0, vitest_1.expect)(vcs.push).not.toHaveBeenCalled();
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
//# sourceMappingURL=GitPlugin.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GitPlugin.spec.js","sourceRoot":"","sources":["../../src/plugins/GitPlugin.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ReleaseCompletePluginContext, ReleasePlugin } from './ReleasePlugin';
|
|
2
|
+
import { GithubService } from '../services/GithubService';
|
|
3
|
+
import { ConsoleLogger } from '../services/ConsoleLogger';
|
|
4
|
+
import { GithubReleaseView } from '../services/GithubReleaseView';
|
|
5
|
+
export interface GithubPluginConfig {
|
|
6
|
+
isGithubActions: boolean;
|
|
7
|
+
repository?: string;
|
|
8
|
+
token?: string;
|
|
9
|
+
}
|
|
10
|
+
export declare class GithubPlugin implements ReleasePlugin {
|
|
11
|
+
private readonly githubService;
|
|
12
|
+
private readonly logger;
|
|
13
|
+
private readonly config;
|
|
14
|
+
private readonly githubReleaseView;
|
|
15
|
+
constructor(githubService: GithubService, logger: ConsoleLogger, config: GithubPluginConfig, githubReleaseView: GithubReleaseView);
|
|
16
|
+
onReleaseComplete(context: ReleaseCompletePluginContext): void;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=GithubPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GithubPlugin.d.ts","sourceRoot":"","sources":["../../src/plugins/GithubPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAGlE,MAAM,WAAW,kBAAkB;IACjC,eAAe,EAAE,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,YAAa,YAAW,aAAa;IAE9C,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;gBAHjB,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,kBAAkB,EAC1B,iBAAiB,EAAE,iBAAiB;IAGvD,iBAAiB,CAAC,OAAO,EAAE,4BAA4B,GAAG,IAAI;CAmC/D"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GithubPlugin = void 0;
|
|
4
|
+
const DomainException_1 = require("../exceptions/DomainException");
|
|
5
|
+
class GithubPlugin {
|
|
6
|
+
githubService;
|
|
7
|
+
logger;
|
|
8
|
+
config;
|
|
9
|
+
githubReleaseView;
|
|
10
|
+
constructor(githubService, logger, config, githubReleaseView) {
|
|
11
|
+
this.githubService = githubService;
|
|
12
|
+
this.logger = logger;
|
|
13
|
+
this.config = config;
|
|
14
|
+
this.githubReleaseView = githubReleaseView;
|
|
15
|
+
}
|
|
16
|
+
onReleaseComplete(context) {
|
|
17
|
+
if (context.dryRun || context.noPush) {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
if (!this.config.isGithubActions || !this.config.repository || !this.config.token) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
if (!this.githubService.isCliAvailable()) {
|
|
24
|
+
throw new DomainException_1.GithubCliUnavailableException();
|
|
25
|
+
}
|
|
26
|
+
for (const pkg of context.releasedPackages) {
|
|
27
|
+
const version = context.releasedVersions.get(pkg.name);
|
|
28
|
+
if (!version) {
|
|
29
|
+
continue;
|
|
30
|
+
}
|
|
31
|
+
this.githubService.createRelease({
|
|
32
|
+
repository: this.config.repository,
|
|
33
|
+
token: this.config.token,
|
|
34
|
+
tagName: `${pkg.name}@${version}`,
|
|
35
|
+
title: `${pkg.name} v${version}`,
|
|
36
|
+
notes: this.githubReleaseView.render({
|
|
37
|
+
packageName: pkg.name,
|
|
38
|
+
version,
|
|
39
|
+
commits: context.releasedCommits.get(pkg.name) ?? [],
|
|
40
|
+
dependencyUpdates: pkg.getDependencyUpdates(context.releasedVersions),
|
|
41
|
+
}),
|
|
42
|
+
prerelease: version.includes('-'),
|
|
43
|
+
});
|
|
44
|
+
this.logger.info(`RELEASE ${pkg.name}@${version}`);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
exports.GithubPlugin = GithubPlugin;
|
|
49
|
+
//# sourceMappingURL=GithubPlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GithubPlugin.js","sourceRoot":"","sources":["../../src/plugins/GithubPlugin.ts"],"names":[],"mappings":";;;AAIA,mEAA8E;AAQ9E,MAAa,YAAY;IAEJ;IACA;IACA;IACA;IAJnB,YACmB,aAA4B,EAC5B,MAAqB,EACrB,MAA0B,EAC1B,iBAAoC;QAHpC,kBAAa,GAAb,aAAa,CAAe;QAC5B,WAAM,GAAN,MAAM,CAAe;QACrB,WAAM,GAAN,MAAM,CAAoB;QAC1B,sBAAiB,GAAjB,iBAAiB,CAAmB;IACpD,CAAC;IAEJ,iBAAiB,CAAC,OAAqC;QACrD,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACrC,OAAO;QACT,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAClF,OAAO;QACT,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,EAAE,CAAC;YACzC,MAAM,IAAI,+CAA6B,EAAE,CAAC;QAC5C,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACvD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,SAAS;YACX,CAAC;YAED,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;gBAC/B,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;gBAClC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;gBACxB,OAAO,EAAE,GAAG,GAAG,CAAC,IAAI,IAAI,OAAO,EAAE;gBACjC,KAAK,EAAE,GAAG,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE;gBAChC,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC;oBACnC,WAAW,EAAE,GAAG,CAAC,IAAI;oBACrB,OAAO;oBACP,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACpD,iBAAiB,EAAE,GAAG,CAAC,oBAAoB,CAAC,OAAO,CAAC,gBAAgB,CAAC;iBACtE,CAAC;gBACF,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;aAClC,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;CACF;AA3CD,oCA2CC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GithubPlugin.spec.d.ts","sourceRoot":"","sources":["../../src/plugins/GithubPlugin.spec.ts"],"names":[],"mappings":""}
|