rman 0.33.2 → 0.35.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.
@@ -63,9 +63,14 @@ class PublishCommand extends run_command_js_1.RunCommand {
63
63
  if (command === '#') {
64
64
  if (pkg === this.repository.rootPackage)
65
65
  return { code: 0 };
66
- const cwd = this.options.contents
67
- ? path_1.default.resolve(this.repository.dirname, path_1.default.join(this.options.contents, path_1.default.basename(pkg.dirname)))
68
- : pkg.dirname;
66
+ let cwd = pkg.dirname;
67
+ if (this.options.contents) {
68
+ const contents = this.options.contents.replaceAll('${package.basename}', pkg.basename);
69
+ if (contents.startsWith('/'))
70
+ cwd = path_1.default.join(this.repository.dirname, contents);
71
+ else
72
+ cwd = path_1.default.join(pkg.dirname, contents);
73
+ }
69
74
  return super._exec(pkg, 'npm publish' +
70
75
  (this.options.access ? ' --access=' + this.options.access : '') +
71
76
  (this.options.userconfig ? ` --userconfig="${this.options.userconfig}"` : ''), {
@@ -10,6 +10,9 @@ class Package {
10
10
  this.dependencies = [];
11
11
  this.reloadJson();
12
12
  }
13
+ get basename() {
14
+ return path_1.default.basename(this.dirname);
15
+ }
13
16
  get name() {
14
17
  return this._json.name;
15
18
  }
@@ -59,9 +59,14 @@ export class PublishCommand extends RunCommand {
59
59
  if (command === '#') {
60
60
  if (pkg === this.repository.rootPackage)
61
61
  return { code: 0 };
62
- const cwd = this.options.contents
63
- ? path.resolve(this.repository.dirname, path.join(this.options.contents, path.basename(pkg.dirname)))
64
- : pkg.dirname;
62
+ let cwd = pkg.dirname;
63
+ if (this.options.contents) {
64
+ const contents = this.options.contents.replaceAll('${package.basename}', pkg.basename);
65
+ if (contents.startsWith('/'))
66
+ cwd = path.join(this.repository.dirname, contents);
67
+ else
68
+ cwd = path.join(pkg.dirname, contents);
69
+ }
65
70
  return super._exec(pkg, 'npm publish' +
66
71
  (this.options.access ? ' --access=' + this.options.access : '') +
67
72
  (this.options.userconfig ? ` --userconfig="${this.options.userconfig}"` : ''), {
@@ -6,6 +6,9 @@ export class Package {
6
6
  this.dependencies = [];
7
7
  this.reloadJson();
8
8
  }
9
+ get basename() {
10
+ return path.basename(this.dirname);
11
+ }
9
12
  get name() {
10
13
  return this._json.name;
11
14
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "rman",
3
3
  "description": "Monorepo repository manager",
4
- "version": "0.33.2",
4
+ "version": "0.35.0",
5
5
  "author": "Panates",
6
6
  "license": "MIT",
7
7
  "dependencies": {
@@ -3,6 +3,7 @@ export declare class Package {
3
3
  private _json;
4
4
  dependencies: string[];
5
5
  constructor(dirname: string);
6
+ get basename(): string;
6
7
  get name(): string;
7
8
  get version(): string;
8
9
  get json(): any;