step-node-agent 3.20.2 → 3.21.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.
Files changed (732) hide show
  1. package/node_modules/aws4/README.md +31 -1
  2. package/node_modules/aws4/aws4.js +10 -2
  3. package/node_modules/aws4/package.json +1 -1
  4. package/node_modules/content-type/HISTORY.md +5 -0
  5. package/node_modules/content-type/README.md +21 -19
  6. package/node_modules/content-type/index.js +12 -9
  7. package/node_modules/content-type/package.json +13 -11
  8. package/node_modules/get-intrinsic/.eslintrc +1 -0
  9. package/node_modules/get-intrinsic/CHANGELOG.md +12 -0
  10. package/node_modules/get-intrinsic/index.js +10 -0
  11. package/node_modules/get-intrinsic/package.json +7 -6
  12. package/node_modules/get-intrinsic/test/GetIntrinsic.js +1 -1
  13. package/node_modules/minimist/.eslintrc +25 -50
  14. package/node_modules/minimist/CHANGELOG.md +87 -1
  15. package/node_modules/minimist/README.md +14 -10
  16. package/node_modules/minimist/example/parse.js +2 -0
  17. package/node_modules/minimist/index.js +256 -242
  18. package/node_modules/minimist/package.json +73 -73
  19. package/node_modules/minimist/test/all_bool.js +26 -24
  20. package/node_modules/minimist/test/bool.js +146 -147
  21. package/node_modules/minimist/test/dash.js +33 -21
  22. package/node_modules/minimist/test/default_bool.js +26 -24
  23. package/node_modules/minimist/test/dotted.js +13 -11
  24. package/node_modules/minimist/test/kv_short.js +26 -10
  25. package/node_modules/minimist/test/long.js +28 -26
  26. package/node_modules/minimist/test/num.js +30 -28
  27. package/node_modules/minimist/test/parse.js +169 -157
  28. package/node_modules/minimist/test/parse_modified.js +7 -5
  29. package/node_modules/minimist/test/proto.js +41 -37
  30. package/node_modules/minimist/test/short.js +57 -55
  31. package/node_modules/minimist/test/stop_early.js +10 -8
  32. package/node_modules/minimist/test/unknown.js +83 -81
  33. package/node_modules/minimist/test/whitespace.js +6 -4
  34. package/node_modules/npm/AUTHORS +6 -0
  35. package/node_modules/npm/CHANGELOG.md +57 -0
  36. package/node_modules/npm/Makefile +6 -8
  37. package/node_modules/npm/docs/config.json +5 -0
  38. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-access.md +4 -8
  39. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-adduser.md +6 -10
  40. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-audit.md +2 -6
  41. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-bin.md +4 -8
  42. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-bugs.md +5 -9
  43. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-build.md +4 -8
  44. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-bundle.md +2 -6
  45. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-cache.md +5 -9
  46. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-ci.md +3 -7
  47. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-completion.md +2 -6
  48. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-config.md +3 -7
  49. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-dedupe.md +4 -8
  50. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-deprecate.md +2 -5
  51. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-dist-tag.md +6 -11
  52. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-docs.md +4 -8
  53. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-doctor.md +4 -8
  54. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-edit.md +4 -8
  55. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-explore.md +6 -10
  56. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-fund.md +5 -9
  57. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-help-search.md +3 -7
  58. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-help.md +4 -8
  59. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-hook.md +1 -5
  60. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-init.md +2 -6
  61. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-install-ci-test.md +3 -7
  62. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-install-test.md +3 -7
  63. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-install.md +13 -17
  64. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-link.md +5 -9
  65. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-logout.md +5 -9
  66. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-ls.md +7 -11
  67. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-org.md +1 -5
  68. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-outdated.md +3 -7
  69. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-owner.md +3 -7
  70. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-pack.md +4 -8
  71. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-ping.md +2 -6
  72. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-prefix.md +5 -9
  73. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-profile.md +2 -5
  74. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-prune.md +3 -6
  75. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-publish.md +15 -18
  76. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-rebuild.md +3 -7
  77. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-repo.md +3 -7
  78. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-restart.md +6 -10
  79. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-root.md +4 -8
  80. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-run-script.md +6 -10
  81. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-search.md +3 -7
  82. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-shrinkwrap.md +4 -8
  83. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-star.md +4 -8
  84. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-stars.md +5 -9
  85. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-start.md +6 -10
  86. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-stop.md +5 -9
  87. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-team.md +2 -6
  88. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-test.md +5 -9
  89. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-token.md +1 -5
  90. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-uninstall.md +4 -8
  91. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-unpublish.md +5 -9
  92. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-update.md +5 -9
  93. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-version.md +3 -7
  94. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-view.md +5 -9
  95. package/node_modules/npm/docs/content/{cli-commands → commands}/npm-whoami.md +3 -6
  96. package/node_modules/npm/docs/content/{cli-commands → commands}/npm.md +6 -10
  97. package/node_modules/npm/docs/content/configuring-npm/folders.md +8 -12
  98. package/node_modules/npm/docs/content/configuring-npm/install.md +1 -5
  99. package/node_modules/npm/docs/content/configuring-npm/npmrc.md +3 -7
  100. package/node_modules/npm/docs/content/configuring-npm/package-json.md +9 -13
  101. package/node_modules/npm/docs/content/configuring-npm/package-lock-json.md +3 -7
  102. package/node_modules/npm/docs/content/configuring-npm/package-locks.md +3 -7
  103. package/node_modules/npm/docs/content/configuring-npm/shrinkwrap-json.md +4 -8
  104. package/node_modules/npm/docs/content/using-npm/config.md +8 -12
  105. package/node_modules/npm/docs/content/using-npm/developers.md +8 -12
  106. package/node_modules/npm/docs/content/using-npm/orgs.md +5 -9
  107. package/node_modules/npm/docs/content/using-npm/registry.md +3 -8
  108. package/node_modules/npm/docs/content/using-npm/removal.md +3 -7
  109. package/node_modules/npm/docs/content/using-npm/scope.md +7 -9
  110. package/node_modules/npm/docs/content/using-npm/scripts.md +7 -11
  111. package/node_modules/npm/docs/content/using-npm/semver.md +1 -4
  112. package/node_modules/npm/docs/dockhand.js +341 -0
  113. package/node_modules/npm/docs/nav.yml +236 -0
  114. package/node_modules/npm/docs/output/commands/npm-access.html +240 -0
  115. package/node_modules/npm/docs/output/commands/npm-adduser.html +220 -0
  116. package/node_modules/npm/docs/output/commands/npm-audit.html +253 -0
  117. package/node_modules/npm/docs/output/commands/npm-bin.html +174 -0
  118. package/node_modules/npm/docs/output/commands/npm-bugs.html +194 -0
  119. package/node_modules/npm/docs/output/commands/npm-build.html +181 -0
  120. package/node_modules/npm/docs/output/commands/npm-bundle.html +170 -0
  121. package/node_modules/npm/docs/output/commands/npm-cache.html +230 -0
  122. package/node_modules/npm/docs/output/commands/npm-ci.html +205 -0
  123. package/node_modules/npm/docs/output/commands/npm-completion.html +185 -0
  124. package/node_modules/npm/docs/output/commands/npm-config.html +213 -0
  125. package/node_modules/npm/docs/output/commands/npm-dedupe.html +203 -0
  126. package/node_modules/npm/docs/output/commands/npm-deprecate.html +181 -0
  127. package/node_modules/npm/docs/output/commands/npm-dist-tag.html +232 -0
  128. package/node_modules/npm/docs/output/commands/npm-docs.html +195 -0
  129. package/node_modules/npm/docs/output/commands/npm-doctor.html +241 -0
  130. package/node_modules/npm/docs/output/commands/npm-edit.html +190 -0
  131. package/node_modules/npm/docs/output/commands/npm-explore.html +190 -0
  132. package/node_modules/npm/docs/output/commands/npm-fund.html +208 -0
  133. package/node_modules/npm/docs/output/commands/npm-help-search.html +185 -0
  134. package/node_modules/npm/docs/output/commands/npm-help.html +187 -0
  135. package/node_modules/npm/docs/output/commands/npm-hook.html +206 -0
  136. package/node_modules/npm/docs/output/commands/npm-init.html +209 -0
  137. package/node_modules/npm/docs/output/commands/npm-install-ci-test.html +173 -0
  138. package/node_modules/npm/docs/output/commands/npm-install-test.html +182 -0
  139. package/node_modules/npm/docs/output/commands/npm-install.html +582 -0
  140. package/node_modules/npm/docs/output/commands/npm-link.html +217 -0
  141. package/node_modules/npm/docs/output/commands/npm-logout.html +190 -0
  142. package/node_modules/npm/docs/output/commands/npm-ls.html +257 -0
  143. package/node_modules/npm/docs/output/commands/npm-org.html +193 -0
  144. package/node_modules/npm/docs/output/commands/npm-outdated.html +260 -0
  145. package/node_modules/npm/docs/output/commands/npm-owner.html +193 -0
  146. package/node_modules/npm/docs/output/commands/npm-pack.html +182 -0
  147. package/node_modules/npm/docs/output/commands/npm-ping.html +177 -0
  148. package/node_modules/npm/docs/output/commands/npm-prefix.html +178 -0
  149. package/node_modules/npm/docs/output/commands/npm-profile.html +235 -0
  150. package/node_modules/npm/docs/output/commands/npm-prune.html +188 -0
  151. package/node_modules/npm/docs/output/commands/npm-publish.html +232 -0
  152. package/node_modules/npm/docs/output/commands/npm-rebuild.html +173 -0
  153. package/node_modules/npm/docs/output/commands/npm-repo.html +181 -0
  154. package/node_modules/npm/docs/output/commands/npm-restart.html +193 -0
  155. package/node_modules/npm/docs/output/commands/npm-root.html +174 -0
  156. package/node_modules/npm/docs/output/commands/npm-run-script.html +226 -0
  157. package/node_modules/npm/docs/output/commands/npm-search.html +248 -0
  158. package/node_modules/npm/docs/output/commands/npm-shrinkwrap.html +181 -0
  159. package/node_modules/npm/docs/output/commands/npm-star.html +176 -0
  160. package/node_modules/npm/docs/output/commands/npm-stars.html +176 -0
  161. package/node_modules/npm/docs/output/commands/npm-start.html +178 -0
  162. package/node_modules/npm/docs/output/commands/npm-stop.html +174 -0
  163. package/node_modules/npm/docs/output/commands/npm-team.html +213 -0
  164. package/node_modules/npm/docs/output/commands/npm-test.html +176 -0
  165. package/node_modules/npm/docs/output/commands/npm-token.html +215 -0
  166. package/node_modules/npm/docs/output/commands/npm-uninstall.html +208 -0
  167. package/node_modules/npm/docs/output/commands/npm-unpublish.html +187 -0
  168. package/node_modules/npm/docs/output/commands/npm-update.html +252 -0
  169. package/node_modules/npm/docs/output/commands/npm-version.html +263 -0
  170. package/node_modules/npm/docs/output/commands/npm-view.html +235 -0
  171. package/node_modules/npm/docs/output/commands/npm-whoami.html +172 -0
  172. package/node_modules/npm/docs/output/commands/npm.html +290 -0
  173. package/node_modules/npm/docs/output/configuring-npm/folders.html +321 -0
  174. package/node_modules/npm/docs/output/configuring-npm/install.html +203 -0
  175. package/node_modules/npm/docs/output/configuring-npm/npmrc.html +227 -0
  176. package/node_modules/npm/docs/output/configuring-npm/package-json.html +827 -0
  177. package/node_modules/npm/docs/output/configuring-npm/package-lock-json.html +273 -0
  178. package/node_modules/npm/docs/output/configuring-npm/package-locks.html +310 -0
  179. package/node_modules/npm/docs/output/configuring-npm/shrinkwrap-json.html +181 -0
  180. package/node_modules/npm/docs/output/using-npm/config.html +1248 -0
  181. package/node_modules/npm/docs/output/using-npm/developers.html +356 -0
  182. package/node_modules/npm/docs/output/using-npm/orgs.html +236 -0
  183. package/node_modules/npm/docs/output/using-npm/registry.html +234 -0
  184. package/node_modules/npm/docs/output/using-npm/removal.html +200 -0
  185. package/node_modules/npm/docs/output/using-npm/scope.html +244 -0
  186. package/node_modules/npm/docs/output/using-npm/scripts.html +410 -0
  187. package/node_modules/npm/docs/output/using-npm/semver.html +521 -0
  188. package/node_modules/npm/docs/template.html +161 -0
  189. package/node_modules/npm/lib/help.js +2 -2
  190. package/node_modules/npm/man/man1/npm-README.1 +1 -1
  191. package/node_modules/npm/man/man1/npm-access.1 +1 -1
  192. package/node_modules/npm/man/man1/npm-adduser.1 +1 -7
  193. package/node_modules/npm/man/man1/npm-audit.1 +1 -1
  194. package/node_modules/npm/man/man1/npm-bin.1 +1 -1
  195. package/node_modules/npm/man/man1/npm-bugs.1 +1 -1
  196. package/node_modules/npm/man/man1/npm-build.1 +2 -2
  197. package/node_modules/npm/man/man1/npm-bundle.1 +1 -1
  198. package/node_modules/npm/man/man1/npm-cache.1 +1 -1
  199. package/node_modules/npm/man/man1/npm-ci.1 +1 -1
  200. package/node_modules/npm/man/man1/npm-completion.1 +1 -1
  201. package/node_modules/npm/man/man1/npm-config.1 +1 -1
  202. package/node_modules/npm/man/man1/npm-dedupe.1 +1 -1
  203. package/node_modules/npm/man/man1/npm-deprecate.1 +1 -1
  204. package/node_modules/npm/man/man1/npm-dist-tag.1 +1 -7
  205. package/node_modules/npm/man/man1/npm-docs.1 +1 -1
  206. package/node_modules/npm/man/man1/npm-doctor.1 +1 -1
  207. package/node_modules/npm/man/man1/npm-edit.1 +1 -1
  208. package/node_modules/npm/man/man1/npm-explore.1 +1 -7
  209. package/node_modules/npm/man/man1/npm-fund.1 +1 -1
  210. package/node_modules/npm/man/man1/npm-help-search.1 +1 -1
  211. package/node_modules/npm/man/man1/npm-help.1 +1 -1
  212. package/node_modules/npm/man/man1/npm-hook.1 +1 -1
  213. package/node_modules/npm/man/man1/npm-init.1 +1 -1
  214. package/node_modules/npm/man/man1/npm-install-ci-test.1 +2 -2
  215. package/node_modules/npm/man/man1/npm-install-test.1 +2 -2
  216. package/node_modules/npm/man/man1/npm-install.1 +1 -1
  217. package/node_modules/npm/man/man1/npm-link.1 +1 -1
  218. package/node_modules/npm/man/man1/npm-logout.1 +1 -1
  219. package/node_modules/npm/man/man1/npm-ls.1 +2 -2
  220. package/node_modules/npm/man/man1/npm-org.1 +1 -1
  221. package/node_modules/npm/man/man1/npm-outdated.1 +1 -1
  222. package/node_modules/npm/man/man1/npm-owner.1 +1 -3
  223. package/node_modules/npm/man/man1/npm-pack.1 +1 -1
  224. package/node_modules/npm/man/man1/npm-ping.1 +1 -1
  225. package/node_modules/npm/man/man1/npm-prefix.1 +1 -1
  226. package/node_modules/npm/man/man1/npm-profile.1 +1 -1
  227. package/node_modules/npm/man/man1/npm-prune.1 +1 -1
  228. package/node_modules/npm/man/man1/npm-publish.1 +5 -5
  229. package/node_modules/npm/man/man1/npm-rebuild.1 +1 -1
  230. package/node_modules/npm/man/man1/npm-repo.1 +1 -1
  231. package/node_modules/npm/man/man1/npm-restart.1 +1 -1
  232. package/node_modules/npm/man/man1/npm-root.1 +1 -1
  233. package/node_modules/npm/man/man1/npm-run-script.1 +1 -1
  234. package/node_modules/npm/man/man1/npm-search.1 +1 -1
  235. package/node_modules/npm/man/man1/npm-shrinkwrap.1 +1 -1
  236. package/node_modules/npm/man/man1/npm-star.1 +1 -1
  237. package/node_modules/npm/man/man1/npm-stars.1 +1 -1
  238. package/node_modules/npm/man/man1/npm-start.1 +1 -1
  239. package/node_modules/npm/man/man1/npm-stop.1 +1 -1
  240. package/node_modules/npm/man/man1/npm-team.1 +1 -1
  241. package/node_modules/npm/man/man1/npm-test.1 +1 -1
  242. package/node_modules/npm/man/man1/npm-token.1 +1 -1
  243. package/node_modules/npm/man/man1/npm-uninstall.1 +1 -1
  244. package/node_modules/npm/man/man1/npm-unpublish.1 +1 -1
  245. package/node_modules/npm/man/man1/npm-update.1 +1 -1
  246. package/node_modules/npm/man/man1/npm-version.1 +1 -1
  247. package/node_modules/npm/man/man1/npm-view.1 +1 -1
  248. package/node_modules/npm/man/man1/npm-whoami.1 +1 -1
  249. package/node_modules/npm/man/man1/npm.1 +2 -2
  250. package/node_modules/npm/man/man5/folders.5 +1 -1
  251. package/node_modules/npm/man/man5/install.5 +2 -2
  252. package/node_modules/npm/man/man5/npmrc.5 +1 -1
  253. package/node_modules/npm/man/man5/package-json.5 +1 -1
  254. package/node_modules/npm/man/man5/package-lock-json.5 +1 -1
  255. package/node_modules/npm/man/man5/package-locks.5 +1 -1
  256. package/node_modules/npm/man/man5/shrinkwrap-json.5 +2 -2
  257. package/node_modules/npm/man/man7/config.7 +1 -1
  258. package/node_modules/npm/man/man7/developers.7 +1 -1
  259. package/node_modules/npm/man/man7/orgs.7 +1 -1
  260. package/node_modules/npm/man/man7/registry.7 +1 -3
  261. package/node_modules/npm/man/man7/removal.7 +1 -1
  262. package/node_modules/npm/man/man7/scope.7 +3 -2
  263. package/node_modules/npm/man/man7/scripts.7 +1 -1
  264. package/node_modules/npm/man/man7/semver.7 +1 -1
  265. package/node_modules/npm/node_modules/@iarna/cli/LICENSE +14 -0
  266. package/node_modules/npm/node_modules/@iarna/cli/README.md +152 -0
  267. package/node_modules/npm/node_modules/@iarna/cli/app.js +109 -0
  268. package/node_modules/npm/node_modules/@iarna/cli/package.json +35 -0
  269. package/node_modules/npm/{docs → node_modules/are-we-there-yet/node_modules/readable-stream/node_modules/safe-buffer}/LICENSE +5 -6
  270. package/node_modules/npm/node_modules/are-we-there-yet/node_modules/readable-stream/node_modules/safe-buffer/README.md +584 -0
  271. package/node_modules/npm/node_modules/are-we-there-yet/node_modules/readable-stream/node_modules/safe-buffer/index.d.ts +187 -0
  272. package/node_modules/npm/node_modules/are-we-there-yet/node_modules/readable-stream/node_modules/safe-buffer/index.js +62 -0
  273. package/node_modules/npm/node_modules/are-we-there-yet/node_modules/readable-stream/node_modules/safe-buffer/package.json +37 -0
  274. package/node_modules/npm/node_modules/are-we-there-yet/node_modules/string_decoder/node_modules/safe-buffer/LICENSE +21 -0
  275. package/node_modules/npm/node_modules/are-we-there-yet/node_modules/string_decoder/node_modules/safe-buffer/README.md +584 -0
  276. package/node_modules/npm/node_modules/are-we-there-yet/node_modules/string_decoder/node_modules/safe-buffer/index.d.ts +187 -0
  277. package/node_modules/npm/node_modules/are-we-there-yet/node_modules/string_decoder/node_modules/safe-buffer/index.js +62 -0
  278. package/node_modules/npm/node_modules/are-we-there-yet/node_modules/string_decoder/node_modules/safe-buffer/package.json +37 -0
  279. package/node_modules/npm/node_modules/asn1/Jenkinsfile +65 -0
  280. package/node_modules/npm/node_modules/asn1/package.json +2 -2
  281. package/node_modules/npm/node_modules/aws4/.github/FUNDING.yml +3 -0
  282. package/node_modules/npm/node_modules/aws4/.travis.yml +5 -1
  283. package/node_modules/npm/node_modules/aws4/README.md +50 -390
  284. package/node_modules/npm/node_modules/aws4/aws4.js +63 -22
  285. package/node_modules/npm/node_modules/aws4/package.json +9 -63
  286. package/node_modules/npm/node_modules/balanced-match/.github/FUNDING.yml +2 -0
  287. package/node_modules/npm/node_modules/balanced-match/README.md +6 -0
  288. package/node_modules/npm/node_modules/balanced-match/index.js +3 -0
  289. package/node_modules/npm/node_modules/balanced-match/package.json +3 -4
  290. package/node_modules/npm/node_modules/bluebird/README.md +1 -1
  291. package/node_modules/npm/node_modules/bluebird/js/browser/bluebird.core.js +210 -120
  292. package/node_modules/npm/node_modules/bluebird/js/browser/bluebird.core.min.js +3 -3
  293. package/node_modules/npm/node_modules/bluebird/js/browser/bluebird.js +240 -128
  294. package/node_modules/npm/node_modules/bluebird/js/browser/bluebird.min.js +4 -4
  295. package/node_modules/npm/node_modules/bluebird/js/release/async.js +3 -48
  296. package/node_modules/npm/node_modules/bluebird/js/release/debuggability.js +102 -27
  297. package/node_modules/npm/node_modules/bluebird/js/release/join.js +4 -7
  298. package/node_modules/npm/node_modules/bluebird/js/release/map.js +10 -3
  299. package/node_modules/npm/node_modules/bluebird/js/release/promise.js +58 -28
  300. package/node_modules/npm/node_modules/bluebird/js/release/promise_array.js +1 -0
  301. package/node_modules/npm/node_modules/bluebird/js/release/reduce.js +16 -5
  302. package/node_modules/npm/node_modules/bluebird/js/release/settle.js +4 -0
  303. package/node_modules/npm/node_modules/bluebird/js/release/util.js +39 -7
  304. package/node_modules/npm/node_modules/bluebird/package.json +1 -1
  305. package/node_modules/npm/node_modules/cacache/CHANGELOG.md +4 -0
  306. package/node_modules/npm/node_modules/cacache/package.json +6 -7
  307. package/node_modules/npm/node_modules/combined-stream/lib/combined_stream.js +21 -2
  308. package/node_modules/npm/node_modules/combined-stream/package.json +1 -1
  309. package/node_modules/npm/node_modules/combined-stream/yarn.lock +17 -0
  310. package/node_modules/npm/node_modules/concat-stream/node_modules/readable-stream/node_modules/safe-buffer/LICENSE +21 -0
  311. package/node_modules/npm/node_modules/concat-stream/node_modules/readable-stream/node_modules/safe-buffer/README.md +584 -0
  312. package/node_modules/npm/node_modules/concat-stream/node_modules/readable-stream/node_modules/safe-buffer/index.d.ts +187 -0
  313. package/node_modules/npm/node_modules/concat-stream/node_modules/readable-stream/node_modules/safe-buffer/index.js +62 -0
  314. package/node_modules/npm/node_modules/concat-stream/node_modules/readable-stream/node_modules/safe-buffer/package.json +37 -0
  315. package/node_modules/npm/node_modules/concat-stream/node_modules/string_decoder/node_modules/safe-buffer/LICENSE +21 -0
  316. package/node_modules/npm/node_modules/concat-stream/node_modules/string_decoder/node_modules/safe-buffer/README.md +584 -0
  317. package/node_modules/npm/node_modules/concat-stream/node_modules/string_decoder/node_modules/safe-buffer/index.d.ts +187 -0
  318. package/node_modules/npm/node_modules/concat-stream/node_modules/string_decoder/node_modules/safe-buffer/index.js +62 -0
  319. package/node_modules/npm/node_modules/concat-stream/node_modules/string_decoder/node_modules/safe-buffer/package.json +37 -0
  320. package/node_modules/npm/node_modules/config-chain/package.json +5 -7
  321. package/node_modules/npm/node_modules/decode-uri-component/index.js +4 -4
  322. package/node_modules/npm/node_modules/decode-uri-component/license +4 -16
  323. package/node_modules/npm/node_modules/decode-uri-component/package.json +35 -35
  324. package/node_modules/npm/node_modules/decode-uri-component/readme.md +14 -1
  325. package/node_modules/npm/node_modules/dezalgo/package.json +12 -8
  326. package/node_modules/npm/node_modules/duplexify/node_modules/readable-stream/node_modules/safe-buffer/LICENSE +21 -0
  327. package/node_modules/npm/node_modules/duplexify/node_modules/readable-stream/node_modules/safe-buffer/README.md +584 -0
  328. package/node_modules/npm/node_modules/duplexify/node_modules/readable-stream/node_modules/safe-buffer/index.d.ts +187 -0
  329. package/node_modules/npm/node_modules/duplexify/node_modules/readable-stream/node_modules/safe-buffer/index.js +62 -0
  330. package/node_modules/npm/node_modules/duplexify/node_modules/readable-stream/node_modules/safe-buffer/package.json +37 -0
  331. package/node_modules/npm/node_modules/duplexify/node_modules/string_decoder/node_modules/safe-buffer/LICENSE +21 -0
  332. package/node_modules/npm/node_modules/duplexify/node_modules/string_decoder/node_modules/safe-buffer/README.md +584 -0
  333. package/node_modules/npm/node_modules/duplexify/node_modules/string_decoder/node_modules/safe-buffer/index.d.ts +187 -0
  334. package/node_modules/npm/node_modules/duplexify/node_modules/string_decoder/node_modules/safe-buffer/index.js +62 -0
  335. package/node_modules/npm/node_modules/duplexify/node_modules/string_decoder/node_modules/safe-buffer/package.json +37 -0
  336. package/node_modules/npm/node_modules/env-paths/index.d.ts +32 -0
  337. package/node_modules/npm/node_modules/env-paths/package.json +1 -1
  338. package/node_modules/npm/node_modules/env-paths/readme.md +44 -5
  339. package/node_modules/npm/node_modules/figgy-pudding/CHANGELOG.md +38 -33
  340. package/node_modules/npm/node_modules/figgy-pudding/README.md +10 -2
  341. package/node_modules/npm/node_modules/figgy-pudding/package.json +4 -8
  342. package/node_modules/npm/node_modules/filter-obj/index.js +17 -0
  343. package/node_modules/npm/node_modules/filter-obj/license +21 -0
  344. package/node_modules/npm/node_modules/filter-obj/package.json +37 -0
  345. package/node_modules/npm/node_modules/filter-obj/readme.md +41 -0
  346. package/node_modules/npm/node_modules/flush-write-stream/node_modules/readable-stream/node_modules/safe-buffer/LICENSE +21 -0
  347. package/node_modules/npm/node_modules/flush-write-stream/node_modules/readable-stream/node_modules/safe-buffer/README.md +584 -0
  348. package/node_modules/npm/node_modules/flush-write-stream/node_modules/readable-stream/node_modules/safe-buffer/index.d.ts +187 -0
  349. package/node_modules/npm/node_modules/flush-write-stream/node_modules/readable-stream/node_modules/safe-buffer/index.js +62 -0
  350. package/node_modules/npm/node_modules/flush-write-stream/node_modules/readable-stream/node_modules/safe-buffer/package.json +37 -0
  351. package/node_modules/npm/node_modules/flush-write-stream/node_modules/string_decoder/node_modules/safe-buffer/LICENSE +21 -0
  352. package/node_modules/npm/node_modules/flush-write-stream/node_modules/string_decoder/node_modules/safe-buffer/README.md +584 -0
  353. package/node_modules/npm/node_modules/flush-write-stream/node_modules/string_decoder/node_modules/safe-buffer/index.d.ts +187 -0
  354. package/node_modules/npm/node_modules/flush-write-stream/node_modules/string_decoder/node_modules/safe-buffer/index.js +62 -0
  355. package/node_modules/npm/node_modules/flush-write-stream/node_modules/string_decoder/node_modules/safe-buffer/package.json +37 -0
  356. package/node_modules/npm/node_modules/form-data/README.md +4 -4
  357. package/node_modules/npm/node_modules/form-data/package.json +2 -2
  358. package/node_modules/npm/node_modules/form-data/yarn.lock +2662 -0
  359. package/node_modules/npm/node_modules/from2/node_modules/readable-stream/node_modules/safe-buffer/LICENSE +21 -0
  360. package/node_modules/npm/node_modules/from2/node_modules/readable-stream/node_modules/safe-buffer/README.md +584 -0
  361. package/node_modules/npm/node_modules/from2/node_modules/readable-stream/node_modules/safe-buffer/index.d.ts +187 -0
  362. package/node_modules/npm/node_modules/from2/node_modules/readable-stream/node_modules/safe-buffer/index.js +62 -0
  363. package/node_modules/npm/node_modules/from2/node_modules/readable-stream/node_modules/safe-buffer/package.json +37 -0
  364. package/node_modules/npm/node_modules/from2/node_modules/string_decoder/node_modules/safe-buffer/LICENSE +21 -0
  365. package/node_modules/npm/node_modules/from2/node_modules/string_decoder/node_modules/safe-buffer/README.md +584 -0
  366. package/node_modules/npm/node_modules/from2/node_modules/string_decoder/node_modules/safe-buffer/index.d.ts +187 -0
  367. package/node_modules/npm/node_modules/from2/node_modules/string_decoder/node_modules/safe-buffer/index.js +62 -0
  368. package/node_modules/npm/node_modules/from2/node_modules/string_decoder/node_modules/safe-buffer/package.json +37 -0
  369. package/node_modules/npm/node_modules/fs-write-stream-atomic/node_modules/readable-stream/node_modules/safe-buffer/LICENSE +21 -0
  370. package/node_modules/npm/node_modules/fs-write-stream-atomic/node_modules/readable-stream/node_modules/safe-buffer/README.md +584 -0
  371. package/node_modules/npm/node_modules/fs-write-stream-atomic/node_modules/readable-stream/node_modules/safe-buffer/index.d.ts +187 -0
  372. package/node_modules/npm/node_modules/fs-write-stream-atomic/node_modules/readable-stream/node_modules/safe-buffer/index.js +62 -0
  373. package/node_modules/npm/node_modules/fs-write-stream-atomic/node_modules/readable-stream/node_modules/safe-buffer/package.json +37 -0
  374. package/node_modules/npm/node_modules/fs-write-stream-atomic/node_modules/string_decoder/node_modules/safe-buffer/LICENSE +21 -0
  375. package/node_modules/npm/node_modules/fs-write-stream-atomic/node_modules/string_decoder/node_modules/safe-buffer/README.md +584 -0
  376. package/node_modules/npm/node_modules/fs-write-stream-atomic/node_modules/string_decoder/node_modules/safe-buffer/index.d.ts +187 -0
  377. package/node_modules/npm/node_modules/fs-write-stream-atomic/node_modules/string_decoder/node_modules/safe-buffer/index.js +62 -0
  378. package/node_modules/npm/node_modules/fs-write-stream-atomic/node_modules/string_decoder/node_modules/safe-buffer/package.json +37 -0
  379. package/node_modules/npm/node_modules/glob/README.md +4 -1
  380. package/node_modules/npm/node_modules/glob/common.js +6 -8
  381. package/node_modules/npm/node_modules/glob/glob.js +8 -8
  382. package/node_modules/npm/node_modules/glob/node_modules/minimatch/LICENSE +15 -0
  383. package/node_modules/npm/node_modules/glob/node_modules/minimatch/README.md +230 -0
  384. package/node_modules/npm/node_modules/glob/node_modules/minimatch/minimatch.js +947 -0
  385. package/node_modules/npm/node_modules/glob/node_modules/minimatch/package.json +33 -0
  386. package/node_modules/npm/node_modules/glob/package.json +13 -4
  387. package/node_modules/npm/node_modules/glob/sync.js +10 -10
  388. package/node_modules/npm/node_modules/graceful-fs/LICENSE +1 -1
  389. package/node_modules/npm/node_modules/graceful-fs/README.md +11 -1
  390. package/node_modules/npm/node_modules/graceful-fs/clone.js +5 -1
  391. package/node_modules/npm/node_modules/graceful-fs/graceful-fs.js +132 -38
  392. package/node_modules/npm/node_modules/graceful-fs/package.json +4 -4
  393. package/node_modules/npm/node_modules/graceful-fs/polyfills.js +48 -35
  394. package/node_modules/npm/node_modules/is-cidr/README.md +6 -10
  395. package/node_modules/npm/node_modules/is-cidr/index.d.ts +31 -0
  396. package/node_modules/npm/node_modules/is-cidr/index.js +1 -0
  397. package/node_modules/npm/node_modules/is-cidr/package.json +12 -6
  398. package/node_modules/npm/node_modules/json-parse-even-better-errors/CHANGELOG.md +50 -0
  399. package/node_modules/npm/node_modules/json-parse-even-better-errors/LICENSE.md +25 -0
  400. package/node_modules/npm/node_modules/json-parse-even-better-errors/README.md +96 -0
  401. package/node_modules/npm/node_modules/json-parse-even-better-errors/index.js +121 -0
  402. package/node_modules/npm/node_modules/json-parse-even-better-errors/package.json +33 -0
  403. package/node_modules/npm/node_modules/lock-verify/README.md +8 -0
  404. package/node_modules/npm/node_modules/lock-verify/cli.js +17 -0
  405. package/node_modules/npm/node_modules/lock-verify/package.json +8 -12
  406. package/node_modules/npm/node_modules/meant/CHANGELOG.md +7 -0
  407. package/node_modules/npm/node_modules/meant/package.json +4 -1
  408. package/node_modules/npm/node_modules/minimatch/README.md +22 -1
  409. package/node_modules/npm/node_modules/minimatch/minimatch.js +93 -69
  410. package/node_modules/npm/node_modules/minimatch/package.json +6 -3
  411. package/node_modules/npm/node_modules/mkdirp/index.js +5 -2
  412. package/node_modules/npm/node_modules/mkdirp/package.json +3 -4
  413. package/node_modules/npm/node_modules/node-gyp/.github/ISSUE_TEMPLATE.md +27 -5
  414. package/node_modules/npm/node_modules/node-gyp/.github/workflows/Python_tests.yml +1 -1
  415. package/node_modules/npm/node_modules/node-gyp/CHANGELOG.md +14 -0
  416. package/node_modules/npm/node_modules/node-gyp/CONTRIBUTING.md +1 -1
  417. package/node_modules/npm/node_modules/node-gyp/README.md +3 -3
  418. package/node_modules/npm/node_modules/node-gyp/addon.gypi +22 -1
  419. package/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js +2 -3
  420. package/node_modules/npm/node_modules/node-gyp/macOS_Catalina.md +14 -12
  421. package/node_modules/npm/node_modules/node-gyp/package.json +1 -1
  422. package/node_modules/npm/node_modules/parallel-transform/node_modules/readable-stream/node_modules/safe-buffer/LICENSE +21 -0
  423. package/node_modules/npm/node_modules/parallel-transform/node_modules/readable-stream/node_modules/safe-buffer/README.md +584 -0
  424. package/node_modules/npm/node_modules/parallel-transform/node_modules/readable-stream/node_modules/safe-buffer/index.d.ts +187 -0
  425. package/node_modules/npm/node_modules/parallel-transform/node_modules/readable-stream/node_modules/safe-buffer/index.js +62 -0
  426. package/node_modules/npm/node_modules/parallel-transform/node_modules/readable-stream/node_modules/safe-buffer/package.json +37 -0
  427. package/node_modules/npm/node_modules/parallel-transform/node_modules/string_decoder/node_modules/safe-buffer/LICENSE +21 -0
  428. package/node_modules/npm/node_modules/parallel-transform/node_modules/string_decoder/node_modules/safe-buffer/README.md +584 -0
  429. package/node_modules/npm/node_modules/parallel-transform/node_modules/string_decoder/node_modules/safe-buffer/index.d.ts +187 -0
  430. package/node_modules/npm/node_modules/parallel-transform/node_modules/string_decoder/node_modules/safe-buffer/index.js +62 -0
  431. package/node_modules/npm/node_modules/parallel-transform/node_modules/string_decoder/node_modules/safe-buffer/package.json +37 -0
  432. package/node_modules/npm/node_modules/psl/.env +0 -0
  433. package/node_modules/npm/node_modules/psl/LICENSE +9 -0
  434. package/node_modules/npm/node_modules/psl/README.md +4 -6
  435. package/node_modules/npm/node_modules/psl/browserstack-logo.svg +90 -0
  436. package/node_modules/npm/node_modules/psl/data/rules.json +9376 -1
  437. package/node_modules/npm/node_modules/psl/dist/psl.js +9378 -3
  438. package/node_modules/npm/node_modules/psl/dist/psl.min.js +1 -1
  439. package/node_modules/npm/node_modules/psl/package.json +24 -23
  440. package/node_modules/npm/node_modules/qs/.editorconfig +14 -1
  441. package/node_modules/npm/node_modules/qs/.eslintrc +21 -3
  442. package/node_modules/npm/node_modules/qs/.github/FUNDING.yml +12 -0
  443. package/node_modules/npm/node_modules/qs/.nycrc +13 -0
  444. package/node_modules/npm/node_modules/qs/CHANGELOG.md +24 -0
  445. package/node_modules/npm/node_modules/qs/LICENSE.md +29 -0
  446. package/node_modules/npm/node_modules/qs/README.md +54 -19
  447. package/node_modules/npm/node_modules/qs/bower.json +21 -0
  448. package/node_modules/npm/node_modules/qs/component.json +15 -0
  449. package/node_modules/npm/node_modules/qs/dist/qs.js +35 -25
  450. package/node_modules/npm/node_modules/qs/lib/formats.js +1 -1
  451. package/node_modules/npm/node_modules/qs/lib/parse.js +6 -5
  452. package/node_modules/npm/node_modules/qs/lib/stringify.js +21 -14
  453. package/node_modules/npm/node_modules/qs/lib/utils.js +7 -5
  454. package/node_modules/npm/node_modules/qs/package.json +18 -16
  455. package/node_modules/npm/node_modules/qs/test/parse.js +79 -4
  456. package/node_modules/npm/node_modules/qs/test/stringify.js +45 -0
  457. package/node_modules/npm/node_modules/qs/test/utils.js +31 -0
  458. package/node_modules/npm/node_modules/query-string/index.d.ts +290 -9
  459. package/node_modules/npm/node_modules/query-string/index.js +154 -28
  460. package/node_modules/npm/node_modules/query-string/license +1 -1
  461. package/node_modules/npm/node_modules/query-string/package.json +9 -4
  462. package/node_modules/npm/node_modules/query-string/readme.md +275 -26
  463. package/node_modules/npm/node_modules/qw/LICENSE +0 -0
  464. package/node_modules/npm/node_modules/qw/README.md +0 -0
  465. package/node_modules/npm/node_modules/qw/package.json +1 -1
  466. package/node_modules/npm/node_modules/qw/qw.js +1 -0
  467. package/node_modules/npm/node_modules/read-package-json/CHANGELOG.md +10 -0
  468. package/node_modules/npm/node_modules/read-package-json/package.json +3 -6
  469. package/node_modules/npm/node_modules/read-package-json/read-json.js +2 -7
  470. package/node_modules/npm/node_modules/request/CHANGELOG.md +8 -0
  471. package/node_modules/npm/node_modules/request/README.md +81 -45
  472. package/node_modules/npm/node_modules/request/index.js +1 -1
  473. package/node_modules/npm/node_modules/request/lib/auth.js +1 -1
  474. package/node_modules/npm/node_modules/request/lib/getProxyFromURI.js +1 -1
  475. package/node_modules/npm/node_modules/request/lib/har.js +1 -1
  476. package/node_modules/npm/node_modules/request/package.json +6 -6
  477. package/node_modules/npm/node_modules/request/request.js +13 -11
  478. package/node_modules/npm/node_modules/safe-buffer/index.js +3 -0
  479. package/node_modules/npm/node_modules/safe-buffer/package.json +18 -4
  480. package/node_modules/npm/node_modules/sshpk/Jenkinsfile +86 -0
  481. package/node_modules/npm/node_modules/sshpk/README.md +116 -10
  482. package/node_modules/npm/node_modules/sshpk/bin/sshpk-conv +73 -32
  483. package/node_modules/npm/node_modules/sshpk/lib/certificate.js +33 -1
  484. package/node_modules/npm/node_modules/sshpk/lib/dhe.js +4 -21
  485. package/node_modules/npm/node_modules/sshpk/lib/ed-compat.js +1 -7
  486. package/node_modules/npm/node_modules/sshpk/lib/fingerprint.js +69 -11
  487. package/node_modules/npm/node_modules/sshpk/lib/formats/auto.js +18 -1
  488. package/node_modules/npm/node_modules/sshpk/lib/formats/openssh-cert.js +37 -8
  489. package/node_modules/npm/node_modules/sshpk/lib/formats/pem.js +107 -9
  490. package/node_modules/npm/node_modules/sshpk/lib/formats/pkcs8.js +23 -4
  491. package/node_modules/npm/node_modules/sshpk/lib/formats/putty.js +194 -0
  492. package/node_modules/npm/node_modules/sshpk/lib/formats/x509-pem.js +14 -4
  493. package/node_modules/npm/node_modules/sshpk/lib/formats/x509.js +28 -5
  494. package/node_modules/npm/node_modules/sshpk/lib/identity.js +87 -3
  495. package/node_modules/npm/node_modules/sshpk/lib/index.js +1 -0
  496. package/node_modules/npm/node_modules/sshpk/lib/key.js +30 -11
  497. package/node_modules/npm/node_modules/sshpk/lib/private-key.js +11 -17
  498. package/node_modules/npm/node_modules/sshpk/lib/utils.js +48 -33
  499. package/node_modules/npm/node_modules/sshpk/package.json +5 -5
  500. package/node_modules/npm/node_modules/stream-iterate/node_modules/readable-stream/node_modules/safe-buffer/LICENSE +21 -0
  501. package/node_modules/npm/node_modules/stream-iterate/node_modules/readable-stream/node_modules/safe-buffer/README.md +584 -0
  502. package/node_modules/npm/node_modules/stream-iterate/node_modules/readable-stream/node_modules/safe-buffer/index.d.ts +187 -0
  503. package/node_modules/npm/node_modules/stream-iterate/node_modules/readable-stream/node_modules/safe-buffer/index.js +62 -0
  504. package/node_modules/npm/node_modules/stream-iterate/node_modules/readable-stream/node_modules/safe-buffer/package.json +37 -0
  505. package/node_modules/npm/node_modules/stream-iterate/node_modules/string_decoder/node_modules/safe-buffer/LICENSE +21 -0
  506. package/node_modules/npm/node_modules/stream-iterate/node_modules/string_decoder/node_modules/safe-buffer/README.md +584 -0
  507. package/node_modules/npm/node_modules/stream-iterate/node_modules/string_decoder/node_modules/safe-buffer/index.d.ts +187 -0
  508. package/node_modules/npm/node_modules/stream-iterate/node_modules/string_decoder/node_modules/safe-buffer/index.js +62 -0
  509. package/node_modules/npm/node_modules/stream-iterate/node_modules/string_decoder/node_modules/safe-buffer/package.json +37 -0
  510. package/node_modules/npm/node_modules/through2/node_modules/readable-stream/node_modules/safe-buffer/LICENSE +21 -0
  511. package/node_modules/npm/node_modules/through2/node_modules/readable-stream/node_modules/safe-buffer/README.md +584 -0
  512. package/node_modules/npm/node_modules/through2/node_modules/readable-stream/node_modules/safe-buffer/index.d.ts +187 -0
  513. package/node_modules/npm/node_modules/through2/node_modules/readable-stream/node_modules/safe-buffer/index.js +62 -0
  514. package/node_modules/npm/node_modules/through2/node_modules/readable-stream/node_modules/safe-buffer/package.json +37 -0
  515. package/node_modules/npm/node_modules/through2/node_modules/string_decoder/node_modules/safe-buffer/LICENSE +21 -0
  516. package/node_modules/npm/node_modules/through2/node_modules/string_decoder/node_modules/safe-buffer/README.md +584 -0
  517. package/node_modules/npm/node_modules/through2/node_modules/string_decoder/node_modules/safe-buffer/index.d.ts +187 -0
  518. package/node_modules/npm/node_modules/through2/node_modules/string_decoder/node_modules/safe-buffer/index.js +62 -0
  519. package/node_modules/npm/node_modules/through2/node_modules/string_decoder/node_modules/safe-buffer/package.json +37 -0
  520. package/node_modules/npm/node_modules/tough-cookie/README.md +24 -4
  521. package/node_modules/npm/node_modules/tough-cookie/lib/cookie.js +54 -3
  522. package/node_modules/npm/node_modules/tough-cookie/lib/memstore.js +5 -0
  523. package/node_modules/npm/node_modules/tough-cookie/lib/store.js +4 -0
  524. package/node_modules/npm/node_modules/tough-cookie/lib/version.js +2 -0
  525. package/node_modules/npm/node_modules/{punycode → tough-cookie/node_modules/punycode}/LICENSE-MIT.txt +0 -0
  526. package/node_modules/npm/node_modules/{punycode → tough-cookie/node_modules/punycode}/README.md +9 -63
  527. package/node_modules/npm/node_modules/tough-cookie/node_modules/punycode/package.json +58 -0
  528. package/node_modules/npm/node_modules/tough-cookie/node_modules/punycode/punycode.es6.js +441 -0
  529. package/node_modules/npm/node_modules/tough-cookie/node_modules/punycode/punycode.js +440 -0
  530. package/node_modules/npm/node_modules/tough-cookie/package.json +6 -4
  531. package/node_modules/npm/node_modules/uri-js/README.md +3 -1
  532. package/node_modules/npm/node_modules/uri-js/dist/es5/uri.all.js +1 -1
  533. package/node_modules/npm/node_modules/uri-js/dist/es5/uri.all.min.js +1 -1
  534. package/node_modules/npm/node_modules/uri-js/package.json +2 -2
  535. package/node_modules/npm/node_modules/uri-js/yarn.lock +1263 -628
  536. package/node_modules/npm/node_modules/uuid/CHANGELOG.md +25 -18
  537. package/node_modules/npm/node_modules/uuid/README.md +27 -44
  538. package/node_modules/npm/node_modules/uuid/lib/bytesToUuid.js +10 -8
  539. package/node_modules/npm/node_modules/uuid/package.json +13 -8
  540. package/node_modules/npm/node_modules/uuid/v1.js +1 -1
  541. package/node_modules/npm/package.json +27 -23
  542. package/node_modules/npm/scripts/docs-build.js +15 -3
  543. package/node_modules/object-inspect/CHANGELOG.md +10 -0
  544. package/node_modules/object-inspect/index.js +10 -6
  545. package/node_modules/object-inspect/package.json +10 -7
  546. package/node_modules/punycode/README.md +7 -3
  547. package/node_modules/punycode/package.json +5 -5
  548. package/node_modules/punycode/punycode.es6.js +24 -21
  549. package/node_modules/punycode/punycode.js +24 -21
  550. package/package.json +1 -1
  551. package/node_modules/npm/.eslintrc +0 -3
  552. package/node_modules/npm/docs/content/using-npm/disputes.md +0 -137
  553. package/node_modules/npm/docs/gatsby-browser.js +0 -8
  554. package/node_modules/npm/docs/gatsby-config.js +0 -88
  555. package/node_modules/npm/docs/gatsby-node.js +0 -43
  556. package/node_modules/npm/docs/gatsby-ssr.js +0 -6
  557. package/node_modules/npm/docs/package-lock.json +0 -18301
  558. package/node_modules/npm/docs/package.json +0 -45
  559. package/node_modules/npm/docs/public/cli-commands/npm/index.html +0 -213
  560. package/node_modules/npm/docs/public/cli-commands/npm-access/index.html +0 -151
  561. package/node_modules/npm/docs/public/cli-commands/npm-adduser/index.html +0 -146
  562. package/node_modules/npm/docs/public/cli-commands/npm-audit/index.html +0 -168
  563. package/node_modules/npm/docs/public/cli-commands/npm-bin/index.html +0 -97
  564. package/node_modules/npm/docs/public/cli-commands/npm-bugs/index.html +0 -117
  565. package/node_modules/npm/docs/public/cli-commands/npm-build/index.html +0 -103
  566. package/node_modules/npm/docs/public/cli-commands/npm-bundle/index.html +0 -94
  567. package/node_modules/npm/docs/public/cli-commands/npm-cache/index.html +0 -148
  568. package/node_modules/npm/docs/public/cli-commands/npm-ci/index.html +0 -125
  569. package/node_modules/npm/docs/public/cli-commands/npm-completion/index.html +0 -107
  570. package/node_modules/npm/docs/public/cli-commands/npm-config/index.html +0 -131
  571. package/node_modules/npm/docs/public/cli-commands/npm-dedupe/index.html +0 -124
  572. package/node_modules/npm/docs/public/cli-commands/npm-deprecate/index.html +0 -103
  573. package/node_modules/npm/docs/public/cli-commands/npm-dist-tag/index.html +0 -152
  574. package/node_modules/npm/docs/public/cli-commands/npm-docs/index.html +0 -118
  575. package/node_modules/npm/docs/public/cli-commands/npm-doctor/index.html +0 -166
  576. package/node_modules/npm/docs/public/cli-commands/npm-edit/index.html +0 -113
  577. package/node_modules/npm/docs/public/cli-commands/npm-explore/index.html +0 -117
  578. package/node_modules/npm/docs/public/cli-commands/npm-fund/index.html +0 -131
  579. package/node_modules/npm/docs/public/cli-commands/npm-help/index.html +0 -110
  580. package/node_modules/npm/docs/public/cli-commands/npm-help-search/index.html +0 -108
  581. package/node_modules/npm/docs/public/cli-commands/npm-hook/index.html +0 -122
  582. package/node_modules/npm/docs/public/cli-commands/npm-init/index.html +0 -129
  583. package/node_modules/npm/docs/public/cli-commands/npm-install/index.html +0 -471
  584. package/node_modules/npm/docs/public/cli-commands/npm-install-ci-test/index.html +0 -96
  585. package/node_modules/npm/docs/public/cli-commands/npm-install-test/index.html +0 -105
  586. package/node_modules/npm/docs/public/cli-commands/npm-link/index.html +0 -137
  587. package/node_modules/npm/docs/public/cli-commands/npm-logout/index.html +0 -112
  588. package/node_modules/npm/docs/public/cli-commands/npm-ls/index.html +0 -179
  589. package/node_modules/npm/docs/public/cli-commands/npm-org/index.html +0 -110
  590. package/node_modules/npm/docs/public/cli-commands/npm-outdated/index.html +0 -181
  591. package/node_modules/npm/docs/public/cli-commands/npm-owner/index.html +0 -117
  592. package/node_modules/npm/docs/public/cli-commands/npm-pack/index.html +0 -105
  593. package/node_modules/npm/docs/public/cli-commands/npm-ping/index.html +0 -98
  594. package/node_modules/npm/docs/public/cli-commands/npm-prefix/index.html +0 -101
  595. package/node_modules/npm/docs/public/cli-commands/npm-profile/index.html +0 -151
  596. package/node_modules/npm/docs/public/cli-commands/npm-prune/index.html +0 -111
  597. package/node_modules/npm/docs/public/cli-commands/npm-publish/index.html +0 -143
  598. package/node_modules/npm/docs/public/cli-commands/npm-rebuild/index.html +0 -96
  599. package/node_modules/npm/docs/public/cli-commands/npm-repo/index.html +0 -104
  600. package/node_modules/npm/docs/public/cli-commands/npm-restart/index.html +0 -116
  601. package/node_modules/npm/docs/public/cli-commands/npm-root/index.html +0 -97
  602. package/node_modules/npm/docs/public/cli-commands/npm-run-script/index.html +0 -146
  603. package/node_modules/npm/docs/public/cli-commands/npm-search/index.html +0 -171
  604. package/node_modules/npm/docs/public/cli-commands/npm-shrinkwrap/index.html +0 -104
  605. package/node_modules/npm/docs/public/cli-commands/npm-star/index.html +0 -99
  606. package/node_modules/npm/docs/public/cli-commands/npm-stars/index.html +0 -99
  607. package/node_modules/npm/docs/public/cli-commands/npm-start/index.html +0 -101
  608. package/node_modules/npm/docs/public/cli-commands/npm-stop/index.html +0 -97
  609. package/node_modules/npm/docs/public/cli-commands/npm-team/index.html +0 -128
  610. package/node_modules/npm/docs/public/cli-commands/npm-test/index.html +0 -99
  611. package/node_modules/npm/docs/public/cli-commands/npm-token/index.html +0 -136
  612. package/node_modules/npm/docs/public/cli-commands/npm-uninstall/index.html +0 -121
  613. package/node_modules/npm/docs/public/cli-commands/npm-unpublish/index.html +0 -109
  614. package/node_modules/npm/docs/public/cli-commands/npm-update/index.html +0 -170
  615. package/node_modules/npm/docs/public/cli-commands/npm-version/index.html +0 -183
  616. package/node_modules/npm/docs/public/cli-commands/npm-view/index.html +0 -148
  617. package/node_modules/npm/docs/public/cli-commands/npm-whoami/index.html +0 -95
  618. package/node_modules/npm/docs/public/configuring-npm/folders/index.html +0 -243
  619. package/node_modules/npm/docs/public/configuring-npm/install/index.html +0 -126
  620. package/node_modules/npm/docs/public/configuring-npm/npmrc/index.html +0 -148
  621. package/node_modules/npm/docs/public/configuring-npm/package-json/index.html +0 -714
  622. package/node_modules/npm/docs/public/configuring-npm/package-lock-json/index.html +0 -189
  623. package/node_modules/npm/docs/public/configuring-npm/package-locks/index.html +0 -217
  624. package/node_modules/npm/docs/public/configuring-npm/shrinkwrap-json/index.html +0 -105
  625. package/node_modules/npm/docs/public/icons/icon-144x144.png +0 -0
  626. package/node_modules/npm/docs/public/icons/icon-192x192.png +0 -0
  627. package/node_modules/npm/docs/public/icons/icon-256x256.png +0 -0
  628. package/node_modules/npm/docs/public/icons/icon-384x384.png +0 -0
  629. package/node_modules/npm/docs/public/icons/icon-48x48.png +0 -0
  630. package/node_modules/npm/docs/public/icons/icon-512x512.png +0 -0
  631. package/node_modules/npm/docs/public/icons/icon-72x72.png +0 -0
  632. package/node_modules/npm/docs/public/icons/icon-96x96.png +0 -0
  633. package/node_modules/npm/docs/public/index.html +0 -131
  634. package/node_modules/npm/docs/public/static/d/2215187023.json +0 -1
  635. package/node_modules/npm/docs/public/static/d/2417117884.json +0 -1
  636. package/node_modules/npm/docs/public/static/network-icon-f659855f70bb0e12addd96250807c241.svg +0 -1
  637. package/node_modules/npm/docs/public/styles.e93b5499b63484750fba.css +0 -1
  638. package/node_modules/npm/docs/public/using-npm/config/index.html +0 -1164
  639. package/node_modules/npm/docs/public/using-npm/developers/index.html +0 -262
  640. package/node_modules/npm/docs/public/using-npm/disputes/index.html +0 -195
  641. package/node_modules/npm/docs/public/using-npm/orgs/index.html +0 -147
  642. package/node_modules/npm/docs/public/using-npm/registry/index.html +0 -159
  643. package/node_modules/npm/docs/public/using-npm/removal/index.html +0 -119
  644. package/node_modules/npm/docs/public/using-npm/scope/index.html +0 -162
  645. package/node_modules/npm/docs/public/using-npm/scripts/index.html +0 -326
  646. package/node_modules/npm/docs/public/using-npm/semver/index.html +0 -438
  647. package/node_modules/npm/docs/src/components/Accordion.js +0 -57
  648. package/node_modules/npm/docs/src/components/Button.js +0 -22
  649. package/node_modules/npm/docs/src/components/DocLinks.js +0 -72
  650. package/node_modules/npm/docs/src/components/FoundTypo.js +0 -23
  651. package/node_modules/npm/docs/src/components/MobileSidebar.js +0 -33
  652. package/node_modules/npm/docs/src/components/Sidebar.js +0 -30
  653. package/node_modules/npm/docs/src/components/home/DarkBlock.js +0 -40
  654. package/node_modules/npm/docs/src/components/home/FeatureCard.js +0 -39
  655. package/node_modules/npm/docs/src/components/home/Features.js +0 -83
  656. package/node_modules/npm/docs/src/components/home/Footer.js +0 -29
  657. package/node_modules/npm/docs/src/components/home/Terminal.js +0 -120
  658. package/node_modules/npm/docs/src/components/home/Windows.js +0 -73
  659. package/node_modules/npm/docs/src/components/home/cubes.js +0 -101
  660. package/node_modules/npm/docs/src/components/home/hero.js +0 -25
  661. package/node_modules/npm/docs/src/components/layout.js +0 -24
  662. package/node_modules/npm/docs/src/components/links.js +0 -50
  663. package/node_modules/npm/docs/src/components/navbar.js +0 -136
  664. package/node_modules/npm/docs/src/components/scripts.js +0 -27
  665. package/node_modules/npm/docs/src/components/seo.js +0 -88
  666. package/node_modules/npm/docs/src/images/background-boxes.svg +0 -2782
  667. package/node_modules/npm/docs/src/images/background-cubes.svg +0 -2767
  668. package/node_modules/npm/docs/src/images/background-rectangles.svg +0 -1
  669. package/node_modules/npm/docs/src/images/bracket.svg +0 -1
  670. package/node_modules/npm/docs/src/images/cli-logo.svg +0 -1
  671. package/node_modules/npm/docs/src/images/down-carrot.svg +0 -1
  672. package/node_modules/npm/docs/src/images/hamburger-close.svg +0 -1
  673. package/node_modules/npm/docs/src/images/hamburger.svg +0 -1
  674. package/node_modules/npm/docs/src/images/manager-icon.svg +0 -1
  675. package/node_modules/npm/docs/src/images/network-icon.svg +0 -1
  676. package/node_modules/npm/docs/src/images/npm-icon.png +0 -0
  677. package/node_modules/npm/docs/src/images/orange-cube.svg +0 -1
  678. package/node_modules/npm/docs/src/images/pink-gradient-cube.svg +0 -1
  679. package/node_modules/npm/docs/src/images/purple-cube.svg +0 -1
  680. package/node_modules/npm/docs/src/images/purple-gradient-cube.svg +0 -1
  681. package/node_modules/npm/docs/src/images/red-cube.svg +0 -1
  682. package/node_modules/npm/docs/src/images/right-shadow-box.svg +0 -2809
  683. package/node_modules/npm/docs/src/images/terminal-icon.svg +0 -1
  684. package/node_modules/npm/docs/src/images/test-icon.svg +0 -1
  685. package/node_modules/npm/docs/src/images/up-carrot.svg +0 -1
  686. package/node_modules/npm/docs/src/images/x.svg +0 -1
  687. package/node_modules/npm/docs/src/main.css +0 -167
  688. package/node_modules/npm/docs/src/pages/404.js +0 -12
  689. package/node_modules/npm/docs/src/pages/index.js +0 -16
  690. package/node_modules/npm/docs/src/templates/Page.js +0 -40
  691. package/node_modules/npm/docs/src/theme.js +0 -50
  692. package/node_modules/npm/man/man7/disputes.7 +0 -149
  693. package/node_modules/npm/node_modules/balanced-match/.npmignore +0 -5
  694. package/node_modules/npm/node_modules/combined-stream/lib/defer.js +0 -26
  695. package/node_modules/npm/node_modules/dezalgo/.travis.yml +0 -7
  696. package/node_modules/npm/node_modules/dezalgo/test/basic.js +0 -29
  697. package/node_modules/npm/node_modules/glob/changelog.md +0 -67
  698. package/node_modules/npm/node_modules/meant/.github/workflows/ci.yml +0 -20
  699. package/node_modules/npm/node_modules/meant/test.js +0 -11
  700. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/.travis.yml +0 -8
  701. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/LICENSE +0 -18
  702. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/example/parse.js +0 -2
  703. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/index.js +0 -249
  704. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/package.json +0 -45
  705. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/readme.markdown +0 -98
  706. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/test/all_bool.js +0 -32
  707. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/test/bool.js +0 -178
  708. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/test/dash.js +0 -31
  709. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/test/default_bool.js +0 -35
  710. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/test/dotted.js +0 -22
  711. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/test/kv_short.js +0 -16
  712. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/test/long.js +0 -31
  713. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/test/num.js +0 -36
  714. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/test/parse.js +0 -197
  715. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/test/parse_modified.js +0 -9
  716. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/test/proto.js +0 -60
  717. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/test/short.js +0 -67
  718. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/test/stop_early.js +0 -15
  719. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/test/unknown.js +0 -102
  720. package/node_modules/npm/node_modules/mkdirp/node_modules/minimist/test/whitespace.js +0 -8
  721. package/node_modules/npm/node_modules/psl/.eslintignore +0 -1
  722. package/node_modules/npm/node_modules/psl/.eslintrc +0 -11
  723. package/node_modules/npm/node_modules/psl/.travis.yml +0 -6
  724. package/node_modules/npm/node_modules/psl/karma.conf.js +0 -38
  725. package/node_modules/npm/node_modules/psl/yarn.lock +0 -4532
  726. package/node_modules/npm/node_modules/punycode/package.json +0 -60
  727. package/node_modules/npm/node_modules/punycode/punycode.js +0 -533
  728. package/node_modules/npm/node_modules/qs/.eslintignore +0 -1
  729. package/node_modules/npm/node_modules/qs/LICENSE +0 -28
  730. package/node_modules/npm/node_modules/qs/test/.eslintrc +0 -15
  731. package/node_modules/npm/node_modules/qw/README.md~ +0 -27
  732. package/node_modules/npm/node_modules/sshpk/.npmignore +0 -9
