Socket
Socket
Sign inDemoInstall

vee-validate

Package Overview
Dependencies
22
Maintainers
1
Versions
334
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 4.8.0 to 4.8.1

2

dist/vee-validate.d.ts

@@ -654,3 +654,3 @@ import * as vue from 'vue';

type FormSlotProps = UnwrapRef<Pick<FormContext, 'meta' | 'errors' | 'values' | 'isSubmitting' | 'submitCount' | 'validate' | 'validateField' | 'handleReset' | 'setErrors' | 'setFieldError' | 'setFieldValue' | 'setValues' | 'setFieldTouched' | 'setTouched' | 'resetForm' | 'resetField' | 'controlledValues'>> & {
type FormSlotProps = UnwrapRef<Pick<FormContext, 'meta' | 'errors' | 'errorBag' | 'values' | 'isSubmitting' | 'submitCount' | 'validate' | 'validateField' | 'handleReset' | 'setErrors' | 'setFieldError' | 'setFieldValue' | 'setValues' | 'setFieldTouched' | 'setTouched' | 'resetForm' | 'resetField' | 'controlledValues'>> & {
handleSubmit: (evt: Event | SubmissionHandler, onSubmit?: SubmissionHandler) => Promise<unknown>;

@@ -657,0 +657,0 @@ submitForm(evt?: Event): void;

/**
* vee-validate v4.8.0
* vee-validate v4.8.1
* (c) 2023 Abdelrahman Awad
* @license MIT
*/
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue")):"function"==typeof define&&define.amd?define(["exports","vue"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).VeeValidate={},e.Vue)}(this,(function(e,t){"use strict";function n(e){return"function"==typeof e}function r(e){return null==e}const a=e=>null!==e&&!!e&&"object"==typeof e&&!Array.isArray(e);function l(e){return Number(e)>=0}const u={};const i=Symbol("vee-validate-form"),o=Symbol("vee-validate-field-instance"),s=Symbol("Default empty value"),d="undefined"!=typeof window;function c(e){return n(e)&&!!e.__locatorRef}function f(e){return!!e&&n(e.parse)&&"VVTypedSchema"===e.__type}function v(e){return!!e&&n(e.validate)}function p(e){return"checkbox"===e||"radio"===e}function m(e){return Array.isArray(e)?0===e.length:a(e)&&0===Object.keys(e).length}function h(e){return/^\[.+\]$/i.test(e)}function y(e){return"SELECT"===e.tagName}function g(e,t){return!function(e,t){const n=![!1,null,void 0,0].includes(t.multiple)&&!Number.isNaN(t.multiple);return"select"===e&&"multiple"in t&&n}(e,t)&&"file"!==t.type&&!p(t.type)}function b(e){return V(e)&&e.target&&"submit"in e.target}function V(e){return!!e&&(!!("undefined"!=typeof Event&&n(Event)&&e instanceof Event)||!(!e||!e.srcElement))}function O(e,t){return t in e&&e[t]!==s}function F(e,t){if(e===t)return!0;if(e&&t&&"object"==typeof e&&"object"==typeof t){if(e.constructor!==t.constructor)return!1;var n,r,a;if(Array.isArray(e)){if((n=e.length)!=t.length)return!1;for(r=n;0!=r--;)if(!F(e[r],t[r]))return!1;return!0}if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(r of e.entries())if(!t.has(r[0]))return!1;for(r of e.entries())if(!F(r[1],t.get(r[0])))return!1;return!0}if(A(e)&&A(t))return e.size===t.size&&(e.name===t.name&&(e.lastModified===t.lastModified&&e.type===t.type));if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(r of e.entries())if(!t.has(r[0]))return!1;return!0}if(ArrayBuffer.isView(e)&&ArrayBuffer.isView(t)){if((n=e.length)!=t.length)return!1;for(r=n;0!=r--;)if(e[r]!==t[r])return!1;return!0}if(e.constructor===RegExp)return e.source===t.source&&e.flags===t.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===t.toString();if((n=(a=Object.keys(e)).length)!==Object.keys(t).length)return!1;for(r=n;0!=r--;)if(!Object.prototype.hasOwnProperty.call(t,a[r]))return!1;for(r=n;0!=r--;){var l=a[r];if(!F(e[l],t[l]))return!1}return!0}return e!=e&&t!=t}function A(e){return!!d&&e instanceof File}function w(e,t,n){"object"==typeof n.value&&(n.value=j(n.value)),n.enumerable&&!n.get&&!n.set&&n.configurable&&n.writable&&"__proto__"!==t?e[t]=n.value:Object.defineProperty(e,t,n)}function j(e){if("object"!=typeof e)return e;var t,n,r,a=0,l=Object.prototype.toString.call(e);if("[object Object]"===l?r=Object.create(e.__proto__||null):"[object Array]"===l?r=Array(e.length):"[object Set]"===l?(r=new Set,e.forEach((function(e){r.add(j(e))}))):"[object Map]"===l?(r=new Map,e.forEach((function(e,t){r.set(j(t),j(e))}))):"[object Date]"===l?r=new Date(+e):"[object RegExp]"===l?r=new RegExp(e.source,e.flags):"[object DataView]"===l?r=new e.constructor(j(e.buffer)):"[object ArrayBuffer]"===l?r=e.slice(0):"Array]"===l.slice(-6)&&(r=new e.constructor(e)),r){for(n=Object.getOwnPropertySymbols(e);a<n.length;a++)w(r,n[a],Object.getOwnPropertyDescriptor(e,n[a]));for(a=0,n=Object.getOwnPropertyNames(e);a<n.length;a++)Object.hasOwnProperty.call(r,t=n[a])&&r[t]===e[t]||w(r,t,Object.getOwnPropertyDescriptor(e,t))}return r||e}function S(e){return h(e)?e.replace(/\[|\]/gi,""):e}function E(e,t,n){if(!e)return n;if(h(t))return e[S(t)];return(t||"").split(/\.|\[(\d+)\]/).filter(Boolean).reduce(((e,t)=>{return(a(r=e)||Array.isArray(r))&&t in e?e[t]:n;var r}),e)}function k(e,t,n){if(h(t))return void(e[S(t)]=n);const a=t.split(/\.|\[(\d+)\]/).filter(Boolean);let u=e;for(let e=0;e<a.length;e++){if(e===a.length-1)return void(u[a[e]]=n);a[e]in u&&!r(u[a[e]])||(u[a[e]]=l(a[e+1])?[]:{}),u=u[a[e]]}}function B(e,t){Array.isArray(e)&&l(t)?e.splice(Number(t),1):a(e)&&delete e[t]}function I(e,t){if(h(t))return void delete e[S(t)];const n=t.split(/\.|\[(\d+)\]/).filter(Boolean);let a=e;for(let e=0;e<n.length;e++){if(e===n.length-1){B(a,n[e]);break}if(!(n[e]in a)||r(a[n[e]]))break;a=a[n[e]]}const l=n.map(((t,r)=>E(e,n.slice(0,r).join("."))));for(let t=l.length-1;t>=0;t--)m(l[t])&&(0!==t?B(l[t-1],n[t-1]):B(e,n[0]))}function M(e){return Object.keys(e)}function T(e,n=undefined){const r=t.getCurrentInstance();return(null==r?void 0:r.provides[e])||t.inject(e,n)}function C(e){t.warn(`[vee-validate]: ${e}`)}function R(e){return Array.isArray(e)?e[0]:e}function x(e,t,n){if(Array.isArray(e)){const n=[...e],r=n.findIndex((e=>F(e,t)));return r>=0?n.splice(r,1):n.push(t),n}return F(e,t)?n:t}function N(e,t=0){let n=null,r=[];return function(...a){return n&&window.clearTimeout(n),n=window.setTimeout((()=>{const t=e(...a);r.forEach((e=>e(t))),r=[]}),t),new Promise((e=>r.push(e)))}}function P(e,t){return a(t)&&t.number?function(e){const t=parseFloat(e);return isNaN(t)?e:t}(e):e}function _(e,t){let n;return async function(...r){const a=e(...r);n=a;const l=await a;return a!==n||(n=void 0,t(l,r)),l}}function U({get:e,set:n}){const r=t.ref(j(e()));return t.watch(e,(e=>{F(e,r.value)||(r.value=j(e))}),{deep:!0}),t.watch(r,(t=>{F(t,e())||n(j(t))}),{deep:!0}),r}const $=(e,t,n)=>t.slots.default?"string"!=typeof e&&e?{default:()=>{var e,r;return null===(r=(e=t.slots).default)||void 0===r?void 0:r.call(e,n())}}:t.slots.default(n()):t.slots.default;function D(e){if(z(e))return e._value}function z(e){return"_value"in e}function q(e){if(!V(e))return e;const t=e.target;if(p(t.type)&&z(t))return D(t);if("file"===t.type&&t.files){const e=Array.from(t.files);return t.multiple?e:e[0]}if(y(n=t)&&n.multiple)return Array.from(t.options).filter((e=>e.selected&&!e.disabled)).map(D);var n;if(y(t)){const e=Array.from(t.options).find((e=>e.selected));return e?D(e):t.value}return t.value}function L(e){const t={};return Object.defineProperty(t,"_$$isNormalized",{value:!0,writable:!1,enumerable:!1,configurable:!1}),e?a(e)&&e._$$isNormalized?e:a(e)?Object.keys(e).reduce(((t,n)=>{const r=function(e){if(!0===e)return[];if(Array.isArray(e))return e;if(a(e))return e;return[e]}(e[n]);return!1!==e[n]&&(t[n]=K(r)),t}),t):"string"!=typeof e?t:e.split("|").reduce(((e,t)=>{const n=G(t);return n.name?(e[n.name]=K(n.params),e):e}),t):t}function K(e){const t=e=>"string"==typeof e&&"@"===e[0]?function(e){const t=t=>E(t,e)||t[e];return t.__locatorRef=e,t}(e.slice(1)):e;return Array.isArray(e)?e.map(t):e instanceof RegExp?[e]:Object.keys(e).reduce(((n,r)=>(n[r]=t(e[r]),n)),{})}const G=e=>{let t=[];const n=e.split(":")[0];return e.includes(":")&&(t=e.split(":").slice(1).join(":").split(",")),{name:n,params:t}};let X=Object.assign({},{generateMessage:({field:e})=>`${e} is not valid.`,bails:!0,validateOnBlur:!0,validateOnChange:!0,validateOnInput:!1,validateOnModelUpdate:!0});const H=()=>X,J=e=>{X=Object.assign(Object.assign({},X),e)};async function Q(e,t,r={}){const a=null==r?void 0:r.bails,l={name:(null==r?void 0:r.name)||"{field}",rules:t,label:null==r?void 0:r.label,bails:null==a||a,formData:(null==r?void 0:r.values)||{}},u=await async function(e,t){if(f(e.rules)||v(e.rules))return async function(e,t){const n=f(t)?t:W(t),r=await n.parse(e),a=[];for(const e of r.errors)e.errors.length&&a.push(...e.errors);return{errors:a}}(t,e.rules);if(n(e.rules)||Array.isArray(e.rules)){const n={field:e.label||e.name,name:e.name,label:e.label,form:e.formData,value:t},r=Array.isArray(e.rules)?e.rules:[e.rules],a=r.length,l=[];for(let u=0;u<a;u++){const a=r[u],i=await a(t,n);if("string"!=typeof i&&i)continue;const o="string"==typeof i?i:Z(n);if(l.push(o),e.bails)return{errors:l}}return{errors:l}}const r=Object.assign(Object.assign({},e),{rules:L(e.rules)}),a=[],l=Object.keys(r.rules),u=l.length;for(let n=0;n<u;n++){const u=l[n],i=await Y(r,t,{name:u,params:r.rules[u]});if(i.error&&(a.push(i.error),e.bails))return{errors:a}}return{errors:a}}(l,e),i=u.errors;return{errors:i,valid:!i.length}}function W(e){return{__type:"VVTypedSchema",async parse(t){var n;try{return{output:await e.validate(t,{abortEarly:!1}),errors:[]}}catch(e){if(!function(e){return!!e&&"ValidationError"===e.name}(e))throw e;if(!(null===(n=e.inner)||void 0===n?void 0:n.length)&&e.errors.length)return{errors:[{path:e.path,errors:e.errors}]};const t=e.inner.reduce(((e,t)=>{const n=t.path||"";return e[n]||(e[n]={errors:[],path:n}),e[n].errors.push(...t.errors),e}),{});return{errors:Object.values(t)}}}}}async function Y(e,t,n){const r=(a=n.name,u[a]);var a;if(!r)throw new Error(`No such validator '${n.name}' exists.`);const l=function(e,t){const n=e=>c(e)?e(t):e;if(Array.isArray(e))return e.map(n);return Object.keys(e).reduce(((t,r)=>(t[r]=n(e[r]),t)),{})}(n.params,e.formData),i={field:e.label||e.name,name:e.name,label:e.label,value:t,form:e.formData,rule:Object.assign(Object.assign({},n),{params:l})},o=await r(t,l,i);return"string"==typeof o?{error:o}:{error:o?void 0:Z(i)}}function Z(e){const t=H().generateMessage;return t?t(e):"Field is invalid"}async function ee(e,t,n){const r=M(e).map((async r=>{var a,l,u;const i=null===(a=null==n?void 0:n.names)||void 0===a?void 0:a[r],o=await Q(E(t,r),e[r],{name:(null==i?void 0:i.name)||r,label:null==i?void 0:i.label,values:t,bails:null===(u=null===(l=null==n?void 0:n.bailsMap)||void 0===l?void 0:l[r])||void 0===u||u});return Object.assign(Object.assign({},o),{path:r})}));let a=!0;const l=await Promise.all(r),u={},i={};for(const e of l)u[e.path]={valid:e.valid,errors:e.errors},e.valid||(a=!1,i[e.path]=e.errors[0]);return{valid:a,results:u,errors:i}}let te=0;function ne(e,n){const{value:r,initialValue:a,setInitialValue:l}=re(e,n.modelValue,n.form),{errorMessage:u,errors:i,setErrors:o}=function(e,n){function r(e){return e?Array.isArray(e)?e:[e]:[]}if(!n){const e=t.ref([]);return{errors:e,errorMessage:t.computed((()=>e.value[0])),setErrors:t=>{e.value=r(t)}}}const a=t.computed((()=>n.errorBag.value[t.unref(e)]||[]));return{errors:a,errorMessage:t.computed((()=>a.value[0])),setErrors:a=>{n.setFieldErrorBag(t.unref(e),r(a))}}}(e,n.form),s=function(e,n,r){const a=t.reactive({touched:!1,pending:!1,valid:!0,validated:!!t.unref(r).length,initialValue:t.computed((()=>t.unref(n))),dirty:t.computed((()=>!F(t.unref(e),t.unref(n))))});return t.watch(r,(e=>{a.valid=!e.length}),{immediate:!0,flush:"sync"}),a}(r,a,i);return{id:te>=Number.MAX_SAFE_INTEGER?0:++te,path:e,value:r,initialValue:a,meta:s,errors:i,errorMessage:u,setState:function(e){var t;"value"in e&&(r.value=e.value),"errors"in e&&o(e.errors),"touched"in e&&(s.touched=null!==(t=e.touched)&&void 0!==t?t:s.touched),"initialValue"in e&&l(e.initialValue)}}}function re(e,n,r){const a=t.ref(t.unref(n));function l(){return r?E(r.meta.value.initialValues,t.unref(e),t.unref(a)):t.unref(a)}function u(n){r?r.stageInitialValue(t.unref(e),n,!0):a.value=n}const i=t.computed(l);if(!r){return{value:t.ref(l()),initialValue:i,setInitialValue:u}}const o=n?t.unref(n):E(r.values,t.unref(e),t.unref(i));r.stageInitialValue(t.unref(e),o,!0);return{value:t.computed({get:()=>E(r.values,t.unref(e)),set(n){r.setFieldValue(t.unref(e),n)}}),initialValue:i,setInitialValue:u}}function ae(e,n,r){return p(null==r?void 0:r.type)?function(e,n,r){const a=(null==r?void 0:r.standalone)?void 0:T(i),l=null==r?void 0:r.checkedValue,u=null==r?void 0:r.uncheckedValue;function o(e){const n=e.handleChange,r=t.computed((()=>{const n=t.unref(e.value),r=t.unref(l);return Array.isArray(n)?n.findIndex((e=>F(e,r)))>=0:F(r,n)}));function i(i,o=!0){var s;if(r.value===(null===(s=null==i?void 0:i.target)||void 0===s?void 0:s.checked))return void(o&&e.validate());let d=q(i);a||(d=x(t.unref(e.value),t.unref(l),t.unref(u))),n(d,o)}return Object.assign(Object.assign({},e),{checked:r,checkedValue:l,uncheckedValue:u,handleChange:i})}return o(le(e,n,r))}(e,n,r):le(e,n,r)}function le(e,r,a){const{initialValue:l,validateOnMount:u,bails:d,type:p,checkedValue:m,label:h,validateOnValueUpdate:y,uncheckedValue:g,controlled:b,keepValueOnUnmount:V,modelPropName:O,syncVModel:A,form:w}=function(e,n){var r;const a=()=>({initialValue:void 0,validateOnMount:!1,bails:!0,label:e,validateOnValueUpdate:!0,keepValueOnUnmount:void 0,modelPropName:"modelValue",syncVModel:!0,controlled:!0}),l=null===(r=null==n?void 0:n.syncVModel)||void 0===r||r,u=l&&!("initialValue"in(n||{}))?ue(t.getCurrentInstance(),(null==n?void 0:n.modelPropName)||"modelValue"):null==n?void 0:n.initialValue;if(!n)return Object.assign(Object.assign({},a()),{initialValue:u});const i="valueProp"in n?n.valueProp:n.checkedValue,o="standalone"in n?!n.standalone:n.controlled;return Object.assign(Object.assign(Object.assign({},a()),n||{}),{initialValue:u,controlled:null==o||o,checkedValue:i})}(t.unref(e),a),S=b?T(i):void 0,k=w||S;let B=!1;const{id:I,value:C,initialValue:R,meta:x,setState:N,errors:U,errorMessage:$}=ne(e,{modelValue:l,form:k});A&&function({prop:e,value:n,handleChange:r}){const a=t.getCurrentInstance();if(!a)return;const l=e||"modelValue",u=`update:${l}`;if(!(l in a.props))return;t.watch(n,(e=>{F(e,ue(a,l))||a.emit(u,e)})),t.watch((()=>ue(a,l)),(e=>{if(e===s&&void 0===n.value)return;const t=e===s?void 0:e;F(t,P(n.value,a.props.modelModifiers))||r(t)}))}({value:C,prop:O,handleChange:X});const D=t.computed((()=>{let a=t.unref(r);const l=t.unref(null==k?void 0:k.schema);return!l||v(l)||f(l)||(a=function(e,t){if(!e)return;return e[t]}(l,t.unref(e))||a),v(a)||f(a)||n(a)||Array.isArray(a)?a:L(a)}));async function z(n){var r,a;return(null==k?void 0:k.validateSchema)?null!==(r=(await k.validateSchema(n)).results[t.unref(e)])&&void 0!==r?r:{valid:!0,errors:[]}:Q(C.value,D.value,{name:t.unref(e),label:t.unref(h),values:null!==(a=null==k?void 0:k.values)&&void 0!==a?a:{},bails:d})}const K=_((async()=>(x.pending=!0,x.validated=!0,z("validated-only"))),(e=>(B&&(e.valid=!0,e.errors=[]),N({errors:e.errors}),x.pending=!1,e))),G=_((async()=>z("silent")),(e=>(B&&(e.valid=!0),x.valid=e.valid,e)));function X(e,t=!0){const n=q(e);C.value=n,!y&&t&&K()}let H;t.onMounted((()=>{if(u)return K();k&&k.validateSchema||G()}));let J=j(C.value);function W(){H=t.watch(C,((e,t)=>{if(F(e,t)&&F(e,J))return;(y?K:G)(),J=j(e)}),{deep:!0})}function Y(e){var n;null==H||H();const r=e&&"value"in e?e.value:R.value;N({value:j(r),initialValue:j(r),touched:null!==(n=null==e?void 0:e.touched)&&void 0!==n&&n,errors:(null==e?void 0:e.errors)||[]}),x.pending=!1,x.validated=!1,G(),t.nextTick((()=>{W()}))}W();const Z={id:I,name:e,label:h,value:C,meta:x,errors:U,errorMessage:$,type:p,checkedValue:m,uncheckedValue:g,bails:d,keepValueOnUnmount:V,resetField:Y,handleReset:()=>Y(),validate:function(e){return"silent"===(null==e?void 0:e.mode)?G():K()},handleChange:X,handleBlur:()=>{x.touched=!0},setState:N,setTouched:function(e){x.touched=e},setErrors:function(e){N({errors:Array.isArray(e)?e:[e]})},setValue:function(e){C.value=e}};if(t.provide(o,Z),t.isRef(r)&&"function"!=typeof t.unref(r)&&t.watch(r,((e,t)=>{F(e,t)||(x.validated?K():G())}),{deep:!0}),!k)return Z;k.register(Z),t.onBeforeUnmount((()=>{B=!0,k.unregister(Z)}));const ee=t.computed((()=>{const e=D.value;return!e||n(e)||v(e)||f(e)||Array.isArray(e)?{}:Object.keys(e).reduce(((t,n)=>{const r=(a=e[n],Array.isArray(a)?a.filter(c):M(a).filter((e=>c(a[e]))).map((e=>a[e]))).map((e=>e.__locatorRef)).reduce(((e,t)=>{const n=E(k.values,t)||k.values[t];return void 0!==n&&(e[t]=n),e}),{});var a;return Object.assign(t,r),t}),{})}));return t.watch(ee,((e,t)=>{if(!Object.keys(e).length)return;!F(e,t)&&(x.validated?K():G())})),Z}function ue(e,t){if(e)return e.props[t]}function ie(e,t){let n=e.as||"";return e.as||t.slots.default||(n="input"),n}function oe(e,t){return p(t.attrs.type)?O(e,"modelValue")?e.modelValue:void 0:O(e,"modelValue")?e.modelValue:t.attrs.value}const se=t.defineComponent({name:"Field",inheritAttrs:!1,props:{as:{type:[String,Object],default:void 0},name:{type:String,required:!0},rules:{type:[Object,String,Function],default:void 0},validateOnMount:{type:Boolean,default:!1},validateOnBlur:{type:Boolean,default:void 0},validateOnChange:{type:Boolean,default:void 0},validateOnInput:{type:Boolean,default:void 0},validateOnModelUpdate:{type:Boolean,default:void 0},bails:{type:Boolean,default:()=>H().bails},label:{type:String,default:void 0},uncheckedValue:{type:null,default:void 0},modelValue:{type:null,default:s},modelModifiers:{type:null,default:()=>({})},"onUpdate:modelValue":{type:null,default:void 0},standalone:{type:Boolean,default:!1},keepValue:{type:Boolean,default:void 0}},setup(e,n){const r=t.toRef(e,"rules"),a=t.toRef(e,"name"),l=t.toRef(e,"label"),u=t.toRef(e,"uncheckedValue"),i=t.toRef(e,"keepValue"),{errors:o,value:s,errorMessage:d,validate:c,handleChange:f,handleBlur:v,setTouched:m,resetField:h,handleReset:y,meta:b,checked:V,setErrors:O}=ae(a,r,{validateOnMount:e.validateOnMount,bails:e.bails,standalone:e.standalone,type:n.attrs.type,initialValue:oe(e,n),checkedValue:n.attrs.value,uncheckedValue:u,label:l,validateOnValueUpdate:!1,keepValueOnUnmount:i}),F=function(e,t=!0){f(e,t),n.emit("update:modelValue",s.value)},A=function(e){(e=>{p(n.attrs.type)||(s.value=q(e))})(e),n.emit("update:modelValue",s.value)},w=t.computed((()=>{const{validateOnInput:t,validateOnChange:r,validateOnBlur:a,validateOnModelUpdate:l}=function(e){var t,n,r,a;const{validateOnInput:l,validateOnChange:u,validateOnBlur:i,validateOnModelUpdate:o}=H();return{validateOnInput:null!==(t=e.validateOnInput)&&void 0!==t?t:l,validateOnChange:null!==(n=e.validateOnChange)&&void 0!==n?n:u,validateOnBlur:null!==(r=e.validateOnBlur)&&void 0!==r?r:i,validateOnModelUpdate:null!==(a=e.validateOnModelUpdate)&&void 0!==a?a:o}}(e),u=[v,n.attrs.onBlur,a?c:void 0].filter(Boolean),i=[e=>F(e,t),n.attrs.onInput].filter(Boolean),o=[e=>F(e,r),n.attrs.onChange].filter(Boolean),d={name:e.name,onBlur:u,onInput:i,onChange:o,"onUpdate:modelValue":e=>F(e,l)};p(n.attrs.type)&&V&&(d.checked=V.value);return g(ie(e,n),n.attrs)&&(d.value=s.value),d}));function j(){return{field:w.value,value:s.value,meta:b,errors:o.value,errorMessage:d.value,validate:c,resetField:h,handleChange:F,handleInput:A,handleReset:y,handleBlur:v,setTouched:m,setErrors:O}}return n.expose({setErrors:O,setTouched:m,reset:h,validate:c,handleChange:f}),()=>{const r=t.resolveDynamicComponent(ie(e,n)),a=$(r,n,j);return r?t.h(r,Object.assign(Object.assign({},n.attrs),w.value),a):a}}});let de=0;function ce(e){const r=t.unref(null==e?void 0:e.initialValues)||{};return(null==e?void 0:e.validationSchema)&&f(e.validationSchema)&&n(e.validationSchema.cast)?j(e.validationSchema.cast(r)):j(r)}function fe(e){var n;const r=de++,a=new Set;let l=!1;const u=t.ref({}),o=t.ref(!1),s=t.ref(0),d=[],c=t.reactive(ce(e)),{errorBag:p,setErrorBag:h,setFieldErrorBag:y}=function(e){const n=t.ref({});function r(e){return Array.isArray(e)?e:e?[e]:[]}function a(e,t){t?n.value[e]=r(t):delete n.value[e]}function l(e){n.value=M(e).reduce(((t,n)=>{const a=e[n];return a&&(t[n]=r(a)),t}),{})}e&&l(e);return{errorBag:n,setErrorBag:l,setFieldErrorBag:a}}(null==e?void 0:e.initialErrors),g=t.computed((()=>M(p.value).reduce(((e,t)=>{const n=p.value[t];return n&&n.length&&(e[t]=n[0]),e}),{})));function V(e){const t=u.value[e];return Array.isArray(t)?t[0]:t}function O(e){return!!u.value[e]}const A=t.computed((()=>M(u.value).reduce(((e,n)=>{const r=V(n);return r&&(e[n]={name:t.unref(r.name)||"",label:t.unref(r.label)||""}),e}),{}))),w=t.computed((()=>M(u.value).reduce(((e,t)=>{var n;const r=V(t);return r&&(e[t]=null===(n=r.bails)||void 0===n||n),e}),{}))),S=Object.assign({},(null==e?void 0:e.initialErrors)||{}),B=null!==(n=null==e?void 0:e.keepValuesOnUnmount)&&void 0!==n&&n,{initialValues:T,originalInitialValues:C,setInitialValues:R}=function(e,n,r){const a=ce(r),l=null==r?void 0:r.initialValues,u=t.ref(a),i=t.ref(j(a));function o(t,r=!1){u.value=j(t),i.value=j(t),r&&M(e.value).forEach((t=>{const r=e.value[t],a=Array.isArray(r)?r.some((e=>e.meta.touched)):null==r?void 0:r.meta.touched;if(!r||a)return;const l=E(u.value,t);k(n,t,j(l))}))}t.isRef(l)&&t.watch(l,(e=>{o(e,!0)}),{deep:!0});return{initialValues:u,originalInitialValues:i,setInitialValues:o}}(u,c,e),P=function(e,n,r,a){const l={touched:"some",pending:"some",valid:"every"},u=t.computed((()=>!F(n,t.unref(r))));function i(){const t=Object.values(e.value).flat(1).filter(Boolean);return M(l).reduce(((e,n)=>{const r=l[n];return e[n]=t[r]((e=>e.meta[n])),e}),{})}const o=t.reactive(i());return t.watchEffect((()=>{const e=i();o.touched=e.touched,o.valid=e.valid,o.pending=e.pending})),t.computed((()=>Object.assign(Object.assign({initialValues:t.unref(r)},o),{valid:o.valid&&!M(a.value).length,dirty:u.value})))}(u,c,C,g),U=t.computed((()=>[...a,...M(u.value)].reduce(((e,t)=>(k(e,t,E(c,t)),e)),{}))),$=null==e?void 0:e.validationSchema,D=N(me,5),z=N(me,5),q=_((async e=>"silent"===await e?D():z()),((e,[t])=>{const n=G.fieldsByPath.value||{},r=M(G.errorBag.value);return[...new Set([...M(e.results),...M(n),...r])].reduce(((r,a)=>{const l=n[a],u=(e.results[a]||{errors:[]}).errors,i={errors:u,valid:!u.length};if(r.results[a]=i,i.valid||(r.errors[a]=i.errors[0]),!l)return Q(a,u),r;if(H(l,(e=>e.meta.valid=i.valid)),"silent"===t)return r;const o=Array.isArray(l)?l.some((e=>e.meta.validated)):l.meta.validated;return"validated-only"!==t||o?(H(l,(e=>e.setState({errors:i.errors}))),r):r}),{valid:e.valid,results:{},errors:{}})}));function L(e){return function(t,n){return function(r){return r instanceof Event&&(r.preventDefault(),r.stopPropagation()),le(M(u.value).reduce(((e,t)=>(e[t]=!0,e)),{})),o.value=!0,s.value++,fe().then((a=>{const l=j(c);if(a.valid&&"function"==typeof t){const n=j(U.value);let u=e?n:l;return a.values&&(u=a.values),t(u,{evt:r,controlledValues:n,setErrors:Y,setFieldError:Q,setTouched:le,setFieldTouched:ae,setValues:te,setFieldValue:Z,resetForm:ie,resetField:ue})}a.valid||"function"!=typeof n||n({values:l,evt:r,errors:a.errors,results:a.results})})).then((e=>(o.value=!1,e)),(e=>{throw o.value=!1,e}))}}}const K=L(!1);K.withControlled=L(!0);const G={formId:r,fieldsByPath:u,values:c,controlledValues:U,errorBag:p,errors:g,schema:$,submitCount:s,meta:P,isSubmitting:o,fieldArrays:d,keepValuesOnUnmount:B,validateSchema:t.unref($)?q:void 0,validate:fe,register:function(e){const n=t.unref(e.name);oe(e,n),t.isRef(e.name)&&t.watch(e.name,(async(n,r)=>{await t.nextTick(),se(e,r),oe(e,n),(g.value[r]||g.value[n])&&(Q(r,void 0),ve(n)),await t.nextTick(),O(r)||I(c,r)}));const r=t.unref(e.errorMessage);r&&(null==S?void 0:S[n])!==r&&ve(n);delete S[n]},unregister:function(e){const n=t.unref(e.name),r=u.value[n],a=!!r&&X(r);se(e,n),t.nextTick((()=>{var l;const i=null!==(l=t.unref(e.keepValueOnUnmount))&&void 0!==l?l:t.unref(B),o=E(c,n);if(a&&(r===u.value[n]||!u.value[n])&&!i)if(Array.isArray(o)){const r=o.findIndex((n=>F(n,t.unref(e.checkedValue))));if(r>-1){const e=[...o];e.splice(r,1),Z(n,e,{force:!0})}}else o===t.unref(e.checkedValue)&&I(c,n);if(!O(n)){if(Q(n,void 0),i)return;if(a&&Array.isArray(o)&&!m(o))return;I(c,n)}}))},setFieldErrorBag:y,validateField:ve,setFieldValue:Z,setValues:te,setErrors:Y,setFieldError:Q,setFieldTouched:ae,setTouched:le,resetForm:ie,resetField:ue,handleSubmit:K,stageInitialValue:function(t,n,r=!1){k(c,t,n),pe(t,n),r&&!(null==e?void 0:e.initialValues)&&k(C.value,t,j(n))},unsetInitialValue:function(e){I(T.value,e)},setFieldInitialValue:pe,useFieldModel:function(e){if(!Array.isArray(e))return ne(e);return e.map(ne)}};function X(e){return Array.isArray(e)}function H(e,t){return Array.isArray(e)?e.forEach(t):t(e)}function J(e){Object.values(u.value).forEach((t=>{t&&H(t,e)}))}function Q(e,t){y(e,t)}function Y(e){h(e)}function Z(e,n,{force:r}={force:!1}){var a;const i=u.value[e],o=j(n);if(!i)return void k(c,e,o);if(X(i)&&"checkbox"===(null===(a=i[0])||void 0===a?void 0:a.type)&&!Array.isArray(n)){const t=j(x(E(c,e)||[],n,void 0));return void k(c,e,t)}let s=o;X(i)||"checkbox"!==i.type||r||l||(s=j(x(E(c,e),n,t.unref(i.uncheckedValue)))),k(c,e,s)}function te(e){M(c).forEach((e=>{delete c[e]})),M(e).forEach((t=>{Z(t,e[t])})),d.forEach((e=>e&&e.reset()))}function ne(e){const{value:n}=re(e,void 0,G);return t.watch(n,(()=>{O(t.unref(e))||fe({mode:"validated-only"})}),{deep:!0}),a.add(t.unref(e)),n}function ae(e,t){const n=u.value[e];n&&H(n,(e=>e.setTouched(t)))}function le(e){M(e).forEach((t=>{ae(t,!!e[t])}))}function ue(e,t){const n=u.value[e];n&&H(n,(e=>e.resetField(t)))}function ie(e){l=!0,J((e=>e.resetField()));const n=(null==e?void 0:e.values)?e.values:C.value;R(n),te(n),(null==e?void 0:e.touched)&&le(e.touched),Y((null==e?void 0:e.errors)||{}),s.value=(null==e?void 0:e.submitCount)||0,t.nextTick((()=>{l=!1}))}function oe(e,n){const r=t.markRaw(e),a=n;if(!u.value[a])return void(u.value[a]=r);const l=u.value[a];l&&!Array.isArray(l)&&(u.value[a]=[l]),u.value[a]=[...u.value[a],r]}function se(e,t){const n=t,r=u.value[n];if(r)if(X(r)||e.id!==r.id){if(X(r)){const t=r.findIndex((t=>t.id===e.id));if(-1===t)return;r.splice(t,1),r.length||delete u.value[n]}}else delete u.value[n]}async function fe(e){const n=(null==e?void 0:e.mode)||"force";if("force"===n&&J((e=>e.meta.validated=!0)),G.validateSchema)return G.validateSchema(n);const r=await Promise.all(Object.values(u.value).map((n=>{const r=Array.isArray(n)?n[0]:n;return r?r.validate(e).then((e=>({key:t.unref(r.name),valid:e.valid,errors:e.errors}))):Promise.resolve({key:"",valid:!0,errors:[]})}))),a={},l={};for(const e of r)a[e.key]={valid:e.valid,errors:e.errors},e.errors.length&&(l[e.key]=e.errors[0]);return{valid:r.every((e=>e.valid)),results:a,errors:l}}async function ve(e){const n=u.value[e];return n?Array.isArray(n)?n.map((e=>e.validate()))[0]:n.validate():(t.warn(`field with name ${e} was not found`),Promise.resolve({errors:[],valid:!0}))}function pe(e,t){k(T.value,e,j(t))}async function me(){const e=t.unref($);if(!e)return{valid:!0,results:{},errors:{}};const n=v(e)||f(e)?await async function(e,t){const n=f(e)?e:W(e),r=await n.parse(t),a={},l={};for(const e of r.errors){const t=e.errors,n=(e.path||"").replace(/\["(\d+)"\]/g,((e,t)=>`[${t}]`));a[n]={valid:!t.length,errors:t},t.length&&(l[n]=t[0])}return{valid:!r.errors.length,results:a,errors:l,values:r.value}}(e,c):await ee(e,c,{names:A.value,bailsMap:w.value});return n}const he=K(((e,{evt:t})=>{b(t)&&t.target.submit()}));return t.onMounted((()=>{(null==e?void 0:e.initialErrors)&&Y(e.initialErrors),(null==e?void 0:e.initialTouched)&&le(e.initialTouched),(null==e?void 0:e.validateOnMount)?fe():G.validateSchema&&G.validateSchema("silent")})),t.isRef($)&&t.watch($,(()=>{var e;null===(e=G.validateSchema)||void 0===e||e.call(G,"validated-only")})),t.provide(i,G),Object.assign(Object.assign({},G),{handleReset:()=>ie(),submitForm:he})}const ve=t.defineComponent({name:"Form",inheritAttrs:!1,props:{as:{type:String,default:"form"},validationSchema:{type:Object,default:void 0},initialValues:{type:Object,default:void 0},initialErrors:{type:Object,default:void 0},initialTouched:{type:Object,default:void 0},validateOnMount:{type:Boolean,default:!1},onSubmit:{type:Function,default:void 0},onInvalidSubmit:{type:Function,default:void 0},keepValues:{type:Boolean,default:!1}},setup(e,n){const r=t.toRef(e,"initialValues"),a=t.toRef(e,"validationSchema"),l=t.toRef(e,"keepValues"),{errors:u,values:i,meta:o,isSubmitting:s,submitCount:d,controlledValues:c,validate:f,validateField:v,handleReset:p,resetForm:m,handleSubmit:h,setErrors:y,setFieldError:g,setFieldValue:O,setValues:F,setFieldTouched:A,setTouched:w,resetField:S}=fe({validationSchema:a.value?a:void 0,initialValues:r,initialErrors:e.initialErrors,initialTouched:e.initialTouched,validateOnMount:e.validateOnMount,keepValuesOnUnmount:l}),E=h(((e,{evt:t})=>{b(t)&&t.target.submit()}),e.onInvalidSubmit),k=e.onSubmit?h(e.onSubmit,e.onInvalidSubmit):E;function B(e){V(e)&&e.preventDefault(),p(),"function"==typeof n.attrs.onReset&&n.attrs.onReset()}function I(t,n){return h("function"!=typeof t||n?n:t,e.onInvalidSubmit)(t)}function M(){return j(i)}function T(){return j(o.value)}function C(){return j(u.value)}function R(){return{meta:o.value,errors:u.value,values:i,isSubmitting:s.value,submitCount:d.value,controlledValues:c.value,validate:f,validateField:v,handleSubmit:I,handleReset:p,submitForm:E,setErrors:y,setFieldError:g,setFieldValue:O,setValues:F,setFieldTouched:A,setTouched:w,resetForm:m,resetField:S,getValues:M,getMeta:T,getErrors:C}}return n.expose({setFieldError:g,setErrors:y,setFieldValue:O,setValues:F,setFieldTouched:A,setTouched:w,resetForm:m,validate:f,validateField:v,resetField:S,getValues:M,getMeta:T,getErrors:C}),function(){const r="form"===e.as?e.as:t.resolveDynamicComponent(e.as),a=$(r,n,R);if(!e.as)return a;const l="form"===e.as?{novalidate:!0}:{};return t.h(r,Object.assign(Object.assign(Object.assign({},l),n.attrs),{onSubmit:k,onReset:B}),a)}}}),pe=ve;function me(e){const n=T(i,void 0),a=t.ref([]),l=()=>{},u={fields:a,remove:l,push:l,swap:l,insert:l,update:l,replace:l,prepend:l,move:l};if(!n)return C("FieldArray requires being a child of `<Form/>` or `useForm` being called before it. Array fields may not work correctly"),u;if(!t.unref(e))return C("FieldArray requires a field path to be provided, did you forget to pass the `name` prop?"),u;const o=n.fieldArrays.find((n=>t.unref(n.path)===t.unref(e)));if(o)return o;let s=0;function d(){return E(null==n?void 0:n.values,t.unref(e),[])||[]}function c(){const e=d();a.value=e.map(v),f()}function f(){const e=a.value.length;for(let t=0;t<e;t++){const n=a.value[t];n.isFirst=0===t,n.isLast=t===e-1}}function v(r){const l=s++,u={key:l,value:U({get(){const u=E(null==n?void 0:n.values,t.unref(e),[])||[],i=a.value.findIndex((e=>e.key===l));return-1===i?r:u[i]},set(e){const t=a.value.findIndex((e=>e.key===l));-1!==t?m(t,e):C("Attempting to update a non-existent array item")}}),isFirst:!1,isLast:!1};return u}function p(){f(),null==n||n.validate({mode:"silent"})}function m(r,a){const l=t.unref(e),u=E(null==n?void 0:n.values,l);!Array.isArray(u)||u.length-1<r||(null==n||n.setFieldValue(`${l}[${r}]`,a),null==n||n.validate({mode:"validated-only"}))}c();const h={fields:a,remove:function(r){const l=t.unref(e),u=E(null==n?void 0:n.values,l);if(!u||!Array.isArray(u))return;const i=[...u];i.splice(r,1),null==n||n.unsetInitialValue(l+`[${r}]`),null==n||n.setFieldValue(l,i),a.value.splice(r,1),p()},push:function(l){const u=t.unref(e),i=E(null==n?void 0:n.values,u),o=r(i)?[]:i;if(!Array.isArray(o))return;const s=[...o];s.push(l),null==n||n.stageInitialValue(u+`[${s.length-1}]`,l),null==n||n.setFieldValue(u,s),a.value.push(v(l)),p()},swap:function(r,l){const u=t.unref(e),i=E(null==n?void 0:n.values,u);if(!Array.isArray(i)||!(r in i)||!(l in i))return;const o=[...i],s=[...a.value],d=o[r];o[r]=o[l],o[l]=d;const c=s[r];s[r]=s[l],s[l]=c,null==n||n.setFieldValue(u,o),a.value=s,f()},insert:function(r,l){const u=t.unref(e),i=E(null==n?void 0:n.values,u);if(!Array.isArray(i)||i.length<r)return;const o=[...i],s=[...a.value];o.splice(r,0,l),s.splice(r,0,v(l)),null==n||n.setFieldValue(u,o),a.value=s,p()},update:m,replace:function(r){const a=t.unref(e);null==n||n.setFieldValue(a,r),c(),p()},prepend:function(l){const u=t.unref(e),i=E(null==n?void 0:n.values,u),o=r(i)?[]:i;if(!Array.isArray(o))return;const s=[l,...o];null==n||n.stageInitialValue(u+`[${s.length-1}]`,l),null==n||n.setFieldValue(u,s),a.value.unshift(v(l)),p()},move:function(l,u){const i=t.unref(e),o=E(null==n?void 0:n.values,i),s=r(o)?[]:[...o];if(!Array.isArray(o)||!(l in o)||!(u in o))return;const d=[...a.value],c=d[l];d.splice(l,1),d.splice(u,0,c);const f=s[l];s.splice(l,1),s.splice(u,0,f),null==n||n.setFieldValue(i,s),a.value=d,p()}};return n.fieldArrays.push(Object.assign({path:e,reset:c},h)),t.onBeforeUnmount((()=>{const r=n.fieldArrays.findIndex((n=>t.unref(n.path)===t.unref(e)));r>=0&&n.fieldArrays.splice(r,1)})),t.watch(d,(e=>{F(e,a.value.map((e=>e.value)))||c()})),h}const he=t.defineComponent({name:"FieldArray",inheritAttrs:!1,props:{name:{type:String,required:!0}},setup(e,n){const{push:r,remove:a,swap:l,insert:u,replace:i,update:o,prepend:s,move:d,fields:c}=me(t.toRef(e,"name"));function f(){return{fields:c.value,push:r,remove:a,swap:l,insert:u,update:o,replace:i,prepend:s,move:d}}return n.expose({push:r,remove:a,swap:l,insert:u,update:o,replace:i,prepend:s,move:d}),()=>$(void 0,n,f)}}),ye=t.defineComponent({name:"ErrorMessage",props:{as:{type:String,default:void 0},name:{type:String,required:!0}},setup(e,n){const r=t.inject(i,void 0),a=t.computed((()=>null==r?void 0:r.errors.value[e.name]));function l(){return{message:a.value}}return()=>{if(!a.value)return;const r=e.as?t.resolveDynamicComponent(e.as):e.as,u=$(r,n,l),i=Object.assign({role:"alert"},n.attrs);return r||!Array.isArray(u)&&u||!(null==u?void 0:u.length)?!Array.isArray(u)&&u||(null==u?void 0:u.length)?t.h(r,i,u):t.h(r||"span",i,a.value):u}}});e.ErrorMessage=ye,e.Field=se,e.FieldArray=he,e.FieldContextKey=o,e.Form=pe,e.FormContextKey=i,e.IS_ABSENT=s,e.configure=J,e.defineRule=function(e,t){!function(e,t){if(n(t))return;throw new Error(`Extension Error: The validator '${e}' must be a function.`)}(e,t),u[e]=t},e.useField=ae,e.useFieldArray=me,e.useFieldError=function(e){const n=T(i),r=e?void 0:t.inject(o);return t.computed((()=>e?null==n?void 0:n.errors.value[t.unref(e)]:null==r?void 0:r.errorMessage.value))},e.useFieldValue=function(e){const n=T(i),r=e?void 0:t.inject(o);return t.computed((()=>e?E(null==n?void 0:n.values,t.unref(e)):t.unref(null==r?void 0:r.value)))},e.useForm=fe,e.useFormErrors=function(){const e=T(i);return e||C("No vee-validate <Form /> or `useForm` was detected in the component tree"),t.computed((()=>(null==e?void 0:e.errors.value)||{}))},e.useFormValues=function(){const e=T(i);return e||C("No vee-validate <Form /> or `useForm` was detected in the component tree"),t.computed((()=>(null==e?void 0:e.values)||{}))},e.useIsFieldDirty=function(e){const n=T(i);let r=e?void 0:t.inject(o);return t.computed((()=>(e&&(r=R(null==n?void 0:n.fieldsByPath.value[t.unref(e)])),r?r.meta.dirty:(C(`field with name ${t.unref(e)} was not found`),!1))))},e.useIsFieldTouched=function(e){const n=T(i);let r=e?void 0:t.inject(o);return t.computed((()=>(e&&(r=R(null==n?void 0:n.fieldsByPath.value[t.unref(e)])),r?r.meta.touched:(C(`field with name ${t.unref(e)} was not found`),!1))))},e.useIsFieldValid=function(e){const n=T(i);let r=e?void 0:t.inject(o);return t.computed((()=>(e&&(r=R(null==n?void 0:n.fieldsByPath.value[t.unref(e)])),r?r.meta.valid:(C(`field with name ${t.unref(e)} was not found`),!1))))},e.useIsFormDirty=function(){const e=T(i);return e||C("No vee-validate <Form /> or `useForm` was detected in the component tree"),t.computed((()=>{var t;return null!==(t=null==e?void 0:e.meta.value.dirty)&&void 0!==t&&t}))},e.useIsFormTouched=function(){const e=T(i);return e||C("No vee-validate <Form /> or `useForm` was detected in the component tree"),t.computed((()=>{var t;return null!==(t=null==e?void 0:e.meta.value.touched)&&void 0!==t&&t}))},e.useIsFormValid=function(){const e=T(i);return e||C("No vee-validate <Form /> or `useForm` was detected in the component tree"),t.computed((()=>{var t;return null!==(t=null==e?void 0:e.meta.value.valid)&&void 0!==t&&t}))},e.useIsSubmitting=function(){const e=T(i);return e||C("No vee-validate <Form /> or `useForm` was detected in the component tree"),t.computed((()=>{var t;return null!==(t=null==e?void 0:e.isSubmitting.value)&&void 0!==t&&t}))},e.useResetForm=function(){const e=T(i);return e||C("No vee-validate <Form /> or `useForm` was detected in the component tree"),function(t){if(e)return e.resetForm(t)}},e.useSubmitCount=function(){const e=T(i);return e||C("No vee-validate <Form /> or `useForm` was detected in the component tree"),t.computed((()=>{var t;return null!==(t=null==e?void 0:e.submitCount.value)&&void 0!==t?t:0}))},e.useSubmitForm=function(e){const t=T(i);t||C("No vee-validate <Form /> or `useForm` was detected in the component tree");const n=t?t.handleSubmit(e):void 0;return function(e){if(n)return n(e)}},e.useValidateField=function(e){const n=T(i);let r=e?void 0:t.inject(o);return function(){return e&&(r=R(null==n?void 0:n.fieldsByPath.value[t.unref(e)])),r?r.validate():(C(`field with name ${t.unref(e)} was not found`),Promise.resolve({errors:[],valid:!0}))}},e.useValidateForm=function(){const e=T(i);return e||C("No vee-validate <Form /> or `useForm` was detected in the component tree"),function(){return e?e.validate():Promise.resolve({results:{},errors:{},valid:!0})}},e.validate=Q,e.validateObject=ee}));
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue")):"function"==typeof define&&define.amd?define(["exports","vue"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).VeeValidate={},e.Vue)}(this,(function(e,t){"use strict";function n(e){return"function"==typeof e}function r(e){return null==e}const a=e=>null!==e&&!!e&&"object"==typeof e&&!Array.isArray(e);function l(e){return Number(e)>=0}const u={};const i=Symbol("vee-validate-form"),o=Symbol("vee-validate-field-instance"),s=Symbol("Default empty value"),d="undefined"!=typeof window;function c(e){return n(e)&&!!e.__locatorRef}function f(e){return!!e&&n(e.parse)&&"VVTypedSchema"===e.__type}function v(e){return!!e&&n(e.validate)}function p(e){return"checkbox"===e||"radio"===e}function m(e){return Array.isArray(e)?0===e.length:a(e)&&0===Object.keys(e).length}function h(e){return/^\[.+\]$/i.test(e)}function y(e){return"SELECT"===e.tagName}function g(e,t){return!function(e,t){const n=![!1,null,void 0,0].includes(t.multiple)&&!Number.isNaN(t.multiple);return"select"===e&&"multiple"in t&&n}(e,t)&&"file"!==t.type&&!p(t.type)}function b(e){return V(e)&&e.target&&"submit"in e.target}function V(e){return!!e&&(!!("undefined"!=typeof Event&&n(Event)&&e instanceof Event)||!(!e||!e.srcElement))}function O(e,t){return t in e&&e[t]!==s}function F(e,t){if(e===t)return!0;if(e&&t&&"object"==typeof e&&"object"==typeof t){if(e.constructor!==t.constructor)return!1;var n,r,a;if(Array.isArray(e)){if((n=e.length)!=t.length)return!1;for(r=n;0!=r--;)if(!F(e[r],t[r]))return!1;return!0}if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(r of e.entries())if(!t.has(r[0]))return!1;for(r of e.entries())if(!F(r[1],t.get(r[0])))return!1;return!0}if(A(e)&&A(t))return e.size===t.size&&(e.name===t.name&&(e.lastModified===t.lastModified&&e.type===t.type));if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(r of e.entries())if(!t.has(r[0]))return!1;return!0}if(ArrayBuffer.isView(e)&&ArrayBuffer.isView(t)){if((n=e.length)!=t.length)return!1;for(r=n;0!=r--;)if(e[r]!==t[r])return!1;return!0}if(e.constructor===RegExp)return e.source===t.source&&e.flags===t.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===t.toString();if((n=(a=Object.keys(e)).length)!==Object.keys(t).length)return!1;for(r=n;0!=r--;)if(!Object.prototype.hasOwnProperty.call(t,a[r]))return!1;for(r=n;0!=r--;){var l=a[r];if(!F(e[l],t[l]))return!1}return!0}return e!=e&&t!=t}function A(e){return!!d&&e instanceof File}function w(e,t,n){"object"==typeof n.value&&(n.value=j(n.value)),n.enumerable&&!n.get&&!n.set&&n.configurable&&n.writable&&"__proto__"!==t?e[t]=n.value:Object.defineProperty(e,t,n)}function j(e){if("object"!=typeof e)return e;var t,n,r,a=0,l=Object.prototype.toString.call(e);if("[object Object]"===l?r=Object.create(e.__proto__||null):"[object Array]"===l?r=Array(e.length):"[object Set]"===l?(r=new Set,e.forEach((function(e){r.add(j(e))}))):"[object Map]"===l?(r=new Map,e.forEach((function(e,t){r.set(j(t),j(e))}))):"[object Date]"===l?r=new Date(+e):"[object RegExp]"===l?r=new RegExp(e.source,e.flags):"[object DataView]"===l?r=new e.constructor(j(e.buffer)):"[object ArrayBuffer]"===l?r=e.slice(0):"Array]"===l.slice(-6)&&(r=new e.constructor(e)),r){for(n=Object.getOwnPropertySymbols(e);a<n.length;a++)w(r,n[a],Object.getOwnPropertyDescriptor(e,n[a]));for(a=0,n=Object.getOwnPropertyNames(e);a<n.length;a++)Object.hasOwnProperty.call(r,t=n[a])&&r[t]===e[t]||w(r,t,Object.getOwnPropertyDescriptor(e,t))}return r||e}function S(e){return h(e)?e.replace(/\[|\]/gi,""):e}function E(e,t,n){if(!e)return n;if(h(t))return e[S(t)];return(t||"").split(/\.|\[(\d+)\]/).filter(Boolean).reduce(((e,t)=>{return(a(r=e)||Array.isArray(r))&&t in e?e[t]:n;var r}),e)}function k(e,t,n){if(h(t))return void(e[S(t)]=n);const a=t.split(/\.|\[(\d+)\]/).filter(Boolean);let u=e;for(let e=0;e<a.length;e++){if(e===a.length-1)return void(u[a[e]]=n);a[e]in u&&!r(u[a[e]])||(u[a[e]]=l(a[e+1])?[]:{}),u=u[a[e]]}}function B(e,t){Array.isArray(e)&&l(t)?e.splice(Number(t),1):a(e)&&delete e[t]}function I(e,t){if(h(t))return void delete e[S(t)];const n=t.split(/\.|\[(\d+)\]/).filter(Boolean);let a=e;for(let e=0;e<n.length;e++){if(e===n.length-1){B(a,n[e]);break}if(!(n[e]in a)||r(a[n[e]]))break;a=a[n[e]]}const l=n.map(((t,r)=>E(e,n.slice(0,r).join("."))));for(let t=l.length-1;t>=0;t--)m(l[t])&&(0!==t?B(l[t-1],n[t-1]):B(e,n[0]))}function M(e){return Object.keys(e)}function T(e,n=undefined){const r=t.getCurrentInstance();return(null==r?void 0:r.provides[e])||t.inject(e,n)}function C(e){t.warn(`[vee-validate]: ${e}`)}function R(e){return Array.isArray(e)?e[0]:e}function x(e,t,n){if(Array.isArray(e)){const n=[...e],r=n.findIndex((e=>F(e,t)));return r>=0?n.splice(r,1):n.push(t),n}return F(e,t)?n:t}function N(e,t=0){let n=null,r=[];return function(...a){return n&&window.clearTimeout(n),n=window.setTimeout((()=>{const t=e(...a);r.forEach((e=>e(t))),r=[]}),t),new Promise((e=>r.push(e)))}}function P(e,t){return a(t)&&t.number?function(e){const t=parseFloat(e);return isNaN(t)?e:t}(e):e}function _(e,t){let n;return async function(...r){const a=e(...r);n=a;const l=await a;return a!==n||(n=void 0,t(l,r)),l}}function U({get:e,set:n}){const r=t.ref(j(e()));return t.watch(e,(e=>{F(e,r.value)||(r.value=j(e))}),{deep:!0}),t.watch(r,(t=>{F(t,e())||n(j(t))}),{deep:!0}),r}const $=(e,t,n)=>t.slots.default?"string"!=typeof e&&e?{default:()=>{var e,r;return null===(r=(e=t.slots).default)||void 0===r?void 0:r.call(e,n())}}:t.slots.default(n()):t.slots.default;function D(e){if(z(e))return e._value}function z(e){return"_value"in e}function q(e){if(!V(e))return e;const t=e.target;if(p(t.type)&&z(t))return D(t);if("file"===t.type&&t.files){const e=Array.from(t.files);return t.multiple?e:e[0]}if(y(n=t)&&n.multiple)return Array.from(t.options).filter((e=>e.selected&&!e.disabled)).map(D);var n;if(y(t)){const e=Array.from(t.options).find((e=>e.selected));return e?D(e):t.value}return t.value}function L(e){const t={};return Object.defineProperty(t,"_$$isNormalized",{value:!0,writable:!1,enumerable:!1,configurable:!1}),e?a(e)&&e._$$isNormalized?e:a(e)?Object.keys(e).reduce(((t,n)=>{const r=function(e){if(!0===e)return[];if(Array.isArray(e))return e;if(a(e))return e;return[e]}(e[n]);return!1!==e[n]&&(t[n]=K(r)),t}),t):"string"!=typeof e?t:e.split("|").reduce(((e,t)=>{const n=G(t);return n.name?(e[n.name]=K(n.params),e):e}),t):t}function K(e){const t=e=>"string"==typeof e&&"@"===e[0]?function(e){const t=t=>E(t,e)||t[e];return t.__locatorRef=e,t}(e.slice(1)):e;return Array.isArray(e)?e.map(t):e instanceof RegExp?[e]:Object.keys(e).reduce(((n,r)=>(n[r]=t(e[r]),n)),{})}const G=e=>{let t=[];const n=e.split(":")[0];return e.includes(":")&&(t=e.split(":").slice(1).join(":").split(",")),{name:n,params:t}};let X=Object.assign({},{generateMessage:({field:e})=>`${e} is not valid.`,bails:!0,validateOnBlur:!0,validateOnChange:!0,validateOnInput:!1,validateOnModelUpdate:!0});const H=()=>X,J=e=>{X=Object.assign(Object.assign({},X),e)};async function Q(e,t,r={}){const a=null==r?void 0:r.bails,l={name:(null==r?void 0:r.name)||"{field}",rules:t,label:null==r?void 0:r.label,bails:null==a||a,formData:(null==r?void 0:r.values)||{}},u=await async function(e,t){if(f(e.rules)||v(e.rules))return async function(e,t){const n=f(t)?t:W(t),r=await n.parse(e),a=[];for(const e of r.errors)e.errors.length&&a.push(...e.errors);return{errors:a}}(t,e.rules);if(n(e.rules)||Array.isArray(e.rules)){const n={field:e.label||e.name,name:e.name,label:e.label,form:e.formData,value:t},r=Array.isArray(e.rules)?e.rules:[e.rules],a=r.length,l=[];for(let u=0;u<a;u++){const a=r[u],i=await a(t,n);if("string"!=typeof i&&i)continue;const o="string"==typeof i?i:Z(n);if(l.push(o),e.bails)return{errors:l}}return{errors:l}}const r=Object.assign(Object.assign({},e),{rules:L(e.rules)}),a=[],l=Object.keys(r.rules),u=l.length;for(let n=0;n<u;n++){const u=l[n],i=await Y(r,t,{name:u,params:r.rules[u]});if(i.error&&(a.push(i.error),e.bails))return{errors:a}}return{errors:a}}(l,e),i=u.errors;return{errors:i,valid:!i.length}}function W(e){return{__type:"VVTypedSchema",async parse(t){var n;try{return{output:await e.validate(t,{abortEarly:!1}),errors:[]}}catch(e){if(!function(e){return!!e&&"ValidationError"===e.name}(e))throw e;if(!(null===(n=e.inner)||void 0===n?void 0:n.length)&&e.errors.length)return{errors:[{path:e.path,errors:e.errors}]};const t=e.inner.reduce(((e,t)=>{const n=t.path||"";return e[n]||(e[n]={errors:[],path:n}),e[n].errors.push(...t.errors),e}),{});return{errors:Object.values(t)}}}}}async function Y(e,t,n){const r=(a=n.name,u[a]);var a;if(!r)throw new Error(`No such validator '${n.name}' exists.`);const l=function(e,t){const n=e=>c(e)?e(t):e;if(Array.isArray(e))return e.map(n);return Object.keys(e).reduce(((t,r)=>(t[r]=n(e[r]),t)),{})}(n.params,e.formData),i={field:e.label||e.name,name:e.name,label:e.label,value:t,form:e.formData,rule:Object.assign(Object.assign({},n),{params:l})},o=await r(t,l,i);return"string"==typeof o?{error:o}:{error:o?void 0:Z(i)}}function Z(e){const t=H().generateMessage;return t?t(e):"Field is invalid"}async function ee(e,t,n){const r=M(e).map((async r=>{var a,l,u;const i=null===(a=null==n?void 0:n.names)||void 0===a?void 0:a[r],o=await Q(E(t,r),e[r],{name:(null==i?void 0:i.name)||r,label:null==i?void 0:i.label,values:t,bails:null===(u=null===(l=null==n?void 0:n.bailsMap)||void 0===l?void 0:l[r])||void 0===u||u});return Object.assign(Object.assign({},o),{path:r})}));let a=!0;const l=await Promise.all(r),u={},i={};for(const e of l)u[e.path]={valid:e.valid,errors:e.errors},e.valid||(a=!1,i[e.path]=e.errors[0]);return{valid:a,results:u,errors:i}}let te=0;function ne(e,n){const{value:r,initialValue:a,setInitialValue:l}=re(e,n.modelValue,n.form),{errorMessage:u,errors:i,setErrors:o}=function(e,n){function r(e){return e?Array.isArray(e)?e:[e]:[]}if(!n){const e=t.ref([]);return{errors:e,errorMessage:t.computed((()=>e.value[0])),setErrors:t=>{e.value=r(t)}}}const a=t.computed((()=>n.errorBag.value[t.unref(e)]||[]));return{errors:a,errorMessage:t.computed((()=>a.value[0])),setErrors:a=>{n.setFieldErrorBag(t.unref(e),r(a))}}}(e,n.form),s=function(e,n,r){const a=t.reactive({touched:!1,pending:!1,valid:!0,validated:!!t.unref(r).length,initialValue:t.computed((()=>t.unref(n))),dirty:t.computed((()=>!F(t.unref(e),t.unref(n))))});return t.watch(r,(e=>{a.valid=!e.length}),{immediate:!0,flush:"sync"}),a}(r,a,i);return{id:te>=Number.MAX_SAFE_INTEGER?0:++te,path:e,value:r,initialValue:a,meta:s,errors:i,errorMessage:u,setState:function(e){var t;"value"in e&&(r.value=e.value),"errors"in e&&o(e.errors),"touched"in e&&(s.touched=null!==(t=e.touched)&&void 0!==t?t:s.touched),"initialValue"in e&&l(e.initialValue)}}}function re(e,n,r){const a=t.ref(t.unref(n));function l(){return r?E(r.meta.value.initialValues,t.unref(e),t.unref(a)):t.unref(a)}function u(n){r?r.stageInitialValue(t.unref(e),n,!0):a.value=n}const i=t.computed(l);if(!r){return{value:t.ref(l()),initialValue:i,setInitialValue:u}}const o=n?t.unref(n):E(r.values,t.unref(e),t.unref(i));r.stageInitialValue(t.unref(e),o,!0);return{value:t.computed({get:()=>E(r.values,t.unref(e)),set(n){r.setFieldValue(t.unref(e),n)}}),initialValue:i,setInitialValue:u}}function ae(e,n,r){return p(null==r?void 0:r.type)?function(e,n,r){const a=(null==r?void 0:r.standalone)?void 0:T(i),l=null==r?void 0:r.checkedValue,u=null==r?void 0:r.uncheckedValue;function o(e){const n=e.handleChange,r=t.computed((()=>{const n=t.unref(e.value),r=t.unref(l);return Array.isArray(n)?n.findIndex((e=>F(e,r)))>=0:F(r,n)}));function i(i,o=!0){var s;if(r.value===(null===(s=null==i?void 0:i.target)||void 0===s?void 0:s.checked))return void(o&&e.validate());let d=q(i);a||(d=x(t.unref(e.value),t.unref(l),t.unref(u))),n(d,o)}return Object.assign(Object.assign({},e),{checked:r,checkedValue:l,uncheckedValue:u,handleChange:i})}return o(le(e,n,r))}(e,n,r):le(e,n,r)}function le(e,r,a){const{initialValue:l,validateOnMount:u,bails:d,type:p,checkedValue:m,label:h,validateOnValueUpdate:y,uncheckedValue:g,controlled:b,keepValueOnUnmount:V,modelPropName:O,syncVModel:A,form:w}=function(e,n){var r;const a=()=>({initialValue:void 0,validateOnMount:!1,bails:!0,label:e,validateOnValueUpdate:!0,keepValueOnUnmount:void 0,modelPropName:"modelValue",syncVModel:!0,controlled:!0}),l=null===(r=null==n?void 0:n.syncVModel)||void 0===r||r,u=l&&!("initialValue"in(n||{}))?ue(t.getCurrentInstance(),(null==n?void 0:n.modelPropName)||"modelValue"):null==n?void 0:n.initialValue;if(!n)return Object.assign(Object.assign({},a()),{initialValue:u});const i="valueProp"in n?n.valueProp:n.checkedValue,o="standalone"in n?!n.standalone:n.controlled;return Object.assign(Object.assign(Object.assign({},a()),n||{}),{initialValue:u,controlled:null==o||o,checkedValue:i})}(t.unref(e),a),S=b?T(i):void 0,k=w||S;let B=!1;const{id:I,value:C,initialValue:R,meta:x,setState:N,errors:U,errorMessage:$}=ne(e,{modelValue:l,form:k});A&&function({prop:e,value:n,handleChange:r}){const a=t.getCurrentInstance();if(!a)return;const l=e||"modelValue",u=`update:${l}`;if(!(l in a.props))return;t.watch(n,(e=>{F(e,ue(a,l))||a.emit(u,e)})),t.watch((()=>ue(a,l)),(e=>{if(e===s&&void 0===n.value)return;const t=e===s?void 0:e;F(t,P(n.value,a.props.modelModifiers))||r(t)}))}({value:C,prop:O,handleChange:X});const D=t.computed((()=>{let a=t.unref(r);const l=t.unref(null==k?void 0:k.schema);return!l||v(l)||f(l)||(a=function(e,t){if(!e)return;return e[t]}(l,t.unref(e))||a),v(a)||f(a)||n(a)||Array.isArray(a)?a:L(a)}));async function z(n){var r,a;return(null==k?void 0:k.validateSchema)?null!==(r=(await k.validateSchema(n)).results[t.unref(e)])&&void 0!==r?r:{valid:!0,errors:[]}:Q(C.value,D.value,{name:t.unref(e),label:t.unref(h),values:null!==(a=null==k?void 0:k.values)&&void 0!==a?a:{},bails:d})}const K=_((async()=>(x.pending=!0,x.validated=!0,z("validated-only"))),(e=>(B&&(e.valid=!0,e.errors=[]),N({errors:e.errors}),x.pending=!1,e))),G=_((async()=>z("silent")),(e=>(B&&(e.valid=!0),x.valid=e.valid,e)));function X(e,t=!0){const n=q(e);C.value=n,!y&&t&&K()}let H;t.onMounted((()=>{if(u)return K();k&&k.validateSchema||G()}));let J=j(C.value);function W(){H=t.watch(C,((e,t)=>{if(F(e,t)&&F(e,J))return;(y?K:G)(),J=j(e)}),{deep:!0})}function Y(e){var n;null==H||H();const r=e&&"value"in e?e.value:R.value;N({value:j(r),initialValue:j(r),touched:null!==(n=null==e?void 0:e.touched)&&void 0!==n&&n,errors:(null==e?void 0:e.errors)||[]}),x.pending=!1,x.validated=!1,G(),t.nextTick((()=>{W()}))}W();const Z={id:I,name:e,label:h,value:C,meta:x,errors:U,errorMessage:$,type:p,checkedValue:m,uncheckedValue:g,bails:d,keepValueOnUnmount:V,resetField:Y,handleReset:()=>Y(),validate:function(e){return"silent"===(null==e?void 0:e.mode)?G():K()},handleChange:X,handleBlur:()=>{x.touched=!0},setState:N,setTouched:function(e){x.touched=e},setErrors:function(e){N({errors:Array.isArray(e)?e:[e]})},setValue:function(e){C.value=e}};if(t.provide(o,Z),t.isRef(r)&&"function"!=typeof t.unref(r)&&t.watch(r,((e,t)=>{F(e,t)||(x.validated?K():G())}),{deep:!0}),!k)return Z;k.register(Z),t.onBeforeUnmount((()=>{B=!0,k.unregister(Z)}));const ee=t.computed((()=>{const e=D.value;return!e||n(e)||v(e)||f(e)||Array.isArray(e)?{}:Object.keys(e).reduce(((t,n)=>{const r=(a=e[n],Array.isArray(a)?a.filter(c):M(a).filter((e=>c(a[e]))).map((e=>a[e]))).map((e=>e.__locatorRef)).reduce(((e,t)=>{const n=E(k.values,t)||k.values[t];return void 0!==n&&(e[t]=n),e}),{});var a;return Object.assign(t,r),t}),{})}));return t.watch(ee,((e,t)=>{if(!Object.keys(e).length)return;!F(e,t)&&(x.validated?K():G())})),Z}function ue(e,t){if(e)return e.props[t]}function ie(e,t){let n=e.as||"";return e.as||t.slots.default||(n="input"),n}function oe(e,t){return p(t.attrs.type)?O(e,"modelValue")?e.modelValue:void 0:O(e,"modelValue")?e.modelValue:t.attrs.value}const se=t.defineComponent({name:"Field",inheritAttrs:!1,props:{as:{type:[String,Object],default:void 0},name:{type:String,required:!0},rules:{type:[Object,String,Function],default:void 0},validateOnMount:{type:Boolean,default:!1},validateOnBlur:{type:Boolean,default:void 0},validateOnChange:{type:Boolean,default:void 0},validateOnInput:{type:Boolean,default:void 0},validateOnModelUpdate:{type:Boolean,default:void 0},bails:{type:Boolean,default:()=>H().bails},label:{type:String,default:void 0},uncheckedValue:{type:null,default:void 0},modelValue:{type:null,default:s},modelModifiers:{type:null,default:()=>({})},"onUpdate:modelValue":{type:null,default:void 0},standalone:{type:Boolean,default:!1},keepValue:{type:Boolean,default:void 0}},setup(e,n){const r=t.toRef(e,"rules"),a=t.toRef(e,"name"),l=t.toRef(e,"label"),u=t.toRef(e,"uncheckedValue"),i=t.toRef(e,"keepValue"),{errors:o,value:s,errorMessage:d,validate:c,handleChange:f,handleBlur:v,setTouched:m,resetField:h,handleReset:y,meta:b,checked:V,setErrors:O}=ae(a,r,{validateOnMount:e.validateOnMount,bails:e.bails,standalone:e.standalone,type:n.attrs.type,initialValue:oe(e,n),checkedValue:n.attrs.value,uncheckedValue:u,label:l,validateOnValueUpdate:!1,keepValueOnUnmount:i}),F=function(e,t=!0){f(e,t),n.emit("update:modelValue",s.value)},A=function(e){(e=>{p(n.attrs.type)||(s.value=q(e))})(e),n.emit("update:modelValue",s.value)},w=t.computed((()=>{const{validateOnInput:t,validateOnChange:r,validateOnBlur:a,validateOnModelUpdate:l}=function(e){var t,n,r,a;const{validateOnInput:l,validateOnChange:u,validateOnBlur:i,validateOnModelUpdate:o}=H();return{validateOnInput:null!==(t=e.validateOnInput)&&void 0!==t?t:l,validateOnChange:null!==(n=e.validateOnChange)&&void 0!==n?n:u,validateOnBlur:null!==(r=e.validateOnBlur)&&void 0!==r?r:i,validateOnModelUpdate:null!==(a=e.validateOnModelUpdate)&&void 0!==a?a:o}}(e),u=[v,n.attrs.onBlur,a?c:void 0].filter(Boolean),i=[e=>F(e,t),n.attrs.onInput].filter(Boolean),o=[e=>F(e,r),n.attrs.onChange].filter(Boolean),d={name:e.name,onBlur:u,onInput:i,onChange:o,"onUpdate:modelValue":e=>F(e,l)};p(n.attrs.type)&&V&&(d.checked=V.value);return g(ie(e,n),n.attrs)&&(d.value=s.value),d}));function j(){return{field:w.value,value:s.value,meta:b,errors:o.value,errorMessage:d.value,validate:c,resetField:h,handleChange:F,handleInput:A,handleReset:y,handleBlur:v,setTouched:m,setErrors:O}}return n.expose({setErrors:O,setTouched:m,reset:h,validate:c,handleChange:f}),()=>{const r=t.resolveDynamicComponent(ie(e,n)),a=$(r,n,j);return r?t.h(r,Object.assign(Object.assign({},n.attrs),w.value),a):a}}});let de=0;function ce(e){const r=t.unref(null==e?void 0:e.initialValues)||{};return(null==e?void 0:e.validationSchema)&&f(e.validationSchema)&&n(e.validationSchema.cast)?j(e.validationSchema.cast(r)||{}):j(r)}function fe(e){var n;const r=de++,a=new Set;let l=!1;const u=t.ref({}),o=t.ref(!1),s=t.ref(0),d=[],c=t.reactive(ce(e)),{errorBag:p,setErrorBag:h,setFieldErrorBag:y}=function(e){const n=t.ref({});function r(e){return Array.isArray(e)?e:e?[e]:[]}function a(e,t){t?n.value[e]=r(t):delete n.value[e]}function l(e){n.value=M(e).reduce(((t,n)=>{const a=e[n];return a&&(t[n]=r(a)),t}),{})}e&&l(e);return{errorBag:n,setErrorBag:l,setFieldErrorBag:a}}(null==e?void 0:e.initialErrors),g=t.computed((()=>M(p.value).reduce(((e,t)=>{const n=p.value[t];return n&&n.length&&(e[t]=n[0]),e}),{})));function V(e){const t=u.value[e];return Array.isArray(t)?t[0]:t}function O(e){return!!u.value[e]}const A=t.computed((()=>M(u.value).reduce(((e,n)=>{const r=V(n);return r&&(e[n]={name:t.unref(r.name)||"",label:t.unref(r.label)||""}),e}),{}))),w=t.computed((()=>M(u.value).reduce(((e,t)=>{var n;const r=V(t);return r&&(e[t]=null===(n=r.bails)||void 0===n||n),e}),{}))),S=Object.assign({},(null==e?void 0:e.initialErrors)||{}),B=null!==(n=null==e?void 0:e.keepValuesOnUnmount)&&void 0!==n&&n,{initialValues:T,originalInitialValues:C,setInitialValues:R}=function(e,n,r){const a=ce(r),l=null==r?void 0:r.initialValues,u=t.ref(a),i=t.ref(j(a));function o(t,r=!1){u.value=j(t),i.value=j(t),r&&M(e.value).forEach((t=>{const r=e.value[t],a=Array.isArray(r)?r.some((e=>e.meta.touched)):null==r?void 0:r.meta.touched;if(!r||a)return;const l=E(u.value,t);k(n,t,j(l))}))}t.isRef(l)&&t.watch(l,(e=>{o(e,!0)}),{deep:!0});return{initialValues:u,originalInitialValues:i,setInitialValues:o}}(u,c,e),P=function(e,n,r,a){const l={touched:"some",pending:"some",valid:"every"},u=t.computed((()=>!F(n,t.unref(r))));function i(){const t=Object.values(e.value).flat(1).filter(Boolean);return M(l).reduce(((e,n)=>{const r=l[n];return e[n]=t[r]((e=>e.meta[n])),e}),{})}const o=t.reactive(i());return t.watchEffect((()=>{const e=i();o.touched=e.touched,o.valid=e.valid,o.pending=e.pending})),t.computed((()=>Object.assign(Object.assign({initialValues:t.unref(r)},o),{valid:o.valid&&!M(a.value).length,dirty:u.value})))}(u,c,C,g),U=t.computed((()=>[...a,...M(u.value)].reduce(((e,t)=>(k(e,t,E(c,t)),e)),{}))),$=null==e?void 0:e.validationSchema,D=N(me,5),z=N(me,5),q=_((async e=>"silent"===await e?D():z()),((e,[t])=>{const n=G.fieldsByPath.value||{},r=M(G.errorBag.value);return[...new Set([...M(e.results),...M(n),...r])].reduce(((r,a)=>{const l=n[a],u=(e.results[a]||{errors:[]}).errors,i={errors:u,valid:!u.length};if(r.results[a]=i,i.valid||(r.errors[a]=i.errors[0]),!l)return Q(a,u),r;if(H(l,(e=>e.meta.valid=i.valid)),"silent"===t)return r;const o=Array.isArray(l)?l.some((e=>e.meta.validated)):l.meta.validated;return"validated-only"!==t||o?(H(l,(e=>e.setState({errors:i.errors}))),r):r}),{valid:e.valid,results:{},errors:{}})}));function L(e){return function(t,n){return function(r){return r instanceof Event&&(r.preventDefault(),r.stopPropagation()),le(M(u.value).reduce(((e,t)=>(e[t]=!0,e)),{})),o.value=!0,s.value++,fe().then((a=>{const l=j(c);if(a.valid&&"function"==typeof t){const n=j(U.value);let u=e?n:l;return a.values&&(u=a.values),t(u,{evt:r,controlledValues:n,setErrors:Y,setFieldError:Q,setTouched:le,setFieldTouched:ae,setValues:te,setFieldValue:Z,resetForm:ie,resetField:ue})}a.valid||"function"!=typeof n||n({values:l,evt:r,errors:a.errors,results:a.results})})).then((e=>(o.value=!1,e)),(e=>{throw o.value=!1,e}))}}}const K=L(!1);K.withControlled=L(!0);const G={formId:r,fieldsByPath:u,values:c,controlledValues:U,errorBag:p,errors:g,schema:$,submitCount:s,meta:P,isSubmitting:o,fieldArrays:d,keepValuesOnUnmount:B,validateSchema:t.unref($)?q:void 0,validate:fe,register:function(e){const n=t.unref(e.name);oe(e,n),t.isRef(e.name)&&t.watch(e.name,(async(n,r)=>{await t.nextTick(),se(e,r),oe(e,n),(g.value[r]||g.value[n])&&(Q(r,void 0),ve(n)),await t.nextTick(),O(r)||I(c,r)}));const r=t.unref(e.errorMessage);r&&(null==S?void 0:S[n])!==r&&ve(n);delete S[n]},unregister:function(e){const n=t.unref(e.name),r=u.value[n],a=!!r&&X(r);se(e,n),t.nextTick((()=>{var l;const i=null!==(l=t.unref(e.keepValueOnUnmount))&&void 0!==l?l:t.unref(B),o=E(c,n);if(a&&(r===u.value[n]||!u.value[n])&&!i)if(Array.isArray(o)){const r=o.findIndex((n=>F(n,t.unref(e.checkedValue))));if(r>-1){const e=[...o];e.splice(r,1),Z(n,e,{force:!0})}}else o===t.unref(e.checkedValue)&&I(c,n);if(!O(n)){if(Q(n,void 0),i)return;if(a&&Array.isArray(o)&&!m(o))return;I(c,n)}}))},setFieldErrorBag:y,validateField:ve,setFieldValue:Z,setValues:te,setErrors:Y,setFieldError:Q,setFieldTouched:ae,setTouched:le,resetForm:ie,resetField:ue,handleSubmit:K,stageInitialValue:function(t,n,r=!1){k(c,t,n),pe(t,n),r&&!(null==e?void 0:e.initialValues)&&k(C.value,t,j(n))},unsetInitialValue:function(e){I(T.value,e)},setFieldInitialValue:pe,useFieldModel:function(e){if(!Array.isArray(e))return ne(e);return e.map(ne)}};function X(e){return Array.isArray(e)}function H(e,t){return Array.isArray(e)?e.forEach(t):t(e)}function J(e){Object.values(u.value).forEach((t=>{t&&H(t,e)}))}function Q(e,t){y(e,t)}function Y(e){h(e)}function Z(e,n,{force:r}={force:!1}){var a;const i=u.value[e],o=j(n);if(!i)return void k(c,e,o);if(X(i)&&"checkbox"===(null===(a=i[0])||void 0===a?void 0:a.type)&&!Array.isArray(n)){const t=j(x(E(c,e)||[],n,void 0));return void k(c,e,t)}let s=o;X(i)||"checkbox"!==i.type||r||l||(s=j(x(E(c,e),n,t.unref(i.uncheckedValue)))),k(c,e,s)}function te(e){M(c).forEach((e=>{delete c[e]})),M(e).forEach((t=>{Z(t,e[t])})),d.forEach((e=>e&&e.reset()))}function ne(e){const{value:n}=re(e,void 0,G);return t.watch(n,(()=>{O(t.unref(e))||fe({mode:"validated-only"})}),{deep:!0}),a.add(t.unref(e)),n}function ae(e,t){const n=u.value[e];n&&H(n,(e=>e.setTouched(t)))}function le(e){M(e).forEach((t=>{ae(t,!!e[t])}))}function ue(e,t){const n=u.value[e];n&&H(n,(e=>e.resetField(t)))}function ie(e){l=!0,J((e=>e.resetField()));const n=(null==e?void 0:e.values)?e.values:C.value;R(n),te(n),(null==e?void 0:e.touched)&&le(e.touched),Y((null==e?void 0:e.errors)||{}),s.value=(null==e?void 0:e.submitCount)||0,t.nextTick((()=>{l=!1}))}function oe(e,n){const r=t.markRaw(e),a=n;if(!u.value[a])return void(u.value[a]=r);const l=u.value[a];l&&!Array.isArray(l)&&(u.value[a]=[l]),u.value[a]=[...u.value[a],r]}function se(e,t){const n=t,r=u.value[n];if(r)if(X(r)||e.id!==r.id){if(X(r)){const t=r.findIndex((t=>t.id===e.id));if(-1===t)return;r.splice(t,1),r.length||delete u.value[n]}}else delete u.value[n]}async function fe(e){const n=(null==e?void 0:e.mode)||"force";if("force"===n&&J((e=>e.meta.validated=!0)),G.validateSchema)return G.validateSchema(n);const r=await Promise.all(Object.values(u.value).map((n=>{const r=Array.isArray(n)?n[0]:n;return r?r.validate(e).then((e=>({key:t.unref(r.name),valid:e.valid,errors:e.errors}))):Promise.resolve({key:"",valid:!0,errors:[]})}))),a={},l={};for(const e of r)a[e.key]={valid:e.valid,errors:e.errors},e.errors.length&&(l[e.key]=e.errors[0]);return{valid:r.every((e=>e.valid)),results:a,errors:l}}async function ve(e){const n=u.value[e];return n?Array.isArray(n)?n.map((e=>e.validate()))[0]:n.validate():(t.warn(`field with name ${e} was not found`),Promise.resolve({errors:[],valid:!0}))}function pe(e,t){k(T.value,e,j(t))}async function me(){const e=t.unref($);if(!e)return{valid:!0,results:{},errors:{}};const n=v(e)||f(e)?await async function(e,t){const n=f(e)?e:W(e),r=await n.parse(t),a={},l={};for(const e of r.errors){const t=e.errors,n=(e.path||"").replace(/\["(\d+)"\]/g,((e,t)=>`[${t}]`));a[n]={valid:!t.length,errors:t},t.length&&(l[n]=t[0])}return{valid:!r.errors.length,results:a,errors:l,values:r.value}}(e,c):await ee(e,c,{names:A.value,bailsMap:w.value});return n}const he=K(((e,{evt:t})=>{b(t)&&t.target.submit()}));return t.onMounted((()=>{(null==e?void 0:e.initialErrors)&&Y(e.initialErrors),(null==e?void 0:e.initialTouched)&&le(e.initialTouched),(null==e?void 0:e.validateOnMount)?fe():G.validateSchema&&G.validateSchema("silent")})),t.isRef($)&&t.watch($,(()=>{var e;null===(e=G.validateSchema)||void 0===e||e.call(G,"validated-only")})),t.provide(i,G),Object.assign(Object.assign({},G),{handleReset:()=>ie(),submitForm:he})}const ve=t.defineComponent({name:"Form",inheritAttrs:!1,props:{as:{type:String,default:"form"},validationSchema:{type:Object,default:void 0},initialValues:{type:Object,default:void 0},initialErrors:{type:Object,default:void 0},initialTouched:{type:Object,default:void 0},validateOnMount:{type:Boolean,default:!1},onSubmit:{type:Function,default:void 0},onInvalidSubmit:{type:Function,default:void 0},keepValues:{type:Boolean,default:!1}},setup(e,n){const r=t.toRef(e,"initialValues"),a=t.toRef(e,"validationSchema"),l=t.toRef(e,"keepValues"),{errors:u,errorBag:i,values:o,meta:s,isSubmitting:d,submitCount:c,controlledValues:f,validate:v,validateField:p,handleReset:m,resetForm:h,handleSubmit:y,setErrors:g,setFieldError:O,setFieldValue:F,setValues:A,setFieldTouched:w,setTouched:S,resetField:E}=fe({validationSchema:a.value?a:void 0,initialValues:r,initialErrors:e.initialErrors,initialTouched:e.initialTouched,validateOnMount:e.validateOnMount,keepValuesOnUnmount:l}),k=y(((e,{evt:t})=>{b(t)&&t.target.submit()}),e.onInvalidSubmit),B=e.onSubmit?y(e.onSubmit,e.onInvalidSubmit):k;function I(e){V(e)&&e.preventDefault(),m(),"function"==typeof n.attrs.onReset&&n.attrs.onReset()}function M(t,n){return y("function"!=typeof t||n?n:t,e.onInvalidSubmit)(t)}function T(){return j(o)}function C(){return j(s.value)}function R(){return j(u.value)}function x(){return{meta:s.value,errors:u.value,errorBag:i.value,values:o,isSubmitting:d.value,submitCount:c.value,controlledValues:f.value,validate:v,validateField:p,handleSubmit:M,handleReset:m,submitForm:k,setErrors:g,setFieldError:O,setFieldValue:F,setValues:A,setFieldTouched:w,setTouched:S,resetForm:h,resetField:E,getValues:T,getMeta:C,getErrors:R}}return n.expose({setFieldError:O,setErrors:g,setFieldValue:F,setValues:A,setFieldTouched:w,setTouched:S,resetForm:h,validate:v,validateField:p,resetField:E,getValues:T,getMeta:C,getErrors:R}),function(){const r="form"===e.as?e.as:t.resolveDynamicComponent(e.as),a=$(r,n,x);if(!e.as)return a;const l="form"===e.as?{novalidate:!0}:{};return t.h(r,Object.assign(Object.assign(Object.assign({},l),n.attrs),{onSubmit:B,onReset:I}),a)}}}),pe=ve;function me(e){const n=T(i,void 0),a=t.ref([]),l=()=>{},u={fields:a,remove:l,push:l,swap:l,insert:l,update:l,replace:l,prepend:l,move:l};if(!n)return C("FieldArray requires being a child of `<Form/>` or `useForm` being called before it. Array fields may not work correctly"),u;if(!t.unref(e))return C("FieldArray requires a field path to be provided, did you forget to pass the `name` prop?"),u;const o=n.fieldArrays.find((n=>t.unref(n.path)===t.unref(e)));if(o)return o;let s=0;function d(){return E(null==n?void 0:n.values,t.unref(e),[])||[]}function c(){const e=d();a.value=e.map(v),f()}function f(){const e=a.value.length;for(let t=0;t<e;t++){const n=a.value[t];n.isFirst=0===t,n.isLast=t===e-1}}function v(r){const l=s++,u={key:l,value:U({get(){const u=E(null==n?void 0:n.values,t.unref(e),[])||[],i=a.value.findIndex((e=>e.key===l));return-1===i?r:u[i]},set(e){const t=a.value.findIndex((e=>e.key===l));-1!==t?m(t,e):C("Attempting to update a non-existent array item")}}),isFirst:!1,isLast:!1};return u}function p(){f(),null==n||n.validate({mode:"silent"})}function m(r,a){const l=t.unref(e),u=E(null==n?void 0:n.values,l);!Array.isArray(u)||u.length-1<r||(null==n||n.setFieldValue(`${l}[${r}]`,a),null==n||n.validate({mode:"validated-only"}))}c();const h={fields:a,remove:function(r){const l=t.unref(e),u=E(null==n?void 0:n.values,l);if(!u||!Array.isArray(u))return;const i=[...u];i.splice(r,1),null==n||n.unsetInitialValue(l+`[${r}]`),null==n||n.setFieldValue(l,i),a.value.splice(r,1),p()},push:function(l){const u=t.unref(e),i=E(null==n?void 0:n.values,u),o=r(i)?[]:i;if(!Array.isArray(o))return;const s=[...o];s.push(l),null==n||n.stageInitialValue(u+`[${s.length-1}]`,l),null==n||n.setFieldValue(u,s),a.value.push(v(l)),p()},swap:function(r,l){const u=t.unref(e),i=E(null==n?void 0:n.values,u);if(!Array.isArray(i)||!(r in i)||!(l in i))return;const o=[...i],s=[...a.value],d=o[r];o[r]=o[l],o[l]=d;const c=s[r];s[r]=s[l],s[l]=c,null==n||n.setFieldValue(u,o),a.value=s,f()},insert:function(r,l){const u=t.unref(e),i=E(null==n?void 0:n.values,u);if(!Array.isArray(i)||i.length<r)return;const o=[...i],s=[...a.value];o.splice(r,0,l),s.splice(r,0,v(l)),null==n||n.setFieldValue(u,o),a.value=s,p()},update:m,replace:function(r){const a=t.unref(e);null==n||n.setFieldValue(a,r),c(),p()},prepend:function(l){const u=t.unref(e),i=E(null==n?void 0:n.values,u),o=r(i)?[]:i;if(!Array.isArray(o))return;const s=[l,...o];null==n||n.stageInitialValue(u+`[${s.length-1}]`,l),null==n||n.setFieldValue(u,s),a.value.unshift(v(l)),p()},move:function(l,u){const i=t.unref(e),o=E(null==n?void 0:n.values,i),s=r(o)?[]:[...o];if(!Array.isArray(o)||!(l in o)||!(u in o))return;const d=[...a.value],c=d[l];d.splice(l,1),d.splice(u,0,c);const f=s[l];s.splice(l,1),s.splice(u,0,f),null==n||n.setFieldValue(i,s),a.value=d,p()}};return n.fieldArrays.push(Object.assign({path:e,reset:c},h)),t.onBeforeUnmount((()=>{const r=n.fieldArrays.findIndex((n=>t.unref(n.path)===t.unref(e)));r>=0&&n.fieldArrays.splice(r,1)})),t.watch(d,(e=>{F(e,a.value.map((e=>e.value)))||c()})),h}const he=t.defineComponent({name:"FieldArray",inheritAttrs:!1,props:{name:{type:String,required:!0}},setup(e,n){const{push:r,remove:a,swap:l,insert:u,replace:i,update:o,prepend:s,move:d,fields:c}=me(t.toRef(e,"name"));function f(){return{fields:c.value,push:r,remove:a,swap:l,insert:u,update:o,replace:i,prepend:s,move:d}}return n.expose({push:r,remove:a,swap:l,insert:u,update:o,replace:i,prepend:s,move:d}),()=>$(void 0,n,f)}}),ye=t.defineComponent({name:"ErrorMessage",props:{as:{type:String,default:void 0},name:{type:String,required:!0}},setup(e,n){const r=t.inject(i,void 0),a=t.computed((()=>null==r?void 0:r.errors.value[e.name]));function l(){return{message:a.value}}return()=>{if(!a.value)return;const r=e.as?t.resolveDynamicComponent(e.as):e.as,u=$(r,n,l),i=Object.assign({role:"alert"},n.attrs);return r||!Array.isArray(u)&&u||!(null==u?void 0:u.length)?!Array.isArray(u)&&u||(null==u?void 0:u.length)?t.h(r,i,u):t.h(r||"span",i,a.value):u}}});e.ErrorMessage=ye,e.Field=se,e.FieldArray=he,e.FieldContextKey=o,e.Form=pe,e.FormContextKey=i,e.IS_ABSENT=s,e.configure=J,e.defineRule=function(e,t){!function(e,t){if(n(t))return;throw new Error(`Extension Error: The validator '${e}' must be a function.`)}(e,t),u[e]=t},e.useField=ae,e.useFieldArray=me,e.useFieldError=function(e){const n=T(i),r=e?void 0:t.inject(o);return t.computed((()=>e?null==n?void 0:n.errors.value[t.unref(e)]:null==r?void 0:r.errorMessage.value))},e.useFieldValue=function(e){const n=T(i),r=e?void 0:t.inject(o);return t.computed((()=>e?E(null==n?void 0:n.values,t.unref(e)):t.unref(null==r?void 0:r.value)))},e.useForm=fe,e.useFormErrors=function(){const e=T(i);return e||C("No vee-validate <Form /> or `useForm` was detected in the component tree"),t.computed((()=>(null==e?void 0:e.errors.value)||{}))},e.useFormValues=function(){const e=T(i);return e||C("No vee-validate <Form /> or `useForm` was detected in the component tree"),t.computed((()=>(null==e?void 0:e.values)||{}))},e.useIsFieldDirty=function(e){const n=T(i);let r=e?void 0:t.inject(o);return t.computed((()=>(e&&(r=R(null==n?void 0:n.fieldsByPath.value[t.unref(e)])),r?r.meta.dirty:(C(`field with name ${t.unref(e)} was not found`),!1))))},e.useIsFieldTouched=function(e){const n=T(i);let r=e?void 0:t.inject(o);return t.computed((()=>(e&&(r=R(null==n?void 0:n.fieldsByPath.value[t.unref(e)])),r?r.meta.touched:(C(`field with name ${t.unref(e)} was not found`),!1))))},e.useIsFieldValid=function(e){const n=T(i);let r=e?void 0:t.inject(o);return t.computed((()=>(e&&(r=R(null==n?void 0:n.fieldsByPath.value[t.unref(e)])),r?r.meta.valid:(C(`field with name ${t.unref(e)} was not found`),!1))))},e.useIsFormDirty=function(){const e=T(i);return e||C("No vee-validate <Form /> or `useForm` was detected in the component tree"),t.computed((()=>{var t;return null!==(t=null==e?void 0:e.meta.value.dirty)&&void 0!==t&&t}))},e.useIsFormTouched=function(){const e=T(i);return e||C("No vee-validate <Form /> or `useForm` was detected in the component tree"),t.computed((()=>{var t;return null!==(t=null==e?void 0:e.meta.value.touched)&&void 0!==t&&t}))},e.useIsFormValid=function(){const e=T(i);return e||C("No vee-validate <Form /> or `useForm` was detected in the component tree"),t.computed((()=>{var t;return null!==(t=null==e?void 0:e.meta.value.valid)&&void 0!==t&&t}))},e.useIsSubmitting=function(){const e=T(i);return e||C("No vee-validate <Form /> or `useForm` was detected in the component tree"),t.computed((()=>{var t;return null!==(t=null==e?void 0:e.isSubmitting.value)&&void 0!==t&&t}))},e.useResetForm=function(){const e=T(i);return e||C("No vee-validate <Form /> or `useForm` was detected in the component tree"),function(t){if(e)return e.resetForm(t)}},e.useSubmitCount=function(){const e=T(i);return e||C("No vee-validate <Form /> or `useForm` was detected in the component tree"),t.computed((()=>{var t;return null!==(t=null==e?void 0:e.submitCount.value)&&void 0!==t?t:0}))},e.useSubmitForm=function(e){const t=T(i);t||C("No vee-validate <Form /> or `useForm` was detected in the component tree");const n=t?t.handleSubmit(e):void 0;return function(e){if(n)return n(e)}},e.useValidateField=function(e){const n=T(i);let r=e?void 0:t.inject(o);return function(){return e&&(r=R(null==n?void 0:n.fieldsByPath.value[t.unref(e)])),r?r.validate():(C(`field with name ${t.unref(e)} was not found`),Promise.resolve({errors:[],valid:!0}))}},e.useValidateForm=function(){const e=T(i);return e||C("No vee-validate <Form /> or `useForm` was detected in the component tree"),function(){return e?e.validate():Promise.resolve({results:{},errors:{},valid:!0})}},e.validate=Q,e.validateObject=ee}));
{
"name": "vee-validate",
"version": "4.8.0",
"version": "4.8.1",
"description": "Form Validation for Vue.js",

@@ -36,3 +36,3 @@ "author": "Abdelrahman Awad <logaretm1@gmail.com>",

},
"gitHead": "29b6ede17b2c2a287cbc90819aaa9dd5832958b9"
"gitHead": "03402c606d0b1611d58b2c7505916466fee61dc6"
}

