5.2.2 • Published 1 year ago

@forrestjs/service-hasura-client v5.2.2

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

Hasura Client for NodeJS

Configuration

forrest.run({
  settings: {
    hasura: {
      endpoint: 'http://localhost:8080',
      secret: 'hasura',
      auth: {
        token: 'token',
        jwt: {
          secret: 'abc',
          roles: ['r1', 'r2'],
          defaultRole: ['r1'],
          session: {
            foo: 'bar'
          }
        },
        fn: async () => ({
          token: 'token',
          ttl: 0
        })
      } 
    }
  }
})

👉 Only one auth setting is supported at any time.

Authorization Token

When you provide this setting, HasuraClient will use it as Authorization: Bearer {token}.

Authorization JWT

[ TO BE IMPLEMENTED ]

When you provide this setting, HasuraClient will calculate the JWT and use it as Authorization: Bearer {jwt}.

Authorization Logic

[ TO BE IMPLEMENTED ]

When you provide this setting you can calculate the authorization token by offering a custom logic.

  • the resulting token key will be used as Authorization: Bearer {token}.
  • the ttl will be used as cache flag:
    • 0 keep forever (until reboot)
    • -1 calculate at every query
    • 1000 keep for 1s (integer value expressed in milliseconds)

Query

const MY_QUERY = `
  query FooBar ($var: String!) {
    resource (
      par: $var
    ) {
      field1
      field2
    }
  }
`;

const myFeature = () => [{
  target: '$START_FEATURE',
  handler: async ({ getContext }) => {
    const hasura = getContext('hasura');
    const res = await hasura.query(MY_QUERY, {
      var: 'foobar'
    });

    console.log(res);
  }
}];

Sql

const myFeature = () => [{
  target: '$START_FEATURE',
  handler: async ({ getContext }) => {
    const hasura = getContext('hasura');
    const res = await hasura.sql(MY_QUERY, {
      var: 'foobar'
    });

    console.log(res);
  }
}];
5.2.2

1 year ago

5.1.1

2 years ago

5.1.0

2 years ago

5.0.6

2 years ago

5.0.5

2 years ago

5.0.4

2 years ago

5.2.1

2 years ago

5.0.3

2 years ago

5.2.0

2 years ago

5.0.2

2 years ago

5.0.1

2 years ago

5.0.0-alpha.39

2 years ago

5.0.0-alpha.37

2 years ago

5.0.0-alpha.38

2 years ago

5.0.0-alpha.35

2 years ago

5.0.0-alpha.36

2 years ago

5.0.0-alpha.33

2 years ago

5.0.0-alpha.34

2 years ago

5.0.0-alpha.40

2 years ago

5.0.0-alpha.31

3 years ago

5.0.0-alpha.32

3 years ago

5.0.0-alpha.30

3 years ago

5.0.0-alpha.28

3 years ago

5.0.0-alpha.29

3 years ago

5.0.0-alpha.26

3 years ago

5.0.0-alpha.27

3 years ago

5.0.0-alpha.25

3 years ago

5.0.0-alpha.9

3 years ago

5.0.0-alpha.19

3 years ago

5.0.0-alpha.17

3 years ago

5.0.0-alpha.18

3 years ago

5.0.0-alpha.15

3 years ago

5.0.0-alpha.16

3 years ago

5.0.0-alpha.13

3 years ago

5.0.0-alpha.14

3 years ago

5.0.0-alpha.11

3 years ago

5.0.0-alpha.12

3 years ago

5.0.0-y.0

3 years ago

5.0.0-alpha.10

3 years ago

5.0.0-alpha.24

3 years ago

5.0.0-alpha.22

3 years ago

5.0.0-alpha.23

3 years ago

5.0.0-alpha.20

3 years ago

5.0.0-alpha.21

3 years ago

5.0.0-alpha.8

3 years ago

5.0.0-alpha.7

3 years ago

5.0.0-alpha.6

3 years ago

5.0.0-alpha.5

3 years ago

5.0.0-alpha.3

3 years ago

5.0.0-alpha.2

3 years ago

5.0.0-alpha.1

3 years ago

5.0.0-alpha.0

3 years ago

4.7.2

3 years ago

4.7.1

3 years ago

4.7.1-alpha.1

3 years ago

4.7.1-alpha.0

3 years ago

4.7.0

3 years ago

4.6.0

3 years ago

4.6.0-alpha.0

3 years ago