elm-pages 3.0.0-beta.20 → 3.0.0-beta.21

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 (433) hide show
  1. package/README.md +1 -1
  2. package/codegen/elm-pages-codegen.cjs +111 -99
  3. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/dependencies.75364bef27ac5a049b87c3325f846fc6dbda23b8ed7187ed06748b96bb6a50a7.json +1 -0
  4. 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
  5. 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
  6. 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
  7. 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
  8. 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
  9. 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
  10. 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
  11. 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
  12. 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
  13. 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
  14. 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
  15. 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
  16. 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
  17. 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
  18. 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
  19. 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
  20. 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
  21. 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
  22. 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
  23. 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
  24. 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
  25. 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
  26. 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
  27. 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
  28. 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
  29. 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
  30. 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
  31. 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
  32. 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
  33. 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
  34. 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
  35. 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
  36. 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
  37. 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
  38. 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
  39. 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
  40. 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
  41. 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
  42. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm.json +38 -0
  43. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elmTestOutput.js +29673 -0
  44. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/package.json +1 -0
  45. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/src/Test/Generated/Main.elm +27 -0
  46. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmi +0 -0
  47. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmo +0 -0
  48. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateDataTest.elmo +0 -0
  49. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/d.dat +0 -0
  50. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/Reporter.elm.js +1 -1
  51. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/Runner.elm.js +37 -107
  52. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/node_runner.js +1 -1
  53. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/node_supervisor.js +4 -4
  54. package/generator/dead-code-review/node_modules/.package-lock.json +484 -0
  55. package/generator/dead-code-review/node_modules/ansi-styles/index.d.ts +345 -0
  56. package/generator/dead-code-review/node_modules/ansi-styles/index.js +163 -0
  57. package/generator/dead-code-review/node_modules/ansi-styles/license +9 -0
  58. package/generator/dead-code-review/node_modules/ansi-styles/package.json +56 -0
  59. package/generator/dead-code-review/node_modules/ansi-styles/readme.md +152 -0
  60. package/generator/dead-code-review/node_modules/anymatch/LICENSE +15 -0
  61. package/generator/dead-code-review/node_modules/anymatch/README.md +87 -0
  62. package/generator/dead-code-review/node_modules/anymatch/index.d.ts +20 -0
  63. package/generator/dead-code-review/node_modules/anymatch/index.js +104 -0
  64. package/generator/dead-code-review/node_modules/anymatch/package.json +48 -0
  65. package/generator/dead-code-review/node_modules/balanced-match/.github/FUNDING.yml +2 -0
  66. package/generator/dead-code-review/node_modules/balanced-match/LICENSE.md +21 -0
  67. package/generator/dead-code-review/node_modules/balanced-match/README.md +97 -0
  68. package/generator/dead-code-review/node_modules/balanced-match/index.js +62 -0
  69. package/generator/dead-code-review/node_modules/balanced-match/package.json +48 -0
  70. package/generator/dead-code-review/node_modules/binary-extensions/binary-extensions.json +260 -0
  71. package/generator/dead-code-review/node_modules/binary-extensions/binary-extensions.json.d.ts +3 -0
  72. package/generator/dead-code-review/node_modules/binary-extensions/index.d.ts +14 -0
  73. package/generator/dead-code-review/node_modules/binary-extensions/index.js +1 -0
  74. package/generator/dead-code-review/node_modules/binary-extensions/license +9 -0
  75. package/generator/dead-code-review/node_modules/binary-extensions/package.json +38 -0
  76. package/generator/dead-code-review/node_modules/binary-extensions/readme.md +41 -0
  77. package/generator/dead-code-review/node_modules/brace-expansion/.github/FUNDING.yml +2 -0
  78. package/generator/dead-code-review/node_modules/brace-expansion/LICENSE +21 -0
  79. package/generator/dead-code-review/node_modules/brace-expansion/README.md +135 -0
  80. package/generator/dead-code-review/node_modules/brace-expansion/index.js +203 -0
  81. package/generator/dead-code-review/node_modules/brace-expansion/package.json +46 -0
  82. package/generator/dead-code-review/node_modules/braces/CHANGELOG.md +184 -0
  83. package/generator/dead-code-review/node_modules/braces/LICENSE +21 -0
  84. package/generator/dead-code-review/node_modules/braces/README.md +593 -0
  85. package/generator/dead-code-review/node_modules/braces/index.js +170 -0
  86. package/generator/dead-code-review/node_modules/braces/lib/compile.js +57 -0
  87. package/generator/dead-code-review/node_modules/braces/lib/constants.js +57 -0
  88. package/generator/dead-code-review/node_modules/braces/lib/expand.js +113 -0
  89. package/generator/dead-code-review/node_modules/braces/lib/parse.js +333 -0
  90. package/generator/dead-code-review/node_modules/braces/lib/stringify.js +32 -0
  91. package/generator/dead-code-review/node_modules/braces/lib/utils.js +112 -0
  92. package/generator/dead-code-review/node_modules/braces/package.json +77 -0
  93. package/generator/dead-code-review/node_modules/chalk/index.d.ts +415 -0
  94. package/generator/dead-code-review/node_modules/chalk/license +9 -0
  95. package/generator/dead-code-review/node_modules/chalk/package.json +68 -0
  96. package/generator/dead-code-review/node_modules/chalk/readme.md +341 -0
  97. package/generator/dead-code-review/node_modules/chalk/source/index.js +229 -0
  98. package/generator/dead-code-review/node_modules/chalk/source/templates.js +134 -0
  99. package/generator/dead-code-review/node_modules/chalk/source/util.js +39 -0
  100. package/generator/dead-code-review/node_modules/chokidar/LICENSE +21 -0
  101. package/generator/dead-code-review/node_modules/chokidar/README.md +308 -0
  102. package/generator/dead-code-review/node_modules/chokidar/index.js +973 -0
  103. package/generator/dead-code-review/node_modules/chokidar/lib/constants.js +65 -0
  104. package/generator/dead-code-review/node_modules/chokidar/lib/fsevents-handler.js +524 -0
  105. package/generator/dead-code-review/node_modules/chokidar/lib/nodefs-handler.js +654 -0
  106. package/generator/dead-code-review/node_modules/chokidar/package.json +85 -0
  107. package/generator/dead-code-review/node_modules/chokidar/types/index.d.ts +188 -0
  108. package/generator/dead-code-review/node_modules/color-convert/CHANGELOG.md +54 -0
  109. package/generator/dead-code-review/node_modules/color-convert/LICENSE +21 -0
  110. package/generator/dead-code-review/node_modules/color-convert/README.md +68 -0
  111. package/generator/dead-code-review/node_modules/color-convert/conversions.js +839 -0
  112. package/generator/dead-code-review/node_modules/color-convert/index.js +81 -0
  113. package/generator/dead-code-review/node_modules/color-convert/package.json +48 -0
  114. package/generator/dead-code-review/node_modules/color-convert/route.js +97 -0
  115. package/generator/dead-code-review/node_modules/color-name/LICENSE +8 -0
  116. package/generator/dead-code-review/node_modules/color-name/README.md +11 -0
  117. package/generator/dead-code-review/node_modules/color-name/index.js +152 -0
  118. package/generator/dead-code-review/node_modules/color-name/package.json +28 -0
  119. package/generator/dead-code-review/node_modules/commander/LICENSE +22 -0
  120. package/generator/dead-code-review/node_modules/commander/Readme.md +1118 -0
  121. package/generator/dead-code-review/node_modules/commander/esm.mjs +16 -0
  122. package/generator/dead-code-review/node_modules/commander/index.js +27 -0
  123. package/generator/dead-code-review/node_modules/commander/lib/argument.js +147 -0
  124. package/generator/dead-code-review/node_modules/commander/lib/command.js +2160 -0
  125. package/generator/dead-code-review/node_modules/commander/lib/error.js +45 -0
  126. package/generator/dead-code-review/node_modules/commander/lib/help.js +406 -0
  127. package/generator/dead-code-review/node_modules/commander/lib/option.js +326 -0
  128. package/generator/dead-code-review/node_modules/commander/lib/suggestSimilar.js +100 -0
  129. package/generator/dead-code-review/node_modules/commander/package-support.json +16 -0
  130. package/generator/dead-code-review/node_modules/commander/package.json +80 -0
  131. package/generator/dead-code-review/node_modules/commander/typings/index.d.ts +881 -0
  132. package/generator/dead-code-review/node_modules/cross-spawn/CHANGELOG.md +130 -0
  133. package/generator/dead-code-review/node_modules/cross-spawn/LICENSE +21 -0
  134. package/generator/dead-code-review/node_modules/cross-spawn/README.md +96 -0
  135. package/generator/dead-code-review/node_modules/cross-spawn/index.js +39 -0
  136. package/generator/dead-code-review/node_modules/cross-spawn/lib/enoent.js +59 -0
  137. package/generator/dead-code-review/node_modules/cross-spawn/lib/parse.js +91 -0
  138. package/generator/dead-code-review/node_modules/cross-spawn/lib/util/escape.js +45 -0
  139. package/generator/dead-code-review/node_modules/cross-spawn/lib/util/readShebang.js +23 -0
  140. package/generator/dead-code-review/node_modules/cross-spawn/lib/util/resolveCommand.js +52 -0
  141. package/generator/dead-code-review/node_modules/cross-spawn/package.json +73 -0
  142. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/LICENSE +373 -0
  143. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/README.md +64 -0
  144. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm.d.ts +22 -0
  145. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm.js +419 -0
  146. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm_bg.wasm +0 -0
  147. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/package.json +27 -0
  148. package/generator/dead-code-review/node_modules/elm-test/LICENSE +27 -0
  149. package/generator/dead-code-review/node_modules/elm-test/README.md +192 -0
  150. package/generator/dead-code-review/node_modules/elm-test/bin/elm-test +3 -0
  151. package/generator/dead-code-review/node_modules/elm-test/elm/elm.json +25 -0
  152. package/generator/dead-code-review/node_modules/elm-test/elm/src/Console/Text.elm +217 -0
  153. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format/Color.elm +30 -0
  154. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format/Monochrome.elm +39 -0
  155. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format.elm +212 -0
  156. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console.elm +207 -0
  157. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Highlightable.elm +48 -0
  158. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/JUnit.elm +161 -0
  159. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Json.elm +158 -0
  160. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Reporter.elm +53 -0
  161. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/TestResults.elm +113 -0
  162. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/JsMessage.elm +38 -0
  163. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node/Vendor/Console.elm +230 -0
  164. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node/Vendor/Diff.elm +326 -0
  165. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node.elm +440 -0
  166. package/generator/dead-code-review/node_modules/elm-test/lib/Compile.js +110 -0
  167. package/generator/dead-code-review/node_modules/elm-test/lib/DependencyProvider.js +343 -0
  168. package/generator/dead-code-review/node_modules/elm-test/lib/ElmCompiler.js +109 -0
  169. package/generator/dead-code-review/node_modules/elm-test/lib/ElmHome.js +47 -0
  170. package/generator/dead-code-review/node_modules/elm-test/lib/ElmJson.js +194 -0
  171. package/generator/dead-code-review/node_modules/elm-test/lib/FindTests.js +276 -0
  172. package/generator/dead-code-review/node_modules/elm-test/lib/Generate.js +294 -0
  173. package/generator/dead-code-review/node_modules/elm-test/lib/Install.js +290 -0
  174. package/generator/dead-code-review/node_modules/elm-test/lib/Parser.js +941 -0
  175. package/generator/dead-code-review/node_modules/elm-test/lib/Project.js +117 -0
  176. package/generator/dead-code-review/node_modules/elm-test/lib/Report.js +23 -0
  177. package/generator/dead-code-review/node_modules/elm-test/lib/RunTests.js +322 -0
  178. package/generator/dead-code-review/node_modules/elm-test/lib/Solve.js +76 -0
  179. package/generator/dead-code-review/node_modules/elm-test/lib/Supervisor.js +294 -0
  180. package/generator/dead-code-review/node_modules/elm-test/lib/SyncGet.js +45 -0
  181. package/generator/dead-code-review/node_modules/elm-test/lib/SyncGetWorker.js +36 -0
  182. package/generator/dead-code-review/node_modules/elm-test/lib/elm-test.js +318 -0
  183. package/generator/dead-code-review/node_modules/elm-test/package.json +69 -0
  184. package/generator/dead-code-review/node_modules/elm-test/templates/after.js +29 -0
  185. package/generator/dead-code-review/node_modules/elm-test/templates/before.js +58 -0
  186. package/generator/dead-code-review/node_modules/elm-test/templates/tests/Example.elm +10 -0
  187. package/generator/dead-code-review/node_modules/fill-range/LICENSE +21 -0
  188. package/generator/dead-code-review/node_modules/fill-range/README.md +237 -0
  189. package/generator/dead-code-review/node_modules/fill-range/index.js +249 -0
  190. package/generator/dead-code-review/node_modules/fill-range/package.json +69 -0
  191. package/generator/dead-code-review/node_modules/fs.realpath/LICENSE +43 -0
  192. package/generator/dead-code-review/node_modules/fs.realpath/README.md +33 -0
  193. package/generator/dead-code-review/node_modules/fs.realpath/index.js +66 -0
  194. package/generator/dead-code-review/node_modules/fs.realpath/old.js +303 -0
  195. package/generator/dead-code-review/node_modules/fs.realpath/package.json +26 -0
  196. package/generator/dead-code-review/node_modules/fsevents/LICENSE +22 -0
  197. package/generator/dead-code-review/node_modules/fsevents/README.md +83 -0
  198. package/generator/dead-code-review/node_modules/fsevents/fsevents.d.ts +46 -0
  199. package/generator/dead-code-review/node_modules/fsevents/fsevents.js +82 -0
  200. package/generator/dead-code-review/node_modules/fsevents/fsevents.node +0 -0
  201. package/generator/dead-code-review/node_modules/fsevents/package.json +62 -0
  202. package/generator/dead-code-review/node_modules/glob/LICENSE +15 -0
  203. package/generator/dead-code-review/node_modules/glob/README.md +378 -0
  204. package/generator/dead-code-review/node_modules/glob/common.js +240 -0
  205. package/generator/dead-code-review/node_modules/glob/glob.js +790 -0
  206. package/generator/dead-code-review/node_modules/glob/package.json +55 -0
  207. package/generator/dead-code-review/node_modules/glob/sync.js +486 -0
  208. package/generator/dead-code-review/node_modules/glob-parent/CHANGELOG.md +110 -0
  209. package/generator/dead-code-review/node_modules/glob-parent/LICENSE +15 -0
  210. package/generator/dead-code-review/node_modules/glob-parent/README.md +137 -0
  211. package/generator/dead-code-review/node_modules/glob-parent/index.js +42 -0
  212. package/generator/dead-code-review/node_modules/glob-parent/package.json +48 -0
  213. package/generator/dead-code-review/node_modules/graceful-fs/LICENSE +15 -0
  214. package/generator/dead-code-review/node_modules/graceful-fs/README.md +143 -0
  215. package/generator/dead-code-review/node_modules/graceful-fs/clone.js +23 -0
  216. package/generator/dead-code-review/node_modules/graceful-fs/graceful-fs.js +448 -0
  217. package/generator/dead-code-review/node_modules/graceful-fs/legacy-streams.js +118 -0
  218. package/generator/dead-code-review/node_modules/graceful-fs/package.json +50 -0
  219. package/generator/dead-code-review/node_modules/graceful-fs/polyfills.js +355 -0
  220. package/generator/dead-code-review/node_modules/has-flag/index.d.ts +39 -0
  221. package/generator/dead-code-review/node_modules/has-flag/index.js +8 -0
  222. package/generator/dead-code-review/node_modules/has-flag/license +9 -0
  223. package/generator/dead-code-review/node_modules/has-flag/package.json +46 -0
  224. package/generator/dead-code-review/node_modules/has-flag/readme.md +89 -0
  225. package/generator/dead-code-review/node_modules/inflight/LICENSE +15 -0
  226. package/generator/dead-code-review/node_modules/inflight/README.md +37 -0
  227. package/generator/dead-code-review/node_modules/inflight/inflight.js +54 -0
  228. package/generator/dead-code-review/node_modules/inflight/package.json +29 -0
  229. package/generator/dead-code-review/node_modules/inherits/LICENSE +16 -0
  230. package/generator/dead-code-review/node_modules/inherits/README.md +42 -0
  231. package/generator/dead-code-review/node_modules/inherits/inherits.js +9 -0
  232. package/generator/dead-code-review/node_modules/inherits/inherits_browser.js +27 -0
  233. package/generator/dead-code-review/node_modules/inherits/package.json +29 -0
  234. package/generator/dead-code-review/node_modules/is-binary-path/index.d.ts +17 -0
  235. package/generator/dead-code-review/node_modules/is-binary-path/index.js +7 -0
  236. package/generator/dead-code-review/node_modules/is-binary-path/license +9 -0
  237. package/generator/dead-code-review/node_modules/is-binary-path/package.json +40 -0
  238. package/generator/dead-code-review/node_modules/is-binary-path/readme.md +34 -0
  239. package/generator/dead-code-review/node_modules/is-extglob/LICENSE +21 -0
  240. package/generator/dead-code-review/node_modules/is-extglob/README.md +107 -0
  241. package/generator/dead-code-review/node_modules/is-extglob/index.js +20 -0
  242. package/generator/dead-code-review/node_modules/is-extglob/package.json +69 -0
  243. package/generator/dead-code-review/node_modules/is-glob/LICENSE +21 -0
  244. package/generator/dead-code-review/node_modules/is-glob/README.md +206 -0
  245. package/generator/dead-code-review/node_modules/is-glob/index.js +150 -0
  246. package/generator/dead-code-review/node_modules/is-glob/package.json +81 -0
  247. package/generator/dead-code-review/node_modules/is-number/LICENSE +21 -0
  248. package/generator/dead-code-review/node_modules/is-number/README.md +187 -0
  249. package/generator/dead-code-review/node_modules/is-number/index.js +18 -0
  250. package/generator/dead-code-review/node_modules/is-number/package.json +82 -0
  251. package/generator/dead-code-review/node_modules/isexe/LICENSE +15 -0
  252. package/generator/dead-code-review/node_modules/isexe/README.md +51 -0
  253. package/generator/dead-code-review/node_modules/isexe/index.js +57 -0
  254. package/generator/dead-code-review/node_modules/isexe/mode.js +41 -0
  255. package/generator/dead-code-review/node_modules/isexe/package.json +31 -0
  256. package/generator/dead-code-review/node_modules/isexe/test/basic.js +221 -0
  257. package/generator/dead-code-review/node_modules/isexe/windows.js +42 -0
  258. package/generator/dead-code-review/node_modules/minimatch/LICENSE +15 -0
  259. package/generator/dead-code-review/node_modules/minimatch/README.md +259 -0
  260. package/generator/dead-code-review/node_modules/minimatch/lib/path.js +4 -0
  261. package/generator/dead-code-review/node_modules/minimatch/minimatch.js +906 -0
  262. package/generator/dead-code-review/node_modules/minimatch/package.json +32 -0
  263. package/generator/dead-code-review/node_modules/normalize-path/LICENSE +21 -0
  264. package/generator/dead-code-review/node_modules/normalize-path/README.md +127 -0
  265. package/generator/dead-code-review/node_modules/normalize-path/index.js +35 -0
  266. package/generator/dead-code-review/node_modules/normalize-path/package.json +77 -0
  267. package/generator/dead-code-review/node_modules/once/LICENSE +15 -0
  268. package/generator/dead-code-review/node_modules/once/README.md +79 -0
  269. package/generator/dead-code-review/node_modules/once/once.js +42 -0
  270. package/generator/dead-code-review/node_modules/once/package.json +33 -0
  271. package/generator/dead-code-review/node_modules/path-key/index.d.ts +40 -0
  272. package/generator/dead-code-review/node_modules/path-key/index.js +16 -0
  273. package/generator/dead-code-review/node_modules/path-key/license +9 -0
  274. package/generator/dead-code-review/node_modules/path-key/package.json +39 -0
  275. package/generator/dead-code-review/node_modules/path-key/readme.md +61 -0
  276. package/generator/dead-code-review/node_modules/picomatch/CHANGELOG.md +136 -0
  277. package/generator/dead-code-review/node_modules/picomatch/LICENSE +21 -0
  278. package/generator/dead-code-review/node_modules/picomatch/README.md +708 -0
  279. package/generator/dead-code-review/node_modules/picomatch/index.js +3 -0
  280. package/generator/dead-code-review/node_modules/picomatch/lib/constants.js +179 -0
  281. package/generator/dead-code-review/node_modules/picomatch/lib/parse.js +1091 -0
  282. package/generator/dead-code-review/node_modules/picomatch/lib/picomatch.js +342 -0
  283. package/generator/dead-code-review/node_modules/picomatch/lib/scan.js +391 -0
  284. package/generator/dead-code-review/node_modules/picomatch/lib/utils.js +64 -0
  285. package/generator/dead-code-review/node_modules/picomatch/package.json +81 -0
  286. package/generator/dead-code-review/node_modules/readdirp/LICENSE +21 -0
  287. package/generator/dead-code-review/node_modules/readdirp/README.md +122 -0
  288. package/generator/dead-code-review/node_modules/readdirp/index.d.ts +43 -0
  289. package/generator/dead-code-review/node_modules/readdirp/index.js +287 -0
  290. package/generator/dead-code-review/node_modules/readdirp/package.json +122 -0
  291. package/generator/dead-code-review/node_modules/shebang-command/index.js +19 -0
  292. package/generator/dead-code-review/node_modules/shebang-command/license +9 -0
  293. package/generator/dead-code-review/node_modules/shebang-command/package.json +34 -0
  294. package/generator/dead-code-review/node_modules/shebang-command/readme.md +34 -0
  295. package/generator/dead-code-review/node_modules/shebang-regex/index.d.ts +22 -0
  296. package/generator/dead-code-review/node_modules/shebang-regex/index.js +2 -0
  297. package/generator/dead-code-review/node_modules/shebang-regex/license +9 -0
  298. package/generator/dead-code-review/node_modules/shebang-regex/package.json +35 -0
  299. package/generator/dead-code-review/node_modules/shebang-regex/readme.md +33 -0
  300. package/generator/dead-code-review/node_modules/split/.travis.yml +3 -0
  301. package/generator/dead-code-review/node_modules/split/LICENCE +22 -0
  302. package/generator/dead-code-review/node_modules/split/examples/pretty.js +26 -0
  303. package/generator/dead-code-review/node_modules/split/index.js +63 -0
  304. package/generator/dead-code-review/node_modules/split/package.json +30 -0
  305. package/generator/dead-code-review/node_modules/split/readme.markdown +72 -0
  306. package/generator/dead-code-review/node_modules/split/test/options.asynct.js +46 -0
  307. package/generator/dead-code-review/node_modules/split/test/partitioned_unicode.js +34 -0
  308. package/generator/dead-code-review/node_modules/split/test/split.asynct.js +137 -0
  309. package/generator/dead-code-review/node_modules/split/test/try_catch.asynct.js +51 -0
  310. package/generator/dead-code-review/node_modules/supports-color/browser.js +5 -0
  311. package/generator/dead-code-review/node_modules/supports-color/index.js +135 -0
  312. package/generator/dead-code-review/node_modules/supports-color/license +9 -0
  313. package/generator/dead-code-review/node_modules/supports-color/package.json +53 -0
  314. package/generator/dead-code-review/node_modules/supports-color/readme.md +76 -0
  315. package/generator/dead-code-review/node_modules/through/.travis.yml +5 -0
  316. package/generator/dead-code-review/node_modules/through/LICENSE.APACHE2 +15 -0
  317. package/generator/dead-code-review/node_modules/through/LICENSE.MIT +24 -0
  318. package/generator/dead-code-review/node_modules/through/index.js +108 -0
  319. package/generator/dead-code-review/node_modules/through/package.json +36 -0
  320. package/generator/dead-code-review/node_modules/through/readme.markdown +64 -0
  321. package/generator/dead-code-review/node_modules/through/test/async.js +28 -0
  322. package/generator/dead-code-review/node_modules/through/test/auto-destroy.js +30 -0
  323. package/generator/dead-code-review/node_modules/through/test/buffering.js +71 -0
  324. package/generator/dead-code-review/node_modules/through/test/end.js +45 -0
  325. package/generator/dead-code-review/node_modules/through/test/index.js +133 -0
  326. package/generator/dead-code-review/node_modules/to-regex-range/LICENSE +21 -0
  327. package/generator/dead-code-review/node_modules/to-regex-range/README.md +305 -0
  328. package/generator/dead-code-review/node_modules/to-regex-range/index.js +288 -0
  329. package/generator/dead-code-review/node_modules/to-regex-range/package.json +88 -0
  330. package/generator/dead-code-review/node_modules/which/CHANGELOG.md +166 -0
  331. package/generator/dead-code-review/node_modules/which/LICENSE +15 -0
  332. package/generator/dead-code-review/node_modules/which/README.md +54 -0
  333. package/generator/dead-code-review/node_modules/which/bin/node-which +52 -0
  334. package/generator/dead-code-review/node_modules/which/package.json +43 -0
  335. package/generator/dead-code-review/node_modules/which/which.js +125 -0
  336. package/generator/dead-code-review/node_modules/wrappy/LICENSE +15 -0
  337. package/generator/dead-code-review/node_modules/wrappy/README.md +36 -0
  338. package/generator/dead-code-review/node_modules/wrappy/package.json +29 -0
  339. package/generator/dead-code-review/node_modules/wrappy/wrappy.js +33 -0
  340. package/generator/dead-code-review/node_modules/xmlbuilder/.nycrc +6 -0
  341. package/generator/dead-code-review/node_modules/xmlbuilder/.vscode/launch.json +23 -0
  342. package/generator/dead-code-review/node_modules/xmlbuilder/CHANGELOG.md +593 -0
  343. package/generator/dead-code-review/node_modules/xmlbuilder/LICENSE +21 -0
  344. package/generator/dead-code-review/node_modules/xmlbuilder/README.md +103 -0
  345. package/generator/dead-code-review/node_modules/xmlbuilder/lib/Derivation.js +10 -0
  346. package/generator/dead-code-review/node_modules/xmlbuilder/lib/DocumentPosition.js +12 -0
  347. package/generator/dead-code-review/node_modules/xmlbuilder/lib/NodeType.js +25 -0
  348. package/generator/dead-code-review/node_modules/xmlbuilder/lib/OperationType.js +11 -0
  349. package/generator/dead-code-review/node_modules/xmlbuilder/lib/Utility.js +88 -0
  350. package/generator/dead-code-review/node_modules/xmlbuilder/lib/WriterState.js +10 -0
  351. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLAttribute.js +130 -0
  352. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLCData.js +41 -0
  353. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLCharacterData.js +86 -0
  354. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLComment.js +41 -0
  355. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMConfiguration.js +80 -0
  356. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMErrorHandler.js +20 -0
  357. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMImplementation.js +55 -0
  358. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMStringList.js +44 -0
  359. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDAttList.js +66 -0
  360. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDElement.js +44 -0
  361. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDEntity.js +115 -0
  362. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDNotation.js +66 -0
  363. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDeclaration.js +51 -0
  364. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocType.js +235 -0
  365. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocument.js +282 -0
  366. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocumentCB.js +650 -0
  367. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocumentFragment.js +21 -0
  368. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDummy.js +39 -0
  369. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLElement.js +334 -0
  370. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNamedNodeMap.js +77 -0
  371. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNode.js +999 -0
  372. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNodeFilter.js +51 -0
  373. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNodeList.js +45 -0
  374. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLProcessingInstruction.js +56 -0
  375. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLRaw.js +40 -0
  376. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStreamWriter.js +209 -0
  377. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStringWriter.js +40 -0
  378. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStringifier.js +291 -0
  379. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLText.js +82 -0
  380. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLTypeInfo.js +23 -0
  381. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLUserDataHandler.js +27 -0
  382. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLWriterBase.js +485 -0
  383. package/generator/dead-code-review/node_modules/xmlbuilder/lib/index.js +120 -0
  384. package/generator/dead-code-review/node_modules/xmlbuilder/package.json +51 -0
  385. package/generator/dead-code-review/node_modules/xmlbuilder/perf/basic/escaping.coffee +244 -0
  386. package/generator/dead-code-review/node_modules/xmlbuilder/perf/basic/object.coffee +21 -0
  387. package/generator/dead-code-review/node_modules/xmlbuilder/perf/index.coffee +161 -0
  388. package/generator/dead-code-review/node_modules/xmlbuilder/perf/perf.list +11 -0
  389. package/generator/dead-code-review/node_modules/xmlbuilder/typings/index.d.ts +1771 -0
  390. package/generator/review/elm-stuff/0.19.1/d.dat +0 -0
  391. package/generator/review/elm-stuff/0.19.1/i.dat +0 -0
  392. package/generator/review/elm-stuff/0.19.1/o.dat +0 -0
  393. 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
  394. 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
  395. 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
  396. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm.json +25 -0
  397. 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
  398. 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
  399. 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
  400. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm.json +41 -0
  401. package/generator/review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/d.dat +0 -0
  402. package/generator/review/elm-stuff/tests-0.19.1/js/Reporter.elm.js +1 -1
  403. package/generator/review/elm-stuff/tests-0.19.1/js/Runner.elm.js +1 -1
  404. package/generator/review/elm-stuff/tests-0.19.1/js/node_runner.js +1 -1
  405. package/generator/review/elm-stuff/tests-0.19.1/js/node_supervisor.js +4 -4
  406. package/generator/src/cli.js +15 -7
  407. package/generator/src/compatibility-key.js +3 -1
  408. package/generator/src/dev-server.js +0 -13
  409. package/generator/src/pre-render-html.js +4 -6
  410. package/generator/src/render-worker.js +4 -1
  411. package/generator/src/request-cache.js +59 -8
  412. package/generator/template/app/Api.elm +4 -3
  413. package/generator/template/app/Effect.elm +123 -0
  414. package/generator/template/app/ErrorPage.elm +37 -6
  415. package/generator/template/app/Route/Index.elm +14 -7
  416. package/generator/template/app/Shared.elm +23 -46
  417. package/generator/template/app/Site.elm +11 -3
  418. package/generator/template/app/View.elm +1 -8
  419. package/generator/template/elm-tooling.json +0 -3
  420. package/generator/template/elm.json +34 -25
  421. package/generator/template/package.json +10 -4
  422. package/package.json +1 -1
  423. package/src/BackendTask/Custom.elm +110 -6
  424. package/src/Form/Field.elm +21 -9
  425. package/src/Form/FieldView.elm +14 -4
  426. package/src/Form.elm +61 -53
  427. package/src/Pages/Internal/Platform/Cli.elm +262 -235
  428. package/src/Pages/Internal/Platform/CompatibilityKey.elm +1 -1
  429. package/src/Pages/Internal/Platform.elm +56 -35
  430. package/src/Result/Extra.elm +6 -1
  431. package/src/Scaffold/Form.elm +474 -0
  432. package/src/{Pages/Generate.elm → Scaffold/Route.elm} +35 -5
  433. package/src/Test/Html/Internal/ElmHtml/ToString.elm +8 -9
