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

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 (472) hide show
  1. package/README.md +1 -1
  2. package/codegen/elm-pages-codegen.js +1 -1
  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 +29603 -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.elmo +0 -0
  47. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/d.dat +0 -0
  48. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/i.dat +0 -0
  49. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/o.dat +0 -0
  50. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm.json +1 -1
  51. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/Reporter.elm.js +1327 -122
  52. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/Runner.elm.js +15157 -13245
  53. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/node_runner.js +1 -1
  54. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/node_supervisor.js +4 -4
  55. package/generator/dead-code-review/elm.json +8 -6
  56. package/generator/dead-code-review/node_modules/.package-lock.json +484 -0
  57. package/generator/dead-code-review/node_modules/ansi-styles/index.d.ts +345 -0
  58. package/generator/dead-code-review/node_modules/ansi-styles/index.js +163 -0
  59. package/generator/dead-code-review/node_modules/ansi-styles/license +9 -0
  60. package/generator/dead-code-review/node_modules/ansi-styles/package.json +56 -0
  61. package/generator/dead-code-review/node_modules/ansi-styles/readme.md +152 -0
  62. package/generator/dead-code-review/node_modules/anymatch/LICENSE +15 -0
  63. package/generator/dead-code-review/node_modules/anymatch/README.md +87 -0
  64. package/generator/dead-code-review/node_modules/anymatch/index.d.ts +20 -0
  65. package/generator/dead-code-review/node_modules/anymatch/index.js +104 -0
  66. package/generator/dead-code-review/node_modules/anymatch/package.json +48 -0
  67. package/generator/dead-code-review/node_modules/balanced-match/.github/FUNDING.yml +2 -0
  68. package/generator/dead-code-review/node_modules/balanced-match/LICENSE.md +21 -0
  69. package/generator/dead-code-review/node_modules/balanced-match/README.md +97 -0
  70. package/generator/dead-code-review/node_modules/balanced-match/index.js +62 -0
  71. package/generator/dead-code-review/node_modules/balanced-match/package.json +48 -0
  72. package/generator/dead-code-review/node_modules/binary-extensions/binary-extensions.json +260 -0
  73. package/generator/dead-code-review/node_modules/binary-extensions/binary-extensions.json.d.ts +3 -0
  74. package/generator/dead-code-review/node_modules/binary-extensions/index.d.ts +14 -0
  75. package/generator/dead-code-review/node_modules/binary-extensions/index.js +1 -0
  76. package/generator/dead-code-review/node_modules/binary-extensions/license +9 -0
  77. package/generator/dead-code-review/node_modules/binary-extensions/package.json +38 -0
  78. package/generator/dead-code-review/node_modules/binary-extensions/readme.md +41 -0
  79. package/generator/dead-code-review/node_modules/brace-expansion/.github/FUNDING.yml +2 -0
  80. package/generator/dead-code-review/node_modules/brace-expansion/LICENSE +21 -0
  81. package/generator/dead-code-review/node_modules/brace-expansion/README.md +135 -0
  82. package/generator/dead-code-review/node_modules/brace-expansion/index.js +203 -0
  83. package/generator/dead-code-review/node_modules/brace-expansion/package.json +46 -0
  84. package/generator/dead-code-review/node_modules/braces/CHANGELOG.md +184 -0
  85. package/generator/dead-code-review/node_modules/braces/LICENSE +21 -0
  86. package/generator/dead-code-review/node_modules/braces/README.md +593 -0
  87. package/generator/dead-code-review/node_modules/braces/index.js +170 -0
  88. package/generator/dead-code-review/node_modules/braces/lib/compile.js +57 -0
  89. package/generator/dead-code-review/node_modules/braces/lib/constants.js +57 -0
  90. package/generator/dead-code-review/node_modules/braces/lib/expand.js +113 -0
  91. package/generator/dead-code-review/node_modules/braces/lib/parse.js +333 -0
  92. package/generator/dead-code-review/node_modules/braces/lib/stringify.js +32 -0
  93. package/generator/dead-code-review/node_modules/braces/lib/utils.js +112 -0
  94. package/generator/dead-code-review/node_modules/braces/package.json +77 -0
  95. package/generator/dead-code-review/node_modules/chalk/index.d.ts +415 -0
  96. package/generator/dead-code-review/node_modules/chalk/license +9 -0
  97. package/generator/dead-code-review/node_modules/chalk/package.json +68 -0
  98. package/generator/dead-code-review/node_modules/chalk/readme.md +341 -0
  99. package/generator/dead-code-review/node_modules/chalk/source/index.js +229 -0
  100. package/generator/dead-code-review/node_modules/chalk/source/templates.js +134 -0
  101. package/generator/dead-code-review/node_modules/chalk/source/util.js +39 -0
  102. package/generator/dead-code-review/node_modules/chokidar/LICENSE +21 -0
  103. package/generator/dead-code-review/node_modules/chokidar/README.md +308 -0
  104. package/generator/dead-code-review/node_modules/chokidar/index.js +973 -0
  105. package/generator/dead-code-review/node_modules/chokidar/lib/constants.js +65 -0
  106. package/generator/dead-code-review/node_modules/chokidar/lib/fsevents-handler.js +524 -0
  107. package/generator/dead-code-review/node_modules/chokidar/lib/nodefs-handler.js +654 -0
  108. package/generator/dead-code-review/node_modules/chokidar/package.json +85 -0
  109. package/generator/dead-code-review/node_modules/chokidar/types/index.d.ts +188 -0
  110. package/generator/dead-code-review/node_modules/color-convert/CHANGELOG.md +54 -0
  111. package/generator/dead-code-review/node_modules/color-convert/LICENSE +21 -0
  112. package/generator/dead-code-review/node_modules/color-convert/README.md +68 -0
  113. package/generator/dead-code-review/node_modules/color-convert/conversions.js +839 -0
  114. package/generator/dead-code-review/node_modules/color-convert/index.js +81 -0
  115. package/generator/dead-code-review/node_modules/color-convert/package.json +48 -0
  116. package/generator/dead-code-review/node_modules/color-convert/route.js +97 -0
  117. package/generator/dead-code-review/node_modules/color-name/LICENSE +8 -0
  118. package/generator/dead-code-review/node_modules/color-name/README.md +11 -0
  119. package/generator/dead-code-review/node_modules/color-name/index.js +152 -0
  120. package/generator/dead-code-review/node_modules/color-name/package.json +28 -0
  121. package/generator/dead-code-review/node_modules/commander/LICENSE +22 -0
  122. package/generator/dead-code-review/node_modules/commander/Readme.md +1118 -0
  123. package/generator/dead-code-review/node_modules/commander/esm.mjs +16 -0
  124. package/generator/dead-code-review/node_modules/commander/index.js +27 -0
  125. package/generator/dead-code-review/node_modules/commander/lib/argument.js +147 -0
  126. package/generator/dead-code-review/node_modules/commander/lib/command.js +2160 -0
  127. package/generator/dead-code-review/node_modules/commander/lib/error.js +45 -0
  128. package/generator/dead-code-review/node_modules/commander/lib/help.js +406 -0
  129. package/generator/dead-code-review/node_modules/commander/lib/option.js +326 -0
  130. package/generator/dead-code-review/node_modules/commander/lib/suggestSimilar.js +100 -0
  131. package/generator/dead-code-review/node_modules/commander/package-support.json +16 -0
  132. package/generator/dead-code-review/node_modules/commander/package.json +80 -0
  133. package/generator/dead-code-review/node_modules/commander/typings/index.d.ts +881 -0
  134. package/generator/dead-code-review/node_modules/cross-spawn/CHANGELOG.md +130 -0
  135. package/generator/dead-code-review/node_modules/cross-spawn/LICENSE +21 -0
  136. package/generator/dead-code-review/node_modules/cross-spawn/README.md +96 -0
  137. package/generator/dead-code-review/node_modules/cross-spawn/index.js +39 -0
  138. package/generator/dead-code-review/node_modules/cross-spawn/lib/enoent.js +59 -0
  139. package/generator/dead-code-review/node_modules/cross-spawn/lib/parse.js +91 -0
  140. package/generator/dead-code-review/node_modules/cross-spawn/lib/util/escape.js +45 -0
  141. package/generator/dead-code-review/node_modules/cross-spawn/lib/util/readShebang.js +23 -0
  142. package/generator/dead-code-review/node_modules/cross-spawn/lib/util/resolveCommand.js +52 -0
  143. package/generator/dead-code-review/node_modules/cross-spawn/package.json +73 -0
  144. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/LICENSE +373 -0
  145. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/README.md +64 -0
  146. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm.d.ts +22 -0
  147. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm.js +419 -0
  148. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm_bg.wasm +0 -0
  149. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/package.json +27 -0
  150. package/generator/dead-code-review/node_modules/elm-test/LICENSE +27 -0
  151. package/generator/dead-code-review/node_modules/elm-test/README.md +192 -0
  152. package/generator/dead-code-review/node_modules/elm-test/bin/elm-test +3 -0
  153. package/generator/dead-code-review/node_modules/elm-test/elm/elm.json +25 -0
  154. package/generator/dead-code-review/node_modules/elm-test/elm/src/Console/Text.elm +217 -0
  155. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format/Color.elm +30 -0
  156. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format/Monochrome.elm +39 -0
  157. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format.elm +212 -0
  158. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console.elm +207 -0
  159. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Highlightable.elm +48 -0
  160. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/JUnit.elm +161 -0
  161. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Json.elm +158 -0
  162. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Reporter.elm +53 -0
  163. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/TestResults.elm +113 -0
  164. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/JsMessage.elm +38 -0
  165. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node/Vendor/Console.elm +230 -0
  166. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node/Vendor/Diff.elm +326 -0
  167. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node.elm +440 -0
  168. package/generator/dead-code-review/node_modules/elm-test/lib/Compile.js +110 -0
  169. package/generator/dead-code-review/node_modules/elm-test/lib/DependencyProvider.js +343 -0
  170. package/generator/dead-code-review/node_modules/elm-test/lib/ElmCompiler.js +109 -0
  171. package/generator/dead-code-review/node_modules/elm-test/lib/ElmHome.js +47 -0
  172. package/generator/dead-code-review/node_modules/elm-test/lib/ElmJson.js +194 -0
  173. package/generator/dead-code-review/node_modules/elm-test/lib/FindTests.js +276 -0
  174. package/generator/dead-code-review/node_modules/elm-test/lib/Generate.js +294 -0
  175. package/generator/dead-code-review/node_modules/elm-test/lib/Install.js +290 -0
  176. package/generator/dead-code-review/node_modules/elm-test/lib/Parser.js +941 -0
  177. package/generator/dead-code-review/node_modules/elm-test/lib/Project.js +117 -0
  178. package/generator/dead-code-review/node_modules/elm-test/lib/Report.js +23 -0
  179. package/generator/dead-code-review/node_modules/elm-test/lib/RunTests.js +322 -0
  180. package/generator/dead-code-review/node_modules/elm-test/lib/Solve.js +76 -0
  181. package/generator/dead-code-review/node_modules/elm-test/lib/Supervisor.js +294 -0
  182. package/generator/dead-code-review/node_modules/elm-test/lib/SyncGet.js +45 -0
  183. package/generator/dead-code-review/node_modules/elm-test/lib/SyncGetWorker.js +36 -0
  184. package/generator/dead-code-review/node_modules/elm-test/lib/elm-test.js +318 -0
  185. package/generator/dead-code-review/node_modules/elm-test/package.json +69 -0
  186. package/generator/dead-code-review/node_modules/elm-test/templates/after.js +29 -0
  187. package/generator/dead-code-review/node_modules/elm-test/templates/before.js +58 -0
  188. package/generator/dead-code-review/node_modules/elm-test/templates/tests/Example.elm +10 -0
  189. package/generator/dead-code-review/node_modules/fill-range/LICENSE +21 -0
  190. package/generator/dead-code-review/node_modules/fill-range/README.md +237 -0
  191. package/generator/dead-code-review/node_modules/fill-range/index.js +249 -0
  192. package/generator/dead-code-review/node_modules/fill-range/package.json +69 -0
  193. package/generator/dead-code-review/node_modules/fs.realpath/LICENSE +43 -0
  194. package/generator/dead-code-review/node_modules/fs.realpath/README.md +33 -0
  195. package/generator/dead-code-review/node_modules/fs.realpath/index.js +66 -0
  196. package/generator/dead-code-review/node_modules/fs.realpath/old.js +303 -0
  197. package/generator/dead-code-review/node_modules/fs.realpath/package.json +26 -0
  198. package/generator/dead-code-review/node_modules/fsevents/LICENSE +22 -0
  199. package/generator/dead-code-review/node_modules/fsevents/README.md +83 -0
  200. package/generator/dead-code-review/node_modules/fsevents/fsevents.d.ts +46 -0
  201. package/generator/dead-code-review/node_modules/fsevents/fsevents.js +82 -0
  202. package/generator/dead-code-review/node_modules/fsevents/fsevents.node +0 -0
  203. package/generator/dead-code-review/node_modules/fsevents/package.json +62 -0
  204. package/generator/dead-code-review/node_modules/glob/LICENSE +15 -0
  205. package/generator/dead-code-review/node_modules/glob/README.md +378 -0
  206. package/generator/dead-code-review/node_modules/glob/common.js +240 -0
  207. package/generator/dead-code-review/node_modules/glob/glob.js +790 -0
  208. package/generator/dead-code-review/node_modules/glob/package.json +55 -0
  209. package/generator/dead-code-review/node_modules/glob/sync.js +486 -0
  210. package/generator/dead-code-review/node_modules/glob-parent/CHANGELOG.md +110 -0
  211. package/generator/dead-code-review/node_modules/glob-parent/LICENSE +15 -0
  212. package/generator/dead-code-review/node_modules/glob-parent/README.md +137 -0
  213. package/generator/dead-code-review/node_modules/glob-parent/index.js +42 -0
  214. package/generator/dead-code-review/node_modules/glob-parent/package.json +48 -0
  215. package/generator/dead-code-review/node_modules/graceful-fs/LICENSE +15 -0
  216. package/generator/dead-code-review/node_modules/graceful-fs/README.md +143 -0
  217. package/generator/dead-code-review/node_modules/graceful-fs/clone.js +23 -0
  218. package/generator/dead-code-review/node_modules/graceful-fs/graceful-fs.js +448 -0
  219. package/generator/dead-code-review/node_modules/graceful-fs/legacy-streams.js +118 -0
  220. package/generator/dead-code-review/node_modules/graceful-fs/package.json +50 -0
  221. package/generator/dead-code-review/node_modules/graceful-fs/polyfills.js +355 -0
  222. package/generator/dead-code-review/node_modules/has-flag/index.d.ts +39 -0
  223. package/generator/dead-code-review/node_modules/has-flag/index.js +8 -0
  224. package/generator/dead-code-review/node_modules/has-flag/license +9 -0
  225. package/generator/dead-code-review/node_modules/has-flag/package.json +46 -0
  226. package/generator/dead-code-review/node_modules/has-flag/readme.md +89 -0
  227. package/generator/dead-code-review/node_modules/inflight/LICENSE +15 -0
  228. package/generator/dead-code-review/node_modules/inflight/README.md +37 -0
  229. package/generator/dead-code-review/node_modules/inflight/inflight.js +54 -0
  230. package/generator/dead-code-review/node_modules/inflight/package.json +29 -0
  231. package/generator/dead-code-review/node_modules/inherits/LICENSE +16 -0
  232. package/generator/dead-code-review/node_modules/inherits/README.md +42 -0
  233. package/generator/dead-code-review/node_modules/inherits/inherits.js +9 -0
  234. package/generator/dead-code-review/node_modules/inherits/inherits_browser.js +27 -0
  235. package/generator/dead-code-review/node_modules/inherits/package.json +29 -0
  236. package/generator/dead-code-review/node_modules/is-binary-path/index.d.ts +17 -0
  237. package/generator/dead-code-review/node_modules/is-binary-path/index.js +7 -0
  238. package/generator/dead-code-review/node_modules/is-binary-path/license +9 -0
  239. package/generator/dead-code-review/node_modules/is-binary-path/package.json +40 -0
  240. package/generator/dead-code-review/node_modules/is-binary-path/readme.md +34 -0
  241. package/generator/dead-code-review/node_modules/is-extglob/LICENSE +21 -0
  242. package/generator/dead-code-review/node_modules/is-extglob/README.md +107 -0
  243. package/generator/dead-code-review/node_modules/is-extglob/index.js +20 -0
  244. package/generator/dead-code-review/node_modules/is-extglob/package.json +69 -0
  245. package/generator/dead-code-review/node_modules/is-glob/LICENSE +21 -0
  246. package/generator/dead-code-review/node_modules/is-glob/README.md +206 -0
  247. package/generator/dead-code-review/node_modules/is-glob/index.js +150 -0
  248. package/generator/dead-code-review/node_modules/is-glob/package.json +81 -0
  249. package/generator/dead-code-review/node_modules/is-number/LICENSE +21 -0
  250. package/generator/dead-code-review/node_modules/is-number/README.md +187 -0
  251. package/generator/dead-code-review/node_modules/is-number/index.js +18 -0
  252. package/generator/dead-code-review/node_modules/is-number/package.json +82 -0
  253. package/generator/dead-code-review/node_modules/isexe/LICENSE +15 -0
  254. package/generator/dead-code-review/node_modules/isexe/README.md +51 -0
  255. package/generator/dead-code-review/node_modules/isexe/index.js +57 -0
  256. package/generator/dead-code-review/node_modules/isexe/mode.js +41 -0
  257. package/generator/dead-code-review/node_modules/isexe/package.json +31 -0
  258. package/generator/dead-code-review/node_modules/isexe/test/basic.js +221 -0
  259. package/generator/dead-code-review/node_modules/isexe/windows.js +42 -0
  260. package/generator/dead-code-review/node_modules/minimatch/LICENSE +15 -0
  261. package/generator/dead-code-review/node_modules/minimatch/README.md +259 -0
  262. package/generator/dead-code-review/node_modules/minimatch/lib/path.js +4 -0
  263. package/generator/dead-code-review/node_modules/minimatch/minimatch.js +906 -0
  264. package/generator/dead-code-review/node_modules/minimatch/package.json +32 -0
  265. package/generator/dead-code-review/node_modules/normalize-path/LICENSE +21 -0
  266. package/generator/dead-code-review/node_modules/normalize-path/README.md +127 -0
  267. package/generator/dead-code-review/node_modules/normalize-path/index.js +35 -0
  268. package/generator/dead-code-review/node_modules/normalize-path/package.json +77 -0
  269. package/generator/dead-code-review/node_modules/once/LICENSE +15 -0
  270. package/generator/dead-code-review/node_modules/once/README.md +79 -0
  271. package/generator/dead-code-review/node_modules/once/once.js +42 -0
  272. package/generator/dead-code-review/node_modules/once/package.json +33 -0
  273. package/generator/dead-code-review/node_modules/path-key/index.d.ts +40 -0
  274. package/generator/dead-code-review/node_modules/path-key/index.js +16 -0
  275. package/generator/dead-code-review/node_modules/path-key/license +9 -0
  276. package/generator/dead-code-review/node_modules/path-key/package.json +39 -0
  277. package/generator/dead-code-review/node_modules/path-key/readme.md +61 -0
  278. package/generator/dead-code-review/node_modules/picomatch/CHANGELOG.md +136 -0
  279. package/generator/dead-code-review/node_modules/picomatch/LICENSE +21 -0
  280. package/generator/dead-code-review/node_modules/picomatch/README.md +708 -0
  281. package/generator/dead-code-review/node_modules/picomatch/index.js +3 -0
  282. package/generator/dead-code-review/node_modules/picomatch/lib/constants.js +179 -0
  283. package/generator/dead-code-review/node_modules/picomatch/lib/parse.js +1091 -0
  284. package/generator/dead-code-review/node_modules/picomatch/lib/picomatch.js +342 -0
  285. package/generator/dead-code-review/node_modules/picomatch/lib/scan.js +391 -0
  286. package/generator/dead-code-review/node_modules/picomatch/lib/utils.js +64 -0
  287. package/generator/dead-code-review/node_modules/picomatch/package.json +81 -0
  288. package/generator/dead-code-review/node_modules/readdirp/LICENSE +21 -0
  289. package/generator/dead-code-review/node_modules/readdirp/README.md +122 -0
  290. package/generator/dead-code-review/node_modules/readdirp/index.d.ts +43 -0
  291. package/generator/dead-code-review/node_modules/readdirp/index.js +287 -0
  292. package/generator/dead-code-review/node_modules/readdirp/package.json +122 -0
  293. package/generator/dead-code-review/node_modules/shebang-command/index.js +19 -0
  294. package/generator/dead-code-review/node_modules/shebang-command/license +9 -0
  295. package/generator/dead-code-review/node_modules/shebang-command/package.json +34 -0
  296. package/generator/dead-code-review/node_modules/shebang-command/readme.md +34 -0
  297. package/generator/dead-code-review/node_modules/shebang-regex/index.d.ts +22 -0
  298. package/generator/dead-code-review/node_modules/shebang-regex/index.js +2 -0
  299. package/generator/dead-code-review/node_modules/shebang-regex/license +9 -0
  300. package/generator/dead-code-review/node_modules/shebang-regex/package.json +35 -0
  301. package/generator/dead-code-review/node_modules/shebang-regex/readme.md +33 -0
  302. package/generator/dead-code-review/node_modules/split/.travis.yml +3 -0
  303. package/generator/dead-code-review/node_modules/split/LICENCE +22 -0
  304. package/generator/dead-code-review/node_modules/split/examples/pretty.js +26 -0
  305. package/generator/dead-code-review/node_modules/split/index.js +63 -0
  306. package/generator/dead-code-review/node_modules/split/package.json +30 -0
  307. package/generator/dead-code-review/node_modules/split/readme.markdown +72 -0
  308. package/generator/dead-code-review/node_modules/split/test/options.asynct.js +46 -0
  309. package/generator/dead-code-review/node_modules/split/test/partitioned_unicode.js +34 -0
  310. package/generator/dead-code-review/node_modules/split/test/split.asynct.js +137 -0
  311. package/generator/dead-code-review/node_modules/split/test/try_catch.asynct.js +51 -0
  312. package/generator/dead-code-review/node_modules/supports-color/browser.js +5 -0
  313. package/generator/dead-code-review/node_modules/supports-color/index.js +135 -0
  314. package/generator/dead-code-review/node_modules/supports-color/license +9 -0
  315. package/generator/dead-code-review/node_modules/supports-color/package.json +53 -0
  316. package/generator/dead-code-review/node_modules/supports-color/readme.md +76 -0
  317. package/generator/dead-code-review/node_modules/through/.travis.yml +5 -0
  318. package/generator/dead-code-review/node_modules/through/LICENSE.APACHE2 +15 -0
  319. package/generator/dead-code-review/node_modules/through/LICENSE.MIT +24 -0
  320. package/generator/dead-code-review/node_modules/through/index.js +108 -0
  321. package/generator/dead-code-review/node_modules/through/package.json +36 -0
  322. package/generator/dead-code-review/node_modules/through/readme.markdown +64 -0
  323. package/generator/dead-code-review/node_modules/through/test/async.js +28 -0
  324. package/generator/dead-code-review/node_modules/through/test/auto-destroy.js +30 -0
  325. package/generator/dead-code-review/node_modules/through/test/buffering.js +71 -0
  326. package/generator/dead-code-review/node_modules/through/test/end.js +45 -0
  327. package/generator/dead-code-review/node_modules/through/test/index.js +133 -0
  328. package/generator/dead-code-review/node_modules/to-regex-range/LICENSE +21 -0
  329. package/generator/dead-code-review/node_modules/to-regex-range/README.md +305 -0
  330. package/generator/dead-code-review/node_modules/to-regex-range/index.js +288 -0
  331. package/generator/dead-code-review/node_modules/to-regex-range/package.json +88 -0
  332. package/generator/dead-code-review/node_modules/which/CHANGELOG.md +166 -0
  333. package/generator/dead-code-review/node_modules/which/LICENSE +15 -0
  334. package/generator/dead-code-review/node_modules/which/README.md +54 -0
  335. package/generator/dead-code-review/node_modules/which/bin/node-which +52 -0
  336. package/generator/dead-code-review/node_modules/which/package.json +43 -0
  337. package/generator/dead-code-review/node_modules/which/which.js +125 -0
  338. package/generator/dead-code-review/node_modules/wrappy/LICENSE +15 -0
  339. package/generator/dead-code-review/node_modules/wrappy/README.md +36 -0
  340. package/generator/dead-code-review/node_modules/wrappy/package.json +29 -0
  341. package/generator/dead-code-review/node_modules/wrappy/wrappy.js +33 -0
  342. package/generator/dead-code-review/node_modules/xmlbuilder/.nycrc +6 -0
  343. package/generator/dead-code-review/node_modules/xmlbuilder/.vscode/launch.json +23 -0
  344. package/generator/dead-code-review/node_modules/xmlbuilder/CHANGELOG.md +593 -0
  345. package/generator/dead-code-review/node_modules/xmlbuilder/LICENSE +21 -0
  346. package/generator/dead-code-review/node_modules/xmlbuilder/README.md +103 -0
  347. package/generator/dead-code-review/node_modules/xmlbuilder/lib/Derivation.js +10 -0
  348. package/generator/dead-code-review/node_modules/xmlbuilder/lib/DocumentPosition.js +12 -0
  349. package/generator/dead-code-review/node_modules/xmlbuilder/lib/NodeType.js +25 -0
  350. package/generator/dead-code-review/node_modules/xmlbuilder/lib/OperationType.js +11 -0
  351. package/generator/dead-code-review/node_modules/xmlbuilder/lib/Utility.js +88 -0
  352. package/generator/dead-code-review/node_modules/xmlbuilder/lib/WriterState.js +10 -0
  353. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLAttribute.js +130 -0
  354. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLCData.js +41 -0
  355. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLCharacterData.js +86 -0
  356. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLComment.js +41 -0
  357. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMConfiguration.js +80 -0
  358. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMErrorHandler.js +20 -0
  359. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMImplementation.js +55 -0
  360. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMStringList.js +44 -0
  361. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDAttList.js +66 -0
  362. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDElement.js +44 -0
  363. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDEntity.js +115 -0
  364. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDNotation.js +66 -0
  365. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDeclaration.js +51 -0
  366. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocType.js +235 -0
  367. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocument.js +282 -0
  368. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocumentCB.js +650 -0
  369. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocumentFragment.js +21 -0
  370. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDummy.js +39 -0
  371. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLElement.js +334 -0
  372. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNamedNodeMap.js +77 -0
  373. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNode.js +999 -0
  374. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNodeFilter.js +51 -0
  375. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNodeList.js +45 -0
  376. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLProcessingInstruction.js +56 -0
  377. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLRaw.js +40 -0
  378. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStreamWriter.js +209 -0
  379. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStringWriter.js +40 -0
  380. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStringifier.js +291 -0
  381. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLText.js +82 -0
  382. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLTypeInfo.js +23 -0
  383. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLUserDataHandler.js +27 -0
  384. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLWriterBase.js +485 -0
  385. package/generator/dead-code-review/node_modules/xmlbuilder/lib/index.js +120 -0
  386. package/generator/dead-code-review/node_modules/xmlbuilder/package.json +51 -0
  387. package/generator/dead-code-review/node_modules/xmlbuilder/perf/basic/escaping.coffee +244 -0
  388. package/generator/dead-code-review/node_modules/xmlbuilder/perf/basic/object.coffee +21 -0
  389. package/generator/dead-code-review/node_modules/xmlbuilder/perf/index.coffee +161 -0
  390. package/generator/dead-code-review/node_modules/xmlbuilder/perf/perf.list +11 -0
  391. package/generator/dead-code-review/node_modules/xmlbuilder/typings/index.d.ts +1771 -0
  392. package/generator/dead-code-review/src/Pages/Review/DeadCodeEliminateData.elm +1 -0
  393. package/generator/review/elm-stuff/0.19.1/d.dat +0 -0
  394. package/generator/review/elm-stuff/0.19.1/i.dat +0 -0
  395. package/generator/review/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-stuff/0.19.1/d.dat +0 -0
  397. 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
  398. 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
  399. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm.json +25 -0
  400. 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
  401. 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
  402. 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
  403. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm.json +41 -0
  404. package/generator/review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/d.dat +0 -0
  405. package/generator/review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/i.dat +0 -0
  406. package/generator/review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/o.dat +0 -0
  407. package/generator/review/elm-stuff/tests-0.19.1/elm.json +1 -1
  408. package/generator/review/elm-stuff/tests-0.19.1/js/Reporter.elm.js +1327 -122
  409. package/generator/review/elm-stuff/tests-0.19.1/js/Runner.elm.js +14575 -12632
  410. package/generator/review/elm-stuff/tests-0.19.1/js/node_runner.js +1 -1
  411. package/generator/review/elm-stuff/tests-0.19.1/js/node_supervisor.js +4 -4
  412. package/generator/review/elm.json +8 -8
  413. package/generator/src/build.js +7 -10
  414. package/generator/src/cli.js +124 -42
  415. package/generator/src/codegen.js +11 -10
  416. package/generator/src/compatibility-key.js +1 -1
  417. package/generator/src/elm-codegen.js +3 -0
  418. package/generator/src/render-worker.js +1 -1
  419. package/generator/src/render.js +222 -37
  420. package/generator/src/request-cache.js +1 -0
  421. package/generator/src/rewrite-elm-json.js +3 -3
  422. package/package.json +12 -12
  423. package/src/ApiRoute.elm +147 -9
  424. package/src/DataSource/Env.elm +27 -3
  425. package/src/DataSource.elm +11 -22
  426. package/src/Form.elm +32 -32
  427. package/src/Head.elm +112 -8
  428. package/src/MultiDict.elm +49 -0
  429. package/src/Pages/Generate.elm +4 -1
  430. package/src/Pages/GeneratorProgramConfig.elm +15 -0
  431. package/src/Pages/Internal/Platform/CompatibilityKey.elm +1 -1
  432. package/src/Pages/Internal/Platform/GeneratorApplication.elm +455 -0
  433. package/src/Pages/Internal/Platform/StaticResponses.elm +35 -5
  434. package/src/Pages/Internal/Script.elm +16 -0
  435. package/src/Pages/Manifest.elm +24 -0
  436. package/src/Pages/Script.elm +94 -0
  437. package/src/Pages/StaticHttpRequest.elm +9 -7
  438. package/src/PairingHeap.elm +137 -0
  439. package/src/Parser/Extra/String.elm +33 -0
  440. package/src/Parser/Extra.elm +69 -0
  441. package/src/ProgramTest/ComplexQuery.elm +360 -0
  442. package/src/ProgramTest/EffectSimulation.elm +122 -0
  443. package/src/ProgramTest/Failure.elm +367 -0
  444. package/src/ProgramTest/HtmlHighlighter.elm +116 -0
  445. package/src/ProgramTest/HtmlParserHacks.elm +58 -0
  446. package/src/ProgramTest/HtmlRenderer.elm +73 -0
  447. package/src/ProgramTest/Program.elm +30 -0
  448. package/src/ProgramTest/StringLines.elm +26 -0
  449. package/src/ProgramTest/TestHtmlHacks.elm +132 -0
  450. package/src/ProgramTest/TestHtmlParser.elm +201 -0
  451. package/src/ProgramTest.elm +2339 -0
  452. package/src/Query/Extra.elm +55 -0
  453. package/src/Result/Extra.elm +21 -0
  454. package/src/Server/Request.elm +2 -2
  455. package/src/SimulatedEffect/Cmd.elm +69 -0
  456. package/src/SimulatedEffect/Http.elm +330 -0
  457. package/src/SimulatedEffect/Navigation.elm +69 -0
  458. package/src/SimulatedEffect/Ports.elm +62 -0
  459. package/src/SimulatedEffect/Process.elm +24 -0
  460. package/src/SimulatedEffect/Sub.elm +48 -0
  461. package/src/SimulatedEffect/Task.elm +252 -0
  462. package/src/SimulatedEffect/Time.elm +25 -0
  463. package/src/SimulatedEffect.elm +42 -0
  464. package/src/String/Extra.elm +6 -0
  465. package/src/Test/Http.elm +145 -0
  466. package/src/TestResult.elm +35 -0
  467. package/src/TestState.elm +305 -0
  468. package/src/Url/Extra.elm +100 -0
  469. package/src/Vendored/Diff.elm +321 -0
  470. package/src/Vendored/Failure.elm +217 -0
  471. package/src/Vendored/FormatMonochrome.elm +44 -0
  472. package/src/Vendored/Highlightable.elm +53 -0
