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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (501) hide show
  1. package/README.md +1 -1
  2. package/codegen/elm-pages-codegen.js +1497 -1130
  3. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmi +0 -0
  4. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmo +0 -0
  5. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateDataTest.elmo +0 -0
  6. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/d.dat +0 -0
  7. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/o.dat +0 -0
  8. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm.json +1 -1
  9. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/Reporter.elm.js +1 -1
  10. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/Runner.elm.js +152 -40
  11. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/node_runner.js +1 -1
  12. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/node_supervisor.js +4 -4
  13. package/generator/dead-code-review/src/Pages/Review/DeadCodeEliminateData.elm +58 -10
  14. package/generator/dead-code-review/tests/Pages/Review/DeadCodeEliminateDataTest.elm +45 -29
  15. package/generator/review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/d.dat +0 -0
  16. package/generator/review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/o.dat +0 -0
  17. package/generator/review/elm-stuff/tests-0.19.1/elm.json +1 -1
  18. package/generator/review/elm-stuff/tests-0.19.1/js/Reporter.elm.js +1 -1
  19. package/generator/review/elm-stuff/tests-0.19.1/js/Runner.elm.js +46 -5
  20. package/generator/review/elm-stuff/tests-0.19.1/js/node_runner.js +1 -1
  21. package/generator/review/elm-stuff/tests-0.19.1/js/node_supervisor.js +4 -4
  22. package/generator/src/RouteBuilder.elm +66 -52
  23. package/generator/src/SharedTemplate.elm +3 -2
  24. package/generator/src/SiteConfig.elm +3 -2
  25. package/generator/src/build.js +5 -5
  26. package/generator/src/cli.js +7 -6
  27. package/generator/src/compatibility-key.js +1 -1
  28. package/generator/src/dev-server.js +7 -7
  29. package/generator/src/error-formatter.js +7 -3
  30. package/generator/src/render-test.js +109 -0
  31. package/generator/src/render.js +83 -66
  32. package/generator/src/request-cache.js +181 -160
  33. package/generator/static-code/hmr.js +16 -2
  34. package/generator/template/app/Api.elm +2 -2
  35. package/generator/template/app/Route/Index.elm +3 -3
  36. package/generator/template/app/Shared.elm +3 -3
  37. package/generator/template/app/Site.elm +3 -3
  38. package/package.json +10 -10
  39. package/src/ApiRoute.elm +60 -57
  40. package/src/BackendTask/Env.elm +89 -0
  41. package/src/{DataSource → BackendTask}/File.elm +89 -43
  42. package/src/{DataSource → BackendTask}/Glob.elm +134 -125
  43. package/src/BackendTask/Http.elm +673 -0
  44. package/src/{DataSource → BackendTask}/Internal/Glob.elm +1 -1
  45. package/src/BackendTask/Internal/Request.elm +28 -0
  46. package/src/BackendTask/Port.elm +206 -0
  47. package/src/{DataSource.elm → BackendTask.elm} +223 -207
  48. package/src/Exception.elm +95 -0
  49. package/src/Form.elm +21 -20
  50. package/src/Head.elm +7 -7
  51. package/src/Internal/ApiRoute.elm +7 -5
  52. package/src/PageServerResponse.elm +6 -1
  53. package/src/Pages/Generate.elm +334 -165
  54. package/src/Pages/Internal/Platform/Cli.elm +432 -761
  55. package/src/Pages/Internal/Platform/Cli.elm.bak +22 -22
  56. package/src/Pages/Internal/Platform/CompatibilityKey.elm +1 -1
  57. package/src/Pages/Internal/Platform/Effect.elm +0 -1
  58. package/src/Pages/Internal/Platform/GeneratorApplication.elm +63 -147
  59. package/src/Pages/Internal/Platform/StaticResponses.elm +73 -301
  60. package/src/Pages/Internal/Platform/ToJsPayload.elm +4 -4
  61. package/src/Pages/Internal/Platform.elm +25 -31
  62. package/src/Pages/Internal/Script.elm +3 -2
  63. package/src/Pages/Internal/StaticHttpBody.elm +35 -1
  64. package/src/Pages/Manifest.elm +5 -4
  65. package/src/Pages/ProgramConfig.elm +8 -7
  66. package/src/Pages/Script.elm +28 -13
  67. package/src/Pages/SiteConfig.elm +3 -2
  68. package/src/Pages/StaticHttp/Request.elm +2 -2
  69. package/src/Pages/StaticHttpRequest.elm +23 -100
  70. package/src/RequestsAndPending.elm +8 -19
  71. package/src/Server/Request.elm +15 -14
  72. package/src/Server/Session.elm +34 -34
  73. package/src/Server/SetCookie.elm +1 -1
  74. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/dependencies.75364bef27ac5a049b87c3325f846fc6dbda23b8ed7187ed06748b96bb6a50a7.json +0 -1
  75. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Console-Text.elmi +0 -0
  76. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Console-Text.elmo +0 -0
  77. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmi +0 -0
  78. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmo +0 -0
  79. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateDataTest.elmi +0 -0
  80. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateDataTest.elmo +0 -0
  81. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Generated-Main.elmi +0 -0
  82. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Generated-Main.elmo +0 -0
  83. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format-Color.elmi +0 -0
  84. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format-Color.elmo +0 -0
  85. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format-Monochrome.elmi +0 -0
  86. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format-Monochrome.elmo +0 -0
  87. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format.elmi +0 -0
  88. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format.elmo +0 -0
  89. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console.elmi +0 -0
  90. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console.elmo +0 -0
  91. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Highlightable.elmi +0 -0
  92. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Highlightable.elmo +0 -0
  93. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-JUnit.elmi +0 -0
  94. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-JUnit.elmo +0 -0
  95. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Json.elmi +0 -0
  96. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Json.elmo +0 -0
  97. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Reporter.elmi +0 -0
  98. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Reporter.elmo +0 -0
  99. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-TestResults.elmi +0 -0
  100. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-TestResults.elmo +0 -0
  101. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-JsMessage.elmi +0 -0
  102. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-JsMessage.elmo +0 -0
  103. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node-Vendor-Console.elmi +0 -0
  104. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node-Vendor-Console.elmo +0 -0
  105. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node-Vendor-Diff.elmi +0 -0
  106. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node-Vendor-Diff.elmo +0 -0
  107. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node.elmi +0 -0
  108. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node.elmo +0 -0
  109. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/d.dat +0 -0
  110. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/i.dat +0 -0
  111. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/lock +0 -0
  112. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/o.dat +0 -0
  113. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm.json +0 -38
  114. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elmTestOutput.js +0 -29603
  115. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/package.json +0 -1
  116. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/src/Test/Generated/Main.elm +0 -27
  117. package/generator/dead-code-review/node_modules/.package-lock.json +0 -484
  118. package/generator/dead-code-review/node_modules/ansi-styles/index.d.ts +0 -345
  119. package/generator/dead-code-review/node_modules/ansi-styles/index.js +0 -163
  120. package/generator/dead-code-review/node_modules/ansi-styles/license +0 -9
  121. package/generator/dead-code-review/node_modules/ansi-styles/package.json +0 -56
  122. package/generator/dead-code-review/node_modules/ansi-styles/readme.md +0 -152
  123. package/generator/dead-code-review/node_modules/anymatch/LICENSE +0 -15
  124. package/generator/dead-code-review/node_modules/anymatch/README.md +0 -87
  125. package/generator/dead-code-review/node_modules/anymatch/index.d.ts +0 -20
  126. package/generator/dead-code-review/node_modules/anymatch/index.js +0 -104
  127. package/generator/dead-code-review/node_modules/anymatch/package.json +0 -48
  128. package/generator/dead-code-review/node_modules/balanced-match/.github/FUNDING.yml +0 -2
  129. package/generator/dead-code-review/node_modules/balanced-match/LICENSE.md +0 -21
  130. package/generator/dead-code-review/node_modules/balanced-match/README.md +0 -97
  131. package/generator/dead-code-review/node_modules/balanced-match/index.js +0 -62
  132. package/generator/dead-code-review/node_modules/balanced-match/package.json +0 -48
  133. package/generator/dead-code-review/node_modules/binary-extensions/binary-extensions.json +0 -260
  134. package/generator/dead-code-review/node_modules/binary-extensions/binary-extensions.json.d.ts +0 -3
  135. package/generator/dead-code-review/node_modules/binary-extensions/index.d.ts +0 -14
  136. package/generator/dead-code-review/node_modules/binary-extensions/index.js +0 -1
  137. package/generator/dead-code-review/node_modules/binary-extensions/license +0 -9
  138. package/generator/dead-code-review/node_modules/binary-extensions/package.json +0 -38
  139. package/generator/dead-code-review/node_modules/binary-extensions/readme.md +0 -41
  140. package/generator/dead-code-review/node_modules/brace-expansion/.github/FUNDING.yml +0 -2
  141. package/generator/dead-code-review/node_modules/brace-expansion/LICENSE +0 -21
  142. package/generator/dead-code-review/node_modules/brace-expansion/README.md +0 -135
  143. package/generator/dead-code-review/node_modules/brace-expansion/index.js +0 -203
  144. package/generator/dead-code-review/node_modules/brace-expansion/package.json +0 -46
  145. package/generator/dead-code-review/node_modules/braces/CHANGELOG.md +0 -184
  146. package/generator/dead-code-review/node_modules/braces/LICENSE +0 -21
  147. package/generator/dead-code-review/node_modules/braces/README.md +0 -593
  148. package/generator/dead-code-review/node_modules/braces/index.js +0 -170
  149. package/generator/dead-code-review/node_modules/braces/lib/compile.js +0 -57
  150. package/generator/dead-code-review/node_modules/braces/lib/constants.js +0 -57
  151. package/generator/dead-code-review/node_modules/braces/lib/expand.js +0 -113
  152. package/generator/dead-code-review/node_modules/braces/lib/parse.js +0 -333
  153. package/generator/dead-code-review/node_modules/braces/lib/stringify.js +0 -32
  154. package/generator/dead-code-review/node_modules/braces/lib/utils.js +0 -112
  155. package/generator/dead-code-review/node_modules/braces/package.json +0 -77
  156. package/generator/dead-code-review/node_modules/chalk/index.d.ts +0 -415
  157. package/generator/dead-code-review/node_modules/chalk/license +0 -9
  158. package/generator/dead-code-review/node_modules/chalk/package.json +0 -68
  159. package/generator/dead-code-review/node_modules/chalk/readme.md +0 -341
  160. package/generator/dead-code-review/node_modules/chalk/source/index.js +0 -229
  161. package/generator/dead-code-review/node_modules/chalk/source/templates.js +0 -134
  162. package/generator/dead-code-review/node_modules/chalk/source/util.js +0 -39
  163. package/generator/dead-code-review/node_modules/chokidar/LICENSE +0 -21
  164. package/generator/dead-code-review/node_modules/chokidar/README.md +0 -308
  165. package/generator/dead-code-review/node_modules/chokidar/index.js +0 -973
  166. package/generator/dead-code-review/node_modules/chokidar/lib/constants.js +0 -65
  167. package/generator/dead-code-review/node_modules/chokidar/lib/fsevents-handler.js +0 -524
  168. package/generator/dead-code-review/node_modules/chokidar/lib/nodefs-handler.js +0 -654
  169. package/generator/dead-code-review/node_modules/chokidar/package.json +0 -85
  170. package/generator/dead-code-review/node_modules/chokidar/types/index.d.ts +0 -188
  171. package/generator/dead-code-review/node_modules/color-convert/CHANGELOG.md +0 -54
  172. package/generator/dead-code-review/node_modules/color-convert/LICENSE +0 -21
  173. package/generator/dead-code-review/node_modules/color-convert/README.md +0 -68
  174. package/generator/dead-code-review/node_modules/color-convert/conversions.js +0 -839
  175. package/generator/dead-code-review/node_modules/color-convert/index.js +0 -81
  176. package/generator/dead-code-review/node_modules/color-convert/package.json +0 -48
  177. package/generator/dead-code-review/node_modules/color-convert/route.js +0 -97
  178. package/generator/dead-code-review/node_modules/color-name/LICENSE +0 -8
  179. package/generator/dead-code-review/node_modules/color-name/README.md +0 -11
  180. package/generator/dead-code-review/node_modules/color-name/index.js +0 -152
  181. package/generator/dead-code-review/node_modules/color-name/package.json +0 -28
  182. package/generator/dead-code-review/node_modules/commander/LICENSE +0 -22
  183. package/generator/dead-code-review/node_modules/commander/Readme.md +0 -1118
  184. package/generator/dead-code-review/node_modules/commander/esm.mjs +0 -16
  185. package/generator/dead-code-review/node_modules/commander/index.js +0 -27
  186. package/generator/dead-code-review/node_modules/commander/lib/argument.js +0 -147
  187. package/generator/dead-code-review/node_modules/commander/lib/command.js +0 -2160
  188. package/generator/dead-code-review/node_modules/commander/lib/error.js +0 -45
  189. package/generator/dead-code-review/node_modules/commander/lib/help.js +0 -406
  190. package/generator/dead-code-review/node_modules/commander/lib/option.js +0 -326
  191. package/generator/dead-code-review/node_modules/commander/lib/suggestSimilar.js +0 -100
  192. package/generator/dead-code-review/node_modules/commander/package-support.json +0 -16
  193. package/generator/dead-code-review/node_modules/commander/package.json +0 -80
  194. package/generator/dead-code-review/node_modules/commander/typings/index.d.ts +0 -881
  195. package/generator/dead-code-review/node_modules/cross-spawn/CHANGELOG.md +0 -130
  196. package/generator/dead-code-review/node_modules/cross-spawn/LICENSE +0 -21
  197. package/generator/dead-code-review/node_modules/cross-spawn/README.md +0 -96
  198. package/generator/dead-code-review/node_modules/cross-spawn/index.js +0 -39
  199. package/generator/dead-code-review/node_modules/cross-spawn/lib/enoent.js +0 -59
  200. package/generator/dead-code-review/node_modules/cross-spawn/lib/parse.js +0 -91
  201. package/generator/dead-code-review/node_modules/cross-spawn/lib/util/escape.js +0 -45
  202. package/generator/dead-code-review/node_modules/cross-spawn/lib/util/readShebang.js +0 -23
  203. package/generator/dead-code-review/node_modules/cross-spawn/lib/util/resolveCommand.js +0 -52
  204. package/generator/dead-code-review/node_modules/cross-spawn/package.json +0 -73
  205. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/LICENSE +0 -373
  206. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/README.md +0 -64
  207. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm.d.ts +0 -22
  208. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm.js +0 -419
  209. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm_bg.wasm +0 -0
  210. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/package.json +0 -27
  211. package/generator/dead-code-review/node_modules/elm-test/LICENSE +0 -27
  212. package/generator/dead-code-review/node_modules/elm-test/README.md +0 -192
  213. package/generator/dead-code-review/node_modules/elm-test/bin/elm-test +0 -3
  214. package/generator/dead-code-review/node_modules/elm-test/elm/elm.json +0 -25
  215. package/generator/dead-code-review/node_modules/elm-test/elm/src/Console/Text.elm +0 -217
  216. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format/Color.elm +0 -30
  217. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format/Monochrome.elm +0 -39
  218. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format.elm +0 -212
  219. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console.elm +0 -207
  220. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Highlightable.elm +0 -48
  221. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/JUnit.elm +0 -161
  222. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Json.elm +0 -158
  223. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Reporter.elm +0 -53
  224. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/TestResults.elm +0 -113
  225. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/JsMessage.elm +0 -38
  226. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node/Vendor/Console.elm +0 -230
  227. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node/Vendor/Diff.elm +0 -326
  228. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node.elm +0 -440
  229. package/generator/dead-code-review/node_modules/elm-test/lib/Compile.js +0 -110
  230. package/generator/dead-code-review/node_modules/elm-test/lib/DependencyProvider.js +0 -343
  231. package/generator/dead-code-review/node_modules/elm-test/lib/ElmCompiler.js +0 -109
  232. package/generator/dead-code-review/node_modules/elm-test/lib/ElmHome.js +0 -47
  233. package/generator/dead-code-review/node_modules/elm-test/lib/ElmJson.js +0 -194
  234. package/generator/dead-code-review/node_modules/elm-test/lib/FindTests.js +0 -276
  235. package/generator/dead-code-review/node_modules/elm-test/lib/Generate.js +0 -294
  236. package/generator/dead-code-review/node_modules/elm-test/lib/Install.js +0 -290
  237. package/generator/dead-code-review/node_modules/elm-test/lib/Parser.js +0 -941
  238. package/generator/dead-code-review/node_modules/elm-test/lib/Project.js +0 -117
  239. package/generator/dead-code-review/node_modules/elm-test/lib/Report.js +0 -23
  240. package/generator/dead-code-review/node_modules/elm-test/lib/RunTests.js +0 -322
  241. package/generator/dead-code-review/node_modules/elm-test/lib/Solve.js +0 -76
  242. package/generator/dead-code-review/node_modules/elm-test/lib/Supervisor.js +0 -294
  243. package/generator/dead-code-review/node_modules/elm-test/lib/SyncGet.js +0 -45
  244. package/generator/dead-code-review/node_modules/elm-test/lib/SyncGetWorker.js +0 -36
  245. package/generator/dead-code-review/node_modules/elm-test/lib/elm-test.js +0 -318
  246. package/generator/dead-code-review/node_modules/elm-test/package.json +0 -69
  247. package/generator/dead-code-review/node_modules/elm-test/templates/after.js +0 -29
  248. package/generator/dead-code-review/node_modules/elm-test/templates/before.js +0 -58
  249. package/generator/dead-code-review/node_modules/elm-test/templates/tests/Example.elm +0 -10
  250. package/generator/dead-code-review/node_modules/fill-range/LICENSE +0 -21
  251. package/generator/dead-code-review/node_modules/fill-range/README.md +0 -237
  252. package/generator/dead-code-review/node_modules/fill-range/index.js +0 -249
  253. package/generator/dead-code-review/node_modules/fill-range/package.json +0 -69
  254. package/generator/dead-code-review/node_modules/fs.realpath/LICENSE +0 -43
  255. package/generator/dead-code-review/node_modules/fs.realpath/README.md +0 -33
  256. package/generator/dead-code-review/node_modules/fs.realpath/index.js +0 -66
  257. package/generator/dead-code-review/node_modules/fs.realpath/old.js +0 -303
  258. package/generator/dead-code-review/node_modules/fs.realpath/package.json +0 -26
  259. package/generator/dead-code-review/node_modules/fsevents/LICENSE +0 -22
  260. package/generator/dead-code-review/node_modules/fsevents/README.md +0 -83
  261. package/generator/dead-code-review/node_modules/fsevents/fsevents.d.ts +0 -46
  262. package/generator/dead-code-review/node_modules/fsevents/fsevents.js +0 -82
  263. package/generator/dead-code-review/node_modules/fsevents/fsevents.node +0 -0
  264. package/generator/dead-code-review/node_modules/fsevents/package.json +0 -62
  265. package/generator/dead-code-review/node_modules/glob/LICENSE +0 -15
  266. package/generator/dead-code-review/node_modules/glob/README.md +0 -378
  267. package/generator/dead-code-review/node_modules/glob/common.js +0 -240
  268. package/generator/dead-code-review/node_modules/glob/glob.js +0 -790
  269. package/generator/dead-code-review/node_modules/glob/package.json +0 -55
  270. package/generator/dead-code-review/node_modules/glob/sync.js +0 -486
  271. package/generator/dead-code-review/node_modules/glob-parent/CHANGELOG.md +0 -110
  272. package/generator/dead-code-review/node_modules/glob-parent/LICENSE +0 -15
  273. package/generator/dead-code-review/node_modules/glob-parent/README.md +0 -137
  274. package/generator/dead-code-review/node_modules/glob-parent/index.js +0 -42
  275. package/generator/dead-code-review/node_modules/glob-parent/package.json +0 -48
  276. package/generator/dead-code-review/node_modules/graceful-fs/LICENSE +0 -15
  277. package/generator/dead-code-review/node_modules/graceful-fs/README.md +0 -143
  278. package/generator/dead-code-review/node_modules/graceful-fs/clone.js +0 -23
  279. package/generator/dead-code-review/node_modules/graceful-fs/graceful-fs.js +0 -448
  280. package/generator/dead-code-review/node_modules/graceful-fs/legacy-streams.js +0 -118
  281. package/generator/dead-code-review/node_modules/graceful-fs/package.json +0 -50
  282. package/generator/dead-code-review/node_modules/graceful-fs/polyfills.js +0 -355
  283. package/generator/dead-code-review/node_modules/has-flag/index.d.ts +0 -39
  284. package/generator/dead-code-review/node_modules/has-flag/index.js +0 -8
  285. package/generator/dead-code-review/node_modules/has-flag/license +0 -9
  286. package/generator/dead-code-review/node_modules/has-flag/package.json +0 -46
  287. package/generator/dead-code-review/node_modules/has-flag/readme.md +0 -89
  288. package/generator/dead-code-review/node_modules/inflight/LICENSE +0 -15
  289. package/generator/dead-code-review/node_modules/inflight/README.md +0 -37
  290. package/generator/dead-code-review/node_modules/inflight/inflight.js +0 -54
  291. package/generator/dead-code-review/node_modules/inflight/package.json +0 -29
  292. package/generator/dead-code-review/node_modules/inherits/LICENSE +0 -16
  293. package/generator/dead-code-review/node_modules/inherits/README.md +0 -42
  294. package/generator/dead-code-review/node_modules/inherits/inherits.js +0 -9
  295. package/generator/dead-code-review/node_modules/inherits/inherits_browser.js +0 -27
  296. package/generator/dead-code-review/node_modules/inherits/package.json +0 -29
  297. package/generator/dead-code-review/node_modules/is-binary-path/index.d.ts +0 -17
  298. package/generator/dead-code-review/node_modules/is-binary-path/index.js +0 -7
  299. package/generator/dead-code-review/node_modules/is-binary-path/license +0 -9
  300. package/generator/dead-code-review/node_modules/is-binary-path/package.json +0 -40
  301. package/generator/dead-code-review/node_modules/is-binary-path/readme.md +0 -34
  302. package/generator/dead-code-review/node_modules/is-extglob/LICENSE +0 -21
  303. package/generator/dead-code-review/node_modules/is-extglob/README.md +0 -107
  304. package/generator/dead-code-review/node_modules/is-extglob/index.js +0 -20
  305. package/generator/dead-code-review/node_modules/is-extglob/package.json +0 -69
  306. package/generator/dead-code-review/node_modules/is-glob/LICENSE +0 -21
  307. package/generator/dead-code-review/node_modules/is-glob/README.md +0 -206
  308. package/generator/dead-code-review/node_modules/is-glob/index.js +0 -150
  309. package/generator/dead-code-review/node_modules/is-glob/package.json +0 -81
  310. package/generator/dead-code-review/node_modules/is-number/LICENSE +0 -21
  311. package/generator/dead-code-review/node_modules/is-number/README.md +0 -187
  312. package/generator/dead-code-review/node_modules/is-number/index.js +0 -18
  313. package/generator/dead-code-review/node_modules/is-number/package.json +0 -82
  314. package/generator/dead-code-review/node_modules/isexe/LICENSE +0 -15
  315. package/generator/dead-code-review/node_modules/isexe/README.md +0 -51
  316. package/generator/dead-code-review/node_modules/isexe/index.js +0 -57
  317. package/generator/dead-code-review/node_modules/isexe/mode.js +0 -41
  318. package/generator/dead-code-review/node_modules/isexe/package.json +0 -31
  319. package/generator/dead-code-review/node_modules/isexe/test/basic.js +0 -221
  320. package/generator/dead-code-review/node_modules/isexe/windows.js +0 -42
  321. package/generator/dead-code-review/node_modules/minimatch/LICENSE +0 -15
  322. package/generator/dead-code-review/node_modules/minimatch/README.md +0 -259
  323. package/generator/dead-code-review/node_modules/minimatch/lib/path.js +0 -4
  324. package/generator/dead-code-review/node_modules/minimatch/minimatch.js +0 -906
  325. package/generator/dead-code-review/node_modules/minimatch/package.json +0 -32
  326. package/generator/dead-code-review/node_modules/normalize-path/LICENSE +0 -21
  327. package/generator/dead-code-review/node_modules/normalize-path/README.md +0 -127
  328. package/generator/dead-code-review/node_modules/normalize-path/index.js +0 -35
  329. package/generator/dead-code-review/node_modules/normalize-path/package.json +0 -77
  330. package/generator/dead-code-review/node_modules/once/LICENSE +0 -15
  331. package/generator/dead-code-review/node_modules/once/README.md +0 -79
  332. package/generator/dead-code-review/node_modules/once/once.js +0 -42
  333. package/generator/dead-code-review/node_modules/once/package.json +0 -33
  334. package/generator/dead-code-review/node_modules/path-key/index.d.ts +0 -40
  335. package/generator/dead-code-review/node_modules/path-key/index.js +0 -16
  336. package/generator/dead-code-review/node_modules/path-key/license +0 -9
  337. package/generator/dead-code-review/node_modules/path-key/package.json +0 -39
  338. package/generator/dead-code-review/node_modules/path-key/readme.md +0 -61
  339. package/generator/dead-code-review/node_modules/picomatch/CHANGELOG.md +0 -136
  340. package/generator/dead-code-review/node_modules/picomatch/LICENSE +0 -21
  341. package/generator/dead-code-review/node_modules/picomatch/README.md +0 -708
  342. package/generator/dead-code-review/node_modules/picomatch/index.js +0 -3
  343. package/generator/dead-code-review/node_modules/picomatch/lib/constants.js +0 -179
  344. package/generator/dead-code-review/node_modules/picomatch/lib/parse.js +0 -1091
  345. package/generator/dead-code-review/node_modules/picomatch/lib/picomatch.js +0 -342
  346. package/generator/dead-code-review/node_modules/picomatch/lib/scan.js +0 -391
  347. package/generator/dead-code-review/node_modules/picomatch/lib/utils.js +0 -64
  348. package/generator/dead-code-review/node_modules/picomatch/package.json +0 -81
  349. package/generator/dead-code-review/node_modules/readdirp/LICENSE +0 -21
  350. package/generator/dead-code-review/node_modules/readdirp/README.md +0 -122
  351. package/generator/dead-code-review/node_modules/readdirp/index.d.ts +0 -43
  352. package/generator/dead-code-review/node_modules/readdirp/index.js +0 -287
  353. package/generator/dead-code-review/node_modules/readdirp/package.json +0 -122
  354. package/generator/dead-code-review/node_modules/shebang-command/index.js +0 -19
  355. package/generator/dead-code-review/node_modules/shebang-command/license +0 -9
  356. package/generator/dead-code-review/node_modules/shebang-command/package.json +0 -34
  357. package/generator/dead-code-review/node_modules/shebang-command/readme.md +0 -34
  358. package/generator/dead-code-review/node_modules/shebang-regex/index.d.ts +0 -22
  359. package/generator/dead-code-review/node_modules/shebang-regex/index.js +0 -2
  360. package/generator/dead-code-review/node_modules/shebang-regex/license +0 -9
  361. package/generator/dead-code-review/node_modules/shebang-regex/package.json +0 -35
  362. package/generator/dead-code-review/node_modules/shebang-regex/readme.md +0 -33
  363. package/generator/dead-code-review/node_modules/split/.travis.yml +0 -3
  364. package/generator/dead-code-review/node_modules/split/LICENCE +0 -22
  365. package/generator/dead-code-review/node_modules/split/examples/pretty.js +0 -26
  366. package/generator/dead-code-review/node_modules/split/index.js +0 -63
  367. package/generator/dead-code-review/node_modules/split/package.json +0 -30
  368. package/generator/dead-code-review/node_modules/split/readme.markdown +0 -72
  369. package/generator/dead-code-review/node_modules/split/test/options.asynct.js +0 -46
  370. package/generator/dead-code-review/node_modules/split/test/partitioned_unicode.js +0 -34
  371. package/generator/dead-code-review/node_modules/split/test/split.asynct.js +0 -137
  372. package/generator/dead-code-review/node_modules/split/test/try_catch.asynct.js +0 -51
  373. package/generator/dead-code-review/node_modules/supports-color/browser.js +0 -5
  374. package/generator/dead-code-review/node_modules/supports-color/index.js +0 -135
  375. package/generator/dead-code-review/node_modules/supports-color/license +0 -9
  376. package/generator/dead-code-review/node_modules/supports-color/package.json +0 -53
  377. package/generator/dead-code-review/node_modules/supports-color/readme.md +0 -76
  378. package/generator/dead-code-review/node_modules/through/.travis.yml +0 -5
  379. package/generator/dead-code-review/node_modules/through/LICENSE.APACHE2 +0 -15
  380. package/generator/dead-code-review/node_modules/through/LICENSE.MIT +0 -24
  381. package/generator/dead-code-review/node_modules/through/index.js +0 -108
  382. package/generator/dead-code-review/node_modules/through/package.json +0 -36
  383. package/generator/dead-code-review/node_modules/through/readme.markdown +0 -64
  384. package/generator/dead-code-review/node_modules/through/test/async.js +0 -28
  385. package/generator/dead-code-review/node_modules/through/test/auto-destroy.js +0 -30
  386. package/generator/dead-code-review/node_modules/through/test/buffering.js +0 -71
  387. package/generator/dead-code-review/node_modules/through/test/end.js +0 -45
  388. package/generator/dead-code-review/node_modules/through/test/index.js +0 -133
  389. package/generator/dead-code-review/node_modules/to-regex-range/LICENSE +0 -21
  390. package/generator/dead-code-review/node_modules/to-regex-range/README.md +0 -305
  391. package/generator/dead-code-review/node_modules/to-regex-range/index.js +0 -288
  392. package/generator/dead-code-review/node_modules/to-regex-range/package.json +0 -88
  393. package/generator/dead-code-review/node_modules/which/CHANGELOG.md +0 -166
  394. package/generator/dead-code-review/node_modules/which/LICENSE +0 -15
  395. package/generator/dead-code-review/node_modules/which/README.md +0 -54
  396. package/generator/dead-code-review/node_modules/which/bin/node-which +0 -52
  397. package/generator/dead-code-review/node_modules/which/package.json +0 -43
  398. package/generator/dead-code-review/node_modules/which/which.js +0 -125
  399. package/generator/dead-code-review/node_modules/wrappy/LICENSE +0 -15
  400. package/generator/dead-code-review/node_modules/wrappy/README.md +0 -36
  401. package/generator/dead-code-review/node_modules/wrappy/package.json +0 -29
  402. package/generator/dead-code-review/node_modules/wrappy/wrappy.js +0 -33
  403. package/generator/dead-code-review/node_modules/xmlbuilder/.nycrc +0 -6
  404. package/generator/dead-code-review/node_modules/xmlbuilder/.vscode/launch.json +0 -23
  405. package/generator/dead-code-review/node_modules/xmlbuilder/CHANGELOG.md +0 -593
  406. package/generator/dead-code-review/node_modules/xmlbuilder/LICENSE +0 -21
  407. package/generator/dead-code-review/node_modules/xmlbuilder/README.md +0 -103
  408. package/generator/dead-code-review/node_modules/xmlbuilder/lib/Derivation.js +0 -10
  409. package/generator/dead-code-review/node_modules/xmlbuilder/lib/DocumentPosition.js +0 -12
  410. package/generator/dead-code-review/node_modules/xmlbuilder/lib/NodeType.js +0 -25
  411. package/generator/dead-code-review/node_modules/xmlbuilder/lib/OperationType.js +0 -11
  412. package/generator/dead-code-review/node_modules/xmlbuilder/lib/Utility.js +0 -88
  413. package/generator/dead-code-review/node_modules/xmlbuilder/lib/WriterState.js +0 -10
  414. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLAttribute.js +0 -130
  415. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLCData.js +0 -41
  416. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLCharacterData.js +0 -86
  417. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLComment.js +0 -41
  418. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMConfiguration.js +0 -80
  419. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMErrorHandler.js +0 -20
  420. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMImplementation.js +0 -55
  421. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMStringList.js +0 -44
  422. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDAttList.js +0 -66
  423. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDElement.js +0 -44
  424. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDEntity.js +0 -115
  425. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDNotation.js +0 -66
  426. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDeclaration.js +0 -51
  427. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocType.js +0 -235
  428. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocument.js +0 -282
  429. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocumentCB.js +0 -650
  430. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocumentFragment.js +0 -21
  431. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDummy.js +0 -39
  432. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLElement.js +0 -334
  433. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNamedNodeMap.js +0 -77
  434. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNode.js +0 -999
  435. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNodeFilter.js +0 -51
  436. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNodeList.js +0 -45
  437. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLProcessingInstruction.js +0 -56
  438. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLRaw.js +0 -40
  439. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStreamWriter.js +0 -209
  440. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStringWriter.js +0 -40
  441. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStringifier.js +0 -291
  442. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLText.js +0 -82
  443. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLTypeInfo.js +0 -23
  444. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLUserDataHandler.js +0 -27
  445. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLWriterBase.js +0 -485
  446. package/generator/dead-code-review/node_modules/xmlbuilder/lib/index.js +0 -120
  447. package/generator/dead-code-review/node_modules/xmlbuilder/package.json +0 -51
  448. package/generator/dead-code-review/node_modules/xmlbuilder/perf/basic/escaping.coffee +0 -244
  449. package/generator/dead-code-review/node_modules/xmlbuilder/perf/basic/object.coffee +0 -21
  450. package/generator/dead-code-review/node_modules/xmlbuilder/perf/index.coffee +0 -161
  451. package/generator/dead-code-review/node_modules/xmlbuilder/perf/perf.list +0 -11
  452. package/generator/dead-code-review/node_modules/xmlbuilder/typings/index.d.ts +0 -1771
  453. package/generator/review/elm-stuff/0.19.1/d.dat +0 -0
  454. package/generator/review/elm-stuff/0.19.1/i.dat +0 -0
  455. package/generator/review/elm-stuff/0.19.1/o.dat +0 -0
  456. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm-stuff/0.19.1/d.dat +0 -0
  457. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm-stuff/0.19.1/i.dat +0 -0
  458. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm-stuff/0.19.1/o.dat +0 -0
  459. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm.json +0 -25
  460. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm-stuff/0.19.1/d.dat +0 -0
  461. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm-stuff/0.19.1/i.dat +0 -0
  462. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm-stuff/0.19.1/o.dat +0 -0
  463. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm.json +0 -41
  464. package/src/DataSource/Env.elm +0 -62
  465. package/src/DataSource/Http.elm +0 -446
  466. package/src/DataSource/Internal/Request.elm +0 -20
  467. package/src/DataSource/Port.elm +0 -90
  468. package/src/MultiDict.elm +0 -49
  469. package/src/PairingHeap.elm +0 -137
  470. package/src/Parser/Extra/String.elm +0 -33
  471. package/src/Parser/Extra.elm +0 -69
  472. package/src/ProgramTest/ComplexQuery.elm +0 -360
  473. package/src/ProgramTest/EffectSimulation.elm +0 -122
  474. package/src/ProgramTest/Failure.elm +0 -367
  475. package/src/ProgramTest/HtmlHighlighter.elm +0 -116
  476. package/src/ProgramTest/HtmlParserHacks.elm +0 -58
  477. package/src/ProgramTest/HtmlRenderer.elm +0 -73
  478. package/src/ProgramTest/Program.elm +0 -30
  479. package/src/ProgramTest/StringLines.elm +0 -26
  480. package/src/ProgramTest/TestHtmlHacks.elm +0 -132
  481. package/src/ProgramTest/TestHtmlParser.elm +0 -201
  482. package/src/ProgramTest.elm +0 -2339
  483. package/src/Query/Extra.elm +0 -55
  484. package/src/SimulatedEffect/Cmd.elm +0 -69
  485. package/src/SimulatedEffect/Http.elm +0 -330
  486. package/src/SimulatedEffect/Navigation.elm +0 -69
  487. package/src/SimulatedEffect/Ports.elm +0 -62
  488. package/src/SimulatedEffect/Process.elm +0 -24
  489. package/src/SimulatedEffect/Sub.elm +0 -48
  490. package/src/SimulatedEffect/Task.elm +0 -252
  491. package/src/SimulatedEffect/Time.elm +0 -25
  492. package/src/SimulatedEffect.elm +0 -42
  493. package/src/String/Extra.elm +0 -6
  494. package/src/Test/Http.elm +0 -145
  495. package/src/TestResult.elm +0 -35
  496. package/src/TestState.elm +0 -305
  497. package/src/Url/Extra.elm +0 -100
  498. package/src/Vendored/Diff.elm +0 -321
  499. package/src/Vendored/Failure.elm +0 -217
  500. package/src/Vendored/FormatMonochrome.elm +0 -44
  501. package/src/Vendored/Highlightable.elm +0 -53
