@jsdevtools/npm-publish 3.1.1 → 4.0.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.
Files changed (67) hide show
  1. package/README.md +71 -26
  2. package/bin/npm-publish.js +17 -7
  3. package/lib/action/core.d.ts +1 -1
  4. package/lib/action/core.js +16 -25
  5. package/lib/action/core.js.map +1 -1
  6. package/lib/action/main.js +5 -32
  7. package/lib/action/main.js.map +1 -1
  8. package/lib/cli/index.js +7 -11
  9. package/lib/cli/index.js.map +1 -1
  10. package/lib/cli/parse-cli-arguments.js +3 -10
  11. package/lib/cli/parse-cli-arguments.js.map +1 -1
  12. package/lib/compare-and-publish/compare-and-publish.d.ts +1 -1
  13. package/lib/compare-and-publish/compare-and-publish.js +14 -18
  14. package/lib/compare-and-publish/compare-and-publish.js.map +1 -1
  15. package/lib/compare-and-publish/compare-versions.d.ts +1 -1
  16. package/lib/compare-and-publish/compare-versions.js +12 -19
  17. package/lib/compare-and-publish/compare-versions.js.map +1 -1
  18. package/lib/compare-and-publish/get-arguments.js +6 -8
  19. package/lib/compare-and-publish/get-arguments.js.map +1 -1
  20. package/lib/compare-and-publish/index.js +1 -17
  21. package/lib/compare-and-publish/index.js.map +1 -1
  22. package/lib/errors.js +22 -41
  23. package/lib/errors.js.map +1 -1
  24. package/lib/format-publish-result.d.ts +1 -1
  25. package/lib/format-publish-result.js +3 -10
  26. package/lib/format-publish-result.js.map +1 -1
  27. package/lib/index.d.ts +1 -1
  28. package/lib/index.js +4 -22
  29. package/lib/index.js.map +1 -1
  30. package/lib/normalize-options.d.ts +1 -1
  31. package/lib/normalize-options.js +18 -44
  32. package/lib/normalize-options.js.map +1 -1
  33. package/lib/npm/call-npm-cli.d.ts +1 -0
  34. package/lib/npm/call-npm-cli.js +15 -42
  35. package/lib/npm/call-npm-cli.js.map +1 -1
  36. package/lib/npm/index.js +2 -18
  37. package/lib/npm/index.js.map +1 -1
  38. package/lib/npm/use-npm-environment.d.ts +1 -1
  39. package/lib/npm/use-npm-environment.js +9 -16
  40. package/lib/npm/use-npm-environment.js.map +1 -1
  41. package/lib/npm-publish.js +10 -14
  42. package/lib/npm-publish.js.map +1 -1
  43. package/lib/options.js +4 -7
  44. package/lib/options.js.map +1 -1
  45. package/lib/read-manifest.js +27 -53
  46. package/lib/read-manifest.js.map +1 -1
  47. package/lib/results.d.ts +1 -1
  48. package/lib/results.js +2 -5
  49. package/lib/results.js.map +1 -1
  50. package/package.json +39 -42
  51. package/src/action/core.ts +7 -8
  52. package/src/action/main.ts +4 -4
  53. package/src/cli/index.ts +1 -1
  54. package/src/cli/parse-cli-arguments.ts +1 -0
  55. package/src/compare-and-publish/compare-and-publish.ts +6 -6
  56. package/src/compare-and-publish/compare-versions.ts +2 -2
  57. package/src/compare-and-publish/get-arguments.ts +4 -1
  58. package/src/errors.ts +1 -1
  59. package/src/format-publish-result.ts +1 -1
  60. package/src/index.ts +1 -1
  61. package/src/normalize-options.ts +13 -8
  62. package/src/npm/call-npm-cli.ts +14 -12
  63. package/src/npm/use-npm-environment.ts +1 -1
  64. package/src/npm-publish.ts +3 -3
  65. package/src/read-manifest.ts +16 -9
  66. package/src/results.ts +2 -1
  67. package/src/tar.d.ts +0 -3
