UNPKG

auto-hyphen-utils

Version:

This module provides automatic formatting and hyphenation for structured inputs with a similar pattern.

2 lines (1 loc) 1.3 kB
"use strict";var m=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var H=(t,n)=>{for(var o in n)m(t,o,{get:n[o],enumerable:!0})},b=(t,n,o,s)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of y(n))!d.call(t,r)&&r!==o&&m(t,r,{get:()=>n[r],enumerable:!(s=a(n,r))||s.enumerable});return t};var V=t=>b(m({},"__esModule",{value:!0}),t);var S={};H(S,{default:()=>N});module.exports=V(S);var x=t=>{if(!t||typeof t!="string")return!1;let n=t.trim();return n?n.length>0:!1},i=x;function e(t,n=[]){if(!t||!i(t))return"";if(!Array.isArray(n)||n.length===0||n.some(r=>typeof r!="number"||r<0))return t;let o=t.replace(/[^0-9]/g,""),{result:s}=n.reduce((r,u,g)=>{if(r.position>=o.length)return r;if(g===n.length-1)return{result:r.result+o.slice(r.position),position:o.length};{let h=o.slice(r.position,r.position+u),p=r.position+u,c=p<o.length?"-":"";return{result:r.result+h+c,position:p}}},{result:"",position:0});return s}function l(t){if(!t||!i(t))return"";let n=t.replace(/[^0-9]/g,""),o=n.length===10?[3,3,4]:[3,4,4];return e(n,o)}function f(t){if(!t||!i(t))return"";let n=t.replace(/\D/g,""),o=n.length===10?[3,2,5]:n.length===13?[3,4,2,2,2]:null;return o?e(n,o):t}var A={common:e,phoneNumber:l,tinNumber:f},N=A;