{"_id":"@cicerotcv/masker","_rev":"8-733d26af4eb1e0b356b355bc98a60cc1","name":"@cicerotcv/masker","dist-tags":{"latest":"1.2.2"},"versions":{"1.0.0":{"name":"@cicerotcv/masker","version":"1.0.0","keywords":["mask","format","utility"],"author":{"name":"Cicero Valentim"},"license":"MIT","_id":"@cicerotcv/masker@1.0.0","maintainers":[{"name":"cicerotcv","email":"elm.tiago@gmail.com"}],"dist":{"shasum":"836f8f2248b4c39b72e525ccbde40c06637a8b61","tarball":"https://registry.npmjs.org/@cicerotcv/masker/-/masker-1.0.0.tgz","fileCount":5,"integrity":"sha512-2GOftwNOGXUbPnWF+liGbIBsERnnWzCOLpbd6l1gvQIwXgKMvJsUefsQTqXL9H8/4/km3xxy2K2pLQ4B5SI/Nw==","signatures":[{"sig":"MEYCIQDSoIjCjvgEZKkVcFO+6mYbLOwZsTTfAZiupS2QBKKBhwIhALf2n4T4KEB1zLxzVjQhb4YlX+1pcXvLsNwBRmay7O8Q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2342},"main":"dist/masker.umd.js","_from":"file:cicerotcv-masker-1.0.0.tgz","types":"dist/index.d.ts","module":"dist/masker.es.js","scripts":{"build":"vite build","prettier:fix":"prettier --write src","prettier:check":"prettier --check src"},"_npmUser":{"name":"cicerotcv","email":"elm.tiago@gmail.com"},"_resolved":"/private/var/folders/fq/jcgtp0_j7_s65p8zdgk0j3fc0000gn/T/7bb3933c671a0f9cba579b6a2aa3b959/cicerotcv-masker-1.0.0.tgz","_integrity":"sha512-2GOftwNOGXUbPnWF+liGbIBsERnnWzCOLpbd6l1gvQIwXgKMvJsUefsQTqXL9H8/4/km3xxy2K2pLQ4B5SI/Nw==","_npmVersion":"10.8.2","description":"Simple masking utility functions","directories":{},"_nodeVersion":"20.19.3","_hasShrinkwrap":false,"devDependencies":{"vite":"^7.1.2","prettier":"^3.6.2","typescript":"^5.9.2","vite-plugin-dts":"^4.5.4"},"_npmOperationalInternal":{"tmp":"tmp/masker_1.0.0_1755384154681_0.23566017371087855","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@cicerotcv/masker","version":"1.1.2","keywords":["mask","format","utility"],"author":{"name":"Cicero Valentim"},"license":"MIT","_id":"@cicerotcv/masker@1.1.2","maintainers":[{"name":"cicerotcv","email":"elm.tiago@gmail.com"}],"dist":{"shasum":"8a9f26389c4515f5066501498762927974ec1853","tarball":"https://registry.npmjs.org/@cicerotcv/masker/-/masker-1.1.2.tgz","fileCount":9,"integrity":"sha512-S4xw+grL2052Q2dDhUtaP2aBwY4ckXPf+yXspKrLm9odBdrZJbBPZhBNVYhmjZD4x/HgMMRu/N5R/2/2KMyhwA==","signatures":[{"sig":"MEQCIEZstALTEJO/SvpwNWr+OxbhIch5NMREWphlRFgteNHaAiBtIPxtKBnPPbTBnDawefJ5YDtIGpORnn0l4uMrqx5SHQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7436},"main":"dist/masker.umd.js","_from":"file:cicerotcv-masker-1.1.2.tgz","types":"dist/index.d.ts","module":"dist/masker.es.js","scripts":{"lint":"eslint src","build":"vite build","test:run":"vitest run","prettier:fix":"prettier --write src","prettier:check":"prettier --check src"},"_npmUser":{"name":"cicerotcv","email":"elm.tiago@gmail.com"},"_resolved":"/private/var/folders/fq/jcgtp0_j7_s65p8zdgk0j3fc0000gn/T/bb1976893d32dcb719df6fdf1de103c2/cicerotcv-masker-1.1.2.tgz","_integrity":"sha512-S4xw+grL2052Q2dDhUtaP2aBwY4ckXPf+yXspKrLm9odBdrZJbBPZhBNVYhmjZD4x/HgMMRu/N5R/2/2KMyhwA==","_npmVersion":"10.8.2","description":"Simple masking utility functions","directories":{},"_nodeVersion":"20.19.3","_hasShrinkwrap":false,"devDependencies":{"vite":"^7.1.2","eslint":"^9.33.0","vitest":"^3.2.4","prettier":"^3.6.2","@eslint/js":"^9.33.0","typescript":"^5.9.2","vite-plugin-dts":"^4.5.4","typescript-eslint":"^8.39.1"},"_npmOperationalInternal":{"tmp":"tmp/masker_1.1.2_1755390293238_0.3948258649809453","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@cicerotcv/masker","version":"1.1.3","keywords":["mask","format","utility"],"author":{"name":"Cicero Valentim"},"license":"MIT","_id":"@cicerotcv/masker@1.1.3","maintainers":[{"name":"cicerotcv","email":"elm.tiago@gmail.com"}],"dist":{"shasum":"feb13e8479a24a4ea1a9e102ae56cfa963c59805","tarball":"https://registry.npmjs.org/@cicerotcv/masker/-/masker-1.1.3.tgz","fileCount":9,"integrity":"sha512-g33rwysz9zNTnSB2NrEP/IoMZGoVMy9CH/ZpxwyJ5UAfPx0QmnA2VxldiPVVfQG+x6qSt1/94ff+4LAftnep/g==","signatures":[{"sig":"MEUCIQCGdrAZgayec5gnwG8YJZYuH9IS+GuPtkR/9PFchGFUYQIgUt9AaDKpQwjR0cAiQDaeO8jHVN+IiAxI9OWnHKRY5Qs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7436},"main":"dist/masker.umd.js","_from":"file:cicerotcv-masker-1.1.3.tgz","types":"dist/index.d.ts","module":"dist/masker.es.js","scripts":{"lint":"eslint src","build":"vite build","test:run":"vitest run","prettier:fix":"prettier --write src","prettier:check":"prettier --check src"},"_npmUser":{"name":"cicerotcv","email":"elm.tiago@gmail.com"},"_resolved":"/tmp/c3d23c0ba8d6badd53ac0eccd743ded5/cicerotcv-masker-1.1.3.tgz","_integrity":"sha512-g33rwysz9zNTnSB2NrEP/IoMZGoVMy9CH/ZpxwyJ5UAfPx0QmnA2VxldiPVVfQG+x6qSt1/94ff+4LAftnep/g==","_npmVersion":"10.8.2","description":"Simple masking utility functions","directories":{},"_nodeVersion":"20.19.4","_hasShrinkwrap":false,"devDependencies":{"vite":"^7.1.2","eslint":"^9.33.0","vitest":"^3.2.4","prettier":"^3.6.2","@eslint/js":"^9.33.0","typescript":"^5.9.2","vite-plugin-dts":"^4.5.4","typescript-eslint":"^8.39.1"},"_npmOperationalInternal":{"tmp":"tmp/masker_1.1.3_1755391641922_0.41548701349067674","host":"s3://npm-registry-packages-npm-production"}},"1.1.4":{"name":"@cicerotcv/masker","version":"1.1.4","keywords":["mask","format","utility"],"author":{"name":"Cicero Valentim"},"license":"MIT","_id":"@cicerotcv/masker@1.1.4","maintainers":[{"name":"cicerotcv","email":"elm.tiago@gmail.com"}],"dist":{"shasum":"341828207f2f58a334b2d391a6fb97825fa680a9","tarball":"https://registry.npmjs.org/@cicerotcv/masker/-/masker-1.1.4.tgz","fileCount":9,"integrity":"sha512-d8grYzZNJ5JRx77/Tl9lirwFxcEeEyT9z66OCsHOxk+4Bs9EM1OqmgYzDCZxaaH7voCq+arLE4gF09jFGrnS6Q==","signatures":[{"sig":"MEUCIQC7Wwv/JWmWafbwW6nQiBCDLz1I0iAqHqgljZTqsZFmAQIgARyfUPgXfVtZKqYsqhe9bUf7hBBAT5McQt7230bI0kA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7473},"main":"dist/masker.umd.js","_from":"file:cicerotcv-masker-1.1.4.tgz","types":"dist/index.d.ts","module":"dist/masker.es.js","scripts":{"lint":"eslint src","build":"vite build","test:run":"vitest run","prettier:fix":"prettier --write src","prettier:check":"prettier --check src"},"_npmUser":{"name":"cicerotcv","email":"elm.tiago@gmail.com"},"_resolved":"/tmp/dd7c12ef05885861866d6cf759925771/cicerotcv-masker-1.1.4.tgz","_integrity":"sha512-d8grYzZNJ5JRx77/Tl9lirwFxcEeEyT9z66OCsHOxk+4Bs9EM1OqmgYzDCZxaaH7voCq+arLE4gF09jFGrnS6Q==","_npmVersion":"10.8.2","description":"Simple masking utility functions","directories":{},"_nodeVersion":"20.19.4","_hasShrinkwrap":false,"devDependencies":{"vite":"^7.1.2","eslint":"^9.33.0","vitest":"^3.2.4","prettier":"^3.6.2","@eslint/js":"^9.33.0","typescript":"^5.9.2","vite-plugin-dts":"^4.5.4","typescript-eslint":"^8.39.1"},"_npmOperationalInternal":{"tmp":"tmp/masker_1.1.4_1755467088144_0.9080304011425688","host":"s3://npm-registry-packages-npm-production"}},"1.1.5":{"name":"@cicerotcv/masker","version":"1.1.5","keywords":["mask","format","utility"],"author":{"url":"https://github.com/cicerotcv","name":"Cicero Valentim","email":"elm.tiago@gmail.com"},"license":"MIT","_id":"@cicerotcv/masker@1.1.5","maintainers":[{"name":"cicerotcv","email":"elm.tiago@gmail.com"}],"homepage":"https://github.com/cicerotcv/masker#readme","bugs":{"url":"https://github.com/cicerotcv/masker/issues"},"dist":{"shasum":"f1f0818e24c421385805feadfdf6d3e27bcce6c8","tarball":"https://registry.npmjs.org/@cicerotcv/masker/-/masker-1.1.5.tgz","fileCount":9,"integrity":"sha512-5edbdtjUeJMExTsGcRBIbJC4u26CiyQW7dfdykz0TLPtmTLB2JXPpowQCwXm0RpWPqKfKRWOXS2IqtwiMEOM9w==","signatures":[{"sig":"MEUCIBBhsUuBqaVdNwnX8w54yx0K4V14MtBq9cYCNj33MyaEAiEAq+srhSNX9zshDT28CIsfnOd7/quwZMmlE8TiLvNhDjA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7789},"main":"dist/masker.umd.js","_from":"file:cicerotcv-masker-1.1.5.tgz","types":"dist/index.d.ts","module":"dist/masker.es.js","scripts":{"lint":"eslint src","build":"vite build","test:run":"vitest run","prettier:fix":"prettier --write src","prettier:check":"prettier --check src"},"_npmUser":{"name":"cicerotcv","email":"elm.tiago@gmail.com"},"_resolved":"/tmp/99c16986cec2e79e90283df90d357f25/cicerotcv-masker-1.1.5.tgz","_integrity":"sha512-5edbdtjUeJMExTsGcRBIbJC4u26CiyQW7dfdykz0TLPtmTLB2JXPpowQCwXm0RpWPqKfKRWOXS2IqtwiMEOM9w==","repository":{"url":"git+https://github.com/cicerotcv/masker.git","type":"git"},"_npmVersion":"10.8.2","description":"Simple masking utility functions","directories":{},"_nodeVersion":"20.19.4","_hasShrinkwrap":false,"devDependencies":{"vite":"^7.1.2","eslint":"^9.33.0","vitest":"^3.2.4","prettier":"^3.6.2","@eslint/js":"^9.33.0","typescript":"^5.9.2","vite-plugin-dts":"^4.5.4","typescript-eslint":"^8.39.1"},"_npmOperationalInternal":{"tmp":"tmp/masker_1.1.5_1755490747886_0.20497298409555476","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@cicerotcv/masker","version":"1.2.0","keywords":["mask","format","utility"],"author":{"url":"https://github.com/cicerotcv","name":"Cicero Valentim","email":"elm.tiago@gmail.com"},"license":"MIT","_id":"@cicerotcv/masker@1.2.0","maintainers":[{"name":"cicerotcv","email":"elm.tiago@gmail.com"}],"homepage":"https://github.com/cicerotcv/masker#readme","bugs":{"url":"https://github.com/cicerotcv/masker/issues"},"dist":{"shasum":"4b2666f018db4dd898d66d391ab7cf7fc2025f5d","tarball":"https://registry.npmjs.org/@cicerotcv/masker/-/masker-1.2.0.tgz","fileCount":9,"integrity":"sha512-QNon4OsNt2I9TQ9eXbtJCSXJPqzEynkH5ln8gG4aTmUz9SkeCtm3OCdDlmWsyAcnJroXwUXH4BV2s2GxIC2kJQ==","signatures":[{"sig":"MEQCIAqkgU+rVCj5YHUhg8Wrs8ZFAHyyJBB2Biw/SL9V+1T4AiBV5vzKoj75M1/SyjPdSYMXrXyjTPdJqAhNndI8PF1D4Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8253},"main":"dist/masker.umd.js","_from":"file:cicerotcv-masker-1.2.0.tgz","types":"dist/index.d.ts","module":"dist/masker.es.js","scripts":{"lint":"eslint src","build":"vite build","test:run":"vitest run","prettier:fix":"prettier --write src","prettier:check":"prettier --check src"},"_npmUser":{"name":"cicerotcv","email":"elm.tiago@gmail.com"},"_resolved":"/tmp/6578ff414650a86718f8c02bad38e6b8/cicerotcv-masker-1.2.0.tgz","_integrity":"sha512-QNon4OsNt2I9TQ9eXbtJCSXJPqzEynkH5ln8gG4aTmUz9SkeCtm3OCdDlmWsyAcnJroXwUXH4BV2s2GxIC2kJQ==","repository":{"url":"git+https://github.com/cicerotcv/masker.git","type":"git"},"_npmVersion":"10.8.2","description":"Simple masking utility functions","directories":{},"_nodeVersion":"20.19.4","_hasShrinkwrap":false,"devDependencies":{"vite":"^7.1.2","eslint":"^9.33.0","vitest":"^3.2.4","prettier":"^3.6.2","@eslint/js":"^9.33.0","typescript":"^5.9.2","vite-plugin-dts":"^4.5.4","typescript-eslint":"^8.39.1"},"_npmOperationalInternal":{"tmp":"tmp/masker_1.2.0_1755491838791_0.3230380663269452","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@cicerotcv/masker","version":"1.2.1","keywords":["mask","format","utility"],"author":{"url":"https://github.com/cicerotcv","name":"Cicero Valentim","email":"elm.tiago@gmail.com"},"license":"MIT","_id":"@cicerotcv/masker@1.2.1","maintainers":[{"name":"cicerotcv","email":"elm.tiago@gmail.com"}],"homepage":"https://github.com/cicerotcv/masker#readme","bugs":{"url":"https://github.com/cicerotcv/masker/issues"},"dist":{"shasum":"ce2e743fe89cb786d66930806c2546c0e519bd7f","tarball":"https://registry.npmjs.org/@cicerotcv/masker/-/masker-1.2.1.tgz","fileCount":9,"integrity":"sha512-1Hx38yixE8cSlkJxrPp3AUFazIFcNg0C3/tcRPqk0nbkOWl4tCnChOMHN86mE+wPZ6Z3O+ZYDp9OW+Gazxv+Ig==","signatures":[{"sig":"MEQCIHGSOcenS9jpQWzE5mByKGcPTVuRY0O1e3L7uzxeLIJ0AiBnJkUYUZPvLeIlcH6bNYHmA7AVWKIGv6RAqtSuTxpvmQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8557},"main":"dist/masker.umd.js","_from":"file:cicerotcv-masker-1.2.1.tgz","types":"dist/index.d.ts","module":"dist/masker.es.js","scripts":{"lint":"eslint src","build":"vite build","test:run":"vitest run","prettier:fix":"prettier --write src","prettier:check":"prettier --check src"},"_npmUser":{"name":"cicerotcv","email":"elm.tiago@gmail.com"},"_resolved":"/tmp/9421fb62b4c68aa0bf319b6c34b2f1c4/cicerotcv-masker-1.2.1.tgz","_integrity":"sha512-1Hx38yixE8cSlkJxrPp3AUFazIFcNg0C3/tcRPqk0nbkOWl4tCnChOMHN86mE+wPZ6Z3O+ZYDp9OW+Gazxv+Ig==","repository":{"url":"git+https://github.com/cicerotcv/masker.git","type":"git"},"_npmVersion":"10.8.2","description":"Simple masking utility functions","directories":{},"_nodeVersion":"20.19.4","_hasShrinkwrap":false,"devDependencies":{"vite":"^7.1.2","eslint":"^9.33.0","vitest":"^3.2.4","prettier":"^3.6.2","@eslint/js":"^9.33.0","typescript":"^5.9.2","vite-plugin-dts":"^4.5.4","typescript-eslint":"^8.39.1"},"_npmOperationalInternal":{"tmp":"tmp/masker_1.2.1_1756414298412_0.24540414574064084","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"@cicerotcv/masker","version":"1.2.2","description":"Simple masking utility functions","main":"dist/masker.umd.js","module":"dist/masker.es.js","types":"dist/index.d.ts","keywords":["mask","format","utility"],"author":{"name":"Cicero Valentim","email":"elm.tiago@gmail.com","url":"https://github.com/cicerotcv"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/cicerotcv/masker.git"},"devDependencies":{"@eslint/js":"^9.33.0","eslint":"^9.33.0","prettier":"^3.6.2","typescript":"^5.9.2","typescript-eslint":"^8.39.1","vite":"^7.1.2","vite-plugin-dts":"^4.5.4","vitest":"^3.2.4"},"scripts":{"build":"vite build","lint":"eslint src","test:run":"vitest run","prettier:check":"prettier --check src","prettier:fix":"prettier --write src"},"_id":"@cicerotcv/masker@1.2.2","bugs":{"url":"https://github.com/cicerotcv/masker/issues"},"homepage":"https://github.com/cicerotcv/masker#readme","_integrity":"sha512-fjdmNzUwnKNRD9qputU/poXgZZrpaleyolhKaShvGIkZ4uUntq9YnEzIovjyXiGTXfqC9fb9Zsc4CZiH+FnYZA==","_resolved":"/tmp/1032e5e62be4533e14a541f6d3ac826b/cicerotcv-masker-1.2.2.tgz","_from":"file:cicerotcv-masker-1.2.2.tgz","_nodeVersion":"20.19.4","_npmVersion":"10.8.2","dist":{"integrity":"sha512-fjdmNzUwnKNRD9qputU/poXgZZrpaleyolhKaShvGIkZ4uUntq9YnEzIovjyXiGTXfqC9fb9Zsc4CZiH+FnYZA==","shasum":"146773bded00f7da4d12fc873cc697dbc50c1a88","tarball":"https://registry.npmjs.org/@cicerotcv/masker/-/masker-1.2.2.tgz","fileCount":9,"unpackedSize":8809,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCID9u4rjQJ074Zb4vYEcXkq3hbZPqq34pdnETPVtpsMt9AiAOlrleEiVzczZJMAydzAsepNC5K3cpsMbJhQz+WrCeyw=="}]},"_npmUser":{"name":"cicerotcv","email":"elm.tiago@gmail.com"},"directories":{},"maintainers":[{"name":"cicerotcv","email":"elm.tiago@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/masker_1.2.2_1756414460321_0.47434401190338527"},"_hasShrinkwrap":false}},"time":{"created":"2025-08-16T22:42:34.607Z","modified":"2025-08-28T20:54:20.740Z","1.0.0":"2025-08-16T22:42:34.872Z","1.1.2":"2025-08-17T00:24:53.433Z","1.1.3":"2025-08-17T00:47:22.094Z","1.1.4":"2025-08-17T21:44:48.333Z","1.1.5":"2025-08-18T04:19:08.082Z","1.2.0":"2025-08-18T04:37:18.978Z","1.2.1":"2025-08-28T20:51:38.599Z","1.2.2":"2025-08-28T20:54:20.537Z"},"bugs":{"url":"https://github.com/cicerotcv/masker/issues"},"author":{"name":"Cicero Valentim","email":"elm.tiago@gmail.com","url":"https://github.com/cicerotcv"},"license":"MIT","homepage":"https://github.com/cicerotcv/masker#readme","keywords":["mask","format","utility"],"repository":{"type":"git","url":"git+https://github.com/cicerotcv/masker.git"},"description":"Simple masking utility functions","maintainers":[{"name":"cicerotcv","email":"elm.tiago@gmail.com"}],"readme":"# @cicerotcv/masker\r\n\r\nA lightweight TypeScript library for masking and formatting strings, numbers, and more.  \r\nPerfect for input validation, formatting, and data presentation in web applications.\r\n\r\n[![Version](https://img.shields.io/github/v/release/cicerotcv/masker?label=version&color=blue)](https://github.com/cicerotcv/masker/releases)\r\n[![npm version](https://img.shields.io/npm/v/@cicerotcv/masker?color=blue)](https://www.npmjs.com/package/@cicerotcv/masker)\r\n[![Monthly downloads](https://img.shields.io/npm/dm/@cicerotcv/masker)](https://www.npmjs.com/package/@cicerotcv/masker)\r\n[![License](https://img.shields.io/github/license/cicerotcv/masker?color=green)](LICENSE)\r\n[![TypeScript](https://img.shields.io/badge/TypeScript-5.8-blue?logo=typescript)](https://www.typescriptlang.org/)\r\n[![React](https://img.shields.io/badge/React-19-blue?logo=react)](https://reactjs.org/)\r\n[![Vite](https://img.shields.io/badge/Vite-7-646CFF?logo=vite)](https://vitejs.dev/)\r\n[![pnpm](https://img.shields.io/badge/pnpm-9-F69220?logo=pnpm)](https://pnpm.io/)\r\n[![license](https://img.shields.io/npm/l/@cicerotcv/masker?color=green)](./LICENSE)\r\n[![CI](https://github.com/cicerotcv/masker/actions/workflows/ci.yml/badge.svg)](https://github.com/cicerotcv/masker/actions/workflows/ci.yml)\r\n[![update and publish](https://github.com/cicerotcv/masker/actions/workflows/update-and-publish.yml/badge.svg)](https://github.com/cicerotcv/masker/actions/workflows/update-and-publish.yml)\r\n[![wakatime](https://wakatime.com/badge/user/6b9e0525-e35c-4896-bb9c-db75b3501e3c/project/11091876-8e6f-40ae-935e-cd3cacdcfd3c.svg)](https://wakatime.com/badge/user/6b9e0525-e35c-4896-bb9c-db75b3501e3c/project/11091876-8e6f-40ae-935e-cd3cacdcfd3c)\r\n[![buy-me-a-bitcoffee](https://img.shields.io/badge/Buy%20Me%20a%20BitCoffee-f7931a?logo=bitcoin&logoColor=white&color=f7931a&style=flat&label=Donate)](https://buymeabitcoffee.vercel.app/btc/bc1qw4q8nn7pknen33han7znsv6zhrrfta53sr86fw?identifier=Masker)\r\n---\r\n\r\n## ✨ Features\r\n\r\n- Simple API for masking strings and numbers\r\n- TypeScript support\r\n- Zero dependencies\r\n- Customizable masks\r\n- Fast and lightweight\r\n\r\n---\r\n\r\n## 🚀 Installation\r\n\r\n```bash\r\npnpm add @cicerotcv/masker\r\n# or\r\nnpm install @cicerotcv/masker\r\n# or\r\nyarn add @cicerotcv/masker\r\n```\r\n\r\n---\r\n\r\n## 📦 Usage\r\n\r\n```typescript\r\nimport { Masker } from '@cicerotcv/masker';\r\n\r\nconst phone = Masker.apply('1234567890', '## ####-####');\r\nconsole.log(phone); // 12 3456-7890\r\n\r\nconst fmtCellphoneNumber = Masker.create('## ##### ####');\r\nconsole.log(fmtCellphoneNumber('(11) 12345-1234')); // 11 12345 1234\r\n\r\nconst sanitized = Masker.onlyNumbers('(11) 12345-1234');\r\nconsole.log(sanitized); // 11123451234\r\n```\r\n\r\n---\r\n\r\n## 🛠 API\r\n\r\n### Apply the given pattern to a string or number\r\n\r\n```ts\r\nMasker.apply('1234567890', '(##) ####-####'); // (12) 3456-7890\r\n```\r\n\r\n### Create a curried masker function\r\n\r\n```ts\r\nconst fmtPhoneNumber = Masker.create('(##) ####-####');\r\nfmtPhoneNumber('1234567890'); // (12) 3456-7890\r\n```\r\n\r\n### Remove all non-numeric characters from a string\r\n\r\n```ts\r\nMasker.onlyNumbers('(12) 3456-7890'); // 1234567890\r\n```\r\n\r\n---\r\n\r\n## 🧪 Testing\r\n\r\nRun unit tests with [Vitest](https://vitest.dev):\r\n\r\n```bash\r\npnpm test:run\r\n```\r\n\r\n---\r\n\r\n## 📄 License\r\n\r\nThis project is open source and available under the [MIT License](LICENSE).\r\n\r\n\r\n\r\n","readmeFilename":"README.md"}