Externalize more strings

This commit is contained in:
Eike Kettner 2021-04-17 10:19:05 +02:00
parent 90a86bdd82
commit b3c3c783dc
9 changed files with 159 additions and 140 deletions

View File

@ -0,0 +1,60 @@
module Comp.ExpandCollapse exposing
( collapseToggle
, expandToggle
)
import Html exposing (..)
import Html.Attributes exposing (..)
import Html.Events exposing (onClick)
import Messages.Comp.ExpandCollapse exposing (Texts)
import Styles as S
type alias Model =
{ max : Int
, all : Int
}
--- View2
expandToggle : Texts -> Model -> msg -> List (Html msg)
expandToggle texts model m =
if model.max >= model.all then
[]
else
[ a
[ class S.link
, class "flex flex-row items-center"
, onClick m
, href "#"
]
[ i [ class "fa fa-angle-down" ] []
, div [ class "font-italics text-sm ml-2" ]
[ text texts.showMoreLabel
]
]
]
collapseToggle : Texts -> Model -> msg -> List (Html msg)
collapseToggle texts model m =
if model.max >= model.all then
[]
else
[ a
[ class S.link
, class "flex flex-row items-center"
, onClick m
, href "#"
]
[ i [ class "fa fa-angle-up" ] []
, div [ class "font-italics text-sm ml-2" ]
[ text texts.showLessLabel
]
]
]

View File

@ -11,11 +11,12 @@ module Comp.FolderSelect exposing
)
import Api.Model.FolderStats exposing (FolderStats)
import Comp.ExpandCollapse
import Dict
import Html exposing (..)
import Html.Attributes exposing (..)
import Html.Events exposing (onClick)
import Util.ExpandCollapse
import Messages.Comp.FolderSelect exposing (Texts)
import Util.ItemDragDrop as DD
import Util.List
@ -134,24 +135,28 @@ selectedFolder model =
--- View2
expandToggle : Int -> Model -> List (Html Msg)
expandToggle max model =
Util.ExpandCollapse.expandToggle
max
(List.length model.all)
expandToggle : Texts -> Int -> Model -> List (Html Msg)
expandToggle texts max model =
Comp.ExpandCollapse.expandToggle
texts.expandCollapse
{ max = max
, all = List.length model.all
}
ToggleExpand
collapseToggle : Int -> Model -> List (Html Msg)
collapseToggle max model =
Util.ExpandCollapse.collapseToggle
max
(List.length model.all)
collapseToggle : Texts -> Int -> Model -> List (Html Msg)
collapseToggle texts max model =
Comp.ExpandCollapse.collapseToggle
texts.expandCollapse
{ max = max
, all = List.length model.all
}
ToggleExpand
viewDrop2 : DD.Model -> Int -> Model -> Html Msg
viewDrop2 dropModel constr model =
viewDrop2 : Texts -> DD.Model -> Int -> Model -> Html Msg
viewDrop2 texts dropModel constr model =
let
highlightDrop =
DD.getDropId dropModel == Just DD.FolderRemove
@ -169,20 +174,20 @@ viewDrop2 dropModel constr model =
[ text "Folders"
]
, div [ class "flex flex-col space-y-2 md:space-y-1" ]
(renderItems2 dropModel constr model)
(renderItems2 texts dropModel constr model)
]
renderItems2 : DD.Model -> Int -> Model -> List (Html Msg)
renderItems2 dropModel constr model =
renderItems2 : Texts -> DD.Model -> Int -> Model -> List (Html Msg)
renderItems2 texts dropModel constr model =
if constr <= 0 then
List.map (viewItem2 dropModel model) model.all
else if model.expanded then
List.map (viewItem2 dropModel model) model.all ++ collapseToggle constr model
List.map (viewItem2 dropModel model) model.all ++ collapseToggle texts constr model
else
List.map (viewItem2 dropModel model) (List.take constr model.all) ++ expandToggle constr model
List.map (viewItem2 dropModel model) (List.take constr model.all) ++ expandToggle texts constr model
viewItem2 : DD.Model -> Model -> FolderStats -> Html Msg

View File

