elm-pages 3.0.0-beta.13 → 3.0.0-beta.15

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 (501) hide show
  1. package/README.md +1 -1
  2. package/codegen/elm-pages-codegen.js +1497 -1130
  3. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmi +0 -0
  4. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmo +0 -0
  5. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateDataTest.elmo +0 -0
  6. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/d.dat +0 -0
  7. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/o.dat +0 -0
  8. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm.json +1 -1
  9. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/Reporter.elm.js +1 -1
  10. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/Runner.elm.js +152 -40
  11. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/node_runner.js +1 -1
  12. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/node_supervisor.js +4 -4
  13. package/generator/dead-code-review/src/Pages/Review/DeadCodeEliminateData.elm +58 -10
  14. package/generator/dead-code-review/tests/Pages/Review/DeadCodeEliminateDataTest.elm +45 -29
  15. package/generator/review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/d.dat +0 -0
  16. package/generator/review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/o.dat +0 -0
  17. package/generator/review/elm-stuff/tests-0.19.1/elm.json +1 -1
  18. package/generator/review/elm-stuff/tests-0.19.1/js/Reporter.elm.js +1 -1
  19. package/generator/review/elm-stuff/tests-0.19.1/js/Runner.elm.js +46 -5
  20. package/generator/review/elm-stuff/tests-0.19.1/js/node_runner.js +1 -1
  21. package/generator/review/elm-stuff/tests-0.19.1/js/node_supervisor.js +4 -4
  22. package/generator/src/RouteBuilder.elm +66 -52
  23. package/generator/src/SharedTemplate.elm +3 -2
  24. package/generator/src/SiteConfig.elm +3 -2
  25. package/generator/src/build.js +5 -5
  26. package/generator/src/cli.js +7 -6
  27. package/generator/src/compatibility-key.js +1 -1
  28. package/generator/src/dev-server.js +7 -7
  29. package/generator/src/error-formatter.js +7 -3
  30. package/generator/src/render-test.js +109 -0
  31. package/generator/src/render.js +83 -66
  32. package/generator/src/request-cache.js +181 -160
  33. package/generator/static-code/hmr.js +16 -2
  34. package/generator/template/app/Api.elm +2 -2
  35. package/generator/template/app/Route/Index.elm +3 -3
  36. package/generator/template/app/Shared.elm +3 -3
  37. package/generator/template/app/Site.elm +3 -3
  38. package/package.json +10 -10
  39. package/src/ApiRoute.elm +60 -57
  40. package/src/BackendTask/Env.elm +89 -0
  41. package/src/{DataSource → BackendTask}/File.elm +89 -43
  42. package/src/{DataSource → BackendTask}/Glob.elm +134 -125
  43. package/src/BackendTask/Http.elm +673 -0
  44. package/src/{DataSource → BackendTask}/Internal/Glob.elm +1 -1
  45. package/src/BackendTask/Internal/Request.elm +28 -0
  46. package/src/BackendTask/Port.elm +206 -0
  47. package/src/{DataSource.elm → BackendTask.elm} +223 -207
  48. package/src/Exception.elm +95 -0
  49. package/src/Form.elm +21 -20
  50. package/src/Head.elm +7 -7
  51. package/src/Internal/ApiRoute.elm +7 -5
  52. package/src/PageServerResponse.elm +6 -1
  53. package/src/Pages/Generate.elm +334 -165
  54. package/src/Pages/Internal/Platform/Cli.elm +432 -761
  55. package/src/Pages/Internal/Platform/Cli.elm.bak +22 -22
  56. package/src/Pages/Internal/Platform/CompatibilityKey.elm +1 -1
  57. package/src/Pages/Internal/Platform/Effect.elm +0 -1
  58. package/src/Pages/Internal/Platform/GeneratorApplication.elm +63 -147
  59. package/src/Pages/Internal/Platform/StaticResponses.elm +73 -301
  60. package/src/Pages/Internal/Platform/ToJsPayload.elm +4 -4
  61. package/src/Pages/Internal/Platform.elm +25 -31
  62. package/src/Pages/Internal/Script.elm +3 -2
  63. package/src/Pages/Internal/StaticHttpBody.elm +35 -1
  64. package/src/Pages/Manifest.elm +5 -4
  65. package/src/Pages/ProgramConfig.elm +8 -7
  66. package/src/Pages/Script.elm +28 -13
  67. package/src/Pages/SiteConfig.elm +3 -2
  68. package/src/Pages/StaticHttp/Request.elm +2 -2
  69. package/src/Pages/StaticHttpRequest.elm +23 -100
  70. package/src/RequestsAndPending.elm +8 -19
  71. package/src/Server/Request.elm +15 -14
  72. package/src/Server/Session.elm +34 -34
  73. package/src/Server/SetCookie.elm +1 -1
  74. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/dependencies.75364bef27ac5a049b87c3325f846fc6dbda23b8ed7187ed06748b96bb6a50a7.json +0 -1
  75. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Console-Text.elmi +0 -0
  76. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Console-Text.elmo +0 -0
  77. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmi +0 -0
  78. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmo +0 -0
  79. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateDataTest.elmi +0 -0
  80. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateDataTest.elmo +0 -0
  81. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Generated-Main.elmi +0 -0
  82. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Generated-Main.elmo +0 -0
  83. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format-Color.elmi +0 -0
  84. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format-Color.elmo +0 -0
  85. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format-Monochrome.elmi +0 -0
  86. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format-Monochrome.elmo +0 -0
  87. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format.elmi +0 -0
  88. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format.elmo +0 -0
  89. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console.elmi +0 -0
  90. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console.elmo +0 -0
  91. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Highlightable.elmi +0 -0
  92. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Highlightable.elmo +0 -0
  93. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-JUnit.elmi +0 -0
  94. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-JUnit.elmo +0 -0
  95. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Json.elmi +0 -0
  96. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Json.elmo +0 -0
  97. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Reporter.elmi +0 -0
  98. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Reporter.elmo +0 -0
  99. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-TestResults.elmi +0 -0
  100. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-TestResults.elmo +0 -0
  101. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-JsMessage.elmi +0 -0
  102. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-JsMessage.elmo +0 -0
  103. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node-Vendor-Console.elmi +0 -0
  104. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node-Vendor-Console.elmo +0 -0
  105. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node-Vendor-Diff.elmi +0 -0
  106. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node-Vendor-Diff.elmo +0 -0
  107. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node.elmi +0 -0
  108. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node.elmo +0 -0
  109. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/d.dat +0 -0
  110. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/i.dat +0 -0
  111. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/lock +0 -0
  112. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/o.dat +0 -0
  113. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm.json +0 -38
  114. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elmTestOutput.js +0 -29603
  115. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/package.json +0 -1
  116. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/src/Test/Generated/Main.elm +0 -27
  117. package/generator/dead-code-review/node_modules/.package-lock.json +0 -484
  118. package/generator/dead-code-review/node_modules/ansi-styles/index.d.ts +0 -345
  119. package/generator/dead-code-review/node_modules/ansi-styles/index.js +0 -163
  120. package/generator/dead-code-review/node_modules/ansi-styles/license +0 -9
  121. package/generator/dead-code-review/node_modules/ansi-styles/package.json +0 -56
  122. package/generator/dead-code-review/node_modules/ansi-styles/readme.md +0 -152
  123. package/generator/dead-code-review/node_modules/anymatch/LICENSE +0 -15
  124. package/generator/dead-code-review/node_modules/anymatch/README.md +0 -87
  125. package/generator/dead-code-review/node_modules/anymatch/index.d.ts +0 -20
  126. package/generator/dead-code-review/node_modules/anymatch/index.js +0 -104
  127. package/generator/dead-code-review/node_modules/anymatch/package.json +0 -48
  128. package/generator/dead-code-review/node_modules/balanced-match/.github/FUNDING.yml +0 -2
  129. package/generator/dead-code-review/node_modules/balanced-match/LICENSE.md +0 -21
  130. package/generator/dead-code-review/node_modules/balanced-match/README.md +0 -97
  131. package/generator/dead-code-review/node_modules/balanced-match/index.js +0 -62
  132. package/generator/dead-code-review/node_modules/balanced-match/package.json +0 -48
  133. package/generator/dead-code-review/node_modules/binary-extensions/binary-extensions.json +0 -260
  134. package/generator/dead-code-review/node_modules/binary-extensions/binary-extensions.json.d.ts +0 -3
  135. package/generator/dead-code-review/node_modules/binary-extensions/index.d.ts +0 -14
  136. package/generator/dead-code-review/node_modules/binary-extensions/index.js +0 -1
  137. package/generator/dead-code-review/node_modules/binary-extensions/license +0 -9
  138. package/generator/dead-code-review/node_modules/binary-extensions/package.json +0 -38
  139. package/generator/dead-code-review/node_modules/binary-extensions/readme.md +0 -41
  140. package/generator/dead-code-review/node_modules/brace-expansion/.github/FUNDING.yml +0 -2
  141. package/generator/dead-code-review/node_modules/brace-expansion/LICENSE +0 -21
  142. package/generator/dead-code-review/node_modules/brace-expansion/README.md +0 -135
  143. package/generator/dead-code-review/node_modules/brace-expansion/index.js +0 -203
  144. package/generator/dead-code-review/node_modules/brace-expansion/package.json +0 -46
  145. package/generator/dead-code-review/node_modules/braces/CHANGELOG.md +0 -184
  146. package/generator/dead-code-review/node_modules/braces/LICENSE +0 -21
  147. package/generator/dead-code-review/node_modules/braces/README.md +0 -593
  148. package/generator/dead-code-review/node_modules/braces/index.js +0 -170
  149. package/generator/dead-code-review/node_modules/braces/lib/compile.js +0 -57
  150. package/generator/dead-code-review/node_modules/braces/lib/constants.js +0 -57
  151. package/generator/dead-code-review/node_modules/braces/lib/expand.js +0 -113
  152. package/generator/dead-code-review/node_modules/braces/lib/parse.js +0 -333
  153. package/generator/dead-code-review/node_modules/braces/lib/stringify.js +0 -32
  154. package/generator/dead-code-review/node_modules/braces/lib/utils.js +0 -112
  155. package/generator/dead-code-review/node_modules/braces/package.json +0 -77
  156. package/generator/dead-code-review/node_modules/chalk/index.d.ts +0 -415
  157. package/generator/dead-code-review/node_modules/chalk/license +0 -9
  158. package/generator/dead-code-review/node_modules/chalk/package.json +0 -68
  159. package/generator/dead-code-review/node_modules/chalk/readme.md +0 -341
  160. package/generator/dead-code-review/node_modules/chalk/source/index.js +0 -229
  161. package/generator/dead-code-review/node_modules/chalk/source/templates.js +0 -134
  162. package/generator/dead-code-review/node_modules/chalk/source/util.js +0 -39
  163. package/generator/dead-code-review/node_modules/chokidar/LICENSE +0 -21
  164. package/generator/dead-code-review/node_modules/chokidar/README.md +0 -308
  165. package/generator/dead-code-review/node_modules/chokidar/index.js +0 -973
  166. package/generator/dead-code-review/node_modules/chokidar/lib/constants.js +0 -65
  167. package/generator/dead-code-review/node_modules/chokidar/lib/fsevents-handler.js +0 -524
  168. package/generator/dead-code-review/node_modules/chokidar/lib/nodefs-handler.js +0 -654
  169. package/generator/dead-code-review/node_modules/chokidar/package.json +0 -85
  170. package/generator/dead-code-review/node_modules/chokidar/types/index.d.ts +0 -188
  171. package/generator/dead-code-review/node_modules/color-convert/CHANGELOG.md +0 -54
  172. package/generator/dead-code-review/node_modules/color-convert/LICENSE +0 -21
  173. package/generator/dead-code-review/node_modules/color-convert/README.md +0 -68
  174. package/generator/dead-code-review/node_modules/color-convert/conversions.js +0 -839
  175. package/generator/dead-code-review/node_modules/color-convert/index.js +0 -81
  176. package/generator/dead-code-review/node_modules/color-convert/package.json +0 -48
  177. package/generator/dead-code-review/node_modules/color-convert/route.js +0 -97
  178. package/generator/dead-code-review/node_modules/color-name/LICENSE +0 -8
  179. package/generator/dead-code-review/node_modules/color-name/README.md +0 -11
  180. package/generator/dead-code-review/node_modules/color-name/index.js +0 -152
  181. package/generator/dead-code-review/node_modules/color-name/package.json +0 -28
  182. package/generator/dead-code-review/node_modules/commander/LICENSE +0 -22
  183. package/generator/dead-code-review/node_modules/commander/Readme.md +0 -1118
  184. package/generator/dead-code-review/node_modules/commander/esm.mjs +0 -16
  185. package/generator/dead-code-review/node_modules/commander/index.js +0 -27
  186. package/generator/dead-code-review/node_modules/commander/lib/argument.js +0 -147
  187. package/generator/dead-code-review/node_modules/commander/lib/command.js +0 -2160
  188. package/generator/dead-code-review/node_modules/commander/lib/error.js +0 -45
  189. package/generator/dead-code-review/node_modules/commander/lib/help.js +0 -406
  190. package/generator/dead-code-review/node_modules/commander/lib/option.js +0 -326
  191. package/generator/dead-code-review/node_modules/commander/lib/suggestSimilar.js +0 -100
  192. package/generator/dead-code-review/node_modules/commander/package-support.json +0 -16
  193. package/generator/dead-code-review/node_modules/commander/package.json +0 -80
  194. package/generator/dead-code-review/node_modules/commander/typings/index.d.ts +0 -881
  195. package/generator/dead-code-review/node_modules/cross-spawn/CHANGELOG.md +0 -130
  196. package/generator/dead-code-review/node_modules/cross-spawn/LICENSE +0 -21
  197. package/generator/dead-code-review/node_modules/cross-spawn/README.md +0 -96
  198. package/generator/dead-code-review/node_modules/cross-spawn/index.js +0 -39
  199. package/generator/dead-code-review/node_modules/cross-spawn/lib/enoent.js +0 -59
  200. package/generator/dead-code-review/node_modules/cross-spawn/lib/parse.js +0 -91
  201. package/generator/dead-code-review/node_modules/cross-spawn/lib/util/escape.js +0 -45
  202. package/generator/dead-code-review/node_modules/cross-spawn/lib/util/readShebang.js +0 -23
  203. package/generator/dead-code-review/node_modules/cross-spawn/lib/util/resolveCommand.js +0 -52
  204. package/generator/dead-code-review/node_modules/cross-spawn/package.json +0 -73
  205. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/LICENSE +0 -373
  206. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/README.md +0 -64
  207. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm.d.ts +0 -22
  208. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm.js +0 -419
  209. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm_bg.wasm +0 -0
  210. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/package.json +0 -27
  211. package/generator/dead-code-review/node_modules/elm-test/LICENSE +0 -27
  212. package/generator/dead-code-review/node_modules/elm-test/README.md +0 -192
  213. package/generator/dead-code-review/node_modules/elm-test/bin/elm-test +0 -3
  214. package/generator/dead-code-review/node_modules/elm-test/elm/elm.json +0 -25
  215. package/generator/dead-code-review/node_modules/elm-test/elm/src/Console/Text.elm +0 -217
  216. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format/Color.elm +0 -30
  217. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format/Monochrome.elm +0 -39
  218. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format.elm +0 -212
  219. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console.elm +0 -207
  220. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Highlightable.elm +0 -48
  221. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/JUnit.elm +0 -161
  222. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Json.elm +0 -158
  223. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Reporter.elm +0 -53
  224. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/TestResults.elm +0 -113
  225. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/JsMessage.elm +0 -38
  226. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node/Vendor/Console.elm +0 -230
  227. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node/Vendor/Diff.elm +0 -326
  228. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node.elm +0 -440
  229. package/generator/dead-code-review/node_modules/elm-test/lib/Compile.js +0 -110
  230. package/generator/dead-code-review/node_modules/elm-test/lib/DependencyProvider.js +0 -343
  231. package/generator/dead-code-review/node_modules/elm-test/lib/ElmCompiler.js +0 -109
  232. package/generator/dead-code-review/node_modules/elm-test/lib/ElmHome.js +0 -47
  233. package/generator/dead-code-review/node_modules/elm-test/lib/ElmJson.js +0 -194
  234. package/generator/dead-code-review/node_modules/elm-test/lib/FindTests.js +0 -276
  235. package/generator/dead-code-review/node_modules/elm-test/lib/Generate.js +0 -294
  236. package/generator/dead-code-review/node_modules/elm-test/lib/Install.js +0 -290
  237. package/generator/dead-code-review/node_modules/elm-test/lib/Parser.js +0 -941
  238. package/generator/dead-code-review/node_modules/elm-test/lib/Project.js +0 -117
  239. package/generator/dead-code-review/node_modules/elm-test/lib/Report.js +0 -23
  240. package/generator/dead-code-review/node_modules/elm-test/lib/RunTests.js +0 -322
  241. package/generator/dead-code-review/node_modules/elm-test/lib/Solve.js +0 -76
  242. package/generator/dead-code-review/node_modules/elm-test/lib/Supervisor.js +0 -294
  243. package/generator/dead-code-review/node_modules/elm-test/lib/SyncGet.js +0 -45
  244. package/generator/dead-code-review/node_modules/elm-test/lib/SyncGetWorker.js +0 -36
  245. package/generator/dead-code-review/node_modules/elm-test/lib/elm-test.js +0 -318
  246. package/generator/dead-code-review/node_modules/elm-test/package.json +0 -69
  247. package/generator/dead-code-review/node_modules/elm-test/templates/after.js +0 -29
  248. package/generator/dead-code-review/node_modules/elm-test/templates/before.js +0 -58
  249. package/generator/dead-code-review/node_modules/elm-test/templates/tests/Example.elm +0 -10
  250. package/generator/dead-code-review/node_modules/fill-range/LICENSE +0 -21
  251. package/generator/dead-code-review/node_modules/fill-range/README.md +0 -237
  252. package/generator/dead-code-review/node_modules/fill-range/index.js +0 -249
  253. package/generator/dead-code-review/node_modules/fill-range/package.json +0 -69
  254. package/generator/dead-code-review/node_modules/fs.realpath/LICENSE +0 -43
  255. package/generator/dead-code-review/node_modules/fs.realpath/README.md +0 -33
  256. package/generator/dead-code-review/node_modules/fs.realpath/index.js +0 -66
  257. package/generator/dead-code-review/node_modules/fs.realpath/old.js +0 -303
  258. package/generator/dead-code-review/node_modules/fs.realpath/package.json +0 -26
  259. package/generator/dead-code-review/node_modules/fsevents/LICENSE +0 -22
  260. package/generator/dead-code-review/node_modules/fsevents/README.md +0 -83
  261. package/generator/dead-code-review/node_modules/fsevents/fsevents.d.ts +0 -46
  262. package/generator/dead-code-review/node_modules/fsevents/fsevents.js +0 -82
  263. package/generator/dead-code-review/node_modules/fsevents/fsevents.node +0 -0
  264. package/generator/dead-code-review/node_modules/fsevents/package.json +0 -62
  265. package/generator/dead-code-review/node_modules/glob/LICENSE +0 -15
  266. package/generator/dead-code-review/node_modules/glob/README.md +0 -378
  267. package/generator/dead-code-review/node_modules/glob/common.js +0 -240
  268. package/generator/dead-code-review/node_modules/glob/glob.js +0 -790
  269. package/generator/dead-code-review/node_modules/glob/package.json +0 -55
  270. package/generator/dead-code-review/node_modules/glob/sync.js +0 -486
  271. package/generator/dead-code-review/node_modules/glob-parent/CHANGELOG.md +0 -110
  272. package/generator/dead-code-review/node_modules/glob-parent/LICENSE +0 -15
  273. package/generator/dead-code-review/node_modules/glob-parent/README.md +0 -137
  274. package/generator/dead-code-review/node_modules/glob-parent/index.js +0 -42
  275. package/generator/dead-code-review/node_modules/glob-parent/package.json +0 -48
  276. package/generator/dead-code-review/node_modules/graceful-fs/LICENSE +0 -15
  277. package/generator/dead-code-review/node_modules/graceful-fs/README.md +0 -143
  278. package/generator/dead-code-review/node_modules/graceful-fs/clone.js +0 -23
  279. package/generator/dead-code-review/node_modules/graceful-fs/graceful-fs.js +0 -448
  280. package/generator/dead-code-review/node_modules/graceful-fs/legacy-streams.js +0 -118
  281. package/generator/dead-code-review/node_modules/graceful-fs/package.json +0 -50
  282. package/generator/dead-code-review/node_modules/graceful-fs/polyfills.js +0 -355
  283. package/generator/dead-code-review/node_modules/has-flag/index.d.ts +0 -39
  284. package/generator/dead-code-review/node_modules/has-flag/index.js +0 -8
  285. package/generator/dead-code-review/node_modules/has-flag/license +0 -9
  286. package/generator/dead-code-review/node_modules/has-flag/package.json +0 -46
  287. package/generator/dead-code-review/node_modules/has-flag/readme.md +0 -89
  288. package/generator/dead-code-review/node_modules/inflight/LICENSE +0 -15
  289. package/generator/dead-code-review/node_modules/inflight/README.md +0 -37
  290. package/generator/dead-code-review/node_modules/inflight/inflight.js +0 -54
  291. package/generator/dead-code-review/node_modules/inflight/package.json +0 -29
  292. package/generator/dead-code-review/node_modules/inherits/LICENSE +0 -16
  293. package/generator/dead-code-review/node_modules/inherits/README.md +0 -42
  294. package/generator/dead-code-review/node_modules/inherits/inherits.js +0 -9
  295. package/generator/dead-code-review/node_modules/inherits/inherits_browser.js +0 -27
  296. package/generator/dead-code-review/node_modules/inherits/package.json +0 -29
  297. package/generator/dead-code-review/node_modules/is-binary-path/index.d.ts +0 -17
  298. package/generator/dead-code-review/node_modules/is-binary-path/index.js +0 -7
  299. package/generator/dead-code-review/node_modules/is-binary-path/license +0 -9
  300. package/generator/dead-code-review/node_modules/is-binary-path/package.json +0 -40
  301. package/generator/dead-code-review/node_modules/is-binary-path/readme.md +0 -34
  302. package/generator/dead-code-review/node_modules/is-extglob/LICENSE +0 -21
  303. package/generator/dead-code-review/node_modules/is-extglob/README.md +0 -107
  304. package/generator/dead-code-review/node_modules/is-extglob/index.js +0 -20
  305. package/generator/dead-code-review/node_modules/is-extglob/package.json +0 -69
  306. package/generator/dead-code-review/node_modules/is-glob/LICENSE +0 -21
  307. package/generator/dead-code-review/node_modules/is-glob/README.md +0 -206
  308. package/generator/dead-code-review/node_modules/is-glob/index.js +0 -150
  309. package/generator/dead-code-review/node_modules/is-glob/package.json +0 -81
  310. package/generator/dead-code-review/node_modules/is-number/LICENSE +0 -21
  311. package/generator/dead-code-review/node_modules/is-number/README.md +0 -187
  312. package/generator/dead-code-review/node_modules/is-number/index.js +0 -18
  313. package/generator/dead-code-review/node_modules/is-number/package.json +0 -82
  314. package/generator/dead-code-review/node_modules/isexe/LICENSE +0 -15
  315. package/generator/dead-code-review/node_modules/isexe/README.md +0 -51
  316. package/generator/dead-code-review/node_modules/isexe/index.js +0 -57
  317. package/generator/dead-code-review/node_modules/isexe/mode.js +0 -41
  318. package/generator/dead-code-review/node_modules/isexe/package.json +0 -31
  319. package/generator/dead-code-review/node_modules/isexe/test/basic.js +0 -221
  320. package/generator/dead-code-review/node_modules/isexe/windows.js +0 -42
  321. package/generator/dead-code-review/node_modules/minimatch/LICENSE +0 -15
  322. package/generator/dead-code-review/node_modules/minimatch/README.md +0 -259
  323. package/generator/dead-code-review/node_modules/minimatch/lib/path.js +0 -4
  324. package/generator/dead-code-review/node_modules/minimatch/minimatch.js +0 -906
  325. package/generator/dead-code-review/node_modules/minimatch/package.json +0 -32
  326. package/generator/dead-code-review/node_modules/normalize-path/LICENSE +0 -21
  327. package/generator/dead-code-review/node_modules/normalize-path/README.md +0 -127
  328. package/generator/dead-code-review/node_modules/normalize-path/index.js +0 -35
  329. package/generator/dead-code-review/node_modules/normalize-path/package.json +0 -77
  330. package/generator/dead-code-review/node_modules/once/LICENSE +0 -15
  331. package/generator/dead-code-review/node_modules/once/README.md +0 -79
  332. package/generator/dead-code-review/node_modules/once/once.js +0 -42
  333. package/generator/dead-code-review/node_modules/once/package.json +0 -33
  334. package/generator/dead-code-review/node_modules/path-key/index.d.ts +0 -40
  335. package/generator/dead-code-review/node_modules/path-key/index.js +0 -16
  336. package/generator/dead-code-review/node_modules/path-key/license +0 -9
  337. package/generator/dead-code-review/node_modules/path-key/package.json +0 -39
  338. package/generator/dead-code-review/node_modules/path-key/readme.md +0 -61
  339. package/generator/dead-code-review/node_modules/picomatch/CHANGELOG.md +0 -136
  340. package/generator/dead-code-review/node_modules/picomatch/LICENSE +0 -21
  341. package/generator/dead-code-review/node_modules/picomatch/README.md +0 -708
  342. package/generator/dead-code-review/node_modules/picomatch/index.js +0 -3
  343. package/generator/dead-code-review/node_modules/picomatch/lib/constants.js +0 -179
  344. package/generator/dead-code-review/node_modules/picomatch/lib/parse.js +0 -1091
  345. package/generator/dead-code-review/node_modules/picomatch/lib/picomatch.js +0 -342
  346. package/generator/dead-code-review/node_modules/picomatch/lib/scan.js +0 -391
  347. package/generator/dead-code-review/node_modules/picomatch/lib/utils.js +0 -64
  348. package/generator/dead-code-review/node_modules/picomatch/package.json +0 -81
  349. package/generator/dead-code-review/node_modules/readdirp/LICENSE +0 -21
  350. package/generator/dead-code-review/node_modules/readdirp/README.md +0 -122
  351. package/generator/dead-code-review/node_modules/readdirp/index.d.ts +0 -43
  352. package/generator/dead-code-review/node_modules/readdirp/index.js +0 -287
  353. package/generator/dead-code-review/node_modules/readdirp/package.json +0 -122
  354. package/generator/dead-code-review/node_modules/shebang-command/index.js +0 -19
  355. package/generator/dead-code-review/node_modules/shebang-command/license +0 -9
  356. package/generator/dead-code-review/node_modules/shebang-command/package.json +0 -34
  357. package/generator/dead-code-review/node_modules/shebang-command/readme.md +0 -34
  358. package/generator/dead-code-review/node_modules/shebang-regex/index.d.ts +0 -22
  359. package/generator/dead-code-review/node_modules/shebang-regex/index.js +0 -2
  360. package/generator/dead-code-review/node_modules/shebang-regex/license +0 -9
  361. package/generator/dead-code-review/node_modules/shebang-regex/package.json +0 -35
  362. package/generator/dead-code-review/node_modules/shebang-regex/readme.md +0 -33
  363. package/generator/dead-code-review/node_modules/split/.travis.yml +0 -3
  364. package/generator/dead-code-review/node_modules/split/LICENCE +0 -22
  365. package/generator/dead-code-review/node_modules/split/examples/pretty.js +0 -26
  366. package/generator/dead-code-review/node_modules/split/index.js +0 -63
  367. package/generator/dead-code-review/node_modules/split/package.json +0 -30
  368. package/generator/dead-code-review/node_modules/split/readme.markdown +0 -72
  369. package/generator/dead-code-review/node_modules/split/test/options.asynct.js +0 -46
  370. package/generator/dead-code-review/node_modules/split/test/partitioned_unicode.js +0 -34
  371. package/generator/dead-code-review/node_modules/split/test/split.asynct.js +0 -137
  372. package/generator/dead-code-review/node_modules/split/test/try_catch.asynct.js +0 -51
  373. package/generator/dead-code-review/node_modules/supports-color/browser.js +0 -5
  374. package/generator/dead-code-review/node_modules/supports-color/index.js +0 -135
  375. package/generator/dead-code-review/node_modules/supports-color/license +0 -9
  376. package/generator/dead-code-review/node_modules/supports-color/package.json +0 -53
  377. package/generator/dead-code-review/node_modules/supports-color/readme.md +0 -76
  378. package/generator/dead-code-review/node_modules/through/.travis.yml +0 -5
  379. package/generator/dead-code-review/node_modules/through/LICENSE.APACHE2 +0 -15
  380. package/generator/dead-code-review/node_modules/through/LICENSE.MIT +0 -24
  381. package/generator/dead-code-review/node_modules/through/index.js +0 -108
  382. package/generator/dead-code-review/node_modules/through/package.json +0 -36
  383. package/generator/dead-code-review/node_modules/through/readme.markdown +0 -64
  384. package/generator/dead-code-review/node_modules/through/test/async.js +0 -28
  385. package/generator/dead-code-review/node_modules/through/test/auto-destroy.js +0 -30
  386. package/generator/dead-code-review/node_modules/through/test/buffering.js +0 -71
  387. package/generator/dead-code-review/node_modules/through/test/end.js +0 -45
  388. package/generator/dead-code-review/node_modules/through/test/index.js +0 -133
  389. package/generator/dead-code-review/node_modules/to-regex-range/LICENSE +0 -21
  390. package/generator/dead-code-review/node_modules/to-regex-range/README.md +0 -305
  391. package/generator/dead-code-review/node_modules/to-regex-range/index.js +0 -288
  392. package/generator/dead-code-review/node_modules/to-regex-range/package.json +0 -88
  393. package/generator/dead-code-review/node_modules/which/CHANGELOG.md +0 -166
  394. package/generator/dead-code-review/node_modules/which/LICENSE +0 -15
  395. package/generator/dead-code-review/node_modules/which/README.md +0 -54
  396. package/generator/dead-code-review/node_modules/which/bin/node-which +0 -52
  397. package/generator/dead-code-review/node_modules/which/package.json +0 -43
  398. package/generator/dead-code-review/node_modules/which/which.js +0 -125
  399. package/generator/dead-code-review/node_modules/wrappy/LICENSE +0 -15
  400. package/generator/dead-code-review/node_modules/wrappy/README.md +0 -36
  401. package/generator/dead-code-review/node_modules/wrappy/package.json +0 -29
  402. package/generator/dead-code-review/node_modules/wrappy/wrappy.js +0 -33
  403. package/generator/dead-code-review/node_modules/xmlbuilder/.nycrc +0 -6
  404. package/generator/dead-code-review/node_modules/xmlbuilder/.vscode/launch.json +0 -23
  405. package/generator/dead-code-review/node_modules/xmlbuilder/CHANGELOG.md +0 -593
  406. package/generator/dead-code-review/node_modules/xmlbuilder/LICENSE +0 -21
  407. package/generator/dead-code-review/node_modules/xmlbuilder/README.md +0 -103
  408. package/generator/dead-code-review/node_modules/xmlbuilder/lib/Derivation.js +0 -10
  409. package/generator/dead-code-review/node_modules/xmlbuilder/lib/DocumentPosition.js +0 -12
  410. package/generator/dead-code-review/node_modules/xmlbuilder/lib/NodeType.js +0 -25
  411. package/generator/dead-code-review/node_modules/xmlbuilder/lib/OperationType.js +0 -11
  412. package/generator/dead-code-review/node_modules/xmlbuilder/lib/Utility.js +0 -88
  413. package/generator/dead-code-review/node_modules/xmlbuilder/lib/WriterState.js +0 -10
  414. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLAttribute.js +0 -130
  415. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLCData.js +0 -41
  416. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLCharacterData.js +0 -86
  417. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLComment.js +0 -41
  418. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMConfiguration.js +0 -80
  419. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMErrorHandler.js +0 -20
  420. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMImplementation.js +0 -55
  421. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMStringList.js +0 -44
  422. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDAttList.js +0 -66
  423. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDElement.js +0 -44
  424. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDEntity.js +0 -115
  425. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDNotation.js +0 -66
  426. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDeclaration.js +0 -51
  427. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocType.js +0 -235
  428. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocument.js +0 -282
  429. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocumentCB.js +0 -650
  430. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocumentFragment.js +0 -21
  431. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDummy.js +0 -39
  432. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLElement.js +0 -334
  433. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNamedNodeMap.js +0 -77
  434. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNode.js +0 -999
  435. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNodeFilter.js +0 -51
  436. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNodeList.js +0 -45
  437. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLProcessingInstruction.js +0 -56
  438. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLRaw.js +0 -40
  439. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStreamWriter.js +0 -209
  440. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStringWriter.js +0 -40
  441. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStringifier.js +0 -291
  442. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLText.js +0 -82
  443. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLTypeInfo.js +0 -23
  444. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLUserDataHandler.js +0 -27
  445. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLWriterBase.js +0 -485
  446. package/generator/dead-code-review/node_modules/xmlbuilder/lib/index.js +0 -120
  447. package/generator/dead-code-review/node_modules/xmlbuilder/package.json +0 -51
  448. package/generator/dead-code-review/node_modules/xmlbuilder/perf/basic/escaping.coffee +0 -244
  449. package/generator/dead-code-review/node_modules/xmlbuilder/perf/basic/object.coffee +0 -21
  450. package/generator/dead-code-review/node_modules/xmlbuilder/perf/index.coffee +0 -161
  451. package/generator/dead-code-review/node_modules/xmlbuilder/perf/perf.list +0 -11
  452. package/generator/dead-code-review/node_modules/xmlbuilder/typings/index.d.ts +0 -1771
  453. package/generator/review/elm-stuff/0.19.1/d.dat +0 -0
  454. package/generator/review/elm-stuff/0.19.1/i.dat +0 -0
  455. package/generator/review/elm-stuff/0.19.1/o.dat +0 -0
  456. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm-stuff/0.19.1/d.dat +0 -0
  457. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm-stuff/0.19.1/i.dat +0 -0
  458. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm-stuff/0.19.1/o.dat +0 -0
  459. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm.json +0 -25
  460. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm-stuff/0.19.1/d.dat +0 -0
  461. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm-stuff/0.19.1/i.dat +0 -0
  462. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm-stuff/0.19.1/o.dat +0 -0
  463. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm.json +0 -41
  464. package/src/DataSource/Env.elm +0 -62
  465. package/src/DataSource/Http.elm +0 -446
  466. package/src/DataSource/Internal/Request.elm +0 -20
  467. package/src/DataSource/Port.elm +0 -90
  468. package/src/MultiDict.elm +0 -49
  469. package/src/PairingHeap.elm +0 -137
  470. package/src/Parser/Extra/String.elm +0 -33
  471. package/src/Parser/Extra.elm +0 -69
  472. package/src/ProgramTest/ComplexQuery.elm +0 -360
  473. package/src/ProgramTest/EffectSimulation.elm +0 -122
  474. package/src/ProgramTest/Failure.elm +0 -367
  475. package/src/ProgramTest/HtmlHighlighter.elm +0 -116
  476. package/src/ProgramTest/HtmlParserHacks.elm +0 -58
  477. package/src/ProgramTest/HtmlRenderer.elm +0 -73
  478. package/src/ProgramTest/Program.elm +0 -30
  479. package/src/ProgramTest/StringLines.elm +0 -26
  480. package/src/ProgramTest/TestHtmlHacks.elm +0 -132
  481. package/src/ProgramTest/TestHtmlParser.elm +0 -201
  482. package/src/ProgramTest.elm +0 -2339
  483. package/src/Query/Extra.elm +0 -55
  484. package/src/SimulatedEffect/Cmd.elm +0 -69
  485. package/src/SimulatedEffect/Http.elm +0 -330
  486. package/src/SimulatedEffect/Navigation.elm +0 -69
  487. package/src/SimulatedEffect/Ports.elm +0 -62
  488. package/src/SimulatedEffect/Process.elm +0 -24
  489. package/src/SimulatedEffect/Sub.elm +0 -48
  490. package/src/SimulatedEffect/Task.elm +0 -252
  491. package/src/SimulatedEffect/Time.elm +0 -25
  492. package/src/SimulatedEffect.elm +0 -42
  493. package/src/String/Extra.elm +0 -6
  494. package/src/Test/Http.elm +0 -145
  495. package/src/TestResult.elm +0 -35
  496. package/src/TestState.elm +0 -305
  497. package/src/Url/Extra.elm +0 -100
  498. package/src/Vendored/Diff.elm +0 -321
  499. package/src/Vendored/Failure.elm +0 -217
  500. package/src/Vendored/FormatMonochrome.elm +0 -44
  501. package/src/Vendored/Highlightable.elm +0 -53
