korext 0.7.0 → 0.8.1

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 (523) hide show
  1. package/README.md +102 -28
  2. package/bin/korext.js +251 -56
  3. package/package.json +21 -14
  4. package/CHANGELOG.md +0 -51
  5. package/dummy.pdf +0 -0
  6. package/korext.json +0 -11
  7. package/node_modules/ansi-regex/index.d.ts +0 -37
  8. package/node_modules/ansi-regex/index.js +0 -10
  9. package/node_modules/ansi-regex/license +0 -9
  10. package/node_modules/ansi-regex/package.json +0 -55
  11. package/node_modules/ansi-regex/readme.md +0 -78
  12. package/node_modules/ansi-styles/index.d.ts +0 -345
  13. package/node_modules/ansi-styles/index.js +0 -163
  14. package/node_modules/ansi-styles/license +0 -9
  15. package/node_modules/ansi-styles/package.json +0 -56
  16. package/node_modules/ansi-styles/readme.md +0 -152
  17. package/node_modules/balanced-match/LICENSE.md +0 -23
  18. package/node_modules/balanced-match/README.md +0 -57
  19. package/node_modules/balanced-match/dist/commonjs/index.d.ts +0 -9
  20. package/node_modules/balanced-match/dist/commonjs/index.d.ts.map +0 -1
  21. package/node_modules/balanced-match/dist/commonjs/index.js +0 -59
  22. package/node_modules/balanced-match/dist/commonjs/index.js.map +0 -1
  23. package/node_modules/balanced-match/dist/commonjs/package.json +0 -3
  24. package/node_modules/balanced-match/dist/esm/index.d.ts +0 -9
  25. package/node_modules/balanced-match/dist/esm/index.d.ts.map +0 -1
  26. package/node_modules/balanced-match/dist/esm/index.js +0 -54
  27. package/node_modules/balanced-match/dist/esm/index.js.map +0 -1
  28. package/node_modules/balanced-match/dist/esm/package.json +0 -3
  29. package/node_modules/balanced-match/package.json +0 -68
  30. package/node_modules/base64-js/LICENSE +0 -21
  31. package/node_modules/base64-js/README.md +0 -34
  32. package/node_modules/base64-js/base64js.min.js +0 -1
  33. package/node_modules/base64-js/index.d.ts +0 -3
  34. package/node_modules/base64-js/index.js +0 -150
  35. package/node_modules/base64-js/package.json +0 -47
  36. package/node_modules/bl/.travis.yml +0 -17
  37. package/node_modules/bl/BufferList.js +0 -396
  38. package/node_modules/bl/LICENSE.md +0 -13
  39. package/node_modules/bl/README.md +0 -247
  40. package/node_modules/bl/bl.js +0 -84
  41. package/node_modules/bl/package.json +0 -37
  42. package/node_modules/bl/test/convert.js +0 -21
  43. package/node_modules/bl/test/indexOf.js +0 -492
  44. package/node_modules/bl/test/isBufferList.js +0 -32
  45. package/node_modules/bl/test/test.js +0 -869
  46. package/node_modules/brace-expansion/LICENSE +0 -23
  47. package/node_modules/brace-expansion/README.md +0 -94
  48. package/node_modules/brace-expansion/dist/commonjs/index.d.ts +0 -6
  49. package/node_modules/brace-expansion/dist/commonjs/index.d.ts.map +0 -1
  50. package/node_modules/brace-expansion/dist/commonjs/index.js +0 -199
  51. package/node_modules/brace-expansion/dist/commonjs/index.js.map +0 -1
  52. package/node_modules/brace-expansion/dist/commonjs/package.json +0 -3
  53. package/node_modules/brace-expansion/dist/esm/index.d.ts +0 -6
  54. package/node_modules/brace-expansion/dist/esm/index.d.ts.map +0 -1
  55. package/node_modules/brace-expansion/dist/esm/index.js +0 -195
  56. package/node_modules/brace-expansion/dist/esm/index.js.map +0 -1
  57. package/node_modules/brace-expansion/dist/esm/package.json +0 -3
  58. package/node_modules/brace-expansion/package.json +0 -64
  59. package/node_modules/buffer/AUTHORS.md +0 -70
  60. package/node_modules/buffer/LICENSE +0 -21
  61. package/node_modules/buffer/README.md +0 -410
  62. package/node_modules/buffer/index.d.ts +0 -186
  63. package/node_modules/buffer/index.js +0 -1817
  64. package/node_modules/buffer/package.json +0 -96
  65. package/node_modules/chalk/index.d.ts +0 -415
  66. package/node_modules/chalk/license +0 -9
  67. package/node_modules/chalk/package.json +0 -68
  68. package/node_modules/chalk/readme.md +0 -341
  69. package/node_modules/chalk/source/index.js +0 -229
  70. package/node_modules/chalk/source/templates.js +0 -134
  71. package/node_modules/chalk/source/util.js +0 -39
  72. package/node_modules/cli-cursor/index.d.ts +0 -45
  73. package/node_modules/cli-cursor/index.js +0 -35
  74. package/node_modules/cli-cursor/license +0 -9
  75. package/node_modules/cli-cursor/package.json +0 -46
  76. package/node_modules/cli-cursor/readme.md +0 -55
  77. package/node_modules/cli-spinners/index.d.ts +0 -128
  78. package/node_modules/cli-spinners/index.js +0 -15
  79. package/node_modules/cli-spinners/license +0 -9
  80. package/node_modules/cli-spinners/package.json +0 -50
  81. package/node_modules/cli-spinners/readme.md +0 -54
  82. package/node_modules/cli-spinners/spinners.json +0 -1622
  83. package/node_modules/clone/.npmignore +0 -4
  84. package/node_modules/clone/LICENSE +0 -18
  85. package/node_modules/clone/README.md +0 -126
  86. package/node_modules/clone/clone.iml +0 -10
  87. package/node_modules/clone/clone.js +0 -166
  88. package/node_modules/clone/package.json +0 -51
  89. package/node_modules/color-convert/CHANGELOG.md +0 -54
  90. package/node_modules/color-convert/LICENSE +0 -21
  91. package/node_modules/color-convert/README.md +0 -68
  92. package/node_modules/color-convert/conversions.js +0 -839
  93. package/node_modules/color-convert/index.js +0 -81
  94. package/node_modules/color-convert/package.json +0 -48
  95. package/node_modules/color-convert/route.js +0 -97
  96. package/node_modules/color-name/LICENSE +0 -8
  97. package/node_modules/color-name/README.md +0 -11
  98. package/node_modules/color-name/index.js +0 -152
  99. package/node_modules/color-name/package.json +0 -28
  100. package/node_modules/commander/LICENSE +0 -22
  101. package/node_modules/commander/Readme.md +0 -1176
  102. package/node_modules/commander/esm.mjs +0 -16
  103. package/node_modules/commander/index.js +0 -24
  104. package/node_modules/commander/lib/argument.js +0 -150
  105. package/node_modules/commander/lib/command.js +0 -2777
  106. package/node_modules/commander/lib/error.js +0 -39
  107. package/node_modules/commander/lib/help.js +0 -747
  108. package/node_modules/commander/lib/option.js +0 -380
  109. package/node_modules/commander/lib/suggestSimilar.js +0 -101
  110. package/node_modules/commander/package-support.json +0 -19
  111. package/node_modules/commander/package.json +0 -82
  112. package/node_modules/commander/typings/esm.d.mts +0 -3
  113. package/node_modules/commander/typings/index.d.ts +0 -1113
  114. package/node_modules/data-uri-to-buffer/README.md +0 -88
  115. package/node_modules/data-uri-to-buffer/dist/index.d.ts +0 -15
  116. package/node_modules/data-uri-to-buffer/dist/index.js +0 -53
  117. package/node_modules/data-uri-to-buffer/dist/index.js.map +0 -1
  118. package/node_modules/data-uri-to-buffer/package.json +0 -62
  119. package/node_modules/data-uri-to-buffer/src/index.ts +0 -68
  120. package/node_modules/defaults/LICENSE +0 -22
  121. package/node_modules/defaults/README.md +0 -39
  122. package/node_modules/defaults/index.js +0 -13
  123. package/node_modules/defaults/package.json +0 -33
  124. package/node_modules/defaults/test.js +0 -34
  125. package/node_modules/fetch-blob/LICENSE +0 -21
  126. package/node_modules/fetch-blob/README.md +0 -106
  127. package/node_modules/fetch-blob/file.d.ts +0 -2
  128. package/node_modules/fetch-blob/file.js +0 -49
  129. package/node_modules/fetch-blob/from.d.ts +0 -26
  130. package/node_modules/fetch-blob/from.js +0 -100
  131. package/node_modules/fetch-blob/index.d.ts +0 -3
  132. package/node_modules/fetch-blob/index.js +0 -250
  133. package/node_modules/fetch-blob/package.json +0 -56
  134. package/node_modules/fetch-blob/streams.cjs +0 -51
  135. package/node_modules/formdata-polyfill/FormData.js +0 -441
  136. package/node_modules/formdata-polyfill/LICENSE +0 -21
  137. package/node_modules/formdata-polyfill/README.md +0 -145
  138. package/node_modules/formdata-polyfill/esm.min.d.ts +0 -5
  139. package/node_modules/formdata-polyfill/esm.min.js +0 -40
  140. package/node_modules/formdata-polyfill/formdata-to-blob.js +0 -39
  141. package/node_modules/formdata-polyfill/formdata.min.js +0 -21
  142. package/node_modules/formdata-polyfill/package.json +0 -50
  143. package/node_modules/glob/LICENSE.md +0 -63
  144. package/node_modules/glob/README.md +0 -1203
  145. package/node_modules/glob/dist/commonjs/glob.d.ts +0 -396
  146. package/node_modules/glob/dist/commonjs/glob.d.ts.map +0 -1
  147. package/node_modules/glob/dist/commonjs/glob.js +0 -248
  148. package/node_modules/glob/dist/commonjs/glob.js.map +0 -1
  149. package/node_modules/glob/dist/commonjs/has-magic.d.ts +0 -14
  150. package/node_modules/glob/dist/commonjs/has-magic.d.ts.map +0 -1
  151. package/node_modules/glob/dist/commonjs/has-magic.js +0 -27
  152. package/node_modules/glob/dist/commonjs/has-magic.js.map +0 -1
  153. package/node_modules/glob/dist/commonjs/ignore.d.ts +0 -24
  154. package/node_modules/glob/dist/commonjs/ignore.d.ts.map +0 -1
  155. package/node_modules/glob/dist/commonjs/ignore.js +0 -119
  156. package/node_modules/glob/dist/commonjs/ignore.js.map +0 -1
  157. package/node_modules/glob/dist/commonjs/index.d.ts +0 -97
  158. package/node_modules/glob/dist/commonjs/index.d.ts.map +0 -1
  159. package/node_modules/glob/dist/commonjs/index.js +0 -68
  160. package/node_modules/glob/dist/commonjs/index.js.map +0 -1
  161. package/node_modules/glob/dist/commonjs/index.min.js +0 -4
  162. package/node_modules/glob/dist/commonjs/index.min.js.map +0 -7
  163. package/node_modules/glob/dist/commonjs/package.json +0 -3
  164. package/node_modules/glob/dist/commonjs/pattern.d.ts +0 -79
  165. package/node_modules/glob/dist/commonjs/pattern.d.ts.map +0 -1
  166. package/node_modules/glob/dist/commonjs/pattern.js +0 -223
  167. package/node_modules/glob/dist/commonjs/pattern.js.map +0 -1
  168. package/node_modules/glob/dist/commonjs/processor.d.ts +0 -59
  169. package/node_modules/glob/dist/commonjs/processor.d.ts.map +0 -1
  170. package/node_modules/glob/dist/commonjs/processor.js +0 -301
  171. package/node_modules/glob/dist/commonjs/processor.js.map +0 -1
  172. package/node_modules/glob/dist/commonjs/walker.d.ts +0 -97
  173. package/node_modules/glob/dist/commonjs/walker.d.ts.map +0 -1
  174. package/node_modules/glob/dist/commonjs/walker.js +0 -387
  175. package/node_modules/glob/dist/commonjs/walker.js.map +0 -1
  176. package/node_modules/glob/dist/esm/glob.d.ts +0 -396
  177. package/node_modules/glob/dist/esm/glob.d.ts.map +0 -1
  178. package/node_modules/glob/dist/esm/glob.js +0 -244
  179. package/node_modules/glob/dist/esm/glob.js.map +0 -1
  180. package/node_modules/glob/dist/esm/has-magic.d.ts +0 -14
  181. package/node_modules/glob/dist/esm/has-magic.d.ts.map +0 -1
  182. package/node_modules/glob/dist/esm/has-magic.js +0 -23
  183. package/node_modules/glob/dist/esm/has-magic.js.map +0 -1
  184. package/node_modules/glob/dist/esm/ignore.d.ts +0 -24
  185. package/node_modules/glob/dist/esm/ignore.d.ts.map +0 -1
  186. package/node_modules/glob/dist/esm/ignore.js +0 -115
  187. package/node_modules/glob/dist/esm/ignore.js.map +0 -1
  188. package/node_modules/glob/dist/esm/index.d.ts +0 -97
  189. package/node_modules/glob/dist/esm/index.d.ts.map +0 -1
  190. package/node_modules/glob/dist/esm/index.js +0 -55
  191. package/node_modules/glob/dist/esm/index.js.map +0 -1
  192. package/node_modules/glob/dist/esm/index.min.js +0 -4
  193. package/node_modules/glob/dist/esm/index.min.js.map +0 -7
  194. package/node_modules/glob/dist/esm/package.json +0 -3
  195. package/node_modules/glob/dist/esm/pattern.d.ts +0 -79
  196. package/node_modules/glob/dist/esm/pattern.d.ts.map +0 -1
  197. package/node_modules/glob/dist/esm/pattern.js +0 -219
  198. package/node_modules/glob/dist/esm/pattern.js.map +0 -1
  199. package/node_modules/glob/dist/esm/processor.d.ts +0 -59
  200. package/node_modules/glob/dist/esm/processor.d.ts.map +0 -1
  201. package/node_modules/glob/dist/esm/processor.js +0 -294
  202. package/node_modules/glob/dist/esm/processor.js.map +0 -1
  203. package/node_modules/glob/dist/esm/walker.d.ts +0 -97
  204. package/node_modules/glob/dist/esm/walker.d.ts.map +0 -1
  205. package/node_modules/glob/dist/esm/walker.js +0 -381
  206. package/node_modules/glob/dist/esm/walker.js.map +0 -1
  207. package/node_modules/glob/package.json +0 -98
  208. package/node_modules/has-flag/index.d.ts +0 -39
  209. package/node_modules/has-flag/index.js +0 -8
  210. package/node_modules/has-flag/license +0 -9
  211. package/node_modules/has-flag/package.json +0 -46
  212. package/node_modules/has-flag/readme.md +0 -89
  213. package/node_modules/ieee754/LICENSE +0 -11
  214. package/node_modules/ieee754/README.md +0 -51
  215. package/node_modules/ieee754/index.d.ts +0 -10
  216. package/node_modules/ieee754/index.js +0 -85
  217. package/node_modules/ieee754/package.json +0 -52
  218. package/node_modules/inherits/LICENSE +0 -16
  219. package/node_modules/inherits/README.md +0 -42
  220. package/node_modules/inherits/inherits.js +0 -9
  221. package/node_modules/inherits/inherits_browser.js +0 -27
  222. package/node_modules/inherits/package.json +0 -29
  223. package/node_modules/is-interactive/index.d.ts +0 -31
  224. package/node_modules/is-interactive/index.js +0 -9
  225. package/node_modules/is-interactive/license +0 -9
  226. package/node_modules/is-interactive/package.json +0 -38
  227. package/node_modules/is-interactive/readme.md +0 -51
  228. package/node_modules/is-unicode-supported/index.d.ts +0 -14
  229. package/node_modules/is-unicode-supported/index.js +0 -13
  230. package/node_modules/is-unicode-supported/license +0 -9
  231. package/node_modules/is-unicode-supported/package.json +0 -41
  232. package/node_modules/is-unicode-supported/readme.md +0 -35
  233. package/node_modules/log-symbols/browser.js +0 -8
  234. package/node_modules/log-symbols/index.d.ts +0 -25
  235. package/node_modules/log-symbols/index.js +0 -19
  236. package/node_modules/log-symbols/license +0 -9
  237. package/node_modules/log-symbols/package.json +0 -52
  238. package/node_modules/log-symbols/readme.md +0 -51
  239. package/node_modules/lru-cache/LICENSE.md +0 -55
  240. package/node_modules/lru-cache/README.md +0 -383
  241. package/node_modules/lru-cache/dist/commonjs/index.d.ts +0 -1323
  242. package/node_modules/lru-cache/dist/commonjs/index.d.ts.map +0 -1
  243. package/node_modules/lru-cache/dist/commonjs/index.js +0 -1595
  244. package/node_modules/lru-cache/dist/commonjs/index.js.map +0 -1
  245. package/node_modules/lru-cache/dist/commonjs/index.min.js +0 -2
  246. package/node_modules/lru-cache/dist/commonjs/index.min.js.map +0 -7
  247. package/node_modules/lru-cache/dist/commonjs/package.json +0 -3
  248. package/node_modules/lru-cache/dist/esm/index.d.ts +0 -1323
  249. package/node_modules/lru-cache/dist/esm/index.d.ts.map +0 -1
  250. package/node_modules/lru-cache/dist/esm/index.js +0 -1591
  251. package/node_modules/lru-cache/dist/esm/index.js.map +0 -1
  252. package/node_modules/lru-cache/dist/esm/index.min.js +0 -2
  253. package/node_modules/lru-cache/dist/esm/index.min.js.map +0 -7
  254. package/node_modules/lru-cache/dist/esm/package.json +0 -3
  255. package/node_modules/lru-cache/package.json +0 -93
  256. package/node_modules/mimic-fn/index.d.ts +0 -54
  257. package/node_modules/mimic-fn/index.js +0 -13
  258. package/node_modules/mimic-fn/license +0 -9
  259. package/node_modules/mimic-fn/package.json +0 -42
  260. package/node_modules/mimic-fn/readme.md +0 -69
  261. package/node_modules/minimatch/LICENSE.md +0 -55
  262. package/node_modules/minimatch/README.md +0 -528
  263. package/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts +0 -2
  264. package/node_modules/minimatch/dist/commonjs/assert-valid-pattern.d.ts.map +0 -1
  265. package/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js +0 -14
  266. package/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js.map +0 -1
  267. package/node_modules/minimatch/dist/commonjs/ast.d.ts +0 -22
  268. package/node_modules/minimatch/dist/commonjs/ast.d.ts.map +0 -1
  269. package/node_modules/minimatch/dist/commonjs/ast.js +0 -846
  270. package/node_modules/minimatch/dist/commonjs/ast.js.map +0 -1
  271. package/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts +0 -8
  272. package/node_modules/minimatch/dist/commonjs/brace-expressions.d.ts.map +0 -1
  273. package/node_modules/minimatch/dist/commonjs/brace-expressions.js +0 -150
  274. package/node_modules/minimatch/dist/commonjs/brace-expressions.js.map +0 -1
  275. package/node_modules/minimatch/dist/commonjs/escape.d.ts +0 -15
  276. package/node_modules/minimatch/dist/commonjs/escape.d.ts.map +0 -1
  277. package/node_modules/minimatch/dist/commonjs/escape.js +0 -30
  278. package/node_modules/minimatch/dist/commonjs/escape.js.map +0 -1
  279. package/node_modules/minimatch/dist/commonjs/index.d.ts +0 -174
  280. package/node_modules/minimatch/dist/commonjs/index.d.ts.map +0 -1
  281. package/node_modules/minimatch/dist/commonjs/index.js +0 -1121
  282. package/node_modules/minimatch/dist/commonjs/index.js.map +0 -1
  283. package/node_modules/minimatch/dist/commonjs/package.json +0 -3
  284. package/node_modules/minimatch/dist/commonjs/unescape.d.ts +0 -22
  285. package/node_modules/minimatch/dist/commonjs/unescape.d.ts.map +0 -1
  286. package/node_modules/minimatch/dist/commonjs/unescape.js +0 -38
  287. package/node_modules/minimatch/dist/commonjs/unescape.js.map +0 -1
  288. package/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts +0 -2
  289. package/node_modules/minimatch/dist/esm/assert-valid-pattern.d.ts.map +0 -1
  290. package/node_modules/minimatch/dist/esm/assert-valid-pattern.js +0 -10
  291. package/node_modules/minimatch/dist/esm/assert-valid-pattern.js.map +0 -1
  292. package/node_modules/minimatch/dist/esm/ast.d.ts +0 -22
  293. package/node_modules/minimatch/dist/esm/ast.d.ts.map +0 -1
  294. package/node_modules/minimatch/dist/esm/ast.js +0 -842
  295. package/node_modules/minimatch/dist/esm/ast.js.map +0 -1
  296. package/node_modules/minimatch/dist/esm/brace-expressions.d.ts +0 -8
  297. package/node_modules/minimatch/dist/esm/brace-expressions.d.ts.map +0 -1
  298. package/node_modules/minimatch/dist/esm/brace-expressions.js +0 -146
  299. package/node_modules/minimatch/dist/esm/brace-expressions.js.map +0 -1
  300. package/node_modules/minimatch/dist/esm/escape.d.ts +0 -15
  301. package/node_modules/minimatch/dist/esm/escape.d.ts.map +0 -1
  302. package/node_modules/minimatch/dist/esm/escape.js +0 -26
  303. package/node_modules/minimatch/dist/esm/escape.js.map +0 -1
  304. package/node_modules/minimatch/dist/esm/index.d.ts +0 -174
  305. package/node_modules/minimatch/dist/esm/index.d.ts.map +0 -1
  306. package/node_modules/minimatch/dist/esm/index.js +0 -1108
  307. package/node_modules/minimatch/dist/esm/index.js.map +0 -1
  308. package/node_modules/minimatch/dist/esm/package.json +0 -3
  309. package/node_modules/minimatch/dist/esm/unescape.d.ts +0 -22
  310. package/node_modules/minimatch/dist/esm/unescape.d.ts.map +0 -1
  311. package/node_modules/minimatch/dist/esm/unescape.js +0 -34
  312. package/node_modules/minimatch/dist/esm/unescape.js.map +0 -1
  313. package/node_modules/minimatch/package.json +0 -67
  314. package/node_modules/minipass/LICENSE.md +0 -55
  315. package/node_modules/minipass/README.md +0 -825
  316. package/node_modules/minipass/dist/commonjs/index.d.ts +0 -545
  317. package/node_modules/minipass/dist/commonjs/index.d.ts.map +0 -1
  318. package/node_modules/minipass/dist/commonjs/index.js +0 -1038
  319. package/node_modules/minipass/dist/commonjs/index.js.map +0 -1
  320. package/node_modules/minipass/dist/commonjs/package.json +0 -3
  321. package/node_modules/minipass/dist/esm/index.d.ts +0 -545
  322. package/node_modules/minipass/dist/esm/index.d.ts.map +0 -1
  323. package/node_modules/minipass/dist/esm/index.js +0 -1020
  324. package/node_modules/minipass/dist/esm/index.js.map +0 -1
  325. package/node_modules/minipass/dist/esm/package.json +0 -3
  326. package/node_modules/minipass/package.json +0 -77
  327. package/node_modules/node-domexception/.history/README_20210527203617.md +0 -2
  328. package/node_modules/node-domexception/.history/README_20210527212714.md +0 -41
  329. package/node_modules/node-domexception/.history/README_20210527213345.md +0 -36
  330. package/node_modules/node-domexception/.history/README_20210527213411.md +0 -36
  331. package/node_modules/node-domexception/.history/README_20210527213803.md +0 -36
  332. package/node_modules/node-domexception/.history/README_20210527214323.md +0 -38
  333. package/node_modules/node-domexception/.history/README_20210527214408.md +0 -38
  334. package/node_modules/node-domexception/.history/index_20210527203842.js +0 -0
  335. package/node_modules/node-domexception/.history/index_20210527203947.js +0 -8
  336. package/node_modules/node-domexception/.history/index_20210527204259.js +0 -9
  337. package/node_modules/node-domexception/.history/index_20210527204418.js +0 -9
  338. package/node_modules/node-domexception/.history/index_20210527204756.js +0 -11
  339. package/node_modules/node-domexception/.history/index_20210527204833.js +0 -11
  340. package/node_modules/node-domexception/.history/index_20210527211208.js +0 -15
  341. package/node_modules/node-domexception/.history/index_20210527211248.js +0 -15
  342. package/node_modules/node-domexception/.history/index_20210527212722.js +0 -23
  343. package/node_modules/node-domexception/.history/index_20210527212731.js +0 -23
  344. package/node_modules/node-domexception/.history/index_20210527212746.js +0 -15
  345. package/node_modules/node-domexception/.history/index_20210527212900.js +0 -16
  346. package/node_modules/node-domexception/.history/index_20210527213022.js +0 -16
  347. package/node_modules/node-domexception/.history/index_20210527213822.js +0 -16
  348. package/node_modules/node-domexception/.history/index_20210527213843.js +0 -17
  349. package/node_modules/node-domexception/.history/index_20210527213852.js +0 -17
  350. package/node_modules/node-domexception/.history/index_20210527213910.js +0 -16
  351. package/node_modules/node-domexception/.history/index_20210527214034.js +0 -16
  352. package/node_modules/node-domexception/.history/index_20210527214643.js +0 -41
  353. package/node_modules/node-domexception/.history/index_20210527214654.js +0 -41
  354. package/node_modules/node-domexception/.history/index_20210527214700.js +0 -16
  355. package/node_modules/node-domexception/.history/package_20210527203733.json +0 -19
  356. package/node_modules/node-domexception/.history/package_20210527203825.json +0 -16
  357. package/node_modules/node-domexception/.history/package_20210527204621.json +0 -19
  358. package/node_modules/node-domexception/.history/package_20210527204913.json +0 -25
  359. package/node_modules/node-domexception/.history/package_20210527204925.json +0 -25
  360. package/node_modules/node-domexception/.history/package_20210527205145.json +0 -29
  361. package/node_modules/node-domexception/.history/package_20210527205156.json +0 -29
  362. package/node_modules/node-domexception/.history/test_20210527205603.js +0 -0
  363. package/node_modules/node-domexception/.history/test_20210527205957.js +0 -3
  364. package/node_modules/node-domexception/.history/test_20210527210021.js +0 -3
  365. package/node_modules/node-domexception/LICENSE +0 -21
  366. package/node_modules/node-domexception/README.md +0 -46
  367. package/node_modules/node-domexception/index.js +0 -16
  368. package/node_modules/node-domexception/package.json +0 -29
  369. package/node_modules/node-fetch/@types/index.d.ts +0 -219
  370. package/node_modules/node-fetch/LICENSE.md +0 -22
  371. package/node_modules/node-fetch/README.md +0 -872
  372. package/node_modules/node-fetch/package.json +0 -131
  373. package/node_modules/node-fetch/src/body.js +0 -397
  374. package/node_modules/node-fetch/src/errors/abort-error.js +0 -10
  375. package/node_modules/node-fetch/src/errors/base.js +0 -17
  376. package/node_modules/node-fetch/src/errors/fetch-error.js +0 -26
  377. package/node_modules/node-fetch/src/headers.js +0 -267
  378. package/node_modules/node-fetch/src/index.js +0 -417
  379. package/node_modules/node-fetch/src/request.js +0 -313
  380. package/node_modules/node-fetch/src/response.js +0 -160
  381. package/node_modules/node-fetch/src/utils/get-search.js +0 -9
  382. package/node_modules/node-fetch/src/utils/is-redirect.js +0 -11
  383. package/node_modules/node-fetch/src/utils/is.js +0 -87
  384. package/node_modules/node-fetch/src/utils/multipart-parser.js +0 -432
  385. package/node_modules/node-fetch/src/utils/referrer.js +0 -340
  386. package/node_modules/onetime/index.d.ts +0 -64
  387. package/node_modules/onetime/index.js +0 -44
  388. package/node_modules/onetime/license +0 -9
  389. package/node_modules/onetime/package.json +0 -43
  390. package/node_modules/onetime/readme.md +0 -94
  391. package/node_modules/ora/index.d.ts +0 -277
  392. package/node_modules/ora/index.js +0 -407
  393. package/node_modules/ora/license +0 -9
  394. package/node_modules/ora/package.json +0 -57
  395. package/node_modules/ora/readme.md +0 -264
  396. package/node_modules/path-scurry/LICENSE.md +0 -55
  397. package/node_modules/path-scurry/README.md +0 -636
  398. package/node_modules/path-scurry/dist/commonjs/index.d.ts +0 -1115
  399. package/node_modules/path-scurry/dist/commonjs/index.d.ts.map +0 -1
  400. package/node_modules/path-scurry/dist/commonjs/index.js +0 -2018
  401. package/node_modules/path-scurry/dist/commonjs/index.js.map +0 -1
  402. package/node_modules/path-scurry/dist/commonjs/package.json +0 -3
  403. package/node_modules/path-scurry/dist/esm/index.d.ts +0 -1115
  404. package/node_modules/path-scurry/dist/esm/index.d.ts.map +0 -1
  405. package/node_modules/path-scurry/dist/esm/index.js +0 -1983
  406. package/node_modules/path-scurry/dist/esm/index.js.map +0 -1
  407. package/node_modules/path-scurry/dist/esm/package.json +0 -3
  408. package/node_modules/path-scurry/package.json +0 -72
  409. package/node_modules/readable-stream/CONTRIBUTING.md +0 -38
  410. package/node_modules/readable-stream/GOVERNANCE.md +0 -136
  411. package/node_modules/readable-stream/LICENSE +0 -47
  412. package/node_modules/readable-stream/README.md +0 -106
  413. package/node_modules/readable-stream/errors-browser.js +0 -127
  414. package/node_modules/readable-stream/errors.js +0 -116
  415. package/node_modules/readable-stream/experimentalWarning.js +0 -17
  416. package/node_modules/readable-stream/lib/_stream_duplex.js +0 -126
  417. package/node_modules/readable-stream/lib/_stream_passthrough.js +0 -37
  418. package/node_modules/readable-stream/lib/_stream_readable.js +0 -1027
  419. package/node_modules/readable-stream/lib/_stream_transform.js +0 -190
  420. package/node_modules/readable-stream/lib/_stream_writable.js +0 -641
  421. package/node_modules/readable-stream/lib/internal/streams/async_iterator.js +0 -180
  422. package/node_modules/readable-stream/lib/internal/streams/buffer_list.js +0 -183
  423. package/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -96
  424. package/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +0 -86
  425. package/node_modules/readable-stream/lib/internal/streams/from-browser.js +0 -3
  426. package/node_modules/readable-stream/lib/internal/streams/from.js +0 -52
  427. package/node_modules/readable-stream/lib/internal/streams/pipeline.js +0 -86
  428. package/node_modules/readable-stream/lib/internal/streams/state.js +0 -22
  429. package/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
  430. package/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
  431. package/node_modules/readable-stream/package.json +0 -68
  432. package/node_modules/readable-stream/readable-browser.js +0 -9
  433. package/node_modules/readable-stream/readable.js +0 -16
  434. package/node_modules/restore-cursor/index.d.ts +0 -13
  435. package/node_modules/restore-cursor/index.js +0 -9
  436. package/node_modules/restore-cursor/license +0 -9
  437. package/node_modules/restore-cursor/package.json +0 -52
  438. package/node_modules/restore-cursor/readme.md +0 -26
  439. package/node_modules/safe-buffer/LICENSE +0 -21
  440. package/node_modules/safe-buffer/README.md +0 -584
  441. package/node_modules/safe-buffer/index.d.ts +0 -187
  442. package/node_modules/safe-buffer/index.js +0 -65
  443. package/node_modules/safe-buffer/package.json +0 -51
  444. package/node_modules/signal-exit/LICENSE.txt +0 -16
  445. package/node_modules/signal-exit/README.md +0 -39
  446. package/node_modules/signal-exit/index.js +0 -202
  447. package/node_modules/signal-exit/package.json +0 -38
  448. package/node_modules/signal-exit/signals.js +0 -53
  449. package/node_modules/string_decoder/LICENSE +0 -48
  450. package/node_modules/string_decoder/README.md +0 -47
  451. package/node_modules/string_decoder/lib/string_decoder.js +0 -296
  452. package/node_modules/string_decoder/package.json +0 -34
  453. package/node_modules/strip-ansi/index.d.ts +0 -17
  454. package/node_modules/strip-ansi/index.js +0 -4
  455. package/node_modules/strip-ansi/license +0 -9
  456. package/node_modules/strip-ansi/package.json +0 -54
  457. package/node_modules/strip-ansi/readme.md +0 -46
  458. package/node_modules/supports-color/browser.js +0 -5
  459. package/node_modules/supports-color/index.js +0 -135
  460. package/node_modules/supports-color/license +0 -9
  461. package/node_modules/supports-color/package.json +0 -53
  462. package/node_modules/supports-color/readme.md +0 -76
  463. package/node_modules/util-deprecate/History.md +0 -16
  464. package/node_modules/util-deprecate/LICENSE +0 -24
  465. package/node_modules/util-deprecate/README.md +0 -53
  466. package/node_modules/util-deprecate/browser.js +0 -67
  467. package/node_modules/util-deprecate/node.js +0 -6
  468. package/node_modules/util-deprecate/package.json +0 -27
  469. package/node_modules/wcwidth/.npmignore +0 -1
  470. package/node_modules/wcwidth/LICENSE +0 -30
  471. package/node_modules/wcwidth/Readme.md +0 -33
  472. package/node_modules/wcwidth/combining.js +0 -50
  473. package/node_modules/wcwidth/docs/index.md +0 -65
  474. package/node_modules/wcwidth/index.js +0 -99
  475. package/node_modules/wcwidth/package.json +0 -42
  476. package/node_modules/wcwidth/test/index.js +0 -64
  477. package/node_modules/web-streams-polyfill/LICENSE +0 -22
  478. package/node_modules/web-streams-polyfill/README.md +0 -110
  479. package/node_modules/web-streams-polyfill/dist/polyfill.es2018.js +0 -4765
  480. package/node_modules/web-streams-polyfill/dist/polyfill.es2018.js.map +0 -1
  481. package/node_modules/web-streams-polyfill/dist/polyfill.es2018.min.js +0 -9
  482. package/node_modules/web-streams-polyfill/dist/polyfill.es2018.min.js.map +0 -1
  483. package/node_modules/web-streams-polyfill/dist/polyfill.es2018.mjs +0 -4745
  484. package/node_modules/web-streams-polyfill/dist/polyfill.es2018.mjs.map +0 -1
  485. package/node_modules/web-streams-polyfill/dist/polyfill.es6.js +0 -4838
  486. package/node_modules/web-streams-polyfill/dist/polyfill.es6.js.map +0 -1
  487. package/node_modules/web-streams-polyfill/dist/polyfill.es6.min.js +0 -9
  488. package/node_modules/web-streams-polyfill/dist/polyfill.es6.min.js.map +0 -1
  489. package/node_modules/web-streams-polyfill/dist/polyfill.es6.mjs +0 -4818
  490. package/node_modules/web-streams-polyfill/dist/polyfill.es6.mjs.map +0 -1
  491. package/node_modules/web-streams-polyfill/dist/polyfill.js +0 -5011
  492. package/node_modules/web-streams-polyfill/dist/polyfill.js.map +0 -1
  493. package/node_modules/web-streams-polyfill/dist/polyfill.min.js +0 -9
  494. package/node_modules/web-streams-polyfill/dist/polyfill.min.js.map +0 -1
  495. package/node_modules/web-streams-polyfill/dist/polyfill.mjs +0 -4991
  496. package/node_modules/web-streams-polyfill/dist/polyfill.mjs.map +0 -1
  497. package/node_modules/web-streams-polyfill/dist/ponyfill.es2018.js +0 -4737
  498. package/node_modules/web-streams-polyfill/dist/ponyfill.es2018.js.map +0 -1
  499. package/node_modules/web-streams-polyfill/dist/ponyfill.es2018.mjs +0 -4717
  500. package/node_modules/web-streams-polyfill/dist/ponyfill.es2018.mjs.map +0 -1
  501. package/node_modules/web-streams-polyfill/dist/ponyfill.es6.js +0 -4810
  502. package/node_modules/web-streams-polyfill/dist/ponyfill.es6.js.map +0 -1
  503. package/node_modules/web-streams-polyfill/dist/ponyfill.es6.mjs +0 -4790
  504. package/node_modules/web-streams-polyfill/dist/ponyfill.es6.mjs.map +0 -1
  505. package/node_modules/web-streams-polyfill/dist/ponyfill.js +0 -4983
  506. package/node_modules/web-streams-polyfill/dist/ponyfill.js.map +0 -1
  507. package/node_modules/web-streams-polyfill/dist/ponyfill.mjs +0 -4963
  508. package/node_modules/web-streams-polyfill/dist/ponyfill.mjs.map +0 -1
  509. package/node_modules/web-streams-polyfill/dist/types/polyfill.d.ts +0 -24
  510. package/node_modules/web-streams-polyfill/dist/types/ponyfill.d.ts +0 -780
  511. package/node_modules/web-streams-polyfill/dist/types/ts3.6/polyfill.d.ts +0 -28
  512. package/node_modules/web-streams-polyfill/dist/types/ts3.6/ponyfill.d.ts +0 -821
  513. package/node_modules/web-streams-polyfill/dist/types/tsdoc-metadata.json +0 -11
  514. package/node_modules/web-streams-polyfill/es2018/package.json +0 -14
  515. package/node_modules/web-streams-polyfill/es6/package.json +0 -14
  516. package/node_modules/web-streams-polyfill/package.json +0 -83
  517. package/node_modules/web-streams-polyfill/ponyfill/es2018/package.json +0 -13
  518. package/node_modules/web-streams-polyfill/ponyfill/es6/package.json +0 -13
  519. package/node_modules/web-streams-polyfill/ponyfill/package.json +0 -13
  520. package/src/commands/policy.ts +0 -146
  521. package/test-policy.md +0 -55
  522. package/test_cli.ts +0 -16
  523. package/version.json +0 -18
