packages feed

kb-text-layout-0.1.0.1: kb-text-layout.cabal

cabal-version: 2.2

-- This file has been generated from package.yaml by hpack version 0.39.6.
--
-- see: https://github.com/sol/hpack

name:           kb-text-layout
version:        0.1.0.1
synopsis:       Multiline text measurement & layout.
category:       Text
author:         IC Rainbow
maintainer:     aenor.realm@gmail.com
copyright:      2026 IC Rainbow
license:        BSD-3-Clause
license-file:   LICENSE
build-type:     Simple
extra-doc-files:
    README.md
    CHANGELOG.md

source-repository head
  type: git
  location: https://gitlab.com/dpwiz/text-layout

flag demos
  description: Build the demo executables and benchmarks.
  manual: True
  default: False

library
  exposed-modules:
      KB.Text.Layout.Analysis
      KB.Text.Layout.Break
      KB.Text.Layout.Measure
      KB.Text.Layout.Segmentation
  other-modules:
      Paths_kb_text_layout
  autogen-modules:
      Paths_kb_text_layout
  hs-source-dirs:
      src
  default-extensions:
      BlockArguments
      DerivingStrategies
      DuplicateRecordFields
      ImplicitParams
      LambdaCase
      NamedFieldPuns
      NoFieldSelectors
      OverloadedRecordDot
      OverloadedStrings
      RecordWildCards
      StrictData
  ghc-options: -Wall -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-home-modules -Wredundant-constraints
  build-depends:
      base >=4.18 && <5
    , containers
    , kb-text-shape >=0.2.1.0 && <0.3
    , text
    , vector
  default-language: GHC2021

library demos
  exposed-modules:
      Demo
      KB.Text.Layout.Html
  other-modules:
      Paths_kb_text_layout
  autogen-modules:
      Paths_kb_text_layout
  hs-source-dirs:
      demos/lib
  default-extensions:
      BlockArguments
      DerivingStrategies
      DuplicateRecordFields
      ImplicitParams
      LambdaCase
      NamedFieldPuns
      NoFieldSelectors
      OverloadedRecordDot
      OverloadedStrings
      RecordWildCards
      StrictData
  ghc-options: -Wall -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-home-modules -Wredundant-constraints
  build-depends:
      base >=4.18 && <5
    , bytestring
    , hyphenation
    , kb-text-layout
    , kb-text-shape
    , text
    , zstd
  default-language: GHC2021
  if !flag(demos)
    buildable: False

executable kb-text-layout-bubbles
  main-is: Main.hs
  other-modules:
      Paths_kb_text_layout
  autogen-modules:
      Paths_kb_text_layout
  hs-source-dirs:
      demos/bubbles
  default-extensions:
      BlockArguments
      DerivingStrategies
      DuplicateRecordFields
      ImplicitParams
      LambdaCase
      NamedFieldPuns
      NoFieldSelectors
      OverloadedRecordDot
      OverloadedStrings
      RecordWildCards
      StrictData
  ghc-options: -Wall -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-home-modules -Wredundant-constraints
  build-depends:
      base >=4.18 && <5
    , demos
    , kb-text-layout
    , kb-text-shape
    , text
  default-language: GHC2021
  if !flag(demos)
    buildable: False

executable kb-text-layout-demo
  main-is: Main.hs
  other-modules:
      Paths_kb_text_layout
  autogen-modules:
      Paths_kb_text_layout
  hs-source-dirs:
      demos/demo
  default-extensions:
      BlockArguments
      DerivingStrategies
      DuplicateRecordFields
      ImplicitParams
      LambdaCase
      NamedFieldPuns
      NoFieldSelectors
      OverloadedRecordDot
      OverloadedStrings
      RecordWildCards
      StrictData
  ghc-options: -Wall -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-home-modules -Wredundant-constraints
  build-depends:
      base >=4.18 && <5
    , demos
    , kb-text-layout
    , kb-text-shape
    , text
  default-language: GHC2021
  if !flag(demos)
    buildable: False

