deverything 0.0.2 → 0.2.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
@@ -4,7 +4,7 @@
4
4
 
5
5
  The promise:
6
6
 
7
- - **one package**: say goodbye to installing lodash, faker, this and that and the other one.
7
+ - **1 package**: say goodbye to installing lodash, faker, this and that and the other one.
8
8
  - **0 dependencies**: keep it simple and lightweight.
9
9
  - **Pick the best**: the code is minimal and uses the best current practices and performance.
10
10
  - **Typescript**: use it, support it and export it.
@@ -14,20 +14,37 @@ Contributions always welcome!
14
14
 
15
15
  ### Validators
16
16
 
17
- - `isBrowser`
18
- - `isClient`
19
- - `isEmpty`
20
- - `isJsDate`
21
- - `isObject`
22
- - `isServer`
23
- - `isStringDate`
17
+ - `isBrowser()`
18
+ - `isClient()`
19
+ - `isEmpty()`
20
+ - `isJsDate()`
21
+ - `isObject()`
22
+ - `isServer()`
23
+ - `isStringDate()`
24
24
 
25
25
  ### Helpers
26
26
 
27
- - `parseDate`
27
+ - `array()`
28
+ - `first()`
29
+ - `last()`
30
+ - `moveToFirst()`
31
+ - `moveToLast()`
32
+ - `parseDate()`
28
33
 
29
34
  ### Random data generators
30
35
 
31
- These functions are optimised for low entropy random data generation useful for Unit Testing, Storybook, Pass real validations, Reverse hacking, Penetration testing...
32
-
33
- - `randomInt`
36
+ These functions are optimized for low entropy random data generation useful for Unit Testing, Storybook, Pass real validations, Reverse hacking, Penetration testing...
37
+
38
+ - `randomAddress()`
39
+ - `randomArrayItem()`
40
+ - `randomBool()`
41
+ - `randomDate()`
42
+ - `randomFutureDate()`
43
+ - `randomPastDate()`
44
+ - `randomEmail()`
45
+ - `randomInt()`
46
+ - `randomName()`
47
+ - `randomFirstName()`
48
+ - `randomLastName()`
49
+ - `randomFullName()`
50
+ - `randomHandle()`
package/dist/index.d.ts CHANGED
@@ -1,16 +1,29 @@
1
- declare const randomInt: (start?: number, end?: number) => number;
1
+ declare const array: <U extends (...args: any) => any>(length: number, mapFn: U) => ReturnType<U>[];
2
2
 
3
- declare const isObject: (arg: any) => boolean;
3
+ declare const first: <T>(arr?: T[] | undefined) => T | undefined;
4
4
 
5
- declare const isBrowser: () => boolean;
5
+ declare const last: <T>(arr?: T[] | undefined) => T | undefined;
6
6
 
7
- declare const isClient: () => boolean;
7
+ declare const moveToFirst: <T>(items: T[], condition: (item: T, i: number, items: T[]) => boolean) => T[];
8
+
9
+ declare const moveToLast: <T>(items: T[], condition: (item: T, i: number, items: T[]) => boolean) => T[];
8
10
 
9
11
  type Maybe<T> = T | null | undefined;
10
12
  type MaybePromise<T> = Maybe<Promise<T>>;
11
13
  type MaybePromiseOrValue<T> = MaybePromise<T> | T;
12
14
  type MaybePromiseOrValueArray<T> = MaybePromiseOrValue<T>[];
13
15
  type DateLike = Date | string | number;
16
+ type NonUndefined<T> = T extends undefined ? never : T;
17
+
18
+ declare const parseDate: (arg?: Maybe<DateLike>) => Date | undefined;
19
+
20
+ declare const randomInt: (start?: number, end?: number) => number;
21
+
22
+ declare const isObject: (arg: any) => boolean;
23
+
24
+ declare const isBrowser: () => boolean;
25
+
26
+ declare const isClient: () => boolean;
14
27
 
15
28
  declare const isEmpty: (value?: Maybe<any>) => boolean;
