@regle/rules 1.3.0 → 1.3.1

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.
@@ -2,23 +2,7 @@ import { CommonAlphaOptions, CommonComparisonOptions, FormRuleDeclaration, Inlin
2
2
  import { MaybeRef, MaybeRefOrGetter, Ref } from "vue";
3
3
 
4
4
  //#region src/helpers/withMessage.d.ts
5
- /**
6
- * The withMessage wrapper lets you associate an error message with a rule. Pass your rule as the first argument and the error message as the second.
7
- *
8
- * ```ts
9
- * const { r$ } = useRegle({ name: '' }, {
10
- name: {
11
- customRule1: withMessage((value) => !!value, "Custom Error"),
12
- customRule2: withMessage(customRuleInlineWithMetaData, "Custom Error"),
13
- customRule3: withMessage(
14
- customRuleInlineWithMetaData,
15
- ({ $value, foo }) => `Custom Error: ${$value} ${foo}`
16
- ),
17
- }
18
- })
19
- * ```
20
- * Docs: {@link https://reglejs.dev/core-concepts/rules/rule-wrappers#withmessage}
21
- */
5
+
22
6
  /**
23
7
  * The withMessage wrapper lets you associate an error message with a rule. Pass your rule as the first argument and the error message as the second.
24
8
  *
@@ -39,7 +23,7 @@ customRuleInlineWithMetaData,
39
23
  declare function withMessage<TValue extends any, TParams extends any[], TReturn extends RegleRuleMetadataDefinition | Promise<RegleRuleMetadataDefinition>, TMetadata extends RegleRuleMetadataDefinition = (TReturn extends Promise<infer M> ? M : TReturn), TAsync extends boolean = (TReturn extends Promise<any> ? true : false)>(rule: RegleRuleWithParamsDefinition<TValue, TParams, TAsync, TMetadata>, newMessage: RegleRuleDefinitionWithMetadataProcessor<TValue, RegleRuleMetadataConsumer<TValue, TParams, TMetadata>, string | string[]>): RegleRuleWithParamsDefinition<TValue, TParams, TAsync, TMetadata>;
40
24
  declare function withMessage<TValue extends any, TParams extends unknown[], TReturn extends RegleRuleMetadataDefinition | Promise<RegleRuleMetadataDefinition>, TMetadata extends RegleRuleMetadataDefinition = (TReturn extends Promise<infer M> ? M : TReturn), TAsync extends boolean = (TReturn extends Promise<any> ? true : false)>(rule: RegleRuleDefinition<TValue, TParams, TAsync, TMetadata>, newMessage: RegleRuleDefinitionWithMetadataProcessor<TValue, RegleRuleMetadataConsumer<TValue, TParams, TMetadata>, string | string[]>): RegleRuleDefinition<TValue, TParams, TAsync, TMetadata>;
41
25
  declare function withMessage<TValue extends any, TParams extends any[], TReturn extends RegleRuleMetadataDefinition | Promise<RegleRuleMetadataDefinition>, TAsync extends boolean = (TReturn extends Promise<any> ? true : false)>(rule: InlineRuleDeclaration<TValue, TParams, TReturn>, newMessage: RegleRuleDefinitionWithMetadataProcessor<TValue, RegleRuleMetadataConsumer<TValue, TParams, TReturn extends Promise<infer M> ? M : TReturn>, string | string[]>): RegleRuleDefinition<TValue, TParams, TAsync, TReturn extends Promise<infer M> ? M : TReturn>;
42
-
26
+ declare function withMessage<TValue extends any, TParams extends any[], TReturn extends RegleRuleMetadataDefinition | Promise<RegleRuleMetadataDefinition>, TMetadata extends RegleRuleMetadataDefinition = (TReturn extends Promise<infer M> ? M : TReturn), TAsync extends boolean = (TReturn extends Promise<any> ? true : false)>(rule: (...args: any[]) => RegleRuleDefinition<TValue, TParams, TAsync, TMetadata>, newMessage: RegleRuleDefinitionWithMetadataProcessor<TValue, RegleRuleMetadataConsumer<TValue, TParams, TMetadata>, string | string[]>): RegleRuleWithParamsDefinition<TValue, TParams, TAsync, TMetadata>;
43
27
  //#endregion
44
28
  //#region src/helpers/withTooltip.d.ts
45
29
  /**
@@ -48,7 +32,6 @@ declare function withMessage<TValue extends any, TParams extends any[], TReturn
48
32
  declare function withTooltip<TValue extends any, TParams extends any[], TReturn extends RegleRuleMetadataDefinition | Promise<RegleRuleMetadataDefinition>, TMetadata extends RegleRuleMetadataDefinition = (TReturn extends Promise<infer M> ? M : TReturn), TAsync extends boolean = (TReturn extends Promise<any> ? true : false)>(rule: RegleRuleWithParamsDefinition<TValue, TParams, TAsync, TMetadata>, newTooltip: RegleRuleDefinitionWithMetadataProcessor<TValue, RegleRuleMetadataConsumer<TValue, TParams, TMetadata>, string | string[]>): RegleRuleWithParamsDefinition<TValue, TParams, TAsync, TMetadata>;
49
33
  declare function withTooltip<TValue extends any, TParams extends any[], TReturn extends RegleRuleMetadataDefinition | Promise<RegleRuleMetadataDefinition>, TMetadata extends RegleRuleMetadataDefinition = (TReturn extends Promise<infer M> ? M : TReturn), TAsync extends boolean = (TReturn extends Promise<any> ? true : false)>(rule: RegleRuleDefinition<TValue, TParams, TAsync, TMetadata>, newTooltip: RegleRuleDefinitionWithMetadataProcessor<TValue, RegleRuleMetadataConsumer<TValue, TParams, TMetadata>, string | string[]>): RegleRuleDefinition<TValue, TParams, TAsync, TMetadata>;
50
34
  declare function withTooltip<TValue extends any, TParams extends any[], TReturn extends RegleRuleMetadataDefinition | Promise<RegleRuleMetadataDefinition>, TAsync extends boolean = (TReturn extends Promise<any> ? true : false)>(rule: InlineRuleDeclaration<TValue, TParams, TReturn>, newTooltip: RegleRuleDefinitionWithMetadataProcessor<TValue, RegleRuleMetadataConsumer<TValue, TParams, TReturn extends Promise<infer M> ? M : TReturn>, string | string[]>): RegleRuleDefinition<TValue, TParams, TAsync, TReturn extends Promise<infer M> ? M : TReturn>;
51
-
52
35
  //#endregion
53
36
  //#region src/helpers/withAsync.d.ts
54
37
  /**
@@ -71,7 +54,6 @@ declare function withTooltip<TValue extends any, TParams extends any[], TReturn
71
54
  */
72
55
  declare function withAsync<TValue, TParams extends (Ref<unknown> | (() => unknown))[] = [], TReturn extends Promise<RegleRuleMetadataDefinition> = Promise<RegleRuleMetadataDefinition>, TMetadata extends RegleRuleMetadataDefinition = (TReturn extends Promise<infer M> ? M : TReturn)>(rule: InlineRuleDeclaration<TValue, TParams, TReturn>, depsArray?: [...TParams]): RegleRuleDefinition<TValue, UnwrapRegleUniversalParams<TParams>, true, TMetadata>;
73
56
  declare function withAsync<TValue extends any, TParams extends any[], TMetadata extends RegleRuleMetadataDefinition>(rule: RegleRuleWithParamsDefinition<TValue, TParams, true, TMetadata>, depsArray?: [...TParams]): RegleRuleWithParamsDefinition<TValue, TParams, true, TMetadata>;
74
-
75
57
  //#endregion
76
58
  //#region src/helpers/withParams.d.ts
77
59
  /**
@@ -96,14 +78,12 @@ declare function withAsync<TValue extends any, TParams extends any[], TMetadata
96
78
  */
97
79
  declare function withParams<TValue, TParams extends (Ref<unknown> | (() => unknown))[] = [], TReturn extends RegleRuleMetadataDefinition = RegleRuleMetadataDefinition, TMetadata extends RegleRuleMetadataDefinition = (TReturn extends Promise<infer M> ? M : TReturn), TAsync extends boolean = (TReturn extends Promise<any> ? true : false)>(rule: InlineRuleDeclaration<TValue, TParams, TReturn> | RegleRuleDefinition<TValue, any[], TAsync, TMetadata>, depsArray: [...TParams]): RegleRuleDefinition<TValue, UnwrapRegleUniversalParams<TParams>, TAsync, TMetadata>;
98
80
  declare function withParams<TValue extends any, TParams extends any[], TReturn extends RegleRuleMetadataDefinition = RegleRuleMetadataDefinition, TMetadata extends RegleRuleMetadataDefinition = (TReturn extends Promise<infer M> ? M : TReturn), TAsync extends boolean = (TReturn extends Promise<any> ? true : false)>(rule: RegleRuleWithParamsDefinition<TValue, TParams, TAsync, TMetadata>, depsArray: [...TParams]): RegleRuleWithParamsDefinition<TValue, TParams, TAsync, TMetadata>;
99
-
100
81
  //#endregion
101
82
  //#region src/helpers/applyIf.d.ts
102
83
  /**
103
84
  * The applyIf operator is similar to requiredIf, but it can be used with any rule. It simplifies conditional rule declarations.
104
85
  */
105
86
  declare function applyIf<TValue extends any, TParams extends any[], TReturn extends RegleRuleMetadataDefinition | Promise<RegleRuleMetadataDefinition> = RegleRuleMetadataDefinition, TMetadata extends RegleRuleMetadataDefinition = (TReturn extends Promise<infer M> ? M : TReturn), TAsync extends boolean = (TReturn extends Promise<any> ? true : false)>(_condition: MaybeRefOrGetter<Maybe<boolean>>, rule: InlineRuleDeclaration<TValue, TParams, TReturn> | RegleRuleDefinition<TValue, TParams, TAsync, TMetadata>): RegleRuleDefinition<TValue, [...TParams, condition: boolean], TAsync, TMetadata>;
106
-
107
87
  //#endregion
108
88
  //#region src/helpers/ruleHelpers/isFilled.d.ts
109
89
  /**
@@ -115,28 +95,24 @@ declare function applyIf<TValue extends any, TParams extends any[], TReturn exte
115
95
  * @param [considerEmptyArrayInvalid=true] - will return true if set to `false`. (default: `true`)
116
96
  */
117
97
  declare function isFilled<T extends unknown>(value: T, considerEmptyArrayInvalid?: boolean): value is NonNullable<T>;
118
-
119
98
  //#endregion
120
99
  //#region src/helpers/ruleHelpers/isNumber.d.ts
121
100
  /**
122
101
  * This is a type guard that will check if the passed value is a real Number. This also returns false for NaN, so this is better than typeof value === "number".
123
102
  */
124
103
  declare function isNumber(value: unknown): value is number;
125
-
126
104
  //#endregion
127
105
  //#region src/helpers/ruleHelpers/matchRegex.d.ts
128
106
  /**
129
107
  * This utility can take multiple regular expressions as arguments. It checks the input's validity and tests it against the provided regex patterns.
130
108
  */
131
109
  declare function matchRegex(_value: string | number | null | undefined, ...expr: RegExp[]): boolean;
132
-
133
110
  //#endregion
134
111
  //#region src/helpers/ruleHelpers/getSize.d.ts
135
112
  /**
136
113
  * This helper will return the length of any data type you pass. It works with strings, arrays, objects and numbers.
137
114
  */
138
115
  declare function getSize(value: MaybeRef<string | any[] | Record<string, any> | number>): number;
139
-
140
116
  //#endregion
141
117
  //#region src/helpers/ruleHelpers/toNumber.d.ts
142
118
  /**
@@ -145,9 +121,8 @@ declare function getSize(value: MaybeRef<string | any[] | Record<string, any> |
145
121
  * @returns ⚠️ Warning, returned value can be NaN
146
122
  */
147
123
  declare function toNumber<T extends number | string | undefined>(argument: T): number;
148
-
149
124
  //#endregion
150
- //#region ../../node_modules/.pnpm/type-fest@4.40.1/node_modules/type-fest/source/observable-like.d.ts
125
+ //#region ../../node_modules/.pnpm/type-fest@4.41.0/node_modules/type-fest/source/observable-like.d.ts
151
126
  declare global {
152
127
  // eslint-disable-next-line @typescript-eslint/consistent-type-definitions -- It has to be an `interface` so that it can be merged.
153
128
  interface SymbolConstructor {
@@ -155,8 +130,6 @@ declare global {
155
130
  }
156
131
  }
157
132
 
158
- //#endregion
159
- //#region ../../node_modules/.pnpm/type-fest@4.40.1/node_modules/type-fest/source/empty-object.d.ts
160
133
  /**
161
134
  @remarks
162
135
  The TC39 observable proposal defines a `closed` property, but some implementations (such as xstream) do not as of 10/08/2021.
@@ -167,6 +140,8 @@ As well, some guidance on making an `Observable` to not include `closed` propert
167
140
 
168
141
  @category Observable
169
142
  */
143
+ //#endregion
144
+ //#region ../../node_modules/.pnpm/type-fest@4.41.0/node_modules/type-fest/source/empty-object.d.ts
170
145
  declare const emptyObjectSymbol: unique symbol;
171
146
 
172
147
  /**
@@ -199,8 +174,6 @@ type EmptyObject = {
199
174
  [emptyObjectSymbol]?: never;
200
175
  };
201
176
 
202
- //#endregion
203
- //#region ../shared/utils/isEmpty.d.ts
204
177
  /**
205
178
  Returns a `boolean` for whether the type is strictly equal to an empty plain object, the `{}` value.
206
179
 
@@ -216,6 +189,8 @@ type Fail = IsEmptyObject<null>; //=> false
216
189
  @see EmptyObject
217
190
  @category Object
218
191
  */
192
+ //#endregion
193
+ //#region ../shared/utils/isEmpty.d.ts
219
194
  /**
220
195
  * This is the inverse of isFilled. It will check if the value is in any way empty (including arrays and objects)
221
196
  *
@@ -225,21 +200,18 @@ type Fail = IsEmptyObject<null>; //=> false
225
200
  * @param [considerEmptyArrayInvalid=true] - will return false if set to `false`. (default: `true`)
226
201
  */
227
202
  declare function isEmpty(value: unknown, considerEmptyArrayInvalid?: boolean): value is null | undefined | [] | EmptyObject;
228
-
229
203
  //#endregion
230
204
  //#region ../shared/utils/isDate.d.ts
231
205
  /**
232
206
  * This is a useful helper that can check if the provided value is a Date, it is used internally for date rules. This can also check strings.
233
207
  */
234
208
  declare function isDate(value: unknown): value is Date;
235
-
236
209
  //#endregion
237
210
  //#region ../shared/utils/toDate.d.ts
238
211
  /**
239
212
  * This utility will coerce any string, number or Date value into a Date using the Date constructor.
240
213
  */
241
214
  declare function toDate(argument: Maybe<Date | number | string>): Date;
242
-
243
215
  //#endregion
244
216
  //#region src/types/utils/params.utils.d.ts
245
217
  type ExtractValueFromRules<T extends any[]> = T extends [infer F, ...infer R] ? F extends RegleRuleDefinition<infer V, any, any, any> ? [V, ...ExtractValueFromRules<R>] : F extends InlineRuleDeclaration<infer V, any> ? [V, ...ExtractValueFromRules<R>] : [F, ...ExtractValueFromRules<R>] : [];
@@ -256,28 +228,24 @@ type ExtractMetadata<T extends [...any[]]> = T extends [infer F, ...infer R] ? F
256
228
  type GuessMetadataFromRules<T extends any[], TMeta = ExtractMetadata<ExtractMetaDataFromRules<T>>> = TMeta extends EmptyObject ? boolean : TMeta;
257
229
  type FilterTuple<T extends any[]> = T extends [infer F, ...infer R] ? [F] extends [[]] ? [...FilterTuple<R>] : [F, ...FilterTuple<R>] : [];
258
230
  type UnwrapTuples<T extends any[]> = FilterTuple<T> extends [infer U extends any[]] ? U : FilterTuple<T>;
259
-
260
231
  //#endregion
261
232
  //#region src/helpers/and.d.ts
262
233
  /**
263
234
  * The and operator combines multiple rules and validates successfully only if all provided rules are valid.
264
235
  */
265
236
  declare function and<const TRules extends [FormRuleDeclaration<any, any>, ...FormRuleDeclaration<any, any>[]]>(...rules: [...TRules]): RegleRuleDefinition<ExtractValueFromRules<TRules>[number], UnwrapTuples<ExtractParamsFromRules<TRules>>, GuessAsyncFromRules<TRules>, GuessMetadataFromRules<TRules>>;
266
-
267
237
  //#endregion
268
238
  //#region src/helpers/or.d.ts
269
239
  /**
270
240
  * The or operator validates successfully if at least one of the provided rules is valid.
271
241
  */
272
242
  declare function or<TRules extends [FormRuleDeclaration<any, any>, ...FormRuleDeclaration<any, any>[]]>(...rules: [...TRules]): RegleRuleDefinition<ExtractValueFromRules<TRules>[number], UnwrapTuples<ExtractParamsFromRules<TRules>>, GuessAsyncFromRules<TRules>, GuessMetadataFromRules<TRules>>;
273
-
274
243
  //#endregion
275
244
  //#region src/helpers/not.d.ts
276
245
  /**
277
246
  * The not operator passes when the provided rule fails and fails when the rule passes. It can be combined with other rules.
278
247
  */
279
248
  declare function not<TValue, TParams extends any[] = [], TReturn extends RegleRuleMetadataDefinition | Promise<RegleRuleMetadataDefinition> = RegleRuleMetadataDefinition, TMetadata extends RegleRuleMetadataDefinition = (TReturn extends Promise<infer M> ? M : TReturn), TAsync extends boolean = (TReturn extends Promise<any> ? true : false)>(rule: RegleRuleDefinition<TValue, TParams, TAsync, TMetadata> | InlineRuleDeclaration<TValue, TParams, TReturn>, message?: RegleRuleDefinitionWithMetadataProcessor<TValue, RegleRuleMetadataConsumer<TValue, TParams, TMetadata>, string | string[]>): RegleRuleDefinition<TValue, TParams, TAsync, TMetadata>;
280
-
281
249
  //#endregion
282
250
  //#region src/rules/alpha.d.ts
283
251
  /**
@@ -286,7 +254,6 @@ declare function not<TValue, TParams extends any[] = [], TReturn extends RegleRu
286
254
  * @param [options] - Alpha rules options
287
255
  * */
288
256
  declare const alpha: RegleRuleWithParamsDefinition<string, [options?: CommonAlphaOptions | undefined], false, boolean, MaybeInput<string>, string>;
289
-
290
257
  //#endregion
291
258
  //#region src/rules/alphaNum.d.ts
292
259
  /**
@@ -295,7 +262,6 @@ declare const alpha: RegleRuleWithParamsDefinition<string, [options?: CommonAlph
295
262
  * @param [options] - Alpha rules options
296
263
  */
297
264
  declare const alphaNum: RegleRuleWithParamsDefinition<string | number, [options?: CommonAlphaOptions | undefined], false, boolean, MaybeInput<string>>;
298
-
299
265
  //#endregion
300
266
  //#region src/rules/between.d.ts
301
267
  /**
@@ -305,7 +271,6 @@ declare const alphaNum: RegleRuleWithParamsDefinition<string | number, [options?
305
271
  * @param max - the maximum limit
306
272
  */
307
273
  declare const between: RegleRuleWithParamsDefinition<number, [min: number, max: number, options?: CommonComparisonOptions], false, boolean, MaybeInput<number>>;
308
-
309
274
  //#endregion
310
275
  //#region src/rules/boolean.d.ts
311
276
  /**
@@ -314,14 +279,12 @@ declare const between: RegleRuleWithParamsDefinition<number, [min: number, max:
314
279
  * Mainly used for typing
315
280
  */
316
281
  declare const boolean: RegleRuleDefinition<unknown, [], false, boolean, MaybeInput<boolean>, unknown>;
317
-
318
282
  //#endregion
319
283
  //#region src/rules/checked.d.ts
320
284
  /**
321
285
  * Requires a boolean value to be true. This is useful for checkbox inputs.
322
286
  */
323
287
  declare const checked: RegleRuleDefinition<boolean, [], false, boolean, MaybeInput<boolean>>;
324
-
325
288
  //#endregion
326
289
  //#region src/rules/contains.d.ts
327
290
  /**
@@ -330,7 +293,6 @@ declare const checked: RegleRuleDefinition<boolean, [], false, boolean, MaybeInp
330
293
  * @param part - the part the value needs to contain
331
294
  */
332
295
  declare const contains: RegleRuleWithParamsDefinition<string, [part: MaybeInput<string>], false, boolean, MaybeInput<string>>;
333
-
334
296
  //#endregion
335
297
  //#region src/rules/date.d.ts
336
298
  /**
@@ -339,7 +301,6 @@ declare const contains: RegleRuleWithParamsDefinition<string, [part: MaybeInput<
339
301
  * Mainly used for typing
340
302
  */
341
303
  declare const date: RegleRuleDefinition<unknown, [], false, boolean, MaybeInput<Date>, unknown>;
342
-
343
304
  //#endregion
344
305
  //#region src/rules/dateAfter.d.ts
345
306
  /**
@@ -355,7 +316,6 @@ declare const dateAfter: RegleRuleWithParamsDefinition<string | Date, [after: Ma
355
316
  $valid: false;
356
317
  error: 'value-or-parameter-not-a-date';
357
318
  }, MaybeInput<string | Date>>;
358
-
359
319
  //#endregion
360
320
  //#region src/rules/dateBefore.d.ts
361
321
  /**
@@ -371,7 +331,6 @@ declare const dateBefore: RegleRuleWithParamsDefinition<string | Date, [before:
371
331
  $valid: false;
372
332
  error: 'value-or-parameter-not-a-date';
373
333
  }, MaybeInput<string | Date>>;
374
-
375
334
  //#endregion
376
335
  //#region src/rules/dateBetween.d.ts
377
336
  /**
@@ -382,21 +341,18 @@ declare const dateBefore: RegleRuleWithParamsDefinition<string | Date, [before:
382
341
  * @param options - comparison options
383
342
  */
384
343
  declare const dateBetween: RegleRuleWithParamsDefinition<string | Date, [before: MaybeInput<string | Date>, after: MaybeInput<string | Date>, options?: CommonComparisonOptions], false, boolean, MaybeInput<string | Date>>;
385
-
386
344
  //#endregion
387
345
  //#region src/rules/decimal.d.ts
388
346
  /**
389
347
  * Allows positive and negative decimal numbers.
390
348
  */
391
349
  declare const decimal: RegleRuleDefinition<string | number, [], false, boolean, MaybeInput<number | undefined>>;
392
-
393
350
  //#endregion
394
351
  //#region src/rules/email.d.ts
395
352
  /**
396
353
  * Validates email addresses. Always verify on the server to ensure the address is real and not already in use.
397
354
  */
398
355
  declare const email: RegleRuleDefinition<string, [], false, boolean, MaybeInput<string>>;
399
-
400
356
  //#endregion
401
357
  //#region src/rules/endsWith.d.ts
402
358
  /**
@@ -405,7 +361,6 @@ declare const email: RegleRuleDefinition<string, [], false, boolean, MaybeInput<
405
361
  * @param part - the value the field must end with
406
362
  */
407
363
  declare const endsWith: RegleRuleWithParamsDefinition<string, [part: MaybeInput<string>], false, boolean, MaybeInput<string>>;
408
-
409
364
  //#endregion
410
365
  //#region src/rules/exactLength.d.ts
411
366
  /**
@@ -414,42 +369,36 @@ declare const endsWith: RegleRuleWithParamsDefinition<string, [part: MaybeInput<
414
369
  * @param count - the required length
415
370
  */
416
371
  declare const exactLength: RegleRuleWithParamsDefinition<string | any[] | Record<PropertyKey, any>, [count: number], false, boolean>;
417
-
418
372
  //#endregion
419
373
  //#region src/rules/exactValue.d.ts
420
374
  /**
421
375
  * Requires a field to have a strict numeric value.
422
376
  */
423
377
  declare const exactValue: RegleRuleWithParamsDefinition<number, [count: number], false, boolean, MaybeInput<number>>;
424
-
425
378
  //#endregion
426
379
  //#region src/rules/hexadecimal.d.ts
427
380
  /**
428
381
  * Allows only hexadecimal values.
429
382
  */
430
383
  declare const hexadecimal: RegleRuleDefinition<string, [], false, boolean, MaybeInput<string>>;
431
-
432
384
  //#endregion
433
385
  //#region src/rules/integer.d.ts
434
386
  /**
435
387
  * Allows only integers (positive and negative).
436
388
  */
437
389
  declare const integer: RegleRuleDefinition<string | number, [], false, boolean, MaybeInput<number>>;
438
-
439
390
  //#endregion
440
391
  //#region src/rules/ipv4Address.d.ts
441
392
  /**
442
393
  * Validates IPv4 addresses in dotted decimal notation 127.0.0.1.
443
394
  */
444
395
  declare const ipv4Address: RegleRuleDefinition<string, [], false, boolean, MaybeInput<string>>;
445
-
446
396
  //#endregion
447
397
  //#region src/rules/literal.d.ts
448
398
  /**
449
399
  * Allow only one possible literal value
450
400
  */
451
401
  declare function literal<const TValue extends string | number>(literal: MaybeRefOrGetter<TValue>): RegleRuleDefinition<TValue, [literal: TValue], false, boolean, MaybeInput<TValue>, string | number>;
452
-
453
402
  //#endregion
454
403
  //#region src/rules/macAddress.d.ts
455
404
  /**
@@ -458,7 +407,6 @@ declare function literal<const TValue extends string | number>(literal: MaybeRef
458
407
  * @param separator - the custom separator
459
408
  */
460
409
  declare const macAddress: RegleRuleWithParamsDefinition<string, [separator?: string | undefined], false, boolean, MaybeInput<string>>;
461
-
462
410
  //#endregion
463
411
  //#region src/rules/maxLength.d.ts
464
412
  /**
@@ -468,7 +416,6 @@ declare const macAddress: RegleRuleWithParamsDefinition<string, [separator?: str
468
416
  * @param options - comparison options
469
417
  */
470
418
  declare const maxLength: RegleRuleWithParamsDefinition<string | any[] | Record<PropertyKey, any>, [count: number, options?: CommonComparisonOptions], false, boolean>;
471
-
472
419
  //#endregion
473
420
  //#region src/rules/maxValue.d.ts
474
421
  /**
@@ -478,7 +425,6 @@ declare const maxLength: RegleRuleWithParamsDefinition<string | any[] | Record<P
478
425
  * @param options - comparison options
479
426
  */
480
427
  declare const maxValue: RegleRuleWithParamsDefinition<number, [count: number, options?: CommonComparisonOptions], false, boolean, MaybeInput<number>>;
481
-
482
428
  //#endregion
483
429
  //#region src/rules/minLength.d.ts
484
430
  /**
@@ -488,7 +434,6 @@ declare const maxValue: RegleRuleWithParamsDefinition<number, [count: number, op
488
434
  * @param options - comparison options
489
435
  */
490
436
  declare const minLength: RegleRuleWithParamsDefinition<string | any[] | Record<PropertyKey, any>, [count: number, options?: CommonComparisonOptions], false, boolean>;
491
-
492
437
  //#endregion
493
438
  //#region src/rules/minValue.d.ts
494
439
  /**
@@ -498,7 +443,6 @@ declare const minLength: RegleRuleWithParamsDefinition<string | any[] | Record<P
498
443
  * @param options - comparison options
499
444
  */
500
445
  declare const minValue: RegleRuleWithParamsDefinition<number, [count: number, options?: CommonComparisonOptions], false, boolean, MaybeInput<number>>;
501
-
502
446
  //#endregion
503
447
  //#region src/rules/nativeEnum.d.ts
504
448
  type EnumLike = {
@@ -509,7 +453,6 @@ type EnumLike = {
509
453
  * Validate against a native Typescript enum value.
510
454
  */
511
455
  declare function nativeEnum<T extends EnumLike>(enumLike: T): RegleRuleDefinition<MaybeInput<T[keyof T]>, [enumLike: T], false, boolean, MaybeInput<T[keyof T]>, string | number>;
512
-
513
456
  //#endregion
514
457
  //#region src/rules/number.d.ts
515
458
  /**
@@ -518,35 +461,35 @@ declare function nativeEnum<T extends EnumLike>(enumLike: T): RegleRuleDefinitio
518
461
  * Mainly used for typing
519
462
  */
520
463
  declare const number: RegleRuleDefinition<unknown, [], false, boolean, MaybeInput<number>, unknown>;
521
-
522
464
  //#endregion
523
465
  //#region src/rules/numeric.d.ts
524
466
  /**
525
467
  * Allows only numeric values (including numeric strings).
526
468
  */
527
469
  declare const numeric: RegleRuleDefinition<string | number, [], false, boolean, MaybeInput<string | number>>;
528
-
529
470
  //#endregion
530
471
  //#region src/rules/oneOf.d.ts
472
+ interface OneOfFn {
473
+ <const TValues extends readonly [string | number, ...(string | number)[]]>(options: MaybeReadonly<MaybeRefOrGetter<[...TValues]>>): RegleRuleDefinition<TValues[number], [options: TValues], false, boolean, MaybeInput<TValues[number]>, string | number>;
474
+ /** Keep this definition without generics for inference */
475
+ (options: MaybeReadonly<MaybeRefOrGetter<[...(readonly [string | number, ...(string | number)[]])]>>): RegleRuleDefinition<string | number, [options: readonly [string | number, ...(string | number)[]]], false, boolean, MaybeInput<string | number>, string | number>;
476
+ }
531
477
  /**
532
478
  * Allow only one of the values from a fixed Array of possible entries.
533
479
  */
534
- declare function oneOf<const TValues extends readonly [string | number, ...(string | number)[]]>(options: MaybeReadonly<MaybeRefOrGetter<[...TValues]>>): RegleRuleDefinition<TValues[number], [options: TValues], false, boolean, MaybeInput<TValues[number]>, string | number>;
535
-
480
+ declare const oneOf: OneOfFn;
536
481
  //#endregion
537
482
  //#region src/rules/regex.d.ts
538
483
  /**
539
484
  * Checks if the value matches one or more regular expressions.
540
485
  */
541
486
  declare const regex: RegleRuleWithParamsDefinition<string | number, [regexp: RegExp | RegExp[]], false, boolean, MaybeInput<string | number>>;
542
-
543
487
  //#endregion
544
488
  //#region src/rules/required.d.ts
545
489
  /**
546
490
  * Requires non-empty data. Checks for empty arrays and strings containing only whitespaces.
547
491
  */
548
492
  declare const required: RegleRuleDefinition<unknown, [], false, boolean, unknown>;
549
-
550
493
  //#endregion
551
494
  //#region src/rules/requiredIf.d.ts
552
495
  /**
@@ -555,7 +498,6 @@ declare const required: RegleRuleDefinition<unknown, [], false, boolean, unknown
555
498
  * @param condition - the condition to enable the required rule
556
499
  */
557
500
  declare const requiredIf: RegleRuleWithParamsDefinition<unknown, [condition: boolean], false, boolean>;
558
-
559
501
  //#endregion
560
502
  //#region src/rules/requiredUnless.d.ts
561
503
  /**
@@ -564,14 +506,17 @@ declare const requiredIf: RegleRuleWithParamsDefinition<unknown, [condition: boo
564
506
  * @param condition - the condition to disable the required rule
565
507
  */
566
508
  declare const requiredUnless: RegleRuleWithParamsDefinition<unknown, [condition: boolean], false, boolean>;
567
-
568
509
  //#endregion
569
510
  //#region src/rules/sameAs.d.ts
511
+ interface SameAsFn {
512
+ <TTarget extends unknown = unknown>(target: MaybeRefOrGetter<TTarget>, otherName?: MaybeRefOrGetter<string>): RegleRuleDefinition<TTarget, [target: TTarget, otherName?: string], false, boolean, TTarget extends MaybeInput<infer M> ? M : MaybeInput<TTarget>>;
513
+ /** Keep this definition without generics for inference */
514
+ (target: MaybeRefOrGetter<unknown>, otherName?: MaybeRefOrGetter<string>): RegleRuleDefinition<unknown, [target: any, otherName?: string], false, boolean, unknown extends MaybeInput<infer M> ? M : MaybeInput<unknown>>;
515
+ }
570
516
  /**
571
517
  * Checks if the value matches the specified property or ref.
572
518
  */
573
- declare const sameAs: <const TTarget extends unknown>(target: MaybeRefOrGetter<TTarget>, otherName?: MaybeRefOrGetter<string>) => RegleRuleDefinition<unknown, [target: TTarget, otherName?: string], false, boolean, TTarget extends MaybeInput<infer M> ? M : MaybeInput<TTarget>>;
574
-
519
+ declare const sameAs: SameAsFn;
575
520
  //#endregion
576
521
  //#region src/rules/startsWith.d.ts
577
522
  /**
@@ -580,7 +525,6 @@ declare const sameAs: <const TTarget extends unknown>(target: MaybeRefOrGetter<T
580
525
  * @private part - the value the field must start with
581
526
  */
582
527
  declare const startsWith: RegleRuleWithParamsDefinition<string, [part: MaybeInput<string>], false, boolean, MaybeInput<string>>;
583
-
584
528
  //#endregion
585
529
  //#region src/rules/string.d.ts
586
530
  /**
@@ -589,7 +533,6 @@ declare const startsWith: RegleRuleWithParamsDefinition<string, [part: MaybeInpu
589
533
  * Mainly used for typing
590
534
  */
591
535
  declare const string: RegleRuleDefinition<unknown, [], false, boolean, MaybeInput<string>, unknown>;
592
-
593
536
  //#endregion
594
537
  //#region src/rules/type.d.ts
595
538
  /**
@@ -598,13 +541,11 @@ declare const string: RegleRuleDefinition<unknown, [], false, boolean, MaybeInpu
598
541
  * Override any input type set by other rules.
599
542
  */
600
543
  declare function type<T>(): RegleRuleDefinition<unknown, [], false, boolean, MaybeInput<T>>;
601
-
602
544
  //#endregion
603
545
  //#region src/rules/url.d.ts
604
546
  /**
605
547
  * Validates URLs.
606
548
  */
607
549
  declare const url: RegleRuleDefinition<string, [], false, boolean, MaybeInput<string>>;
608
-
609
550
  //#endregion
610
551
  export { EnumLike, alpha, alphaNum, and, applyIf, between, boolean, checked, contains, date, dateAfter, dateBefore, dateBetween, decimal, email, endsWith, exactLength, exactValue, getSize, hexadecimal, integer, ipv4Address, isDate, isEmpty, isFilled, isNumber, literal, macAddress, matchRegex, maxLength, maxValue, minLength, minValue, nativeEnum, not, number, numeric, oneOf, or, regex, required, requiredIf, requiredUnless, sameAs, startsWith, string, toDate, toNumber, type, url, withAsync, withMessage, withParams, withTooltip };
@@ -215,11 +215,11 @@ function isDate(value) {
215
215
  */
216
216
  function toDate(argument) {
217
217
  const argStr = Object.prototype.toString.call(argument);
218
- if (argument == null) return new Date(NaN);
218
+ if (argument == null) return /* @__PURE__ */ new Date(NaN);
219
219
  else if (argument instanceof Date || typeof argument === "object" && argStr === "[object Date]") return new Date(argument.getTime());
220
220
  else if (typeof argument === "number" || argStr === "[object Number]") return new Date(argument);
221
221
  else if (typeof argument === "string" || argStr === "[object String]") return new Date(argument);
222
- else return new Date(NaN);
222
+ else return /* @__PURE__ */ new Date(NaN);
223
223
  }
224
224
 
225
225
  //#endregion
@@ -1050,14 +1050,14 @@ const numeric = createRule({
1050
1050
  /**
1051
1051
  * Allow only one of the values from a fixed Array of possible entries.
1052
1052
  */
1053
- function oneOf(options) {
1054
- const params = computed(() => toValue(options));
1055
- const rule = withMessage(withParams((value, options$1) => {
1056
- if (isFilled(value) && isFilled(options$1, false)) return options$1.includes(value);
1053
+ const oneOf = createRule({
1054
+ type: "oneOf",
1055
+ validator(value, options) {
1056
+ if (isFilled(value) && isFilled(options, false)) return options.includes(value);
1057
1057
  return true;
1058
- }, [params]), ({ $params: [options$1] }) => `The value should be one of those options: ${options$1.join(", ")}.`);
1059
- return rule;
1060
- }
1058
+ },
1059
+ message: ({ $params: [options] }) => `The value should be one of those options: ${options.join(", ")}.`
1060
+ });
1061
1061
 
1062
1062
  //#endregion
1063
1063
  //#region src/rules/regex.ts
@@ -1 +1 @@
1
- import{InternalRuleType as e,createRule as t,unwrapRuleParameters as n}from"@regle/core";import{computed as r,toValue as i,unref as a}from"vue";function o(n,r){let i,a,o,s;typeof n==`function`&&!(`_validator`in n)?(i=e.Inline,a=n):{_type:i,validator:a,_active:o,_params:s}=n;let c=t({type:i,validator:a,active:o,message:r}),l=[...s??[]];if(c._params=l,c._message_patched=!0,typeof c==`function`){if(s!=null){let e=c(...l);return e._message_patched=!0,e}return c}else return c}function s(n,r){let i,a,o,s,c;typeof n==`function`&&!(`_validator`in n)?(i=e.Inline,a=n):{_type:i,validator:a,_active:o,_params:s,_message:c}=n;let l=t({type:i,validator:a,active:o,message:c,tooltip:r}),u=[...s??[]];if(l._params=u,l._tooltip_patched=!0,typeof l==`function`){let e=l(...u);return l._tooltip_patched=!0,e}else return l}function c(n,r){let i,a,o=[],s=``;typeof n==`function`?(i=e.Inline,a=async(e,...t)=>n(e,...t),o=[r]):({_type:i,_message:s}=n,o=o=n._params?.concat(r),a=async(...e)=>n.validator(e));let c=t({type:e.Async,validator:a,message:s});return c._params=c._params?.concat(o),c(...r??[])}function l(n,r){let i,a,o=[],s=``;typeof n==`function`?(i=e.Inline,a=(e,...t)=>n(e,...t),o=[r]):({_type:i,validator:a,_message:s}=n,o=o=n._params?.concat(r));let c=t({type:e.Inline,validator:a,message:s});return c._params=c._params?.concat(o),c(...r)}function u(r,i){let a,o,s=[],c=``;typeof i==`function`?(a=e.Inline,o=i,s=[r]):({_type:a,validator:o,_message:c}=i,s=i._params?.concat([r]));function l(e,...t){let[i]=n([r]);return i?o(e,...t):!0}function u(e){let[t]=n([r]);return t}let d=t({type:a,validator:l,active:u,message:c}),f=[...s??[]];if(d._params=f,typeof d==`function`){let e=d(...f);return e}else return d}function d(e){return e?.constructor.name==`File`||e?.constructor.name==`FileList`}function f(e,t=!0){return e==null?!0:e instanceof Date?isNaN(e.getTime()):d(e)?e.size<=0:Array.isArray(e)?t?e.length===0:!1:typeof e==`object`&&e?Object.keys(e).length===0:!String(e).length}const ee=Symbol(`regle-rule`);function p(e){if(f(e))return!1;try{let t=null;if(e instanceof Date)t=e;else if(typeof e==`string`){let n=new Date(e);if(n.toString()===`Invalid Date`)return!1;t=n}return!!t}catch{return!1}}function m(e){let t=Object.prototype.toString.call(e);return e==null?new Date(NaN):e instanceof Date||typeof e==`object`&&t===`[object Date]`?new Date(e.getTime()):typeof e==`number`||t===`[object Number]`||typeof e==`string`||t===`[object String]`?new Date(e):new Date(NaN)}function h(e,t=!0){return!f(typeof e==`string`?e.trim():e,t)}function g(e){return e==null?!1:typeof e==`number`?!isNaN(e):!1}function _(e,...t){if(f(e))return!0;let n=typeof e==`number`?e.toString():e;return t.every(e=>(e.lastIndex=0,e.test(n)))}function v(e){let t=a(e);return Array.isArray(t)?t.length:typeof t==`object`?Object.keys(t).length:typeof t==`number`?isNaN(t)?0:t:String(t).length}function y(e){if(typeof e==`number`)return e;if(e!=null){if(typeof e==`string`){let t=e.trim()!==e;return t?NaN:+e}return NaN}return NaN}function te(...e){let n=e.some(e=>typeof e==`function`?e.constructor.name===`AsyncFunction`:e._async),r=e.map(e=>{if(typeof e==`function`)return null;{let t=e._params;return t?.length?t:[]}}).flat().filter(e=>!!e);function i(e,t,...n){let r=[],i=0;for(let a of e)if(typeof a==`function`)r.push(a(t)),i++;else{let e=a._params?.length??0;r.push(a.validator(t,...n.slice(i,e))),e&&(i+=e)}return r}function a(e){let t=e?.some(e=>typeof e!=`boolean`);return t?{$valid:e.every(e=>typeof e==`boolean`?!!e:e.$valid),...e.reduce((e,t)=>{if(typeof t==`boolean`)return e;let{$valid:n,...r}=t;return{...e,...r}},{})}:e.every(e=>!!e)}let o;o=e.length?n?async(t,...n)=>{let r=await Promise.all(i(e,t,...n));return a(r)}:(t,...n)=>{let r=i(e,t,...n);return a(r)}:e=>!1;let s=t({type:`and`,validator:o,message:`The value does not match all of the provided validators`}),c=[...r??[]];if(s._params=c,typeof s==`function`){let e=s(...c);return e}else return s}function b(...e){let n=e.some(e=>typeof e==`function`?e.constructor.name===`AsyncFunction`:e._async),r=e.map(e=>typeof e==`function`?null:e._params).flat().filter(e=>!!e);function i(e,t,...n){let r=[],i=0;for(let a of e)if(typeof a==`function`)r.push(a(t)),i++;else{let e=a._params?.length??0;r.push(a.validator(t,...n.slice(i,e))),e&&(i+=e)}return r}function a(e){let t=e.some(e=>typeof e!=`boolean`);return t?{$valid:e.some(e=>typeof e==`boolean`?!!e:e.$valid),...e.reduce((e,t)=>{if(typeof t==`boolean`)return e;let{$valid:n,...r}=t;return{...e,...r}},{})}:e.some(e=>!!e)}let o=n?async(t,...n)=>{let r=await Promise.all(i(e,t,...n));return a(r)}:(t,...n)=>{let r=i(e,t,...n);return a(r)},s=t({type:`or`,validator:o,message:`The value does not match any of the provided validators`}),c=[...r??[]];if(s._params=c,typeof s==`function`){let e=s(...c);return e}else return s}function x(e,n){let r,i,a,o,s;typeof e==`function`?(i=e,s=e.constructor.name===`AsyncFunction`):({_type:r,validator:i,_params:o}=e,s=e._async),a=s?async(e,...t)=>{if(h(e)){let n=await i(e,...t);return!n}return!0}:(e,...t)=>h(e)?!i(e,...t):!0;let c=t({type:`not`,validator:a,message:n??`Error`}),l=[...o??[]];if(c._params=l,typeof c==`function`){let e=c(...l);return e}else return c}const S=/^[a-zA-Z]*$/,C=/^[\w.]+$/,w=t({type:`alpha`,validator(e,t){return f(e)?!0:t?.allowSymbols?_(e,C):_(e,S)},message:`The value is not alphabetical`}),T=/^[a-zA-Z0-9]*$/,E=/^[a-zA-Z0-9_]*$/,D=t({type:`alphaNum`,validator(e,t){return f(e)?!0:t?.allowSymbols?_(e,E):_(e,T)},message:`The value must be alpha-numeric`}),O=t({type:`between`,validator:(e,t,n,r)=>{let{allowEqual:i=!0}=r??{};if(h(e)&&h(t)&&h(n)){let r=y(e),a=y(t),o=y(n);return g(r)&&g(a)&&g(o)?i?r>=a&&r<=o:r>a&&r<o:(console.warn(`[between] Value or parameters aren't numbers, got value: ${e}, min: ${t}, max: ${n}`),!1)}return!0},message:({$params:[e,t]})=>`The value must be between ${e} and ${t}`}),k=t({type:`boolean`,validator:e=>h(e)?typeof e==`boolean`:!0,message:`The value must be a native boolean`}),A=t({type:`checked`,validator:e=>h(e)?e===!0:!0,message:`The field must be checked`}),j=t({type:`contains`,validator(e,t){return h(e)&&h(t)?e.includes(t):!0},message({$params:[e]}){return`The value must contain ${e}`}}),M=t({type:`date`,validator:e=>h(e)?e instanceof Date:!0,message:`The value must be a native Date constructor`});function N(){return navigator.languages==null?navigator.language:navigator.languages[0]}function P(e){return e?new Intl.DateTimeFormat(N(),{dateStyle:`short`}).format(new Date(e)):`?`}const F=t({type:`dateAfter`,validator:(e,t,n)=>{let{allowEqual:r=!0}=n??{};if(h(e)&&h(t)){if(p(e)&&p(t)){let n=r?m(e).getTime()>=m(t).getTime():m(e).getTime()>m(t).getTime();return n?!0:{$valid:!1,error:`date-not-after`}}return{$valid:!1,error:`value-or-parameter-not-a-date`}}return!0},message:({$params:[e],error:t})=>t===`value-or-parameter-not-a-date`?`The values must be dates`:`The date must be after ${P(e)}`}),I=t({type:`dateBefore`,validator:(e,t,n)=>{let{allowEqual:r=!0}=n??{};if(h(e)&&h(t)){if(p(e)&&p(t)){let n=r?m(e).getTime()<=m(t).getTime():m(e).getTime()<m(t).getTime();return n?!0:{$valid:!1,error:`date-not-before`}}return{$valid:!1,error:`value-or-parameter-not-a-date`}}return!0},message:({$params:[e],error:t})=>t===`value-or-parameter-not-a-date`?`The values must be dates`:`The date must be before ${P(e)}`}),L=t({type:`dateBetween`,validator:(e,t,n,r)=>{let{allowEqual:i=!0}=r??{};return p(e)&&p(t)&&p(n)?i?m(e).getTime()>=m(t).getTime()&&m(e).getTime()<=m(n).getTime():m(e).getTime()>m(t).getTime()&&m(e).getTime()<m(n).getTime():!0},message:({$params:[e,t]})=>`The date must be between ${P(e)} and ${P(t)}`}),R=/^[-]?\d*(\.\d+)?$/,z=t({type:`decimal`,validator(e){return f(e)?!0:_(e,R)},message:`The value must be decimal`}),B=/^(?:[A-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[A-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9]{2,}(?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])$/i,V=t({type:`email`,validator(e){return f(e)?!0:_(e,B)},message:`The value must be an valid email address`}),H=t({type:`endsWith`,validator(e,t){return h(e)&&h(t)?e.endsWith(t):!0},message({$params:[e]}){return`The value must end with ${e}`}}),U=t({type:`exactLength`,validator:(e,t)=>h(e,!1)&&h(t)?g(t)?v(e)===t:(console.warn(`[minLength] Parameter isn't a number, got parameter: ${t}`),!1):!0,message:({$params:[e]})=>`The value should be exactly ${e} characters long`}),ne=t({type:`exactValue`,validator:(e,t)=>h(e)&&h(t)?g(t)&&!isNaN(y(e))?y(e)===t:(console.warn(`[exactValue] Value or parameter isn't a number, got value: ${e}, parameter: ${t}`),!0):!0,message:({$params:[e]})=>`The value must be equal to ${e}`}),W=/^[a-fA-F0-9]*$/,G=t({type:`hexadecimal`,validator(e){return f(e)?!0:_(e,W)},message:`The value must be hexadecimal`}),K=/(^[0-9]*$)|(^-[0-9]+$)/,q=t({type:`integer`,validator(e){return f(e)?!0:_(e,K)},message:`The value must be an integer`});function J(e){if(e.length>3||e.length===0||e[0]===`0`&&e!==`0`||!e.match(/^\d+$/))return!1;let t=e|0;return t>=0&&t<=255}const Y=t({type:`ipv4Address`,validator(e){if(f(e))return!0;if(typeof e!=`string`)return!1;let t=e.split(`.`);return t.length===4&&t.every(J)},message:`The value is not a valid IPv4 address`});function X(e){let t=r(()=>i(e)),n=o(l((e,t)=>h(e)&&h(t)?t===e:!0,[t]),({$params:[e]})=>`Value should be ${e}.`);return n}const Z=t({type:`macAddress`,validator(e,t=`:`){if(f(e))return!0;if(typeof e!=`string`)return!1;let n=typeof t==`string`&&t!==``?e.split(t):e.length===12||e.length===16?e.match(/.{2}/g):null;return n!==null&&(n.length===6||n.length===8)&&n.every(Q)},message:`The value is not a valid MAC Address`}),Q=e=>e.toLowerCase().match(/^[0-9a-f]{2}$/),re=t({type:`maxLength`,validator:(e,t,n)=>{let{allowEqual:r=!0}=n??{};return h(e,!1)&&h(t)?g(t)?r?v(e)<=t:v(e)<t:(console.warn(`[maxLength] Value or parameter isn't a number, got value: ${e}, parameter: ${t}`),!1):!0},message:({$value:e,$params:[t]})=>Array.isArray(e)?`This list should have maximum ${t} items`:`The value length should not exceed ${t}`}),ie=t({type:`maxValue`,validator:(e,t,n)=>{let{allowEqual:r=!0}=n??{};return h(e)&&h(t)?g(t)&&!isNaN(y(e))?r?y(e)<=t:y(e)<t:(console.warn(`[maxValue] Value or parameter isn't a number, got value: ${e}, parameter: ${t}`),!0):!0},message:({$params:[e,t]})=>{let{allowEqual:n=!0}=t??{};return n?`The value must be less than or equal to ${e}`:`The value must be less than ${e}`}}),ae=t({type:`minLength`,validator:(e,t,n)=>{let{allowEqual:r=!0}=n??{};return h(e,!1)&&h(t)?g(t)?r?v(e)>=t:v(e)>t:(console.warn(`[minLength] Parameter isn't a number, got parameter: ${t}`),!1):!0},message:({$value:e,$params:[t]})=>Array.isArray(e)?`The list should have at least ${t} items`:`The value length should be at least ${t}`}),oe=t({type:`minValue`,validator:(e,t,n)=>{let{allowEqual:r=!0}=n??{};return h(e)&&h(t)?g(t)&&!isNaN(y(e))?r?y(e)>=t:y(e)>t:(console.warn(`[minValue] Value or parameter isn't a number, got value: ${e}, parameter: ${t}`),!0):!0},message:({$params:[e,t]})=>{let{allowEqual:n=!0}=t??{};return n?`The value must be greater than or equal to ${e}`:`The value must be greater than ${e}`}});function se(e){let t=Object.keys(e).filter(t=>typeof e[e[t]]!=`number`),n={};for(let r of t)n[r]=e[r];return Object.values(n)}function ce(e){let t=r(()=>i(e)),n=o(l((e,t)=>{if(h(e)&&!f(t)){let n=se(t);return n.includes(e)}return!0},[t]),({$params:[e]})=>`The value should be one of those options: ${Object.values(e).join(`, `)}.`);return n}const le=t({type:`number`,validator:e=>h(e)?g(e):!0,message:`The value must be a native number`}),ue=/^\d*(\.\d+)?$/,de=t({type:`numeric`,validator(e){return f(e)?!0:_(e,ue)},message:`The value must be numeric`});function fe(e){let t=r(()=>i(e)),n=o(l((e,t)=>h(e)&&h(t,!1)?t.includes(e):!0,[t]),({$params:[e]})=>`The value should be one of those options: ${e.join(`, `)}.`);return n}const pe=t({type:`regex`,validator(e,t){if(h(e)){let n=Array.isArray(t)?t:[t];return _(e,...n)}return!0},message:`The value does not match the required pattern`}),$=t({type:`required`,validator:e=>h(e),message:`This field is required`}),me=t({type:`required`,validator(e,t){return t?h(e):!0},message:`This field is required`,active({$params:[e]}){return e}}),he=t({type:`required`,validator(e,t){return t?!0:h(e)},message:`This field is required`,active({$params:[e]}){return!e}}),ge=t({type:`sameAs`,validator(e,t,n){return f(e)?!0:e===t},message({$params:[e,t=`other`]}){return`The value must be equal to the ${t} value`}}),_e=t({type:`startsWith`,validator(e,t){return h(e)&&h(t)?e.startsWith(t):!0},message({$params:[e]}){return`The value must end with ${e}`}}),ve=t({type:`string`,validator:e=>h(e)?typeof e==`string`:!0,message:`The value must be a string`});function ye(){return()=>!0}const be=/^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u00a1-\uffff][a-z0-9\u00a1-\uffff_-]{0,62})?[a-z0-9\u00a1-\uffff]\.)+(?:[a-z\u00a1-\uffff]{2,}\.?))(?::\d{2,5})?(?:[/?#]\S*)?$/i,xe=t({type:`url`,validator(e){return f(e)?!0:_(e,be)},message:`The value is not a valid URL address`});export{w as alpha,D as alphaNum,te as and,u as applyIf,O as between,k as boolean,A as checked,j as contains,M as date,F as dateAfter,I as dateBefore,L as dateBetween,z as decimal,V as email,H as endsWith,U as exactLength,ne as exactValue,v as getSize,G as hexadecimal,q as integer,Y as ipv4Address,p as isDate,f as isEmpty,h as isFilled,g as isNumber,X as literal,Z as macAddress,_ as matchRegex,re as maxLength,ie as maxValue,ae as minLength,oe as minValue,ce as nativeEnum,x as not,le as number,de as numeric,fe as oneOf,b as or,pe as regex,$ as required,me as requiredIf,he as requiredUnless,ge as sameAs,_e as startsWith,ve as string,m as toDate,y as toNumber,ye as type,xe as url,c as withAsync,o as withMessage,l as withParams,s as withTooltip};
1
+ import{InternalRuleType as e,createRule as t,unwrapRuleParameters as n}from"@regle/core";import{computed as r,toValue as i,unref as a}from"vue";function o(n,r){let i,a,o,s;typeof n==`function`&&!(`_validator`in n)?(i=e.Inline,a=n):{_type:i,validator:a,_active:o,_params:s}=n;let c=t({type:i,validator:a,active:o,message:r}),l=[...s??[]];if(c._params=l,c._message_patched=!0,typeof c==`function`){if(s!=null){let e=c(...l);return e._message_patched=!0,e}return c}else return c}function s(n,r){let i,a,o,s,c;typeof n==`function`&&!(`_validator`in n)?(i=e.Inline,a=n):{_type:i,validator:a,_active:o,_params:s,_message:c}=n;let l=t({type:i,validator:a,active:o,message:c,tooltip:r}),u=[...s??[]];if(l._params=u,l._tooltip_patched=!0,typeof l==`function`){let e=l(...u);return l._tooltip_patched=!0,e}else return l}function c(n,r){let i,a,o=[],s=``;typeof n==`function`?(i=e.Inline,a=async(e,...t)=>n(e,...t),o=[r]):({_type:i,_message:s}=n,o=o=n._params?.concat(r),a=async(...e)=>n.validator(e));let c=t({type:e.Async,validator:a,message:s});return c._params=c._params?.concat(o),c(...r??[])}function l(n,r){let i,a,o=[],s=``;typeof n==`function`?(i=e.Inline,a=(e,...t)=>n(e,...t),o=[r]):({_type:i,validator:a,_message:s}=n,o=o=n._params?.concat(r));let c=t({type:e.Inline,validator:a,message:s});return c._params=c._params?.concat(o),c(...r)}function u(r,i){let a,o,s=[],c=``;typeof i==`function`?(a=e.Inline,o=i,s=[r]):({_type:a,validator:o,_message:c}=i,s=i._params?.concat([r]));function l(e,...t){let[i]=n([r]);return i?o(e,...t):!0}function u(e){let[t]=n([r]);return t}let d=t({type:a,validator:l,active:u,message:c}),f=[...s??[]];if(d._params=f,typeof d==`function`){let e=d(...f);return e}else return d}function d(e){return e?.constructor.name==`File`||e?.constructor.name==`FileList`}function f(e,t=!0){return e==null?!0:e instanceof Date?isNaN(e.getTime()):d(e)?e.size<=0:Array.isArray(e)?t?e.length===0:!1:typeof e==`object`&&e?Object.keys(e).length===0:!String(e).length}const ee=Symbol(`regle-rule`);function p(e){if(f(e))return!1;try{let t=null;if(e instanceof Date)t=e;else if(typeof e==`string`){let n=new Date(e);if(n.toString()===`Invalid Date`)return!1;t=n}return!!t}catch{return!1}}function m(e){let t=Object.prototype.toString.call(e);return e==null?new Date(NaN):e instanceof Date||typeof e==`object`&&t===`[object Date]`?new Date(e.getTime()):typeof e==`number`||t===`[object Number]`||typeof e==`string`||t===`[object String]`?new Date(e):new Date(NaN)}function h(e,t=!0){return!f(typeof e==`string`?e.trim():e,t)}function g(e){return e==null?!1:typeof e==`number`?!isNaN(e):!1}function _(e,...t){if(f(e))return!0;let n=typeof e==`number`?e.toString():e;return t.every(e=>(e.lastIndex=0,e.test(n)))}function v(e){let t=a(e);return Array.isArray(t)?t.length:typeof t==`object`?Object.keys(t).length:typeof t==`number`?isNaN(t)?0:t:String(t).length}function y(e){if(typeof e==`number`)return e;if(e!=null){if(typeof e==`string`){let t=e.trim()!==e;return t?NaN:+e}return NaN}return NaN}function te(...e){let n=e.some(e=>typeof e==`function`?e.constructor.name===`AsyncFunction`:e._async),r=e.map(e=>{if(typeof e==`function`)return null;{let t=e._params;return t?.length?t:[]}}).flat().filter(e=>!!e);function i(e,t,...n){let r=[],i=0;for(let a of e)if(typeof a==`function`)r.push(a(t)),i++;else{let e=a._params?.length??0;r.push(a.validator(t,...n.slice(i,e))),e&&(i+=e)}return r}function a(e){let t=e?.some(e=>typeof e!=`boolean`);return t?{$valid:e.every(e=>typeof e==`boolean`?!!e:e.$valid),...e.reduce((e,t)=>{if(typeof t==`boolean`)return e;let{$valid:n,...r}=t;return{...e,...r}},{})}:e.every(e=>!!e)}let o;o=e.length?n?async(t,...n)=>{let r=await Promise.all(i(e,t,...n));return a(r)}:(t,...n)=>{let r=i(e,t,...n);return a(r)}:e=>!1;let s=t({type:`and`,validator:o,message:`The value does not match all of the provided validators`}),c=[...r??[]];if(s._params=c,typeof s==`function`){let e=s(...c);return e}else return s}function b(...e){let n=e.some(e=>typeof e==`function`?e.constructor.name===`AsyncFunction`:e._async),r=e.map(e=>typeof e==`function`?null:e._params).flat().filter(e=>!!e);function i(e,t,...n){let r=[],i=0;for(let a of e)if(typeof a==`function`)r.push(a(t)),i++;else{let e=a._params?.length??0;r.push(a.validator(t,...n.slice(i,e))),e&&(i+=e)}return r}function a(e){let t=e.some(e=>typeof e!=`boolean`);return t?{$valid:e.some(e=>typeof e==`boolean`?!!e:e.$valid),...e.reduce((e,t)=>{if(typeof t==`boolean`)return e;let{$valid:n,...r}=t;return{...e,...r}},{})}:e.some(e=>!!e)}let o=n?async(t,...n)=>{let r=await Promise.all(i(e,t,...n));return a(r)}:(t,...n)=>{let r=i(e,t,...n);return a(r)},s=t({type:`or`,validator:o,message:`The value does not match any of the provided validators`}),c=[...r??[]];if(s._params=c,typeof s==`function`){let e=s(...c);return e}else return s}function x(e,n){let r,i,a,o,s;typeof e==`function`?(i=e,s=e.constructor.name===`AsyncFunction`):({_type:r,validator:i,_params:o}=e,s=e._async),a=s?async(e,...t)=>{if(h(e)){let n=await i(e,...t);return!n}return!0}:(e,...t)=>h(e)?!i(e,...t):!0;let c=t({type:`not`,validator:a,message:n??`Error`}),l=[...o??[]];if(c._params=l,typeof c==`function`){let e=c(...l);return e}else return c}const S=/^[a-zA-Z]*$/,C=/^[\w.]+$/,w=t({type:`alpha`,validator(e,t){return f(e)?!0:t?.allowSymbols?_(e,C):_(e,S)},message:`The value is not alphabetical`}),T=/^[a-zA-Z0-9]*$/,E=/^[a-zA-Z0-9_]*$/,D=t({type:`alphaNum`,validator(e,t){return f(e)?!0:t?.allowSymbols?_(e,E):_(e,T)},message:`The value must be alpha-numeric`}),O=t({type:`between`,validator:(e,t,n,r)=>{let{allowEqual:i=!0}=r??{};if(h(e)&&h(t)&&h(n)){let r=y(e),a=y(t),o=y(n);return g(r)&&g(a)&&g(o)?i?r>=a&&r<=o:r>a&&r<o:(console.warn(`[between] Value or parameters aren't numbers, got value: ${e}, min: ${t}, max: ${n}`),!1)}return!0},message:({$params:[e,t]})=>`The value must be between ${e} and ${t}`}),k=t({type:`boolean`,validator:e=>h(e)?typeof e==`boolean`:!0,message:`The value must be a native boolean`}),A=t({type:`checked`,validator:e=>h(e)?e===!0:!0,message:`The field must be checked`}),j=t({type:`contains`,validator(e,t){return h(e)&&h(t)?e.includes(t):!0},message({$params:[e]}){return`The value must contain ${e}`}}),M=t({type:`date`,validator:e=>h(e)?e instanceof Date:!0,message:`The value must be a native Date constructor`});function N(){return navigator.languages==null?navigator.language:navigator.languages[0]}function P(e){return e?new Intl.DateTimeFormat(N(),{dateStyle:`short`}).format(new Date(e)):`?`}const F=t({type:`dateAfter`,validator:(e,t,n)=>{let{allowEqual:r=!0}=n??{};if(h(e)&&h(t)){if(p(e)&&p(t)){let n=r?m(e).getTime()>=m(t).getTime():m(e).getTime()>m(t).getTime();return n?!0:{$valid:!1,error:`date-not-after`}}return{$valid:!1,error:`value-or-parameter-not-a-date`}}return!0},message:({$params:[e],error:t})=>t===`value-or-parameter-not-a-date`?`The values must be dates`:`The date must be after ${P(e)}`}),I=t({type:`dateBefore`,validator:(e,t,n)=>{let{allowEqual:r=!0}=n??{};if(h(e)&&h(t)){if(p(e)&&p(t)){let n=r?m(e).getTime()<=m(t).getTime():m(e).getTime()<m(t).getTime();return n?!0:{$valid:!1,error:`date-not-before`}}return{$valid:!1,error:`value-or-parameter-not-a-date`}}return!0},message:({$params:[e],error:t})=>t===`value-or-parameter-not-a-date`?`The values must be dates`:`The date must be before ${P(e)}`}),L=t({type:`dateBetween`,validator:(e,t,n,r)=>{let{allowEqual:i=!0}=r??{};return p(e)&&p(t)&&p(n)?i?m(e).getTime()>=m(t).getTime()&&m(e).getTime()<=m(n).getTime():m(e).getTime()>m(t).getTime()&&m(e).getTime()<m(n).getTime():!0},message:({$params:[e,t]})=>`The date must be between ${P(e)} and ${P(t)}`}),R=/^[-]?\d*(\.\d+)?$/,z=t({type:`decimal`,validator(e){return f(e)?!0:_(e,R)},message:`The value must be decimal`}),B=/^(?:[A-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[A-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9]{2,}(?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])$/i,V=t({type:`email`,validator(e){return f(e)?!0:_(e,B)},message:`The value must be an valid email address`}),H=t({type:`endsWith`,validator(e,t){return h(e)&&h(t)?e.endsWith(t):!0},message({$params:[e]}){return`The value must end with ${e}`}}),U=t({type:`exactLength`,validator:(e,t)=>h(e,!1)&&h(t)?g(t)?v(e)===t:(console.warn(`[minLength] Parameter isn't a number, got parameter: ${t}`),!1):!0,message:({$params:[e]})=>`The value should be exactly ${e} characters long`}),ne=t({type:`exactValue`,validator:(e,t)=>h(e)&&h(t)?g(t)&&!isNaN(y(e))?y(e)===t:(console.warn(`[exactValue] Value or parameter isn't a number, got value: ${e}, parameter: ${t}`),!0):!0,message:({$params:[e]})=>`The value must be equal to ${e}`}),W=/^[a-fA-F0-9]*$/,G=t({type:`hexadecimal`,validator(e){return f(e)?!0:_(e,W)},message:`The value must be hexadecimal`}),K=/(^[0-9]*$)|(^-[0-9]+$)/,q=t({type:`integer`,validator(e){return f(e)?!0:_(e,K)},message:`The value must be an integer`});function J(e){if(e.length>3||e.length===0||e[0]===`0`&&e!==`0`||!e.match(/^\d+$/))return!1;let t=e|0;return t>=0&&t<=255}const Y=t({type:`ipv4Address`,validator(e){if(f(e))return!0;if(typeof e!=`string`)return!1;let t=e.split(`.`);return t.length===4&&t.every(J)},message:`The value is not a valid IPv4 address`});function X(e){let t=r(()=>i(e)),n=o(l((e,t)=>h(e)&&h(t)?t===e:!0,[t]),({$params:[e]})=>`Value should be ${e}.`);return n}const Z=t({type:`macAddress`,validator(e,t=`:`){if(f(e))return!0;if(typeof e!=`string`)return!1;let n=typeof t==`string`&&t!==``?e.split(t):e.length===12||e.length===16?e.match(/.{2}/g):null;return n!==null&&(n.length===6||n.length===8)&&n.every(Q)},message:`The value is not a valid MAC Address`}),Q=e=>e.toLowerCase().match(/^[0-9a-f]{2}$/),re=t({type:`maxLength`,validator:(e,t,n)=>{let{allowEqual:r=!0}=n??{};return h(e,!1)&&h(t)?g(t)?r?v(e)<=t:v(e)<t:(console.warn(`[maxLength] Value or parameter isn't a number, got value: ${e}, parameter: ${t}`),!1):!0},message:({$value:e,$params:[t]})=>Array.isArray(e)?`This list should have maximum ${t} items`:`The value length should not exceed ${t}`}),ie=t({type:`maxValue`,validator:(e,t,n)=>{let{allowEqual:r=!0}=n??{};return h(e)&&h(t)?g(t)&&!isNaN(y(e))?r?y(e)<=t:y(e)<t:(console.warn(`[maxValue] Value or parameter isn't a number, got value: ${e}, parameter: ${t}`),!0):!0},message:({$params:[e,t]})=>{let{allowEqual:n=!0}=t??{};return n?`The value must be less than or equal to ${e}`:`The value must be less than ${e}`}}),ae=t({type:`minLength`,validator:(e,t,n)=>{let{allowEqual:r=!0}=n??{};return h(e,!1)&&h(t)?g(t)?r?v(e)>=t:v(e)>t:(console.warn(`[minLength] Parameter isn't a number, got parameter: ${t}`),!1):!0},message:({$value:e,$params:[t]})=>Array.isArray(e)?`The list should have at least ${t} items`:`The value length should be at least ${t}`}),oe=t({type:`minValue`,validator:(e,t,n)=>{let{allowEqual:r=!0}=n??{};return h(e)&&h(t)?g(t)&&!isNaN(y(e))?r?y(e)>=t:y(e)>t:(console.warn(`[minValue] Value or parameter isn't a number, got value: ${e}, parameter: ${t}`),!0):!0},message:({$params:[e,t]})=>{let{allowEqual:n=!0}=t??{};return n?`The value must be greater than or equal to ${e}`:`The value must be greater than ${e}`}});function se(e){let t=Object.keys(e).filter(t=>typeof e[e[t]]!=`number`),n={};for(let r of t)n[r]=e[r];return Object.values(n)}function ce(e){let t=r(()=>i(e)),n=o(l((e,t)=>{if(h(e)&&!f(t)){let n=se(t);return n.includes(e)}return!0},[t]),({$params:[e]})=>`The value should be one of those options: ${Object.values(e).join(`, `)}.`);return n}const le=t({type:`number`,validator:e=>h(e)?g(e):!0,message:`The value must be a native number`}),ue=/^\d*(\.\d+)?$/,de=t({type:`numeric`,validator(e){return f(e)?!0:_(e,ue)},message:`The value must be numeric`}),fe=t({type:`oneOf`,validator(e,t){return h(e)&&h(t,!1)?t.includes(e):!0},message:({$params:[e]})=>`The value should be one of those options: ${e.join(`, `)}.`}),pe=t({type:`regex`,validator(e,t){if(h(e)){let n=Array.isArray(t)?t:[t];return _(e,...n)}return!0},message:`The value does not match the required pattern`}),$=t({type:`required`,validator:e=>h(e),message:`This field is required`}),me=t({type:`required`,validator(e,t){return t?h(e):!0},message:`This field is required`,active({$params:[e]}){return e}}),he=t({type:`required`,validator(e,t){return t?!0:h(e)},message:`This field is required`,active({$params:[e]}){return!e}}),ge=t({type:`sameAs`,validator(e,t,n){return f(e)?!0:e===t},message({$params:[e,t=`other`]}){return`The value must be equal to the ${t} value`}}),_e=t({type:`startsWith`,validator(e,t){return h(e)&&h(t)?e.startsWith(t):!0},message({$params:[e]}){return`The value must end with ${e}`}}),ve=t({type:`string`,validator:e=>h(e)?typeof e==`string`:!0,message:`The value must be a string`});function ye(){return()=>!0}const be=/^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u00a1-\uffff][a-z0-9\u00a1-\uffff_-]{0,62})?[a-z0-9\u00a1-\uffff]\.)+(?:[a-z\u00a1-\uffff]{2,}\.?))(?::\d{2,5})?(?:[/?#]\S*)?$/i,xe=t({type:`url`,validator(e){return f(e)?!0:_(e,be)},message:`The value is not a valid URL address`});export{w as alpha,D as alphaNum,te as and,u as applyIf,O as between,k as boolean,A as checked,j as contains,M as date,F as dateAfter,I as dateBefore,L as dateBetween,z as decimal,V as email,H as endsWith,U as exactLength,ne as exactValue,v as getSize,G as hexadecimal,q as integer,Y as ipv4Address,p as isDate,f as isEmpty,h as isFilled,g as isNumber,X as literal,Z as macAddress,_ as matchRegex,re as maxLength,ie as maxValue,ae as minLength,oe as minValue,ce as nativeEnum,x as not,le as number,de as numeric,fe as oneOf,b as or,pe as regex,$ as required,me as requiredIf,he as requiredUnless,ge as sameAs,_e as startsWith,ve as string,m as toDate,y as toNumber,ye as type,xe as url,c as withAsync,o as withMessage,l as withParams,s as withTooltip};
package/package.json CHANGED
@@ -1,25 +1,25 @@
1
1
  {
2
2
  "name": "@regle/rules",
3
- "version": "1.3.0",
3
+ "version": "1.3.1",
4
4
  "description": "Collection of rules and helpers for Regle",
5
5
  "dependencies": {
6
- "@regle/core": "1.3.0"
6
+ "@regle/core": "1.3.1"
7
7
  },
8
8
  "devDependencies": {
9
9
  "@typescript-eslint/eslint-plugin": "8.28.0",
10
10
  "@typescript-eslint/parser": "8.28.0",
11
- "@types/node": "22.15.3",
12
- "@vue/reactivity": "3.5.13",
11
+ "@types/node": "22.15.29",
12
+ "@vue/reactivity": "3.5.16",
13
13
  "@vue/test-utils": "2.4.6",
14
- "eslint": "9.25.1",
15
- "eslint-config-prettier": "9.1.0",
16
- "eslint-plugin-vue": "9.33.0",
14
+ "eslint": "9.28.0",
15
+ "eslint-config-prettier": "10.1.5",
16
+ "eslint-plugin-vue": "10.1.0",
17
17
  "prettier": "3.5.3",
18
- "tsdown": "0.12.3",
19
- "type-fest": "4.40.1",
18
+ "tsdown": "0.12.7",
19
+ "type-fest": "4.41.0",
20
20
  "typescript": "5.8.3",
21
- "vitest": "3.1.2",
22
- "vue": "3.5.13",
21
+ "vitest": "3.2.2",
22
+ "vue": "3.5.16",
23
23
  "vue-eslint-parser": "10.1.3",
24
24
  "vue-tsc": "2.2.10"
25
25
  },