korext 0.1.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 (517) hide show
  1. package/bin/korext.js +278 -0
  2. package/korext-cli-0.1.0.tgz +0 -0
  3. package/node_modules/ansi-regex/index.d.ts +37 -0
  4. package/node_modules/ansi-regex/index.js +10 -0
  5. package/node_modules/ansi-regex/license +9 -0
  6. package/node_modules/ansi-regex/package.json +55 -0
  7. package/node_modules/ansi-regex/readme.md +78 -0
  8. package/node_modules/ansi-styles/index.d.ts +345 -0
  9. package/node_modules/ansi-styles/index.js +163 -0
  10. package/node_modules/ansi-styles/license +9 -0
  11. package/node_modules/ansi-styles/package.json +56 -0
  12. package/node_modules/ansi-styles/readme.md +152 -0
  13. package/node_modules/balanced-match/LICENSE.md +23 -0
  14. package/node_modules/balanced-match/README.md +57 -0
  15. package/node_modules/balanced-match/dist/commonjs/index.d.ts +9 -0
  16. package/node_modules/balanced-match/dist/commonjs/index.d.ts.map +1 -0
  17. package/node_modules/balanced-match/dist/commonjs/index.js +59 -0
  18. package/node_modules/balanced-match/dist/commonjs/index.js.map +1 -0
  19. package/node_modules/balanced-match/dist/commonjs/package.json +3 -0
  20. package/node_modules/balanced-match/dist/esm/index.d.ts +9 -0
  21. package/node_modules/balanced-match/dist/esm/index.d.ts.map +1 -0
  22. package/node_modules/balanced-match/dist/esm/index.js +54 -0
  23. package/node_modules/balanced-match/dist/esm/index.js.map +1 -0
  24. package/node_modules/balanced-match/dist/esm/package.json +3 -0
  25. package/node_modules/balanced-match/package.json +68 -0
  26. package/node_modules/base64-js/LICENSE +21 -0
  27. package/node_modules/base64-js/README.md +34 -0
  28. package/node_modules/base64-js/base64js.min.js +1 -0
  29. package/node_modules/base64-js/index.d.ts +3 -0
  30. package/node_modules/base64-js/index.js +150 -0
  31. package/node_modules/base64-js/package.json +47 -0
  32. package/node_modules/bl/.travis.yml +17 -0
  33. package/node_modules/bl/BufferList.js +396 -0
  34. package/node_modules/bl/LICENSE.md +13 -0
  35. package/node_modules/bl/README.md +247 -0
  36. package/node_modules/bl/bl.js +84 -0
  37. package/node_modules/bl/package.json +37 -0
  38. package/node_modules/bl/test/convert.js +21 -0
  39. package/node_modules/bl/test/indexOf.js +492 -0
  40. package/node_modules/bl/test/isBufferList.js +32 -0
  41. package/node_modules/bl/test/test.js +869 -0
  42. package/node_modules/brace-expansion/LICENSE +23 -0
  43. package/node_modules/brace-expansion/README.md +94 -0
  44. package/node_modules/brace-expansion/dist/commonjs/index.d.ts +6 -0
  45. package/node_modules/brace-expansion/dist/commonjs/index.d.ts.map +1 -0
  46. package/node_modules/brace-expansion/dist/commonjs/index.js +199 -0
  47. package/node_modules/brace-expansion/dist/commonjs/index.js.map +1 -0
  48. package/node_modules/brace-expansion/dist/commonjs/package.json +3 -0
  49. package/node_modules/brace-expansion/dist/esm/index.d.ts +6 -0
  50. package/node_modules/brace-expansion/dist/esm/index.d.ts.map +1 -0
  51. package/node_modules/brace-expansion/dist/esm/index.js +195 -0
  52. package/node_modules/brace-expansion/dist/esm/index.js.map +1 -0
  53. package/node_modules/brace-expansion/dist/esm/package.json +3 -0
  54. package/node_modules/brace-expansion/package.json +64 -0
  55. package/node_modules/buffer/AUTHORS.md +70 -0
  56. package/node_modules/buffer/LICENSE +21 -0
  57. package/node_modules/buffer/README.md +410 -0
  58. package/node_modules/buffer/index.d.ts +186 -0
  59. package/node_modules/buffer/index.js +1817 -0
  60. package/node_modules/buffer/package.json +96 -0
  61. package/node_modules/chalk/index.d.ts +415 -0
  62. package/node_modules/chalk/license +9 -0
  63. package/node_modules/chalk/package.json +68 -0
  64. package/node_modules/chalk/readme.md +341 -0
  65. package/node_modules/chalk/source/index.js +229 -0
  66. package/node_modules/chalk/source/templates.js +134 -0
  67. package/node_modules/chalk/source/util.js +39 -0
  68. package/node_modules/cli-cursor/index.d.ts +45 -0
  69. package/node_modules/cli-cursor/index.js +35 -0
  70. package/node_modules/cli-cursor/license +9 -0
  71. package/node_modules/cli-cursor/package.json +46 -0
  72. package/node_modules/cli-cursor/readme.md +55 -0
  73. package/node_modules/cli-spinners/index.d.ts +128 -0
  74. package/node_modules/cli-spinners/index.js +15 -0
  75. package/node_modules/cli-spinners/license +9 -0
  76. package/node_modules/cli-spinners/package.json +50 -0
  77. package/node_modules/cli-spinners/readme.md +54 -0
  78. package/node_modules/cli-spinners/spinners.json +1622 -0
  79. package/node_modules/clone/.npmignore +4 -0
  80. package/node_modules/clone/LICENSE +18 -0
  81. package/node_modules/clone/README.md +126 -0
  82. package/node_modules/clone/clone.iml +10 -0
  83. package/node_modules/clone/clone.js +166 -0
  84. package/node_modules/clone/package.json +51 -0
  85. package/node_modules/color-convert/CHANGELOG.md +54 -0
  86. package/node_modules/color-convert/LICENSE +21 -0
  87. package/node_modules/color-convert/README.md +68 -0
  88. package/node_modules/color-convert/conversions.js +839 -0
  89. package/node_modules/color-convert/index.js +81 -0
  90. package/node_modules/color-convert/package.json +48 -0
  91. package/node_modules/color-convert/route.js +97 -0
  92. package/node_modules/color-name/LICENSE +8 -0
  93. package/node_modules/color-name/README.md +11 -0
  94. package/node_modules/color-name/index.js +152 -0
  95. package/node_modules/color-name/package.json +28 -0
  96. package/node_modules/commander/LICENSE +22 -0
  97. package/node_modules/commander/Readme.md +1176 -0
  98. package/node_modules/commander/esm.mjs +16 -0
  99. package/node_modules/commander/index.js +24 -0
  100. package/node_modules/commander/lib/argument.js +150 -0
  101. package/node_modules/commander/lib/command.js +2777 -0
  102. package/node_modules/commander/lib/error.js +39 -0
  103. package/node_modules/commander/lib/help.js +747 -0
  104. package/node_modules/commander/lib/option.js +380 -0
  105. package/node_modules/commander/lib/suggestSimilar.js +101 -0
  106. package/node_modules/commander/package-support.json +19 -0
  107. package/node_modules/commander/package.json +82 -0
  108. package/node_modules/commander/typings/esm.d.mts +3 -0
  109. package/node_modules/commander/typings/index.d.ts +1113 -0
  110. package/node_modules/data-uri-to-buffer/README.md +88 -0
  111. package/node_modules/data-uri-to-buffer/dist/index.d.ts +15 -0
  112. package/node_modules/data-uri-to-buffer/dist/index.js +53 -0
  113. package/node_modules/data-uri-to-buffer/dist/index.js.map +1 -0
  114. package/node_modules/data-uri-to-buffer/package.json +62 -0
  115. package/node_modules/data-uri-to-buffer/src/index.ts +68 -0
  116. package/node_modules/defaults/LICENSE +22 -0
  117. package/node_modules/defaults/README.md +39 -0
  118. package/node_modules/defaults/index.js +13 -0
  119. package/node_modules/defaults/package.json +33 -0
  120. package/node_modules/defaults/test.js +34 -0
  121. package/node_modules/fetch-blob/LICENSE +21 -0
  122. package/node_modules/fetch-blob/README.md +106 -0
  123. package/node_modules/fetch-blob/file.d.ts +2 -0
  124. package/node_modules/fetch-blob/file.js +49 -0
  125. package/node_modules/fetch-blob/from.d.ts +26 -0
  126. package/node_modules/fetch-blob/from.js +100 -0
  127. package/node_modules/fetch-blob/index.d.ts +3 -0
  128. package/node_modules/fetch-blob/index.js +250 -0
  129. package/node_modules/fetch-blob/package.json +56 -0
  130. package/node_modules/fetch-blob/streams.cjs +51 -0
  131. package/node_modules/formdata-polyfill/FormData.js +441 -0
  132. package/node_modules/formdata-polyfill/LICENSE +21 -0
  133. package/node_modules/formdata-polyfill/README.md +145 -0
  134. package/node_modules/formdata-polyfill/esm.min.d.ts +5 -0
  135. package/node_modules/formdata-polyfill/esm.min.js +40 -0
  136. package/node_modules/formdata-polyfill/formdata-to-blob.js +39 -0
  137. package/node_modules/formdata-polyfill/formdata.min.js +21 -0
  138. package/node_modules/formdata-polyfill/package.json +50 -0
  139. package/node_modules/glob/LICENSE.md +63 -0
  140. package/node_modules/glob/README.md +1203 -0
  141. package/node_modules/glob/dist/commonjs/glob.d.ts +396 -0
  142. package/node_modules/glob/dist/commonjs/glob.d.ts.map +1 -0
  143. package/node_modules/glob/dist/commonjs/glob.js +248 -0
  144. package/node_modules/glob/dist/commonjs/glob.js.map +1 -0
  145. package/node_modules/glob/dist/commonjs/has-magic.d.ts +14 -0
  146. package/node_modules/glob/dist/commonjs/has-magic.d.ts.map +1 -0
  147. package/node_modules/glob/dist/commonjs/has-magic.js +27 -0
  148. package/node_modules/glob/dist/commonjs/has-magic.js.map +1 -0
  149. package/node_modules/glob/dist/commonjs/ignore.d.ts +24 -0
  150. package/node_modules/glob/dist/commonjs/ignore.d.ts.map +1 -0
  151. package/node_modules/glob/dist/commonjs/ignore.js +119 -0
  152. package/node_modules/glob/dist/commonjs/ignore.js.map +1 -0
  153. package/node_modules/glob/dist/commonjs/index.d.ts +97 -0
  154. package/node_modules/glob/dist/commonjs/index.d.ts.map +1 -0
  155. package/node_modules/glob/dist/commonjs/index.js +68 -0
  156. package/node_modules/glob/dist/commonjs/index.js.map +1 -0
  157. package/node_modules/glob/dist/commonjs/index.min.js +4 -0
  158. package/node_modules/glob/dist/commonjs/index.min.js.map +7 -0
  159. package/node_modules/glob/dist/commonjs/package.json +3 -0
  160. package/node_modules/glob/dist/commonjs/pattern.d.ts +79 -0
  161. package/node_modules/glob/dist/commonjs/pattern.d.ts.map +1 -0
  162. package/node_modules/glob/dist/commonjs/pattern.js +223 -0
  163. package/node_modules/glob/dist/commonjs/pattern.js.map +1 -0
  164. package/node_modules/glob/dist/commonjs/processor.d.ts +59 -0
  165. package/node_modules/glob/dist/commonjs/processor.d.ts.map +1 -0
  166. package/node_modules/glob/dist/commonjs/processor.js +301 -0
  167. package/node_modules/glob/dist/commonjs/processor.js.map +1 -0
  168. package/node_modules/glob/dist/commonjs/walker.d.ts +97 -0
  169. package/node_modules/glob/dist/commonjs/walker.d.ts.map +1 -0
  170. package/node_modules/glob/dist/commonjs/walker.js +387 -0
  171. package/node_modules/glob/dist/commonjs/walker.js.map +1 -0
  172. package/node_modules/glob/dist/esm/glob.d.ts +396 -0
  173. package/node_modules/glob/dist/esm/glob.d.ts.map +1 -0
  174. package/node_modules/glob/dist/esm/glob.js +244 -0
  175. package/node_modules/glob/dist/esm/glob.js.map +1 -0
  176. package/node_modules/glob/dist/esm/has-magic.d.ts +14 -0
  177. package/node_modules/glob/dist/esm/has-magic.d.ts.map +1 -0
  178. package/node_modules/glob/dist/esm/has-magic.js +23 -0
  179. package/node_modules/glob/dist/esm/has-magic.js.map +1 -0
  180. package/node_modules/glob/dist/esm/ignore.d.ts +24 -0
  181. package/node_modules/glob/dist/esm/ignore.d.ts.map +1 -0
  182. package/node_modules/glob/dist/esm/ignore.js +115 -0
  183. package/node_modules/glob/dist/esm/ignore.js.map +1 -0
  184. package/node_modules/glob/dist/esm/index.d.ts +97 -0
  185. package/node_modules/glob/dist/esm/index.d.ts.map +1 -0
  186. package/node_modules/glob/dist/esm/index.js +55 -0
  187. package/node_modules/glob/dist/esm/index.js.map +1 -0
  188. package/node_modules/glob/dist/esm/index.min.js +4 -0
  189. package/node_modules/glob/dist/esm/index.min.js.map +7 -0
  190. package/node_modules/glob/dist/esm/package.json +3 -0
  191. package/node_modules/glob/dist/esm/pattern.d.ts +79 -0
  192. package/node_modules/glob/dist/esm/pattern.d.ts.map +1 -0
  193. package/node_modules/glob/dist/esm/pattern.js +219 -0
  194. package/node_modules/glob/dist/esm/pattern.js.map +1 -0
  195. package/node_modules/glob/dist/esm/processor.d.ts +59 -0
  196. package/node_modules/glob/dist/esm/processor.d.ts.map +1 -0
  197. package/node_modules/glob/dist/esm/processor.js +294 -0
  198. package/node_modules/glob/dist/esm/processor.js.map +1 -0
  199. package/node_modules/glob/dist/esm/walker.d.ts +97 -0
  200. package/node_modules/glob/dist/esm/walker.d.ts.map +1 -0
  201. package/node_modules/glob/dist/esm/walker.js +381 -0
  202. package/node_modules/glob/dist/esm/walker.js.map +1 -0
  203. package/node_modules/glob/package.json +98 -0
  204. package/node_modules/has-flag/index.d.ts +39 -0
  205. package/node_modules/has-flag/index.js +8 -0
  206. package/node_modules/has-flag/license +9 -0
  207. package/node_modules/has-flag/package.json +46 -0
  208. package/node_modules/has-flag/readme.md +89 -0
  209. package/node_modules/ieee754/LICENSE +11 -0
  210. package/node_modules/ieee754/README.md +51 -0
  211. package/node_modules/ieee754/index.d.ts +10 -0
  212. package/node_modules/ieee754/index.js +85 -0
  213. package/node_modules/ieee754/package.json +52 -0
  214. package/node_modules/inherits/LICENSE +16 -0
  215. package/node_modules/inherits/README.md +42 -0
  216. package/node_modules/inherits/inherits.js +9 -0
  217. package/node_modules/inherits/inherits_browser.js +27 -0
  218. package/node_modules/inherits/package.json +29 -0
  219. package/node_modules/is-interactive/index.d.ts +31 -0
  220. package/node_modules/is-interactive/index.js +9 -0
  221. package/node_modules/is-interactive/license +9 -0
  222. package/node_modules/is-interactive/package.json +38 -0
  223. package/node_modules/is-interactive/readme.md +51 -0
  224. package/node_modules/is-unicode-supported/index.d.ts +14 -0
  225. package/node_modules/is-unicode-supported/index.js +13 -0
  226. package/node_modules/is-unicode-supported/license +9 -0
  227. package/node_modules/is-unicode-supported/package.json +41 -0
  228. package/node_modules/is-unicode-supported/readme.md +35 -0
  229. package/node_modules/log-symbols/browser.js +8 -0
  230. package/node_modules/log-symbols/index.d.ts +25 -0
  231. package/node_modules/log-symbols/index.js +19 -0
  232. package/node_modules/log-symbols/license +9 -0
  233. package/node_modules/log-symbols/package.json +52 -0
  234. package/node_modules/log-symbols/readme.md +51 -0
  235. package/node_modules/lru-cache/LICENSE.md +55 -0
  236. package/node_modules/lru-cache/README.md +383 -0
  237. package/node_modules/lru-cache/dist/commonjs/index.d.ts +1323 -0
  238. package/node_modules/lru-cache/dist/commonjs/index.d.ts.map +1 -0
  239. package/node_modules/lru-cache/dist/commonjs/index.js +1595 -0
  240. package/node_modules/lru-cache/dist/commonjs/index.js.map +1 -0
  241. package/node_modules/lru-cache/dist/commonjs/index.min.js +2 -0
  242. package/node_modules/lru-cache/dist/commonjs/index.min.js.map +7 -0
  243. package/node_modules/lru-cache/dist/commonjs/package.json +3 -0
  244. package/node_modules/lru-cache/dist/esm/index.d.ts +1323 -0
  245. package/node_modules/lru-cache/dist/esm/index.d.ts.map +1 -0
  246. package/node_modules/lru-cache/dist/esm/index.js +1591 -0
  247. package/node_modules/lru-cache/dist/esm/index.js.map +1 -0
  248. package/node_modules/lru-cache/dist/esm/index.min.js +2 -0
  249. package/node_modules/lru-cache/dist/esm/index.min.js.map +7 -0
  250. package/node_modules/lru-cache/dist/esm/package.json +3 -0
  251. package/node_modules/lru-cache/package.json +93 -0
  252. package/node_modules/mimic-fn/index.d.ts +54 -0
  253. package/node_modules/mimic-fn/index.js +13 -0
  254. package/node_modules/mimic-fn/license +9 -0
  255. package/node_modules/mimic-fn/package.json +42 -0
  256. package/node_modules/mimic-fn/readme.md +69 -0
  257. package/node_modules/minimatch/LICENSE.md +55 -0
  258. package/node_modules/minimatch/README.md +528 -0
  259. package/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts +2 -0
  260. package/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts.map +1 -0
  261. package/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js +14 -0
  262. package/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js.map +1 -0
  263. package/node_modules/minimatch/dist/commonjs/ast.d.ts +22 -0
  264. package/node_modules/minimatch/dist/commonjs/ast.d.ts.map +1 -0
  265. package/node_modules/minimatch/dist/commonjs/ast.js +846 -0
  266. package/node_modules/minimatch/dist/commonjs/ast.js.map +1 -0
  267. package/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts +8 -0
  268. package/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts.map +1 -0
  269. package/node_modules/minimatch/dist/commonjs/brace-expressions.js +150 -0
  270. package/node_modules/minimatch/dist/commonjs/brace-expressions.js.map +1 -0
  271. package/node_modules/minimatch/dist/commonjs/escape.d.ts +15 -0
  272. package/node_modules/minimatch/dist/commonjs/escape.d.ts.map +1 -0
  273. package/node_modules/minimatch/dist/commonjs/escape.js +30 -0
  274. package/node_modules/minimatch/dist/commonjs/escape.js.map +1 -0
  275. package/node_modules/minimatch/dist/commonjs/index.d.ts +174 -0
  276. package/node_modules/minimatch/dist/commonjs/index.d.ts.map +1 -0
  277. package/node_modules/minimatch/dist/commonjs/index.js +1121 -0
  278. package/node_modules/minimatch/dist/commonjs/index.js.map +1 -0
  279. package/node_modules/minimatch/dist/commonjs/package.json +3 -0
  280. package/node_modules/minimatch/dist/commonjs/unescape.d.ts +22 -0
  281. package/node_modules/minimatch/dist/commonjs/unescape.d.ts.map +1 -0
  282. package/node_modules/minimatch/dist/commonjs/unescape.js +38 -0
  283. package/node_modules/minimatch/dist/commonjs/unescape.js.map +1 -0
  284. package/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts +2 -0
  285. package/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts.map +1 -0
  286. package/node_modules/minimatch/dist/esm/assert-valid-pattern.js +10 -0
  287. package/node_modules/minimatch/dist/esm/assert-valid-pattern.js.map +1 -0
  288. package/node_modules/minimatch/dist/esm/ast.d.ts +22 -0
  289. package/node_modules/minimatch/dist/esm/ast.d.ts.map +1 -0
  290. package/node_modules/minimatch/dist/esm/ast.js +842 -0
  291. package/node_modules/minimatch/dist/esm/ast.js.map +1 -0
  292. package/node_modules/minimatch/dist/esm/brace-expressions.d.ts +8 -0
  293. package/node_modules/minimatch/dist/esm/brace-expressions.d.ts.map +1 -0
  294. package/node_modules/minimatch/dist/esm/brace-expressions.js +146 -0
  295. package/node_modules/minimatch/dist/esm/brace-expressions.js.map +1 -0
  296. package/node_modules/minimatch/dist/esm/escape.d.ts +15 -0
  297. package/node_modules/minimatch/dist/esm/escape.d.ts.map +1 -0
  298. package/node_modules/minimatch/dist/esm/escape.js +26 -0
  299. package/node_modules/minimatch/dist/esm/escape.js.map +1 -0
  300. package/node_modules/minimatch/dist/esm/index.d.ts +174 -0
  301. package/node_modules/minimatch/dist/esm/index.d.ts.map +1 -0
  302. package/node_modules/minimatch/dist/esm/index.js +1108 -0
  303. package/node_modules/minimatch/dist/esm/index.js.map +1 -0
  304. package/node_modules/minimatch/dist/esm/package.json +3 -0
  305. package/node_modules/minimatch/dist/esm/unescape.d.ts +22 -0
  306. package/node_modules/minimatch/dist/esm/unescape.d.ts.map +1 -0
  307. package/node_modules/minimatch/dist/esm/unescape.js +34 -0
  308. package/node_modules/minimatch/dist/esm/unescape.js.map +1 -0
  309. package/node_modules/minimatch/package.json +67 -0
  310. package/node_modules/minipass/LICENSE.md +55 -0
  311. package/node_modules/minipass/README.md +825 -0
  312. package/node_modules/minipass/dist/commonjs/index.d.ts +545 -0
  313. package/node_modules/minipass/dist/commonjs/index.d.ts.map +1 -0
  314. package/node_modules/minipass/dist/commonjs/index.js +1038 -0
  315. package/node_modules/minipass/dist/commonjs/index.js.map +1 -0
  316. package/node_modules/minipass/dist/commonjs/package.json +3 -0
  317. package/node_modules/minipass/dist/esm/index.d.ts +545 -0
  318. package/node_modules/minipass/dist/esm/index.d.ts.map +1 -0
  319. package/node_modules/minipass/dist/esm/index.js +1020 -0
  320. package/node_modules/minipass/dist/esm/index.js.map +1 -0
  321. package/node_modules/minipass/dist/esm/package.json +3 -0
  322. package/node_modules/minipass/package.json +77 -0
  323. package/node_modules/node-domexception/.history/README_20210527203617.md +2 -0
  324. package/node_modules/node-domexception/.history/README_20210527212714.md +41 -0
  325. package/node_modules/node-domexception/.history/README_20210527213345.md +36 -0
  326. package/node_modules/node-domexception/.history/README_20210527213411.md +36 -0
  327. package/node_modules/node-domexception/.history/README_20210527213803.md +36 -0
  328. package/node_modules/node-domexception/.history/README_20210527214323.md +38 -0
  329. package/node_modules/node-domexception/.history/README_20210527214408.md +38 -0
  330. package/node_modules/node-domexception/.history/index_20210527203842.js +0 -0
  331. package/node_modules/node-domexception/.history/index_20210527203947.js +8 -0
  332. package/node_modules/node-domexception/.history/index_20210527204259.js +9 -0
  333. package/node_modules/node-domexception/.history/index_20210527204418.js +9 -0
  334. package/node_modules/node-domexception/.history/index_20210527204756.js +11 -0
  335. package/node_modules/node-domexception/.history/index_20210527204833.js +11 -0
  336. package/node_modules/node-domexception/.history/index_20210527211208.js +15 -0
  337. package/node_modules/node-domexception/.history/index_20210527211248.js +15 -0
  338. package/node_modules/node-domexception/.history/index_20210527212722.js +23 -0
  339. package/node_modules/node-domexception/.history/index_20210527212731.js +23 -0
  340. package/node_modules/node-domexception/.history/index_20210527212746.js +15 -0
  341. package/node_modules/node-domexception/.history/index_20210527212900.js +16 -0
  342. package/node_modules/node-domexception/.history/index_20210527213022.js +16 -0
  343. package/node_modules/node-domexception/.history/index_20210527213822.js +16 -0
  344. package/node_modules/node-domexception/.history/index_20210527213843.js +17 -0
  345. package/node_modules/node-domexception/.history/index_20210527213852.js +17 -0
  346. package/node_modules/node-domexception/.history/index_20210527213910.js +16 -0
  347. package/node_modules/node-domexception/.history/index_20210527214034.js +16 -0
  348. package/node_modules/node-domexception/.history/index_20210527214643.js +41 -0
  349. package/node_modules/node-domexception/.history/index_20210527214654.js +41 -0
  350. package/node_modules/node-domexception/.history/index_20210527214700.js +16 -0
  351. package/node_modules/node-domexception/.history/package_20210527203733.json +19 -0
  352. package/node_modules/node-domexception/.history/package_20210527203825.json +16 -0
  353. package/node_modules/node-domexception/.history/package_20210527204621.json +19 -0
  354. package/node_modules/node-domexception/.history/package_20210527204913.json +25 -0
  355. package/node_modules/node-domexception/.history/package_20210527204925.json +25 -0
  356. package/node_modules/node-domexception/.history/package_20210527205145.json +29 -0
  357. package/node_modules/node-domexception/.history/package_20210527205156.json +29 -0
  358. package/node_modules/node-domexception/.history/test_20210527205603.js +0 -0
  359. package/node_modules/node-domexception/.history/test_20210527205957.js +3 -0
  360. package/node_modules/node-domexception/.history/test_20210527210021.js +3 -0
  361. package/node_modules/node-domexception/LICENSE +21 -0
  362. package/node_modules/node-domexception/README.md +46 -0
  363. package/node_modules/node-domexception/index.js +16 -0
  364. package/node_modules/node-domexception/package.json +29 -0
  365. package/node_modules/node-fetch/@types/index.d.ts +219 -0
  366. package/node_modules/node-fetch/LICENSE.md +22 -0
  367. package/node_modules/node-fetch/README.md +872 -0
  368. package/node_modules/node-fetch/package.json +131 -0
  369. package/node_modules/node-fetch/src/body.js +397 -0
  370. package/node_modules/node-fetch/src/errors/abort-error.js +10 -0
  371. package/node_modules/node-fetch/src/errors/base.js +17 -0
  372. package/node_modules/node-fetch/src/errors/fetch-error.js +26 -0
  373. package/node_modules/node-fetch/src/headers.js +267 -0
  374. package/node_modules/node-fetch/src/index.js +417 -0
  375. package/node_modules/node-fetch/src/request.js +313 -0
  376. package/node_modules/node-fetch/src/response.js +160 -0
  377. package/node_modules/node-fetch/src/utils/get-search.js +9 -0
  378. package/node_modules/node-fetch/src/utils/is-redirect.js +11 -0
  379. package/node_modules/node-fetch/src/utils/is.js +87 -0
  380. package/node_modules/node-fetch/src/utils/multipart-parser.js +432 -0
  381. package/node_modules/node-fetch/src/utils/referrer.js +340 -0
  382. package/node_modules/onetime/index.d.ts +64 -0
  383. package/node_modules/onetime/index.js +44 -0
  384. package/node_modules/onetime/license +9 -0
  385. package/node_modules/onetime/package.json +43 -0
  386. package/node_modules/onetime/readme.md +94 -0
  387. package/node_modules/ora/index.d.ts +277 -0
  388. package/node_modules/ora/index.js +407 -0
  389. package/node_modules/ora/license +9 -0
  390. package/node_modules/ora/package.json +57 -0
  391. package/node_modules/ora/readme.md +264 -0
  392. package/node_modules/path-scurry/LICENSE.md +55 -0
  393. package/node_modules/path-scurry/README.md +636 -0
  394. package/node_modules/path-scurry/dist/commonjs/index.d.ts +1115 -0
  395. package/node_modules/path-scurry/dist/commonjs/index.d.ts.map +1 -0
  396. package/node_modules/path-scurry/dist/commonjs/index.js +2018 -0
  397. package/node_modules/path-scurry/dist/commonjs/index.js.map +1 -0
  398. package/node_modules/path-scurry/dist/commonjs/package.json +3 -0
  399. package/node_modules/path-scurry/dist/esm/index.d.ts +1115 -0
  400. package/node_modules/path-scurry/dist/esm/index.d.ts.map +1 -0
  401. package/node_modules/path-scurry/dist/esm/index.js +1983 -0
  402. package/node_modules/path-scurry/dist/esm/index.js.map +1 -0
  403. package/node_modules/path-scurry/dist/esm/package.json +3 -0
  404. package/node_modules/path-scurry/package.json +72 -0
  405. package/node_modules/readable-stream/CONTRIBUTING.md +38 -0
  406. package/node_modules/readable-stream/GOVERNANCE.md +136 -0
  407. package/node_modules/readable-stream/LICENSE +47 -0
  408. package/node_modules/readable-stream/README.md +106 -0
  409. package/node_modules/readable-stream/errors-browser.js +127 -0
  410. package/node_modules/readable-stream/errors.js +116 -0
  411. package/node_modules/readable-stream/experimentalWarning.js +17 -0
  412. package/node_modules/readable-stream/lib/_stream_duplex.js +126 -0
  413. package/node_modules/readable-stream/lib/_stream_passthrough.js +37 -0
  414. package/node_modules/readable-stream/lib/_stream_readable.js +1027 -0
  415. package/node_modules/readable-stream/lib/_stream_transform.js +190 -0
  416. package/node_modules/readable-stream/lib/_stream_writable.js +641 -0
  417. package/node_modules/readable-stream/lib/internal/streams/async_iterator.js +180 -0
  418. package/node_modules/readable-stream/lib/internal/streams/buffer_list.js +183 -0
  419. package/node_modules/readable-stream/lib/internal/streams/destroy.js +96 -0
  420. package/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +86 -0
  421. package/node_modules/readable-stream/lib/internal/streams/from-browser.js +3 -0
  422. package/node_modules/readable-stream/lib/internal/streams/from.js +52 -0
  423. package/node_modules/readable-stream/lib/internal/streams/pipeline.js +86 -0
  424. package/node_modules/readable-stream/lib/internal/streams/state.js +22 -0
  425. package/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -0
  426. package/node_modules/readable-stream/lib/internal/streams/stream.js +1 -0
  427. package/node_modules/readable-stream/package.json +68 -0
  428. package/node_modules/readable-stream/readable-browser.js +9 -0
  429. package/node_modules/readable-stream/readable.js +16 -0
  430. package/node_modules/restore-cursor/index.d.ts +13 -0
  431. package/node_modules/restore-cursor/index.js +9 -0
  432. package/node_modules/restore-cursor/license +9 -0
  433. package/node_modules/restore-cursor/package.json +52 -0
  434. package/node_modules/restore-cursor/readme.md +26 -0
  435. package/node_modules/safe-buffer/LICENSE +21 -0
  436. package/node_modules/safe-buffer/README.md +584 -0
  437. package/node_modules/safe-buffer/index.d.ts +187 -0
  438. package/node_modules/safe-buffer/index.js +65 -0
  439. package/node_modules/safe-buffer/package.json +51 -0
  440. package/node_modules/signal-exit/LICENSE.txt +16 -0
  441. package/node_modules/signal-exit/README.md +39 -0
  442. package/node_modules/signal-exit/index.js +202 -0
  443. package/node_modules/signal-exit/package.json +38 -0
  444. package/node_modules/signal-exit/signals.js +53 -0
  445. package/node_modules/string_decoder/LICENSE +48 -0
  446. package/node_modules/string_decoder/README.md +47 -0
  447. package/node_modules/string_decoder/lib/string_decoder.js +296 -0
  448. package/node_modules/string_decoder/package.json +34 -0
  449. package/node_modules/strip-ansi/index.d.ts +17 -0
  450. package/node_modules/strip-ansi/index.js +4 -0
  451. package/node_modules/strip-ansi/license +9 -0
  452. package/node_modules/strip-ansi/package.json +54 -0
  453. package/node_modules/strip-ansi/readme.md +46 -0
  454. package/node_modules/supports-color/browser.js +5 -0
  455. package/node_modules/supports-color/index.js +135 -0
  456. package/node_modules/supports-color/license +9 -0
  457. package/node_modules/supports-color/package.json +53 -0
  458. package/node_modules/supports-color/readme.md +76 -0
  459. package/node_modules/util-deprecate/History.md +16 -0
  460. package/node_modules/util-deprecate/LICENSE +24 -0
  461. package/node_modules/util-deprecate/README.md +53 -0
  462. package/node_modules/util-deprecate/browser.js +67 -0
  463. package/node_modules/util-deprecate/node.js +6 -0
  464. package/node_modules/util-deprecate/package.json +27 -0
  465. package/node_modules/wcwidth/.npmignore +1 -0
  466. package/node_modules/wcwidth/LICENSE +30 -0
  467. package/node_modules/wcwidth/Readme.md +33 -0
  468. package/node_modules/wcwidth/combining.js +50 -0
  469. package/node_modules/wcwidth/docs/index.md +65 -0
  470. package/node_modules/wcwidth/index.js +99 -0
  471. package/node_modules/wcwidth/package.json +42 -0
  472. package/node_modules/wcwidth/test/index.js +64 -0
  473. package/node_modules/web-streams-polyfill/LICENSE +22 -0
  474. package/node_modules/web-streams-polyfill/README.md +110 -0
  475. package/node_modules/web-streams-polyfill/dist/polyfill.es2018.js +4765 -0
  476. package/node_modules/web-streams-polyfill/dist/polyfill.es2018.js.map +1 -0
  477. package/node_modules/web-streams-polyfill/dist/polyfill.es2018.min.js +9 -0
  478. package/node_modules/web-streams-polyfill/dist/polyfill.es2018.min.js.map +1 -0
  479. package/node_modules/web-streams-polyfill/dist/polyfill.es2018.mjs +4745 -0
  480. package/node_modules/web-streams-polyfill/dist/polyfill.es2018.mjs.map +1 -0
  481. package/node_modules/web-streams-polyfill/dist/polyfill.es6.js +4838 -0
  482. package/node_modules/web-streams-polyfill/dist/polyfill.es6.js.map +1 -0
  483. package/node_modules/web-streams-polyfill/dist/polyfill.es6.min.js +9 -0
  484. package/node_modules/web-streams-polyfill/dist/polyfill.es6.min.js.map +1 -0
  485. package/node_modules/web-streams-polyfill/dist/polyfill.es6.mjs +4818 -0
  486. package/node_modules/web-streams-polyfill/dist/polyfill.es6.mjs.map +1 -0
  487. package/node_modules/web-streams-polyfill/dist/polyfill.js +5011 -0
  488. package/node_modules/web-streams-polyfill/dist/polyfill.js.map +1 -0
  489. package/node_modules/web-streams-polyfill/dist/polyfill.min.js +9 -0
  490. package/node_modules/web-streams-polyfill/dist/polyfill.min.js.map +1 -0
  491. package/node_modules/web-streams-polyfill/dist/polyfill.mjs +4991 -0
  492. package/node_modules/web-streams-polyfill/dist/polyfill.mjs.map +1 -0
  493. package/node_modules/web-streams-polyfill/dist/ponyfill.es2018.js +4737 -0
  494. package/node_modules/web-streams-polyfill/dist/ponyfill.es2018.js.map +1 -0
  495. package/node_modules/web-streams-polyfill/dist/ponyfill.es2018.mjs +4717 -0
  496. package/node_modules/web-streams-polyfill/dist/ponyfill.es2018.mjs.map +1 -0
  497. package/node_modules/web-streams-polyfill/dist/ponyfill.es6.js +4810 -0
  498. package/node_modules/web-streams-polyfill/dist/ponyfill.es6.js.map +1 -0
  499. package/node_modules/web-streams-polyfill/dist/ponyfill.es6.mjs +4790 -0
  500. package/node_modules/web-streams-polyfill/dist/ponyfill.es6.mjs.map +1 -0
  501. package/node_modules/web-streams-polyfill/dist/ponyfill.js +4983 -0
  502. package/node_modules/web-streams-polyfill/dist/ponyfill.js.map +1 -0
  503. package/node_modules/web-streams-polyfill/dist/ponyfill.mjs +4963 -0
  504. package/node_modules/web-streams-polyfill/dist/ponyfill.mjs.map +1 -0
  505. package/node_modules/web-streams-polyfill/dist/types/polyfill.d.ts +24 -0
  506. package/node_modules/web-streams-polyfill/dist/types/ponyfill.d.ts +780 -0
  507. package/node_modules/web-streams-polyfill/dist/types/ts3.6/polyfill.d.ts +28 -0
  508. package/node_modules/web-streams-polyfill/dist/types/ts3.6/ponyfill.d.ts +821 -0
  509. package/node_modules/web-streams-polyfill/dist/types/tsdoc-metadata.json +11 -0
  510. package/node_modules/web-streams-polyfill/es2018/package.json +14 -0
  511. package/node_modules/web-streams-polyfill/es6/package.json +14 -0
  512. package/node_modules/web-streams-polyfill/package.json +83 -0
  513. package/node_modules/web-streams-polyfill/ponyfill/es2018/package.json +13 -0
  514. package/node_modules/web-streams-polyfill/ponyfill/es6/package.json +13 -0
  515. package/node_modules/web-streams-polyfill/ponyfill/package.json +13 -0
  516. package/package.json +26 -0
  517. package/version.json +18 -0
