@glpkg/publisher 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +215 -0
- package/dist/__tests__/cli.test.d.ts +2 -0
- package/dist/__tests__/cli.test.d.ts.map +1 -0
- package/dist/__tests__/cli.test.js +93 -0
- package/dist/__tests__/cli.test.js.map +1 -0
- package/dist/__tests__/generic/manifest-reader.test.d.ts +2 -0
- package/dist/__tests__/generic/manifest-reader.test.d.ts.map +1 -0
- package/dist/__tests__/generic/manifest-reader.test.js +170 -0
- package/dist/__tests__/generic/manifest-reader.test.js.map +1 -0
- package/dist/__tests__/generic/tarball-creator.test.d.ts +2 -0
- package/dist/__tests__/generic/tarball-creator.test.d.ts.map +1 -0
- package/dist/__tests__/generic/tarball-creator.test.js +188 -0
- package/dist/__tests__/generic/tarball-creator.test.js.map +1 -0
- package/dist/__tests__/helpers/git-helper.d.ts +24 -0
- package/dist/__tests__/helpers/git-helper.d.ts.map +1 -0
- package/dist/__tests__/helpers/git-helper.js +104 -0
- package/dist/__tests__/helpers/git-helper.js.map +1 -0
- package/dist/__tests__/package-deletion.test.d.ts +2 -0
- package/dist/__tests__/package-deletion.test.d.ts.map +1 -0
- package/dist/__tests__/package-deletion.test.js +148 -0
- package/dist/__tests__/package-deletion.test.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +61 -0
- package/dist/cli.js.map +1 -0
- package/dist/core/generic-publisher.d.ts +7 -0
- package/dist/core/generic-publisher.d.ts.map +1 -0
- package/dist/core/generic-publisher.js +116 -0
- package/dist/core/generic-publisher.js.map +1 -0
- package/dist/core/npmrc-manager.d.ts +24 -0
- package/dist/core/npmrc-manager.d.ts.map +1 -0
- package/dist/core/npmrc-manager.js +148 -0
- package/dist/core/npmrc-manager.js.map +1 -0
- package/dist/core/project-detector.d.ts +27 -0
- package/dist/core/project-detector.d.ts.map +1 -0
- package/dist/core/project-detector.js +113 -0
- package/dist/core/project-detector.js.map +1 -0
- package/dist/core/publisher.d.ts +57 -0
- package/dist/core/publisher.d.ts.map +1 -0
- package/dist/core/publisher.js +350 -0
- package/dist/core/publisher.js.map +1 -0
- package/dist/core/version-manager.d.ts +49 -0
- package/dist/core/version-manager.d.ts.map +1 -0
- package/dist/core/version-manager.js +184 -0
- package/dist/core/version-manager.js.map +1 -0
- package/dist/generic/gitlab-api.d.ts +16 -0
- package/dist/generic/gitlab-api.d.ts.map +1 -0
- package/dist/generic/gitlab-api.js +79 -0
- package/dist/generic/gitlab-api.js.map +1 -0
- package/dist/generic/manifest-reader.d.ts +4 -0
- package/dist/generic/manifest-reader.d.ts.map +1 -0
- package/dist/generic/manifest-reader.js +60 -0
- package/dist/generic/manifest-reader.js.map +1 -0
- package/dist/generic/tarball-creator.d.ts +9 -0
- package/dist/generic/tarball-creator.d.ts.map +1 -0
- package/dist/generic/tarball-creator.js +92 -0
- package/dist/generic/tarball-creator.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/dist/types/index.d.ts +46 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +3 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/git.d.ts +25 -0
- package/dist/utils/git.d.ts.map +1 -0
- package/dist/utils/git.js +115 -0
- package/dist/utils/git.js.map +1 -0
- package/dist/utils/package.d.ts +14 -0
- package/dist/utils/package.d.ts.map +1 -0
- package/dist/utils/package.js +86 -0
- package/dist/utils/package.js.map +1 -0
- package/dist/utils/token.d.ts +6 -0
- package/dist/utils/token.d.ts.map +1 -0
- package/dist/utils/token.js +43 -0
- package/dist/utils/token.js.map +1 -0
- package/dist/utils/version.d.ts +14 -0
- package/dist/utils/version.d.ts.map +1 -0
- package/dist/utils/version.js +143 -0
- package/dist/utils/version.js.map +1 -0
- package/package.json +64 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 microature
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
# @microature/gitlab-publisher
|
|
2
|
+
|
|
3
|
+
A CLI tool for easily publishing npm packages to GitLab Package Registry.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- 🚀 Publish npm packages to GitLab Package Registry with ease
|
|
8
|
+
- 🔄 Automatic project detection using `glab` CLI or git remote
|
|
9
|
+
- 📦 Support for both project-level and group-level registries
|
|
10
|
+
- 🏷️ Version management (latest, dev, beta tags)
|
|
11
|
+
- 🔒 Secure token management via environment variables
|
|
12
|
+
- 🎨 Beautiful CLI output with colors and spinners
|
|
13
|
+
- 🧪 Dry-run mode for testing
|
|
14
|
+
|
|
15
|
+
## Installation
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
# Install globally
|
|
19
|
+
npm install -g @microature/gitlab-publisher
|
|
20
|
+
|
|
21
|
+
# Or use as a dev dependency
|
|
22
|
+
npm install -D @microature/gitlab-publisher
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Prerequisites
|
|
26
|
+
|
|
27
|
+
1. **GitLab Personal Access Token** with `api` and `write_registry` scopes
|
|
28
|
+
2. Your package.json should have a `prepublishOnly` script for building (if needed)
|
|
29
|
+
3. (Optional) `glab` CLI for automatic project detection
|
|
30
|
+
|
|
31
|
+
## Quick Start
|
|
32
|
+
|
|
33
|
+
### 1. Create a `.env` file in your project root:
|
|
34
|
+
|
|
35
|
+
```env
|
|
36
|
+
GITLAB_AUTH_TOKEN=your-personal-access-token
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### 2. Add to your package.json (optional):
|
|
40
|
+
|
|
41
|
+
```json
|
|
42
|
+
{
|
|
43
|
+
"scripts": {
|
|
44
|
+
"prepublishOnly": "npm run build",
|
|
45
|
+
"publish:gitlab": "gitlab-publish",
|
|
46
|
+
"publish:dev": "gitlab-publish dev",
|
|
47
|
+
"publish:beta": "gitlab-publish beta --bump minor"
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### 3. Publish your package:
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
# Publish latest version
|
|
56
|
+
gitlab-publish
|
|
57
|
+
|
|
58
|
+
# Publish with version bump
|
|
59
|
+
gitlab-publish --bump patch
|
|
60
|
+
|
|
61
|
+
# Publish development version
|
|
62
|
+
gitlab-publish dev
|
|
63
|
+
|
|
64
|
+
# Publish beta version
|
|
65
|
+
gitlab-publish beta --bump minor
|
|
66
|
+
|
|
67
|
+
# Dry run (test without publishing)
|
|
68
|
+
gitlab-publish --dry-run
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## Usage
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
gitlab-publish [type] [options]
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### Arguments
|
|
78
|
+
|
|
79
|
+
- `type` - Publish type: `latest` (default), `dev`, `beta`
|
|
80
|
+
|
|
81
|
+
### Options
|
|
82
|
+
|
|
83
|
+
- `--bump <type>` - Version bump type: `patch`, `minor`, `major`
|
|
84
|
+
- `--dry-run` - Run without actually publishing
|
|
85
|
+
- `--registry-type <type>` - Registry type: `project` (default), `group`
|
|
86
|
+
- `--token <token>` - GitLab Personal Access Token (overrides .env)
|
|
87
|
+
- `--project-id <id>` - GitLab Project ID (auto-detected from current directory)
|
|
88
|
+
- `--no-build` - Skip prepublishOnly script
|
|
89
|
+
- `--git-tag` - Create git commit and tag when bumping version (uses npm version defaults)
|
|
90
|
+
- `--push` - Push commits and tags to remote after publish (requires --git-tag)
|
|
91
|
+
- `--verbose` - Show detailed output
|
|
92
|
+
- `-V, --version` - Output the version number
|
|
93
|
+
- `-h, --help` - Display help for command
|
|
94
|
+
|
|
95
|
+
## Examples
|
|
96
|
+
|
|
97
|
+
### Basic Publishing
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
# Publish current version
|
|
101
|
+
gitlab-publish
|
|
102
|
+
|
|
103
|
+
# Publish with patch version bump (1.0.0 -> 1.0.1)
|
|
104
|
+
gitlab-publish --bump patch
|
|
105
|
+
|
|
106
|
+
# Publish with git commit/tag and push
|
|
107
|
+
gitlab-publish --bump patch --git-tag --push
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
### Development Versions
|
|
111
|
+
|
|
112
|
+
```bash
|
|
113
|
+
# Publish dev version with git commit hash
|
|
114
|
+
# Example: 1.0.0 -> 1.0.1-dev.abc1234
|
|
115
|
+
gitlab-publish dev
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
### Beta Versions
|
|
119
|
+
|
|
120
|
+
```bash
|
|
121
|
+
# Publish beta version
|
|
122
|
+
gitlab-publish beta
|
|
123
|
+
|
|
124
|
+
# Publish beta with minor bump (1.0.0 -> 1.1.0-beta.0)
|
|
125
|
+
gitlab-publish beta --bump minor
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
### Testing
|
|
129
|
+
|
|
130
|
+
```bash
|
|
131
|
+
# Test configuration without publishing
|
|
132
|
+
gitlab-publish --dry-run
|
|
133
|
+
|
|
134
|
+
# Verbose output for debugging
|
|
135
|
+
gitlab-publish --verbose --dry-run
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
### Group-Level Registry
|
|
139
|
+
|
|
140
|
+
```bash
|
|
141
|
+
# Use group-level registry instead of project-level
|
|
142
|
+
gitlab-publish --registry-type group
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
## Configuration
|
|
146
|
+
|
|
147
|
+
### Environment Variables
|
|
148
|
+
|
|
149
|
+
- `GITLAB_AUTH_TOKEN` - Your GitLab Personal Access Token (required)
|
|
150
|
+
|
|
151
|
+
### Package.json Requirements
|
|
152
|
+
|
|
153
|
+
Your package must have:
|
|
154
|
+
- A scoped name (e.g., `@yourscope/package-name`)
|
|
155
|
+
- A `prepublishOnly` script if building is required
|
|
156
|
+
|
|
157
|
+
Example:
|
|
158
|
+
```json
|
|
159
|
+
{
|
|
160
|
+
"name": "@yourscope/your-package",
|
|
161
|
+
"version": "1.0.0",
|
|
162
|
+
"scripts": {
|
|
163
|
+
"build": "your-build-command",
|
|
164
|
+
"prepublishOnly": "npm run build"
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
## How It Works
|
|
170
|
+
|
|
171
|
+
1. **Auto-detection**: Automatically detects project information from git remote or `glab` CLI
|
|
172
|
+
2. **Configuration**: Creates a temporary `.npmrc` with GitLab registry settings
|
|
173
|
+
3. **Publishing**: Runs `npm publish` with appropriate settings
|
|
174
|
+
4. **Cleanup**: Removes temporary `.npmrc` file for security
|
|
175
|
+
|
|
176
|
+
## Troubleshooting
|
|
177
|
+
|
|
178
|
+
### Authentication Error (403 Forbidden)
|
|
179
|
+
|
|
180
|
+
Ensure your Personal Access Token has the correct scopes:
|
|
181
|
+
- `api`
|
|
182
|
+
- `write_registry`
|
|
183
|
+
- `read_registry` (optional but recommended)
|
|
184
|
+
|
|
185
|
+
### Project ID Not Found
|
|
186
|
+
|
|
187
|
+
The tool auto-detects the project ID using `glab` CLI. Make sure:
|
|
188
|
+
1. You have authenticated with `glab auth login`
|
|
189
|
+
2. You are in a Git repository with GitLab remote
|
|
190
|
+
3. The repository exists on GitLab
|
|
191
|
+
|
|
192
|
+
### No prepublishOnly Script
|
|
193
|
+
|
|
194
|
+
Add a `prepublishOnly` script to your package.json:
|
|
195
|
+
```json
|
|
196
|
+
{
|
|
197
|
+
"scripts": {
|
|
198
|
+
"prepublishOnly": "npm run build"
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
Or use `--no-build` flag to skip the build step.
|
|
204
|
+
|
|
205
|
+
## License
|
|
206
|
+
|
|
207
|
+
MIT
|
|
208
|
+
|
|
209
|
+
## Contributing
|
|
210
|
+
|
|
211
|
+
Issues and pull requests are welcome at [GitLab](https://gitlab.com/microature/gitlab-publisher).
|
|
212
|
+
|
|
213
|
+
## Author
|
|
214
|
+
|
|
215
|
+
microature
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/cli.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
const vitest_1 = require("vitest");
|
|
37
|
+
const execa_1 = require("execa");
|
|
38
|
+
const path = __importStar(require("path"));
|
|
39
|
+
const git_helper_1 = require("./helpers/git-helper");
|
|
40
|
+
const CLI_PATH = path.join(__dirname, '../../dist/cli.js');
|
|
41
|
+
const TEST_PACKAGE_DIR = path.join(__dirname, '../../test-package');
|
|
42
|
+
const gitHelper = new git_helper_1.GitTestHelper(TEST_PACKAGE_DIR);
|
|
43
|
+
(0, vitest_1.describe)('CLI', () => {
|
|
44
|
+
(0, vitest_1.it)('should show help when no arguments provided', async () => {
|
|
45
|
+
const { stdout } = await (0, execa_1.execa)('node', [CLI_PATH]);
|
|
46
|
+
(0, vitest_1.expect)(stdout).toContain('Usage: gitlab-publish');
|
|
47
|
+
(0, vitest_1.expect)(stdout).toContain('CLI tool for publishing npm packages');
|
|
48
|
+
});
|
|
49
|
+
(0, vitest_1.it)('should show version', async () => {
|
|
50
|
+
const { stdout } = await (0, execa_1.execa)('node', [CLI_PATH, '--version']);
|
|
51
|
+
(0, vitest_1.expect)(stdout).toMatch(/\d+\.\d+\.\d+/);
|
|
52
|
+
});
|
|
53
|
+
(0, vitest_1.it)('should show help with --help', async () => {
|
|
54
|
+
const { stdout } = await (0, execa_1.execa)('node', [CLI_PATH, '--help']);
|
|
55
|
+
(0, vitest_1.expect)(stdout).toContain('Arguments:');
|
|
56
|
+
(0, vitest_1.expect)(stdout).toContain('type');
|
|
57
|
+
(0, vitest_1.expect)(stdout).toContain('Publish type (latest, dev, beta)');
|
|
58
|
+
});
|
|
59
|
+
(0, vitest_1.it)('should show --force option in help', async () => {
|
|
60
|
+
const { stdout } = await (0, execa_1.execa)('node', [CLI_PATH, '--help']);
|
|
61
|
+
(0, vitest_1.expect)(stdout).toContain('--force');
|
|
62
|
+
(0, vitest_1.expect)(stdout).toContain('skip git clean check');
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
(0, vitest_1.describe)('CLI - dev publish (dry-run)', () => {
|
|
66
|
+
(0, vitest_1.beforeEach)(() => {
|
|
67
|
+
// Ensure test-package is in clean state before each test
|
|
68
|
+
gitHelper.ensureClean();
|
|
69
|
+
});
|
|
70
|
+
(0, vitest_1.it)('should run dev publish in dry-run mode', async () => {
|
|
71
|
+
const { stdout } = await (0, execa_1.execa)('node', [CLI_PATH, 'dev', '--dry-run', '--verbose'], {
|
|
72
|
+
cwd: TEST_PACKAGE_DIR,
|
|
73
|
+
});
|
|
74
|
+
(0, vitest_1.expect)(stdout).toContain('GitLab NPM Publisher');
|
|
75
|
+
(0, vitest_1.expect)(stdout).toContain('npm publish --dry-run');
|
|
76
|
+
(0, vitest_1.expect)(stdout).toContain('Cleaned up temporary .npmrc');
|
|
77
|
+
});
|
|
78
|
+
(0, vitest_1.it)('should detect project information', async () => {
|
|
79
|
+
const { stdout } = await (0, execa_1.execa)('node', [CLI_PATH, 'dev', '--dry-run', '--verbose'], {
|
|
80
|
+
cwd: TEST_PACKAGE_DIR,
|
|
81
|
+
});
|
|
82
|
+
(0, vitest_1.expect)(stdout).toContain('Registry URL');
|
|
83
|
+
(0, vitest_1.expect)(stdout).toContain('gitlab.com');
|
|
84
|
+
});
|
|
85
|
+
(0, vitest_1.it)('should verify package.json is clean after dry-run', async () => {
|
|
86
|
+
await (0, execa_1.execa)('node', [CLI_PATH, 'dev', '--dry-run'], {
|
|
87
|
+
cwd: TEST_PACKAGE_DIR,
|
|
88
|
+
});
|
|
89
|
+
// Verify package.json was reset (dry-run shouldn't persist changes)
|
|
90
|
+
(0, vitest_1.expect)(gitHelper.isClean()).toBe(true);
|
|
91
|
+
});
|
|
92
|
+
});
|
|
93
|
+
//# sourceMappingURL=cli.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.test.js","sourceRoot":"","sources":["../../src/__tests__/cli.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manifest-reader.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/generic/manifest-reader.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
const vitest_1 = require("vitest");
|
|
37
|
+
const fs = __importStar(require("fs"));
|
|
38
|
+
const path = __importStar(require("path"));
|
|
39
|
+
const os = __importStar(require("os"));
|
|
40
|
+
const manifest_reader_1 = require("../../generic/manifest-reader");
|
|
41
|
+
(0, vitest_1.describe)('manifest-reader', () => {
|
|
42
|
+
let tempDir;
|
|
43
|
+
(0, vitest_1.beforeEach)(() => {
|
|
44
|
+
tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'manifest-test-'));
|
|
45
|
+
});
|
|
46
|
+
(0, vitest_1.afterEach)(() => {
|
|
47
|
+
fs.rmSync(tempDir, { recursive: true, force: true });
|
|
48
|
+
});
|
|
49
|
+
(0, vitest_1.describe)('readManifest', () => {
|
|
50
|
+
(0, vitest_1.it)('should read valid manifest with all required fields', () => {
|
|
51
|
+
const manifestPath = path.join(tempDir, 'skit.json');
|
|
52
|
+
fs.writeFileSync(manifestPath, JSON.stringify({
|
|
53
|
+
name: '@microature/tda-kit',
|
|
54
|
+
version: '0.1.0',
|
|
55
|
+
files: ['profiles/**', 'README.md']
|
|
56
|
+
}));
|
|
57
|
+
const manifest = (0, manifest_reader_1.readManifest)(manifestPath);
|
|
58
|
+
(0, vitest_1.expect)(manifest.name).toBe('@microature/tda-kit');
|
|
59
|
+
(0, vitest_1.expect)(manifest.version).toBe('0.1.0');
|
|
60
|
+
(0, vitest_1.expect)(manifest.files).toEqual(['profiles/**', 'README.md']);
|
|
61
|
+
});
|
|
62
|
+
(0, vitest_1.it)('should read manifest with optional fields', () => {
|
|
63
|
+
const manifestPath = path.join(tempDir, 'custom.json');
|
|
64
|
+
fs.writeFileSync(manifestPath, JSON.stringify({
|
|
65
|
+
name: 'my-package',
|
|
66
|
+
version: '1.0.0',
|
|
67
|
+
files: ['dist/**'],
|
|
68
|
+
exclude: ['**/*.test.js'],
|
|
69
|
+
scripts: { prepublish: 'npm run build' },
|
|
70
|
+
outputName: 'my-pkg-v1.tar.gz'
|
|
71
|
+
}));
|
|
72
|
+
const manifest = (0, manifest_reader_1.readManifest)(manifestPath);
|
|
73
|
+
(0, vitest_1.expect)(manifest.exclude).toEqual(['**/*.test.js']);
|
|
74
|
+
(0, vitest_1.expect)(manifest.scripts?.prepublish).toBe('npm run build');
|
|
75
|
+
(0, vitest_1.expect)(manifest.outputName).toBe('my-pkg-v1.tar.gz');
|
|
76
|
+
});
|
|
77
|
+
(0, vitest_1.it)('should throw error for non-existent file', () => {
|
|
78
|
+
(0, vitest_1.expect)(() => (0, manifest_reader_1.readManifest)('/non/existent/path.json'))
|
|
79
|
+
.toThrow('Manifest file not found');
|
|
80
|
+
});
|
|
81
|
+
(0, vitest_1.it)('should throw error for missing name field', () => {
|
|
82
|
+
const manifestPath = path.join(tempDir, 'invalid.json');
|
|
83
|
+
fs.writeFileSync(manifestPath, JSON.stringify({
|
|
84
|
+
version: '1.0.0',
|
|
85
|
+
files: ['dist/**']
|
|
86
|
+
}));
|
|
87
|
+
(0, vitest_1.expect)(() => (0, manifest_reader_1.readManifest)(manifestPath))
|
|
88
|
+
.toThrow('Manifest missing required field: name');
|
|
89
|
+
});
|
|
90
|
+
(0, vitest_1.it)('should throw error for missing version field', () => {
|
|
91
|
+
const manifestPath = path.join(tempDir, 'invalid.json');
|
|
92
|
+
fs.writeFileSync(manifestPath, JSON.stringify({
|
|
93
|
+
name: 'my-package',
|
|
94
|
+
files: ['dist/**']
|
|
95
|
+
}));
|
|
96
|
+
(0, vitest_1.expect)(() => (0, manifest_reader_1.readManifest)(manifestPath))
|
|
97
|
+
.toThrow('Manifest missing required field: version');
|
|
98
|
+
});
|
|
99
|
+
(0, vitest_1.it)('should throw error for missing files field', () => {
|
|
100
|
+
const manifestPath = path.join(tempDir, 'invalid.json');
|
|
101
|
+
fs.writeFileSync(manifestPath, JSON.stringify({
|
|
102
|
+
name: 'my-package',
|
|
103
|
+
version: '1.0.0'
|
|
104
|
+
}));
|
|
105
|
+
(0, vitest_1.expect)(() => (0, manifest_reader_1.readManifest)(manifestPath))
|
|
106
|
+
.toThrow('Manifest missing required field: files');
|
|
107
|
+
});
|
|
108
|
+
(0, vitest_1.it)('should throw error for empty files array', () => {
|
|
109
|
+
const manifestPath = path.join(tempDir, 'invalid.json');
|
|
110
|
+
fs.writeFileSync(manifestPath, JSON.stringify({
|
|
111
|
+
name: 'my-package',
|
|
112
|
+
version: '1.0.0',
|
|
113
|
+
files: []
|
|
114
|
+
}));
|
|
115
|
+
(0, vitest_1.expect)(() => (0, manifest_reader_1.readManifest)(manifestPath))
|
|
116
|
+
.toThrow('files (must be non-empty array)');
|
|
117
|
+
});
|
|
118
|
+
(0, vitest_1.it)('should handle @scope/name format', () => {
|
|
119
|
+
const manifestPath = path.join(tempDir, 'scoped.json');
|
|
120
|
+
fs.writeFileSync(manifestPath, JSON.stringify({
|
|
121
|
+
name: '@myorg/my-package',
|
|
122
|
+
version: '2.0.0',
|
|
123
|
+
files: ['src/**']
|
|
124
|
+
}));
|
|
125
|
+
const manifest = (0, manifest_reader_1.readManifest)(manifestPath);
|
|
126
|
+
(0, vitest_1.expect)(manifest.name).toBe('@myorg/my-package');
|
|
127
|
+
});
|
|
128
|
+
(0, vitest_1.it)('should handle scope-less name format', () => {
|
|
129
|
+
const manifestPath = path.join(tempDir, 'unscoped.json');
|
|
130
|
+
fs.writeFileSync(manifestPath, JSON.stringify({
|
|
131
|
+
name: 'simple-package',
|
|
132
|
+
version: '1.0.0',
|
|
133
|
+
files: ['index.js']
|
|
134
|
+
}));
|
|
135
|
+
const manifest = (0, manifest_reader_1.readManifest)(manifestPath);
|
|
136
|
+
(0, vitest_1.expect)(manifest.name).toBe('simple-package');
|
|
137
|
+
});
|
|
138
|
+
});
|
|
139
|
+
(0, vitest_1.describe)('getManifestDir', () => {
|
|
140
|
+
(0, vitest_1.it)('should return directory of manifest file', () => {
|
|
141
|
+
const manifestPath = path.join(tempDir, 'skit.json');
|
|
142
|
+
fs.writeFileSync(manifestPath, '{}');
|
|
143
|
+
const dir = (0, manifest_reader_1.getManifestDir)(manifestPath);
|
|
144
|
+
(0, vitest_1.expect)(dir).toBe(tempDir);
|
|
145
|
+
});
|
|
146
|
+
(0, vitest_1.it)('should handle nested paths', () => {
|
|
147
|
+
const nestedDir = path.join(tempDir, 'config', 'packages');
|
|
148
|
+
fs.mkdirSync(nestedDir, { recursive: true });
|
|
149
|
+
const manifestPath = path.join(nestedDir, 'manifest.json');
|
|
150
|
+
fs.writeFileSync(manifestPath, '{}');
|
|
151
|
+
const dir = (0, manifest_reader_1.getManifestDir)(manifestPath);
|
|
152
|
+
(0, vitest_1.expect)(dir).toBe(nestedDir);
|
|
153
|
+
});
|
|
154
|
+
(0, vitest_1.it)('should resolve relative paths', () => {
|
|
155
|
+
const manifestPath = path.join(tempDir, 'skit.json');
|
|
156
|
+
fs.writeFileSync(manifestPath, '{}');
|
|
157
|
+
// Use relative path
|
|
158
|
+
const originalCwd = process.cwd();
|
|
159
|
+
process.chdir(tempDir);
|
|
160
|
+
try {
|
|
161
|
+
const dir = (0, manifest_reader_1.getManifestDir)('./skit.json');
|
|
162
|
+
(0, vitest_1.expect)(dir).toBe(tempDir);
|
|
163
|
+
}
|
|
164
|
+
finally {
|
|
165
|
+
process.chdir(originalCwd);
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
});
|
|
169
|
+
});
|
|
170
|
+
//# sourceMappingURL=manifest-reader.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manifest-reader.test.js","sourceRoot":"","sources":["../../../src/__tests__/generic/manifest-reader.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tarball-creator.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/generic/tarball-creator.test.ts"],"names":[],"mappings":""}
|