deverything 0.8.1 → 0.10.0

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 CHANGED
@@ -20,13 +20,13 @@ Contributions always welcome!
20
20
  - `isBrowser()` to detect if you are on the browser
21
21
  - `isClient()` to detect if you are ont the browser/client
22
22
  - `isEmail()` this is a relaxed check, use your own validation if you need to be strict
23
- - `isEmpty()` to check for empty object, empty array, empty string, null or undefined
23
+ - `isEmpty()` to check for empty object, empty array, empty string, null or undefined
24
24
  - `isEmptyString()` trims the string and checks if something is left
25
25
  - `isEmptyArray()`
26
26
  - `isEmptyObject()`
27
27
  - `isFunction()`
28
28
  - `isJsDate()` if it's a **valid** javascript's Date
29
- - `isKeyOfObject()`
29
+ - `isKey()`
30
30
  - `isNumber()` if the arg is number, and also usable (no infinity)
31
31
  - `isInt()`
32
32
  - `isEven()`
@@ -34,7 +34,11 @@ Contributions always welcome!
34
34
  - `isPositive()`
35
35
  - `isNegative()`
36
36
  - `isNumeric()`
37
- - `isObject()` if it's a js plain Object
37
+ - `isObject()` if it's a js plain Object
38
+ - `isPromise()`
39
+ - `isPWA()`
40
+ - `isReactElement()`
41
+ - `isRegExp()`
38
42
  - `isServer()` if you are on the server
39
43
  - `isString()`
40
44
  - `isStringDate()` also checks if the string passed is a **valid** date
@@ -44,20 +48,23 @@ Contributions always welcome!
44
48
  ### Helpers
45
49
 
46
50
  - `array()` create an arbitrary array based on a function
51
+ - `capitalize()` word => Word
47
52
  - `first()` get the first element of an array
53
+ - `getKeys()` get the keys of an object, includes symbols
48
54
  - `last()` get the last element of an array
55
+ - ⭐ `merge()` deep merge objects
49
56
  - `moveToFirst()` move array element to first
50
57
  - `moveToLast()` move array element to last
51
- - `parseDate()` pass anything Date-Like, and get a JS Date back
58
+ - `parseDate()` pass anything Date-Like, and get a JS Date back
52
59
 
53
60
  ### Random data generators
54
61
 
55
62
  These functions are optimized for low entropy random data generation useful for Unit Testing, Storybook, Pass real validations, Reverse hacking, Penetration testing...
56
63
 
57
64
  - `randomAddress()`
58
- - `randomArrayItem()`
65
+ - `randomArrayItem()`
59
66
  - `randomBool()`
60
- - `randomCoords()`
67
+ - `randomCoords()`
61
68
  - `randomLat()`
62
69
  - `randomLng()`
63
70
  - `randomDate()`
@@ -72,6 +79,8 @@ These functions are optimized for low entropy random data generation useful for
72
79
  - `randomHandle()` useful for social identifiers, or slugs
73
80
  - `randomHexColor()`
74
81
  - `randomHexValue()`
82
+ - `randomHtmlColorName()`
83
+ - `randomIBAN()`
75
84
  - `randomInt()`
76
85
  - `randomPositiveInt()` > 0
77
86
  - `randomNegativeInt()` < 0
@@ -81,7 +90,10 @@ These functions are optimized for low entropy random data generation useful for
81
90
  - `randomFirstName()`
82
91
  - `randomLastName()`
83
92
  - `randomFullName()`
93
+ - `randomNumericId()` autoincremental process-unique id
84
94
  - `randomParagraph()`
95
+ - `randomPassword()`
96
+ - `randomUUID()` lightweight uuid generation, passing UUID validation
85
97
  - `randomWord()`
86
98
 
87
99
  ### TypeScript Helpers
@@ -94,6 +106,7 @@ These functions are optimized for low entropy random data generation useful for
94
106
  - `MaybePromiseOrValueArray`
95
107
  - `NonUndefined`
96
108
  - `ObjectValues`
109
+ - `PlainObject`
97
110
 
98
111
  ## Development
99
112
 
package/dist/index.d.ts CHANGED
@@ -2,16 +2,17 @@ declare const array: <U extends (...args: any) => any>(length: number, mapFn: U)
2
2
 
3
3
  declare const capitalize: (string: string) => string;
4
4
 
5
+ declare const getKeys: (arg: object) => string[];
6
+ declare const getEnumerableOwnPropertySymbols: (arg: object) => any[];
7
+
5
8
  declare const first: <T>(arr?: T[] | undefined) => T | undefined;
6
9
 
7
10
  declare const last: <T>(arr?: T[] | undefined) => T | undefined;
8
11
 
9
- declare const moveToFirst: <T>(items: T[], condition: (item: T, i: number, items: T[]) => boolean) => T[];
10
-
11
- declare const moveToLast: <T>(items: T[], condition: (item: T, i: number, items: T[]) => boolean) => T[];
12
-
13
12
  type ObjectValues<ObjectType> = ObjectType[keyof ObjectType];
14
13
 
14
+ type PlainObject = Record<string | symbol, any>;
15
+
15
16
  type Maybe<T> = T | null | undefined;