package/README.md CHANGED
@@ -6,13 +6,45 @@
6
6
  [![License](https://img.shields.io/npm/l/@jsdevtools/npm-publish.svg)](LICENSE)
7
7
  [![Buy us a tree](https://img.shields.io/badge/Treeware-%F0%9F%8C%B3-lightgreen)](https://plant.treeware.earth/JS-DevTools/npm-publish)
8
8
 
9
- Publish packages to npm automatically in GitHub Actions by updating the version number.
9
+ Publish packages to npm automatically in GitHub Actions whenever a change to your package's `version` field is detected.
10
10
 
11
11
  - [Change log][releases]
12
- - [v2 to v3 migration guide](#v2-to-v3)
13
- - [v1 to v3 migration guide](#v1-to-v3)
12
+ - [v3 to v4 migration guide](#v3-to-v4)
13
+ - [v2 to v4 migration guide](#v2-to-v4)
14
+ - [v1 to v4 migration guide](#v1-to-v4)
14
15
 
15
- [releases]: https://github.com/JS-DevTools/npm-publis/releases
16
+ [releases]: https://github.com/JS-DevTools/npm-publish/releases
17
+
18
+ ## ⚠️ You probably don't need this!
19
+
20
+ This action automates a specific kind of continuous deployment to `npm`, where you want to publish whenever the `version` field in `package.json` changes on your `main` branch. If you prefer to publish on tags (for example, those created by the `npm version` command), or are using an alternative package manager like `pnpm`, you don't need this action! Simply configure `setup-node` with its `registry-url` option and call your package manager's `publish` command directly. This is more secure than relying on a third-party action like this one, and is more customizable.
21
+
22
+ ```yaml
23
+ # Publish to npm whenever a tag is pushed
24
+ name: Publish to npm
25
+ on:
26
+ push:
27
+ tags: v*
28
+ jobs:
29
+ build:
30
+ runs-on: ubuntu-latest
31
+ permissions:
32
+ contents: read
33
+ id-token: write
34
+ steps:
35
+ - uses: actions/checkout@v5
36
+ - uses: actions/setup-node@v5
37
+ with:
38
+ node-version: "24"
39
+ registry-url: "https://registry.npmjs.org"
40
+ - run: npm ci
41
+ - run: npm test
42
+ - run: npm publish --provenance --ignore-scripts
43
+ env:
44
+ NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
45
+ ```
46
+
47
+ See [GitHub's Node.js publishing guide](https://docs.github.com/en/actions/tutorials/publish-packages/publish-nodejs-packages) for more details and examples.
16
48
 
17
49
  ## Features
18
50
 
@@ -54,13 +86,13 @@ jobs:
54
86
  publish:
55
87
  runs-on: ubuntu-latest
56
88
  steps:
57
- - uses: actions/checkout@v4
58
- - uses: actions/setup-node@v3
89
+ - uses: actions/checkout@v5
90
+ - uses: actions/setup-node@v5
59
91
  with:
60
- node-version: "20"
92
+ node-version: "24"
61
93
  - run: npm ci
62
94
  - run: npm test
63
- - uses: JS-DevTools/npm-publish@v3
95
+ - uses: JS-DevTools/npm-publish@v4
64
96
  with:
65
97
  token: ${{ secrets.NPM_TOKEN }}
66
98
  ```
@@ -79,13 +111,13 @@ jobs:
79
111
  contents: read
80
112
  packages: write # allow GITHUB_TOKEN to publish packages
81
113
  steps:
82
- - uses: actions/checkout@v4
83
- - uses: actions/setup-node@v3
114
+ - uses: actions/checkout@v5
115
+ - uses: actions/setup-node@v5
84
116
  with:
85
- node-version: "20"
117
+ node-version: "24"
86
118
  - run: npm ci
87
119
  - run: npm test
88
- - uses: JS-DevTools/npm-publish@v3
120
+ - uses: JS-DevTools/npm-publish@v4
89
121
  with:
90
122
  token: ${{ secrets.GITHUB_TOKEN }}
91
123
  registry: "https://npm.pkg.github.com"
@@ -94,6 +126,7 @@ jobs:
94
126
  [workflow file]: https://help.github.com/en/actions/automating-your-workflow-with-github-actions
95
127
  [npm authentication token]: https://docs.npmjs.com/creating-and-viewing-authentication-tokens
96
128
  [GitHub Package Registry]: https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-npm-registry
129
+ [good security practices]: https://docs.github.com/en/actions/reference/security/secure-use#using-third-party-actions
97
130
 
98
131
  ### Action usage
99
132
 
@@ -124,7 +157,7 @@ npm-publish exposes several output variables, which you can use in later steps o
124
157
 
125
158
  ```diff
126
159
  steps:
127
- - uses: JS-DevTools/npm-publish@v3
160
+ - uses: JS-DevTools/npm-publish@v4
128
161
  + id: publish
129
162
  with:
130
163
  token: ${{ secrets.NPM_TOKEN }}
@@ -285,17 +318,29 @@ Examples:
285
318
  Major releases of the action and libraries may contain breaking changes, documented here.
286
319
  For more detailed change logs, see [releases][].
287
320
 
288
- ### v2 to v3
321
+ ### v3 to v4
322
+
323
+ The `v4` release does not require any changes to how you use the `npm-publish` action from `v3`. The action was updated to Node 24 / npm 11.
289
324
 
290
- The v3 release does not require any changes to how you use `npm-publish` from `v2`. The version of Node.js used by the action was updated to v20 due to GitHub Action's [deprecation of Node.js v16][node16-deprecation]. The minimum required version of Node.js for the library and CLI remains v16.
325
+ In the library and CLI, support for Node 16 and Node 18 was dropped in `v4`, and the library API was switched to ESM-only. Library users should switch to ESM or update Node to a version with support for [loading ES modules using `require`][esm-require].
326
+
327
+ [esm-require]: https://nodejs.org/api/modules.html#loading-ecmascript-modules-using-require
328
+
329
+ ### v2 to v4
330
+
331
+ The `v4` release does not require any changes to how you use the `npm-publish` action from `v2`. The action was updated to Node 20 in `v3` due to GitHub Action's [deprecation of Node 16][node16-deprecation], and then updated to Node 24 in `v4`.
332
+
333
+ In the library and CLI, support for Node 16 and Node 18 was dropped in `v4`, and the library API was switched to ESM-only. Library users should switch to ESM or update Node to a version with support for [loading ES modules using `require`][esm-require].
291
334
 
292
335
  [node16-deprecation]: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/
293
336
 
294
- ### v1 to v3
337
+ ### v1 to v4
295
338
 
296
339
  The v2 release made several breaking changes to inputs, outputs, and behaviors that were present in `v1`. The examples below focus on the action, but the same changes are applicable to the library and CLI, too.
297
340
 
298
- #### v2 option changes
341
+ In the library and CLI, support for Node 16 and Node 18 was dropped in `v4`, and the library API was switched to ESM-only. Library users should switch to ESM or update Node to a version with support for [loading ES modules using `require`][esm-require].
342
+
343
+ #### option changes
299
344
 
300
345
  The `check-version` and `greater-version-only` boolean options were replaced with the `strategy` option:
301
346
 
@@ -319,9 +364,9 @@ The `check-version` and `greater-version-only` boolean options were replaced wit
319
364
  `check-version: false` has been removed. If you only need to publish, without first checking whether the version exists in the registry, you can [use `npm` directly][publishing-nodejs-packages] instead:
320
365
 
321
366
  ```diff
322
- - uses: actions/setup-node@v3
367
+ - uses: actions/setup-node@v5
323
368
  with:
324
- node-version: '18'
369
+ node-version: '24'
325
370
  + registry-url: https://registry.npmjs.org/
326
371
 
327
372
  - - uses: JS-DevTools/npm-publish@v1
@@ -335,7 +380,7 @@ The `check-version` and `greater-version-only` boolean options were replaced wit
335
380
 
336
381
  [publishing-nodejs-packages]: https://docs.github.com/actions/publishing-packages/publishing-nodejs-packages
337
382
 
338
- #### v2 output changes
383
+ #### output changes
339
384
 
340
385
  The `type` output is now an empty string instead of `'none'` when no release occurs
341
386
 
@@ -345,7 +390,7 @@ The `type` output is now an empty string instead of `'none'` when no release occ
345
390
  + if: ${{ steps.publish.outputs.type }}
346
391
  ```
347
392
 
348
- #### v2 behavior changes
393
+ #### behavior changes
349
394
 
350
395
  The `--ignore-scripts` option is now passed to `npm publish` as a security precaution. If you define any publish lifecycle scripts - `prepublishOnly`, `prepack`, `prepare`, `postpack`, `publish`, `postpublish` - we recommend you run that logic as a separate explicit build step.
351
396
 
@@ -353,7 +398,7 @@ The `--ignore-scripts` option is now passed to `npm publish` as a security preca
353
398
  + - run: npm run build
354
399
 
355
400
  - - uses: JS-DevTools/npm-publish@v1
356
- + - uses: JS-DevTools/npm-publish@v3
401
+ + - uses: JS-DevTools/npm-publish@v4
357
402
  with:
358
403
  token: ${{ secrets.NPM_TOKEN }}
359
404
  ```
@@ -362,7 +407,7 @@ If you can't change your build, you can set the `ignore-scripts` input to `false
362
407
 
363
408
  ```diff
364
409
  - - uses: JS-DevTools/npm-publish@v1
365
- + - uses: JS-DevTools/npm-publish@v3
410
+ + - uses: JS-DevTools/npm-publish@v4
366
411
  with:
367
412
  token: ${{ secrets.NPM_TOKEN }}
368
413
  + ignore-scripts: false
@@ -371,13 +416,13 @@ If you can't change your build, you can set the `ignore-scripts` input to `false
371
416
  The global `.npmrc` file is no longer read nor modified. This means the `token` option is now required for the library and CLI. (It was already required for the action.) You may have workarounds in place referencing `INPUT_TOKEN`, which v1 [erroneously wrote][#15] to `.npmrc`. These workarounds should be removed.
372
417
 
373
418
  ```diff
374
- - uses: actions/setup-node@v3
419
+ - uses: actions/setup-node@v5
375
420
  with:
376
- node-version: '18'
421
+ node-version: '24'
377
422
  registry-url: https://registry.npmjs.org/
378
423
 
379
424
  - - uses: JS-DevTools/npm-publish@v1
380
- + - uses: JS-DevTools/npm-publish@v3
425
+ + - uses: JS-DevTools/npm-publish@v4
381
426
  with:
382
427
  token: ${{ secrets.NPM_TOKEN }}
383
428
 
@@ -1,12 +1,22 @@
1
1
  #!/usr/bin/env node
2
- /* eslint-disable unicorn/prefer-module, unicorn/prefer-top-level-await */
3
- "use strict";
2
+ import fs from "node:fs";
3
+ import path from "node:path";
4
+ import process from "node:process";
5
+ import url from "node:url";
4
6
 
5
- const process = require("node:process");
6
- const { version } = require("../package.json");
7
- const { main } = require("../lib/cli/index.js");
7
+ import { main } from "../lib/cli/index.js";
8
8
 
9
- main(process.argv.slice(2), version).catch((error) => {
9
+ const dirname = path.dirname(url.fileURLToPath(import.meta.url));
10
+
11
+ /** @type {{ version: string }} */
12
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
13
+ const { version } = JSON.parse(
14
+ fs.readFileSync(path.join(dirname, "../package.json"), "utf8")
15
+ );
16
+
17
+ try {
18
+ await main(process.argv.slice(2), version);
19
+ } catch (error) {
10
20
  console.error(error);
11
21
  process.exitCode = 1;
12
- });
22
+ }
@@ -7,7 +7,7 @@ export declare const logger: Logger;
7
7
  * @param name Input name
8
8
  * @returns The input string value, or undefined if not set
9
9
  */
10
- export declare function getInput<T extends string>(name: string): T | undefined;
10
+ export declare function getInput(name: string): string | undefined;
11
11
  /**
12
12
  * Get a required secret input by name.
13
13
  *
@@ -1,13 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.setOutput = exports.setFailed = exports.getBooleanInput = exports.getRequiredSecretInput = exports.getInput = exports.logger = void 0;
4
1
  /** Wrapper module for @actions/core */
5
- const core_1 = require("@actions/core");
2
+ import { debug as ghLogDebug, error as ghLogError, getInput as ghGetInput, info as ghLogInfo, setFailed as ghSetFailed, setOutput as ghSetOutput, setSecret as ghSetSecret, } from "@actions/core";
6
3
  /** Logger using the methods from @actions/core. */
7
- exports.logger = {
8
- debug: core_1.debug,
9
- info: core_1.info,
10
- error: core_1.error,
4
+ export const logger = {
5
+ debug: ghLogDebug,
6
+ info: ghLogInfo,
7
+ error: ghLogError,
11
8
  };
12
9
  /**
13
10
  * Get input by name.
@@ -15,50 +12,44 @@ exports.logger = {
15
12
  * @param name Input name
16
13
  * @returns The input string value, or undefined if not set
17
14
  */
18
- function getInput(name) {
19
- const inputString = (0, core_1.getInput)(name);
15
+ export function getInput(name) {
16
+ const inputString = ghGetInput(name);
20
17
  return inputString.length > 0 ? inputString : undefined;
21
18
  }
22
- exports.getInput = getInput;
23
19
  /**
24
20
  * Get a required secret input by name.
25
21
  *
26
22
  * @param name Input name
27
23
  * @returns The input secret value.
28
24
  */
29
- function getRequiredSecretInput(name) {
30
- const inputString = (0, core_1.getInput)(name, { required: true });
31
- (0, core_1.setSecret)(inputString);
25
+ export function getRequiredSecretInput(name) {
26
+ const inputString = ghGetInput(name, { required: true });
27
+ ghSetSecret(inputString);
32
28
  return inputString;
33
29
  }
34
- exports.getRequiredSecretInput = getRequiredSecretInput;
35
30
  /**
36
31
  * Get a boolean input by name.
37
32
  *
38
33
  * @param name Input name
39
34
  * @returns True if value is "true", false if "false", undefined if unset
40
35
  */
41
- function getBooleanInput(name) {
42
- const inputString = (0, core_1.getInput)(name).toLowerCase();
36
+ export function getBooleanInput(name) {
37
+ const inputString = ghGetInput(name).toLowerCase();
43
38
  if (inputString === "true")
44
39
  return true;
45
40
  if (inputString === "false")
46
41
  return false;
47
42
  return undefined;
48
43
  }
49
- exports.getBooleanInput = getBooleanInput;
50
44
  /**
51
45
  * Set the action as failed due to an error.
52
46
  *
53
47
  * @param error An value from a `catch`
54
48
  */
55
- function setFailed(error) {
56
- (0, core_1.setFailed)(error);
49
+ export function setFailed(error) {
50
+ ghSetFailed(error);
57
51
  }
58
- exports.setFailed = setFailed;
59
- // eslint-disable-next-line jsdoc/require-jsdoc
60
- function setOutput(name, value, defaultValue) {
61
- (0, core_1.setOutput)(name, value ?? defaultValue);
52
+ export function setOutput(name, value, defaultValue) {
53
+ ghSetOutput(name, value ?? defaultValue);
62
54
  }
63
- exports.setOutput = setOutput;
64
55
  //# sourceMappingURL=core.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/action/core.ts"],"names":[],"mappings":";;;AAAA,uCAAuC;AACvC,wCAQuB;AAIvB,mDAAmD;AACtC,QAAA,MAAM,GAAW;IAC5B,KAAK,EAAE,YAAU;IACjB,IAAI,EAAE,WAAS;IACf,KAAK,EAAE,YAAU;CAClB,CAAC;AAEF;;;;;GAKG;AACH,SAAgB,QAAQ,CAAmB,IAAY;IACrD,MAAM,WAAW,GAAG,IAAA,eAAU,EAAC,IAAI,CAAC,CAAC;IACrC,OAAO,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAE,WAAiB,CAAC,CAAC,CAAC,SAAS,CAAC;AACjE,CAAC;AAHD,4BAGC;AAED;;;;;GAKG;AACH,SAAgB,sBAAsB,CAAC,IAAY;IACjD,MAAM,WAAW,GAAG,IAAA,eAAU,EAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,IAAA,gBAAW,EAAC,WAAW,CAAC,CAAC;IACzB,OAAO,WAAW,CAAC;AACrB,CAAC;AAJD,wDAIC;AAED;;;;;GAKG;AACH,SAAgB,eAAe,CAAC,IAAY;IAC1C,MAAM,WAAW,GAAG,IAAA,eAAU,EAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IAEnD,IAAI,WAAW,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IACxC,IAAI,WAAW,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IAC1C,OAAO,SAAS,CAAC;AACnB,CAAC;AAND,0CAMC;AAED;;;;GAIG;AACH,SAAgB,SAAS,CAAC,KAAc;IACtC,IAAA,gBAAW,EAAC,KAAc,CAAC,CAAC;AAC9B,CAAC;AAFD,8BAEC;AAuBD,+CAA+C;AAC/C,SAAgB,SAAS,CACvB,IAAY,EACZ,KAAmC,EACnC,YAA2C;IAE3C,IAAA,gBAAW,EAAC,IAAI,EAAE,KAAK,IAAI,YAAY,CAAC,CAAC;AAC3C,CAAC;AAND,8BAMC"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/action/core.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,OAAO,EACL,KAAK,IAAI,UAAU,EACnB,KAAK,IAAI,UAAU,EACnB,QAAQ,IAAI,UAAU,EACtB,IAAI,IAAI,SAAS,EACjB,SAAS,IAAI,WAAW,EACxB,SAAS,IAAI,WAAW,EACxB,SAAS,IAAI,WAAW,GACzB,MAAM,eAAe,CAAC;AAIvB,mDAAmD;AACnD,MAAM,CAAC,MAAM,MAAM,GAAW;IAC5B,KAAK,EAAE,UAAU;IACjB,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,UAAU;CAClB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IACrC,OAAO,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,WAAW,CAAC,WAAW,CAAC,CAAC;IACzB,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IAEnD,IAAI,WAAW,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IACxC,IAAI,WAAW,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IAC1C,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,KAAc;IACtC,WAAW,CAAC,KAAc,CAAC,CAAC;AAC9B,CAAC;AAuBD,MAAM,UAAU,SAAS,CACvB,IAAY,EACZ,KAAmC,EACnC,YAA+B;IAE/B,WAAW,CAAC,IAAI,EAAE,KAAK,IAAI,YAAY,CAAC,CAAC;AAC3C,CAAC"}
@@ -1,35 +1,9 @@
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 (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.main = void 0;
27
1
  /** Action entry point */
28
- const index_js_1 = require("../index.js");
29
- const core = __importStar(require("./core.js"));
2
+ import { npmPublish } from "../index.js";
3
+ import * as core from "./core.js";
30
4
  /** Run the action. */
31
5
  async function run() {
32
- const results = await (0, index_js_1.npmPublish)({
6
+ const results = await npmPublish({
33
7
  token: core.getRequiredSecretInput("token"),
34
8
  registry: core.getInput("registry"),
35
9
  package: core.getInput("package"),
@@ -40,7 +14,7 @@ async function run() {
40
14
  ignoreScripts: core.getBooleanInput("ignore-scripts"),
41
15
  dryRun: core.getBooleanInput("dry-run"),
42
16
  logger: core.logger,
43
- temporaryDirectory: process.env["RUNNER_TEMP"],
17
+ temporaryDirectory: process.env.RUNNER_TEMP,
44
18
  });
45
19
  core.setOutput("id", results.id, "");
46
20
  core.setOutput("name", results.name);
@@ -54,7 +28,7 @@ async function run() {
54
28
  core.setOutput("dry-run", results.dryRun);
55
29
  }
56
30
  /** Main action entry point. */
57
- async function main() {
31
+ export async function main() {
58
32
  try {
59
33
  await run();
60
34
  }
@@ -62,5 +36,4 @@ async function main() {
62
36
  core.setFailed(error);
63
37
  }
64
38
  }
65
- exports.main = main;
66
39
  //# sourceMappingURL=main.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/action/main.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yBAAyB;AACzB,0CAAyC;AACzC,gDAAkC;AAElC,sBAAsB;AACtB,KAAK,UAAU,GAAG;IAChB,MAAM,OAAO,GAAG,MAAM,IAAA,qBAAU,EAAC;QAC/B,KAAK,EAAE,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC;QAC3C,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;QACnC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;QACjC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QACzB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC/B,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC;QAC9C,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;QACnC,aAAa,EAAE,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC;QACrD,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC;QACvC,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,kBAAkB,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;KAC/C,CAAC,CAAC;IAEH,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACrC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3C,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACzC,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IACtD,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAClD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IACnC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACpD,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;AAC5C,CAAC;AAED,+BAA+B;AACxB,KAAK,UAAU,IAAI;IACxB,IAAI,CAAC;QACH,MAAM,GAAG,EAAE,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;AACH,CAAC;AAND,oBAMC"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/action/main.ts"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,OAAO,EAAe,UAAU,EAAiB,MAAM,aAAa,CAAC;AACrE,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,sBAAsB;AACtB,KAAK,UAAU,GAAG;IAChB,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC;QAC/B,KAAK,EAAE,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC;QAC3C,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;QACnC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;QACjC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QACzB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAuB;QACrD,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC;QAC9C,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAyB;QAC3D,aAAa,EAAE,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC;QACrD,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC;QACvC,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,kBAAkB,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW;KAC5C,CAAC,CAAC;IAEH,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACrC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3C,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACzC,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IACtD,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAClD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IACnC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACpD,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;AAC5C,CAAC;AAED,+BAA+B;AAC/B,MAAM,CAAC,KAAK,UAAU,IAAI;IACxB,IAAI,CAAC;QACH,MAAM,GAAG,EAAE,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;AACH,CAAC"}
package/lib/cli/index.js CHANGED
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.main = exports.USAGE = void 0;
4
- const index_js_1 = require("../index.js");
5
- const parse_cli_arguments_js_1 = require("./parse-cli-arguments.js");
6
- exports.USAGE = `
1
+ import { npmPublish } from "../index.js";
2
+ import { parseCliArguments } from "./parse-cli-arguments.js";
3
+ export const USAGE = `
7
4
  Usage:
8
5
 
9
6
  npm-publish <options> [package]
@@ -53,10 +50,10 @@ Examples:
53
50
  * @param argv - The list of argument strings passed to the program.
54
51
  * @param version - The version of this program.
55
52
  */
56
- async function main(argv, version) {
57
- const cliArguments = (0, parse_cli_arguments_js_1.parseCliArguments)(argv);
53
+ export async function main(argv, version) {
54
+ const cliArguments = parseCliArguments(argv);
58
55
  if (cliArguments.help) {
59
- console.info(exports.USAGE);
56
+ console.info(USAGE);
60
57
  return;
61
58
  }
62
59
  if (cliArguments.version) {
@@ -68,7 +65,6 @@ async function main(argv, version) {
68
65
  info: cliArguments.quiet === false ? console.info : undefined,
69
66
  debug: cliArguments.debug === true ? console.debug : undefined,
70
67
  };
71
- await (0, index_js_1.npmPublish)({ ...cliArguments.options, logger });
68
+ await npmPublish({ ...cliArguments.options, logger });
72
69
  }
73
- exports.main = main;
74
70
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";;;AAAA,0CAAsD;AACtD,qEAA6D;AAEhD,QAAA,KAAK,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2CpB,CAAC;AAEF;;;;;GAKG;AACI,KAAK,UAAU,IAAI,CAAC,IAAc,EAAE,OAAe;IACxD,MAAM,YAAY,GAAG,IAAA,0CAAiB,EAAC,IAAI,CAAC,CAAC;IAE7C,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC,aAAK,CAAC,CAAC;QACpB,OAAO;IACT,CAAC;IAED,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACtB,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAW;QACrB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,IAAI,EAAE,YAAY,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;QAC7D,KAAK,EAAE,YAAY,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;KAC/D,CAAC;IAEF,MAAM,IAAA,qBAAU,EAAC,EAAE,GAAG,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;AACxD,CAAC;AApBD,oBAoBC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,UAAU,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,MAAM,CAAC,MAAM,KAAK,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2CpB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAc,EAAE,OAAe;IACxD,MAAM,YAAY,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAE7C,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpB,OAAO;IACT,CAAC;IAED,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACtB,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAW;QACrB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,IAAI,EAAE,YAAY,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;QAC7D,KAAK,EAAE,YAAY,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;KAC/D,CAAC;IAEF,MAAM,UAAU,CAAC,EAAE,GAAG,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;AACxD,CAAC"}
@@ -1,11 +1,5 @@
1
- "use strict";
2
1
  /** Wrapper module for command-line-args */
3
- var __importDefault = (this && this.__importDefault) || function (mod) {
4
- return (mod && mod.__esModule) ? mod : { "default": mod };
5
- };
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.parseCliArguments = void 0;
8
- const command_line_args_1 = __importDefault(require("command-line-args"));
2
+ import commandLineArgs from "command-line-args";
9
3
  const ARGUMENTS_OPTIONS = [
10
4
  { name: "package", type: String, defaultOption: true },
11
5
  { name: "token", type: String },
@@ -27,8 +21,8 @@ const ARGUMENTS_OPTIONS = [
27
21
  * @param argv The list of argument strings passed to the program.
28
22
  * @returns A parsed object of options.
29
23
  */
30
- function parseCliArguments(argv) {
31
- const { help, version, quiet, debug, ...optionFlags } = (0, command_line_args_1.default)(ARGUMENTS_OPTIONS, { argv, camelCase: true });
24
+ export function parseCliArguments(argv) {
25
+ const { help, version, quiet, debug, ...optionFlags } = commandLineArgs(ARGUMENTS_OPTIONS, { argv, camelCase: true });
32
26
  const options = Object.fromEntries(Object.entries(optionFlags).map(([key, value]) => {
33
27
  return key === "noIgnoreScripts"
34
28
  ? ["ignoreScripts", !value]
@@ -42,5 +36,4 @@ function parseCliArguments(argv) {
42
36
  options: options,
43
37
  };
44
38
  }
45
- exports.parseCliArguments = parseCliArguments;
46
39
  //# sourceMappingURL=parse-cli-arguments.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parse-cli-arguments.js","sourceRoot":"","sources":["../../src/cli/parse-cli-arguments.ts"],"names":[],"mappings":";AAAA,2CAA2C;;;;;;AAE3C,0EAAgD;AAGhD,MAAM,iBAAiB,GAAG;IACxB,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE;IACtD,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE;IAC/B,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE;IAClC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE;IAC7B,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE;IAChC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE;IACrC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE;IAClC,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,OAAO,EAAE;IAC5C,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE;IAClC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE;IAChC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE;IAChC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE;IAC9C,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE;CAC5C,CAAC;AAWF;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,IAAc;IAC9C,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,WAAW,EAAE,GAAG,IAAA,2BAAe,EACrE,iBAAiB,EACjB,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAC1B,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAChC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QAC/C,OAAO,GAAG,KAAK,iBAAiB;YAC9B,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,KAAK,CAAC;YAC3B,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACnB,CAAC,CAAC,CACH,CAAC;IAEF,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC;QACzB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC;QACrB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC;QACrB,OAAO,EAAE,OAAkB;KAC5B,CAAC;AACJ,CAAC;AArBD,8CAqBC"}
1
+ {"version":3,"file":"parse-cli-arguments.js","sourceRoot":"","sources":["../../src/cli/parse-cli-arguments.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAE3C,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAIhD,MAAM,iBAAiB,GAAG;IACxB,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE;IACtD,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE;IAC/B,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE;IAClC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE;IAC7B,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE;IAChC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE;IACrC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE;IAClC,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,OAAO,EAAE;IAC5C,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE;IAClC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE;IAChC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE;IAChC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE;IAC9C,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE;CAC5C,CAAC;AAWF;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAc;IAC9C,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,WAAW,EAAE,GAAG,eAAe,CACrE,iBAAiB,EACjB,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAC1B,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAChC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QAC/C,OAAO,GAAG,KAAK,iBAAiB;YAC9B,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,KAAK,CAAC;YAC3B,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACnB,CAAC,CAAC,CACH,CAAC;IAEF,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC;QACzB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC;QACrB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC;QACrB,OAAO,EAAE,OAAkB;KAC5B,CAAC;AACJ,CAAC"}
@@ -1,6 +1,6 @@
1
- import type { PackageManifest } from "../read-manifest.js";
2
1
  import type { NormalizedOptions } from "../normalize-options.js";
3
2
  import { type NpmCliEnvironment } from "../npm/index.js";
3
+ import type { PackageManifest } from "../read-manifest.js";
4
4
  import { type VersionComparison } from "./compare-versions.js";
5
5
  export interface PublishResult extends VersionComparison {
6
6
  id: string | undefined;
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.compareAndPublish = void 0;
4
- const index_js_1 = require("../npm/index.js");
5
- const compare_versions_js_1 = require("./compare-versions.js");
6
- const get_arguments_js_1 = require("./get-arguments.js");
1
+ import { callNpmCli, E404, EPUBLISHCONFLICT, PUBLISH, VIEW, } from "../npm/index.js";
2
+ import { compareVersions } from "./compare-versions.js";
3
+ import { getPublishArguments, getViewArguments } from "./get-arguments.js";
7
4
  /**
8
5
  * Get the currently published versions of a package and publish if needed.
9
6
  *
@@ -12,34 +9,34 @@ const get_arguments_js_1 = require("./get-arguments.js");
12
9
  * @param environment Environment variables for the npm cli.
13
10
  * @returns Information about the publish, including if it occurred.
14
11
  */
15
- async function compareAndPublish(manifest, options, environment) {
12
+ export async function compareAndPublish(manifest, options, environment) {
16
13
  const { name, version, packageSpec } = manifest;
17
14
  const cliOptions = {
18
15
  environment,
19
16
  ignoreScripts: options.ignoreScripts.value,
20
17
  logger: options.logger,
21
18
  };
22
- const viewArguments = (0, get_arguments_js_1.getViewArguments)(name, options);
23
- const publishArguments = (0, get_arguments_js_1.getPublishArguments)(packageSpec, options);
24
- let viewCall = await (0, index_js_1.callNpmCli)(index_js_1.VIEW, viewArguments, cliOptions);
19
+ const viewArguments = getViewArguments(name, options);
20
+ const publishArguments = getPublishArguments(packageSpec, options);
21
+ let viewCall = await callNpmCli(VIEW, viewArguments, cliOptions);
25
22
  // `npm view` will succeed with no output the package exists in the registry
26
23
  // with no `latest` tag. This is only possible with third-party registries.
27
24
  // https://github.com/npm/cli/issues/6408
28
25
  if (!viewCall.successData && !viewCall.error) {
29
26
  // Retry the call to `npm view` with the configured publish tag,
30
27
  // to at least try to get something.
31
- const viewWithTagArguments = (0, get_arguments_js_1.getViewArguments)(name, options, true);
32
- viewCall = await (0, index_js_1.callNpmCli)(index_js_1.VIEW, viewWithTagArguments, cliOptions);
28
+ const viewWithTagArguments = getViewArguments(name, options, true);
29
+ viewCall = await callNpmCli(VIEW, viewWithTagArguments, cliOptions);
33
30
  }
34
- if (viewCall.error && viewCall.errorCode !== index_js_1.E404) {
31
+ if (viewCall.error && viewCall.errorCode !== E404) {
35
32
  throw viewCall.error;
36
33
  }
37
34
  const isDryRun = options.dryRun.value;
38
- const comparison = (0, compare_versions_js_1.compareVersions)(version, viewCall.successData, options);
39
- const publishCall = comparison.type ?? isDryRun
40
- ? await (0, index_js_1.callNpmCli)(index_js_1.PUBLISH, publishArguments, cliOptions)
35
+ const comparison = compareVersions(version, viewCall.successData, options);
36
+ const publishCall = (comparison.type ?? isDryRun)
37
+ ? await callNpmCli(PUBLISH, publishArguments, cliOptions)
41
38
  : { successData: undefined, errorCode: undefined, error: undefined };
42
- if (publishCall.error && publishCall.errorCode !== index_js_1.EPUBLISHCONFLICT) {
39
+ if (publishCall.error && publishCall.errorCode !== EPUBLISHCONFLICT) {
43
40
  throw publishCall.error;
44
41
  }
45
42
  const { successData: publishData } = publishCall;
@@ -50,5 +47,4 @@ async function compareAndPublish(manifest, options, environment) {
50
47
  oldVersion: comparison.oldVersion,
51
48
  };
52
49
  }
53
- exports.compareAndPublish = compareAndPublish;
54
50
  //# sourceMappingURL=compare-and-publish.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"compare-and-publish.js","sourceRoot":"","sources":["../../src/compare-and-publish/compare-and-publish.ts"],"names":[],"mappings":";;;AAEA,8CAOyB;AACzB,+DAAgF;AAChF,yDAA2E;AAY3E;;;;;;;GAOG;AACI,KAAK,UAAU,iBAAiB,CACrC,QAAyB,EACzB,OAA0B,EAC1B,WAA8B;IAE9B,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;IAChD,MAAM,UAAU,GAAG;QACjB,WAAW;QACX,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,KAAK;QAC1C,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC;IAEF,MAAM,aAAa,GAAG,IAAA,mCAAgB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACtD,MAAM,gBAAgB,GAAG,IAAA,sCAAmB,EAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACnE,IAAI,QAAQ,GAAG,MAAM,IAAA,qBAAU,EAAC,eAAI,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;IAEjE,4EAA4E;IAC5E,2EAA2E;IAC3E,yCAAyC;IACzC,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC7C,gEAAgE;QAChE,oCAAoC;QACpC,MAAM,oBAAoB,GAAG,IAAA,mCAAgB,EAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QACnE,QAAQ,GAAG,MAAM,IAAA,qBAAU,EAAC,eAAI,EAAE,oBAAoB,EAAE,UAAU,CAAC,CAAC;IACtE,CAAC;IAED,IAAI,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,SAAS,KAAK,eAAI,EAAE,CAAC;QAClD,MAAM,QAAQ,CAAC,KAAK,CAAC;IACvB,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;IACtC,MAAM,UAAU,GAAG,IAAA,qCAAe,EAAC,OAAO,EAAE,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAC3E,MAAM,WAAW,GACf,UAAU,CAAC,IAAI,IAAI,QAAQ;QACzB,CAAC,CAAC,MAAM,IAAA,qBAAU,EAAC,kBAAO,EAAE,gBAAgB,EAAE,UAAU,CAAC;QACzD,CAAC,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IAEzE,IAAI,WAAW,CAAC,KAAK,IAAI,WAAW,CAAC,SAAS,KAAK,2BAAgB,EAAE,CAAC;QACpE,MAAM,WAAW,CAAC,KAAK,CAAC;IAC1B,CAAC;IAED,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,WAAW,CAAC;IAEjD,OAAO;QACL,EAAE,EAAE,QAAQ,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE;QAC9D,KAAK,EAAE,WAAW,EAAE,KAAK,IAAI,EAAE;QAC/B,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;QAC/C,UAAU,EAAE,UAAU,CAAC,UAAU;KAClC,CAAC;AACJ,CAAC;AAjDD,8CAiDC"}
1
+ {"version":3,"file":"compare-and-publish.js","sourceRoot":"","sources":["../../src/compare-and-publish/compare-and-publish.ts"],"names":[],"mappings":"AACA,OAAO,EACL,UAAU,EACV,IAAI,EACJ,gBAAgB,EAEhB,OAAO,EACP,IAAI,GACL,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,eAAe,EAA0B,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAY3E;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,QAAyB,EACzB,OAA0B,EAC1B,WAA8B;IAE9B,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;IAChD,MAAM,UAAU,GAAG;QACjB,WAAW;QACX,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,KAAK;QAC1C,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC;IAEF,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACtD,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACnE,IAAI,QAAQ,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;IAEjE,4EAA4E;IAC5E,2EAA2E;IAC3E,yCAAyC;IACzC,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC7C,gEAAgE;QAChE,oCAAoC;QACpC,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QACnE,QAAQ,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,oBAAoB,EAAE,UAAU,CAAC,CAAC;IACtE,CAAC;IAED,IAAI,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;QAClD,MAAM,QAAQ,CAAC,KAAK,CAAC;IACvB,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;IACtC,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAC3E,MAAM,WAAW,GACf,CAAC,UAAU,CAAC,IAAI,IAAI,QAAQ,CAAC;QAC3B,CAAC,CAAC,MAAM,UAAU,CAAC,OAAO,EAAE,gBAAgB,EAAE,UAAU,CAAC;QACzD,CAAC,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IAEzE,IAAI,WAAW,CAAC,KAAK,IAAI,WAAW,CAAC,SAAS,KAAK,gBAAgB,EAAE,CAAC;QACpE,MAAM,WAAW,CAAC,KAAK,CAAC;IAC1B,CAAC;IAED,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,WAAW,CAAC;IAEjD,OAAO;QACL,EAAE,EAAE,QAAQ,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE;QAC9D,KAAK,EAAE,WAAW,EAAE,KAAK,IAAI,EAAE;QAC/B,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;QAC/C,UAAU,EAAE,UAAU,CAAC,UAAU;KAClC,CAAC;AACJ,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { NormalizedOptions } from "../normalize-options.js";
2
- import { type ReleaseType } from "../results.js";
3
2
  import type { NpmViewData } from "../npm/index.js";
3
+ import { type ReleaseType } from "../results.js";
4
4
  export interface VersionComparison {
5
5
  type: ReleaseType | undefined;
6
6
  oldVersion: string | undefined;
@@ -1,14 +1,8 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.compareVersions = void 0;
7
- const diff_js_1 = __importDefault(require("semver/functions/diff.js"));
8
- const gt_js_1 = __importDefault(require("semver/functions/gt.js"));
9
- const valid_js_1 = __importDefault(require("semver/functions/valid.js"));
10
- const options_js_1 = require("../options.js");
11
- const results_js_1 = require("../results.js");
1
+ import semverDifference from "semver/functions/diff.js";
2
+ import semverGreaterThan from "semver/functions/gt.js";
3
+ import semverValid from "semver/functions/valid.js";
4
+ import { STRATEGY_ALL } from "../options.js";
5
+ import { DIFFERENT, INITIAL } from "../results.js";
12
6
  /**
13
7
  * Compare previously published versions with the package's current version.
14
8
  *
@@ -17,24 +11,23 @@ const results_js_1 = require("../results.js");
17
11
  * @param options Configuration options
18
12
  * @returns The release type and previous version.
19
13
  */
20
- function compareVersions(currentVersion, publishedVersions, options) {
14
+ export function compareVersions(currentVersion, publishedVersions, options) {
21
15
  const { versions, "dist-tags": tags } = publishedVersions ?? {};
22
16
  const { strategy, tag: publishTag } = options;
23
- const oldVersion = (0, valid_js_1.default)(tags?.[publishTag.value]) ?? undefined;
17
+ const oldVersion = semverValid(tags?.[publishTag.value]) ?? undefined;
24
18
  const isUnique = !versions?.includes(currentVersion);
25
19
  let type;
26
20
  if (isUnique) {
27
21
  if (!oldVersion) {
28
- type = results_js_1.INITIAL;
22
+ type = INITIAL;
29
23
  }
30
- else if ((0, gt_js_1.default)(currentVersion, oldVersion)) {
31
- type = (0, diff_js_1.default)(currentVersion, oldVersion) ?? results_js_1.DIFFERENT;
24
+ else if (semverGreaterThan(currentVersion, oldVersion)) {
25
+ type = semverDifference(currentVersion, oldVersion) ?? DIFFERENT;
32
26
  }
33
- else if (strategy.value === options_js_1.STRATEGY_ALL) {
34
- type = results_js_1.DIFFERENT;
27
+ else if (strategy.value === STRATEGY_ALL) {
28
+ type = DIFFERENT;
35
29
  }
36
30
  }
37
31
  return { type, oldVersion };
38
32
  }
39
- exports.compareVersions = compareVersions;
40
33
  //# sourceMappingURL=compare-versions.js.map