elm-pages 3.0.0-beta.4 → 3.0.0-beta.41
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 +10 -1
- package/adapter/netlify.js +207 -0
- package/codegen/{elm-pages-codegen.js → elm-pages-codegen.cjs} +2828 -2933
- 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/i.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 +1447 -342
- package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/Runner.elm.js +17004 -13817
- 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/elm.json +9 -7
- package/generator/dead-code-review/src/Pages/Review/DeadCodeEliminateData.elm +59 -10
- package/generator/dead-code-review/tests/Pages/Review/DeadCodeEliminateDataTest.elm +52 -36
- package/generator/review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Internal-RoutePattern.elmi +0 -0
- package/generator/review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Internal-RoutePattern.elmo +0 -0
- package/generator/review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-NoContractViolations.elmi +0 -0
- package/generator/review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-NoContractViolations.elmo +0 -0
- 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/i.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 +1447 -342
- package/generator/review/elm-stuff/tests-0.19.1/js/Runner.elm.js +25025 -21739
- 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/review/elm.json +10 -10
- package/generator/src/RouteBuilder.elm +121 -114
- package/generator/src/SharedTemplate.elm +8 -7
- package/generator/src/SiteConfig.elm +3 -2
- package/generator/src/basepath-middleware.js +3 -3
- package/generator/src/build.js +209 -92
- package/generator/src/cli.js +292 -88
- package/generator/src/codegen.js +29 -27
- package/generator/src/compatibility-key.js +3 -0
- package/generator/src/compile-elm.js +43 -26
- package/generator/src/config.js +39 -0
- package/generator/src/copy-dir.js +2 -2
- package/generator/src/dev-server.js +176 -138
- package/generator/src/dir-helpers.js +9 -26
- package/generator/src/elm-codegen.js +5 -4
- package/generator/src/elm-file-constants.js +2 -3
- package/generator/src/error-formatter.js +12 -11
- package/generator/src/file-helpers.js +3 -4
- package/generator/src/generate-template-module-connector.js +23 -23
- package/generator/src/init.js +9 -8
- package/generator/src/pre-render-html.js +39 -28
- package/generator/src/render-test.js +109 -0
- package/generator/src/render-worker.js +25 -28
- package/generator/src/render.js +321 -142
- package/generator/src/request-cache.js +265 -162
- package/generator/src/resolve-elm-module.js +64 -0
- package/generator/src/rewrite-client-elm-json.js +6 -5
- package/generator/src/rewrite-elm-json-help.js +56 -0
- package/generator/src/rewrite-elm-json.js +17 -7
- package/generator/src/route-codegen-helpers.js +16 -31
- package/generator/src/seo-renderer.js +12 -7
- package/generator/src/vite-utils.js +77 -0
- package/generator/static-code/elm-pages.js +10 -0
- package/generator/static-code/hmr.js +79 -13
- package/generator/template/app/Api.elm +6 -5
- package/generator/template/app/Effect.elm +123 -0
- package/generator/template/app/ErrorPage.elm +37 -6
- package/generator/template/app/Route/Index.elm +17 -10
- package/generator/template/app/Shared.elm +24 -47
- package/generator/template/app/Site.elm +19 -6
- package/generator/template/app/View.elm +1 -8
- package/generator/template/elm-tooling.json +0 -3
- package/generator/template/elm.json +32 -24
- package/generator/template/package.json +10 -4
- package/package.json +30 -27
- package/src/ApiRoute.elm +199 -61
- package/src/BackendTask/Custom.elm +325 -0
- package/src/BackendTask/Env.elm +90 -0
- package/src/{DataSource → BackendTask}/File.elm +171 -56
- package/src/{DataSource → BackendTask}/Glob.elm +136 -125
- package/src/BackendTask/Http.elm +679 -0
- package/src/{DataSource → BackendTask}/Internal/Glob.elm +1 -1
- package/src/BackendTask/Internal/Request.elm +69 -0
- package/src/BackendTask/Random.elm +79 -0
- package/src/BackendTask/Time.elm +47 -0
- package/src/BackendTask.elm +531 -0
- package/src/FatalError.elm +90 -0
- package/src/Head/Seo.elm +4 -4
- package/src/Head.elm +237 -7
- package/src/HtmlPrinter.elm +7 -3
- package/src/Internal/ApiRoute.elm +7 -5
- package/src/PageServerResponse.elm +6 -1
- package/src/Pages/ConcurrentSubmission.elm +127 -0
- package/src/Pages/Form.elm +340 -0
- package/src/Pages/FormData.elm +18 -0
- package/src/Pages/GeneratorProgramConfig.elm +15 -0
- package/src/Pages/Internal/FatalError.elm +5 -0
- package/src/Pages/Internal/Msg.elm +93 -0
- package/src/Pages/Internal/NotFoundReason.elm +4 -4
- package/src/Pages/Internal/Platform/Cli.elm +617 -768
- package/src/Pages/Internal/Platform/CompatibilityKey.elm +6 -0
- package/src/Pages/Internal/Platform/Effect.elm +1 -2
- package/src/Pages/Internal/Platform/GeneratorApplication.elm +379 -0
- package/src/Pages/Internal/Platform/StaticResponses.elm +65 -276
- package/src/Pages/Internal/Platform/ToJsPayload.elm +6 -9
- package/src/Pages/Internal/Platform.elm +359 -225
- package/src/Pages/Internal/ResponseSketch.elm +2 -2
- package/src/Pages/Internal/Script.elm +17 -0
- package/src/Pages/Internal/StaticHttpBody.elm +35 -1
- package/src/Pages/Manifest.elm +52 -11
- package/src/Pages/Navigation.elm +87 -0
- package/src/Pages/PageUrl.elm +26 -12
- package/src/Pages/ProgramConfig.elm +35 -23
- package/src/Pages/Script.elm +166 -0
- package/src/Pages/SiteConfig.elm +3 -2
- package/src/Pages/StaticHttp/Request.elm +2 -2
- package/src/Pages/StaticHttpRequest.elm +23 -99
- package/src/Pages/Url.elm +3 -3
- package/src/PagesMsg.elm +88 -0
- package/src/QueryParams.elm +21 -172
- package/src/RenderRequest.elm +7 -7
- package/src/RequestsAndPending.elm +37 -20
- package/src/Result/Extra.elm +26 -0
- package/src/Scaffold/Form.elm +569 -0
- package/src/Scaffold/Route.elm +1411 -0
- package/src/Server/Request.elm +74 -72
- package/src/Server/Session.elm +62 -42
- package/src/Server/SetCookie.elm +80 -32
- package/src/Stub.elm +53 -0
- package/src/Test/Html/Internal/ElmHtml/ToString.elm +8 -9
- package/src/{Path.elm → UrlPath.elm} +33 -36
- package/src/DataSource/Env.elm +0 -38
- package/src/DataSource/Http.elm +0 -446
- package/src/DataSource/Internal/Request.elm +0 -20
- package/src/DataSource/Port.elm +0 -90
- package/src/DataSource.elm +0 -538
- package/src/Form/Field.elm +0 -717
- package/src/Form/FieldStatus.elm +0 -36
- package/src/Form/FieldView.elm +0 -417
- package/src/Form/FormData.elm +0 -22
- package/src/Form/Validation.elm +0 -391
- package/src/Form/Value.elm +0 -118
- package/src/Form.elm +0 -1683
- package/src/FormDecoder.elm +0 -102
- package/src/Pages/FormState.elm +0 -256
- package/src/Pages/Generate.elm +0 -800
- package/src/Pages/Internal/Form.elm +0 -17
- package/src/Pages/Msg.elm +0 -79
- package/src/Pages/Transition.elm +0 -70
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
module Pages.Internal.Form exposing (Validation(..), ViewField)
|
|
2
|
-
|
|
3
|
-
import Dict exposing (Dict)
|
|
4
|
-
import Form.FieldStatus exposing (FieldStatus)
|
|
5
|
-
import Json.Encode as Encode
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
type Validation error parsed kind field
|
|
9
|
-
= Validation (Maybe (ViewField kind)) (Maybe String) ( Maybe parsed, Dict String (List error) )
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
{-| -}
|
|
13
|
-
type alias ViewField kind =
|
|
14
|
-
{ value : Maybe String
|
|
15
|
-
, status : FieldStatus
|
|
16
|
-
, kind : ( kind, List ( String, Encode.Value ) )
|
|
17
|
-
}
|
package/src/Pages/Msg.elm
DELETED
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
module Pages.Msg exposing
|
|
2
|
-
( Msg(..)
|
|
3
|
-
, map, onSubmit, fetcherOnSubmit, submitIfValid
|
|
4
|
-
)
|
|
5
|
-
|
|
6
|
-
{-|
|
|
7
|
-
|
|
8
|
-
@docs Msg
|
|
9
|
-
|
|
10
|
-
@docs map, onSubmit, fetcherOnSubmit, submitIfValid
|
|
11
|
-
|
|
12
|
-
-}
|
|
13
|
-
|
|
14
|
-
import Form.FormData exposing (FormData)
|
|
15
|
-
import FormDecoder
|
|
16
|
-
import Html exposing (Attribute)
|
|
17
|
-
import Html.Attributes as Attr
|
|
18
|
-
import Json.Decode
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
{-| -}
|
|
22
|
-
type Msg userMsg
|
|
23
|
-
= UserMsg userMsg
|
|
24
|
-
| Submit FormData
|
|
25
|
-
| SubmitIfValid String FormData Bool
|
|
26
|
-
| SubmitFetcher String FormData Bool (Maybe userMsg)
|
|
27
|
-
| FormFieldEvent Json.Decode.Value
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
{-| -}
|
|
31
|
-
onSubmit : Attribute (Msg userMsg)
|
|
32
|
-
onSubmit =
|
|
33
|
-
FormDecoder.formDataOnSubmit
|
|
34
|
-
|> Attr.map Submit
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
{-| -}
|
|
38
|
-
submitIfValid : String -> (List ( String, String ) -> Bool) -> Attribute (Msg userMsg)
|
|
39
|
-
submitIfValid formId isValid =
|
|
40
|
-
FormDecoder.formDataOnSubmit
|
|
41
|
-
|> Attr.map (\formData -> SubmitIfValid formId formData (isValid formData.fields))
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
{-| -}
|
|
45
|
-
fetcherOnSubmit : Maybe ({ fields : List ( String, String ) } -> userMsg) -> String -> (List ( String, String ) -> Bool) -> Attribute (Msg userMsg)
|
|
46
|
-
fetcherOnSubmit userMsg formId isValid =
|
|
47
|
-
FormDecoder.formDataOnSubmit
|
|
48
|
-
|> Attr.map
|
|
49
|
-
(\formData ->
|
|
50
|
-
SubmitFetcher formId
|
|
51
|
-
formData
|
|
52
|
-
(isValid formData.fields)
|
|
53
|
-
(userMsg
|
|
54
|
-
|> Maybe.map
|
|
55
|
-
(\toUserMsg ->
|
|
56
|
-
toUserMsg { fields = formData.fields }
|
|
57
|
-
)
|
|
58
|
-
)
|
|
59
|
-
)
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
{-| -}
|
|
63
|
-
map : (a -> b) -> Msg a -> Msg b
|
|
64
|
-
map mapFn msg =
|
|
65
|
-
case msg of
|
|
66
|
-
UserMsg userMsg ->
|
|
67
|
-
UserMsg (mapFn userMsg)
|
|
68
|
-
|
|
69
|
-
Submit info ->
|
|
70
|
-
Submit info
|
|
71
|
-
|
|
72
|
-
SubmitIfValid formId info isValid ->
|
|
73
|
-
SubmitIfValid formId info isValid
|
|
74
|
-
|
|
75
|
-
SubmitFetcher formId info isValid toUserMsg ->
|
|
76
|
-
SubmitFetcher formId info isValid (Maybe.map mapFn toUserMsg)
|
|
77
|
-
|
|
78
|
-
FormFieldEvent value ->
|
|
79
|
-
FormFieldEvent value
|
package/src/Pages/Transition.elm
DELETED
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
module Pages.Transition exposing
|
|
2
|
-
( Transition(..), LoadingState(..), map
|
|
3
|
-
, FetcherState, FetcherSubmitStatus(..)
|
|
4
|
-
)
|
|
5
|
-
|
|
6
|
-
{-|
|
|
7
|
-
|
|
8
|
-
@docs Transition, LoadingState, map
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
## Fetchers
|
|
12
|
-
|
|
13
|
-
@docs FetcherState, FetcherSubmitStatus
|
|
14
|
-
|
|
15
|
-
-}
|
|
16
|
-
|
|
17
|
-
import Form.FormData exposing (FormData)
|
|
18
|
-
import Path exposing (Path)
|
|
19
|
-
import Time
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
{-| -}
|
|
23
|
-
type Transition
|
|
24
|
-
= Submitting FormData
|
|
25
|
-
| LoadAfterSubmit FormData Path LoadingState
|
|
26
|
-
| Loading Path LoadingState
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
{-| -}
|
|
30
|
-
type LoadingState
|
|
31
|
-
= Redirecting
|
|
32
|
-
| Load
|
|
33
|
-
| ActionRedirect
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
{-| -}
|
|
37
|
-
type alias FetcherState actionData =
|
|
38
|
-
{ status : FetcherSubmitStatus actionData
|
|
39
|
-
, payload : FormData
|
|
40
|
-
, initiatedAt : Time.Posix
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
{-| -}
|
|
45
|
-
type FetcherSubmitStatus actionData
|
|
46
|
-
= FetcherSubmitting
|
|
47
|
-
| FetcherReloading actionData
|
|
48
|
-
| FetcherComplete actionData
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
{-| -}
|
|
52
|
-
map : (a -> b) -> FetcherState a -> FetcherState b
|
|
53
|
-
map mapFn fetcherState =
|
|
54
|
-
{ status = mapStatus mapFn fetcherState.status
|
|
55
|
-
, payload = fetcherState.payload
|
|
56
|
-
, initiatedAt = fetcherState.initiatedAt
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
mapStatus : (a -> b) -> FetcherSubmitStatus a -> FetcherSubmitStatus b
|
|
61
|
-
mapStatus mapFn fetcherSubmitStatus =
|
|
62
|
-
case fetcherSubmitStatus of
|
|
63
|
-
FetcherSubmitting ->
|
|
64
|
-
FetcherSubmitting
|
|
65
|
-
|
|
66
|
-
FetcherReloading value ->
|
|
67
|
-
FetcherReloading (mapFn value)
|
|
68
|
-
|
|
69
|
-
FetcherComplete value ->
|
|
70
|
-
FetcherComplete (mapFn value)
|