@napi-rs/cli 3.0.0-alpha.90 → 3.0.0-alpha.92

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 (133) hide show
  1. package/dist/api/create-npm-dirs.d.ts +5 -0
  2. package/dist/api/templates/index.d.ts +0 -7
  3. package/dist/cli.js +3892 -15
  4. package/dist/index.cjs +9212 -8791
  5. package/dist/index.js +3643 -32
  6. package/package.json +10 -8
  7. package/src/api/build.ts +15 -15
  8. package/src/api/create-npm-dirs.ts +4 -2
  9. package/src/api/templates/index.ts +0 -7
  10. package/src/api/templates/load-wasi-template.ts +23 -0
  11. package/src/utils/config.ts +9 -0
  12. package/dist/api/__tests__/new.spec.js +0 -283
  13. package/dist/api/__tests__/new.spec.js.map +0 -1
  14. package/dist/api/artifacts.js +0 -74
  15. package/dist/api/artifacts.js.map +0 -1
  16. package/dist/api/build.js +0 -707
  17. package/dist/api/build.js.map +0 -1
  18. package/dist/api/create-npm-dirs.js +0 -101
  19. package/dist/api/create-npm-dirs.js.map +0 -1
  20. package/dist/api/new.js +0 -360
  21. package/dist/api/new.js.map +0 -1
  22. package/dist/api/pre-publish.js +0 -160
  23. package/dist/api/pre-publish.js.map +0 -1
  24. package/dist/api/rename.js +0 -91
  25. package/dist/api/rename.js.map +0 -1
  26. package/dist/api/templates/.gitignore.d.ts +0 -1
  27. package/dist/api/templates/.gitignore.js +0 -200
  28. package/dist/api/templates/.gitignore.js.map +0 -1
  29. package/dist/api/templates/.npmignore.d.ts +0 -1
  30. package/dist/api/templates/.npmignore.js +0 -15
  31. package/dist/api/templates/.npmignore.js.map +0 -1
  32. package/dist/api/templates/build.rs.d.ts +0 -1
  33. package/dist/api/templates/build.rs.js +0 -5
  34. package/dist/api/templates/build.rs.js.map +0 -1
  35. package/dist/api/templates/cargo.toml.d.ts +0 -6
  36. package/dist/api/templates/cargo.toml.js +0 -27
  37. package/dist/api/templates/cargo.toml.js.map +0 -1
  38. package/dist/api/templates/ci-template.d.ts +0 -3
  39. package/dist/api/templates/ci-template.js +0 -593
  40. package/dist/api/templates/ci-template.js.map +0 -1
  41. package/dist/api/templates/ci.yml.d.ts +0 -3
  42. package/dist/api/templates/ci.yml.js +0 -115
  43. package/dist/api/templates/ci.yml.js.map +0 -1
  44. package/dist/api/templates/index.js +0 -9
  45. package/dist/api/templates/index.js.map +0 -1
  46. package/dist/api/templates/js-binding.js +0 -213
  47. package/dist/api/templates/js-binding.js.map +0 -1
  48. package/dist/api/templates/lib.rs.d.ts +0 -1
  49. package/dist/api/templates/lib.rs.js +0 -8
  50. package/dist/api/templates/lib.rs.js.map +0 -1
  51. package/dist/api/templates/load-wasi-template.js +0 -168
  52. package/dist/api/templates/load-wasi-template.js.map +0 -1
  53. package/dist/api/templates/package.json.d.ts +0 -15
  54. package/dist/api/templates/package.json.js +0 -54
  55. package/dist/api/templates/package.json.js.map +0 -1
  56. package/dist/api/templates/wasi-worker-template.js +0 -122
  57. package/dist/api/templates/wasi-worker-template.js.map +0 -1
  58. package/dist/api/universalize.js +0 -39
  59. package/dist/api/universalize.js.map +0 -1
  60. package/dist/api/version.js +0 -17
  61. package/dist/api/version.js.map +0 -1
  62. package/dist/cli.js.map +0 -1
  63. package/dist/commands/artifacts.js +0 -20
  64. package/dist/commands/artifacts.js.map +0 -1
  65. package/dist/commands/build.js +0 -35
  66. package/dist/commands/build.js.map +0 -1
  67. package/dist/commands/create-npm-dirs.js +0 -8
  68. package/dist/commands/create-npm-dirs.js.map +0 -1
  69. package/dist/commands/help.js +0 -13
  70. package/dist/commands/help.js.map +0 -1
  71. package/dist/commands/new.js +0 -110
  72. package/dist/commands/new.js.map +0 -1
  73. package/dist/commands/pre-publish.js +0 -9
  74. package/dist/commands/pre-publish.js.map +0 -1
  75. package/dist/commands/rename.js +0 -8
  76. package/dist/commands/rename.js.map +0 -1
  77. package/dist/commands/universalize.js +0 -8
  78. package/dist/commands/universalize.js.map +0 -1
  79. package/dist/commands/version.js +0 -8
  80. package/dist/commands/version.js.map +0 -1
  81. package/dist/def/artifacts.js +0 -47
  82. package/dist/def/artifacts.js.map +0 -1
  83. package/dist/def/build.js +0 -140
  84. package/dist/def/build.js.map +0 -1
  85. package/dist/def/create-npm-dirs.js +0 -43
  86. package/dist/def/create-npm-dirs.js.map +0 -1
  87. package/dist/def/new.js +0 -77
  88. package/dist/def/new.js.map +0 -1
  89. package/dist/def/pre-publish.js +0 -61
  90. package/dist/def/pre-publish.js.map +0 -1
  91. package/dist/def/rename.js +0 -63
  92. package/dist/def/rename.js.map +0 -1
  93. package/dist/def/universalize.js +0 -38
  94. package/dist/def/universalize.js.map +0 -1
  95. package/dist/def/version.js +0 -38
  96. package/dist/def/version.js.map +0 -1
  97. package/dist/index.js.map +0 -1
  98. package/dist/utils/__tests__/config.spec.js +0 -63
  99. package/dist/utils/__tests__/config.spec.js.map +0 -1
  100. package/dist/utils/__tests__/target.spec.js +0 -11
  101. package/dist/utils/__tests__/target.spec.js.map +0 -1
  102. package/dist/utils/__tests__/typegen.spec.js +0 -42
  103. package/dist/utils/__tests__/typegen.spec.js.map +0 -1
  104. package/dist/utils/__tests__/version.spec.js +0 -6
  105. package/dist/utils/__tests__/version.spec.js.map +0 -1
  106. package/dist/utils/cargo.js +0 -34
  107. package/dist/utils/cargo.js.map +0 -1
  108. package/dist/utils/config.js +0 -75
  109. package/dist/utils/config.js.map +0 -1
  110. package/dist/utils/index.js +0 -10
  111. package/dist/utils/index.js.map +0 -1
  112. package/dist/utils/log.js +0 -15
  113. package/dist/utils/log.js.map +0 -1
  114. package/dist/utils/metadata.js +0 -40
  115. package/dist/utils/metadata.js.map +0 -1
  116. package/dist/utils/misc.js +0 -43
  117. package/dist/utils/misc.js.map +0 -1
  118. package/dist/utils/read-config.js +0 -8
  119. package/dist/utils/read-config.js.map +0 -1
  120. package/dist/utils/target.js +0 -135
  121. package/dist/utils/target.js.map +0 -1
  122. package/dist/utils/typegen.js +0 -210
  123. package/dist/utils/typegen.js.map +0 -1
  124. package/dist/utils/version.js +0 -62
  125. package/dist/utils/version.js.map +0 -1
  126. package/src/api/templates/.gitignore.ts +0 -199
  127. package/src/api/templates/.npmignore.ts +0 -14
  128. package/src/api/templates/build.rs.ts +0 -4
  129. package/src/api/templates/cargo.toml.ts +0 -36
  130. package/src/api/templates/ci-template.ts +0 -602
  131. package/src/api/templates/ci.yml.ts +0 -140
  132. package/src/api/templates/lib.rs.ts +0 -7
  133. package/src/api/templates/package.json.ts +0 -90
