@esportsplus/typescript 0.8.3 → 0.8.4

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 (504) hide show
  1. package/node_modules/.package-lock.json +481 -0
  2. package/node_modules/@nodelib/fs.scandir/LICENSE +21 -0
  3. package/node_modules/@nodelib/fs.scandir/README.md +171 -0
  4. package/node_modules/@nodelib/fs.scandir/out/adapters/fs.d.ts +20 -0
  5. package/node_modules/@nodelib/fs.scandir/out/adapters/fs.js +19 -0
  6. package/node_modules/@nodelib/fs.scandir/out/constants.d.ts +4 -0
  7. package/node_modules/@nodelib/fs.scandir/out/constants.js +17 -0
  8. package/node_modules/@nodelib/fs.scandir/out/index.d.ts +12 -0
  9. package/node_modules/@nodelib/fs.scandir/out/index.js +26 -0
  10. package/node_modules/@nodelib/fs.scandir/out/providers/async.d.ts +7 -0
  11. package/node_modules/@nodelib/fs.scandir/out/providers/async.js +104 -0
  12. package/node_modules/@nodelib/fs.scandir/out/providers/common.d.ts +1 -0
  13. package/node_modules/@nodelib/fs.scandir/out/providers/common.js +13 -0
  14. package/node_modules/@nodelib/fs.scandir/out/providers/sync.d.ts +5 -0
  15. package/node_modules/@nodelib/fs.scandir/out/providers/sync.js +54 -0
  16. package/node_modules/@nodelib/fs.scandir/out/settings.d.ts +20 -0
  17. package/node_modules/@nodelib/fs.scandir/out/settings.js +24 -0
  18. package/node_modules/@nodelib/fs.scandir/out/types/index.d.ts +20 -0
  19. package/node_modules/@nodelib/fs.scandir/out/types/index.js +2 -0
  20. package/node_modules/@nodelib/fs.scandir/out/utils/fs.d.ts +2 -0
  21. package/node_modules/@nodelib/fs.scandir/out/utils/fs.js +19 -0
  22. package/node_modules/@nodelib/fs.scandir/out/utils/index.d.ts +2 -0
  23. package/node_modules/@nodelib/fs.scandir/out/utils/index.js +5 -0
  24. package/node_modules/@nodelib/fs.scandir/package.json +44 -0
  25. package/node_modules/@nodelib/fs.stat/LICENSE +21 -0
  26. package/node_modules/@nodelib/fs.stat/README.md +126 -0
  27. package/node_modules/@nodelib/fs.stat/out/adapters/fs.d.ts +13 -0
  28. package/node_modules/@nodelib/fs.stat/out/adapters/fs.js +17 -0
  29. package/node_modules/@nodelib/fs.stat/out/index.d.ts +12 -0
  30. package/node_modules/@nodelib/fs.stat/out/index.js +26 -0
  31. package/node_modules/@nodelib/fs.stat/out/providers/async.d.ts +4 -0
  32. package/node_modules/@nodelib/fs.stat/out/providers/async.js +36 -0
  33. package/node_modules/@nodelib/fs.stat/out/providers/sync.d.ts +3 -0
  34. package/node_modules/@nodelib/fs.stat/out/providers/sync.js +23 -0
  35. package/node_modules/@nodelib/fs.stat/out/settings.d.ts +16 -0
  36. package/node_modules/@nodelib/fs.stat/out/settings.js +16 -0
  37. package/node_modules/@nodelib/fs.stat/out/types/index.d.ts +4 -0
  38. package/node_modules/@nodelib/fs.stat/out/types/index.js +2 -0
  39. package/node_modules/@nodelib/fs.stat/package.json +37 -0
  40. package/node_modules/@nodelib/fs.walk/LICENSE +21 -0
  41. package/node_modules/@nodelib/fs.walk/README.md +215 -0
  42. package/node_modules/@nodelib/fs.walk/out/index.d.ts +14 -0
  43. package/node_modules/@nodelib/fs.walk/out/index.js +34 -0
  44. package/node_modules/@nodelib/fs.walk/out/providers/async.d.ts +12 -0
  45. package/node_modules/@nodelib/fs.walk/out/providers/async.js +30 -0
  46. package/node_modules/@nodelib/fs.walk/out/providers/index.d.ts +4 -0
  47. package/node_modules/@nodelib/fs.walk/out/providers/index.js +9 -0
  48. package/node_modules/@nodelib/fs.walk/out/providers/stream.d.ts +12 -0
  49. package/node_modules/@nodelib/fs.walk/out/providers/stream.js +34 -0
  50. package/node_modules/@nodelib/fs.walk/out/providers/sync.d.ts +10 -0
  51. package/node_modules/@nodelib/fs.walk/out/providers/sync.js +14 -0
  52. package/node_modules/@nodelib/fs.walk/out/readers/async.d.ts +30 -0
  53. package/node_modules/@nodelib/fs.walk/out/readers/async.js +97 -0
  54. package/node_modules/@nodelib/fs.walk/out/readers/common.d.ts +7 -0
  55. package/node_modules/@nodelib/fs.walk/out/readers/common.js +31 -0
  56. package/node_modules/@nodelib/fs.walk/out/readers/reader.d.ts +6 -0
  57. package/node_modules/@nodelib/fs.walk/out/readers/reader.js +11 -0
  58. package/node_modules/@nodelib/fs.walk/out/readers/sync.d.ts +15 -0
  59. package/node_modules/@nodelib/fs.walk/out/readers/sync.js +59 -0
  60. package/node_modules/@nodelib/fs.walk/out/settings.d.ts +30 -0
  61. package/node_modules/@nodelib/fs.walk/out/settings.js +26 -0
  62. package/node_modules/@nodelib/fs.walk/out/types/index.d.ts +8 -0
  63. package/node_modules/@nodelib/fs.walk/out/types/index.js +2 -0
  64. package/node_modules/@nodelib/fs.walk/package.json +44 -0
  65. package/node_modules/anymatch/LICENSE +15 -0
  66. package/node_modules/anymatch/README.md +87 -0
  67. package/node_modules/anymatch/index.d.ts +20 -0
  68. package/node_modules/anymatch/index.js +104 -0
  69. package/node_modules/anymatch/package.json +48 -0
  70. package/node_modules/array-union/index.d.ts +25 -0
  71. package/node_modules/array-union/index.js +5 -0
  72. package/node_modules/array-union/license +9 -0
  73. package/node_modules/array-union/package.json +38 -0
  74. package/node_modules/array-union/readme.md +34 -0
  75. package/node_modules/binary-extensions/binary-extensions.json +263 -0
  76. package/node_modules/binary-extensions/binary-extensions.json.d.ts +3 -0
  77. package/node_modules/binary-extensions/index.d.ts +14 -0
  78. package/node_modules/binary-extensions/index.js +1 -0
  79. package/node_modules/binary-extensions/license +10 -0
  80. package/node_modules/binary-extensions/package.json +40 -0
  81. package/node_modules/binary-extensions/readme.md +25 -0
  82. package/node_modules/braces/LICENSE +21 -0
  83. package/node_modules/braces/README.md +586 -0
  84. package/node_modules/braces/index.js +170 -0
  85. package/node_modules/braces/lib/compile.js +60 -0
  86. package/node_modules/braces/lib/constants.js +57 -0
  87. package/node_modules/braces/lib/expand.js +113 -0
  88. package/node_modules/braces/lib/parse.js +331 -0
  89. package/node_modules/braces/lib/stringify.js +32 -0
  90. package/node_modules/braces/lib/utils.js +122 -0
  91. package/node_modules/braces/package.json +77 -0
  92. package/node_modules/chokidar/LICENSE +21 -0
  93. package/node_modules/chokidar/README.md +308 -0
  94. package/node_modules/chokidar/index.js +973 -0
  95. package/node_modules/chokidar/lib/constants.js +66 -0
  96. package/node_modules/chokidar/lib/fsevents-handler.js +526 -0
  97. package/node_modules/chokidar/lib/nodefs-handler.js +654 -0
  98. package/node_modules/chokidar/package.json +70 -0
  99. package/node_modules/chokidar/types/index.d.ts +192 -0
  100. package/node_modules/commander/LICENSE +22 -0
  101. package/node_modules/commander/Readme.md +1129 -0
  102. package/node_modules/commander/esm.mjs +16 -0
  103. package/node_modules/commander/index.js +27 -0
  104. package/node_modules/commander/lib/argument.js +147 -0
  105. package/node_modules/commander/lib/command.js +2179 -0
  106. package/node_modules/commander/lib/error.js +45 -0
  107. package/node_modules/commander/lib/help.js +461 -0
  108. package/node_modules/commander/lib/option.js +326 -0
  109. package/node_modules/commander/lib/suggestSimilar.js +100 -0
  110. package/node_modules/commander/package-support.json +16 -0
  111. package/node_modules/commander/package.json +80 -0
  112. package/node_modules/commander/typings/index.d.ts +891 -0
  113. package/node_modules/dir-glob/index.js +75 -0
  114. package/node_modules/dir-glob/license +9 -0
  115. package/node_modules/dir-glob/package.json +38 -0
  116. package/node_modules/dir-glob/readme.md +76 -0
  117. package/node_modules/fast-glob/LICENSE +21 -0
  118. package/node_modules/fast-glob/README.md +830 -0
  119. package/node_modules/fast-glob/out/index.d.ts +40 -0
  120. package/node_modules/fast-glob/out/index.js +102 -0
  121. package/node_modules/fast-glob/out/managers/tasks.d.ts +22 -0
  122. package/node_modules/fast-glob/out/managers/tasks.js +110 -0
  123. package/node_modules/fast-glob/out/providers/async.d.ts +9 -0
  124. package/node_modules/fast-glob/out/providers/async.js +23 -0
  125. package/node_modules/fast-glob/out/providers/filters/deep.d.ts +16 -0
  126. package/node_modules/fast-glob/out/providers/filters/deep.js +62 -0
  127. package/node_modules/fast-glob/out/providers/filters/entry.d.ts +17 -0
  128. package/node_modules/fast-glob/out/providers/filters/entry.js +85 -0
  129. package/node_modules/fast-glob/out/providers/filters/error.d.ts +8 -0
  130. package/node_modules/fast-glob/out/providers/filters/error.js +15 -0
  131. package/node_modules/fast-glob/out/providers/matchers/matcher.d.ts +33 -0
  132. package/node_modules/fast-glob/out/providers/matchers/matcher.js +45 -0
  133. package/node_modules/fast-glob/out/providers/matchers/partial.d.ts +4 -0
  134. package/node_modules/fast-glob/out/providers/matchers/partial.js +38 -0
  135. package/node_modules/fast-glob/out/providers/provider.d.ts +19 -0
  136. package/node_modules/fast-glob/out/providers/provider.js +48 -0
  137. package/node_modules/fast-glob/out/providers/stream.d.ts +11 -0
  138. package/node_modules/fast-glob/out/providers/stream.js +31 -0
  139. package/node_modules/fast-glob/out/providers/sync.d.ts +9 -0
  140. package/node_modules/fast-glob/out/providers/sync.js +23 -0
  141. package/node_modules/fast-glob/out/providers/transformers/entry.d.ts +8 -0
  142. package/node_modules/fast-glob/out/providers/transformers/entry.js +26 -0
  143. package/node_modules/fast-glob/out/readers/async.d.ts +10 -0
  144. package/node_modules/fast-glob/out/readers/async.js +35 -0
  145. package/node_modules/fast-glob/out/readers/reader.d.ts +15 -0
  146. package/node_modules/fast-glob/out/readers/reader.js +33 -0
  147. package/node_modules/fast-glob/out/readers/stream.d.ts +14 -0
  148. package/node_modules/fast-glob/out/readers/stream.js +55 -0
  149. package/node_modules/fast-glob/out/readers/sync.d.ts +12 -0
  150. package/node_modules/fast-glob/out/readers/sync.js +43 -0
  151. package/node_modules/fast-glob/out/settings.d.ts +164 -0
  152. package/node_modules/fast-glob/out/settings.js +59 -0
  153. package/node_modules/fast-glob/out/types/index.d.ts +31 -0
  154. package/node_modules/fast-glob/out/types/index.js +2 -0
  155. package/node_modules/fast-glob/out/utils/array.d.ts +2 -0
  156. package/node_modules/fast-glob/out/utils/array.js +22 -0
  157. package/node_modules/fast-glob/out/utils/errno.d.ts +2 -0
  158. package/node_modules/fast-glob/out/utils/errno.js +7 -0
  159. package/node_modules/fast-glob/out/utils/fs.d.ts +4 -0
  160. package/node_modules/fast-glob/out/utils/fs.js +19 -0
  161. package/node_modules/fast-glob/out/utils/index.d.ts +8 -0
  162. package/node_modules/fast-glob/out/utils/index.js +17 -0
  163. package/node_modules/fast-glob/out/utils/path.d.ts +13 -0
  164. package/node_modules/fast-glob/out/utils/path.js +68 -0
  165. package/node_modules/fast-glob/out/utils/pattern.d.ts +49 -0
  166. package/node_modules/fast-glob/out/utils/pattern.js +206 -0
  167. package/node_modules/fast-glob/out/utils/stream.d.ts +4 -0
  168. package/node_modules/fast-glob/out/utils/stream.js +17 -0
  169. package/node_modules/fast-glob/out/utils/string.d.ts +2 -0
  170. package/node_modules/fast-glob/out/utils/string.js +11 -0
  171. package/node_modules/fast-glob/package.json +81 -0
  172. package/node_modules/fastq/.github/dependabot.yml +11 -0
  173. package/node_modules/fastq/.github/workflows/ci.yml +75 -0
  174. package/node_modules/fastq/LICENSE +13 -0
  175. package/node_modules/fastq/README.md +312 -0
  176. package/node_modules/fastq/SECURITY.md +15 -0
  177. package/node_modules/fastq/bench.js +66 -0
  178. package/node_modules/fastq/example.js +14 -0
  179. package/node_modules/fastq/example.mjs +11 -0
  180. package/node_modules/fastq/index.d.ts +57 -0
  181. package/node_modules/fastq/package.json +53 -0
  182. package/node_modules/fastq/queue.js +311 -0
  183. package/node_modules/fastq/test/example.ts +83 -0
  184. package/node_modules/fastq/test/promise.js +291 -0
  185. package/node_modules/fastq/test/test.js +653 -0
  186. package/node_modules/fastq/test/tsconfig.json +11 -0
  187. package/node_modules/fill-range/LICENSE +21 -0
  188. package/node_modules/fill-range/README.md +237 -0
  189. package/node_modules/fill-range/index.js +248 -0
  190. package/node_modules/fill-range/package.json +74 -0
  191. package/node_modules/get-tsconfig/LICENSE +21 -0
  192. package/node_modules/get-tsconfig/README.md +235 -0
  193. package/node_modules/get-tsconfig/dist/index.cjs +7 -0
  194. package/node_modules/get-tsconfig/dist/index.d.cts +1439 -0
  195. package/node_modules/get-tsconfig/dist/index.d.mts +1439 -0
  196. package/node_modules/get-tsconfig/dist/index.mjs +7 -0
  197. package/node_modules/get-tsconfig/package.json +46 -0
  198. package/node_modules/glob-parent/CHANGELOG.md +110 -0
  199. package/node_modules/glob-parent/LICENSE +15 -0
  200. package/node_modules/glob-parent/README.md +137 -0
  201. package/node_modules/glob-parent/index.js +42 -0
  202. package/node_modules/glob-parent/package.json +48 -0
  203. package/node_modules/globby/gitignore.js +120 -0
  204. package/node_modules/globby/index.d.ts +186 -0
  205. package/node_modules/globby/index.js +181 -0
  206. package/node_modules/globby/license +9 -0
  207. package/node_modules/globby/package.json +82 -0
  208. package/node_modules/globby/readme.md +170 -0
  209. package/node_modules/globby/stream-utils.js +46 -0
  210. package/node_modules/ignore/LICENSE-MIT +21 -0
  211. package/node_modules/ignore/README.md +412 -0
  212. package/node_modules/ignore/index.d.ts +61 -0
  213. package/node_modules/ignore/index.js +636 -0
  214. package/node_modules/ignore/legacy.js +559 -0
  215. package/node_modules/ignore/package.json +74 -0
  216. package/node_modules/is-binary-path/index.d.ts +17 -0
  217. package/node_modules/is-binary-path/index.js +7 -0
  218. package/node_modules/is-binary-path/license +9 -0
  219. package/node_modules/is-binary-path/package.json +40 -0
  220. package/node_modules/is-binary-path/readme.md +34 -0
  221. package/node_modules/is-extglob/LICENSE +21 -0
  222. package/node_modules/is-extglob/README.md +107 -0
  223. package/node_modules/is-extglob/index.js +20 -0
  224. package/node_modules/is-extglob/package.json +69 -0
  225. package/node_modules/is-glob/LICENSE +21 -0
  226. package/node_modules/is-glob/README.md +206 -0
  227. package/node_modules/is-glob/index.js +150 -0
  228. package/node_modules/is-glob/package.json +81 -0
  229. package/node_modules/is-number/LICENSE +21 -0
  230. package/node_modules/is-number/README.md +187 -0
  231. package/node_modules/is-number/index.js +18 -0
  232. package/node_modules/is-number/package.json +82 -0
  233. package/node_modules/merge2/LICENSE +21 -0
  234. package/node_modules/merge2/README.md +144 -0
  235. package/node_modules/merge2/index.js +144 -0
  236. package/node_modules/merge2/package.json +43 -0
  237. package/node_modules/micromatch/LICENSE +21 -0
  238. package/node_modules/micromatch/README.md +1024 -0
  239. package/node_modules/micromatch/index.js +474 -0
  240. package/node_modules/micromatch/package.json +119 -0
  241. package/node_modules/mylas/LICENSE +21 -0
  242. package/node_modules/mylas/README.md +39 -0
  243. package/node_modules/mylas/build/chunk-3EDNT3AM.js +1 -0
  244. package/node_modules/mylas/build/chunk-M3H36CX2.js +3 -0
  245. package/node_modules/mylas/build/index.d.ts +22 -0
  246. package/node_modules/mylas/build/index.js +1 -0
  247. package/node_modules/mylas/build/interfaces.d.ts +201 -0
  248. package/node_modules/mylas/build/register.d.ts +9 -0
  249. package/node_modules/mylas/build/register.js +1 -0
  250. package/node_modules/mylas/build/worker.js +1 -0
  251. package/node_modules/mylas/package.json +65 -0
  252. package/node_modules/normalize-path/LICENSE +21 -0
  253. package/node_modules/normalize-path/README.md +127 -0
  254. package/node_modules/normalize-path/index.js +35 -0
  255. package/node_modules/normalize-path/package.json +77 -0
  256. package/node_modules/path-type/index.d.ts +51 -0
  257. package/node_modules/path-type/index.js +43 -0
  258. package/node_modules/path-type/license +9 -0
  259. package/node_modules/path-type/package.json +45 -0
  260. package/node_modules/path-type/readme.md +72 -0
  261. package/node_modules/picomatch/CHANGELOG.md +136 -0
  262. package/node_modules/picomatch/LICENSE +21 -0
  263. package/node_modules/picomatch/README.md +708 -0
  264. package/node_modules/picomatch/index.js +3 -0
  265. package/node_modules/picomatch/lib/constants.js +179 -0
  266. package/node_modules/picomatch/lib/parse.js +1091 -0
  267. package/node_modules/picomatch/lib/picomatch.js +342 -0
  268. package/node_modules/picomatch/lib/scan.js +391 -0
  269. package/node_modules/picomatch/lib/utils.js +64 -0
  270. package/node_modules/picomatch/package.json +81 -0
  271. package/node_modules/plimit-lit/LICENSE +21 -0
  272. package/node_modules/plimit-lit/README.md +99 -0
  273. package/node_modules/plimit-lit/dist/index.d.ts +6 -0
  274. package/node_modules/plimit-lit/dist/plimit-lit.cjs +91 -0
  275. package/node_modules/plimit-lit/dist/plimit-lit.modern.js +91 -0
  276. package/node_modules/plimit-lit/dist/plimit-lit.module.js +91 -0
  277. package/node_modules/plimit-lit/package.json +55 -0
  278. package/node_modules/queue-lit/LICENSE +21 -0
  279. package/node_modules/queue-lit/README.md +93 -0
  280. package/node_modules/queue-lit/dist/index.d.ts +34 -0
  281. package/node_modules/queue-lit/dist/queue-lit.cjs +110 -0
  282. package/node_modules/queue-lit/dist/queue-lit.modern.js +110 -0
  283. package/node_modules/queue-lit/dist/queue-lit.module.js +110 -0
  284. package/node_modules/queue-lit/package.json +53 -0
  285. package/node_modules/queue-microtask/LICENSE +20 -0
  286. package/node_modules/queue-microtask/README.md +90 -0
  287. package/node_modules/queue-microtask/index.d.ts +2 -0
  288. package/node_modules/queue-microtask/index.js +9 -0
  289. package/node_modules/queue-microtask/package.json +55 -0
  290. package/node_modules/readdirp/LICENSE +21 -0
  291. package/node_modules/readdirp/README.md +122 -0
  292. package/node_modules/readdirp/index.d.ts +43 -0
  293. package/node_modules/readdirp/index.js +287 -0
  294. package/node_modules/readdirp/package.json +122 -0
  295. package/node_modules/resolve-pkg-maps/LICENSE +21 -0
  296. package/node_modules/resolve-pkg-maps/README.md +216 -0
  297. package/node_modules/resolve-pkg-maps/dist/index.cjs +1 -0
  298. package/node_modules/resolve-pkg-maps/dist/index.d.cts +11 -0
  299. package/node_modules/resolve-pkg-maps/dist/index.d.mts +11 -0
  300. package/node_modules/resolve-pkg-maps/dist/index.mjs +1 -0
  301. package/node_modules/resolve-pkg-maps/package.json +42 -0
  302. package/node_modules/reusify/.github/dependabot.yml +7 -0
  303. package/node_modules/reusify/.github/workflows/ci.yml +96 -0
  304. package/node_modules/reusify/LICENSE +22 -0
  305. package/node_modules/reusify/README.md +139 -0
  306. package/node_modules/reusify/SECURITY.md +15 -0
  307. package/node_modules/reusify/benchmarks/createNoCodeFunction.js +30 -0
  308. package/node_modules/reusify/benchmarks/fib.js +13 -0
  309. package/node_modules/reusify/benchmarks/reuseNoCodeFunction.js +38 -0
  310. package/node_modules/reusify/eslint.config.js +14 -0
  311. package/node_modules/reusify/package.json +50 -0
  312. package/node_modules/reusify/reusify.d.ts +14 -0
  313. package/node_modules/reusify/reusify.js +33 -0
  314. package/node_modules/reusify/test.js +66 -0
  315. package/node_modules/reusify/tsconfig.json +11 -0
  316. package/node_modules/run-parallel/LICENSE +20 -0
  317. package/node_modules/run-parallel/README.md +85 -0
  318. package/node_modules/run-parallel/index.js +51 -0
  319. package/node_modules/run-parallel/package.json +58 -0
  320. package/node_modules/slash/index.d.ts +25 -0
  321. package/node_modules/slash/index.js +11 -0
  322. package/node_modules/slash/license +9 -0
  323. package/node_modules/slash/package.json +35 -0
  324. package/node_modules/slash/readme.md +44 -0
  325. package/node_modules/to-regex-range/LICENSE +21 -0
  326. package/node_modules/to-regex-range/README.md +305 -0
  327. package/node_modules/to-regex-range/index.js +288 -0
  328. package/node_modules/to-regex-range/package.json +88 -0
  329. package/node_modules/tsc-alias/LICENSE +21 -0
  330. package/node_modules/tsc-alias/README.md +184 -0
  331. package/node_modules/tsc-alias/dist/bin/index.d.ts +2 -0
  332. package/node_modules/tsc-alias/dist/bin/index.js +39 -0
  333. package/node_modules/tsc-alias/dist/bin/index.js.map +1 -0
  334. package/node_modules/tsc-alias/dist/helpers/config.d.ts +5 -0
  335. package/node_modules/tsc-alias/dist/helpers/config.js +181 -0
  336. package/node_modules/tsc-alias/dist/helpers/config.js.map +1 -0
  337. package/node_modules/tsc-alias/dist/helpers/index.d.ts +3 -0
  338. package/node_modules/tsc-alias/dist/helpers/index.js +20 -0
  339. package/node_modules/tsc-alias/dist/helpers/index.js.map +1 -0
  340. package/node_modules/tsc-alias/dist/helpers/path.d.ts +3 -0
  341. package/node_modules/tsc-alias/dist/helpers/path.js +73 -0
  342. package/node_modules/tsc-alias/dist/helpers/path.js.map +1 -0
  343. package/node_modules/tsc-alias/dist/helpers/replacers.d.ts +4 -0
  344. package/node_modules/tsc-alias/dist/helpers/replacers.js +150 -0
  345. package/node_modules/tsc-alias/dist/helpers/replacers.js.map +1 -0
  346. package/node_modules/tsc-alias/dist/index.d.ts +8 -0
  347. package/node_modules/tsc-alias/dist/index.js +74 -0
  348. package/node_modules/tsc-alias/dist/index.js.map +1 -0
  349. package/node_modules/tsc-alias/dist/interfaces.d.ts +87 -0
  350. package/node_modules/tsc-alias/dist/interfaces.js +3 -0
  351. package/node_modules/tsc-alias/dist/interfaces.js.map +1 -0
  352. package/node_modules/tsc-alias/dist/replacers/base-url.replacer.d.ts +2 -0
  353. package/node_modules/tsc-alias/dist/replacers/base-url.replacer.js +33 -0
  354. package/node_modules/tsc-alias/dist/replacers/base-url.replacer.js.map +1 -0
  355. package/node_modules/tsc-alias/dist/replacers/default.replacer.d.ts +2 -0
  356. package/node_modules/tsc-alias/dist/replacers/default.replacer.js +67 -0
  357. package/node_modules/tsc-alias/dist/replacers/default.replacer.js.map +1 -0
  358. package/node_modules/tsc-alias/dist/utils/import-path-resolver.d.ts +19 -0
  359. package/node_modules/tsc-alias/dist/utils/import-path-resolver.js +87 -0
  360. package/node_modules/tsc-alias/dist/utils/import-path-resolver.js.map +1 -0
  361. package/node_modules/tsc-alias/dist/utils/index.d.ts +4 -0
  362. package/node_modules/tsc-alias/dist/utils/index.js +21 -0
  363. package/node_modules/tsc-alias/dist/utils/index.js.map +1 -0
  364. package/node_modules/tsc-alias/dist/utils/output.d.ts +11 -0
  365. package/node_modules/tsc-alias/dist/utils/output.js +44 -0
  366. package/node_modules/tsc-alias/dist/utils/output.js.map +1 -0
  367. package/node_modules/tsc-alias/dist/utils/path-cache.d.ts +12 -0
  368. package/node_modules/tsc-alias/dist/utils/path-cache.js +74 -0
  369. package/node_modules/tsc-alias/dist/utils/path-cache.js.map +1 -0
  370. package/node_modules/tsc-alias/dist/utils/trie.d.ts +9 -0
  371. package/node_modules/tsc-alias/dist/utils/trie.js +81 -0
  372. package/node_modules/tsc-alias/dist/utils/trie.js.map +1 -0
  373. package/node_modules/tsc-alias/package.json +66 -0
  374. package/node_modules/typescript/LICENSE.txt +55 -0
  375. package/node_modules/typescript/README.md +50 -0
  376. package/node_modules/typescript/SECURITY.md +41 -0
  377. package/node_modules/typescript/ThirdPartyNoticeText.txt +193 -0
  378. package/node_modules/typescript/bin/tsc +2 -0
  379. package/node_modules/typescript/bin/tsserver +2 -0
  380. package/node_modules/typescript/lib/_tsc.js +132810 -0
  381. package/node_modules/typescript/lib/_tsserver.js +659 -0
  382. package/node_modules/typescript/lib/_typingsInstaller.js +222 -0
  383. package/node_modules/typescript/lib/cs/diagnosticMessages.generated.json +2105 -0
  384. package/node_modules/typescript/lib/de/diagnosticMessages.generated.json +2105 -0
  385. package/node_modules/typescript/lib/es/diagnosticMessages.generated.json +2105 -0
  386. package/node_modules/typescript/lib/fr/diagnosticMessages.generated.json +2105 -0
  387. package/node_modules/typescript/lib/it/diagnosticMessages.generated.json +2105 -0
  388. package/node_modules/typescript/lib/ja/diagnosticMessages.generated.json +2105 -0
  389. package/node_modules/typescript/lib/ko/diagnosticMessages.generated.json +2105 -0
  390. package/node_modules/typescript/lib/lib.d.ts +22 -0
  391. package/node_modules/typescript/lib/lib.decorators.d.ts +384 -0
  392. package/node_modules/typescript/lib/lib.decorators.legacy.d.ts +22 -0
  393. package/node_modules/typescript/lib/lib.dom.asynciterable.d.ts +41 -0
  394. package/node_modules/typescript/lib/lib.dom.d.ts +29610 -0
  395. package/node_modules/typescript/lib/lib.dom.iterable.d.ts +493 -0
  396. package/node_modules/typescript/lib/lib.es2015.collection.d.ts +147 -0
  397. package/node_modules/typescript/lib/lib.es2015.core.d.ts +597 -0
  398. package/node_modules/typescript/lib/lib.es2015.d.ts +28 -0
  399. package/node_modules/typescript/lib/lib.es2015.generator.d.ts +77 -0
  400. package/node_modules/typescript/lib/lib.es2015.iterable.d.ts +605 -0
  401. package/node_modules/typescript/lib/lib.es2015.promise.d.ts +81 -0
  402. package/node_modules/typescript/lib/lib.es2015.proxy.d.ts +128 -0
  403. package/node_modules/typescript/lib/lib.es2015.reflect.d.ts +144 -0
  404. package/node_modules/typescript/lib/lib.es2015.symbol.d.ts +46 -0
  405. package/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts +326 -0
  406. package/node_modules/typescript/lib/lib.es2016.array.include.d.ts +116 -0
  407. package/node_modules/typescript/lib/lib.es2016.d.ts +21 -0
  408. package/node_modules/typescript/lib/lib.es2016.full.d.ts +23 -0
  409. package/node_modules/typescript/lib/lib.es2016.intl.d.ts +31 -0
  410. package/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts +21 -0
  411. package/node_modules/typescript/lib/lib.es2017.d.ts +26 -0
  412. package/node_modules/typescript/lib/lib.es2017.date.d.ts +31 -0
  413. package/node_modules/typescript/lib/lib.es2017.full.d.ts +23 -0
  414. package/node_modules/typescript/lib/lib.es2017.intl.d.ts +44 -0
  415. package/node_modules/typescript/lib/lib.es2017.object.d.ts +49 -0
  416. package/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts +135 -0
  417. package/node_modules/typescript/lib/lib.es2017.string.d.ts +45 -0
  418. package/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts +53 -0
  419. package/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts +77 -0
  420. package/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts +53 -0
  421. package/node_modules/typescript/lib/lib.es2018.d.ts +24 -0
  422. package/node_modules/typescript/lib/lib.es2018.full.d.ts +24 -0
  423. package/node_modules/typescript/lib/lib.es2018.intl.d.ts +83 -0
  424. package/node_modules/typescript/lib/lib.es2018.promise.d.ts +30 -0
  425. package/node_modules/typescript/lib/lib.es2018.regexp.d.ts +37 -0
  426. package/node_modules/typescript/lib/lib.es2019.array.d.ts +79 -0
  427. package/node_modules/typescript/lib/lib.es2019.d.ts +24 -0
  428. package/node_modules/typescript/lib/lib.es2019.full.d.ts +24 -0
  429. package/node_modules/typescript/lib/lib.es2019.intl.d.ts +23 -0
  430. package/node_modules/typescript/lib/lib.es2019.object.d.ts +33 -0
  431. package/node_modules/typescript/lib/lib.es2019.string.d.ts +37 -0
  432. package/node_modules/typescript/lib/lib.es2019.symbol.d.ts +24 -0
  433. package/node_modules/typescript/lib/lib.es2020.bigint.d.ts +765 -0
  434. package/node_modules/typescript/lib/lib.es2020.d.ts +27 -0
  435. package/node_modules/typescript/lib/lib.es2020.date.d.ts +42 -0
  436. package/node_modules/typescript/lib/lib.es2020.full.d.ts +24 -0
  437. package/node_modules/typescript/lib/lib.es2020.intl.d.ts +474 -0
  438. package/node_modules/typescript/lib/lib.es2020.number.d.ts +28 -0
  439. package/node_modules/typescript/lib/lib.es2020.promise.d.ts +47 -0
  440. package/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts +99 -0
  441. package/node_modules/typescript/lib/lib.es2020.string.d.ts +44 -0
  442. package/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts +41 -0
  443. package/node_modules/typescript/lib/lib.es2021.d.ts +23 -0
  444. package/node_modules/typescript/lib/lib.es2021.full.d.ts +24 -0
  445. package/node_modules/typescript/lib/lib.es2021.intl.d.ts +166 -0
  446. package/node_modules/typescript/lib/lib.es2021.promise.d.ts +48 -0
  447. package/node_modules/typescript/lib/lib.es2021.string.d.ts +33 -0
  448. package/node_modules/typescript/lib/lib.es2021.weakref.d.ts +78 -0
  449. package/node_modules/typescript/lib/lib.es2022.array.d.ts +121 -0
  450. package/node_modules/typescript/lib/lib.es2022.d.ts +25 -0
  451. package/node_modules/typescript/lib/lib.es2022.error.d.ts +75 -0
  452. package/node_modules/typescript/lib/lib.es2022.full.d.ts +24 -0
  453. package/node_modules/typescript/lib/lib.es2022.intl.d.ts +121 -0
  454. package/node_modules/typescript/lib/lib.es2022.object.d.ts +26 -0
  455. package/node_modules/typescript/lib/lib.es2022.regexp.d.ts +39 -0
  456. package/node_modules/typescript/lib/lib.es2022.string.d.ts +25 -0
  457. package/node_modules/typescript/lib/lib.es2023.array.d.ts +924 -0
  458. package/node_modules/typescript/lib/lib.es2023.collection.d.ts +21 -0
  459. package/node_modules/typescript/lib/lib.es2023.d.ts +22 -0
  460. package/node_modules/typescript/lib/lib.es2023.full.d.ts +24 -0
  461. package/node_modules/typescript/lib/lib.es2023.intl.d.ts +56 -0
  462. package/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts +65 -0
  463. package/node_modules/typescript/lib/lib.es2024.collection.d.ts +29 -0
  464. package/node_modules/typescript/lib/lib.es2024.d.ts +26 -0
  465. package/node_modules/typescript/lib/lib.es2024.full.d.ts +24 -0
  466. package/node_modules/typescript/lib/lib.es2024.object.d.ts +29 -0
  467. package/node_modules/typescript/lib/lib.es2024.promise.d.ts +35 -0
  468. package/node_modules/typescript/lib/lib.es2024.regexp.d.ts +25 -0
  469. package/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts +68 -0
  470. package/node_modules/typescript/lib/lib.es2024.string.d.ts +29 -0
  471. package/node_modules/typescript/lib/lib.es5.d.ts +4594 -0
  472. package/node_modules/typescript/lib/lib.es6.d.ts +23 -0
  473. package/node_modules/typescript/lib/lib.esnext.array.d.ts +35 -0
  474. package/node_modules/typescript/lib/lib.esnext.collection.d.ts +96 -0
  475. package/node_modules/typescript/lib/lib.esnext.d.ts +27 -0
  476. package/node_modules/typescript/lib/lib.esnext.decorators.d.ts +28 -0
  477. package/node_modules/typescript/lib/lib.esnext.disposable.d.ts +193 -0
  478. package/node_modules/typescript/lib/lib.esnext.float16.d.ts +443 -0
  479. package/node_modules/typescript/lib/lib.esnext.full.d.ts +24 -0
  480. package/node_modules/typescript/lib/lib.esnext.intl.d.ts +21 -0
  481. package/node_modules/typescript/lib/lib.esnext.iterator.d.ts +148 -0
  482. package/node_modules/typescript/lib/lib.esnext.promise.d.ts +34 -0
  483. package/node_modules/typescript/lib/lib.scripthost.d.ts +322 -0
  484. package/node_modules/typescript/lib/lib.webworker.asynciterable.d.ts +41 -0
  485. package/node_modules/typescript/lib/lib.webworker.d.ts +9894 -0
  486. package/node_modules/typescript/lib/lib.webworker.importscripts.d.ts +23 -0
  487. package/node_modules/typescript/lib/lib.webworker.iterable.d.ts +287 -0
  488. package/node_modules/typescript/lib/pl/diagnosticMessages.generated.json +2105 -0
  489. package/node_modules/typescript/lib/pt-br/diagnosticMessages.generated.json +2105 -0
  490. package/node_modules/typescript/lib/ru/diagnosticMessages.generated.json +2105 -0
  491. package/node_modules/typescript/lib/tr/diagnosticMessages.generated.json +2105 -0
  492. package/node_modules/typescript/lib/tsc.js +8 -0
  493. package/node_modules/typescript/lib/tsserver.js +8 -0
  494. package/node_modules/typescript/lib/tsserverlibrary.d.ts +17 -0
  495. package/node_modules/typescript/lib/tsserverlibrary.js +21 -0
  496. package/node_modules/typescript/lib/typesMap.json +497 -0
  497. package/node_modules/typescript/lib/typescript.d.ts +11399 -0
  498. package/node_modules/typescript/lib/typescript.js +199120 -0
  499. package/node_modules/typescript/lib/typingsInstaller.js +8 -0
  500. package/node_modules/typescript/lib/watchGuard.js +53 -0
  501. package/node_modules/typescript/lib/zh-cn/diagnosticMessages.generated.json +2105 -0
  502. package/node_modules/typescript/lib/zh-tw/diagnosticMessages.generated.json +2105 -0
  503. package/node_modules/typescript/package.json +120 -0
  504. package/package.json +4 -2
