From ca9092242c05c13c173005a3b1cbcec43bb95e0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BC=9APS=E7=9A=84=E5=B0=8F=E7=A0=81=E5=86=9C?= <747357766@qq.com> Date: Wed, 30 Mar 2022 09:37:13 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E6=96=B0=E7=BC=96=E8=AF=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build/webpack.prod.config.js | 2 +- dist/address-parse.js | 1 + package.json | 6 +++--- 3 files changed, 5 insertions(+), 4 deletions(-) create mode 100644 dist/address-parse.js diff --git a/build/webpack.prod.config.js b/build/webpack.prod.config.js index 3c73eb9..256f02b 100644 --- a/build/webpack.prod.config.js +++ b/build/webpack.prod.config.js @@ -9,7 +9,7 @@ module.exports = { }, output: { path: path.resolve(__dirname, '../dist'), - filename: 'v-distpicker.js', + filename: 'address-parse.js', library: 'VDistpicker', libraryTarget: 'umd', libraryExport: 'default' diff --git a/dist/address-parse.js b/dist/address-parse.js new file mode 100644 index 0000000..2ae5edc --- /dev/null +++ b/dist/address-parse.js @@ -0,0 +1 @@ +!function(e,n){"object"==typeof exports&&"object"==typeof module?module.exports=n():"function"==typeof define&&define.amd?define([],n):"object"==typeof exports?exports.VDistpicker=n():e.VDistpicker=n()}(window,(function(){return function(e){var n={};function c(d){if(n[d])return n[d].exports;var o=n[d]={i:d,l:!1,exports:{}};return e[d].call(o.exports,o,o.exports,c),o.l=!0,o.exports}return c.m=e,c.c=n,c.d=function(e,n,d){c.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:d})},c.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},c.t=function(e,n){if(1&n&&(e=c(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;var d=Object.create(null);if(c.r(d),Object.defineProperty(d,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(var o in e)c.d(d,o,function(n){return e[n]}.bind(null,o));return d},c.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return c.d(n,"a",n),n},c.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},c.p="",c(c.s=13)}([function(e,n,c){var d=c(7),o=c(8),a=c(9),m=c(10);e.exports=function(e){return d(e)||o(e)||a(e)||m()},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,n){function c(){return e.exports=c=Object.assign||function(e){for(var n=1;ne.length)&&(n=e.length);for(var c=0,d=new Array(n);c=0||Object.prototype.propertyIsEnumerable.call(e,c)&&(a[c]=e[c])}return a},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,n,c){var d=c(3);e.exports=function(e){if(Array.isArray(e))return d(e)},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,n){e.exports=function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,n,c){var d=c(3);e.exports=function(e,n){if(e){if("string"==typeof e)return d(e,n);var c=Object.prototype.toString.call(e).slice(8,-1);return"Object"===c&&e.constructor&&(c=e.constructor.name),"Map"===c||"Set"===c?Array.from(e):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?d(e,n):void 0}},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,n){e.exports=function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},e.exports.__esModule=!0,e.exports.default=e.exports},function(e,n){e.exports=function(e,n){if(null==e)return{};var c,d,o={},a=Object.keys(e);for(d=0;d=0||(o[c]=e[c]);return o},e.exports.__esModule=!0,e.exports.default=e.exports},function(e){e.exports=JSON.parse('["赵","钱","孙","李","周","吴","郑","王","冯","陈","楮","卫","蒋","沈","韩","杨","朱","秦","尤","许","何","吕","施","张","孔","曹","严","华","金","魏","陶","姜","戚","谢","邹","喻","柏","水","窦","章","云","苏","潘","葛","奚","范","彭","郎","鲁","韦","昌","马","苗","凤","花","方","俞","任","袁","柳","酆","鲍","史","唐","费","廉","岑","薛","雷","贺","倪","汤","滕","殷","罗","毕","郝","邬","安","常","乐","于","时","傅","皮","卞","齐","康","伍","余","元","卜","顾","孟","平","黄","和","穆","萧","尹","姚","邵","湛","汪","祁","毛","禹","狄","米","贝","明","臧","计","伏","成","戴","谈","宋","茅","庞","熊","纪","舒","屈","项","祝","董","梁","杜","阮","蓝","闽","席","季","麻","强","贾","路","娄","危","江","童","颜","郭","梅","盛","林","刁","锺","徐","丘","骆","高","夏","蔡","田","樊","胡","凌","霍","虞","万","支","柯","昝","管","卢","莫","经","房","裘","缪","干","解","应","宗","丁","宣","贲","邓","郁","单","杭","洪","包","诸","左","石","崔","吉","钮","龚","程","嵇","邢","滑","裴","陆","荣","翁","荀","羊","於","惠","甄","麹","家","封","芮","羿","储","靳","汲","邴","糜","松","井","段","富","巫","乌","焦","巴","弓","牧","隗","山","谷","车","侯","宓","蓬","全","郗","班","仰","秋","仲","伊","宫","宁","仇","栾","暴","甘","斜","厉","戎","祖","武","符","刘","景","詹","束","龙","叶","幸","司","韶","郜","黎","蓟","薄","印","宿","白","怀","蒲","邰","从","鄂","索","咸","籍","赖","卓","蔺","屠","蒙","池","乔","阴","郁","胥","能","苍","双","闻","莘","党","翟","谭","贡","劳","逄","姬","申","扶","堵","冉","宰","郦","雍","郤","璩","桑","桂","濮","牛","寿","通","边","扈","燕","冀","郏","浦","尚","农","温","别","庄","晏","柴","瞿","阎","充","慕","连","茹","习","宦","艾","鱼","容","向","古","易","慎","戈","廖","庾","终","暨","居","衡","步","都","耿","满","弘","匡","国","文","寇","广","禄","阙","东","欧","殳","沃","利","蔚","越","夔","隆","师","巩","厍","聂","晁","勾","敖","融","冷","訾","辛","阚","那","简","饶","空","曾","毋","沙","乜","养","鞠","须","丰","巢","关","蒯","相","查","后","荆","红","游","竺","权","逑","盖","益","桓","公","万俟","司马","上官","欧阳","夏侯","诸葛","闻人","东方","赫连","皇甫","尉迟","公羊","澹台","公冶","宗政","濮阳","淳于","单于","太叔","申屠","公孙","仲孙","轩辕","令狐","锺离","宇文","长孙","慕容","鲜于","闾丘","司徒","司空","丌官","司寇","仉","督","子车","颛孙","端木","巫马","公西","漆雕","乐正","壤驷","公良","拓拔","夹谷","宰父","谷梁","晋","楚","阎","法","汝","鄢","涂","钦","段干","百里","东郭","南门","呼延","归","海","羊舌","微生","岳","帅","缑","亢","况","后","有","琴","梁丘","左丘","东门","西门","商","牟","佘","佴","伯","赏","南宫","墨","哈","谯","笪","年","爱","阳","佟","第五","言","福"]')},function(e,n,c){"use strict";c.r(n);var d=c(2),o=["行政区划"];d.forEach((function(e){e.children&&e.children.forEach((function(n,c){~o.findIndex((function(e){return~n.name.indexOf(e)}))&&(e.children=e.children.concat(n.children||[]),e.children.splice(c,1))}))}));var a=d;console.log(a);var m=function(e,n,c,d,o,a,m,r){var i,t="function"==typeof e?e.options:e;if(n&&(t.render=n,t.staticRenderFns=c,t._compiled=!0),d&&(t.functional=!0),a&&(t._scopeId="data-v-"+a),m?(i=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),o&&o.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(m)},t._ssrRegister=i):o&&(i=r?function(){o.call(this,(t.functional?this.parent:this).$root.$options.shadowRoot)}:o),i)if(t.functional){t._injectStyles=i;var l=t.render;t.render=function(e,n){return i.call(n),l(e,n)}}else{var h=t.beforeCreate;t.beforeCreate=h?[].concat(h,i):[i]}return{exports:e,options:t}}({name:"v-distpicker",props:{},data:function(){return{provinceJson:a,cityJson:[],areaJson:[],codes:[],province:"",city:"",area:""}},created:function(){},watch:{},methods:{checkProvince:function(e,n){var c=this;console.log(e,n),console.log(this.province),this.provinceJson.forEach((function(e){e.name==c.province&&(c.cityJson=e.children,c.areaJson=[])}))},checkCity:function(e,n){var c=this;console.log(e,n),console.log(this.city),this.cityJson.forEach((function(e){e.name==c.city&&(c.areaJson=e.children)}))}}},(function(){var e=this,n=e.$createElement,c=e._self._c||n;return c("div",{attrs:{id:"app"}},[c("select",{directives:[{name:"model",rawName:"v-model",value:e.province,expression:"province"}],attrs:{placeholder:"请选择省/市"},on:{change:[function(n){var c=Array.prototype.filter.call(n.target.options,(function(e){return e.selected})).map((function(e){return"_value"in e?e._value:e.value}));e.province=n.target.multiple?c:c[0]},e.checkProvince]}},e._l(e.provinceJson,(function(n,d){return c("option",{key:d,domProps:{value:n.name}},[e._v("\n "+e._s(n.name)+"\n ")])})),0),e._v(" "),c("select",{directives:[{name:"model",rawName:"v-model",value:e.city,expression:"city"}],attrs:{placeholder:"请选择市/区"},on:{change:[function(n){var c=Array.prototype.filter.call(n.target.options,(function(e){return e.selected})).map((function(e){return"_value"in e?e._value:e.value}));e.city=n.target.multiple?c:c[0]},e.checkCity]}},e._l(e.cityJson,(function(n,d){return c("option",{key:d,domProps:{value:n.name}},[e._v("\n "+e._s(n.name)+"\n ")])})),0),e._v(" "),c("select",{directives:[{name:"model",rawName:"v-model",value:e.area,expression:"area"}],attrs:{placeholder:"请选择区/县"},on:{change:function(n){var c=Array.prototype.filter.call(n.target.options,(function(e){return e.selected})).map((function(e){return"_value"in e?e._value:e.value}));e.area=n.target.multiple?c:c[0]}}},e._l(e.areaJson,(function(n,d){return c("option",{key:d,domProps:{value:n.name}},[e._v("\n "+e._s(n.name)+"\n ")])})),0)])}),[],!1,null,null,null).exports,r=c(0),i=c.n(r),t=c(4),l=c.n(t),h=c(5),u=c.n(h),f=c(1),s=c.n(f),p=c(6),v=c.n(p),g=["children"];function y(e,n){var c="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!c){if(Array.isArray(e)||(c=function(e,n){if(!e)return;if("string"==typeof e)return x(e,n);var c=Object.prototype.toString.call(e).slice(8,-1);"Object"===c&&e.constructor&&(c=e.constructor.name);if("Map"===c||"Set"===c)return Array.from(e);if("Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c))return x(e,n)}(e))||n&&e&&"number"==typeof e.length){c&&(e=c);var d=0,o=function(){};return{s:o,n:function(){return d>=e.length?{done:!0}:{done:!1,value:e[d++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,m=!0,r=!1;return{s:function(){c=c.call(e)},n:function(){var e=c.next();return m=e.done,e},e:function(e){r=!0,a=e},f:function(){try{m||null==c.return||c.return()}finally{if(r)throw a}}}}function x(e,n){(null==n||n>e.length)&&(n=e.length);for(var c=0,d=new Array(n);c0&&a.push(e),{province:c,city:d,area:o,detail:a}},$=function(e,n){var c=[],d=[],o=[],a=[];if(n.province[0])c=n.province;else{var m,r=y(j);try{for(r.s();!(m=r.n()).done;){for(var i=m.value,t=i.name,l="",h=t.length;h>1;h--){var u=t.substring(0,h);if(0===e.indexOf(u)){l=u;break}}if(l){c.push(i),e=e.replace(new RegExp(l,"g"),"");break}}}catch(e){r.e(e)}finally{r.f()}}if(n.city[0])d=n.city;else{var f,s=y(E);try{var p=function(){var n=f.value,o=n.name,a=n.provinceCode,m=c[0];if(m){if(m.code===a){for(var r="",i=o.length;i>1;i--){var t=o.substring(0,i);if(0===e.indexOf(t)){r=t;break}}if(r)return d.push(n),e=e.replace(new RegExp(r,"g"),""),"break"}}else{for(var l=o.length;l>1;l--){var h=o.substring(0,l);if(0===e.indexOf(h)){d.push(n),c.push(j.find((function(e){return e.code===a}))),e=e.replace(h,"");break}}if(d.length>0)return"break"}};for(s.s();!(f=s.n()).done;){if("break"===p())break}}catch(e){s.e(e)}finally{s.f()}}var v,g=y(k);try{var x=function(){var n=v.value,a=n.name,m=n.provinceCode,r=n.cityCode,i=c[0],t=d[0];if(i||t){if(i&&i.code===m||(t&&t.code)===r){for(var l="",h=a.length;h>1;h--){var u=a.substring(0,h);if(0===e.indexOf(u)){l=u;break}}if(l)return o.push(n),!t&&d.push(E.find((function(e){return e.code===r}))),!i&&c.push(j.find((function(e){return e.code===m}))),e=e.replace(l,""),"break"}}else{for(var f=a.length;f>1;f--){var s=a.substring(0,f);if(0===e.indexOf(s)){o.push(n),d.push(E.find((function(e){return e.code===r}))),c.push(j.find((function(e){return e.code===m}))),e=e.replace(s,"");break}}if(o.length>0)return"break"}};for(g.s();!(v=g.n()).done;){if("break"===x())break}}catch(e){g.e(e)}finally{g.f()}return e.length>0&&a.push(e),{province:c,city:d,area:o,detail:a}},R=function(e,n){if(!e||!/[\u4E00-\u9FA5]/.test(e))return"";if(["先生","小姐","同志","哥哥","姐姐","妹妹","弟弟","妈妈","爸爸","爷爷","奶奶","姑姑","舅舅"].find((function(n){return~e.indexOf(n)})))return e;if(~["街道","乡镇","镇","乡"].findIndex((function(n){return~e.indexOf(n)})))return"";var c=e.substring(0,1);return e.length<=n&&e.length>1&&~O.indexOf(c)?e:""},N=function(e){var n="";e=(e=(e=(e=e.replace(/(\d{3})-(\d{4})-(\d{4})/g,"$1$2$3")).replace(/(\d{3}) (\d{4}) (\d{4})/g,"$1$2$3")).replace(/(\d{4}) \d{4} \d{4}/g,"$1$2$3")).replace(/(\d{4})/g,"$1");var c=/(\d{7,12})|(\d{3,4}-\d{6,8})|(86-[1][0-9]{10})|(86[1][0-9]{10})|([1][0-9]{10})/g.exec(e);return c&&(n=c[0],e=e.replace(c[0]," ")),{address:e,phone:n}},I=function(e){var n="",c=/\d{6}/g.exec(e);return c&&(n=c[0],e=e.replace(c[0]," ")),{address:e,postalCode:n}},T=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];e=e.replace(/\r\n/g," ").replace(/\n/g," ").replace(/\t/g," ");var c=["详细地址","收货地址","收件地址","地址","所在地区","地区","姓名","收货人","收件人","联系人","收","邮编","联系电话","电话","联系人手机号码","手机号码","手机号","自治区直辖县级行政区划","省直辖县级行政区划"].concat(n);c.forEach((function(n){e=e.replace(new RegExp(n,"g")," ")}));var d=new RegExp("[`~!@#$^&*()=|{}':;',\\[\\].<>/?~!@#¥……&*()——|{}【】‘;:”“’。,、?]","g");return e=(e=e.replace(d," ")).replace(/ {2,}/g," ")},D=function(e,n){var c="object"===l()(n)?n:"number"==typeof n?{type:n}:{},d=c.type,o=void 0===d?0:d,a=c.textFilter,m=void 0===a?[]:a,r=c.nameMaxLength,t=void 0===r?4:r;if(!e)return{};var h={phone:"",province:[],city:[],area:[],detail:[],name:""};e=T(e,m);var u=N(e);e=u.address,h.phone=u.phone;var f=I(e);e=f.address,h.postalCode=f.postalCode;var s=e.split(" ").filter((function(e){return e})).map((function(e){return e.trim()}));s=A(s);(new Date).getTime();s.forEach((function(e){if(h.province[0]&&h.city[0]&&h.area[0])h.detail.push(e);else{var n={};1===o&&(n=$(e,h)),0===o&&(n=M(e,h));var c=n,d=c.province,a=c.city,m=c.area,r=c.detail;h.province=d||[],h.area=m||[],h.city=a||[],h.detail=h.detail.concat(r||[])}}));(new Date).getTime();var p=h.province[0],v=h.city[0],g=h.area[0],y=h.detail;if(y=y.map((function(e){return e.replace(new RegExp("".concat(p&&p.name,"|").concat(v&&v.name,"|").concat(g&&g.name),"g"),"")})),(y=Array.from(new Set(y)))&&y.length>0){var x=i()(y).filter((function(e){return!!e}));x.sort((function(e,n){return e.length-n.length}));var b=x.findIndex((function(e){return R(e,t)})),_="";~b?_=x[b]:x[0].length<=t&&/[\u4E00-\u9FA5]/.test(x[0])&&(_=x[0]),_&&(h.name=_,y.splice(y.findIndex((function(e){return e===_})),1))}JSON.stringify(h);var O=p&&p.name,w=v&&v.name;return~["市辖区","区","县","镇"].indexOf(w)&&(w=O),Object.assign(h,{province:O||"",city:w||"",area:g&&g.name||"",detail:y&&y.length>0&&y.join("")||""})};n.default={VDistpicker:m,AddressParse:D,AddressJson:a}}]).default})); \ No newline at end of file diff --git a/package.json b/package.json index 4270145..9574cce 100644 --- a/package.json +++ b/package.json @@ -1,11 +1,11 @@ { - "name": "v-distpicker", + "name": "address-parse", "description": "A flexible, highly available district selector for picking provinces, cities and districts of China.", "version": "1.2.9", "author": "jcc ", "license": "MIT", - "repository": "jcc/v-distpicker", - "main": "dist/v-distpicker.js", + "repository": "jcc/address-parse", + "main": "dist/address-parse.js", "files": [ "src", "dist/*.js"