aboutsummaryrefslogtreecommitdiff
path: root/client/src/View/Payment/Table.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/Table.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/Table.hs')
-rw-r--r--client/src/View/Payment/Table.hs121
1 files changed, 60 insertions, 61 deletions
diff --git a/client/src/View/Payment/Table.hs b/client/src/View/Payment/Table.hs
index 3a0a4bf..0793836 100644
--- a/client/src/View/Payment/Table.hs
+++ b/client/src/View/Payment/Table.hs
@@ -1,7 +1,7 @@
module View.Payment.Table
- ( widget
- , TableIn(..)
- , TableOut(..)
+ ( view
+ , In(..)
+ , Out(..)
) where
import qualified Data.List as L
@@ -20,8 +20,7 @@ import Common.Model (Category (..), Currency,
import qualified Common.Model as CM
import qualified Common.Msg as Msg
import qualified Common.View.Format as Format
-import Component (ButtonIn (..), ButtonOut (..))
-import qualified Component as Component
+import qualified Component.Button as Button
import qualified Component.Modal as Modal
import qualified View.Payment.Clone as Clone
import qualified View.Payment.Delete as Delete
@@ -31,25 +30,25 @@ import View.Payment.Init (Init (..))
import qualified Util.Reflex as ReflexUtil
import qualified View.Icon as Icon
-data TableIn t = TableIn
- { _tableIn_init :: Init
- , _tableIn_currency :: Currency
- , _tableIn_currentUser :: UserId
- , _tableIn_currentPage :: Dynamic t Int
- , _tableIn_payments :: Dynamic t [Payment]
- , _tableIn_perPage :: Int
- , _tableIn_paymentCategories :: Dynamic t [PaymentCategory]
- , _tableIn_categories :: [Category]
+data In t = In
+ { _in_init :: Init
+ , _in_currency :: Currency
+ , _in_currentUser :: UserId
+ , _in_currentPage :: Dynamic t Int
+ , _in_payments :: Dynamic t [Payment]
+ , _in_perPage :: Int
+ , _in_paymentCategories :: Dynamic t [PaymentCategory]
+ , _in_categories :: [Category]
}
-data TableOut t = TableOut
- { _tableOut_addPayment :: Event t SavedPayment
- , _tableOut_editPayment :: Event t SavedPayment
- , _tableOut_deletePayment :: Event t Payment
+data Out t = Out
+ { _out_addPayment :: Event t SavedPayment
+ , _out_editPayment :: Event t SavedPayment
+ , _out_deletePayment :: Event t Payment
}
-widget :: forall t m. MonadWidget t m => TableIn t -> m (TableOut t)
-widget tableIn = do
+view :: forall t m. MonadWidget t m => In t -> m (Out t)
+view input = do
R.divClass "table" $ do
(addPayment, editPayment, deletePayment) <- R.divClass "lines" $ do
@@ -75,20 +74,20 @@ widget tableIn = do
ReflexUtil.divClassVisibleIf (null <$> payments) "emptyTableMsg" $
R.text $ Msg.get Msg.Payment_Empty
- return $ TableOut
- { _tableOut_addPayment = addPayment
- , _tableOut_editPayment = editPayment
- , _tableOut_deletePayment = deletePayment
+ return $ Out
+ { _out_addPayment = addPayment
+ , _out_editPayment = editPayment
+ , _out_deletePayment = deletePayment
}
where
- init = _tableIn_init tableIn
- currency = _tableIn_currency tableIn
- currentUser = _tableIn_currentUser tableIn
- currentPage = _tableIn_currentPage tableIn
- payments = _tableIn_payments tableIn
- paymentRange = getPaymentRange (_tableIn_perPage tableIn) <$> payments <*> currentPage
- paymentCategories = _tableIn_paymentCategories tableIn
+ init = _in_init input
+ currency = _in_currency input
+ currentUser = _in_currentUser input
+ currentPage = _in_currentPage input
+ payments = _in_payments input
+ paymentRange = getPaymentRange (_in_perPage input) <$> payments <*> currentPage
+ paymentCategories = _in_paymentCategories input
getPaymentRange :: Int -> [Payment] -> Int -> [Payment]
getPaymentRange perPage payments currentPage =
@@ -150,19 +149,19 @@ paymentRow init currency currentUser paymentCategories payment =
clonePayment <-
R.divClass "cell button" $
- _buttonOut_clic <$> (Component.button $
- Component.defaultButtonIn Icon.clone)
+ Button._out_clic <$> (Button.view $
+ Button.defaultIn Icon.clone)
paymentCloned <-
- Modal.view $ Modal.Input
- { Modal._input_show = clonePayment
- , Modal._input_content =
- Clone.view $ Clone.Input
- { Clone._input_show = clonePayment
- , Clone._input_categories = _init_categories init
- , Clone._input_paymentCategories = paymentCategories
- , Clone._input_payment = payment
- , Clone._input_category = categoryId
+ Modal.view $ Modal.In
+ { Modal._in_show = clonePayment
+ , Modal._in_content =
+ Clone.view $ Clone.In
+ { Clone._in_show = clonePayment
+ , Clone._in_categories = _init_categories init
+ , Clone._in_paymentCategories = paymentCategories
+ , Clone._in_payment = payment
+ , Clone._in_category = categoryId
}
}
@@ -174,36 +173,36 @@ paymentRow init currency currentUser paymentCategories payment =
editPayment <-
R.divClass "cell button" $
ReflexUtil.divVisibleIf isFromCurrentUser $
- _buttonOut_clic <$> (Component.button $
- Component.defaultButtonIn Icon.edit)
+ Button._out_clic <$> (Button.view $
+ Button.defaultIn Icon.edit)
paymentEdited <-
- Modal.view $ Modal.Input
- { Modal._input_show = editPayment
- , Modal._input_content =
- Edit.view $ Edit.Input
- { Edit._input_show = editPayment
- , Edit._input_categories = _init_categories init
- , Edit._input_paymentCategories = paymentCategories
- , Edit._input_payment = payment
- , Edit._input_category = categoryId
+ Modal.view $ Modal.In
+ { Modal._in_show = editPayment
+ , Modal._in_content =
+ Edit.view $ Edit.In
+ { Edit._in_show = editPayment
+ , Edit._in_categories = _init_categories init
+ , Edit._in_paymentCategories = paymentCategories
+ , Edit._in_payment = payment
+ , Edit._in_category = categoryId
}
}
deletePayment <-
R.divClass "cell button" $
ReflexUtil.divVisibleIf isFromCurrentUser $
- _buttonOut_clic <$> (Component.button $
- (Component.defaultButtonIn Icon.delete)
- { _buttonIn_class = R.constDyn "deletePayment"
+ Button._out_clic <$> (Button.view $
+ (Button.defaultIn Icon.delete)
+ { Button._in_class = R.constDyn "deletePayment"
})
paymentDeleted <-
- Modal.view $ Modal.Input
- { Modal._input_show = deletePayment
- , Modal._input_content =
- Delete.view $ Delete.Input
- { Delete._input_payment = payment
+ Modal.view $ Modal.In
+ { Modal._in_show = deletePayment
+ , Modal._in_content =
+ Delete.view $ Delete.In
+ { Delete._in_payment = payment
}
}