diff --git a/examples/Simple.hs b/examples/Simple.hs index 442b8d96efd9b6ec188c13a221301aab1ce800ab..d018fafc6a88f32a90afcf1c5d48435cf63b36c6 100644 --- a/examples/Simple.hs +++ b/examples/Simple.hs @@ -26,7 +26,7 @@ where import Network.Wai import Network.Wai.Handler.Warp import Network.Wai.Middleware.RequestLogger - import Web.Hikaru + import Hikaru -- Action ------------------------------------------------------------------ diff --git a/hikaru.cabal b/hikaru.cabal index c97ab5c929af4a3e6810c075c35925bce3d52891..ca5fba841235a9f6f47ece52f4fba72e295e74cb 100644 --- a/hikaru.cabal +++ b/hikaru.cabal @@ -2,7 +2,7 @@ -- -- see: https://github.com/sol/hpack -- --- hash: 137f697c69bc978fa0edf845d6ab4d71c1759e216cdb95f6b6c3f45c212ad639 +-- hash: ec8f75c55cd1cdb48ba2e77fa77a1586494297b85c9582601ebecf2c5e230fdb name: hikaru version: 0.1.0.0 @@ -32,20 +32,20 @@ source-repository head library exposed-modules: - Web.Hikaru - Web.Hikaru.Action - Web.Hikaru.Dispatch - Web.Hikaru.Form - Web.Hikaru.Link - Web.Hikaru.Localize - Web.Hikaru.Media - Web.Hikaru.Route - Web.Hikaru.Types + Hikaru + Hikaru.Action + Hikaru.Dispatch + Hikaru.Form + Hikaru.Link + Hikaru.Localize + Hikaru.Media + Hikaru.Route + Hikaru.Types other-modules: Paths_hikaru hs-source-dirs: lib - default-extensions: BlockArguments DeriveGeneric FlexibleInstances GeneralizedNewtypeDeriving LambdaCase MultiParamTypeClasses NamedFieldPuns NoImplicitPrelude OverloadedStrings RankNTypes RecordWildCards ScopedTypeVariables StandaloneDeriving + default-extensions: BlockArguments DeriveGeneric FlexibleInstances GeneralizedNewtypeDeriving LambdaCase MultiParamTypeClasses NamedFieldPuns NoImplicitPrelude OverloadedStrings RankNTypes RecordWildCards ScopedTypeVariables StandaloneDeriving DataKinds ghc-options: -Wall -Wcompat build-depends: aeson >=1.4 && <1.5 diff --git a/lib/Hikaru.hs b/lib/Hikaru.hs new file mode 100644 index 0000000000000000000000000000000000000000..8233e5ba18dcaf7cd478923ff6f4e4d8fcd950f6 --- /dev/null +++ b/lib/Hikaru.hs @@ -0,0 +1,36 @@ +{-| +Module : Hikaru +Copyright : Jan Hamal Dvořák +License : AGPL-3 + +Maintainer : mordae@anilinux.org +Stability : unstable +Portability : non-portable (ghc) + +This module re-exports other modules in the package. +-} + +module Hikaru + ( + -- * Exported Modules + module Hikaru.Action + , module Hikaru.Dispatch + , module Hikaru.Form + , module Hikaru.Link + , module Hikaru.Localize + , module Hikaru.Media + , module Hikaru.Route + , module Hikaru.Types + ) +where + import Hikaru.Action + import Hikaru.Dispatch + import Hikaru.Form + import Hikaru.Link + import Hikaru.Localize + import Hikaru.Media + import Hikaru.Route + import Hikaru.Types + + +-- vim:set ft=haskell sw=2 ts=2 et: diff --git a/lib/Web/Hikaru/Action.hs b/lib/Hikaru/Action.hs similarity index 99% rename from lib/Web/Hikaru/Action.hs rename to lib/Hikaru/Action.hs index a3742a013ab1aa8cb0cf7dd67a2916589b00bc44..fd763709735a08eb9df6e7b77d6425e1a2c833b5 100644 --- a/lib/Web/Hikaru/Action.hs +++ b/lib/Hikaru/Action.hs @@ -1,5 +1,5 @@ {-| -Module : Web.Hikaru.Action +Module : Hikaru.Action Copyright : Jan Hamal Dvořák License : AGPL-3 @@ -11,7 +11,7 @@ This module provides a monad for reacting to user requests by building responses. -} -module Web.Hikaru.Action +module Hikaru.Action ( MonadAction(..) -- ** Inspecting Request @@ -116,8 +116,8 @@ where import Network.Wai.Internal (getRequestBodyChunk) import Network.Wai.Parse import Web.Cookie - import Web.Hikaru.Media - import Web.Hikaru.Types + import Hikaru.Media + import Hikaru.Types -- | @@ -1007,7 +1007,7 @@ where -- when localizing the result of the action. -- -- Languages must be set using the 'setLanguages' function or through - -- the localization tools found in the "Web.Hikaru.Locale" module. + -- the localization tools found in the "Hikaru.Locale" module. -- getLanguages :: (MonadAction m) => m [Text] getLanguages = getActionField aeLanguages diff --git a/lib/Web/Hikaru/Dispatch.hs b/lib/Hikaru/Dispatch.hs similarity index 97% rename from lib/Web/Hikaru/Dispatch.hs rename to lib/Hikaru/Dispatch.hs index 06e1874275ffde93495e8f5a68afc8d45478f285..f749b55ca0f48a5b66b2bd935a27207a91cf79d0 100644 --- a/lib/Web/Hikaru/Dispatch.hs +++ b/lib/Hikaru/Dispatch.hs @@ -1,5 +1,5 @@ {-| -Module : Web.Hikaru.Dispatch +Module : Hikaru.Dispatch Copyright : Jan Hamal Dvořák License : AGPL-3 @@ -10,7 +10,7 @@ Portability : non-portable (ghc) This module provides monad-based request dispatching. -} -module Web.Hikaru.Dispatch +module Hikaru.Dispatch ( dispatch -- ** Routes @@ -41,8 +41,8 @@ where import Data.Text (Text) import Network.HTTP.Types.Header import Network.Wai - import Web.Hikaru.Route - import Web.Hikaru.Types + import Hikaru.Route + import Hikaru.Types -- | @@ -199,7 +199,7 @@ where -- @ -- app :: Application -- app = 'dispatch' runAction $ do - -- 'wrapRoutes' ('Web.Hikaru.Action.defaultHeader' hCacheControl "no-cache" >>) + -- 'wrapRoutes' ('Hikaru.Action.defaultHeader' hCacheControl "no-cache" >>) -- -- 'route' $ getRootR \<$ 'get' -- 'route' $ getHelloR \<$ 'get' <* 'seg' "hello" \<*\> 'arg' diff --git a/lib/Web/Hikaru/Form.hs b/lib/Hikaru/Form.hs similarity index 97% rename from lib/Web/Hikaru/Form.hs rename to lib/Hikaru/Form.hs index 75144e19893b8861d0bc529cc190fe111cdf2bc3..1ffddb2262fccf405f2e21215cce2bc594780f5f 100644 --- a/lib/Web/Hikaru/Form.hs +++ b/lib/Hikaru/Form.hs @@ -1,5 +1,5 @@ {-| -Module : Web.Hikaru.Form +Module : Hikaru.Form Copyright : Jan Hamal Dvořák License : AGPL-3 @@ -10,7 +10,7 @@ Portability : non-portable (ghc) This module provides tools to simplify form building and parsing. -} -module Web.Hikaru.Form +module Hikaru.Form ( Form , FormHandler , handleForm @@ -28,8 +28,8 @@ where import Data.ByteString.Builder (toLazyByteString) import Data.Text (Text) import Lucid - import Web.Hikaru.Action - import Web.Hikaru.Types + import Hikaru.Action + import Hikaru.Types -- | diff --git a/lib/Web/Hikaru/Link.hs b/lib/Hikaru/Link.hs similarity index 96% rename from lib/Web/Hikaru/Link.hs rename to lib/Hikaru/Link.hs index 28ffd5b6afd561ac386ab90f1a532ab5ca9e1504..d0ff46ed8d25fb1f7846faf27bdd75cb98432054 100644 --- a/lib/Web/Hikaru/Link.hs +++ b/lib/Hikaru/Link.hs @@ -1,5 +1,5 @@ {-| -Module : Web.Hikaru.Link +Module : Hikaru.Link Copyright : Jan Hamal Dvořák License : AGPL-3 @@ -10,7 +10,7 @@ Portability : non-portable (ghc) This module provides various ways to build local links. -} -module Web.Hikaru.Link +module Hikaru.Link ( makeLink , deriveLink @@ -28,7 +28,7 @@ where import Data.Text (Text) import Lucid import Network.HTTP.Types.URI - import Web.Hikaru.Action + import Hikaru.Action -- | diff --git a/lib/Web/Hikaru/Localize.hs b/lib/Hikaru/Localize.hs similarity index 91% rename from lib/Web/Hikaru/Localize.hs rename to lib/Hikaru/Localize.hs index 033d46a03847d458f2c297d0965310947fbae588..1697f5dad54aebfcf0af855cd2ca691420acf968 100644 --- a/lib/Web/Hikaru/Localize.hs +++ b/lib/Hikaru/Localize.hs @@ -1,5 +1,5 @@ {-| -Module : Web.Hikaru.Localize +Module : Hikaru.Localize Copyright : Jan Hamal Dvořák License : AGPL-3 @@ -39,10 +39,10 @@ instance Localized SampleMessages where Next, create a preferred language list for every action: @ -'Web.Hikaru.Dispatch.dispatch' runAction $ do - 'Web.Hikaru.Dispatch.wrapActions' ('selectLanguages' \"lang\" \"lang\" >>) +'Hikaru.Dispatch.dispatch' runAction $ do + 'Hikaru.Dispatch.wrapActions' ('selectLanguages' \"lang\" \"lang\" >>) - 'Web.Hikaru.Dispatch.route' ... + 'Hikaru.Dispatch.route' ... @ Finally, you can use your catalog when rendering pages: @@ -57,7 +57,7 @@ getSampleR flag = do @ -} -module Web.Hikaru.Localize +module Hikaru.Localize ( Locale , Localized(..) , lc_ @@ -69,8 +69,8 @@ where import Data.String.Conversions import Data.Text (Text) import Lucid - import Web.Hikaru.Action - import Web.Hikaru.Media + import Hikaru.Action + import Hikaru.Media -- | diff --git a/lib/Web/Hikaru/Media.hs b/lib/Hikaru/Media.hs similarity index 98% rename from lib/Web/Hikaru/Media.hs rename to lib/Hikaru/Media.hs index 543cae2912a8290270adfc3a52368a666a025aa4..b143df188e3180717fd67dd0ee73dd717b9a1bad 100644 --- a/lib/Web/Hikaru/Media.hs +++ b/lib/Hikaru/Media.hs @@ -1,5 +1,5 @@ {-| -Module : Web.Hikaru.Media +Module : Hikaru.Media Copyright : Jan Hamal Dvořák License : AGPL-3 @@ -12,7 +12,7 @@ in the headers such as @Accept@, @Accept-Charset@, @Accept-Encoding@ and @Accept-Language@. -} -module Web.Hikaru.Media +module Hikaru.Media ( Media(..) -- * Parsing diff --git a/lib/Web/Hikaru/Route.hs b/lib/Hikaru/Route.hs similarity index 99% rename from lib/Web/Hikaru/Route.hs rename to lib/Hikaru/Route.hs index 7055214303728040959a4a5e1c0d43e845b927f1..a2c2a5a5efea11d741f9381555ec2e7306c488ec 100644 --- a/lib/Web/Hikaru/Route.hs +++ b/lib/Hikaru/Route.hs @@ -1,5 +1,5 @@ {-| -Module : Web.Hikaru.Route +Module : Hikaru.Route Copyright : Jan Hamal Dvořák License : AGPL-3 @@ -11,7 +11,7 @@ This module provides path matching with parameter extraction as well as content negotiation through path quality scoring. -} -module Web.Hikaru.Route +module Hikaru.Route ( -- * Route Selection selectRoute @@ -63,8 +63,8 @@ where import Network.HTTP.Types.Header import Network.HTTP.Types.Method (Method) import Network.Wai - import Web.Hikaru.Media - import Web.Hikaru.Types + import Hikaru.Media + import Hikaru.Types -- | diff --git a/lib/Web/Hikaru/Types.hs b/lib/Hikaru/Types.hs similarity index 98% rename from lib/Web/Hikaru/Types.hs rename to lib/Hikaru/Types.hs index afc22ab6d1e57920df3aef6e8737d3fa5923e6d9..5169d2bf1af817de672dc4407079480c83ea3def 100644 --- a/lib/Web/Hikaru/Types.hs +++ b/lib/Hikaru/Types.hs @@ -1,5 +1,5 @@ {-| -Module : Web.Hikaru.Types +Module : Hikaru.Types Copyright : Jan Hamal Dvořák License : AGPL-3 @@ -10,7 +10,7 @@ Portability : non-portable (ghc) This module provides types common for multiple other modules. -} -module Web.Hikaru.Types +module Hikaru.Types ( FromParam(..) , ToParam(..) , RequestError(..) @@ -182,7 +182,7 @@ where -- | - -- Errors used both by "Web.Hikaru.Action" and "Web.Hikaru.Route" + -- Errors used both by "Hikaru.Action" and "Hikaru.Route" -- to report problems with the requests sent by the user. -- -- Order by the severity from the least to the most severe. diff --git a/lib/Web/Hikaru.hs b/lib/Web/Hikaru.hs deleted file mode 100644 index b3fc118562ad519f825d3cb70be23f2a115e8cb0..0000000000000000000000000000000000000000 --- a/lib/Web/Hikaru.hs +++ /dev/null @@ -1,36 +0,0 @@ -{-| -Module : Web.Hikaru -Copyright : Jan Hamal Dvořák -License : AGPL-3 - -Maintainer : mordae@anilinux.org -Stability : unstable -Portability : non-portable (ghc) - -This module re-exports other modules in the package. --} - -module Web.Hikaru - ( - -- * Exported Modules - module Web.Hikaru.Action - , module Web.Hikaru.Dispatch - , module Web.Hikaru.Form - , module Web.Hikaru.Link - , module Web.Hikaru.Localize - , module Web.Hikaru.Media - , module Web.Hikaru.Route - , module Web.Hikaru.Types - ) -where - import Web.Hikaru.Action - import Web.Hikaru.Dispatch - import Web.Hikaru.Form - import Web.Hikaru.Link - import Web.Hikaru.Localize - import Web.Hikaru.Media - import Web.Hikaru.Route - import Web.Hikaru.Types - - --- vim:set ft=haskell sw=2 ts=2 et: diff --git a/package.yaml b/package.yaml index 986c16336dca22afe03342b6a18f3c3954ab7070..e4e6ef60e52325c0b9e987f1406ddaf1fce67a65 100644 --- a/package.yaml +++ b/package.yaml @@ -36,6 +36,7 @@ default-extensions: - RecordWildCards - ScopedTypeVariables - StandaloneDeriving + - DataKinds dependencies: - aeson >= 1.4 && <1.5 @@ -61,14 +62,14 @@ library: dependencies: [] exposed-modules: - - Web.Hikaru - - Web.Hikaru.Action - - Web.Hikaru.Dispatch - - Web.Hikaru.Form - - Web.Hikaru.Link - - Web.Hikaru.Localize - - Web.Hikaru.Media - - Web.Hikaru.Route - - Web.Hikaru.Types + - Hikaru + - Hikaru.Action + - Hikaru.Dispatch + - Hikaru.Form + - Hikaru.Link + - Hikaru.Localize + - Hikaru.Media + - Hikaru.Route + - Hikaru.Types # EOF