@titocandradev/neatcore 0.2.2 → 0.2.4

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
@@ -1,4 +1,4 @@
1
- # @tito/neatcore
1
+ # @titocandradev/neatcore
2
2
 
3
3
  > Zero-dependency, tree-shakeable, TypeScript-first utility library.
4
4
 
@@ -16,19 +16,19 @@ focused on:
16
16
  ## 📦 Installation
17
17
 
18
18
  ```bash
19
- npm install @tito/neatcore
19
+ npm install @titocandradev/neatcore
20
20
  ```
21
21
 
22
22
  or
23
23
 
24
24
  ```bash
25
- pnpm add @tito/neatcore
25
+ pnpm add @titocandradev/neatcore
26
26
  ```
27
27
 
28
28
  or
29
29
 
30
30
  ```bash
31
- bun add @tito/neatcore
31
+ bun add @titocandradev/neatcore
32
32
  ```
33
33
 
34
34
  ---
@@ -38,7 +38,7 @@ bun add @tito/neatcore
38
38
  ### ES Module
39
39
 
40
40
  ```ts
41
- import { firstUppercase } from "@tito/neatcore";
41
+ import { firstUppercase } from "@titocandradev/neatcore";
42
42
 
43
43
  firstUppercase("tito candra");
44
44
  // → "Tito Candra"
@@ -47,7 +47,7 @@ firstUppercase("tito candra");
47
47
  ### CommonJS
48
48
 
49
49
  ```js
50
- const { firstUppercase } = require("@tito/neatcore");
50
+ const { firstUppercase } = require("@titocandradev/neatcore");
51
51
 
52
52
  firstUppercase("tito candra");
53
53
  ```
@@ -86,7 +86,7 @@ NeatCore is built with the following principles:
86
86
  Import only what you need:
87
87
 
88
88
  ```ts