@@ -1,23 +0,0 @@
1
- MIT License
2
-
3
- Copyright Julian Gruber <julian@juliangruber.com>
4
-
5
- TypeScript port Copyright Isaac Z. Schlueter <i@izs.me>
6
-
7
- Permission is hereby granted, free of charge, to any person obtaining a copy
8
- of this software and associated documentation files (the "Software"), to deal
9
- in the Software without restriction, including without limitation the rights
10
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
- copies of the Software, and to permit persons to whom the Software is
12
- furnished to do so, subject to the following conditions:
13
-
14
- The above copyright notice and this permission notice shall be included in all
15
- copies or substantial portions of the Software.
16
-
17
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23
- SOFTWARE.
@@ -1,94 +0,0 @@
1
- # brace-expansion
2
-
3
- [Brace expansion](https://www.gnu.org/software/bash/manual/html_node/Brace-Expansion.html),
4
- as known from sh/bash, in JavaScript.
5
-
6
- [![CI](https://github.com/juliangruber/brace-expansion/actions/workflows/ci.yml/badge.svg)](https://github.com/juliangruber/brace-expansion/actions/workflows/ci.yml)
7
- [![downloads](https://img.shields.io/npm/dm/brace-expansion.svg)](https://www.npmjs.org/package/brace-expansion)
8
-
9
- ## Example
10
-
11
- ```js
12
- import { expand } from 'brace-expansion'
13
-
14
- expand('file-{a,b,c}.jpg')
15
- // => ['file-a.jpg', 'file-b.jpg', 'file-c.jpg']
16
-
17
- expand('-v{,,}')
18
- // => ['-v', '-v', '-v']
19
-
20
- expand('file{0..2}.jpg')
21
- // => ['file0.jpg', 'file1.jpg', 'file2.jpg']
22
-
23
- expand('file-{a..c}.jpg')
24
- // => ['file-a.jpg', 'file-b.jpg', 'file-c.jpg']
25
-
26
- expand('file{2..0}.jpg')
27
- // => ['file2.jpg', 'file1.jpg', 'file0.jpg']
28
-
29
- expand('file{0..4..2}.jpg')
30
- // => ['file0.jpg', 'file2.jpg', 'file4.jpg']
31
-
32
- expand('file-{a..e..2}.jpg')
33
- // => ['file-a.jpg', 'file-c.jpg', 'file-e.jpg']
34
-
35
- expand('file{00..10..5}.jpg')
36
- // => ['file00.jpg', 'file05.jpg', 'file10.jpg']
37
-
38
- expand('{{A..C},{a..c}}')
39
- // => ['A', 'B', 'C', 'a', 'b', 'c']
40
-
41
- expand('ppp{,config,oe{,conf}}')
42
- // => ['ppp', 'pppconfig', 'pppoe', 'pppoeconf']
43
- ```
44
-
45
- ## API
46
-
47
- ```js
48
- import { expand } from 'brace-expansion'
49
- ```
50
-
51
- ### const expanded = expand(str, [options])
52
-
53
- Return an array of all possible and valid expansions of `str`. If
54
- none are found, `[str]` is returned.
55
-
56
- The `options` object can provide a `max` value to cap the number
57
- of expansions allowed. This is limited to `100_000` by default,
58
- to prevent DoS attacks.
59
-
60
- ```js
61
- const expansions = expand('{1..100}'.repeat(5), {
62
- max: 100,
63
- })
64
- // expansions.length will be 100, not 100^5
65
- ```
66
-
67
- Valid expansions are:
68
-
69
- ```js
70
- ;/^(.*,)+(.+)?$/
71
- // {a,b,...}
72
- ```
73
-
74
- A comma separated list of options, like `{a,b}` or `{a,{b,c}}` or `{,a,}`.
75
-
76
- ```js
77
- ;/^-?\d+\.\.-?\d+(\.\.-?\d+)?$/
78
- // {x..y[..incr]}
79
- ```
80
-
81
- A numeric sequence from `x` to `y` inclusive, with optional increment.
82
- If `x` or `y` start with a leading `0`, all the numbers will be padded
83
- to have equal length. Negative numbers and backwards iteration work too.
84
-
85
- ```js
86
- ;/^-?\d+\.\.-?\d+(\.\.-?\d+)?$/
87
- // {x..y[..incr]}
88
- ```
89
-
90
- An alphabetic sequence from `x` to `y` inclusive, with optional increment.
91
- `x` and `y` must be exactly one character, and if given, `incr` must be a
92
- number.
93
-
94
- For compatibility reasons, the string `${` is not eligible for brace expansion.
@@ -1,6 +0,0 @@
1
- export declare const EXPANSION_MAX = 100000;
2
- export type BraceExpansionOptions = {
3
- max?: number;
4
- };
5
- export declare function expand(str: string, options?: BraceExpansionOptions): string[];
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAkBA,eAAO,MAAM,aAAa,SAAU,CAAA;AAwDpC,MAAM,MAAM,qBAAqB,GAAG;IAClC,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,CAAA;AAED,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B,YAkBtE"}
@@ -1,199 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EXPANSION_MAX = void 0;
4
- exports.expand = expand;
5
- const balanced_match_1 = require("balanced-match");
6
- const escSlash = '\0SLASH' + Math.random() + '\0';
7
- const escOpen = '\0OPEN' + Math.random() + '\0';
8
- const escClose = '\0CLOSE' + Math.random() + '\0';
9
- const escComma = '\0COMMA' + Math.random() + '\0';
10
- const escPeriod = '\0PERIOD' + Math.random() + '\0';
11
- const escSlashPattern = new RegExp(escSlash, 'g');
12
- const escOpenPattern = new RegExp(escOpen, 'g');
13
- const escClosePattern = new RegExp(escClose, 'g');
14
- const escCommaPattern = new RegExp(escComma, 'g');
15
- const escPeriodPattern = new RegExp(escPeriod, 'g');
16
- const slashPattern = /\\\\/g;
17
- const openPattern = /\\{/g;
18
- const closePattern = /\\}/g;
19
- const commaPattern = /\\,/g;
20
- const periodPattern = /\\\./g;
21
- exports.EXPANSION_MAX = 100_000;
22
- function numeric(str) {
23
- return !isNaN(str) ? parseInt(str, 10) : str.charCodeAt(0);
24
- }
25
- function escapeBraces(str) {
26
- return str
27
- .replace(slashPattern, escSlash)
28
- .replace(openPattern, escOpen)
29
- .replace(closePattern, escClose)
30
- .replace(commaPattern, escComma)
31
- .replace(periodPattern, escPeriod);
32
- }
33
- function unescapeBraces(str) {
34
- return str
35
- .replace(escSlashPattern, '\\')
36
- .replace(escOpenPattern, '{')
37
- .replace(escClosePattern, '}')
38
- .replace(escCommaPattern, ',')
39
- .replace(escPeriodPattern, '.');
40
- }
41
- /**
42
- * Basically just str.split(","), but handling cases
43
- * where we have nested braced sections, which should be
44
- * treated as individual members, like {a,{b,c},d}
45
- */
46
- function parseCommaParts(str) {
47
- if (!str) {
48
- return [''];
49
- }
50
- const parts = [];
51
- const m = (0, balanced_match_1.balanced)('{', '}', str);
52
- if (!m) {
53
- return str.split(',');
54
- }
55
- const { pre, body, post } = m;
56
- const p = pre.split(',');
57
- p[p.length - 1] += '{' + body + '}';
58
- const postParts = parseCommaParts(post);
59
- if (post.length) {
60
- ;
61
- p[p.length - 1] += postParts.shift();
62
- p.push.apply(p, postParts);
63
- }
64
- parts.push.apply(parts, p);
65
- return parts;
66
- }
67
- function expand(str, options = {}) {
68
- if (!str) {
69
- return [];
70
- }
71
- const { max = exports.EXPANSION_MAX } = options;
72
- // I don't know why Bash 4.3 does this, but it does.
73
- // Anything starting with {} will have the first two bytes preserved
74
- // but *only* at the top level, so {},a}b will not expand to anything,
75
- // but a{},b}c will be expanded to [a}c,abc].
76
- // One could argue that this is a bug in Bash, but since the goal of
77
- // this module is to match Bash's rules, we escape a leading {}
78
- if (str.slice(0, 2) === '{}') {
79
- str = '\\{\\}' + str.slice(2);
80
- }
81
- return expand_(escapeBraces(str), max, true).map(unescapeBraces);
82
- }
83
- function embrace(str) {
84
- return '{' + str + '}';
85
- }
86
- function isPadded(el) {
87
- return /^-?0\d/.test(el);
88
- }
89
- function lte(i, y) {
90
- return i <= y;
91
- }
92
- function gte(i, y) {
93
- return i >= y;
94
- }
95
- function expand_(str, max, isTop) {
96
- /** @type {string[]} */
97
- const expansions = [];
98
- const m = (0, balanced_match_1.balanced)('{', '}', str);
99
- if (!m)
100
- return [str];
101
- // no need to expand pre, since it is guaranteed to be free of brace-sets
102
- const pre = m.pre;
103
- const post = m.post.length ? expand_(m.post, max, false) : [''];
104
- if (/\$$/.test(m.pre)) {
105
- for (let k = 0; k < post.length && k < max; k++) {
106
- const expansion = pre + '{' + m.body + '}' + post[k];
107
- expansions.push(expansion);
108
- }
109
- }
110
- else {
111
- const isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
112
- const isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
113
- const isSequence = isNumericSequence || isAlphaSequence;
114
- const isOptions = m.body.indexOf(',') >= 0;
115
- if (!isSequence && !isOptions) {
116
- // {a},b}
117
- if (m.post.match(/,(?!,).*\}/)) {
118
- str = m.pre + '{' + m.body + escClose + m.post;
119
- return expand_(str, max, true);
120
- }
121
- return [str];
122
- }
123
- let n;
124
- if (isSequence) {
125
- n = m.body.split(/\.\./);
126
- }
127
- else {
128
- n = parseCommaParts(m.body);
129
- if (n.length === 1 && n[0] !== undefined) {
130
- // x{{a,b}}y ==> x{a}y x{b}y
131
- n = expand_(n[0], max, false).map(embrace);
132
- //XXX is this necessary? Can't seem to hit it in tests.
133
- /* c8 ignore start */
134
- if (n.length === 1) {
135
- return post.map(p => m.pre + n[0] + p);
136
- }
137
- /* c8 ignore stop */
138
- }
139
- }
140
- // at this point, n is the parts, and we know it's not a comma set
141
- // with a single entry.
142
- let N;
143
- if (isSequence && n[0] !== undefined && n[1] !== undefined) {
144
- const x = numeric(n[0]);
145
- const y = numeric(n[1]);
146
- const width = Math.max(n[0].length, n[1].length);
147
- let incr = n.length === 3 && n[2] !== undefined ? Math.abs(numeric(n[2])) : 1;
148
- let test = lte;
149
- const reverse = y < x;
150
- if (reverse) {
151
- incr *= -1;
152
- test = gte;
153
- }
154
- const pad = n.some(isPadded);
155
- N = [];
156
- for (let i = x; test(i, y); i += incr) {
157
- let c;
158
- if (isAlphaSequence) {
159
- c = String.fromCharCode(i);
160
- if (c === '\\') {
161
- c = '';
162
- }
163
- }
164
- else {
165
- c = String(i);
166
- if (pad) {
167
- const need = width - c.length;
168
- if (need > 0) {
169
- const z = new Array(need + 1).join('0');
170
- if (i < 0) {
171
- c = '-' + z + c.slice(1);
172
- }
173
- else {
174
- c = z + c;
175
- }
176
- }
177
- }
178
- }
179
- N.push(c);
180
- }
181
- }
182
- else {
183
- N = [];
184
- for (let j = 0; j < n.length; j++) {
185
- N.push.apply(N, expand_(n[j], max, false));
186
- }
187
- }
188
- for (let j = 0; j < N.length; j++) {
189
- for (let k = 0; k < post.length && expansions.length < max; k++) {
190
- const expansion = pre + N[j] + post[k];
191
- if (!isTop || isSequence || expansion) {
192
- expansions.push(expansion);
193
- }
194
- }
195
- }
196
- }
197
- return expansions;
198
- }
199
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { balanced } from 'balanced-match'\n\nconst escSlash = '\\0SLASH' + Math.random() + '\\0'\nconst escOpen = '\\0OPEN' + Math.random() + '\\0'\nconst escClose = '\\0CLOSE' + Math.random() + '\\0'\nconst escComma = '\\0COMMA' + Math.random() + '\\0'\nconst escPeriod = '\\0PERIOD' + Math.random() + '\\0'\nconst escSlashPattern = new RegExp(escSlash, 'g')\nconst escOpenPattern = new RegExp(escOpen, 'g')\nconst escClosePattern = new RegExp(escClose, 'g')\nconst escCommaPattern = new RegExp(escComma, 'g')\nconst escPeriodPattern = new RegExp(escPeriod, 'g')\nconst slashPattern = /\\\\\\\\/g\nconst openPattern = /\\\\{/g\nconst closePattern = /\\\\}/g\nconst commaPattern = /\\\\,/g\nconst periodPattern = /\\\\\\./g\n\nexport const EXPANSION_MAX = 100_000\n\nfunction numeric(str: string) {\n return !isNaN(str as any) ? parseInt(str, 10) : str.charCodeAt(0)\n}\n\nfunction escapeBraces(str: string) {\n return str\n .replace(slashPattern, escSlash)\n .replace(openPattern, escOpen)\n .replace(closePattern, escClose)\n .replace(commaPattern, escComma)\n .replace(periodPattern, escPeriod)\n}\n\nfunction unescapeBraces(str: string) {\n return str\n .replace(escSlashPattern, '\\\\')\n .replace(escOpenPattern, '{')\n .replace(escClosePattern, '}')\n .replace(escCommaPattern, ',')\n .replace(escPeriodPattern, '.')\n}\n\n/**\n * Basically just str.split(\",\"), but handling cases\n * where we have nested braced sections, which should be\n * treated as individual members, like {a,{b,c},d}\n */\nfunction parseCommaParts(str: string) {\n if (!str) {\n return ['']\n }\n\n const parts: string[] = []\n const m = balanced('{', '}', str)\n\n if (!m) {\n return str.split(',')\n }\n\n const { pre, body, post } = m\n const p = pre.split(',')\n\n p[p.length - 1] += '{' + body + '}'\n const postParts = parseCommaParts(post)\n if (post.length) {\n ;(p[p.length - 1] as string) += postParts.shift()\n p.push.apply(p, postParts)\n }\n\n parts.push.apply(parts, p)\n\n return parts\n}\n\nexport type BraceExpansionOptions = {\n max?: number\n}\n\nexport function expand(str: string, options: BraceExpansionOptions = {}) {\n if (!str) {\n return []\n }\n\n const { max = EXPANSION_MAX } = options\n\n // I don't know why Bash 4.3 does this, but it does.\n // Anything starting with {} will have the first two bytes preserved\n // but *only* at the top level, so {},a}b will not expand to anything,\n // but a{},b}c will be expanded to [a}c,abc].\n // One could argue that this is a bug in Bash, but since the goal of\n // this module is to match Bash's rules, we escape a leading {}\n if (str.slice(0, 2) === '{}') {\n str = '\\\\{\\\\}' + str.slice(2)\n }\n\n return expand_(escapeBraces(str), max, true).map(unescapeBraces)\n}\n\nfunction embrace(str: string) {\n return '{' + str + '}'\n}\n\nfunction isPadded(el: string) {\n return /^-?0\\d/.test(el)\n}\n\nfunction lte(i: number, y: number) {\n return i <= y\n}\n\nfunction gte(i: number, y: number) {\n return i >= y\n}\n\nfunction expand_(str: string, max: number, isTop: boolean): string[] {\n /** @type {string[]} */\n const expansions: string[] = []\n\n const m = balanced('{', '}', str)\n if (!m) return [str]\n\n // no need to expand pre, since it is guaranteed to be free of brace-sets\n const pre = m.pre\n const post: string[] = m.post.length ? expand_(m.post, max, false) : ['']\n\n if (/\\$$/.test(m.pre)) {\n for (let k = 0; k < post.length && k < max; k++) {\n const expansion = pre + '{' + m.body + '}' + post[k]\n expansions.push(expansion)\n }\n } else {\n const isNumericSequence = /^-?\\d+\\.\\.-?\\d+(?:\\.\\.-?\\d+)?$/.test(m.body)\n const isAlphaSequence = /^[a-zA-Z]\\.\\.[a-zA-Z](?:\\.\\.-?\\d+)?$/.test(\n m.body,\n )\n const isSequence = isNumericSequence || isAlphaSequence\n const isOptions = m.body.indexOf(',') >= 0\n if (!isSequence && !isOptions) {\n // {a},b}\n if (m.post.match(/,(?!,).*\\}/)) {\n str = m.pre + '{' + m.body + escClose + m.post\n return expand_(str, max, true)\n }\n return [str]\n }\n\n let n: string[]\n if (isSequence) {\n n = m.body.split(/\\.\\./)\n } else {\n n = parseCommaParts(m.body)\n if (n.length === 1 && n[0] !== undefined) {\n // x{{a,b}}y ==> x{a}y x{b}y\n n = expand_(n[0], max, false).map(embrace)\n //XXX is this necessary? Can't seem to hit it in tests.\n /* c8 ignore start */\n if (n.length === 1) {\n return post.map(p => m.pre + n[0] + p)\n }\n /* c8 ignore stop */\n }\n }\n\n // at this point, n is the parts, and we know it's not a comma set\n // with a single entry.\n let N: string[]\n\n if (isSequence && n[0] !== undefined && n[1] !== undefined) {\n const x = numeric(n[0])\n const y = numeric(n[1])\n const width = Math.max(n[0].length, n[1].length)\n let incr =\n n.length === 3 && n[2] !== undefined ? Math.abs(numeric(n[2])) : 1\n let test = lte\n const reverse = y < x\n if (reverse) {\n incr *= -1\n test = gte\n }\n const pad = n.some(isPadded)\n\n N = []\n\n for (let i = x; test(i, y); i += incr) {\n let c\n if (isAlphaSequence) {\n c = String.fromCharCode(i)\n if (c === '\\\\') {\n c = ''\n }\n } else {\n c = String(i)\n if (pad) {\n const need = width - c.length\n if (need > 0) {\n const z = new Array(need + 1).join('0')\n if (i < 0) {\n c = '-' + z + c.slice(1)\n } else {\n c = z + c\n }\n }\n }\n }\n N.push(c)\n }\n } else {\n N = []\n\n for (let j = 0; j < n.length; j++) {\n N.push.apply(N, expand_(n[j] as string, max, false))\n }\n }\n\n for (let j = 0; j < N.length; j++) {\n for (let k = 0; k < post.length && expansions.length < max; k++) {\n const expansion = pre + N[j] + post[k]\n if (!isTop || isSequence || expansion) {\n expansions.push(expansion)\n }\n }\n }\n }\n\n return expansions\n}\n"]}
@@ -1,3 +0,0 @@
1
- {
2
- "type": "commonjs"
3
- }
@@ -1,6 +0,0 @@
1
- export declare const EXPANSION_MAX = 100000;
2
- export type BraceExpansionOptions = {
3
- max?: number;
4
- };
5
- export declare function expand(str: string, options?: BraceExpansionOptions): string[];
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAkBA,eAAO,MAAM,aAAa,SAAU,CAAA;AAwDpC,MAAM,MAAM,qBAAqB,GAAG;IAClC,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,CAAA;AAED,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B,YAkBtE"}
@@ -1,195 +0,0 @@
1
- import { balanced } from 'balanced-match';
2
- const escSlash = '\0SLASH' + Math.random() + '\0';
3
- const escOpen = '\0OPEN' + Math.random() + '\0';
4
- const escClose = '\0CLOSE' + Math.random() + '\0';
5
- const escComma = '\0COMMA' + Math.random() + '\0';
6
- const escPeriod = '\0PERIOD' + Math.random() + '\0';
7
- const escSlashPattern = new RegExp(escSlash, 'g');
8
- const escOpenPattern = new RegExp(escOpen, 'g');
9
- const escClosePattern = new RegExp(escClose, 'g');
10
- const escCommaPattern = new RegExp(escComma, 'g');
11
- const escPeriodPattern = new RegExp(escPeriod, 'g');
12
- const slashPattern = /\\\\/g;
13
- const openPattern = /\\{/g;
14
- const closePattern = /\\}/g;
15
- const commaPattern = /\\,/g;
16
- const periodPattern = /\\\./g;
17
- export const EXPANSION_MAX = 100_000;
18
- function numeric(str) {
19
- return !isNaN(str) ? parseInt(str, 10) : str.charCodeAt(0);
20
- }
21
- function escapeBraces(str) {
22
- return str
23
- .replace(slashPattern, escSlash)
24
- .replace(openPattern, escOpen)
25
- .replace(closePattern, escClose)
26
- .replace(commaPattern, escComma)
27
- .replace(periodPattern, escPeriod);
28
- }
29
- function unescapeBraces(str) {
30
- return str
31
- .replace(escSlashPattern, '\\')
32
- .replace(escOpenPattern, '{')
33
- .replace(escClosePattern, '}')
34
- .replace(escCommaPattern, ',')
35
- .replace(escPeriodPattern, '.');
36
- }
37
- /**
38
- * Basically just str.split(","), but handling cases
39
- * where we have nested braced sections, which should be
40
- * treated as individual members, like {a,{b,c},d}
41
- */
42
- function parseCommaParts(str) {
43
- if (!str) {
44
- return [''];
45
- }
46
- const parts = [];
47
- const m = balanced('{', '}', str);
48
- if (!m) {
49
- return str.split(',');
50
- }
51
- const { pre, body, post } = m;
52
- const p = pre.split(',');
53
- p[p.length - 1] += '{' + body + '}';
54
- const postParts = parseCommaParts(post);
55
- if (post.length) {
56
- ;
57
- p[p.length - 1] += postParts.shift();
58
- p.push.apply(p, postParts);
59
- }
60
- parts.push.apply(parts, p);
61
- return parts;
62
- }
63
- export function expand(str, options = {}) {
64
- if (!str) {
65
- return [];
66
- }
67
- const { max = EXPANSION_MAX } = options;
68
- // I don't know why Bash 4.3 does this, but it does.
69
- // Anything starting with {} will have the first two bytes preserved
70
- // but *only* at the top level, so {},a}b will not expand to anything,
71
- // but a{},b}c will be expanded to [a}c,abc].
72
- // One could argue that this is a bug in Bash, but since the goal of
73
- // this module is to match Bash's rules, we escape a leading {}
74
- if (str.slice(0, 2) === '{}') {
75
- str = '\\{\\}' + str.slice(2);
76
- }
77
- return expand_(escapeBraces(str), max, true).map(unescapeBraces);
78
- }
79
- function embrace(str) {
80
- return '{' + str + '}';
81
- }
82
- function isPadded(el) {
83
- return /^-?0\d/.test(el);
84
- }
85
- function lte(i, y) {
86
- return i <= y;
87
- }
88
- function gte(i, y) {
89
- return i >= y;
90
- }
91
- function expand_(str, max, isTop) {
92
- /** @type {string[]} */
93
- const expansions = [];
94
- const m = balanced('{', '}', str);
95
- if (!m)
96
- return [str];
97
- // no need to expand pre, since it is guaranteed to be free of brace-sets
98
- const pre = m.pre;
99
- const post = m.post.length ? expand_(m.post, max, false) : [''];
100
- if (/\$$/.test(m.pre)) {
101
- for (let k = 0; k < post.length && k < max; k++) {
102
- const expansion = pre + '{' + m.body + '}' + post[k];
103
- expansions.push(expansion);
104
- }
105
- }
106
- else {
107
- const isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
108
- const isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
109
- const isSequence = isNumericSequence || isAlphaSequence;
110
- const isOptions = m.body.indexOf(',') >= 0;
111
- if (!isSequence && !isOptions) {
112
- // {a},b}
113
- if (m.post.match(/,(?!,).*\}/)) {
114
- str = m.pre + '{' + m.body + escClose + m.post;
115
- return expand_(str, max, true);
116
- }
117
- return [str];
118
- }
119
- let n;
120
- if (isSequence) {
121
- n = m.body.split(/\.\./);
122
- }
123
- else {
124
- n = parseCommaParts(m.body);
125
- if (n.length === 1 && n[0] !== undefined) {
126
- // x{{a,b}}y ==> x{a}y x{b}y
127
- n = expand_(n[0], max, false).map(embrace);
128
- //XXX is this necessary? Can't seem to hit it in tests.
129
- /* c8 ignore start */
130
- if (n.length === 1) {
131
- return post.map(p => m.pre + n[0] + p);
132
- }
133
- /* c8 ignore stop */
134
- }
135
- }
136
- // at this point, n is the parts, and we know it's not a comma set
137
- // with a single entry.
138
- let N;
139
- if (isSequence && n[0] !== undefined && n[1] !== undefined) {
140
- const x = numeric(n[0]);
141
- const y = numeric(n[1]);
142
- const width = Math.max(n[0].length, n[1].length);
143
- let incr = n.length === 3 && n[2] !== undefined ? Math.abs(numeric(n[2])) : 1;
144
- let test = lte;
145
- const reverse = y < x;
146
- if (reverse) {
147
- incr *= -1;
148
- test = gte;
149
- }
150
- const pad = n.some(isPadded);
151
- N = [];
152
- for (let i = x; test(i, y); i += incr) {
153
- let c;
154
- if (isAlphaSequence) {
155
- c = String.fromCharCode(i);
156
- if (c === '\\') {
157
- c = '';
158
- }
159
- }
160
- else {
161
- c = String(i);
162
- if (pad) {
163
- const need = width - c.length;
164
- if (need > 0) {
165
- const z = new Array(need + 1).join('0');
166
- if (i < 0) {
167
- c = '-' + z + c.slice(1);
168
- }
169
- else {
170
- c = z + c;
171
- }
172
- }
173
- }
174
- }
175
- N.push(c);
176
- }
177
- }
178
- else {
179
- N = [];
180
- for (let j = 0; j < n.length; j++) {
181
- N.push.apply(N, expand_(n[j], max, false));
182
- }
183
- }
184
- for (let j = 0; j < N.length; j++) {
185
- for (let k = 0; k < post.length && expansions.length < max; k++) {
186
- const expansion = pre + N[j] + post[k];
187
- if (!isTop || isSequence || expansion) {
188
- expansions.push(expansion);
189
- }
190
- }
191
- }
192
- }
193
- return expansions;
194
- }
195
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { balanced } from 'balanced-match'\n\nconst escSlash = '\\0SLASH' + Math.random() + '\\0'\nconst escOpen = '\\0OPEN' + Math.random() + '\\0'\nconst escClose = '\\0CLOSE' + Math.random() + '\\0'\nconst escComma = '\\0COMMA' + Math.random() + '\\0'\nconst escPeriod = '\\0PERIOD' + Math.random() + '\\0'\nconst escSlashPattern = new RegExp(escSlash, 'g')\nconst escOpenPattern = new RegExp(escOpen, 'g')\nconst escClosePattern = new RegExp(escClose, 'g')\nconst escCommaPattern = new RegExp(escComma, 'g')\nconst escPeriodPattern = new RegExp(escPeriod, 'g')\nconst slashPattern = /\\\\\\\\/g\nconst openPattern = /\\\\{/g\nconst closePattern = /\\\\}/g\nconst commaPattern = /\\\\,/g\nconst periodPattern = /\\\\\\./g\n\nexport const EXPANSION_MAX = 100_000\n\nfunction numeric(str: string) {\n return !isNaN(str as any) ? parseInt(str, 10) : str.charCodeAt(0)\n}\n\nfunction escapeBraces(str: string) {\n return str\n .replace(slashPattern, escSlash)\n .replace(openPattern, escOpen)\n .replace(closePattern, escClose)\n .replace(commaPattern, escComma)\n .replace(periodPattern, escPeriod)\n}\n\nfunction unescapeBraces(str: string) {\n return str\n .replace(escSlashPattern, '\\\\')\n .replace(escOpenPattern, '{')\n .replace(escClosePattern, '}')\n .replace(escCommaPattern, ',')\n .replace(escPeriodPattern, '.')\n}\n\n/**\n * Basically just str.split(\",\"), but handling cases\n * where we have nested braced sections, which should be\n * treated as individual members, like {a,{b,c},d}\n */\nfunction parseCommaParts(str: string) {\n if (!str) {\n return ['']\n }\n\n const parts: string[] = []\n const m = balanced('{', '}', str)\n\n if (!m) {\n return str.split(',')\n }\n\n const { pre, body, post } = m\n const p = pre.split(',')\n\n p[p.length - 1] += '{' + body + '}'\n const postParts = parseCommaParts(post)\n if (post.length) {\n ;(p[p.length - 1] as string) += postParts.shift()\n p.push.apply(p, postParts)\n }\n\n parts.push.apply(parts, p)\n\n return parts\n}\n\nexport type BraceExpansionOptions = {\n max?: number\n}\n\nexport function expand(str: string, options: BraceExpansionOptions = {}) {\n if (!str) {\n return []\n }\n\n const { max = EXPANSION_MAX } = options\n\n // I don't know why Bash 4.3 does this, but it does.\n // Anything starting with {} will have the first two bytes preserved\n // but *only* at the top level, so {},a}b will not expand to anything,\n // but a{},b}c will be expanded to [a}c,abc].\n // One could argue that this is a bug in Bash, but since the goal of\n // this module is to match Bash's rules, we escape a leading {}\n if (str.slice(0, 2) === '{}') {\n str = '\\\\{\\\\}' + str.slice(2)\n }\n\n return expand_(escapeBraces(str), max, true).map(unescapeBraces)\n}\n\nfunction embrace(str: string) {\n return '{' + str + '}'\n}\n\nfunction isPadded(el: string) {\n return /^-?0\\d/.test(el)\n}\n\nfunction lte(i: number, y: number) {\n return i <= y\n}\n\nfunction gte(i: number, y: number) {\n return i >= y\n}\n\nfunction expand_(str: string, max: number, isTop: boolean): string[] {\n /** @type {string[]} */\n const expansions: string[] = []\n\n const m = balanced('{', '}', str)\n if (!m) return [str]\n\n // no need to expand pre, since it is guaranteed to be free of brace-sets\n const pre = m.pre\n const post: string[] = m.post.length ? expand_(m.post, max, false) : ['']\n\n if (/\\$$/.test(m.pre)) {\n for (let k = 0; k < post.length && k < max; k++) {\n const expansion = pre + '{' + m.body + '}' + post[k]\n expansions.push(expansion)\n }\n } else {\n const isNumericSequence = /^-?\\d+\\.\\.-?\\d+(?:\\.\\.-?\\d+)?$/.test(m.body)\n const isAlphaSequence = /^[a-zA-Z]\\.\\.[a-zA-Z](?:\\.\\.-?\\d+)?$/.test(\n m.body,\n )\n const isSequence = isNumericSequence || isAlphaSequence\n const isOptions = m.body.indexOf(',') >= 0\n if (!isSequence && !isOptions) {\n // {a},b}\n if (m.post.match(/,(?!,).*\\}/)) {\n str = m.pre + '{' + m.body + escClose + m.post\n return expand_(str, max, true)\n }\n return [str]\n }\n\n let n: string[]\n if (isSequence) {\n n = m.body.split(/\\.\\./)\n } else {\n n = parseCommaParts(m.body)\n if (n.length === 1 && n[0] !== undefined) {\n // x{{a,b}}y ==> x{a}y x{b}y\n n = expand_(n[0], max, false).map(embrace)\n //XXX is this necessary? Can't seem to hit it in tests.\n /* c8 ignore start */\n if (n.length === 1) {\n return post.map(p => m.pre + n[0] + p)\n }\n /* c8 ignore stop */\n }\n }\n\n // at this point, n is the parts, and we know it's not a comma set\n // with a single entry.\n let N: string[]\n\n if (isSequence && n[0] !== undefined && n[1] !== undefined) {\n const x = numeric(n[0])\n const y = numeric(n[1])\n const width = Math.max(n[0].length, n[1].length)\n let incr =\n n.length === 3 && n[2] !== undefined ? Math.abs(numeric(n[2])) : 1\n let test = lte\n const reverse = y < x\n if (reverse) {\n incr *= -1\n test = gte\n }\n const pad = n.some(isPadded)\n\n N = []\n\n for (let i = x; test(i, y); i += incr) {\n let c\n if (isAlphaSequence) {\n c = String.fromCharCode(i)\n if (c === '\\\\') {\n c = ''\n }\n } else {\n c = String(i)\n if (pad) {\n const need = width - c.length\n if (need > 0) {\n const z = new Array(need + 1).join('0')\n if (i < 0) {\n c = '-' + z + c.slice(1)\n } else {\n c = z + c\n }\n }\n }\n }\n N.push(c)\n }\n } else {\n N = []\n\n for (let j = 0; j < n.length; j++) {\n N.push.apply(N, expand_(n[j] as string, max, false))\n }\n }\n\n for (let j = 0; j < N.length; j++) {\n for (let k = 0; k < post.length && expansions.length < max; k++) {\n const expansion = pre + N[j] + post[k]\n if (!isTop || isSequence || expansion) {\n expansions.push(expansion)\n }\n }\n }\n }\n\n return expansions\n}\n"]}
@@ -1,3 +0,0 @@
1
- {
2
- "type": "module"
3
- }