@@ -78,2 +78,51 @@ <p align="center">

#### Composition API
If you want more fine grained control, you can use `useField` function to compose validation logic into your component:
```vue
<script setup>
// MyInputComponent.vue
import { useField } from 'vee-validate';
const props = defineProps<{
name: string;
}>();
// Validator function
const isRequired = value => (value ? true : 'This field is required');
const { value, errorMessage } = useField(props.name, isRequired);
</script>
<template>
<input v-model="value" />
<span>{{ errorMessage }}</span>
</template>
```
Then you can you can use `useForm` to make your form component automatically pick up your input fields declared with `useField` and manage them:
```vue
<script setup>
import { useForm } from 'vee-validate';
import MyInputComponent from '@/components/MyInputComponent.vue';
const { handleSubmit } = useForm();
const onSubmit = handleSubmit(values => {
// Submit to API
console.log(values); // { email: 'email@gmail.com' }
});
</script>
<template>
<form @submit="onSubmit">
<MyInputComponent name="email" />
</form>
</template>
```
You can do so much more than this, for more info [check the composition API documentation](https://vee-validate.logaretm.com/v4/guide/composition-api/validation/).
#### Declarative Components

@@ -103,5 +152,5 @@

<Form v-slot="{ errors }">
<Field name="field" :rules="isRequired" />
<Field name="email" :rules="isRequired" />
<span>{{ errors.field }}</span>
<span>{{ errors.email }}</span>
</Form>

@@ -112,30 +161,2 @@ ```

#### Composition API
If you want more fine grained control, you can use `useField` function to compose validation logic into your component:
```js
import { useField } from 'vee-validate';
export default {
setup() {
// Validator function
const isRequired = value => (value ? true : 'This field is required');
const { value, errorMessage } = useField('field', isRequired);
return {
value,
errorMessage,
};
},
};
```
Then in your template, use `v-model` to bind the `value` to your input and display the errors using `errorMessage`:
```vue
<input name="field" v-model="value" />
<span>{{ errorMessage }}</span>
```
## 📚 Documentation

@@ -142,0 +163,0 @@

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc