yunlin 1.0.20 → 1.0.22

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/dist/func.js ADDED
@@ -0,0 +1 @@
1
+ 'use strict';function a0_0x24ee(){var _0x3ff34b=['point','length','6704898frnlot','money','附加行程','353146bbmbOF','減免費用','兒童[占床]','push','保險費用','split','map','reduction','filter','trip','airtax','tax','tipday','人員費用','unit','child','vip','price','3780660MPPWBy','elder','strJgbm','unitpricewb','fJcbzlsjUnit','4810806EbxcXt','adultnum','viprecharge','promotion','concat','strLx','unitprice','26565sjkQJj','insure','totalprice','people','users','機場稅','10HtTrcD','childnum','優惠券','default','service','附加服務','nRs','tip','4918284sVPowN','childprice','2ikAYgm','base','591740ySwvBm','fLsjUnit','defineProperty','會員充值','adult','adultprice','list','totaltax','itemname','other','30ZgYUTM','長者減免','712lwnRtt','baseadultprice','name','其他費用','num','vipdiscounted','includes'];a0_0x24ee=function(){return _0x3ff34b;};return a0_0x24ee();}var a0_0x579cf1=a0_0x2d35;(function(_0x364242,_0x2559d4){var _0x5a3964=a0_0x2d35,_0x31a138=_0x364242();while(!![]){try{var _0x8e5260=parseInt(_0x5a3964(0xd4))/0x1*(-parseInt(_0x5a3964(0x102))/0x2)+parseInt(_0x5a3964(0xe6))/0x3+-parseInt(_0x5a3964(0x104))/0x4*(-parseInt(_0x5a3964(0xf8))/0x5)+parseInt(_0x5a3964(0xd1))/0x6+-parseInt(_0x5a3964(0xf2))/0x7*(-parseInt(_0x5a3964(0xc8))/0x8)+-parseInt(_0x5a3964(0x100))/0x9+parseInt(_0x5a3964(0xc6))/0xa*(-parseInt(_0x5a3964(0xeb))/0xb);if(_0x8e5260===_0x2559d4)break;else _0x31a138['push'](_0x31a138['shift']());}catch(_0x4d302b){_0x31a138['push'](_0x31a138['shift']());}}}(a0_0x24ee,0xc33b4));Object[a0_0x579cf1(0x106)](exports,'__esModule',{'value':!![]}),exports[a0_0x579cf1(0xfb)]=void 0x0;function handleCosting(_0x2cf4f7){var _0x414f6b=a0_0x579cf1,_0x46ffa8=arguments['length']>0x1&&arguments[0x1]!==undefined?arguments[0x1]:'¥',_0x32c498=arguments[_0x414f6b(0xd0)]>0x2&&arguments[0x2]!==undefined?arguments[0x2]:{'people':_0x414f6b(0xe1),'service':_0x414f6b(0xfd),'trip':_0x414f6b(0xd3),'other':_0x414f6b(0xcb),'reduction':_0x414f6b(0xd5),'totalprice':'總計','airtax':_0x414f6b(0xf7)},_0x3ecdb2=arguments['length']>0x3&&arguments[0x3]!==undefined?arguments[0x3]:{'adult':'成人','child':'兒童','childusebed':_0x414f6b(0xd6),'infant':'嬰兒','half':'拼房','tip':'小費','elder':_0x414f6b(0xc7),'vip':'會員減免','promotion':'促銷','insure':_0x414f6b(0xd8),'coupon':_0x414f6b(0xfa),'point':'積分','tax':'稅金','viprecharge':_0x414f6b(0x107),'r':'人','t':'天'},_0x2d9005=[],_0x40d1a3='\x20*\x20',_0x2dee90=_0x2cf4f7[_0x414f6b(0xdc)](function(_0x3b6f4a){var _0x2b018a=_0x414f6b;return _0x3b6f4a[_0x2b018a(0xf0)]==_0x2b018a(0x103);});if(_0x2dee90['length']){var _0x3cc4e={'title':_0x32c498[_0x414f6b(0xf5)],'type':'base','list':[]};_0x2dee90[_0x414f6b(0xda)](function(_0x1deb64){var _0x527504=_0x414f6b;_0x3cc4e['list'][_0x527504(0xd7)]({'title':_0x3ecdb2[_0x1deb64[_0x527504(0xe8)]],'info':_0x46ffa8+_0x1deb64[_0x527504(0x105)]+_0x40d1a3+_0x1deb64[_0x527504(0xfe)],'nRs':_0x1deb64[_0x527504(0xfe)],'unit':_0x1deb64[_0x527504(0x105)],'cb':_0x1deb64[_0x527504(0xea)],'type':'base'});}),_0x2d9005['push'](_0x3cc4e);}var _0x4c20da=_0x2cf4f7[_0x414f6b(0xdc)](function(_0x3f0917){var _0x5a29b3=_0x414f6b;return _0x3f0917[_0x5a29b3(0xf0)]=='service';});if(_0x4c20da[_0x414f6b(0xd0)]){var _0x31850c={'title':_0x32c498[_0x414f6b(0xfc)],'type':_0x414f6b(0xfc),'list':[]};_0x4c20da[_0x414f6b(0xda)](function(_0x134d43){var _0x566945=_0x414f6b;_0x31850c[_0x566945(0x10a)]['push']({'title':_0x134d43[_0x566945(0xca)]+'['[_0x566945(0xef)](_0x134d43[_0x566945(0x10c)],']'),'info':_0x46ffa8+_0x134d43['unitprice']+_0x40d1a3+_0x134d43[_0x566945(0xcc)],'nRs':_0x134d43[_0x566945(0xcc)],'unit':_0x134d43[_0x566945(0xf1)],'cb':_0x134d43['baseprice'],'type':_0x566945(0xfc)});}),_0x2d9005[_0x414f6b(0xd7)](_0x31850c);}var _0x5da156=_0x2cf4f7[_0x414f6b(0xdc)](function(_0x152446){var _0x58d247=_0x414f6b;return _0x152446[_0x58d247(0xf0)]==_0x58d247(0xdd);});if(_0x5da156[_0x414f6b(0xd0)]){var _0xb11fc0={'title':_0x32c498['trip'],'type':_0x414f6b(0xdd),'list':[]};_0x5da156[_0x414f6b(0xda)](function(_0x5cf080){var _0x5c6400=_0x414f6b;_0x5cf080[_0x5c6400(0xec)]!='0'&&_0xb11fc0[_0x5c6400(0x10a)][_0x5c6400(0xd7)]({'title':_0x5cf080[_0x5c6400(0xca)]+'['[_0x5c6400(0xef)](_0x3ecdb2[_0x5c6400(0x108)],']'),'info':_0x46ffa8+_0x5cf080[_0x5c6400(0x109)]+_0x40d1a3+_0x5cf080[_0x5c6400(0xec)],'nRs':_0x5cf080[_0x5c6400(0xec)],'unit':_0x5cf080[_0x5c6400(0x109)],'cb':_0x5cf080[_0x5c6400(0xc9)],'type':_0x5c6400(0xdd)}),_0x5cf080[_0x5c6400(0xf9)]!='0'&&_0xb11fc0['list'][_0x5c6400(0xd7)]({'title':_0x5cf080[_0x5c6400(0xca)]+'['['concat'](_0x3ecdb2[_0x5c6400(0xe3)],']'),'info':_0x46ffa8+_0x5cf080[_0x5c6400(0x101)]+_0x40d1a3+_0x5cf080[_0x5c6400(0xf9)],'nRs':_0x5cf080['childnum'],'unit':_0x5cf080[_0x5c6400(0x101)],'cb':_0x5cf080['basechildprice'],'type':_0x5c6400(0xdd)});}),_0x2d9005[_0x414f6b(0xd7)](_0xb11fc0);}var _0x40344f=[],_0x48ae5c=_0x2cf4f7[_0x414f6b(0xdc)](function(_0x408227){var _0x65ea3f=_0x414f6b;return _0x408227[_0x65ea3f(0xf0)]=='elder';});_0x48ae5c[_0x414f6b(0xd0)]&&_0x48ae5c[_0x414f6b(0xda)](function(_0x2b6a19){var _0x350660=_0x414f6b,_0x19a8ac=_0x2b6a19['name'][_0x350660(0xd9)]('|')||[''];_0x40344f['push']({'title':_0x3ecdb2[_0x350660(0xe7)]+'['[_0x350660(0xef)](_0x19a8ac[0x0],']'),'info':_0x46ffa8+_0x2b6a19['money'],'unit':_0x2b6a19[_0x350660(0xd2)],'cb':_0x2b6a19['money'],'type':_0x350660(0xe7)});});var _0xd2921d=_0x2cf4f7[_0x414f6b(0xdc)](function(_0x203f87){return _0x203f87['strLx']=='vipdiscounted';});_0xd2921d['length']&&_0xd2921d[_0x414f6b(0xda)](function(_0x5ecc0a){var _0x26e5ee=_0x414f6b;_0x40344f['push']({'title':_0x3ecdb2[_0x26e5ee(0xe4)]+'['[_0x26e5ee(0xef)](_0x5ecc0a[_0x26e5ee(0xca)],']'),'info':_0x46ffa8+_0x5ecc0a[_0x26e5ee(0xd2)],'unit':_0x5ecc0a[_0x26e5ee(0xd2)],'cb':_0x5ecc0a[_0x26e5ee(0xd2)],'type':_0x26e5ee(0xe4)});});var _0x4f2140=_0x2cf4f7[_0x414f6b(0xdc)](function(_0xfdc45c){return _0xfdc45c['strLx']=='promotion';});_0x4f2140[_0x414f6b(0xd0)]&&_0x4f2140['map'](function(_0x4d1c67){var _0x360991=_0x414f6b;_0x40344f[_0x360991(0xd7)]({'title':_0x3ecdb2['promotion'],'info':_0x46ffa8+_0x4d1c67[_0x360991(0xd2)],'unit':_0x4d1c67[_0x360991(0xd2)],'cb':_0x4d1c67[_0x360991(0xd2)],'type':_0x360991(0xee)});});_0x40344f[_0x414f6b(0xd0)]&&_0x2d9005[_0x414f6b(0xd7)]({'title':_0x32c498[_0x414f6b(0xdb)],'type':_0x414f6b(0xdb),'list':_0x40344f});var _0x3a9c5f=_0x2cf4f7[_0x414f6b(0xdc)](function(_0x44b9aa){var _0x29399a=_0x414f6b;return _0x44b9aa[_0x29399a(0xf0)]=='airtax';});if(_0x3a9c5f[_0x414f6b(0xd0)]){var _0x5bef91={'title':_0x32c498[_0x414f6b(0xde)],'type':_0x414f6b(0xde),'list':[]};_0x3a9c5f[_0x414f6b(0xda)](function(_0x3b2b63){var _0x584eb3=_0x414f6b;_0x5bef91['list'][_0x584eb3(0xd7)]({'title':_0x3ecdb2[_0x3b2b63['rylx']],'info':_0x46ffa8+_0x3b2b63[_0x584eb3(0xf1)]+_0x40d1a3+_0x3b2b63['sl'],'nRs':_0x3b2b63['sl'],'unit':_0x3b2b63[_0x584eb3(0xf1)],'cb':_0x3b2b63[_0x584eb3(0xe9)],'type':_0x3b2b63['rylx']});}),_0x2d9005[_0x414f6b(0xd7)](_0x5bef91);}var _0x315778=[_0x414f6b(0x103),_0x414f6b(0xfc),_0x414f6b(0xdd),_0x414f6b(0xe7),_0x414f6b(0xcd),_0x414f6b(0xee),_0x414f6b(0xde)],_0x5eae96=_0x2cf4f7[_0x414f6b(0xdc)](function(_0x25e62d){var _0x5398da=_0x414f6b;return!_0x315778[_0x5398da(0xce)](_0x25e62d[_0x5398da(0xf0)]);}),_0x481753={'title':_0x32c498[_0x414f6b(0xc5)],'type':_0x414f6b(0xc5),'list':[]};for(var _0x1e0687=0x0;_0x1e0687<_0x5eae96[_0x414f6b(0xd0)];_0x1e0687++){var _0x13a9c9=_0x5eae96[_0x1e0687];_0x13a9c9[_0x414f6b(0xf0)]=='viprecharge'&&_0x481753[_0x414f6b(0x10a)][_0x414f6b(0xd7)]({'title':_0x3ecdb2[_0x414f6b(0xed)]+'['[_0x414f6b(0xef)](_0x13a9c9['name'],']'),'info':_0x46ffa8+_0x13a9c9[_0x414f6b(0xd2)],'unit':_0x13a9c9[_0x414f6b(0xd2)],'type':_0x13a9c9[_0x414f6b(0xf0)]}),_0x13a9c9[_0x414f6b(0xf0)]==_0x414f6b(0xf3)&&_0x481753['list']['push']({'title':_0x3ecdb2[_0x414f6b(0xf3)]+'['[_0x414f6b(0xef)](_0x13a9c9[_0x414f6b(0xca)],']'),'info':_0x46ffa8+_0x13a9c9[_0x414f6b(0xe2)]+_0x40d1a3+_0x13a9c9[_0x414f6b(0xf6)]+_0x3ecdb2['r'],'nRs':_0x13a9c9[_0x414f6b(0xf6)],'unit':_0x13a9c9[_0x414f6b(0xe2)],'cb':_0x13a9c9[_0x414f6b(0xe2)],'type':'insure'}),(_0x13a9c9[_0x414f6b(0xf0)]=='coupon'||_0x13a9c9['strLx']==_0x414f6b(0xcf))&&_0x481753['list'][_0x414f6b(0xd7)]({'title':_0x3ecdb2[_0x13a9c9['strLx']],'info':_0x46ffa8+_0x13a9c9[_0x414f6b(0xd2)],'unit':_0x13a9c9[_0x414f6b(0xd2)],'type':_0x13a9c9['strLx']}),_0x13a9c9[_0x414f6b(0xf0)]=='tip'&&_0x481753[_0x414f6b(0x10a)][_0x414f6b(0xd7)]({'title':_0x3ecdb2[_0x13a9c9[_0x414f6b(0xf0)]],'info':_0x46ffa8+_0x13a9c9[_0x414f6b(0xff)]+_0x40d1a3+_0x13a9c9['tipuser']+_0x3ecdb2['r']+_0x40d1a3+_0x13a9c9[_0x414f6b(0xe0)]+_0x3ecdb2['t'],'nRs':_0x13a9c9['tipuser'],'count':_0x13a9c9['tipday'],'unit':_0x13a9c9[_0x414f6b(0xff)],'type':_0x13a9c9[_0x414f6b(0xf0)]}),_0x13a9c9[_0x414f6b(0xf0)]==_0x414f6b(0xdf)&&_0x481753[_0x414f6b(0x10a)][_0x414f6b(0xd7)]({'title':_0x3ecdb2[_0x13a9c9[_0x414f6b(0xf0)]],'info':_0x46ffa8+_0x13a9c9[_0x414f6b(0x10b)],'unit':_0x13a9c9['totaltax'],'type':_0x13a9c9[_0x414f6b(0xf0)]});}_0x481753[_0x414f6b(0x10a)]['length']&&_0x2d9005[_0x414f6b(0xd7)](_0x481753);var _0x2dc63b=_0x2cf4f7[_0x414f6b(0xdc)](function(_0x2530ef){var _0x36fb05=_0x414f6b;return _0x2530ef[_0x36fb05(0xf0)]==_0x36fb05(0xf4);});return _0x2dc63b['length']&&_0x2d9005[_0x414f6b(0xd7)]({'title':_0x32c498[_0x414f6b(0xf4)],'type':_0x414f6b(0xf4),'list':[{'title':_0x32c498[_0x414f6b(0xf4)],'info':_0x46ffa8+_0x2dc63b[0x0][_0x414f6b(0xe5)]}]}),_0x2d9005;}function a0_0x2d35(_0x2e5270,_0x2271c8){var _0x24ee10=a0_0x24ee();return a0_0x2d35=function(_0x2d3548,_0x4f9f6b){_0x2d3548=_0x2d3548-0xc5;var _0x5192a0=_0x24ee10[_0x2d3548];return _0x5192a0;},a0_0x2d35(_0x2e5270,_0x2271c8);}var _default=exports[a0_0x579cf1(0xfb)]={'handleCosting':handleCosting};
package/dist/index.js ADDED
@@ -0,0 +1 @@
1
+ 'use strict';function a1_0x2ab2(){var _0x77ca19=['3904524ZdWSab','2781507wxWEHV','4ErFBKn','5111528CBhbaX','default','2TDXRkd','__esModule','3816135YlKyFk','37775810KWwnnm','defineProperty','4692564lSmGRp','992300pyVSAy','./utils','7kfyhbV','11oFQSkO'];a1_0x2ab2=function(){return _0x77ca19;};return a1_0x2ab2();}var a1_0x1f62f6=a1_0x20a8;function a1_0x20a8(_0xad2dd8,_0x335584){var _0x2ab2df=a1_0x2ab2();return a1_0x20a8=function(_0x20a8c1,_0x3c66f4){_0x20a8c1=_0x20a8c1-0x1a4;var _0x2041d2=_0x2ab2df[_0x20a8c1];return _0x2041d2;},a1_0x20a8(_0xad2dd8,_0x335584);}(function(_0xa626a0,_0x4df635){var _0x133a3d=a1_0x20a8,_0x58e035=_0xa626a0();while(!![]){try{var _0x2a6185=-parseInt(_0x133a3d(0x1a5))/0x1*(parseInt(_0x133a3d(0x1ab))/0x2)+parseInt(_0x133a3d(0x1b0))/0x3*(-parseInt(_0x133a3d(0x1b1))/0x4)+-parseInt(_0x133a3d(0x1a7))/0x5+-parseInt(_0x133a3d(0x1af))/0x6+-parseInt(_0x133a3d(0x1ad))/0x7*(-parseInt(_0x133a3d(0x1b2))/0x8)+-parseInt(_0x133a3d(0x1aa))/0x9+parseInt(_0x133a3d(0x1a8))/0xa*(parseInt(_0x133a3d(0x1ae))/0xb);if(_0x2a6185===_0x4df635)break;else _0x58e035['push'](_0x58e035['shift']());}catch(_0x1bb17b){_0x58e035['push'](_0x58e035['shift']());}}}(a1_0x2ab2,0x8920c));Object[a1_0x1f62f6(0x1a9)](exports,a1_0x1f62f6(0x1a6),{'value':!![]}),exports['default']=void 0x0;var _utils=_interopRequireDefault(require(a1_0x1f62f6(0x1ac))),_func=_interopRequireDefault(require('./func'));function _interopRequireDefault(_0x338783){var _0x7d7400=a1_0x1f62f6;return _0x338783&&_0x338783[_0x7d7400(0x1a6)]?_0x338783:{'default':_0x338783};}var _default=exports[a1_0x1f62f6(0x1a4)]={'utils':_utils['default'],'func':_func[a1_0x1f62f6(0x1a4)]};
package/dist/test.js ADDED
@@ -0,0 +1 @@
1
+ 'use strict';var a2_0x233584=a2_0x2eed;function a2_0x2eed(_0x1d7a4d,_0xe62af2){var _0x35b8ab=a2_0x35b8();return a2_0x2eed=function(_0x2eed82,_0x4b84c5){_0x2eed82=_0x2eed82-0x136;var _0x46c12f=_0x35b8ab[_0x2eed82];return _0x46c12f;},a2_0x2eed(_0x1d7a4d,_0xe62af2);}(function(_0x388af9,_0x552eec){var _0x3d115f=a2_0x2eed,_0x264f5d=_0x388af9();while(!![]){try{var _0x19b03b=parseInt(_0x3d115f(0x13a))/0x1*(-parseInt(_0x3d115f(0x14d))/0x2)+-parseInt(_0x3d115f(0x150))/0x3+parseInt(_0x3d115f(0x15d))/0x4*(parseInt(_0x3d115f(0x163))/0x5)+parseInt(_0x3d115f(0x162))/0x6*(-parseInt(_0x3d115f(0x157))/0x7)+-parseInt(_0x3d115f(0x147))/0x8*(-parseInt(_0x3d115f(0x13f))/0x9)+-parseInt(_0x3d115f(0x137))/0xa+parseInt(_0x3d115f(0x14e))/0xb*(parseInt(_0x3d115f(0x158))/0xc);if(_0x19b03b===_0x552eec)break;else _0x264f5d['push'](_0x264f5d['shift']());}catch(_0x590fa4){_0x264f5d['push'](_0x264f5d['shift']());}}}(a2_0x35b8,0x5548f));Object[a2_0x233584(0x15b)](exports,a2_0x233584(0x136),{'value':!![]}),exports[a2_0x233584(0x166)]=void 0x0;function _typeof(_0x35c12c){'@babel/helpers - typeof';var _0x100b4e=a2_0x233584;return _typeof='function'==typeof Symbol&&_0x100b4e(0x165)==typeof Symbol['iterator']?function(_0x408d74){return typeof _0x408d74;}:function(_0x1070d2){var _0x3d42e9=_0x100b4e;return _0x1070d2&&_0x3d42e9(0x140)==typeof Symbol&&_0x1070d2[_0x3d42e9(0x149)]===Symbol&&_0x1070d2!==Symbol[_0x3d42e9(0x15e)]?_0x3d42e9(0x165):typeof _0x1070d2;},_typeof(_0x35c12c);}function _slicedToArray(_0x1d4dc4,_0x5887cf){return _arrayWithHoles(_0x1d4dc4)||_iterableToArrayLimit(_0x1d4dc4,_0x5887cf)||_unsupportedIterableToArray(_0x1d4dc4,_0x5887cf)||_nonIterableRest();}function _nonIterableRest(){var _0x694f79=a2_0x233584;throw new TypeError(_0x694f79(0x161));}function _unsupportedIterableToArray(_0x47f5db,_0x1980cf){var _0x213f12=a2_0x233584;if(_0x47f5db){if(_0x213f12(0x154)==typeof _0x47f5db)return _arrayLikeToArray(_0x47f5db,_0x1980cf);var _0x3138d2={}[_0x213f12(0x13b)][_0x213f12(0x14a)](_0x47f5db)['slice'](0x8,-0x1);return _0x213f12(0x13d)===_0x3138d2&&_0x47f5db[_0x213f12(0x149)]&&(_0x3138d2=_0x47f5db['constructor'][_0x213f12(0x143)]),_0x213f12(0x139)===_0x3138d2||_0x213f12(0x146)===_0x3138d2?Array[_0x213f12(0x151)](_0x47f5db):_0x213f12(0x159)===_0x3138d2||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/[_0x213f12(0x153)](_0x3138d2)?_arrayLikeToArray(_0x47f5db,_0x1980cf):void 0x0;}}function _arrayLikeToArray(_0xa8d048,_0x363ce9){var _0x24f882=a2_0x233584;(null==_0x363ce9||_0x363ce9>_0xa8d048[_0x24f882(0x138)])&&(_0x363ce9=_0xa8d048[_0x24f882(0x138)]);for(var _0x1d0098=0x0,_0x277fd2=Array(_0x363ce9);_0x1d0098<_0x363ce9;_0x1d0098++)_0x277fd2[_0x1d0098]=_0xa8d048[_0x1d0098];return _0x277fd2;}function _iterableToArrayLimit(_0x3fecc7,_0x27808b){var _0x26e878=a2_0x233584,_0x4e4e68=null==_0x3fecc7?null:_0x26e878(0x164)!=typeof Symbol&&_0x3fecc7[Symbol[_0x26e878(0x155)]]||_0x3fecc7[_0x26e878(0x144)];if(null!=_0x4e4e68){var _0x1169f6,_0x49fa5a,_0x351b45,_0xf85013,_0x21ef3a=[],_0x6c0bc=!0x0,_0x527deb=!0x1;try{if(_0x351b45=(_0x4e4e68=_0x4e4e68[_0x26e878(0x14a)](_0x3fecc7))[_0x26e878(0x145)],0x0===_0x27808b){if(Object(_0x4e4e68)!==_0x4e4e68)return;_0x6c0bc=!0x1;}else{for(;!(_0x6c0bc=(_0x1169f6=_0x351b45[_0x26e878(0x14a)](_0x4e4e68))['done'])&&(_0x21ef3a['push'](_0x1169f6[_0x26e878(0x13e)]),_0x21ef3a['length']!==_0x27808b);_0x6c0bc=!0x0);}}catch(_0x27c09f){_0x527deb=!0x0,_0x49fa5a=_0x27c09f;}finally{try{if(!_0x6c0bc&&null!=_0x4e4e68[_0x26e878(0x156)]&&(_0xf85013=_0x4e4e68[_0x26e878(0x156)](),Object(_0xf85013)!==_0xf85013))return;}finally{if(_0x527deb)throw _0x49fa5a;}}return _0x21ef3a;}}function _arrayWithHoles(_0x19da86){if(Array['isArray'](_0x19da86))return _0x19da86;}function email(_0x5bb11d){var _0x1cb434=a2_0x233584;return/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/[_0x1cb434(0x153)](_0x5bb11d);}function mobile(_0x292545){var _0x5d98d2=a2_0x233584;return/^1([3589]\d|4[5-9]|6[1-2,4-7]|7[0-8])\d{8}$/[_0x5d98d2(0x153)](_0x292545);}function isValidPhoneNumber(_0x339fd9){var _0x3c9f1e=a2_0x233584;if(_0x339fd9['includes']('-')){var _0x3ac181=_0x339fd9[_0x3c9f1e(0x160)]('-'),_0x452b67=_slicedToArray(_0x3ac181,0x2),_0x539402=_0x452b67[0x0],_0x3b3a78=_0x452b67[0x1];if(_0x539402==='86')return/^\d{11}$/[_0x3c9f1e(0x153)](_0x3b3a78)&&_0x3b3a78[_0x3c9f1e(0x148)]('1');else return _0x539402==='852'?/^\d{8}$/['test'](_0x3b3a78)&&['5','6','9','8'][_0x3c9f1e(0x142)](_0x3b3a78['charAt'](0x0)):/^\d+$/['test'](_0x3b3a78);}else return/^\d+$/['test'](_0x339fd9);}function url(_0x265733){var _0x18551c=a2_0x233584;return/^((https|http|ftp|rtsp|mms):\/\/)(([0-9a-zA-Z_!~*'().&=+$%-]+: )?[0-9a-zA-Z_!~*'().&=+$%-]+@)?(([0-9]{1,3}.){3}[0-9]{1,3}|([0-9a-zA-Z_!~*'()-]+.)*([0-9a-zA-Z][0-9a-zA-Z-]{0,61})?[0-9a-zA-Z].[a-zA-Z]{2,6})(:[0-9]{1,4})?((\/?)|(\/[0-9a-zA-Z_!~*'().;?:@&=+$,%#-]+)+\/?)$/[_0x18551c(0x153)](_0x265733);}function date(_0x423eef){var _0x3c8d9e=a2_0x233584;if(!_0x423eef)return![];if(number(_0x423eef))_0x423eef=+_0x423eef;return!/Invalid|NaN/[_0x3c8d9e(0x153)](new Date(_0x423eef)['toString']());}function dateISO(_0x4cad56){var _0x2ead28=a2_0x233584;return/^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/[_0x2ead28(0x153)](_0x4cad56);}function isNumber(_0x54435c){var _0x16922f=a2_0x233584;return/^[\+-]?(\d+\.?\d*|\.\d+|\d\.\d+e\+\d+)$/[_0x16922f(0x153)](_0x54435c);}function isString(_0x43b00c){var _0x40b08b=a2_0x233584;return typeof _0x43b00c===_0x40b08b(0x154);}function digits(_0x8afaca){var _0x534d06=a2_0x233584;return/^\d+$/[_0x534d06(0x153)](_0x8afaca);}function idCard(_0x3dade3){var _0x2aeb00=a2_0x233584;return/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/[_0x2aeb00(0x153)](_0x3dade3);}function carNo(_0x23ea77){var _0x39a63a=a2_0x233584,_0x269c07=/^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}(([0-9]{5}[DF]$)|([DF][A-HJ-NP-Z0-9][0-9]{4}$))/,_0x170e27=/^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳]{1}$/;if(_0x23ea77['length']===0x7)return _0x170e27[_0x39a63a(0x153)](_0x23ea77);if(_0x23ea77[_0x39a63a(0x138)]===0x8)return _0x269c07[_0x39a63a(0x153)](_0x23ea77);return![];}function amount(_0x7fb80){return/^[1-9]\d*(,\d{3})*(\.\d{1,2})?$|^0\.\d{1,2}$/['test'](_0x7fb80);}function chinese(_0x2f82ba){var _0x4309cc=/^[\u4e00-\u9fa5]+$/gi;return _0x4309cc['test'](_0x2f82ba);}function letter(_0x2cf4bc){return/^[a-zA-Z]*$/['test'](_0x2cf4bc);}function enOrNum(_0x35ecc9){var _0x5e3fe0=a2_0x233584,_0x97f535=/^[0-9a-zA-Z]*$/g;return _0x97f535[_0x5e3fe0(0x153)](_0x35ecc9);}function contains(_0x2fdc0a,_0x517e3b){var _0x1139e1=a2_0x233584;return _0x2fdc0a[_0x1139e1(0x14b)](_0x517e3b)>=0x0;}function range(_0xdefcc2,_0xd588de){return _0xdefcc2>=_0xd588de[0x0]&&_0xdefcc2<=_0xd588de[0x1];}function rangeLength(_0x4a972d,_0x18703f){var _0x401524=a2_0x233584;return _0x4a972d[_0x401524(0x138)]>=_0x18703f[0x0]&&_0x4a972d[_0x401524(0x138)]<=_0x18703f[0x1];}function landline(_0x418087){var _0x5d2489=a2_0x233584,_0x5de110=/^\d{3,4}-\d{7,8}(-\d{3,4})?$/;return _0x5de110[_0x5d2489(0x153)](_0x418087);}function empty(_0x157d7b){var _0x1b1a55=a2_0x233584;switch(_typeof(_0x157d7b)){case _0x1b1a55(0x164):return!![];case _0x1b1a55(0x154):if(_0x157d7b[_0x1b1a55(0x15a)](/(^[ \t\n\r]*)|([ \t\n\r]*$)/g,'')[_0x1b1a55(0x138)]==0x0)return!![];break;case'boolean':if(!_0x157d7b)return!![];break;case'number':if(_0x157d7b===0x0||isNaN(_0x157d7b))return!![];break;case _0x1b1a55(0x13c):if(_0x157d7b===null||_0x157d7b[_0x1b1a55(0x138)]===0x0)return!![];for(var _0x1acc56 in _0x157d7b){return![];}return!![];}return![];}function jsonString(_0x170c56){var _0x1825f6=a2_0x233584;if(typeof _0x170c56===_0x1825f6(0x154))try{var _0x47e297=JSON[_0x1825f6(0x141)](_0x170c56);if(_typeof(_0x47e297)===_0x1825f6(0x13c)&&_0x47e297)return!![];return![];}catch(_0x17ac81){return![];}return![];}function array(_0x3e7788){var _0x4def4f=a2_0x233584;if(typeof Array[_0x4def4f(0x152)]===_0x4def4f(0x140))return Array[_0x4def4f(0x152)](_0x3e7788);return Object['prototype'][_0x4def4f(0x13b)]['call'](_0x3e7788)==='[object\x20Array]';}function object(_0x74bc98){var _0xcf4296=a2_0x233584;return Object[_0xcf4296(0x15e)][_0xcf4296(0x13b)][_0xcf4296(0x14a)](_0x74bc98)===_0xcf4296(0x15c);}function code(_0x25f0b2){var _0x18072f=a2_0x233584,_0x2142fb=arguments[_0x18072f(0x138)]>0x1&&arguments[0x1]!==undefined?arguments[0x1]:0x6;return new RegExp(_0x18072f(0x14c)['concat'](_0x2142fb,'}$'))[_0x18072f(0x153)](_0x25f0b2);}function func(_0x337da3){var _0x5dc724=a2_0x233584;return typeof _0x337da3===_0x5dc724(0x140);}function promise(_0x3b1818){return object(_0x3b1818)&&func(_0x3b1818['then'])&&func(_0x3b1818['catch']);}function image(_0x581658){var _0x1aee02=a2_0x233584,_0x4db5b7=_0x581658[_0x1aee02(0x160)]('?')[0x0],_0x49d786=/\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg)/i;return _0x49d786[_0x1aee02(0x153)](_0x4db5b7);}function video(_0xdd9e01){var _0xbd4d9e=a2_0x233584,_0x3a81bc=/\.(mp4|mpg|mpeg|dat|asf|avi|rm|rmvb|mov|wmv|flv|mkv|m3u8)/i;return _0x3a81bc[_0xbd4d9e(0x153)](_0xdd9e01);}function regExp(_0x4b604e){var _0x3c0754=a2_0x233584;return _0x4b604e&&Object[_0x3c0754(0x15e)]['toString'][_0x3c0754(0x14a)](_0x4b604e)===_0x3c0754(0x15f);}function isNumeric(_0x1d506b){var _0x5604a5=a2_0x233584,_0x139841=arguments[_0x5604a5(0x138)]>0x1&&arguments[0x1]!==undefined?arguments[0x1]:0x0;if(typeof _0x1d506b===_0x5604a5(0x14f))_0x1d506b=_0x1d506b[_0x5604a5(0x13b)]();if(typeof _0x1d506b!==_0x5604a5(0x154))return![];switch(_0x139841){case 0x1:return/^\d+(\.\d+)?$/[_0x5604a5(0x153)](_0x1d506b);case 0x2:return/^-\d+(\.\d+)?$/[_0x5604a5(0x153)](_0x1d506b);case 0x3:return/^-?\d+$/[_0x5604a5(0x153)](_0x1d506b);case 0x4:return/^\d+$/[_0x5604a5(0x153)](_0x1d506b);case 0x5:return/^-\d+$/[_0x5604a5(0x153)](_0x1d506b);default:return/^-?\d*\.?\d*$/[_0x5604a5(0x153)](_0x1d506b)&&!_0x1d506b['startsWith']('.')&&!_0x1d506b['includes']('--');}}var _default=exports[a2_0x233584(0x166)]={'isNumeric':isNumeric,'email':email,'mobile':mobile,'url':url,'date':date,'dateISO':dateISO,'isNumber':isNumber,'digits':digits,'idCard':idCard,'carNo':carNo,'amount':amount,'chinese':chinese,'letter':letter,'enOrNum':enOrNum,'contains':contains,'range':range,'rangeLength':rangeLength,'empty':empty,'jsonString':jsonString,'landline':landline,'object':object,'array':array,'code':code,'func':func,'promise':promise,'video':video,'image':image,'regExp':regExp,'isString':isString,'isValidPhoneNumber':isValidPhoneNumber};function a2_0x35b8(){var _0x1b4f02=['Map','4905eiODEh','toString','object','Object','value','54HSvQlu','function','parse','includes','name','@@iterator','next','Set','574568iUVdOt','startsWith','constructor','call','indexOf','^\x5cd{','172AEqaNm','4829dHThTl','number','1240506OWQGei','from','isArray','test','string','iterator','return','102557eXIMOg','26484StZqKs','Arguments','replace','defineProperty','[object\x20Object]','7572jmymXb','prototype','[object\x20RegExp]','split','Invalid\x20attempt\x20to\x20destructure\x20non-iterable\x20instance.\x0aIn\x20order\x20to\x20be\x20iterable,\x20non-array\x20objects\x20must\x20have\x20a\x20[Symbol.iterator]()\x20method.','60sMfoKZ','825gpzeQV','undefined','symbol','default','__esModule','3809750vrIehT','length'];a2_0x35b8=function(){return _0x1b4f02;};return a2_0x35b8();}
package/dist/utils.js ADDED
@@ -0,0 +1 @@
1
+ 'use strict';var a3_0x2810e7=a3_0x30a2;(function(_0x1e7050,_0x356069){var _0x42d489=a3_0x30a2,_0x3b80a1=_0x1e7050();while(!![]){try{var _0x30ca78=-parseInt(_0x42d489(0xda))/0x1*(-parseInt(_0x42d489(0xce))/0x2)+parseInt(_0x42d489(0xe1))/0x3*(-parseInt(_0x42d489(0xbe))/0x4)+-parseInt(_0x42d489(0xd4))/0x5*(parseInt(_0x42d489(0xc1))/0x6)+-parseInt(_0x42d489(0xa8))/0x7+parseInt(_0x42d489(0xac))/0x8+-parseInt(_0x42d489(0xd3))/0x9*(-parseInt(_0x42d489(0xb9))/0xa)+parseInt(_0x42d489(0xbb))/0xb*(parseInt(_0x42d489(0x9e))/0xc);if(_0x30ca78===_0x356069)break;else _0x3b80a1['push'](_0x3b80a1['shift']());}catch(_0x39a125){_0x3b80a1['push'](_0x3b80a1['shift']());}}}(a3_0x4303,0xaba71));Object['defineProperty'](exports,a3_0x2810e7(0xb7),{'value':!![]}),exports[a3_0x2810e7(0xa2)]=void 0x0;function _createForOfIteratorHelper(_0x45c0e5,_0x5c906a){var _0x21eafb=a3_0x2810e7,_0x52b5cb=_0x21eafb(0xca)!=typeof Symbol&&_0x45c0e5[Symbol[_0x21eafb(0xbd)]]||_0x45c0e5['@@iterator'];if(!_0x52b5cb){if(Array['isArray'](_0x45c0e5)||(_0x52b5cb=_unsupportedIterableToArray(_0x45c0e5))||_0x5c906a&&_0x45c0e5&&_0x21eafb(0xde)==typeof _0x45c0e5[_0x21eafb(0xcf)]){_0x52b5cb&&(_0x45c0e5=_0x52b5cb);var _0x48751b=0x0,_0xf21264=function _0x4c54b3(){};return{'s':_0xf21264,'n':function _0x1b8827(){var _0x5d322a=_0x21eafb;return _0x48751b>=_0x45c0e5[_0x5d322a(0xcf)]?{'done':!0x0}:{'done':!0x1,'value':_0x45c0e5[_0x48751b++]};},'e':function _0x51c1f2(_0x39daee){throw _0x39daee;},'f':_0xf21264};}throw new TypeError(_0x21eafb(0xcc));}var _0x38303d,_0xdaa67e=!0x0,_0x593728=!0x1;return{'s':function _0x45bac4(){var _0x9621aa=_0x21eafb;_0x52b5cb=_0x52b5cb[_0x9621aa(0xa3)](_0x45c0e5);},'n':function _0x5dd53c(){var _0x2c9fa1=_0x21eafb,_0x434943=_0x52b5cb[_0x2c9fa1(0xc8)]();return _0xdaa67e=_0x434943['done'],_0x434943;},'e':function _0x5986b5(_0xb7592d){_0x593728=!0x0,_0x38303d=_0xb7592d;},'f':function _0x30bed2(){var _0x26a24b=_0x21eafb;try{_0xdaa67e||null==_0x52b5cb[_0x26a24b(0xc9)]||_0x52b5cb[_0x26a24b(0xc9)]();}finally{if(_0x593728)throw _0x38303d;}}};}function _typeof(_0x3645cc){'@babel/helpers - typeof';var _0x12a3dd=a3_0x2810e7;return _typeof=_0x12a3dd(0xc0)==typeof Symbol&&_0x12a3dd(0xe7)==typeof Symbol['iterator']?function(_0x87cc8c){return typeof _0x87cc8c;}:function(_0x1289c9){var _0x505e18=_0x12a3dd;return _0x1289c9&&_0x505e18(0xc0)==typeof Symbol&&_0x1289c9[_0x505e18(0xdd)]===Symbol&&_0x1289c9!==Symbol[_0x505e18(0xc4)]?_0x505e18(0xe7):typeof _0x1289c9;},_typeof(_0x3645cc);}function _slicedToArray(_0x4f0ec7,_0x2166f5){return _arrayWithHoles(_0x4f0ec7)||_iterableToArrayLimit(_0x4f0ec7,_0x2166f5)||_unsupportedIterableToArray(_0x4f0ec7,_0x2166f5)||_nonIterableRest();}function _nonIterableRest(){throw new TypeError('Invalid\x20attempt\x20to\x20destructure\x20non-iterable\x20instance.\x0aIn\x20order\x20to\x20be\x20iterable,\x20non-array\x20objects\x20must\x20have\x20a\x20[Symbol.iterator]()\x20method.');}function _unsupportedIterableToArray(_0x2dabb5,_0xcb0c11){var _0x2f0065=a3_0x2810e7;if(_0x2dabb5){if(_0x2f0065(0x9f)==typeof _0x2dabb5)return _arrayLikeToArray(_0x2dabb5,_0xcb0c11);var _0x562dc9={}[_0x2f0065(0xaa)][_0x2f0065(0xa3)](_0x2dabb5)[_0x2f0065(0xb6)](0x8,-0x1);return _0x2f0065(0xcd)===_0x562dc9&&_0x2dabb5[_0x2f0065(0xdd)]&&(_0x562dc9=_0x2dabb5[_0x2f0065(0xdd)][_0x2f0065(0xb0)]),_0x2f0065(0xc3)===_0x562dc9||_0x2f0065(0xa9)===_0x562dc9?Array[_0x2f0065(0xc2)](_0x2dabb5):_0x2f0065(0xb4)===_0x562dc9||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/[_0x2f0065(0xd0)](_0x562dc9)?_arrayLikeToArray(_0x2dabb5,_0xcb0c11):void 0x0;}}function _arrayLikeToArray(_0x2e4de7,_0x35970b){var _0x19dd88=a3_0x2810e7;(null==_0x35970b||_0x35970b>_0x2e4de7[_0x19dd88(0xcf)])&&(_0x35970b=_0x2e4de7['length']);for(var _0x1227bb=0x0,_0x172bc4=Array(_0x35970b);_0x1227bb<_0x35970b;_0x1227bb++)_0x172bc4[_0x1227bb]=_0x2e4de7[_0x1227bb];return _0x172bc4;}function _iterableToArrayLimit(_0x2ada5f,_0x3a536a){var _0x13ee51=a3_0x2810e7,_0x4881a7=null==_0x2ada5f?null:'undefined'!=typeof Symbol&&_0x2ada5f[Symbol['iterator']]||_0x2ada5f[_0x13ee51(0xe6)];if(null!=_0x4881a7){var _0x5880e0,_0x40ae05,_0xea6ebf,_0x2ed12c,_0x4c746e=[],_0x4b2022=!0x0,_0x4842dd=!0x1;try{if(_0xea6ebf=(_0x4881a7=_0x4881a7[_0x13ee51(0xa3)](_0x2ada5f))[_0x13ee51(0xc8)],0x0===_0x3a536a){if(Object(_0x4881a7)!==_0x4881a7)return;_0x4b2022=!0x1;}else{for(;!(_0x4b2022=(_0x5880e0=_0xea6ebf['call'](_0x4881a7))[_0x13ee51(0xbf)])&&(_0x4c746e['push'](_0x5880e0[_0x13ee51(0xe4)]),_0x4c746e[_0x13ee51(0xcf)]!==_0x3a536a);_0x4b2022=!0x0);}}catch(_0x2d95e3){_0x4842dd=!0x0,_0x40ae05=_0x2d95e3;}finally{try{if(!_0x4b2022&&null!=_0x4881a7['return']&&(_0x2ed12c=_0x4881a7[_0x13ee51(0xc9)](),Object(_0x2ed12c)!==_0x2ed12c))return;}finally{if(_0x4842dd)throw _0x40ae05;}}return _0x4c746e;}}function _arrayWithHoles(_0x264d32){var _0x34771d=a3_0x2810e7;if(Array[_0x34771d(0xa5)](_0x264d32))return _0x264d32;}function fmtNum(_0x347c5f){var _0x9ce572=a3_0x2810e7;if(_0x347c5f==0x0)return'0';if(!_0x347c5f)return'';var _0x1e56ee=typeof _0x347c5f===_0x9ce572(0x9f)?parseFloat(_0x347c5f):_0x347c5f;if(isNaN(_0x1e56ee))return'';return _0x1e56ee[_0x9ce572(0xdf)]('en-US',{'minimumFractionDigits':0x0,'maximumFractionDigits':0x2});}function splitName(_0x67b120){var _0x479f02=a3_0x2810e7,_0x1dc759=arguments[_0x479f02(0xcf)]>0x1&&arguments[0x1]!==undefined?arguments[0x1]:![],_0x1d06d5={'surname':'','givenName':''};if(_0x1dc759){var _0x35ab88=_0x67b120[_0x479f02(0xdb)](',')?_0x67b120[_0x479f02(0xd6)](','):_0x67b120[_0x479f02(0xd6)](/\s+/);_0x35ab88[_0x479f02(0xcf)]>=0x2&&(_0x1d06d5['surname']=_0x35ab88[0x0][_0x479f02(0xd1)](),_0x1d06d5['givenName']=_0x35ab88[0x1]['trim']());}else{var _0x29191f=['欧阳','太史','端木','上官','司马','东方','独孤','南宫','万俟','闻人','夏侯','诸葛','尉迟','公羊','赫连','澹台','皇甫','宗政','濮阳','公冶','太叔','申屠','公孙','慕容','仲孙','钟离','长孙','宇文','司徒','鲜于','司空','闾丘','子车','亓官','司寇','巫马','公西','颛孙','壤驷','公良','漆雕','乐正','宰父','谷梁','拓跋','夹谷','轩辕','令狐','段干','百里','呼延','东郭','南门','羊舌','微生','公户','公玉','公仪','梁丘','公仲','公上','公门','公山','公坚','左丘','公伯','西门','公祖','第五','公乘','贯丘','公皙','南荣','东里','东宫','仲长','子书','子桑','即墨','达奚','褚师','吴铭','歐陽','太史','端木','上官','司馬','東方','獨孤','南宮','萬俟','聞人','夏侯','諸葛','尉遲','公羊','赫連','澹臺','皇甫','宗政','濮陽','公冶','太叔','申屠','公孫','慕容','仲孫','鐘離','長孫','宇文','司徒','鮮於','司空','閭丘','子車','亓官','司寇','巫馬','公西','顓孫','壤駟','公良','漆雕','樂正','宰父','穀梁','拓跋','夾谷','軒轅','令狐','段幹','百里','呼延','東郭','南門','羊舌','微生','公戶','公玉','公儀','梁丘','公仲','公上','公門','公山','公堅','左丘','公伯','西門','公祖','第五','公乘','貫丘','公皙','南榮','東里','東宮','仲長','子書','子桑','即墨','達奚','褚師','吳銘'];for(var _0x4888d9=0x0;_0x4888d9<_0x29191f[_0x479f02(0xcf)];_0x4888d9++){var _0x127073=_0x29191f[_0x4888d9];if(_0x67b120[_0x479f02(0xaf)](_0x127073))return _0x1d06d5['surname']=_0x127073,_0x1d06d5['givenName']=_0x67b120[_0x479f02(0xb3)](_0x127073['length'])['trim'](),_0x1d06d5;}var _0x881755=_0x67b120[_0x479f02(0xd6)]('\x20');if(_0x881755['length']===0x1){var _0x118013=_0x67b120[_0x479f02(0xa4)](/[\u4e00-\u9fa5]/);_0x1d06d5[_0x479f02(0xe9)]=_0x118013?_0x118013[0x0]:'',_0x1d06d5['givenName']=_0x67b120[_0x479f02(0xe8)](_0x1d06d5[_0x479f02(0xe9)],'')['trim']();}else _0x1d06d5[_0x479f02(0xe9)]=_0x881755[0x0],_0x1d06d5[_0x479f02(0xd9)]=_0x881755[_0x479f02(0xb6)](0x1)['join']('\x20');}return _0x1d06d5;}function modifyKeys(_0x2f5906){var _0x11b7a5=a3_0x2810e7,_0x55a48d=arguments['length']>0x1&&arguments[0x1]!==undefined?arguments[0x1]:{'strCode':_0x11b7a5(0xb5),'strFjbh':_0x11b7a5(0xa1),'strGuid':'value','strValue':_0x11b7a5(0xab)};if(!_0x2f5906[_0x11b7a5(0xcf)]||_0x2f5906===null)return[];var _0x3d565b=_0x2f5906[_0x11b7a5(0xc7)](function(_0x4fc50c){var _0x553567={};for(var _0x211349 in _0x4fc50c){_0x55a48d['hasOwnProperty'](_0x211349)?_0x553567[_0x55a48d[_0x211349]]=_0x4fc50c[_0x211349]:_0x553567[_0x211349]=_0x4fc50c[_0x211349];}return _0x553567;});return _0x3d565b;}function sliceArray(_0x42283c,_0x1c7879,_0x711fc6){var _0x4eea2f=a3_0x2810e7;if(_0x1c7879<=0x0)return console['error'](_0x4eea2f(0xa6)),[];return _0x711fc6?_0x42283c[_0x4eea2f(0xb6)](0x0,_0x1c7879):_0x42283c[_0x4eea2f(0xb6)](-_0x1c7879);}function findDataByData(_0x5b0b0e,_0x39a7c4,_0x53c535){var _0x26ff4b=a3_0x2810e7,_0x179636=_0x5b0b0e[_0x26ff4b(0xcb)](function(_0x3a917d){return _0x3a917d[_0x53c535]===_0x39a7c4;});return _0x179636||null;}function splitArray(_0x574124,_0x25773a){var _0x32d21e=a3_0x2810e7,_0x589dfe=[];for(var _0x37bdf9=0x0;_0x37bdf9<_0x574124['length'];_0x37bdf9+=_0x25773a){_0x589dfe[_0x32d21e(0xe2)](_0x574124['slice'](_0x37bdf9,_0x37bdf9+_0x25773a));}return _0x589dfe;}function getProxyType(_0x288b33){var _0x4a74f6=a3_0x2810e7;return Object[_0x4a74f6(0xc4)][_0x4a74f6(0xaa)][_0x4a74f6(0xa3)](_0x288b33)['slice'](0x8,-0x1);}var timeout=null;function debounce(_0x5f388f){var _0x41c48d=a3_0x2810e7,_0x3188e9=arguments['length']>0x1&&arguments[0x1]!==undefined?arguments[0x1]:0x1f4,_0x518679=arguments[_0x41c48d(0xcf)]>0x2&&arguments[0x2]!==undefined?arguments[0x2]:![];if(timeout!==null)clearTimeout(timeout);if(_0x518679){var _0x1a7c17=!timeout;timeout=setTimeout(function(){timeout=null;},_0x3188e9);if(_0x1a7c17)typeof _0x5f388f==='function'&&_0x5f388f();}else timeout=setTimeout(function(){var _0x45ee89=_0x41c48d;typeof _0x5f388f===_0x45ee89(0xc0)&&_0x5f388f();},_0x3188e9);}function matchKeyValueInArray(_0x397afe,_0x30a9b6,_0x2117b9){for(var _0x5a77bb=0x0;_0x5a77bb<_0x397afe['length'];_0x5a77bb++){if(_0x397afe[_0x5a77bb][_0x30a9b6]===_0x2117b9)return!![];}return![];}function urlEncode(){var _0x381a66=a3_0x2810e7,_0x4b69c5=arguments[_0x381a66(0xcf)]>0x0&&arguments[0x0]!==undefined?arguments[0x0]:{},_0x329556=[],_0x1c0ece=function _0x5bc12d(_0x4033e4){var _0x1d44e1=_0x381a66,_0x5012b7=_0x4b69c5[_0x4033e4];if(!_0x5012b7)return 0x1;isArray(_0x5012b7)?_0x5012b7[_0x1d44e1(0xba)](function(_0x4a27a1){var _0x4f2b85=_0x1d44e1;_0x329556[_0x4f2b85(0xe2)](_0x4033e4+'='+_0x4a27a1);}):_0x329556['push'](_0x4033e4+'='+_0x5012b7);};for(var _0x2bdab4 in _0x4b69c5){if(_0x1c0ece(_0x2bdab4))continue;}return _0x329556[_0x381a66(0xd5)]('&');}function compareDates(_0x4c6c51,_0xac33fc){var _0x59e1bd=a3_0x2810e7;_0x4c6c51=new Date(_0x4c6c51);!_0xac33fc?_0xac33fc=new Date():_0xac33fc=new Date(_0xac33fc);_0x4c6c51[_0x59e1bd(0xae)](0x0,0x0,0x0,0x0),_0xac33fc[_0x59e1bd(0xae)](0x0,0x0,0x0,0x0);var _0x21fd88=_0x4c6c51[_0x59e1bd(0xe5)](),_0xa2e85=_0xac33fc['getTime']();if(_0x21fd88<_0xa2e85)return-0x1;else return _0x21fd88>_0xa2e85?0x1:0x0;}function getDaysBetween(_0x4c9c0a,_0x5d8708){var _0x5170ea=a3_0x2810e7,_0x2d4c0b=new Date(_0x4c9c0a),_0x349bed=new Date(_0x5d8708),_0x588036=Math[_0x5170ea(0xdc)](_0x2d4c0b[_0x5170ea(0xe5)]()-_0x349bed[_0x5170ea(0xe5)]()),_0x9f5ca5=Math[_0x5170ea(0xe0)](_0x588036/(0x3e8*0x3c*0x3c*0x18));return _0x9f5ca5+0x1;}function chineseNumeral(_0x69348){var _0x5198c1=a3_0x2810e7,_0x1f9056=['零','壹','贰','叁','肆','伍','陆','柒','捌','玖'],_0x382d9b=['','拾','佰','仟'],_0x4f810c=['','万','亿','兆'],_0x20eb21=Math[_0x5198c1(0xe0)](_0x69348),_0x278f5f=Math[_0x5198c1(0xbc)]((_0x69348-_0x20eb21)*0x64),_0x46ac29='';for(var _0x171305=0x0;_0x20eb21>0x0;_0x171305++){var _0x9e977d='',_0x2ca6d7=_0x20eb21%0x2710;_0x20eb21=Math[_0x5198c1(0xe0)](_0x20eb21/0x2710);for(var _0x271298=0x0;_0x2ca6d7>0x0;_0x271298++){var _0x35d64e=_0x2ca6d7%0xa;_0x9e977d=(_0x35d64e?_0x1f9056[_0x35d64e]+_0x382d9b[_0x271298]:'')+_0x9e977d,_0x2ca6d7=Math[_0x5198c1(0xe0)](_0x2ca6d7/0xa);}_0x46ac29=_0x9e977d+(_0x9e977d?_0x4f810c[_0x171305]:_0x4f810c[_0x171305]&&!_0x46ac29[_0x5198c1(0xdb)]('零')?'零':'')+_0x46ac29;}_0x46ac29+=_0x46ac29?'元':'零元';if(_0x278f5f>0x0){var _0x37d77f=Math[_0x5198c1(0xe0)](_0x278f5f/0xa),_0x7ac5f9=_0x278f5f%0xa;_0x46ac29+=(_0x37d77f?_0x1f9056[_0x37d77f]+'角':'')+(_0x7ac5f9?_0x1f9056[_0x7ac5f9]+'分':'');}else _0x46ac29+='整';return _0x46ac29['replace'](/零{2,}/g,'零')[_0x5198c1(0xe8)](/零元/,'元');}function a3_0x4303(){var _0x58361c=['1647052HeuMXn','done','function','58374fcNIkb','from','Map','prototype','padStart','getMonth','map','next','return','undefined','find','Invalid\x20attempt\x20to\x20iterate\x20non-iterable\x20instance.\x0aIn\x20order\x20to\x20be\x20iterable,\x20non-array\x20objects\x20must\x20have\x20a\x20[Symbol.iterator]()\x20method.','Object','6gYbdJv','length','test','trim','除数不能为0','1332027zIbSol','325nIWLAm','join','split','getDate','parse','givenName','44312TOHkom','includes','abs','constructor','number','toLocaleString','floor','3DuAsqw','push','concat','value','getTime','@@iterator','symbol','replace','surname','420744OKqqap','string','stringify','fjbh','default','call','match','isArray','Quantity\x20should\x20be\x20greater\x20than\x200.','setDate','6209728Zobcts','Set','toString','label','2215912FNkXYQ','hasOwnProperty','setHours','startsWith','name','无效的操作符,操作符应为1、2、3或4','getFullYear','substring','Arguments','code','slice','__esModule','object','20OMOpQI','forEach','605zzJTLV','round','iterator'];a3_0x4303=function(){return _0x58361c;};return a3_0x4303();}function getMonthDate(_0x2e57ff){var _0x38702a=a3_0x2810e7;(!_0x2e57ff||_0x2e57ff[_0x38702a(0xd1)]()==='')&&(_0x2e57ff=''[_0x38702a(0xe3)](new Date()['getFullYear'](),'-')['concat'](new Date()[_0x38702a(0xc6)]()+0x1));var _0x257e05=[],_0x22410b=_0x2e57ff[_0x38702a(0xd6)]('-')[_0x38702a(0xc7)](Number),_0xede26b=_slicedToArray(_0x22410b,0x2),_0x24f1b0=_0xede26b[0x0],_0x14ecff=_0xede26b[0x1],_0x334504=new Date(_0x24f1b0,_0x14ecff,0x0),_0x326bd6=_0x334504[_0x38702a(0xd7)]();for(var _0x55b2ee=0x1;_0x55b2ee<=_0x326bd6;_0x55b2ee++){var _0x482fb1=_0x55b2ee<0xa?'0'[_0x38702a(0xe3)](_0x55b2ee):''[_0x38702a(0xe3)](_0x55b2ee),_0xb5ca09=_0x14ecff<0xa?'0'[_0x38702a(0xe3)](_0x14ecff):''[_0x38702a(0xe3)](_0x14ecff);_0x257e05['push']({'date':''[_0x38702a(0xe3)](_0x24f1b0,'-')['concat'](_0xb5ca09,'-')[_0x38702a(0xe3)](_0x482fb1),'disable':!![]});}return _0x257e05;}function getToday(_0x32bb57){var _0x34417c=a3_0x2810e7,_0x2e0619=new Date(),_0x1b787f=String(_0x2e0619[_0x34417c(0xd7)]())[_0x34417c(0xc5)](0x2,'0'),_0x5c857f=String(_0x2e0619['getMonth']()+0x1)[_0x34417c(0xc5)](0x2,'0'),_0x2be5a3=_0x2e0619[_0x34417c(0xb2)]();return _0x2e0619=_0x2be5a3+'-'+_0x5c857f+'-'+_0x1b787f,_0x2e0619;}function resetObject(_0x46b325){var _0x4efa9b=a3_0x2810e7,_0x35b6e4=JSON[_0x4efa9b(0xd8)](JSON[_0x4efa9b(0xa0)](_0x46b325));for(var _0x2a6232 in _0x35b6e4){if(typeof _0x35b6e4[_0x2a6232]==='number')_0x35b6e4[_0x2a6232]=0x0;else{if(typeof _0x35b6e4[_0x2a6232]==='boolean')_0x35b6e4[_0x2a6232]=![];else{if(Array['isArray'](_0x35b6e4[_0x2a6232]))_0x35b6e4[_0x2a6232]=[];else _typeof(_0x35b6e4[_0x2a6232])===_0x4efa9b(0xb8)&&_0x35b6e4[_0x2a6232]!==null?resetObject(_0x35b6e4[_0x2a6232]):_0x35b6e4[_0x2a6232]='';}}}return _0x35b6e4;}function preciseOperation(_0x535533,_0x18ac56,_0x21a7f2){var _0x556ac5=a3_0x2810e7,_0x4237ca=arguments['length']>0x3&&arguments[0x3]!==undefined?arguments[0x3]:0xf4240;if(isNaN(_0x535533)||isNaN(_0x18ac56))return NaN;if(!isFinite(_0x535533)||!isFinite(_0x18ac56))return NaN;var _0xf1ea24=BigInt(Math[_0x556ac5(0xbc)](_0x535533*_0x4237ca)),_0x4ed15c=BigInt(Math[_0x556ac5(0xbc)](_0x18ac56*_0x4237ca)),_0x5d91c3;switch(_0x21a7f2){case 0x1:_0x5d91c3=_0xf1ea24+_0x4ed15c;break;case 0x2:_0x5d91c3=_0xf1ea24-_0x4ed15c;break;case 0x3:_0x5d91c3=_0xf1ea24*_0x4ed15c;break;case 0x4:if(_0x4ed15c===0x0n)throw new Error(_0x556ac5(0xd2));_0x5d91c3=_0xf1ea24/_0x4ed15c;break;default:throw new Error(_0x556ac5(0xb1));}return Number(_0x5d91c3)/_0x4237ca;}function preciseSum(_0x421813){var _0x5e8c12=a3_0x2810e7,_0xb8091=0x0,_0x381c97=_createForOfIteratorHelper(_0x421813),_0x569b36;try{for(_0x381c97['s']();!(_0x569b36=_0x381c97['n']())['done'];){var _0x52fefc=_0x569b36[_0x5e8c12(0xe4)],_0x411691=0x0;if(typeof _0x52fefc===_0x5e8c12(0x9f)){var _0x143612=parseFloat(_0x52fefc);!isNaN(_0x143612)&&(_0x411691=_0x143612);}else typeof _0x52fefc===_0x5e8c12(0xde)&&(_0x411691=_0x52fefc);_0xb8091=preciseOperation(_0xb8091,_0x411691,0x1);}}catch(_0xd7199f){_0x381c97['e'](_0xd7199f);}finally{_0x381c97['f']();}return _0xb8091;}function getRelativeDate(_0x4ea247){var _0x460d2a=a3_0x2810e7,_0x424ba8=arguments[_0x460d2a(0xcf)]>0x1&&arguments[0x1]!==undefined?arguments[0x1]:0x0,_0xdc5f4b=new Date(_0x4ea247);_0xdc5f4b[_0x460d2a(0xa7)](_0xdc5f4b[_0x460d2a(0xd7)]()+_0x424ba8);var _0x4b4678=_0xdc5f4b[_0x460d2a(0xb2)](),_0x2f2454=(_0xdc5f4b[_0x460d2a(0xc6)]()+0x1)[_0x460d2a(0xaa)]()[_0x460d2a(0xc5)](0x2,'0'),_0x5cbd1a=_0xdc5f4b[_0x460d2a(0xd7)]()['toString']()[_0x460d2a(0xc5)](0x2,'0');return''[_0x460d2a(0xe3)](_0x4b4678,'-')[_0x460d2a(0xe3)](_0x2f2454,'-')['concat'](_0x5cbd1a);}function a3_0x30a2(_0x20d56c,_0x46b8ea){var _0x430361=a3_0x4303();return a3_0x30a2=function(_0x30a259,_0x5289ae){_0x30a259=_0x30a259-0x9e;var _0x43081c=_0x430361[_0x30a259];return _0x43081c;},a3_0x30a2(_0x20d56c,_0x46b8ea);}function validateFields(_0x26a9dd,_0x21aa23){var _0x58e6a6=a3_0x2810e7,_0x21fce3=arguments['length']>0x2&&arguments[0x2]!==undefined?arguments[0x2]:'',_0x34e015=_createForOfIteratorHelper(_0x21aa23),_0x4b982d;try{for(_0x34e015['s']();!(_0x4b982d=_0x34e015['n']())[_0x58e6a6(0xbf)];){var _0x51519c=_0x4b982d[_0x58e6a6(0xe4)];if(_0x26a9dd[_0x51519c]===_0x21fce3)return!![];}}catch(_0x3bf250){_0x34e015['e'](_0x3bf250);}finally{_0x34e015['f']();}return![];}function mergeObjects(_0x305fab,_0x34774b){var _0xf19a5d=a3_0x2810e7;for(var _0x5b4ec8 in _0x305fab){_0x34774b[_0xf19a5d(0xad)](_0x5b4ec8)&&(_0x305fab[_0x5b4ec8]=_0x34774b[_0x5b4ec8]);}return _0x305fab;}var _default=exports['default']={'fmtNum':fmtNum,'splitName':splitName,'preciseSum':preciseSum,'modifyKeys':modifyKeys,'sliceArray':sliceArray,'findDataByData':findDataByData,'splitArray':splitArray,'getProxyType':getProxyType,'debounce':debounce,'matchKeyValueInArray':matchKeyValueInArray,'urlEncode':urlEncode,'compareDates':compareDates,'getDaysBetween':getDaysBetween,'chineseNumeral':chineseNumeral,'getMonthDate':getMonthDate,'getToday':getToday,'resetObject':resetObject,'preciseOperation':preciseOperation,'getRelativeDate':getRelativeDate,'validateFields':validateFields,'mergeObjects':mergeObjects};
package/package.json CHANGED
@@ -1,8 +1,11 @@
1
1
  {
2
2
  "name": "yunlin",
3
- "version": "1.0.20",
4
- "main": "src/index.js",
5
- "module": "src/index.js",
3
+ "version": "1.0.22",
4
+ "main": "dist/index.js",
5
+ "module": "dist/index.js",
6
+ "files": [
7
+ "dist"
8
+ ],
6
9
  "type": "module",
7
10
  "scripts": {
8
11
  "test": "echo \"Error: no test specified\" && exit 1",
@@ -19,4 +22,4 @@
19
22
  "@babel/preset-env": "^7.26.0",
20
23
  "javascript-obfuscator": "^4.1.1"
21
24
  }
22
- }
25
+ }
package/.babelrc DELETED
@@ -1,5 +0,0 @@
1
- {
2
- "presets": [
3
- "@babel/preset-env"
4
- ]
5
- }
package/src/func.js DELETED
@@ -1,272 +0,0 @@
1
- /**
2
- * 计价数据格式处理
3
- * @param {Object} valList 价格数据数组
4
- * @param {Object} hbfh 货币符号
5
- * @param {Object} title 自定义标题
6
- */
7
- function handleCosting(valList, hbfh = '¥', titles = {
8
- people: '人員費用',
9
- service: '附加服務',
10
- trip: '附加行程',
11
- other: '其他費用',
12
- reduction: '減免費用',
13
- totalprice: '總計',
14
- airtax: '機場稅',
15
- }, keys = {
16
- //键名对应 数据返回键名对应显示标题 与其他拓展
17
- adult: '成人',
18
- child: '兒童',
19
- childusebed: '兒童[占床]',
20
- infant: '嬰兒',
21
- half: '拼房',
22
- //其他拓展
23
- tip: '小費',
24
- elder: '長者減免',
25
- vip: '會員減免',
26
- promotion: '促銷',
27
- insure: '保險費用',
28
- coupon: '優惠券',
29
- point: '積分',
30
- tax: '稅金',
31
- viprecharge: '會員充值',
32
- r: '人',
33
- t: '天',
34
- }) {
35
- let list = []
36
- const rideIcon = ' * '
37
-
38
-
39
- //取出人员明细
40
- const peopleList = valList.filter(item => item.strLx == 'base')
41
- if (peopleList.length) {
42
- let val = {
43
- title: titles['people'],
44
- type: 'base',
45
- list: []
46
- }
47
- peopleList.map(item => {
48
- val.list.push({
49
- title: keys[item.strJgbm], //标题
50
- info: hbfh + item.fLsjUnit + rideIcon + item.nRs, //描述
51
- nRs: item.nRs, //人数
52
- unit: item.fLsjUnit, //单价
53
- cb: item.fJcbzlsjUnit, //成本
54
- type: 'base'
55
- })
56
- })
57
- list.push(val)
58
- }
59
-
60
- //附加服务
61
- const serviceList = valList.filter(item => item.strLx == 'service')
62
- if (serviceList.length) {
63
- let val = {
64
- title: titles['service'],
65
- type: 'service',
66
- list: []
67
- }
68
- serviceList.map(item => {
69
- val.list.push({
70
- title: item.name + `[${item.itemname}]`, //标题
71
- info: hbfh + item.unitprice + rideIcon + item.num, //描述
72
- nRs: item.num, //人数
73
- unit: item.unitprice, //单价
74
- cb: item.baseprice, //成本
75
- type: 'service'
76
- })
77
- })
78
- list.push(val)
79
- }
80
-
81
- //附加行程
82
- const tripList = valList.filter(item => item.strLx == 'trip')
83
- if (tripList.length) {
84
- let val = {
85
- title: titles['trip'],
86
- type: 'trip',
87
- list: []
88
- }
89
- tripList.map(item => {
90
- if (item.adultnum != '0') {
91
- val.list.push({
92
- title: item.name + `[${keys['adult']}]`, //成人
93
- info: hbfh + item.adultprice + rideIcon + item.adultnum, //描述
94
- nRs: item.adultnum, //人数
95
- unit: item.adultprice, //单价
96
- cb: item.baseadultprice, //成本
97
- type: 'trip'
98
- })
99
- }
100
- if (item.childnum != '0') {
101
- val.list.push({
102
- title: item.name + `[${keys['child']}]`, //儿童
103
- info: hbfh + item.childprice + rideIcon + item.childnum, //描述
104
- nRs: item.childnum, //人数
105
- unit: item.childprice, //单价
106
- cb: item.basechildprice, //成本
107
- type: 'trip'
108
- })
109
- }
110
- })
111
- list.push(val)
112
- }
113
-
114
- let reductionList = []
115
- //长者减免
116
- const elderList = valList.filter(item => item.strLx == 'elder')
117
- if (elderList.length) {
118
- elderList.map(item => {
119
- const parts = item.name.split("|") || [''];
120
- reductionList.push({
121
- title: keys['elder'] + `[${parts[0]}]`,
122
- info: hbfh + item.money, //描述
123
- unit: item.money, //单价
124
- cb: item.money, //成本
125
- type: 'elder'
126
- })
127
- })
128
- }
129
- //会员减免
130
- const vipList = valList.filter(item => item.strLx == 'vipdiscounted')
131
- if (vipList.length) {
132
- vipList.map(item => {
133
- reductionList.push({
134
- title: keys['vip'] + `[${item.name}]`,
135
- info: hbfh + item.money, //描述
136
- unit: item.money, //单价
137
- cb: item.money, //成本
138
- type: 'vip'
139
- })
140
- })
141
- }
142
- //促销
143
- const promotionList = valList.filter(item => item.strLx == 'promotion')
144
- if (promotionList.length) {
145
- promotionList.map(item => {
146
- reductionList.push({
147
- title: keys['promotion'],
148
- info: hbfh + item.money, //描述
149
- unit: item.money, //单价
150
- cb: item.money, //成本
151
- type: 'promotion'
152
- })
153
- })
154
- }
155
-
156
- //减免或促销费用
157
- if (reductionList.length) {
158
- list.push({
159
- title: titles['reduction'],
160
- type: 'reduction',
161
- list: reductionList
162
- })
163
- }
164
-
165
- //机场税
166
- const airtaxList = valList.filter(item => item.strLx == 'airtax')
167
- if (airtaxList.length) {
168
- let val = {
169
- title: titles['airtax'],
170
- type: 'airtax',
171
- list: []
172
- }
173
- airtaxList.map(item => {
174
- val.list.push({
175
- title: keys[item.rylx], //标题
176
- info: hbfh + item.unitprice + rideIcon + item.sl, //描述
177
- nRs: item.sl, //人数
178
- unit: item.unitprice, //单价
179
- cb: item.unitpricewb, //其他币种
180
- type: item.rylx
181
- })
182
- })
183
- list.push(val)
184
- }
185
-
186
- const listKey = ['base', 'service', 'trip', 'elder', 'vipdiscounted', 'promotion', 'airtax'] //数据格式参数
187
- //取出其他信息
188
- const otherList = valList.filter(item => !listKey.includes(item.strLx));
189
-
190
- let otherVal = {
191
- title: titles['other'],
192
- type: 'other',
193
- list: []
194
- }
195
-
196
- for (var i = 0; i < otherList.length; i++) {
197
- const item = otherList[i]
198
- //会员充值
199
- if (item.strLx == 'viprecharge') {
200
- otherVal.list.push({
201
- title: keys['viprecharge'] + `[${item.name}]`,
202
- info: hbfh + item.money,
203
- unit: item.money, //单价
204
- type: item.strLx
205
- })
206
- }
207
- //保险
208
- if (item.strLx == 'insure') {
209
- otherVal.list.push({
210
- title: keys['insure'] + `[${item.name}]`,
211
- info: hbfh + item.unit + rideIcon + item.users + keys['r'], //描述
212
- nRs: item.users, //人数
213
- unit: item.unit, //单价
214
- cb: item.unit, //成本
215
- type: 'insure'
216
- })
217
- }
218
- //优惠券-积分
219
- if (item.strLx == 'coupon' || item.strLx == 'point') {
220
- otherVal.list.push({
221
- title: keys[item.strLx],
222
- info: hbfh + item.money,
223
- unit: item.money, //单价
224
- type: item.strLx
225
- })
226
- }
227
- //小费
228
- if (item.strLx == 'tip') {
229
- otherVal.list.push({
230
- title: keys[item.strLx], //标题
231
- info: hbfh + item.tip + rideIcon + item.tipuser + keys['r'] + rideIcon + item.tipday +
232
- keys['t'], //描述
233
- nRs: item.tipuser, //人数
234
- count: item.tipday, //天数,数量等
235
- unit: item.tip, //单价
236
- type: item.strLx //类型
237
- })
238
- }
239
- //税
240
- if (item.strLx == 'tax') {
241
- otherVal.list.push({
242
- title: keys[item.strLx],
243
- info: hbfh + item.totaltax,
244
- unit: item.totaltax,
245
- type: item.strLx
246
- })
247
- }
248
- }
249
- if (otherVal.list.length) {
250
- list.push(otherVal)
251
- }
252
-
253
- const totalprice = valList.filter(item => item.strLx == 'totalprice')
254
- //总价(实付价格)
255
- if (totalprice.length) {
256
- list.push({
257
- title: titles['totalprice'],
258
- type: 'totalprice',
259
- list: [{
260
- title: titles['totalprice'],
261
- info: hbfh + totalprice[0].price
262
- }]
263
- })
264
- }
265
- return list
266
- }
267
-
268
-
269
-
270
- export default {
271
- handleCosting
272
- };
package/src/index.js DELETED
@@ -1,7 +0,0 @@
1
- import utils from './utils';
2
- import func from './func';
3
-
4
- export default {
5
- utils,
6
- func
7
- }
package/src/test.js DELETED
@@ -1,355 +0,0 @@
1
- /**
2
- * 验证电子邮箱格式
3
- */
4
- function email(value) {
5
- return /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/.test(value)
6
- }
7
-
8
- /**
9
- * 验证手机格式
10
- */
11
- function mobile(value) {
12
- return /^1([3589]\d|4[5-9]|6[1-2,4-7]|7[0-8])\d{8}$/.test(value)
13
- }
14
-
15
- /**
16
- * 验证手机格式
17
- * @param {Object} phoneNumber
18
- */
19
- function isValidPhoneNumber(phoneNumber) {
20
- // 检查电话号码是否包含 "-"
21
- if (phoneNumber.includes('-')) {
22
- // 分离区号和电话号码
23
- const [areaCode, number] = phoneNumber.split('-');
24
- // 根据区号判断号码格式
25
- if (areaCode === '86') {
26
- // 中国大陆手机号码格式验证
27
- // 11位数字,以1开头
28
- return /^\d{11}$/.test(number) && number.startsWith('1');
29
- } else if (areaCode === '852') {
30
- // 香港手机号码格式验证
31
- // 8位数字,以5、6或9开头
32
- return /^\d{8}$/.test(number) && ['5', '6', '9', '8'].includes(number.charAt(0));
33
- } else {
34
- // 对于未知的区号,只检查电话号码是否全部由数字组成
35
- return /^\d+$/.test(number);
36
- }
37
- } else {
38
- // 对于不包含 "-" 的电话号码,只检查是否全部由数字组成
39
- return /^\d+$/.test(phoneNumber);
40
- }
41
- }
42
-
43
-
44
-
45
- /**
46
- * 验证URL格式
47
- */
48
- function url(value) {
49
- return /^((https|http|ftp|rtsp|mms):\/\/)(([0-9a-zA-Z_!~*'().&=+$%-]+: )?[0-9a-zA-Z_!~*'().&=+$%-]+@)?(([0-9]{1,3}.){3}[0-9]{1,3}|([0-9a-zA-Z_!~*'()-]+.)*([0-9a-zA-Z][0-9a-zA-Z-]{0,61})?[0-9a-zA-Z].[a-zA-Z]{2,6})(:[0-9]{1,4})?((\/?)|(\/[0-9a-zA-Z_!~*'().;?:@&=+$,%#-]+)+\/?)$/
50
- .test(value)
51
- }
52
-
53
- /**
54
- * 验证日期格式
55
- */
56
- function date(value) {
57
- if (!value) return false
58
- // 判断是否数值或者字符串数值(意味着为时间戳),转为数值,否则new Date无法识别字符串时间戳
59
- if (number(value)) value = +value
60
- return !/Invalid|NaN/.test(new Date(value).toString())
61
- }
62
-
63
- /**
64
- * 验证ISO类型的日期格式
65
- */
66
- function dateISO(value) {
67
- return /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/.test(value)
68
- }
69
-
70
- /**
71
- * 验证十进制数字
72
- */
73
- function isNumber(value) {
74
- return /^[\+-]?(\d+\.?\d*|\.\d+|\d\.\d+e\+\d+)$/.test(value)
75
- }
76
-
77
- /**
78
- * 验证字符串
79
- */
80
- function isString(value) {
81
- return typeof value === 'string'
82
- }
83
-
84
- /**
85
- * 验证整数
86
- */
87
- function digits(value) {
88
- return /^\d+$/.test(value)
89
- }
90
-
91
- /**
92
- * 验证身份证号码
93
- */
94
- function idCard(value) {
95
- return /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/.test(
96
- value
97
- )
98
- }
99
-
100
-
101
-
102
- /**
103
- * 是否车牌号
104
- */
105
- function carNo(value) {
106
- // 新能源车牌
107
- const xreg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}(([0-9]{5}[DF]$)|([DF][A-HJ-NP-Z0-9][0-9]{4}$))/
108
- // 旧车牌
109
- const creg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳]{1}$/
110
- if (value.length === 7) {
111
- return creg.test(value)
112
- }
113
- if (value.length === 8) {
114
- return xreg.test(value)
115
- }
116
- return false
117
- }
118
-
119
- /**
120
- * 金额,只允许2位小数
121
- */
122
- function amount(value) {
123
- // 金额,只允许保留两位小数
124
- return /^[1-9]\d*(,\d{3})*(\.\d{1,2})?$|^0\.\d{1,2}$/.test(value)
125
- }
126
-
127
- /**
128
- * 中文
129
- */
130
- function chinese(value) {
131
- const reg = /^[\u4e00-\u9fa5]+$/gi
132
- return reg.test(value)
133
- }
134
-
135
- /**
136
- * 只能输入字母
137
- */
138
- function letter(value) {
139
- return /^[a-zA-Z]*$/.test(value)
140
- }
141
-
142
- /**
143
- * 只能是字母或者数字
144
- */
145
- function enOrNum(value) {
146
- // 英文或者数字
147
- const reg = /^[0-9a-zA-Z]*$/g
148
- return reg.test(value)
149
- }
150
-
151
- /**
152
- * 验证是否包含某个值
153
- */
154
- function contains(value, param) {
155
- return value.indexOf(param) >= 0
156
- }
157
-
158
- /**
159
- * 验证一个值范围[min, max]
160
- */
161
- function range(value, param) {
162
- return value >= param[0] && value <= param[1]
163
- }
164
-
165
- /**
166
- * 验证一个长度范围[min, max]
167
- */
168
- function rangeLength(value, param) {
169
- return value.length >= param[0] && value.length <= param[1]
170
- }
171
-
172
- /**
173
- * 是否固定电话
174
- */
175
- function landline(value) {
176
- const reg = /^\d{3,4}-\d{7,8}(-\d{3,4})?$/
177
- return reg.test(value)
178
- }
179
-
180
- /**
181
- * 判断是否为空
182
- */
183
- function empty(value) {
184
- switch (typeof value) {
185
- case 'undefined':
186
- return true
187
- case 'string':
188
- if (value.replace(/(^[ \t\n\r]*)|([ \t\n\r]*$)/g, '').length == 0) return true
189
- break
190
- case 'boolean':
191
- if (!value) return true
192
- break
193
- case 'number':
194
- if (value === 0 || isNaN(value)) return true
195
- break
196
- case 'object':
197
- if (value === null || value.length === 0) return true
198
- for (const i in value) {
199
- return false
200
- }
201
- return true
202
- }
203
- return false
204
- }
205
-
206
- /**
207
- * 是否json字符串
208
- */
209
- function jsonString(value) {
210
- if (typeof value === 'string') {
211
- try {
212
- const obj = JSON.parse(value)
213
- if (typeof obj === 'object' && obj) {
214
- return true
215
- }
216
- return false
217
- } catch (e) {
218
- return false
219
- }
220
- }
221
- return false
222
- }
223
-
224
- /**
225
- * 是否数组
226
- */
227
- function array(value) {
228
- if (typeof Array.isArray === 'function') {
229
- return Array.isArray(value)
230
- }
231
- return Object.prototype.toString.call(value) === '[object Array]'
232
- }
233
-
234
- /**
235
- * 是否对象
236
- */
237
- function object(value) {
238
- return Object.prototype.toString.call(value) === '[object Object]'
239
- }
240
-
241
- /**
242
- * 是否短信验证码
243
- */
244
- function code(value, len = 6) {
245
- return new RegExp(`^\\d{${len}}$`).test(value)
246
- }
247
-
248
- /**
249
- * 是否函数方法
250
- * @param {Object} value
251
- */
252
- function func(value) {
253
- return typeof value === 'function'
254
- }
255
-
256
- /**
257
- * 是否promise对象
258
- * @param {Object} value
259
- */
260
- function promise(value) {
261
- return object(value) && func(value.then) && func(value.catch)
262
- }
263
-
264
- /** 是否图片格式
265
- * @param {Object} value
266
- */
267
- function image(value) {
268
- const newValue = value.split('?')[0]
269
- const IMAGE_REGEXP = /\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg)/i
270
- return IMAGE_REGEXP.test(newValue)
271
- }
272
-
273
- /**
274
- * 是否视频格式
275
- * @param {Object} value
276
- */
277
- function video(value) {
278
- const VIDEO_REGEXP = /\.(mp4|mpg|mpeg|dat|asf|avi|rm|rmvb|mov|wmv|flv|mkv|m3u8)/i
279
- return VIDEO_REGEXP.test(value)
280
- }
281
-
282
- /**
283
- * 是否为正则对象
284
- * @param {Object}
285
- * @return {Boolean}
286
- */
287
- function regExp(o) {
288
- return o && Object.prototype.toString.call(o) === '[object RegExp]'
289
- }
290
-
291
- /**
292
- * 判断一个字符串或浮点数是否仅包含数字、减号和小数点
293
- * @param {string|number} str - 要检查的字符串或浮点数
294
- * @param {number} type - 类型 0: 可以输入金额 1: 只能输入正数 2: 只能输入负数 3: 只能输入整数 4: 只能输入正整数 5: 只能输入负整数
295
- * @returns {boolean} - 是否符合条件
296
- */
297
- function isNumeric(str, type = 0) {
298
- // 将数字转换为字符串
299
- if (typeof str === 'number') str = str.toString();
300
- // 如果不是字符串,返回 false
301
- if (typeof str !== 'string') return false;
302
- switch (type) {
303
- case 1:
304
- // 只能输入正数
305
- return /^\d+(\.\d+)?$/.test(str);
306
- case 2:
307
- // 只能输入负数
308
- return /^-\d+(\.\d+)?$/.test(str);
309
- case 3:
310
- // 只能输入整数(正数或负数)
311
- return /^-?\d+$/.test(str);
312
- case 4:
313
- // 只能输入正整数
314
- return /^\d+$/.test(str);
315
- case 5:
316
- // 只能输入负整数
317
- return /^-\d+$/.test(str);
318
- default:
319
- // 可以输入金额(正数或负数)
320
- return /^-?\d*\.?\d*$/.test(str) && !str.startsWith('.') && !str.includes('--');
321
- }
322
- }
323
-
324
- export default {
325
- isNumeric,
326
- email,
327
- mobile,
328
- url,
329
- date,
330
- dateISO,
331
- isNumber,
332
- digits,
333
- idCard,
334
- carNo,
335
- amount,
336
- chinese,
337
- letter,
338
- enOrNum,
339
- contains,
340
- range,
341
- rangeLength,
342
- empty,
343
- jsonString,
344
- landline,
345
- object,
346
- array,
347
- code,
348
- func,
349
- promise,
350
- video,
351
- image,
352
- regExp,
353
- isString,
354
- isValidPhoneNumber
355
- }
package/src/utils.js DELETED
@@ -1,545 +0,0 @@
1
-
2
-
3
- /**
4
- * 格式化数字,添加千分位分隔符。
5
- * 支持数字和字符串类型的数字输入。
6
- * 如果输入无效,返回空字符串。
7
- *
8
- * @param {number|string} num - 要格式化的数字或数字字符串。
9
- * @return {string} 格式化后的带千分位分隔符的字符串,或空字符串(如果输入无效)。
10
- */
11
- function fmtNum(num) {
12
- if (num == 0) return '0'
13
- if (!num) return ''
14
-
15
- // 尝试将输入转换为数字,如果输入是字符串则使用parseFloat进行转换
16
- let number = typeof num === 'string' ? parseFloat(num) : num;
17
- // 检查转换后的值是否为有效数字
18
- if (isNaN(number)) {
19
- // 如果转换失败,返回空字符串
20
- return '';
21
- }
22
- // 使用 toLocaleString 方法格式化数字,添加千分位分隔符
23
- // 设置国际化选项:使用美国英语格式,小数部分显示0至2位
24
- return number.toLocaleString('en-US', {
25
- minimumFractionDigits: 0,
26
- maximumFractionDigits: 2
27
- });
28
- }
29
-
30
- /**
31
- * 分割全名成姓和名
32
- * @param {string} fullName - 待处理的完整姓名
33
- * @param {boolean} [isEn=false] - 指示姓名是否为英文格式,默认为false表示中文姓名
34
- * @returns {object} 返回一个对象,包含姓(surname)和名(givenName)
35
- */
36
- function splitName(fullName, isEn = false) {
37
- // 初始化结果对象,用于存储姓和名
38
- let result = {
39
- surname: '', // 姓
40
- givenName: '' // 名
41
- };
42
- // 如果是英文姓名
43
- if (isEn) {
44
- // 英文姓名通常格式为 "SURNAME, GIVEN NAME(S)"
45
- // const parts = fullName.split(','); // 使用逗号分割姓名
46
- // 使用逗号分割姓名,如果没有逗号 以空格分隔
47
- const parts = fullName.includes(',') ? fullName.split(',') : fullName.split(/\s+/);
48
- if (parts.length >= 2) {
49
- // 移除前后空白字符并分配给姓和名
50
- result.surname = parts[0].trim(); // 第一部分为姓
51
- result.givenName = parts[1].trim(); // 第二部分为名
52
- }
53
- } else {
54
- // 定义中文复姓列表
55
- const surnames = [
56
- "欧阳", "太史", "端木", "上官", "司马", "东方", "独孤", "南宫", "万俟", "闻人",
57
- "夏侯", "诸葛", "尉迟", "公羊", "赫连", "澹台", "皇甫", "宗政", "濮阳", "公冶",
58
- "太叔", "申屠", "公孙", "慕容", "仲孙", "钟离", "长孙", "宇文", "司徒", "鲜于",
59
- "司空", "闾丘", "子车", "亓官", "司寇", "巫马", "公西", "颛孙", "壤驷", "公良",
60
- "漆雕", "乐正", "宰父", "谷梁", "拓跋", "夹谷", "轩辕", "令狐", "段干", "百里",
61
- "呼延", "东郭", "南门", "羊舌", "微生", "公户", "公玉", "公仪", "梁丘", "公仲",
62
- "公上", "公门", "公山", "公坚", "左丘", "公伯", "西门", "公祖", "第五", "公乘",
63
- "贯丘", "公皙", "南荣", "东里", "东宫", "仲长", "子书", "子桑", "即墨", "达奚",
64
- "褚师", "吴铭",
65
- // 繁体(如果有不同的写法)
66
- "歐陽", "太史", "端木", "上官", "司馬", "東方", "獨孤", "南宮", "萬俟", "聞人",
67
- "夏侯", "諸葛", "尉遲", "公羊", "赫連", "澹臺", "皇甫", "宗政", "濮陽", "公冶",
68
- "太叔", "申屠", "公孫", "慕容", "仲孫", "鐘離", "長孫", "宇文", "司徒", "鮮於",
69
- "司空", "閭丘", "子車", "亓官", "司寇", "巫馬", "公西", "顓孫", "壤駟", "公良",
70
- "漆雕", "樂正", "宰父", "穀梁", "拓跋", "夾谷", "軒轅", "令狐", "段幹", "百里",
71
- "呼延", "東郭", "南門", "羊舌", "微生", "公戶", "公玉", "公儀", "梁丘", "公仲",
72
- "公上", "公門", "公山", "公堅", "左丘", "公伯", "西門", "公祖", "第五", "公乘",
73
- "貫丘", "公皙", "南榮", "東里", "東宮", "仲長", "子書", "子桑", "即墨", "達奚",
74
- "褚師", "吳銘"
75
- ];
76
- // 尝试查找复姓
77
- for (let i = 0; i < surnames.length; i++) {
78
- const surname = surnames[i];
79
- // 如果全名以某个复姓开头
80
- if (fullName.startsWith(surname)) {
81
- // 设置姓为该复姓,名则为复姓之后的部分
82
- result.surname = surname;
83
- result.givenName = fullName.substring(surname.length).trim();
84
- return result; // 找到后立即返回结果
85
- }
86
- }
87
- // 如果没有找到复姓,处理单姓的情况
88
- const parts = fullName.split(' '); // 使用空格分割姓名
89
- if (parts.length === 1) {
90
- // 如果没有空格分隔,使用正则表达式来识别第一个汉字作为姓
91
- const surnameMatch = fullName.match(/[\u4e00-\u9fa5]/); // 匹配第一个汉字
92
- result.surname = surnameMatch ? surnameMatch[0] : ''; // 设置姓
93
- // 移除姓后的剩余部分作为名
94
- result.givenName = fullName.replace(result.surname, '').trim();
95
- } else {
96
- // 如果有空格分隔,第一部分作为姓,剩余部分作为名
97
- result.surname = parts[0]; // 第一部分为姓
98
- result.givenName = parts.slice(1).join(' '); // 其余部分为名
99
- }
100
- }
101
- return result;
102
- }
103
-
104
-
105
- /**
106
- * 将指定键名替换成另外的键名
107
- * strCode:原始键名
108
- * code:新键名
109
- */
110
- function modifyKeys(array, keyMap = {
111
- strCode: "code",
112
- strFjbh: "fjbh",
113
- strGuid: "value",
114
- strValue: "label"
115
- }) {
116
- if (!array.length || array === null) return []
117
- // 遍历数组中的每个对象
118
- const modifiedArray = array.map(obj => {
119
- const modifiedObj = {};
120
- // 遍历对象的键
121
- for (const key in obj) {
122
- if (keyMap.hasOwnProperty(key)) {
123
- // 如果键在映射表中有对应的新键名,则使用新键名
124
- modifiedObj[keyMap[key]] = obj[key];
125
- } else {
126
- // 否则保持原始键名
127
- modifiedObj[key] = obj[key];
128
- }
129
- }
130
- return modifiedObj;
131
- });
132
- return modifiedArray;
133
- }
134
-
135
- /**
136
- * 对数组进行切片处理
137
- * data:需要处理的数组
138
- * quantity:需要切割的数量
139
- * fromFront:是从前还是从后面切,默认从后
140
- */
141
- function sliceArray(data, quantity, fromFront) {
142
- if (quantity <= 0) {
143
- console.error("Quantity should be greater than 0.");
144
- return [];
145
- }
146
- if (fromFront) {
147
- return data.slice(0, quantity);
148
- } else {
149
- return data.slice(-quantity);
150
- }
151
- }
152
-
153
-
154
- /**
155
- * 判断指定键名的值是否在数组内
156
- * @param {*} inputArray 源数组
157
- * @param {*} target 需要匹配的值
158
- * @param {*} key 键名
159
- */
160
- function findDataByData(inputArray, target, key) {
161
- const foundData = inputArray.find(item => item[key] === target);
162
- return foundData || null;
163
- }
164
-
165
- /**
166
- * 分割数组
167
- */
168
- function splitArray(arr, n) {
169
- const result = [];
170
- for (let i = 0; i < arr.length; i += n) {
171
- result.push(arr.slice(i, i + n));
172
- }
173
- return result;
174
- }
175
-
176
-
177
- /**
178
- * 获取proxy的数据类型
179
- */
180
- function getProxyType(value) {
181
- return Object.prototype.toString.call(value).slice(8, -1);
182
- }
183
-
184
-
185
- let timeout = null
186
- /**
187
- * 防抖原理:一定时间内,只有最后一次操作,再过wait毫秒后才执行函数
188
- *
189
- * @param {Function} func 要执行的回调函数
190
- * @param {Number} wait 延时的时间
191
- * @param {Boolean} immediate 是否立即执行
192
- * @return null
193
- */
194
- function debounce(func, wait = 500, immediate = false) {
195
- // 清除定时器
196
- if (timeout !== null) clearTimeout(timeout)
197
- // 立即执行,此类情况一般用不到
198
- if (immediate) {
199
- const callNow = !timeout
200
- timeout = setTimeout(() => {
201
- timeout = null
202
- }, wait)
203
- if (callNow) typeof func === 'function' && func()
204
- } else {
205
- // 设置定时器,当最后一次操作后,timeout不会再被清除,所以在延时wait毫秒后执行func回调方法
206
- timeout = setTimeout(() => {
207
- typeof func === 'function' && func()
208
- }, wait)
209
- }
210
- }
211
-
212
- /**
213
- * 判断指定键名的值是否在数组内
214
- */
215
- function matchKeyValueInArray(arr, key, value) {
216
- for (let i = 0; i < arr.length; i++) {
217
- if (arr[i][key] === value) {
218
- return true;
219
- }
220
- }
221
- return false;
222
- }
223
-
224
-
225
- /**
226
- * 对象转URL
227
- * @param {object} obj
228
- */
229
- function urlEncode(obj = {}) {
230
- const result = []
231
- for (const key in obj) {
232
- const item = obj[key]
233
- if (!item) {
234
- continue
235
- }
236
- if (isArray(item)) {
237
- item.forEach(val => {
238
- result.push(key + '=' + val)
239
- })
240
- } else {
241
- result.push(key + '=' + item)
242
- }
243
- }
244
- return result.join('&')
245
- }
246
-
247
- /**
248
- * 比较日期大小
249
- * @param {Object} date1
250
- * @param {Object} date2 默认当日
251
- */
252
- function compareDates(date1, date2) {
253
- date1 = new Date(date1);
254
- if (!date2) {
255
- date2 = new Date();
256
- } else {
257
- date2 = new Date(date2);
258
- }
259
- date1.setHours(0, 0, 0, 0); // 将时间部分设置为0
260
- date2.setHours(0, 0, 0, 0); // 将时间部分设置为0
261
- // 将日期转换为时间戳进行比较
262
- var timeStamp1 = date1.getTime();
263
- var timeStamp2 = date2.getTime();
264
- if (timeStamp1 < timeStamp2) {
265
- return -1; // date1 小于 date2
266
- } else if (timeStamp1 > timeStamp2) {
267
- return 1; // date1 大于 date2
268
- } else {
269
- return 0; // date1 等于 date2
270
- }
271
- }
272
-
273
- /**
274
- * 获取2个日期间的天数
275
- * @param {Object} date1
276
- * @param {Object} date2
277
- */
278
- function getDaysBetween(date1, date2) {
279
- // 将日期字符串转换为Date对象
280
- const d1 = new Date(date1);
281
- const d2 = new Date(date2);
282
-
283
- // 计算两个日期之间的毫秒数
284
- const diff = Math.abs(d1.getTime() - d2.getTime());
285
-
286
- // 将毫秒数转换为天数
287
- const days = Math.floor(diff / (1000 * 60 * 60 * 24));
288
-
289
- return days + 1; // 包括起始日期和结束日期,所以需要加1
290
- }
291
-
292
-
293
- /**
294
- * 转中文大写
295
- * @param {Object} num
296
- */
297
- function chineseNumeral(num) {
298
- const numerals = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'];
299
- const units = ['', '拾', '佰', '仟'];
300
- const scales = ['', '万', '亿', '兆'];
301
-
302
- let integerPart = Math.floor(num);
303
- let decimalPart = Math.round((num - integerPart) * 100); // 取小数点后两位的整数表示
304
- let str = '';
305
-
306
- // 转换整数部分
307
- for (let i = 0; integerPart > 0; i++) {
308
- let temp = '';
309
- let section = integerPart % 10000;
310
- integerPart = Math.floor(integerPart / 10000);
311
-
312
- for (let j = 0; section > 0; j++) {
313
- let digit = section % 10;
314
- temp = (digit ? numerals[digit] + units[j] : '') + temp;
315
- section = Math.floor(section / 10);
316
- }
317
- str = temp + (temp ? scales[i] : scales[i] && !str.includes('零') ? '零' : '') + str;
318
- }
319
- str += str ? '元' : '零元';
320
- // 转换小数部分
321
- if (decimalPart > 0) {
322
- let jiao = Math.floor(decimalPart / 10);
323
- let fen = decimalPart % 10;
324
- str += (jiao ? numerals[jiao] + '角' : '') + (fen ? numerals[fen] + '分' : '');
325
- } else {
326
- str += '整';
327
- }
328
-
329
- return str.replace(/零{2,}/g, '零').replace(/零元/, '元');
330
- }
331
-
332
-
333
- /**
334
- * 获取月份所有日期
335
- * @param {*} monthYear 月份,格式为2024-2或2024-02 不传或者空字符串则返回当月
336
- */
337
- function getMonthDate(monthYear) {
338
- if (!monthYear || monthYear.trim() === '') {
339
- monthYear = `${new Date().getFullYear()}-${new Date().getMonth() + 1}`;
340
- }
341
- let dates = [];
342
- let [year, month] = monthYear.split('-').map(Number);
343
- let date = new Date(year, month, 0);
344
- let days = date.getDate();
345
-
346
- for (let i = 1; i <= days; i++) {
347
- let day = i < 10 ? `0${i}` : `${i}`;
348
- let monthFormatted = month < 10 ? `0${month}` : `${month}`;
349
- dates.push({
350
- date: `${year}-${monthFormatted}-${day}`,
351
- disable: true
352
- });
353
- }
354
- return dates;
355
- }
356
-
357
- function getToday(date) {
358
- var today = new Date();
359
- var dd = String(today.getDate()).padStart(2, '0');
360
- var mm = String(today.getMonth() + 1).padStart(2, '0'); //January is 0!
361
- var yyyy = today.getFullYear();
362
- today = yyyy + '-' + mm + '-' + dd
363
- return today
364
- }
365
-
366
-
367
-
368
-
369
-
370
- /**
371
- * 重置对象
372
- * @param {Object} obj
373
- */
374
- function resetObject(val) {
375
- let obj = JSON.parse(JSON.stringify(val))
376
- for (const key in obj) {
377
- if (typeof obj[key] === 'number') {
378
- obj[key] = 0;
379
- } else if (typeof obj[key] === 'boolean') {
380
- obj[key] = false;
381
- } else if (Array.isArray(obj[key])) {
382
- obj[key] = [];
383
- } else if (typeof obj[key] === 'object' && obj[key] !== null) {
384
- // 递归调用以处理嵌套对象
385
- resetObject(obj[key]);
386
- } else {
387
- obj[key] = '';
388
- }
389
- }
390
- return obj
391
- }
392
-
393
- /**
394
- * 精确运算函数,解决浮点数计算精度丢失问题。
395
- * 该函数接受两个数字和一个操作符(1: 加法, 2: 减法, 3: 乘法, 4: 除法),
396
- * 通过将浮点数转换为整数进行计算,再转换回浮点数得到相对精确的结果。
397
- * @param {number} a - 参与运算的第一个数字
398
- * @param {number} b - 参与运算的第二个数字
399
- * @param {number} operator - 表示运算类型的数字,1为加法,2为减法,3为乘法,4为除法
400
- * @returns {number} - 根据操作符计算得到的结果
401
- */
402
- function preciseOperation(a, b, operator, precisionFactor = 1000000) {
403
- // 处理特殊值NaN
404
- if (isNaN(a) || isNaN(b)) {
405
- return NaN;
406
- }
407
- // 处理无穷大
408
- if (!isFinite(a) || !isFinite(b)) {
409
- return NaN;
410
- }
411
- let num1 = BigInt(Math.round(a * precisionFactor));
412
- let num2 = BigInt(Math.round(b * precisionFactor));
413
- let result;
414
- switch (operator) {
415
- case 1:
416
- result = num1 + num2;
417
- break;
418
- case 2:
419
- result = num1 - num2;
420
- break;
421
- case 3:
422
- result = num1 * num2;
423
- break;
424
- case 4:
425
- if (num2 === 0n) {
426
- throw new Error('除数不能为0');
427
- }
428
- result = num1 / num2;
429
- break;
430
- default:
431
- throw new Error('无效的操作符,操作符应为1、2、3或4');
432
- }
433
- return Number(result) / precisionFactor;
434
- }
435
-
436
-
437
-
438
-
439
- /**
440
- * 使用精确运算函数计算数组内所有元素的总和。
441
- * 如果数组中的元素是字符串形式的数字,则尝试将其转换为数字;
442
- * 如果转换失败或元素是 null/undefined,则将该元素视为 0。
443
- * @param {Array} numbers - 数字或字符串形式的数字数组
444
- * @returns {number} - 数组内所有元素的总和
445
- */
446
- function preciseSum(numbers) {
447
- // 初始化总和为0
448
- let sum = 0;
449
- // 遍历数组中的每个元素
450
- for (const num of numbers) {
451
- let currentNum = 0; // 默认值为0
452
- // 尝试将元素转换为数字
453
- if (typeof num === 'string') {
454
- const parsedNum = parseFloat(num);
455
- if (!isNaN(parsedNum)) {
456
- currentNum = parsedNum;
457
- }
458
- } else if (typeof num === 'number') {
459
- currentNum = num;
460
- }
461
- // 使用 preciseOperation 进行加法操作
462
- sum = preciseOperation(sum, currentNum, 1); // 1 表示加法
463
- }
464
- return sum;
465
- }
466
-
467
- /**
468
- * 获取指定日期的前后时间
469
- * @param {Object} dateStr 指定日期
470
- * @param {Object} days 天数
471
- */
472
- function getRelativeDate(dateStr, days = 0) {
473
- const date = new Date(dateStr);
474
- date.setDate(date.getDate() + days); // 在日期上加上指定的天数,负数则减去天数
475
-
476
- // 将日期转换回 YYYY-MM-DD 格式
477
- const year = date.getFullYear();
478
- const month = (date.getMonth() + 1).toString().padStart(2, '0'); // getMonth() 返回 0-11
479
- const day = date.getDate().toString().padStart(2, '0');
480
-
481
- return `${year}-${month}-${day}`;
482
-
483
- // 示例使用
484
- // console.log(getRelativeDate('2023-03-04', 2)); // 返回 '2023-03-06'
485
- // console.log(getRelativeDate('2023-03-04', -2)); // 返回 '2023-03-02'
486
- }
487
-
488
-
489
- /**
490
- * 校验指定键名的值是否为指定值(默认为空字符串)
491
- * @param {Object} model 校验对象
492
- * @param {Array} fields 校验对象内的键名数组
493
- * @param {Any} valueToCheck 校验的值
494
- */
495
- function validateFields(model, fields, valueToCheck = "") {
496
- for (let field of fields) {
497
- if (model[field] === valueToCheck) {
498
- return true;
499
- }
500
- }
501
- return false;
502
- }
503
-
504
- /**
505
- * 本函数与Object.assign()的区别为不会像第一个对象中添加第一个对象原本不存在的键
506
- * 将第二个对象中相同键名的值赋值给第一个对象中相同键名
507
- * @param {Object} obj1
508
- * @param {Object} obj2
509
- */
510
- function mergeObjects(obj1, obj2) {
511
- // 遍历 obj1 的键名
512
- for (const key in obj1) {
513
- // 如果 obj2 中存在相同的键名
514
- if (obj2.hasOwnProperty(key)) {
515
- // 将 obj2 中的值赋值给 obj1 中的相同键名
516
- obj1[key] = obj2[key];
517
- }
518
- }
519
- return obj1;
520
- }
521
-
522
-
523
- export default {
524
- fmtNum,
525
- splitName,
526
- preciseSum,
527
- modifyKeys,
528
- sliceArray,
529
- findDataByData,
530
- splitArray,
531
- getProxyType,
532
- debounce,
533
- matchKeyValueInArray,
534
- urlEncode,
535
- compareDates,
536
- getDaysBetween,
537
- chineseNumeral,
538
- getMonthDate,
539
- getToday,
540
- resetObject,
541
- preciseOperation,
542
- getRelativeDate,
543
- validateFields,
544
- mergeObjects
545
- }