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

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 +23 -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 +184 -32
  5. package/dist/api/build.js.map +1 -0
  6. package/dist/api/create-npm-dirs.js +43 -7
  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 +1 -0
  37. package/dist/api/templates/load-wasi-template.js +78 -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 +1 -0
  43. package/dist/api/templates/wasi-worker-template.js +53 -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 +6020 -8093
  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 +53 -9
  133. package/src/api/build.ts +289 -39
  134. package/src/api/create-npm-dirs.ts +51 -7
  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 +81 -0
  144. package/src/api/templates/package.json.ts +78 -27
  145. package/src/api/templates/wasi-worker-template.ts +52 -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
@@ -8,8 +8,9 @@ const TEST_LINUX_X64_MUSL = 'test-linux-x64-musl-binding';
8
8
  const TEST_LINUX_AARCH64_GNU = 'test-linux-aarch64-gnu-binding';
9
9
  const TEST_LINUX_AARCH64_MUSL = 'test-linux-aarch64-musl-binding';
10
10
  const TEST_LINUX_ARM_GNUEABIHF = 'test-linux-arm-gnueabihf-binding';
11
+ const TEST_WASI = 'test-wasi-nodejs';
11
12
  const UNIVERSAL_MACOS = 'universal-macOS';
12
- export const createGithubActionsCIYml = (binaryName, targets) => {
13
+ export const createGithubActionsCIYml = (targets, packageManager) => {
13
14
  const allTargets = new Set(targets.flatMap((t) => {
14
15
  const platform = parseTriple(t);
15
16
  if (platform.arch === 'universal') {
@@ -18,7 +19,7 @@ export const createGithubActionsCIYml = (binaryName, targets) => {
18
19
  }
19
20
  return [t];
20
21
  }));
21
- const fullTemplate = load(YAML());
22
+ const fullTemplate = load(YAML(packageManager));
22
23
  const requiredSteps = [];
23
24
  const enableWindowsX86 = allTargets.has('x86_64-pc-windows-msvc');
24
25
  const enableMacOSX86 = allTargets.has('x86_64-apple-darwin');
@@ -29,6 +30,7 @@ export const createGithubActionsCIYml = (binaryName, targets) => {
29
30
  const enableLinuxArm7 = allTargets.has('armv7-unknown-linux-gnueabihf');
30
31
  const enableFreeBSD = allTargets.has('x86_64-unknown-freebsd');
31
32
  const enableMacOSUni = allTargets.has('universal-apple-darwin');
33
+ const enableWasi = allTargets.has('wasm32-wasi-preview1-threads');
32
34
  fullTemplate.jobs.build.strategy.matrix.settings =
33
35
  fullTemplate.jobs.build.strategy.matrix.settings.filter(({ target }) => allTargets.has(target));
34
36
  if (!fullTemplate.jobs.build.strategy.matrix.settings.length) {
@@ -44,9 +46,15 @@ export const createGithubActionsCIYml = (binaryName, targets) => {
44
46
  delete fullTemplate.jobs[TEST_MACOS_WINDOWS];
45
47
  }
46
48
  else {
47
- const filterTarget = enableWindowsX86 ? 'macos-latest' : 'windows-latest';
49
+ const filterTargets = new Set();
50
+ if (enableWindowsX86) {
51
+ filterTargets.add('windows-latest');
52
+ }
53
+ if (enableMacOSUni || enableMacOSX86) {
54
+ filterTargets.add('macos-latest');
55
+ }
48
56
  fullTemplate.jobs[TEST_MACOS_WINDOWS].strategy.matrix.settings =
49
- fullTemplate.jobs[TEST_MACOS_WINDOWS].strategy.matrix.settings.filter(({ host }) => host !== filterTarget);
57
+ fullTemplate.jobs[TEST_MACOS_WINDOWS].strategy.matrix.settings.filter(({ host }) => filterTargets.has(host));
50
58
  requiredSteps.push(TEST_MACOS_WINDOWS);
51
59
  }
52
60
  if (!enableLinuxX86Gnu) {
@@ -85,8 +93,15 @@ export const createGithubActionsCIYml = (binaryName, targets) => {
85
93
  else {
86
94
  requiredSteps.push(UNIVERSAL_MACOS);
87
95
  }
96
+ if (!enableWasi) {
97
+ delete fullTemplate.jobs[TEST_WASI];
98
+ }
99
+ else {
100
+ requiredSteps.push(TEST_WASI);
101
+ }
88
102
  fullTemplate.jobs.publish.needs = requiredSteps;
89
103
  return dump(fullTemplate, {
90
104
  lineWidth: 1000,
91
105
  });
92
106
  };
107
+ //# sourceMappingURL=ci.yml.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ci.yml.js","sourceRoot":"","sources":["../../../src/api/templates/ci.yml.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAEpC,OAAO,EACL,aAAa,EAEb,kBAAkB,EAClB,WAAW,GACZ,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAEvC,MAAM,aAAa,GAAG,eAAe,CAAA;AACrC,MAAM,kBAAkB,GAAG,4BAA4B,CAAA;AACvD,MAAM,kBAAkB,GAAG,4BAA4B,CAAA;AACvD,MAAM,mBAAmB,GAAG,6BAA6B,CAAA;AACzD,MAAM,sBAAsB,GAAG,gCAAgC,CAAA;AAC/D,MAAM,uBAAuB,GAAG,iCAAiC,CAAA;AACjE,MAAM,wBAAwB,GAAG,kCAAkC,CAAA;AACnE,MAAM,SAAS,GAAG,kBAAkB,CAAA;AACpC,MAAM,eAAe,GAAG,iBAAiB,CAAA;AAEzC,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,OAAiB,EACjB,cAAuC,EACvC,EAAE;IACF,MAAM,UAAU,GAAG,IAAI,GAAG,CACxB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACpB,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;QAC/B,IAAI,QAAQ,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAClC,MAAM,UAAU,GAAG,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACrE,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,CAC5C,CAAA;YACD,OAAO,CAAC,CAAC,EAAE,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,CAAA;QACnC,CAAC;QACD,OAAO,CAAC,CAAC,CAAC,CAAA;IACZ,CAAC,CAAC,CACH,CAAA;IAED,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAQ,CAAA;IAEtD,MAAM,aAAa,GAAG,EAAE,CAAA;IACxB,MAAM,gBAAgB,GAAG,UAAU,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAA;IACjE,MAAM,cAAc,GAAG,UAAU,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAA;IAC5D,MAAM,iBAAiB,GAAG,UAAU,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAA;IACpE,MAAM,kBAAkB,GAAG,UAAU,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;IACtE,MAAM,kBAAkB,GAAG,UAAU,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;IACtE,MAAM,mBAAmB,GAAG,UAAU,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAA;IACxE,MAAM,eAAe,GAAG,UAAU,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAA;IACvE,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAA;IAC9D,MAAM,cAAc,GAAG,UAAU,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAA;IAC/D,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAA;IACjE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ;QAC9C,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CACrD,CAAC,EAAE,MAAM,EAAsB,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAC3D,CAAA;IACH,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC7D,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAA;IAChD,CAAC;IAED,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IACzC,CAAC;SAAM,CAAC;QACN,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IACnC,CAAC;IAED,IAAI,CAAC,gBAAgB,IAAI,CAAC,cAAc,EAAE,CAAC;QACzC,OAAO,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;IAC9C,CAAC;SAAM,CAAC;QACN,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAA;QACvC,IAAI,gBAAgB,EAAE,CAAC;YACrB,aAAa,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;QACrC,CAAC;QACD,IAAI,cAAc,IAAI,cAAc,EAAE,CAAC;YACrC,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;QACnC,CAAC;QACD,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ;YAC5D,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CACnE,CAAC,EAAE,IAAI,EAAoC,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CACxE,CAAA;QAEH,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;IACxC,CAAC;IAED,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,OAAO,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;IAC9C,CAAC;SAAM,CAAC;QACN,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;IACxC,CAAC;IAED,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,OAAO,YAAY,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;IAC/C,CAAC;SAAM,CAAC;QACN,aAAa,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;IACzC,CAAC;IAED,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,OAAO,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;IAClD,CAAC;SAAM,CAAC;QACN,aAAa,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;IAC5C,CAAC;IAED,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,OAAO,YAAY,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;IACnD,CAAC;SAAM,CAAC;QACN,aAAa,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;IAC7C,CAAC;IAED,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,YAAY,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;IACpD,CAAC;SAAM,CAAC;QACN,aAAa,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;IAC9C,CAAC;IAED,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;IAC3C,CAAC;SAAM,CAAC;QACN,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;IACrC,CAAC;IAED,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACrC,CAAC;SAAM,CAAC;QACN,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC/B,CAAC;IAED,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,aAAa,CAAA;IAE/C,OAAO,IAAI,CAAC,YAAY,EAAE;QACxB,SAAS,EAAE,IAAI;KAChB,CAAC,CAAA;AACJ,CAAC,CAAA"}
@@ -6,3 +6,4 @@ export * from './ci.yml.js';
6
6
  export * from './lib.rs.js';
7
7
  export * from './package.json.js';
8
8
  export * from './js-binding.js';
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/templates/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,eAAe,CAAA;AAC7B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA"}
@@ -1 +1 @@
1
- export declare function createJsBinding(localName: string, pkgName: string): string;
1
+ export declare function createCjsBinding(localName: string, pkgName: string, idents: string[]): string;
@@ -1,124 +1,337 @@
1
- /* eslint-disable @typescript-eslint/switch-exhaustiveness-check */
2
- function loadNapiModule(binaryName, packageName) {
3
- const { existsSync, readFileSync } = require('fs');
4
- const { join } = require('path');
5
- const { platform, arch } = process;
6
- const candidates = [];
7
- function isMusl() {
8
- // For Node 10
9
- if (!process.report || typeof process.report.getReport !== 'function') {
10
- try {
11
- const lddPath = require('child_process')
12
- .execSync('which ldd')
13
- .toString()
14
- .trim();
15
- return readFileSync(lddPath, 'utf8').includes('musl');
16
- }
17
- catch (e) {
18
- return true;
19
- }
1
+ export function createCjsBinding(localName, pkgName, idents) {
2
+ return `// prettier-ignore
3
+ /* eslint-disable */
4
+ /* auto-generated by NAPI-RS */
5
+
6
+ const { existsSync, readFileSync } = require('fs')
7
+ const { join } = require('path')
8
+
9
+ const { platform, arch } = process
10
+
11
+ let nativeBinding = null
12
+ let localFileExisted = false
13
+ let loadError = null
14
+
15
+ const isMusl = () => {
16
+ let musl = false
17
+ if (process.platform === 'linux') {
18
+ musl = isMuslFromFilesystem()
19
+ if (musl === null) {
20
+ musl = isMuslFromReport()
21
+ }
22
+ if (musl === null) {
23
+ musl = isMuslFromChildProcess()
24
+ }
25
+ }
26
+ return musl
27
+ }
28
+
29
+ const isFileMusl = (f) => f.includes('libc.musl-') || f.includes('ld-musl-')
30
+
31
+ const isMuslFromFilesystem = () => {
32
+ try {
33
+ return readFileSync('/usr/bin/ldd', 'utf-8').includes('musl')
34
+ } catch {
35
+ return null
36
+ }
37
+ }
38
+
39
+ const isMuslFromReport = () => {
40
+ const report = typeof process.report.getReport === 'function' ? process.report.getReport() : null
41
+ if (!report) {
42
+ return null
43
+ }
44
+ if (report.header && report.header.glibcVersionRuntime) {
45
+ return false
46
+ }
47
+ if (Array.isArray(report.sharedObjects)) {
48
+ if (report.sharedObjects.some(isFileMusl)) {
49
+ return true
50
+ }
51
+ }
52
+ return false
53
+ }
54
+
55
+ const isMuslFromChildProcess = () => {
56
+ try {
57
+ return require('child_process').execSync('ldd --version', { encoding: 'utf8' }).includes('musl')
58
+ } catch (e) {
59
+ // If we reach this case, we don't know if the system is musl or not, so is better to just fallback to false
60
+ return false
61
+ }
62
+ }
63
+
64
+ switch (platform) {
65
+ case 'android':
66
+ switch (arch) {
67
+ case 'arm64':
68
+ localFileExisted = existsSync(join(__dirname, '${localName}.android-arm64.node'))
69
+ try {
70
+ if (localFileExisted) {
71
+ nativeBinding = require('./${localName}.android-arm64.node')
72
+ } else {
73
+ nativeBinding = require('${pkgName}-android-arm64')
74
+ }
75
+ } catch (e) {
76
+ loadError = e
20
77
  }
21
- else {
22
- // @ts-expect-error
23
- const { glibcVersionRuntime } = process.report.getReport().header;
24
- return !glibcVersionRuntime;
78
+ break
79
+ case 'arm':
80
+ localFileExisted = existsSync(join(__dirname, '${localName}.android-arm-eabi.node'))
81
+ try {
82
+ if (localFileExisted) {
83
+ nativeBinding = require('./${localName}.android-arm-eabi.node')
84
+ } else {
85
+ nativeBinding = require('${pkgName}-android-arm-eabi')
86
+ }
87
+ } catch (e) {
88
+ loadError = e
25
89
  }
90
+ break
91
+ default:
92
+ throw new Error(\`Unsupported architecture on Android \${arch}\`)
26
93
  }
27
- switch (platform) {
28
- case 'android':
29
- switch (arch) {
30
- case 'arm64':
31
- candidates.push('android-arm64');
32
- break;
33
- case 'arm':
34
- candidates.push('android-arm-eabi');
35
- break;
36
- }
37
- break;
38
- case 'win32':
39
- switch (arch) {
40
- case 'x64':
41
- candidates.push('win32-x64-msvc');
42
- break;
43
- case 'ia32':
44
- candidates.push('win32-ia32-msvc');
45
- break;
46
- case 'arm64':
47
- candidates.push('win32-arm64-msvc');
48
- break;
94
+ break
95
+ case 'win32':
96
+ switch (arch) {
97
+ case 'x64':
98
+ localFileExisted = existsSync(
99
+ join(__dirname, '${localName}.win32-x64-msvc.node')
100
+ )
101
+ try {
102
+ if (localFileExisted) {
103
+ nativeBinding = require('./${localName}.win32-x64-msvc.node')
104
+ } else {
105
+ nativeBinding = require('${pkgName}-win32-x64-msvc')
106
+ }
107
+ } catch (e) {
108
+ loadError = e
109
+ }
110
+ break
111
+ case 'ia32':
112
+ localFileExisted = existsSync(
113
+ join(__dirname, '${localName}.win32-ia32-msvc.node')
114
+ )
115
+ try {
116
+ if (localFileExisted) {
117
+ nativeBinding = require('./${localName}.win32-ia32-msvc.node')
118
+ } else {
119
+ nativeBinding = require('${pkgName}-win32-ia32-msvc')
120
+ }
121
+ } catch (e) {
122
+ loadError = e
123
+ }
124
+ break
125
+ case 'arm64':
126
+ localFileExisted = existsSync(
127
+ join(__dirname, '${localName}.win32-arm64-msvc.node')
128
+ )
129
+ try {
130
+ if (localFileExisted) {
131
+ nativeBinding = require('./${localName}.win32-arm64-msvc.node')
132
+ } else {
133
+ nativeBinding = require('${pkgName}-win32-arm64-msvc')
134
+ }
135
+ } catch (e) {
136
+ loadError = e
137
+ }
138
+ break
139
+ default:
140
+ throw new Error(\`Unsupported architecture on Windows: \${arch}\`)
141
+ }
142
+ break
143
+ case 'darwin':
144
+ localFileExisted = existsSync(join(__dirname, '${localName}.darwin-universal.node'))
145
+ try {
146
+ if (localFileExisted) {
147
+ nativeBinding = require('./${localName}.darwin-universal.node')
148
+ } else {
149
+ nativeBinding = require('${pkgName}-darwin-universal')
150
+ }
151
+ break
152
+ } catch {}
153
+ switch (arch) {
154
+ case 'x64':
155
+ localFileExisted = existsSync(join(__dirname, '${localName}.darwin-x64.node'))
156
+ try {
157
+ if (localFileExisted) {
158
+ nativeBinding = require('./${localName}.darwin-x64.node')
159
+ } else {
160
+ nativeBinding = require('${pkgName}-darwin-x64')
161
+ }
162
+ } catch (e) {
163
+ loadError = e
164
+ }
165
+ break
166
+ case 'arm64':
167
+ localFileExisted = existsSync(
168
+ join(__dirname, '${localName}.darwin-arm64.node')
169
+ )
170
+ try {
171
+ if (localFileExisted) {
172
+ nativeBinding = require('./${localName}.darwin-arm64.node')
173
+ } else {
174
+ nativeBinding = require('${pkgName}-darwin-arm64')
175
+ }
176
+ } catch (e) {
177
+ loadError = e
178
+ }
179
+ break
180
+ default:
181
+ throw new Error(\`Unsupported architecture on macOS: \${arch}\`)
182
+ }
183
+ break
184
+ case 'freebsd':
185
+ if (arch !== 'x64') {
186
+ throw new Error(\`Unsupported architecture on FreeBSD: \${arch}\`)
187
+ }
188
+ localFileExisted = existsSync(join(__dirname, '${localName}.freebsd-x64.node'))
189
+ try {
190
+ if (localFileExisted) {
191
+ nativeBinding = require('./${localName}.freebsd-x64.node')
192
+ } else {
193
+ nativeBinding = require('${pkgName}-freebsd-x64')
194
+ }
195
+ } catch (e) {
196
+ loadError = e
197
+ }
198
+ break
199
+ case 'linux':
200
+ switch (arch) {
201
+ case 'x64':
202
+ if (isMusl()) {
203
+ localFileExisted = existsSync(
204
+ join(__dirname, '${localName}.linux-x64-musl.node')
205
+ )
206
+ try {
207
+ if (localFileExisted) {
208
+ nativeBinding = require('./${localName}.linux-x64-musl.node')
209
+ } else {
210
+ nativeBinding = require('${pkgName}-linux-x64-musl')
49
211
  }
50
- break;
51
- case 'darwin':
52
- candidates.push('darwin-universal');
53
- switch (arch) {
54
- case 'x64':
55
- candidates.push('darwin-x64');
56
- break;
57
- case 'arm64':
58
- candidates.push('darwin-arm64');
59
- break;
212
+ } catch (e) {
213
+ loadError = e
214
+ }
215
+ } else {
216
+ localFileExisted = existsSync(
217
+ join(__dirname, '${localName}.linux-x64-gnu.node')
218
+ )
219
+ try {
220
+ if (localFileExisted) {
221
+ nativeBinding = require('./${localName}.linux-x64-gnu.node')
222
+ } else {
223
+ nativeBinding = require('${pkgName}-linux-x64-gnu')
60
224
  }
61
- break;
62
- case 'freebsd':
63
- if (arch === 'x64') {
64
- candidates.push('freebsd-x64');
225
+ } catch (e) {
226
+ loadError = e
227
+ }
228
+ }
229
+ break
230
+ case 'arm64':
231
+ if (isMusl()) {
232
+ localFileExisted = existsSync(
233
+ join(__dirname, '${localName}.linux-arm64-musl.node')
234
+ )
235
+ try {
236
+ if (localFileExisted) {
237
+ nativeBinding = require('./${localName}.linux-arm64-musl.node')
238
+ } else {
239
+ nativeBinding = require('${pkgName}-linux-arm64-musl')
65
240
  }
66
- break;
67
- case 'linux':
68
- switch (arch) {
69
- case 'x64':
70
- if (isMusl()) {
71
- candidates.push('linux-x64-musl');
72
- }
73
- else {
74
- candidates.push('linux-x64-gnu');
75
- }
76
- break;
77
- case 'arm64':
78
- if (isMusl()) {
79
- candidates.push('linux-arm64-musl');
80
- }
81
- else {
82
- candidates.push('linux-arm64-gnu');
83
- }
84
- break;
85
- case 'arm':
86
- candidates.push('linux-arm-gnueabihf');
87
- break;
241
+ } catch (e) {
242
+ loadError = e
243
+ }
244
+ } else {
245
+ localFileExisted = existsSync(
246
+ join(__dirname, '${localName}.linux-arm64-gnu.node')
247
+ )
248
+ try {
249
+ if (localFileExisted) {
250
+ nativeBinding = require('./${localName}.linux-arm64-gnu.node')
251
+ } else {
252
+ nativeBinding = require('${pkgName}-linux-arm64-gnu')
88
253
  }
89
- break;
90
- }
91
- let nativeBinding;
92
- let loadError;
93
- for (const suffix of candidates) {
94
- const localPath = join(__dirname, `${binaryName}.${suffix}.node`);
95
- const pkgPath = `${packageName}-${suffix}`;
254
+ } catch (e) {
255
+ loadError = e
256
+ }
257
+ }
258
+ break
259
+ case 'arm':
260
+ localFileExisted = existsSync(
261
+ join(__dirname, '${localName}.linux-arm-gnueabihf.node')
262
+ )
96
263
  try {
97
- if (existsSync(localPath)) {
98
- nativeBinding = require(localPath);
264
+ if (localFileExisted) {
265
+ nativeBinding = require('./${localName}.linux-arm-gnueabihf.node')
266
+ } else {
267
+ nativeBinding = require('${pkgName}-linux-arm-gnueabihf')
268
+ }
269
+ } catch (e) {
270
+ loadError = e
271
+ }
272
+ break
273
+ case 'riscv64':
274
+ if (isMusl()) {
275
+ localFileExisted = existsSync(
276
+ join(__dirname, '${localName}.linux-riscv64-musl.node')
277
+ )
278
+ try {
279
+ if (localFileExisted) {
280
+ nativeBinding = require('./${localName}.linux-riscv64-musl.node')
281
+ } else {
282
+ nativeBinding = require('${pkgName}-linux-riscv64-musl')
99
283
  }
100
- else {
101
- nativeBinding = require(pkgPath);
284
+ } catch (e) {
285
+ loadError = e
286
+ }
287
+ } else {
288
+ localFileExisted = existsSync(
289
+ join(__dirname, '${localName}.linux-riscv64-gnu.node')
290
+ )
291
+ try {
292
+ if (localFileExisted) {
293
+ nativeBinding = require('./${localName}.linux-riscv64-gnu.node')
294
+ } else {
295
+ nativeBinding = require('${pkgName}-linux-riscv64-gnu')
102
296
  }
297
+ } catch (e) {
298
+ loadError = e
299
+ }
103
300
  }
104
- catch (e) {
105
- loadError = e;
106
- continue;
107
- }
108
- loadError = null;
109
- break;
301
+ break
302
+ default:
303
+ throw new Error(\`Unsupported architecture on Linux: \${arch}\`)
110
304
  }
111
- if (!nativeBinding) {
112
- if (loadError) {
113
- throw loadError;
114
- }
115
- throw new Error(`Unsupported OS: ${platform}, architecture: ${arch}`);
305
+ break
306
+ default:
307
+ throw new Error(\`Unsupported OS: \${platform}, architecture: \${arch}\`)
308
+ }
309
+
310
+ if (!nativeBinding || process.env.NAPI_RS_FORCE_WASI) {
311
+ try {
312
+ nativeBinding = require('./${localName}.wasi.cjs')
313
+ } catch {
314
+ // ignore
315
+ }
316
+ if (!nativeBinding) {
317
+ try {
318
+ nativeBinding = require('${pkgName}-wasm32-wasi')
319
+ } catch (err) {
320
+ console.error(err)
116
321
  }
117
- return nativeBinding;
322
+ }
323
+ }
324
+
325
+ if (!nativeBinding) {
326
+ if (loadError) {
327
+ throw loadError
328
+ }
329
+ throw new Error(\`Failed to load native binding\`)
118
330
  }
119
- export function createJsBinding(localName, pkgName) {
120
- return `${loadNapiModule.toString()}
121
331
 
122
- module.exports = loadNapiModule('${localName}', '${pkgName}')
332
+ ${idents
333
+ .map((ident) => `module.exports.${ident} = nativeBinding.${ident}`)
334
+ .join('\n')}
123
335
  `;
124
336
  }
337
+ //# sourceMappingURL=js-binding.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-binding.js","sourceRoot":"","sources":["../../../src/api/templates/js-binding.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,gBAAgB,CAC9B,SAAiB,EACjB,OAAe,EACf,MAAgB;IAEhB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yDAkEgD,SAAS;;;yCAGzB,SAAS;;uCAEX,OAAO;;;;;;;yDAOW,SAAS;;;yCAGzB,SAAS;;uCAEX,OAAO;;;;;;;;;;;;;;6BAcjB,SAAS;;;;yCAIG,SAAS;;uCAEX,OAAO;;;;;;;;6BAQjB,SAAS;;;;yCAIG,SAAS;;uCAEX,OAAO;;;;;;;;6BAQjB,SAAS;;;;yCAIG,SAAS;;uCAEX,OAAO;;;;;;;;;;;qDAWO,SAAS;;;qCAGzB,SAAS;;mCAEX,OAAO;;;;;;yDAMe,SAAS;;;yCAGzB,SAAS;;uCAEX,OAAO;;;;;;;;6BAQjB,SAAS;;;;yCAIG,SAAS;;uCAEX,OAAO;;;;;;;;;;;;;;qDAcO,SAAS;;;qCAGzB,SAAS;;mCAEX,OAAO;;;;;;;;;;;+BAWX,SAAS;;;;2CAIG,SAAS;;yCAEX,OAAO;;;;;;;+BAOjB,SAAS;;;;2CAIG,SAAS;;yCAEX,OAAO;;;;;;;;;;+BAUjB,SAAS;;;;2CAIG,SAAS;;yCAEX,OAAO;;;;;;;+BAOjB,SAAS;;;;2CAIG,SAAS;;yCAEX,OAAO;;;;;;;;;6BASnB,SAAS;;;;yCAIG,SAAS;;uCAEX,OAAO;;;;;;;;;+BASf,SAAS;;;;2CAIG,SAAS;;yCAEX,OAAO;;;;;;;+BAOjB,SAAS;;;;2CAIG,SAAS;;yCAEX,OAAO;;;;;;;;;;;;;;;;;iCAiBf,SAAS;;;;;;iCAMT,OAAO;;;;;;;;;;;;;;EActC,MAAM;SACL,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,KAAK,oBAAoB,KAAK,EAAE,CAAC;SAClE,IAAI,CAAC,IAAI,CAAC;CACZ,CAAA;AACD,CAAC"}
@@ -1,10 +1,8 @@
1
- export const createLibRs = () => `#![deny(clippy::all)]
2
-
3
- #[macro_use]
4
- extern crate napi_derive;
1
+ export const createLibRs = () => `use napi_derive::napi;
5
2
 
6
3
  #[napi]
7
4
  pub fn sum(a: i32, b: i32) -> i32 {
8
5
  a + b
9
6
  }
10
7
  `;
8
+ //# sourceMappingURL=lib.rs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lib.rs.js","sourceRoot":"","sources":["../../../src/api/templates/lib.rs.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC;;;;;;CAMhC,CAAA"}
@@ -0,0 +1 @@
1
+ export declare const createWasiBinding: (wasmFileName: string, packageName: string, wasiRegisterFunctions: string[]) => string;
@@ -0,0 +1,78 @@
1
+ export const createWasiBinding = (wasmFileName, packageName, wasiRegisterFunctions) => `/* eslint-disable */
2
+ /* prettier-ignore */
3
+
4
+ /* auto-generated by NAPI-RS */
5
+
6
+ const __nodeFs= require('node:fs')
7
+ const __nodePath = require('node:path')
8
+ const { WASI: __nodeWASI } = require('node:wasi')
9
+ const { Worker } = require('node:worker_threads')
10
+
11
+ const { instantiateNapiModuleSync: __emnapiInstantiateNapiModuleSync } = require('@emnapi/core')
12
+ const { getDefaultContext: __emnapiGetDefaultContext } = require('@emnapi/runtime')
13
+
14
+ const __wasi = new __nodeWASI({
15
+ version: 'preview1',
16
+ env: process.env,
17
+ preopens: {
18
+ '/': '/'
19
+ }
20
+ })
21
+
22
+ const __emnapiContext = __emnapiGetDefaultContext()
23
+
24
+ const __sharedMemory = new WebAssembly.Memory({
25
+ initial: 1024,
26
+ maximum: 10240,
27
+ shared: true,
28
+ })
29
+
30
+ let __wasmFilePath = __nodePath.join(__dirname, '${wasmFileName}.wasm')
31
+
32
+ if (!__nodeFs.existsSync(__wasmFilePath)) {
33
+ try {
34
+ __wasmFilePath = __nodePath.resolve('${packageName}-wasm32-wasi')
35
+ } catch {
36
+ throw new Error('Cannot find ${wasmFileName}.wasm file, and ${packageName}-wasm32-wasi package is not installed.')
37
+ }
38
+ }
39
+
40
+ const { instance: __napiInstance, module: __wasiModule, napiModule: __napiModule } = __emnapiInstantiateNapiModuleSync(__nodeFs.readFileSync(__wasmFilePath), {
41
+ context: __emnapiContext,
42
+ asyncWorkPoolSize: (function() {
43
+ const threadsSizeFromEnv = Number(process.env.NAPI_RS_ASYNC_WORK_POOL_SIZE ?? process.env.UV_THREADPOOL_SIZE)
44
+ // NaN > 0 is false
45
+ if (threadsSizeFromEnv > 0) {
46
+ return threadsSizeFromEnv
47
+ } else {
48
+ return 4
49
+ }
50
+ })(),
51
+ wasi: __wasi,
52
+ onCreateWorker() {
53
+ return new Worker(__nodePath.join(__dirname, 'wasi-worker.mjs'), {
54
+ env: process.env,
55
+ execArgv: ['--experimental-wasi-unstable-preview1'],
56
+ })
57
+ },
58
+ overwriteImports(importObject) {
59
+ importObject.env = {
60
+ ...importObject.env,
61
+ ...importObject.napi,
62
+ ...importObject.emnapi,
63
+ memory: __sharedMemory,
64
+ }
65
+ return importObject
66
+ },
67
+ beforeInit({ instance }) {
68
+ __napi_rs_initialize_modules(instance)
69
+ }
70
+ })
71
+
72
+ function __napi_rs_initialize_modules(__napiInstance) {
73
+ ${wasiRegisterFunctions
74
+ .map((name) => ` __napiInstance.exports['${name}']?.()`)
75
+ .join('\n')}
76
+ }
77
+ `;
78
+ //# sourceMappingURL=load-wasi-template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load-wasi-template.js","sourceRoot":"","sources":["../../../src/api/templates/load-wasi-template.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,YAAoB,EACpB,WAAmB,EACnB,qBAA+B,EAC/B,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mDA6B8C,YAAY;;;;2CAIpB,WAAW;;mCAEnB,YAAY,mBAAmB,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqC3E,qBAAqB;KACpB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,6BAA6B,IAAI,QAAQ,CAAC;KACxD,IAAI,CAAC,IAAI,CAAC;;CAEZ,CAAA"}
@@ -1,8 +1,15 @@
1
- export declare const createPackageJson: ({ name, binaryName, targets, license, engineRequirement, cliVersion, }: {
1
+ import type { SupportedTestFramework } from '../../utils/config.js';
2
+ export interface PackageMeta {
3
+ 'dist-tags': {
4
+ [index: string]: string;
5
+ };
6
+ }
7
+ export declare const createPackageJson: ({ name, binaryName, targets, license, engineRequirement, cliVersion, testFramework, }: {
2
8
  name: string;
3
9
  binaryName: string;
4
10
  targets: string[];
5
11
  license: string;
6
12
  engineRequirement: string;
7
13
  cliVersion: string;
8
- }) => string;
14
+ testFramework: SupportedTestFramework;
15
+ }) => Promise<string>;