16
17
  type Coords = {
17
18
  lat: number;
@@ -23,6 +24,12 @@ type MaybePromiseOrValueArray<T> = MaybePromiseOrValue<T>[];
23
24
  type DateLike = Date | string | number;
24
25
  type NonUndefined<T> = T extends undefined ? never : T;
25
26
 
27
+ declare const merge: (target: PlainObject, source: PlainObject) => PlainObject;
28
+
29
+ declare const moveToFirst: <T>(items: T[], condition: (item: T, i: number, items: T[]) => boolean) => T[];
30
+
31
+ declare const moveToLast: <T>(items: T[], condition: (item: T, i: number, items: T[]) => boolean) => T[];
32
+
26
33
  declare const parseDate: (arg?: Maybe<DateLike>) => Date | undefined;
27
34
 
28
35
  declare const randomAddress: () => {
@@ -53,7 +60,10 @@ declare const randomEmail: () => string;
53
60
 
54
61
  declare const randomEmoji: () => string;
55
62
 
56
- declare const randomEnumValue: (enumObject: any) => any;
63
+ declare const randomEnumKey: (enumObject: Record<string, string | number>) => string;
64
+
65
+ type EnumValue = string | number;
66
+ declare const randomEnumValue: (enumObject: Record<string, EnumValue>) => EnumValue;
57
67
 
58
68
  declare const randomFile: ({ name, extension, }?: {
59
69
  name?: string | undefined;
@@ -69,19 +79,37 @@ declare const randomHexColor: () => string;
69
79
 
70
80
  declare const randomHexValue: () => string;
71
81
 
82
+ declare const randomHtmlColorName: () => string;
83
+
84
+ declare const randomIBAN: () => string;
85
+
72
86
  declare const randomInt: (start?: number, end?: number) => number;
73
87
  declare const randomPositiveInt: (end?: number) => number;
74
88
  declare const randomNegativeInt: (start?: number) => number;
75
89
  declare const randomMaxSafeInt: () => number;
76
90
  declare const randomMaxInt: () => number;
91
+ declare const randomPercentage: () => number;
77
92
 
78
93
  declare const randomName: () => string;
79
94
  declare const randomFirstName: () => string;
80
95
  declare const randomLastName: () => string;
81
96
  declare const randomFullName: () => string;
82
97
 
98
+ declare const randomNumericId: () => number;
99
+
83
100
  declare const randomParagraph: () => string;
84
101
 
102
+ declare const randomPassword: () => string;
103
+
104
+ /**
105
+ * This is a light-weight version of the `generateUuid` function
106
+ * To be used only for test purposed and NOT for production
107
+ * Leave 0s, so it gets immediately recognized as a fake uuid
108
+ *
109
+ * /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i
110
+ */
111
+ declare const randomUUID: () => string;
112
+
85
113
  declare const randomWord: () => string;
86
114
 
87
115
  declare const isArray: <T>(value?: T[] | undefined) => value is T[];
@@ -100,11 +128,10 @@ declare const isEmptyArray: (arg: any[]) => boolean;
100
128
  declare const isEmptyObject: (arg: Object) => boolean;
101
129
 
102
130
  declare const isFunction: (arg: any) => boolean;
103
- declare const isPromise: (arg: any) => boolean;
104
131
 
105
132
  declare const isJsDate: (arg: any) => boolean;
106
133
 
107
- declare const isKeyOfObject: <T extends object>(key: string | number | symbol, obj: T) => key is keyof T;
134
+ declare const isKey: <T extends object>(key: string | number | symbol, obj: T) => key is keyof T;
108
135
 
109
136
  declare const isInt: (arg: number) => boolean;
110
137
  declare const isEven: (arg: number) => boolean;
@@ -117,6 +144,14 @@ declare const isNumeric: (num: number | string) => boolean;
117
144
 
118
145
  declare const isObject: (arg: any) => arg is object;
119
146
 
147
+ declare const isPromise: (arg: any) => boolean;
148
+
149
+ declare const isPWA: () => boolean;
150
+
151
+ declare const isReactElement: (value: any) => boolean;
152
+
153
+ declare const isRegExp: (arg: any) => arg is RegExp;
154
+
120
155
  declare const isServer: () => boolean;
121
156
 
122
157
  declare const isString: (arg: any) => boolean;
@@ -131,4 +166,4 @@ declare const isUUID: (arg: string) => boolean;
131
166
 
132
167
  declare const isValue: (arg?: Maybe<any>) => boolean;
133
168
 
134
- export { Coords, DateLike, JS_MAX_DIGITS, Maybe, MaybePromise, MaybePromiseOrValue, MaybePromiseOrValueArray, NonUndefined, ObjectValues, array, capitalize, first, isArray, isBoolean, isBrowser, isClient, isEmail, isEmpty, isEmptyArray, isEmptyObject, isEmptyString, isEven, isFunction, isInt, isJsDate, isKeyOfObject, isNegative, isNumber, isNumeric, isObject, isOdd, isPositive, isPromise, isServer, isString, isStringDate, isURL, isUUID, isUndefined, isValue, last, moveToFirst, moveToLast, parseDate, randomAddress, randomArrayItem, randomBool, randomCoords, randomDate, randomDateRange, randomEmail, randomEmoji, randomEnumValue, randomFile, randomFirstName, randomFloat, randomFullName, randomFutureDate, randomHandle, randomHexColor, randomHexValue, randomInt, randomLastName, randomLat, randomLng, randomMaxInt, randomMaxSafeInt, randomName, randomNegativeInt, randomParagraph, randomPastDate, randomPositiveInt, randomWord };
169
+ export { Coords, DateLike, EnumValue, JS_MAX_DIGITS, Maybe, MaybePromise, MaybePromiseOrValue, MaybePromiseOrValueArray, NonUndefined, ObjectValues, PlainObject, array, capitalize, first, getEnumerableOwnPropertySymbols, getKeys, isArray, isBoolean, isBrowser, isClient, isEmail, isEmpty, isEmptyArray, isEmptyObject, isEmptyString, isEven, isFunction, isInt, isJsDate, isKey, isNegative, isNumber, isNumeric, isObject, isOdd, isPWA, isPositive, isPromise, isReactElement, isRegExp, isServer, isString, isStringDate, isURL, isUUID, isUndefined, isValue, last, merge, moveToFirst, moveToLast, parseDate, randomAddress, randomArrayItem, randomBool, randomCoords, randomDate, randomDateRange, randomEmail, randomEmoji, randomEnumKey, randomEnumValue, randomFile, randomFirstName, randomFloat, randomFullName, randomFutureDate, randomHandle, randomHexColor, randomHexValue, randomHtmlColorName, randomIBAN, randomInt, randomLastName, randomLat, randomLng, randomMaxInt, randomMaxSafeInt, randomName, randomNegativeInt, randomNumericId, randomParagraph, randomPassword, randomPastDate, randomPercentage, randomPositiveInt, randomUUID, randomWord };
@@ -1,2 +1,89 @@
1
- "use strict";(()=>{var m=(t,e)=>Array.from({length:t},e);var x=t=>t.charAt(0).toUpperCase()+t.slice(1);var it=t=>t==null?void 0:t[0];var st=t=>t==null?void 0:t[t.length-1];var ct=(t,e)=>{let o=[...t];for(let n=0;n<o.length;n++)if(e(o[n],n,o)){let A=o.splice(n,1);o.unshift(A[0]);break}return o};var dt=(t,e)=>{let o=[...t];for(let n=0;n<o.length;n++)if(e(o[n],n,o)){let A=o.splice(n,1)[0];o.push(A);break}return o};var f=t=>Array.isArray(t);var S=t=>Object.prototype.toString.call(t)==="[object Object]";var c=t=>typeof t=="string";var E=t=>O(t)||z(t)||v(t)?!0:t==null,v=t=>c(t)&&t.trim().length===0,z=t=>f(t)&&t.length===0,O=t=>S(t)&&Object.keys(t).length===0;var p=t=>Object.prototype.toString.call(t)==="[object Date]"&&!isNaN(t);var gt=t=>{if(E(t))return;let e=new Date(t);if(p(e))return e};var F=[{city:"London",country:"United Kingdom",street:"Baker Street",number:"221B",zip:"NW1 6XE"},{city:"Birmingham",country:"United Kingdom",street:"Bordesley Street",number:"B1 1AA",zip:"B1 1AA"}],j=[{city:"New York",country:"United States",street:"Broadway",number:"42",zip:"10036"},{city:"Los Angeles",country:"United States",street:"Hollywood Boulevard",number:"6801",zip:"90028"}],U=[{city:"Paris",country:"France",street:"Rue de Rivoli",number:"75001",zip:"75001"},{city:"Berlin",country:"Germany",street:"Unter den Linden",number:"10117",zip:"10117"},{city:"Rome",country:"Italy",street:"Via del Corso",number:"00186",zip:"00186"},{city:"Madrid",country:"Spain",street:"Gran V\xEDa",number:"28013",zip:"28013"}],k=[{city:"Moscow",country:"Russia",street:"Tverskaya",number:"101000",zip:"101000"},{city:"Tokyo",country:"Japan",street:"Shinjuku",number:"160-0022",zip:"160-0022"},{city:"Beijing",country:"China",street:"Changan",number:"100005",zip:"100005"},{city:"Cairo",country:"Egypt",street:"Al-Muizz",number:"11511",zip:"11511"},{city:"Buenos Aires",country:"Argentina",street:"Avenida de Mayo",number:"1002",zip:"C1006AAQ"},{city:"Cape Town",country:"South Africa",street:"Adderley",number:"7700",zip:"7700"},{city:"Sydney",country:"Australia",street:"George",number:"2000",zip:"2000"},{city:"Rio de Janeiro",country:"Brazil",street:"Av. Presidente Vargas",number:"20021-000",zip:"20021-000"},{city:"Mexico City",country:"Mexico",street:"Paseo de la Reforma",number:"06500",zip:"06500"}],T=[...F,...j,...U,...k];var i=(t=-100,e=100)=>Math.floor(Math.random()*(e-t+1)+t),ht=(t=100)=>i(1,t),_t=(t=-100)=>i(t,-1),Dt=()=>i(-Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER),Lt=()=>i(-Number.MAX_VALUE,Number.MAX_VALUE);var r=t=>t[i(0,t.length-1)];var zt=()=>r(T);var jt=()=>!!i(0,1);var N=t=>t!=null&&!Number.isNaN(t);var Pt=16,b=(t=-9,e=9,o)=>{let n=Math.random()*(e-t)+t;return N(o)?parseFloat(n.toFixed(o)):n};var Ht=()=>({lat:J(),lng:P()}),J=()=>b(-90,90),P=()=>b(-180,180);var d=(t,e)=>{let o=t||new Date(-864e13),n=e||new Date(864e13);return new Date(o.getTime()+Math.random()*(n.getTime()-o.getTime()))},qt=()=>{let t=new Date(new Date().getTime()+3e5);return d(t,void 0)},Gt=()=>d(void 0,new Date),$t=()=>{let t=d();return{endDate:d(t),startDate:t}};var g=["gmail.com","yahoo.com","hotmail.com","aol.com","msn.com","comcast.net","live.com","sbcglobal.net","verizon.net","att.net","mac.com","me.com","earthlink.net","cox.net","optonline.net","charter.net","shaw.ca","yahoo.ca","googlemail.com","mail.com","qq.com","web.de","gmx.de","mail.ru"];var I=["Aardvark","Albatross","Alligator","Alpaca","Ant","Anteater","Antelope","Ape"],M=["Axe","Ball Peen Hammer","Band Saw","Bench Grinder","Biscuit Joiner","Bolt Cutter","Boring Machine","Bow Saw"],a=["Abigail","Adam","Adrian","Agnes","Alan","Albert","Alexander","Alice","Amanda","Amelia","Amy","Andrew"],s=["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White"],W=["\u0410\u0431\u0438\u0433\u0430\u0438\u043B","\u0410\u0434\u0430\u043C","\u0410\u0434\u0440\u0438\u0430\u043D","\u0410\u0433\u043D\u0435\u0441","\u0410\u043B\u0430\u043D","\u0410\u043B\u044C\u0431\u0435\u0440\u0442","\u0410\u043B\u0435\u043A\u0441\u0430\u043D\u0434\u0440","\u0410\u043B\u0438\u0441\u0430","\u0410\u043C\u0430\u043D\u0434\u0430","\u0410\u043C\u0435\u043B\u0438\u044F","\u042D\u043C\u0438","\u042D\u043D\u0434\u0440\u044E"],H=["\u0421\u043C\u0438\u0442","\u0414\u0436\u043E\u043D\u0441\u043E\u043D","\u0423\u0438\u043B\u044C\u044F\u043C\u0441","\u0414\u0436\u043E\u043D\u0441","\u0411\u0440\u0430\u0443\u043D","\u0414\u044D\u0432\u0438\u0441","\u041C\u0438\u043B\u043B\u0435\u0440","\u0412\u0438\u043B\u0441\u043E\u043D","\u041C\u0443\u0440","\u0422\u0435\u0439\u043B\u043E\u0440","\u0410\u043D\u0434\u0435\u0440\u0441\u043E\u043D","\u0422\u043E\u043C\u0430\u0441","\u0414\u0436\u0435\u043A\u0441\u043E\u043D","\u0423\u0430\u0439\u0442"],X=["\u30A2\u30D3\u30B2\u30A4\u30EB","\u30A2\u30C0\u30E0","\u30A2\u30C9\u30EA\u30A2\u30F3","\u30A2\u30B0\u30CD\u30B9","\u30A2\u30E9\u30F3","\u30A2\u30EB\u30D0\u30FC\u30C8","\u30A2\u30EC\u30AF\u30B5\u30F3\u30C0\u30FC","\u30A2\u30EA\u30B9","\u30A2\u30DE\u30F3\u30C0","\u30A2\u30E1\u30EA\u30A2","\u30A2\u30DF\u30FC","\u30A2\u30F3\u30C9\u30EA\u30E5\u30FC"],q=["\u30B9\u30DF\u30B9","\u30B8\u30E7\u30F3\u30BD\u30F3","\u30A6\u30A3\u30EA\u30A2\u30E0\u30BA","\u30B8\u30E7\u30FC\u30F3\u30BA","\u30D6\u30E9\u30A6\u30F3","\u30C7\u30A4\u30D3\u30B9","\u30DF\u30E9\u30FC","\u30A6\u30A3\u30EB\u30BD\u30F3","\u30E2\u30A2","\u30BF\u30A4\u30E9\u30FC","\u30A2\u30F3\u30C0\u30FC\u30BD\u30F3","\u30C8\u30FC\u30DE\u30B9","\u30B8\u30E3\u30AF\u30BD\u30F3","\u30DB\u30EF\u30A4\u30C8"],G=["\u0623\u0628\u064A\u062C\u064A\u0644","\u0622\u062F\u0645","\u0622\u062F\u0631\u064A\u0627\u0646","\u0623\u063A\u0646\u064A\u0633","\u0622\u0644\u0627\u0646","\u0622\u0644\u0628\u0631\u062A","\u0623\u0644\u0643\u0633\u0646\u062F\u0631","\u0622\u0644\u064A\u0633","\u0622\u0645\u0627\u0646\u062F\u0627","\u0622\u0645\u064A\u0644\u064A\u0627","\u0622\u0645\u064A","\u0623\u0646\u062F\u0631\u0648"],$=["\u0633\u0645\u064A\u062B","\u062C\u0648\u0646\u0633\u0648\u0646","\u0648\u064A\u0644\u064A\u0627\u0645\u0632","\u062C\u0648\u0646\u0632","\u0628\u0631\u0627\u0648\u0646","\u062F\u064A\u0641\u064A\u0633","\u0645\u064A\u0644\u0631","\u0648\u064A\u0644\u0633\u0648\u0646","\u0645\u0648\u0631","\u062A\u0627\u064A\u0644\u0648\u0631","\u0623\u0646\u062F\u0631\u0633\u0648\u0646","\u062A\u0648\u0645\u0627\u0633","\u062C\u0627\u0643\u0633\u0648\u0646","\u0648\u0627\u064A\u062A"],h=[...a,...W,...X,...G],_=[...s,...H,...q,...$];var D=()=>(r(a)+"."+r(s)).toLowerCase()+i(11,99);var ae=()=>`${D()}@${r(g)}`;var L=["\u{1F600}","\u{1F601}","\u{1F602}","\u{1F923}","\u{1F603}","\u{1F604}","\u{1F605}","\u{1F606}","\u{1F609}","\u{1F60A}","\u{1F60B}","\u{1F60E}","\u{1F60D}","\u{1F618}","\u{1F617}","\u{1F619}"];var de=()=>r(L);var ye=t=>{let e=[];return Object.values(t).forEach(o=>{o in t&&!e.includes(o)&&e.push(t[o])}),console.log(e),r(e)};var K=["abide","abound","accept","accomplish","achieve","acquire","act","adapt","add","address","adjust","admire","admit","adopt","advance","advise","afford","agree","alert","allow"],Y=["abandon","ability","able","abortion","about","above","abroad","absence","absent","absolute"],Q=["abandoned","abdominal","ability","able","abnormal","abolish","abortion","about","above","abroad","absence","absent","absolute"],Z=["abnormally","aboard","absentmindedly","absolutely","absurdly","abundantly","abysmally","academically","acceleratedly","accentually","acceptably","accessibly","accidentally","accommodatingly"],tt=["Pneumonoultramicroscopicsilicovolcanoconiosis","Floccinaucinihilipilification","Pseudopseudohypoparathyroidism","Hippopotomonstrosesquippedaliophobia","Antidisestablishmentarianism","Supercalifragilisticexpialidocious","Honorificabilitudinitatibus"];var B=[...K,...Y,...Q,...Z,...tt];var l=()=>r(B);var R=()=>x(m(8,()=>l()).join(" "))+".";var et=["png","jpg","jpeg","gif","svg","webp"],_e=({name:t,extension:e}={})=>{if(typeof File>"u")return;let o=e||r(et);return new File([R()],`${t||l()}.${o}`,{type:`image/${o}`})};var u=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"];var Ce=()=>"#"+m(6,()=>r(u)).join("");var Fe=()=>r(u);var Je=()=>r([...I,...M]),Pe=()=>r(h),Ve=()=>r(_),We=()=>r(a)+" "+r(s);var Xe=t=>Object.prototype.toString.call(t)==="[object Boolean]";var w=()=>typeof window>"u";var C=()=>!w();var Qe=C;var eo=t=>c(t)&&/\S+@\S+\.\S+/.test(t);var ro=t=>Object.prototype.toString.call(t)==="[object Function]",no=t=>t instanceof Promise;var ao=(t,e)=>t in e;var y=t=>Number.isInteger(t),mo=t=>y(t)&&!(t%2),co=t=>y(t)&&!!(t%2),po=t=>y(t)&&t>0,lo=t=>y(t)&&t<0,uo=t=>Object.prototype.toString.apply(t)==="[object Number]"&&isFinite(t);var Ao=t=>!isNaN(t);var fo=t=>{let e=new Date(t);return p(e)};var Eo=t=>typeof t>"u";var ot=new RegExp("^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.?)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i"),No=t=>!!t&&ot.test(t);var Io=t=>/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(t);})();
1
+ (function (exports) {
2
+ 'use strict';
3
+
4
+ var c=(t,e)=>Array.from({length:t},e);var N=t=>t.charAt(0).toUpperCase()+t.slice(1);var x=t=>Object.keys(t).concat(V(t)),V=t=>Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(t).filter(function(e){return Object.propertyIsEnumerable.call(t,e)}):[];var Et=t=>t==null?void 0:t[0];var Nt=t=>t==null?void 0:t[t.length-1];var _=t=>Array.isArray(t);var Mt=t=>Object.prototype.toString.call(t)==="[object Boolean]";var I=()=>typeof window>"u";var p=()=>!I();var Ct=p;var l=t=>typeof t=="string";var Pt=t=>l(t)&&/\S+@\S+\.\S+/.test(t);var i=t=>Object.prototype.toString.call(t)==="[object Object]";var M=t=>k(t)||J(t)||H(t)?!0:t==null,H=t=>l(t)&&t.trim().length===0,J=t=>_(t)&&t.length===0,k=t=>i(t)&&Object.keys(t).length===0;var Xt=t=>Object.prototype.toString.call(t)==="[object Function]";var d=t=>Object.prototype.toString.call(t)==="[object Date]"&&!isNaN(t);var T=(t,e)=>e.hasOwnProperty(t)&&e.propertyIsEnumerable(t);var u=t=>Number.isInteger(t),Jt=t=>u(t)&&!(t%2),kt=t=>u(t)&&!!(t%2),Wt=t=>u(t)&&t>0,Kt=t=>u(t)&&t<0,$t=t=>Object.prototype.toString.apply(t)==="[object Number]"&&isFinite(t);var B=t=>!isNaN(t);var Zt=t=>t instanceof Promise;var ee=()=>p()&&window.matchMedia("(display-mode: standalone)").matches;var W=typeof Symbol=="function"&&Symbol.for,K=W?Symbol.for("react.element"):60103,re=t=>t.$$typeof===K;var ae=t=>Object.prototype.toString.call(t)==="[object RegExp]";var me=t=>{let e=new Date(t);return d(e)};var pe=t=>typeof t>"u";var $=new RegExp("^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.?)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i"),de=t=>!!t&&$.test(t);var Ae=t=>/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(t);var g=t=>t!=null&&!Number.isNaN(t);var E=(t,e)=>{let n={};return x(t).forEach(o=>{n[o]=i(t[o])?E({},t[o]):t[o];}),x(e).forEach(o=>{T(o,t)?n[o]=i(t[o])&&i(e[o])?E(t[o],e[o]):e[o]:n[o]=i(e[o])?E({},e[o]):e[o];}),n};var fe=(t,e)=>{let n=[...t];for(let o=0;o<n.length;o++)if(e(n[o],o,n)){let y=n.splice(o,1);n.unshift(y[0]);break}return n};var _e=(t,e)=>{let n=[...t];for(let o=0;o<n.length;o++)if(e(n[o],o,n)){let y=n.splice(o,1)[0];n.push(y);break}return n};var Be=t=>{if(M(t))return;let e=new Date(t);if(d(e))return e};var q=[{city:"London",country:"United Kingdom",street:"Baker Street",number:"221B",zip:"NW1 6XE"},{city:"Birmingham",country:"United Kingdom",street:"Bordesley Street",number:"B1 1AA",zip:"B1 1AA"}],Y=[{city:"New York",country:"United States",street:"Broadway",number:"42",zip:"10036"},{city:"Los Angeles",country:"United States",street:"Hollywood Boulevard",number:"6801",zip:"90028"}],Z=[{city:"Paris",country:"France",street:"Rue de Rivoli",number:"75001",zip:"75001"},{city:"Berlin",country:"Germany",street:"Unter den Linden",number:"10117",zip:"10117"},{city:"Rome",country:"Italy",street:"Via del Corso",number:"00186",zip:"00186"},{city:"Madrid",country:"Spain",street:"Gran V\xEDa",number:"28013",zip:"28013"}],Q=[{city:"Moscow",country:"Russia",street:"Tverskaya",number:"101000",zip:"101000"},{city:"Tokyo",country:"Japan",street:"Shinjuku",number:"160-0022",zip:"160-0022"},{city:"Beijing",country:"China",street:"Changan",number:"100005",zip:"100005"},{city:"Cairo",country:"Egypt",street:"Al-Muizz",number:"11511",zip:"11511"},{city:"Buenos Aires",country:"Argentina",street:"Avenida de Mayo",number:"1002",zip:"C1006AAQ"},{city:"Cape Town",country:"South Africa",street:"Adderley",number:"7700",zip:"7700"},{city:"Sydney",country:"Australia",street:"George",number:"2000",zip:"2000"},{city:"Rio de Janeiro",country:"Brazil",street:"Av. Presidente Vargas",number:"20021-000",zip:"20021-000"},{city:"Mexico City",country:"Mexico",street:"Paseo de la Reforma",number:"06500",zip:"06500"}],L=[...q,...Y,...Z,...Q];var a=(t=-100,e=100)=>Math.floor(Math.random()*(e-t+1)+t),Re=(t=100)=>a(1,t),Ce=(t=-100)=>a(t,-1),De=()=>a(-Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER),he=()=>a(-Number.MAX_VALUE,Number.MAX_VALUE),Oe=()=>a(-100,100);var r=t=>t[a(0,t.length-1)];var Fe=()=>r(L);var Ge=()=>!!a(0,1);var Je=16,f=(t=-9,e=9,n)=>{let o=Math.random()*(e-t)+t;return g(n)?parseFloat(o.toFixed(n)):o};var Ke=()=>({lat:tt(),lng:et()}),tt=()=>f(-90,90),et=()=>f(-180,180);var A=(t,e)=>{let n=t||new Date(-864e13),o=e||new Date(864e13);return new Date(n.getTime()+Math.random()*(o.getTime()-n.getTime()))},qe=()=>{let t=new Date(new Date().getTime()+3e5);return A(t,void 0)},Ye=()=>A(void 0,new Date),Ze=()=>{let t=A();return {endDate:A(t),startDate:t}};var R=["gmail.com","yahoo.com","hotmail.com","aol.com","msn.com","comcast.net","live.com","sbcglobal.net","verizon.net","att.net","mac.com","me.com","earthlink.net","charter.net","shaw.ca","yahoo.ca","googlemail.com","mail.com","qq.com","web.de","gmx.de","mail.ru"];var C=["Aardvark","Albatross","Alligator","Alpaca","Ant","Anteater","Antelope","Ape"],D=["Axe","Ball Peen Hammer","Band Saw","Bench Grinder","Biscuit Joiner","Bolt Cutter","Boring Machine","Bow Saw"],s=["Adam","Adrian","Alan","Albert","Alexander","Alice","Amanda","Emma","Amelia","Amy","Andrew","Esther","Olivia","Ruby"],m=["Smith","Johnson","Williams","Jones","Brown","Davis","Miller","Wilson","Moore","Taylor","Anderson","Thomas","Jackson","White"],rt=["\u0410\u0431\u0438\u0433\u0430\u0438\u043B","\u0410\u0434\u0430\u043C","\u0410\u0434\u0440\u0438\u0430\u043D","\u0410\u0433\u043D\u0435\u0441","\u0410\u043B\u0430\u043D","\u0410\u043B\u044C\u0431\u0435\u0440\u0442","\u0410\u043B\u0435\u043A\u0441\u0430\u043D\u0434\u0440","\u0410\u043B\u0438\u0441\u0430","\u0410\u043C\u0430\u043D\u0434\u0430","\u0410\u043C\u0435\u043B\u0438\u044F","\u042D\u043C\u0438","\u042D\u043D\u0434\u0440\u044E"],nt=["\u0421\u043C\u0438\u0442","\u0414\u0436\u043E\u043D\u0441\u043E\u043D","\u0423\u0438\u043B\u044C\u044F\u043C\u0441","\u0414\u0436\u043E\u043D\u0441","\u0411\u0440\u0430\u0443\u043D","\u0414\u044D\u0432\u0438\u0441","\u041C\u0438\u043B\u043B\u0435\u0440","\u0412\u0438\u043B\u0441\u043E\u043D","\u041C\u0443\u0440","\u0422\u0435\u0439\u043B\u043E\u0440","\u0410\u043D\u0434\u0435\u0440\u0441\u043E\u043D","\u0422\u043E\u043C\u0430\u0441","\u0414\u0436\u0435\u043A\u0441\u043E\u043D","\u0423\u0430\u0439\u0442"],at=["\u30A2\u30D3\u30B2\u30A4\u30EB","\u30A2\u30C0\u30E0","\u30A2\u30C9\u30EA\u30A2\u30F3","\u30A2\u30B0\u30CD\u30B9","\u30A2\u30E9\u30F3","\u30A2\u30EB\u30D0\u30FC\u30C8","\u30A2\u30EC\u30AF\u30B5\u30F3\u30C0\u30FC","\u30A2\u30EA\u30B9","\u30A2\u30DE\u30F3\u30C0","\u30A2\u30E1\u30EA\u30A2","\u30A2\u30DF\u30FC","\u30A2\u30F3\u30C9\u30EA\u30E5\u30FC"],it=["\u30B9\u30DF\u30B9","\u30B8\u30E7\u30F3\u30BD\u30F3","\u30A6\u30A3\u30EA\u30A2\u30E0\u30BA","\u30B8\u30E7\u30FC\u30F3\u30BA","\u30D6\u30E9\u30A6\u30F3","\u30C7\u30A4\u30D3\u30B9","\u30DF\u30E9\u30FC","\u30A6\u30A3\u30EB\u30BD\u30F3","\u30E2\u30A2","\u30BF\u30A4\u30E9\u30FC","\u30A2\u30F3\u30C0\u30FC\u30BD\u30F3","\u30C8\u30FC\u30DE\u30B9","\u30B8\u30E3\u30AF\u30BD\u30F3","\u30DB\u30EF\u30A4\u30C8"],st=["\u0623\u0628\u064A\u062C\u064A\u0644","\u0622\u062F\u0645","\u0622\u062F\u0631\u064A\u0627\u0646","\u0623\u063A\u0646\u064A\u0633","\u0622\u0644\u0627\u0646","\u0622\u0644\u0628\u0631\u062A","\u0623\u0644\u0643\u0633\u0646\u062F\u0631","\u0622\u0644\u064A\u0633","\u0622\u0645\u0627\u0646\u062F\u0627","\u0622\u0645\u064A\u0644\u064A\u0627","\u0622\u0645\u064A","\u0623\u0646\u062F\u0631\u0648"],mt=["\u0633\u0645\u064A\u062B","\u062C\u0648\u0646\u0633\u0648\u0646","\u0648\u064A\u0644\u064A\u0627\u0645\u0632","\u062C\u0648\u0646\u0632","\u0628\u0631\u0627\u0648\u0646","\u062F\u064A\u0641\u064A\u0633","\u0645\u064A\u0644\u0631","\u0648\u064A\u0644\u0633\u0648\u0646","\u0645\u0648\u0631","\u062A\u0627\u064A\u0644\u0648\u0631","\u0623\u0646\u062F\u0631\u0633\u0648\u0646","\u062A\u0648\u0645\u0627\u0633","\u062C\u0627\u0643\u0633\u0648\u0646","\u0648\u0627\u064A\u062A"],h=[...s,...rt,...at,...st],O=[...m,...nt,...it,...mt];var P=()=>(r(s)+"."+r(m)).toLowerCase()+a(11,99);var co=()=>`${P()}@${r(R)}`;var w=["\u{1F600}","\u{1F601}","\u{1F602}","\u{1F923}","\u{1F603}","\u{1F604}","\u{1F605}","\u{1F606}","\u{1F609}","\u{1F60A}","\u{1F60B}","\u{1F60E}","\u{1F60D}","\u{1F618}","\u{1F617}","\u{1F619}"],U=["!","@","#","$","%","^","&","*"];var So=()=>r(w);var Eo=t=>r(Object.keys(t).filter(e=>!B(e)));var _o=t=>{let e=[];return Object.values(t).forEach(n=>{n in t&&!e.includes(n)&&e.push(t[n]);}),r(e)};var ct=["abide","abound","accept","accomplish","achieve","acquire","act","adapt","add","adjust","admire","admit","adopt","advance","advise","afford","agree","alert","allow","be","go","need","work"],pt=["abandon","ability","able","abortion","about","above","abroad","absence","absent","absolute"],lt=["abandoned","abdominal","ability","able","abnormal","abolish","abortion","about","above","abroad","absence","absent","absolute"],dt=["abnormally","aboard","absentmindedly","absolutely","absurdly","abundantly","abysmally","academically","acceleratedly","accentually","acceptably","accessibly","accidentally","accommodatingly"],ut=["Pneumonoultramicroscopicsilicovolcanoconiosis","Floccinaucinihilipilification","Pseudopseudohypoparathyroidism","Hippopotomonstrosesquippedaliophobia","Antidisestablishmentarianism","Supercalifragilisticexpialidocious","Honorificabilitudinitatibus"];var j=["AliceBlue","Aqua","Aquamarine","Azure","Beige","Bisque","Black","Blue","BlueViolet","Brown","BurlyWood","CadetBlue","Chartreuse","Chocolate","Coral","DarkSlateGray","DeepPink","Gold","Lime","Olive","Orchid","Salmon","Turquoise"],v=[...ct,...pt,...lt,...dt,...ut];var S=()=>r(v);var F=()=>N(c(8,()=>S()).join(" "))+".";var At=["png","jpg","jpeg","gif","svg","webp"],wo=({name:t,extension:e}={})=>{if(typeof File>"u")return;let n=e||r(At);return new File([F()],`${t||S()}.${n}`,{type:`image/${n}`})};var b=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"];var Xo=()=>"#"+c(6,()=>r(b)).join("");var Jo=()=>r(b);var z=()=>r(j);var X=["AD1200012030200359100100","BA391290079401028494","BE68539007547034","BG80BNBG96611020345678","BH67BMAG00001299123456","BY13NBRB3600900000002Z00AB00","CH9300762011623852957","CR05015202001026284066","CY17002001280000001200527600","CZ6508000000192000145399","DE89370400440532013000","DO28BAGR00000001212453611324","EE382200221020145685","ES9121000418450200051332","FI2112345600000785","FO6264600001631634","FR1420041010050500013M02606","GB29NWBK60161331926819","GE29NB0000000101904917"];var Qo=()=>r(X);var rr=()=>r([...C,...D]),nr=()=>r(h),ar=()=>r(O),ir=()=>r(s)+" "+r(m);var St=1,G=()=>St++;var ur=()=>z()+r(U)+a(11,99);var br=()=>{let t=G().toString().padStart(15,"0"),e=t.substring(0,12);return `00000000-0000-1000-8${t.substring(12,15)}-${e}`};
5
+
6
+ exports.JS_MAX_DIGITS = Je;
7
+ exports.array = c;
8
+ exports.capitalize = N;
9
+ exports.first = Et;
10
+ exports.getEnumerableOwnPropertySymbols = V;
11
+ exports.getKeys = x;
12
+ exports.isArray = _;
13
+ exports.isBoolean = Mt;
14
+ exports.isBrowser = Ct;
15
+ exports.isClient = p;
16
+ exports.isEmail = Pt;
17
+ exports.isEmpty = M;
18
+ exports.isEmptyArray = J;
19
+ exports.isEmptyObject = k;
20
+ exports.isEmptyString = H;
21
+ exports.isEven = Jt;
22
+ exports.isFunction = Xt;
23
+ exports.isInt = u;
24
+ exports.isJsDate = d;
25
+ exports.isKey = T;
26
+ exports.isNegative = Kt;
27
+ exports.isNumber = $t;
28
+ exports.isNumeric = B;
29
+ exports.isObject = i;
30
+ exports.isOdd = kt;
31
+ exports.isPWA = ee;
32
+ exports.isPositive = Wt;
33
+ exports.isPromise = Zt;
34
+ exports.isReactElement = re;
35
+ exports.isRegExp = ae;
36
+ exports.isServer = I;
37
+ exports.isString = l;
38
+ exports.isStringDate = me;
39
+ exports.isURL = de;
40
+ exports.isUUID = Ae;
41
+ exports.isUndefined = pe;
42
+ exports.isValue = g;
43
+ exports.last = Nt;
44
+ exports.merge = E;
45
+ exports.moveToFirst = fe;
46
+ exports.moveToLast = _e;
47
+ exports.parseDate = Be;
48
+ exports.randomAddress = Fe;
49
+ exports.randomArrayItem = r;
50
+ exports.randomBool = Ge;
51
+ exports.randomCoords = Ke;
52
+ exports.randomDate = A;
53
+ exports.randomDateRange = Ze;
54
+ exports.randomEmail = co;
55
+ exports.randomEmoji = So;
56
+ exports.randomEnumKey = Eo;
57
+ exports.randomEnumValue = _o;
58
+ exports.randomFile = wo;
59
+ exports.randomFirstName = nr;
60
+ exports.randomFloat = f;
61
+ exports.randomFullName = ir;
62
+ exports.randomFutureDate = qe;
63
+ exports.randomHandle = P;
64
+ exports.randomHexColor = Xo;
65
+ exports.randomHexValue = Jo;
66
+ exports.randomHtmlColorName = z;
67
+ exports.randomIBAN = Qo;
68
+ exports.randomInt = a;
69
+ exports.randomLastName = ar;
70
+ exports.randomLat = tt;
71
+ exports.randomLng = et;
72
+ exports.randomMaxInt = he;
73
+ exports.randomMaxSafeInt = De;
74
+ exports.randomName = rr;
75
+ exports.randomNegativeInt = Ce;
76
+ exports.randomNumericId = G;
77
+ exports.randomParagraph = F;
78
+ exports.randomPassword = ur;
79
+ exports.randomPastDate = Ye;
80
+ exports.randomPercentage = Oe;
81
+ exports.randomPositiveInt = Re;
82
+ exports.randomUUID = br;
83
+ exports.randomWord = S;
84
+
85
+ return exports;
86
+
87
+ })({});
88
+ //# sourceMappingURL=out.js.map
2
89
  //# sourceMappingURL=index.global.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/helpers/array.ts","../src/helpers/capitalize.ts","../src/helpers/first.ts","../src/helpers/last.ts","../src/helpers/moveToFirst.ts","../src/helpers/moveToLast.ts","../src/validators/isArray.ts","../src/validators/isObject.ts","../src/validators/isString.ts","../src/validators/isEmpty.ts","../src/validators/isJsDate.ts","../src/helpers/parseDate.ts","../src/constants/addresses.ts","../src/random/randomInt.ts","../src/random/randomArrayItem.ts","../src/random/randomAddress.ts","../src/random/randomBool.ts","../src/validators/isValue.ts","../src/random/randomFloat.ts","../src/random/randomCoords.ts","../src/random/randomDate.ts","../src/constants/domains.ts","../src/constants/names.ts","../src/random/randomHandle.ts","../src/random/randomEmail.ts","../src/constants/unicode.ts","../src/random/randomEmoji.ts","../src/random/randomEnumValue.ts","../src/constants/words.ts","../src/random/randomWord.ts","../src/random/randomParagraph.ts","../src/random/randomFile.ts","../src/constants/hex.ts","../src/random/randomHexColor.ts","../src/random/randomHexValue.ts","../src/random/randomName.ts","../src/validators/isBoolean.ts","../src/validators/isServer.ts","../src/validators/isClient.ts","../src/validators/isBrowser.ts","../src/validators/isEmail.ts","../src/validators/isFunction.ts","../src/validators/isKeyOfObject.ts","../src/validators/isNumber.ts","../src/validators/isNumeric.ts","../src/validators/isStringDate.ts","../src/validators/isUndefined.ts","../src/validators/isURL.ts","../src/validators/isUUID.ts"],"sourcesContent":["export const array = <U extends (...args: any) => any>(\n length: number,\n mapFn: U\n): ReturnType<U>[] => {\n return Array.from({ length }, mapFn);\n};\n","export const capitalize = (string: string) => {\n return string.charAt(0).toUpperCase() + string.slice(1);\n};\n","export const first = <T>(arr?: T[]): T | undefined => arr?.[0];\n","export const last = <T>(arr?: T[]): T | undefined => arr?.[arr.length - 1];\n","export const moveToFirst = <T>(\n items: T[],\n condition: (item: T, i: number, items: T[]) => boolean\n): T[] => {\n const resortedItems = [...items];\n for (let i = 0; i < resortedItems.length; i++) {\n if (condition(resortedItems[i], i, resortedItems)) {\n let firstItem = resortedItems.splice(i, 1);\n resortedItems.unshift(firstItem[0]);\n break;\n }\n }\n return resortedItems;\n};\n","export const moveToLast = <T>(\n items: T[],\n condition: (item: T, i: number, items: T[]) => boolean\n): T[] => {\n const resortedItems = [...items];\n for (let i = 0; i < resortedItems.length; i++) {\n if (condition(resortedItems[i], i, resortedItems)) {\n let lastItem = resortedItems.splice(i, 1)[0];\n resortedItems.push(lastItem);\n break;\n }\n }\n return resortedItems;\n};\n","export const isArray = <T>(value?: T[]): value is T[] => Array.isArray(value);\n","export const isObject = (arg: any): arg is object =>\n Object.prototype.toString.call(arg) === \"[object Object]\";\n","export const isString = (arg: any) => typeof arg === \"string\";\n","import { Maybe } from \"../types\";\nimport { isArray } from \"./isArray\";\nimport { isObject } from \"./isObject\";\nimport { isString } from \"./isString\";\n\nexport const isEmpty = (arg?: Maybe<any>) => {\n if (isEmptyObject(arg)) return true;\n if (isEmptyArray(arg)) return true;\n if (isEmptyString(arg)) return true;\n\n return arg === undefined || arg === null;\n};\n\nexport const isEmptyString = (arg: string) => {\n return isString(arg) && arg.trim().length === 0;\n};\n\nexport const isEmptyArray = (arg: any[]) => {\n return isArray(arg) && arg.length === 0;\n};\n\nexport const isEmptyObject = (arg: Object) => {\n return isObject(arg) && Object.keys(arg).length === 0;\n};\n","export const isJsDate = (arg: any) =>\n Object.prototype.toString.call(arg) === \"[object Date]\" && !isNaN(arg);\n","import { DateLike, Maybe } from \"../types\";\nimport { isEmpty } from \"../validators/isEmpty\";\nimport { isJsDate } from \"../validators/isJsDate\";\n\nexport const parseDate = (arg?: Maybe<DateLike>) => {\n if (isEmpty(arg)) return;\n\n const date = new Date(arg!);\n\n if (!isJsDate(date)) return;\n\n return date;\n};\n","export const UK_ADDRESSES = [\n {\n city: \"London\",\n country: \"United Kingdom\",\n street: \"Baker Street\",\n number: \"221B\",\n zip: \"NW1 6XE\",\n },\n {\n city: \"Birmingham\",\n country: \"United Kingdom\",\n street: \"Bordesley Street\",\n number: \"B1 1AA\",\n zip: \"B1 1AA\",\n },\n];\n\nexport const US_ADDRESSES = [\n {\n city: \"New York\",\n country: \"United States\",\n street: \"Broadway\",\n number: \"42\",\n zip: \"10036\",\n },\n {\n city: \"Los Angeles\",\n country: \"United States\",\n street: \"Hollywood Boulevard\",\n number: \"6801\",\n zip: \"90028\",\n },\n];\n\nexport const EUROPE_ADDRESSES = [\n {\n city: \"Paris\",\n country: \"France\",\n street: \"Rue de Rivoli\",\n number: \"75001\",\n zip: \"75001\",\n },\n {\n city: \"Berlin\",\n country: \"Germany\",\n street: \"Unter den Linden\",\n number: \"10117\",\n zip: \"10117\",\n },\n {\n city: \"Rome\",\n country: \"Italy\",\n street: \"Via del Corso\",\n number: \"00186\",\n zip: \"00186\",\n },\n {\n city: \"Madrid\",\n country: \"Spain\",\n street: \"Gran Vía\",\n number: \"28013\",\n zip: \"28013\",\n },\n];\n\nexport const MIXED_ADDRESSES = [\n {\n city: \"Moscow\",\n country: \"Russia\",\n street: \"Tverskaya\",\n number: \"101000\",\n zip: \"101000\",\n },\n {\n city: \"Tokyo\",\n country: \"Japan\",\n street: \"Shinjuku\",\n number: \"160-0022\",\n zip: \"160-0022\",\n },\n {\n city: \"Beijing\",\n country: \"China\",\n street: \"Changan\",\n number: \"100005\",\n zip: \"100005\",\n },\n {\n city: \"Cairo\",\n country: \"Egypt\",\n street: \"Al-Muizz\",\n number: \"11511\",\n\n zip: \"11511\",\n },\n {\n city: \"Buenos Aires\",\n country: \"Argentina\",\n street: \"Avenida de Mayo\",\n number: \"1002\",\n zip: \"C1006AAQ\",\n },\n {\n city: \"Cape Town\",\n country: \"South Africa\",\n street: \"Adderley\",\n number: \"7700\",\n zip: \"7700\",\n },\n {\n city: \"Sydney\",\n country: \"Australia\",\n street: \"George\",\n number: \"2000\",\n zip: \"2000\",\n },\n {\n city: \"Rio de Janeiro\",\n country: \"Brazil\",\n street: \"Av. Presidente Vargas\",\n number: \"20021-000\",\n zip: \"20021-000\",\n },\n {\n city: \"Mexico City\",\n country: \"Mexico\",\n street: \"Paseo de la Reforma\",\n number: \"06500\",\n zip: \"06500\",\n },\n];\n\nexport const ADDRESSES = [\n ...UK_ADDRESSES,\n ...US_ADDRESSES,\n ...EUROPE_ADDRESSES,\n ...MIXED_ADDRESSES,\n];\n\nexport const CITIES = [\n \"London\",\n \"Birmingham\",\n \"New York\",\n \"Los Angeles\",\n \"Paris\",\n \"Berlin\",\n \"Rome\",\n \"Madrid\",\n \"Moscow\",\n \"Tokyo\",\n \"Beijing\",\n \"Cairo\",\n \"Buenos Aires\",\n \"Cape Town\",\n \"Sydney\",\n \"Rio de Janeiro\",\n \"Mexico City\",\n];\n","export const randomInt = (start: number = -100, end: number = 100): number =>\n Math.floor(Math.random() * (end - start + 1) + start);\n\nexport const randomPositiveInt = (end: number = 100): number =>\n randomInt(1, end);\n\nexport const randomNegativeInt = (start: number = -100): number =>\n randomInt(start, -1);\n\nexport const randomMaxSafeInt = () =>\n randomInt(-Number.MAX_SAFE_INTEGER, Number.MAX_SAFE_INTEGER);\n\nexport const randomMaxInt = () =>\n randomInt(-Number.MAX_VALUE, Number.MAX_VALUE);\n","import { randomInt } from \"./randomInt\";\n\nexport const randomArrayItem = <T>(array: T[]): T => {\n return array[randomInt(0, array.length - 1)];\n};\n","import { ADDRESSES } from \"../constants/addresses\";\nimport { randomArrayItem } from \"./randomArrayItem\";\n\nexport const randomAddress = () => {\n return randomArrayItem(ADDRESSES);\n};\n","import { randomInt } from \"./randomInt\";\n\nexport const randomBool = () => !!randomInt(0, 1);\n","import { Maybe } from \"../types\";\n\nexport const isValue = (arg?: Maybe<any>) => {\n return arg !== undefined && arg !== null && !Number.isNaN(arg);\n};\n","import { isValue } from \"../validators/isValue\";\n\n// Max js digits is theoretically 17, but is actually 16, see Math.random output.\nexport const JS_MAX_DIGITS = 16;\n\n// TODO: with big numbers there will be less digits\nexport const randomFloat = (\n min: number = -9,\n max: number = 9,\n decimals?: number // toFixed accepts max 100 anyway... even if the docs say 20\n) => {\n const float = Math.random() * (max - min) + min;\n\n if (isValue(decimals)) return parseFloat(float.toFixed(decimals));\n\n return float;\n};\n\n// TODO: randomBigFloat\n","import { Coords } from \"../types\";\nimport { randomFloat } from \"./randomFloat\";\n\nexport const randomCoords = (): Coords => {\n return {\n lat: randomLat(),\n lng: randomLng(),\n };\n};\n\nexport const randomLat = () => {\n return randomFloat(-90, 90);\n};\n\nexport const randomLng = () => {\n return randomFloat(-180, 180);\n};\n","import { MAX_DATE_MILLISECONDS } from \"../constants\";\n\nexport const randomDate = (start?: Date, end?: Date) => {\n const startDate = start || new Date(-MAX_DATE_MILLISECONDS);\n const endDate = end || new Date(MAX_DATE_MILLISECONDS);\n return new Date(\n startDate.getTime() +\n Math.random() * (endDate.getTime() - startDate.getTime())\n );\n};\n\nexport const randomFutureDate = () => {\n // Add a safe margin in the future (i.e. lagging tests). About 5 minutes is enough.\n const safeNow = new Date(new Date().getTime() + 5 * 60000);\n return randomDate(safeNow, undefined);\n};\n\nexport const randomPastDate = () => {\n return randomDate(undefined, new Date());\n};\n\nexport const randomDateRange = () => {\n const startDate = randomDate();\n\n const endDate = randomDate(startDate);\n\n return {\n endDate,\n startDate,\n };\n};\n","export const DOMAIN_NAMES = [\n \"gmail.com\",\n \"yahoo.com\",\n \"hotmail.com\",\n \"aol.com\",\n \"msn.com\",\n \"comcast.net\",\n \"live.com\",\n \"sbcglobal.net\",\n \"verizon.net\",\n \"att.net\",\n \"mac.com\",\n \"me.com\",\n \"earthlink.net\",\n \"cox.net\",\n \"optonline.net\",\n \"charter.net\",\n \"shaw.ca\",\n \"yahoo.ca\",\n \"googlemail.com\",\n \"mail.com\",\n \"qq.com\",\n \"web.de\",\n \"gmx.de\",\n \"mail.ru\",\n];\n","export const ANIMAL_NAMES = [\n \"Aardvark\",\n \"Albatross\",\n \"Alligator\",\n \"Alpaca\",\n \"Ant\",\n \"Anteater\",\n \"Antelope\",\n \"Ape\",\n];\n\nexport const TOOL_NAMES = [\n \"Axe\",\n \"Ball Peen Hammer\",\n \"Band Saw\",\n \"Bench Grinder\",\n \"Biscuit Joiner\",\n \"Bolt Cutter\",\n \"Boring Machine\",\n \"Bow Saw\",\n];\n\nexport const LATIN_FIRST_NAMES = [\n \"Abigail\",\n \"Adam\",\n \"Adrian\",\n \"Agnes\",\n \"Alan\",\n \"Albert\",\n \"Alexander\",\n \"Alice\",\n \"Amanda\",\n \"Amelia\",\n \"Amy\",\n \"Andrew\",\n];\n\nexport const LATIN_LAST_NAMES = [\n \"Smith\",\n \"Johnson\",\n \"Williams\",\n \"Jones\",\n \"Brown\",\n \"Davis\",\n \"Miller\",\n \"Wilson\",\n \"Moore\",\n \"Taylor\",\n \"Anderson\",\n \"Thomas\",\n \"Jackson\",\n \"White\",\n];\n\nexport const CYRILLIC_FIRST_NAMES = [\n \"Абигаил\",\n \"Адам\",\n \"Адриан\",\n \"Агнес\",\n \"Алан\",\n \"Альберт\",\n \"Александр\",\n \"Алиса\",\n \"Аманда\",\n \"Амелия\",\n \"Эми\",\n \"Эндрю\",\n];\n\nexport const CYRILLIC_LAST_NAMES = [\n \"Смит\",\n \"Джонсон\",\n \"Уильямс\",\n \"Джонс\",\n \"Браун\",\n \"Дэвис\",\n \"Миллер\",\n \"Вилсон\",\n \"Мур\",\n \"Тейлор\",\n \"Андерсон\",\n \"Томас\",\n \"Джексон\",\n \"Уайт\",\n];\n\nexport const JAPANESE_FIRST_NAMES = [\n \"アビゲイル\",\n \"アダム\",\n \"アドリアン\",\n \"アグネス\",\n \"アラン\",\n \"アルバート\",\n \"アレクサンダー\",\n \"アリス\",\n \"アマンダ\",\n \"アメリア\",\n \"アミー\",\n \"アンドリュー\",\n];\n\nexport const JAPANESE_LAST_NAMES = [\n \"スミス\",\n \"ジョンソン\",\n \"ウィリアムズ\",\n \"ジョーンズ\",\n \"ブラウン\",\n \"デイビス\",\n \"ミラー\",\n \"ウィルソン\",\n \"モア\",\n \"タイラー\",\n \"アンダーソン\",\n \"トーマス\",\n \"ジャクソン\",\n \"ホワイト\",\n];\n\nexport const ARABIC_FIRST_NAMES = [\n \"أبيجيل\",\n \"آدم\",\n \"آدريان\",\n \"أغنيس\",\n \"آلان\",\n \"آلبرت\",\n \"ألكسندر\",\n \"آليس\",\n \"آماندا\",\n \"آميليا\",\n \"آمي\",\n \"أندرو\",\n];\n\nexport const ARABIC_LAST_NAMES = [\n \"سميث\",\n \"جونسون\",\n \"ويليامز\",\n \"جونز\",\n \"براون\",\n \"ديفيس\",\n \"ميلر\",\n \"ويلسون\",\n \"مور\",\n \"تايلور\",\n \"أندرسون\",\n \"توماس\",\n \"جاكسون\",\n \"وايت\",\n];\n\nexport const FIRST_NAMES = [\n ...LATIN_FIRST_NAMES,\n ...CYRILLIC_FIRST_NAMES,\n ...JAPANESE_FIRST_NAMES,\n ...ARABIC_FIRST_NAMES,\n];\n\nexport const LAST_NAMES = [\n ...LATIN_LAST_NAMES,\n ...CYRILLIC_LAST_NAMES,\n ...JAPANESE_LAST_NAMES,\n ...ARABIC_LAST_NAMES,\n];\n","import { LATIN_FIRST_NAMES, LATIN_LAST_NAMES } from \"../constants/names\";\nimport { randomArrayItem } from \"./randomArrayItem\";\nimport { randomInt } from \"./randomInt\";\n\nexport const randomHandle = () =>\n (\n randomArrayItem(LATIN_FIRST_NAMES) +\n \".\" +\n randomArrayItem(LATIN_LAST_NAMES)\n ).toLowerCase() + randomInt(11, 99);\n","import { DOMAIN_NAMES } from \"../constants/domains\";\nimport { randomArrayItem } from \"./randomArrayItem\";\nimport { randomHandle } from \"./randomHandle\";\n\n//Use randomId() to generate a unique email\nexport const randomEmail = () =>\n `${randomHandle()}@${randomArrayItem(DOMAIN_NAMES)}`;\n","export const EMOJIS = [\n \"😀\",\n \"😁\",\n \"😂\",\n \"🤣\",\n \"😃\",\n \"😄\",\n \"😅\",\n \"😆\",\n \"😉\",\n \"😊\",\n \"😋\",\n \"😎\",\n \"😍\",\n \"😘\",\n \"😗\",\n \"😙\",\n];\n","import { EMOJIS } from \"../constants/unicode\";\nimport { randomArrayItem } from \"./randomArrayItem\";\n\nexport const randomEmoji = () => {\n return randomArrayItem(EMOJIS);\n};\n","import { randomArrayItem } from \"./randomArrayItem\";\n\nexport const randomEnumValue = (enumObject: any) => {\n let values: any[] = [];\n\n Object.values(enumObject).forEach((value: any) => {\n if (value in enumObject && !values.includes(value))\n values.push(enumObject[value]);\n });\n\n console.log(values);\n return randomArrayItem(values);\n};\n","export const VERBS = [\n \"abide\",\n \"abound\",\n \"accept\",\n \"accomplish\",\n \"achieve\",\n \"acquire\",\n \"act\",\n \"adapt\",\n \"add\",\n \"address\",\n \"adjust\",\n \"admire\",\n \"admit\",\n \"adopt\",\n \"advance\",\n \"advise\",\n \"afford\",\n \"agree\",\n \"alert\",\n \"allow\",\n];\n\nexport const NOUNS = [\n \"abandon\",\n \"ability\",\n \"able\",\n \"abortion\",\n \"about\",\n \"above\",\n \"abroad\",\n \"absence\",\n \"absent\",\n \"absolute\",\n];\n\nexport const ADJECTIVES = [\n \"abandoned\",\n \"abdominal\",\n \"ability\",\n \"able\",\n \"abnormal\",\n \"abolish\",\n \"abortion\",\n \"about\",\n \"above\",\n \"abroad\",\n \"absence\",\n \"absent\",\n \"absolute\",\n];\n\nexport const ADVERBS = [\n \"abnormally\",\n \"aboard\",\n \"absentmindedly\",\n \"absolutely\",\n \"absurdly\",\n \"abundantly\",\n \"abysmally\",\n \"academically\",\n \"acceleratedly\",\n \"accentually\",\n \"acceptably\",\n \"accessibly\",\n \"accidentally\",\n \"accommodatingly\",\n];\n\nexport const LONG_WORDS = [\n \"Pneumonoultramicroscopicsilicovolcanoconiosis\",\n \"Floccinaucinihilipilification\",\n \"Pseudopseudohypoparathyroidism\",\n \"Hippopotomonstrosesquippedaliophobia\",\n \"Antidisestablishmentarianism\",\n \"Supercalifragilisticexpialidocious\",\n \"Honorificabilitudinitatibus\",\n];\n\nexport const JS_RESERVED_WORDS = [\n \"abstract\",\n \"arguments\",\n \"await\",\n \"boolean\",\n \"break\",\n \"byte\",\n \"case\",\n \"catch\",\n \"char\",\n \"class\",\n \"const\",\n \"continue\",\n \"debugger\",\n \"default\",\n \"delete\",\n \"do\",\n \"double\",\n \"else\",\n \"enum*\",\n \"eval\",\n \"export\",\n \"extends\",\n \"false\",\n \"final\",\n \"finally\",\n \"float\",\n \"for\",\n \"function\",\n \"goto\",\n \"if\",\n \"implements\",\n \"import\",\n \"in\",\n \"instanceof\",\n \"int\",\n \"interface\",\n \"let\",\n \"long\",\n \"native\",\n \"new\",\n \"null\",\n \"package\",\n \"private\",\n \"protected\",\n \"public\",\n \"return\",\n \"short\",\n \"static\",\n \"super\",\n \"switch\",\n \"synchronized\",\n \"this\",\n \"throw\",\n \"throws\",\n \"transient\",\n \"true\",\n \"try\",\n \"typeof\",\n \"var\",\n \"void\",\n \"volatile\",\n \"while\",\n \"with\",\n \"yield\",\n];\n\nexport const HTML_COLORS = [\n \"AliceBlue\",\n \"AntiqueWhite\",\n \"Aqua\",\n \"Aquamarine\",\n \"Azure\",\n \"Beige\",\n \"Bisque\",\n \"Black\",\n \"BlanchedAlmond\",\n \"Blue\",\n \"BlueViolet\",\n \"Brown\",\n \"BurlyWood\",\n \"CadetBlue\",\n \"Chartreuse\",\n \"Chocolate\",\n \"Coral\",\n];\n\nexport const WORDS = [\n ...VERBS,\n ...NOUNS,\n ...ADJECTIVES,\n ...ADVERBS,\n ...LONG_WORDS,\n];\n","import { WORDS } from \"../constants/words\";\nimport { randomArrayItem } from \"./randomArrayItem\";\n\nexport const randomWord = () => {\n return randomArrayItem(WORDS);\n};\n","import { array } from \"../helpers\";\nimport { capitalize } from \"../helpers/capitalize\";\nimport { randomWord } from \"./randomWord\";\n\nexport const randomParagraph = () => {\n return capitalize(array(8, () => randomWord()).join(\" \")) + \".\";\n};\n","import { randomArrayItem } from \"./randomArrayItem\";\nimport { randomParagraph } from \"./randomParagraph\";\nimport { randomWord } from \"./randomWord\";\n\nconst fileExtensions = [\"png\", \"jpg\", \"jpeg\", \"gif\", \"svg\", \"webp\"];\n\n// This is a client only function\nexport const randomFile = ({\n name,\n extension,\n}: {\n name?: string;\n extension?: string;\n} = {}): File | undefined => {\n if (typeof File === \"undefined\") return undefined;\n\n const _extension = extension || randomArrayItem(fileExtensions);\n return new File(\n [randomParagraph()], // TODO: Use random char string\n `${name || randomWord()}.${_extension}`,\n {\n type: `image/${_extension}`,\n }\n );\n};\n","export const HEX_VALUES = [\n \"0\",\n \"1\",\n \"2\",\n \"3\",\n \"4\",\n \"5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"A\",\n \"B\",\n \"C\",\n \"D\",\n \"E\",\n \"F\",\n];\n","import { HEX_VALUES } from \"../constants/hex\";\nimport { array } from \"../helpers\";\nimport { randomArrayItem } from \"./randomArrayItem\";\n\nexport const randomHexColor = () => {\n return \"#\" + array(6, () => randomArrayItem(HEX_VALUES)).join(\"\");\n};\n","import { HEX_VALUES } from \"../constants/hex\";\nimport { randomArrayItem } from \"./randomArrayItem\";\n\nexport const randomHexValue = () => {\n return randomArrayItem(HEX_VALUES);\n};\n","import {\n ANIMAL_NAMES,\n FIRST_NAMES,\n LAST_NAMES,\n LATIN_FIRST_NAMES,\n LATIN_LAST_NAMES,\n TOOL_NAMES,\n} from \"../constants/names\";\nimport { randomArrayItem } from \"./randomArrayItem\";\n\nexport const randomName = () =>\n randomArrayItem([...ANIMAL_NAMES, ...TOOL_NAMES]);\n\nexport const randomFirstName = () => randomArrayItem(FIRST_NAMES);\n\nexport const randomLastName = () => randomArrayItem(LAST_NAMES);\n\nexport const randomFullName = () =>\n randomArrayItem(LATIN_FIRST_NAMES) + \" \" + randomArrayItem(LATIN_LAST_NAMES);\n","export const isBoolean = (arg: any) =>\n Object.prototype.toString.call(arg) === \"[object Boolean]\";\n","export const isServer = () => typeof window === \"undefined\";\n","import { isServer } from \"./isServer\";\n\nexport const isClient = () => !isServer();\n","import { isClient } from \"./isClient\";\n\nexport const isBrowser = isClient;\n","import { isString } from \"./isString\";\n\nexport const isEmail = (arg: string) =>\n isString(arg) && /\\S+@\\S+\\.\\S+/.test(arg);\n","export const isFunction = (arg: any) =>\n Object.prototype.toString.call(arg) === \"[object Function]\";\n\nexport const isPromise = (arg: any) => arg instanceof Promise;\n","export const isKeyOfObject = <T extends object>(\n key: string | number | symbol,\n obj: T\n): key is keyof T => key in obj;\n","export const isInt = (arg: number) => Number.isInteger(arg);\n\nexport const isEven = (arg: number) => isInt(arg) && !(arg % 2);\n\nexport const isOdd = (arg: number) => isInt(arg) && !!(arg % 2);\n\nexport const isPositive = (arg: number) => isInt(arg) && arg > 0;\n\nexport const isNegative = (arg: number) => isInt(arg) && arg < 0;\n\nexport const isNumber = (arg: any): arg is number => {\n return (\n Object.prototype.toString.apply(arg) === \"[object Number]\" && isFinite(arg)\n );\n};\n","export const isNumeric = (num: number | string): boolean => {\n return !isNaN(num as number); // isNaN DOES actually work with string-numbers!\n};\n","import { isJsDate } from \"./isJsDate\";\n\nexport const isStringDate = (arg: string) => {\n const date = new Date(arg);\n return isJsDate(date);\n};\n","export const isUndefined = (arg: any) => typeof arg === \"undefined\";\n","const pattern = new RegExp(\n \"^(https?:\\\\/\\\\/)?\" + // protocol\n \"((([a-z\\\\d]([a-z\\\\d-]*[a-z\\\\d])*)\\\\.?)+[a-z]{2,}|\" + // domain name\n \"((\\\\d{1,3}\\\\.){3}\\\\d{1,3}))\" + // OR ip (v4) address\n \"(\\\\:\\\\d+)?(\\\\/[-a-z\\\\d%_.~+]*)*\" + // port and path\n \"(\\\\?[;&a-z\\\\d%_.~+=-]*)?\" + // query string\n \"(\\\\#[-a-z\\\\d_]*)?$\",\n \"i\"\n); // fragment locator\n\nexport const isURL = (arg: string) => {\n return !!arg && pattern.test(arg);\n};\n","export const isUUID = (arg: string) =>\n /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(\n arg\n );\n"],"mappings":"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EAEaC,GAAiB,IACrBP,EAAW,OAAW,IAAI,IAAM,EAG5BQ,GAAkB,IAAM,CACnC,IAAML,EAAYH,EAAW,EAI7B,MAAO,CACL,QAHcA,EAAWG,CAAS,EAIlC,UAAAA,CACF,CACF,EC9BO,IAAMM,EAAe,CAC1B,YACA,YACA,cACA,UACA,UACA,cACA,WACA,gBACA,cACA,UACA,UACA,SACA,gBACA,UACA,gBACA,cACA,UACA,WACA,iBACA,WACA,SACA,SACA,SACA,SACF,ECzBO,IAAMC,EAAe,CAC1B,WACA,YACA,YACA,SACA,MACA,WACA,WACA,KACF,EAEaC,EAAa,CACxB,MACA,mBACA,WACA,gBACA,iBACA,cACA,iBACA,SACF,EAEaC,EAAoB,CAC/B,UACA,OACA,SACA,QACA,OACA,SACA,YACA,QACA,SACA,SACA,MACA,QACF,EAEaC,EAAmB,CAC9B,QACA,UACA,WACA,QACA,QACA,QACA,SACA,SACA,QACA,SACA,WACA,SACA,UACA,OACF,EAEaC,EAAuB,CAClC,6CACA,2BACA,uCACA,iCACA,2BACA,6CACA,yDACA,iCACA,uCACA,uCACA,qBACA,gCACF,EAEaC,EAAsB,CACjC,2BACA,6CACA,6CACA,iCACA,iCACA,iCACA,uCACA,uCACA,qBACA,uCACA,mDACA,iCACA,6CACA,0BACF,EAEaC,EAAuB,CAClC,iCACA,qBACA,iCACA,2BACA,qBACA,iCACA,6CACA,qBACA,2BACA,2BACA,qBACA,sCACF,EAEaC,EAAsB,CACjC,qBACA,iCACA,uCACA,iCACA,2BACA,2BACA,qBACA,iCACA,eACA,2BACA,uCACA,2BACA,iCACA,0BACF,EAEaC,EAAqB,CAChC,uCACA,qBACA,uCACA,iCACA,2BACA,iCACA,6CACA,2BACA,uCACA,uCACA,qBACA,gCACF,EAEaC,EAAoB,CAC/B,2BACA,uCACA,6CACA,2BACA,iCACA,iCACA,2BACA,uCACA,qBACA,uCACA,6CACA,iCACA,uCACA,0BACF,EAEaC,EAAc,CACzB,GAAGR,EACH,GAAGE,EACH,GAAGE,EACH,GAAGE,CACL,EAEaG,EAAa,CACxB,GAAGR,EACH,GAAGE,EACH,GAAGE,EACH,GAAGE,CACL,EC9JO,IAAMG,EAAe,KAExBC,EAAgBC,CAAiB,EACjC,IACAD,EAAgBE,CAAgB,GAChC,YAAY,EAAIC,EAAU,GAAI,EAAE,ECJ7B,IAAMC,GAAc,IACzB,GAAGC,EAAa,KAAKC,EAAgBC,CAAY,ICN5C,IAAMC,EAAS,CACpB,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,WACF,ECdO,IAAMC,GAAc,IAClBC,EAAgBC,CAAM,ECFxB,IAAMC,GAAmBC,GAAoB,CAClD,IAAIC,EAAgB,CAAC,EAErB,cAAO,OAAOD,CAAU,EAAE,QAASE,GAAe,CAC5CA,KAASF,GAAc,CAACC,EAAO,SAASC,CAAK,GAC/CD,EAAO,KAAKD,EAAWE,CAAK,CAAC,CACjC,CAAC,EAED,QAAQ,IAAID,CAAM,EACXE,EAAgBF,CAAM,CAC/B,ECZO,IAAMG,EAAQ,CACnB,QACA,SACA,SACA,aACA,UACA,UACA,MACA,QACA,MACA,UACA,SACA,SACA,QACA,QACA,UACA,SACA,SACA,QACA,QACA,OACF,EAEaC,EAAQ,CACnB,UACA,UACA,OACA,WACA,QACA,QACA,SACA,UACA,SACA,UACF,EAEaC,EAAa,CACxB,YACA,YACA,UACA,OACA,WACA,UACA,WACA,QACA,QACA,SACA,UACA,SACA,UACF,EAEaC,EAAU,CACrB,aACA,SACA,iBACA,aACA,WACA,aACA,YACA,eACA,gBACA,cACA,aACA,aACA,eACA,iBACF,EAEaC,GAAa,CACxB,gDACA,gCACA,iCACA,uCACA,+BACA,qCACA,6BACF,EAyFO,IAAMC,EAAQ,CACnB,GAAGC,EACH,GAAGC,EACH,GAAGC,EACH,GAAGC,EACH,GAAGC,EACL,ECzKO,IAAMC,EAAa,IACjBC,EAAgBC,CAAK,ECAvB,IAAMC,EAAkB,IACtBC,EAAWC,EAAM,EAAG,IAAMC,EAAW,CAAC,EAAE,KAAK,GAAG,CAAC,EAAI,ICD9D,IAAMC,GAAiB,CAAC,MAAO,MAAO,OAAQ,MAAO,MAAO,MAAM,EAGrDC,GAAa,CAAC,CACzB,KAAAC,EACA,UAAAC,CACF,EAGI,CAAC,IAAwB,CAC3B,GAAI,OAAO,KAAS,IAAa,OAEjC,IAAMC,EAAaD,GAAaE,EAAgBL,EAAc,EAC9D,OAAO,IAAI,KACT,CAACM,EAAgB,CAAC,EAClB,GAAGJ,GAAQK,EAAW,KAAKH,IAC3B,CACE,KAAM,SAASA,GACjB,CACF,CACF,ECxBO,IAAMI,EAAa,CACxB,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,GACF,ECbO,IAAMC,GAAiB,IACrB,IAAMC,EAAM,EAAG,IAAMC,EAAgBC,CAAU,CAAC,EAAE,KAAK,EAAE,ECF3D,IAAMC,GAAiB,IACrBC,EAAgBC,CAAU,ECM5B,IAAMC,GAAa,IACxBC,EAAgB,CAAC,GAAGC,EAAc,GAAGC,CAAU,CAAC,EAErCC,GAAkB,IAAMH,EAAgBI,CAAW,EAEnDC,GAAiB,IAAML,EAAgBM,CAAU,EAEjDC,GAAiB,IAC5BP,EAAgBQ,CAAiB,EAAI,IAAMR,EAAgBS,CAAgB,EClBtE,IAAMC,GAAaC,GACxB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,mBCDnC,IAAMC,EAAW,IAAM,OAAO,OAAW,ICEzC,IAAMC,EAAW,IAAM,CAACC,EAAS,ECAjC,IAAMC,GAAYC,ECAlB,IAAMC,GAAWC,GACtBC,EAASD,CAAG,GAAK,eAAe,KAAKA,CAAG,ECHnC,IAAME,GAAcC,GACzB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,oBAE7BC,GAAaD,GAAaA,aAAe,QCH/C,IAAME,GAAgB,CAC3BC,EACAC,IACmBD,KAAOC,ECHrB,IAAMC,EAASC,GAAgB,OAAO,UAAUA,CAAG,EAE7CC,GAAUD,GAAgBD,EAAMC,CAAG,GAAK,EAAEA,EAAM,GAEhDE,GAASF,GAAgBD,EAAMC,CAAG,GAAK,CAAC,EAAEA,EAAM,GAEhDG,GAAcH,GAAgBD,EAAMC,CAAG,GAAKA,EAAM,EAElDI,GAAcJ,GAAgBD,EAAMC,CAAG,GAAKA,EAAM,EAElDK,GAAYL,GAErB,OAAO,UAAU,SAAS,MAAMA,CAAG,IAAM,mBAAqB,SAASA,CAAG,ECZvE,IAAMM,GAAaC,GACjB,CAAC,MAAMA,CAAa,ECCtB,IAAMC,GAAgBC,GAAgB,CAC3C,IAAMC,EAAO,IAAI,KAAKD,CAAG,EACzB,OAAOE,EAASD,CAAI,CACtB,ECLO,IAAME,GAAeC,GAAa,OAAOA,EAAQ,ICAxD,IAAMC,GAAU,IAAI,OAClB,yKAMA,GACF,EAEaC,GAASC,GACb,CAAC,CAACA,GAAOF,GAAQ,KAAKE,CAAG,ECX3B,IAAMC,GAAUC,GACrB,6EAA6E,KAC3EA,CACF","names":["array","length","mapFn","capitalize","string","first","arr","last","arr","moveToFirst","items","condition","resortedItems","i","firstItem","moveToLast","items","condition","resortedItems","i","lastItem","isArray","value","isObject","arg","isString","arg","isEmpty","arg","isEmptyObject","isEmptyArray","isEmptyString","isString","isArray","isObject","isJsDate","arg","parseDate","arg","isEmpty","date","isJsDate","UK_ADDRESSES","US_ADDRESSES","EUROPE_ADDRESSES","MIXED_ADDRESSES","ADDRESSES","randomInt","start","end","randomPositiveInt","randomNegativeInt","randomMaxSafeInt","randomMaxInt","randomArrayItem","array","randomInt","randomAddress","randomArrayItem","ADDRESSES","randomBool","randomInt","isValue","arg","JS_MAX_DIGITS","randomFloat","min","max","decimals","float","isValue","randomCoords","randomLat","randomLng","randomFloat","randomDate","start","end","startDate","endDate","randomFutureDate","safeNow","randomPastDate","randomDateRange","DOMAIN_NAMES","ANIMAL_NAMES","TOOL_NAMES","LATIN_FIRST_NAMES","LATIN_LAST_NAMES","CYRILLIC_FIRST_NAMES","CYRILLIC_LAST_NAMES","JAPANESE_FIRST_NAMES","JAPANESE_LAST_NAMES","ARABIC_FIRST_NAMES","ARABIC_LAST_NAMES","FIRST_NAMES","LAST_NAMES","randomHandle","randomArrayItem","LATIN_FIRST_NAMES","LATIN_LAST_NAMES","randomInt","randomEmail","randomHandle","randomArrayItem","DOMAIN_NAMES","EMOJIS","randomEmoji","randomArrayItem","EMOJIS","randomEnumValue","enumObject","values","value","randomArrayItem","VERBS","NOUNS","ADJECTIVES","ADVERBS","LONG_WORDS","WORDS","VERBS","NOUNS","ADJECTIVES","ADVERBS","LONG_WORDS","randomWord","randomArrayItem","WORDS","randomParagraph","capitalize","array","randomWord","fileExtensions","randomFile","name","extension","_extension","randomArrayItem","randomParagraph","randomWord","HEX_VALUES","randomHexColor","array","randomArrayItem","HEX_VALUES","randomHexValue","randomArrayItem","HEX_VALUES","randomName","randomArrayItem","ANIMAL_NAMES","TOOL_NAMES","randomFirstName","FIRST_NAMES","randomLastName","LAST_NAMES","randomFullName","LATIN_FIRST_NAMES","LATIN_LAST_NAMES","isBoolean","arg","isServer","isClient","isServer","isBrowser","isClient","isEmail","arg","isString","isFunction","arg","isPromise","isKeyOfObject","key","obj","isInt","arg","isEven","isOdd","isPositive","isNegative","isNumber","isNumeric","num","isStringDate","arg","date","isJsDate","isUndefined","arg","pattern","isURL","arg","isUUID","arg"]}
1
+ {"version":3,"sources":["../src/helpers/array.ts","../src/helpers/capitalize.ts","../src/helpers/getKeys.ts","../src/helpers/first.ts","../src/helpers/last.ts","../src/validators/isArray.ts","../src/validators/isBoolean.ts","../src/validators/isServer.ts","../src/validators/isClient.ts","../src/validators/isBrowser.ts","../src/validators/isString.ts","../src/validators/isEmail.ts","../src/validators/isObject.ts","../src/validators/isEmpty.ts","../src/validators/isFunction.ts","../src/validators/isJsDate.ts","../src/validators/isKey.ts","../src/validators/isNumber.ts","../src/validators/isNumeric.ts","../src/validators/isPromise.ts","../src/validators/isPWA.ts","../src/validators/isReactElement.ts","../src/validators/isRegExp.ts","../src/validators/isStringDate.ts","../src/validators/isUndefined.ts","../src/validators/isURL.ts","../src/validators/isUUID.ts","../src/validators/isValue.ts","../src/helpers/merge.ts","../src/helpers/moveToFirst.ts","../src/helpers/moveToLast.ts","../src/helpers/parseDate.ts","../src/constants/addresses.ts","../src/random/randomInt.ts","../src/random/randomArrayItem.ts","../src/random/randomAddress.ts","../src/random/randomBool.ts","../src/random/randomFloat.ts","../src/random/randomCoords.ts","../src/random/randomDate.ts","../src/constants/domains.ts","../src/constants/names.ts","../src/random/randomHandle.ts","../src/random/randomEmail.ts","../src/constants/unicode.ts","../src/random/randomEmoji.ts","../src/random/randomEnumKey.ts","../src/random/randomEnumValue.ts","../src/constants/words.ts","../src/random/randomWord.ts","../src/random/randomParagraph.ts","../src/random/randomFile.ts","../src/constants/hex.ts","../src/random/randomHexColor.ts","../src/random/randomHexValue.ts","../src/random/randomHtmlColorName.ts","../src/constants/banking.ts","../src/random/randomIBAN.ts","../src/random/randomName.ts","../src/random/randomNumericId.ts","../src/random/randomPassword.ts","../src/random/randomUUID.ts"],"names":["array","length","mapFn","capitalize","string","getKeys","arg","getEnumerableOwnPropertySymbols","symbol","first","arr","last","isArray","value","isBoolean","isServer","isClient","isBrowser","isString","isEmail","isObject","isEmpty","isEmptyObject","isEmptyArray","isEmptyString","isFunction","isJsDate","isKey","key","obj","isInt","isEven","isOdd","isPositive","isNegative","isNumber","isNumeric","num","isPromise","isPWA","canUseSymbol","REACT_ELEMENT_TYPE","isReactElement","isRegExp","isStringDate","date","isUndefined","pattern","isURL","isUUID","isValue","merge","target","source","merger","moveToFirst","items","condition","resortedItems","i","firstItem","moveToLast","lastItem","parseDate","UK_ADDRESSES","US_ADDRESSES","EUROPE_ADDRESSES","MIXED_ADDRESSES","ADDRESSES","randomInt","start","end","randomPositiveInt","randomNegativeInt","randomMaxSafeInt","randomMaxInt","randomPercentage","randomArrayItem","randomAddress","randomBool","JS_MAX_DIGITS","randomFloat","min","max","decimals","float","randomCoords","randomLat","randomLng","randomDate","startDate","endDate","randomFutureDate","safeNow","randomPastDate","randomDateRange","DOMAIN_NAMES","ANIMAL_NAMES","TOOL_NAMES","LATIN_FIRST_NAMES","LATIN_LAST_NAMES","CYRILLIC_FIRST_NAMES","CYRILLIC_LAST_NAMES","JAPANESE_FIRST_NAMES","JAPANESE_LAST_NAMES","ARABIC_FIRST_NAMES","ARABIC_LAST_NAMES","FIRST_NAMES","LAST_NAMES","randomHandle","randomEmail","EMOJI_SAMPLE","SPECIAL_CHARACTERS","randomEmoji","randomEnumKey","enumObject","randomEnumValue","values","VERBS","NOUNS","ADJECTIVES","ADVERBS","LONG_WORDS","HTML_COLOR_NAME_SAMPLES","WORDS","randomWord","randomParagraph","fileExtensions","randomFile","name","extension","_extension","HEX_VALUES","randomHexColor","randomHexValue","randomHtmlColorName","IBAN_SAMPLES","randomIBAN","randomName","randomFirstName","randomLastName","randomFullName","id","randomNumericId","randomPassword","randomUUID","digit12"],"mappings":"AAAO,IAAMA,EAAQ,CACnBC,EACAC,IAEO,MAAM,KAAK,CAAE,OAAAD,CAAO,EAAGC,CAAK,ECJ9B,IAAMC,EAAcC,GAClBA,EAAO,OAAO,CAAC,EAAE,YAAY,EAAIA,EAAO,MAAM,CAAC,ECDjD,IAAMC,EAAWC,GACf,OAAO,KAAKA,CAAG,EAAE,OAAOC,EAAgCD,CAAG,CAAC,EAIxDC,EAAmCD,GACvC,OAAO,sBACV,OAAO,sBAAsBA,CAAG,EAAE,OAAO,SAAUE,EAAQ,CACzD,OAAO,OAAO,qBAAqB,KAAKF,EAAKE,CAAM,CACrD,CAAC,EACD,CAAC,ECVA,IAAMC,GAAYC,GAA6BA,GAAA,YAAAA,EAAM,GCArD,IAAMC,GAAWD,GAA6BA,GAAA,YAAAA,EAAMA,EAAI,OAAS,GCAjE,IAAME,EAAcC,GAA8B,MAAM,QAAQA,CAAK,ECArE,IAAMC,GAAaR,GACxB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,mBCDnC,IAAMS,EAAW,IAAM,OAAO,OAAW,ICEzC,IAAMC,EAAW,IAAM,CAACD,EAAS,ECAjC,IAAME,GAAYD,ECFlB,IAAME,EAAYZ,GAAa,OAAOA,GAAQ,SCE9C,IAAMa,GAAWb,GACtBY,EAASZ,CAAG,GAAK,eAAe,KAAKA,CAAG,ECHnC,IAAMc,EAAYd,GACvB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,kBCInC,IAAMe,EAAWf,GAClBgB,EAAchB,CAAG,GACjBiB,EAAajB,CAAG,GAChBkB,EAAclB,CAAG,EAAU,GAEHA,GAAQ,KAGzBkB,EAAiBlB,GACrBY,EAASZ,CAAG,GAAKA,EAAI,KAAK,EAAE,SAAW,EAGnCiB,EAAgBjB,GACpBM,EAAQN,CAAG,GAAKA,EAAI,SAAW,EAG3BgB,EAAiBhB,GACrBc,EAASd,CAAG,GAAK,OAAO,KAAKA,CAAG,EAAE,SAAW,ECtB/C,IAAMmB,GAAcnB,GACzB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,oBCDnC,IAAMoB,EAAYpB,GACvB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,iBAAmB,CAAC,MAAMA,CAAG,ECDhE,IAAMqB,EAAQ,CACnBC,EACAC,IAEAA,EAAI,eAAeD,CAAG,GACtBC,EAAI,qBAAqBD,CAAG,ECLvB,IAAME,EAASxB,GAAgB,OAAO,UAAUA,CAAG,EAE7CyB,GAAUzB,GAAgBwB,EAAMxB,CAAG,GAAK,EAAEA,EAAM,GAEhD0B,GAAS1B,GAAgBwB,EAAMxB,CAAG,GAAK,CAAC,EAAEA,EAAM,GAEhD2B,GAAc3B,GAAgBwB,EAAMxB,CAAG,GAAKA,EAAM,EAElD4B,GAAc5B,GAAgBwB,EAAMxB,CAAG,GAAKA,EAAM,EAElD6B,GAAY7B,GAErB,OAAO,UAAU,SAAS,MAAMA,CAAG,IAAM,mBAAqB,SAASA,CAAG,ECZvE,IAAM8B,EAAaC,GACjB,CAAC,MAAMA,CAAa,ECDtB,IAAMC,GAAahC,GAAaA,aAAe,QCE/C,IAAMiC,GAAQ,IACZvB,EAAS,GAAK,OAAO,WAAW,4BAA4B,EAAE,QCHvE,IAAIwB,EAAe,OAAO,QAAW,YAAc,OAAO,IACtDC,EAAqBD,EAAe,OAAO,IAAI,eAAe,EAAI,MAEzDE,GAAkB7B,GACtBA,EAAM,WAAa4B,ECJrB,IAAME,GAAYrC,GACvB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,kBCCnC,IAAMsC,GAAgBtC,GAAgB,CAC3C,IAAMuC,EAAO,IAAI,KAAKvC,CAAG,EACzB,OAAOoB,EAASmB,CAAI,CACtB,ECLO,IAAMC,GAAexC,GAAa,OAAOA,EAAQ,ICAxD,IAAMyC,EAAU,IAAI,OAClB,yKAMA,GACF,EAEaC,GAAS1C,GACb,CAAC,CAACA,GAAOyC,EAAQ,KAAKzC,CAAG,ECX3B,IAAM2C,GAAU3C,GACrB,6EAA6E,KAC3EA,CACF,ECDK,IAAM4C,EAAW5C,GACMA,GAAQ,MAAQ,CAAC,OAAO,MAAMA,CAAG,ECExD,IAAM6C,EAAQ,CAACC,EAAqBC,IAAwB,CACjE,IAAMC,EAAsB,CAAC,EAC7B,OAAAjD,EAAQ+C,CAAM,EAAE,QAASxB,GAAQ,CAC/B0B,EAAO1B,CAAG,EAAIR,EAASgC,EAAOxB,CAAG,CAAC,EAAIuB,EAAM,CAAC,EAAGC,EAAOxB,CAAG,CAAC,EAAIwB,EAAOxB,CAAG,CAC3E,CAAC,EACDvB,EAAQgD,CAAM,EAAE,QAASzB,GAAQ,CAC3BD,EAAMC,EAAKwB,CAAM,EACnBE,EAAO1B,CAAG,EACRR,EAASgC,EAAOxB,CAAG,CAAC,GAAKR,EAASiC,EAAOzB,CAAG,CAAC,EACzCuB,EAAMC,EAAOxB,CAAG,EAAGyB,EAAOzB,CAAG,CAAC,EAC9ByB,EAAOzB,CAAG,EAEhB0B,EAAO1B,CAAG,EAAIR,EAASiC,EAAOzB,CAAG,CAAC,EAC9BuB,EAAM,CAAC,EAAGE,EAAOzB,CAAG,CAAC,EACrByB,EAAOzB,CAAG,CAClB,CAAC,EACM0B,CACT,ECtBO,IAAMC,GAAc,CACzBC,EACAC,IACQ,CACR,IAAMC,EAAgB,CAAC,GAAGF,CAAK,EAC/B,QAASG,EAAI,EAAGA,EAAID,EAAc,OAAQC,IACxC,GAAIF,EAAUC,EAAcC,CAAC,EAAGA,EAAGD,CAAa,EAAG,CACjD,IAAIE,EAAYF,EAAc,OAAOC,EAAG,CAAC,EACzCD,EAAc,QAAQE,EAAU,CAAC,CAAC,EAClC,MAGJ,OAAOF,CACT,ECbO,IAAMG,GAAa,CACxBL,EACAC,IACQ,CACR,IAAMC,EAAgB,CAAC,GAAGF,CAAK,EAC/B,QAASG,EAAI,EAAGA,EAAID,EAAc,OAAQC,IACxC,GAAIF,EAAUC,EAAcC,CAAC,EAAGA,EAAGD,CAAa,EAAG,CACjD,IAAII,EAAWJ,EAAc,OAAOC,EAAG,CAAC,EAAE,CAAC,EAC3CD,EAAc,KAAKI,CAAQ,EAC3B,MAGJ,OAAOJ,CACT,ECTO,IAAMK,GAAazD,GAA0B,CAClD,GAAIe,EAAQf,CAAG,EAAG,OAElB,IAAMuC,EAAO,IAAI,KAAKvC,CAAI,EAE1B,GAAKoB,EAASmB,CAAI,EAElB,OAAOA,CACT,ECZO,IAAMmB,EAAe,CAC1B,CACE,KAAM,SACN,QAAS,iBACT,OAAQ,eACR,OAAQ,OACR,IAAK,SACP,EACA,CACE,KAAM,aACN,QAAS,iBACT,OAAQ,mBACR,OAAQ,SACR,IAAK,QACP,CACF,EAEaC,EAAe,CAC1B,CACE,KAAM,WACN,QAAS,gBACT,OAAQ,WACR,OAAQ,KACR,IAAK,OACP,EACA,CACE,KAAM,cACN,QAAS,gBACT,OAAQ,sBACR,OAAQ,OACR,IAAK,OACP,CACF,EAEaC,EAAmB,CAC9B,CACE,KAAM,QACN,QAAS,SACT,OAAQ,gBACR,OAAQ,QACR,IAAK,OACP,EACA,CACE,KAAM,SACN,QAAS,UACT,OAAQ,mBACR,OAAQ,QACR,IAAK,OACP,EACA,CACE,KAAM,OACN,QAAS,QACT,OAAQ,gBACR,OAAQ,QACR,IAAK,OACP,EACA,CACE,KAAM,SACN,QAAS,QACT,OAAQ,cACR,OAAQ,QACR,IAAK,OACP,CACF,EAEaC,EAAkB,CAC7B,CACE,KAAM,SACN,QAAS,SACT,OAAQ,YACR,OAAQ,SACR,IAAK,QACP,EACA,CACE,KAAM,QACN,QAAS,QACT,OAAQ,WACR,OAAQ,WACR,IAAK,UACP,EACA,CACE,KAAM,UACN,QAAS,QACT,OAAQ,UACR,OAAQ,SACR,IAAK,QACP,EACA,CACE,KAAM,QACN,QAAS,QACT,OAAQ,WACR,OAAQ,QAER,IAAK,OACP,EACA,CACE,KAAM,eACN,QAAS,YACT,OAAQ,kBACR,OAAQ,OACR,IAAK,UACP,EACA,CACE,KAAM,YACN,QAAS,eACT,OAAQ,WACR,OAAQ,OACR,IAAK,MACP,EACA,CACE,KAAM,SACN,QAAS,YACT,OAAQ,SACR,OAAQ,OACR,IAAK,MACP,EACA,CACE,KAAM,iBACN,QAAS,SACT,OAAQ,wBACR,OAAQ,YACR,IAAK,WACP,EACA,CACE,KAAM,cACN,QAAS,SACT,OAAQ,sBACR,OAAQ,QACR,IAAK,OACP,CACF,EAEaC,EAAY,CACvB,GAAGJ,EACH,GAAGC,EACH,GAAGC,EACH,GAAGC,CACL,ECzIO,IAAME,EAAY,CAACC,EAAgB,KAAMC,EAAc,MAC5D,KAAK,MAAM,KAAK,OAAO,GAAKA,EAAMD,EAAQ,GAAKA,CAAK,EAEzCE,GAAoB,CAACD,EAAc,MAC9CF,EAAU,EAAGE,CAAG,EAELE,GAAoB,CAACH,EAAgB,OAChDD,EAAUC,EAAO,EAAE,EAERI,GAAmB,IAC9BL,EAAU,CAAC,OAAO,iBAAkB,OAAO,gBAAgB,EAEhDM,GAAe,IAC1BN,EAAU,CAAC,OAAO,UAAW,OAAO,SAAS,EAElCO,GAAmB,IAAMP,EAAU,KAAM,GAAG,ECblD,IAAMQ,EAAsB7E,GAC1BA,EAAMqE,EAAU,EAAGrE,EAAM,OAAS,CAAC,CAAC,ECAtC,IAAM8E,GAAgB,IACpBD,EAAgBT,CAAS,ECF3B,IAAMW,GAAa,IAAM,CAAC,CAACV,EAAU,EAAG,CAAC,ECCzC,IAAMW,GAAgB,GAGhBC,EAAc,CACzBC,EAAc,GACdC,EAAc,EACdC,IACG,CACH,IAAMC,EAAQ,KAAK,OAAO,GAAKF,EAAMD,GAAOA,EAE5C,OAAIhC,EAAQkC,CAAQ,EAAU,WAAWC,EAAM,QAAQD,CAAQ,CAAC,EAEzDC,CACT,ECbO,IAAMC,GAAe,KACnB,CACL,IAAKC,GAAU,EACf,IAAKC,GAAU,CACjB,GAGWD,GAAY,IAChBN,EAAY,IAAK,EAAE,EAGfO,GAAY,IAChBP,EAAY,KAAM,GAAG,ECbvB,IAAMQ,EAAa,CAACnB,EAAcC,IAAe,CACtD,IAAMmB,EAAYpB,GAAS,IAAI,KAAK,OAAsB,EACpDqB,EAAUpB,GAAO,IAAI,KAAK,MAAqB,EACrD,OAAO,IAAI,KACTmB,EAAU,QAAQ,EAChB,KAAK,OAAO,GAAKC,EAAQ,QAAQ,EAAID,EAAU,QAAQ,EAC3D,CACF,EAEaE,GAAmB,IAAM,CAEpC,IAAMC,EAAU,IAAI,KAAK,IAAI,KAAK,EAAE,QAAQ,EAAI,GAAS,EACzD,OAAOJ,EAAWI,EAAS,MAAS,CACtC,EAEaC,GAAiB,IACrBL,EAAW,OAAW,IAAI,IAAM,EAG5BM,GAAkB,IAAM,CACnC,IAAML,EAAYD,EAAW,EAI7B,MAAO,CACL,QAHcA,EAAWC,CAAS,EAIlC,UAAAA,CACF,CACF,EC9BO,IAAMM,EAAe,CAC1B,YACA,YACA,cACA,UACA,UACA,cACA,WACA,gBACA,cACA,UACA,UACA,SACA,gBACA,cACA,UACA,WACA,iBACA,WACA,SACA,SACA,SACA,SACF,ECvBO,IAAMC,EAAe,CAC1B,WACA,YACA,YACA,SACA,MACA,WACA,WACA,KACF,EAEaC,EAAa,CACxB,MACA,mBACA,WACA,gBACA,iBACA,cACA,iBACA,SACF,EAEaC,EAAoB,CAC/B,OACA,SACA,OACA,SACA,YACA,QACA,SACA,OACA,SACA,MACA,SACA,SACA,SACA,MACF,EAEaC,EAAmB,CAC9B,QACA,UACA,WACA,QACA,QACA,QACA,SACA,SACA,QACA,SACA,WACA,SACA,UACA,OACF,EAEaC,GAAuB,CAClC,6CACA,2BACA,uCACA,iCACA,2BACA,6CACA,yDACA,iCACA,uCACA,uCACA,qBACA,gCACF,EAEaC,GAAsB,CACjC,2BACA,6CACA,6CACA,iCACA,iCACA,iCACA,uCACA,uCACA,qBACA,uCACA,mDACA,iCACA,6CACA,0BACF,EAEaC,GAAuB,CAClC,iCACA,qBACA,iCACA,2BACA,qBACA,iCACA,6CACA,qBACA,2BACA,2BACA,qBACA,sCACF,EAEaC,GAAsB,CACjC,qBACA,iCACA,uCACA,iCACA,2BACA,2BACA,qBACA,iCACA,eACA,2BACA,uCACA,2BACA,iCACA,0BACF,EAEaC,GAAqB,CAChC,uCACA,qBACA,uCACA,iCACA,2BACA,iCACA,6CACA,2BACA,uCACA,uCACA,qBACA,gCACF,EAEaC,GAAoB,CAC/B,2BACA,uCACA,6CACA,2BACA,iCACA,iCACA,2BACA,uCACA,qBACA,uCACA,6CACA,iCACA,uCACA,0BACF,EAEaC,EAAc,CACzB,GAAGR,EACH,GAAGE,GACH,GAAGE,GACH,GAAGE,EACL,EAEaG,EAAa,CACxB,GAAGR,EACH,GAAGE,GACH,GAAGE,GACH,GAAGE,EACL,EChKO,IAAMG,EAAe,KAExBhC,EAAgBsB,CAAiB,EACjC,IACAtB,EAAgBuB,CAAgB,GAChC,YAAY,EAAI/B,EAAU,GAAI,EAAE,ECJ7B,IAAMyC,GAAc,IACzB,GAAGD,EAAa,KAAKhC,EAAgBmB,CAAY,ICN5C,IAAMe,EAAe,CAC1B,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,WACF,EAEaC,EAAqB,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,GAAG,EChBlE,IAAMC,GAAc,IAClBpC,EAAgBkC,CAAY,ECD9B,IAAMG,GACXC,GAEOtC,EACL,OAAO,KAAKsC,CAAU,EAAE,OAAQvF,GAAQ,CAACQ,EAAUR,CAAG,CAAC,CACzD,ECJK,IAAMwF,GACXD,GACc,CACd,IAAIE,EAAsB,CAAC,EAE3B,cAAO,OAAOF,CAAU,EAAE,QAAStG,GAAU,CACvCA,KAASsG,GAAc,CAACE,EAAO,SAASxG,CAAK,GAC/CwG,EAAO,KAAKF,EAAWtG,CAAK,CAAC,CACjC,CAAC,EAEMgE,EAAgBwC,CAAM,CAC/B,ECfO,IAAMC,GAAQ,CACnB,QACA,SACA,SACA,aACA,UACA,UACA,MACA,QACA,MACA,SACA,SACA,QACA,QACA,UACA,SACA,SACA,QACA,QACA,QACA,KACA,KACA,OACA,MACF,EAEaC,GAAQ,CACnB,UACA,UACA,OACA,WACA,QACA,QACA,SACA,UACA,SACA,UACF,EAEaC,GAAa,CACxB,YACA,YACA,UACA,OACA,WACA,UACA,WACA,QACA,QACA,SACA,UACA,SACA,UACF,EAEaC,GAAU,CACrB,aACA,SACA,iBACA,aACA,WACA,aACA,YACA,eACA,gBACA,cACA,aACA,aACA,eACA,iBACF,EAEaC,GAAa,CACxB,gDACA,gCACA,iCACA,uCACA,+BACA,qCACA,6BACF,EAqEO,IAAMC,EAA0B,CACrC,YACA,OACA,aACA,QACA,QACA,SACA,QACA,OACA,aACA,QACA,YACA,YACA,aACA,YACA,QACA,gBACA,WACA,OACA,OACA,QACA,SACA,SACA,WACF,EAEaC,EAAQ,CACnB,GAAGN,GACH,GAAGC,GACH,GAAGC,GACH,GAAGC,GACH,GAAGC,EACL,EClLO,IAAMG,EAAa,IACjBhD,EAAgB+C,CAAK,ECAvB,IAAME,EAAkB,IACtB3H,EAAWH,EAAM,EAAG,IAAM6H,EAAW,CAAC,EAAE,KAAK,GAAG,CAAC,EAAI,ICD9D,IAAME,GAAiB,CAAC,MAAO,MAAO,OAAQ,MAAO,MAAO,MAAM,EAGrDC,GAAa,CAAC,CACzB,KAAAC,EACA,UAAAC,CACF,EAGI,CAAC,IAAwB,CAC3B,GAAI,OAAO,KAAS,IAAa,OAEjC,IAAMC,EAAaD,GAAarD,EAAgBkD,EAAc,EAC9D,OAAO,IAAI,KACT,CAACD,EAAgB,CAAC,EAClB,GAAGG,GAAQJ,EAAW,KAAKM,IAC3B,CACE,KAAM,SAASA,GACjB,CACF,CACF,ECxBO,IAAMC,EAAa,CACxB,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,GACF,ECbO,IAAMC,GAAiB,IACrB,IAAMrI,EAAM,EAAG,IAAM6E,EAAgBuD,CAAU,CAAC,EAAE,KAAK,EAAE,ECF3D,IAAME,GAAiB,IACrBzD,EAAgBuD,CAAU,ECD5B,IAAMG,EAAsB,IAC1B1D,EAAgB8C,CAAuB,ECJzC,IAAMa,EAAe,CAC1B,2BACA,uBACA,mBACA,yBACA,yBACA,+BACA,wBACA,yBACA,+BACA,2BACA,yBACA,+BACA,uBACA,2BACA,qBACA,qBACA,8BACA,yBACA,wBACF,ECjBO,IAAMC,GAAa,IACjB5D,EAAgB2D,CAAY,ECM9B,IAAME,GAAa,IACxB7D,EAAgB,CAAC,GAAGoB,EAAc,GAAGC,CAAU,CAAC,EAErCyC,GAAkB,IAAM9D,EAAgB8B,CAAW,EAEnDiC,GAAiB,IAAM/D,EAAgB+B,CAAU,EAEjDiC,GAAiB,IAC5BhE,EAAgBsB,CAAiB,EAAI,IAAMtB,EAAgBuB,CAAgB,EClB7E,IAAI0C,GAAK,EAEIC,EAAkB,IACtBD,KCEF,IAAME,GAAiB,IAC5BT,EAAoB,EACpB1D,EAAgBmC,CAAkB,EAClC3C,EAAU,GAAI,EAAE,ECCX,IAAM4E,GAAa,IAAM,CAC9B,IAAMH,EAAKC,EAAgB,EAAE,SAAS,EAAE,SAAS,GAAI,GAAG,EAClDG,EAAUJ,EAAG,UAAU,EAAG,EAAE,EAElC,MAAO,uBADQA,EAAG,UAAU,GAAI,EAAE,KACMI,GAC1C","sourcesContent":["export const array = <U extends (...args: any) => any>(\n length: number,\n mapFn: U\n): ReturnType<U>[] => {\n return Array.from({ length }, mapFn);\n};\n","export const capitalize = (string: string) => {\n return string.charAt(0).toUpperCase() + string.slice(1);\n};\n","export const getKeys = (arg: object) => {\n return Object.keys(arg).concat(getEnumerableOwnPropertySymbols(arg));\n};\n\n// Object.keys does not return enumerable symbols\nexport const getEnumerableOwnPropertySymbols = (arg: object): any[] => {\n return Object.getOwnPropertySymbols\n ? Object.getOwnPropertySymbols(arg).filter(function (symbol) {\n return Object.propertyIsEnumerable.call(arg, symbol);\n })\n : [];\n};\n","export const first = <T>(arr?: T[]): T | undefined => arr?.[0];\n","export const last = <T>(arr?: T[]): T | undefined => arr?.[arr.length - 1];\n","export const isArray = <T>(value?: T[]): value is T[] => Array.isArray(value);\n","export const isBoolean = (arg: any) =>\n Object.prototype.toString.call(arg) === \"[object Boolean]\";\n","export const isServer = () => typeof window === \"undefined\";\n","import { isServer } from \"./isServer\";\n\nexport const isClient = () => !isServer();\n","import { isClient } from \"./isClient\";\n\nexport const isBrowser = isClient;\n","export const isString = (arg: any) => typeof arg === \"string\";\n","import { isString } from \"./isString\";\n\nexport const isEmail = (arg: string) =>\n isString(arg) && /\\S+@\\S+\\.\\S+/.test(arg);\n","export const isObject = (arg: any): arg is object =>\n Object.prototype.toString.call(arg) === \"[object Object]\";\n","import { Maybe } from \"../types\";\nimport { isArray } from \"./isArray\";\nimport { isObject } from \"./isObject\";\nimport { isString } from \"./isString\";\n\nexport const isEmpty = (arg?: Maybe<any>) => {\n if (isEmptyObject(arg)) return true;\n if (isEmptyArray(arg)) return true;\n if (isEmptyString(arg)) return true;\n\n return arg === undefined || arg === null;\n};\n\nexport const isEmptyString = (arg: string) => {\n return isString(arg) && arg.trim().length === 0;\n};\n\nexport const isEmptyArray = (arg: any[]) => {\n return isArray(arg) && arg.length === 0;\n};\n\nexport const isEmptyObject = (arg: Object) => {\n return isObject(arg) && Object.keys(arg).length === 0;\n};\n","export const isFunction = (arg: any) =>\n Object.prototype.toString.call(arg) === \"[object Function]\";\n","export const isJsDate = (arg: any) =>\n Object.prototype.toString.call(arg) === \"[object Date]\" && !isNaN(arg);\n","export const isKey = <T extends object>(\n key: string | number | symbol,\n obj: T\n): key is keyof T =>\n obj.hasOwnProperty(key) && // makes sure the prop is not in the prototype chain\n obj.propertyIsEnumerable(key); // makes sure the prop is not a getter/setter\n","export const isInt = (arg: number) => Number.isInteger(arg);\n\nexport const isEven = (arg: number) => isInt(arg) && !(arg % 2);\n\nexport const isOdd = (arg: number) => isInt(arg) && !!(arg % 2);\n\nexport const isPositive = (arg: number) => isInt(arg) && arg > 0;\n\nexport const isNegative = (arg: number) => isInt(arg) && arg < 0;\n\nexport const isNumber = (arg: any): arg is number => {\n return (\n Object.prototype.toString.apply(arg) === \"[object Number]\" && isFinite(arg)\n );\n};\n","export const isNumeric = (num: number | string): boolean => {\n return !isNaN(num as number); // isNaN DOES actually work with string-numbers!\n};\n","export const isPromise = (arg: any) => arg instanceof Promise;\n","import { isClient } from \"./isClient\";\n\nexport const isPWA = () => {\n return isClient() && window.matchMedia(\"(display-mode: standalone)\").matches;\n};\n","var canUseSymbol = typeof Symbol === \"function\" && Symbol.for;\nvar REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for(\"react.element\") : 0xeac7;\n\nexport const isReactElement = (value: any) => {\n return value.$$typeof === REACT_ELEMENT_TYPE;\n};\n","export const isRegExp = (arg: any): arg is RegExp =>\n Object.prototype.toString.call(arg) === \"[object RegExp]\";\n","import { isJsDate } from \"./isJsDate\";\n\nexport const isStringDate = (arg: string) => {\n const date = new Date(arg);\n return isJsDate(date);\n};\n","export const isUndefined = (arg: any) => typeof arg === \"undefined\";\n","const pattern = new RegExp(\n \"^(https?:\\\\/\\\\/)?\" + // protocol\n \"((([a-z\\\\d]([a-z\\\\d-]*[a-z\\\\d])*)\\\\.?)+[a-z]{2,}|\" + // domain name\n \"((\\\\d{1,3}\\\\.){3}\\\\d{1,3}))\" + // OR ip (v4) address\n \"(\\\\:\\\\d+)?(\\\\/[-a-z\\\\d%_.~+]*)*\" + // port and path\n \"(\\\\?[;&a-z\\\\d%_.~+=-]*)?\" + // query string\n \"(\\\\#[-a-z\\\\d_]*)?$\",\n \"i\"\n); // fragment locator\n\nexport const isURL = (arg: string) => {\n return !!arg && pattern.test(arg);\n};\n","export const isUUID = (arg: string) =>\n /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(\n arg\n );\n","import { Maybe } from \"../types\";\n\nexport const isValue = (arg?: Maybe<any>) => {\n return arg !== undefined && arg !== null && !Number.isNaN(arg);\n};\n","import { PlainObject } from \"../types\";\nimport { isKey, isObject } from \"../validators\";\nimport { getKeys } from \"./getKeys\";\n\n// Simple merge function that merges two objects, arrays get overwritten, no options\nexport const merge = (target: PlainObject, source: PlainObject) => {\n const merger: PlainObject = {};\n getKeys(target).forEach((key) => {\n merger[key] = isObject(target[key]) ? merge({}, target[key]) : target[key];\n });\n getKeys(source).forEach((key) => {\n if (isKey(key, target))\n merger[key] =\n isObject(target[key]) && isObject(source[key])\n ? merge(target[key], source[key])\n : source[key];\n else\n merger[key] = isObject(source[key])\n ? merge({}, source[key])\n : source[key];\n });\n return merger;\n};\n","export const moveToFirst = <T>(\n items: T[],\n condition: (item: T, i: number, items: T[]) => boolean\n): T[] => {\n const resortedItems = [...items];\n for (let i = 0; i < resortedItems.length; i++) {\n if (condition(resortedItems[i], i, resortedItems)) {\n let firstItem = resortedItems.splice(i, 1);\n resortedItems.unshift(firstItem[0]);\n break;\n }\n }\n return resortedItems;\n};\n","export const moveToLast = <T>(\n items: T[],\n condition: (item: T, i: number, items: T[]) => boolean\n): T[] => {\n const resortedItems = [...items];\n for (let i = 0; i < resortedItems.length; i++) {\n if (condition(resortedItems[i], i, resortedItems)) {\n let lastItem = resortedItems.splice(i, 1)[0];\n resortedItems.push(lastItem);\n break;\n }\n }\n return resortedItems;\n};\n","import { DateLike, Maybe } from \"../types\";\nimport { isEmpty } from \"../validators/isEmpty\";\nimport { isJsDate } from \"../validators/isJsDate\";\n\nexport const parseDate = (arg?: Maybe<DateLike>) => {\n if (isEmpty(arg)) return;\n\n const date = new Date(arg!);\n\n if (!isJsDate(date)) return;\n\n return date;\n};\n","export const UK_ADDRESSES = [\n {\n city: \"London\",\n country: \"United Kingdom\",\n street: \"Baker Street\",\n number: \"221B\",\n zip: \"NW1 6XE\",\n },\n {\n city: \"Birmingham\",\n country: \"United Kingdom\",\n street: \"Bordesley Street\",\n number: \"B1 1AA\",\n zip: \"B1 1AA\",\n },\n];\n\nexport const US_ADDRESSES = [\n {\n city: \"New York\",\n country: \"United States\",\n street: \"Broadway\",\n number: \"42\",\n zip: \"10036\",\n },\n {\n city: \"Los Angeles\",\n country: \"United States\",\n street: \"Hollywood Boulevard\",\n number: \"6801\",\n zip: \"90028\",\n },\n];\n\nexport const EUROPE_ADDRESSES = [\n {\n city: \"Paris\",\n country: \"France\",\n street: \"Rue de Rivoli\",\n number: \"75001\",\n zip: \"75001\",\n },\n {\n city: \"Berlin\",\n country: \"Germany\",\n street: \"Unter den Linden\",\n number: \"10117\",\n zip: \"10117\",\n },\n {\n city: \"Rome\",\n country: \"Italy\",\n street: \"Via del Corso\",\n number: \"00186\",\n zip: \"00186\",\n },\n {\n city: \"Madrid\",\n country: \"Spain\",\n street: \"Gran Vía\",\n number: \"28013\",\n zip: \"28013\",\n },\n];\n\nexport const MIXED_ADDRESSES = [\n {\n city: \"Moscow\",\n country: \"Russia\",\n street: \"Tverskaya\",\n number: \"101000\",\n zip: \"101000\",\n },\n {\n city: \"Tokyo\",\n country: \"Japan\",\n street: \"Shinjuku\",\n number: \"160-0022\",\n zip: \"160-0022\",\n },\n {\n city: \"Beijing\",\n country: \"China\",\n street: \"Changan\",\n number: \"100005\",\n zip: \"100005\",\n },\n {\n city: \"Cairo\",\n country: \"Egypt\",\n street: \"Al-Muizz\",\n number: \"11511\",\n\n zip: \"11511\",\n },\n {\n city: \"Buenos Aires\",\n country: \"Argentina\",\n street: \"Avenida de Mayo\",\n number: \"1002\",\n zip: \"C1006AAQ\",\n },\n {\n city: \"Cape Town\",\n country: \"South Africa\",\n street: \"Adderley\",\n number: \"7700\",\n zip: \"7700\",\n },\n {\n city: \"Sydney\",\n country: \"Australia\",\n street: \"George\",\n number: \"2000\",\n zip: \"2000\",\n },\n {\n city: \"Rio de Janeiro\",\n country: \"Brazil\",\n street: \"Av. Presidente Vargas\",\n number: \"20021-000\",\n zip: \"20021-000\",\n },\n {\n city: \"Mexico City\",\n country: \"Mexico\",\n street: \"Paseo de la Reforma\",\n number: \"06500\",\n zip: \"06500\",\n },\n];\n\nexport const ADDRESSES = [\n ...UK_ADDRESSES,\n ...US_ADDRESSES,\n ...EUROPE_ADDRESSES,\n ...MIXED_ADDRESSES,\n];\n\nexport const CITIES = [\n \"London\",\n \"Birmingham\",\n \"New York\",\n \"Los Angeles\",\n \"Paris\",\n \"Berlin\",\n \"Rome\",\n \"Madrid\",\n \"Moscow\",\n \"Tokyo\",\n \"Beijing\",\n \"Cairo\",\n \"Buenos Aires\",\n \"Cape Town\",\n \"Sydney\",\n \"Rio de Janeiro\",\n \"Mexico City\",\n];\n\nexport const US_STATE_CODE_SAMPLES = [\n \"AL\",\n \"AK\",\n \"AZ\",\n \"AR\",\n \"CA\",\n \"CO\",\n \"CT\",\n \"DE\",\n \"FL\",\n \"GA\",\n \"HI\",\n];\n\nexport const ZIP_SAMPLES = [\n \"10036\",\n \"90028\",\n \"75001\",\n \"10117\",\n \"00186\",\n \"28013\",\n \"101000\",\n];\n","export const randomInt = (start: number = -100, end: number = 100): number =>\n Math.floor(Math.random() * (end - start + 1) + start);\n\nexport const randomPositiveInt = (end: number = 100): number =>\n randomInt(1, end);\n\nexport const randomNegativeInt = (start: number = -100): number =>\n randomInt(start, -1);\n\nexport const randomMaxSafeInt = () =>\n randomInt(-Number.MAX_SAFE_INTEGER, Number.MAX_SAFE_INTEGER);\n\nexport const randomMaxInt = () =>\n randomInt(-Number.MAX_VALUE, Number.MAX_VALUE);\n\nexport const randomPercentage = () => randomInt(-100, 100);\n","import { randomInt } from \"./randomInt\";\n\nexport const randomArrayItem = <T>(array: T[]): T => {\n return array[randomInt(0, array.length - 1)];\n};\n","import { ADDRESSES } from \"../constants/addresses\";\nimport { randomArrayItem } from \"./randomArrayItem\";\n\nexport const randomAddress = () => {\n return randomArrayItem(ADDRESSES);\n};\n","import { randomInt } from \"./randomInt\";\n\nexport const randomBool = () => !!randomInt(0, 1);\n","import { isValue } from \"../validators/isValue\";\n\n// Max js digits is theoretically 17, but is actually 16, see Math.random output.\nexport const JS_MAX_DIGITS = 16;\n\n// TODO: with big numbers there will be less digits\nexport const randomFloat = (\n min: number = -9,\n max: number = 9,\n decimals?: number // toFixed accepts max 100 anyway... even if the docs say 20\n) => {\n const float = Math.random() * (max - min) + min;\n\n if (isValue(decimals)) return parseFloat(float.toFixed(decimals));\n\n return float;\n};\n\n// TODO: randomBigFloat\n","import { Coords } from \"../types\";\nimport { randomFloat } from \"./randomFloat\";\n\nexport const randomCoords = (): Coords => {\n return {\n lat: randomLat(),\n lng: randomLng(),\n };\n};\n\nexport const randomLat = () => {\n return randomFloat(-90, 90);\n};\n\nexport const randomLng = () => {\n return randomFloat(-180, 180);\n};\n","import { MAX_DATE_MILLISECONDS } from \"../constants\";\n\nexport const randomDate = (start?: Date, end?: Date) => {\n const startDate = start || new Date(-MAX_DATE_MILLISECONDS);\n const endDate = end || new Date(MAX_DATE_MILLISECONDS);\n return new Date(\n startDate.getTime() +\n Math.random() * (endDate.getTime() - startDate.getTime())\n );\n};\n\nexport const randomFutureDate = () => {\n // Add a safe margin in the future (i.e. lagging tests). About 5 minutes is enough.\n const safeNow = new Date(new Date().getTime() + 5 * 60000);\n return randomDate(safeNow, undefined);\n};\n\nexport const randomPastDate = () => {\n return randomDate(undefined, new Date());\n};\n\nexport const randomDateRange = () => {\n const startDate = randomDate();\n\n const endDate = randomDate(startDate);\n\n return {\n endDate,\n startDate,\n };\n};\n","export const DOMAIN_NAMES = [\n \"gmail.com\",\n \"yahoo.com\",\n \"hotmail.com\",\n \"aol.com\",\n \"msn.com\",\n \"comcast.net\",\n \"live.com\",\n \"sbcglobal.net\",\n \"verizon.net\",\n \"att.net\",\n \"mac.com\",\n \"me.com\",\n \"earthlink.net\",\n \"charter.net\",\n \"shaw.ca\",\n \"yahoo.ca\",\n \"googlemail.com\",\n \"mail.com\",\n \"qq.com\",\n \"web.de\",\n \"gmx.de\",\n \"mail.ru\",\n];\n","export const ANIMAL_NAMES = [\n \"Aardvark\",\n \"Albatross\",\n \"Alligator\",\n \"Alpaca\",\n \"Ant\",\n \"Anteater\",\n \"Antelope\",\n \"Ape\",\n];\n\nexport const TOOL_NAMES = [\n \"Axe\",\n \"Ball Peen Hammer\",\n \"Band Saw\",\n \"Bench Grinder\",\n \"Biscuit Joiner\",\n \"Bolt Cutter\",\n \"Boring Machine\",\n \"Bow Saw\",\n];\n\nexport const LATIN_FIRST_NAMES = [\n \"Adam\",\n \"Adrian\",\n \"Alan\",\n \"Albert\",\n \"Alexander\",\n \"Alice\",\n \"Amanda\",\n \"Emma\",\n \"Amelia\",\n \"Amy\",\n \"Andrew\",\n \"Esther\",\n \"Olivia\",\n \"Ruby\",\n];\n\nexport const LATIN_LAST_NAMES = [\n \"Smith\",\n \"Johnson\",\n \"Williams\",\n \"Jones\",\n \"Brown\",\n \"Davis\",\n \"Miller\",\n \"Wilson\",\n \"Moore\",\n \"Taylor\",\n \"Anderson\",\n \"Thomas\",\n \"Jackson\",\n \"White\",\n];\n\nexport const CYRILLIC_FIRST_NAMES = [\n \"Абигаил\",\n \"Адам\",\n \"Адриан\",\n \"Агнес\",\n \"Алан\",\n \"Альберт\",\n \"Александр\",\n \"Алиса\",\n \"Аманда\",\n \"Амелия\",\n \"Эми\",\n \"Эндрю\",\n];\n\nexport const CYRILLIC_LAST_NAMES = [\n \"Смит\",\n \"Джонсон\",\n \"Уильямс\",\n \"Джонс\",\n \"Браун\",\n \"Дэвис\",\n \"Миллер\",\n \"Вилсон\",\n \"Мур\",\n \"Тейлор\",\n \"Андерсон\",\n \"Томас\",\n \"Джексон\",\n \"Уайт\",\n];\n\nexport const JAPANESE_FIRST_NAMES = [\n \"アビゲイル\",\n \"アダム\",\n \"アドリアン\",\n \"アグネス\",\n \"アラン\",\n \"アルバート\",\n \"アレクサンダー\",\n \"アリス\",\n \"アマンダ\",\n \"アメリア\",\n \"アミー\",\n \"アンドリュー\",\n];\n\nexport const JAPANESE_LAST_NAMES = [\n \"スミス\",\n \"ジョンソン\",\n \"ウィリアムズ\",\n \"ジョーンズ\",\n \"ブラウン\",\n \"デイビス\",\n \"ミラー\",\n \"ウィルソン\",\n \"モア\",\n \"タイラー\",\n \"アンダーソン\",\n \"トーマス\",\n \"ジャクソン\",\n \"ホワイト\",\n];\n\nexport const ARABIC_FIRST_NAMES = [\n \"أبيجيل\",\n \"آدم\",\n \"آدريان\",\n \"أغنيس\",\n \"آلان\",\n \"آلبرت\",\n \"ألكسندر\",\n \"آليس\",\n \"آماندا\",\n \"آميليا\",\n \"آمي\",\n \"أندرو\",\n];\n\nexport const ARABIC_LAST_NAMES = [\n \"سميث\",\n \"جونسون\",\n \"ويليامز\",\n \"جونز\",\n \"براون\",\n \"ديفيس\",\n \"ميلر\",\n \"ويلسون\",\n \"مور\",\n \"تايلور\",\n \"أندرسون\",\n \"توماس\",\n \"جاكسون\",\n \"وايت\",\n];\n\nexport const FIRST_NAMES = [\n ...LATIN_FIRST_NAMES,\n ...CYRILLIC_FIRST_NAMES,\n ...JAPANESE_FIRST_NAMES,\n ...ARABIC_FIRST_NAMES,\n];\n\nexport const LAST_NAMES = [\n ...LATIN_LAST_NAMES,\n ...CYRILLIC_LAST_NAMES,\n ...JAPANESE_LAST_NAMES,\n ...ARABIC_LAST_NAMES,\n];\n","import { LATIN_FIRST_NAMES, LATIN_LAST_NAMES } from \"../constants/names\";\nimport { randomArrayItem } from \"./randomArrayItem\";\nimport { randomInt } from \"./randomInt\";\n\nexport const randomHandle = () =>\n (\n randomArrayItem(LATIN_FIRST_NAMES) +\n \".\" +\n randomArrayItem(LATIN_LAST_NAMES)\n ).toLowerCase() + randomInt(11, 99);\n","import { DOMAIN_NAMES } from \"../constants/domains\";\nimport { randomArrayItem } from \"./randomArrayItem\";\nimport { randomHandle } from \"./randomHandle\";\n\n//Use randomId() to generate a unique email\nexport const randomEmail = () =>\n `${randomHandle()}@${randomArrayItem(DOMAIN_NAMES)}`;\n","export const EMOJI_SAMPLE = [\n \"😀\",\n \"😁\",\n \"😂\",\n \"🤣\",\n \"😃\",\n \"😄\",\n \"😅\",\n \"😆\",\n \"😉\",\n \"😊\",\n \"😋\",\n \"😎\",\n \"😍\",\n \"😘\",\n \"😗\",\n \"😙\",\n];\n\nexport const SPECIAL_CHARACTERS = [\"!\", \"@\", \"#\", \"$\", \"%\", \"^\", \"&\", \"*\"];\n","import { EMOJI_SAMPLE } from \"../constants/unicode\";\nimport { randomArrayItem } from \"./randomArrayItem\";\n\nexport const randomEmoji = () => {\n return randomArrayItem(EMOJI_SAMPLE);\n};\n","import { isNumeric } from \"../validators/isNumeric\";\nimport { randomArrayItem } from \"./randomArrayItem\";\n\nexport const randomEnumKey = (\n enumObject: Record<string, string | number>\n): string => {\n return randomArrayItem(\n Object.keys(enumObject).filter((key) => !isNumeric(key)) // key cannot be a number\n );\n};\n","import { randomArrayItem } from \"./randomArrayItem\";\n\nexport type EnumValue = string | number;\n\nexport const randomEnumValue = (\n enumObject: Record<string, EnumValue>\n): EnumValue => {\n let values: EnumValue[] = [];\n\n Object.values(enumObject).forEach((value) => {\n if (value in enumObject && !values.includes(value))\n values.push(enumObject[value]);\n });\n\n return randomArrayItem(values);\n};\n","export const VERBS = [\n \"abide\",\n \"abound\",\n \"accept\",\n \"accomplish\",\n \"achieve\",\n \"acquire\",\n \"act\",\n \"adapt\",\n \"add\",\n \"adjust\",\n \"admire\",\n \"admit\",\n \"adopt\",\n \"advance\",\n \"advise\",\n \"afford\",\n \"agree\",\n \"alert\",\n \"allow\",\n \"be\",\n \"go\",\n \"need\",\n \"work\",\n];\n\nexport const NOUNS = [\n \"abandon\",\n \"ability\",\n \"able\",\n \"abortion\",\n \"about\",\n \"above\",\n \"abroad\",\n \"absence\",\n \"absent\",\n \"absolute\",\n];\n\nexport const ADJECTIVES = [\n \"abandoned\",\n \"abdominal\",\n \"ability\",\n \"able\",\n \"abnormal\",\n \"abolish\",\n \"abortion\",\n \"about\",\n \"above\",\n \"abroad\",\n \"absence\",\n \"absent\",\n \"absolute\",\n];\n\nexport const ADVERBS = [\n \"abnormally\",\n \"aboard\",\n \"absentmindedly\",\n \"absolutely\",\n \"absurdly\",\n \"abundantly\",\n \"abysmally\",\n \"academically\",\n \"acceleratedly\",\n \"accentually\",\n \"acceptably\",\n \"accessibly\",\n \"accidentally\",\n \"accommodatingly\",\n];\n\nexport const LONG_WORDS = [\n \"Pneumonoultramicroscopicsilicovolcanoconiosis\",\n \"Floccinaucinihilipilification\",\n \"Pseudopseudohypoparathyroidism\",\n \"Hippopotomonstrosesquippedaliophobia\",\n \"Antidisestablishmentarianism\",\n \"Supercalifragilisticexpialidocious\",\n \"Honorificabilitudinitatibus\",\n];\n\nexport const JS_RESERVED_WORDS = [\n \"abstract\",\n \"arguments\",\n \"await\",\n \"boolean\",\n \"break\",\n \"byte\",\n \"case\",\n \"catch\",\n \"char\",\n \"class\",\n \"const\",\n \"continue\",\n \"debugger\",\n \"default\",\n \"delete\",\n \"do\",\n \"double\",\n \"else\",\n \"enum*\",\n \"eval\",\n \"export\",\n \"extends\",\n \"false\",\n \"final\",\n \"finally\",\n \"float\",\n \"for\",\n \"function\",\n \"goto\",\n \"if\",\n \"implements\",\n \"import\",\n \"in\",\n \"instanceof\",\n \"int\",\n \"interface\",\n \"let\",\n \"long\",\n \"native\",\n \"new\",\n \"null\",\n \"package\",\n \"private\",\n \"protected\",\n \"public\",\n \"return\",\n \"short\",\n \"static\",\n \"super\",\n \"switch\",\n \"synchronized\",\n \"this\",\n \"throw\",\n \"throws\",\n \"transient\",\n \"true\",\n \"try\",\n \"typeof\",\n \"var\",\n \"void\",\n \"volatile\",\n \"while\",\n \"with\",\n \"yield\",\n];\n\nexport const HTML_COLOR_NAME_SAMPLES = [\n \"AliceBlue\",\n \"Aqua\",\n \"Aquamarine\",\n \"Azure\",\n \"Beige\",\n \"Bisque\",\n \"Black\",\n \"Blue\",\n \"BlueViolet\",\n \"Brown\",\n \"BurlyWood\",\n \"CadetBlue\",\n \"Chartreuse\",\n \"Chocolate\",\n \"Coral\",\n \"DarkSlateGray\",\n \"DeepPink\",\n \"Gold\",\n \"Lime\",\n \"Olive\",\n \"Orchid\",\n \"Salmon\",\n \"Turquoise\",\n];\n\nexport const WORDS = [\n ...VERBS,\n ...NOUNS,\n ...ADJECTIVES,\n ...ADVERBS,\n ...LONG_WORDS,\n];\n","import { WORDS } from \"../constants/words\";\nimport { randomArrayItem } from \"./randomArrayItem\";\n\nexport const randomWord = () => {\n return randomArrayItem(WORDS);\n};\n","import { array } from \"../helpers\";\nimport { capitalize } from \"../helpers/capitalize\";\nimport { randomWord } from \"./randomWord\";\n\nexport const randomParagraph = () => {\n return capitalize(array(8, () => randomWord()).join(\" \")) + \".\";\n};\n","import { randomArrayItem } from \"./randomArrayItem\";\nimport { randomParagraph } from \"./randomParagraph\";\nimport { randomWord } from \"./randomWord\";\n\nconst fileExtensions = [\"png\", \"jpg\", \"jpeg\", \"gif\", \"svg\", \"webp\"];\n\n// This is a client only function\nexport const randomFile = ({\n name,\n extension,\n}: {\n name?: string;\n extension?: string;\n} = {}): File | undefined => {\n if (typeof File === \"undefined\") return undefined;\n\n const _extension = extension || randomArrayItem(fileExtensions);\n return new File(\n [randomParagraph()], // TODO: Use random char string\n `${name || randomWord()}.${_extension}`,\n {\n type: `image/${_extension}`,\n }\n );\n};\n","export const HEX_VALUES = [\n \"0\",\n \"1\",\n \"2\",\n \"3\",\n \"4\",\n \"5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"A\",\n \"B\",\n \"C\",\n \"D\",\n \"E\",\n \"F\",\n];\n","import { HEX_VALUES } from \"../constants/hex\";\nimport { array } from \"../helpers\";\nimport { randomArrayItem } from \"./randomArrayItem\";\n\nexport const randomHexColor = () => {\n return \"#\" + array(6, () => randomArrayItem(HEX_VALUES)).join(\"\");\n};\n","import { HEX_VALUES } from \"../constants/hex\";\nimport { randomArrayItem } from \"./randomArrayItem\";\n\nexport const randomHexValue = () => {\n return randomArrayItem(HEX_VALUES);\n};\n","import { HTML_COLOR_NAME_SAMPLES } from \"../constants/words\";\nimport { randomArrayItem } from \"./randomArrayItem\";\n\nexport const randomHtmlColorName = () => {\n return randomArrayItem(HTML_COLOR_NAME_SAMPLES);\n};\n","export const IBAN_SAMPLES = [\n \"AD1200012030200359100100\",\n \"BA391290079401028494\",\n \"BE68539007547034\",\n \"BG80BNBG96611020345678\",\n \"BH67BMAG00001299123456\",\n \"BY13NBRB3600900000002Z00AB00\",\n \"CH9300762011623852957\",\n \"CR05015202001026284066\",\n \"CY17002001280000001200527600\",\n \"CZ6508000000192000145399\",\n \"DE89370400440532013000\",\n \"DO28BAGR00000001212453611324\",\n \"EE382200221020145685\",\n \"ES9121000418450200051332\",\n \"FI2112345600000785\",\n \"FO6264600001631634\",\n \"FR1420041010050500013M02606\",\n \"GB29NWBK60161331926819\",\n \"GE29NB0000000101904917\",\n];\n\nexport const BIC_SWIFT_SAMPLES = [\n \"ABNANL2A\",\n \"BKENGB2LXXX\",\n \"BUKBGB22\",\n \"CITIUS33\",\n \"CITIUS33XXX\",\n \"CSCHUS6SXXX\",\n \"NOSCCATTXXX\",\n];\n\nexport const CARD_NUMBER_SAMPLES = [\n \"4539148803436467\",\n \"4929722653797141\",\n \"4556364607930798\",\n \"4539148803436467\",\n \"4929722653797141\",\n \"4556364607930798\",\n \"4539148803436467\",\n \"4929722653797141\",\n \"4556364607930798\",\n \"4539148803436467\",\n];\n\n//An ABA routing number is a nine-digit code that identifies banks in the U.S.\nexport const ABA_NUMBER_SAMPLES = [\n \"111000025\",\n \"081000210\",\n \"104000029\",\n \"091300023\",\n \"123000220\",\n];\n\nexport const ROUTING_NUMBER_SAMPLES = [\n \"637530215\",\n \"130436324\",\n \"611531133\",\n \"865673685\",\n];\n\nexport const BANK_ACCOUNT_NUMBER_SAMPLES = [\n \"64766774\",\n \"39526009\",\n \"25048213\",\n \"72796383\",\n];\n\nexport const VAT_REGISTRATION_NUMBER_SAMPLES = [\n \"IE1234567T\",\n \"GB123456789\",\n \"XI123456789\",\n];\n\nexport const SORT_CODE_SAMPLES = [\"100000\", \"902127\", \"800551\"];\n\nexport const SSN_SAMPLES = [\"235-55-7216\", \"372-37-3976\", \"414-99-6488\"];\n\nexport const BANK_NAME_SAMPLES = [\n \"Bank of England\",\n \"Bank of Ireland\",\n \"Bank of Scotland\",\n \"Bank of America\",\n];\n\nexport const COMPANY_NAME_SAMPLES = [\n \"Acme Inc.\",\n \"Acme Corp.\",\n \"Acme Ltd.\",\n \"Acme LLC\",\n \"Umbrella Corp.\",\n \"Umbrella Inc.\",\n \"Umbrella Ltd.\",\n \"Umbrella LLC\",\n];\n","import { IBAN_SAMPLES } from \"../constants/banking\";\nimport { randomArrayItem } from \"./randomArrayItem\";\n\nexport const randomIBAN = () => {\n return randomArrayItem(IBAN_SAMPLES);\n};\n","import {\n ANIMAL_NAMES,\n FIRST_NAMES,\n LAST_NAMES,\n LATIN_FIRST_NAMES,\n LATIN_LAST_NAMES,\n TOOL_NAMES,\n} from \"../constants/names\";\nimport { randomArrayItem } from \"./randomArrayItem\";\n\nexport const randomName = () =>\n randomArrayItem([...ANIMAL_NAMES, ...TOOL_NAMES]);\n\nexport const randomFirstName = () => randomArrayItem(FIRST_NAMES);\n\nexport const randomLastName = () => randomArrayItem(LAST_NAMES);\n\nexport const randomFullName = () =>\n randomArrayItem(LATIN_FIRST_NAMES) + \" \" + randomArrayItem(LATIN_LAST_NAMES);\n","let id = 1; // don't start with 0, to be closer to SQL autoincrement\n\nexport const randomNumericId = () => {\n return id++;\n};\n","import { SPECIAL_CHARACTERS } from \"../constants/unicode\";\nimport { randomArrayItem } from \"./randomArrayItem\";\nimport { randomHtmlColorName } from \"./randomHtmlColorName\";\nimport { randomInt } from \"./randomInt\";\n\nexport const randomPassword = () =>\n randomHtmlColorName() + // So it has an upper case\n randomArrayItem(SPECIAL_CHARACTERS) + // So it has a special character\n randomInt(11, 99); // So it has a number\n","import { randomNumericId } from \"./randomNumericId\";\n\n/**\n * This is a light-weight version of the `generateUuid` function\n * To be used only for test purposed and NOT for production\n * Leave 0s, so it gets immediately recognized as a fake uuid\n *\n * /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i\n */\nexport const randomUUID = () => {\n const id = randomNumericId().toString().padStart(15, \"0\");\n const digit12 = id.substring(0, 12);\n const digit3 = id.substring(12, 15);\n return `00000000-0000-1000-8${digit3}-${digit12}`;\n};\n"]}