@@ -1,790 +0,0 @@
1
- // Approach:
2
- //
3
- // 1. Get the minimatch set
4
- // 2. For each pattern in the set, PROCESS(pattern, false)
5
- // 3. Store matches per-set, then uniq them
6
- //
7
- // PROCESS(pattern, inGlobStar)
8
- // Get the first [n] items from pattern that are all strings
9
- // Join these together. This is PREFIX.
10
- // If there is no more remaining, then stat(PREFIX) and
11
- // add to matches if it succeeds. END.
12
- //
13
- // If inGlobStar and PREFIX is symlink and points to dir
14
- // set ENTRIES = []
15
- // else readdir(PREFIX) as ENTRIES
16
- // If fail, END
17
- //
18
- // with ENTRIES
19
- // If pattern[n] is GLOBSTAR
20
- // // handle the case where the globstar match is empty
21
- // // by pruning it out, and testing the resulting pattern
22
- // PROCESS(pattern[0..n] + pattern[n+1 .. $], false)
23
- // // handle other cases.
24
- // for ENTRY in ENTRIES (not dotfiles)
25
- // // attach globstar + tail onto the entry
26
- // // Mark that this entry is a globstar match
27
- // PROCESS(pattern[0..n] + ENTRY + pattern[n .. $], true)
28
- //
29
- // else // not globstar
30
- // for ENTRY in ENTRIES (not dotfiles, unless pattern[n] is dot)
31
- // Test ENTRY against pattern[n]
32
- // If fails, continue
33
- // If passes, PROCESS(pattern[0..n] + item + pattern[n+1 .. $])
34
- //
35
- // Caveat:
36
- // Cache all stats and readdirs results to minimize syscall. Since all
37
- // we ever care about is existence and directory-ness, we can just keep
38
- // `true` for files, and [children,...] for directories, or `false` for
39
- // things that don't exist.
40
-
41
- module.exports = glob
42
-
43
- var rp = require('fs.realpath')
44
- var minimatch = require('minimatch')
45
- var Minimatch = minimatch.Minimatch
46
- var inherits = require('inherits')
47
- var EE = require('events').EventEmitter
48
- var path = require('path')
49
- var assert = require('assert')
50
- var isAbsolute = require('path').isAbsolute
51
- var globSync = require('./sync.js')
52
- var common = require('./common.js')
53
- var setopts = common.setopts
54
- var ownProp = common.ownProp
55
- var inflight = require('inflight')
56
- var util = require('util')
57
- var childrenIgnored = common.childrenIgnored
58
- var isIgnored = common.isIgnored
59
-
60
- var once = require('once')
61
-
62
- function glob (pattern, options, cb) {
63
- if (typeof options === 'function') cb = options, options = {}
64
- if (!options) options = {}
65
-
66
- if (options.sync) {
67
- if (cb)
68
- throw new TypeError('callback provided to sync glob')
69
- return globSync(pattern, options)
70
- }
71
-
72
- return new Glob(pattern, options, cb)
73
- }
74
-
75
- glob.sync = globSync
76
- var GlobSync = glob.GlobSync = globSync.GlobSync
77
-
78
- // old api surface
79
- glob.glob = glob
80
-
81
- function extend (origin, add) {
82
- if (add === null || typeof add !== 'object') {
83
- return origin
84
- }
85
-
86
- var keys = Object.keys(add)
87
- var i = keys.length
88
- while (i--) {
89
- origin[keys[i]] = add[keys[i]]
90
- }
91
- return origin
92
- }
93
-
94
- glob.hasMagic = function (pattern, options_) {
95
- var options = extend({}, options_)
96
- options.noprocess = true
97
-
98
- var g = new Glob(pattern, options)
99
- var set = g.minimatch.set
100
-
101
- if (!pattern)
102
- return false
103
-
104
- if (set.length > 1)
105
- return true
106
-
107
- for (var j = 0; j < set[0].length; j++) {
108
- if (typeof set[0][j] !== 'string')
109
- return true
110
- }
111
-
112
- return false
113
- }
114
-
115
- glob.Glob = Glob
116
- inherits(Glob, EE)
117
- function Glob (pattern, options, cb) {
118
- if (typeof options === 'function') {
119
- cb = options
120
- options = null
121
- }
122
-
123
- if (options && options.sync) {
124
- if (cb)
125
- throw new TypeError('callback provided to sync glob')
126
- return new GlobSync(pattern, options)
127
- }
128
-
129
- if (!(this instanceof Glob))
130
- return new Glob(pattern, options, cb)
131
-
132
- setopts(this, pattern, options)
133
- this._didRealPath = false
134
-
135
- // process each pattern in the minimatch set
136
- var n = this.minimatch.set.length
137
-
138
- // The matches are stored as {<filename>: true,...} so that
139
- // duplicates are automagically pruned.
140
- // Later, we do an Object.keys() on these.
141
- // Keep them as a list so we can fill in when nonull is set.
142
- this.matches = new Array(n)
143
-
144
- if (typeof cb === 'function') {
145
- cb = once(cb)
146
- this.on('error', cb)
147
- this.on('end', function (matches) {
148
- cb(null, matches)
149
- })
150
- }
151
-
152
- var self = this
153
- this._processing = 0
154
-
155
- this._emitQueue = []
156
- this._processQueue = []
157
- this.paused = false
158
-
159
- if (this.noprocess)
160
- return this
161
-
162
- if (n === 0)
163
- return done()
164
-
165
- var sync = true
166
- for (var i = 0; i < n; i ++) {
167
- this._process(this.minimatch.set[i], i, false, done)
168
- }
169
- sync = false
170
-
171
- function done () {
172
- --self._processing
173
- if (self._processing <= 0) {
174
- if (sync) {
175
- process.nextTick(function () {
176
- self._finish()
177
- })
178
- } else {
179
- self._finish()
180
- }
181
- }
182
- }
183
- }
184
-
185
- Glob.prototype._finish = function () {
186
- assert(this instanceof Glob)
187
- if (this.aborted)
188
- return
189
-
190
- if (this.realpath && !this._didRealpath)
191
- return this._realpath()
192
-
193
- common.finish(this)
194
- this.emit('end', this.found)
195
- }
196
-
197
- Glob.prototype._realpath = function () {
198
- if (this._didRealpath)
199
- return
200
-
201
- this._didRealpath = true
202
-
203
- var n = this.matches.length
204
- if (n === 0)
205
- return this._finish()
206
-
207
- var self = this
208
- for (var i = 0; i < this.matches.length; i++)
209
- this._realpathSet(i, next)
210
-
211
- function next () {
212
- if (--n === 0)
213
- self._finish()
214
- }
215
- }
216
-
217
- Glob.prototype._realpathSet = function (index, cb) {
218
- var matchset = this.matches[index]
219
- if (!matchset)
220
- return cb()
221
-
222
- var found = Object.keys(matchset)
223
- var self = this
224
- var n = found.length
225
-
226
- if (n === 0)
227
- return cb()
228
-
229
- var set = this.matches[index] = Object.create(null)
230
- found.forEach(function (p, i) {
231
- // If there's a problem with the stat, then it means that
232
- // one or more of the links in the realpath couldn't be
233
- // resolved. just return the abs value in that case.
234
- p = self._makeAbs(p)
235
- rp.realpath(p, self.realpathCache, function (er, real) {
236
- if (!er)
237
- set[real] = true
238
- else if (er.syscall === 'stat')
239
- set[p] = true
240
- else
241
- self.emit('error', er) // srsly wtf right here
242
-
243
- if (--n === 0) {
244
- self.matches[index] = set
245
- cb()
246
- }
247
- })
248
- })
249
- }
250
-
251
- Glob.prototype._mark = function (p) {
252
- return common.mark(this, p)
253
- }
254
-
255
- Glob.prototype._makeAbs = function (f) {
256
- return common.makeAbs(this, f)
257
- }
258
-
259
- Glob.prototype.abort = function () {
260
- this.aborted = true
261
- this.emit('abort')
262
- }
263
-
264
- Glob.prototype.pause = function () {
265
- if (!this.paused) {
266
- this.paused = true
267
- this.emit('pause')
268
- }
269
- }
270
-
271
- Glob.prototype.resume = function () {
272
- if (this.paused) {
273
- this.emit('resume')
274
- this.paused = false
275
- if (this._emitQueue.length) {
276
- var eq = this._emitQueue.slice(0)
277
- this._emitQueue.length = 0
278
- for (var i = 0; i < eq.length; i ++) {
279
- var e = eq[i]
280
- this._emitMatch(e[0], e[1])
281
- }
282
- }
283
- if (this._processQueue.length) {
284
- var pq = this._processQueue.slice(0)
285
- this._processQueue.length = 0
286
- for (var i = 0; i < pq.length; i ++) {
287
- var p = pq[i]
288
- this._processing--
289
- this._process(p[0], p[1], p[2], p[3])
290
- }
291
- }
292
- }
293
- }
294
-
295
- Glob.prototype._process = function (pattern, index, inGlobStar, cb) {
296
- assert(this instanceof Glob)
297
- assert(typeof cb === 'function')
298
-
299
- if (this.aborted)
300
- return
301
-
302
- this._processing++
303
- if (this.paused) {
304
- this._processQueue.push([pattern, index, inGlobStar, cb])
305
- return
306
- }
307
-
308
- //console.error('PROCESS %d', this._processing, pattern)
309
-
310
- // Get the first [n] parts of pattern that are all strings.
311
- var n = 0
312
- while (typeof pattern[n] === 'string') {
313
- n ++
314
- }
315
- // now n is the index of the first one that is *not* a string.
316
-
317
- // see if there's anything else
318
- var prefix
319
- switch (n) {
320
- // if not, then this is rather simple
321
- case pattern.length:
322
- this._processSimple(pattern.join('/'), index, cb)
323
- return
324
-
325
- case 0:
326
- // pattern *starts* with some non-trivial item.
327
- // going to readdir(cwd), but not include the prefix in matches.
328
- prefix = null
329
- break
330
-
331
- default:
332
- // pattern has some string bits in the front.
333
- // whatever it starts with, whether that's 'absolute' like /foo/bar,
334
- // or 'relative' like '../baz'
335
- prefix = pattern.slice(0, n).join('/')
336
- break
337
- }
338
-
339
- var remain = pattern.slice(n)
340
-
341
- // get the list of entries.
342
- var read
343
- if (prefix === null)
344
- read = '.'
345
- else if (isAbsolute(prefix) ||
346
- isAbsolute(pattern.map(function (p) {
347
- return typeof p === 'string' ? p : '[*]'
348
- }).join('/'))) {
349
- if (!prefix || !isAbsolute(prefix))
350
- prefix = '/' + prefix
351
- read = prefix
352
- } else
353
- read = prefix
354
-
355
- var abs = this._makeAbs(read)
356
-
357
- //if ignored, skip _processing
358
- if (childrenIgnored(this, read))
359
- return cb()
360
-
361
- var isGlobStar = remain[0] === minimatch.GLOBSTAR
362
- if (isGlobStar)
363
- this._processGlobStar(prefix, read, abs, remain, index, inGlobStar, cb)
364
- else
365
- this._processReaddir(prefix, read, abs, remain, index, inGlobStar, cb)
366
- }
367
-
368
- Glob.prototype._processReaddir = function (prefix, read, abs, remain, index, inGlobStar, cb) {
369
- var self = this
370
- this._readdir(abs, inGlobStar, function (er, entries) {
371
- return self._processReaddir2(prefix, read, abs, remain, index, inGlobStar, entries, cb)
372
- })
373
- }
374
-
375
- Glob.prototype._processReaddir2 = function (prefix, read, abs, remain, index, inGlobStar, entries, cb) {
376
-
377
- // if the abs isn't a dir, then nothing can match!
378
- if (!entries)
379
- return cb()
380
-
381
- // It will only match dot entries if it starts with a dot, or if
382
- // dot is set. Stuff like @(.foo|.bar) isn't allowed.
383
- var pn = remain[0]
384
- var negate = !!this.minimatch.negate
385
- var rawGlob = pn._glob
386
- var dotOk = this.dot || rawGlob.charAt(0) === '.'
387
-
388
- var matchedEntries = []
389
- for (var i = 0; i < entries.length; i++) {
390
- var e = entries[i]
391
- if (e.charAt(0) !== '.' || dotOk) {
392
- var m
393
- if (negate && !prefix) {
394
- m = !e.match(pn)
395
- } else {
396
- m = e.match(pn)
397
- }
398
- if (m)
399
- matchedEntries.push(e)
400
- }
401
- }
402
-
403
- //console.error('prd2', prefix, entries, remain[0]._glob, matchedEntries)
404
-
405
- var len = matchedEntries.length
406
- // If there are no matched entries, then nothing matches.
407
- if (len === 0)
408
- return cb()
409
-
410
- // if this is the last remaining pattern bit, then no need for
411
- // an additional stat *unless* the user has specified mark or
412
- // stat explicitly. We know they exist, since readdir returned
413
- // them.
414
-
415
- if (remain.length === 1 && !this.mark && !this.stat) {
416
- if (!this.matches[index])
417
- this.matches[index] = Object.create(null)
418
-
419
- for (var i = 0; i < len; i ++) {
420
- var e = matchedEntries[i]
421
- if (prefix) {
422
- if (prefix !== '/')
423
- e = prefix + '/' + e
424
- else
425
- e = prefix + e
426
- }
427
-
428
- if (e.charAt(0) === '/' && !this.nomount) {
429
- e = path.join(this.root, e)
430
- }
431
- this._emitMatch(index, e)
432
- }
433
- // This was the last one, and no stats were needed
434
- return cb()
435
- }
436
-
437
- // now test all matched entries as stand-ins for that part
438
- // of the pattern.
439
- remain.shift()
440
- for (var i = 0; i < len; i ++) {
441
- var e = matchedEntries[i]
442
- var newPattern
443
- if (prefix) {
444
- if (prefix !== '/')
445
- e = prefix + '/' + e
446
- else
447
- e = prefix + e
448
- }
449
- this._process([e].concat(remain), index, inGlobStar, cb)
450
- }
451
- cb()
452
- }
453
-
454
- Glob.prototype._emitMatch = function (index, e) {
455
- if (this.aborted)
456
- return
457
-
458
- if (isIgnored(this, e))
459
- return
460
-
461
- if (this.paused) {
462
- this._emitQueue.push([index, e])
463
- return
464
- }
465
-
466
- var abs = isAbsolute(e) ? e : this._makeAbs(e)
467
-
468
- if (this.mark)
469
- e = this._mark(e)
470
-
471
- if (this.absolute)
472
- e = abs
473
-
474
- if (this.matches[index][e])
475
- return
476
-
477
- if (this.nodir) {
478
- var c = this.cache[abs]
479
- if (c === 'DIR' || Array.isArray(c))
480
- return
481
- }
482
-
483
- this.matches[index][e] = true
484
-
485
- var st = this.statCache[abs]
486
- if (st)
487
- this.emit('stat', e, st)
488
-
489
- this.emit('match', e)
490
- }
491
-
492
- Glob.prototype._readdirInGlobStar = function (abs, cb) {
493
- if (this.aborted)
494
- return
495
-
496
- // follow all symlinked directories forever
497
- // just proceed as if this is a non-globstar situation
498
- if (this.follow)
499
- return this._readdir(abs, false, cb)
500
-
501
- var lstatkey = 'lstat\0' + abs
502
- var self = this
503
- var lstatcb = inflight(lstatkey, lstatcb_)
504
-
505
- if (lstatcb)
506
- self.fs.lstat(abs, lstatcb)
507
-
508
- function lstatcb_ (er, lstat) {
509
- if (er && er.code === 'ENOENT')
510
- return cb()
511
-
512
- var isSym = lstat && lstat.isSymbolicLink()
513
- self.symlinks[abs] = isSym
514
-
515
- // If it's not a symlink or a dir, then it's definitely a regular file.
516
- // don't bother doing a readdir in that case.
517
- if (!isSym && lstat && !lstat.isDirectory()) {
518
- self.cache[abs] = 'FILE'
519
- cb()
520
- } else
521
- self._readdir(abs, false, cb)
522
- }
523
- }
524
-
525
- Glob.prototype._readdir = function (abs, inGlobStar, cb) {
526
- if (this.aborted)
527
- return
528
-
529
- cb = inflight('readdir\0'+abs+'\0'+inGlobStar, cb)
530
- if (!cb)
531
- return
532
-
533
- //console.error('RD %j %j', +inGlobStar, abs)
534
- if (inGlobStar && !ownProp(this.symlinks, abs))
535
- return this._readdirInGlobStar(abs, cb)
536
-
537
- if (ownProp(this.cache, abs)) {
538
- var c = this.cache[abs]
539
- if (!c || c === 'FILE')
540
- return cb()
541
-
542
- if (Array.isArray(c))
543
- return cb(null, c)
544
- }
545
-
546
- var self = this
547
- self.fs.readdir(abs, readdirCb(this, abs, cb))
548
- }
549
-
550
- function readdirCb (self, abs, cb) {
551
- return function (er, entries) {
552
- if (er)
553
- self._readdirError(abs, er, cb)
554
- else
555
- self._readdirEntries(abs, entries, cb)
556
- }
557
- }
558
-
559
- Glob.prototype._readdirEntries = function (abs, entries, cb) {
560
- if (this.aborted)
561
- return
562
-
563
- // if we haven't asked to stat everything, then just
564
- // assume that everything in there exists, so we can avoid
565
- // having to stat it a second time.
566
- if (!this.mark && !this.stat) {
567
- for (var i = 0; i < entries.length; i ++) {
568
- var e = entries[i]
569
- if (abs === '/')
570
- e = abs + e
571
- else
572
- e = abs + '/' + e
573
- this.cache[e] = true
574
- }
575
- }
576
-
577
- this.cache[abs] = entries
578
- return cb(null, entries)
579
- }
580
-
581
- Glob.prototype._readdirError = function (f, er, cb) {
582
- if (this.aborted)
583
- return
584
-
585
- // handle errors, and cache the information
586
- switch (er.code) {
587
- case 'ENOTSUP': // https://github.com/isaacs/node-glob/issues/205
588
- case 'ENOTDIR': // totally normal. means it *does* exist.
589
- var abs = this._makeAbs(f)
590
- this.cache[abs] = 'FILE'
591
- if (abs === this.cwdAbs) {
592
- var error = new Error(er.code + ' invalid cwd ' + this.cwd)
593
- error.path = this.cwd
594
- error.code = er.code
595
- this.emit('error', error)
596
- this.abort()
597
- }
598
- break
599
-
600
- case 'ENOENT': // not terribly unusual
601
- case 'ELOOP':
602
- case 'ENAMETOOLONG':
603
- case 'UNKNOWN':
604
- this.cache[this._makeAbs(f)] = false
605
- break
606
-
607
- default: // some unusual error. Treat as failure.
608
- this.cache[this._makeAbs(f)] = false
609
- if (this.strict) {
610
- this.emit('error', er)
611
- // If the error is handled, then we abort
612
- // if not, we threw out of here
613
- this.abort()
614
- }
615
- if (!this.silent)
616
- console.error('glob error', er)
617
- break
618
- }
619
-
620
- return cb()
621
- }
622
-
623
- Glob.prototype._processGlobStar = function (prefix, read, abs, remain, index, inGlobStar, cb) {
624
- var self = this
625
- this._readdir(abs, inGlobStar, function (er, entries) {
626
- self._processGlobStar2(prefix, read, abs, remain, index, inGlobStar, entries, cb)
627
- })
628
- }
629
-
630
-
631
- Glob.prototype._processGlobStar2 = function (prefix, read, abs, remain, index, inGlobStar, entries, cb) {
632
- //console.error('pgs2', prefix, remain[0], entries)
633
-
634
- // no entries means not a dir, so it can never have matches
635
- // foo.txt/** doesn't match foo.txt
636
- if (!entries)
637
- return cb()
638
-
639
- // test without the globstar, and with every child both below
640
- // and replacing the globstar.
641
- var remainWithoutGlobStar = remain.slice(1)
642
- var gspref = prefix ? [ prefix ] : []
643
- var noGlobStar = gspref.concat(remainWithoutGlobStar)
644
-
645
- // the noGlobStar pattern exits the inGlobStar state
646
- this._process(noGlobStar, index, false, cb)
647
-
648
- var isSym = this.symlinks[abs]
649
- var len = entries.length
650
-
651
- // If it's a symlink, and we're in a globstar, then stop
652
- if (isSym && inGlobStar)
653
- return cb()
654
-
655
- for (var i = 0; i < len; i++) {
656
- var e = entries[i]
657
- if (e.charAt(0) === '.' && !this.dot)
658
- continue
659
-
660
- // these two cases enter the inGlobStar state
661
- var instead = gspref.concat(entries[i], remainWithoutGlobStar)
662
- this._process(instead, index, true, cb)
663
-
664
- var below = gspref.concat(entries[i], remain)
665
- this._process(below, index, true, cb)
666
- }
667
-
668
- cb()
669
- }
670
-
671
- Glob.prototype._processSimple = function (prefix, index, cb) {
672
- // XXX review this. Shouldn't it be doing the mounting etc
673
- // before doing stat? kinda weird?
674
- var self = this
675
- this._stat(prefix, function (er, exists) {
676
- self._processSimple2(prefix, index, er, exists, cb)
677
- })
678
- }
679
- Glob.prototype._processSimple2 = function (prefix, index, er, exists, cb) {
680
-
681
- //console.error('ps2', prefix, exists)
682
-
683
- if (!this.matches[index])
684
- this.matches[index] = Object.create(null)
685
-
686
- // If it doesn't exist, then just mark the lack of results
687
- if (!exists)
688
- return cb()
689
-
690
- if (prefix && isAbsolute(prefix) && !this.nomount) {
691
- var trail = /[\/\\]$/.test(prefix)
692
- if (prefix.charAt(0) === '/') {
693
- prefix = path.join(this.root, prefix)
694
- } else {
695
- prefix = path.resolve(this.root, prefix)
696
- if (trail)
697
- prefix += '/'
698
- }
699
- }
700
-
701
- if (process.platform === 'win32')
702
- prefix = prefix.replace(/\\/g, '/')
703
-
704
- // Mark this as a match
705
- this._emitMatch(index, prefix)
706
- cb()
707
- }
708
-
709
- // Returns either 'DIR', 'FILE', or false
710
- Glob.prototype._stat = function (f, cb) {
711
- var abs = this._makeAbs(f)
712
- var needDir = f.slice(-1) === '/'
713
-
714
- if (f.length > this.maxLength)
715
- return cb()
716
-
717
- if (!this.stat && ownProp(this.cache, abs)) {
718
- var c = this.cache[abs]
719
-
720
- if (Array.isArray(c))
721
- c = 'DIR'
722
-
723
- // It exists, but maybe not how we need it
724
- if (!needDir || c === 'DIR')
725
- return cb(null, c)
726
-
727
- if (needDir && c === 'FILE')
728
- return cb()
729
-
730
- // otherwise we have to stat, because maybe c=true
731
- // if we know it exists, but not what it is.
732
- }
733
-
734
- var exists
735
- var stat = this.statCache[abs]
736
- if (stat !== undefined) {
737
- if (stat === false)
738
- return cb(null, stat)
739
- else {
740
- var type = stat.isDirectory() ? 'DIR' : 'FILE'
741
- if (needDir && type === 'FILE')
742
- return cb()
743
- else
744
- return cb(null, type, stat)
745
- }
746
- }
747
-
748
- var self = this
749
- var statcb = inflight('stat\0' + abs, lstatcb_)
750
- if (statcb)
751
- self.fs.lstat(abs, statcb)
752
-
753
- function lstatcb_ (er, lstat) {
754
- if (lstat && lstat.isSymbolicLink()) {
755
- // If it's a symlink, then treat it as the target, unless
756
- // the target does not exist, then treat it as a file.
757
- return self.fs.stat(abs, function (er, stat) {
758
- if (er)
759
- self._stat2(f, abs, null, lstat, cb)
760
- else
761
- self._stat2(f, abs, er, stat, cb)
762
- })
763
- } else {
764
- self._stat2(f, abs, er, lstat, cb)
765
- }
766
- }
767
- }
768
-
769
- Glob.prototype._stat2 = function (f, abs, er, stat, cb) {
770
- if (er && (er.code === 'ENOENT' || er.code === 'ENOTDIR')) {
771
- this.statCache[abs] = false
772
- return cb()
773
- }
774
-
775
- var needDir = f.slice(-1) === '/'
776
- this.statCache[abs] = stat
777
-
778
- if (abs.slice(-1) === '/' && stat && !stat.isDirectory())
779
- return cb(null, false, stat)
780
-
781
- var c = true
782
- if (stat)
783
- c = stat.isDirectory() ? 'DIR' : 'FILE'
784
- this.cache[abs] = this.cache[abs] || c
785
-
786
- if (needDir && c === 'FILE')
787
- return cb()
788
-
789
- return cb(null, c, stat)
790
- }