aboutsummaryrefslogtreecommitdiff
path: root/client/src/View/Payment/Payment.hs
diff options
context:
space:
mode:
authorJoris2019-10-22 22:26:38 +0200
committerJoris2019-10-22 22:26:38 +0200
commit613ffccac4b3ab25c6d4c631fab757da0b35acf6 (patch)
tree13e448af89f4079bb62d7ce8b5a44b6a64515129 /client/src/View/Payment/Payment.hs
parent80f09e8b3a5c856e60922a73c9161a8c5392e4d4 (diff)
downloadbudget-613ffccac4b3ab25c6d4c631fab757da0b35acf6.tar.gz
budget-613ffccac4b3ab25c6d4c631fab757da0b35acf6.tar.bz2
budget-613ffccac4b3ab25c6d4c631fab757da0b35acf6.zip
Harmonize view component code style
Diffstat (limited to 'client/src/View/Payment/Payment.hs')
-rw-r--r--client/src/View/Payment/Payment.hs75
1 files changed, 36 insertions, 39 deletions
diff --git a/client/src/View/Payment/Payment.hs b/client/src/View/Payment/Payment.hs
index 5f0d03c..f86acd8 100644
--- a/client/src/View/Payment/Payment.hs
+++ b/client/src/View/Payment/Payment.hs
@@ -1,7 +1,7 @@
module View.Payment.Payment
( init
, view
- , PaymentIn(..)
+ , In(..)
) where
import Data.Text (Text)
@@ -20,12 +20,9 @@ import qualified Common.Util.Text as T
import Loadable (Loadable (..))
import qualified Loadable
import qualified Util.Ajax as AjaxUtil
-import View.Payment.Header (HeaderIn (..), HeaderOut (..))
import qualified View.Payment.Header as Header
import View.Payment.Init (Init (..))
-import View.Payment.Pages (PagesIn (..), PagesOut (..))
import qualified View.Payment.Pages as Pages
-import View.Payment.Table (TableIn (..), TableOut (..))
import qualified View.Payment.Table as Table
init :: forall t m. MonadWidget t m => m (Dynamic t (Loadable Init))
@@ -44,21 +41,21 @@ init = do
return $ Init <$> us <*> ps <*> is <*> cs <*> pcs
-data PaymentIn t = PaymentIn
- { _paymentIn_currentUser :: UserId
- , _paymentIn_currency :: Currency
- , _paymentIn_init :: Dynamic t (Loadable Init)
+data In t = In
+ { _in_currentUser :: UserId
+ , _in_currency :: Currency
+ , _in_init :: Dynamic t (Loadable Init)
}
-view :: forall t m. MonadWidget t m => PaymentIn t -> m ()
-view paymentIn = do
- R.dyn . R.ffor (_paymentIn_init paymentIn) . Loadable.view $ \init ->
+view :: forall t m. MonadWidget t m => In t -> m ()
+view input = do
+ R.dyn . R.ffor (_in_init input) . Loadable.view $ \init ->
R.elClass "main" "payment" $ do
rec
let addPayment = R.leftmost
- [ _headerOut_addPayment header
- , _tableOut_addPayment table
+ [ Header._out_addPayment header
+ , Table._out_addPayment table
]
paymentsPerPage = 7
@@ -66,46 +63,46 @@ view paymentIn = do
payments <- reducePayments
(_init_payments init)
(_savedPayment_payment <$> addPayment)
- (_savedPayment_payment <$> _tableOut_editPayment table)
- (_tableOut_deletePayment table)
+ (_savedPayment_payment <$> Table._out_editPayment table)
+ (Table._out_deletePayment table)
paymentCategories <- reducePaymentCategories
(_init_paymentCategories init)
payments
(_savedPayment_paymentCategory <$> addPayment)
- (_savedPayment_paymentCategory <$> _tableOut_editPayment table)
- (_tableOut_deletePayment table)
+ (_savedPayment_paymentCategory <$> Table._out_editPayment table)
+ (Table._out_deletePayment table)
(searchNameEvent, searchName) <-
- debounceSearchName (_headerOut_searchName header)
+ debounceSearchName (Header._out_searchName header)
let searchPayments =
- getSearchPayments searchName (_headerOut_searchFrequency header) payments
-
- header <- Header.widget $ HeaderIn
- { _headerIn_init = init
- , _headerIn_currency = _paymentIn_currency paymentIn
- , _headerIn_payments = payments
- , _headerIn_searchPayments = searchPayments
- , _headerIn_paymentCategories = paymentCategories
+ getSearchPayments searchName (Header._out_searchFrequency header) payments
+
+ header <- Header.view $ Header.In
+ { Header._in_init = init
+ , Header._in_currency = _in_currency input
+ , Header._in_payments = payments
+ , Header._in_searchPayments = searchPayments
+ , Header._in_paymentCategories = paymentCategories
}
- table <- Table.widget $ TableIn
- { _tableIn_init = init
- , _tableIn_currency = _paymentIn_currency paymentIn
- , _tableIn_currentUser = _paymentIn_currentUser paymentIn
- , _tableIn_currentPage = _pagesOut_currentPage pages
- , _tableIn_payments = searchPayments
- , _tableIn_perPage = paymentsPerPage
- , _tableIn_paymentCategories = paymentCategories
+ table <- Table.view $ Table.In
+ { Table._in_init = init
+ , Table._in_currency = _in_currency input
+ , Table._in_currentUser = _in_currentUser input
+ , Table._in_currentPage = Pages._out_currentPage pages
+ , Table._in_payments = searchPayments
+ , Table._in_perPage = paymentsPerPage
+ , Table._in_paymentCategories = paymentCategories
}
- pages <- Pages.widget $ PagesIn
- { _pagesIn_total = length <$> searchPayments
- , _pagesIn_perPage = paymentsPerPage
- , _pagesIn_reset = R.leftmost $
+ pages <- Pages.view $ Pages.In
+ { Pages._in_total = length <$> searchPayments
+ , Pages._in_perPage = paymentsPerPage
+ , Pages._in_reset = R.leftmost $
[ () <$ searchNameEvent
- , () <$ _headerOut_addPayment header
+ , () <$ Header._out_addPayment header
]
}