16
29
 
@@ -20,4 +33,4 @@ declare const isServer: () => boolean;
20
33
 
21
34
  declare const isStringDate: (arg: string) => boolean;
22
35
 
23
- export { DateLike, Maybe, MaybePromise, MaybePromiseOrValue, MaybePromiseOrValueArray, isBrowser, isClient, isEmpty, isJsDate, isObject, isServer, isStringDate, randomInt };
36
+ export { DateLike, Maybe, MaybePromise, MaybePromiseOrValue, MaybePromiseOrValueArray, NonUndefined, array, first, isBrowser, isClient, isEmpty, isJsDate, isObject, isServer, isStringDate, last, moveToFirst, moveToLast, parseDate, randomInt };
@@ -1,2 +1,2 @@
1
- "use strict";(()=>{var i=(t=Number.MIN_VALUE,o=Number.MAX_VALUE)=>Math.floor(Math.random()*(o-t+1)+t);var p=t=>Object.prototype.toString.call(t)==="[object Object]";var e=()=>typeof window>"u";var r=()=>!e();var x=r;var d=t=>t==null||t==="";var n=t=>Object.prototype.toString.call(t)==="[object Date]"&&!isNaN(t);var M=t=>{let o=new Date(t);return n(o)};})();
1
+ "use strict";(()=>{var c=(t,o)=>Array.from({length:t},o);var f=t=>t==null?void 0:t[0];var u=t=>t==null?void 0:t[t.length-1];var x=(t,o)=>{let e=[...t];for(let r=0;r<e.length;r++)if(o(e[r],r,e)){let s=e.splice(r,1);e.unshift(s[0]);break}return e};var y=(t,o)=>{let e=[...t];for(let r=0;r<e.length;r++)if(o(e[r],r,e)){let s=e.splice(r,1)[0];e.push(s);break}return e};var i=t=>t==null||t==="";var n=t=>Object.prototype.toString.call(t)==="[object Date]"&&!isNaN(t);var j=t=>{if(i(t))return;let o=new Date(t);if(n(o))return o};var w=(t=Number.MIN_VALUE,o=Number.MAX_VALUE)=>Math.floor(Math.random()*(o-t+1)+t);var N=t=>Object.prototype.toString.call(t)==="[object Object]";var m=()=>typeof window>"u";var p=()=>!m();var O=p;var C=t=>{let o=new Date(t);return n(o)};})();
2
2
  //# sourceMappingURL=index.global.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/random/randomInt.ts","../src/validators/isObject.ts","../src/validators/isServer.ts","../src/validators/isClient.ts","../src/validators/isBrowser.ts","../src/validators/isEmpty.ts","../src/validators/isJsDate.ts","../src/validators/isStringDate.ts"],"sourcesContent":["export const randomInt = (\n start: number = Number.MIN_VALUE,\n end: number = Number.MAX_VALUE\n): number => Math.floor(Math.random() * (end - start + 1) + start);\n","export const isObject = (arg: any): boolean =>\n Object.prototype.toString.call(arg) === \"[object Object]\";\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 { Maybe } from \"../types\";\n\nexport const isEmpty = (value?: Maybe<any>) => {\n return value === undefined || value === null || value === \"\";\n};\n","export const isJsDate = (arg: any) =>\n Object.prototype.toString.call(arg) === \"[object Date]\" && !isNaN(arg);\n","import { isJsDate } from \"./isJsDate\";\n\nexport const isStringDate = (arg: string) => {\n const date = new Date(arg);\n return isJsDate(date);\n};\n"],"mappings":"mBAAO,IAAMA,EAAY,CACvBC,EAAgB,OAAO,UACvBC,EAAc,OAAO,YACV,KAAK,MAAM,KAAK,OAAO,GAAKA,EAAMD,EAAQ,GAAKA,CAAK,ECH1D,IAAME,EAAYC,GACvB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,kBCDnC,IAAMC,EAAW,IAAM,OAAO,OAAW,ICEzC,IAAMC,EAAW,IAAM,CAACC,EAAS,ECAjC,IAAMC,EAAYC,ECAlB,IAAMC,EAAWC,GACQA,GAAU,MAAQA,IAAU,GCHrD,IAAMC,EAAYC,GACvB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,iBAAmB,CAAC,MAAMA,CAAG,ECChE,IAAMC,EAAgBC,GAAgB,CAC3C,IAAMC,EAAO,IAAI,KAAKD,CAAG,EACzB,OAAOE,EAASD,CAAI,CACtB","names":["randomInt","start","end","isObject","arg","isServer","isClient","isServer","isBrowser","isClient","isEmpty","value","isJsDate","arg","isStringDate","arg","date","isJsDate"]}
