@piiano/forms
Version:
Piiano Forms SDK
2 lines (1 loc) • 1.97 kB
JavaScript
import{string as o,record as p,object as t,literal as n,array as e,boolean as a,oneOf as s,number as i,unknown as c}from"./schema.js";const d=o().enum("tokenize-object","tokenize-fields","encrypt-object","encrypt-fields","store-object"),l=o().enum("AppFunctionality","Analytics","Notifications","Marketing","ThirdPartyMarketing","FraudPreventionSecurityAndCompliance","AccountManagement","Maintenance","DataSubjectRequest","Other"),y=t({name:o(),dataTypeName:o(),label:o().optional(),placeholder:o().optional(),required:a().optional(),value:o().optional()}),u=o().enum("none","default","floating-label"),b=p(o().enum("primary","primaryDark","background","focusBackground","placeholderColor","borderColor"),o().optional()),m=t({theme:u.optional(),variables:b.optional(),css:o().optional()}),k=t({vaultURL:o(),apiKey:o(),debug:a().optional(),allowUpdates:a().optional(),strategy:d.optional(),globalVaultIdentifiers:a().optional(),collection:o(),tenantId:o().optional(),reason:l.optional(),expiration:i().optional(),storeObject:a().optional(),fields:e(y),submitButton:o().optional(),style:m.optional()}),g=t({width:i(),height:i()}),V=t({type:n("read-objects"),collection:o(),reason:l.optional(),ids:e(o()),props:e(o()),transformationParam:o().optional()}),f=t({type:n("invoke-action"),action:o(),reason:l.optional(),input:p(o(),c()).optional()}),v=e(t({path:o(),label:o().optional(),clickToCopy:a().optional(),class:o().optional(),format:o().optional()})),r=t({vaultURL:o(),apiKey:o(),debug:a().optional(),dynamic:a().optional(),strategy:s(V,f),display:v,css:o().optional()});s(t({event:n("init"),payload:r}),t({event:n("update"),payload:r}),t({event:n("container-size"),payload:g}),t({event:n("copy"),payload:t({path:o(),trustedEventKey:o().optional()})}));export{y as FieldValidator,k as FormInitOptionsValidator,l as ReasonValidator,g as SizeValidator,d as StrategyValidator,m as StyleValidator,u as ThemeValidator,b as VariablesValidator,r as ViewInitOptionsValidator};