npmdata 0.2.2 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +117 -9
- package/bin/npmdata.js +4 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +128 -19
- package/dist/cli.js.map +1 -1
- package/dist/consumer.d.ts +32 -2
- package/dist/consumer.d.ts.map +1 -1
- package/dist/consumer.js +151 -20
- package/dist/consumer.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/npmdata-0.0.1.tgz +0 -0
- package/dist/publisher.d.ts +15 -3
- package/dist/publisher.d.ts.map +1 -1
- package/dist/publisher.js +66 -52
- package/dist/publisher.js.map +1 -1
- package/dist/runner.d.ts +63 -2
- package/dist/runner.d.ts.map +1 -1
- package/dist/runner.js +356 -66
- package/dist/runner.js.map +1 -1
- package/dist/types.d.ts +141 -10
- package/dist/types.d.ts.map +1 -1
- package/dist/utils.d.ts +7 -2
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +10 -2
- package/dist/utils.js.map +1 -1
- package/package.json +3 -2
package/README.md
CHANGED
|
@@ -14,10 +14,24 @@ Publish folders as npm packages and extract them in any workspace. Use it to dis
|
|
|
14
14
|
In the project whose folders you want to share:
|
|
15
15
|
|
|
16
16
|
```sh
|
|
17
|
-
|
|
17
|
+
# share specific folders by glob pattern (required)
|
|
18
|
+
pnpm dlx npmdata init --files "docs/**,data/**,configs/**"
|
|
19
|
+
|
|
20
|
+
# also bundle an additional package so consumers get data from both sources
|
|
21
|
+
pnpm dlx npmdata init --files "docs/**" --packages shared-configs@^1.0.0
|
|
22
|
+
|
|
23
|
+
# share multiple additional packages at once
|
|
24
|
+
pnpm dlx npmdata init --files "docs/**" --packages "shared-configs@^1.0.0,base-templates@2.x"
|
|
25
|
+
|
|
26
|
+
# skip .gitignore entries for managed files (gitignore is enabled by default)
|
|
27
|
+
pnpm dlx npmdata init --files "docs/**,data/**" --no-gitignore
|
|
28
|
+
|
|
29
|
+
# mark extracted files as unmanaged so consumers can edit them freely;
|
|
30
|
+
# files won't be tracked, made read-only, or added to .gitignore
|
|
31
|
+
pnpm dlx npmdata init --files "templates/**" --unmanaged
|
|
18
32
|
```
|
|
19
33
|
|
|
20
|
-
|
|
34
|
+
`init` updates `package.json` with the right `files`, `bin`, and `dependencies` fields so those folders are included when the package is published, and writes a thin `bin/npmdata.js` entry point. Then publish normally:
|
|
21
35
|
|
|
22
36
|
```sh
|
|
23
37
|
npm publish
|
|
@@ -45,8 +59,12 @@ npx npmdata extract --packages my-shared-assets --content-regex "env: production
|
|
|
45
59
|
# the new package takes ownership in the marker file
|
|
46
60
|
npx npmdata extract --packages my-shared-assets --output ./data --force
|
|
47
61
|
|
|
48
|
-
#
|
|
49
|
-
npx npmdata extract --packages my-shared-assets --output ./data --gitignore
|
|
62
|
+
# skip .gitignore entries for managed files (gitignore is enabled by default)
|
|
63
|
+
npx npmdata extract --packages my-shared-assets --output ./data --no-gitignore
|
|
64
|
+
|
|
65
|
+
# write files without a .npmdata marker or .gitignore entry; files won't be read-only
|
|
66
|
+
# and won't be tracked by npmdata; existing files are left unchanged
|
|
67
|
+
npx npmdata extract --packages my-shared-assets --output ./data --unmanaged
|
|
50
68
|
|
|
51
69
|
# preview what would change without writing any files
|
|
52
70
|
npx npmdata extract --packages my-shared-assets --output ./data --dry-run
|
|
@@ -70,6 +88,27 @@ npx my-shared-assets extract --output ./data
|
|
|
70
88
|
npx my-shared-assets check --output ./data
|
|
71
89
|
```
|
|
72
90
|
|
|
91
|
+
When the data package defines multiple `npmdata` entries in its `package.json`, you can limit which entries are processed using the `--tags` option. Only entries whose `tags` list includes at least one of the requested tags will be extracted; entries with no tags are skipped when a tag filter is active.
|
|
92
|
+
|
|
93
|
+
```sh
|
|
94
|
+
# run only entries tagged with "prod"
|
|
95
|
+
npx my-shared-assets --tags prod
|
|
96
|
+
|
|
97
|
+
# run entries tagged with either "prod" or "staging"
|
|
98
|
+
npx my-shared-assets --tags prod,staging
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
To use tags, add a `tags` array to each `npmdata` entry in the data package's `package.json`:
|
|
102
|
+
|
|
103
|
+
```json
|
|
104
|
+
{
|
|
105
|
+
"npmdata": [
|
|
106
|
+
{ "package": "my-shared-assets", "outputDir": "./data", "tags": ["prod"] },
|
|
107
|
+
{ "package": "my-dev-assets", "outputDir": "./dev-data", "tags": ["dev", "staging"] }
|
|
108
|
+
]
|
|
109
|
+
}
|
|
110
|
+
```
|
|
111
|
+
|
|
73
112
|
Check the /examples folder to see this in action
|
|
74
113
|
|
|
75
114
|
### 3. Check files are in sync
|
|
@@ -109,24 +148,53 @@ another-pkg@1.0.0
|
|
|
109
148
|
data/other-file.txt
|
|
110
149
|
```
|
|
111
150
|
|
|
151
|
+
### 5. Purge managed files
|
|
152
|
+
|
|
153
|
+
Remove all files previously extracted by one or more packages without touching any other files in the output directory. No network access or package installation is required — only the local `.npmdata` marker state is used.
|
|
154
|
+
|
|
155
|
+
```sh
|
|
156
|
+
# remove all files managed by a package
|
|
157
|
+
npx npmdata purge --packages my-shared-assets --output ./data
|
|
158
|
+
|
|
159
|
+
# purge multiple packages at once
|
|
160
|
+
npx npmdata purge --packages "my-shared-assets,another-pkg" --output ./data
|
|
161
|
+
|
|
162
|
+
# preview what would be deleted without removing anything
|
|
163
|
+
npx npmdata purge --packages my-shared-assets --output ./data --dry-run
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
After a purge, the corresponding entries are removed from the `.npmdata` marker file and any empty directories are cleaned up. `.gitignore` sections written by `extract` are also removed.
|
|
167
|
+
|
|
112
168
|
## CLI reference
|
|
113
169
|
|
|
114
170
|
```
|
|
115
171
|
Usage:
|
|
116
|
-
npx npmdata [init|extract|check|list] [options]
|
|
172
|
+
npx npmdata [init|extract|check|list|purge] [options]
|
|
117
173
|
|
|
118
174
|
Commands:
|
|
119
175
|
init Set up publishing configuration in a package
|
|
120
176
|
extract Extract files from a published package into a local directory
|
|
121
177
|
check Verify local files are in sync with the published package
|
|
122
178
|
list List all files managed by npmdata in an output directory
|
|
179
|
+
purge Remove all managed files previously extracted by given packages
|
|
123
180
|
|
|
124
181
|
Global options:
|
|
125
182
|
--help, -h Show help
|
|
126
183
|
--version, -v Show version
|
|
127
184
|
|
|
128
185
|
Init options:
|
|
129
|
-
--
|
|
186
|
+
--files <patterns> Comma-separated glob patterns of files to publish (required)
|
|
187
|
+
e.g. "docs/**,data/**,configs/*.json"
|
|
188
|
+
--packages <specs> Comma-separated additional package specs to bundle as data sources.
|
|
189
|
+
Each spec is "name" or "name@version", e.g.
|
|
190
|
+
"shared-configs@^1.0.0,base-templates@2.x".
|
|
191
|
+
Listed under `npmdata.additionalPackages` in package.json and
|
|
192
|
+
added to `dependencies` so consumers pull data from all of them.
|
|
193
|
+
--no-gitignore Skip adding .gitignore entries for managed files
|
|
194
|
+
(gitignore is enabled by default)
|
|
195
|
+
--unmanaged Mark all generated npmdata entries as unmanaged: extracted files
|
|
196
|
+
are written without a .npmdata marker, without updating .gitignore,
|
|
197
|
+
and without being made read-only. Existing files are skipped.
|
|
130
198
|
|
|
131
199
|
Extract options:
|
|
132
200
|
--packages <specs> Comma-separated package specs (required).
|
|
@@ -134,7 +202,10 @@ Extract options:
|
|
|
134
202
|
"my-pkg@^1.0.0,other-pkg@2.x"
|
|
135
203
|
--output, -o <dir> Output directory (default: current directory)
|
|
136
204
|
--force Overwrite existing unmanaged files or files owned by a different package
|
|
137
|
-
--gitignore
|
|
205
|
+
--no-gitignore Skip creating/updating .gitignore (gitignore is enabled by default)
|
|
206
|
+
--unmanaged Write files without a .npmdata marker, .gitignore update, or read-only
|
|
207
|
+
flag. Existing files are skipped. Files can be freely edited afterwards
|
|
208
|
+
and are not tracked by npmdata.
|
|
138
209
|
--files <patterns> Comma-separated glob patterns to filter files
|
|
139
210
|
--content-regex <regex> Regex to filter files by content
|
|
140
211
|
--dry-run Preview changes without writing any files
|
|
@@ -144,6 +215,12 @@ Check options:
|
|
|
144
215
|
--packages <specs> Same format as extract (required)
|
|
145
216
|
--output, -o <dir> Output directory to check (default: current directory)
|
|
146
217
|
|
|
218
|
+
Purge options:
|
|
219
|
+
--packages <specs> Comma-separated package names whose managed files should be removed
|
|
220
|
+
--output, -o <dir> Output directory to purge from (default: current directory)
|
|
221
|
+
--dry-run Simulate purge without removing any files
|
|
222
|
+
--silent Suppress per-file output
|
|
223
|
+
|
|
147
224
|
List options:
|
|
148
225
|
--output, -o <dir> Output directory to inspect (default: current directory)
|
|
149
226
|
```
|
|
@@ -153,8 +230,8 @@ List options:
|
|
|
153
230
|
`npmdata` also exports a programmatic API:
|
|
154
231
|
|
|
155
232
|
```typescript
|
|
156
|
-
import { extract, check, list, initPublisher, parsePackageSpec, isBinaryFile } from 'npmdata';
|
|
157
|
-
import type { ConsumerConfig, ConsumerResult, CheckResult, ProgressEvent } from 'npmdata';
|
|
233
|
+
import { extract, check, list, purge, initPublisher, parsePackageSpec, isBinaryFile } from 'npmdata';
|
|
234
|
+
import type { ConsumerConfig, ConsumerResult, CheckResult, PurgeConfig, ProgressEvent } from 'npmdata';
|
|
158
235
|
|
|
159
236
|
// extract files from one package
|
|
160
237
|
const result = await extract({
|
|
@@ -179,6 +256,14 @@ await extract({
|
|
|
179
256
|
upgrade: true,
|
|
180
257
|
});
|
|
181
258
|
|
|
259
|
+
// extract without npmdata tracking: files are writable, no .npmdata marker is written,
|
|
260
|
+
// no .gitignore entry is created. Existing files are left untouched (skipped).
|
|
261
|
+
await extract({
|
|
262
|
+
packages: ['shared-templates'],
|
|
263
|
+
outputDir: './templates',
|
|
264
|
+
unmanaged: true,
|
|
265
|
+
});
|
|
266
|
+
|
|
182
267
|
// track progress file-by-file
|
|
183
268
|
await extract({
|
|
184
269
|
packages: ['my-shared-assets@^2.0.0'],
|
|
@@ -212,6 +297,29 @@ if (!status.ok) {
|
|
|
212
297
|
}
|
|
213
298
|
}
|
|
214
299
|
|
|
300
|
+
// remove all files previously extracted by a package (no network required)
|
|
301
|
+
await purge({
|
|
302
|
+
packages: ['my-shared-assets'],
|
|
303
|
+
outputDir: './data',
|
|
304
|
+
});
|
|
305
|
+
|
|
306
|
+
// dry-run: preview what would be deleted without removing anything
|
|
307
|
+
const purgePreview = await purge({
|
|
308
|
+
packages: ['my-shared-assets'],
|
|
309
|
+
outputDir: './data',
|
|
310
|
+
dryRun: true,
|
|
311
|
+
});
|
|
312
|
+
console.log('Would delete', purgePreview.deleted, 'files');
|
|
313
|
+
|
|
314
|
+
// track progress during purge
|
|
315
|
+
await purge({
|
|
316
|
+
packages: ['my-shared-assets'],
|
|
317
|
+
outputDir: './data',
|
|
318
|
+
onProgress: (event: ProgressEvent) => {
|
|
319
|
+
if (event.type === 'file-deleted') console.log('D', event.file);
|
|
320
|
+
},
|
|
321
|
+
});
|
|
322
|
+
|
|
215
323
|
// list all files managed by npmdata in an output directory
|
|
216
324
|
const managed = await list('./data');
|
|
217
325
|
// managed is Record<string, string[]> keyed by "package@version"
|
package/bin/npmdata.js
ADDED
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAaA;;GAEG;AAEH,wBAAsB,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAaA;;GAEG;AAEH,wBAAsB,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAyVhE"}
|
package/dist/cli.js
CHANGED
|
@@ -37,39 +37,53 @@ async function cli(processArgs) {
|
|
|
37
37
|
// Handle init command
|
|
38
38
|
if (command === 'init') {
|
|
39
39
|
// eslint-disable-next-line functional/no-let
|
|
40
|
-
let
|
|
40
|
+
let sourceFilesFlag;
|
|
41
41
|
// eslint-disable-next-line functional/no-let
|
|
42
42
|
let additionalPackagesFlag;
|
|
43
|
-
//
|
|
43
|
+
// eslint-disable-next-line functional/no-let
|
|
44
|
+
let initGitignore = true;
|
|
45
|
+
// eslint-disable-next-line functional/no-let
|
|
46
|
+
let initUnmanaged = false;
|
|
47
|
+
// Parse args for --files and --packages flags
|
|
44
48
|
// eslint-disable-next-line functional/no-let
|
|
45
49
|
for (let i = 1; i < args.length; i += 1) {
|
|
46
|
-
if (args[i] === '--
|
|
50
|
+
if (args[i] === '--files') {
|
|
47
51
|
// eslint-disable-next-line no-plusplus
|
|
48
|
-
|
|
52
|
+
sourceFilesFlag = args[++i];
|
|
49
53
|
}
|
|
50
54
|
else if (args[i] === '--packages') {
|
|
51
55
|
// eslint-disable-next-line no-plusplus
|
|
52
56
|
additionalPackagesFlag = args[++i];
|
|
53
57
|
}
|
|
58
|
+
else if (args[i] === '--no-gitignore') {
|
|
59
|
+
initGitignore = false;
|
|
60
|
+
}
|
|
61
|
+
else if (args[i] === '--unmanaged') {
|
|
62
|
+
initUnmanaged = true;
|
|
63
|
+
}
|
|
54
64
|
}
|
|
55
|
-
// --
|
|
56
|
-
if (!
|
|
57
|
-
console.error('Error: --
|
|
65
|
+
// --files is required
|
|
66
|
+
if (!sourceFilesFlag) {
|
|
67
|
+
console.error('Error: --files option is required for init command');
|
|
58
68
|
printUsage();
|
|
59
69
|
return 1;
|
|
60
70
|
}
|
|
61
|
-
const
|
|
71
|
+
const fileGlobs = sourceFilesFlag.split(',').map((f) => f.trim());
|
|
62
72
|
const additionalPackages = additionalPackagesFlag
|
|
63
73
|
? additionalPackagesFlag.split(',').map((p) => p.trim())
|
|
64
74
|
: [];
|
|
65
|
-
const result = await (0, publisher_1.initPublisher)(
|
|
75
|
+
const result = await (0, publisher_1.initPublisher)(fileGlobs, {
|
|
76
|
+
additionalPackages,
|
|
77
|
+
gitignore: initGitignore,
|
|
78
|
+
...(initUnmanaged ? { unmanaged: true } : {}),
|
|
79
|
+
});
|
|
66
80
|
if (!result.success) {
|
|
67
81
|
console.error(`\nError: ${result.message}`);
|
|
68
82
|
return 1;
|
|
69
83
|
}
|
|
70
84
|
console.log(`\n${result.message}`);
|
|
71
|
-
if (result.
|
|
72
|
-
console.log(`\nThe following
|
|
85
|
+
if (result.publishedFiles) {
|
|
86
|
+
console.log(`\nThe following file patterns will be published: ${result.publishedFiles.join(', ')}`);
|
|
73
87
|
}
|
|
74
88
|
if (result.additionalPackages && result.additionalPackages.length > 0) {
|
|
75
89
|
console.log(`\nAdditional data source packages: ${result.additionalPackages.join(', ')}`);
|
|
@@ -106,19 +120,86 @@ async function cli(processArgs) {
|
|
|
106
120
|
}
|
|
107
121
|
return 0;
|
|
108
122
|
}
|
|
123
|
+
// Handle purge command
|
|
124
|
+
if (command === 'purge') {
|
|
125
|
+
let purgePackageSpecs;
|
|
126
|
+
let purgeOutDir = process.cwd();
|
|
127
|
+
let purgeOutputFlagProvided = false;
|
|
128
|
+
let purgeDryRun = false;
|
|
129
|
+
let purgeSilent = false;
|
|
130
|
+
for (let i = 1; i < args.length; i++) {
|
|
131
|
+
if (args[i] === '--packages') {
|
|
132
|
+
purgePackageSpecs = args[++i];
|
|
133
|
+
}
|
|
134
|
+
else if (args[i] === '--output' || args[i] === '-o') {
|
|
135
|
+
purgeOutDir = args[++i];
|
|
136
|
+
purgeOutputFlagProvided = true;
|
|
137
|
+
}
|
|
138
|
+
else if (args[i] === '--dry-run') {
|
|
139
|
+
purgeDryRun = true;
|
|
140
|
+
}
|
|
141
|
+
else if (args[i] === '--silent') {
|
|
142
|
+
purgeSilent = true;
|
|
143
|
+
}
|
|
144
|
+
else if (!args[i].startsWith('-')) {
|
|
145
|
+
purgeOutDir = args[i];
|
|
146
|
+
purgeOutputFlagProvided = true;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
if (!purgePackageSpecs) {
|
|
150
|
+
console.error(`Error: --packages option is required for 'purge' command`);
|
|
151
|
+
printUsage();
|
|
152
|
+
return 1;
|
|
153
|
+
}
|
|
154
|
+
if (!purgeOutputFlagProvided && !purgeSilent) {
|
|
155
|
+
console.info(`No --output specified. Using current directory: ${purgeOutDir}`);
|
|
156
|
+
}
|
|
157
|
+
const purgePackages = purgePackageSpecs.split(',').map((s) => s.trim());
|
|
158
|
+
const purgeOnProgress = purgeSilent
|
|
159
|
+
? // eslint-disable-next-line no-undefined
|
|
160
|
+
undefined
|
|
161
|
+
: (event) => {
|
|
162
|
+
switch (event.type) {
|
|
163
|
+
case 'package-start':
|
|
164
|
+
console.log(`\n>> Package ${event.packageName}`);
|
|
165
|
+
break;
|
|
166
|
+
case 'file-deleted':
|
|
167
|
+
console.log(`D\t${event.file}`);
|
|
168
|
+
break;
|
|
169
|
+
default:
|
|
170
|
+
break;
|
|
171
|
+
}
|
|
172
|
+
};
|
|
173
|
+
if (!purgeSilent) {
|
|
174
|
+
if (purgeDryRun)
|
|
175
|
+
console.info('Dry run: simulating purge (no files will be removed)...');
|
|
176
|
+
else
|
|
177
|
+
console.info('Purging managed files...');
|
|
178
|
+
}
|
|
179
|
+
const purgeResult = await (0, consumer_1.purge)({
|
|
180
|
+
packages: purgePackages,
|
|
181
|
+
outputDir: node_path_1.default.resolve(purgeOutDir),
|
|
182
|
+
dryRun: purgeDryRun,
|
|
183
|
+
onProgress: purgeOnProgress,
|
|
184
|
+
});
|
|
185
|
+
console.log(`\nPurge complete: ${purgeResult.deleted.length} deleted${purgeDryRun ? ' (dry run)' : ''}`);
|
|
186
|
+
return 0;
|
|
187
|
+
}
|
|
109
188
|
// Consumer commands (extract, check)
|
|
110
189
|
if (!['extract', 'check'].includes(command)) {
|
|
111
|
-
console.error(`Error: unknown command '${command}'. Use 'init', 'extract', 'check', or 'list'`);
|
|
190
|
+
console.error(`Error: unknown command '${command}'. Use 'init', 'extract', 'check', 'purge', or 'list'`);
|
|
112
191
|
printUsage();
|
|
113
192
|
return 1;
|
|
114
193
|
}
|
|
115
194
|
// Parse options common to extract and check
|
|
116
195
|
let packageSpecs;
|
|
117
196
|
let force = false;
|
|
118
|
-
let
|
|
197
|
+
let keepExisting = false;
|
|
198
|
+
let gitignore = true;
|
|
119
199
|
let dryRun = false;
|
|
120
200
|
let upgrade = false;
|
|
121
201
|
let silent = false;
|
|
202
|
+
let unmanaged = false;
|
|
122
203
|
let filenamePatterns;
|
|
123
204
|
let contentRegexes;
|
|
124
205
|
let outDir = process.cwd();
|
|
@@ -130,11 +211,14 @@ async function cli(processArgs) {
|
|
|
130
211
|
else if (args[i] === '--force') {
|
|
131
212
|
force = true;
|
|
132
213
|
}
|
|
214
|
+
else if (args[i] === '--keep-existing') {
|
|
215
|
+
keepExisting = true;
|
|
216
|
+
}
|
|
133
217
|
else if (args[i] === '--silent') {
|
|
134
218
|
silent = true;
|
|
135
219
|
}
|
|
136
|
-
else if (args[i] === '--gitignore') {
|
|
137
|
-
gitignore =
|
|
220
|
+
else if (args[i] === '--no-gitignore') {
|
|
221
|
+
gitignore = false;
|
|
138
222
|
}
|
|
139
223
|
else if (args[i] === '--dry-run') {
|
|
140
224
|
dryRun = true;
|
|
@@ -142,6 +226,9 @@ async function cli(processArgs) {
|
|
|
142
226
|
else if (args[i] === '--upgrade') {
|
|
143
227
|
upgrade = true;
|
|
144
228
|
}
|
|
229
|
+
else if (args[i] === '--unmanaged') {
|
|
230
|
+
unmanaged = true;
|
|
231
|
+
}
|
|
145
232
|
else if (args[i] === '--files') {
|
|
146
233
|
filenamePatterns = args[++i];
|
|
147
234
|
}
|
|
@@ -165,6 +252,10 @@ async function cli(processArgs) {
|
|
|
165
252
|
if (!outputFlagProvided && !silent) {
|
|
166
253
|
console.info(`No --output specified. Using current directory: ${outDir}`);
|
|
167
254
|
}
|
|
255
|
+
if (force && keepExisting) {
|
|
256
|
+
console.error('Error: --force and --keep-existing cannot be used together');
|
|
257
|
+
return 1;
|
|
258
|
+
}
|
|
168
259
|
const packages = packageSpecs.split(',').map((s) => s.trim());
|
|
169
260
|
// Build onProgress handler that prints file-level events grouped by package
|
|
170
261
|
const onProgress = silent
|
|
@@ -192,9 +283,11 @@ async function cli(processArgs) {
|
|
|
192
283
|
packages,
|
|
193
284
|
outputDir: node_path_1.default.resolve(outDir),
|
|
194
285
|
force,
|
|
286
|
+
keepExisting,
|
|
195
287
|
gitignore,
|
|
196
288
|
dryRun,
|
|
197
289
|
upgrade,
|
|
290
|
+
unmanaged,
|
|
198
291
|
onProgress,
|
|
199
292
|
filenamePatterns: filenamePatterns
|
|
200
293
|
? filenamePatterns.split(',')
|
|
@@ -250,12 +343,13 @@ function printUsage() {
|
|
|
250
343
|
npmdata
|
|
251
344
|
|
|
252
345
|
Usage:
|
|
253
|
-
npx npmdata [init|extract|check|list] [options]
|
|
346
|
+
npx npmdata [init|extract|check|purge|list] [options]
|
|
254
347
|
|
|
255
348
|
Commands:
|
|
256
349
|
init Initialize publishing configuration
|
|
257
350
|
extract Extract files from one or more published packages
|
|
258
351
|
check Verify if local files are in sync with packages
|
|
352
|
+
purge Remove all managed files written by given packages
|
|
259
353
|
list List all managed files in the output directory
|
|
260
354
|
|
|
261
355
|
Global Options:
|
|
@@ -263,10 +357,12 @@ Global Options:
|
|
|
263
357
|
--version, -v Show version
|
|
264
358
|
|
|
265
359
|
Init Options:
|
|
266
|
-
--
|
|
360
|
+
--files <patterns> Comma-separated glob patterns of files to publish (required)
|
|
361
|
+
e.g. "docs/**,data/**,configs/*.json"
|
|
267
362
|
--packages <specs> Comma-separated additional package specs to use as data sources.
|
|
268
363
|
Each spec is "name" or "name@version"
|
|
269
364
|
e.g. "shared-data@^1.0.0,other-pkg@2.x"
|
|
365
|
+
--unmanaged Mark all npmdata entries as unmanaged (see Extract options)
|
|
270
366
|
|
|
271
367
|
Extract / Check Options:
|
|
272
368
|
--packages <specs> Comma-separated package specs to extract from (required).
|
|
@@ -274,18 +370,29 @@ Extract / Check Options:
|
|
|
274
370
|
e.g. "my-pkg@^1.2.3,other-pkg@2.x"
|
|
275
371
|
--output, -o <dir> Output directory (default: current directory, with a warning)
|
|
276
372
|
--force Allow overwriting existing unmanaged files
|
|
277
|
-
--
|
|
373
|
+
--keep-existing Skip files that already exist in the output directory;
|
|
374
|
+
create them when absent. Cannot be combined with --force
|
|
375
|
+
--no-gitignore Skip creating/updating .gitignore (gitignore is enabled by default)
|
|
376
|
+
--unmanaged Write files without a .npmdata marker, .gitignore update, or
|
|
377
|
+
read-only flag. Existing files are skipped. Files can be freely
|
|
378
|
+
edited afterwards and are not tracked by npmdata.
|
|
278
379
|
--dry-run Simulate extraction without writing any files
|
|
279
380
|
--upgrade Re-install packages even when a satisfying version is installed
|
|
280
381
|
--silent Print only the final result line, suppressing package and file listing
|
|
281
382
|
--files <pattern> Comma-separated shell glob patterns to filter files
|
|
282
383
|
--content-regex <regex> Regex pattern to match file contents
|
|
283
384
|
|
|
385
|
+
Purge Options:
|
|
386
|
+
--packages <specs> Comma-separated package names whose managed files should be removed
|
|
387
|
+
--output, -o <dir> Output directory to purge from (default: current directory)
|
|
388
|
+
--dry-run Simulate purge without removing any files
|
|
389
|
+
--silent Suppress per-file output
|
|
390
|
+
|
|
284
391
|
List Options:
|
|
285
392
|
--output, -o <dir> Directory to inspect (default: current directory)
|
|
286
393
|
|
|
287
394
|
Examples:
|
|
288
|
-
npx npmdata init --
|
|
395
|
+
npx npmdata init --files "data/**,docs/**,configs/*.json"
|
|
289
396
|
npx npmdata extract --packages mydataset --output ./data
|
|
290
397
|
npx npmdata extract --packages mydataset@^2.0.0 --output ./data
|
|
291
398
|
npx npmdata extract --packages "mydataset@^2.0.0,otherpkg@1.x" --output ./data
|
|
@@ -296,6 +403,8 @@ Examples:
|
|
|
296
403
|
npx npmdata check --packages mydataset --output ./data
|
|
297
404
|
npx npmdata check --packages "mydataset,otherpkg" --output ./data
|
|
298
405
|
npx npmdata list --output ./data
|
|
406
|
+
npx npmdata purge --packages mydataset --output ./data
|
|
407
|
+
npx npmdata purge --packages "mydataset,otherpkg" --output ./data
|
|
299
408
|
`);
|
|
300
409
|
}
|
|
301
410
|
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/consumer.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ConsumerConfig, ConsumerResult, CheckResult } from './types';
|
|
1
|
+
import { ConsumerConfig, ConsumerResult, CheckResult, ProgressEvent } from './types';
|
|
2
2
|
/**
|
|
3
3
|
* Extract files from published packages to output directory.
|
|
4
4
|
*
|
|
@@ -11,13 +11,43 @@ export declare function extract(config: ConsumerConfig): Promise<ConsumerResult>
|
|
|
11
11
|
* Check if managed files are in sync with published packages.
|
|
12
12
|
*
|
|
13
13
|
* Performs a bidirectional comparison:
|
|
14
|
-
* - Files in the .
|
|
14
|
+
* - Files in the .npmdata marker that are missing from or modified in the output directory.
|
|
15
15
|
* - Files present in the package (matching filters) that have not been extracted yet ("extra").
|
|
16
16
|
*
|
|
17
17
|
* If a version constraint is specified (e.g. "my-pkg@^1.0.0"), the installed version is
|
|
18
18
|
* validated against it so stale installs are caught.
|
|
19
19
|
*/
|
|
20
20
|
export declare function check(config: ConsumerConfig): Promise<CheckResult>;
|
|
21
|
+
/**
|
|
22
|
+
* Configuration for a purge operation.
|
|
23
|
+
*/
|
|
24
|
+
export type PurgeConfig = {
|
|
25
|
+
/**
|
|
26
|
+
* Package names whose managed files should be removed.
|
|
27
|
+
* Each entry is a bare package name ("my-pkg") or a name with a semver constraint
|
|
28
|
+
* ("my-pkg@^1.2.3") – the version part is ignored; only the name is used for lookup.
|
|
29
|
+
*/
|
|
30
|
+
packages: string[];
|
|
31
|
+
/**
|
|
32
|
+
* Output directory from which managed files will be removed.
|
|
33
|
+
*/
|
|
34
|
+
outputDir: string;
|
|
35
|
+
/**
|
|
36
|
+
* When true, simulate the purge without writing anything to disk.
|
|
37
|
+
*/
|
|
38
|
+
dryRun?: boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Optional callback called for each file event during purge.
|
|
41
|
+
*/
|
|
42
|
+
onProgress?: (event: ProgressEvent) => void;
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* Remove all managed files previously extracted by the given packages from outputDir.
|
|
46
|
+
* Reads .npmdata marker files to discover which files are owned by each package,
|
|
47
|
+
* deletes them from disk, updates the marker files, and cleans up empty directories.
|
|
48
|
+
* No package installation is required – only the local marker state is used.
|
|
49
|
+
*/
|
|
50
|
+
export declare function purge(config: PurgeConfig): Promise<ConsumerResult>;
|
|
21
51
|
/**
|
|
22
52
|
* List all managed files currently extracted in outputDir, grouped by package.
|
|
23
53
|
*/
|
package/dist/consumer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consumer.d.ts","sourceRoot":"","sources":["../src/consumer.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,cAAc,EACd,cAAc,EACd,WAAW,
|
|
1
|
+
{"version":3,"file":"consumer.d.ts","sourceRoot":"","sources":["../src/consumer.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,cAAc,EACd,cAAc,EACd,WAAW,EAEX,aAAa,EAGd,MAAM,SAAS,CAAC;AA+hBjB;;;;;;GAMG;AACH,wBAAsB,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CA8D7E;AA2CD;;;;;;;;;GASG;AACH,wBAAsB,KAAK,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,CAqGxE;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB;;;;OAIG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;IAEnB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;CAC7C,CAAC;AAEF;;;;;GAKG;AACH,wBAAsB,KAAK,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC,CA8ExE;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,CAAC;IAC7C,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB,CAAC,CAwBD"}
|