@indodev/toolkit 0.5.0 → 0.7.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.
Files changed (65) hide show
  1. package/dist/email-validator/index.cjs +10 -0
  2. package/dist/email-validator/index.cjs.map +1 -1
  3. package/dist/email-validator/index.d.cts +1 -1
  4. package/dist/email-validator/index.d.ts +1 -1
  5. package/dist/email-validator/index.js +10 -1
  6. package/dist/email-validator/index.js.map +1 -1
  7. package/dist/{parse-BmmsNlJt.d.cts → errors--47zprcf.d.cts} +41 -7
  8. package/dist/{parse-BmmsNlJt.d.ts → errors--47zprcf.d.ts} +41 -7
  9. package/dist/{email-validator-R9L5unIw.d.cts → errors-DdutHLae.d.cts} +23 -1
  10. package/dist/{email-validator-R9L5unIw.d.ts → errors-DdutHLae.d.ts} +23 -1
  11. package/dist/index.cjs +317 -38
  12. package/dist/index.cjs.map +1 -1
  13. package/dist/index.d.cts +7 -7
  14. package/dist/index.d.ts +7 -7
  15. package/dist/index.js +310 -39
  16. package/dist/index.js.map +1 -1
  17. package/dist/{compare-Ku_8OhuU.d.cts → mask-CToJqmrd.d.cts} +79 -1
  18. package/dist/{compare-Ku_8OhuU.d.ts → mask-CToJqmrd.d.ts} +79 -1
  19. package/dist/nik/index.cjs +177 -24
  20. package/dist/nik/index.cjs.map +1 -1
  21. package/dist/nik/index.d.cts +24 -330
  22. package/dist/nik/index.d.ts +24 -330
  23. package/dist/nik/index.js +174 -25
  24. package/dist/nik/index.js.map +1 -1
  25. package/dist/npwp/index.cjs +10 -0
  26. package/dist/npwp/index.cjs.map +1 -1
  27. package/dist/npwp/index.d.cts +23 -1
  28. package/dist/npwp/index.d.ts +23 -1
  29. package/dist/npwp/index.js +10 -1
  30. package/dist/npwp/index.js.map +1 -1
  31. package/dist/parse-B3UzEHq3.d.cts +155 -0
  32. package/dist/parse-B3UzEHq3.d.ts +155 -0
  33. package/dist/parse-DlrgrRfY.d.cts +155 -0
  34. package/dist/parse-DlrgrRfY.d.ts +155 -0
  35. package/dist/phone/index.cjs +36 -12
  36. package/dist/phone/index.cjs.map +1 -1
  37. package/dist/phone/index.d.cts +1 -1
  38. package/dist/phone/index.d.ts +1 -1
  39. package/dist/phone/index.js +36 -13
  40. package/dist/phone/index.js.map +1 -1
  41. package/dist/plate/index.cjs +57 -0
  42. package/dist/plate/index.cjs.map +1 -1
  43. package/dist/plate/index.d.cts +1 -1
  44. package/dist/plate/index.d.ts +1 -1
  45. package/dist/plate/index.js +56 -1
  46. package/dist/plate/index.js.map +1 -1
  47. package/dist/text/index.cjs +31 -8
  48. package/dist/text/index.cjs.map +1 -1
  49. package/dist/text/index.d.cts +2 -63
  50. package/dist/text/index.d.ts +2 -63
  51. package/dist/text/index.js +31 -8
  52. package/dist/text/index.js.map +1 -1
  53. package/dist/utils-D4A4ro8M.d.cts +507 -0
  54. package/dist/utils-D4A4ro8M.d.ts +507 -0
  55. package/dist/vin/index.cjs +64 -0
  56. package/dist/vin/index.cjs.map +1 -1
  57. package/dist/vin/index.d.cts +1 -1
  58. package/dist/vin/index.d.ts +1 -1
  59. package/dist/vin/index.js +63 -1
  60. package/dist/vin/index.js.map +1 -1
  61. package/package.json +1 -1
  62. package/dist/types-i5e6R0AS.d.cts +0 -39
  63. package/dist/types-i5e6R0AS.d.ts +0 -39
  64. package/dist/utils-DDVlOusI.d.cts +0 -30
  65. package/dist/utils-DDVlOusI.d.ts +0 -30
@@ -1707,24 +1707,44 @@ function maskText(text, options) {
1707
1707
  if (!text) return text;
1708
1708
  const {
1709
1709
  pattern = "middle",
1710
- maskChar = "*",
1711
- visibleStart = 2,
1712
- visibleEnd = 2
1710
+ maskChar,
1711
+ visibleStart,
1712
+ visibleEnd,
1713
+ separator,
1714
+ start,
1715
+ end,
1716
+ char
1713
1717
  } = options || {};
1714
- switch (pattern) {
1718
+ const hasLegacyOptions = start !== void 0 || end !== void 0 || char !== void 0;
1719
+ if (hasLegacyOptions) {
1720
+ console.warn(
1721
+ "[DEPRECATED] Mask options start/end/char are deprecated. Use visibleStart/visibleEnd/maskChar instead. These old names will be removed in v1.0.0."
1722
+ );
1723
+ }
1724
+ const effectivePattern = pattern || "middle";
1725
+ const effectiveStart = visibleStart !== void 0 ? visibleStart : start !== void 0 ? start : 2;
1726
+ const effectiveEnd = visibleEnd !== void 0 ? visibleEnd : end !== void 0 ? end : 2;
1727
+ const effectiveChar = maskChar !== void 0 ? maskChar : char !== void 0 ? char : "*";
1728
+ switch (effectivePattern) {
1715
1729
  case "all":
1716
- return maskAll(text, maskChar);
1730
+ return maskAll(text, effectiveChar);
1717
1731
  case "email":
1718
- return maskEmail(text, maskChar);
1732
+ return maskEmail(text, effectiveChar);
1719
1733
  case "middle":
1720
1734
  default:
1721
- return maskMiddle(text, maskChar, visibleStart, visibleEnd);
1735
+ return maskMiddle(
1736
+ text,
1737
+ effectiveChar,
1738
+ effectiveStart,
1739
+ effectiveEnd,
1740
+ separator
1741
+ );
1722
1742
  }
1723
1743
  }
1724
1744
  function maskAll(text, maskChar) {
1725
1745
  return text.split("").map((char) => char === " " ? " " : maskChar).join("");
1726
1746
  }
1727
- function maskMiddle(text, maskChar, visibleStart, visibleEnd) {
1747
+ function maskMiddle(text, maskChar, visibleStart, visibleEnd, separator) {
1728
1748
  const length = text.length;
1729
1749
  const totalVisible = visibleStart + visibleEnd;
1730
1750
  if (length < totalVisible) {
@@ -1733,6 +1753,9 @@ function maskMiddle(text, maskChar, visibleStart, visibleEnd) {
1733
1753
  const start = text.slice(0, visibleStart);
1734
1754
  const middle = maskChar.repeat(length - totalVisible);
1735
1755
  const end = text.slice(length - visibleEnd);
1756
+ if (separator) {
1757
+ return `${start}${separator}${middle}${separator}${end}`;
1758
+ }
1736
1759
  return start + middle + end;
1737
1760
  }
1738
1761
  function maskEmail(text, maskChar) {