UNPKG

@vaadin/hilla-models

Version:

Generative form models for Hilla

90 lines 3.54 kB
import { ConstraintBuilder } from './ConstraintBuilder.js'; import * as m from './m.js'; import { Model } from './Model.js'; import { ArrayModel, BooleanModel, NumberModel, RecordModel, StringModel } from './models.js'; export const Null = new ConstraintBuilder() .model(Model) .attribute('message', m.optional(StringModel)) .name('Null') .build(); export const NotNull = new ConstraintBuilder() .model(Model) .attribute('message', m.optional(StringModel)) .name('NotNull') .build(); export const AssertTrue = new ConstraintBuilder() .model(BooleanModel) .attribute('message', m.optional(StringModel)) .name('AssertTrue') .build(); export const AssertFalse = new ConstraintBuilder() .model(BooleanModel) .attribute('message', m.optional(StringModel)) .name('AssertFalse') .build(); export const Min = new ConstraintBuilder() .model(NumberModel) .attribute('message', m.optional(StringModel)) .name('Min') .attribute('value', NumberModel) .build(); export const Max = new ConstraintBuilder() .model(NumberModel) .attribute('message', m.optional(StringModel)) .name('Max') .attribute('value', NumberModel) .build(); export const DecimalMin = new ConstraintBuilder() .model(m.union(NumberModel, StringModel)) .name('DecimalMin') .attribute('value', NumberModel) .build(); export const DecimalMax = new ConstraintBuilder().model(m.union(NumberModel, StringModel)).name('DecimalMax').build(); export const Negative = new ConstraintBuilder() .model(NumberModel) .attribute('message', m.optional(StringModel)) .name('Negative') .build(); export const NegativeOrZero = new ConstraintBuilder() .model(NumberModel) .attribute('message', m.optional(StringModel)) .name('NegativeOrZero') .build(); export const Positive = new ConstraintBuilder() .model(NumberModel) .attribute('message', m.optional(StringModel)) .name('Positive') .build(); export const PositiveOrZero = new ConstraintBuilder() .model(NumberModel) .attribute('message', m.optional(StringModel)) .name('PositiveOrZero') .build(); export const Size = new ConstraintBuilder() .model(m.union(StringModel, ArrayModel)) .name('Size') .attribute('min', m.optional(m.withDefaultValue(NumberModel, 0))) .attribute('max', m.optional(m.withDefaultValue(NumberModel, Number.MAX_SAFE_INTEGER))) .build(); export const Digits = new ConstraintBuilder() .model(m.union(StringModel, NumberModel)) .name('Digits') .attribute('integer', NumberModel) .attribute('fraction', NumberModel) .build(); export const Past = new ConstraintBuilder().model(StringModel).name('Past').build(); export const PastOrPresent = new ConstraintBuilder().model(StringModel).name('PastOrPresent').build(); export const Future = new ConstraintBuilder().model(StringModel).name('Future').build(); export const FutureOrPresent = new ConstraintBuilder().model(StringModel).name('FutureOrPresent').build(); export const Pattern = new ConstraintBuilder() .model(StringModel) .name('Pattern') .attribute('regexp', StringModel) .build(); export const NotEmpty = new ConstraintBuilder() .model(m.union(StringModel, ArrayModel, RecordModel)) .name('NotEmpty') .build(); export const NotBlank = new ConstraintBuilder().model(StringModel).name('NotBlank').build(); export const Email = new ConstraintBuilder().model(StringModel).name('Email').build(); //# sourceMappingURL=constraints.js.map