@@ -1,714 +0,0 @@
1
- <!DOCTYPE html><html><head><script>"use strict";!function(){var i=(window.location.pathname.match(/^(\/(?:ipfs|ipns)\/[^/]+)/)||[])[1]||"";window.__GATSBY_IPFS_PATH_PREFIX__=i}();</script><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="../../styles.e93b5499b63484750fba.css">code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.block-comment,.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#999}.token.punctuation{color:#ccc}.token.attr-name,.token.deleted,.token.namespace,.token.tag{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.function,.token.number{color:#f08d49}.token.class-name,.token.constant,.token.property,.token.symbol{color:#f8c555}.token.atrule,.token.builtin,.token.important,.token.keyword,.token.selector{color:#cc99cd}.token.attr-value,.token.char,.token.regex,.token.string,.token.variable{color:#7ec699}.token.entity,.token.operator,.token.url{color:#67cdcc}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}table{border-collapse:collapse;border-spacing:0}[hidden]{display:none}html{font-family:Poppins,sans-serif}*{box-sizing:border-box}li,p{font-size:15px;line-height:1.7;font-weight:300}p,ul{padding:10px 0}strong{font-weight:700;color:#c3f}li{list-style-type:disc;list-style-position:inside;padding:8px 0}.documentation h1{font-size:42px;font-weight:600;padding:30px 0 10px}.documentation h2{font-size:22px;font-weight:300}.documentation h3{color:#c3f;font-size:22px;padding:30px 0 5px;font-weight:500}.documentation h4{font-weight:600;padding:20px 0 5px}.documentation p{display:inline-block}:not(pre)>code[class*=language-],pre[class*=language-]{border-radius:4px;background-color:#413844;font-size:13px}:not(pre)>code[class*=language-text]{background-color:rgba(204,139,216,.1);color:#413844;padding:2px 6px;border-radius:0;font-size:14px;font-weight:700;border-radius:1px;display:inline-block}.documentation a,a>code[class*=language-text]{color:#fb3b49;font-weight:600}p>code[class*=language-text]{display:inline-block}.documentation h1:before{content:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 27 26'%3E%3Cdefs%3E%3ClinearGradient id='a' x1='18.13' x2='25.6' y1='13.48' y2='13.48' gradientUnits='userSpaceOnUse'%3E%3Cstop offset='0' stop-color='%23fb8817'/%3E%3Cstop offset='.37' stop-color='%23fb8719'/%3E%3Cstop offset='.51' stop-color='%23fa8420'/%3E%3Cstop offset='.61' stop-color='%23f9802c'/%3E%3Cstop offset='.69' stop-color='%23f7793d'/%3E%3Cstop offset='.76' stop-color='%23f47053'/%3E%3Cstop offset='.82' stop-color='%23f1656e'/%3E%3Cstop offset='.87' stop-color='%23ed578f'/%3E%3Cstop offset='.92' stop-color='%23e948b5'/%3E%3Cstop offset='.97' stop-color='%23e437de'/%3E%3Cstop offset='1' stop-color='%23e02aff'/%3E%3C/linearGradient%3E%3ClinearGradient id='b' x1='17.89' x2='25.84' y1='13.48' y2='13.48' gradientUnits='userSpaceOnUse'%3E%3Cstop offset='0' stop-color='%23fb8817'/%3E%3Cstop offset='1' stop-color='%23e02aff'/%3E%3C/linearGradient%3E%3ClinearGradient id='c' x1='1' x2='18.69' y1='17.84' y2='17.84' xlink:href='%23a'/%3E%3ClinearGradient id='d' x1='.76' x2='18.93' y1='17.84' y2='17.84' xlink:href='%23b'/%3E%3ClinearGradient id='e' x1='1' x2='20.48' y1='7.33' y2='7.33' xlink:href='%23a'/%3E%3ClinearGradient id='f' x1='.76' x2='20.72' y1='7.33' y2='7.33' xlink:href='%23b'/%3E%3C/defs%3E%3Cpath fill='url(%23a)' stroke='url(%23b)' stroke-miterlimit='10' stroke-width='.48' d='M18.53 24.24a.28.28 0 01-.34-.41L25 14.06l-5-11a.28.28 0 11.5-.23L25.58 14a.28.28 0 010 .28l-6.91 9.9a.28.28 0 01-.14.06z'/%3E%3Cpath fill='url(%23c)' stroke='url(%23d)' stroke-miterlimit='10' stroke-width='.48' d='M18.53 24.24a.28.28 0 01-.14 0l-12-1.15a.28.28 0 01-.23-.09L1 11.81a.28.28 0 11.5-.23l5.07 11L18 23.68 13 13a.28.28 0 11.5-.23l5.12 11.12a.28.28 0 01-.09.35z'/%3E%3Cpath fill='url(%23e)' stroke='url(%23f)' stroke-miterlimit='10' stroke-width='.48' d='M13.4 13.12a.25.25 0 01-.14 0L1.25 12a.28.28 0 01-.2-.44L8 1.64a.28.28 0 01.25-.12l12 1.18a.28.28 0 01.2.44L13.51 13a.25.25 0 01-.11.12z'/%3E%3C/svg%3E");position:relative;display:inline-block;padding-right:8px;top:3px;width:28px}.active-sidebar-link{background-color:#ffebff}.active-navbar-link{border-bottom:3px solid #c3f}.header-link-class{margin-left:-24px}.disabled-body{overflow:hidden}</style><meta name="generator" content="Gatsby 2.18.18"/><title data-react-helmet="true"></title><style data-styled="UihHA jAtLxz bCnUTx bAGJfc hJcdbU kOyZtC eCQAUi fsnHHg bXQeSB dsecBh iPgskl bNiGAM gJQTGP fMOzaj" data-styled-version="4.4.1">
2
- /* sc-component-id: links__NavLink-sc-19vgq0o-1 */
3
- .kOyZtC{font-weight:500;-webkit-text-decoration:none;text-decoration:none;-webkit-letter-spacing:.3px;-moz-letter-spacing:.3px;-ms-letter-spacing:.3px;letter-spacing:.3px;font-size:14px;color:#231f20;-webkit-transition:opacity .5s;transition:opacity .5s;margin:0 10px;} .kOyZtC:hover{opacity:.5;}
4
- /* sc-component-id: links__BasicNavLink-sc-19vgq0o-2 */
5
- .eCQAUi{font-weight:500;-webkit-text-decoration:none;text-decoration:none;-webkit-letter-spacing:.3px;-moz-letter-spacing:.3px;-ms-letter-spacing:.3px;letter-spacing:.3px;font-size:14px;color:#231f20;-webkit-transition:opacity .5s;transition:opacity .5s;margin:0 10px;} .eCQAUi:hover{opacity:.5;}
6
- /* sc-component-id: links__SidebarLink-sc-19vgq0o-3 */
7
- .iPgskl{font-weight:500;-webkit-text-decoration:none;text-decoration:none;-webkit-letter-spacing:.3px;-moz-letter-spacing:.3px;-ms-letter-spacing:.3px;letter-spacing:.3px;font-size:14px;color:#fb3b49;padding:10px;-webkit-transition:background-color .3s;transition:background-color .3s;} .iPgskl:hover{background-color:#ffebff;}
8
- /* sc-component-id: Accordion__SectionButton-i8yhwx-0 */
9
- .dsecBh{outline:none;background-color:transparent;cursor:pointer;color:red;border:none;font-size:18px;font-weight:bold;padding:5px 0;-webkit-transition:opacity .5s;transition:opacity .5s;} .dsecBh:after{background:center / contain no-repeat url(data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNi41IDEwIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6I2ZiM2I0OTt9PC9zdHlsZT48L2RlZnM+PHRpdGxlPnVwLWNhcnJvdDwvdGl0bGU+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNOC4yNS44NWExLjE1LDEuMTUsMCwwLDAtLjgxLjM0bC02LDZBMS4xNSwxLjE1LDAsMCwwLDMuMDYsOC44MUw4LjI1LDMuNjNsNS4xOSw1LjE5YTEuMTUsMS4xNSwwLDAsMCwxLjYzLTEuNjNsLTYtNkExLjE1LDEuMTUsMCwwLDAsOC4yNS44NVoiLz48L3N2Zz4=);content:'';height:11px;width:28px;display:inline-block;} .dsecBh:hover{opacity:.6;}
10
- /* sc-component-id: DocLinks__LinkDesc-sc-1vrw6od-0 */
11
- .bNiGAM{font-size:11px;line-height:1.5;text-transform:lowercase;display:block;font-weight:400;color:#767676;}
12
- /* sc-component-id: Sidebar__Container-gs0c67-0 */
13
- .bXQeSB{border-right:1px solid #86838333;padding:30px;height:100vh;display:none;width:380px;position:-webkit-sticky;position:sticky;overflow:scroll;padding-bottom:200px;top:54px;background-color:#ffffff;} @media screen and (min-width:48em){.bXQeSB{display:block;}}
14
- /* sc-component-id: navbar__Container-kjuegf-0 */
15
- .UihHA{width:100%;border-bottom:1px solid #86838333;position:-webkit-sticky;position:sticky;top:0;background-color:#ffffff;z-index:1;}
16
- /* sc-component-id: navbar__Inner-kjuegf-1 */
17
- .jAtLxz{border-top:3px solid;border-image:linear-gradient(139deg,#fb8817,#ff4b01,#c12127,#e02aff) 3;margin:auto;height:53px;padding:0 30px;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;}
18
- /* sc-component-id: navbar__Logo-kjuegf-2 */
19
- .bAGJfc{width:120px;padding:0px 5px;height:18px;vertical-align:middle;display:inline-block;-webkit-transition:opacity .5s;transition:opacity .5s;} .bAGJfc:hover{opacity:.8;}
20
- /* sc-component-id: navbar__Links-kjuegf-3 */
21
- .hJcdbU{display:none;} @media screen and (min-width:48em){.hJcdbU{display:block;margin-left:auto;}}
22
- /* sc-component-id: navbar__Heart-kjuegf-4 */
23
- .bCnUTx{font-size:15px;display:inline-block;}
24
- /* sc-component-id: navbar__Hamburger-kjuegf-5 */
25
- .fsnHHg{border:none;background:center no-repeat url(data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgMzUgMjMiPjxkZWZzPjxzdHlsZT4uY2xzLTF7ZmlsbDp1cmwoI2xpbmVhci1ncmFkaWVudCk7fS5jbHMtMntmaWxsOnVybCgjbGluZWFyLWdyYWRpZW50LTIpO30uY2xzLTN7ZmlsbDp1cmwoI2xpbmVhci1ncmFkaWVudC0zKTt9PC9zdHlsZT48bGluZWFyR3JhZGllbnQgaWQ9ImxpbmVhci1ncmFkaWVudCIgeTE9IjIiIHgyPSIzNSIgeTI9IjIiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiNmYjg4MTciLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNlMDJhZmYiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpZD0ibGluZWFyLWdyYWRpZW50LTIiIHkxPSIxMS41IiB5Mj0iMTEuNSIgeGxpbms6aHJlZj0iI2xpbmVhci1ncmFkaWVudCIvPjxsaW5lYXJHcmFkaWVudCBpZD0ibGluZWFyLWdyYWRpZW50LTMiIHkxPSIyMSIgeTI9IjIxIiB4bGluazpocmVmPSIjbGluZWFyLWdyYWRpZW50Ii8+PC9kZWZzPjx0aXRsZT5oYW1idXJnZXI8L3RpdGxlPjxyZWN0IGNsYXNzPSJjbHMtMSIgd2lkdGg9IjM1IiBoZWlnaHQ9IjQiIHJ4PSIyIiByeT0iMiIvPjxyZWN0IGNsYXNzPSJjbHMtMiIgeT0iOS41IiB3aWR0aD0iMzUiIGhlaWdodD0iNCIgcng9IjIiIHJ5PSIyIi8+PHJlY3QgY2xhc3M9ImNscy0zIiB5PSIxOSIgd2lkdGg9IjM1IiBoZWlnaHQ9IjQiIHJ4PSIyIiByeT0iMiIvPjwvc3ZnPg==);height:30px;width:30px;display:block;margin-left:auto;-webkit-transition:opacity .5s;transition:opacity .5s;cursor:pointer;} .fsnHHg:hover{opacity:.6;} @media screen and (min-width:48em){.fsnHHg{display:none;}}
26
- /* sc-component-id: FoundTypo__Container-sc-1e373sc-0 */
27
- .fMOzaj{margin:80px 0;border-top:1px solid black;padding:20px 0;}
28
- /* sc-component-id: Page__Content-sc-4b62ym-0 */
29
- .gJQTGP{max-width:760px;margin:auto;padding:0 30px 120px;}</style><link rel="icon" href="../../icons/icon-48x48.png?v=7a2e468321d0881d02a038e839dfc4a3"/><link rel="manifest" href="../../manifest.webmanifest"/><meta name="theme-color" content="#663399"/><link rel="apple-touch-icon" sizes="48x48" href="../../icons/icon-48x48.png?v=7a2e468321d0881d02a038e839dfc4a3"/><link rel="apple-touch-icon" sizes="72x72" href="../../icons/icon-72x72.png?v=7a2e468321d0881d02a038e839dfc4a3"/><link rel="apple-touch-icon" sizes="96x96" href="../../icons/icon-96x96.png?v=7a2e468321d0881d02a038e839dfc4a3"/><link rel="apple-touch-icon" sizes="144x144" href="../../icons/icon-144x144.png?v=7a2e468321d0881d02a038e839dfc4a3"/><link rel="apple-touch-icon" sizes="192x192" href="../../icons/icon-192x192.png?v=7a2e468321d0881d02a038e839dfc4a3"/><link rel="apple-touch-icon" sizes="256x256" href="../../icons/icon-256x256.png?v=7a2e468321d0881d02a038e839dfc4a3"/><link rel="apple-touch-icon" sizes="384x384" href="../../icons/icon-384x384.png?v=7a2e468321d0881d02a038e839dfc4a3"/><link rel="apple-touch-icon" sizes="512x512" href="../../icons/icon-512x512.png?v=7a2e468321d0881d02a038e839dfc4a3"/><link href="https://fonts.googleapis.com/css?family=Poppins|Inconsolata" rel="stylesheet"/><style type="text/css">
30
- .header-link-class.before {
31
- position: absolute;
32
- top: 0;
33
- left: 0;
34
- transform: translateX(-100%);
35
- padding-right: 4px;
36
- }
37
- .header-link-class.after {
38
- display: inline-block;
39
- padding-left: 4px;
40
- }
41
- h1 .header-link-class svg,
42
- h2 .header-link-class svg,
43
- h3 .header-link-class svg,
44
- h4 .header-link-class svg,
45
- h5 .header-link-class svg,
46
- h6 .header-link-class svg {
47
- visibility: hidden;
48
- }
49
- h1:hover .header-link-class svg,
50
- h2:hover .header-link-class svg,
51
- h3:hover .header-link-class svg,
52
- h4:hover .header-link-class svg,
53
- h5:hover .header-link-class svg,
54
- h6:hover .header-link-class svg,
55
- h1 .header-link-class:focus svg,
56
- h2 .header-link-class:focus svg,
57
- h3 .header-link-class:focus svg,
58
- h4 .header-link-class:focus svg,
59
- h5 .header-link-class:focus svg,
60
- h6 .header-link-class:focus svg {
61
- visibility: visible;
62
- }
63
- </style><script>
64
- document.addEventListener("DOMContentLoaded", function(event) {
65
- var hash = window.decodeURI(location.hash.replace('#', ''))
66
- if (hash !== '') {
67
- var element = document.getElementById(hash)
68
- if (element) {
69
- var offset = element.offsetTop
70
- // Wait for the browser to finish rendering before scrolling.
71
- setTimeout((function() {
72
- window.scrollTo(0, offset - 100)
73
- }), 0)
74
- }
75
- }
76
- })
77
- </script><link as="script" rel="preload" href="../../webpack-runtime-e00205099b1bddfaee91.js"/><link as="script" rel="preload" href="../../styles-de5e304580bcba768a01.js"/><link as="script" rel="preload" href="../../commons-4df35f6dbd2fdc25d817.js"/><link as="script" rel="preload" href="../../app-f19f1d7f30af98d21899.js"/><link as="script" rel="preload" href="../../component---src-templates-page-js-4e7e861bc681ee3dfaa8.js"/><link as="fetch" rel="preload" href="../../page-data/configuring-npm/package-json/page-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" role="group" id="gatsby-focus-wrapper"><style data-emotion-css="4cffwv">.css-4cffwv{box-sizing:border-box;margin:0;min-width:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}</style><div class="navbar__Container-kjuegf-0 UihHA css-4cffwv"><div class="navbar__Inner-kjuegf-1 jAtLxz css-4cffwv"><a href="../../"><style data-emotion-css="26z63x">.css-26z63x{box-sizing:border-box;margin:0;min-width:0;margin-left:4px;margin-right:24px;}</style><div class="navbar__Heart-kjuegf-4 bCnUTx css-26z63x">❤</div><style data-emotion-css="9taffg">.css-9taffg{box-sizing:border-box;margin:0;min-width:0;max-width:100%;height:auto;}</style><img src="data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDcgMTciPjxkZWZzPjxzdHlsZT4uY2xzLTF7ZmlsbDojMjMxZjIwO30uY2xzLTJ7ZmlsbDpub25lO308L3N0eWxlPjwvZGVmcz48dGl0bGU+Y2xpLWxvZ288L3RpdGxlPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTS41NCwxMy40aDYuNFYzLjY3aDMuMlYxMy40aDMuMlYuNDJILjU0Wk0zMS4yNi40MnYxM2g2LjRWMy42N2gzLjJWMTMuNGgzLjJWMy42N2gzLjE5VjEzLjRoMy4yVi40MlptLTksMy4yNWgzLjJ2Ni40OUgyMi4zWm0tNi40LDEzaDYuNFYxMy40aDYuNFYuNDJIMTUuOVoiLz48cmVjdCBjbGFzcz0iY2xzLTIiIHg9IjAuNTQiIHk9IjAuNDIiIHdpZHRoPSI0OS45MSIgaGVpZ2h0PSIxNi4yMiIvPjxwb2x5Z29uIGNsYXNzPSJjbHMtMSIgcG9pbnRzPSI2NS41OCAzLjU2IDY1LjU4IDkuODYgNzEuNjYgOS44NiA3MS42NiAxMy4wMiA2NS40NCAxMy4wMiA1OS4yIDEzLjA0IDU5LjIyIDAuNDEgNzEuNjYgMC40MSA3MS42NiAzLjU0IDY1LjU4IDMuNTYiLz48cG9seWdvbiBjbGFzcz0iY2xzLTEiIHBvaW50cz0iODAuNjIgMTAuMjMgODAuNjIgMC4zNiA3NC4yMyAwLjM2IDc0LjIzIDEzLjMgNzYuOTIgMTMuMyA4MC42MiAxMy4zIDg2LjQ3IDEzLjMgODYuNDcgMTAuMjMgODAuNjIgMTAuMjMiLz48cmVjdCBjbGFzcz0iY2xzLTEiIHg9IjEwMS4zMiIgeT0iOC4zNyIgd2lkdGg9IjEuOTkiIGhlaWdodD0iOC4yOSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTE0LjgzIC04OS43OSkgcm90YXRlKDkwKSIvPjxyZWN0IGNsYXNzPSJjbHMtMSIgeD0iODguMzMiIHk9IjAuMzYiIHdpZHRoPSI2LjM5IiBoZWlnaHQ9IjEyLjk0Ii8+PC9zdmc+" class="navbar__Logo-kjuegf-2 bAGJfc css-9taffg"/></a><ul class="navbar__Links-kjuegf-3 hJcdbU"><a class="links__NavLink-sc-19vgq0o-1 kOyZtC" href="../../cli-commands/npm/index.html">docs</a><a href="https://www.npmjs.com/" class="links__BasicNavLink-sc-19vgq0o-2 eCQAUi">npmjs.org</a></ul><button class="navbar__Hamburger-kjuegf-5 fsnHHg"></button></div></div><style data-emotion-css="4cffwv">.css-4cffwv{box-sizing:border-box;margin:0;min-width:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}</style><div class="css-4cffwv"><nav class="Sidebar__Container-gs0c67-0 bXQeSB sidebar"><div><button class="Accordion__SectionButton-i8yhwx-0 dsecBh">cli-commands</button><div><style data-emotion-css="l3rx45">.css-l3rx45{box-sizing:border-box;margin:0;min-width:0;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}</style><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm">npm<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">javascript package manager</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-access">npm access<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Set access level on published packages</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-audit">npm audit<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Run a security audit</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-bin">npm bin<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Display npm bin folder</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-bugs">npm bugs<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Bugs for a package in a web browser maybe</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-build">npm build<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Build a package</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-bundle">npm bundle<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">REMOVED</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-cache">npm cache<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Manipulates packages cache</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-ci">npm ci<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Install a project with a clean slate</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-completion">npm completion<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Tab Completion for npm</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-config">npm config<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Manage the npm configuration files</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-dedupe">npm dedupe<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Reduce duplication</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-deprecate">npm deprecate<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Deprecate a version of a package</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-docs">npm docs<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Docs for a package in a web browser maybe</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-doctor">npm doctor<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Check your environments</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-edit">npm edit<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Edit an installed package</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-fund">npm fund<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Retrieve funding information</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-help">npm help<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Get help on npm</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-help-search">npm help-search<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Search npm help documentation</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-hook">npm hook<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Manage registry hooks</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-init">npm init<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">create a package.json file</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-install">npm install<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Install a package</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-install-ci-test">npm install-ci-test<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Install a project with a clean slate and run tests</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-install-test">npm install-test<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Install package(s) and run tests</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-link">npm link<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Symlink a package folder</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-logout">npm logout<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Log out of the registry</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-ls">npm ls<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">List installed packages</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-org">npm org<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Manage orgs</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-outdated">npm outdated<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Check for outdated packages</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-owner">npm owner<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Manage package owners</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-pack">npm pack<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Create a tarball from a package</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-ping">npm ping<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Ping npm registry</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-prefix">npm prefix<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Display prefix</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-profile">npm profile<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Change settings on your registry profile</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-prune">npm prune<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Remove extraneous packages</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-publish">npm publish<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Publish a package</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-rebuild">npm rebuild<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Rebuild a package</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-repo">npm repo<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Open package repository page in the browser</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-restart">npm restart<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Restart a package</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-root">npm root<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Display npm root</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-run-script">npm run-script<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Run arbitrary package scripts</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-search">npm search<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Search for packages</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-shrinkwrap">npm shrinkwrap<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Lock down dependency versions for publication</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-star">npm star<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Mark your favorite packages</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-stars">npm stars<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">View packages marked as favorites</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-start">npm start<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Start a package</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-stop">npm stop<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Stop a package</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-team">npm team<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Manage organization teams and team memberships</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-test">npm test<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Test a package</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-token">npm token<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Manage your authentication tokens</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-uninstall">npm uninstall<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Remove a package</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-unpublish">npm unpublish<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Remove a package from the registry</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-update">npm update<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Update a package</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-version">npm version<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Bump a package version</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-view">npm view<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">View registry info</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../cli-commands/npm-whoami">npm whoami<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Display npm username</span></a></div></div></div><div><button class="Accordion__SectionButton-i8yhwx-0 dsecBh">configuring-npm</button><div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../configuring-npm/folders">folders<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Folder Structures Used by npm</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../configuring-npm/install">install<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Download and install node and npm</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../configuring-npm/npmrc">npmrc<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">The npm config files</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../configuring-npm/package-lock-json">package-lock.json<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">A manifestation of the manifest</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../configuring-npm/package-locks">package-locks<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">An explanation of npm lockfiles</span></a></div><div class="css-l3rx45"><a aria-current="page" class="links__SidebarLink-sc-19vgq0o-3 iPgskl active-sidebar-link" href="../../configuring-npm/package-json">package.json<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Specifics of npm&#x27;s package.json handling</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../configuring-npm/shrinkwrap-json">shrinkwrap.json<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">A publishable lockfile</span></a></div></div></div><div><button class="Accordion__SectionButton-i8yhwx-0 dsecBh">using-npm</button><div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../using-npm/config">config<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">More than you probably want to know about npm configuration</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../using-npm/developers">developers<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Developer Guide</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../using-npm/disputes">disputes<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Handling Module Name Disputes</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../using-npm/orgs">orgs<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Working with Teams &amp; Orgs</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../using-npm/registry">registry<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">The JavaScript Package Registry</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../using-npm/removal">removal<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Cleaning the Slate</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../using-npm/scope">scope<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">Scoped packages</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../using-npm/scripts">scripts<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">How npm handles the &quot;scripts&quot; field</span></a></div><div class="css-l3rx45"><a class="links__SidebarLink-sc-19vgq0o-3 iPgskl" href="../../using-npm/semver">semver<span class="DocLinks__LinkDesc-sc-1vrw6od-0 bNiGAM">The semantic versioner for npm</span></a></div></div></div></nav><style data-emotion-css="16vu25q">.css-16vu25q{box-sizing:border-box;margin:0;min-width:0;width:100%;}</style><div class="css-16vu25q"><div class="Page__Content-sc-4b62ym-0 gJQTGP documentation"><div><h1 id="packagejson5" style="position:relative;"><a href="#packagejson5" aria-label="packagejson5 permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>package.json</h1>
78
- <h2 id="specifics-of-npms-packagejson-handling" style="position:relative;"><a href="#specifics-of-npms-packagejson-handling" aria-label="specifics of npms packagejson handling permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Specifics of npm's package.json handling</h2>
79
- <h3 id="description" style="position:relative;"><a href="#description" aria-label="description permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Description</h3>
80
- <p>This document is all you need to know about what's required in your package.json
81
- file. It must be actual JSON, not just a JavaScript object literal.</p>
82
- <p>A lot of the behavior described in this document is affected by the config
83
- settings described in <a href="../../using-npm/config"><code class="language-text">config</code></a>.</p>
84
- <h3 id="name" style="position:relative;"><a href="#name" aria-label="name permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>name</h3>
85
- <p>If you plan to publish your package, the <em>most</em> important things in your
86
- package.json are the name and version fields as they will be required. The name
87
- and version together form an identifier that is assumed to be completely unique.
88
- Changes to the package should come along with changes to the version. If you don't
89
- plan to publish your package, the name and version fields are optional.</p>
90
- <p>The name is what your thing is called.</p>
91
- <p>Some rules:</p>
92
- <ul>
93
- <li>The name must be less than or equal to 214 characters. This includes the scope for
94
- scoped packages.</li>
95
- <li>The names of scoped packages can begin with a dot or an underscore. This is not permitted without a scope.</li>
96
- <li>New packages must not have uppercase letters in the name.</li>
97
- <li>The name ends up being part of a URL, an argument on the command line, and a
98
- folder name. Therefore, the name can't contain any non-URL-safe characters.</li>
99
- </ul>
100
- <p>Some tips:</p>
101
- <ul>
102
- <li>Don't use the same name as a core Node module.</li>
103
- <li>Don't put "js" or "node" in the name. It's assumed that it's js, since you're
104
- writing a package.json file, and you can specify the engine using the "engines"
105
- field. (See below.)</li>
106
- <li>The name will probably be passed as an argument to require(), so it should
107
- be something short, but also reasonably descriptive.</li>
108
- <li>You may want to check the npm registry to see if there's something by that name
109
- already, before you get too attached to it. <a href="https://www.npmjs.com/">https://www.npmjs.com/</a></li>
110
- </ul>
111
- <p>A name can be optionally prefixed by a scope, e.g. <code class="language-text">@myorg/mypackage</code>. See
112
- <a href="../../using-npm/scope"><code class="language-text">scope</code></a> for more detail.</p>
113
- <h3 id="version" style="position:relative;"><a href="#version" aria-label="version permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>version</h3>
114
- <p>If you plan to publish your package, the <em>most</em> important things in your
115
- package.json are the name and version fields as they will be required. The name
116
- and version together form an identifier that is assumed to be completely unique.
117
- Changes to the package should come along with changes to the version. If you don't
118
- plan to publish your package, the name and version fields are optional.</p>
119
- <p>Version must be parseable by
120
- <a href="https://github.com/isaacs/node-semver">node-semver</a>, which is bundled
121
- with npm as a dependency. (<code class="language-text">npm install semver</code> to use it yourself.)</p>
122
- <p>More on version numbers and ranges at <a href="../../using-npm/semver">semver</a>.</p>
123
- <h3 id="description-1" style="position:relative;"><a href="#description-1" aria-label="description 1 permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>description</h3>
124
- <p>Put a description in it. It's a string. This helps people discover your
125
- package, as it's listed in <code class="language-text">npm search</code>.</p>
126
- <h3 id="keywords" style="position:relative;"><a href="#keywords" aria-label="keywords permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>keywords</h3>
127
- <p>Put keywords in it. It's an array of strings. This helps people
128
- discover your package as it's listed in <code class="language-text">npm search</code>.</p>
129
- <h3 id="homepage" style="position:relative;"><a href="#homepage" aria-label="homepage permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>homepage</h3>
130
- <p>The url to the project homepage.</p>
131
- <p>Example:</p>
132
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token property">"homepage"</span><span class="token operator">:</span> <span class="token string">"https://github.com/owner/project#readme"</span></code></pre></div>
133
- <h3 id="bugs" style="position:relative;"><a href="#bugs" aria-label="bugs permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>bugs</h3>
134
- <p>The url to your project's issue tracker and / or the email address to which
135
- issues should be reported. These are helpful for people who encounter issues
136
- with your package.</p>
137
- <p>It should look like this:</p>
138
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span> <span class="token property">"url"</span> <span class="token operator">:</span> <span class="token string">"https://github.com/owner/project/issues"</span>
139
- <span class="token punctuation">,</span> <span class="token property">"email"</span> <span class="token operator">:</span> <span class="token string">"project@hostname.com"</span>
140
- <span class="token punctuation">}</span></code></pre></div>
141
- <p>You can specify either one or both values. If you want to provide only a url,
142
- you can specify the value for "bugs" as a simple string instead of an object.</p>
143
- <p>If a url is provided, it will be used by the <code class="language-text">npm bugs</code> command.</p>
144
- <h3 id="license" style="position:relative;"><a href="#license" aria-label="license permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>license</h3>
145
- <p>You should specify a license for your package so that people know how they are
146
- permitted to use it, and any restrictions you're placing on it.</p>
147
- <p>If you're using a common license such as BSD-2-Clause or MIT, add a
148
- current SPDX license identifier for the license you're using, like this:</p>
149
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span> <span class="token property">"license"</span> <span class="token operator">:</span> <span class="token string">"BSD-3-Clause"</span> <span class="token punctuation">}</span></code></pre></div>
150
- <p>You can check <a href="https://spdx.org/licenses/">the full list of SPDX license IDs</a>.
151
- Ideally you should pick one that is
152
- <a href="https://opensource.org/licenses/alphabetical">OSI</a> approved.</p>
153
- <p>If your package is licensed under multiple common licenses, use an <a href="https://www.npmjs.com/package/spdx">SPDX license
154
- expression syntax version 2.0 string</a>, like this:</p>
155
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span> <span class="token property">"license"</span> <span class="token operator">:</span> <span class="token string">"(ISC OR GPL-3.0)"</span> <span class="token punctuation">}</span></code></pre></div>
156
- <p>If you are using a license that hasn't been assigned an SPDX identifier, or if
157
- you are using a custom license, use a string value like this one:</p>
158
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span> <span class="token property">"license"</span> <span class="token operator">:</span> <span class="token string">"SEE LICENSE IN &lt;filename>"</span> <span class="token punctuation">}</span></code></pre></div>
159
- <p>Then include a file named <code class="language-text">&lt;filename&gt;</code> at the top level of the package.</p>
160
- <p>Some old packages used license objects or a "licenses" property containing an
161
- array of license objects:</p>
162
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token comment">// Not valid metadata</span>
163
- <span class="token punctuation">{</span> <span class="token property">"license"</span> <span class="token operator">:</span>
164
- <span class="token punctuation">{</span> <span class="token property">"type"</span> <span class="token operator">:</span> <span class="token string">"ISC"</span>
165
- <span class="token punctuation">,</span> <span class="token property">"url"</span> <span class="token operator">:</span> <span class="token string">"https://opensource.org/licenses/ISC"</span>
166
- <span class="token punctuation">}</span>
167
- <span class="token punctuation">}</span>
168
-
169
- <span class="token comment">// Not valid metadata</span>
170
- <span class="token punctuation">{</span> <span class="token property">"licenses"</span> <span class="token operator">:</span>
171
- <span class="token punctuation">[</span>
172
- <span class="token punctuation">{</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"MIT"</span>
173
- <span class="token punctuation">,</span> <span class="token property">"url"</span><span class="token operator">:</span> <span class="token string">"https://www.opensource.org/licenses/mit-license.php"</span>
174
- <span class="token punctuation">}</span>
175
- <span class="token punctuation">,</span> <span class="token punctuation">{</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"Apache-2.0"</span>
176
- <span class="token punctuation">,</span> <span class="token property">"url"</span><span class="token operator">:</span> <span class="token string">"https://opensource.org/licenses/apache2.0.php"</span>
177
- <span class="token punctuation">}</span>
178
- <span class="token punctuation">]</span>
179
- <span class="token punctuation">}</span></code></pre></div>
180
- <p>Those styles are now deprecated. Instead, use SPDX expressions, like this:</p>
181
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span> <span class="token property">"license"</span><span class="token operator">:</span> <span class="token string">"ISC"</span> <span class="token punctuation">}</span>
182
-
183
- <span class="token punctuation">{</span> <span class="token property">"license"</span><span class="token operator">:</span> <span class="token string">"(MIT OR Apache-2.0)"</span> <span class="token punctuation">}</span></code></pre></div>
184
- <p>Finally, if you do not wish to grant others the right to use a private or
185
- unpublished package under any terms:</p>
186
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span> <span class="token property">"license"</span><span class="token operator">:</span> <span class="token string">"UNLICENSED"</span> <span class="token punctuation">}</span></code></pre></div>
187
- <p>Consider also setting <code class="language-text">&quot;private&quot;: true</code> to prevent accidental publication.</p>
188
- <h3 id="people-fields-author-contributors" style="position:relative;"><a href="#people-fields-author-contributors" aria-label="people fields author contributors permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>people fields: author, contributors</h3>
189
- <p>The "author" is one person. "contributors" is an array of people. A "person"
190
- is an object with a "name" field and optionally "url" and "email", like this:</p>
191
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span> <span class="token property">"name"</span> <span class="token operator">:</span> <span class="token string">"Barney Rubble"</span>
192
- <span class="token punctuation">,</span> <span class="token property">"email"</span> <span class="token operator">:</span> <span class="token string">"b@rubble.com"</span>
193
- <span class="token punctuation">,</span> <span class="token property">"url"</span> <span class="token operator">:</span> <span class="token string">"http://barnyrubble.tumblr.com/"</span>
194
- <span class="token punctuation">}</span></code></pre></div>
195
- <p>Or you can shorten that all into a single string, and npm will parse it for you:</p>
196
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token string">"Barney Rubble &lt;b@rubble.com> (http://barnyrubble.tumblr.com/)"</span></code></pre></div>
197
- <p>Both email and url are optional either way.</p>
198
- <p>npm also sets a top-level "maintainers" field with your npm user info.</p>
199
- <h3 id="funding" style="position:relative;"><a href="#funding" aria-label="funding permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>funding</h3>
200
- <p>You can specify an object containing an URL that provides up-to-date
201
- information about ways to help fund development of your package, or
202
- a string URL, or an array of these:</p>
203
- <div class="gatsby-highlight" data-language="text"><pre class="language-text"><code class="language-text">&quot;funding&quot;: {
204
- &quot;type&quot; : &quot;individual&quot;,
205
- &quot;url&quot; : &quot;http://example.com/donate&quot;
206
- }
207
-
208
- &quot;funding&quot;: {
209
- &quot;type&quot; : &quot;patreon&quot;,
210
- &quot;url&quot; : &quot;https://www.patreon.com/my-account&quot;
211
- }
212
-
213
- &quot;funding&quot;: &quot;http://example.com/donate&quot;
214
-
215
- &quot;funding&quot;: [
216
- {
217
- &quot;type&quot; : &quot;individual&quot;,
218
- &quot;url&quot; : &quot;http://example.com/donate&quot;
219
- },
220
- &quot;http://example.com/donateAlso&quot;,
221
- {
222
- &quot;type&quot; : &quot;patreon&quot;,
223
- &quot;url&quot; : &quot;https://www.patreon.com/my-account&quot;
224
- }
225
- ]</code></pre></div>
226
- <p>Users can use the <code class="language-text">npm fund</code> subcommand to list the <code class="language-text">funding</code> URLs of all
227
- dependencies of their project, direct and indirect. A shortcut to visit each
228
- funding url is also available when providing the project name such as:
229
- <code class="language-text">npm fund &lt;projectname&gt;</code> (when there are multiple URLs, the first one will be
230
- visited)</p>
231
- <h3 id="files" style="position:relative;"><a href="#files" aria-label="files permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>files</h3>
232
- <p>The optional <code class="language-text">files</code> field is an array of file patterns that describes
233
- the entries to be included when your package is installed as a
234
- dependency. File patterns follow a similar syntax to <code class="language-text">.gitignore</code>, but
235
- reversed: including a file, directory, or glob pattern (<code class="language-text">*</code>, <code class="language-text">**/*</code>, and such)
236
- will make it so that file is included in the tarball when it's packed. Omitting
237
- the field will make it default to <code class="language-text">[&quot;*&quot;]</code>, which means it will include all files.</p>
238
- <p>Some special files and directories are also included or excluded regardless of
239
- whether they exist in the <code class="language-text">files</code> array (see below).</p>
240
- <p>You can also provide a <code class="language-text">.npmignore</code> file in the root of your package or
241
- in subdirectories, which will keep files from being included. At the
242
- root of your package it will not override the "files" field, but in
243
- subdirectories it will. The <code class="language-text">.npmignore</code> file works just like a
244
- <code class="language-text">.gitignore</code>. If there is a <code class="language-text">.gitignore</code> file, and <code class="language-text">.npmignore</code> is
245
- missing, <code class="language-text">.gitignore</code>'s contents will be used instead.</p>
246
- <p>Files included with the "package.json#files" field <em>cannot</em> be excluded
247
- through <code class="language-text">.npmignore</code> or <code class="language-text">.gitignore</code>.</p>
248
- <p>Certain files are always included, regardless of settings:</p>
249
- <ul>
250
- <li><code class="language-text">package.json</code></li>
251
- <li><code class="language-text">README</code></li>
252
- <li><code class="language-text">CHANGES</code> / <code class="language-text">CHANGELOG</code> / <code class="language-text">HISTORY</code></li>
253
- <li><code class="language-text">LICENSE</code> / <code class="language-text">LICENCE</code></li>
254
- <li><code class="language-text">NOTICE</code></li>
255
- <li>The file in the "main" field</li>
256
- </ul>
257
- <p><code class="language-text">README</code>, <code class="language-text">CHANGES</code>, <code class="language-text">LICENSE</code> &#x26; <code class="language-text">NOTICE</code> can have any case and extension.</p>
258
- <p>Conversely, some files are always ignored:</p>
259
- <ul>
260
- <li><code class="language-text">.git</code></li>
261
- <li><code class="language-text">CVS</code></li>
262
- <li><code class="language-text">.svn</code></li>
263
- <li><code class="language-text">.hg</code></li>
264
- <li><code class="language-text">.lock-wscript</code></li>
265
- <li><code class="language-text">.wafpickle-N</code></li>
266
- <li><code class="language-text">.DS_Store</code></li>
267
- <li><code class="language-text">npm-debug.log</code></li>
268
- <li><code class="language-text">.npmrc</code></li>
269
- <li><code class="language-text">node_modules</code></li>
270
- <li><code class="language-text">config.gypi</code></li>
271
- <li><code class="language-text">package-lock.json</code> (use shrinkwrap instead)</li>
272
- <li>All files containing a <code class="language-text">*</code> character (incompatible with Windows) </li>
273
- </ul>
274
- <h3 id="main" style="position:relative;"><a href="#main" aria-label="main permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>main</h3>
275
- <p>The main field is a module ID that is the primary entry point to your program.
276
- That is, if your package is named <code class="language-text">foo</code>, and a user installs it, and then does
277
- <code class="language-text">require(&quot;foo&quot;)</code>, then your main module's exports object will be returned.</p>
278
- <p>This should be a module ID relative to the root of your package folder.</p>
279
- <p>For most modules, it makes the most sense to have a main script and often not
280
- much else.</p>
281
- <h3 id="browser" style="position:relative;"><a href="#browser" aria-label="browser permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>browser</h3>
282
- <p>If your module is meant to be used client-side the browser field should be
283
- used instead of the main field. This is helpful to hint users that it might
284
- rely on primitives that aren't available in Node.js modules. (e.g. <code class="language-text">window</code>)</p>
285
- <h3 id="bin" style="position:relative;"><a href="#bin" aria-label="bin permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>bin</h3>
286
- <p>A lot of packages have one or more executable files that they'd like to
287
- install into the PATH. npm makes this pretty easy (in fact, it uses this
288
- feature to install the "npm" executable.)</p>
289
- <p>To use this, supply a <code class="language-text">bin</code> field in your package.json which is a map of
290
- command name to local file name. On install, npm will symlink that file into
291
- <code class="language-text">prefix/bin</code> for global installs, or <code class="language-text">./node_modules/.bin/</code> for local
292
- installs.</p>
293
- <p>For example, myapp could have this:</p>
294
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span> <span class="token property">"bin"</span> <span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"myapp"</span> <span class="token operator">:</span> <span class="token string">"./cli.js"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span></code></pre></div>
295
- <p>So, when you install myapp, it'll create a symlink from the <code class="language-text">cli.js</code> script to
296
- <code class="language-text">/usr/local/bin/myapp</code>.</p>
297
- <p>If you have a single executable, and its name should be the name
298
- of the package, then you can just supply it as a string. For example:</p>
299
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"my-program"</span>
300
- <span class="token punctuation">,</span> <span class="token property">"version"</span><span class="token operator">:</span> <span class="token string">"1.2.5"</span>
301
- <span class="token punctuation">,</span> <span class="token property">"bin"</span><span class="token operator">:</span> <span class="token string">"./path/to/program"</span> <span class="token punctuation">}</span></code></pre></div>
302
- <p>would be the same as this:</p>
303
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"my-program"</span>
304
- <span class="token punctuation">,</span> <span class="token property">"version"</span><span class="token operator">:</span> <span class="token string">"1.2.5"</span>
305
- <span class="token punctuation">,</span> <span class="token property">"bin"</span> <span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"my-program"</span> <span class="token operator">:</span> <span class="token string">"./path/to/program"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span></code></pre></div>
306
- <p>Please make sure that your file(s) referenced in <code class="language-text">bin</code> starts with
307
- <code class="language-text">#!/usr/bin/env node</code>, otherwise the scripts are started without the node
308
- executable!</p>
309
- <h3 id="man" style="position:relative;"><a href="#man" aria-label="man permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>man</h3>
310
- <p>Specify either a single file or an array of filenames to put in place for the
311
- <code class="language-text">man</code> program to find.</p>
312
- <p>If only a single file is provided, then it's installed such that it is the
313
- result from <code class="language-text">man &lt;pkgname&gt;</code>, regardless of its actual filename. For example:</p>
314
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span> <span class="token property">"name"</span> <span class="token operator">:</span> <span class="token string">"foo"</span>
315
- <span class="token punctuation">,</span> <span class="token property">"version"</span> <span class="token operator">:</span> <span class="token string">"1.2.3"</span>
316
- <span class="token punctuation">,</span> <span class="token property">"description"</span> <span class="token operator">:</span> <span class="token string">"A packaged foo fooer for fooing foos"</span>
317
- <span class="token punctuation">,</span> <span class="token property">"main"</span> <span class="token operator">:</span> <span class="token string">"foo.js"</span>
318
- <span class="token punctuation">,</span> <span class="token property">"man"</span> <span class="token operator">:</span> <span class="token string">"./man/doc.1"</span>
319
- <span class="token punctuation">}</span></code></pre></div>
320
- <p>would link the <code class="language-text">./man/doc.1</code> file in such that it is the target for <code class="language-text">man foo</code></p>
321
- <p>If the filename doesn't start with the package name, then it's prefixed.
322
- So, this:</p>
323
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span> <span class="token property">"name"</span> <span class="token operator">:</span> <span class="token string">"foo"</span>
324
- <span class="token punctuation">,</span> <span class="token property">"version"</span> <span class="token operator">:</span> <span class="token string">"1.2.3"</span>
325
- <span class="token punctuation">,</span> <span class="token property">"description"</span> <span class="token operator">:</span> <span class="token string">"A packaged foo fooer for fooing foos"</span>
326
- <span class="token punctuation">,</span> <span class="token property">"main"</span> <span class="token operator">:</span> <span class="token string">"foo.js"</span>
327
- <span class="token punctuation">,</span> <span class="token property">"man"</span> <span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token string">"./man/foo.1"</span><span class="token punctuation">,</span> <span class="token string">"./man/bar.1"</span> <span class="token punctuation">]</span>
328
- <span class="token punctuation">}</span></code></pre></div>
329
- <p>will create files to do <code class="language-text">man foo</code> and <code class="language-text">man foo-bar</code>.</p>
330
- <p>Man files must end with a number, and optionally a <code class="language-text">.gz</code> suffix if they are
331
- compressed. The number dictates which man section the file is installed into.</p>
332
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span> <span class="token property">"name"</span> <span class="token operator">:</span> <span class="token string">"foo"</span>
333
- <span class="token punctuation">,</span> <span class="token property">"version"</span> <span class="token operator">:</span> <span class="token string">"1.2.3"</span>
334
- <span class="token punctuation">,</span> <span class="token property">"description"</span> <span class="token operator">:</span> <span class="token string">"A packaged foo fooer for fooing foos"</span>
335
- <span class="token punctuation">,</span> <span class="token property">"main"</span> <span class="token operator">:</span> <span class="token string">"foo.js"</span>
336
- <span class="token punctuation">,</span> <span class="token property">"man"</span> <span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token string">"./man/foo.1"</span><span class="token punctuation">,</span> <span class="token string">"./man/foo.2"</span> <span class="token punctuation">]</span>
337
- <span class="token punctuation">}</span></code></pre></div>
338
- <p>will create entries for <code class="language-text">man foo</code> and <code class="language-text">man 2 foo</code></p>
339
- <h3 id="directories" style="position:relative;"><a href="#directories" aria-label="directories permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>directories</h3>
340
- <p>The CommonJS <a href="http://wiki.commonjs.org/wiki/Packages/1.0">Packages</a> spec details a
341
- few ways that you can indicate the structure of your package using a <code class="language-text">directories</code>
342
- object. If you look at <a href="https://registry.npmjs.org/npm/latest">npm's package.json</a>,
343
- you'll see that it has directories for doc, lib, and man.</p>
344
- <p>In the future, this information may be used in other creative ways.</p>
345
- <h4 id="directorieslib" style="position:relative;"><a href="#directorieslib" aria-label="directorieslib permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>directories.lib</h4>
346
- <p>Tell people where the bulk of your library is. Nothing special is done
347
- with the lib folder in any way, but it's useful meta info.</p>
348
- <h4 id="directoriesbin" style="position:relative;"><a href="#directoriesbin" aria-label="directoriesbin permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>directories.bin</h4>
349
- <p>If you specify a <code class="language-text">bin</code> directory in <code class="language-text">directories.bin</code>, all the files in
350
- that folder will be added.</p>
351
- <p>Because of the way the <code class="language-text">bin</code> directive works, specifying both a
352
- <code class="language-text">bin</code> path and setting <code class="language-text">directories.bin</code> is an error. If you want to
353
- specify individual files, use <code class="language-text">bin</code>, and for all the files in an
354
- existing <code class="language-text">bin</code> directory, use <code class="language-text">directories.bin</code>.</p>
355
- <h4 id="directoriesman" style="position:relative;"><a href="#directoriesman" aria-label="directoriesman permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>directories.man</h4>
356
- <p>A folder that is full of man pages. Sugar to generate a "man" array by
357
- walking the folder.</p>
358
- <h4 id="directoriesdoc" style="position:relative;"><a href="#directoriesdoc" aria-label="directoriesdoc permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>directories.doc</h4>
359
- <p>Put markdown files in here. Eventually, these will be displayed nicely,
360
- maybe, someday.</p>
361
- <h4 id="directoriesexample" style="position:relative;"><a href="#directoriesexample" aria-label="directoriesexample permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>directories.example</h4>
362
- <p>Put example scripts in here. Someday, it might be exposed in some clever way.</p>
363
- <h4 id="directoriestest" style="position:relative;"><a href="#directoriestest" aria-label="directoriestest permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>directories.test</h4>
364
- <p>Put your tests in here. It is currently not exposed, but it might be in the
365
- future.</p>
366
- <h3 id="repository" style="position:relative;"><a href="#repository" aria-label="repository permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>repository</h3>
367
- <p>Specify the place where your code lives. This is helpful for people who
368
- want to contribute. If the git repo is on GitHub, then the <code class="language-text">npm docs</code>
369
- command will be able to find you.</p>
370
- <p>Do it like this:</p>
371
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token property">"repository"</span><span class="token operator">:</span> <span class="token punctuation">{</span>
372
- <span class="token property">"type"</span> <span class="token operator">:</span> <span class="token string">"git"</span><span class="token punctuation">,</span>
373
- <span class="token property">"url"</span> <span class="token operator">:</span> <span class="token string">"https://github.com/npm/cli.git"</span>
374
- <span class="token punctuation">}</span>
375
-
376
- <span class="token property">"repository"</span><span class="token operator">:</span> <span class="token punctuation">{</span>
377
- <span class="token property">"type"</span> <span class="token operator">:</span> <span class="token string">"svn"</span><span class="token punctuation">,</span>
378
- <span class="token property">"url"</span> <span class="token operator">:</span> <span class="token string">"https://v8.googlecode.com/svn/trunk/"</span>
379
- <span class="token punctuation">}</span></code></pre></div>
380
- <p>The URL should be a publicly available (perhaps read-only) url that can be handed
381
- directly to a VCS program without any modification. It should not be a url to an
382
- html project page that you put in your browser. It's for computers.</p>
383
- <p>For GitHub, GitHub gist, Bitbucket, or GitLab repositories you can use the same
384
- shortcut syntax you use for <code class="language-text">npm install</code>:</p>
385
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token property">"repository"</span><span class="token operator">:</span> <span class="token string">"npm/npm"</span>
386
-
387
- <span class="token property">"repository"</span><span class="token operator">:</span> <span class="token string">"github:user/repo"</span>
388
-
389
- <span class="token property">"repository"</span><span class="token operator">:</span> <span class="token string">"gist:11081aaa281"</span>
390
-
391
- <span class="token property">"repository"</span><span class="token operator">:</span> <span class="token string">"bitbucket:user/repo"</span>
392
-
393
- <span class="token property">"repository"</span><span class="token operator">:</span> <span class="token string">"gitlab:user/repo"</span></code></pre></div>
394
- <p>If the <code class="language-text">package.json</code> for your package is not in the root directory (for example
395
- if it is part of a monorepo), you can specify the directory in which it lives:</p>
396
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token property">"repository"</span><span class="token operator">:</span> <span class="token punctuation">{</span>
397
- <span class="token property">"type"</span> <span class="token operator">:</span> <span class="token string">"git"</span><span class="token punctuation">,</span>
398
- <span class="token property">"url"</span> <span class="token operator">:</span> <span class="token string">"https://github.com/facebook/react.git"</span><span class="token punctuation">,</span>
399
- <span class="token property">"directory"</span><span class="token operator">:</span> <span class="token string">"packages/react-dom"</span>
400
- <span class="token punctuation">}</span></code></pre></div>
401
- <h3 id="scripts" style="position:relative;"><a href="#scripts" aria-label="scripts permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>scripts</h3>
402
- <p>The "scripts" property is a dictionary containing script commands that are run
403
- at various times in the lifecycle of your package. The key is the lifecycle
404
- event, and the value is the command to run at that point.</p>
405
- <p>See <a href="../../using-npm/scripts"><code class="language-text">scripts</code></a> to find out more about writing package scripts.</p>
406
- <h3 id="config" style="position:relative;"><a href="#config" aria-label="config permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>config</h3>
407
- <p>A "config" object can be used to set configuration parameters used in package
408
- scripts that persist across upgrades. For instance, if a package had the
409
- following:</p>
410
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span> <span class="token property">"name"</span> <span class="token operator">:</span> <span class="token string">"foo"</span>
411
- <span class="token punctuation">,</span> <span class="token property">"config"</span> <span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"port"</span> <span class="token operator">:</span> <span class="token string">"8080"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span></code></pre></div>
412
- <p>and then had a "start" command that then referenced the
413
- <code class="language-text">npm_package_config_port</code> environment variable, then the user could
414
- override that by doing <code class="language-text">npm config set foo:port 8001</code>.</p>
415
- <p>See <a href="../../using-npm/config"><code class="language-text">config</code></a> and <a href="../../using-npm/scripts"><code class="language-text">scripts</code></a> for more on package
416
- configs.</p>
417
- <h3 id="dependencies" style="position:relative;"><a href="#dependencies" aria-label="dependencies permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>dependencies</h3>
418
- <p>Dependencies are specified in a simple object that maps a package name to a
419
- version range. The version range is a string which has one or more
420
- space-separated descriptors. Dependencies can also be identified with a
421
- tarball or git URL.</p>
422
- <p><strong>Please do not put test harnesses or transpilers in your
423
- <code class="language-text">dependencies</code> object.</strong> See <code class="language-text">devDependencies</code>, below.</p>
424
- <p>See <a href="../../using-npm/semver">semver</a> for more details about specifying version ranges.</p>
425
- <ul>
426
- <li><code class="language-text">version</code> Must match <code class="language-text">version</code> exactly</li>
427
- <li><code class="language-text">&gt;version</code> Must be greater than <code class="language-text">version</code></li>
428
- <li><code class="language-text">&gt;=version</code> etc</li>
429
- <li><code class="language-text">&lt;version</code></li>
430
- <li><code class="language-text">&lt;=version</code></li>
431
- <li><code class="language-text">~version</code> "Approximately equivalent to version" See <a href="../../using-npm/semver">semver</a></li>
432
- <li><code class="language-text">^version</code> "Compatible with version" See <a href="../../using-npm/semver">semver</a></li>
433
- <li><code class="language-text">1.2.x</code> 1.2.0, 1.2.1, etc., but not 1.3.0</li>
434
- <li><code class="language-text">http://...</code> See 'URLs as Dependencies' below</li>
435
- <li><code class="language-text">*</code> Matches any version</li>
436
- <li><code class="language-text">&quot;&quot;</code> (just an empty string) Same as <code class="language-text">*</code></li>
437
- <li><code class="language-text">version1 - version2</code> Same as <code class="language-text">&gt;=version1 &lt;=version2</code>.</li>
438
- <li><code class="language-text">range1 || range2</code> Passes if either range1 or range2 are satisfied.</li>
439
- <li><code class="language-text">git...</code> See 'Git URLs as Dependencies' below</li>
440
- <li><code class="language-text">user/repo</code> See 'GitHub URLs' below</li>
441
- <li><code class="language-text">tag</code> A specific version tagged and published as <code class="language-text">tag</code> See <a href="../../cli-commands/npm-dist-tag"><code class="language-text">npm dist-tag</code></a></li>
442
- <li><code class="language-text">path/path/path</code> See <a href="#local-paths">Local Paths</a> below</li>
443
- </ul>
444
- <p>For example, these are all valid:</p>
445
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span> <span class="token property">"dependencies"</span> <span class="token operator">:</span>
446
- <span class="token punctuation">{</span> <span class="token property">"foo"</span> <span class="token operator">:</span> <span class="token string">"1.0.0 - 2.9999.9999"</span>
447
- <span class="token punctuation">,</span> <span class="token property">"bar"</span> <span class="token operator">:</span> <span class="token string">">=1.0.2 &lt;2.1.2"</span>
448
- <span class="token punctuation">,</span> <span class="token property">"baz"</span> <span class="token operator">:</span> <span class="token string">">1.0.2 &lt;=2.3.4"</span>
449
- <span class="token punctuation">,</span> <span class="token property">"boo"</span> <span class="token operator">:</span> <span class="token string">"2.0.1"</span>
450
- <span class="token punctuation">,</span> <span class="token property">"qux"</span> <span class="token operator">:</span> <span class="token string">"&lt;1.0.0 || >=2.3.1 &lt;2.4.5 || >=2.5.2 &lt;3.0.0"</span>
451
- <span class="token punctuation">,</span> <span class="token property">"asd"</span> <span class="token operator">:</span> <span class="token string">"http://asdf.com/asdf.tar.gz"</span>
452
- <span class="token punctuation">,</span> <span class="token property">"til"</span> <span class="token operator">:</span> <span class="token string">"~1.2"</span>
453
- <span class="token punctuation">,</span> <span class="token property">"elf"</span> <span class="token operator">:</span> <span class="token string">"~1.2.3"</span>
454
- <span class="token punctuation">,</span> <span class="token property">"two"</span> <span class="token operator">:</span> <span class="token string">"2.x"</span>
455
- <span class="token punctuation">,</span> <span class="token property">"thr"</span> <span class="token operator">:</span> <span class="token string">"3.3.x"</span>
456
- <span class="token punctuation">,</span> <span class="token property">"lat"</span> <span class="token operator">:</span> <span class="token string">"latest"</span>
457
- <span class="token punctuation">,</span> <span class="token property">"dyl"</span> <span class="token operator">:</span> <span class="token string">"file:../dyl"</span>
458
- <span class="token punctuation">}</span>
459
- <span class="token punctuation">}</span></code></pre></div>
460
- <h4 id="urls-as-dependencies" style="position:relative;"><a href="#urls-as-dependencies" aria-label="urls as dependencies permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>URLs as Dependencies</h4>
461
- <p>You may specify a tarball URL in place of a version range.</p>
462
- <p>This tarball will be downloaded and installed locally to your package at
463
- install time.</p>
464
- <h4 id="git-urls-as-dependencies" style="position:relative;"><a href="#git-urls-as-dependencies" aria-label="git urls as dependencies permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Git URLs as Dependencies</h4>
465
- <p>Git urls are of the form:</p>
466
- <div class="gatsby-highlight" data-language="bash"><pre class="language-bash"><code class="language-bash"><span class="token operator">&lt;</span>protocol<span class="token operator">></span>://<span class="token punctuation">[</span><span class="token operator">&lt;</span>user<span class="token operator">></span><span class="token punctuation">[</span>:<span class="token operator">&lt;</span>password<span class="token operator">></span><span class="token punctuation">]</span>@<span class="token punctuation">]</span><span class="token operator">&lt;</span>hostname<span class="token operator">></span><span class="token punctuation">[</span>:<span class="token operator">&lt;</span>port<span class="token operator">></span><span class="token punctuation">]</span><span class="token punctuation">[</span>:<span class="token punctuation">]</span><span class="token punctuation">[</span>/<span class="token punctuation">]</span><span class="token operator">&lt;</span>path<span class="token operator">></span><span class="token punctuation">[</span><span class="token comment">#&lt;commit-ish> | #semver:&lt;semver>]</span></code></pre></div>
467
- <p><code class="language-text">&lt;protocol&gt;</code> is one of <code class="language-text">git</code>, <code class="language-text">git+ssh</code>, <code class="language-text">git+http</code>, <code class="language-text">git+https</code>, or
468
- <code class="language-text">git+file</code>.</p>
469
- <p>If <code class="language-text">#&lt;commit-ish&gt;</code> is provided, it will be used to clone exactly that
470
- commit. If the commit-ish has the format <code class="language-text">#semver:&lt;semver&gt;</code>, <code class="language-text">&lt;semver&gt;</code> can
471
- be any valid semver range or exact version, and npm will look for any tags
472
- or refs matching that range in the remote repository, much as it would for a
473
- registry dependency. If neither <code class="language-text">#&lt;commit-ish&gt;</code> or <code class="language-text">#semver:&lt;semver&gt;</code> is
474
- specified, then <code class="language-text">master</code> is used.</p>
475
- <p>Examples:</p>
476
- <div class="gatsby-highlight" data-language="bash"><pre class="language-bash"><code class="language-bash">git+ssh://git@github.com:npm/cli.git<span class="token comment">#v1.0.27</span>
477
- git+ssh://git@github.com:npm/cli<span class="token comment">#semver:^5.0</span>
478
- git+https://isaacs@github.com/npm/cli.git
479
- git://github.com/npm/cli.git<span class="token comment">#v1.0.27</span></code></pre></div>
480
- <h4 id="github-urls" style="position:relative;"><a href="#github-urls" aria-label="github urls permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>GitHub URLs</h4>
481
- <p>As of version 1.1.65, you can refer to GitHub urls as just "foo":
482
- "user/foo-project". Just as with git URLs, a <code class="language-text">commit-ish</code> suffix can be
483
- included. For example:</p>
484
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span>
485
- <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"foo"</span><span class="token punctuation">,</span>
486
- <span class="token property">"version"</span><span class="token operator">:</span> <span class="token string">"0.0.0"</span><span class="token punctuation">,</span>
487
- <span class="token property">"dependencies"</span><span class="token operator">:</span> <span class="token punctuation">{</span>
488
- <span class="token property">"express"</span><span class="token operator">:</span> <span class="token string">"expressjs/express"</span><span class="token punctuation">,</span>
489
- <span class="token property">"mocha"</span><span class="token operator">:</span> <span class="token string">"mochajs/mocha#4727d357ea"</span><span class="token punctuation">,</span>
490
- <span class="token property">"module"</span><span class="token operator">:</span> <span class="token string">"user/repo#feature\/branch"</span>
491
- <span class="token punctuation">}</span>
492
- <span class="token punctuation">}</span></code></pre></div>
493
- <h4 id="local-paths" style="position:relative;"><a href="#local-paths" aria-label="local paths permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Local Paths</h4>
494
- <p>As of version 2.0.0 you can provide a path to a local directory that contains a
495
- package. Local paths can be saved using <code class="language-text">npm install -S</code> or
496
- <code class="language-text">npm install --save</code>, using any of these forms:</p>
497
- <div class="gatsby-highlight" data-language="bash"><pre class="language-bash"><code class="language-bash"><span class="token punctuation">..</span>/foo/bar
498
- ~/foo/bar
499
- ./foo/bar
500
- /foo/bar</code></pre></div>
501
- <p>in which case they will be normalized to a relative path and added to your
502
- <code class="language-text">package.json</code>. For example:</p>
503
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span>
504
- <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"baz"</span><span class="token punctuation">,</span>
505
- <span class="token property">"dependencies"</span><span class="token operator">:</span> <span class="token punctuation">{</span>
506
- <span class="token property">"bar"</span><span class="token operator">:</span> <span class="token string">"file:../foo/bar"</span>
507
- <span class="token punctuation">}</span>
508
- <span class="token punctuation">}</span></code></pre></div>
509
- <p>This feature is helpful for local offline development and creating
510
- tests that require npm installing where you don't want to hit an
511
- external server, but should not be used when publishing packages
512
- to the public registry.</p>
513
- <h3 id="devdependencies" style="position:relative;"><a href="#devdependencies" aria-label="devdependencies permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>devDependencies</h3>
514
- <p>If someone is planning on downloading and using your module in their
515
- program, then they probably don't want or need to download and build
516
- the external test or documentation framework that you use.</p>
517
- <p>In this case, it's best to map these additional items in a <code class="language-text">devDependencies</code>
518
- object.</p>
519
- <p>These things will be installed when doing <code class="language-text">npm link</code> or <code class="language-text">npm install</code>
520
- from the root of a package, and can be managed like any other npm
521
- configuration param. See <a href="../../using-npm/config"><code class="language-text">config</code></a> for more on the topic.</p>
522
- <p>For build steps that are not platform-specific, such as compiling
523
- CoffeeScript or other languages to JavaScript, use the <code class="language-text">prepare</code>
524
- script to do this, and make the required package a devDependency.</p>
525
- <p>For example:</p>
526
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"ethopia-waza"</span><span class="token punctuation">,</span>
527
- <span class="token property">"description"</span><span class="token operator">:</span> <span class="token string">"a delightfully fruity coffee varietal"</span><span class="token punctuation">,</span>
528
- <span class="token property">"version"</span><span class="token operator">:</span> <span class="token string">"1.2.3"</span><span class="token punctuation">,</span>
529
- <span class="token property">"devDependencies"</span><span class="token operator">:</span> <span class="token punctuation">{</span>
530
- <span class="token property">"coffee-script"</span><span class="token operator">:</span> <span class="token string">"~1.6.3"</span>
531
- <span class="token punctuation">}</span><span class="token punctuation">,</span>
532
- <span class="token property">"scripts"</span><span class="token operator">:</span> <span class="token punctuation">{</span>
533
- <span class="token property">"prepare"</span><span class="token operator">:</span> <span class="token string">"coffee -o lib/ -c src/waza.coffee"</span>
534
- <span class="token punctuation">}</span><span class="token punctuation">,</span>
535
- <span class="token property">"main"</span><span class="token operator">:</span> <span class="token string">"lib/waza.js"</span>
536
- <span class="token punctuation">}</span></code></pre></div>
537
- <p>The <code class="language-text">prepare</code> script will be run before publishing, so that users
538
- can consume the functionality without requiring them to compile it
539
- themselves. In dev mode (ie, locally running <code class="language-text">npm install</code>), it'll
540
- run this script as well, so that you can test it easily.</p>
541
- <h3 id="peerdependencies" style="position:relative;"><a href="#peerdependencies" aria-label="peerdependencies permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>peerDependencies</h3>
542
- <p>In some cases, you want to express the compatibility of your package with a
543
- host tool or library, while not necessarily doing a <code class="language-text">require</code> of this host.
544
- This is usually referred to as a <em>plugin</em>. Notably, your module may be exposing
545
- a specific interface, expected and specified by the host documentation.</p>
546
- <p>For example:</p>
547
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span>
548
- <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"tea-latte"</span><span class="token punctuation">,</span>
549
- <span class="token property">"version"</span><span class="token operator">:</span> <span class="token string">"1.3.5"</span><span class="token punctuation">,</span>
550
- <span class="token property">"peerDependencies"</span><span class="token operator">:</span> <span class="token punctuation">{</span>
551
- <span class="token property">"tea"</span><span class="token operator">:</span> <span class="token string">"2.x"</span>
552
- <span class="token punctuation">}</span>
553
- <span class="token punctuation">}</span></code></pre></div>
554
- <p>This ensures your package <code class="language-text">tea-latte</code> can be installed <em>along</em> with the second
555
- major version of the host package <code class="language-text">tea</code> only. <code class="language-text">npm install tea-latte</code> could
556
- possibly yield the following dependency graph:</p>
557
- <div class="gatsby-highlight" data-language="bash"><pre class="language-bash"><code class="language-bash">├── tea-latte@1.3.5
558
- └── tea@2.2.0</code></pre></div>
559
- <p><strong>NOTE: npm versions 1 and 2 will automatically install <code class="language-text">peerDependencies</code> if
560
- they are not explicitly depended upon higher in the dependency tree. In the
561
- next major version of npm (npm@3), this will no longer be the case. You will
562
- receive a warning that the peerDependency is not installed instead.</strong> The
563
- behavior in npms 1 &#x26; 2 was frequently confusing and could easily put you into
564
- dependency hell, a situation that npm is designed to avoid as much as possible.</p>
565
- <p>Trying to install another plugin with a conflicting requirement will cause an
566
- error. For this reason, make sure your plugin requirement is as broad as
567
- possible, and not to lock it down to specific patch versions.</p>
568
- <p>Assuming the host complies with <a href="https://semver.org/">semver</a>, only changes in
569
- the host package's major version will break your plugin. Thus, if you've worked
570
- with every 1.x version of the host package, use <code class="language-text">&quot;^1.0&quot;</code> or <code class="language-text">&quot;1.x&quot;</code> to express
571
- this. If you depend on features introduced in 1.5.2, use <code class="language-text">&quot;&gt;= 1.5.2 &lt; 2&quot;</code>.</p>
572
- <h3 id="bundleddependencies" style="position:relative;"><a href="#bundleddependencies" aria-label="bundleddependencies permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>bundledDependencies</h3>
573
- <p>This defines an array of package names that will be bundled when publishing
574
- the package.</p>
575
- <p>In cases where you need to preserve npm packages locally or have them
576
- available through a single file download, you can bundle the packages in a
577
- tarball file by specifying the package names in the <code class="language-text">bundledDependencies</code>
578
- array and executing <code class="language-text">npm pack</code>.</p>
579
- <p>For example:</p>
580
- <p>If we define a package.json like this:</p>
581
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span>
582
- <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"awesome-web-framework"</span><span class="token punctuation">,</span>
583
- <span class="token property">"version"</span><span class="token operator">:</span> <span class="token string">"1.0.0"</span><span class="token punctuation">,</span>
584
- <span class="token property">"bundledDependencies"</span><span class="token operator">:</span> <span class="token punctuation">[</span>
585
- <span class="token string">"renderized"</span><span class="token punctuation">,</span> <span class="token string">"super-streams"</span>
586
- <span class="token punctuation">]</span>
587
- <span class="token punctuation">}</span></code></pre></div>
588
- <p>we can obtain <code class="language-text">awesome-web-framework-1.0.0.tgz</code> file by running <code class="language-text">npm pack</code>.
589
- This file contains the dependencies <code class="language-text">renderized</code> and <code class="language-text">super-streams</code> which
590
- can be installed in a new project by executing <code class="language-text">npm install
591
- awesome-web-framework-1.0.0.tgz</code>. Note that the package names do not include
592
- any versions, as that information is specified in <code class="language-text">dependencies</code>.</p>
593
- <p>If this is spelled <code class="language-text">&quot;bundleDependencies&quot;</code>, then that is also honored.</p>
594
- <h3 id="optionaldependencies" style="position:relative;"><a href="#optionaldependencies" aria-label="optionaldependencies permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>optionalDependencies</h3>
595
- <p>If a dependency can be used, but you would like npm to proceed if it cannot be
596
- found or fails to install, then you may put it in the <code class="language-text">optionalDependencies</code>
597
- object. This is a map of package name to version or url, just like the
598
- <code class="language-text">dependencies</code> object. The difference is that build failures do not cause
599
- installation to fail. Running <code class="language-text">npm install --no-optional</code> will prevent these
600
- dependencies from being installed.</p>
601
- <p>It is still your program's responsibility to handle the lack of the
602
- dependency. For example, something like this:</p>
603
- <div class="gatsby-highlight" data-language="js"><pre class="language-js"><code class="language-js"><span class="token keyword">try</span> <span class="token punctuation">{</span>
604
- <span class="token keyword">var</span> foo <span class="token operator">=</span> <span class="token function">require</span><span class="token punctuation">(</span><span class="token string">'foo'</span><span class="token punctuation">)</span>
605
- <span class="token keyword">var</span> fooVersion <span class="token operator">=</span> <span class="token function">require</span><span class="token punctuation">(</span><span class="token string">'foo/package.json'</span><span class="token punctuation">)</span><span class="token punctuation">.</span>version
606
- <span class="token punctuation">}</span> <span class="token keyword">catch</span> <span class="token punctuation">(</span>er<span class="token punctuation">)</span> <span class="token punctuation">{</span>
607
- foo <span class="token operator">=</span> <span class="token keyword">null</span>
608
- <span class="token punctuation">}</span>
609
- <span class="token keyword">if</span> <span class="token punctuation">(</span> <span class="token function">notGoodFooVersion</span><span class="token punctuation">(</span>fooVersion<span class="token punctuation">)</span> <span class="token punctuation">)</span> <span class="token punctuation">{</span>
610
- foo <span class="token operator">=</span> <span class="token keyword">null</span>
611
- <span class="token punctuation">}</span>
612
-
613
- <span class="token comment">// .. then later in your program ..</span>
614
-
615
- <span class="token keyword">if</span> <span class="token punctuation">(</span>foo<span class="token punctuation">)</span> <span class="token punctuation">{</span>
616
- foo<span class="token punctuation">.</span><span class="token function">doFooThings</span><span class="token punctuation">(</span><span class="token punctuation">)</span>
617
- <span class="token punctuation">}</span></code></pre></div>
618
- <p>Entries in <code class="language-text">optionalDependencies</code> will override entries of the same name in
619
- <code class="language-text">dependencies</code>, so it's usually best to only put in one place.</p>
620
- <h3 id="engines" style="position:relative;"><a href="#engines" aria-label="engines permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>engines</h3>
621
- <p>You can specify the version of node that your stuff works on:</p>
622
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span> <span class="token property">"engines"</span> <span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"node"</span> <span class="token operator">:</span> <span class="token string">">=0.10.3 &lt;0.12"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span></code></pre></div>
623
- <p>And, like with dependencies, if you don't specify the version (or if you
624
- specify "*" as the version), then any version of node will do.</p>
625
- <p>If you specify an "engines" field, then npm will require that "node" be
626
- somewhere on that list. If "engines" is omitted, then npm will just assume
627
- that it works on node.</p>
628
- <p>You can also use the "engines" field to specify which versions of npm
629
- are capable of properly installing your program. For example:</p>
630
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token punctuation">{</span> <span class="token property">"engines"</span> <span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"npm"</span> <span class="token operator">:</span> <span class="token string">"~1.0.20"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span></code></pre></div>
631
- <p>Unless the user has set the <code class="language-text">engine-strict</code> config flag, this
632
- field is advisory only and will only produce warnings when your package is installed as a dependency.</p>
633
- <h3 id="enginestrict" style="position:relative;"><a href="#enginestrict" aria-label="enginestrict permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>engineStrict</h3>
634
- <p><strong>This feature was removed in npm 3.0.0</strong></p>
635
- <p>Prior to npm 3.0.0, this feature was used to treat this package as if the
636
- user had set <code class="language-text">engine-strict</code>. It is no longer used.</p>
637
- <h3 id="os" style="position:relative;"><a href="#os" aria-label="os permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>os</h3>
638
- <p>You can specify which operating systems your
639
- module will run on:</p>
640
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token property">"os"</span> <span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token string">"darwin"</span><span class="token punctuation">,</span> <span class="token string">"linux"</span> <span class="token punctuation">]</span></code></pre></div>
641
- <p>You can also blacklist instead of whitelist operating systems,
642
- just prepend the blacklisted os with a '!':</p>
643
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token property">"os"</span> <span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token string">"!win32"</span> <span class="token punctuation">]</span></code></pre></div>
644
- <p>The host operating system is determined by <code class="language-text">process.platform</code></p>
645
- <p>It is allowed to both blacklist, and whitelist, although there isn't any
646
- good reason to do this.</p>
647
- <h3 id="cpu" style="position:relative;"><a href="#cpu" aria-label="cpu permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>cpu</h3>
648
- <p>If your code only runs on certain cpu architectures,
649
- you can specify which ones.</p>
650
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token property">"cpu"</span> <span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token string">"x64"</span><span class="token punctuation">,</span> <span class="token string">"ia32"</span> <span class="token punctuation">]</span></code></pre></div>
651
- <p>Like the <code class="language-text">os</code> option, you can also blacklist architectures:</p>
652
- <div class="gatsby-highlight" data-language="json"><pre class="language-json"><code class="language-json"><span class="token property">"cpu"</span> <span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token string">"!arm"</span><span class="token punctuation">,</span> <span class="token string">"!mips"</span> <span class="token punctuation">]</span></code></pre></div>
653
- <p>The host architecture is determined by <code class="language-text">process.arch</code></p>
654
- <h3 id="preferglobal" style="position:relative;"><a href="#preferglobal" aria-label="preferglobal permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>preferGlobal</h3>
655
- <p><strong>DEPRECATED</strong></p>
656
- <p>This option used to trigger an npm warning, but it will no longer warn. It is
657
- purely there for informational purposes. It is now recommended that you install
658
- any binaries as local devDependencies wherever possible.</p>
659
- <h3 id="private" style="position:relative;"><a href="#private" aria-label="private permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>private</h3>
660
- <p>If you set <code class="language-text">&quot;private&quot;: true</code> in your package.json, then npm will refuse
661
- to publish it.</p>
662
- <p>This is a way to prevent accidental publication of private repositories. If
663
- you would like to ensure that a given package is only ever published to a
664
- specific registry (for example, an internal registry), then use the
665
- <code class="language-text">publishConfig</code> dictionary described below to override the <code class="language-text">registry</code> config
666
- param at publish-time.</p>
667
- <h3 id="publishconfig" style="position:relative;"><a href="#publishconfig" aria-label="publishconfig permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>publishConfig</h3>
668
- <p>This is a set of config values that will be used at publish-time. It's
669
- especially handy if you want to set the tag, registry or access, so that
670
- you can ensure that a given package is not tagged with "latest", published
671
- to the global public registry or that a scoped module is private by default.</p>
672
- <p>Any config values can be overridden, but only "tag", "registry" and "access"
673
- probably matter for the purposes of publishing.</p>
674
- <p>See <a href="../../using-npm/config"><code class="language-text">config</code></a> to see the list of config options that can be
675
- overridden.</p>
676
- <h3 id="default-values" style="position:relative;"><a href="#default-values" aria-label="default values permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>DEFAULT VALUES</h3>
677
- <p>npm will default some values based on package contents.</p>
678
- <ul>
679
- <li>
680
- <p><code class="language-text">&quot;scripts&quot;: {&quot;start&quot;: &quot;node server.js&quot;}</code></p>
681
- <p>If there is a <code class="language-text">server.js</code> file in the root of your package, then npm
682
- will default the <code class="language-text">start</code> command to <code class="language-text">node server.js</code>.</p>
683
- </li>
684
- <li>
685
- <p><code class="language-text">&quot;scripts&quot;:{&quot;install&quot;: &quot;node-gyp rebuild&quot;}</code></p>
686
- <p>If there is a <code class="language-text">binding.gyp</code> file in the root of your package and you have not defined an <code class="language-text">install</code> or <code class="language-text">preinstall</code> script, npm will
687
- default the <code class="language-text">install</code> command to compile using node-gyp.</p>
688
- </li>
689
- <li>
690
- <p><code class="language-text">&quot;contributors&quot;: [...]</code></p>
691
- <p>If there is an <code class="language-text">AUTHORS</code> file in the root of your package, npm will
692
- treat each line as a <code class="language-text">Name &lt;email&gt; (url)</code> format, where email and url
693
- are optional. Lines which start with a <code class="language-text">#</code> or are blank, will be
694
- ignored.</p>
695
- </li>
696
- </ul>
697
- <h3 id="see-also" style="position:relative;"><a href="#see-also" aria-label="see also permalink" class="header-link-class before"><svg aria-hidden="true" height="20" version="1.1" viewBox="0 0 16 16" width="20"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>SEE ALSO</h3>
698
- <ul>
699
- <li><a href="../../using-npm/semver">semver</a></li>
700
- <li><a href="../../cli-commands/npm-init">npm init</a></li>
701
- <li><a href="../../cli-commands/npm-version">npm version</a></li>
702
- <li><a href="../../cli-commands/npm-config">npm config</a></li>
703
- <li><a href="../../cli-commands/npm-help">npm help</a></li>
704
- <li><a href="../../cli-commands/npm-install">npm install</a></li>
705
- <li><a href="../../cli-commands/npm-publish">npm publish</a></li>
706
- <li><a href="../../cli-commands/npm-uninstall">npm uninstall</a></li>
707
- </ul></div><div class="FoundTypo__Container-sc-1e373sc-0 fMOzaj"><p><span role="img" aria-label="eyes-emoji">👀</span> Found a typo? <a href="https://github.com/npm/cli/">Let us know!</a></p><p>The current stable version of npm is <a href="https://github.com/npm/cli/">here</a>. To upgrade, run: <code class="language-text">npm install npm@latest -g</code></p><p>To report bugs or submit feature requests for the docs, please post <a href="https://github.com/npm/cli/issues">here</a>. Submit npm issues <a href="https://github.com/npm/cli/issues">here.</a></p></div><script>
708
- var anchors = document.querySelectorAll(".sidebar a, .documentation a")
709
- Array.prototype.slice.call(anchors).map(function(el) {
710
- if (el.href.match(/file:\/\//)) {
711
- el.href = el.href + "/index.html"
712
- }
713
- })
714
- </script></div></div></div></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/configuring-npm/package-json";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"app":["/app-f19f1d7f30af98d21899.js"],"component---src-templates-page-js":["/component---src-templates-page-js-4e7e861bc681ee3dfaa8.js"],"component---src-pages-404-js":["/component---src-pages-404-js-6c8c4e2e908a7101a231.js"],"component---src-pages-index-js":["/component---src-pages-index-js-6b93f80c513be8d7330c.js"]};/*]]>*/</script><script src="../../component---src-templates-page-js-4e7e861bc681ee3dfaa8.js" async=""></script><script src="../../app-f19f1d7f30af98d21899.js" async=""></script><script src="../../commons-4df35f6dbd2fdc25d817.js" async=""></script><script src="../../styles-de5e304580bcba768a01.js" async=""></script><script src="../../webpack-runtime-e00205099b1bddfaee91.js" async=""></script></body></html>