@@ -0,0 +1,217 @@
1
+ module Console.Text exposing
2
+ ( Color
3
+ , ColorModifier
4
+ , Style
5
+ , Text
6
+ , UseColor(..)
7
+ , concat
8
+ , dark
9
+ , green
10
+ , plain
11
+ , red
12
+ , render
13
+ , underline
14
+ , yellow
15
+ )
16
+
17
+ import Test.Runner.Node.Vendor.Console as Console
18
+
19
+
20
+ type Text
21
+ = Text { background : Color, foreground : Color, style : Style, modifiers : List ColorModifier } String
22
+ | Texts (List Text)
23
+
24
+
25
+ type UseColor
26
+ = UseColor
27
+ | Monochrome
28
+
29
+
30
+ type Color
31
+ = Default
32
+ | Red
33
+ | Green
34
+ | Yellow
35
+ | Black
36
+ | Blue
37
+ | Magenta
38
+ | Cyan
39
+ | White
40
+
41
+
42
+ type ColorModifier
43
+ = Inverted
44
+ | Dark
45
+
46
+
47
+ type Style
48
+ = Normal
49
+ | Bold
50
+ | Underline
51
+
52
+
53
+ render : UseColor -> Text -> String
54
+ render useColor txt =
55
+ case txt of
56
+ Text attrs str ->
57
+ case useColor of
58
+ UseColor ->
59
+ str
60
+ |> colorizeBackground attrs.background
61
+ |> colorizeForeground attrs.foreground
62
+ |> applyModifiers attrs.modifiers
63
+ |> applyStyle attrs.style
64
+
65
+ Monochrome ->
66
+ str
67
+
68
+ Texts texts ->
69
+ List.map (render useColor) texts
70
+ |> String.join ""
71
+
72
+
73
+ concat : List Text -> Text
74
+ concat =
75
+ Texts
76
+
77
+
78
+ plain : String -> Text
79
+ plain =
80
+ Text { foreground = Default, background = Default, style = Normal, modifiers = [] }
81
+
82
+
83
+
84
+ -- FOREGROUND COLORS --
85
+
86
+
87
+ red : String -> Text
88
+ red =
89
+ Text { foreground = Red, background = Default, style = Normal, modifiers = [] }
90
+
91
+
92
+ green : String -> Text
93
+ green =
94
+ Text { foreground = Green, background = Default, style = Normal, modifiers = [] }
95
+
96
+
97
+ yellow : String -> Text
98
+ yellow =
99
+ Text { foreground = Yellow, background = Default, style = Normal, modifiers = [] }
100
+
101
+
102
+ dark : Text -> Text
103
+ dark txt =
104
+ case txt of
105
+ Text styles str ->
106
+ Text { styles | modifiers = Dark :: styles.modifiers } str
107
+
108
+ Texts texts ->
109
+ Texts (List.map dark texts)
110
+
111
+
112
+
113
+ -- STYLES --
114
+
115
+
116
+ underline : Text -> Text
117
+ underline txt =
118
+ case txt of
119
+ Text styles str ->
120
+ Text { styles | style = Underline } str
121
+
122
+ Texts texts ->
123
+ Texts (List.map dark texts)
124
+
125
+
126
+
127
+ -- INTERNAL HELPERS --
128
+
129
+
130
+ colorizeForeground : Color -> String -> String
131
+ colorizeForeground color str =
132
+ case color of
133
+ Default ->
134
+ str
135
+
136
+ Red ->
137
+ Console.red str
138
+
139
+ Green ->
140
+ Console.green str
141
+
142
+ Yellow ->
143
+ Console.yellow str
144
+
145
+ Black ->
146
+ Console.black str
147
+
148
+ Blue ->
149
+ Console.blue str
150
+
151
+ Magenta ->
152
+ Console.magenta str
153
+
154
+ Cyan ->
155
+ Console.cyan str
156
+
157
+ White ->
158
+ Console.white str
159
+
160
+
161
+ colorizeBackground : Color -> String -> String
162
+ colorizeBackground color str =
163
+ case color of
164
+ Default ->
165
+ str
166
+
167
+ Red ->
168
+ Console.bgRed str
169
+
170
+ Green ->
171
+ Console.bgGreen str
172
+
173
+ Yellow ->
174
+ Console.bgYellow str
175
+
176
+ Black ->
177
+ Console.bgBlack str
178
+
179
+ Blue ->
180
+ Console.bgBlue str
181
+
182
+ Magenta ->
183
+ Console.bgMagenta str
184
+
185
+ Cyan ->
186
+ Console.bgCyan str
187
+
188
+ White ->
189
+ Console.bgWhite str
190
+
191
+
192
+ applyStyle : Style -> String -> String
193
+ applyStyle style str =
194
+ case style of
195
+ Normal ->
196
+ str
197
+
198
+ Bold ->
199
+ Console.bold str
200
+
201
+ Underline ->
202
+ Console.underline str
203
+
204
+
205
+ applyModifiers : List ColorModifier -> String -> String
206
+ applyModifiers modifiers str =
207
+ List.foldl applyModifiersHelp str modifiers
208
+
209
+
210
+ applyModifiersHelp : ColorModifier -> String -> String
211
+ applyModifiersHelp modifier str =
212
+ case modifier of
213
+ Inverted ->
214
+ Console.colorsInverted str
215
+
216
+ Dark ->
217
+ Console.dark str
@@ -0,0 +1,30 @@
1
+ module Test.Reporter.Console.Format.Color exposing (formatEquality)
2
+
3
+ import Test.Reporter.Highlightable as Highlightable exposing (Highlightable)
4
+ import Test.Runner.Node.Vendor.Console as Console
5
+
6
+
7
+ formatEquality : List (Highlightable String) -> List (Highlightable String) -> ( String, String )
8
+ formatEquality highlightedExpected highlightedActual =
9
+ let
10
+ formattedExpected =
11
+ highlightedExpected
12
+ |> List.map fromHighlightable
13
+ |> String.join ""
14
+
15
+ formattedActual =
16
+ highlightedActual
17
+ |> List.map fromHighlightable
18
+ |> String.join ""
19
+ in
20
+ ( formattedExpected, formattedActual )
21
+
22
+
23
+ fromHighlightable : Highlightable String -> String
24
+ fromHighlightable =
25
+ Highlightable.resolve
26
+ -- Cyan seems to look readable with both white and black text on top,
27
+ -- so it should work with both dark and light console themes
28
+ { fromHighlighted = Console.colorsInverted
29
+ , fromPlain = identity
30
+ }
@@ -0,0 +1,39 @@
1
+ module Test.Reporter.Console.Format.Monochrome exposing (formatEquality)
2
+
3
+ import Test.Reporter.Highlightable as Highlightable exposing (Highlightable)
4
+
5
+
6
+ formatEquality : List (Highlightable String) -> List (Highlightable String) -> ( String, String )
7
+ formatEquality highlightedExpected highlightedActual =
8
+ let
9
+ ( formattedExpected, expectedIndicators ) =
10
+ highlightedExpected
11
+ |> List.map (fromHighlightable "▲")
12
+ |> List.unzip
13
+
14
+ ( formattedActual, actualIndicators ) =
15
+ highlightedActual
16
+ |> List.map (fromHighlightable "▼")
17
+ |> List.unzip
18
+
19
+ combinedExpected =
20
+ String.join "\n"
21
+ [ String.join "" formattedExpected
22
+ , String.join "" expectedIndicators
23
+ ]
24
+
25
+ combinedActual =
26
+ String.join "\n"
27
+ [ String.join "" actualIndicators
28
+ , String.join "" formattedActual
29
+ ]
30
+ in
31
+ ( combinedExpected, combinedActual )
32
+
33
+
34
+ fromHighlightable : String -> Highlightable String -> ( String, String )
35
+ fromHighlightable indicator =
36
+ Highlightable.resolve
37
+ { fromHighlighted = \char -> ( char, indicator )
38
+ , fromPlain = \char -> ( char, " " )
39
+ }
@@ -0,0 +1,212 @@
1
+ module Test.Reporter.Console.Format exposing (format, highlightEqual)
2
+
3
+ import Test.Reporter.Highlightable as Highlightable exposing (Highlightable)
4
+ import Test.Runner.Failure exposing (InvalidReason(..), Reason(..))
5
+
6
+
7
+ format :
8
+ (List (Highlightable String) -> List (Highlightable String) -> ( String, String ))
9
+ -> String
10
+ -> Reason
11
+ -> String
12
+ format formatEquality description reason =
13
+ case reason of
14
+ Custom ->
15
+ description
16
+
17
+ Equality expected actual ->
18
+ case highlightEqual expected actual of
19
+ Nothing ->
20
+ verticalBar description expected actual
21
+
22
+ Just ( highlightedExpected, highlightedActual ) ->
23
+ let
24
+ ( formattedExpected, formattedActual ) =
25
+ formatEquality highlightedExpected highlightedActual
26
+ in
27
+ verticalBar description formattedExpected formattedActual
28
+
29
+ Comparison first second ->
30
+ verticalBar description first second
31
+
32
+ TODO ->
33
+ description
34
+
35
+ Invalid BadDescription ->
36
+ if description == "" then
37
+ "The empty string is not a valid test description."
38
+
39
+ else
40
+ "This is an invalid test description: " ++ description
41
+
42
+ Invalid _ ->
43
+ description
44
+
45
+ ListDiff expected actual ->
46
+ listDiffToString 0
47
+ description
48
+ { expected = expected
49
+ , actual = actual
50
+ }
51
+ { originalExpected = expected
52
+ , originalActual = actual
53
+ }
54
+
55
+ CollectionDiff { expected, actual, extra, missing } ->
56
+ let
57
+ extraStr =
58
+ if List.isEmpty extra then
59
+ ""
60
+
61
+ else
62
+ "\nThese keys are extra: "
63
+ ++ (extra |> String.join ", " |> (\d -> "[ " ++ d ++ " ]"))
64
+
65
+ missingStr =
66
+ if List.isEmpty missing then
67
+ ""
68
+
69
+ else
70
+ "\nThese keys are missing: "
71
+ ++ (missing |> String.join ", " |> (\d -> "[ " ++ d ++ " ]"))
72
+ in
73
+ String.join ""
74
+ [ verticalBar description expected actual
75
+ , "\n"
76
+ , extraStr
77
+ , missingStr
78
+ ]
79
+
80
+
81
+ highlightEqual : String -> String -> Maybe ( List (Highlightable String), List (Highlightable String) )
82
+ highlightEqual expected actual =
83
+ if expected == "\"\"" || actual == "\"\"" then
84
+ -- Diffing when one is the empty string looks silly. Don't bother.
85
+ Nothing
86
+
87
+ else if isFloat expected && isFloat actual then
88
+ -- Diffing numbers looks silly. Don't bother.
89
+ Nothing
90
+
91
+ else
92
+ let
93
+ isHighlighted =
94
+ Highlightable.resolve
95
+ { fromHighlighted = always True
96
+ , fromPlain = always False
97
+ }
98
+
99
+ edgeCount highlightedString =
100
+ let
101
+ highlights =
102
+ List.map isHighlighted highlightedString
103
+ in
104
+ highlights
105
+ |> List.map2 Tuple.pair (List.drop 1 highlights)
106
+ |> List.filter (\( lhs, rhs ) -> lhs /= rhs)
107
+ |> List.length
108
+
109
+ expectedChars =
110
+ String.toList expected
111
+
112
+ actualChars =
113
+ String.toList actual
114
+
115
+ highlightedExpected =
116
+ Highlightable.diffLists expectedChars actualChars
117
+ |> List.map (Highlightable.map String.fromChar)
118
+
119
+ highlightedActual =
120
+ Highlightable.diffLists actualChars expectedChars
121
+ |> List.map (Highlightable.map String.fromChar)
122
+
123
+ plainCharCount =
124
+ highlightedExpected
125
+ |> List.filter (not << isHighlighted)
126
+ |> List.length
127
+ in
128
+ if edgeCount highlightedActual > plainCharCount || edgeCount highlightedExpected > plainCharCount then
129
+ -- Large number of small highlighted blocks. Diff is too messy to be useful.
130
+ Nothing
131
+
132
+ else
133
+ Just
134
+ ( highlightedExpected
135
+ , highlightedActual
136
+ )
137
+
138
+
139
+ isFloat : String -> Bool
140
+ isFloat str =
141
+ case String.toFloat str of
142
+ Just _ ->
143
+ True
144
+
145
+ Nothing ->
146
+ False
147
+
148
+
149
+ listDiffToString :
150
+ Int
151
+ -> String
152
+ -> { expected : List String, actual : List String }
153
+ -> { originalExpected : List String, originalActual : List String }
154
+ -> String
155
+ listDiffToString index description { expected, actual } originals =
156
+ case ( expected, actual ) of
157
+ ( [], [] ) ->
158
+ [ "Two lists were unequal previously, yet ended up equal later."
159
+ , "This should never happen!"
160
+ , "Please report this bug to https://github.com/elm-community/elm-test/issues - and include these lists: "
161
+ , "\n"
162
+ , String.join ", " originals.originalExpected
163
+ , "\n"
164
+ , String.join ", " originals.originalActual
165
+ ]
166
+ |> String.join ""
167
+
168
+ ( _ :: _, [] ) ->
169
+ verticalBar (description ++ " was shorter than")
170
+ (String.join ", " originals.originalExpected)
171
+ (String.join ", " originals.originalActual)
172
+
173
+ ( [], _ :: _ ) ->
174
+ verticalBar (description ++ " was longer than")
175
+ (String.join ", " originals.originalExpected)
176
+ (String.join ", " originals.originalActual)
177
+
178
+ ( firstExpected :: restExpected, firstActual :: restActual ) ->
179
+ if firstExpected == firstActual then
180
+ -- They're still the same so far; keep going.
181
+ listDiffToString (index + 1)
182
+ description
183
+ { expected = restExpected
184
+ , actual = restActual
185
+ }
186
+ originals
187
+
188
+ else
189
+ -- We found elements that differ; fail!
190
+ String.join ""
191
+ [ verticalBar description
192
+ (String.join ", " originals.originalExpected)
193
+ (String.join ", " originals.originalActual)
194
+ , "\n\nThe first diff is at index "
195
+ , String.fromInt index
196
+ , ": it was `"
197
+ , firstActual
198
+ , "`, but `"
199
+ , firstExpected
200
+ , "` was expected."
201
+ ]
202
+
203
+
204
+ verticalBar : String -> String -> String -> String
205
+ verticalBar comparison expected actual =
206
+ [ actual
207
+ , "╷"
208
+ , "│ " ++ comparison
209
+ , "╵"
210
+ , expected
211
+ ]
212
+ |> String.join "\n"
@@ -0,0 +1,207 @@
1
+ module Test.Reporter.Console exposing (reportBegin, reportComplete, reportSummary)
2
+
3
+ import Console.Text as Text exposing (..)
4
+ import Json.Encode as Encode exposing (Value)
5
+ import Test.Reporter.Console.Format exposing (format)
6
+ import Test.Reporter.Console.Format.Color as FormatColor
7
+ import Test.Reporter.Console.Format.Monochrome as FormatMonochrome
8
+ import Test.Reporter.TestResults as Results exposing (Failure, Outcome(..), SummaryInfo)
9
+ import Test.Runner exposing (formatLabels)
10
+
11
+
12
+ formatDuration : Float -> String
13
+ formatDuration time =
14
+ String.fromFloat time ++ " ms"
15
+
16
+
17
+ indent : String -> String
18
+ indent str =
19
+ str
20
+ |> String.split "\n"
21
+ |> List.map ((++) " ")
22
+ |> String.join "\n"
23
+
24
+
25
+ pluralize : String -> String -> Int -> String
26
+ pluralize singular plural count =
27
+ let
28
+ suffix =
29
+ if count == 1 then
30
+ singular
31
+
32
+ else
33
+ plural
34
+ in
35
+ String.join " " [ String.fromInt count, suffix ]
36
+
37
+
38
+ todosToText : ( List String, String ) -> Text
39
+ todosToText ( labels, failure ) =
40
+ Text.concat [ todoLabelsToText labels, todoToChalk failure ]
41
+
42
+
43
+ todoLabelsToText : List String -> Text
44
+ todoLabelsToText =
45
+ formatLabels (dark << plain << withChar '↓') (dark << plain << withChar '↓') >> Text.concat
46
+
47
+
48
+ todoToChalk : String -> Text
49
+ todoToChalk message =
50
+ plain ("◦ TODO: " ++ message ++ "\n\n")
51
+
52
+
53
+ failuresToText : UseColor -> List String -> List Failure -> Text
54
+ failuresToText useColor labels failures =
55
+ Text.concat (failureLabelsToText labels :: List.map (failureToText useColor) failures)
56
+
57
+
58
+ failureLabelsToText : List String -> Text
59
+ failureLabelsToText =
60
+ formatLabels (dark << plain << withChar '↓') (red << withChar '✗') >> Text.concat
61
+
62
+
63
+ failureToText : UseColor -> Results.Failure -> Text
64
+ failureToText useColor { given, description, reason } =
65
+ let
66
+ formatEquality =
67
+ case useColor of
68
+ Monochrome ->
69
+ FormatMonochrome.formatEquality
70
+
71
+ UseColor ->
72
+ FormatColor.formatEquality
73
+
74
+ messageText =
75
+ plain ("\n" ++ indent (format formatEquality description reason) ++ "\n\n")
76
+ in
77
+ case given of
78
+ Nothing ->
79
+ messageText
80
+
81
+ Just givenStr ->
82
+ [ dark (plain ("\nGiven " ++ givenStr ++ "\n"))
83
+ , messageText
84
+ ]
85
+ |> Text.concat
86
+
87
+
88
+ textToValue : UseColor -> Text -> Value
89
+ textToValue useColor txt =
90
+ txt
91
+ |> Text.render useColor
92
+ |> Encode.string
93
+
94
+
95
+ reportBegin : UseColor -> { r | globs : List String, fuzzRuns : Int, testCount : Int, initialSeed : Int } -> Maybe Value
96
+ reportBegin useColor { globs, fuzzRuns, testCount, initialSeed } =
97
+ let
98
+ prefix =
99
+ "Running "
100
+ ++ pluralize "test" "tests" testCount
101
+ ++ ". To reproduce these results, run: elm-test --fuzz "
102
+ ++ String.fromInt fuzzRuns
103
+ ++ " --seed "
104
+ ++ String.fromInt initialSeed
105
+ in
106
+ (String.join " " (prefix :: globs) ++ "\n")
107
+ |> plain
108
+ |> textToValue useColor
109
+ |> Just
110
+
111
+
112
+ reportComplete : UseColor -> Results.TestResult -> Value
113
+ reportComplete useColor { labels, outcome } =
114
+ case outcome of
115
+ Passed ->
116
+ -- No failures of any kind.
117
+ Encode.null
118
+
119
+ Failed failures ->
120
+ -- We have non-TODOs still failing; report them, not the TODOs.
121
+ failures
122
+ |> failuresToText useColor labels
123
+ |> textToValue useColor
124
+
125
+ Todo str ->
126
+ Encode.object
127
+ [ ( "todo", Encode.string str )
128
+ , ( "labels", Encode.list Encode.string labels )
129
+ ]
130
+
131
+
132
+ summarizeTodos : List ( List String, String ) -> Text
133
+ summarizeTodos =
134
+ List.map todosToText >> Text.concat
135
+
136
+
137
+ reportSummary : UseColor -> SummaryInfo -> Maybe String -> Value
138
+ reportSummary useColor { todos, passed, failed, duration } autoFail =
139
+ let
140
+ headlineResult =
141
+ case ( autoFail, failed, List.length todos ) of
142
+ ( Nothing, 0, 0 ) ->
143
+ Ok "TEST RUN PASSED"
144
+
145
+ ( Nothing, 0, 1 ) ->
146
+ Err ( yellow, "TEST RUN INCOMPLETE", " because there is 1 TODO remaining" )
147
+
148
+ ( Nothing, 0, numTodos ) ->
149
+ Err ( yellow, "TEST RUN INCOMPLETE", " because there are " ++ String.fromInt numTodos ++ " TODOs remaining" )
150
+
151
+ ( Just failure, 0, _ ) ->
152
+ Err ( yellow, "TEST RUN INCOMPLETE", " because " ++ failure )
153
+
154
+ _ ->
155
+ Err ( red, "TEST RUN FAILED", "" )
156
+
157
+ headline =
158
+ case headlineResult of
159
+ Ok str ->
160
+ underline (green ("\n" ++ str ++ "\n\n"))
161
+
162
+ Err ( colorize, str, suffix ) ->
163
+ [ underline (colorize ("\n" ++ str))
164
+ , colorize (suffix ++ "\n\n")
165
+ ]
166
+ |> Text.concat
167
+
168
+ todoStats =
169
+ -- Print stats for Todos if there are any,
170
+ --but don't print details unless only Todos remain
171
+ case List.length todos of
172
+ 0 ->
173
+ plain ""
174
+
175
+ numTodos ->
176
+ stat "Todo: " (String.fromInt numTodos)
177
+
178
+ individualTodos =
179
+ if failed > 0 then
180
+ plain ""
181
+
182
+ else
183
+ summarizeTodos (List.reverse todos)
184
+ in
185
+ [ headline
186
+ , stat "Duration: " (formatDuration duration)
187
+ , stat "Passed: " (String.fromInt passed)
188
+ , stat "Failed: " (String.fromInt failed)
189
+ , todoStats
190
+ , individualTodos
191
+ ]
192
+ |> Text.concat
193
+ |> Text.render useColor
194
+ |> Encode.string
195
+
196
+
197
+ stat : String -> String -> Text
198
+ stat label value =
199
+ Text.concat
200
+ [ dark (plain label)
201
+ , plain (value ++ "\n")
202
+ ]
203
+
204
+
205
+ withChar : Char -> String -> String
206
+ withChar icon str =
207
+ String.fromChar icon ++ " " ++ str ++ "\n"