@@ -0,0 +1,28 @@
1
+ module BackendTask.Internal.Request exposing (request)
2
+
3
+ import BackendTask exposing (BackendTask)
4
+ import BackendTask.Http exposing (Body, Expect)
5
+
6
+
7
+ request :
8
+ { name : String
9
+ , body : Body
10
+ , expect : Expect a
11
+ }
12
+ -> BackendTask error a
13
+ request ({ name, body, expect } as params) =
14
+ -- elm-review: known-unoptimized-recursion
15
+ BackendTask.Http.request
16
+ { url = "elm-pages-internal://" ++ name
17
+ , method = "GET"
18
+ , headers = []
19
+ , body = body
20
+ , timeoutInMs = Nothing
21
+ , retries = Nothing
22
+ }
23
+ expect
24
+ |> BackendTask.onError
25
+ (\_ ->
26
+ -- TODO avoid crash here, this should be handled as an internal error
27
+ request params
28
+ )
@@ -0,0 +1,206 @@
1
+ module BackendTask.Port exposing
2
+ ( get
3
+ , Error(..)
4
+ )
5
+
6
+ {-| In a vanilla Elm application, ports let you either send or receive JSON data between your Elm application and the JavaScript context in the user's browser at runtime.
7
+
8
+ With `BackendTask.Port`, you send and receive JSON to JavaScript running in NodeJS. As with any `BackendTask`, Port BackendTask's are either run at build-time (for pre-rendered routes) or at request-time (for server-rendered routes). See [`BackendTask`](BackendTask) for more about the
9
+ lifecycle of `BackendTask`'s.
10
+
11
+ This means that you can call shell scripts, run NPM packages that are installed, or anything else you could do with NodeJS to perform custom side-effects, get some data, or both.
12
+
13
+ A `BackendTask.Port` will call an async JavaScript function with the given name from the definition in a file called `port-data-source.js` in your project's root directory. The function receives the input JSON value, and the Decoder is used to decode the return value of the async function.
14
+
15
+ @docs get
16
+
17
+ Here is the Elm code and corresponding JavaScript definition for getting an environment variable (or an `Exception BackendTask.Port.Error` if it isn't found). In this example,
18
+ we're using `BackendTask.throw` to let the framework treat that as an unexpected exception, but we could also handle the possible failures of the `Exception` (see [`Exception`](Exception)).
19
+
20
+ import BackendTask exposing (BackendTask)
21
+ import BackendTask.Port
22
+ import Json.Encode
23
+ import OptimizedDecoder as Decode
24
+
25
+ data : BackendTask Throwable String
26
+ data =
27
+ BackendTask.Port.get "environmentVariable"
28
+ (Json.Encode.string "EDITOR")
29
+ Decode.string
30
+ |> BackendTask.throw
31
+
32
+ -- will resolve to "VIM" if you run `EDITOR=vim elm-pages dev`
33
+
34
+ ```javascript
35
+ // port-data-source.js
36
+
37
+ module.exports =
38
+ /**
39
+ * @param { unknown } fromElm
40
+ * @returns { Promise<unknown> }
41
+ */
42
+ {
43
+ environmentVariable: async function (name) {
44
+ const result = process.env[name];
45
+ if (result) {
46
+ return result;
47
+ } else {
48
+ throw `No environment variable called ${name}
49
+
50
+ Available:
51
+
52
+ ${Object.keys(process.env).join("\n")}
53
+ `;
54
+ }
55
+ },
56
+ }
57
+ ```
58
+
59
+
60
+ ## Performance
61
+
62
+ As with any JavaScript or NodeJS code, avoid doing blocking IO operations. For example, avoid using `fs.readFileSync`, because blocking IO can slow down your elm-pages builds and dev server. `elm-pages` performances all `BackendTask`'s in parallel whenever possible.
63
+ So if you do `BackendTask.map2 Tuple.pair myHttpBackendTask myPortBackendTask`, it will resolve those two in parallel. NodeJS performs best when you take advantage of its ability to do non-blocking I/O (file reads, HTTP requests, etc.). If you use `BackendTask.andThen`,
64
+ it will need to resolve them in sequence rather than in parallel, but it's still best to avoid blocking IO operations in your BackendTask Port definitions.
65
+
66
+
67
+ ## Error Handling
68
+
69
+ There are a few different things that can go wrong when running a port-data-source. These possible errors are captured in the `BackendTask.Port.Error` type.
70
+
71
+ @docs Error
72
+
73
+ Any time you throw a JavaScript exception from a BackendTask.Port definition, it will give you a `PortCallException`. It's usually easier to add a `try`/`catch` in your JavaScript code in `port-data-source.js`
74
+ to handle possible errors, but you can throw a JSON value and handle it in Elm in the `PortCallException` call error.
75
+
76
+ -}
77
+
78
+ import BackendTask
79
+ import BackendTask.Http
80
+ import BackendTask.Internal.Request
81
+ import Exception exposing (Exception)
82
+ import Json.Decode as Decode exposing (Decoder)
83
+ import Json.Encode as Encode
84
+ import TerminalText
85
+
86
+
87
+ {-| -}
88
+ get : String -> Encode.Value -> Decoder b -> BackendTask.BackendTask (Exception Error) b
89
+ get portName input decoder =
90
+ BackendTask.Internal.Request.request
91
+ { name = "port"
92
+ , body =
93
+ Encode.object
94
+ [ ( "input", input )
95
+ , ( "portName", Encode.string portName )
96
+ ]
97
+ |> BackendTask.Http.jsonBody
98
+ , expect =
99
+ Decode.oneOf
100
+ [ Decode.field "elm-pages-internal-error" Decode.string
101
+ |> Decode.andThen
102
+ (\errorKind ->
103
+ if errorKind == "PortNotDefined" then
104
+ Exception.Exception (PortNotDefined { name = portName })
105
+ { title = "Port Error"
106
+ , body =
107
+ [ TerminalText.text "Something went wrong in a call to BackendTask.Port.get. I expected to find a port named `"
108
+ , TerminalText.yellow portName
109
+ , TerminalText.text "` but I couldn't find it. Is the function exported in your port-data-source file?"
110
+ ]
111
+ |> TerminalText.toString
112
+ }
113
+ |> Decode.succeed
114
+
115
+ else if errorKind == "ExportIsNotFunction" then
116
+ Decode.field "error" Decode.string
117
+ |> Decode.maybe
118
+ |> Decode.map (Maybe.withDefault "")
119
+ |> Decode.map
120
+ (\incorrectPortType ->
121
+ Exception.Exception ExportIsNotFunction
122
+ { title = "Port Error"
123
+ , body =
124
+ [ TerminalText.text "Something went wrong in a call to BackendTask.Port.get. I found an export called `"
125
+ , TerminalText.yellow portName
126
+ , TerminalText.text "` but I expected its type to be function, but instead its type was: "
127
+ , TerminalText.red incorrectPortType
128
+ ]
129
+ |> TerminalText.toString
130
+ }
131
+ )
132
+
133
+ else if errorKind == "MissingPortsFile" then
134
+ Exception.Exception MissingPortsFile
135
+ { title = "Port Error"
136
+ , body =
137
+ [ TerminalText.text "Something went wrong in a call to BackendTask.Port.get. I couldn't find your port-data-source file. Be sure to create a 'port-data-source.ts' or 'port-data-source.js' file."
138
+ ]
139
+ |> TerminalText.toString
140
+ }
141
+ |> Decode.succeed
142
+
143
+ else if errorKind == "ErrorInPortsFile" then
144
+ Decode.field "error" Decode.string
145
+ |> Decode.maybe
146
+ |> Decode.map (Maybe.withDefault "")
147
+ |> Decode.map
148
+ (\errorMessage ->
149
+ Exception.Exception
150
+ ErrorInPortsFile
151
+ { title = "Port Error"
152
+ , body =
153
+ [ TerminalText.text "Something went wrong in a call to BackendTask.Port.get. I couldn't import the port definitions file, because of this exception:\n\n"
154
+ , TerminalText.red errorMessage
155
+ , TerminalText.text "\n\nAre there syntax errors or exceptions thrown during import?"
156
+ ]
157
+ |> TerminalText.toString
158
+ }
159
+ )
160
+
161
+ else if errorKind == "PortCallException" then
162
+ Decode.field "error" Decode.value
163
+ |> Decode.maybe
164
+ |> Decode.map (Maybe.withDefault Encode.null)
165
+ |> Decode.map
166
+ (\portCallError ->
167
+ Exception.Exception
168
+ (PortCallException portCallError)
169
+ { title = "Port Error"
170
+ , body =
171
+ [ TerminalText.text "Something went wrong in a call to BackendTask.Port.get. I was able to import the port definitions file, but when running it I encountered this exception:\n\n"
172
+ , TerminalText.red (Encode.encode 2 portCallError)
173
+ , TerminalText.text "\n\nYou could add a `try`/`catch` in your `port-data-source` JavaScript code to handle that error."
174
+ ]
175
+ |> TerminalText.toString
176
+ }
177
+ )
178
+
179
+ else
180
+ Exception.Exception ErrorInPortsFile
181
+ { title = "Port Error"
182
+ , body =
183
+ [ TerminalText.text "Something went wrong in a call to BackendTask.Port.get. I expected to find a port named `"
184
+ , TerminalText.yellow portName
185
+ , TerminalText.text "`."
186
+ ]
187
+ |> TerminalText.toString
188
+ }
189
+ |> Decode.succeed
190
+ )
191
+ |> Decode.map Err
192
+ , decoder |> Decode.map Ok
193
+ ]
194
+ |> BackendTask.Http.expectJson
195
+ }
196
+ |> BackendTask.andThen BackendTask.fromResult
197
+
198
+
199
+ {-| -}
200
+ type Error
201
+ = Error
202
+ | ErrorInPortsFile
203
+ | MissingPortsFile
204
+ | PortNotDefined { name : String }
205
+ | PortCallException Decode.Value
206
+ | ExportIsNotFunction