Skip to content

A collection of utilities for absinthe (Elixir's GraphQL library).

License

Notifications You must be signed in to change notification settings

significa/absinthe_utils

Repository files navigation

Absinthe Utils

Collection of utilities for absinthe.

absinthe_utils in hex.pm absinthe_utils documentation

Installation

Available in Hex, the package can be installed by adding absinthe_utils to your list of dependencies in mix.exs:

def deps do
  [
    # Check the releases page for the desired version (and use sigils accordingly, ex: "~>").
    {:absinthe_utils, ">= 0.0.0"}
  ]
end

Documentation can be found in HexDocs.

Main Features

Middlewares:

  • AbsintheUtils.Middleware.ArgLoader: Middleware for loading entities in field arguments.
  • AbsintheUtils.Middleware.DeprecatedArgs: Middleware for handling deprecated or renamed field arguments (arg).
  • AbsintheUtils.Middleware.MutuallyExclusiveInputs : Absinthe middleware for validating mutually exclusive input arguments.

Scalars:

  • AbsintheUtils.Scalars.JSON: JSON scalar.
  • AbsintheUtils.Scalars.UUID: UUID scalar.
  • AbsintheUtils.Scalars.StrictNaiveDateTime: NaiveDatetime that does not accept ISO8601 with offset.

Types:

  • AbsintheUtils.Types.DateFilterTypes: Date gte/lte filters.
  • AbsintheUtils.Types.PaginationTypes: Pagination params and details.

Helpers and utility functions:

  • AbsintheUtils.Helpers.Sorting: Sort alike utils for batch handling.
  • AbsintheUtils.Helpers.Errors: Helper to put error results in absinthe resolutions.

About

A collection of utilities for absinthe (Elixir's GraphQL library).

Topics

Resources

License

Stars

Watchers

Forks

Contributors 3

  •  
  •  
  •