39 lines
855 B
Haskell
39 lines
855 B
Haskell
{-# LANGUAGE DataKinds #-}
|
|
{-# LANGUAGE NoImplicitPrelude #-}
|
|
{-# LANGUAGE TemplateHaskell #-}
|
|
{-# LANGUAGE FlexibleInstances, TypeSynonymInstances #-}
|
|
{-# OPTIONS_GHC -fno-warn-orphans #-}
|
|
|
|
module CryptoID
|
|
( module CryptoID
|
|
, module Data.UUID.Cryptographic
|
|
, module Data.CryptoID.Poly
|
|
, module CryptoID.Base32
|
|
) where
|
|
|
|
import CryptoID.TH
|
|
|
|
import ClassyPrelude hiding (fromString)
|
|
import Model
|
|
|
|
import Data.CryptoID
|
|
import Data.CryptoID.Poly hiding (encrypt, decrypt)
|
|
import CryptoID.Base32 hiding (encrypt, decrypt)
|
|
|
|
import Data.UUID.Cryptographic
|
|
import Data.UUID.Types
|
|
import Web.PathPieces
|
|
|
|
|
|
instance PathPiece UUID where
|
|
fromPathPiece = fromString . unpack
|
|
toPathPiece = pack . toString
|
|
|
|
decKeysBinary [ ''SubmissionId
|
|
, ''CourseId
|
|
]
|
|
|
|
decTypeAliases [ "Submission"
|
|
, "Course"
|
|
]
|