@@ -1,3 +1,4 @@
1+{-# LANGUAGE DeriveDataTypeable #-}
1{-# LANGUAGE TemplateHaskell #-}
2{-# LANGUAGE TemplateHaskell #-}
2{-# OPTIONS_GHC -Wno-orphans #-}
3{-# OPTIONS_GHC -Wno-orphans #-}
@@ -12,10 +13,11 @@ import Control.Lens
12import Data.Aeson (FromJSON, FromJSONKey, ToJSON, ToJSONKey)
13import Data.Aeson (FromJSON, FromJSONKey, ToJSON, ToJSONKey)
13import Data.Binary (Binary)
14import Data.Binary (Binary)
14import Data.Coerce (coerce)
15import Data.Coerce (coerce)
15import Data.Hashable (Hashable)
17import Data.Hashable (Hashable)
16import Data.UUID (UUID)
19import Data.UUID (UUID)
17import qualified Data.UUID as UUID
20import qualified Data.UUID as UUID
19import Database.PostgreSQL.Simple.FromField (FromField)
21import Database.PostgreSQL.Simple.FromField (FromField)
20import Database.PostgreSQL.Simple.ToField (ToField)
22import Database.PostgreSQL.Simple.ToField (ToField)
21import GHC.Generics (Generic)
23import GHC.Generics (Generic)
@@ -25,7 +27,7 @@ import Yesod.Core (PathPiece(..))
26newtype Id t = Id { unId :: UUID }
28newtype Id t = Id { unId :: UUID }
28− ( Eq, Ord, Generic, Read, Show, ToField, FromField, PathPiece, FromJSON
30+ ( Eq, Ord, Generic, Read, Show, Data, ToField, FromField, PathPiece, FromJSON
29 , ToJSON, NFData, Hashable, FromJSONKey, ToJSONKey, ToSchema)
31 , ToJSON, NFData, Hashable, FromJSONKey, ToJSONKey, ToSchema)
31type role Id nominal
33type role Id nominal