aboutsummaryrefslogtreecommitdiff
path: root/src/Data/ContactData.hs
diff options
context:
space:
mode:
authoradambrangenberg <adabran06@gmail.com>2025-12-07 06:36:43 +0100
committeradambrangenberg <adabran06@gmail.com>2025-12-07 06:36:43 +0100
commit2b48a574e8b9fed03a5c1969af4bb1e338f1be26 (patch)
treef31c92f7788969b034838b8ec0ea7e187a746fc2 /src/Data/ContactData.hs
parentfb14daae9d3bc05a0d18f58875ef54e328081f19 (diff)
implemented section 1-3
Diffstat (limited to 'src/Data/ContactData.hs')
-rw-r--r--src/Data/ContactData.hs22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/Data/ContactData.hs b/src/Data/ContactData.hs
new file mode 100644
index 0000000..397c465
--- /dev/null
+++ b/src/Data/ContactData.hs
@@ -0,0 +1,22 @@
+{-# LANGUAGE DeriveGeneric #-}
+
+module Data.ContactData (Contact, makeContact) where
+
+import Data.Aeson
+import Data.Aeson.TH
+import GHC.Generics (Generic)
+
+type EMail = String
+type MXID = String
+
+data Contact = Contact
+ { email_address :: EMail
+ , matrix_id :: MXID
+ , role :: String -- Enum? [m.role.admin, m.role.security]
+ } deriving (Eq, Show, Generic)
+
+instance FromJSON Contact where
+instance ToJSON Contact where
+
+makeContact :: String -> String -> String -> Contact
+makeContact = Contact