@@ -9,6 +9,7 @@ module Random.Token
99 , tokenWithContents
1010#ifndef ghcjs_HOST_OS
1111 , generateToken
12+ , generateDelimitedToken
1213#endif
1314 ) where
1415
@@ -60,6 +61,12 @@ instance ToField (Token a) where
6061generateToken :: (MonadRandom m) => m (Token a)
6162generateToken = Token <$> R.getRandomBytes 16
6263
64+generateDelimitedToken :: (MonadRandom m) => Text -> Text -> m (Token a)
65+generateDelimitedToken prefix postFix =
66+ Token . (preBS <>) . (<> postBS) <$> R.getRandomBytes 16
67+ where
68+ preBS = T.encodeUtf8 prefix
69+ postBS = T.encodeUtf8 postFix
6370#endif
6471
6572instance FromHttpApiData (Token a) where