module App.Commands where

import App.Commands.SyncFromArchive
import App.Commands.Plan
import App.Commands.SyncToArchive
import App.Commands.Version
import Options.Applicative

{- HLINT ignore "Monoid law, left identity" -}

commands :: Parser (IO ())
commands :: Parser (IO ())
commands = Parser (IO ())
commandsGeneral

commandsGeneral :: Parser (IO ())
commandsGeneral :: Parser (IO ())
commandsGeneral = Mod CommandFields (IO ()) -> Parser (IO ())
forall a. Mod CommandFields a -> Parser a
subparser (Mod CommandFields (IO ()) -> Parser (IO ()))
-> Mod CommandFields (IO ()) -> Parser (IO ())
forall a b. (a -> b) -> a -> b
$ Mod CommandFields (IO ())
forall a. Monoid a => a
mempty
  Mod CommandFields (IO ())
-> Mod CommandFields (IO ()) -> Mod CommandFields (IO ())
forall a. Semigroup a => a -> a -> a
<>  String -> Mod CommandFields (IO ())
forall a. String -> Mod CommandFields a
commandGroup String
"Commands:"
  Mod CommandFields (IO ())
-> Mod CommandFields (IO ()) -> Mod CommandFields (IO ())
forall a. Semigroup a => a -> a -> a
<>  Mod CommandFields (IO ())
cmdPlan
  Mod CommandFields (IO ())
-> Mod CommandFields (IO ()) -> Mod CommandFields (IO ())
forall a. Semigroup a => a -> a -> a
<>  Mod CommandFields (IO ())
cmdSyncFromArchive
  Mod CommandFields (IO ())
-> Mod CommandFields (IO ()) -> Mod CommandFields (IO ())
forall a. Semigroup a => a -> a -> a
<>  Mod CommandFields (IO ())
cmdSyncToArchive
  Mod CommandFields (IO ())
-> Mod CommandFields (IO ()) -> Mod CommandFields (IO ())
forall a. Semigroup a => a -> a -> a
<>  Mod CommandFields (IO ())
cmdVersion