@@ -4,12 +4,9 @@
44{-# OPTIONS_GHC -Wno-orphans #-}
55
66module Data.Id
7− ( Id, mkId, unId, unsafeIdTagConvert, coerceId, _Id, nilId
7+ ( Id, mkId, unId, randomId, unsafeIdTagConvert, coerceId, _Id, nilId
88 , IntId, mkIntId, unIntId, unsafeIntIdTagConvert, coerceIntId, _IntId
99 , Name, mkName, unName, unsafeNameTagConvert, coerceName, _Name
10−#ifdef USE_UUID
11− , randomId
12−#endif
1310 )
1411 where
1512
@@ -23,17 +20,15 @@ import Data.Data
2320import Data.Hashable (Hashable)
2421import Data.String
2522import Data.Text as T
26−import Data.UUID.Types (UUID)
27−import qualified Data.UUID.Types as UUID
23+import Data.UUID (UUID)
24+import qualified Data.UUID as UUID
25+import qualified Data.UUID.V4 as UUID.V4
2826import GHC.TypeLits
2927import Prelude as P
3028import Text.ParserCombinators.ReadP
3129import Web.HttpApiData
3230import Web.PathPieces (PathPiece(..))
3331
34−#ifdef USE_UUID
35−import qualified Data.UUID.V4 as UUID.V4
36−#endif
3732#ifdef BACKEND
3833import Data.OpenApi
3934import Test.QuickCheck
@@ -76,11 +71,9 @@ mkId :: forall s. UUID -> Id s
7671mkId = coerce
7772{-# INLINE mkId #-}
7873
79−#ifdef USE_UUID
8074randomId :: forall s. IO (Id s)
8175randomId = coerce <$> UUID.V4.nextRandom
8276{-# INLINE randomId #-}
83−#endif
8477
8578instance KnownSymbol s => Show (Id s) where
8679 show (Id v) = "Id-" <> symbolVal (Proxy @s) <> "-" <> P.show v