@regle/core 0.1.4 → 0.1.5
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/dist/index.d.ts +46 -21
- package/dist/index.js +1642 -1
- package/package.json +3 -3
package/dist/index.d.ts
CHANGED
|
@@ -11,7 +11,6 @@ type ExcludeByType<T, U> = {
|
|
|
11
11
|
[K in keyof T as T[K] extends U ? never : K]: T[K] extends U ? never : T[K];
|
|
12
12
|
};
|
|
13
13
|
type NonPresentKeys<TSource extends Record<string, any>, Target extends Record<string, any>> = Omit<Target, keyof TSource>;
|
|
14
|
-
type NoInferLegacy<A extends any> = [A][A extends any ? 0 : never];
|
|
15
14
|
|
|
16
15
|
type ArrayElement<T> = T extends Array<infer U> ? U : never;
|
|
17
16
|
|
|
@@ -208,11 +207,11 @@ type RegleCollectionRuleDefinition<TValue = any[], TCustomRules extends Partial<
|
|
|
208
207
|
* @argument
|
|
209
208
|
* createRule arguments options
|
|
210
209
|
*/
|
|
211
|
-
interface RegleRuleInit<TValue extends any, TParams extends [...any[]], TReturn extends RegleRuleMetadataDefinition | Promise<RegleRuleMetadataDefinition
|
|
210
|
+
interface RegleRuleInit<TValue extends any, TParams extends [...any[]] = [], TReturn extends RegleRuleMetadataDefinition | Promise<RegleRuleMetadataDefinition> = boolean, TMetadata extends RegleRuleMetadataDefinition = RegleRuleMetadataDefinition, TAsync extends boolean = TReturn extends Promise<any> ? true : false> {
|
|
212
211
|
type?: string;
|
|
213
212
|
validator: (value: Maybe<TValue>, ...args: TParams) => TReturn;
|
|
214
|
-
message: string | string[] | ((value: Maybe<TValue>, metadata: RegleRuleMetadataConsumer<
|
|
215
|
-
active?: boolean | ((value: Maybe<TValue>, metadata: RegleRuleMetadataConsumer<
|
|
213
|
+
message: string | string[] | ((value: Maybe<TValue>, metadata: RegleRuleMetadataConsumer<TParams, TMetadata>) => string | string[]);
|
|
214
|
+
active?: boolean | ((value: Maybe<TValue>, metadata: RegleRuleMetadataConsumer<TParams, TMetadata>) => boolean);
|
|
216
215
|
}
|
|
217
216
|
/**
|
|
218
217
|
* @argument
|
|
@@ -228,29 +227,55 @@ interface RegleRuleCore<TValue extends any, TParams extends any[] = [], TAsync e
|
|
|
228
227
|
type DefaultValidators = {
|
|
229
228
|
alpha: RegleRuleDefinition<string>;
|
|
230
229
|
alphaNum: RegleRuleDefinition<string | number>;
|
|
231
|
-
between: RegleRuleWithParamsDefinition<number, [min: number
|
|
230
|
+
between: RegleRuleWithParamsDefinition<number, [min: Maybe<number>, max: Maybe<number>]>;
|
|
232
231
|
checked: RegleRuleDefinition<boolean, [], false, boolean, boolean>;
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
232
|
+
contains: RegleRuleWithParamsDefinition<string, [part: Maybe<string>], false, boolean>;
|
|
233
|
+
dateAfter: RegleRuleWithParamsDefinition<string | Date, [
|
|
234
|
+
after: Maybe<string | Date>
|
|
235
|
+
], false, true | {
|
|
236
|
+
$valid: false;
|
|
237
|
+
error: 'date-not-after';
|
|
238
|
+
} | {
|
|
239
|
+
$valid: false;
|
|
240
|
+
error: 'value-or-paramater-not-a-date';
|
|
241
|
+
}>;
|
|
242
|
+
dateBefore: RegleRuleWithParamsDefinition<string | Date, [
|
|
243
|
+
before: Maybe<string | Date>
|
|
244
|
+
], false, true | {
|
|
245
|
+
$valid: false;
|
|
246
|
+
error: 'date-not-before';
|
|
247
|
+
} | {
|
|
248
|
+
$valid: false;
|
|
249
|
+
error: 'value-or-paramater-not-a-date';
|
|
250
|
+
}>;
|
|
251
|
+
dateBetween: RegleRuleWithParamsDefinition<string | Date, [
|
|
252
|
+
before: Maybe<string | Date>,
|
|
253
|
+
after: Maybe<string | Date>
|
|
254
|
+
], false, boolean>;
|
|
255
|
+
decimal: RegleRuleDefinition<string | number, [], false, boolean, string | number>;
|
|
256
|
+
email: RegleRuleDefinition<string, [], false, boolean, string>;
|
|
257
|
+
endsWith: RegleRuleWithParamsDefinition<string, [part: Maybe<string>], false, boolean>;
|
|
238
258
|
exactLength: RegleRuleWithParamsDefinition<string | any[] | Record<PropertyKey, any>, [
|
|
239
259
|
count: number
|
|
240
260
|
], false, boolean>;
|
|
241
|
-
integer: RegleRuleDefinition<number |
|
|
242
|
-
ipAddress: RegleRuleDefinition<string, [], false>;
|
|
243
|
-
macAddress: RegleRuleWithParamsDefinition<string, [
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
261
|
+
integer: RegleRuleDefinition<string | number, [], false, boolean, string | number>;
|
|
262
|
+
ipAddress: RegleRuleDefinition<string, [], false, boolean, string>;
|
|
263
|
+
macAddress: RegleRuleWithParamsDefinition<string, [
|
|
264
|
+
separator?: string | undefined
|
|
265
|
+
], false, boolean>;
|
|
266
|
+
maxLength: RegleRuleWithParamsDefinition<string | any[] | Record<PropertyKey, any>, [
|
|
267
|
+
count: number
|
|
268
|
+
], false, boolean>;
|
|
269
|
+
maxValue: RegleRuleWithParamsDefinition<number, [count: number], false, boolean>;
|
|
270
|
+
minLength: RegleRuleWithParamsDefinition<string | any[] | Record<PropertyKey, any>, [
|
|
247
271
|
count: number
|
|
248
|
-
]>;
|
|
249
|
-
minValue: RegleRuleWithParamsDefinition<number, [count: number]>;
|
|
250
|
-
numeric: RegleRuleDefinition<number |
|
|
272
|
+
], false, boolean>;
|
|
273
|
+
minValue: RegleRuleWithParamsDefinition<number, [count: number], false, boolean>;
|
|
274
|
+
numeric: RegleRuleDefinition<string | number, [], false, boolean, string | number>;
|
|
251
275
|
required: RegleRuleDefinition<unknown, []>;
|
|
252
|
-
sameAs: RegleRuleWithParamsDefinition<unknown, [target: unknown]>;
|
|
253
|
-
|
|
276
|
+
sameAs: RegleRuleWithParamsDefinition<unknown, [target: unknown], false, boolean>;
|
|
277
|
+
startsWith: RegleRuleWithParamsDefinition<string, [part: Maybe<string>], false, boolean>;
|
|
278
|
+
url: RegleRuleDefinition<string, [], false, boolean, string>;
|
|
254
279
|
};
|
|
255
280
|
|
|
256
281
|
type CustomRulesDeclarationTree = {
|