0.7.16 • Published 5 days ago

@madxnl/madhatter v0.7.16

Weekly downloads
116
License
ISC
Repository
-
Last release
5 days ago

Description

Framework for quickly starting up new graphql projects based on nestjs

Nest framework TypeScript starter repository.

New version

npm version <nummer>
git push && git push --tags

Link to Madhatter

<cd to madhatter>
npm link
<cd to project>
npm link @madxnl/madhatter
<cd to madhatter>
npm i

(don't forget to build after changes)

New modules/files

npm run generate-index

Settings

You can use environment variables to change certain behavior of MadHatter:

Keydescriptiondefault
SECURE_FILE_DOWNLOADSEnables the default security header on file downloadstrue

How to use

Validation rules

Starting from version 0.7.14, validationRules field on a service is deprecated. Please use the @ValidationRule decorator instead on a class, and define the rules on the class as static methods. Example:

import { ValidationRule } from '@madxnl/madhatter';
import { Address } from './address.model';
import { Injectable } from '@nestjs/common';

@ValidationRule(Address)
@Injectable()
export class AddressValidator {
  public static city(value: string, model: Address): void | string {
    if (value !== 'Amsterdam') {
      return 'City must be Amsterdam'
    }
    return undefined
  }
}

Do not forget to then register this class as a provider in an appropriate module.

API

GraphQL queries

  • queryArgs object
    • page, size: pagination variables.
    • queryString: A string field used for general search.
    • sort: An array of type SortArg that is directly being mapped to elasticsearch sort query. Recommended for sorting on multiple fields, since changing the order of the sort means simply changing the order of the array.
    • orderBy: An object with key-value pairs, where the keys are fields to be sorted on and the values are the sort order. Madhatter does not provide native type for this, you are required to create the type definition by extending the QueryArgs type. This is also being mapped to elasticsearch sort query, but due to how NestJS processes input variables, the type definition will determine the order of the mapping, and henceforth the order of the sorting. Therefore this is NOT RECOMMENDED for sorting on multiple fields!

              Example type definition on the client side:

@InputType()
class UserOrderBy {
  @Field(() => Order, { nullable: true })
  email: Order
}

@InputType()
export class UserQueryArgs extends PartialType(QueryArgs(UserInputSchema)) {
  @Field(() => UserOrderBy, { nullable: true })
  orderBy?: UserOrderBy
}
0.7.16

5 days ago

0.7.15

4 months ago

0.7.14

5 months ago

0.7.13

5 months ago

0.7.4

9 months ago

0.7.3

10 months ago

0.7.11

6 months ago

0.7.10

6 months ago

0.7.12

6 months ago

0.7.9

6 months ago

0.7.6

9 months ago

0.7.5

9 months ago

0.7.8

9 months ago

0.7.7

9 months ago

0.7.2-alpha.1

11 months ago

0.7.2-alpha.2

11 months ago

0.7.2

11 months ago

0.6.31

12 months ago

0.7.0-alpha.4

12 months ago

0.7.1-alpha.2

12 months ago

0.7.1-alpha.1

12 months ago

0.6.30

1 year ago

0.6.29

1 year ago

0.7.0-alpha.3

1 year ago

0.6.28-beta.1

1 year ago

0.6.28-beta.2

1 year ago

0.6.28

1 year ago

0.6.25

1 year ago

0.6.24

1 year ago

0.6.27

1 year ago

0.6.26

1 year ago

0.6.21

2 years ago

0.6.20

2 years ago

0.6.23

2 years ago

0.6.22

2 years ago

0.7.0-beta.2

2 years ago

0.6.19

2 years ago

0.6.12

2 years ago

0.6.11

2 years ago

0.6.18

2 years ago

0.6.17

2 years ago

0.6.14

2 years ago

0.6.13

2 years ago

0.6.15

2 years ago

0.6.7

2 years ago

0.6.6

2 years ago

0.6.9

2 years ago

0.6.8

2 years ago

0.6.10

2 years ago

0.7.0-beta.1

2 years ago

0.5.0-beta.56

2 years ago

0.5.0-beta.59

2 years ago

0.5.0-beta.57

2 years ago

0.5.0-beta.58

2 years ago

0.5.0-beta.62

2 years ago

0.5.0-beta.63

2 years ago

0.5.0-beta.60

2 years ago

0.5.0-beta.61

2 years ago

0.6.1-beta.1

2 years ago

0.6.3

2 years ago

0.6.2

2 years ago

0.6.5

2 years ago

0.6.4

2 years ago

0.6.1

2 years ago

0.6.0

2 years ago

0.5.0-beta.51

2 years ago

0.5.0-beta.52

2 years ago

0.5.0-beta.50

2 years ago

0.5.0-beta.55

2 years ago

0.5.0-beta.53

2 years ago

0.5.0-beta.54

2 years ago

0.5.0-beta.39

2 years ago

0.5.0-beta.40

2 years ago

0.5.0-beta.41

2 years ago

0.5.0-beta.44

2 years ago

0.5.0-beta.45

2 years ago

0.5.0-beta.42

2 years ago

0.5.0-beta.43

2 years ago

0.5.0-beta.48

2 years ago

0.5.0-beta.49

2 years ago

0.5.0-beta.46

2 years ago

0.5.0-beta.47

2 years ago

0.5.0-beta.37

3 years ago

0.5.0-beta.38

3 years ago

0.5.0-beta.35

3 years ago

0.5.0-beta.36

3 years ago

0.5.0-beta.34

3 years ago

0.5.0-beta.33

3 years ago

0.5.0-beta.32

3 years ago

0.5.0-beta.31

3 years ago

0.5.0-beta.26

3 years ago

0.5.0-beta.25

3 years ago

0.5.0-beta.28

3 years ago

0.5.0-beta.29

3 years ago

0.5.0-beta.30

3 years ago

0.5.0-beta.22

3 years ago

0.5.0-beta.23

3 years ago

0.5.0-beta.24

3 years ago

0.5.0-beta.21

3 years ago

0.5.0-beta.20

3 years ago

0.5.0-beta.16

3 years ago

0.5.0-beta.19

3 years ago

0.5.0-beta.17

3 years ago

0.5.0-beta.18

3 years ago

0.5.0-beta.15

3 years ago

0.5.0-beta.14

3 years ago

0.5.0-beta.11

3 years ago

0.5.0-beta.12

3 years ago

0.5.0-beta.13

3 years ago

0.5.0-beta.9

3 years ago

0.5.0-beta.8

3 years ago

0.5.0-beta.6

3 years ago

0.5.0-beta.5

3 years ago

0.5.0-beta.4

3 years ago

0.5.0-beta.3

3 years ago

0.5.0-beta.2

3 years ago

0.4.0

3 years ago

0.3.9

3 years ago

0.3.7-beta.2

3 years ago

0.3.7-beta.1

3 years ago

0.3.7-beta.4

3 years ago

0.3.6

3 years ago

0.3.8

3 years ago

0.3.7

3 years ago

0.3.5-beta.1

3 years ago

0.3.5-beta.2

3 years ago

0.3.4

3 years ago

0.3.3

3 years ago

0.3.2

3 years ago

0.3.1

3 years ago

0.3.0

3 years ago

0.2.9

4 years ago

0.2.8

4 years ago

0.2.7

4 years ago

0.2.6

4 years ago

0.2.5

4 years ago

0.2.4

4 years ago

0.1.22

4 years ago

0.2.2

4 years ago

0.2.1

4 years ago

0.1.21

4 years ago

0.1.20

4 years ago

0.1.17

4 years ago

0.1.18

4 years ago

0.1.19

4 years ago

0.1.16

4 years ago

0.1.15

4 years ago

0.1.13

4 years ago

0.1.14

4 years ago

0.1.10

4 years ago

0.1.11

4 years ago

0.1.12

4 years ago

0.1.8

4 years ago

0.1.9

4 years ago

0.1.7

4 years ago

0.1.6

4 years ago

0.1.5

4 years ago

0.1.4

4 years ago

0.1.2

4 years ago

0.1.1

4 years ago

0.1.0

4 years ago

0.0.16

4 years ago

0.0.15

4 years ago

0.0.14

4 years ago

0.0.13

4 years ago

0.0.11

4 years ago

0.0.10

4 years ago

0.0.9

4 years ago

0.0.8

4 years ago

0.0.7

4 years ago

0.0.6

4 years ago

0.0.4

4 years ago

0.0.3

4 years ago

0.0.2

4 years ago

0.0.1

4 years ago