@ -1223,6 +1223,7 @@ searchTabs texts ddd flags settings model =
, body =
[ Html.map TagSelectMsg
(Comp.TagSelect.viewCats2
texts.tagSelect
settings
tagSelectWM
model.tagSelectModel
@ -1235,7 +1236,8 @@ searchTabs texts ddd flags settings model =
, info = Nothing
, body =
[ Html.map FolderSelectMsg
(Comp.FolderSelect.viewDrop2 ddd.model
(Comp.FolderSelect.viewDrop2 texts.folderSelect
ddd.model
settings.searchMenuFolderCount
model.folderList
)

View File

@ -21,6 +21,7 @@ module Comp.TagSelect exposing
import Api.Model.NameCount exposing (NameCount)
import Api.Model.Tag exposing (Tag)
import Api.Model.TagCount exposing (TagCount)
import Comp.ExpandCollapse
import Data.Icons as I
import Data.UiSettings exposing (UiSettings)
import Dict exposing (Dict)
@ -32,7 +33,6 @@ import Set
import Simple.Fuzzy
import String as S
import Styles as S
import Util.ExpandCollapse
import Util.ItemDragDrop as DD
import Util.Maybe
@ -405,7 +405,7 @@ viewAll2 texts ddm settings sel model =
wm =
makeWorkModel sel model
in
viewTagsDrop2 texts ddm wm settings model ++ [ viewCats2 settings wm model ]
viewTagsDrop2 texts ddm wm settings model ++ [ viewCats2 texts settings wm model ]
viewTagsDrop2 : Texts -> DD.Model -> WorkModel -> UiSettings -> Model -> List (Html Msg)
@ -440,20 +440,20 @@ viewTagsDrop2 texts ddm wm settings model =
]
]
, div [ class "flex flex-col space-y-2 md:space-y-1" ]
(renderTagItems2 ddm settings model wm)
(renderTagItems2 texts ddm settings model wm)
]
viewCats2 : UiSettings -> WorkModel -> Model -> Html Msg
viewCats2 settings wm model =
viewCats2 : Texts -> UiSettings -> WorkModel -> Model -> Html Msg
viewCats2 texts settings wm model =
div [ class "flex flex-col" ]
[ div [ class "flex flex-col space-y-2 md:space-y-1" ]
(renderCatItems2 settings model wm)
(renderCatItems2 texts settings model wm)
]
renderTagItems2 : DD.Model -> UiSettings -> Model -> WorkModel -> List (Html Msg)
renderTagItems2 ddm settings model wm =
renderTagItems2 : Texts -> DD.Model -> UiSettings -> Model -> WorkModel -> List (Html Msg)
renderTagItems2 texts ddm settings model wm =
let
tags =
wm.filteredTags
@ -462,15 +462,19 @@ renderTagItems2 ddm settings model wm =
settings.searchMenuTagCount
expLink =
Util.ExpandCollapse.expandToggle2
max
(List.length tags)
Comp.ExpandCollapse.expandToggle
texts.expandCollapse
{ max = max
, all = List.length tags
}
ToggleExpandTags
cpsLink =
Util.ExpandCollapse.collapseToggle2
max
(List.length tags)
Comp.ExpandCollapse.collapseToggle
texts.expandCollapse
{ max = max
, all = List.length tags
}
ToggleExpandTags
in
if max <= 0 then
@ -557,8 +561,8 @@ viewCategoryItem2 settings model cat =
]
renderCatItems2 : UiSettings -> Model -> WorkModel -> List (Html Msg)
renderCatItems2 settings model wm =
renderCatItems2 : Texts -> UiSettings -> Model -> WorkModel -> List (Html Msg)
renderCatItems2 texts settings model wm =
let
cats =
wm.filteredCats
@ -567,15 +571,19 @@ renderCatItems2 settings model wm =
settings.searchMenuTagCatCount
expLink =
Util.ExpandCollapse.expandToggle2
max
(List.length cats)
Comp.ExpandCollapse.expandToggle
texts.expandCollapse
{ max = max
, all = List.length cats
}
ToggleExpandCats
cpsLink =
Util.ExpandCollapse.collapseToggle2
max
(List.length cats)
Comp.ExpandCollapse.collapseToggle
texts.expandCollapse
{ max = max
, all = List.length cats
}
ToggleExpandCats
in
if max <= 0 then

