packages feed

miso-fluent-1.0.0: miso-fluent.cabal

cabal-version: 3.0
name: miso-fluent
version: 1.0.0
synopsis: Translate miso apps with Project Fluent
description:
  In-browser <https://projectfluent.org Project Fluent> localisation backed by
  <https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl Intl>.

license: EUPL-1.2
license-file: LICENCE
author: IDA
maintainer: IDA
homepage: https://digital-autonomy.institute
bug-reports: https://issues.digital-autonomy.institute
category: Web, Language
build-type: Simple
extra-doc-files:
  CHANGELOG.md

common common
  default-language: Haskell2010
  ghc-options:
    -Weverything
    -Wno-safe
    -Wno-unsafe
    -Wno-all-missed-specialisations
    -Wno-missing-export-lists
    -Wno-missing-import-lists
    -Wno-missing-kind-signatures
    -Wno-missing-role-annotations
    -Wno-missing-safe-haskell-mode
    -Wno-orphans

  if (impl(ghcjs) || arch(javascript))
    cpp-options: -DGHCJS_BROWSER
  elif arch(wasm32)
    cpp-options: -DWASM
  else
    cpp-options: -DVANILLA

  default-extensions:
    BlockArguments
    DerivingStrategies
    FlexibleInstances
    GeneralizedNewtypeDeriving
    ImportQualifiedPost
    LambdaCase
    NamedFieldPuns
    NoImplicitPrelude
    OverloadedRecordDot
    OverloadedStrings
    QuasiQuotes
    TypeApplications
    TypeOperators
    ViewPatterns

  build-depends:
    base >=4 && <5,
    miso >=1.14 && <1.15,
    time >=1.12 && <1.17,

library
  import: common
  hs-source-dirs: src
  build-depends:
    fluent >=1.0 && <1.1,
    fluent-syntax >=1.0 && <1.1,
    scientific >=0.3 && <0.4,
    text >=2.1 && <2.2,

  exposed-modules:
    Miso.Fluent
    Miso.Fluent.Intl
    Miso.Fluent.Parser

executable miso-fluent-test
  import: common
  hs-source-dirs: test
  main-is: Main.hs
  build-depends:
    hspec >=2.11 && <2.12,
    miso-fluent,

  if (impl(ghcjs) || arch(javascript))
    ld-options: -sEXPORTED_RUNTIME_METHODS=HEAP8
  elif arch(wasm32)
    ghc-options:
      -no-hs-main
      -optl-mexec-model=reactor
      "-optl-Wl,--export=hs_start"