89
- import { firstUppercase } from "@tito/neatcore";
89
+ import { firstUppercase } from "@titocandradev/neatcore";
90
90
  ```
91
91
 
92
92
  Modern bundlers like Vite, Webpack, and Rollup will automatically remove
package/dist/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- 'use strict';function u(e,t){if(t<=0)return [];let r=[];for(let n=0;n<e.length;n+=t)r.push(e.slice(n,n+t));return r}function s(e){return [...new Set(e)]}function f(e,t){let r;return function(...n){clearTimeout(r),r=setTimeout(()=>{e(...n);},t);}}function l(e,t,r){let n=t.split("."),o=e;for(let i of n){if(o==null)return r;o=o[i];}return o===void 0?r:o}function T(e){return e?e.charAt(0).toUpperCase()+e.slice(1):""}function x(e){return e?e.trim().split(/\s+/).map(t=>t.charAt(0).toUpperCase()+t.slice(1)).join(" "):""}function C(e){return e?e.trim().replace(/[^a-zA-Z0-9]+(.)?/g,(t,r)=>r?r.toUpperCase():"").replace(/^(.)/,t=>t.toLowerCase()):""}exports.capitalize=T;exports.capitalizeWords=x;exports.chunk=u;exports.debounce=f;exports.get=l;exports.toCamelCase=C;exports.unique=s;//# sourceMappingURL=index.cjs.map
1
+ 'use strict';function u(e,t){if(t<=0)return [];let r=[];for(let n=0;n<e.length;n+=t)r.push(e.slice(n,n+t));return r}function s(e){return [...new Set(e)]}function c(e,t){let r;return function(...n){clearTimeout(r),r=setTimeout(()=>{e(...n);},t);}}function l(e,t,r){let n=t.split("."),o=e;for(let i of n){if(o==null)return r;o=o[i];}return o===void 0?r:o}function m(e){return e?e.charAt(0).toUpperCase()+e.slice(1):""}function x(e){return e?e.trim().split(/\s+/).map(t=>t.charAt(0).toUpperCase()+t.slice(1)).join(" "):""}function y(e){return e?e.trim().replace(/[^a-zA-Z0-9]+(.)?/g,(t,r)=>r?r.toUpperCase():"").replace(/^(.)/,t=>t.toLowerCase()):""}function d(e){return e?e.trim().replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/[_\s]+/g,"-").toLowerCase():""}exports.capitalize=m;exports.capitalizeWords=x;exports.chunk=u;exports.debounce=c;exports.get=l;exports.toCamelCase=y;exports.toKebabCase=d;exports.unique=s;//# sourceMappingURL=index.cjs.map
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/array/chunk.ts","../src/array/unique.ts","../src/function/debounce.ts","../src/object/get.ts","../src/string/capitalize.ts","../src/string/capitalizeWords.ts","../src/string/toCamelCase.ts"],"names":["chunk","arr","size","result","i","unique","array","debounce","fn","delay","timeout","args","get","obj","path","defaultValue","keys","key","capitalize","str","capitalizeWords","word","toCamelCase","_","char","match"],"mappings":"aAAO,SAASA,EAASC,CAAAA,CAAUC,CAAAA,CAAqB,CACtD,GAAIA,CAAAA,EAAQ,EAAG,OAAO,GAEtB,IAAMC,CAAAA,CAAgB,EAAC,CAEvB,IAAA,IAASC,EAAI,CAAA,CAAGA,CAAAA,CAAIH,EAAI,MAAA,CAAQG,CAAAA,EAAKF,CAAAA,CACnCC,CAAAA,CAAO,KAAKF,CAAAA,CAAI,KAAA,CAAMG,EAAGA,CAAAA,CAAIF,CAAI,CAAC,CAAA,CAGpC,OAAOC,CACT,CCVO,SAASE,EAAUC,CAAAA,CAAiB,CACzC,OAAO,CAAC,GAAG,IAAI,GAAA,CAAIA,CAAK,CAAC,CAC3B,CCFO,SAASC,CAAAA,CAA6CC,EAAOC,CAAAA,CAAe,CACjF,IAAIC,CAAAA,CAEJ,OAAO,YAAaC,CAAAA,CAAqB,CACvC,aAAaD,CAAO,CAAA,CAEpBA,EAAU,UAAA,CAAW,IAAM,CACzBF,CAAAA,CAAG,GAAGG,CAAI,EACZ,CAAA,CAAGF,CAAK,EACV,CACF,CCVO,SAASG,CAAAA,CAAIC,EAAUC,CAAAA,CAAcC,CAAAA,CAAoB,CAC9D,IAAMC,CAAAA,CAAOF,EAAK,KAAA,CAAM,GAAG,EACvBX,CAAAA,CAASU,CAAAA,CAEb,QAAWI,CAAAA,IAAOD,CAAAA,CAAM,CACtB,GAAIb,GAAU,IAAA,CAAM,OAAOY,EAC3BZ,CAAAA,CAASA,CAAAA,CAAOc,CAAG,EACrB,CAEA,OAAOd,CAAAA,GAAW,MAAA,CAAYY,EAAeZ,CAC/C,CCVO,SAASe,CAAAA,CAAWC,CAAAA,CAAqB,CAC9C,OAAKA,CAAAA,CACEA,EAAI,MAAA,CAAO,CAAC,EAAE,WAAA,EAAY,CAAIA,EAAI,KAAA,CAAM,CAAC,EAD/B,EAEnB,CCHO,SAASC,CAAAA,CAAgBD,CAAAA,CAAqB,CACnD,OAAKA,CAAAA,CACEA,EACJ,IAAA,EAAK,CACL,MAAM,KAAK,CAAA,CACX,GAAA,CAAKE,CAAAA,EAASA,EAAK,MAAA,CAAO,CAAC,EAAE,WAAA,EAAY,CAAIA,EAAK,KAAA,CAAM,CAAC,CAAC,CAAA,CAC1D,IAAA,CAAK,GAAG,CAAA,CALM,EAMnB,CCPO,SAASC,CAAAA,CAAYH,EAAqB,CAC/C,OAAKA,EAEEA,CAAAA,CACJ,IAAA,GACA,OAAA,CAAQ,oBAAA,CAAsB,CAACI,CAAAA,CAAGC,CAAAA,GAAkBA,EAAOA,CAAAA,CAAK,WAAA,GAAgB,EAAG,CAAA,CACnF,QAAQ,MAAA,CAASC,CAAAA,EAAUA,EAAM,WAAA,EAAa,EALhC,EAMnB","file":"index.cjs","sourcesContent":["export function chunk<T>(arr: T[], size: number): T[][] {\r\n if (size <= 0) return [];\r\n\r\n const result: T[][] = [];\r\n\r\n for (let i = 0; i < arr.length; i += size) {\r\n result.push(arr.slice(i, i + size));\r\n }\r\n\r\n return result;\r\n}\r\n","export function unique<T>(array: T[]): T[] {\r\n return [...new Set(array)];\r\n}\r\n","export function debounce<T extends (...args: any[]) => void>(fn: T, delay: number) {\r\n let timeout: ReturnType<typeof setTimeout>;\r\n\r\n return function (...args: Parameters<T>) {\r\n clearTimeout(timeout);\r\n\r\n timeout = setTimeout(() => {\r\n fn(...args);\r\n }, delay);\r\n };\r\n}\r\n","export function get(obj: any, path: string, defaultValue?: any) {\r\n const keys = path.split(\".\");\r\n let result = obj;\r\n\r\n for (const key of keys) {\r\n if (result == null) return defaultValue;\r\n result = result[key];\r\n }\r\n\r\n return result === undefined ? defaultValue : result;\r\n}\r\n","export function capitalize(str: string): string {\r\n if (!str) return \"\";\r\n return str.charAt(0).toUpperCase() + str.slice(1);\r\n}\r\n","export function capitalizeWords(str: string): string {\r\n if (!str) return \"\";\r\n return str\r\n .trim()\r\n .split(/\\s+/)\r\n .map((word) => word.charAt(0).toUpperCase() + word.slice(1))\r\n .join(\" \");\r\n}\r\n","export function toCamelCase(str: string): string {\r\n if (!str) return \"\";\r\n\r\n return str\r\n .trim()\r\n .replace(/[^a-zA-Z0-9]+(.)?/g, (_, char: string) => (char ? char.toUpperCase() : \"\"))\r\n .replace(/^(.)/, (match) => match.toLowerCase());\r\n}\r\n"]}
1
+ {"version":3,"sources":["../src/array/chunk.ts","../src/array/unique.ts","../src/function/debounce.ts","../src/object/get.ts","../src/string/capitalize.ts","../src/string/capitalizeWords.ts","../src/string/toCamelCase.ts","../src/string/toKebabCase.ts"],"names":["chunk","arr","size","result","i","unique","array","debounce","fn","delay","timeout","args","get","obj","path","defaultValue","keys","key","capitalize","str","capitalizeWords","word","toCamelCase","_","char","match","toKebabCase"],"mappings":"aAAO,SAASA,CAAAA,CAASC,EAAUC,CAAAA,CAAqB,CACtD,GAAIA,CAAAA,EAAQ,CAAA,CAAG,OAAO,EAAC,CAEvB,IAAMC,EAAgB,EAAC,CAEvB,QAASC,CAAAA,CAAI,CAAA,CAAGA,EAAIH,CAAAA,CAAI,MAAA,CAAQG,CAAAA,EAAKF,CAAAA,CACnCC,CAAAA,CAAO,IAAA,CAAKF,EAAI,KAAA,CAAMG,CAAAA,CAAGA,EAAIF,CAAI,CAAC,EAGpC,OAAOC,CACT,CCVO,SAASE,CAAAA,CAAUC,CAAAA,CAAiB,CACzC,OAAO,CAAC,GAAG,IAAI,GAAA,CAAIA,CAAK,CAAC,CAC3B,CCFO,SAASC,CAAAA,CAA6CC,CAAAA,CAAOC,EAAe,CACjF,IAAIC,EAEJ,OAAO,SAAA,GAAaC,EAAqB,CACvC,YAAA,CAAaD,CAAO,CAAA,CAEpBA,CAAAA,CAAU,UAAA,CAAW,IAAM,CACzBF,CAAAA,CAAG,GAAGG,CAAI,EACZ,EAAGF,CAAK,EACV,CACF,CCVO,SAASG,CAAAA,CAAIC,EAAUC,CAAAA,CAAcC,CAAAA,CAAoB,CAC9D,IAAMC,CAAAA,CAAOF,EAAK,KAAA,CAAM,GAAG,CAAA,CACvBX,CAAAA,CAASU,CAAAA,CAEb,IAAA,IAAWI,KAAOD,CAAAA,CAAM,CACtB,GAAIb,CAAAA,EAAU,IAAA,CAAM,OAAOY,CAAAA,CAC3BZ,CAAAA,CAASA,CAAAA,CAAOc,CAAG,EACrB,CAEA,OAAOd,CAAAA,GAAW,MAAA,CAAYY,EAAeZ,CAC/C,CCVO,SAASe,CAAAA,CAAWC,CAAAA,CAAqB,CAC9C,OAAKA,CAAAA,CACEA,CAAAA,CAAI,OAAO,CAAC,CAAA,CAAE,aAAY,CAAIA,CAAAA,CAAI,MAAM,CAAC,CAAA,CAD/B,EAEnB,CCHO,SAASC,CAAAA,CAAgBD,EAAqB,CACnD,OAAKA,EACEA,CAAAA,CACJ,IAAA,GACA,KAAA,CAAM,KAAK,CAAA,CACX,GAAA,CAAKE,CAAAA,EAASA,CAAAA,CAAK,OAAO,CAAC,CAAA,CAAE,aAAY,CAAIA,CAAAA,CAAK,MAAM,CAAC,CAAC,CAAA,CAC1D,IAAA,CAAK,GAAG,CAAA,CALM,EAMnB,CCPO,SAASC,EAAYH,CAAAA,CAAqB,CAC/C,OAAKA,CAAAA,CAEEA,CAAAA,CACJ,IAAA,EAAK,CACL,OAAA,CAAQ,oBAAA,CAAsB,CAACI,CAAAA,CAAGC,CAAAA,GAAkBA,EAAOA,CAAAA,CAAK,WAAA,GAAgB,EAAG,CAAA,CACnF,OAAA,CAAQ,MAAA,CAASC,CAAAA,EAAUA,CAAAA,CAAM,aAAa,CAAA,CALhC,EAMnB,CCPO,SAASC,EAAYP,CAAAA,CAAqB,CAC/C,OAAKA,CAAAA,CAEEA,CAAAA,CACJ,IAAA,GACA,OAAA,CAAQ,oBAAA,CAAsB,OAAO,CAAA,CACrC,OAAA,CAAQ,UAAW,GAAG,CAAA,CACtB,WAAA,EAAY,CANE,EAOnB","file":"index.cjs","sourcesContent":["export function chunk<T>(arr: T[], size: number): T[][] {\r\n if (size <= 0) return [];\r\n\r\n const result: T[][] = [];\r\n\r\n for (let i = 0; i < arr.length; i += size) {\r\n result.push(arr.slice(i, i + size));\r\n }\r\n\r\n return result;\r\n}\r\n","export function unique<T>(array: T[]): T[] {\r\n return [...new Set(array)];\r\n}\r\n","export function debounce<T extends (...args: any[]) => void>(fn: T, delay: number) {\r\n let timeout: ReturnType<typeof setTimeout>;\r\n\r\n return function (...args: Parameters<T>) {\r\n clearTimeout(timeout);\r\n\r\n timeout = setTimeout(() => {\r\n fn(...args);\r\n }, delay);\r\n };\r\n}\r\n","export function get(obj: any, path: string, defaultValue?: any) {\r\n const keys = path.split(\".\");\r\n let result = obj;\r\n\r\n for (const key of keys) {\r\n if (result == null) return defaultValue;\r\n result = result[key];\r\n }\r\n\r\n return result === undefined ? defaultValue : result;\r\n}\r\n","export function capitalize(str: string): string {\r\n if (!str) return \"\";\r\n return str.charAt(0).toUpperCase() + str.slice(1);\r\n}\r\n","export function capitalizeWords(str: string): string {\r\n if (!str) return \"\";\r\n return str\r\n .trim()\r\n .split(/\\s+/)\r\n .map((word) => word.charAt(0).toUpperCase() + word.slice(1))\r\n .join(\" \");\r\n}\r\n","export function toCamelCase(str: string): string {\r\n if (!str) return \"\";\r\n\r\n return str\r\n .trim()\r\n .replace(/[^a-zA-Z0-9]+(.)?/g, (_, char: string) => (char ? char.toUpperCase() : \"\"))\r\n .replace(/^(.)/, (match) => match.toLowerCase());\r\n}\r\n","export function toKebabCase(str: string): string {\r\n if (!str) return \"\";\r\n\r\n return str\r\n .trim()\r\n .replace(/([a-z0-9])([A-Z])/g, \"$1-$2\")\r\n .replace(/[_\\s]+/g, \"-\")\r\n .toLowerCase();\r\n}\r\n"]}
package/dist/index.d.cts CHANGED
@@ -12,4 +12,6 @@ declare function capitalizeWords(str: string): string;
12
12
 
13
13
  declare function toCamelCase(str: string): string;
14
14
 
15
- export { capitalize, capitalizeWords, chunk, debounce, get, toCamelCase, unique };
15
+ declare function toKebabCase(str: string): string;
16
+
17
+ export { capitalize, capitalizeWords, chunk, debounce, get, toCamelCase, toKebabCase, unique };
package/dist/index.d.ts CHANGED
@@ -12,4 +12,6 @@ declare function capitalizeWords(str: string): string;
12
12
 
13
13
  declare function toCamelCase(str: string): string;
14
14
 
15
- export { capitalize, capitalizeWords, chunk, debounce, get, toCamelCase, unique };
15
+ declare function toKebabCase(str: string): string;
16
+
17
+ export { capitalize, capitalizeWords, chunk, debounce, get, toCamelCase, toKebabCase, unique };
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- function u(e,t){if(t<=0)return [];let r=[];for(let n=0;n<e.length;n+=t)r.push(e.slice(n,n+t));return r}function s(e){return [...new Set(e)]}function f(e,t){let r;return function(...n){clearTimeout(r),r=setTimeout(()=>{e(...n);},t);}}function l(e,t,r){let n=t.split("."),o=e;for(let i of n){if(o==null)return r;o=o[i];}return o===void 0?r:o}function T(e){return e?e.charAt(0).toUpperCase()+e.slice(1):""}function x(e){return e?e.trim().split(/\s+/).map(t=>t.charAt(0).toUpperCase()+t.slice(1)).join(" "):""}function C(e){return e?e.trim().replace(/[^a-zA-Z0-9]+(.)?/g,(t,r)=>r?r.toUpperCase():"").replace(/^(.)/,t=>t.toLowerCase()):""}export{T as capitalize,x as capitalizeWords,u as chunk,f as debounce,l as get,C as toCamelCase,s as unique};//# sourceMappingURL=index.js.map
1
+ function u(e,t){if(t<=0)return [];let r=[];for(let n=0;n<e.length;n+=t)r.push(e.slice(n,n+t));return r}function s(e){return [...new Set(e)]}function c(e,t){let r;return function(...n){clearTimeout(r),r=setTimeout(()=>{e(...n);},t);}}function l(e,t,r){let n=t.split("."),o=e;for(let i of n){if(o==null)return r;o=o[i];}return o===void 0?r:o}function m(e){return e?e.charAt(0).toUpperCase()+e.slice(1):""}function x(e){return e?e.trim().split(/\s+/).map(t=>t.charAt(0).toUpperCase()+t.slice(1)).join(" "):""}function y(e){return e?e.trim().replace(/[^a-zA-Z0-9]+(.)?/g,(t,r)=>r?r.toUpperCase():"").replace(/^(.)/,t=>t.toLowerCase()):""}function d(e){return e?e.trim().replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/[_\s]+/g,"-").toLowerCase():""}export{m as capitalize,x as capitalizeWords,u as chunk,c as debounce,l as get,y as toCamelCase,d as toKebabCase,s as unique};//# sourceMappingURL=index.js.map
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/array/chunk.ts","../src/array/unique.ts","../src/function/debounce.ts","../src/object/get.ts","../src/string/capitalize.ts","../src/string/capitalizeWords.ts","../src/string/toCamelCase.ts"],"names":["chunk","arr","size","result","i","unique","array","debounce","fn","delay","timeout","args","get","obj","path","defaultValue","keys","key","capitalize","str","capitalizeWords","word","toCamelCase","_","char","match"],"mappings":"AAAO,SAASA,EAASC,CAAAA,CAAUC,CAAAA,CAAqB,CACtD,GAAIA,CAAAA,EAAQ,EAAG,OAAO,GAEtB,IAAMC,CAAAA,CAAgB,EAAC,CAEvB,IAAA,IAASC,EAAI,CAAA,CAAGA,CAAAA,CAAIH,EAAI,MAAA,CAAQG,CAAAA,EAAKF,CAAAA,CACnCC,CAAAA,CAAO,KAAKF,CAAAA,CAAI,KAAA,CAAMG,EAAGA,CAAAA,CAAIF,CAAI,CAAC,CAAA,CAGpC,OAAOC,CACT,CCVO,SAASE,EAAUC,CAAAA,CAAiB,CACzC,OAAO,CAAC,GAAG,IAAI,GAAA,CAAIA,CAAK,CAAC,CAC3B,CCFO,SAASC,CAAAA,CAA6CC,EAAOC,CAAAA,CAAe,CACjF,IAAIC,CAAAA,CAEJ,OAAO,YAAaC,CAAAA,CAAqB,CACvC,aAAaD,CAAO,CAAA,CAEpBA,EAAU,UAAA,CAAW,IAAM,CACzBF,CAAAA,CAAG,GAAGG,CAAI,EACZ,CAAA,CAAGF,CAAK,EACV,CACF,CCVO,SAASG,CAAAA,CAAIC,EAAUC,CAAAA,CAAcC,CAAAA,CAAoB,CAC9D,IAAMC,CAAAA,CAAOF,EAAK,KAAA,CAAM,GAAG,EACvBX,CAAAA,CAASU,CAAAA,CAEb,QAAWI,CAAAA,IAAOD,CAAAA,CAAM,CACtB,GAAIb,GAAU,IAAA,CAAM,OAAOY,EAC3BZ,CAAAA,CAASA,CAAAA,CAAOc,CAAG,EACrB,CAEA,OAAOd,CAAAA,GAAW,MAAA,CAAYY,EAAeZ,CAC/C,CCVO,SAASe,CAAAA,CAAWC,CAAAA,CAAqB,CAC9C,OAAKA,CAAAA,CACEA,EAAI,MAAA,CAAO,CAAC,EAAE,WAAA,EAAY,CAAIA,EAAI,KAAA,CAAM,CAAC,EAD/B,EAEnB,CCHO,SAASC,CAAAA,CAAgBD,CAAAA,CAAqB,CACnD,OAAKA,CAAAA,CACEA,EACJ,IAAA,EAAK,CACL,MAAM,KAAK,CAAA,CACX,GAAA,CAAKE,CAAAA,EAASA,EAAK,MAAA,CAAO,CAAC,EAAE,WAAA,EAAY,CAAIA,EAAK,KAAA,CAAM,CAAC,CAAC,CAAA,CAC1D,IAAA,CAAK,GAAG,CAAA,CALM,EAMnB,CCPO,SAASC,CAAAA,CAAYH,EAAqB,CAC/C,OAAKA,EAEEA,CAAAA,CACJ,IAAA,GACA,OAAA,CAAQ,oBAAA,CAAsB,CAACI,CAAAA,CAAGC,CAAAA,GAAkBA,EAAOA,CAAAA,CAAK,WAAA,GAAgB,EAAG,CAAA,CACnF,QAAQ,MAAA,CAASC,CAAAA,EAAUA,EAAM,WAAA,EAAa,EALhC,EAMnB","file":"index.js","sourcesContent":["export function chunk<T>(arr: T[], size: number): T[][] {\r\n if (size <= 0) return [];\r\n\r\n const result: T[][] = [];\r\n\r\n for (let i = 0; i < arr.length; i += size) {\r\n result.push(arr.slice(i, i + size));\r\n }\r\n\r\n return result;\r\n}\r\n","export function unique<T>(array: T[]): T[] {\r\n return [...new Set(array)];\r\n}\r\n","export function debounce<T extends (...args: any[]) => void>(fn: T, delay: number) {\r\n let timeout: ReturnType<typeof setTimeout>;\r\n\r\n return function (...args: Parameters<T>) {\r\n clearTimeout(timeout);\r\n\r\n timeout = setTimeout(() => {\r\n fn(...args);\r\n }, delay);\r\n };\r\n}\r\n","export function get(obj: any, path: string, defaultValue?: any) {\r\n const keys = path.split(\".\");\r\n let result = obj;\r\n\r\n for (const key of keys) {\r\n if (result == null) return defaultValue;\r\n result = result[key];\r\n }\r\n\r\n return result === undefined ? defaultValue : result;\r\n}\r\n","export function capitalize(str: string): string {\r\n if (!str) return \"\";\r\n return str.charAt(0).toUpperCase() + str.slice(1);\r\n}\r\n","export function capitalizeWords(str: string): string {\r\n if (!str) return \"\";\r\n return str\r\n .trim()\r\n .split(/\\s+/)\r\n .map((word) => word.charAt(0).toUpperCase() + word.slice(1))\r\n .join(\" \");\r\n}\r\n","export function toCamelCase(str: string): string {\r\n if (!str) return \"\";\r\n\r\n return str\r\n .trim()\r\n .replace(/[^a-zA-Z0-9]+(.)?/g, (_, char: string) => (char ? char.toUpperCase() : \"\"))\r\n .replace(/^(.)/, (match) => match.toLowerCase());\r\n}\r\n"]}
1
+ {"version":3,"sources":["../src/array/chunk.ts","../src/array/unique.ts","../src/function/debounce.ts","../src/object/get.ts","../src/string/capitalize.ts","../src/string/capitalizeWords.ts","../src/string/toCamelCase.ts","../src/string/toKebabCase.ts"],"names":["chunk","arr","size","result","i","unique","array","debounce","fn","delay","timeout","args","get","obj","path","defaultValue","keys","key","capitalize","str","capitalizeWords","word","toCamelCase","_","char","match","toKebabCase"],"mappings":"AAAO,SAASA,CAAAA,CAASC,EAAUC,CAAAA,CAAqB,CACtD,GAAIA,CAAAA,EAAQ,CAAA,CAAG,OAAO,EAAC,CAEvB,IAAMC,EAAgB,EAAC,CAEvB,QAASC,CAAAA,CAAI,CAAA,CAAGA,EAAIH,CAAAA,CAAI,MAAA,CAAQG,CAAAA,EAAKF,CAAAA,CACnCC,CAAAA,CAAO,IAAA,CAAKF,EAAI,KAAA,CAAMG,CAAAA,CAAGA,EAAIF,CAAI,CAAC,EAGpC,OAAOC,CACT,CCVO,SAASE,CAAAA,CAAUC,CAAAA,CAAiB,CACzC,OAAO,CAAC,GAAG,IAAI,GAAA,CAAIA,CAAK,CAAC,CAC3B,CCFO,SAASC,CAAAA,CAA6CC,CAAAA,CAAOC,EAAe,CACjF,IAAIC,EAEJ,OAAO,SAAA,GAAaC,EAAqB,CACvC,YAAA,CAAaD,CAAO,CAAA,CAEpBA,CAAAA,CAAU,UAAA,CAAW,IAAM,CACzBF,CAAAA,CAAG,GAAGG,CAAI,EACZ,EAAGF,CAAK,EACV,CACF,CCVO,SAASG,CAAAA,CAAIC,EAAUC,CAAAA,CAAcC,CAAAA,CAAoB,CAC9D,IAAMC,CAAAA,CAAOF,EAAK,KAAA,CAAM,GAAG,CAAA,CACvBX,CAAAA,CAASU,CAAAA,CAEb,IAAA,IAAWI,KAAOD,CAAAA,CAAM,CACtB,GAAIb,CAAAA,EAAU,IAAA,CAAM,OAAOY,CAAAA,CAC3BZ,CAAAA,CAASA,CAAAA,CAAOc,CAAG,EACrB,CAEA,OAAOd,CAAAA,GAAW,MAAA,CAAYY,EAAeZ,CAC/C,CCVO,SAASe,CAAAA,CAAWC,CAAAA,CAAqB,CAC9C,OAAKA,CAAAA,CACEA,CAAAA,CAAI,OAAO,CAAC,CAAA,CAAE,aAAY,CAAIA,CAAAA,CAAI,MAAM,CAAC,CAAA,CAD/B,EAEnB,CCHO,SAASC,CAAAA,CAAgBD,EAAqB,CACnD,OAAKA,EACEA,CAAAA,CACJ,IAAA,GACA,KAAA,CAAM,KAAK,CAAA,CACX,GAAA,CAAKE,CAAAA,EAASA,CAAAA,CAAK,OAAO,CAAC,CAAA,CAAE,aAAY,CAAIA,CAAAA,CAAK,MAAM,CAAC,CAAC,CAAA,CAC1D,IAAA,CAAK,GAAG,CAAA,CALM,EAMnB,CCPO,SAASC,EAAYH,CAAAA,CAAqB,CAC/C,OAAKA,CAAAA,CAEEA,CAAAA,CACJ,IAAA,EAAK,CACL,OAAA,CAAQ,oBAAA,CAAsB,CAACI,CAAAA,CAAGC,CAAAA,GAAkBA,EAAOA,CAAAA,CAAK,WAAA,GAAgB,EAAG,CAAA,CACnF,OAAA,CAAQ,MAAA,CAASC,CAAAA,EAAUA,CAAAA,CAAM,aAAa,CAAA,CALhC,EAMnB,CCPO,SAASC,EAAYP,CAAAA,CAAqB,CAC/C,OAAKA,CAAAA,CAEEA,CAAAA,CACJ,IAAA,GACA,OAAA,CAAQ,oBAAA,CAAsB,OAAO,CAAA,CACrC,OAAA,CAAQ,UAAW,GAAG,CAAA,CACtB,WAAA,EAAY,CANE,EAOnB","file":"index.js","sourcesContent":["export function chunk<T>(arr: T[], size: number): T[][] {\r\n if (size <= 0) return [];\r\n\r\n const result: T[][] = [];\r\n\r\n for (let i = 0; i < arr.length; i += size) {\r\n result.push(arr.slice(i, i + size));\r\n }\r\n\r\n return result;\r\n}\r\n","export function unique<T>(array: T[]): T[] {\r\n return [...new Set(array)];\r\n}\r\n","export function debounce<T extends (...args: any[]) => void>(fn: T, delay: number) {\r\n let timeout: ReturnType<typeof setTimeout>;\r\n\r\n return function (...args: Parameters<T>) {\r\n clearTimeout(timeout);\r\n\r\n timeout = setTimeout(() => {\r\n fn(...args);\r\n }, delay);\r\n };\r\n}\r\n","export function get(obj: any, path: string, defaultValue?: any) {\r\n const keys = path.split(\".\");\r\n let result = obj;\r\n\r\n for (const key of keys) {\r\n if (result == null) return defaultValue;\r\n result = result[key];\r\n }\r\n\r\n return result === undefined ? defaultValue : result;\r\n}\r\n","export function capitalize(str: string): string {\r\n if (!str) return \"\";\r\n return str.charAt(0).toUpperCase() + str.slice(1);\r\n}\r\n","export function capitalizeWords(str: string): string {\r\n if (!str) return \"\";\r\n return str\r\n .trim()\r\n .split(/\\s+/)\r\n .map((word) => word.charAt(0).toUpperCase() + word.slice(1))\r\n .join(\" \");\r\n}\r\n","export function toCamelCase(str: string): string {\r\n if (!str) return \"\";\r\n\r\n return str\r\n .trim()\r\n .replace(/[^a-zA-Z0-9]+(.)?/g, (_, char: string) => (char ? char.toUpperCase() : \"\"))\r\n .replace(/^(.)/, (match) => match.toLowerCase());\r\n}\r\n","export function toKebabCase(str: string): string {\r\n if (!str) return \"\";\r\n\r\n return str\r\n .trim()\r\n .replace(/([a-z0-9])([A-Z])/g, \"$1-$2\")\r\n .replace(/[_\\s]+/g, \"-\")\r\n .toLowerCase();\r\n}\r\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@titocandradev/neatcore",
3
- "version": "0.2.2",
3
+ "version": "0.2.4",
4
4
  "private": false,
5
5
  "description": "A clean, zero-dependency, TypeScript-first utility core.",
6
6
  "homepage": "https://github.com/tcandra24/neat-core#readme",