Source codeContentsIndex
Hledger.Cli.Commands.Web
Description
A web-based UI.
Synopsis
data HledgerWebApp = HledgerWebApp {
appRoot :: String
appDir :: FilePath
appOpts :: [Opt]
appArgs :: [String]
appJournal :: Journal
appStatic :: Static
}
data HledgerWebAppRoute
= StaticR (Route Static)
| IndexR
| JournalOnlyR
| RegisterOnlyR
| AccountsOnlyR
| JournalR
| RegisterR
data TemplateData = TD {
here :: HledgerWebAppRoute
title :: String
msg :: Maybe (Html ())
a :: String
p :: String
j :: Journal
today :: Day
}
web :: [Opt] -> [String] -> Journal -> IO ()
browser :: String -> IO ()
server :: String -> Int -> [Opt] -> [String] -> Journal -> IO ()
getHandlerParameters :: Handler HledgerWebApp (String, String, [Opt], FilterSpec, Journal, Maybe (Html ()), HledgerWebAppRoute)
getIndexR :: Handler HledgerWebApp ()
getJournalR :: Handler HledgerWebApp RepHtml
postJournalR :: Handler HledgerWebApp RepPlain
getRegisterR :: Handler HledgerWebApp RepHtml
postRegisterR :: Handler HledgerWebApp RepPlain
getAccountsOnlyR :: Handler HledgerWebApp RepHtml
balanceReportAsHtml :: [Opt] -> TemplateData -> BalanceReport -> Hamlet HledgerWebAppRoute
accountNameToAccountRegex :: String -> String
accountRegexToAccountName :: String -> String
isAccountRegex :: String -> Bool
getJournalOnlyR :: Handler HledgerWebApp RepHtml
journalReportAsHtml :: [Opt] -> TemplateData -> JournalReport -> Hamlet HledgerWebAppRoute
addform :: TemplateData -> Hamlet HledgerWebAppRoute
postingsfields :: TemplateData -> Hamlet HledgerWebAppRoute
postingfields :: TemplateData -> Int -> Hamlet HledgerWebAppRoute
editform :: TemplateData -> String -> Hamlet HledgerWebAppRoute
importform :: Hamlet HledgerWebAppRoute
postJournalOnlyR :: Handler HledgerWebApp RepPlain
postAddForm :: Handler HledgerWebApp RepPlain
postEditForm :: Handler HledgerWebApp RepPlain
postImportForm :: Handler HledgerWebApp RepPlain
getRegisterOnlyR :: Handler HledgerWebApp RepHtml
registerReportAsHtml :: [Opt] -> TemplateData -> RegisterReport -> Hamlet HledgerWebAppRoute
getEditR :: Handler HledgerWebApp RepHtml
pageLayout :: TemplateData -> Hamlet HledgerWebAppRoute -> Hamlet HledgerWebAppRoute
navbar :: TemplateData -> Hamlet HledgerWebAppRoute
journalTitleInfo :: Journal -> String -> Day -> (String, String)
navlinks :: TemplateData -> Hamlet HledgerWebAppRoute
navlink :: TemplateData -> String -> HledgerWebAppRoute -> Hamlet HledgerWebAppRoute
filterform :: TemplateData -> Hamlet HledgerWebAppRoute
helplink :: String -> String -> Hamlet HledgerWebAppRoute
Documentation
data HledgerWebApp Source
Constructors
HledgerWebApp
appRoot :: String
appDir :: FilePath
appOpts :: [Opt]
appArgs :: [String]
appJournal :: Journal
appStatic :: Static
show/hide Instances
data HledgerWebAppRoute Source
Constructors
StaticR (Route Static)
IndexR
JournalOnlyR
RegisterOnlyR
AccountsOnlyR
JournalR
RegisterR
show/hide Instances
data TemplateData Source
A bundle of useful data passed to templates.
Constructors
TD
here :: HledgerWebAppRoutethe current page's route
title :: Stringpage's title
msg :: Maybe (Html ())transient message
a :: Stringa (acct/desc filter pattern) parameter
p :: Stringp (period expression) parameter
j :: Journalthe current journal
today :: Daythe current day
web :: [Opt] -> [String] -> Journal -> IO ()Source
The web command.
browser :: String -> IO ()Source
server :: String -> Int -> [Opt] -> [String] -> Journal -> IO ()Source
getHandlerParameters :: Handler HledgerWebApp (String, String, [Opt], FilterSpec, Journal, Maybe (Html ()), HledgerWebAppRoute)Source
Gather all the stuff we want for a typical hledger web request handler.
getIndexR :: Handler HledgerWebApp ()Source
getJournalR :: Handler HledgerWebApp RepHtmlSource
A combined accounts and journal view.
postJournalR :: Handler HledgerWebApp RepPlainSource
getRegisterR :: Handler HledgerWebApp RepHtmlSource
A combined accounts and register view.
postRegisterR :: Handler HledgerWebApp RepPlainSource
getAccountsOnlyR :: Handler HledgerWebApp RepHtmlSource
A simple accounts and balances view like hledger balance.
balanceReportAsHtml :: [Opt] -> TemplateData -> BalanceReport -> Hamlet HledgerWebAppRouteSource
Render a balance report as HTML.
accountNameToAccountRegex :: String -> StringSource
accountRegexToAccountName :: String -> StringSource
isAccountRegex :: String -> BoolSource
getJournalOnlyR :: Handler HledgerWebApp RepHtmlSource
A basic journal view, like hledger print, with editing.
journalReportAsHtml :: [Opt] -> TemplateData -> JournalReport -> Hamlet HledgerWebAppRouteSource
Render a journal report as HTML.
addform :: TemplateData -> Hamlet HledgerWebAppRouteSource
postingsfields :: TemplateData -> Hamlet HledgerWebAppRouteSource
postingfields :: TemplateData -> Int -> Hamlet HledgerWebAppRouteSource
editform :: TemplateData -> String -> Hamlet HledgerWebAppRouteSource
importform :: Hamlet HledgerWebAppRouteSource
postJournalOnlyR :: Handler HledgerWebApp RepPlainSource
postAddForm :: Handler HledgerWebApp RepPlainSource
Handle a journal add form post.
postEditForm :: Handler HledgerWebApp RepPlainSource
Handle a journal edit form post.
postImportForm :: Handler HledgerWebApp RepPlainSource
Handle an import page post.
getRegisterOnlyR :: Handler HledgerWebApp RepHtmlSource
A simple postings view like hledger register.
registerReportAsHtml :: [Opt] -> TemplateData -> RegisterReport -> Hamlet HledgerWebAppRouteSource
Render a register report as HTML.
getEditR :: Handler HledgerWebApp RepHtmlSource
A standalone journal edit form page.
pageLayout :: TemplateData -> Hamlet HledgerWebAppRoute -> Hamlet HledgerWebAppRouteSource
Wrap a template with the standard hledger web ui page layout.
navbar :: TemplateData -> Hamlet HledgerWebAppRouteSource
journalTitleInfo :: Journal -> String -> Day -> (String, String)Source
Generate journal- and context-specific title and info strings for display.
navlinks :: TemplateData -> Hamlet HledgerWebAppRouteSource
navlink :: TemplateData -> String -> HledgerWebAppRoute -> Hamlet HledgerWebAppRouteSource
filterform :: TemplateData -> Hamlet HledgerWebAppRouteSource
helplink :: String -> String -> Hamlet HledgerWebAppRouteSource
Produced by Haddock version 2.6.1