executable kb-text-layout-justify
  main-is: Main.hs
  other-modules:
      Paths_kb_text_layout
  autogen-modules:
      Paths_kb_text_layout
  hs-source-dirs:
      demos/justify
  default-extensions:
      BlockArguments
      DerivingStrategies
      DuplicateRecordFields
      ImplicitParams
      LambdaCase
      NamedFieldPuns
      NoFieldSelectors
      OverloadedRecordDot
      OverloadedStrings
      RecordWildCards
      StrictData
  ghc-options: -Wall -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-home-modules -Wredundant-constraints
  build-depends:
      base >=4.18 && <5
    , demos
    , kb-text-layout
    , kb-text-shape
    , text
    , vector
  default-language: GHC2021
  if !flag(demos)
    buildable: False

executable kb-text-layout-masonry
  main-is: Main.hs
  other-modules:
      Paths_kb_text_layout
  autogen-modules:
      Paths_kb_text_layout
  hs-source-dirs:
      demos/masonry
  default-extensions:
      BlockArguments
      DerivingStrategies
      DuplicateRecordFields
      ImplicitParams
      LambdaCase
      NamedFieldPuns
      NoFieldSelectors
      OverloadedRecordDot
      OverloadedStrings
      RecordWildCards
      StrictData
  ghc-options: -Wall -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-home-modules -Wredundant-constraints
  build-depends:
      base >=4.18 && <5
    , demos
    , kb-text-layout
    , kb-text-shape
    , text
  default-language: GHC2021
  if !flag(demos)
    buildable: False

executable kb-text-layout-obstacles
  main-is: Main.hs
  other-modules:
      Paths_kb_text_layout
  autogen-modules:
      Paths_kb_text_layout
  hs-source-dirs:
      demos/obstacles
  default-extensions:
      BlockArguments
      DerivingStrategies
      DuplicateRecordFields
      ImplicitParams
      LambdaCase
      NamedFieldPuns
      NoFieldSelectors
      OverloadedRecordDot
      OverloadedStrings
      RecordWildCards
      StrictData
  ghc-options: -Wall -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-home-modules -Wredundant-constraints
  build-depends:
      base >=4.18 && <5
    , demos
    , kb-text-layout
    , kb-text-shape
    , text
  default-language: GHC2021
  if !flag(demos)
    buildable: False

test-suite kb-text-layout-test
  type: exitcode-stdio-1.0
  main-is: Spec.hs
  other-modules:
      Paths_kb_text_layout
  autogen-modules:
      Paths_kb_text_layout
  hs-source-dirs:
      test
  default-extensions:
      BlockArguments
      DerivingStrategies
      DuplicateRecordFields
      ImplicitParams
      LambdaCase
      NamedFieldPuns
      NoFieldSelectors
      OverloadedRecordDot
      OverloadedStrings
      RecordWildCards
      StrictData
  ghc-options: -Wall -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-home-modules -Wredundant-constraints
  build-depends:
      base >=4.18 && <5
    , demos
    , kb-text-layout
    , tasty
    , tasty-hunit
    , text
    , vector
  default-language: GHC2021
  if !flag(demos)
    buildable: False

benchmark kb-text-layout-bench
  type: exitcode-stdio-1.0
  main-is: Bench.hs
  other-modules:
      Paths_kb_text_layout
  autogen-modules:
      Paths_kb_text_layout
  hs-source-dirs:
      bench
  default-extensions:
      BlockArguments
      DerivingStrategies
      DuplicateRecordFields
      ImplicitParams
      LambdaCase
      NamedFieldPuns
      NoFieldSelectors
      OverloadedRecordDot
      OverloadedStrings
      RecordWildCards
      StrictData
  ghc-options: -Wall -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-home-modules -Wredundant-constraints
  build-depends:
      base >=4.18 && <5
    , deepseq
    , demos
    , kb-text-layout
    , kb-text-shape
    , tasty-bench
  default-language: GHC2021
  if !flag(demos)
    buildable: False