UNPKG

chinese-unique-identification-code

Version:
2 lines (1 loc) 3.85 kB
var a=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var T=Object.prototype.hasOwnProperty;var h=t=>a(t,"__esModule",{value:!0});var y=(t,e)=>{for(var n in e)a(t,n,{get:e[n],enumerable:!0})},b=(t,e,n,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of m(e))!T.call(t,r)&&(n||r!=="default")&&a(t,r,{get:()=>e[r],enumerable:!(i=d(e,r))||i.enumerable});return t};var N=(t=>(e,n)=>t&&t.get(e)||(n=b(h({}),e,1),t&&t.set(e,n),n))(typeof WeakMap!="undefined"?new WeakMap:0);var S={};y(S,{CitizenIdentificationNumberChecker:()=>C,CitizenIdentificationNumberInformationExtractor:()=>D,OrganizationCategories:()=>p,RegistrationDepartmentCodes:()=>f,RegistrationDepartmentNames:()=>c,TheUnifiedSocialCreditIdentifierChecker:()=>I,TheUnifiedSocialCreditIdentifierInformationExtractor:()=>U});var u=/([1-9|A|N|Y]{1})([1-5|9]{1})([0-9]{6})([0-9|A-H|J-N|P-U|W-Y]{9})([0-9|A-H|J-N|P-U|W-Y]{1})/,E=t=>{let e=["A","B","C","D","E","F","G","H","J","K","L","M","N","P","Q","R","T","U","W","X","Y"],n=[1,3,9,27,19,26,16,17,20,29,25,13,8,24,10,30,28],i=31-t.split("").map(r=>{if(/[0-9]/.test(r))return parseInt(r);for(let o in e)if(e[o]===r)return 10+parseInt(o)}).reduce((r,o,s)=>r+o*n[s],0)%31;return[0,1,2,3,4,5,6,7,8,9,...e][i].toString()},I=t=>t.length!==18?[!1,t]:u.test(t)?E(t.substring(0,17))===t.substring(17)?[!0,t]:[!1,t]:[!1,t],c=["\u673A\u6784\u7F16\u5236","\u5916\u4EA4","\u53F8\u6CD5\u884C\u653F","\u6587\u5316","\u6C11\u653F","\u65C5\u6E38","\u5B97\u6559","\u5DE5\u4F1A","\u5DE5\u5546","\u4E2D\u592E\u519B\u59D4\u6539\u9769\u548C\u7F16\u5236\u529E\u516C\u5BA4","\u519C\u4E1A","\u5176\u4ED6"],f=["1","2","3","4","5","6","7","8","9","A","N","Y"],p=[["\u673A\u5173","\u4E8B\u4E1A\u5355\u4F4D","\u7F16\u529E\u76F4\u63A5\u7BA1\u7406\u673A\u6784\u7F16\u5236\u7684\u7FA4\u4F17\u56E2\u4F53"],["\u5916\u56FD\u5E38\u9A7B\u65B0\u95FB\u673A\u6784"],["\u5F8B\u5E08\u6267\u4E1A\u673A\u6784","\u516C\u8BC1\u5904","\u57FA\u5C42\u6CD5\u5F8B\u670D\u52A1\u6240","\u53F8\u6CD5\u9274\u5B9A\u673A\u6784","\u4EF2\u88C1\u59D4\u5458\u4F1A"],["\u5916\u56FD\u5728\u534E\u6587\u5316\u4E2D\u5FC3"],["\u793E\u4F1A\u56E2\u4F53","\u6C11\u529E\u975E\u4F01\u4E1A\u5355\u4F4D","\u57FA\u91D1\u4F1A"],["\u5916\u56FD\u65C5\u6E38\u90E8\u95E8\u5E38\u9A7B\u4EE3\u8868\u673A\u6784","\u6E2F\u6FB3\u53F0\u5730\u533A\u65C5\u6E38\u90E8\u95E8\u5E38\u9A7B\u5185\u5730(\u5927\u9646)\u4EE3\u8868\u673A\u6784"],["\u5B97\u6559\u6D3B\u52A8\u573A\u6240","\u5B97\u6559\u9662\u6821"],["\u57FA\u5C42\u5DE5\u4F1A"],["\u4F01\u4E1A","\u4E2A\u4F53\u5DE5\u5546\u6237","\u519C\u6C11\u4E13\u4E1A\u5408\u4F5C\u793E"],["\u519B\u961F\u4E8B\u4E1A\u5355\u4F4D"],["\u7EC4\u7EA7\u96C6\u4F53\u7ECF\u6D4E\u7EC4\u7EC7","\u6751\u7EA7\u96C6\u4F53\u7ECF\u6D4E\u7EC4\u7EC7","\u4E61\u9547\u7EA7\u96C6\u4F53\u7ECF\u6D4E\u7EC4\u7EC7"],[""]],U=t=>{if(!I(t)[0])return[!1,null];let[e,n,i,r,o]=u.exec(t);if(parseInt(i)!==9&&parseInt(i)>=p[f.indexOf(n)].length+1)return[!1,null];if(n==="Y"&&i!=="1")return[!1,null];let s=f.indexOf(n),x=parseInt(i)-1;return parseInt(i)===9?[!0,[c[s],"\u5176\u4ED6",r,o,e]]:[!0,[c[s],p[s][x],r,o,e]]};var z=t=>{let e=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1];return["1","0","X","9","8","7","6","5","4","3","2"][t.split("").map(r=>parseInt(r)).reduce((r,o,s)=>r+o*e[s],0)%11]},g=/([0-9]{6})([0-9]{8})([0-9]{3})([0-9|X]{1})/,C=t=>(t=t.toUpperCase(),t.length!==18?[!1,t]:g.test(t)?z(t.substring(0,17))===t.substring(17)?[!0,t]:[!1,t]:[!1,t]),D=t=>{if(!C(t)[0])return[!1,null];let[e,n,i,r]=g.exec(t),o=parseInt(r)%2===0?"\u5973":"\u7537";return[!0,[n,i,o,e]]};module.exports=N(S);0&&(module.exports={CitizenIdentificationNumberChecker,CitizenIdentificationNumberInformationExtractor,OrganizationCategories,RegistrationDepartmentCodes,RegistrationDepartmentNames,TheUnifiedSocialCreditIdentifierChecker,TheUnifiedSocialCreditIdentifierInformationExtractor});