module Web.View.AgentProposals.Index where import Web.Types import Generated.Types import IHP.Prelude import IHP.ViewPrelude data IndexView = IndexView { proposals :: ![AgentProposal] , widgets :: ![Widget] , mTypeFilter :: !(Maybe Text) , mStatusFilter :: !(Maybe Text) } allProposalTypes :: [Text] allProposalTypes = ["summary", "requirement_draft", "duplicate_flag", "policy_flag", "impl_proposal"] allStatuses :: [Text] allStatuses = ["pending", "accepted", "rejected", "superseded"] instance View IndexView where html IndexView { .. } = [hsx|
No proposals found.
|] else renderTable proposals widgets} |] agentProposalsUrl :: Maybe Text -> Maybe Text -> Text agentProposalsUrl mt ms = let parts = catMaybes [ fmap ("proposal_type=" <>) mt , fmap ("status=" <>) ms ] in "/AgentProposals" <> if null parts then "" else "?" <> intercalate "&" parts renderTable :: [AgentProposal] -> [Widget] -> Html renderTable proposals widgets = [hsx|| Type | Source Widget | Confidence | Status | Created |
|---|