0.2.8 • Published 4 years ago

luren-schema v0.2.8

Weekly downloads
5
License
MIT
Repository
github
Last release
4 years ago

luren-schema

npm version Dependencies Status Build Status Coverage Status

Luren-Schema is a typescript module for Luren, it uses metadata to store type info and validate data.It use decorators to inject metadata, so decorator must be enabled .

Built-in data types:

string, boolean, number, integer, date, array,object

@Schema({title: 'person', additionalProperties: true})
class Person {
      @Prop({ required: true, type: 'string' })
      public name: string
      @Prop({ required: true })
      public password: string
      constructor(name: string, passowrd: string) {
        this.name = name
        this.passowrd = passowrd
      }
      public greeting() {
        console.log(`Hi, I'm ${this.name}`)
      }
    }
const person = new Person('My Name', 'my_passoword')
const schema = getJsSchema(Person)

// validation
//result: [true, undefined]
const [valid, errorMsg] = JsTypes.validate(person, schema)
//serialize to json
// result: {name: 'My Name'}
const data = JsTypes.serialize(person, schema)
//deserialize from json
//result: Person {name: 'John', password: 'encrypted_passwd'}
const p = JsTypes.deserialize({name: 'John', password: 'encrypted_passwd'}, schema)
// result: Hi, I'm John
p.greeting()
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.2.3

4 years ago

0.2.2

4 years ago

0.2.1

4 years ago

0.2.0

4 years ago

0.1.6

4 years ago

0.1.5

4 years ago

0.1.4

4 years ago

0.1.3

4 years ago

0.1.2

4 years ago

0.1.1

4 years ago

0.1.0

4 years ago

0.0.48

5 years ago

0.0.47

5 years ago

0.0.46

5 years ago

0.0.45

5 years ago

0.0.44

5 years ago

0.0.43

5 years ago

0.0.42

5 years ago

0.0.41

5 years ago

0.0.40

5 years ago

0.0.39

5 years ago

0.0.38

5 years ago

0.0.37

5 years ago

0.0.36

5 years ago

0.0.35

5 years ago

0.0.34

5 years ago

0.0.33

5 years ago

0.0.32

5 years ago

0.0.31

5 years ago

0.0.30

5 years ago

0.0.29

5 years ago

0.0.28

5 years ago

0.0.27

5 years ago

0.0.26

5 years ago

0.0.25

5 years ago

0.0.24

5 years ago

0.0.23

5 years ago

0.0.22

5 years ago

0.0.21

5 years ago

0.0.20

5 years ago

0.0.19

5 years ago

0.0.18

5 years ago

0.0.17

5 years ago

0.0.16

5 years ago

0.0.15

5 years ago

0.0.14

5 years ago

0.0.13

5 years ago

0.0.12

5 years ago

0.0.11

5 years ago

0.0.10

5 years ago

0.0.9

5 years ago

0.0.8

5 years ago

0.0.7-14

5 years ago

0.0.7-13

5 years ago

0.0.7-12

5 years ago

0.0.7-11

5 years ago

0.0.7-10

5 years ago

0.0.7-9

5 years ago

0.0.7-8

5 years ago

0.0.7-7

5 years ago

0.0.7-6

5 years ago

0.0.7-5

5 years ago

0.0.7-4

5 years ago

0.0.7-3

5 years ago

0.0.7-2

5 years ago

0.0.7-1

5 years ago

0.0.7

5 years ago

0.0.6

5 years ago

0.0.5

5 years ago

0.0.4

5 years ago

0.0.3

5 years ago

0.0.2

5 years ago

0.0.1

5 years ago