@@ -0,0 +1,360 @@
1
+ module ProgramTest.ComplexQuery exposing (ComplexQuery, Failure(..), FailureContext, FailureContext1(..), Highlight, Priority, check, exactlyOneOf, find, findButNot, run, simulate, succeed)
2
+
3
+ import Json.Encode as Json
4
+ import ProgramTest.TestHtmlHacks as TestHtmlHacks
5
+ import ProgramTest.TestHtmlParser as TestHtmlParser
6
+ import Result.Extra
7
+ import Set exposing (Set)
8
+ import Test.Html.Event
9
+ import Test.Html.Query as Query
10
+ import Test.Html.Selector as Selector exposing (Selector)
11
+ import Test.Runner
12
+
13
+
14
+ type ComplexQuery a
15
+ = QueryResult State Highlight (List FailureContext1) (Result Failure a)
16
+
17
+
18
+ succeed : a -> ComplexQuery a
19
+ succeed a =
20
+ QueryResult initState Set.empty [] (Ok a)
21
+
22
+
23
+ type alias Priority =
24
+ Int
25
+
26
+
27
+ type alias State =
28
+ { priority : Priority
29
+ }
30
+
31
+
32
+ initState : State
33
+ initState =
34
+ { priority = 0
35
+ }
36
+
37
+
38
+ type Failure
39
+ = QueryFailed (List (Result String String))
40
+ | SimulateFailed String
41
+ | NoMatches String (List ( String, Priority, ( List FailureContext1, Failure ) ))
42
+ | TooManyMatches String (List ( String, Priority, List FailureContext1 ))
43
+
44
+
45
+ type alias FailureContext =
46
+ List FailureContext1
47
+
48
+
49
+ type FailureContext1
50
+ = FindSucceeded (Maybe String) (() -> List String)
51
+ | CheckSucceeded String (List FailureContext1)
52
+ | Description (Result String String)
53
+
54
+
55
+ type alias Highlight =
56
+ Set String
57
+
58
+
59
+ run : ComplexQuery a -> ( Highlight, Result ( List FailureContext1, Failure ) a )
60
+ run (QueryResult _ highlight context result) =
61
+ ( highlight
62
+ , case result of
63
+ Ok a ->
64
+ Ok a
65
+
66
+ Err error ->
67
+ Err ( List.reverse context, error )
68
+ )
69
+
70
+
71
+ find : Maybe String -> List String -> List Selector -> ComplexQuery (Query.Single msg) -> ComplexQuery (Query.Single msg)
72
+ find description highlight selectors prev =
73
+ case prev of
74
+ QueryResult _ _ _ (Err _) ->
75
+ prev
76
+
77
+ QueryResult state prevHighlight prevContext (Ok source) ->
78
+ case Test.Runner.getFailureReason (Query.has [ Selector.all selectors ] source) of
79
+ Just _ ->
80
+ let
81
+ error =
82
+ firstErrorOf source
83
+ [ selectors
84
+ , [ Selector.all selectors ]
85
+ ]
86
+
87
+ context =
88
+ case description of
89
+ Nothing ->
90
+ []
91
+
92
+ Just desc ->
93
+ [ Description (Err desc) ]
94
+ in
95
+ QueryResult
96
+ { state
97
+ | priority = state.priority + countSuccesses error
98
+ }
99
+ (Set.union (Set.fromList highlight) prevHighlight)
100
+ (context ++ prevContext)
101
+ (Err (QueryFailed error))
102
+
103
+ Nothing ->
104
+ QueryResult
105
+ { state
106
+ | priority = state.priority + List.length selectors
107
+ }
108
+ (Set.union (Set.fromList highlight) prevHighlight)
109
+ (FindSucceeded description (\() -> TestHtmlHacks.getPassingSelectors selectors source) :: prevContext)
110
+ (Ok (Query.find selectors source))
111
+
112
+
113
+ exactlyOneOf : String -> List ( String, ComplexQuery a -> ComplexQuery b ) -> ComplexQuery a -> ComplexQuery b
114
+ exactlyOneOf description options prev =
115
+ case prev of
116
+ QueryResult state prevHighlight prevContext (Err err) ->
117
+ QueryResult state prevHighlight prevContext (Err err)
118
+
119
+ QueryResult state prevHighlight prevContext (Ok _) ->
120
+ let
121
+ results : List ( String, ComplexQuery b )
122
+ results =
123
+ List.map (Tuple.mapSecond (\option -> option prev)) options
124
+
125
+ successes : List ( String, ComplexQuery b )
126
+ successes =
127
+ List.filter (isSuccess << Tuple.second) results
128
+
129
+ isSuccess res =
130
+ case res of
131
+ QueryResult _ _ _ (Err _) ->
132
+ False
133
+
134
+ QueryResult _ _ _ (Ok _) ->
135
+ True
136
+
137
+ collectHighlight (QueryResult _ highlight _ _) =
138
+ highlight
139
+
140
+ highlights =
141
+ List.map (collectHighlight << Tuple.second) results
142
+ |> List.foldl Set.union Set.empty
143
+
144
+ collectError ( desc, QueryResult newState _ context result ) =
145
+ case result of
146
+ Ok _ ->
147
+ Nothing
148
+
149
+ Err x ->
150
+ Just
151
+ ( desc
152
+ , newState.priority
153
+ , ( List.reverse context, x )
154
+ )
155
+ in
156
+ case successes of
157
+ [ ( _, one ) ] ->
158
+ one
159
+
160
+ [] ->
161
+ let
162
+ failures =
163
+ List.filterMap collectError results
164
+ in
165
+ QueryResult
166
+ state
167
+ (Set.union highlights prevHighlight)
168
+ prevContext
169
+ (Err (NoMatches description failures))
170
+
171
+ many ->
172
+ let
173
+ matches =
174
+ List.map
175
+ (\( desc, QueryResult newState _ context _ ) ->
176
+ ( desc, newState.priority, context )
177
+ )
178
+ many
179
+ in
180
+ QueryResult
181
+ state
182
+ (Set.union highlights prevHighlight)
183
+ prevContext
184
+ (Err (TooManyMatches description matches))
185
+
186
+
187
+ {-|
188
+
189
+ - `good`: the primary selector that must match
190
+ - `bads`: a list of selectors that must NOT match
191
+ - `onError`: the selector to use to produce an error message if any of the checks fail
192
+
193
+ -}
194
+ findButNot :
195
+ Maybe String
196
+ -> List String
197
+ ->
198
+ { good : List Selector
199
+ , bads : List (List Selector)
200
+ , onError : List Selector
201
+ }
202
+ -> ComplexQuery (Query.Single msg)
203
+ -> ComplexQuery (Query.Single msg)
204
+ findButNot description highlight { good, bads, onError } prev =
205
+ case prev of
206
+ QueryResult _ _ _ (Err _) ->
207
+ prev
208
+
209
+ QueryResult state prevHighlight prevContext (Ok source) ->
210
+ -- This is tricky because Test.Html doesn't provide a way to search for an attribute being *not* present.
211
+ -- So we have to check if a selector we don't want *is* present, and manually force a failure if it is.
212
+ let
213
+ addDescription =
214
+ case description of
215
+ Nothing ->
216
+ []
217
+
218
+ Just desc ->
219
+ [ Description (Err desc) ]
220
+
221
+ checkBads : Priority -> List (List Selector) -> Query.Single msg -> ComplexQuery (Query.Single msg)
222
+ checkBads extraPriority bads_ found =
223
+ case bads_ of
224
+ [] ->
225
+ QueryResult
226
+ { state | priority = state.priority + extraPriority + 1 }
227
+ (Set.union (Set.fromList highlight) prevHighlight)
228
+ -- TODO: add the not bads to the context (or alternatively, add the "onErrors", but convert them all to successes)
229
+ (FindSucceeded description (\() -> TestHtmlHacks.getPassingSelectors good source) :: prevContext)
230
+ (Ok found)
231
+
232
+ nextBad :: rest ->
233
+ let
234
+ isBad =
235
+ Query.has [ Selector.all nextBad ] source
236
+ in
237
+ case Test.Runner.getFailureReason isBad of
238
+ Nothing ->
239
+ -- the element matches the bad selectors; produce a Query using the onError selectors that will fail that will show a reasonable failure message
240
+ let
241
+ error =
242
+ firstErrorOf source
243
+ [ good
244
+ , [ Selector.all good ]
245
+ , onError
246
+ , [ Selector.all onError ]
247
+ ]
248
+ in
249
+ QueryResult
250
+ { state | priority = state.priority + extraPriority + countSuccesses error }
251
+ (Set.union (Set.fromList highlight) prevHighlight)
252
+ (addDescription ++ prevContext)
253
+ (Err (QueryFailed error))
254
+
255
+ Just _ ->
256
+ -- the element we found is not bad; continue on to the next check
257
+ checkBads (extraPriority + List.length nextBad) rest found
258
+
259
+ isGood =
260
+ Query.has [ Selector.all good ] source
261
+ in
262
+ case Test.Runner.getFailureReason isGood of
263
+ Just _ ->
264
+ -- Couldn't find it, so report the best error message we can
265
+ let
266
+ error =
267
+ firstErrorOf source
268
+ [ good
269
+ , [ Selector.all good ]
270
+ ]
271
+ in
272
+ QueryResult
273
+ { state | priority = state.priority + countSuccesses error }
274
+ (Set.union (Set.fromList highlight) prevHighlight)
275
+ prevContext
276
+ (Err (QueryFailed error))
277
+
278
+ Nothing ->
279
+ Query.find good source
280
+ |> checkBads (List.length good) bads
281
+
282
+
283
+ simulate : ( String, Json.Value ) -> ComplexQuery (Query.Single msg) -> ComplexQuery msg
284
+ simulate event prev =
285
+ case prev of
286
+ QueryResult state prevHighlight prevContext (Err err) ->
287
+ QueryResult state prevHighlight prevContext (Err err)
288
+
289
+ QueryResult state prevHighlight prevContext (Ok source) ->
290
+ case
291
+ source
292
+ |> Test.Html.Event.simulate event
293
+ |> Test.Html.Event.toResult
294
+ of
295
+ Err message ->
296
+ QueryResult
297
+ state
298
+ prevHighlight
299
+ (Description (Err ("simulate " ++ Tuple.first event)) :: prevContext)
300
+ (Err (SimulateFailed (TestHtmlHacks.parseSimulateFailure message)))
301
+
302
+ Ok msg ->
303
+ QueryResult state prevHighlight prevContext (Ok msg)
304
+
305
+
306
+ {-| Ensure that the given query succeeds, but then ignore its result.
307
+ -}
308
+ check : String -> (ComplexQuery a -> ComplexQuery ignored) -> ComplexQuery a -> ComplexQuery a
309
+ check description checkQuery prev =
310
+ case prev of
311
+ QueryResult _ _ _ (Err _) ->
312
+ prev
313
+
314
+ QueryResult state prevHighlight prevContext (Ok source) ->
315
+ let
316
+ (QueryResult checkedState highlight checkContext checkResult) =
317
+ checkQuery (QueryResult state prevHighlight [] (Ok source))
318
+ in
319
+ case checkResult of
320
+ Err failure ->
321
+ QueryResult
322
+ checkedState
323
+ (Set.union highlight prevHighlight)
324
+ (Description (Err description) :: checkContext ++ prevContext)
325
+ (Err failure)
326
+
327
+ Ok _ ->
328
+ QueryResult
329
+ { state | priority = checkedState.priority }
330
+ (Set.union highlight prevHighlight)
331
+ (CheckSucceeded description checkContext :: prevContext)
332
+ (Ok source)
333
+
334
+
335
+ firstErrorOf : Query.Single msg -> List (List Selector) -> List (Result String String)
336
+ firstErrorOf source choices =
337
+ case choices of
338
+ [] ->
339
+ [ Err "PLEASE REPORT THIS AT <https://github.com/avh4/elm-program-test/issues>: firstErrorOf: asked to report an error but none of the choices failed" ]
340
+
341
+ next :: rest ->
342
+ case Test.Runner.getFailureReason (Query.has next source) of
343
+ Just reason ->
344
+ case TestHtmlHacks.parseFailureReportWithoutHtml reason.description of
345
+ Ok (TestHtmlParser.QueryFailure _ _ (TestHtmlParser.Has _ results)) ->
346
+ results
347
+
348
+ Ok (TestHtmlParser.EventFailure name _) ->
349
+ [ Err ("PLEASE REPORT THIS AT <https://github.com/avh4/elm-program-test/issues>: firstErrorOf: got unexpected EventFailure \"" ++ name ++ "\"") ]
350
+
351
+ Err err ->
352
+ [ Err ("PLEASE REPORT THIS AT <https://github.com/avh4/elm-program-test/issues>: firstErrorOf: couldn't parse failure report: " ++ err) ]
353
+
354
+ Nothing ->
355
+ firstErrorOf source rest
356
+
357
+
358
+ countSuccesses : List (Result String String) -> Int
359
+ countSuccesses results =
360
+ List.length (List.filter Result.Extra.isOk results)
@@ -0,0 +1,122 @@
1
+ module ProgramTest.EffectSimulation exposing
2
+ ( EffectSimulation
3
+ , SimulationState
4
+ , clearOutgoingPortValues
5
+ , emptySimulationState
6
+ , init
7
+ , outgoingPortValues
8
+ , queueTask
9
+ , stepWorkQueue
10
+ )
11
+
12
+ import Dict exposing (Dict)
13
+ import Fifo exposing (Fifo)
14
+ import Json.Encode
15
+ import MultiDict exposing (MultiDict)
16
+ import PairingHeap exposing (PairingHeap)
17
+ import SimulatedEffect exposing (SimulatedEffect, SimulatedTask)
18
+ import Time
19
+
20
+
21
+ type alias EffectSimulation msg effect =
22
+ { deconstructEffect :
23
+ effect
24
+ -> SimulatedEffect msg -- TODO: this should not be in here
25
+ , workQueue : Fifo (SimulatedTask msg msg)
26
+ , state : SimulationState msg
27
+ , outgoingPortValues : Dict String (List Json.Encode.Value)
28
+ }
29
+
30
+
31
+ init : (effect -> SimulatedEffect msg) -> EffectSimulation msg effect
32
+ init f =
33
+ { deconstructEffect = f
34
+ , workQueue = Fifo.empty
35
+ , state = emptySimulationState
36
+ , outgoingPortValues = Dict.empty
37
+ }
38
+
39
+
40
+ type alias SimulationState msg =
41
+ { http : MultiDict ( String, String ) (SimulatedEffect.HttpRequest msg msg)
42
+ , futureTasks : PairingHeap Int (() -> SimulatedTask msg msg)
43
+ , nowMs : Int
44
+ }
45
+
46
+
47
+ emptySimulationState : SimulationState msg
48
+ emptySimulationState =
49
+ { http = MultiDict.empty
50
+ , futureTasks = PairingHeap.empty
51
+ , nowMs = 0
52
+ }
53
+
54
+
55
+ queueTask : SimulatedTask msg msg -> EffectSimulation msg effect -> EffectSimulation msg effect
56
+ queueTask task simulation =
57
+ { simulation
58
+ | workQueue = Fifo.insert task simulation.workQueue
59
+ }
60
+
61
+
62
+ stepWorkQueue : EffectSimulation msg effect -> Maybe ( EffectSimulation msg effect, Maybe msg )
63
+ stepWorkQueue simulation =
64
+ case Fifo.remove simulation.workQueue of
65
+ ( Nothing, _ ) ->
66
+ Nothing
67
+
68
+ ( Just task, rest ) ->
69
+ let
70
+ ( newState, msg ) =
71
+ simulateTask task simulation.state
72
+ in
73
+ Just
74
+ ( { simulation
75
+ | workQueue = rest
76
+ , state = newState
77
+ }
78
+ , msg
79
+ )
80
+
81
+
82
+ simulateTask : SimulatedTask msg msg -> SimulationState msg -> ( SimulationState msg, Maybe msg )
83
+ simulateTask task simulationState =
84
+ case task of
85
+ SimulatedEffect.Succeed msg ->
86
+ ( simulationState, Just msg )
87
+
88
+ SimulatedEffect.Fail msg ->
89
+ ( simulationState, Just msg )
90
+
91
+ SimulatedEffect.HttpTask request ->
92
+ ( { simulationState
93
+ | http =
94
+ MultiDict.insert ( request.method, request.url )
95
+ request
96
+ simulationState.http
97
+ }
98
+ , Nothing
99
+ )
100
+
101
+ SimulatedEffect.SleepTask delay onResult ->
102
+ ( { simulationState
103
+ | futureTasks =
104
+ PairingHeap.insert (simulationState.nowMs + round delay) onResult simulationState.futureTasks
105
+ }
106
+ , Nothing
107
+ )
108
+
109
+ SimulatedEffect.NowTask onResult ->
110
+ simulateTask (onResult (Time.millisToPosix simulationState.nowMs)) simulationState
111
+
112
+
113
+ outgoingPortValues : String -> EffectSimulation msg effect -> List Json.Encode.Value
114
+ outgoingPortValues portName simulation =
115
+ Dict.get portName simulation.outgoingPortValues
116
+ |> Maybe.withDefault []
117
+ |> List.reverse
118
+
119
+
120
+ clearOutgoingPortValues : String -> EffectSimulation msg effect -> EffectSimulation msg effect
121
+ clearOutgoingPortValues portName simulation =
122
+ { simulation | outgoingPortValues = Dict.remove portName simulation.outgoingPortValues }