@@ -0,0 +1,42 @@
1
+ {
2
+ "name": "resolve-pkg-maps",
3
+ "version": "1.0.0",
4
+ "description": "Resolve package.json exports & imports maps",
5
+ "keywords": [
6
+ "node.js",
7
+ "package.json",
8
+ "exports",
9
+ "imports"
10
+ ],
11
+ "license": "MIT",
12
+ "repository": "privatenumber/resolve-pkg-maps",
13
+ "funding": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1",
14
+ "author": {
15
+ "name": "Hiroki Osame",
16
+ "email": "hiroki.osame@gmail.com"
17
+ },
18
+ "type": "module",
19
+ "files": [
20
+ "dist"
21
+ ],
22
+ "main": "./dist/index.cjs",
23
+ "module": "./dist/index.mjs",
24
+ "types": "./dist/index.d.cts",
25
+ "exports": {
26
+ "require": {
27
+ "types": "./dist/index.d.cts",
28
+ "default": "./dist/index.cjs"
29
+ },
30
+ "import": {
31
+ "types": "./dist/index.d.mts",
32
+ "default": "./dist/index.mjs"
33
+ }
34
+ },
35
+ "imports": {
36
+ "#resolve-pkg-maps": {
37
+ "types": "./src/index.ts",
38
+ "development": "./src/index.ts",
39
+ "default": "./dist/index.mjs"
40
+ }
41
+ }
42
+ }
@@ -0,0 +1,7 @@
1
+ version: 2
2
+ updates:
3
+ - package-ecosystem: npm
4
+ directory: "/"
5
+ schedule:
6
+ interval: daily
7
+ open-pull-requests-limit: 10
@@ -0,0 +1,96 @@
1
+ name: ci
2
+
3
+ on: [push, pull_request]
4
+
5
+ jobs:
6
+ legacy:
7
+ runs-on: ubuntu-latest
8
+
9
+ strategy:
10
+ matrix:
11
+ node-version: ['0.10', '0.12', 4.x, 6.x, 8.x, 10.x, 12.x, 13.x, 14.x, 15.x, 16.x]
12
+
13
+ steps:
14
+ - uses: actions/checkout@v4
15
+ with:
16
+ persist-credentials: false
17
+
18
+ - name: Use Node.js
19
+ uses: actions/setup-node@v4
20
+ with:
21
+ node-version: ${{ matrix.node-version }}
22
+
23
+ - name: Install
24
+ run: |
25
+ npm install --production && npm install tape
26
+
27
+ - name: Run tests
28
+ run: |
29
+ npm run test
30
+
31
+ test:
32
+ runs-on: ubuntu-latest
33
+
34
+ strategy:
35
+ matrix:
36
+ node-version: [18.x, 20.x, 22.x]
37
+
38
+ steps:
39
+ - uses: actions/checkout@v4
40
+ with:
41
+ persist-credentials: false
42
+
43
+ - name: Use Node.js
44
+ uses: actions/setup-node@v4
45
+ with:
46
+ node-version: ${{ matrix.node-version }}
47
+
48
+ - name: Install
49
+ run: |
50
+ npm install
51
+
52
+ - name: Run tests
53
+ run: |
54
+ npm run test:coverage
55
+
56
+ types:
57
+ runs-on: ubuntu-latest
58
+
59
+ steps:
60
+ - uses: actions/checkout@v4
61
+ with:
62
+ persist-credentials: false
63
+
64
+ - name: Use Node.js
65
+ uses: actions/setup-node@v4
66
+ with:
67
+ node-version: 22
68
+
69
+ - name: Install
70
+ run: |
71
+ npm install
72
+
73
+ - name: Run types tests
74
+ run: |
75
+ npm run test:typescript
76
+
77
+ lint:
78
+ runs-on: ubuntu-latest
79
+
80
+ steps:
81
+ - uses: actions/checkout@v4
82
+ with:
83
+ persist-credentials: false
84
+
85
+ - name: Use Node.js
86
+ uses: actions/setup-node@v4
87
+ with:
88
+ node-version: 22
89
+
90
+ - name: Install
91
+ run: |
92
+ npm install
93
+
94
+ - name: Lint
95
+ run: |
96
+ npm run lint
@@ -0,0 +1,22 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2015-2024 Matteo Collina
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
22
+
@@ -0,0 +1,139 @@
1
+ # reusify
2
+
3
+ [![npm version][npm-badge]][npm-url]
4
+
5
+ Reuse your objects and functions for maximum speed. This technique will
6
+ make any function run ~10% faster. You call your functions a
7
+ lot, and it adds up quickly in hot code paths.
8
+
9
+ ```
10
+ $ node benchmarks/createNoCodeFunction.js
11
+ Total time 53133
12
+ Total iterations 100000000
13
+ Iteration/s 1882069.5236482036
14
+
15
+ $ node benchmarks/reuseNoCodeFunction.js
16
+ Total time 50617
17
+ Total iterations 100000000
18
+ Iteration/s 1975620.838848608
19
+ ```
20
+
21
+ The above benchmark uses fibonacci to simulate a real high-cpu load.
22
+ The actual numbers might differ for your use case, but the difference
23
+ should not.
24
+
25
+ The benchmark was taken using Node v6.10.0.
26
+
27
+ This library was extracted from
28
+ [fastparallel](http://npm.im/fastparallel).
29
+
30
+ ## Example
31
+
32
+ ```js
33
+ var reusify = require('reusify')
34
+ var fib = require('reusify/benchmarks/fib')
35
+ var instance = reusify(MyObject)
36
+
37
+ // get an object from the cache,
38
+ // or creates a new one when cache is empty
39
+ var obj = instance.get()
40
+
41
+ // set the state
42
+ obj.num = 100
43
+ obj.func()
44
+
45
+ // reset the state.
46
+ // if the state contains any external object
47
+ // do not use delete operator (it is slow)
48
+ // prefer set them to null
49
+ obj.num = 0
50
+
51
+ // store an object in the cache
52
+ instance.release(obj)
53
+
54
+ function MyObject () {
55
+ // you need to define this property
56
+ // so V8 can compile MyObject into an
57
+ // hidden class
58
+ this.next = null
59
+ this.num = 0
60
+
61
+ var that = this
62
+
63
+ // this function is never reallocated,
64
+ // so it can be optimized by V8
65
+ this.func = function () {
66
+ if (null) {
67
+ // do nothing
68
+ } else {
69
+ // calculates fibonacci
70
+ fib(that.num)
71
+ }
72
+ }
73
+ }
74
+ ```
75
+
76
+ The above example was intended for synchronous code, let's see async:
77
+ ```js
78
+ var reusify = require('reusify')
79
+ var instance = reusify(MyObject)
80
+
81
+ for (var i = 0; i < 100; i++) {
82
+ getData(i, console.log)
83
+ }
84
+
85
+ function getData (value, cb) {
86
+ var obj = instance.get()
87
+
88
+ obj.value = value
89
+ obj.cb = cb
90
+ obj.run()
91
+ }
92
+
93
+ function MyObject () {
94
+ this.next = null
95
+ this.value = null
96
+
97
+ var that = this
98
+
99
+ this.run = function () {
100
+ asyncOperation(that.value, that.handle)
101
+ }
102
+
103
+ this.handle = function (err, result) {
104
+ that.cb(err, result)
105
+ that.value = null
106
+ that.cb = null
107
+ instance.release(that)
108
+ }
109
+ }
110
+ ```
111
+
112
+ Also note how in the above examples, the code, that consumes an instance of `MyObject`,
113
+ reset the state to initial condition, just before storing it in the cache.
114
+ That's needed so that every subsequent request for an instance from the cache,
115
+ could get a clean instance.
116
+
117
+ ## Why
118
+
119
+ It is faster because V8 doesn't have to collect all the functions you
120
+ create. On a short-lived benchmark, it is as fast as creating the
121
+ nested function, but on a longer time frame it creates less
122
+ pressure on the garbage collector.
123
+
124
+ ## Other examples
125
+ If you want to see some complex example, checkout [middie](https://github.com/fastify/middie) and [steed](https://github.com/mcollina/steed).
126
+
127
+ ## Acknowledgements
128
+
129
+ Thanks to [Trevor Norris](https://github.com/trevnorris) for
130
+ getting me down the rabbit hole of performance, and thanks to [Mathias
131
+ Buss](http://github.com/mafintosh) for suggesting me to share this
132
+ trick.
133
+
134
+ ## License
135
+
136
+ MIT
137
+
138
+ [npm-badge]: https://badge.fury.io/js/reusify.svg
139
+ [npm-url]: https://badge.fury.io/js/reusify
@@ -0,0 +1,15 @@
1
+ # Security Policy
2
+
3
+ ## Supported Versions
4
+
5
+ Use this section to tell people about which versions of your project are
6
+ currently being supported with security updates.
7
+
8
+ | Version | Supported |
9
+ | ------- | ------------------ |
10
+ | 1.x | :white_check_mark: |
11
+ | < 1.0 | :x: |
12
+
13
+ ## Reporting a Vulnerability
14
+
15
+ Please report all vulnerabilities at [https://github.com/mcollina/fastq/security](https://github.com/mcollina/fastq/security).
@@ -0,0 +1,30 @@
1
+ 'use strict'
2
+
3
+ var fib = require('./fib')
4
+ var max = 100000000
5
+ var start = Date.now()
6
+
7
+ // create a funcion with the typical error
8
+ // pattern, that delegates the heavy load
9
+ // to something else
10
+ function createNoCodeFunction () {
11
+ /* eslint no-constant-condition: "off" */
12
+ var num = 100
13
+
14
+ ;(function () {
15
+ if (null) {
16
+ // do nothing
17
+ } else {
18
+ fib(num)
19
+ }
20
+ })()
21
+ }
22
+
23
+ for (var i = 0; i < max; i++) {
24
+ createNoCodeFunction()
25
+ }
26
+
27
+ var time = Date.now() - start
28
+ console.log('Total time', time)
29
+ console.log('Total iterations', max)
30
+ console.log('Iteration/s', max / time * 1000)
@@ -0,0 +1,13 @@
1
+ 'use strict'
2
+
3
+ function fib (num) {
4
+ var fib = []
5
+
6
+ fib[0] = 0
7
+ fib[1] = 1
8
+ for (var i = 2; i <= num; i++) {
9
+ fib[i] = fib[i - 2] + fib[i - 1]
10
+ }
11
+ }
12
+
13
+ module.exports = fib
@@ -0,0 +1,38 @@
1
+ 'use strict'
2
+
3
+ var reusify = require('../')
4
+ var fib = require('./fib')
5
+ var instance = reusify(MyObject)
6
+ var max = 100000000
7
+ var start = Date.now()
8
+
9
+ function reuseNoCodeFunction () {
10
+ var obj = instance.get()
11
+ obj.num = 100
12
+ obj.func()
13
+ obj.num = 0
14
+ instance.release(obj)
15
+ }
16
+
17
+ function MyObject () {
18
+ this.next = null
19
+ var that = this
20
+ this.num = 0
21
+ this.func = function () {
22
+ /* eslint no-constant-condition: "off" */
23
+ if (null) {
24
+ // do nothing
25
+ } else {
26
+ fib(that.num)
27
+ }
28
+ }
29
+ }
30
+
31
+ for (var i = 0; i < max; i++) {
32
+ reuseNoCodeFunction()
33
+ }
34
+
35
+ var time = Date.now() - start
36
+ console.log('Total time', time)
37
+ console.log('Total iterations', max)
38
+ console.log('Iteration/s', max / time * 1000)
@@ -0,0 +1,14 @@
1
+ 'use strict'
2
+
3
+ const base = require('neostandard')({})
4
+
5
+ module.exports = [
6
+ ...base,
7
+ {
8
+ name: 'old-standard',
9
+ rules: {
10
+ 'no-var': 'off',
11
+ 'object-shorthand': 'off',
12
+ }
13
+ }
14
+ ]
@@ -0,0 +1,50 @@
1
+ {
2
+ "name": "reusify",
3
+ "version": "1.1.0",
4
+ "description": "Reuse objects and functions with style",
5
+ "main": "reusify.js",
6
+ "types": "reusify.d.ts",
7
+ "scripts": {
8
+ "lint": "eslint",
9
+ "test": "tape test.js",
10
+ "test:coverage": "c8 --100 tape test.js",
11
+ "test:typescript": "tsc"
12
+ },
13
+ "pre-commit": [
14
+ "lint",
15
+ "test",
16
+ "test:typescript"
17
+ ],
18
+ "repository": {
19
+ "type": "git",
20
+ "url": "git+https://github.com/mcollina/reusify.git"
21
+ },
22
+ "keywords": [
23
+ "reuse",
24
+ "object",
25
+ "performance",
26
+ "function",
27
+ "fast"
28
+ ],
29
+ "author": "Matteo Collina <hello@matteocollina.com>",
30
+ "license": "MIT",
31
+ "bugs": {
32
+ "url": "https://github.com/mcollina/reusify/issues"
33
+ },
34
+ "homepage": "https://github.com/mcollina/reusify#readme",
35
+ "engines": {
36
+ "node": ">=0.10.0",
37
+ "iojs": ">=1.0.0"
38
+ },
39
+ "devDependencies": {
40
+ "@types/node": "^22.9.0",
41
+ "eslint": "^9.13.0",
42
+ "neostandard": "^0.12.0",
43
+ "pre-commit": "^1.2.2",
44
+ "tape": "^5.0.0",
45
+ "c8": "^10.1.2",
46
+ "typescript": "^5.2.2"
47
+ },
48
+ "dependencies": {
49
+ }
50
+ }
@@ -0,0 +1,14 @@
1
+ interface Node {
2
+ next: Node | null;
3
+ }
4
+
5
+ interface Constructor<T> {
6
+ new(): T;
7
+ }
8
+
9
+ declare function reusify<T extends Node>(constructor: Constructor<T>): {
10
+ get(): T;
11
+ release(node: T): void;
12
+ };
13
+
14
+ export = reusify;
@@ -0,0 +1,33 @@
1
+ 'use strict'
2
+
3
+ function reusify (Constructor) {
4
+ var head = new Constructor()
5
+ var tail = head
6
+
7
+ function get () {
8
+ var current = head
9
+
10
+ if (current.next) {
11
+ head = current.next
12
+ } else {
13
+ head = new Constructor()
14
+ tail = head
15
+ }
16
+
17
+ current.next = null
18
+
19
+ return current
20
+ }
21
+
22
+ function release (obj) {
23
+ tail.next = obj
24
+ tail = obj
25
+ }
26
+
27
+ return {
28
+ get: get,
29
+ release: release
30
+ }
31
+ }
32
+
33
+ module.exports = reusify
@@ -0,0 +1,66 @@
1
+ 'use strict'
2
+
3
+ var test = require('tape')
4
+ var reusify = require('./')
5
+
6
+ test('reuse objects', function (t) {
7
+ t.plan(6)
8
+
9
+ function MyObject () {
10
+ t.pass('constructor called')
11
+ this.next = null
12
+ }
13
+
14
+ var instance = reusify(MyObject)
15
+ var obj = instance.get()
16
+
17
+ t.notEqual(obj, instance.get(), 'two instance created')
18
+ t.notOk(obj.next, 'next must be null')
19
+
20
+ instance.release(obj)
21
+
22
+ // the internals keeps a hot copy ready for reuse
23
+ // putting this one back in the queue
24
+ instance.release(instance.get())
25
+
26
+ // comparing the old one with the one we got
27
+ // never do this in real code, after release you
28
+ // should never reuse that instance
29
+ t.equal(obj, instance.get(), 'instance must be reused')
30
+ })
31
+
32
+ test('reuse more than 2 objects', function (t) {
33
+ function MyObject () {
34
+ t.pass('constructor called')
35
+ this.next = null
36
+ }
37
+
38
+ var instance = reusify(MyObject)
39
+ var obj = instance.get()
40
+ var obj2 = instance.get()
41
+ var obj3 = instance.get()
42
+
43
+ t.notOk(obj.next, 'next must be null')
44
+ t.notOk(obj2.next, 'next must be null')
45
+ t.notOk(obj3.next, 'next must be null')
46
+
47
+ t.notEqual(obj, obj2)
48
+ t.notEqual(obj, obj3)
49
+ t.notEqual(obj3, obj2)
50
+
51
+ instance.release(obj)
52
+ instance.release(obj2)
53
+ instance.release(obj3)
54
+
55
+ // skip one
56
+ instance.get()
57
+
58
+ var obj4 = instance.get()
59
+ var obj5 = instance.get()
60
+ var obj6 = instance.get()
61
+
62
+ t.equal(obj4, obj)
63
+ t.equal(obj5, obj2)
64
+ t.equal(obj6, obj3)
65
+ t.end()
66
+ })
@@ -0,0 +1,11 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "es6",
4
+ "module": "commonjs",
5
+ "noEmit": true,
6
+ "strict": true
7
+ },
8
+ "files": [
9
+ "./reusify.d.ts"
10
+ ]
11
+ }
@@ -0,0 +1,20 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) Feross Aboukhadijeh
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
6
+ this software and associated documentation files (the "Software"), to deal in
7
+ the Software without restriction, including without limitation the rights to
8
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
9
+ the Software, and to permit persons to whom the Software is furnished to do so,
10
+ subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
17
+ FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
18
+ COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
19
+ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
20
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.