vee-validate 3.4.5 → 3.4.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -15
- package/dist/locale/ar.json +1 -1
- package/dist/locale/es.json +3 -1
- package/dist/locale/fa.json +2 -0
- package/dist/rules.js +129 -124
- package/dist/rules.umd.js +129 -124
- package/dist/rules.umd.min.js +6 -1
- package/dist/types/components/Observer.d.ts +2 -1
- package/dist/types/components/Provider.d.ts +1 -0
- package/dist/types/types.d.ts +1 -0
- package/dist/types/utils/assertions.d.ts +0 -4
- package/dist/vee-validate.esm.js +85 -44
- package/dist/vee-validate.full.esm.js +216 -171
- package/dist/vee-validate.full.js +216 -171
- package/dist/vee-validate.full.min.js +6 -1
- package/dist/vee-validate.js +85 -44
- package/dist/vee-validate.min.js +20 -1
- package/package.json +8 -5
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* vee-validate v3.4.
|
|
3
|
-
* (c)
|
|
2
|
+
* vee-validate v3.4.9
|
|
3
|
+
* (c) 2021 Abdelrahman Awad
|
|
4
4
|
* @license MIT
|
|
5
5
|
*/
|
|
6
6
|
(function (global, factory) {
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
size: "The {_field_} field size must be less than {size}KB",
|
|
43
43
|
double: "The {_field_} field must be a valid decimal"
|
|
44
44
|
};
|
|
45
|
-
var en = {
|
|
45
|
+
var en$1 = {
|
|
46
46
|
code: code,
|
|
47
47
|
messages: messages
|
|
48
48
|
};
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
* https://github.com/chriso/validator.js/blob/master/src/lib/alpha.js
|
|
53
53
|
*/
|
|
54
54
|
/* eslint-disable no-misleading-character-class */
|
|
55
|
-
var alpha = {
|
|
55
|
+
var alpha$1 = {
|
|
56
56
|
en: /^[A-Z]*$/i,
|
|
57
57
|
cs: /^[A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]*$/i,
|
|
58
58
|
da: /^[A-ZÆØÅ]*$/i,
|
|
@@ -75,7 +75,8 @@
|
|
|
75
75
|
uk: /^[А-ЩЬЮЯЄІЇҐ]*$/i,
|
|
76
76
|
ar: /^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]*$/,
|
|
77
77
|
az: /^[A-ZÇƏĞİıÖŞÜ]*$/i,
|
|
78
|
-
el: /^[Α-ώ]*$/i
|
|
78
|
+
el: /^[Α-ώ]*$/i,
|
|
79
|
+
ja: /[\u3000-\u303F]|[\u3040-\u309F]|[\u30A0-\u30FF]|[\uFF00-\uFFEF]|[\u4E00-\u9FAF]/g
|
|
79
80
|
};
|
|
80
81
|
var alphaSpaces = {
|
|
81
82
|
en: /^[A-Z\s]*$/i,
|
|
@@ -100,7 +101,8 @@
|
|
|
100
101
|
uk: /^[А-ЩЬЮЯЄІЇҐ\s]*$/i,
|
|
101
102
|
ar: /^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ\s]*$/,
|
|
102
103
|
az: /^[A-ZÇƏĞİıÖŞÜ\s]*$/i,
|
|
103
|
-
el: /^[Α-ώ\s]*$/i
|
|
104
|
+
el: /^[Α-ώ\s]*$/i,
|
|
105
|
+
ja: /[\u3000-\u303F]|[\u3040-\u309F]|[\u30A0-\u30FF]|[\uFF00-\uFFEF]|[\u4E00-\u9FAF]/g
|
|
104
106
|
};
|
|
105
107
|
var alphanumeric = {
|
|
106
108
|
en: /^[0-9A-Z]*$/i,
|
|
@@ -125,7 +127,8 @@
|
|
|
125
127
|
uk: /^[0-9А-ЩЬЮЯЄІЇҐ]*$/i,
|
|
126
128
|
ar: /^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]*$/,
|
|
127
129
|
az: /^[0-9A-ZÇƏĞİıÖŞÜ]*$/i,
|
|
128
|
-
el: /^[0-9Α-ώ]*$/i
|
|
130
|
+
el: /^[0-9Α-ώ]*$/i,
|
|
131
|
+
ja: /[\u3000-\u303F]|[\u3040-\u309F]|[\u30A0-\u30FF]|[\uFF00-\uFFEF]|[\u4E00-\u9FAF]/g
|
|
129
132
|
};
|
|
130
133
|
var alphaDash = {
|
|
131
134
|
en: /^[0-9A-Z_-]*$/i,
|
|
@@ -150,34 +153,35 @@
|
|
|
150
153
|
uk: /^[0-9А-ЩЬЮЯЄІЇҐ_-]*$/i,
|
|
151
154
|
ar: /^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ_-]*$/,
|
|
152
155
|
az: /^[0-9A-ZÇƏĞİıÖŞÜ_-]*$/i,
|
|
153
|
-
el: /^[0-9Α-ώ_-]*$/i
|
|
156
|
+
el: /^[0-9Α-ώ_-]*$/i,
|
|
157
|
+
ja: /[\u3000-\u303F]|[\u3040-\u309F]|[\u30A0-\u30FF]|[\uFF00-\uFFEF]|[\u4E00-\u9FAF]/g
|
|
154
158
|
};
|
|
155
159
|
|
|
156
|
-
var validate = function (value, _a) {
|
|
160
|
+
var validate$s = function (value, _a) {
|
|
157
161
|
var _b = (_a === void 0 ? {} : _a).locale, locale = _b === void 0 ? '' : _b;
|
|
158
162
|
if (Array.isArray(value)) {
|
|
159
|
-
return value.every(function (val) { return validate(val, { locale: locale }); });
|
|
163
|
+
return value.every(function (val) { return validate$s(val, { locale: locale }); });
|
|
160
164
|
}
|
|
161
165
|
// Match at least one locale.
|
|
162
166
|
if (!locale) {
|
|
163
|
-
return Object.keys(alpha).some(function (loc) { return alpha[loc].test(value); });
|
|
167
|
+
return Object.keys(alpha$1).some(function (loc) { return alpha$1[loc].test(value); });
|
|
164
168
|
}
|
|
165
|
-
return (alpha[locale] || alpha.en).test(value);
|
|
169
|
+
return (alpha$1[locale] || alpha$1.en).test(value);
|
|
166
170
|
};
|
|
167
|
-
var params = [
|
|
171
|
+
var params$k = [
|
|
168
172
|
{
|
|
169
173
|
name: 'locale'
|
|
170
174
|
}
|
|
171
175
|
];
|
|
172
|
-
var alpha
|
|
173
|
-
validate: validate,
|
|
174
|
-
params: params
|
|
176
|
+
var alpha = {
|
|
177
|
+
validate: validate$s,
|
|
178
|
+
params: params$k
|
|
175
179
|
};
|
|
176
180
|
|
|
177
|
-
var validate$
|
|
181
|
+
var validate$r = function (value, _a) {
|
|
178
182
|
var _b = (_a === void 0 ? {} : _a).locale, locale = _b === void 0 ? '' : _b;
|
|
179
183
|
if (Array.isArray(value)) {
|
|
180
|
-
return value.every(function (val) { return validate$
|
|
184
|
+
return value.every(function (val) { return validate$r(val, { locale: locale }); });
|
|
181
185
|
}
|
|
182
186
|
// Match at least one locale.
|
|
183
187
|
if (!locale) {
|
|
@@ -185,20 +189,20 @@
|
|
|
185
189
|
}
|
|
186
190
|
return (alphaDash[locale] || alphaDash.en).test(value);
|
|
187
191
|
};
|
|
188
|
-
var params$
|
|
192
|
+
var params$j = [
|
|
189
193
|
{
|
|
190
194
|
name: 'locale'
|
|
191
195
|
}
|
|
192
196
|
];
|
|
193
197
|
var alpha_dash = {
|
|
194
|
-
validate: validate$
|
|
195
|
-
params: params$
|
|
198
|
+
validate: validate$r,
|
|
199
|
+
params: params$j
|
|
196
200
|
};
|
|
197
201
|
|
|
198
|
-
var validate$
|
|
202
|
+
var validate$q = function (value, _a) {
|
|
199
203
|
var _b = (_a === void 0 ? {} : _a).locale, locale = _b === void 0 ? '' : _b;
|
|
200
204
|
if (Array.isArray(value)) {
|
|
201
|
-
return value.every(function (val) { return validate$
|
|
205
|
+
return value.every(function (val) { return validate$q(val, { locale: locale }); });
|
|
202
206
|
}
|
|
203
207
|
// Match at least one locale.
|
|
204
208
|
if (!locale) {
|
|
@@ -206,20 +210,20 @@
|
|
|
206
210
|
}
|
|
207
211
|
return (alphanumeric[locale] || alphanumeric.en).test(value);
|
|
208
212
|
};
|
|
209
|
-
var params$
|
|
213
|
+
var params$i = [
|
|
210
214
|
{
|
|
211
215
|
name: 'locale'
|
|
212
216
|
}
|
|
213
217
|
];
|
|
214
218
|
var alpha_num = {
|
|
215
|
-
validate: validate$
|
|
216
|
-
params: params$
|
|
219
|
+
validate: validate$q,
|
|
220
|
+
params: params$i
|
|
217
221
|
};
|
|
218
222
|
|
|
219
|
-
var validate$
|
|
223
|
+
var validate$p = function (value, _a) {
|
|
220
224
|
var _b = (_a === void 0 ? {} : _a).locale, locale = _b === void 0 ? '' : _b;
|
|
221
225
|
if (Array.isArray(value)) {
|
|
222
|
-
return value.every(function (val) { return validate$
|
|
226
|
+
return value.every(function (val) { return validate$p(val, { locale: locale }); });
|
|
223
227
|
}
|
|
224
228
|
// Match at least one locale.
|
|
225
229
|
if (!locale) {
|
|
@@ -227,24 +231,24 @@
|
|
|
227
231
|
}
|
|
228
232
|
return (alphaSpaces[locale] || alphaSpaces.en).test(value);
|
|
229
233
|
};
|
|
230
|
-
var params$
|
|
234
|
+
var params$h = [
|
|
231
235
|
{
|
|
232
236
|
name: 'locale'
|
|
233
237
|
}
|
|
234
238
|
];
|
|
235
239
|
var alpha_spaces = {
|
|
236
|
-
validate: validate$
|
|
237
|
-
params: params$
|
|
240
|
+
validate: validate$p,
|
|
241
|
+
params: params$h
|
|
238
242
|
};
|
|
239
243
|
|
|
240
|
-
var validate$
|
|
244
|
+
var validate$o = function (value, _a) {
|
|
241
245
|
var _b = _a === void 0 ? {} : _a, min = _b.min, max = _b.max;
|
|
242
246
|
if (Array.isArray(value)) {
|
|
243
|
-
return value.every(function (val) { return !!validate$
|
|
247
|
+
return value.every(function (val) { return !!validate$o(val, { min: min, max: max }); });
|
|
244
248
|
}
|
|
245
249
|
return Number(min) <= value && Number(max) >= value;
|
|
246
250
|
};
|
|
247
|
-
var params$
|
|
251
|
+
var params$g = [
|
|
248
252
|
{
|
|
249
253
|
name: 'min'
|
|
250
254
|
},
|
|
@@ -253,34 +257,34 @@
|
|
|
253
257
|
}
|
|
254
258
|
];
|
|
255
259
|
var between = {
|
|
256
|
-
validate: validate$
|
|
257
|
-
params: params$
|
|
260
|
+
validate: validate$o,
|
|
261
|
+
params: params$g
|
|
258
262
|
};
|
|
259
263
|
|
|
260
|
-
var validate$
|
|
264
|
+
var validate$n = function (value, _a) {
|
|
261
265
|
var target = _a.target;
|
|
262
266
|
return String(value) === String(target);
|
|
263
267
|
};
|
|
264
|
-
var params$
|
|
268
|
+
var params$f = [
|
|
265
269
|
{
|
|
266
270
|
name: 'target',
|
|
267
271
|
isTarget: true
|
|
268
272
|
}
|
|
269
273
|
];
|
|
270
274
|
var confirmed = {
|
|
271
|
-
validate: validate$
|
|
272
|
-
params: params$
|
|
275
|
+
validate: validate$n,
|
|
276
|
+
params: params$f
|
|
273
277
|
};
|
|
274
278
|
|
|
275
|
-
var validate$
|
|
279
|
+
var validate$m = function (value, _a) {
|
|
276
280
|
var length = _a.length;
|
|
277
281
|
if (Array.isArray(value)) {
|
|
278
|
-
return value.every(function (val) { return validate$
|
|
282
|
+
return value.every(function (val) { return validate$m(val, { length: length }); });
|
|
279
283
|
}
|
|
280
284
|
var strVal = String(value);
|
|
281
285
|
return /^[0-9]*$/.test(strVal) && strVal.length === length;
|
|
282
286
|
};
|
|
283
|
-
var params$
|
|
287
|
+
var params$e = [
|
|
284
288
|
{
|
|
285
289
|
name: 'length',
|
|
286
290
|
cast: function (value) {
|
|
@@ -289,8 +293,8 @@
|
|
|
289
293
|
}
|
|
290
294
|
];
|
|
291
295
|
var digits = {
|
|
292
|
-
validate: validate$
|
|
293
|
-
params: params$
|
|
296
|
+
validate: validate$m,
|
|
297
|
+
params: params$e
|
|
294
298
|
};
|
|
295
299
|
|
|
296
300
|
var validateImage = function (file, width, height) {
|
|
@@ -302,7 +306,7 @@
|
|
|
302
306
|
image.src = URL.createObjectURL(file);
|
|
303
307
|
});
|
|
304
308
|
};
|
|
305
|
-
var validate$
|
|
309
|
+
var validate$l = function (files, _a) {
|
|
306
310
|
var width = _a.width, height = _a.height;
|
|
307
311
|
var list = [];
|
|
308
312
|
files = Array.isArray(files) ? files : [files];
|
|
@@ -317,7 +321,7 @@
|
|
|
317
321
|
return values.every(function (v) { return v; });
|
|
318
322
|
});
|
|
319
323
|
};
|
|
320
|
-
var params$
|
|
324
|
+
var params$d = [
|
|
321
325
|
{
|
|
322
326
|
name: 'width',
|
|
323
327
|
cast: function (value) {
|
|
@@ -332,11 +336,11 @@
|
|
|
332
336
|
}
|
|
333
337
|
];
|
|
334
338
|
var dimensions = {
|
|
335
|
-
validate: validate$
|
|
336
|
-
params: params$
|
|
339
|
+
validate: validate$l,
|
|
340
|
+
params: params$d
|
|
337
341
|
};
|
|
338
342
|
|
|
339
|
-
var validate$
|
|
343
|
+
var validate$k = function (value, _a) {
|
|
340
344
|
var multiple = (_a === void 0 ? {} : _a).multiple;
|
|
341
345
|
// eslint-disable-next-line
|
|
342
346
|
var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
|
|
@@ -350,15 +354,15 @@
|
|
|
350
354
|
}
|
|
351
355
|
return re.test(String(value));
|
|
352
356
|
};
|
|
353
|
-
var params$
|
|
357
|
+
var params$c = [
|
|
354
358
|
{
|
|
355
359
|
name: 'multiple',
|
|
356
360
|
default: false
|
|
357
361
|
}
|
|
358
362
|
];
|
|
359
363
|
var email = {
|
|
360
|
-
validate: validate$
|
|
361
|
-
params: params$
|
|
364
|
+
validate: validate$k,
|
|
365
|
+
params: params$c
|
|
362
366
|
};
|
|
363
367
|
|
|
364
368
|
function isNaN$1(value) {
|
|
@@ -384,34 +388,6 @@
|
|
|
384
388
|
}
|
|
385
389
|
return lhs === rhs;
|
|
386
390
|
}
|
|
387
|
-
/**
|
|
388
|
-
* Shallow object comparison.
|
|
389
|
-
*/
|
|
390
|
-
function isEqual(lhs, rhs) {
|
|
391
|
-
if (lhs instanceof RegExp && rhs instanceof RegExp) {
|
|
392
|
-
return isEqual(lhs.source, rhs.source) && isEqual(lhs.flags, rhs.flags);
|
|
393
|
-
}
|
|
394
|
-
if (Array.isArray(lhs) && Array.isArray(rhs)) {
|
|
395
|
-
if (lhs.length !== rhs.length)
|
|
396
|
-
return false;
|
|
397
|
-
for (var i = 0; i < lhs.length; i++) {
|
|
398
|
-
if (!isEqual(lhs[i], rhs[i])) {
|
|
399
|
-
return false;
|
|
400
|
-
}
|
|
401
|
-
}
|
|
402
|
-
return true;
|
|
403
|
-
}
|
|
404
|
-
// if both are objects, compare each key recursively.
|
|
405
|
-
if (isObject(lhs) && isObject(rhs)) {
|
|
406
|
-
return (Object.keys(lhs).every(function (key) {
|
|
407
|
-
return isEqual(lhs[key], rhs[key]);
|
|
408
|
-
}) &&
|
|
409
|
-
Object.keys(rhs).every(function (key) {
|
|
410
|
-
return isEqual(lhs[key], rhs[key]);
|
|
411
|
-
}));
|
|
412
|
-
}
|
|
413
|
-
return isRefEqual(lhs, rhs);
|
|
414
|
-
}
|
|
415
391
|
// Checks if a given value is not an empty string or null or undefined.
|
|
416
392
|
function isSpecified(val) {
|
|
417
393
|
if (val === '') {
|
|
@@ -419,6 +395,7 @@
|
|
|
419
395
|
}
|
|
420
396
|
return !isNullOrUndefined(val);
|
|
421
397
|
}
|
|
398
|
+
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
422
399
|
function isCallable(fn) {
|
|
423
400
|
return typeof fn === 'function';
|
|
424
401
|
}
|
|
@@ -551,9 +528,9 @@
|
|
|
551
528
|
});
|
|
552
529
|
}
|
|
553
530
|
|
|
554
|
-
var validate$
|
|
531
|
+
var validate$j = function (value, options) {
|
|
555
532
|
if (Array.isArray(value)) {
|
|
556
|
-
return value.every(function (val) { return validate$
|
|
533
|
+
return value.every(function (val) { return validate$j(val, options); });
|
|
557
534
|
}
|
|
558
535
|
return toArray(options).some(function (item) {
|
|
559
536
|
// eslint-disable-next-line
|
|
@@ -561,17 +538,17 @@
|
|
|
561
538
|
});
|
|
562
539
|
};
|
|
563
540
|
var oneOf = {
|
|
564
|
-
validate: validate$
|
|
541
|
+
validate: validate$j
|
|
565
542
|
};
|
|
566
543
|
|
|
567
|
-
var validate$
|
|
568
|
-
return !validate$
|
|
544
|
+
var validate$i = function (value, args) {
|
|
545
|
+
return !validate$j(value, args);
|
|
569
546
|
};
|
|
570
547
|
var excluded = {
|
|
571
|
-
validate: validate$
|
|
548
|
+
validate: validate$i
|
|
572
549
|
};
|
|
573
550
|
|
|
574
|
-
var validate$
|
|
551
|
+
var validate$h = function (files, extensions) {
|
|
575
552
|
var regex = new RegExp(".(" + extensions.join('|') + ")$", 'i');
|
|
576
553
|
if (Array.isArray(files)) {
|
|
577
554
|
return files.every(function (file) { return regex.test(file.name); });
|
|
@@ -579,10 +556,10 @@
|
|
|
579
556
|
return regex.test(files.name);
|
|
580
557
|
};
|
|
581
558
|
var ext = {
|
|
582
|
-
validate: validate$
|
|
559
|
+
validate: validate$h
|
|
583
560
|
};
|
|
584
561
|
|
|
585
|
-
var validate$
|
|
562
|
+
var validate$g = function (files) {
|
|
586
563
|
var regex = /\.(jpg|svg|jpeg|png|bmp|gif|webp)$/i;
|
|
587
564
|
if (Array.isArray(files)) {
|
|
588
565
|
return files.every(function (file) { return regex.test(file.name); });
|
|
@@ -590,34 +567,34 @@
|
|
|
590
567
|
return regex.test(files.name);
|
|
591
568
|
};
|
|
592
569
|
var image = {
|
|
593
|
-
validate: validate$
|
|
570
|
+
validate: validate$g
|
|
594
571
|
};
|
|
595
572
|
|
|
596
|
-
var validate$
|
|
573
|
+
var validate$f = function (value) {
|
|
597
574
|
if (Array.isArray(value)) {
|
|
598
575
|
return value.every(function (val) { return /^-?[0-9]+$/.test(String(val)); });
|
|
599
576
|
}
|
|
600
577
|
return /^-?[0-9]+$/.test(String(value));
|
|
601
578
|
};
|
|
602
579
|
var integer = {
|
|
603
|
-
validate: validate$
|
|
580
|
+
validate: validate$f
|
|
604
581
|
};
|
|
605
582
|
|
|
606
583
|
var validate$e = function (value, _a) {
|
|
607
584
|
var other = _a.other;
|
|
608
585
|
return value === other;
|
|
609
586
|
};
|
|
610
|
-
var params$
|
|
587
|
+
var params$b = [
|
|
611
588
|
{
|
|
612
589
|
name: 'other'
|
|
613
590
|
}
|
|
614
591
|
];
|
|
615
592
|
var is = {
|
|
616
593
|
validate: validate$e,
|
|
617
|
-
params: params$
|
|
594
|
+
params: params$b
|
|
618
595
|
};
|
|
619
596
|
|
|
620
|
-
var validate$
|
|
597
|
+
var validate$d = function (value, _a) {
|
|
621
598
|
var other = _a.other;
|
|
622
599
|
return value !== other;
|
|
623
600
|
};
|
|
@@ -627,11 +604,11 @@
|
|
|
627
604
|
}
|
|
628
605
|
];
|
|
629
606
|
var is_not = {
|
|
630
|
-
validate: validate$
|
|
607
|
+
validate: validate$d,
|
|
631
608
|
params: params$a
|
|
632
609
|
};
|
|
633
610
|
|
|
634
|
-
var validate$
|
|
611
|
+
var validate$c = function (value, _a) {
|
|
635
612
|
var length = _a.length;
|
|
636
613
|
if (isNullOrUndefined(value)) {
|
|
637
614
|
return false;
|
|
@@ -647,28 +624,28 @@
|
|
|
647
624
|
}
|
|
648
625
|
return value.length === length;
|
|
649
626
|
};
|
|
650
|
-
var params$
|
|
627
|
+
var params$9 = [
|
|
651
628
|
{
|
|
652
629
|
name: 'length',
|
|
653
630
|
cast: function (value) { return Number(value); }
|
|
654
631
|
}
|
|
655
632
|
];
|
|
656
633
|
var length = {
|
|
657
|
-
validate: validate$
|
|
658
|
-
params: params$
|
|
634
|
+
validate: validate$c,
|
|
635
|
+
params: params$9
|
|
659
636
|
};
|
|
660
637
|
|
|
661
|
-
var validate$
|
|
638
|
+
var validate$b = function (value, _a) {
|
|
662
639
|
var length = _a.length;
|
|
663
640
|
if (isNullOrUndefined(value)) {
|
|
664
641
|
return length >= 0;
|
|
665
642
|
}
|
|
666
643
|
if (Array.isArray(value)) {
|
|
667
|
-
return value.every(function (val) { return validate$
|
|
644
|
+
return value.every(function (val) { return validate$b(val, { length: length }); });
|
|
668
645
|
}
|
|
669
646
|
return String(value).length <= length;
|
|
670
647
|
};
|
|
671
|
-
var params$
|
|
648
|
+
var params$8 = [
|
|
672
649
|
{
|
|
673
650
|
name: 'length',
|
|
674
651
|
cast: function (value) {
|
|
@@ -677,21 +654,21 @@
|
|
|
677
654
|
}
|
|
678
655
|
];
|
|
679
656
|
var max = {
|
|
680
|
-
validate: validate$
|
|
681
|
-
params: params$
|
|
657
|
+
validate: validate$b,
|
|
658
|
+
params: params$8
|
|
682
659
|
};
|
|
683
660
|
|
|
684
|
-
var validate$
|
|
661
|
+
var validate$a = function (value, _a) {
|
|
685
662
|
var max = _a.max;
|
|
686
663
|
if (isNullOrUndefined(value) || value === '') {
|
|
687
664
|
return false;
|
|
688
665
|
}
|
|
689
666
|
if (Array.isArray(value)) {
|
|
690
|
-
return value.length > 0 && value.every(function (val) { return validate$
|
|
667
|
+
return value.length > 0 && value.every(function (val) { return validate$a(val, { max: max }); });
|
|
691
668
|
}
|
|
692
669
|
return Number(value) <= max;
|
|
693
670
|
};
|
|
694
|
-
var params$
|
|
671
|
+
var params$7 = [
|
|
695
672
|
{
|
|
696
673
|
name: 'max',
|
|
697
674
|
cast: function (value) {
|
|
@@ -700,11 +677,11 @@
|
|
|
700
677
|
}
|
|
701
678
|
];
|
|
702
679
|
var max_value = {
|
|
703
|
-
validate: validate$
|
|
704
|
-
params: params$
|
|
680
|
+
validate: validate$a,
|
|
681
|
+
params: params$7
|
|
705
682
|
};
|
|
706
683
|
|
|
707
|
-
var validate$
|
|
684
|
+
var validate$9 = function (files, mimes) {
|
|
708
685
|
var regex = new RegExp(mimes.join('|').replace('*', '.+') + "$", 'i');
|
|
709
686
|
if (Array.isArray(files)) {
|
|
710
687
|
return files.every(function (file) { return regex.test(file.type); });
|
|
@@ -712,20 +689,20 @@
|
|
|
712
689
|
return regex.test(files.type);
|
|
713
690
|
};
|
|
714
691
|
var mimes = {
|
|
715
|
-
validate: validate$
|
|
692
|
+
validate: validate$9
|
|
716
693
|
};
|
|
717
694
|
|
|
718
|
-
var validate$
|
|
695
|
+
var validate$8 = function (value, _a) {
|
|
719
696
|
var length = _a.length;
|
|
720
697
|
if (isNullOrUndefined(value)) {
|
|
721
698
|
return false;
|
|
722
699
|
}
|
|
723
700
|
if (Array.isArray(value)) {
|
|
724
|
-
return value.every(function (val) { return validate$
|
|
701
|
+
return value.every(function (val) { return validate$8(val, { length: length }); });
|
|
725
702
|
}
|
|
726
703
|
return String(value).length >= length;
|
|
727
704
|
};
|
|
728
|
-
var params$
|
|
705
|
+
var params$6 = [
|
|
729
706
|
{
|
|
730
707
|
name: 'length',
|
|
731
708
|
cast: function (value) {
|
|
@@ -734,21 +711,21 @@
|
|
|
734
711
|
}
|
|
735
712
|
];
|
|
736
713
|
var min = {
|
|
737
|
-
validate: validate$
|
|
738
|
-
params: params$
|
|
714
|
+
validate: validate$8,
|
|
715
|
+
params: params$6
|
|
739
716
|
};
|
|
740
717
|
|
|
741
|
-
var validate$
|
|
718
|
+
var validate$7 = function (value, _a) {
|
|
742
719
|
var min = _a.min;
|
|
743
720
|
if (isNullOrUndefined(value) || value === '') {
|
|
744
721
|
return false;
|
|
745
722
|
}
|
|
746
723
|
if (Array.isArray(value)) {
|
|
747
|
-
return value.length > 0 && value.every(function (val) { return validate$
|
|
724
|
+
return value.length > 0 && value.every(function (val) { return validate$7(val, { min: min }); });
|
|
748
725
|
}
|
|
749
726
|
return Number(value) >= min;
|
|
750
727
|
};
|
|
751
|
-
var params$
|
|
728
|
+
var params$5 = [
|
|
752
729
|
{
|
|
753
730
|
name: 'min',
|
|
754
731
|
cast: function (value) {
|
|
@@ -757,16 +734,16 @@
|
|
|
757
734
|
}
|
|
758
735
|
];
|
|
759
736
|
var min_value = {
|
|
760
|
-
validate: validate$
|
|
761
|
-
params: params$
|
|
737
|
+
validate: validate$7,
|
|
738
|
+
params: params$5
|
|
762
739
|
};
|
|
763
740
|
|
|
764
741
|
var ar = /^[٠١٢٣٤٥٦٧٨٩]+$/;
|
|
765
|
-
var en
|
|
766
|
-
var validate$
|
|
742
|
+
var en = /^[0-9]+$/;
|
|
743
|
+
var validate$6 = function (value) {
|
|
767
744
|
var testValue = function (val) {
|
|
768
745
|
var strValue = String(val);
|
|
769
|
-
return en
|
|
746
|
+
return en.test(strValue) || ar.test(strValue);
|
|
770
747
|
};
|
|
771
748
|
if (Array.isArray(value)) {
|
|
772
749
|
return value.every(testValue);
|
|
@@ -774,17 +751,17 @@
|
|
|
774
751
|
return testValue(value);
|
|
775
752
|
};
|
|
776
753
|
var numeric = {
|
|
777
|
-
validate: validate$
|
|
754
|
+
validate: validate$6
|
|
778
755
|
};
|
|
779
756
|
|
|
780
|
-
var validate$
|
|
757
|
+
var validate$5 = function (value, _a) {
|
|
781
758
|
var regex = _a.regex;
|
|
782
759
|
if (Array.isArray(value)) {
|
|
783
|
-
return value.every(function (val) { return validate$
|
|
760
|
+
return value.every(function (val) { return validate$5(val, { regex: regex }); });
|
|
784
761
|
}
|
|
785
762
|
return regex.test(String(value));
|
|
786
763
|
};
|
|
787
|
-
var params$
|
|
764
|
+
var params$4 = [
|
|
788
765
|
{
|
|
789
766
|
name: 'regex',
|
|
790
767
|
cast: function (value) {
|
|
@@ -796,11 +773,11 @@
|
|
|
796
773
|
}
|
|
797
774
|
];
|
|
798
775
|
var regex = {
|
|
799
|
-
validate: validate$
|
|
800
|
-
params: params$
|
|
776
|
+
validate: validate$5,
|
|
777
|
+
params: params$4
|
|
801
778
|
};
|
|
802
779
|
|
|
803
|
-
var validate$
|
|
780
|
+
var validate$4 = function (value, _a) {
|
|
804
781
|
var allowFalse = (_a === void 0 ? { allowFalse: true } : _a).allowFalse;
|
|
805
782
|
var result = {
|
|
806
783
|
valid: false,
|
|
@@ -816,23 +793,23 @@
|
|
|
816
793
|
result.valid = !!String(value).trim().length;
|
|
817
794
|
return result;
|
|
818
795
|
};
|
|
819
|
-
var computesRequired = true;
|
|
820
|
-
var params$
|
|
796
|
+
var computesRequired$1 = true;
|
|
797
|
+
var params$3 = [
|
|
821
798
|
{
|
|
822
799
|
name: 'allowFalse',
|
|
823
800
|
default: true
|
|
824
801
|
}
|
|
825
802
|
];
|
|
826
803
|
var required = {
|
|
827
|
-
validate: validate$
|
|
828
|
-
params: params$
|
|
829
|
-
computesRequired: computesRequired
|
|
804
|
+
validate: validate$4,
|
|
805
|
+
params: params$3,
|
|
806
|
+
computesRequired: computesRequired$1
|
|
830
807
|
};
|
|
831
808
|
|
|
832
809
|
var testEmpty = function (value) {
|
|
833
810
|
return isEmptyArray(value) || includes([false, null, undefined], value) || !String(value).trim().length;
|
|
834
811
|
};
|
|
835
|
-
var validate$
|
|
812
|
+
var validate$3 = function (value, _a) {
|
|
836
813
|
var target = _a.target, values = _a.values;
|
|
837
814
|
var required;
|
|
838
815
|
if (values && values.length) {
|
|
@@ -856,7 +833,7 @@
|
|
|
856
833
|
required: required
|
|
857
834
|
};
|
|
858
835
|
};
|
|
859
|
-
var params$
|
|
836
|
+
var params$2 = [
|
|
860
837
|
{
|
|
861
838
|
name: 'target',
|
|
862
839
|
isTarget: true
|
|
@@ -865,14 +842,14 @@
|
|
|
865
842
|
name: 'values'
|
|
866
843
|
}
|
|
867
844
|
];
|
|
868
|
-
var computesRequired
|
|
845
|
+
var computesRequired = true;
|
|
869
846
|
var required_if = {
|
|
870
|
-
validate: validate$
|
|
871
|
-
params: params$
|
|
872
|
-
computesRequired: computesRequired
|
|
847
|
+
validate: validate$3,
|
|
848
|
+
params: params$2,
|
|
849
|
+
computesRequired: computesRequired
|
|
873
850
|
};
|
|
874
851
|
|
|
875
|
-
var validate$
|
|
852
|
+
var validate$2 = function (files, _a) {
|
|
876
853
|
var size = _a.size;
|
|
877
854
|
if (isNaN(size)) {
|
|
878
855
|
return false;
|
|
@@ -888,7 +865,7 @@
|
|
|
888
865
|
}
|
|
889
866
|
return true;
|
|
890
867
|
};
|
|
891
|
-
var params$
|
|
868
|
+
var params$1 = [
|
|
892
869
|
{
|
|
893
870
|
name: 'size',
|
|
894
871
|
cast: function (value) {
|
|
@@ -897,11 +874,11 @@
|
|
|
897
874
|
}
|
|
898
875
|
];
|
|
899
876
|
var size = {
|
|
900
|
-
validate: validate$
|
|
901
|
-
params: params$
|
|
877
|
+
validate: validate$2,
|
|
878
|
+
params: params$1
|
|
902
879
|
};
|
|
903
880
|
|
|
904
|
-
var validate$
|
|
881
|
+
var validate$1 = function (value, params) {
|
|
905
882
|
var _a = params || {}, _b = _a.decimals, decimals = _b === void 0 ? 0 : _b, _c = _a.separator, separator = _c === void 0 ? 'dot' : _c;
|
|
906
883
|
var separators = {
|
|
907
884
|
dot: '.',
|
|
@@ -911,7 +888,7 @@
|
|
|
911
888
|
var regex = new RegExp("^-?\\d+\\" + (separators[separator] || '.') + "\\d" + regexPart + "$");
|
|
912
889
|
return Array.isArray(value) ? value.every(function (val) { return regex.test(String(val)); }) : regex.test(String(value));
|
|
913
890
|
};
|
|
914
|
-
var params
|
|
891
|
+
var params = [
|
|
915
892
|
{
|
|
916
893
|
name: 'decimals',
|
|
917
894
|
default: 0
|
|
@@ -922,8 +899,8 @@
|
|
|
922
899
|
}
|
|
923
900
|
];
|
|
924
901
|
var double = {
|
|
925
|
-
validate: validate$
|
|
926
|
-
params: params
|
|
902
|
+
validate: validate$1,
|
|
903
|
+
params: params
|
|
927
904
|
};
|
|
928
905
|
|
|
929
906
|
/* eslint-disable camelcase */
|
|
@@ -933,7 +910,7 @@
|
|
|
933
910
|
alpha_dash: alpha_dash,
|
|
934
911
|
alpha_num: alpha_num,
|
|
935
912
|
alpha_spaces: alpha_spaces,
|
|
936
|
-
alpha: alpha
|
|
913
|
+
alpha: alpha,
|
|
937
914
|
between: between,
|
|
938
915
|
confirmed: confirmed,
|
|
939
916
|
digits: digits,
|
|
@@ -1386,7 +1363,7 @@
|
|
|
1386
1363
|
/**
|
|
1387
1364
|
* Validates a value against the rules.
|
|
1388
1365
|
*/
|
|
1389
|
-
function validate
|
|
1366
|
+
function validate(value, rules, options) {
|
|
1390
1367
|
if (options === void 0) { options = {}; }
|
|
1391
1368
|
return __awaiter(this, void 0, void 0, function () {
|
|
1392
1369
|
var shouldBail, skipIfEmpty, field, result, errors, failedRules, regenerateMap;
|
|
@@ -1419,6 +1396,7 @@
|
|
|
1419
1396
|
});
|
|
1420
1397
|
return [2 /*return*/, {
|
|
1421
1398
|
valid: result.valid,
|
|
1399
|
+
required: result.required,
|
|
1422
1400
|
errors: errors,
|
|
1423
1401
|
failedRules: failedRules,
|
|
1424
1402
|
regenerateMap: regenerateMap
|
|
@@ -1433,15 +1411,16 @@
|
|
|
1433
1411
|
function _validate(field, value, _a) {
|
|
1434
1412
|
var _b = (_a === void 0 ? {} : _a).isInitial, isInitial = _b === void 0 ? false : _b;
|
|
1435
1413
|
return __awaiter(this, void 0, void 0, function () {
|
|
1436
|
-
var _c, shouldSkip, errors, rules, length, i, rule, result;
|
|
1414
|
+
var _c, shouldSkip, required, errors, rules, length, i, rule, result;
|
|
1437
1415
|
return __generator(this, function (_d) {
|
|
1438
1416
|
switch (_d.label) {
|
|
1439
1417
|
case 0: return [4 /*yield*/, _shouldSkip(field, value)];
|
|
1440
1418
|
case 1:
|
|
1441
|
-
_c = _d.sent(), shouldSkip = _c.shouldSkip, errors = _c.errors;
|
|
1419
|
+
_c = _d.sent(), shouldSkip = _c.shouldSkip, required = _c.required, errors = _c.errors;
|
|
1442
1420
|
if (shouldSkip) {
|
|
1443
1421
|
return [2 /*return*/, {
|
|
1444
1422
|
valid: !errors.length,
|
|
1423
|
+
required: required,
|
|
1445
1424
|
errors: errors
|
|
1446
1425
|
}];
|
|
1447
1426
|
}
|
|
@@ -1466,6 +1445,7 @@
|
|
|
1466
1445
|
if (field.bails) {
|
|
1467
1446
|
return [2 /*return*/, {
|
|
1468
1447
|
valid: false,
|
|
1448
|
+
required: required,
|
|
1469
1449
|
errors: errors
|
|
1470
1450
|
}];
|
|
1471
1451
|
}
|
|
@@ -1476,6 +1456,7 @@
|
|
|
1476
1456
|
return [3 /*break*/, 2];
|
|
1477
1457
|
case 5: return [2 /*return*/, {
|
|
1478
1458
|
valid: !errors.length,
|
|
1459
|
+
required: required,
|
|
1479
1460
|
errors: errors
|
|
1480
1461
|
}];
|
|
1481
1462
|
}
|
|
@@ -1493,7 +1474,6 @@
|
|
|
1493
1474
|
errors = [];
|
|
1494
1475
|
isEmpty = isNullOrUndefined(value) || value === '' || isEmptyArray(value);
|
|
1495
1476
|
isEmptyAndOptional = isEmpty && field.skipIfEmpty;
|
|
1496
|
-
isRequired = false;
|
|
1497
1477
|
i = 0;
|
|
1498
1478
|
_a.label = 1;
|
|
1499
1479
|
case 1:
|
|
@@ -1508,8 +1488,8 @@
|
|
|
1508
1488
|
if (!isObject(result)) {
|
|
1509
1489
|
throw new Error('Require rules has to return an object (see docs)');
|
|
1510
1490
|
}
|
|
1511
|
-
if (result.required) {
|
|
1512
|
-
isRequired =
|
|
1491
|
+
if (result.required !== undefined) {
|
|
1492
|
+
isRequired = result.required;
|
|
1513
1493
|
}
|
|
1514
1494
|
if (!result.valid && result.error) {
|
|
1515
1495
|
errors.push(result.error);
|
|
@@ -1517,6 +1497,7 @@
|
|
|
1517
1497
|
if (field.bails) {
|
|
1518
1498
|
return [2 /*return*/, {
|
|
1519
1499
|
shouldSkip: true,
|
|
1500
|
+
required: result.required,
|
|
1520
1501
|
errors: errors
|
|
1521
1502
|
}];
|
|
1522
1503
|
}
|
|
@@ -1529,6 +1510,7 @@
|
|
|
1529
1510
|
if (isEmpty && !isRequired && !field.skipIfEmpty) {
|
|
1530
1511
|
return [2 /*return*/, {
|
|
1531
1512
|
shouldSkip: false,
|
|
1513
|
+
required: isRequired,
|
|
1532
1514
|
errors: errors
|
|
1533
1515
|
}];
|
|
1534
1516
|
}
|
|
@@ -1536,12 +1518,14 @@
|
|
|
1536
1518
|
if (!field.bails && !isEmptyAndOptional) {
|
|
1537
1519
|
return [2 /*return*/, {
|
|
1538
1520
|
shouldSkip: false,
|
|
1521
|
+
required: isRequired,
|
|
1539
1522
|
errors: errors
|
|
1540
1523
|
}];
|
|
1541
1524
|
}
|
|
1542
1525
|
// skip if the field is not required and has an empty value.
|
|
1543
1526
|
return [2 /*return*/, {
|
|
1544
1527
|
shouldSkip: !isRequired && isEmpty,
|
|
1528
|
+
required: isRequired,
|
|
1545
1529
|
errors: errors
|
|
1546
1530
|
}];
|
|
1547
1531
|
}
|
|
@@ -1687,6 +1671,51 @@
|
|
|
1687
1671
|
return values;
|
|
1688
1672
|
}
|
|
1689
1673
|
|
|
1674
|
+
// do not edit .js files directly - edit src/index.jst
|
|
1675
|
+
|
|
1676
|
+
|
|
1677
|
+
|
|
1678
|
+
var fastDeepEqual = function equal(a, b) {
|
|
1679
|
+
if (a === b) return true;
|
|
1680
|
+
|
|
1681
|
+
if (a && b && typeof a == 'object' && typeof b == 'object') {
|
|
1682
|
+
if (a.constructor !== b.constructor) return false;
|
|
1683
|
+
|
|
1684
|
+
var length, i, keys;
|
|
1685
|
+
if (Array.isArray(a)) {
|
|
1686
|
+
length = a.length;
|
|
1687
|
+
if (length != b.length) return false;
|
|
1688
|
+
for (i = length; i-- !== 0;)
|
|
1689
|
+
if (!equal(a[i], b[i])) return false;
|
|
1690
|
+
return true;
|
|
1691
|
+
}
|
|
1692
|
+
|
|
1693
|
+
|
|
1694
|
+
|
|
1695
|
+
if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;
|
|
1696
|
+
if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();
|
|
1697
|
+
if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();
|
|
1698
|
+
|
|
1699
|
+
keys = Object.keys(a);
|
|
1700
|
+
length = keys.length;
|
|
1701
|
+
if (length !== Object.keys(b).length) return false;
|
|
1702
|
+
|
|
1703
|
+
for (i = length; i-- !== 0;)
|
|
1704
|
+
if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;
|
|
1705
|
+
|
|
1706
|
+
for (i = length; i-- !== 0;) {
|
|
1707
|
+
var key = keys[i];
|
|
1708
|
+
|
|
1709
|
+
if (!equal(a[key], b[key])) return false;
|
|
1710
|
+
}
|
|
1711
|
+
|
|
1712
|
+
return true;
|
|
1713
|
+
}
|
|
1714
|
+
|
|
1715
|
+
// true if both NaN, false otherwise
|
|
1716
|
+
return a!==a && b!==b;
|
|
1717
|
+
};
|
|
1718
|
+
|
|
1690
1719
|
var isEvent = function (evt) {
|
|
1691
1720
|
if (!evt) {
|
|
1692
1721
|
return false;
|
|
@@ -2081,7 +2110,7 @@
|
|
|
2081
2110
|
}
|
|
2082
2111
|
|
|
2083
2112
|
var PROVIDER_COUNTER = 0;
|
|
2084
|
-
function data() {
|
|
2113
|
+
function data$1() {
|
|
2085
2114
|
var errors = [];
|
|
2086
2115
|
var fieldName = '';
|
|
2087
2116
|
var defaultValues = {
|
|
@@ -2098,6 +2127,7 @@
|
|
|
2098
2127
|
return defaultValues;
|
|
2099
2128
|
}
|
|
2100
2129
|
var ValidationProvider = Vue__default['default'].extend({
|
|
2130
|
+
name: 'ValidationProvider',
|
|
2101
2131
|
inject: {
|
|
2102
2132
|
$_veeObserver: {
|
|
2103
2133
|
from: '$_veeObserver',
|
|
@@ -2171,11 +2201,11 @@
|
|
|
2171
2201
|
rules: {
|
|
2172
2202
|
deep: true,
|
|
2173
2203
|
handler: function (val, oldVal) {
|
|
2174
|
-
this._needsValidation = !
|
|
2204
|
+
this._needsValidation = !fastDeepEqual(val, oldVal);
|
|
2175
2205
|
}
|
|
2176
2206
|
}
|
|
2177
2207
|
},
|
|
2178
|
-
data: data,
|
|
2208
|
+
data: data$1,
|
|
2179
2209
|
computed: {
|
|
2180
2210
|
fieldDeps: function () {
|
|
2181
2211
|
var _this = this;
|
|
@@ -2255,7 +2285,7 @@
|
|
|
2255
2285
|
return;
|
|
2256
2286
|
}
|
|
2257
2287
|
var resolved = getConfig().useConstraintAttrs ? resolveRules(input) : {};
|
|
2258
|
-
if (!
|
|
2288
|
+
if (!fastDeepEqual(_this._resolvedRules, resolved)) {
|
|
2259
2289
|
_this._needsValidation = true;
|
|
2260
2290
|
}
|
|
2261
2291
|
if (isHTMLNode(input)) {
|
|
@@ -2288,7 +2318,7 @@
|
|
|
2288
2318
|
syncValue: function (v) {
|
|
2289
2319
|
var value = normalizeEventValue(v);
|
|
2290
2320
|
this.value = value;
|
|
2291
|
-
this.flags.changed = this.initialValue
|
|
2321
|
+
this.flags.changed = !fastDeepEqual(this.initialValue, value);
|
|
2292
2322
|
},
|
|
2293
2323
|
reset: function () {
|
|
2294
2324
|
var _this = this;
|
|
@@ -2333,7 +2363,7 @@
|
|
|
2333
2363
|
enumerable: false,
|
|
2334
2364
|
configurable: false
|
|
2335
2365
|
});
|
|
2336
|
-
return [4 /*yield*/, validate
|
|
2366
|
+
return [4 /*yield*/, validate(this.value, rules, __assign(__assign({ name: this.name || this.fieldName }, createLookup(this)), { bails: this.bails, skipIfEmpty: this.skipIfEmpty, isInitial: !this.initialized, customMessages: this.customMessages }))];
|
|
2337
2367
|
case 1:
|
|
2338
2368
|
result = _a.sent();
|
|
2339
2369
|
this.setFlags({
|
|
@@ -2341,6 +2371,11 @@
|
|
|
2341
2371
|
valid: result.valid,
|
|
2342
2372
|
invalid: !result.valid
|
|
2343
2373
|
});
|
|
2374
|
+
if (result.required !== undefined) {
|
|
2375
|
+
this.setFlags({
|
|
2376
|
+
required: result.required
|
|
2377
|
+
});
|
|
2378
|
+
}
|
|
2344
2379
|
return [2 /*return*/, result];
|
|
2345
2380
|
}
|
|
2346
2381
|
});
|
|
@@ -2360,11 +2395,16 @@
|
|
|
2360
2395
|
invalid: !!errors.length,
|
|
2361
2396
|
failed: !!errors.length,
|
|
2362
2397
|
validated: true,
|
|
2363
|
-
changed: this.value
|
|
2398
|
+
changed: !fastDeepEqual(this.value, this.initialValue)
|
|
2364
2399
|
});
|
|
2365
2400
|
},
|
|
2366
2401
|
registerField: function () {
|
|
2367
2402
|
updateRenderingContextRefs(this);
|
|
2403
|
+
},
|
|
2404
|
+
checkComputesRequiredState: function () {
|
|
2405
|
+
var rules = __assign(__assign({}, this._resolvedRules), this.normalizedRules);
|
|
2406
|
+
var isRequired = Object.keys(rules).some(RuleContainer.isRequireRule);
|
|
2407
|
+
return isRequired;
|
|
2368
2408
|
}
|
|
2369
2409
|
}
|
|
2370
2410
|
});
|
|
@@ -2465,10 +2505,15 @@
|
|
|
2465
2505
|
}
|
|
2466
2506
|
if (!isCallable(ctx._veeWatchers[depName]) && providers[depName]) {
|
|
2467
2507
|
ctx._veeWatchers[depName] = providers[depName].$watch('value', function () {
|
|
2508
|
+
var isComputesRequired = ctx.checkComputesRequiredState();
|
|
2468
2509
|
if (ctx.flags.validated) {
|
|
2469
2510
|
ctx._needsValidation = true;
|
|
2470
2511
|
ctx.validate();
|
|
2471
2512
|
}
|
|
2513
|
+
// Validate dependent field silently if it has rules with computesRequired
|
|
2514
|
+
if (isComputesRequired && !ctx.flags.validated) {
|
|
2515
|
+
ctx.validateSilent();
|
|
2516
|
+
}
|
|
2472
2517
|
});
|
|
2473
2518
|
}
|
|
2474
2519
|
}
|
|
@@ -2487,7 +2532,7 @@
|
|
|
2487
2532
|
['failed', 'some']
|
|
2488
2533
|
];
|
|
2489
2534
|
var OBSERVER_COUNTER = 0;
|
|
2490
|
-
function data
|
|
2535
|
+
function data() {
|
|
2491
2536
|
var refs = {};
|
|
2492
2537
|
var errors = {};
|
|
2493
2538
|
var flags = createObserverFlags();
|
|
@@ -2542,7 +2587,7 @@
|
|
|
2542
2587
|
default: false
|
|
2543
2588
|
}
|
|
2544
2589
|
},
|
|
2545
|
-
data: data
|
|
2590
|
+
data: data,
|
|
2546
2591
|
created: function () {
|
|
2547
2592
|
var _this = this;
|
|
2548
2593
|
this.id = this.vid;
|
|
@@ -2754,7 +2799,7 @@
|
|
|
2754
2799
|
return hoc;
|
|
2755
2800
|
}
|
|
2756
2801
|
|
|
2757
|
-
var version = '3.4.
|
|
2802
|
+
var version = '3.4.9';
|
|
2758
2803
|
// Install all rules.
|
|
2759
2804
|
var RulesAsList = Object.keys(Rules).map(function (key) { return ({ schema: Rules[key], name: key }); });
|
|
2760
2805
|
RulesAsList.forEach(function (_a) {
|
|
@@ -2762,7 +2807,7 @@
|
|
|
2762
2807
|
extend(name, schema);
|
|
2763
2808
|
});
|
|
2764
2809
|
// Install locale
|
|
2765
|
-
localize('en', en);
|
|
2810
|
+
localize('en', en$1);
|
|
2766
2811
|
|
|
2767
2812
|
exports.Rules = Rules;
|
|
2768
2813
|
exports.ValidationObserver = ValidationObserver;
|
|
@@ -2773,7 +2818,7 @@
|
|
|
2773
2818
|
exports.localize = localize;
|
|
2774
2819
|
exports.normalizeRules = normalizeRules;
|
|
2775
2820
|
exports.setInteractionMode = setInteractionMode;
|
|
2776
|
-
exports.validate = validate
|
|
2821
|
+
exports.validate = validate;
|
|
2777
2822
|
exports.version = version;
|
|
2778
2823
|
exports.withValidation = withValidation;
|
|
2779
2824
|
|