@napi-rs/cli 3.0.0-alpha.3 → 3.0.0-alpha.31

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 (209) hide show
  1. package/dist/api/artifacts.js +29 -7
  2. package/dist/api/artifacts.js.map +1 -0
  3. package/dist/api/build.d.ts +1 -1
  4. package/dist/api/build.js +206 -32
  5. package/dist/api/build.js.map +1 -0
  6. package/dist/api/create-npm-dirs.js +50 -8
  7. package/dist/api/create-npm-dirs.js.map +1 -0
  8. package/dist/api/new.js +47 -20
  9. package/dist/api/new.js.map +1 -0
  10. package/dist/api/pre-publish.js +10 -7
  11. package/dist/api/pre-publish.js.map +1 -0
  12. package/dist/api/rename.js +10 -1
  13. package/dist/api/rename.js.map +1 -0
  14. package/dist/api/templates/.gitignore.d.ts +1 -1
  15. package/dist/api/templates/.gitignore.js +2 -0
  16. package/dist/api/templates/.gitignore.js.map +1 -0
  17. package/dist/api/templates/.npmignore.js +1 -0
  18. package/dist/api/templates/.npmignore.js.map +1 -0
  19. package/dist/api/templates/build.rs.js +1 -0
  20. package/dist/api/templates/build.rs.js.map +1 -0
  21. package/dist/api/templates/cargo.toml.js +1 -0
  22. package/dist/api/templates/cargo.toml.js.map +1 -0
  23. package/dist/api/templates/ci-template.d.ts +2 -1
  24. package/dist/api/templates/ci-template.js +156 -157
  25. package/dist/api/templates/ci-template.js.map +1 -0
  26. package/dist/api/templates/ci.yml.d.ts +2 -1
  27. package/dist/api/templates/ci.yml.js +19 -4
  28. package/dist/api/templates/ci.yml.js.map +1 -0
  29. package/dist/api/templates/index.js +1 -0
  30. package/dist/api/templates/index.js.map +1 -0
  31. package/dist/api/templates/js-binding.d.ts +1 -1
  32. package/dist/api/templates/js-binding.js +320 -107
  33. package/dist/api/templates/js-binding.js.map +1 -0
  34. package/dist/api/templates/lib.rs.js +2 -4
  35. package/dist/api/templates/lib.rs.js.map +1 -0
  36. package/dist/api/templates/load-wasi-template.d.ts +2 -0
  37. package/dist/api/templates/load-wasi-template.js +139 -0
  38. package/dist/api/templates/load-wasi-template.js.map +1 -0
  39. package/dist/api/templates/package.json.d.ts +9 -2
  40. package/dist/api/templates/package.json.js +55 -28
  41. package/dist/api/templates/package.json.js.map +1 -0
  42. package/dist/api/templates/wasi-worker-template.d.ts +2 -0
  43. package/dist/api/templates/wasi-worker-template.js +86 -0
  44. package/dist/api/templates/wasi-worker-template.js.map +1 -0
  45. package/dist/api/universalize.js +4 -3
  46. package/dist/api/universalize.js.map +1 -0
  47. package/dist/api/version.js +3 -2
  48. package/dist/api/version.js.map +1 -0
  49. package/dist/cli.js +1 -0
  50. package/dist/cli.js.map +1 -0
  51. package/dist/commands/artifacts.js +3 -2
  52. package/dist/commands/artifacts.js.map +1 -0
  53. package/dist/commands/build.js +2 -1
  54. package/dist/commands/build.js.map +1 -0
  55. package/dist/commands/create-npm-dirs.js +1 -0
  56. package/dist/commands/create-npm-dirs.js.map +1 -0
  57. package/dist/commands/help.js +1 -0
  58. package/dist/commands/help.js.map +1 -0
  59. package/dist/commands/new.js +15 -7
  60. package/dist/commands/new.js.map +1 -0
  61. package/dist/commands/pre-publish.js +1 -0
  62. package/dist/commands/pre-publish.js.map +1 -0
  63. package/dist/commands/rename.js +1 -0
  64. package/dist/commands/rename.js.map +1 -0
  65. package/dist/commands/universalize.js +1 -0
  66. package/dist/commands/universalize.js.map +1 -0
  67. package/dist/commands/version.js +1 -0
  68. package/dist/commands/version.js.map +1 -0
  69. package/dist/def/artifacts.d.ts +21 -1
  70. package/dist/def/artifacts.js +11 -2
  71. package/dist/def/artifacts.js.map +1 -0
  72. package/dist/def/build.d.ts +32 -2
  73. package/dist/def/build.js +23 -2
  74. package/dist/def/build.js.map +1 -0
  75. package/dist/def/create-npm-dirs.d.ts +10 -0
  76. package/dist/def/create-npm-dirs.js +5 -0
  77. package/dist/def/create-npm-dirs.js.map +1 -0
  78. package/dist/def/new.d.ts +24 -6
  79. package/dist/def/new.js +12 -1
  80. package/dist/def/new.js.map +1 -0
  81. package/dist/def/pre-publish.d.ts +10 -0
  82. package/dist/def/pre-publish.js +8 -3
  83. package/dist/def/pre-publish.js.map +1 -0
  84. package/dist/def/rename.d.ts +11 -1
  85. package/dist/def/rename.js +6 -1
  86. package/dist/def/rename.js.map +1 -0
  87. package/dist/def/universalize.d.ts +10 -0
  88. package/dist/def/universalize.js +5 -0
  89. package/dist/def/universalize.js.map +1 -0
  90. package/dist/def/version.d.ts +10 -0
  91. package/dist/def/version.js +5 -0
  92. package/dist/def/version.js.map +1 -0
  93. package/dist/index.cjs +6156 -8108
  94. package/dist/index.d.ts +1 -0
  95. package/dist/index.js +2 -0
  96. package/dist/index.js.map +1 -0
  97. package/dist/utils/__tests__/config.spec.d.ts +1 -0
  98. package/dist/utils/__tests__/config.spec.js +63 -0
  99. package/dist/utils/__tests__/config.spec.js.map +1 -0
  100. package/dist/utils/__tests__/target.spec.js +1 -0
  101. package/dist/utils/__tests__/target.spec.js.map +1 -0
  102. package/dist/utils/__tests__/typegen.spec.js +9 -4
  103. package/dist/utils/__tests__/typegen.spec.js.map +1 -0
  104. package/dist/utils/__tests__/version.spec.js +1 -0
  105. package/dist/utils/__tests__/version.spec.js.map +1 -0
  106. package/dist/utils/cargo.js +2 -1
  107. package/dist/utils/cargo.js.map +1 -0
  108. package/dist/utils/ci.js +10 -0
  109. package/dist/utils/ci.js.map +1 -0
  110. package/dist/utils/config.d.ts +24 -5
  111. package/dist/utils/config.js +39 -6
  112. package/dist/utils/config.js.map +1 -0
  113. package/dist/utils/index.js +1 -0
  114. package/dist/utils/index.js.map +1 -0
  115. package/dist/utils/log.js +1 -0
  116. package/dist/utils/log.js.map +1 -0
  117. package/dist/utils/metadata.js +3 -2
  118. package/dist/utils/metadata.js.map +1 -0
  119. package/dist/utils/misc.d.ts +1 -1
  120. package/dist/utils/misc.js +4 -3
  121. package/dist/utils/misc.js.map +1 -0
  122. package/dist/utils/target.d.ts +9 -5
  123. package/dist/utils/target.js +20 -1
  124. package/dist/utils/target.js.map +1 -0
  125. package/dist/utils/typegen.d.ts +4 -1
  126. package/dist/utils/typegen.js +27 -6
  127. package/dist/utils/typegen.js.map +1 -0
  128. package/dist/utils/version.d.ts +2 -1
  129. package/dist/utils/version.js +13 -10
  130. package/dist/utils/version.js.map +1 -0
  131. package/package.json +50 -15
  132. package/src/api/artifacts.ts +79 -9
  133. package/src/api/build.ts +331 -39
  134. package/src/api/create-npm-dirs.ts +62 -8
  135. package/src/api/new.ts +69 -33
  136. package/src/api/pre-publish.ts +21 -12
  137. package/src/api/rename.ts +10 -1
  138. package/src/api/templates/.gitignore.ts +1 -0
  139. package/src/api/templates/ci-template.ts +157 -157
  140. package/src/api/templates/ci.yml.ts +19 -4
  141. package/src/api/templates/js-binding.ts +312 -102
  142. package/src/api/templates/lib.rs.ts +1 -4
  143. package/src/api/templates/load-wasi-template.ts +146 -0
  144. package/src/api/templates/package.json.ts +78 -27
  145. package/src/api/templates/wasi-worker-template.ts +86 -0
  146. package/src/api/universalize.ts +6 -3
  147. package/src/api/version.ts +5 -2
  148. package/src/commands/artifacts.ts +2 -2
  149. package/src/commands/build.ts +1 -1
  150. package/src/commands/new.ts +14 -8
  151. package/src/def/artifacts.ts +22 -3
  152. package/src/def/build.ts +51 -4
  153. package/src/def/create-npm-dirs.ts +9 -0
  154. package/src/def/new.ts +28 -3
  155. package/src/def/pre-publish.ts +12 -3
  156. package/src/def/rename.ts +11 -2
  157. package/src/def/universalize.ts +9 -0
  158. package/src/def/version.ts +9 -0
  159. package/src/index.ts +2 -0
  160. package/src/utils/__tests__/__snapshots__/config.spec.ts.md +97 -0
  161. package/src/utils/__tests__/__snapshots__/config.spec.ts.snap +0 -0
  162. package/src/utils/__tests__/__snapshots__/target.spec.ts.md +14 -0
  163. package/src/utils/__tests__/__snapshots__/target.spec.ts.snap +0 -0
  164. package/src/utils/__tests__/__snapshots__/typegen.spec.ts.md +555 -0
  165. package/src/utils/__tests__/__snapshots__/typegen.spec.ts.snap +0 -0
  166. package/src/utils/__tests__/__snapshots__/version.spec.ts.md +9 -8
  167. package/src/utils/__tests__/__snapshots__/version.spec.ts.snap +0 -0
  168. package/src/utils/__tests__/config.spec.ts +81 -0
  169. package/src/utils/__tests__/typegen.spec.ts +19 -4
  170. package/src/utils/cargo.ts +1 -1
  171. package/src/utils/ci.ts +9 -0
  172. package/src/utils/config.ts +84 -9
  173. package/src/utils/metadata.ts +2 -2
  174. package/src/utils/misc.ts +11 -3
  175. package/src/utils/target.ts +28 -7
  176. package/src/utils/typegen.ts +30 -5
  177. package/src/utils/version.ts +11 -9
  178. package/dist/def/commands/artifacts.d.ts +0 -15
  179. package/dist/def/commands/artifacts.js +0 -29
  180. package/dist/def/commands/build.d.ts +0 -53
  181. package/dist/def/commands/build.js +0 -105
  182. package/dist/def/commands/create-npm-dirs.d.ts +0 -15
  183. package/dist/def/commands/create-npm-dirs.js +0 -29
  184. package/dist/def/commands/new.d.ts +0 -27
  185. package/dist/def/commands/new.js +0 -53
  186. package/dist/def/commands/pre-publish.d.ts +0 -23
  187. package/dist/def/commands/pre-publish.js +0 -45
  188. package/dist/def/commands/rename.d.ts +0 -25
  189. package/dist/def/commands/rename.js +0 -49
  190. package/dist/def/commands/universalize.d.ts +0 -13
  191. package/dist/def/commands/universalize.js +0 -25
  192. package/dist/def/commands/version.d.ts +0 -13
  193. package/dist/def/commands/version.js +0 -25
  194. package/dist/def/options/artifacts.d.ts +0 -35
  195. package/dist/def/options/artifacts.js +0 -11
  196. package/dist/def/options/build.d.ts +0 -97
  197. package/dist/def/options/build.js +0 -3
  198. package/dist/def/options/create-npm-dirs.d.ts +0 -35
  199. package/dist/def/options/create-npm-dirs.js +0 -11
  200. package/dist/def/options/new.d.ts +0 -79
  201. package/dist/def/options/new.js +0 -15
  202. package/dist/def/options/pre-publish.d.ts +0 -65
  203. package/dist/def/options/pre-publish.js +0 -13
  204. package/dist/def/options/rename.d.ts +0 -75
  205. package/dist/def/options/rename.js +0 -11
  206. package/dist/def/options/universalize.d.ts +0 -28
  207. package/dist/def/options/universalize.js +0 -10
  208. package/dist/def/options/version.d.ts +0 -28
  209. package/dist/def/options/version.js +0 -10