1
+ {"version":3,"sources":["../src/helpers/array.ts","../src/helpers/first.ts","../src/helpers/last.ts","../src/helpers/moveToFirst.ts","../src/helpers/moveToLast.ts","../src/validators/isEmpty.ts","../src/validators/isJsDate.ts","../src/helpers/parseDate.ts","../src/random/randomInt.ts","../src/validators/isObject.ts","../src/validators/isServer.ts","../src/validators/isClient.ts","../src/validators/isBrowser.ts","../src/validators/isStringDate.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 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","import { Maybe } from \"../types\";\n\nexport const isEmpty = (value?: Maybe<any>) => {\n return value === undefined || value === null || value === \"\";\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 randomInt = (\n start: number = Number.MIN_VALUE,\n end: number = Number.MAX_VALUE\n): number => Math.floor(Math.random() * (end - start + 1) + start);\n","export const isObject = (arg: any): boolean =>\n Object.prototype.toString.call(arg) === \"[object Object]\";\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 { isJsDate } from \"./isJsDate\";\n\nexport const isStringDate = (arg: string) => {\n const date = new Date(arg);\n return isJsDate(date);\n};\n"],"mappings":"mBAAO,IAAMA,EAAQ,CACnBC,EACAC,IAEO,MAAM,KAAK,CAAE,OAAAD,CAAO,EAAGC,CAAK,ECJ9B,IAAMC,EAAYC,GAA6BA,GAAA,YAAAA,EAAM,GCArD,IAAMC,EAAWC,GAA6BA,GAAA,YAAAA,EAAMA,EAAI,OAAS,GCAjE,IAAMC,EAAc,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,EAAa,CACxBC,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,EAAWF,EAAc,OAAOC,EAAG,CAAC,EAAE,CAAC,EAC3CD,EAAc,KAAKE,CAAQ,EAC3B,MAGJ,OAAOF,CACT,ECXO,IAAMG,EAAWC,GACQA,GAAU,MAAQA,IAAU,GCHrD,IAAMC,EAAYC,GACvB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,iBAAmB,CAAC,MAAMA,CAAG,ECGhE,IAAMC,EAAaC,GAA0B,CAClD,GAAIC,EAAQD,CAAG,EAAG,OAElB,IAAME,EAAO,IAAI,KAAKF,CAAI,EAE1B,GAAKG,EAASD,CAAI,EAElB,OAAOA,CACT,ECZO,IAAME,EAAY,CACvBC,EAAgB,OAAO,UACvBC,EAAc,OAAO,YACV,KAAK,MAAM,KAAK,OAAO,GAAKA,EAAMD,EAAQ,GAAKA,CAAK,ECH1D,IAAME,EAAYC,GACvB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,kBCDnC,IAAMC,EAAW,IAAM,OAAO,OAAW,ICEzC,IAAMC,EAAW,IAAM,CAACC,EAAS,ECAjC,IAAMC,EAAYC,ECAlB,IAAMC,EAAgBC,GAAgB,CAC3C,IAAMC,EAAO,IAAI,KAAKD,CAAG,EACzB,OAAOE,EAASD,CAAI,CACtB","names":["array","length","mapFn","first","arr","last","arr","moveToFirst","items","condition","resortedItems","i","firstItem","moveToLast","items","condition","resortedItems","i","lastItem","isEmpty","value","isJsDate","arg","parseDate","arg","isEmpty","date","isJsDate","randomInt","start","end","isObject","arg","isServer","isClient","isServer","isBrowser","isClient","isStringDate","arg","date","isJsDate"]}
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var i=(t=Number.MIN_VALUE,o=Number.MAX_VALUE)=>Math.floor(Math.random()*(o-t+1)+t);var p=t=>Object.prototype.toString.call(t)==="[object Object]";var e=()=>typeof window>"u";var r=()=>!e();var x=r;var d=t=>t==null||t==="";var n=t=>Object.prototype.toString.call(t)==="[object Date]"&&!isNaN(t);var M=t=>{let o=new Date(t);return n(o)};exports.isBrowser = x; exports.isClient = r; exports.isEmpty = d; exports.isJsDate = n; exports.isObject = p; exports.isServer = e; exports.isStringDate = M; exports.randomInt = i;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var c=(t,o)=>Array.from({length:t},o);var f=t=>t==null?void 0:t[0];var u=t=>t==null?void 0:t[t.length-1];var x=(t,o)=>{let e=[...t];for(let r=0;r<e.length;r++)if(o(e[r],r,e)){let s=e.splice(r,1);e.unshift(s[0]);break}return e};var y=(t,o)=>{let e=[...t];for(let r=0;r<e.length;r++)if(o(e[r],r,e)){let s=e.splice(r,1)[0];e.push(s);break}return e};var i=t=>t==null||t==="";var n=t=>Object.prototype.toString.call(t)==="[object Date]"&&!isNaN(t);var j=t=>{if(i(t))return;let o=new Date(t);if(n(o))return o};var w=(t=Number.MIN_VALUE,o=Number.MAX_VALUE)=>Math.floor(Math.random()*(o-t+1)+t);var N=t=>Object.prototype.toString.call(t)==="[object Object]";var m=()=>typeof window>"u";var p=()=>!m();var O=p;var C=t=>{let o=new Date(t);return n(o)};exports.array = c; exports.first = f; exports.isBrowser = O; exports.isClient = p; exports.isEmpty = i; exports.isJsDate = n; exports.isObject = N; exports.isServer = m; exports.isStringDate = C; exports.last = u; exports.moveToFirst = x; exports.moveToLast = y; exports.parseDate = j; exports.randomInt = w;
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/random/randomInt.ts","../src/validators/isObject.ts","../src/validators/isServer.ts","../src/validators/isClient.ts","../src/validators/isBrowser.ts","../src/validators/isEmpty.ts","../src/validators/isJsDate.ts","../src/validators/isStringDate.ts"],"names":["randomInt","start","end","isObject","arg","isServer","isClient","isBrowser","isEmpty","value","isJsDate","isStringDate","date"],"mappings":"AAAO,IAAMA,EAAY,CACvBC,EAAgB,OAAO,UACvBC,EAAc,OAAO,YACV,KAAK,MAAM,KAAK,OAAO,GAAKA,EAAMD,EAAQ,GAAKA,CAAK,ECH1D,IAAME,EAAYC,GACvB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,kBCDnC,IAAMC,EAAW,IAAM,OAAO,OAAW,ICEzC,IAAMC,EAAW,IAAM,CAACD,EAAS,ECAjC,IAAME,EAAYD,ECAlB,IAAME,EAAWC,GACQA,GAAU,MAAQA,IAAU,GCHrD,IAAMC,EAAYN,GACvB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,iBAAmB,CAAC,MAAMA,CAAG,ECChE,IAAMO,EAAgBP,GAAgB,CAC3C,IAAMQ,EAAO,IAAI,KAAKR,CAAG,EACzB,OAAOM,EAASE,CAAI,CACtB","sourcesContent":["export const randomInt = (\n start: number = Number.MIN_VALUE,\n end: number = Number.MAX_VALUE\n): number => Math.floor(Math.random() * (end - start + 1) + start);\n","export const isObject = (arg: any): boolean =>\n Object.prototype.toString.call(arg) === \"[object Object]\";\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 { Maybe } from \"../types\";\n\nexport const isEmpty = (value?: Maybe<any>) => {\n return value === undefined || value === null || value === \"\";\n};\n","export const isJsDate = (arg: any) =>\n Object.prototype.toString.call(arg) === \"[object Date]\" && !isNaN(arg);\n","import { isJsDate } from \"./isJsDate\";\n\nexport const isStringDate = (arg: string) => {\n const date = new Date(arg);\n return isJsDate(date);\n};\n"]}
1
+ {"version":3,"sources":["../src/helpers/array.ts","../src/helpers/first.ts","../src/helpers/last.ts","../src/helpers/moveToFirst.ts","../src/helpers/moveToLast.ts","../src/validators/isEmpty.ts","../src/validators/isJsDate.ts","../src/helpers/parseDate.ts","../src/random/randomInt.ts","../src/validators/isObject.ts","../src/validators/isServer.ts","../src/validators/isClient.ts","../src/validators/isBrowser.ts","../src/validators/isStringDate.ts"],"names":["array","length","mapFn","first","arr","last","moveToFirst","items","condition","resortedItems","i","firstItem","moveToLast","lastItem","isEmpty","value","isJsDate","arg","parseDate","date","randomInt","start","end","isObject","isServer","isClient","isBrowser","isStringDate"],"mappings":"AAAO,IAAMA,EAAQ,CACnBC,EACAC,IAEO,MAAM,KAAK,CAAE,OAAAD,CAAO,EAAGC,CAAK,ECJ9B,IAAMC,EAAYC,GAA6BA,GAAA,YAAAA,EAAM,GCArD,IAAMC,EAAWD,GAA6BA,GAAA,YAAAA,EAAMA,EAAI,OAAS,GCAjE,IAAME,EAAc,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,EAAa,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,ECXO,IAAMK,EAAWC,GACQA,GAAU,MAAQA,IAAU,GCHrD,IAAMC,EAAYC,GACvB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,iBAAmB,CAAC,MAAMA,CAAG,ECGhE,IAAMC,EAAaD,GAA0B,CAClD,GAAIH,EAAQG,CAAG,EAAG,OAElB,IAAME,EAAO,IAAI,KAAKF,CAAI,EAE1B,GAAKD,EAASG,CAAI,EAElB,OAAOA,CACT,ECZO,IAAMC,EAAY,CACvBC,EAAgB,OAAO,UACvBC,EAAc,OAAO,YACV,KAAK,MAAM,KAAK,OAAO,GAAKA,EAAMD,EAAQ,GAAKA,CAAK,ECH1D,IAAME,EAAYN,GACvB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,kBCDnC,IAAMO,EAAW,IAAM,OAAO,OAAW,ICEzC,IAAMC,EAAW,IAAM,CAACD,EAAS,ECAjC,IAAME,EAAYD,ECAlB,IAAME,EAAgBV,GAAgB,CAC3C,IAAME,EAAO,IAAI,KAAKF,CAAG,EACzB,OAAOD,EAASG,CAAI,CACtB","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 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","import { Maybe } from \"../types\";\n\nexport const isEmpty = (value?: Maybe<any>) => {\n return value === undefined || value === null || value === \"\";\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 randomInt = (\n start: number = Number.MIN_VALUE,\n end: number = Number.MAX_VALUE\n): number => Math.floor(Math.random() * (end - start + 1) + start);\n","export const isObject = (arg: any): boolean =>\n Object.prototype.toString.call(arg) === \"[object Object]\";\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 { isJsDate } from \"./isJsDate\";\n\nexport const isStringDate = (arg: string) => {\n const date = new Date(arg);\n return isJsDate(date);\n};\n"]}
package/dist/index.mjs CHANGED
@@ -1,2 +1,2 @@
1
- var i=(t=Number.MIN_VALUE,o=Number.MAX_VALUE)=>Math.floor(Math.random()*(o-t+1)+t);var p=t=>Object.prototype.toString.call(t)==="[object Object]";var e=()=>typeof window>"u";var r=()=>!e();var x=r;var d=t=>t==null||t==="";var n=t=>Object.prototype.toString.call(t)==="[object Date]"&&!isNaN(t);var M=t=>{let o=new Date(t);return n(o)};export{x as isBrowser,r as isClient,d as isEmpty,n as isJsDate,p as isObject,e as isServer,M as isStringDate,i as randomInt};
1
+ var c=(t,o)=>Array.from({length:t},o);var f=t=>t==null?void 0:t[0];var u=t=>t==null?void 0:t[t.length-1];var x=(t,o)=>{let e=[...t];for(let r=0;r<e.length;r++)if(o(e[r],r,e)){let s=e.splice(r,1);e.unshift(s[0]);break}return e};var y=(t,o)=>{let e=[...t];for(let r=0;r<e.length;r++)if(o(e[r],r,e)){let s=e.splice(r,1)[0];e.push(s);break}return e};var i=t=>t==null||t==="";var n=t=>Object.prototype.toString.call(t)==="[object Date]"&&!isNaN(t);var j=t=>{if(i(t))return;let o=new Date(t);if(n(o))return o};var w=(t=Number.MIN_VALUE,o=Number.MAX_VALUE)=>Math.floor(Math.random()*(o-t+1)+t);var N=t=>Object.prototype.toString.call(t)==="[object Object]";var m=()=>typeof window>"u";var p=()=>!m();var O=p;var C=t=>{let o=new Date(t);return n(o)};export{c as array,f as first,O as isBrowser,p as isClient,i as isEmpty,n as isJsDate,N as isObject,m as isServer,C as isStringDate,u as last,x as moveToFirst,y as moveToLast,j as parseDate,w as randomInt};
2
2
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/random/randomInt.ts","../src/validators/isObject.ts","../src/validators/isServer.ts","../src/validators/isClient.ts","../src/validators/isBrowser.ts","../src/validators/isEmpty.ts","../src/validators/isJsDate.ts","../src/validators/isStringDate.ts"],"sourcesContent":["export const randomInt = (\n start: number = Number.MIN_VALUE,\n end: number = Number.MAX_VALUE\n): number => Math.floor(Math.random() * (end - start + 1) + start);\n","export const isObject = (arg: any): boolean =>\n Object.prototype.toString.call(arg) === \"[object Object]\";\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 { Maybe } from \"../types\";\n\nexport const isEmpty = (value?: Maybe<any>) => {\n return value === undefined || value === null || value === \"\";\n};\n","export const isJsDate = (arg: any) =>\n Object.prototype.toString.call(arg) === \"[object Date]\" && !isNaN(arg);\n","import { isJsDate } from \"./isJsDate\";\n\nexport const isStringDate = (arg: string) => {\n const date = new Date(arg);\n return isJsDate(date);\n};\n"],"mappings":"AAAO,IAAMA,EAAY,CACvBC,EAAgB,OAAO,UACvBC,EAAc,OAAO,YACV,KAAK,MAAM,KAAK,OAAO,GAAKA,EAAMD,EAAQ,GAAKA,CAAK,ECH1D,IAAME,EAAYC,GACvB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,kBCDnC,IAAMC,EAAW,IAAM,OAAO,OAAW,ICEzC,IAAMC,EAAW,IAAM,CAACC,EAAS,ECAjC,IAAMC,EAAYC,ECAlB,IAAMC,EAAWC,GACQA,GAAU,MAAQA,IAAU,GCHrD,IAAMC,EAAYC,GACvB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,iBAAmB,CAAC,MAAMA,CAAG,ECChE,IAAMC,EAAgBC,GAAgB,CAC3C,IAAMC,EAAO,IAAI,KAAKD,CAAG,EACzB,OAAOE,EAASD,CAAI,CACtB","names":["randomInt","start","end","isObject","arg","isServer","isClient","isServer","isBrowser","isClient","isEmpty","value","isJsDate","arg","isStringDate","arg","date","isJsDate"]}
1
+ {"version":3,"sources":["../src/helpers/array.ts","../src/helpers/first.ts","../src/helpers/last.ts","../src/helpers/moveToFirst.ts","../src/helpers/moveToLast.ts","../src/validators/isEmpty.ts","../src/validators/isJsDate.ts","../src/helpers/parseDate.ts","../src/random/randomInt.ts","../src/validators/isObject.ts","../src/validators/isServer.ts","../src/validators/isClient.ts","../src/validators/isBrowser.ts","../src/validators/isStringDate.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 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","import { Maybe } from \"../types\";\n\nexport const isEmpty = (value?: Maybe<any>) => {\n return value === undefined || value === null || value === \"\";\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 randomInt = (\n start: number = Number.MIN_VALUE,\n end: number = Number.MAX_VALUE\n): number => Math.floor(Math.random() * (end - start + 1) + start);\n","export const isObject = (arg: any): boolean =>\n Object.prototype.toString.call(arg) === \"[object Object]\";\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 { isJsDate } from \"./isJsDate\";\n\nexport const isStringDate = (arg: string) => {\n const date = new Date(arg);\n return isJsDate(date);\n};\n"],"mappings":"AAAO,IAAMA,EAAQ,CACnBC,EACAC,IAEO,MAAM,KAAK,CAAE,OAAAD,CAAO,EAAGC,CAAK,ECJ9B,IAAMC,EAAYC,GAA6BA,GAAA,YAAAA,EAAM,GCArD,IAAMC,EAAWC,GAA6BA,GAAA,YAAAA,EAAMA,EAAI,OAAS,GCAjE,IAAMC,EAAc,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,EAAa,CACxBC,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,EAAWF,EAAc,OAAOC,EAAG,CAAC,EAAE,CAAC,EAC3CD,EAAc,KAAKE,CAAQ,EAC3B,MAGJ,OAAOF,CACT,ECXO,IAAMG,EAAWC,GACQA,GAAU,MAAQA,IAAU,GCHrD,IAAMC,EAAYC,GACvB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,iBAAmB,CAAC,MAAMA,CAAG,ECGhE,IAAMC,EAAaC,GAA0B,CAClD,GAAIC,EAAQD,CAAG,EAAG,OAElB,IAAME,EAAO,IAAI,KAAKF,CAAI,EAE1B,GAAKG,EAASD,CAAI,EAElB,OAAOA,CACT,ECZO,IAAME,EAAY,CACvBC,EAAgB,OAAO,UACvBC,EAAc,OAAO,YACV,KAAK,MAAM,KAAK,OAAO,GAAKA,EAAMD,EAAQ,GAAKA,CAAK,ECH1D,IAAME,EAAYC,GACvB,OAAO,UAAU,SAAS,KAAKA,CAAG,IAAM,kBCDnC,IAAMC,EAAW,IAAM,OAAO,OAAW,ICEzC,IAAMC,EAAW,IAAM,CAACC,EAAS,ECAjC,IAAMC,EAAYC,ECAlB,IAAMC,EAAgBC,GAAgB,CAC3C,IAAMC,EAAO,IAAI,KAAKD,CAAG,EACzB,OAAOE,EAASD,CAAI,CACtB","names":["array","length","mapFn","first","arr","last","arr","moveToFirst","items","condition","resortedItems","i","firstItem","moveToLast","items","condition","resortedItems","i","lastItem","isEmpty","value","isJsDate","arg","parseDate","arg","isEmpty","date","isJsDate","randomInt","start","end","isObject","arg","isServer","isClient","isServer","isBrowser","isClient","isStringDate","arg","date","isJsDate"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "deverything",
3
- "version": "0.0.2",
3
+ "version": "0.2.0",
4
4
  "description": "Everything you need for Dev",
5
5
  "main": "dist/index.js",
6
6
  "module": "./dist/index.mjs",