Fix base-path example.

This commit is contained in:
Dillon Kearns 2022-03-25 10:13:12 -07:00
parent 4f58d763f4
commit 535d6d4932
7 changed files with 57 additions and 40 deletions

View File

@ -0,0 +1,50 @@
module Effect exposing (Effect(..), batch, fromCmd, map, none, perform)
import Browser.Navigation
type Effect msg
= None
| Cmd (Cmd msg)
| Batch (List (Effect msg))
none : Effect msg
none =
None
batch : List (Effect msg) -> Effect msg
batch =
Batch
fromCmd : Cmd msg -> Effect msg
fromCmd =
Cmd
map : (a -> b) -> Effect a -> Effect b
map fn effect =
case effect of
None ->
None
Cmd cmd ->
Cmd (Cmd.map fn cmd)
Batch list ->
Batch (List.map (map fn) list)
perform : (pageMsg -> msg) -> Browser.Navigation.Key -> Effect pageMsg -> Cmd msg
perform fromPageMsg key effect =
case effect of
None ->
Cmd.none
Cmd cmd ->
Cmd.map fromPageMsg cmd
Batch list ->
Cmd.batch (List.map (perform fromPageMsg key) list)

View File

@ -2,6 +2,7 @@ module Shared exposing (Data, Model, Msg(..), SharedMsg(..), template)
import Browser.Navigation
import DataSource
import Effect exposing (Effect)
import Html exposing (Html)
import Html.Styled
import Pages.Flags
@ -45,8 +46,7 @@ type alias Model =
init :
Maybe Browser.Navigation.Key
-> Pages.Flags.Flags
Pages.Flags.Flags
->
Maybe
{ path :
@ -57,18 +57,18 @@ init :
, metadata : route
, pageUrl : Maybe PageUrl
}
-> ( Model, Cmd Msg )
init _ flags maybePagePath =
-> ( Model, Effect Msg )
init flags maybePagePath =
( { showMobileMenu = False }
, Cmd.none
, Effect.none
)
update : Msg -> Model -> ( Model, Cmd Msg )
update : Msg -> Model -> ( Model, Effect Msg )
update msg model =
case msg of
OnPageChange _ ->
( { model | showMobileMenu = False }, Cmd.none )
( { model | showMobileMenu = False }, Effect.none )
subscriptions : Path -> Model -> Sub Msg

View File

@ -1,33 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<script defer src="/elm.js" type="text/javascript"></script>
<link rel="modulepreload" href="data:application/javascript;base64,ZXhwb3J0IGRlZmF1bHQgewogIGxvYWQ6IGZ1bmN0aW9uIChlbG1Mb2FkZWQpIHt9LAogIGZsYWdzOiBmdW5jdGlvbiAoKSB7CiAgICByZXR1cm4gbnVsbDsKICB9LAp9Owo=" />
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<title></title>
<meta name="generator" content="elm-pages v2.1.11" />
<meta name="mobile-web-app-capable" content="yes" />
<meta name="theme-color" content="#ffffff" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta
name="apple-mobile-web-app-status-bar-style"
content="black-translucent"
/>
<link rel="canonical" href="https://elm-pages.com/sub-page" /> <meta name="description" content="TODO" /> <meta property="og:image" content="TODO" /> <meta property="og:image:secure_url" content="TODO" /> <meta property="og:image:alt" content="elm-pages logo" /> <meta property="og:title" content="TODO title" /> <meta property="og:url" content="https://elm-pages.com/sub-page" /> <meta property="og:description" content="TODO" /> <meta property="og:site_name" content="elm-pages" /> <meta property="twitter:card" content="summary" /> <meta property="twitter:title" content="TODO title" /> <meta property="twitter:description" content="TODO" /> <meta property="twitter:image" content="TODO" /> <meta property="twitter:image:alt" content="elm-pages logo" /> <meta property="og:type" content="website" /> <link rel="icon" sizes="32x32" type="image/png" href="https://res.cloudinary.com/dillonkearns/image/upload/c_pad,w_32,h_32,q_auto,f_png/v1603234028/elm-pages/elm-pages-icon" /> <link rel="icon" sizes="16x16" type="image/png" href="https://res.cloudinary.com/dillonkearns/image/upload/c_pad,w_16,h_16,q_auto,f_png/v1603234028/elm-pages/elm-pages-icon" /> <link rel="apple-touch-icon" sizes="180x180" href="https://res.cloudinary.com/dillonkearns/image/upload/c_pad,w_180,h_180,q_auto,f_png/v1603234028/elm-pages/elm-pages-icon" /> <link rel="apple-touch-icon" sizes="192x192" href="https://res.cloudinary.com/dillonkearns/image/upload/c_pad,w_192,h_192,q_auto,f_png/v1603234028/elm-pages/elm-pages-icon" /> <link rel="sitemap" type="application/xml" href="/sitemap.xml" />
<script id="__ELM_PAGES_BYTES_DATA__" type="application/octet-stream">AAI=</script>
<script type="module" crossorigin src="/base-path/assets/index.a677aaa6.js"></script>
<link rel="stylesheet" href="/base-path/assets/index.b0f41fb5.css">
</head>
<body>
<div data-url="" display="none"></div>
<div><style>._f57fa588 {
max-width:10rem;
}</style><label for="note"></label><div><style>div > p {
font-size:14px;
color:rgb(255, 0, 0);
}</style><div><p>Here is the Elm logo:</p><img class="_f57fa588" src="/images/elm-logo.svg"></div></div></div>
</body>
</html>

View File