@@ -1,62 +0,0 @@
1
- export var NapiVersion;
2
- (function (NapiVersion) {
3
- NapiVersion[NapiVersion["Napi1"] = 1] = "Napi1";
4
- NapiVersion[NapiVersion["Napi2"] = 2] = "Napi2";
5
- NapiVersion[NapiVersion["Napi3"] = 3] = "Napi3";
6
- NapiVersion[NapiVersion["Napi4"] = 4] = "Napi4";
7
- NapiVersion[NapiVersion["Napi5"] = 5] = "Napi5";
8
- NapiVersion[NapiVersion["Napi6"] = 6] = "Napi6";
9
- NapiVersion[NapiVersion["Napi7"] = 7] = "Napi7";
10
- NapiVersion[NapiVersion["Napi8"] = 8] = "Napi8";
11
- NapiVersion[NapiVersion["Napi9"] = 9] = "Napi9";
12
- })(NapiVersion || (NapiVersion = {}));
13
- /// because node support new napi version in some minor version updates, so we might meet such situation:
14
- /// `node v10.20.0` supports `napi5` and `napi6`, but `node v12.0.0` only support `napi4`,
15
- /// by which, we can not tell directly napi version supportless from node version directly.
16
- const NAPI_VERSION_MATRIX = new Map([
17
- [NapiVersion.Napi1, '8.6.0 | 9.0.0 | 10.0.0'],
18
- [NapiVersion.Napi2, '8.10.0 | 9.3.0 | 10.0.0'],
19
- [NapiVersion.Napi3, '6.14.2 | 8.11.2 | 9.11.0 | 10.0.0'],
20
- [NapiVersion.Napi4, '10.16.0 | 11.8.0 | 12.0.0'],
21
- [NapiVersion.Napi5, '10.17.0 | 12.11.0 | 13.0.0'],
22
- [NapiVersion.Napi6, '10.20.0 | 12.17.0 | 14.0.0'],
23
- [NapiVersion.Napi7, '10.23.0 | 12.19.0 | 14.12.0 | 15.0.0'],
24
- [NapiVersion.Napi8, '12.22.0 | 14.17.0 | 15.12.0 | 16.0.0'],
25
- [NapiVersion.Napi9, '18.17.0 | 20.3.0 | 21.1.0'],
26
- ]);
27
- function parseNodeVersion(v) {
28
- const matches = v.match(/v?([0-9]+)\.([0-9]+)\.([0-9]+)/i);
29
- if (!matches) {
30
- throw new Error('Unknown node version number: ' + v);
31
- }
32
- const [, major, minor, patch] = matches;
33
- return {
34
- major: parseInt(major),
35
- minor: parseInt(minor),
36
- patch: parseInt(patch),
37
- };
38
- }
39
- function requiredNodeVersions(napiVersion) {
40
- const requirement = NAPI_VERSION_MATRIX.get(napiVersion);
41
- if (!requirement) {
42
- return [parseNodeVersion('10.0.0')];
43
- }
44
- return requirement.split('|').map(parseNodeVersion);
45
- }
46
- function toEngineRequirement(versions) {
47
- const requirements = [];
48
- versions.forEach((v, i) => {
49
- let req = '';
50
- if (i !== 0) {
51
- const lastVersion = versions[i - 1];
52
- req += `< ${lastVersion.major + 1}`;
53
- }
54
- req += `${i === 0 ? '' : ' || '}>= ${v.major}.${v.minor}.${v.patch}`;
55
- requirements.push(req);
56
- });
57
- return requirements.join(' ');
58
- }
59
- export function napiEngineRequirement(napiVersion) {
60
- return toEngineRequirement(requiredNodeVersions(napiVersion));
61
- }
62
- //# sourceMappingURL=version.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/utils/version.ts"],"names":[],"mappings":"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"}
@@ -1,199 +0,0 @@
1
- export const gitIgnore = `# Created by https://www.toptal.com/developers/gitignore/api/node
2
- # Edit at https://www.toptal.com/developers/gitignore?templates=node
3
-
4
- ### Node ###
5
- # Logs
6
- logs
7
- *.log
8
- npm-debug.log*
9
- yarn-debug.log*
10
- yarn-error.log*
11
- lerna-debug.log*
12
-
13
- # Diagnostic reports (https://nodejs.org/api/report.html)
14
- report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
15
-
16
- # Runtime data
17
- pids
18
- *.pid
19
- *.seed
20
- *.pid.lock
21
-
22
- # Directory for instrumented libs generated by jscoverage/JSCover
23
- lib-cov
24
-
25
- # Coverage directory used by tools like istanbul
26
- coverage
27
- *.lcov
28
-
29
- # nyc test coverage
30
- .nyc_output
31
-
32
- # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
33
- .grunt
34
-
35
- # Bower dependency directory (https://bower.io/)
36
- bower_components
37
-
38
- # node-waf configuration
39
- .lock-wscript
40
-
41
- # Compiled binary addons (https://nodejs.org/api/addons.html)
42
- build/Release
43
-
44
- # Dependency directories
45
- node_modules/
46
- jspm_packages/
47
-
48
- # TypeScript v1 declaration files
49
- typings/
50
-
51
- # TypeScript cache
52
- *.tsbuildinfo
53
-
54
- # Optional npm cache directory
55
- .npm
56
-
57
- # Optional eslint cache
58
- .eslintcache
59
-
60
- # Microbundle cache
61
- .rpt2_cache/
62
- .rts2_cache_cjs/
63
- .rts2_cache_es/
64
- .rts2_cache_umd/
65
-
66
- # Optional REPL history
67
- .node_repl_history
68
-
69
- # Output of 'npm pack'
70
- *.tgz
71
-
72
- # Yarn Integrity file
73
- .yarn-integrity
74
-
75
- # dotenv environment variables file
76
- .env
77
- .env.test
78
-
79
- # parcel-bundler cache (https://parceljs.org/)
80
- .cache
81
-
82
- # Next.js build output
83
- .next
84
-
85
- # Nuxt.js build / generate output
86
- .nuxt
87
- dist
88
-
89
- # Gatsby files
90
- .cache/
91
- # Comment in the public line in if your project uses Gatsby and not Next.js
92
- # https://nextjs.org/blog/next-9-1#public-directory-support
93
- # public
94
-
95
- # vuepress build output
96
- .vuepress/dist
97
-
98
- # Serverless directories
99
- .serverless/
100
-
101
- # FuseBox cache
102
- .fusebox/
103
-
104
- # DynamoDB Local files
105
- .dynamodb/
106
-
107
- # TernJS port file
108
- .tern-port
109
-
110
- # Stores VSCode versions used for testing VSCode extensions
111
- .vscode-test
112
-
113
- # End of https://www.toptal.com/developers/gitignore/api/node
114
-
115
- # Created by https://www.toptal.com/developers/gitignore/api/macos
116
- # Edit at https://www.toptal.com/developers/gitignore?templates=macos
117
-
118
- ### macOS ###
119
- # General
120
- .DS_Store
121
- .AppleDouble
122
- .LSOverride
123
-
124
- # Icon must end with two \r
125
- Icon
126
-
127
-
128
- # Thumbnails
129
- ._*
130
-
131
- # Files that might appear in the root of a volume
132
- .DocumentRevisions-V100
133
- .fseventsd
134
- .Spotlight-V100
135
- .TemporaryItems
136
- .Trashes
137
- .VolumeIcon.icns
138
- .com.apple.timemachine.donotpresent
139
-
140
- # Directories potentially created on remote AFP share
141
- .AppleDB
142
- .AppleDesktop
143
- Network Trash Folder
144
- Temporary Items
145
- .apdisk
146
-
147
- ### macOS Patch ###
148
- # iCloud generated files
149
- *.icloud
150
-
151
- # End of https://www.toptal.com/developers/gitignore/api/macos
152
-
153
- # Created by https://www.toptal.com/developers/gitignore/api/windows
154
- # Edit at https://www.toptal.com/developers/gitignore?templates=windows
155
-
156
- ### Windows ###
157
- # Windows thumbnail cache files
158
- Thumbs.db
159
- Thumbs.db:encryptable
160
- ehthumbs.db
161
- ehthumbs_vista.db
162
-
163
- # Dump file
164
- *.stackdump
165
-
166
- # Folder config file
167
- [Dd]esktop.ini
168
-
169
- # Recycle Bin used on file shares
170
- $RECYCLE.BIN/
171
-
172
- # Windows Installer files
173
- *.cab
174
- *.msi
175
- *.msix
176
- *.msm
177
- *.msp
178
-
179
- # Windows shortcuts
180
- *.lnk
181
-
182
- # End of https://www.toptal.com/developers/gitignore/api/windows
183
-
184
- #Added by cargo
185
-
186
- /target
187
- Cargo.lock
188
-
189
- .pnp.*
190
- .yarn/*
191
- !.yarn/patches
192
- !.yarn/plugins
193
- !.yarn/releases
194
- !.yarn/sdks
195
- !.yarn/versions
196
-
197
- *.node
198
- *.wasm
199
- `
@@ -1,14 +0,0 @@
1
- export const npmIgnore = `target
2
- Cargo.lock
3
- .cargo
4
- .github
5
- npm
6
- .eslintrc
7
- .prettierignore
8
- rustfmt.toml
9
- yarn.lock
10
- *.node
11
- .yarn
12
- __test__
13
- renovate.json
14
- `
@@ -1,4 +0,0 @@
1
- export const createBuildRs = () => `fn main() {
2
- napi_build::setup();
3
- }
4
- `
@@ -1,36 +0,0 @@
1
- export const createCargoToml = ({
2
- name,
3
- license,
4
- features,
5
- deriveFeatures,
6
- }: {
7
- name: string
8
- license: string
9
- features: string[]
10
- deriveFeatures: string[]
11
- }) => `[package]
12
- name = "${name.replace('@', '').replace('/', '_').toLowerCase()}"
13
- version = "1.0.0"
14
- edition = "2021"
15
- license = "${license}"
16
-
17
- [lib]
18
- crate-type = ["cdylib"]
19
-
20
- [dependencies.napi]
21
- version = "2"
22
- default-features = false
23
- # see https://nodejs.org/api/n-api.html#node-api-version-matrix
24
- features = ${JSON.stringify(features)}
25
-
26
- [dependencies.napi-derive]
27
- version = "2"
28
- features = ${JSON.stringify(deriveFeatures)}
29
-
30
- [build-dependencies]
31
- napi-build = "2"
32
-
33
- [profile.release]
34
- lto = true
35
- strip = "symbols"
36
- `