mirror of
				https://github.com/TheAnachronism/docspell.git
				synced 2025-11-03 18:00:11 +00:00 
			
		
		
		
	Refactor to allow internal card links into search menu
Also allows to exchange the preview-url in the item card
This commit is contained in:
		@@ -141,6 +141,8 @@ module Api exposing
 | 
				
			|||||||
    , setTags
 | 
					    , setTags
 | 
				
			||||||
    , setTagsMultiple
 | 
					    , setTagsMultiple
 | 
				
			||||||
    , setUnconfirmed
 | 
					    , setUnconfirmed
 | 
				
			||||||
 | 
					    , shareAttachmentPreviewURL
 | 
				
			||||||
 | 
					    , shareItemBasePreviewURL
 | 
				
			||||||
    , startClassifier
 | 
					    , startClassifier
 | 
				
			||||||
    , startEmptyTrash
 | 
					    , startEmptyTrash
 | 
				
			||||||
    , startOnceNotifyDueItems
 | 
					    , startOnceNotifyDueItems
 | 
				
			||||||
@@ -2288,6 +2290,16 @@ searchShare flags token search receive =
 | 
				
			|||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					shareAttachmentPreviewURL : String -> String
 | 
				
			||||||
 | 
					shareAttachmentPreviewURL id =
 | 
				
			||||||
 | 
					    "/api/v1/share/attachment/" ++ id ++ "/preview?withFallback=true"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					shareItemBasePreviewURL : String -> String
 | 
				
			||||||
 | 
					shareItemBasePreviewURL itemId =
 | 
				
			||||||
 | 
					    "/api/v1/share/item/" ++ itemId ++ "/preview?withFallback=true"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
--- Helper
 | 
					--- Helper
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -56,6 +56,8 @@ type Msg
 | 
				
			|||||||
