its
  _ ← when (stringResources a) $ onChan Strings
  when (localisationKeys a) $ onChan Localisations
    where onChan a = atomically (writeTChan action a) >> atomically (readTChan result) >>= TIO.putStrLn


-- There will be three entry possibilities.
-- Mode   | baseType  | modType
-- server | directory | archive
-- local  | directory | archivePath
-- local  | directory | directoryPath
-- In each mode, we want a function that returns a path to a directory containing
-- the mod files.
archiveMod :: Archive → IO FilePath
archiveMod = extractArchiveToTemp
localMod path = do
  isDir ← doesDirectoryExist path
  if isDir
    t
argDispatcher :: Args → TChan Action → TChan T.Text → IO ()
argDispatcher a action result = do
  _ ← when (_traits a) $ onChan Traits
  _ ← when (stringResources a) $ onChan Strings
  when (localisationKeys a) $ onChan Localisations
    where onChan a = atomically (writeTChan action a) >> atomically (readTChan result) >>= TIO.putStrLn


-- There will be three entry possibilities.
-- Mode   | baseType  | modType
-- server | directory | archive
-- local  | directory | archivePath
-- local  | directory | directoryPath
-- In each mode, we want a function that returns a path to a directory containing
-- the mod files.
argDispatcher a action result = do
  _ ← when (_traits a) $ onChan Traits
  _ ← when (stringResources a) $ onChan Strings
  when (localisationKeys a) $ onChan Localisations
    where onChan a = atomically (writeTChan action a) >> atomically (readTChan result) >>= TIO.putStrLn


-- There will be three entry possibilities.
-- Mode   | baseType  | modType
-- server | directory | archive
-- local  | directory | archivePath
-- local  | directory | directoryPath
-- In each mode, we want a function that returns a path to a directory containing
-- the mod files.