@@ -9,21 +9,29 @@ export class BaseArtifactsCommand extends Command {
9
9
  cwd = Option.String('--cwd', process.cwd(), {
10
10
  description: 'The working directory of where napi command will be executed in, all other paths options are relative to this path',
11
11
  });
12
+ configPath = Option.String('--config-path,-c', {
13
+ description: 'Path to `napi` config json file',
14
+ });
12
15
  packageJsonPath = Option.String('--package-json-path', 'package.json', {
13
16
  description: 'Path to `package.json`',
14
17
  });
15
- outputDir = Option.String('--output-dir,-o', './', {
18
+ outputDir = Option.String('--output-dir,-o,-d', './artifacts', {
16
19
  description: 'Path to the folder where all built `.node` files put, same as `--output-dir` of build command',
17
20
  });
18
21
  npmDir = Option.String('--npm-dir', 'npm', {
19
22
  description: 'Path to the folder where the npm packages put',
20
23
  });
24
+ buildOutputDir = Option.String('--build-output-dir', {
25
+ description: 'Path to the build output dir, only needed when targets contains `wasm32-wasi-*`',
26
+ });
21
27
  getOptions() {
22
28
  return {
23
29
  cwd: this.cwd,
30
+ configPath: this.configPath,
24
31
  packageJsonPath: this.packageJsonPath,
25
32
  outputDir: this.outputDir,
26
33
  npmDir: this.npmDir,
34
+ buildOutputDir: this.buildOutputDir,
27
35
  };
28
36
  }
29
37
  }
@@ -31,8 +39,9 @@ export function applyDefaultArtifactsOptions(options) {
31
39
  return {
32
40
  cwd: process.cwd(),
33
41
  packageJsonPath: 'package.json',
34
- outputDir: './',
42
+ outputDir: './artifacts',
35
43
  npmDir: 'npm',
36
44
  ...options,
37
45
  };
38
46
  }
47
+ //# sourceMappingURL=artifacts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../src/def/artifacts.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,iCAAiC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAE3C,MAAM,OAAgB,oBAAqB,SAAQ,OAAO;IACxD,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAA;IAE9B,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,WAAW,EACT,2EAA2E;KAC9E,CAAC,CAAA;IAEF,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE;QAC1C,WAAW,EACT,oHAAoH;KACvH,CAAC,CAAA;IAEF,UAAU,GAAY,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE;QACtD,WAAW,EAAE,iCAAiC;KAC/C,CAAC,CAAA;IAEF,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,qBAAqB,EAAE,cAAc,EAAE;QACrE,WAAW,EAAE,wBAAwB;KACtC,CAAC,CAAA;IAEF,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,oBAAoB,EAAE,aAAa,EAAE;QAC7D,WAAW,EACT,+FAA+F;KAClG,CAAC,CAAA;IAEF,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,EAAE;QACzC,WAAW,EAAE,+CAA+C;KAC7D,CAAC,CAAA;IAEF,cAAc,GAAY,MAAM,CAAC,MAAM,CAAC,oBAAoB,EAAE;QAC5D,WAAW,EACT,iFAAiF;KACpF,CAAC,CAAA;IAEF,UAAU;QACR,OAAO;YACL,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,cAAc,EAAE,IAAI,CAAC,cAAc;SACpC,CAAA;IACH,CAAC;;AAyCH,MAAM,UAAU,4BAA4B,CAAC,OAAyB;IACpE,OAAO;QACL,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;QAClB,eAAe,EAAE,cAAc;QAC/B,SAAS,EAAE,aAAa;QACxB,MAAM,EAAE,KAAK;QACb,GAAG,OAAO;KACX,CAAA;AACH,CAAC"}
@@ -5,11 +5,13 @@ export declare abstract class BaseBuildCommand extends Command {
5
5
  target?: string;
6
6
  cwd?: string;
7
7
  manifestPath?: string;
8
+ configPath?: string;
8
9
  packageJsonPath?: string;
9
10
  targetDir?: string;
10
11
  outputDir?: string;
11
12
  platform?: boolean;
12
13
  jsPackageName?: string;
14
+ constEnum?: boolean;
13
15
  jsBinding?: string;
14
16
  noJsBinding?: boolean;
15
17
  dts?: string;
@@ -20,7 +22,10 @@ export declare abstract class BaseBuildCommand extends Command {
20
22
  verbose?: boolean;
21
23
  bin?: string;
22
24
  package?: string;
25
+ profile?: string;
23
26
  crossCompile?: boolean;
27
+ useCross?: boolean;
28
+ useNapiCross?: boolean;
24
29
  watch?: boolean;
25
30
  features?: string[];
26
31
  allFeatures?: boolean;
@@ -29,11 +34,13 @@ export declare abstract class BaseBuildCommand extends Command {
29
34
  target: string | undefined;
30
35
  cwd: string | undefined;
31
36
  manifestPath: string | undefined;
37
+ configPath: string | undefined;
32
38
  packageJsonPath: string | undefined;
33
39
  targetDir: string | undefined;
34
40
  outputDir: string | undefined;
35
41
  platform: boolean | undefined;
36
42
  jsPackageName: string | undefined;
43
+ constEnum: boolean | undefined;
37
44
  jsBinding: string | undefined;
38
45
  noJsBinding: boolean | undefined;
39
46
  dts: string | undefined;
@@ -44,7 +51,10 @@ export declare abstract class BaseBuildCommand extends Command {
44
51
  verbose: boolean | undefined;
45
52
  bin: string | undefined;
46
53
  package: string | undefined;
54
+ profile: string | undefined;
47
55
  crossCompile: boolean | undefined;
56
+ useCross: boolean | undefined;
57
+ useNapiCross: boolean | undefined;
48
58
  watch: boolean | undefined;
49
59
  features: string[] | undefined;
50
60
  allFeatures: boolean | undefined;
@@ -52,7 +62,7 @@ export declare abstract class BaseBuildCommand extends Command {
52
62
  };
53
63
  }
54
64
  /**
55
- * Build the napi-rs project
65
+ * Build the NAPI-RS project
56
66
  */
57
67
  export interface BuildOptions {
58
68
  /**
@@ -67,6 +77,10 @@ export interface BuildOptions {
67
77
  * Path to `Cargo.toml`
68
78
  */
69
79
  manifestPath?: string;
80
+ /**
81
+ * Path to `napi` config json file
82
+ */
83
+ configPath?: string;
70
84
  /**
71
85
  * Path to `package.json`
72
86
  */
@@ -87,6 +101,10 @@ export interface BuildOptions {
87
101
  * Package name in generated js binding file. Only works with `--platform` flag
88
102
  */
89
103
  jsPackageName?: string;
104
+ /**
105
+ * Whether generate const enum for typescript bindings
106
+ */
107
+ constEnum?: boolean;
90
108
  /**
91
109
  * Path and filename of generated JS binding file. Only works with `--platform` flag. Relative to `--output_dir`.
92
110
  */
@@ -127,12 +145,24 @@ export interface BuildOptions {
127
145
  * Build the specified library or the one at cwd
128
146
  */
129
147
  package?: string;
148
+ /**
149
+ * Build artifacts with the specified profile
150
+ */
151
+ profile?: string;
130
152
  /**
131
153
  * [experimental] cross-compile for the specified target with `cargo-xwin` on windows and `cargo-zigbuild` on other platform
132
154
  */
133
155
  crossCompile?: boolean;
134
156
  /**
135
- * watch the crate changes and build continiously with `cargo-watch` crates
157
+ * [experimental] use [cross](https://github.com/cross-rs/cross) instead of `cargo`
158
+ */
159
+ useCross?: boolean;
160
+ /**
161
+ * [experimental] use @napi-rs/cross-toolchain to cross-compile Linux arm/arm64/x64 gnu targets.
162
+ */
163
+ useNapiCross?: boolean;
164
+ /**
165
+ * watch the crate changes and build continuously with `cargo-watch` crates
136
166
  */
137
167
  watch?: boolean;
138
168
  /**
package/dist/def/build.js CHANGED
@@ -4,7 +4,7 @@ import { Command, Option } from 'clipanion';
4
4
  export class BaseBuildCommand extends Command {
5
5
  static paths = [['build']];
6
6
  static usage = Command.Usage({
7
- description: 'Build the napi-rs project',
7
+ description: 'Build the NAPI-RS project',
8
8
  });
9
9
  target = Option.String('--target,-t', {
10
10
  description: 'Build for the target triple, bypassed to `cargo build --target`',
@@ -15,6 +15,9 @@ export class BaseBuildCommand extends Command {
15
15
  manifestPath = Option.String('--manifest-path', {
16
16
  description: 'Path to `Cargo.toml`',
17
17
  });
18
+ configPath = Option.String('--config-path,-c', {
19
+ description: 'Path to `napi` config json file',
20
+ });
18
21
  packageJsonPath = Option.String('--package-json-path', {
19
22
  description: 'Path to `package.json`',
20
23
  });
@@ -30,6 +33,9 @@ export class BaseBuildCommand extends Command {
30
33
  jsPackageName = Option.String('--js-package-name', {
31
34
  description: 'Package name in generated js binding file. Only works with `--platform` flag',
32
35
  });
36
+ constEnum = Option.Boolean('--const-enum', {
37
+ description: 'Whether generate const enum for typescript bindings',
38
+ });
33
39
  jsBinding = Option.String('--js', {
34
40
  description: 'Path and filename of generated JS binding file. Only works with `--platform` flag. Relative to `--output_dir`.',
35
41
  });
@@ -60,11 +66,20 @@ export class BaseBuildCommand extends Command {
60
66
  package = Option.String('--package,-p', {
61
67
  description: 'Build the specified library or the one at cwd',
62
68
  });
69
+ profile = Option.String('--profile', {
70
+ description: 'Build artifacts with the specified profile',
71
+ });
63
72
  crossCompile = Option.Boolean('--cross-compile,-x', {
64
73
  description: '[experimental] cross-compile for the specified target with `cargo-xwin` on windows and `cargo-zigbuild` on other platform',
65
74
  });
75
+ useCross = Option.Boolean('--use-cross', {
76
+ description: '[experimental] use [cross](https://github.com/cross-rs/cross) instead of `cargo`',
77
+ });
78
+ useNapiCross = Option.Boolean('--use-napi-cross', {
79
+ description: '[experimental] use @napi-rs/cross-toolchain to cross-compile Linux arm/arm64/x64 gnu targets.',
80
+ });
66
81
  watch = Option.Boolean('--watch,-w', {
67
- description: 'watch the crate changes and build continiously with `cargo-watch` crates',
82
+ description: 'watch the crate changes and build continuously with `cargo-watch` crates',
68
83
  });
69
84
  features = Option.Array('--features,-F', {
70
85
  description: 'Space-separated list of features to activate',
@@ -80,11 +95,13 @@ export class BaseBuildCommand extends Command {
80
95
  target: this.target,
81
96
  cwd: this.cwd,
82
97
  manifestPath: this.manifestPath,
98
+ configPath: this.configPath,
83
99
  packageJsonPath: this.packageJsonPath,
84
100
  targetDir: this.targetDir,
85
101
  outputDir: this.outputDir,
86
102
  platform: this.platform,
87
103
  jsPackageName: this.jsPackageName,
104
+ constEnum: this.constEnum,
88
105
  jsBinding: this.jsBinding,
89
106
  noJsBinding: this.noJsBinding,
90
107
  dts: this.dts,
@@ -95,7 +112,10 @@ export class BaseBuildCommand extends Command {
95
112
  verbose: this.verbose,
96
113
  bin: this.bin,
97
114
  package: this.package,
115
+ profile: this.profile,
98
116
  crossCompile: this.crossCompile,
117
+ useCross: this.useCross,
118
+ useNapiCross: this.useNapiCross,
99
119
  watch: this.watch,
100
120
  features: this.features,
101
121
  allFeatures: this.allFeatures,
@@ -103,3 +123,4 @@ export class BaseBuildCommand extends Command {
103
123
  };
104
124
  }
105
125
  }
126
+ //# sourceMappingURL=build.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/def/build.ts"],"names":[],"mappings":"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"}
@@ -3,11 +3,13 @@ export declare abstract class BaseCreateNpmDirsCommand extends Command {
3
3
  static paths: string[][];
4
4
  static usage: import("clipanion").Usage;
5
5
  cwd: string;
6
+ configPath?: string;
6
7
  packageJsonPath: string;
7
8
  npmDir: string;
8
9
  dryRun: boolean;
9
10
  getOptions(): {
10
11
  cwd: string;
12
+ configPath: string | undefined;
11
13
  packageJsonPath: string;
12
14
  npmDir: string;
13
15
  dryRun: boolean;
@@ -23,6 +25,10 @@ export interface CreateNpmDirsOptions {
23
25
  * @default process.cwd()
24
26
  */
25
27
  cwd?: string;
28
+ /**
29
+ * Path to `napi` config json file
30
+ */
31
+ configPath?: string;
26
32
  /**
27
33
  * Path to `package.json`
28
34
  *
@@ -44,6 +50,10 @@ export interface CreateNpmDirsOptions {
44
50
  }
45
51
  export declare function applyDefaultCreateNpmDirsOptions(options: CreateNpmDirsOptions): {
46
52
  cwd: string;
53
+ /**
54
+ * Path to `napi` config json file
55
+ */
56
+ configPath?: string | undefined;
47
57
  packageJsonPath: string;
48
58
  npmDir: string;
49
59
  dryRun: boolean;
@@ -9,6 +9,9 @@ export class BaseCreateNpmDirsCommand extends Command {
9
9
  cwd = Option.String('--cwd', process.cwd(), {
10
10
  description: 'The working directory of where napi command will be executed in, all other paths options are relative to this path',
11
11
  });
12
+ configPath = Option.String('--config-path,-c', {
13
+ description: 'Path to `napi` config json file',
14
+ });
12
15
  packageJsonPath = Option.String('--package-json-path', 'package.json', {
13
16
  description: 'Path to `package.json`',
14
17
  });
@@ -21,6 +24,7 @@ export class BaseCreateNpmDirsCommand extends Command {
21
24
  getOptions() {
22
25
  return {
23
26
  cwd: this.cwd,
27
+ configPath: this.configPath,
24
28
  packageJsonPath: this.packageJsonPath,
25
29
  npmDir: this.npmDir,
26
30
  dryRun: this.dryRun,
@@ -36,3 +40,4 @@ export function applyDefaultCreateNpmDirsOptions(options) {
36
40
  ...options,
37
41
  };
38
42
  }
43
+ //# sourceMappingURL=create-npm-dirs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-npm-dirs.js","sourceRoot":"","sources":["../../src/def/create-npm-dirs.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,iCAAiC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAE3C,MAAM,OAAgB,wBAAyB,SAAQ,OAAO;IAC5D,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAA;IAEpC,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,WAAW,EAAE,iDAAiD;KAC/D,CAAC,CAAA;IAEF,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE;QAC1C,WAAW,EACT,oHAAoH;KACvH,CAAC,CAAA;IAEF,UAAU,GAAY,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE;QACtD,WAAW,EAAE,iCAAiC;KAC/C,CAAC,CAAA;IAEF,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,qBAAqB,EAAE,cAAc,EAAE;QACrE,WAAW,EAAE,wBAAwB;KACtC,CAAC,CAAA;IAEF,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,EAAE;QACzC,WAAW,EAAE,+CAA+C;KAC7D,CAAC,CAAA;IAEF,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE;QAC1C,WAAW,EAAE,sCAAsC;KACpD,CAAC,CAAA;IAEF,UAAU;QACR,OAAO;YACL,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAA;IACH,CAAC;;AAqCH,MAAM,UAAU,gCAAgC,CAC9C,OAA6B;IAE7B,OAAO;QACL,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;QAClB,eAAe,EAAE,cAAc;QAC/B,MAAM,EAAE,KAAK;QACb,MAAM,EAAE,KAAK;QACb,GAAG,OAAO;KACX,CAAA;AACH,CAAC"}
package/dist/def/new.d.ts CHANGED
@@ -2,26 +2,30 @@ import { Command } from 'clipanion';
2
2
  export declare abstract class BaseNewCommand extends Command {
3
3
  static paths: string[][];
4
4
  static usage: import("clipanion").Usage;
5
- $$path: string;
5
+ $$path: string | undefined;
6
6
  $$name?: string;
7
7
  minNodeApiVersion: number;
8
+ packageManager: string;
8
9
  license: string;
9
10
  targets: string[];
10
11
  enableDefaultTargets: boolean;
11
12
  enableAllTargets: boolean;
12
13
  enableTypeDef: boolean;
13
14
  enableGithubActions: boolean;
15
+ testFramework: string;
14
16
  dryRun: boolean;
15
17
  getOptions(): {
16
- path: string;
18
+ path: string | undefined;
17
19
  name: string | undefined;
18
20
  minNodeApiVersion: number;
21
+ packageManager: string;
19
22
  license: string;
20
23
  targets: string[];
21
24
  enableDefaultTargets: boolean;
22
25
  enableAllTargets: boolean;
23
26
  enableTypeDef: boolean;
24
27
  enableGithubActions: boolean;
28
+ testFramework: string;
25
29
  dryRun: boolean;
26
30
  };
27
31
  }
@@ -30,9 +34,9 @@ export declare abstract class BaseNewCommand extends Command {
30
34
  */
31
35
  export interface NewOptions {
32
36
  /**
33
- * The path where the napi-rs project will be created.
37
+ * The path where the NAPI-RS project will be created.
34
38
  */
35
- path: string;
39
+ path?: string;
36
40
  /**
37
41
  * The name of the project, default to the name of the directory if not provided
38
42
  */
@@ -43,6 +47,12 @@ export interface NewOptions {
43
47
  * @default 4
44
48
  */
45
49
  minNodeApiVersion?: number;
50
+ /**
51
+ * The package manager to use. Only support yarn 4.x for now.
52
+ *
53
+ * @default 'yarn'
54
+ */
55
+ packageManager?: string;
46
56
  /**
47
57
  * License for open-sourced project
48
58
  *
@@ -79,6 +89,12 @@ export interface NewOptions {
79
89
  * @default true
80
90
  */
81
91
  enableGithubActions?: boolean;
92
+ /**
93
+ * The JavaScript test framework to use, only support `ava` for now
94
+ *
95
+ * @default 'ava'
96
+ */
97
+ testFramework?: string;
82
98
  /**
83
99
  * Whether to run the command in dry-run mode
84
100
  *
@@ -88,19 +104,21 @@ export interface NewOptions {
88
104
  }
89
105
  export declare function applyDefaultNewOptions(options: NewOptions): {
90
106
  /**
91
- * The path where the napi-rs project will be created.
107
+ * The path where the NAPI-RS project will be created.
92
108
  */
93
- path: string;
109
+ path?: string | undefined;
94
110
  /**
95
111
  * The name of the project, default to the name of the directory if not provided
96
112
  */
97
113
  name?: string | undefined;
98
114
  minNodeApiVersion: number;
115
+ packageManager: string;
99
116
  license: string;
100
117
  targets: string[];
101
118
  enableDefaultTargets: boolean;
102
119
  enableAllTargets: boolean;
103
120
  enableTypeDef: boolean;
104
121
  enableGithubActions: boolean;
122
+ testFramework: string;
105
123
  dryRun: boolean;
106
124
  };
package/dist/def/new.js CHANGED
@@ -7,7 +7,7 @@ export class BaseNewCommand extends Command {
7
7
  static usage = Command.Usage({
8
8
  description: 'Create a new project with pre-configured boilerplate',
9
9
  });
10
- $$path = Option.String({ required: true });
10
+ $$path = Option.String({ required: false });
11
11
  $$name = Option.String('--name,-n', {
12
12
  description: 'The name of the project, default to the name of the directory if not provided',
13
13
  });
@@ -15,6 +15,9 @@ export class BaseNewCommand extends Command {
15
15
  validator: typanion.isNumber(),
16
16
  description: 'The minimum Node-API version to support',
17
17
  });
18
+ packageManager = Option.String('--package-manager', 'yarn', {
19
+ description: 'The package manager to use. Only support yarn 4.x for now.',
20
+ });
18
21
  license = Option.String('--license,-l', 'MIT', {
19
22
  description: 'License for open-sourced project',
20
23
  });
@@ -33,6 +36,9 @@ export class BaseNewCommand extends Command {
33
36
  enableGithubActions = Option.Boolean('--enable-github-actions', true, {
34
37
  description: 'Whether generate preconfigured GitHub Actions workflow',
35
38
  });
39
+ testFramework = Option.String('--test-framework', 'ava', {
40
+ description: 'The JavaScript test framework to use, only support `ava` for now',
41
+ });
36
42
  dryRun = Option.Boolean('--dry-run', false, {
37
43
  description: 'Whether to run the command in dry-run mode',
38
44
  });
@@ -41,12 +47,14 @@ export class BaseNewCommand extends Command {
41
47
  path: this.$$path,
42
48
  name: this.$$name,
43
49
  minNodeApiVersion: this.minNodeApiVersion,
50
+ packageManager: this.packageManager,
44
51
  license: this.license,
45
52
  targets: this.targets,
46
53
  enableDefaultTargets: this.enableDefaultTargets,
47
54
  enableAllTargets: this.enableAllTargets,
48
55
  enableTypeDef: this.enableTypeDef,
49
56
  enableGithubActions: this.enableGithubActions,
57
+ testFramework: this.testFramework,
50
58
  dryRun: this.dryRun,
51
59
  };
52
60
  }
@@ -54,13 +62,16 @@ export class BaseNewCommand extends Command {
54
62
  export function applyDefaultNewOptions(options) {
55
63
  return {
56
64
  minNodeApiVersion: 4,
65
+ packageManager: 'yarn',
57
66
  license: 'MIT',
58
67
  targets: [],
59
68
  enableDefaultTargets: true,
60
69
  enableAllTargets: false,
61
70
  enableTypeDef: true,
62
71
  enableGithubActions: true,
72
+ testFramework: 'ava',
63
73
  dryRun: false,
64
74
  ...options,
65
75
  };
66
76
  }
77
+ //# sourceMappingURL=new.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"new.js","sourceRoot":"","sources":["../../src/def/new.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ export declare abstract class BasePrePublishCommand extends Command {
3
3
  static paths: string[][];
4
4
  static usage: import("clipanion").Usage;
5
5
  cwd: string;
6
+ configPath?: string;
6
7
  packageJsonPath: string;
7
8
  npmDir: string;
8
9
  tagStyle: string;
@@ -12,6 +13,7 @@ export declare abstract class BasePrePublishCommand extends Command {
12
13
  dryRun: boolean;
13
14
  getOptions(): {
14
15
  cwd: string;
16
+ configPath: string | undefined;
15
17
  packageJsonPath: string;
16
18
  npmDir: string;
17
19
  tagStyle: string;
@@ -31,6 +33,10 @@ export interface PrePublishOptions {
31
33
  * @default process.cwd()
32
34
  */
33
35
  cwd?: string;
36
+ /**
37
+ * Path to `napi` config json file
38
+ */
39
+ configPath?: string;
34
40
  /**
35
41
  * Path to `package.json`
36
42
  *
@@ -72,6 +78,10 @@ export interface PrePublishOptions {
72
78
  }
73
79
  export declare function applyDefaultPrePublishOptions(options: PrePublishOptions): {
74
80
  cwd: string;
81
+ /**
82
+ * Path to `napi` config json file
83
+ */
84
+ configPath?: string | undefined;
75
85
  packageJsonPath: string;
76
86
  npmDir: string;
77
87
  tagStyle: string;
@@ -2,20 +2,23 @@
2
2
  // Do not edit this file manually
3
3
  import { Command, Option } from 'clipanion';
4
4
  export class BasePrePublishCommand extends Command {
5
- static paths = [['pre-publish']];
5
+ static paths = [['pre-publish'], ['prepublish']];
6
6
  static usage = Command.Usage({
7
7
  description: 'Update package.json and copy addons into per platform packages',
8
8
  });
9
9
  cwd = Option.String('--cwd', process.cwd(), {
10
10
  description: 'The working directory of where napi command will be executed in, all other paths options are relative to this path',
11
11
  });
12
+ configPath = Option.String('--config-path,-c', {
13
+ description: 'Path to `napi` config json file',
14
+ });
12
15
  packageJsonPath = Option.String('--package-json-path', 'package.json', {
13
16
  description: 'Path to `package.json`',
14
17
  });
15
- npmDir = Option.String('--npm-dir', 'npm', {
18
+ npmDir = Option.String('--npm-dir,-p', 'npm', {
16
19
  description: 'Path to the folder where the npm packages put',
17
20
  });
18
- tagStyle = Option.String('--tag-style', 'lerna', {
21
+ tagStyle = Option.String('--tag-style,--tagstyle,-t', 'lerna', {
19
22
  description: 'git tag style, `npm` or `lerna`',
20
23
  });
21
24
  ghRelease = Option.Boolean('--gh-release', true, {
@@ -33,6 +36,7 @@ export class BasePrePublishCommand extends Command {
33
36
  getOptions() {
34
37
  return {
35
38
  cwd: this.cwd,
39
+ configPath: this.configPath,
36
40
  packageJsonPath: this.packageJsonPath,
37
41
  npmDir: this.npmDir,
38
42
  tagStyle: this.tagStyle,
@@ -54,3 +58,4 @@ export function applyDefaultPrePublishOptions(options) {
54
58
  ...options,
55
59
  };
56
60
  }
61
+ //# sourceMappingURL=pre-publish.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pre-publish.js","sourceRoot":"","sources":["../../src/def/pre-publish.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,iCAAiC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAE3C,MAAM,OAAgB,qBAAsB,SAAQ,OAAO;IACzD,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;IAEhD,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,WAAW,EACT,gEAAgE;KACnE,CAAC,CAAA;IAEF,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE;QAC1C,WAAW,EACT,oHAAoH;KACvH,CAAC,CAAA;IAEF,UAAU,GAAY,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE;QACtD,WAAW,EAAE,iCAAiC;KAC/C,CAAC,CAAA;IAEF,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,qBAAqB,EAAE,cAAc,EAAE;QACrE,WAAW,EAAE,wBAAwB;KACtC,CAAC,CAAA;IAEF,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,KAAK,EAAE;QAC5C,WAAW,EAAE,+CAA+C;KAC7D,CAAC,CAAA;IAEF,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,2BAA2B,EAAE,OAAO,EAAE;QAC7D,WAAW,EAAE,iCAAiC;KAC/C,CAAC,CAAA;IAEF,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,EAAE;QAC/C,WAAW,EAAE,+BAA+B;KAC7C,CAAC,CAAA;IAEF,aAAa,GAAY,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE;QAC1D,WAAW,EAAE,qBAAqB;KACnC,CAAC,CAAA;IAEF,WAAW,GAAY,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE;QACtD,WAAW,EAAE,4BAA4B;KAC1C,CAAC,CAAA;IAEF,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE;QAC1C,WAAW,EAAE,sCAAsC;KACpD,CAAC,CAAA;IAEF,UAAU;QACR,OAAO;YACL,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAA;IACH,CAAC;;AAyDH,MAAM,UAAU,6BAA6B,CAAC,OAA0B;IACtE,OAAO;QACL,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;QAClB,eAAe,EAAE,cAAc;QAC/B,MAAM,EAAE,KAAK;QACb,QAAQ,EAAE,OAAO;QACjB,SAAS,EAAE,IAAI;QACf,MAAM,EAAE,KAAK;QACb,GAAG,OAAO;KACX,CAAA;AACH,CAAC"}
@@ -3,6 +3,7 @@ export declare abstract class BaseRenameCommand extends Command {
3
3
  static paths: string[][];
4
4
  static usage: import("clipanion").Usage;
5
5
  cwd: string;
6
+ configPath?: string;
6
7
  packageJsonPath: string;
7
8
  npmDir: string;
8
9
  $$name?: string;
@@ -13,6 +14,7 @@ export declare abstract class BaseRenameCommand extends Command {
13
14
  description?: string;
14
15
  getOptions(): {
15
16
  cwd: string;
17
+ configPath: string | undefined;
16
18
  packageJsonPath: string;
17
19
  npmDir: string;
18
20
  name: string | undefined;
@@ -24,7 +26,7 @@ export declare abstract class BaseRenameCommand extends Command {
24
26
  };
25
27
  }
26
28
  /**
27
- * Rename the napi-rs project
29
+ * Rename the NAPI-RS project
28
30
  */
29
31
  export interface RenameOptions {
30
32
  /**
@@ -33,6 +35,10 @@ export interface RenameOptions {
33
35
  * @default process.cwd()
34
36
  */
35
37
  cwd?: string;
38
+ /**
39
+ * Path to `napi` config json file
40
+ */
41
+ configPath?: string;
36
42
  /**
37
43
  * Path to `package.json`
38
44
  *
@@ -74,6 +80,10 @@ export interface RenameOptions {
74
80
  }
75
81
  export declare function applyDefaultRenameOptions(options: RenameOptions): {
76
82
  cwd: string;
83
+ /**
84
+ * Path to `napi` config json file
85
+ */
86
+ configPath?: string | undefined;
77
87
  packageJsonPath: string;
78
88
  npmDir: string;
79
89
  /**
@@ -4,11 +4,14 @@ import { Command, Option } from 'clipanion';
4
4
  export class BaseRenameCommand extends Command {
5
5
  static paths = [['rename']];
6
6
  static usage = Command.Usage({
7
- description: 'Rename the napi-rs project',
7
+ description: 'Rename the NAPI-RS project',
8
8
  });
9
9
  cwd = Option.String('--cwd', process.cwd(), {
10
10
  description: 'The working directory of where napi command will be executed in, all other paths options are relative to this path',
11
11
  });
12
+ configPath = Option.String('--config-path,-c', {
13
+ description: 'Path to `napi` config json file',
14
+ });
12
15
  packageJsonPath = Option.String('--package-json-path', 'package.json', {
13
16
  description: 'Path to `package.json`',
14
17
  });
@@ -36,6 +39,7 @@ export class BaseRenameCommand extends Command {
36
39
  getOptions() {
37
40
  return {
38
41
  cwd: this.cwd,
42
+ configPath: this.configPath,
39
43
  packageJsonPath: this.packageJsonPath,
40
44
  npmDir: this.npmDir,
41
45
  name: this.$$name,
@@ -56,3 +60,4 @@ export function applyDefaultRenameOptions(options) {
56
60
  ...options,
57
61
  };
58
62
  }
63
+ //# sourceMappingURL=rename.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rename.js","sourceRoot":"","sources":["../../src/def/rename.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,iCAAiC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAE3C,MAAM,OAAgB,iBAAkB,SAAQ,OAAO;IACrD,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAA;IAE3B,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,WAAW,EAAE,4BAA4B;KAC1C,CAAC,CAAA;IAEF,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE;QAC1C,WAAW,EACT,oHAAoH;KACvH,CAAC,CAAA;IAEF,UAAU,GAAY,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE;QACtD,WAAW,EAAE,iCAAiC;KAC/C,CAAC,CAAA;IAEF,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,qBAAqB,EAAE,cAAc,EAAE;QACrE,WAAW,EAAE,wBAAwB;KACtC,CAAC,CAAA;IAEF,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,EAAE;QACzC,WAAW,EAAE,+CAA+C;KAC7D,CAAC,CAAA;IAEF,MAAM,GAAY,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE;QAC3C,WAAW,EAAE,6BAA6B;KAC3C,CAAC,CAAA;IAEF,UAAU,GAAY,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE;QACtD,WAAW,EAAE,kCAAkC;KAChD,CAAC,CAAA;IAEF,WAAW,GAAY,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE;QACrD,WAAW,EAAE,qCAAqC;KACnD,CAAC,CAAA;IAEF,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,YAAY,EAAE;QAC5D,WAAW,EAAE,sBAAsB;KACpC,CAAC,CAAA;IAEF,UAAU,GAAY,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE;QAClD,WAAW,EAAE,mCAAmC;KACjD,CAAC,CAAA;IAEF,WAAW,GAAY,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE;QACpD,WAAW,EAAE,oCAAoC;KAClD,CAAC,CAAA;IAEF,UAAU;QACR,OAAO;YACL,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,IAAI,CAAC,MAAM;YACjB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAA;IACH,CAAC;;AAyDH,MAAM,UAAU,yBAAyB,CAAC,OAAsB;IAC9D,OAAO;QACL,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;QAClB,eAAe,EAAE,cAAc;QAC/B,MAAM,EAAE,KAAK;QACb,YAAY,EAAE,YAAY;QAC1B,GAAG,OAAO;KACX,CAAA;AACH,CAAC"}
@@ -3,10 +3,12 @@ export declare abstract class BaseUniversalizeCommand extends Command {
3
3
  static paths: string[][];
4
4
  static usage: import("clipanion").Usage;
5
5
  cwd: string;
6
+ configPath?: string;
6
7
  packageJsonPath: string;
7
8
  outputDir: string;
8
9
  getOptions(): {
9
10
  cwd: string;
11
+ configPath: string | undefined;
10
12
  packageJsonPath: string;
11
13
  outputDir: string;
12
14
  };
@@ -21,6 +23,10 @@ export interface UniversalizeOptions {
21
23
  * @default process.cwd()
22
24
  */
23
25
  cwd?: string;
26
+ /**
27
+ * Path to `napi` config json file
28
+ */
29
+ configPath?: string;
24
30
  /**
25
31
  * Path to `package.json`
26
32
  *
@@ -36,6 +42,10 @@ export interface UniversalizeOptions {
36
42
  }
37
43
  export declare function applyDefaultUniversalizeOptions(options: UniversalizeOptions): {
38
44
  cwd: string;
45
+ /**
46
+ * Path to `napi` config json file
47
+ */
48
+ configPath?: string | undefined;
39
49
  packageJsonPath: string;
40
50
  outputDir: string;
41
51
  };