hasura_helper 1.0.1 copy "hasura_helper: ^1.0.1" to clipboard
hasura_helper: ^1.0.1 copied to clipboard

A Hasura GraphQL helper utility to build queries and mutations with ease

example/hasura_helper_example.dart

import 'package:hasura_helper/hasura_helper.dart';

void main() {
  Hasura? request;

  /// basic usage

  request = Hasura.insert(
    table: 'users',
    object: {
      'username': 'rasitayaz',
      'profession': 'developer',
    },
    returning: {'id'},
  );

  print(request.body);

  /// multiple queries (or mutations)

  request = Hasura.query(
    actions: [
      HasuraQuery.list(
        table: 'users',
        where: {
          'profession': {'_eq': 'developer'},
        },
        returning: {'id', 'username'},
      ),
      HasuraQuery.byId(
        table: 'users',
        id: 1,
        returning: {'id', 'profession'},
      ),
    ],
  );

  print(request.body);

  /// with jsonb variables

  request = Hasura.updateById(
    table: 'users',
    id: 1,
    variables: {
      'education': {
        'school': 'marmara university',
        'department': 'computer engineering',
      },
    },
    args: {
      '_set': {'education': '\$education'},
    },
    returning: {'id'},
  );

  print(request.body);

  /// using entities for relations

  request = Hasura.queryById(
    table: 'users',
    id: 1,
    returning: {
      'id',
      HasuraEntity(
        'messages',
        args: {
          'limit': 20,
          'order_by': {'date': 'desc'},
        },
        fields: {'id', 'text'},
      ),
    },
  );

  print(request.body);
}
3
likes
160
pub points
0%
popularity

Publisher

unverified uploader

A Hasura GraphQL helper utility to build queries and mutations with ease

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (LICENSE)

More

Packages that depend on hasura_helper