@@ -0,0 +1,35 @@
1
+ # is-unicode-supported
2
+
3
+ > Detect whether the terminal supports Unicode
4
+
5
+ This can be useful to decide whether to use Unicode characters or fallback ASCII characters in command-line output.
6
+
7
+ Note that the check is quite naive. It just assumes all non-Windows terminals support Unicode and hard-codes which Windows terminals that do support Unicode. However, I have been using this logic in some popular packages for years without problems.
8
+
9
+ ## Install
10
+
11
+ ```
12
+ $ npm install is-unicode-supported
13
+ ```
14
+
15
+ ## Usage
16
+
17
+ ```js
18
+ const isUnicodeSupported = require('is-unicode-supported');
19
+
20
+ isUnicodeSupported();
21
+ //=> true
22
+ ```
23
+
24
+ ## API
25
+
26
+ ### isUnicodeSupported()
27
+
28
+ Returns a `boolean` for whether the terminal supports Unicode.
29
+
30
+ ## Related
31
+
32
+ - [is-interactive](https://github.com/sindresorhus/is-interactive) - Check if stdout or stderr is interactive
33
+ - [supports-color](https://github.com/chalk/supports-color) - Detect whether a terminal supports color
34
+ - [figures](https://github.com/sindresorhus/figures) - Unicode symbols with Windows fallbacks
35
+ - [log-symbols](https://github.com/sindresorhus/log-symbols) - Colored symbols for various log levels
@@ -0,0 +1,8 @@
1
+ 'use strict';
2
+
3
+ module.exports = {
4
+ info: 'ℹ️',
5
+ success: '✅',
6
+ warning: '⚠️',
7
+ error: '❌️'
8
+ };
@@ -0,0 +1,25 @@
1
+ /**
2
+ Colored symbols for various log levels.
3
+
4
+ Includes fallbacks for Windows CMD which only supports a [limited character set](https://en.wikipedia.org/wiki/Code_page_437).
5
+
6
+ @example
7
+ ```
8
+ import logSymbols = require('log-symbols');
9
+
10
+ console.log(logSymbols.success, 'Finished successfully!');
11
+ // Terminals with Unicode support: ✔ Finished successfully!
12
+ // Terminals without Unicode support: √ Finished successfully!
13
+ ```
14
+ */
15
+ declare const logSymbols: {
16
+ readonly info: string;
17
+
18
+ readonly success: string;
19
+
20
+ readonly warning: string;
21
+
22
+ readonly error: string;
23
+ };
24
+
25
+ export = logSymbols;
@@ -0,0 +1,19 @@
1
+ 'use strict';
2
+ const chalk = require('chalk');
3
+ const isUnicodeSupported = require('is-unicode-supported');
4
+
5
+ const main = {
6
+ info: chalk.blue('ℹ'),
7
+ success: chalk.green('✔'),
8
+ warning: chalk.yellow('⚠'),
9
+ error: chalk.red('✖')
10
+ };
11
+
12
+ const fallback = {
13
+ info: chalk.blue('i'),
14
+ success: chalk.green('√'),
15
+ warning: chalk.yellow('‼'),
16
+ error: chalk.red('×')
17
+ };
18
+
19
+ module.exports = isUnicodeSupported() ? main : fallback;
@@ -0,0 +1,9 @@
1
+ MIT License
2
+
3
+ Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
6
+
7
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8
+
9
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,52 @@
1
+ {
2
+ "name": "log-symbols",
3
+ "version": "4.1.0",
4
+ "description": "Colored symbols for various log levels. Example: `✔︎ Success`",
5
+ "license": "MIT",
6
+ "repository": "sindresorhus/log-symbols",
7
+ "funding": "https://github.com/sponsors/sindresorhus",
8
+ "author": {
9
+ "name": "Sindre Sorhus",
10
+ "email": "sindresorhus@gmail.com",
11
+ "url": "https://sindresorhus.com"
12
+ },
13
+ "engines": {
14
+ "node": ">=10"
15
+ },
16
+ "scripts": {
17
+ "test": "xo && ava && tsd"
18
+ },
19
+ "files": [
20
+ "index.js",
21
+ "index.d.ts",
22
+ "browser.js"
23
+ ],
24
+ "keywords": [
25
+ "unicode",
26
+ "cli",
27
+ "cmd",
28
+ "command-line",
29
+ "characters",
30
+ "symbol",
31
+ "symbols",
32
+ "figure",
33
+ "figures",
34
+ "fallback",
35
+ "windows",
36
+ "log",
37
+ "logging",
38
+ "terminal",
39
+ "stdout"
40
+ ],
41
+ "dependencies": {
42
+ "chalk": "^4.1.0",
43
+ "is-unicode-supported": "^0.1.0"
44
+ },
45
+ "devDependencies": {
46
+ "ava": "^2.4.0",
47
+ "strip-ansi": "^6.0.0",
48
+ "tsd": "^0.14.0",
49
+ "xo": "^0.38.2"
50
+ },
51
+ "browser": "browser.js"
52
+ }
@@ -0,0 +1,51 @@
1
+ # log-symbols
2
+
3
+ <img src="screenshot.png" width="226" height="192" align="right">
4
+
5
+ > Colored symbols for various log levels
6
+
7
+ Includes fallbacks for Windows CMD which only supports a [limited character set](https://en.wikipedia.org/wiki/Code_page_437).
8
+
9
+ ## Install
10
+
11
+ ```
12
+ $ npm install log-symbols
13
+ ```
14
+
15
+ ## Usage
16
+
17
+ ```js
18
+ const logSymbols = require('log-symbols');
19
+
20
+ console.log(logSymbols.success, 'Finished successfully!');
21
+ // Terminals with Unicode support: ✔ Finished successfully!
22
+ // Terminals without Unicode support: √ Finished successfully!
23
+ ```
24
+
25
+ ## API
26
+
27
+ ### logSymbols
28
+
29
+ #### info
30
+ #### success
31
+ #### warning
32
+ #### error
33
+
34
+ ## Related
35
+
36
+ - [figures](https://github.com/sindresorhus/figures) - Unicode symbols with Windows CMD fallbacks
37
+ - [py-log-symbols](https://github.com/ManrajGrover/py-log-symbols) - Python port
38
+ - [log-symbols](https://github.com/palash25/log-symbols) - Ruby port
39
+ - [guumaster/logsymbols](https://github.com/guumaster/logsymbols) - Golang port
40
+
41
+ ---
42
+
43
+ <div align="center">
44
+ <b>
45
+ <a href="https://tidelift.com/subscription/pkg/npm-log-symbols?utm_source=npm-log-symbols&utm_medium=referral&utm_campaign=readme">Get professional support for this package with a Tidelift subscription</a>
46
+ </b>
47
+ <br>
48
+ <sub>
49
+ Tidelift helps make open source sustainable for maintainers while giving companies<br>assurances about security, maintenance, and licensing for their dependencies.
50
+ </sub>
51
+ </div>
@@ -0,0 +1,55 @@
1
+ # Blue Oak Model License
2
+
3
+ Version 1.0.0
4
+
5
+ ## Purpose
6
+
7
+ This license gives everyone as much permission to work with
8
+ this software as possible, while protecting contributors
9
+ from liability.
10
+
11
+ ## Acceptance
12
+
13
+ In order to receive this license, you must agree to its
14
+ rules. The rules of this license are both obligations
15
+ under that agreement and conditions to your license.
16
+ You must not do anything with this software that triggers
17
+ a rule that you cannot or will not follow.
18
+
19
+ ## Copyright
20
+
21
+ Each contributor licenses you to do everything with this
22
+ software that would otherwise infringe that contributor's
23
+ copyright in it.
24
+
25
+ ## Notices
26
+
27
+ You must ensure that everyone who gets a copy of
28
+ any part of this software from you, with or without
29
+ changes, also gets the text of this license or a link to
30
+ <https://blueoakcouncil.org/license/1.0.0>.
31
+
32
+ ## Excuse
33
+
34
+ If anyone notifies you in writing that you have not
35
+ complied with [Notices](#notices), you can keep your
36
+ license by taking all practical steps to comply within 30
37
+ days after the notice. If you do not do so, your license
38
+ ends immediately.
39
+
40
+ ## Patent
41
+
42
+ Each contributor licenses you to do everything with this
43
+ software that would otherwise infringe any patent claims
44
+ they can license or become able to license.
45
+
46
+ ## Reliability
47
+
48
+ No contributor can revoke this license.
49
+
50
+ ## No Liability
51
+
52
+ ***As far as the law allows, this software comes as is,
53
+ without any warranty or condition, and no contributor
54
+ will be liable to anyone for any damages related to this
55
+ software or this license, under any kind of legal claim.***
@@ -0,0 +1,383 @@
1
+ # lru-cache
2
+
3
+ A cache object that deletes the least-recently-used items.
4
+
5
+ Specify a max number of the most recently used items that you
6
+ want to keep, and this cache will keep that many of the most
7
+ recently accessed items.
8
+
9
+ This is not primarily a TTL cache, and does not make strong TTL
10
+ guarantees. There is no preemptive pruning of expired items by
11
+ default, but you _may_ set a TTL on the cache or on a single
12
+ `set`. If you do so, it will treat expired items as missing, and
13
+ delete them when fetched. If you are more interested in TTL
14
+ caching than LRU caching, check out
15
+ [@isaacs/ttlcache](http://npm.im/@isaacs/ttlcache).
16
+
17
+ As of version 7, this is one of the most performant LRU
18
+ implementations available in JavaScript, and supports a wide
19
+ diversity of use cases. However, note that using some of the
20
+ features will necessarily impact performance, by causing the
21
+ cache to have to do more work. See the "Performance" section
22
+ below.
23
+
24
+ ## Installation
25
+
26
+ ```bash
27
+ npm install lru-cache --save
28
+ ```
29
+
30
+ ## Usage
31
+
32
+ ```js
33
+ // hybrid module, either works
34
+ import { LRUCache } from 'lru-cache'
35
+ // or:
36
+ const { LRUCache } = require('lru-cache')
37
+ // or in minified form for web browsers:
38
+ import { LRUCache } from 'http://unpkg.com/lru-cache@9/dist/mjs/index.min.mjs'
39
+
40
+ // At least one of 'max', 'ttl', or 'maxSize' is required, to prevent
41
+ // unsafe unbounded storage.
42
+ //
43
+ // In most cases, it's best to specify a max for performance, so all
44
+ // the required memory allocation is done up-front.
45
+ //
46
+ // All the other options are optional, see the sections below for
47
+ // documentation on what each one does. Most of them can be
48
+ // overridden for specific items in get()/set()
49
+ const options = {
50
+ max: 500,
51
+
52
+ // for use with tracking overall storage size
53
+ maxSize: 5000,
54
+ sizeCalculation: (value, key) => {
55
+ return 1
56
+ },
57
+
58
+ // for use when you need to clean up something when objects
59
+ // are evicted from the cache
60
+ dispose: (value, key, reason) => {
61
+ freeFromMemoryOrWhatever(value)
62
+ },
63
+
64
+ // for use when you need to know that an item is being inserted
65
+ // note that this does NOT allow you to prevent the insertion,
66
+ // it just allows you to know about it.
67
+ onInsert: (value, key, reason) => {
68
+ logInsertionOrWhatever(key, value)
69
+ },
70
+
71
+ // how long to live in ms
72
+ ttl: 1000 * 60 * 5,
73
+
74
+ // return stale items before removing from cache?
75
+ allowStale: false,
76
+
77
+ updateAgeOnGet: false,
78
+ updateAgeOnHas: false,
79
+
80
+ // async method to use for cache.fetch(), for
81
+ // stale-while-revalidate type of behavior
82
+ fetchMethod: async (key, staleValue, { options, signal, context }) => {},
83
+ }
84
+
85
+ const cache = new LRUCache(options)
86
+
87
+ cache.set('key', 'value')
88
+ cache.get('key') // "value"
89
+
90
+ // non-string keys ARE fully supported
91
+ // but note that it must be THE SAME object, not
92
+ // just a JSON-equivalent object.
93
+ var someObject = { a: 1 }
94
+ cache.set(someObject, 'a value')
95
+ // Object keys are not toString()-ed
96
+ cache.set('[object Object]', 'a different value')
97
+ assert.equal(cache.get(someObject), 'a value')
98
+ // A similar object with same keys/values won't work,
99
+ // because it's a different object identity
100
+ assert.equal(cache.get({ a: 1 }), undefined)
101
+
102
+ cache.clear() // empty the cache
103
+ ```
104
+
105
+ If you put more stuff in the cache, then less recently used items
106
+ will fall out. That's what an LRU cache is.
107
+
108
+ For full description of the API and all options, please see [the
109
+ LRUCache typedocs](https://isaacs.github.io/node-lru-cache/)
110
+
111
+ ## Storage Bounds Safety
112
+
113
+ This implementation aims to be as flexible as possible, within
114
+ the limits of safe memory consumption and optimal performance.
115
+
116
+ At initial object creation, storage is allocated for `max` items.
117
+ If `max` is set to zero, then some performance is lost, and item
118
+ count is unbounded. Either `maxSize` or `ttl` _must_ be set if
119
+ `max` is not specified.
120
+
121
+ If `maxSize` is set, then this creates a safe limit on the
122
+ maximum storage consumed, but without the performance benefits of
123
+ pre-allocation. When `maxSize` is set, every item _must_ provide
124
+ a size, either via the `sizeCalculation` method provided to the
125
+ constructor, or via a `size` or `sizeCalculation` option provided
126
+ to `cache.set()`. The size of every item _must_ be a positive
127
+ integer.
128
+
129
+ If neither `max` nor `maxSize` are set, then `ttl` tracking must
130
+ be enabled. Note that, even when tracking item `ttl`, items are
131
+ _not_ preemptively deleted when they become stale, unless
132
+ `ttlAutopurge` is enabled. Instead, they are only purged the
133
+ next time the key is requested. Thus, if `ttlAutopurge`, `max`,
134
+ and `maxSize` are all not set, then the cache will potentially
135
+ grow unbounded.
136
+
137
+ In this case, a warning is printed to standard error. Future
138
+ versions may require the use of `ttlAutopurge` if `max` and
139
+ `maxSize` are not specified.
140
+
141
+ If you truly wish to use a cache that is bound _only_ by TTL
142
+ expiration, consider using a `Map` object, and calling
143
+ `setTimeout` to delete entries when they expire. It will perform
144
+ much better than an LRU cache.
145
+
146
+ Here is an implementation you may use, under the same
147
+ [license](./LICENSE) as this package:
148
+
149
+ ```js
150
+ // a storage-unbounded ttl cache that is not an lru-cache
151
+ const cache = {
152
+ data: new Map(),
153
+ timers: new Map(),
154
+ set: (k, v, ttl) => {
155
+ if (cache.timers.has(k)) {
156
+ clearTimeout(cache.timers.get(k))
157
+ }
158
+ cache.timers.set(
159
+ k,
160
+ setTimeout(() => cache.delete(k), ttl),
161
+ )
162
+ cache.data.set(k, v)
163
+ },
164
+ get: k => cache.data.get(k),
165
+ has: k => cache.data.has(k),
166
+ delete: k => {
167
+ if (cache.timers.has(k)) {
168
+ clearTimeout(cache.timers.get(k))
169
+ }
170
+ cache.timers.delete(k)
171
+ return cache.data.delete(k)
172
+ },
173
+ clear: () => {
174
+ cache.data.clear()
175
+ for (const v of cache.timers.values()) {
176
+ clearTimeout(v)
177
+ }
178
+ cache.timers.clear()
179
+ },
180
+ }
181
+ ```
182
+
183
+ If that isn't to your liking, check out
184
+ [@isaacs/ttlcache](http://npm.im/@isaacs/ttlcache).
185
+
186
+ ## Storing Undefined Values
187
+
188
+ This cache never stores undefined values, as `undefined` is used
189
+ internally in a few places to indicate that a key is not in the
190
+ cache.
191
+
192
+ You may call `cache.set(key, undefined)`, but this is just
193
+ an alias for `cache.delete(key)`. Note that this has the effect
194
+ that `cache.has(key)` will return _false_ after setting it to
195
+ undefined.
196
+
197
+ ```js
198
+ cache.set(myKey, undefined)
199
+ cache.has(myKey) // false!
200
+ ```
201
+
202
+ If you need to track `undefined` values, and still note that the
203
+ key is in the cache, an easy workaround is to use a sigil object
204
+ of your own.
205
+
206
+ ```js
207
+ import { LRUCache } from 'lru-cache'
208
+ const undefinedValue = Symbol('undefined')
209
+ const cache = new LRUCache(...)
210
+ const mySet = (key, value) =>
211
+ cache.set(key, value === undefined ? undefinedValue : value)
212
+ const myGet = (key, value) => {
213
+ const v = cache.get(key)
214
+ return v === undefinedValue ? undefined : v
215
+ }
216
+ ```
217
+
218
+ ## Performance
219
+
220
+ As of January 2022, version 7 of this library is one of the most
221
+ performant LRU cache implementations in JavaScript.
222
+
223
+ Benchmarks can be extremely difficult to get right. In
224
+ particular, the performance of set/get/delete operations on
225
+ objects will vary _wildly_ depending on the type of key used. V8
226
+ is highly optimized for objects with keys that are short strings,
227
+ especially integer numeric strings. Thus any benchmark which
228
+ tests _solely_ using numbers as keys will tend to find that an
229
+ object-based approach performs the best.
230
+
231
+ Note that coercing _anything_ to strings to use as object keys is
232
+ unsafe, unless you can be 100% certain that no other type of
233
+ value will be used. For example:
234
+
235
+ ```js
236
+ const myCache = {}
237
+ const set = (k, v) => (myCache[k] = v)
238
+ const get = k => myCache[k]
239
+
240
+ set({}, 'please hang onto this for me')
241
+ set('[object Object]', 'oopsie')
242
+ ```
243
+
244
+ Also beware of "Just So" stories regarding performance. Garbage
245
+ collection of large (especially: deep) object graphs can be
246
+ incredibly costly, with several "tipping points" where it
247
+ increases exponentially. As a result, putting that off until
248
+ later can make it much worse, and less predictable. If a library
249
+ performs well, but only in a scenario where the object graph is
250
+ kept shallow, then that won't help you if you are using large
251
+ objects as keys.
252
+
253
+ In general, when attempting to use a library to improve
254
+ performance (such as a cache like this one), it's best to choose
255
+ an option that will perform well in the sorts of scenarios where
256
+ you'll actually use it.
257
+
258
+ This library is optimized for repeated gets and minimizing
259
+ eviction time, since that is the expected need of a LRU. Set
260
+ operations are somewhat slower on average than a few other
261
+ options, in part because of that optimization. It is assumed
262
+ that you'll be caching some costly operation, ideally as rarely
263
+ as possible, so optimizing set over get would be unwise.
264
+
265
+ If performance matters to you:
266
+
267
+ 1. If it's at all possible to use small integer values as keys,
268
+ and you can guarantee that no other types of values will be
269
+ used as keys, then do that, and use a cache such as
270
+ [lru-fast](https://npmjs.com/package/lru-fast), or
271
+ [mnemonist's
272
+ LRUCache](https://yomguithereal.github.io/mnemonist/lru-cache)
273
+ which uses an Object as its data store.
274
+
275
+ 2. Failing that, if at all possible, use short non-numeric
276
+ strings (ie, less than 256 characters) as your keys, and use
277
+ [mnemonist's
278
+ LRUCache](https://yomguithereal.github.io/mnemonist/lru-cache).
279
+
280
+ 3. If the types of your keys will be anything else, especially
281
+ long strings, strings that look like floats, objects, or some
282
+ mix of types, or if you aren't sure, then this library will
283
+ work well for you.
284
+
285
+ If you do not need the features that this library provides
286
+ (like asynchronous fetching, a variety of TTL staleness
287
+ options, and so on), then [mnemonist's
288
+ LRUMap](https://yomguithereal.github.io/mnemonist/lru-map) is
289
+ a very good option, and just slightly faster than this module
290
+ (since it does considerably less).
291
+
292
+ 4. Do not use a `dispose` function, size tracking, or especially
293
+ ttl behavior, unless absolutely needed. These features are
294
+ convenient, and necessary in some use cases, and every attempt
295
+ has been made to make the performance impact minimal, but it
296
+ isn't nothing.
297
+
298
+ ## Testing
299
+
300
+ When writing tests that involve TTL-related functionality, note
301
+ that this module creates an internal reference to the global
302
+ `performance` or `Date` objects at import time. If you import it
303
+ statically at the top level, those references cannot be mocked or
304
+ overridden in your test environment.
305
+
306
+ To avoid this, dynamically import the package within your tests
307
+ so that the references are captured after your mocks are applied.
308
+ For example:
309
+
310
+ ```ts
311
+ // ❌ Not recommended
312
+ import { LRUCache } from 'lru-cache'
313
+ // mocking timers, e.g. jest.useFakeTimers()
314
+
315
+ // ✅ Recommended for TTL tests
316
+ // mocking timers, e.g. jest.useFakeTimers()
317
+ const { LRUCache } = await import('lru-cache')
318
+ ```
319
+
320
+ This ensures that your mocked timers or time sources are
321
+ respected when testing TTL behavior.
322
+
323
+ Additionally, you can pass in a `perf` option when creating your
324
+ LRUCache instance. This option accepts any object with a `now`
325
+ method that returns a number.
326
+
327
+ For example, this would be a very bare-bones time-mocking system
328
+ you could use in your tests, without any particular test
329
+ framework:
330
+
331
+ ```ts
332
+ import { LRUCache } from 'lru-cache'
333
+
334
+ let myClockTime = 0
335
+
336
+ const cache = new LRUCache<string>({
337
+ max: 10,
338
+ ttl: 1000,
339
+ perf: {
340
+ now: () => myClockTime,
341
+ },
342
+ })
343
+
344
+ // run tests, updating myClockTime as needed
345
+ ```
346
+
347
+ ## Breaking Changes in Version 7
348
+
349
+ This library changed to a different algorithm and internal data
350
+ structure in version 7, yielding significantly better
351
+ performance, albeit with some subtle changes as a result.
352
+
353
+ If you were relying on the internals of LRUCache in version 6 or
354
+ before, it probably will not work in version 7 and above.
355
+
356
+ ## Breaking Changes in Version 8
357
+
358
+ - The `fetchContext` option was renamed to `context`, and may no
359
+ longer be set on the cache instance itself.
360
+ - Rewritten in TypeScript, so pretty much all the types moved
361
+ around a lot.
362
+ - The AbortController/AbortSignal polyfill was removed. For this
363
+ reason, **Node version 16.14.0 or higher is now required**.
364
+ - Internal properties were moved to actual private class
365
+ properties.
366
+ - Keys and values must not be `null` or `undefined`.
367
+ - Minified export available at `'lru-cache/min'`, for both CJS
368
+ and MJS builds.
369
+
370
+ ## Breaking Changes in Version 9
371
+
372
+ - Named export only, no default export.
373
+ - AbortController polyfill returned, albeit with a warning when
374
+ used.
375
+
376
+ ## Breaking Changes in Version 10
377
+
378
+ - `cache.fetch()` return type is now `Promise<V | undefined>`
379
+ instead of `Promise<V | void>`. This is an irrelevant change
380
+ practically speaking, but can require changes for TypeScript
381
+ users.
382
+
383
+ For more info, see the [change log](CHANGELOG.md).