elm-pages 3.0.0-beta.13 → 3.0.0-beta.14
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.
- package/README.md +1 -1
- package/codegen/elm-pages-codegen.js +1497 -1127
- package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmi +0 -0
- package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmo +0 -0
- package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateDataTest.elmo +0 -0
- package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/d.dat +0 -0
- package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/o.dat +0 -0
- package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm.json +1 -1
- package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/Reporter.elm.js +1 -1
- package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/Runner.elm.js +152 -40
- package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/node_runner.js +1 -1
- package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/node_supervisor.js +4 -4
- package/generator/dead-code-review/src/Pages/Review/DeadCodeEliminateData.elm +58 -10
- package/generator/dead-code-review/tests/Pages/Review/DeadCodeEliminateDataTest.elm +45 -29
- package/generator/review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/d.dat +0 -0
- package/generator/review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/o.dat +0 -0
- package/generator/review/elm-stuff/tests-0.19.1/elm.json +1 -1
- package/generator/review/elm-stuff/tests-0.19.1/js/Reporter.elm.js +1 -1
- package/generator/review/elm-stuff/tests-0.19.1/js/Runner.elm.js +46 -5
- package/generator/review/elm-stuff/tests-0.19.1/js/node_runner.js +1 -1
- package/generator/review/elm-stuff/tests-0.19.1/js/node_supervisor.js +4 -4
- package/generator/src/RouteBuilder.elm +66 -52
- package/generator/src/SharedTemplate.elm +3 -2
- package/generator/src/SiteConfig.elm +3 -2
- package/generator/src/build.js +5 -5
- package/generator/src/cli.js +7 -6
- package/generator/src/compatibility-key.js +1 -1
- package/generator/src/dev-server.js +7 -7
- package/generator/src/render-test.js +109 -0
- package/generator/src/render.js +77 -51
- package/generator/src/request-cache.js +149 -158
- package/generator/template/app/Api.elm +2 -2
- package/generator/template/app/Route/Index.elm +3 -3
- package/generator/template/app/Shared.elm +3 -3
- package/generator/template/app/Site.elm +3 -3
- package/package.json +10 -10
- package/src/ApiRoute.elm +63 -57
- package/src/BackendTask/Env.elm +87 -0
- package/src/{DataSource → BackendTask}/File.elm +89 -43
- package/src/{DataSource → BackendTask}/Glob.elm +134 -125
- package/src/BackendTask/Http.elm +637 -0
- package/src/{DataSource → BackendTask}/Internal/Glob.elm +1 -1
- package/src/BackendTask/Internal/Request.elm +28 -0
- package/src/BackendTask/Port.elm +202 -0
- package/src/{DataSource.elm → BackendTask.elm} +223 -207
- package/src/Exception.elm +37 -0
- package/src/Form.elm +20 -20
- package/src/Head.elm +7 -7
- package/src/Internal/ApiRoute.elm +7 -5
- package/src/PageServerResponse.elm +6 -1
- package/src/Pages/Generate.elm +35 -63
- package/src/Pages/Internal/Platform/Cli.elm +422 -731
- package/src/Pages/Internal/Platform/Cli.elm.bak +22 -22
- package/src/Pages/Internal/Platform/CompatibilityKey.elm +1 -1
- package/src/Pages/Internal/Platform/Effect.elm +0 -1
- package/src/Pages/Internal/Platform/GeneratorApplication.elm +51 -111
- package/src/Pages/Internal/Platform/StaticResponses.elm +73 -287
- package/src/Pages/Internal/Platform/ToJsPayload.elm +4 -4
- package/src/Pages/Internal/Platform.elm +25 -31
- package/src/Pages/Internal/Script.elm +3 -2
- package/src/Pages/Internal/StaticHttpBody.elm +35 -1
- package/src/Pages/Manifest.elm +5 -4
- package/src/Pages/ProgramConfig.elm +8 -7
- package/src/Pages/Script.elm +28 -13
- package/src/Pages/SiteConfig.elm +3 -2
- package/src/Pages/StaticHttp/Request.elm +2 -2
- package/src/Pages/StaticHttpRequest.elm +39 -94
- package/src/RequestsAndPending.elm +8 -19
- package/src/Server/Request.elm +14 -14
- package/src/Server/Session.elm +34 -34
- package/src/Server/SetCookie.elm +1 -1
- package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/dependencies.75364bef27ac5a049b87c3325f846fc6dbda23b8ed7187ed06748b96bb6a50a7.json +0 -1
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm.json +0 -38
- package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elmTestOutput.js +0 -29603
- package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/package.json +0 -1
- package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/src/Test/Generated/Main.elm +0 -27
- package/generator/dead-code-review/node_modules/.package-lock.json +0 -484
- package/generator/dead-code-review/node_modules/ansi-styles/index.d.ts +0 -345
- package/generator/dead-code-review/node_modules/ansi-styles/index.js +0 -163
- package/generator/dead-code-review/node_modules/ansi-styles/license +0 -9
- package/generator/dead-code-review/node_modules/ansi-styles/package.json +0 -56
- package/generator/dead-code-review/node_modules/ansi-styles/readme.md +0 -152
- package/generator/dead-code-review/node_modules/anymatch/LICENSE +0 -15
- package/generator/dead-code-review/node_modules/anymatch/README.md +0 -87
- package/generator/dead-code-review/node_modules/anymatch/index.d.ts +0 -20
- package/generator/dead-code-review/node_modules/anymatch/index.js +0 -104
- package/generator/dead-code-review/node_modules/anymatch/package.json +0 -48
- package/generator/dead-code-review/node_modules/balanced-match/.github/FUNDING.yml +0 -2
- package/generator/dead-code-review/node_modules/balanced-match/LICENSE.md +0 -21
- package/generator/dead-code-review/node_modules/balanced-match/README.md +0 -97
- package/generator/dead-code-review/node_modules/balanced-match/index.js +0 -62
- package/generator/dead-code-review/node_modules/balanced-match/package.json +0 -48
- package/generator/dead-code-review/node_modules/binary-extensions/binary-extensions.json +0 -260
- package/generator/dead-code-review/node_modules/binary-extensions/binary-extensions.json.d.ts +0 -3
- package/generator/dead-code-review/node_modules/binary-extensions/index.d.ts +0 -14
- package/generator/dead-code-review/node_modules/binary-extensions/index.js +0 -1
- package/generator/dead-code-review/node_modules/binary-extensions/license +0 -9
- package/generator/dead-code-review/node_modules/binary-extensions/package.json +0 -38
- package/generator/dead-code-review/node_modules/binary-extensions/readme.md +0 -41
- package/generator/dead-code-review/node_modules/brace-expansion/.github/FUNDING.yml +0 -2
- package/generator/dead-code-review/node_modules/brace-expansion/LICENSE +0 -21
- package/generator/dead-code-review/node_modules/brace-expansion/README.md +0 -135
- package/generator/dead-code-review/node_modules/brace-expansion/index.js +0 -203
- package/generator/dead-code-review/node_modules/brace-expansion/package.json +0 -46
- package/generator/dead-code-review/node_modules/braces/CHANGELOG.md +0 -184
- package/generator/dead-code-review/node_modules/braces/LICENSE +0 -21
- package/generator/dead-code-review/node_modules/braces/README.md +0 -593
- package/generator/dead-code-review/node_modules/braces/index.js +0 -170
- package/generator/dead-code-review/node_modules/braces/lib/compile.js +0 -57
- package/generator/dead-code-review/node_modules/braces/lib/constants.js +0 -57
- package/generator/dead-code-review/node_modules/braces/lib/expand.js +0 -113
- package/generator/dead-code-review/node_modules/braces/lib/parse.js +0 -333
- package/generator/dead-code-review/node_modules/braces/lib/stringify.js +0 -32
- package/generator/dead-code-review/node_modules/braces/lib/utils.js +0 -112
- package/generator/dead-code-review/node_modules/braces/package.json +0 -77
- package/generator/dead-code-review/node_modules/chalk/index.d.ts +0 -415
- package/generator/dead-code-review/node_modules/chalk/license +0 -9
- package/generator/dead-code-review/node_modules/chalk/package.json +0 -68
- package/generator/dead-code-review/node_modules/chalk/readme.md +0 -341
- package/generator/dead-code-review/node_modules/chalk/source/index.js +0 -229
- package/generator/dead-code-review/node_modules/chalk/source/templates.js +0 -134
- package/generator/dead-code-review/node_modules/chalk/source/util.js +0 -39
- package/generator/dead-code-review/node_modules/chokidar/LICENSE +0 -21
- package/generator/dead-code-review/node_modules/chokidar/README.md +0 -308
- package/generator/dead-code-review/node_modules/chokidar/index.js +0 -973
- package/generator/dead-code-review/node_modules/chokidar/lib/constants.js +0 -65
- package/generator/dead-code-review/node_modules/chokidar/lib/fsevents-handler.js +0 -524
- package/generator/dead-code-review/node_modules/chokidar/lib/nodefs-handler.js +0 -654
- package/generator/dead-code-review/node_modules/chokidar/package.json +0 -85
- package/generator/dead-code-review/node_modules/chokidar/types/index.d.ts +0 -188
- package/generator/dead-code-review/node_modules/color-convert/CHANGELOG.md +0 -54
- package/generator/dead-code-review/node_modules/color-convert/LICENSE +0 -21
- package/generator/dead-code-review/node_modules/color-convert/README.md +0 -68
- package/generator/dead-code-review/node_modules/color-convert/conversions.js +0 -839
- package/generator/dead-code-review/node_modules/color-convert/index.js +0 -81
- package/generator/dead-code-review/node_modules/color-convert/package.json +0 -48
- package/generator/dead-code-review/node_modules/color-convert/route.js +0 -97
- package/generator/dead-code-review/node_modules/color-name/LICENSE +0 -8
- package/generator/dead-code-review/node_modules/color-name/README.md +0 -11
- package/generator/dead-code-review/node_modules/color-name/index.js +0 -152
- package/generator/dead-code-review/node_modules/color-name/package.json +0 -28
- package/generator/dead-code-review/node_modules/commander/LICENSE +0 -22
- package/generator/dead-code-review/node_modules/commander/Readme.md +0 -1118
- package/generator/dead-code-review/node_modules/commander/esm.mjs +0 -16
- package/generator/dead-code-review/node_modules/commander/index.js +0 -27
- package/generator/dead-code-review/node_modules/commander/lib/argument.js +0 -147
- package/generator/dead-code-review/node_modules/commander/lib/command.js +0 -2160
- package/generator/dead-code-review/node_modules/commander/lib/error.js +0 -45
- package/generator/dead-code-review/node_modules/commander/lib/help.js +0 -406
- package/generator/dead-code-review/node_modules/commander/lib/option.js +0 -326
- package/generator/dead-code-review/node_modules/commander/lib/suggestSimilar.js +0 -100
- package/generator/dead-code-review/node_modules/commander/package-support.json +0 -16
- package/generator/dead-code-review/node_modules/commander/package.json +0 -80
- package/generator/dead-code-review/node_modules/commander/typings/index.d.ts +0 -881
- package/generator/dead-code-review/node_modules/cross-spawn/CHANGELOG.md +0 -130
- package/generator/dead-code-review/node_modules/cross-spawn/LICENSE +0 -21
- package/generator/dead-code-review/node_modules/cross-spawn/README.md +0 -96
- package/generator/dead-code-review/node_modules/cross-spawn/index.js +0 -39
- package/generator/dead-code-review/node_modules/cross-spawn/lib/enoent.js +0 -59
- package/generator/dead-code-review/node_modules/cross-spawn/lib/parse.js +0 -91
- package/generator/dead-code-review/node_modules/cross-spawn/lib/util/escape.js +0 -45
- package/generator/dead-code-review/node_modules/cross-spawn/lib/util/readShebang.js +0 -23
- package/generator/dead-code-review/node_modules/cross-spawn/lib/util/resolveCommand.js +0 -52
- package/generator/dead-code-review/node_modules/cross-spawn/package.json +0 -73
- package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/LICENSE +0 -373
- package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/README.md +0 -64
- package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm.d.ts +0 -22
- package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm.js +0 -419
- package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm_bg.wasm +0 -0
- package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/package.json +0 -27
- package/generator/dead-code-review/node_modules/elm-test/LICENSE +0 -27
- package/generator/dead-code-review/node_modules/elm-test/README.md +0 -192
- package/generator/dead-code-review/node_modules/elm-test/bin/elm-test +0 -3
- package/generator/dead-code-review/node_modules/elm-test/elm/elm.json +0 -25
- package/generator/dead-code-review/node_modules/elm-test/elm/src/Console/Text.elm +0 -217
- package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format/Color.elm +0 -30
- package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format/Monochrome.elm +0 -39
- package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format.elm +0 -212
- package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console.elm +0 -207
- package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Highlightable.elm +0 -48
- package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/JUnit.elm +0 -161
- package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Json.elm +0 -158
- package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Reporter.elm +0 -53
- package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/TestResults.elm +0 -113
- package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/JsMessage.elm +0 -38
- package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node/Vendor/Console.elm +0 -230
- package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node/Vendor/Diff.elm +0 -326
- package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node.elm +0 -440
- package/generator/dead-code-review/node_modules/elm-test/lib/Compile.js +0 -110
- package/generator/dead-code-review/node_modules/elm-test/lib/DependencyProvider.js +0 -343
- package/generator/dead-code-review/node_modules/elm-test/lib/ElmCompiler.js +0 -109
- package/generator/dead-code-review/node_modules/elm-test/lib/ElmHome.js +0 -47
- package/generator/dead-code-review/node_modules/elm-test/lib/ElmJson.js +0 -194
- package/generator/dead-code-review/node_modules/elm-test/lib/FindTests.js +0 -276
- package/generator/dead-code-review/node_modules/elm-test/lib/Generate.js +0 -294
- package/generator/dead-code-review/node_modules/elm-test/lib/Install.js +0 -290
- package/generator/dead-code-review/node_modules/elm-test/lib/Parser.js +0 -941
- package/generator/dead-code-review/node_modules/elm-test/lib/Project.js +0 -117
- package/generator/dead-code-review/node_modules/elm-test/lib/Report.js +0 -23
- package/generator/dead-code-review/node_modules/elm-test/lib/RunTests.js +0 -322
- package/generator/dead-code-review/node_modules/elm-test/lib/Solve.js +0 -76
- package/generator/dead-code-review/node_modules/elm-test/lib/Supervisor.js +0 -294
- package/generator/dead-code-review/node_modules/elm-test/lib/SyncGet.js +0 -45
- package/generator/dead-code-review/node_modules/elm-test/lib/SyncGetWorker.js +0 -36
- package/generator/dead-code-review/node_modules/elm-test/lib/elm-test.js +0 -318
- package/generator/dead-code-review/node_modules/elm-test/package.json +0 -69
- package/generator/dead-code-review/node_modules/elm-test/templates/after.js +0 -29
- package/generator/dead-code-review/node_modules/elm-test/templates/before.js +0 -58
- package/generator/dead-code-review/node_modules/elm-test/templates/tests/Example.elm +0 -10
- package/generator/dead-code-review/node_modules/fill-range/LICENSE +0 -21
- package/generator/dead-code-review/node_modules/fill-range/README.md +0 -237
- package/generator/dead-code-review/node_modules/fill-range/index.js +0 -249
- package/generator/dead-code-review/node_modules/fill-range/package.json +0 -69
- package/generator/dead-code-review/node_modules/fs.realpath/LICENSE +0 -43
- package/generator/dead-code-review/node_modules/fs.realpath/README.md +0 -33
- package/generator/dead-code-review/node_modules/fs.realpath/index.js +0 -66
- package/generator/dead-code-review/node_modules/fs.realpath/old.js +0 -303
- package/generator/dead-code-review/node_modules/fs.realpath/package.json +0 -26
- package/generator/dead-code-review/node_modules/fsevents/LICENSE +0 -22
- package/generator/dead-code-review/node_modules/fsevents/README.md +0 -83
- package/generator/dead-code-review/node_modules/fsevents/fsevents.d.ts +0 -46
- package/generator/dead-code-review/node_modules/fsevents/fsevents.js +0 -82
- package/generator/dead-code-review/node_modules/fsevents/fsevents.node +0 -0
- package/generator/dead-code-review/node_modules/fsevents/package.json +0 -62
- package/generator/dead-code-review/node_modules/glob/LICENSE +0 -15
- package/generator/dead-code-review/node_modules/glob/README.md +0 -378
- package/generator/dead-code-review/node_modules/glob/common.js +0 -240
- package/generator/dead-code-review/node_modules/glob/glob.js +0 -790
- package/generator/dead-code-review/node_modules/glob/package.json +0 -55
- package/generator/dead-code-review/node_modules/glob/sync.js +0 -486
- package/generator/dead-code-review/node_modules/glob-parent/CHANGELOG.md +0 -110
- package/generator/dead-code-review/node_modules/glob-parent/LICENSE +0 -15
- package/generator/dead-code-review/node_modules/glob-parent/README.md +0 -137
- package/generator/dead-code-review/node_modules/glob-parent/index.js +0 -42
- package/generator/dead-code-review/node_modules/glob-parent/package.json +0 -48
- package/generator/dead-code-review/node_modules/graceful-fs/LICENSE +0 -15
- package/generator/dead-code-review/node_modules/graceful-fs/README.md +0 -143
- package/generator/dead-code-review/node_modules/graceful-fs/clone.js +0 -23
- package/generator/dead-code-review/node_modules/graceful-fs/graceful-fs.js +0 -448
- package/generator/dead-code-review/node_modules/graceful-fs/legacy-streams.js +0 -118
- package/generator/dead-code-review/node_modules/graceful-fs/package.json +0 -50
- package/generator/dead-code-review/node_modules/graceful-fs/polyfills.js +0 -355
- package/generator/dead-code-review/node_modules/has-flag/index.d.ts +0 -39
- package/generator/dead-code-review/node_modules/has-flag/index.js +0 -8
- package/generator/dead-code-review/node_modules/has-flag/license +0 -9
- package/generator/dead-code-review/node_modules/has-flag/package.json +0 -46
- package/generator/dead-code-review/node_modules/has-flag/readme.md +0 -89
- package/generator/dead-code-review/node_modules/inflight/LICENSE +0 -15
- package/generator/dead-code-review/node_modules/inflight/README.md +0 -37
- package/generator/dead-code-review/node_modules/inflight/inflight.js +0 -54
- package/generator/dead-code-review/node_modules/inflight/package.json +0 -29
- package/generator/dead-code-review/node_modules/inherits/LICENSE +0 -16
- package/generator/dead-code-review/node_modules/inherits/README.md +0 -42
- package/generator/dead-code-review/node_modules/inherits/inherits.js +0 -9
- package/generator/dead-code-review/node_modules/inherits/inherits_browser.js +0 -27
- package/generator/dead-code-review/node_modules/inherits/package.json +0 -29
- package/generator/dead-code-review/node_modules/is-binary-path/index.d.ts +0 -17
- package/generator/dead-code-review/node_modules/is-binary-path/index.js +0 -7
- package/generator/dead-code-review/node_modules/is-binary-path/license +0 -9
- package/generator/dead-code-review/node_modules/is-binary-path/package.json +0 -40
- package/generator/dead-code-review/node_modules/is-binary-path/readme.md +0 -34
- package/generator/dead-code-review/node_modules/is-extglob/LICENSE +0 -21
- package/generator/dead-code-review/node_modules/is-extglob/README.md +0 -107
- package/generator/dead-code-review/node_modules/is-extglob/index.js +0 -20
- package/generator/dead-code-review/node_modules/is-extglob/package.json +0 -69
- package/generator/dead-code-review/node_modules/is-glob/LICENSE +0 -21
- package/generator/dead-code-review/node_modules/is-glob/README.md +0 -206
- package/generator/dead-code-review/node_modules/is-glob/index.js +0 -150
- package/generator/dead-code-review/node_modules/is-glob/package.json +0 -81
- package/generator/dead-code-review/node_modules/is-number/LICENSE +0 -21
- package/generator/dead-code-review/node_modules/is-number/README.md +0 -187
- package/generator/dead-code-review/node_modules/is-number/index.js +0 -18
- package/generator/dead-code-review/node_modules/is-number/package.json +0 -82
- package/generator/dead-code-review/node_modules/isexe/LICENSE +0 -15
- package/generator/dead-code-review/node_modules/isexe/README.md +0 -51
- package/generator/dead-code-review/node_modules/isexe/index.js +0 -57
- package/generator/dead-code-review/node_modules/isexe/mode.js +0 -41
- package/generator/dead-code-review/node_modules/isexe/package.json +0 -31
- package/generator/dead-code-review/node_modules/isexe/test/basic.js +0 -221
- package/generator/dead-code-review/node_modules/isexe/windows.js +0 -42
- package/generator/dead-code-review/node_modules/minimatch/LICENSE +0 -15
- package/generator/dead-code-review/node_modules/minimatch/README.md +0 -259
- package/generator/dead-code-review/node_modules/minimatch/lib/path.js +0 -4
- package/generator/dead-code-review/node_modules/minimatch/minimatch.js +0 -906
- package/generator/dead-code-review/node_modules/minimatch/package.json +0 -32
- package/generator/dead-code-review/node_modules/normalize-path/LICENSE +0 -21
- package/generator/dead-code-review/node_modules/normalize-path/README.md +0 -127
- package/generator/dead-code-review/node_modules/normalize-path/index.js +0 -35
- package/generator/dead-code-review/node_modules/normalize-path/package.json +0 -77
- package/generator/dead-code-review/node_modules/once/LICENSE +0 -15
- package/generator/dead-code-review/node_modules/once/README.md +0 -79
- package/generator/dead-code-review/node_modules/once/once.js +0 -42
- package/generator/dead-code-review/node_modules/once/package.json +0 -33
- package/generator/dead-code-review/node_modules/path-key/index.d.ts +0 -40
- package/generator/dead-code-review/node_modules/path-key/index.js +0 -16
- package/generator/dead-code-review/node_modules/path-key/license +0 -9
- package/generator/dead-code-review/node_modules/path-key/package.json +0 -39
- package/generator/dead-code-review/node_modules/path-key/readme.md +0 -61
- package/generator/dead-code-review/node_modules/picomatch/CHANGELOG.md +0 -136
- package/generator/dead-code-review/node_modules/picomatch/LICENSE +0 -21
- package/generator/dead-code-review/node_modules/picomatch/README.md +0 -708
- package/generator/dead-code-review/node_modules/picomatch/index.js +0 -3
- package/generator/dead-code-review/node_modules/picomatch/lib/constants.js +0 -179
- package/generator/dead-code-review/node_modules/picomatch/lib/parse.js +0 -1091
- package/generator/dead-code-review/node_modules/picomatch/lib/picomatch.js +0 -342
- package/generator/dead-code-review/node_modules/picomatch/lib/scan.js +0 -391
- package/generator/dead-code-review/node_modules/picomatch/lib/utils.js +0 -64
- package/generator/dead-code-review/node_modules/picomatch/package.json +0 -81
- package/generator/dead-code-review/node_modules/readdirp/LICENSE +0 -21
- package/generator/dead-code-review/node_modules/readdirp/README.md +0 -122
- package/generator/dead-code-review/node_modules/readdirp/index.d.ts +0 -43
- package/generator/dead-code-review/node_modules/readdirp/index.js +0 -287
- package/generator/dead-code-review/node_modules/readdirp/package.json +0 -122
- package/generator/dead-code-review/node_modules/shebang-command/index.js +0 -19
- package/generator/dead-code-review/node_modules/shebang-command/license +0 -9
- package/generator/dead-code-review/node_modules/shebang-command/package.json +0 -34
- package/generator/dead-code-review/node_modules/shebang-command/readme.md +0 -34
- package/generator/dead-code-review/node_modules/shebang-regex/index.d.ts +0 -22
- package/generator/dead-code-review/node_modules/shebang-regex/index.js +0 -2
- package/generator/dead-code-review/node_modules/shebang-regex/license +0 -9
- package/generator/dead-code-review/node_modules/shebang-regex/package.json +0 -35
- package/generator/dead-code-review/node_modules/shebang-regex/readme.md +0 -33
- package/generator/dead-code-review/node_modules/split/.travis.yml +0 -3
- package/generator/dead-code-review/node_modules/split/LICENCE +0 -22
- package/generator/dead-code-review/node_modules/split/examples/pretty.js +0 -26
- package/generator/dead-code-review/node_modules/split/index.js +0 -63
- package/generator/dead-code-review/node_modules/split/package.json +0 -30
- package/generator/dead-code-review/node_modules/split/readme.markdown +0 -72
- package/generator/dead-code-review/node_modules/split/test/options.asynct.js +0 -46
- package/generator/dead-code-review/node_modules/split/test/partitioned_unicode.js +0 -34
- package/generator/dead-code-review/node_modules/split/test/split.asynct.js +0 -137
- package/generator/dead-code-review/node_modules/split/test/try_catch.asynct.js +0 -51
- package/generator/dead-code-review/node_modules/supports-color/browser.js +0 -5
- package/generator/dead-code-review/node_modules/supports-color/index.js +0 -135
- package/generator/dead-code-review/node_modules/supports-color/license +0 -9
- package/generator/dead-code-review/node_modules/supports-color/package.json +0 -53
- package/generator/dead-code-review/node_modules/supports-color/readme.md +0 -76
- package/generator/dead-code-review/node_modules/through/.travis.yml +0 -5
- package/generator/dead-code-review/node_modules/through/LICENSE.APACHE2 +0 -15
- package/generator/dead-code-review/node_modules/through/LICENSE.MIT +0 -24
- package/generator/dead-code-review/node_modules/through/index.js +0 -108
- package/generator/dead-code-review/node_modules/through/package.json +0 -36
- package/generator/dead-code-review/node_modules/through/readme.markdown +0 -64
- package/generator/dead-code-review/node_modules/through/test/async.js +0 -28
- package/generator/dead-code-review/node_modules/through/test/auto-destroy.js +0 -30
- package/generator/dead-code-review/node_modules/through/test/buffering.js +0 -71
- package/generator/dead-code-review/node_modules/through/test/end.js +0 -45
- package/generator/dead-code-review/node_modules/through/test/index.js +0 -133
- package/generator/dead-code-review/node_modules/to-regex-range/LICENSE +0 -21
- package/generator/dead-code-review/node_modules/to-regex-range/README.md +0 -305
- package/generator/dead-code-review/node_modules/to-regex-range/index.js +0 -288
- package/generator/dead-code-review/node_modules/to-regex-range/package.json +0 -88
- package/generator/dead-code-review/node_modules/which/CHANGELOG.md +0 -166
- package/generator/dead-code-review/node_modules/which/LICENSE +0 -15
- package/generator/dead-code-review/node_modules/which/README.md +0 -54
- package/generator/dead-code-review/node_modules/which/bin/node-which +0 -52
- package/generator/dead-code-review/node_modules/which/package.json +0 -43
- package/generator/dead-code-review/node_modules/which/which.js +0 -125
- package/generator/dead-code-review/node_modules/wrappy/LICENSE +0 -15
- package/generator/dead-code-review/node_modules/wrappy/README.md +0 -36
- package/generator/dead-code-review/node_modules/wrappy/package.json +0 -29
- package/generator/dead-code-review/node_modules/wrappy/wrappy.js +0 -33
- package/generator/dead-code-review/node_modules/xmlbuilder/.nycrc +0 -6
- package/generator/dead-code-review/node_modules/xmlbuilder/.vscode/launch.json +0 -23
- package/generator/dead-code-review/node_modules/xmlbuilder/CHANGELOG.md +0 -593
- package/generator/dead-code-review/node_modules/xmlbuilder/LICENSE +0 -21
- package/generator/dead-code-review/node_modules/xmlbuilder/README.md +0 -103
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/Derivation.js +0 -10
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/DocumentPosition.js +0 -12
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/NodeType.js +0 -25
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/OperationType.js +0 -11
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/Utility.js +0 -88
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/WriterState.js +0 -10
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLAttribute.js +0 -130
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLCData.js +0 -41
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLCharacterData.js +0 -86
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLComment.js +0 -41
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMConfiguration.js +0 -80
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMErrorHandler.js +0 -20
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMImplementation.js +0 -55
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMStringList.js +0 -44
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDAttList.js +0 -66
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDElement.js +0 -44
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDEntity.js +0 -115
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDNotation.js +0 -66
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDeclaration.js +0 -51
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocType.js +0 -235
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocument.js +0 -282
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocumentCB.js +0 -650
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocumentFragment.js +0 -21
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDummy.js +0 -39
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLElement.js +0 -334
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNamedNodeMap.js +0 -77
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNode.js +0 -999
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNodeFilter.js +0 -51
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNodeList.js +0 -45
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLProcessingInstruction.js +0 -56
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLRaw.js +0 -40
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStreamWriter.js +0 -209
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStringWriter.js +0 -40
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStringifier.js +0 -291
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLText.js +0 -82
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLTypeInfo.js +0 -23
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLUserDataHandler.js +0 -27
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLWriterBase.js +0 -485
- package/generator/dead-code-review/node_modules/xmlbuilder/lib/index.js +0 -120
- package/generator/dead-code-review/node_modules/xmlbuilder/package.json +0 -51
- package/generator/dead-code-review/node_modules/xmlbuilder/perf/basic/escaping.coffee +0 -244
- package/generator/dead-code-review/node_modules/xmlbuilder/perf/basic/object.coffee +0 -21
- package/generator/dead-code-review/node_modules/xmlbuilder/perf/index.coffee +0 -161
- package/generator/dead-code-review/node_modules/xmlbuilder/perf/perf.list +0 -11
- package/generator/dead-code-review/node_modules/xmlbuilder/typings/index.d.ts +0 -1771
- package/generator/review/elm-stuff/0.19.1/d.dat +0 -0
- package/generator/review/elm-stuff/0.19.1/i.dat +0 -0
- package/generator/review/elm-stuff/0.19.1/o.dat +0 -0
- 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
- 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
- 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
- package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm.json +0 -25
- 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
- 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
- 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
- package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm.json +0 -41
- package/src/DataSource/Env.elm +0 -62
- package/src/DataSource/Http.elm +0 -446
- package/src/DataSource/Internal/Request.elm +0 -20
- package/src/DataSource/Port.elm +0 -90
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
module Pages.Internal.StaticHttpBody exposing (Body(..), codec, encode)
|
|
2
2
|
|
|
3
|
+
import Base64
|
|
4
|
+
import Bytes exposing (Bytes)
|
|
3
5
|
import Codec exposing (Codec)
|
|
6
|
+
import Json.Decode
|
|
4
7
|
import Json.Encode as Encode
|
|
5
8
|
|
|
6
9
|
|
|
@@ -8,6 +11,7 @@ type Body
|
|
|
8
11
|
= EmptyBody
|
|
9
12
|
| StringBody String String
|
|
10
13
|
| JsonBody Encode.Value
|
|
14
|
+
| BytesBody String Bytes
|
|
11
15
|
|
|
12
16
|
|
|
13
17
|
encode : Body -> Encode.Value
|
|
@@ -26,6 +30,15 @@ encode body =
|
|
|
26
30
|
[ ( "content", content )
|
|
27
31
|
]
|
|
28
32
|
|
|
33
|
+
BytesBody _ content ->
|
|
34
|
+
encodeWithType "bytes"
|
|
35
|
+
[ ( "content"
|
|
36
|
+
, Base64.fromBytes content
|
|
37
|
+
|> Maybe.withDefault ""
|
|
38
|
+
|> Encode.string
|
|
39
|
+
)
|
|
40
|
+
]
|
|
41
|
+
|
|
29
42
|
|
|
30
43
|
encodeWithType : String -> List ( String, Encode.Value ) -> Encode.Value
|
|
31
44
|
encodeWithType typeName otherFields =
|
|
@@ -37,7 +50,7 @@ encodeWithType typeName otherFields =
|
|
|
37
50
|
codec : Codec Body
|
|
38
51
|
codec =
|
|
39
52
|
Codec.custom
|
|
40
|
-
(\vEmpty vString vJson value ->
|
|
53
|
+
(\vEmpty vString vJson vBytes value ->
|
|
41
54
|
case value of
|
|
42
55
|
EmptyBody ->
|
|
43
56
|
vEmpty
|
|
@@ -47,8 +60,29 @@ codec =
|
|
|
47
60
|
|
|
48
61
|
JsonBody body ->
|
|
49
62
|
vJson body
|
|
63
|
+
|
|
64
|
+
BytesBody contentType body ->
|
|
65
|
+
vBytes contentType body
|
|
50
66
|
)
|
|
51
67
|
|> Codec.variant0 "EmptyBody" EmptyBody
|
|
52
68
|
|> Codec.variant2 "StringBody" StringBody Codec.string Codec.string
|
|
53
69
|
|> Codec.variant1 "JsonBody" JsonBody Codec.value
|
|
70
|
+
|> Codec.variant2 "BytesBody" BytesBody Codec.string bytesCodec
|
|
54
71
|
|> Codec.buildCustom
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
bytesCodec : Codec Bytes
|
|
75
|
+
bytesCodec =
|
|
76
|
+
Codec.build (Base64.fromBytes >> Maybe.withDefault "" >> Encode.string)
|
|
77
|
+
(Json.Decode.string
|
|
78
|
+
|> Json.Decode.map Base64.toBytes
|
|
79
|
+
|> Json.Decode.andThen
|
|
80
|
+
(\decodedBytes ->
|
|
81
|
+
case decodedBytes of
|
|
82
|
+
Just bytes ->
|
|
83
|
+
Json.Decode.succeed bytes
|
|
84
|
+
|
|
85
|
+
Nothing ->
|
|
86
|
+
Json.Decode.fail "Couldn't parse bytes."
|
|
87
|
+
)
|
|
88
|
+
)
|
package/src/Pages/Manifest.elm
CHANGED
|
@@ -64,10 +64,11 @@ You pass your `Pages.Manifest.Config` record into the `Pages.application` functi
|
|
|
64
64
|
-}
|
|
65
65
|
|
|
66
66
|
import ApiRoute
|
|
67
|
+
import BackendTask exposing (BackendTask)
|
|
67
68
|
import Color exposing (Color)
|
|
68
69
|
import Color.Convert
|
|
69
|
-
import DataSource exposing (DataSource)
|
|
70
70
|
import Dict exposing (Dict)
|
|
71
|
+
import Exception exposing (Throwable)
|
|
71
72
|
import Head
|
|
72
73
|
import Json.Encode as Encode
|
|
73
74
|
import LanguageTag exposing (LanguageTag, emptySubtags)
|
|
@@ -344,16 +345,16 @@ nonEmptyList list =
|
|
|
344
345
|
|
|
345
346
|
{-| A generator for Api.elm to include a manifest.json.
|
|
346
347
|
-}
|
|
347
|
-
generator : String ->
|
|
348
|
+
generator : String -> BackendTask Throwable Config -> ApiRoute.ApiRoute ApiRoute.Response
|
|
348
349
|
generator canonicalSiteUrl config =
|
|
349
350
|
ApiRoute.succeed
|
|
350
351
|
(config
|
|
351
|
-
|>
|
|
352
|
+
|> BackendTask.map (toJson canonicalSiteUrl >> Encode.encode 0)
|
|
352
353
|
)
|
|
353
354
|
|> ApiRoute.literal "manifest.json"
|
|
354
355
|
|> ApiRoute.single
|
|
355
356
|
|> ApiRoute.withGlobalHeadTags
|
|
356
|
-
(
|
|
357
|
+
(BackendTask.succeed
|
|
357
358
|
[ Head.manifestLink "/manifest.json"
|
|
358
359
|
]
|
|
359
360
|
)
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
module Pages.ProgramConfig exposing (ProgramConfig)
|
|
2
2
|
|
|
3
3
|
import ApiRoute
|
|
4
|
+
import BackendTask exposing (BackendTask)
|
|
4
5
|
import Browser.Navigation
|
|
5
6
|
import Bytes exposing (Bytes)
|
|
6
7
|
import Bytes.Decode
|
|
7
8
|
import Bytes.Encode
|
|
8
|
-
import DataSource exposing (DataSource)
|
|
9
9
|
import Dict exposing (Dict)
|
|
10
|
+
import Exception exposing (Throwable)
|
|
10
11
|
import Form.FormData exposing (FormData)
|
|
11
12
|
import Head
|
|
12
13
|
import Html exposing (Html)
|
|
@@ -48,9 +49,9 @@ type alias ProgramConfig userMsg userModel route pageData actionData sharedData
|
|
|
48
49
|
-> ( userModel, effect )
|
|
49
50
|
, update : Pages.FormState.PageFormState -> Dict String (Pages.Transition.FetcherState actionData) -> Maybe Pages.Transition.Transition -> sharedData -> pageData -> Maybe Browser.Navigation.Key -> userMsg -> userModel -> ( userModel, effect )
|
|
50
51
|
, subscriptions : route -> Path -> userModel -> Sub userMsg
|
|
51
|
-
, sharedData :
|
|
52
|
-
, data : route ->
|
|
53
|
-
, action : route ->
|
|
52
|
+
, sharedData : BackendTask Throwable sharedData
|
|
53
|
+
, data : Decode.Value -> route -> BackendTask Throwable (PageServerResponse pageData errorPage)
|
|
54
|
+
, action : Decode.Value -> route -> BackendTask Throwable (PageServerResponse actionData errorPage)
|
|
54
55
|
, onActionData : actionData -> Maybe userMsg
|
|
55
56
|
, view :
|
|
56
57
|
Pages.FormState.PageFormState
|
|
@@ -68,8 +69,8 @@ type alias ProgramConfig userMsg userModel route pageData actionData sharedData
|
|
|
68
69
|
{ view : userModel -> { title : String, body : List (Html (Pages.Msg.Msg userMsg)) }
|
|
69
70
|
, head : List Head.Tag
|
|
70
71
|
}
|
|
71
|
-
, handleRoute : route ->
|
|
72
|
-
, getStaticRoutes :
|
|
72
|
+
, handleRoute : route -> BackendTask Throwable (Maybe NotFoundReason)
|
|
73
|
+
, getStaticRoutes : BackendTask Throwable (List route)
|
|
73
74
|
, urlToRoute : Url -> route
|
|
74
75
|
, routeToPath : route -> List String
|
|
75
76
|
, site : Maybe SiteConfig
|
|
@@ -101,7 +102,7 @@ type alias ProgramConfig userMsg userModel route pageData actionData sharedData
|
|
|
101
102
|
, encodeResponse : ResponseSketch pageData actionData sharedData -> Bytes.Encode.Encoder
|
|
102
103
|
, encodeAction : actionData -> Bytes.Encode.Encoder
|
|
103
104
|
, decodeResponse : Bytes.Decode.Decoder (ResponseSketch pageData actionData sharedData)
|
|
104
|
-
, globalHeadTags : Maybe ((Maybe { indent : Int, newLines : Bool } -> Html Never -> String) ->
|
|
105
|
+
, globalHeadTags : Maybe ((Maybe { indent : Int, newLines : Bool } -> Html Never -> String) -> BackendTask Throwable (List Head.Tag))
|
|
105
106
|
, cmdToEffect : Cmd userMsg -> effect
|
|
106
107
|
, perform :
|
|
107
108
|
{ fetchRouteData :
|
package/src/Pages/Script.elm
CHANGED
|
@@ -3,6 +3,7 @@ module Pages.Script exposing
|
|
|
3
3
|
, withCliOptions, withoutCliOptions
|
|
4
4
|
, writeFile
|
|
5
5
|
, log
|
|
6
|
+
, Error(..)
|
|
6
7
|
)
|
|
7
8
|
|
|
8
9
|
{-|
|
|
@@ -21,13 +22,19 @@ module Pages.Script exposing
|
|
|
21
22
|
|
|
22
23
|
@docs log
|
|
23
24
|
|
|
25
|
+
|
|
26
|
+
## Errors
|
|
27
|
+
|
|
28
|
+
@docs Error
|
|
29
|
+
|
|
24
30
|
-}
|
|
25
31
|
|
|
32
|
+
import BackendTask exposing (BackendTask)
|
|
33
|
+
import BackendTask.Http
|
|
34
|
+
import BackendTask.Internal.Request
|
|
26
35
|
import Cli.OptionsParser as OptionsParser
|
|
27
36
|
import Cli.Program as Program
|
|
28
|
-
import
|
|
29
|
-
import DataSource.Http
|
|
30
|
-
import DataSource.Internal.Request
|
|
37
|
+
import Exception exposing (Catchable, Throwable)
|
|
31
38
|
import Json.Decode as Decode
|
|
32
39
|
import Json.Encode as Encode
|
|
33
40
|
import Pages.Internal.Script
|
|
@@ -39,38 +46,46 @@ type alias Script =
|
|
|
39
46
|
|
|
40
47
|
|
|
41
48
|
{-| -}
|
|
42
|
-
|
|
49
|
+
type Error
|
|
50
|
+
= --TODO make more descriptive
|
|
51
|
+
FileWriteError
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
{-| -}
|
|
55
|
+
writeFile : { path : String, body : String } -> BackendTask (Catchable Error) ()
|
|
43
56
|
writeFile { path, body } =
|
|
44
|
-
|
|
57
|
+
BackendTask.Internal.Request.request
|
|
45
58
|
{ name = "write-file"
|
|
46
59
|
, body =
|
|
47
|
-
|
|
60
|
+
BackendTask.Http.jsonBody
|
|
48
61
|
(Encode.object
|
|
49
62
|
[ ( "path", Encode.string path )
|
|
50
63
|
, ( "body", Encode.string body )
|
|
51
64
|
]
|
|
52
65
|
)
|
|
53
|
-
, expect =
|
|
66
|
+
, expect =
|
|
67
|
+
-- TODO decode possible error details here
|
|
68
|
+
BackendTask.Http.expectJson (Decode.succeed ())
|
|
54
69
|
}
|
|
55
70
|
|
|
56
71
|
|
|
57
72
|
{-| -}
|
|
58
|
-
log : String ->
|
|
73
|
+
log : String -> BackendTask error ()
|
|
59
74
|
log message =
|
|
60
|
-
|
|
75
|
+
BackendTask.Internal.Request.request
|
|
61
76
|
{ name = "log"
|
|
62
77
|
, body =
|
|
63
|
-
|
|
78
|
+
BackendTask.Http.jsonBody
|
|
64
79
|
(Encode.object
|
|
65
80
|
[ ( "message", Encode.string message )
|
|
66
81
|
]
|
|
67
82
|
)
|
|
68
|
-
, expect =
|
|
83
|
+
, expect = BackendTask.Http.expectJson (Decode.succeed ())
|
|
69
84
|
}
|
|
70
85
|
|
|
71
86
|
|
|
72
87
|
{-| -}
|
|
73
|
-
withoutCliOptions :
|
|
88
|
+
withoutCliOptions : BackendTask Throwable () -> Script
|
|
74
89
|
withoutCliOptions execute =
|
|
75
90
|
Pages.Internal.Script.Script
|
|
76
91
|
(\_ ->
|
|
@@ -85,7 +100,7 @@ withoutCliOptions execute =
|
|
|
85
100
|
|
|
86
101
|
|
|
87
102
|
{-| -}
|
|
88
|
-
withCliOptions : Program.Config cliOptions -> (cliOptions ->
|
|
103
|
+
withCliOptions : Program.Config cliOptions -> (cliOptions -> BackendTask Throwable ()) -> Script
|
|
89
104
|
withCliOptions config execute =
|
|
90
105
|
Pages.Internal.Script.Script
|
|
91
106
|
(\_ ->
|
package/src/Pages/SiteConfig.elm
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
module Pages.SiteConfig exposing (SiteConfig)
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import BackendTask exposing (BackendTask)
|
|
4
|
+
import Exception exposing (Throwable)
|
|
4
5
|
import Head
|
|
5
6
|
|
|
6
7
|
|
|
7
8
|
type alias SiteConfig =
|
|
8
9
|
{ canonicalUrl : String
|
|
9
|
-
, head :
|
|
10
|
+
, head : BackendTask Throwable (List Head.Tag)
|
|
10
11
|
}
|
|
@@ -11,7 +11,7 @@ type alias Request =
|
|
|
11
11
|
, method : String
|
|
12
12
|
, headers : List ( String, String )
|
|
13
13
|
, body : Body
|
|
14
|
-
,
|
|
14
|
+
, cacheOptions : Maybe Encode.Value
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
|
|
@@ -40,5 +40,5 @@ codec =
|
|
|
40
40
|
|> Codec.field "method" .method Codec.string
|
|
41
41
|
|> Codec.field "headers" .headers (Codec.list (Codec.tuple Codec.string Codec.string))
|
|
42
42
|
|> Codec.field "body" .body StaticHttpBody.codec
|
|
43
|
-
|> Codec.
|
|
43
|
+
|> Codec.nullableField "cacheOptions" .cacheOptions Codec.value
|
|
44
44
|
|> Codec.buildObject
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
module Pages.StaticHttpRequest exposing (Error(..), MockResolver, RawRequest(..), Status(..), cacheRequestResolution, mockResolve,
|
|
1
|
+
module Pages.StaticHttpRequest exposing (Error(..), MockResolver, RawRequest(..), Status(..), cacheRequestResolution, mockResolve, toBuildError)
|
|
2
2
|
|
|
3
3
|
import BuildError exposing (BuildError)
|
|
4
4
|
import Dict
|
|
5
|
-
import
|
|
5
|
+
import Json.Encode
|
|
6
6
|
import Pages.StaticHttp.Request
|
|
7
7
|
import RequestsAndPending exposing (RequestsAndPending)
|
|
8
8
|
import TerminalText as Terminal
|
|
@@ -13,30 +13,19 @@ type alias MockResolver =
|
|
|
13
13
|
-> Maybe RequestsAndPending.Response
|
|
14
14
|
|
|
15
15
|
|
|
16
|
-
type RawRequest value
|
|
17
|
-
= Request (List Pages.StaticHttp.Request.Request) (Maybe MockResolver -> RequestsAndPending -> RawRequest value)
|
|
18
|
-
|
|
|
19
|
-
| ApiRoute value
|
|
16
|
+
type RawRequest error value
|
|
17
|
+
= Request (List Pages.StaticHttp.Request.Request) (Maybe MockResolver -> RequestsAndPending -> RawRequest error value)
|
|
18
|
+
| ApiRoute (Result error value)
|
|
20
19
|
|
|
21
20
|
|
|
22
21
|
type Error
|
|
23
|
-
=
|
|
24
|
-
| DecoderError String
|
|
22
|
+
= DecoderError String
|
|
25
23
|
| UserCalledStaticHttpFail String
|
|
26
24
|
|
|
27
25
|
|
|
28
26
|
toBuildError : String -> Error -> BuildError
|
|
29
27
|
toBuildError path error =
|
|
30
28
|
case error of
|
|
31
|
-
MissingHttpResponse missingKey _ ->
|
|
32
|
-
{ title = "Missing Http Response"
|
|
33
|
-
, message =
|
|
34
|
-
[ Terminal.text missingKey
|
|
35
|
-
]
|
|
36
|
-
, path = path
|
|
37
|
-
, fatal = True
|
|
38
|
-
}
|
|
39
|
-
|
|
40
29
|
DecoderError decodeErrorMessage ->
|
|
41
30
|
{ title = "Static Http Decoding Error"
|
|
42
31
|
, message =
|
|
@@ -49,109 +38,65 @@ toBuildError path error =
|
|
|
49
38
|
UserCalledStaticHttpFail decodeErrorMessage ->
|
|
50
39
|
{ title = "Called Static Http Fail"
|
|
51
40
|
, message =
|
|
52
|
-
[ Terminal.text <| "I ran into a call to `
|
|
41
|
+
[ Terminal.text <| "I ran into a call to `BackendTask.fail` with message: " ++ decodeErrorMessage
|
|
53
42
|
]
|
|
54
43
|
, path = path
|
|
55
44
|
, fatal = True
|
|
56
45
|
}
|
|
57
46
|
|
|
58
47
|
|
|
59
|
-
|
|
60
|
-
resolve request rawResponses =
|
|
61
|
-
case request of
|
|
62
|
-
RequestError error ->
|
|
63
|
-
Err error
|
|
64
|
-
|
|
65
|
-
Request _ lookupFn ->
|
|
66
|
-
case lookupFn Nothing rawResponses of
|
|
67
|
-
nextRequest ->
|
|
68
|
-
resolve nextRequest rawResponses
|
|
69
|
-
|
|
70
|
-
ApiRoute value ->
|
|
71
|
-
Ok value
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
mockResolve : RawRequest value -> MockResolver -> Result Error value
|
|
48
|
+
mockResolve : RawRequest error value -> MockResolver -> Result error value
|
|
75
49
|
mockResolve request mockResolver =
|
|
76
50
|
case request of
|
|
77
|
-
RequestError error ->
|
|
78
|
-
Err error
|
|
79
|
-
|
|
80
51
|
Request _ lookupFn ->
|
|
81
|
-
case lookupFn (Just mockResolver)
|
|
52
|
+
case lookupFn (Just mockResolver) (Json.Encode.object []) of
|
|
82
53
|
nextRequest ->
|
|
83
54
|
mockResolve nextRequest mockResolver
|
|
84
55
|
|
|
85
56
|
ApiRoute value ->
|
|
86
|
-
|
|
87
|
-
|
|
57
|
+
value
|
|
88
58
|
|
|
89
|
-
resolveUrls : RawRequest value -> RequestsAndPending -> List Pages.StaticHttp.Request.Request
|
|
90
|
-
resolveUrls request rawResponses =
|
|
91
|
-
resolveUrlsHelp rawResponses [] request
|
|
92
59
|
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
60
|
+
cacheRequestResolution :
|
|
61
|
+
RawRequest error value
|
|
62
|
+
-> RequestsAndPending
|
|
63
|
+
-> Status error value
|
|
64
|
+
cacheRequestResolution request rawResponses =
|
|
96
65
|
case request of
|
|
97
|
-
RequestError error ->
|
|
98
|
-
case error of
|
|
99
|
-
MissingHttpResponse _ next ->
|
|
100
|
-
(soFar ++ next)
|
|
101
|
-
|> List.Extra.uniqueBy Pages.StaticHttp.Request.hash
|
|
102
|
-
|
|
103
|
-
_ ->
|
|
104
|
-
soFar
|
|
105
|
-
|
|
106
66
|
Request urlList lookupFn ->
|
|
107
|
-
|
|
108
|
-
rawResponses
|
|
109
|
-
(soFar ++ urlList)
|
|
110
|
-
(lookupFn Nothing rawResponses)
|
|
67
|
+
if List.isEmpty urlList then
|
|
68
|
+
cacheRequestResolutionHelp urlList rawResponses (lookupFn Nothing rawResponses)
|
|
111
69
|
|
|
112
|
-
|
|
113
|
-
|
|
70
|
+
else
|
|
71
|
+
Incomplete urlList (Request [] lookupFn)
|
|
114
72
|
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
RawRequest value
|
|
118
|
-
-> RequestsAndPending
|
|
119
|
-
-> Status value
|
|
120
|
-
cacheRequestResolution request rawResponses =
|
|
121
|
-
cacheRequestResolutionHelp [] rawResponses request request
|
|
73
|
+
ApiRoute value ->
|
|
74
|
+
Complete value
|
|
122
75
|
|
|
123
76
|
|
|
124
|
-
type Status value
|
|
125
|
-
= Incomplete (List Pages.StaticHttp.Request.Request) (RawRequest value)
|
|
126
|
-
| HasPermanentError Error
|
|
127
|
-
| Complete
|
|
77
|
+
type Status error value
|
|
78
|
+
= Incomplete (List Pages.StaticHttp.Request.Request) (RawRequest error value)
|
|
79
|
+
| HasPermanentError Error
|
|
80
|
+
| Complete (Result error value)
|
|
128
81
|
|
|
129
82
|
|
|
130
83
|
cacheRequestResolutionHelp :
|
|
131
84
|
List Pages.StaticHttp.Request.Request
|
|
132
85
|
-> RequestsAndPending
|
|
133
|
-
-> RawRequest value
|
|
134
|
-
->
|
|
135
|
-
|
|
136
|
-
cacheRequestResolutionHelp foundUrls rawResponses parentRequest request =
|
|
86
|
+
-> RawRequest error value
|
|
87
|
+
-> Status error value
|
|
88
|
+
cacheRequestResolutionHelp foundUrls rawResponses request =
|
|
137
89
|
case request of
|
|
138
|
-
RequestError error ->
|
|
139
|
-
case error of
|
|
140
|
-
MissingHttpResponse _ _ ->
|
|
141
|
-
-- TODO do I need to pass through continuation URLs here? -- Incomplete (urlList ++ foundUrls)
|
|
142
|
-
Incomplete foundUrls parentRequest
|
|
143
|
-
|
|
144
|
-
DecoderError _ ->
|
|
145
|
-
HasPermanentError error parentRequest
|
|
146
|
-
|
|
147
|
-
UserCalledStaticHttpFail _ ->
|
|
148
|
-
HasPermanentError error parentRequest
|
|
149
|
-
|
|
150
90
|
Request urlList lookupFn ->
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
91
|
+
if (urlList ++ foundUrls) |> List.isEmpty then
|
|
92
|
+
cacheRequestResolutionHelp
|
|
93
|
+
[]
|
|
94
|
+
rawResponses
|
|
95
|
+
(lookupFn Nothing rawResponses)
|
|
155
96
|
|
|
156
|
-
|
|
157
|
-
|
|
97
|
+
else
|
|
98
|
+
Incomplete (urlList ++ foundUrls)
|
|
99
|
+
(Request [] lookupFn)
|
|
100
|
+
|
|
101
|
+
ApiRoute value ->
|
|
102
|
+
Complete value
|
|
@@ -1,16 +1,14 @@
|
|
|
1
|
-
module RequestsAndPending exposing (RequestsAndPending, Response(..), ResponseBody(..),
|
|
1
|
+
module RequestsAndPending exposing (RawResponse, RequestsAndPending, Response(..), ResponseBody(..), bodyEncoder, get)
|
|
2
2
|
|
|
3
3
|
import Base64
|
|
4
4
|
import Bytes exposing (Bytes)
|
|
5
|
-
import Codec
|
|
6
5
|
import Dict exposing (Dict)
|
|
7
6
|
import Json.Decode as Decode exposing (Decoder)
|
|
8
7
|
import Json.Encode as Encode
|
|
9
|
-
import Pages.StaticHttp.Request
|
|
10
8
|
|
|
11
9
|
|
|
12
10
|
type alias RequestsAndPending =
|
|
13
|
-
|
|
11
|
+
Decode.Value
|
|
14
12
|
|
|
15
13
|
|
|
16
14
|
type ResponseBody
|
|
@@ -20,18 +18,6 @@ type ResponseBody
|
|
|
20
18
|
| WhateverBody
|
|
21
19
|
|
|
22
20
|
|
|
23
|
-
batchDecoder : Decoder (List { request : Pages.StaticHttp.Request.Request, response : Response })
|
|
24
|
-
batchDecoder =
|
|
25
|
-
Decode.map2 (\request response -> { request = request, response = response })
|
|
26
|
-
(Decode.field "request"
|
|
27
|
-
(Pages.StaticHttp.Request.codec
|
|
28
|
-
|> Codec.decoder
|
|
29
|
-
)
|
|
30
|
-
)
|
|
31
|
-
(Decode.field "response" decoder)
|
|
32
|
-
|> Decode.list
|
|
33
|
-
|
|
34
|
-
|
|
35
21
|
decoder : Decoder Response
|
|
36
22
|
decoder =
|
|
37
23
|
Decode.map2 Response
|
|
@@ -117,6 +103,9 @@ responseDecoder =
|
|
|
117
103
|
|
|
118
104
|
get : String -> RequestsAndPending -> Maybe Response
|
|
119
105
|
get key requestsAndPending =
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
106
|
+
Decode.decodeValue
|
|
107
|
+
(Decode.field key
|
|
108
|
+
(Decode.field "response" decoder)
|
|
109
|
+
)
|
|
110
|
+
requestsAndPending
|
|
111
|
+
|> Result.toMaybe
|
package/src/Server/Request.elm
CHANGED
|
@@ -86,8 +86,8 @@ module Server.Request exposing
|
|
|
86
86
|
|
|
87
87
|
-}
|
|
88
88
|
|
|
89
|
+
import BackendTask exposing (BackendTask)
|
|
89
90
|
import CookieParser
|
|
90
|
-
import DataSource exposing (DataSource)
|
|
91
91
|
import Dict exposing (Dict)
|
|
92
92
|
import Form
|
|
93
93
|
import Form.Validation as Validation
|
|
@@ -118,17 +118,17 @@ Note that this data is not available for pre-rendered pages or pre-rendered API
|
|
|
118
118
|
This is because when a page is pre-rendered, there _is_ no incoming HTTP request to respond to, it is rendered before a user
|
|
119
119
|
requests the page and then the pre-rendered page is served as a plain file (without running your Route Module).
|
|
120
120
|
|
|
121
|
-
That's why `RouteBuilder.preRender` has `data : RouteParams ->
|
|
121
|
+
That's why `RouteBuilder.preRender` has `data : RouteParams -> BackendTask Data`:
|
|
122
122
|
|
|
123
|
-
import
|
|
123
|
+
import BackendTask exposing (BackendTask)
|
|
124
124
|
import RouteBuilder exposing (StatelessRoute)
|
|
125
125
|
|
|
126
126
|
type alias Data =
|
|
127
127
|
{}
|
|
128
128
|
|
|
129
|
-
data : RouteParams ->
|
|
129
|
+
data : RouteParams -> BackendTask Data
|
|
130
130
|
data routeParams =
|
|
131
|
-
|
|
131
|
+
BackendTask.succeed Data
|
|
132
132
|
|
|
133
133
|
route : StatelessRoute RouteParams Data ActionData
|
|
134
134
|
route =
|
|
@@ -141,7 +141,7 @@ That's why `RouteBuilder.preRender` has `data : RouteParams -> DataSource Data`:
|
|
|
141
141
|
|
|
142
142
|
A server-rendered Route Module _does_ have access to a user's incoming HTTP request because it runs every time the page
|
|
143
143
|
is loaded. That's why `data` is a `Request.Parser` in server-rendered Route Modules. Since you have an incoming HTTP request for server-rendered routes,
|
|
144
|
-
`RouteBuilder.serverRender` has `data : RouteParams -> Request.Parser (
|
|
144
|
+
`RouteBuilder.serverRender` has `data : RouteParams -> Request.Parser (BackendTask (Response Data))`. That means that you
|
|
145
145
|
can use the incoming HTTP request data to choose how to respond. For example, you could check for a dark-mode preference
|
|
146
146
|
cookie and render a light- or dark-themed page and render a different page.
|
|
147
147
|
|
|
@@ -151,7 +151,7 @@ That's a mouthful, so let's unpack what it means.
|
|
|
151
151
|
|
|
152
152
|
data from the request payload using a Server Request Parser.
|
|
153
153
|
|
|
154
|
-
import
|
|
154
|
+
import BackendTask exposing (BackendTask)
|
|
155
155
|
import RouteBuilder exposing (StatelessRoute)
|
|
156
156
|
import Server.Request as Request exposing (Request)
|
|
157
157
|
import Server.Response as Response exposing (Response)
|
|
@@ -161,11 +161,11 @@ data from the request payload using a Server Request Parser.
|
|
|
161
161
|
|
|
162
162
|
data :
|
|
163
163
|
RouteParams
|
|
164
|
-
-> Request.Parser (
|
|
164
|
+
-> Request.Parser (BackendTask (Response Data))
|
|
165
165
|
data routeParams =
|
|
166
166
|
{}
|
|
167
167
|
|> Server.Response.render
|
|
168
|
-
|>
|
|
168
|
+
|> BackendTask.succeed
|
|
169
169
|
|> Request.succeed
|
|
170
170
|
|
|
171
171
|
route : StatelessRoute RouteParams Data ActionData
|
|
@@ -225,7 +225,7 @@ succeed value =
|
|
|
225
225
|
|
|
226
226
|
{-| TODO internal only
|
|
227
227
|
-}
|
|
228
|
-
getDecoder : Parser (
|
|
228
|
+
getDecoder : Parser (BackendTask error response) -> Json.Decode.Decoder (Result ( ValidationError, List ValidationError ) (BackendTask error response))
|
|
229
229
|
getDecoder (Internal.Request.Parser decoder) =
|
|
230
230
|
decoder
|
|
231
231
|
|> Json.Decode.map
|
|
@@ -881,8 +881,8 @@ fileField_ name =
|
|
|
881
881
|
|
|
882
882
|
{-| -}
|
|
883
883
|
formDataWithServerValidation :
|
|
884
|
-
Form.ServerForms error (
|
|
885
|
-
-> Parser (
|
|
884
|
+
Form.ServerForms error (BackendTask error (Validation.Validation error combined kind constraints))
|
|
885
|
+
-> Parser (BackendTask error (Result (Form.Response error) ( Form.Response error, combined )))
|
|
886
886
|
formDataWithServerValidation formParsers =
|
|
887
887
|
rawFormData
|
|
888
888
|
|> andThen
|
|
@@ -897,7 +897,7 @@ formDataWithServerValidation formParsers =
|
|
|
897
897
|
( Just decoded, Nothing ) ->
|
|
898
898
|
succeed
|
|
899
899
|
(decoded
|
|
900
|
-
|>
|
|
900
|
+
|> BackendTask.map
|
|
901
901
|
(\(Validation _ _ ( maybeParsed, errors2 )) ->
|
|
902
902
|
case ( maybeParsed, errors2 |> Dict.toList |> List.filter (\( _, value ) -> value |> List.isEmpty |> not) |> List.NonEmpty.fromList ) of
|
|
903
903
|
( Just decodedFinal, Nothing ) ->
|
|
@@ -934,7 +934,7 @@ formDataWithServerValidation formParsers =
|
|
|
934
934
|
|> Dict.fromList
|
|
935
935
|
}
|
|
936
936
|
)
|
|
937
|
-
|>
|
|
937
|
+
|> BackendTask.succeed
|
|
938
938
|
|> succeed
|
|
939
939
|
)
|
|
940
940
|
|