type alias ViewConfig =
 | 
					type alias ViewConfig =
 | 
				
			||||||
    { selection : ItemSelection
 | 
					    { selection : ItemSelection
 | 
				
			||||||
    , extraClasses : String
 | 
					    , extraClasses : String
 | 
				
			||||||
 | 
					    , previewUrl : AttachmentLight -> String
 | 
				
			||||||
 | 
					    , previewUrlFallback : ItemLight -> String
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -210,7 +212,7 @@ view2 texts cfg settings model item =
 | 
				
			|||||||
            []
 | 
					            []
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          else
 | 
					          else
 | 
				
			||||||
            [ previewImage2 settings cardAction model item
 | 
					            [ previewImage2 cfg settings cardAction model item
 | 
				
			||||||
            ]
 | 
					            ]
 | 
				
			||||||
         )
 | 
					         )
 | 
				
			||||||
            ++ [ mainContent2 texts cardAction cardColor isCreated isDeleted settings cfg item
 | 
					            ++ [ mainContent2 texts cardAction cardColor isCreated isDeleted settings cfg item
 | 
				
			||||||
@@ -443,16 +445,15 @@ mainTagsAndFields2 settings item =
 | 
				
			|||||||
        (renderFields ++ renderTags)
 | 
					        (renderFields ++ renderTags)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
previewImage2 : UiSettings -> List (Attribute Msg) -> Model -> ItemLight -> Html Msg
 | 
					previewImage2 : ViewConfig -> UiSettings -> List (Attribute Msg) -> Model -> ItemLight -> Html Msg
 | 
				
			||||||
previewImage2 settings cardAction model item =
 | 
					previewImage2 cfg settings cardAction model item =
 | 
				
			||||||
    let
 | 
					    let
 | 
				
			||||||
        mainAttach =
 | 
					        mainAttach =
 | 
				
			||||||
            currentAttachment model item
 | 
					            currentAttachment model item
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        previewUrl =
 | 
					        previewUrl =
 | 
				
			||||||
            Maybe.map .id mainAttach
 | 
					            Maybe.map cfg.previewUrl mainAttach
 | 
				
			||||||
                |> Maybe.map Api.attachmentPreviewURL
 | 
					                |> Maybe.withDefault (cfg.previewUrlFallback item)
 | 
				
			||||||
                |> Maybe.withDefault (Api.itemBasePreviewURL item.id)
 | 
					 | 
				
			||||||
    in
 | 
					    in
 | 
				
			||||||
    a
 | 
					    a
 | 
				
			||||||
        ([ class "overflow-hidden block bg-gray-50 dark:bg-bluegray-700 dark:bg-opacity-40  border-gray-400 dark:hover:border-bluegray-500 rounded-t-lg"
 | 
					        ([ class "overflow-hidden block bg-gray-50 dark:bg-bluegray-700 dark:bg-opacity-40  border-gray-400 dark:hover:border-bluegray-500 rounded-t-lg"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -17,6 +17,7 @@ module Comp.ItemCardList exposing
 | 
				
			|||||||
    , view2
 | 
					    , view2
 | 
				
			||||||
    )
 | 
					    )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import Api.Model.AttachmentLight exposing (AttachmentLight)
 | 
				
			||||||
import Api.Model.ItemLight exposing (ItemLight)
 | 
					import Api.Model.ItemLight exposing (ItemLight)
 | 
				
			||||||
import Api.Model.ItemLightGroup exposing (ItemLightGroup)
 | 
					import Api.Model.ItemLightGroup exposing (ItemLightGroup)
 | 
				
			||||||
import Api.Model.ItemLightList exposing (ItemLightList)
 | 
					import Api.Model.ItemLightList exposing (ItemLightList)
 | 
				
			||||||
@@ -72,13 +73,13 @@ prevItem model id =
 | 
				
			|||||||
--- Update
 | 
					--- Update
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
update : Flags -> Msg -> Model -> ( Model, Cmd Msg )
 | 
					update : Flags -> Msg -> Model -> ( Model, Cmd Msg, LinkTarget )
 | 
				
			||||||
update flags msg model =
 | 
					update flags msg model =
 | 
				
			||||||
    let
 | 
					    let
 | 
				
			||||||
        res =
 | 
					        res =
 | 
				
			||||||
            updateDrag DD.init flags msg model
 | 
					            updateDrag DD.init flags msg model
 | 
				
			||||||
    in
 | 
					    in
 | 
				
			||||||
    ( res.model, res.cmd )
 | 
					    ( res.model, res.cmd, res.linkTarget )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type alias UpdateResult =
 | 
					type alias UpdateResult =
 | 
				
			||||||
@@ -161,6 +162,8 @@ updateDrag dm _ msg model =
 | 
				
			|||||||
type alias ViewConfig =
 | 
					type alias ViewConfig =
 | 
				
			||||||
    { current : Maybe String
 | 
					    { current : Maybe String
 | 
				
			||||||
    , selection : ItemSelection
 | 
					    , selection : ItemSelection
 | 
				
			||||||
 | 
					    , previewUrl : AttachmentLight -> String
 | 
				
			||||||
 | 
					    , previewUrlFallback : ItemLight -> String
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -216,7 +219,7 @@ viewItem2 texts model cfg settings item =
 | 
				
			|||||||
                ""
 | 
					                ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        vvcfg =
 | 
					        vvcfg =
 | 
				
			||||||
            Comp.ItemCard.ViewConfig cfg.selection currentClass
 | 
					            Comp.ItemCard.ViewConfig cfg.selection currentClass cfg.previewUrl cfg.previewUrlFallback
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        cardModel =
 | 
					        cardModel =
 | 
				
			||||||
            Dict.get item.id model.itemCards
 | 
					            Dict.get item.id model.itemCards
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -14,6 +14,7 @@ module Comp.SearchMenu exposing
 | 
				
			|||||||
    , init
 | 
					    , init
 | 
				
			||||||
    , isFulltextSearch
 | 
					    , isFulltextSearch
 | 
				
			||||||
    , isNamesSearch
 | 
					    , isNamesSearch
 | 
				
			||||||
 | 
					    , linkTargetMsg
 | 
				
			||||||
    , textSearchString
 | 
					    , textSearchString
 | 
				
			||||||
    , update
 | 
					    , update
 | 
				
			||||||
    , updateDrop
 | 
					    , updateDrop
 | 
				
			||||||
@@ -34,6 +35,7 @@ import Comp.CustomFieldMultiInput
 | 
				
			|||||||
import Comp.DatePicker
 | 
					import Comp.DatePicker
 | 
				
			||||||
import Comp.Dropdown exposing (isDropdownChangeMsg)
 | 
					import Comp.Dropdown exposing (isDropdownChangeMsg)
 | 
				
			||||||
import Comp.FolderSelect
 | 
					import Comp.FolderSelect
 | 
				
			||||||
 | 
					import Comp.LinkTarget exposing (LinkTarget)
 | 
				
			||||||
import Comp.MenuBar as MB
 | 
					import Comp.MenuBar as MB
 | 
				
			||||||
import Comp.Tabs
 | 
					import Comp.Tabs
 | 
				
			||||||
import Comp.TagSelect
 | 
					import Comp.TagSelect
 | 
				
			||||||
@@ -377,6 +379,37 @@ type Msg
 | 
				
			|||||||
    | ToggleOpenAllAkkordionTabs
 | 
					    | ToggleOpenAllAkkordionTabs
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					linkTargetMsg : LinkTarget -> Maybe Msg
 | 
				
			||||||
 | 
					linkTargetMsg linkTarget =
 | 
				
			||||||
 | 
					    case linkTarget of
 | 
				
			||||||
 | 
					        Comp.LinkTarget.LinkNone ->
 | 
				
			||||||
 | 
					            Nothing
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        Comp.LinkTarget.LinkCorrOrg id ->
 | 
				
			||||||
 | 
					            Just <| SetCorrOrg id
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        Comp.LinkTarget.LinkCorrPerson id ->
 | 
				
			||||||
 | 
					            Just <| SetCorrPerson id
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        Comp.LinkTarget.LinkConcPerson id ->
 | 
				
			||||||
 | 
					            Just <| SetConcPerson id
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        Comp.LinkTarget.LinkConcEquip id ->
 | 
				
			||||||
 | 
					            Just <| SetConcEquip id
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        Comp.LinkTarget.LinkFolder id ->
 | 
				
			||||||
 | 
					            Just <| SetFolder id
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        Comp.LinkTarget.LinkTag id ->
 | 
				
			||||||
 | 
					            Just <| SetTag id.id
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        Comp.LinkTarget.LinkCustomField id ->
 | 
				
			||||||
 | 
					            Just <| SetCustomField id
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        Comp.LinkTarget.LinkSource str ->
 | 
				
			||||||
 | 
					            Just <| ResetToSource str
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type alias NextState =
 | 
					type alias NextState =
 | 
				
			||||||
    { model : Model
 | 
					    { model : Model
 | 
				
			||||||
    , cmd : Cmd Msg
 | 
					    , cmd : Cmd Msg
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1035,33 +1035,7 @@ doSearch param model =
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
linkTargetMsg : LinkTarget -> Maybe Msg
 | 
					linkTargetMsg : LinkTarget -> Maybe Msg
 | 
				
			||||||
linkTargetMsg linkTarget =
 | 
					linkTargetMsg linkTarget =
 | 
				
			||||||
    case linkTarget of
 | 
					    Maybe.map SearchMenuMsg (Comp.SearchMenu.linkTargetMsg linkTarget)
 | 
				
			||||||
        Comp.LinkTarget.LinkNone ->
 | 
					 | 
				
			||||||
            Nothing
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        Comp.LinkTarget.LinkCorrOrg id ->
 | 
					 | 
				
			||||||
            Just <| SearchMenuMsg (Comp.SearchMenu.SetCorrOrg id)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        Comp.LinkTarget.LinkCorrPerson id ->
 | 
					 | 
				
			||||||
            Just <| SearchMenuMsg (Comp.SearchMenu.SetCorrPerson id)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        Comp.LinkTarget.LinkConcPerson id ->
 | 
					 | 
				
			||||||
            Just <| SearchMenuMsg (Comp.SearchMenu.SetConcPerson id)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        Comp.LinkTarget.LinkConcEquip id ->
 | 
					 | 
				
			||||||
            Just <| SearchMenuMsg (Comp.SearchMenu.SetConcEquip id)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        Comp.LinkTarget.LinkFolder id ->
 | 
					 | 
				
			||||||
            Just <| SearchMenuMsg (Comp.SearchMenu.SetFolder id)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        Comp.LinkTarget.LinkTag id ->
 | 
					 | 
				
			||||||
            Just <| SearchMenuMsg (Comp.SearchMenu.SetTag id.id)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        Comp.LinkTarget.LinkCustomField id ->
 | 
					 | 
				
			||||||
            Just <| SearchMenuMsg (Comp.SearchMenu.SetCustomField id)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        Comp.LinkTarget.LinkSource str ->
 | 
					 | 
				
			||||||
            Just <| SearchMenuMsg (Comp.SearchMenu.ResetToSource str)
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
doSearchMore : Flags -> UiSettings -> Model -> ( Model, Cmd Msg )
 | 
					doSearchMore : Flags -> UiSettings -> Model -> ( Model, Cmd Msg )
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -7,6 +7,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
module Page.Home.View2 exposing (viewContent, viewSidebar)
 | 
					module Page.Home.View2 exposing (viewContent, viewSidebar)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import Api
 | 
				
			||||||
import Comp.Basic as B
 | 
					import Comp.Basic as B
 | 
				
			||||||
import Comp.ConfirmModal
 | 
					import Comp.ConfirmModal
 | 
				
			||||||
import Comp.ItemCardList
 | 
					import Comp.ItemCardList
 | 
				
			||||||
@@ -461,17 +462,27 @@ searchStats texts _ settings model =
 | 
				
			|||||||
itemCardList : Texts -> Flags -> UiSettings -> Model -> List (Html Msg)
 | 
					itemCardList : Texts -> Flags -> UiSettings -> Model -> List (Html Msg)
 | 
				
			||||||
itemCardList texts _ settings model =
 | 
					itemCardList texts _ settings model =
 | 
				
			||||||
    let
 | 
					    let
 | 
				
			||||||
 | 
					        previewUrl attach =
 | 
				
			||||||
 | 
					            Api.attachmentPreviewURL attach.id
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        previewUrlFallback item =
 | 
				
			||||||
 | 
					            Api.itemBasePreviewURL item.id
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        itemViewCfg =
 | 
					        itemViewCfg =
 | 
				
			||||||
            case model.viewMode of
 | 
					            case model.viewMode of
 | 
				
			||||||
                SelectView svm ->
 | 
					                SelectView svm ->
 | 
				
			||||||
                    Comp.ItemCardList.ViewConfig
 | 
					                    Comp.ItemCardList.ViewConfig
 | 
				
			||||||
                        model.scrollToCard
 | 
					                        model.scrollToCard
 | 
				
			||||||
                        (Data.ItemSelection.Active svm.ids)
 | 
					                        (Data.ItemSelection.Active svm.ids)
 | 
				
			||||||
 | 
					                        previewUrl
 | 
				
			||||||
 | 
					                        previewUrlFallback
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                _ ->
 | 
					                _ ->
 | 
				
			||||||
                    Comp.ItemCardList.ViewConfig
 | 
					                    Comp.ItemCardList.ViewConfig
 | 
				
			||||||
                        model.scrollToCard
 | 
					                        model.scrollToCard
 | 
				
			||||||
                        Data.ItemSelection.Inactive
 | 
					                        Data.ItemSelection.Inactive
 | 
				
			||||||
 | 
					                        previewUrl
 | 
				
			||||||
 | 
					                        previewUrlFallback
 | 
				
			||||||
    in
 | 
					    in
 | 
				
			||||||
    [ Html.map ItemCardListMsg
 | 
					    [ Html.map ItemCardListMsg
 | 
				
			||||||
        (Comp.ItemCardList.view2 texts.itemCardList
 | 
					        (Comp.ItemCardList.view2 texts.itemCardList
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,3 +1,10 @@
 | 
				
			|||||||
 | 
					{-
 | 
				
			||||||
 | 
					   Copyright 2020 Eike K. & Contributors
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   SPDX-License-Identifier: AGPL-3.0-or-later
 | 
				
			||||||
 | 
					-}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module Page.Share.Menubar exposing (view)
 | 
					module Page.Share.Menubar exposing (view)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import Comp.Basic as B
 | 
					import Comp.Basic as B
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,13 @@
 | 
				
			|||||||
 | 
					{-
 | 
				
			||||||
 | 
					   Copyright 2020 Eike K. & Contributors
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   SPDX-License-Identifier: AGPL-3.0-or-later
 | 
				
			||||||
 | 
					-}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module Page.Share.Results exposing (view)
 | 
					module Page.Share.Results exposing (view)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import Api
 | 
				
			||||||
import Comp.ItemCardList
 | 
					import Comp.ItemCardList
 | 
				
			||||||
import Data.ItemSelection
 | 
					import Data.ItemSelection
 | 
				
			||||||
import Data.UiSettings exposing (UiSettings)
 | 
					import Data.UiSettings exposing (UiSettings)
 | 
				
			||||||
@@ -15,6 +23,8 @@ view texts settings model =
 | 
				
			|||||||
        viewCfg =
 | 
					        viewCfg =
 | 
				
			||||||
            { current = Nothing
 | 
					            { current = Nothing
 | 
				
			||||||
            , selection = Data.ItemSelection.Inactive
 | 
					            , selection = Data.ItemSelection.Inactive
 | 
				
			||||||
 | 
					            , previewUrl = \attach -> Api.shareAttachmentPreviewURL attach.id
 | 
				
			||||||
 | 
					            , previewUrlFallback = \item -> Api.shareItemBasePreviewURL item.id
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
    in
 | 
					    in
 | 
				
			||||||
    div []
 | 
					    div []
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,3 +1,10 @@
 | 
				
			|||||||
 | 
					{-
 | 
				
			||||||
 | 
					   Copyright 2020 Eike K. & Contributors
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   SPDX-License-Identifier: AGPL-3.0-or-later
 | 
				
			||||||
 | 
					-}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module Page.Share.Sidebar exposing (..)
 | 
					module Page.Share.Sidebar exposing (..)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import Comp.SearchMenu
 | 
					import Comp.SearchMenu
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -10,6 +10,7 @@ module Page.Share.Update exposing (UpdateResult, update)
 | 
				
			|||||||
import Api
 | 
					import Api
 | 
				
			||||||
import Api.Model.ItemQuery
 | 
					import Api.Model.ItemQuery
 | 
				
			||||||
import Comp.ItemCardList
 | 
					import Comp.ItemCardList
 | 
				
			||||||
 | 
					import Comp.LinkTarget exposing (LinkTarget)
 | 
				
			||||||
import Comp.PowerSearchInput
 | 
					import Comp.PowerSearchInput
 | 
				
			||||||
import Comp.SearchMenu
 | 
					import Comp.SearchMenu
 | 
				
			||||||
import Data.Flags exposing (Flags)
 | 
					import Data.Flags exposing (Flags)
 | 
				
			||||||
@@ -17,6 +18,7 @@ import Data.ItemQuery as Q
 | 
				
			|||||||
import Data.SearchMode
 | 
					import Data.SearchMode
 | 
				
			||||||
import Data.UiSettings exposing (UiSettings)
 | 
					import Data.UiSettings exposing (UiSettings)
 | 
				
			||||||
import Page.Share.Data exposing (..)
 | 
					import Page.Share.Data exposing (..)
 | 
				
			||||||
 | 
					import Util.Update
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type alias UpdateResult =
 | 
					type alias UpdateResult =
 | 
				
			||||||
@@ -155,10 +157,17 @@ update flags settings shareId msg model =
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
        ItemListMsg lm ->
 | 
					        ItemListMsg lm ->
 | 
				
			||||||
            let
 | 
					            let
 | 
				
			||||||
                ( im, ic ) =
 | 
					                ( im, ic, linkTarget ) =
 | 
				
			||||||
                    Comp.ItemCardList.update flags lm model.itemListModel
 | 
					                    Comp.ItemCardList.update flags lm model.itemListModel
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                searchMsg =
 | 
				
			||||||
 | 
					                    Maybe.map Util.Update.cmdUnit (linkTargetMsg linkTarget)
 | 
				
			||||||
 | 
					                        |> Maybe.withDefault Cmd.none
 | 
				
			||||||
            in
 | 
					            in
 | 
				
			||||||
            noSub ( { model | itemListModel = im }, Cmd.map ItemListMsg ic )
 | 
					            noSub
 | 
				
			||||||
 | 
					                ( { model | itemListModel = im }
 | 
				
			||||||
 | 
					                , Cmd.batch [ Cmd.map ItemListMsg ic, searchMsg ]
 | 
				
			||||||
 | 
					                )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
noSub : ( Model, Cmd Msg ) -> UpdateResult
 | 
					noSub : ( Model, Cmd Msg ) -> UpdateResult
 | 
				
			||||||
@@ -184,3 +193,8 @@ makeSearchCmd flags model =
 | 
				
			|||||||
            }
 | 
					            }
 | 
				
			||||||
    in
 | 
					    in
 | 
				
			||||||
    Api.searchShare flags model.verifyResult.token (request xq) SearchResp
 | 
					    Api.searchShare flags model.verifyResult.token (request xq) SearchResp
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					linkTargetMsg : LinkTarget -> Maybe Msg
 | 
				
			||||||
 | 
					linkTargetMsg linkTarget =
 | 
				
			||||||
 | 
					    Maybe.map SearchMenuMsg (Comp.SearchMenu.linkTargetMsg linkTarget)
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user