clay-policy
Schema helpers for ClayDB resources
Table of Contents
Installation
$ npm install clay-policy --save
Usage
'use strict' const clayPolicy = const STRING DATE = clayPolicyDataTypes { const policy = const error = policy console // -> { rank: { reason: 'enums', expects: [ /* ... */ ], actual: 'ULTRA' } }}
Field Restrictions
Restriction | Type | Description | default |
---|---|---|---|
type | Type of the field. Possible values are defined as DataTypes in clay-constants package. | ||
oneOf | array | Enum values for the field (Only for STRING type) | |
required | boolean | Value is required for the field | |
default | Default value of the field | ||
unique | boolean | Add unique constraint on the field | |
uniqueFor | array | Names of attributes to make unique for | |
minimum | number | Minimum value of the field (Only for NUMBER type) | |
maximum | number | Maximum value of the field (Only for NUMBER type) | |
minLength | integer | Minimum length of the field | |
maxLength | integer | Maximum length of the field | |
trim | boolean | Trim value. (Only for STRING type) | |
pattern | string | Restrict value with pattern. (Only for STRING type) | |
multiple | boolean | Field can contain multiple value. Type restriction will be applied to each items |
API Guide
Data Types
Available data types
- NUMBER
- STRING
- BOOLEAN
- DATE
- OBJECT
- NULL
- REF
- ENTITY
- ID
License
This software is released under the Apache-2.0 License.