View File

@ -0,0 +1,17 @@
module Messages.Comp.ExpandCollapse exposing
( Texts
, gb
)
type alias Texts =
{ showMoreLabel : String
, showLessLabel : String
}
gb : Texts
gb =
{ showMoreLabel = "Show More "
, showLessLabel = "Show Less "
}

View File

@ -0,0 +1,17 @@
module Messages.Comp.FolderSelect exposing
( Texts
, gb
)
import Messages.Comp.ExpandCollapse
type alias Texts =
{ expandCollapse : Messages.Comp.ExpandCollapse.Texts
}
gb : Texts
gb =
{ expandCollapse = Messages.Comp.ExpandCollapse.gb
}

View File

@ -2,6 +2,7 @@ module Messages.Comp.SearchMenu exposing (Texts, gb)
import Messages.Basics
import Messages.Comp.CustomFieldMultiInput
import Messages.Comp.FolderSelect
import Messages.Comp.TagSelect
@ -9,6 +10,7 @@ type alias Texts =
{ basics : Messages.Basics.Texts
, customFieldMultiInput : Messages.Comp.CustomFieldMultiInput.Texts
, tagSelect : Messages.Comp.TagSelect.Texts
, folderSelect : Messages.Comp.FolderSelect.Texts
, chooseDirection : String
, choosePerson : String
, chooseEquipment : String
@ -38,6 +40,7 @@ gb =
{ basics = Messages.Basics.gb
, customFieldMultiInput = Messages.Comp.CustomFieldMultiInput.gb
, tagSelect = Messages.Comp.TagSelect.gb
, folderSelect = Messages.Comp.FolderSelect.gb
, chooseDirection = "Choose a direction"
, choosePerson = "Choose a person"
, chooseEquipment = "Choose an equipment"

View File

@ -1,8 +1,11 @@
module Messages.Comp.TagSelect exposing (Texts, gb)
import Messages.Comp.ExpandCollapse
type alias Texts =
{ hideEmpty : String
{ expandCollapse : Messages.Comp.ExpandCollapse.Texts
, hideEmpty : String
, showEmpty : String
, filterPlaceholder : String
}
@ -10,7 +13,8 @@ type alias Texts =
gb : Texts
gb =
{ hideEmpty = "Hide empty"
{ expandCollapse = Messages.Comp.ExpandCollapse.gb
, hideEmpty = "Hide empty"
, showEmpty = "Show empty"
, filterPlaceholder = "Filter "
}

View File

@ -1,97 +0,0 @@
module Util.ExpandCollapse exposing
( collapseToggle
, collapseToggle2
, expandToggle
, expandToggle2
)
import Html exposing (..)
import Html.Attributes exposing (..)
import Html.Events exposing (onClick)
import Styles as S
expandToggle : Int -> Int -> msg -> List (Html msg)
expandToggle max all m =
if max >= all then
[]
else
[ a
[ class "item"
, onClick m
, href "#"
]
[ i [ class "angle down icon" ] []
, div [ class "content" ]
[ div [ class "description" ]
[ em [] [ text "Show More " ]
]
]
]
]
collapseToggle : Int -> Int -> msg -> List (Html msg)
collapseToggle max all m =
if max >= all then
[]
else
[ a
[ class "item"
, onClick m
, href "#"
]
[ i [ class "angle up icon" ] []
, div [ class "content" ]
[ div [ class "description" ]
[ em [] [ text "Show Less " ]
]
]
]
]
--- View2
expandToggle2 : Int -> Int -> msg -> List (Html msg)
expandToggle2 max all m =
if max >= all then
[]
else
[ a
[ class S.link
, class "flex flex-row items-center"
, onClick m
, href "#"
]
[ i [ class "fa fa-angle-down" ] []
, div [ class "font-italics text-sm ml-2" ]
[ text "Show More "
]
]
]
collapseToggle2 : Int -> Int -> msg -> List (Html msg)
collapseToggle2 max all m =
if max >= all then
[]
else
[ a
[ class S.link
, class "flex flex-row items-center"
, onClick m
, href "#"
]
[ i [ class "fa fa-angle-up" ] []
, div [ class "font-italics text-sm ml-2" ]
[ text "Show Less "
]
]
]