From c41ff77d35e97e39ae279b956ffc966eede5e888 Mon Sep 17 00:00:00 2001 From: BigBoss <2280520255@qq.com> Date: Tue, 28 Apr 2020 21:49:22 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A6=96=E9=A1=B5=E9=A1=B5=E9=9D=A2=E6=90=AD?= =?UTF-8?q?=E5=BB=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- common/data.js | 132 ++++ components/HM-filterDropdown/HM-filterDropdown.vue | 785 +++++++++++++++++++++ components/card.vue | 19 + components/uni-drawer/uni-drawer.vue | 170 +++++ pages/index/index.vue | 288 +++++++- static/img/goods/p1.jpg | Bin 0 -> 11530 bytes static/img/goods/p10.jpg | Bin 0 -> 23148 bytes static/img/goods/p2.jpg | Bin 0 -> 16688 bytes static/img/goods/p3.jpg | Bin 0 -> 15369 bytes static/img/goods/p4.jpg | Bin 0 -> 6703 bytes static/img/goods/p5.jpg | Bin 0 -> 30322 bytes static/img/goods/p6.jpg | Bin 0 -> 6395 bytes static/img/goods/p7.jpg | Bin 0 -> 20570 bytes static/img/goods/p8.jpg | Bin 0 -> 20865 bytes static/img/goods/p9.jpg | Bin 0 -> 24643 bytes .../dev/.sourcemap/mp-weixin/common/main.js.map | 2 +- .../dev/.sourcemap/mp-weixin/common/runtime.js.map | 2 +- .../dev/.sourcemap/mp-weixin/common/vendor.js.map | 2 +- .../HM-filterDropdown/HM-filterDropdown.js.map | 1 + .../components/uni-drawer/uni-drawer.js.map | 1 + .../uni-segmented-control.js.map | 1 + .../.sourcemap/mp-weixin/pages/cart/cart.js.map | 2 +- .../.sourcemap/mp-weixin/pages/index/index.js.map | 2 +- .../.sourcemap/mp-weixin/pages/user/user.js.map | 2 +- unpackage/dist/dev/mp-weixin/app.json | 2 +- unpackage/dist/dev/mp-weixin/common/runtime.js | 112 +++ unpackage/dist/dev/mp-weixin/common/vendor.js | 148 +++- .../HM-filterDropdown/HM-filterDropdown.js | 648 +++++++++++++++++ .../HM-filterDropdown/HM-filterDropdown.json | 4 + .../HM-filterDropdown/HM-filterDropdown.wxml | 1 + .../HM-filterDropdown/HM-filterDropdown.wxss | 398 +++++++++++ .../mp-weixin/components/uni-drawer/uni-drawer.js | 250 +++++++ .../components/uni-drawer/uni-drawer.json | 4 + .../components/uni-drawer/uni-drawer.wxml | 1 + .../components/uni-drawer/uni-drawer.wxss | 79 +++ unpackage/dist/dev/mp-weixin/pages/cart/cart.js | 32 +- unpackage/dist/dev/mp-weixin/pages/index/index.js | 257 +++++-- .../dist/dev/mp-weixin/pages/index/index.json | 5 +- .../dist/dev/mp-weixin/pages/index/index.wxml | 2 +- .../dist/dev/mp-weixin/pages/index/index.wxss | 243 ++++++- unpackage/dist/dev/mp-weixin/pages/user/user.js | 32 +- unpackage/dist/dev/mp-weixin/project.config.json | 2 +- unpackage/dist/dev/mp-weixin/sitemap39.json | 7 + unpackage/dist/dev/mp-weixin/sitemap46.json | 7 + unpackage/dist/dev/mp-weixin/sitemap47.json | 7 + unpackage/dist/dev/mp-weixin/sitemap54.json | 7 + unpackage/dist/dev/mp-weixin/sitemap80.json | 7 + unpackage/dist/dev/mp-weixin/sitemap96.json | 7 + .../dist/dev/mp-weixin/static/img/goods/p1.jpg | Bin 0 -> 11530 bytes .../dist/dev/mp-weixin/static/img/goods/p10.jpg | Bin 0 -> 23148 bytes .../dist/dev/mp-weixin/static/img/goods/p2.jpg | Bin 0 -> 16688 bytes .../dist/dev/mp-weixin/static/img/goods/p3.jpg | Bin 0 -> 15369 bytes .../dist/dev/mp-weixin/static/img/goods/p4.jpg | Bin 0 -> 6703 bytes .../dist/dev/mp-weixin/static/img/goods/p5.jpg | Bin 0 -> 30322 bytes .../dist/dev/mp-weixin/static/img/goods/p6.jpg | Bin 0 -> 6395 bytes .../dist/dev/mp-weixin/static/img/goods/p7.jpg | Bin 0 -> 20570 bytes .../dist/dev/mp-weixin/static/img/goods/p8.jpg | Bin 0 -> 20865 bytes .../dist/dev/mp-weixin/static/img/goods/p9.jpg | Bin 0 -> 24643 bytes 58 files changed, 3517 insertions(+), 154 deletions(-) create mode 100644 common/data.js create mode 100644 components/HM-filterDropdown/HM-filterDropdown.vue create mode 100644 components/card.vue create mode 100644 components/uni-drawer/uni-drawer.vue create mode 100644 static/img/goods/p1.jpg create mode 100644 static/img/goods/p10.jpg create mode 100644 static/img/goods/p2.jpg create mode 100644 static/img/goods/p3.jpg create mode 100644 static/img/goods/p4.jpg create mode 100644 static/img/goods/p5.jpg create mode 100644 static/img/goods/p6.jpg create mode 100644 static/img/goods/p7.jpg create mode 100644 static/img/goods/p8.jpg create mode 100644 static/img/goods/p9.jpg create mode 100644 unpackage/dist/dev/.sourcemap/mp-weixin/components/HM-filterDropdown/HM-filterDropdown.js.map create mode 100644 unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-drawer/uni-drawer.js.map create mode 100644 unpackage/dist/dev/.sourcemap/mp-weixin/components/uni-segmented-control/uni-segmented-control.js.map create mode 100644 unpackage/dist/dev/mp-weixin/components/HM-filterDropdown/HM-filterDropdown.js create mode 100644 unpackage/dist/dev/mp-weixin/components/HM-filterDropdown/HM-filterDropdown.json create mode 100644 unpackage/dist/dev/mp-weixin/components/HM-filterDropdown/HM-filterDropdown.wxml create mode 100644 unpackage/dist/dev/mp-weixin/components/HM-filterDropdown/HM-filterDropdown.wxss create mode 100644 unpackage/dist/dev/mp-weixin/components/uni-drawer/uni-drawer.js create mode 100644 unpackage/dist/dev/mp-weixin/components/uni-drawer/uni-drawer.json create mode 100644 unpackage/dist/dev/mp-weixin/components/uni-drawer/uni-drawer.wxml create mode 100644 unpackage/dist/dev/mp-weixin/components/uni-drawer/uni-drawer.wxss create mode 100644 unpackage/dist/dev/mp-weixin/sitemap39.json create mode 100644 unpackage/dist/dev/mp-weixin/sitemap46.json create mode 100644 unpackage/dist/dev/mp-weixin/sitemap47.json create mode 100644 unpackage/dist/dev/mp-weixin/sitemap54.json create mode 100644 unpackage/dist/dev/mp-weixin/sitemap80.json create mode 100644 unpackage/dist/dev/mp-weixin/sitemap96.json create mode 100644 unpackage/dist/dev/mp-weixin/static/img/goods/p1.jpg create mode 100644 unpackage/dist/dev/mp-weixin/static/img/goods/p10.jpg create mode 100644 unpackage/dist/dev/mp-weixin/static/img/goods/p2.jpg create mode 100644 unpackage/dist/dev/mp-weixin/static/img/goods/p3.jpg create mode 100644 unpackage/dist/dev/mp-weixin/static/img/goods/p4.jpg create mode 100644 unpackage/dist/dev/mp-weixin/static/img/goods/p5.jpg create mode 100644 unpackage/dist/dev/mp-weixin/static/img/goods/p6.jpg create mode 100644 unpackage/dist/dev/mp-weixin/static/img/goods/p7.jpg create mode 100644 unpackage/dist/dev/mp-weixin/static/img/goods/p8.jpg create mode 100644 unpackage/dist/dev/mp-weixin/static/img/goods/p9.jpg diff --git a/common/data.js b/common/data.js new file mode 100644 index 0000000..43ce77e --- /dev/null +++ b/common/data.js @@ -0,0 +1,132 @@ +// 数据格式,数据中只需要包含以下字段和数据格式,可以添加字段,比如id等等,不影响组件显示, +// 组件的返回结果是有菜单数组下标形式返回, +// 如果传入数据中有value,也会返回value,开发者可根据返回的下标获取所选中的菜单 +/* +[ + { + "name":"", //字符串类型 选填项 菜单名称,如不填,则取第一个子菜单的name值,filter和radio类型则将设置为"筛选" + "type":"" //字符串类型 必填项 可取值 hierarchy/filter/radio hierarchy单/多层级菜单(最多三级); filter筛选多选菜单; radio筛选单选菜单 + "submenu":[ //对象数组类型 必填项 子菜单数据 + { + "name":"", //字符串类型 必填项 菜单名称 + "value":"", //字符串类型 选填项 自定义内容,比如id等等,如果填写了,confirm返回的结果中将返回对应选中的value,若菜单无value字段则返回null,filter类型此字段无效果 + "submenu":[ //对象数组类型 必填项 子菜单数据 + { + "name":"", //字符串类型 必填项 菜单名称 + "value":"", //字符串类型 选填项 自定义内容,比如id等等,如果填写了,confirm返回的结果中将返回对应选中的value,若菜单无value字段则返回null + "submenu":[ //对象数组类型 必填项 子菜单数据 filter类型无效 + { + "name":"", //字符串类型 必填项 菜单名称 hierarchy类型层级最多到此 + "value":"", //字符串类型 选填项 自定义内容,比如id等等,如果填写了,confirm返回的结果中将返回对应选中的value,若菜单无value字段则返回null + } + ] + } + ] + } + ] + } +] +*/ + +//0.0.4版本起 返回结果将有两部分组成: +/* +{ + index:[], //旧版本的下标数组形式 + value:[] //菜单中的valve,结构和下标结果数组一样,只是把下标替换成了value而已 +} +*/ +// 以下演示数据中,我故意把value设置成跟name一样,只是为了方便演示,使示例更加易懂,实际使用时候value应该是一个标识,给后台识别所用的. +// 数据较长,请仔细查看。 +export default [ + { + "name":'综合', + "type": 'filter', + "submenu": [{ + "submenu": [ + + ] + }, + ], + }, + { + name:'品牌', + "type": 'filter', + "submenu": [{ + "name": '品牌', + "value": "品牌", + "submenu": [{ + "name": "帕森", + "value": "帕森", + }, + { + "name": "海伦凯勒", + "value": "海伦凯勒", + }, + ] + }, + ] + }, + { + "name":'功能', + "type": 'filter', + "submenu": [{ + "name": "智能排序", + "value": "智能排序" + }, + { + "name": "离我最近", + "value": "离我最近" + }, + { + "name": "人均从高到低", + "value": "人均从高到低" + }, + { + "name": "人均从低到高", + "value": "人均从低到高" + } + ] + }, + { + "name":'材质', + "type": 'filter', + "submenu": [{ + "submenu": [{ + "name": "满减活动", + "value": "满减活动" + }, + { + "name": "打折优惠", + "value": "打折优惠" + }, + { + "name": "会员专享", + "value": "会员专享" + } + ] + } + ] + }, + { + "name":'折扣', + "type": 'filter', + "submenu": [{ + "name": "折扣(多选)", + "submenu": [{ + "name": "满减活动", + "value": "满减活动" + }, + { + "name": "打折优惠", + "value": "打折优惠" + }, + { + "name": "会员专享", + "value": "会员专享" + } + ] + } + ] + } +] + diff --git a/components/HM-filterDropdown/HM-filterDropdown.vue b/components/HM-filterDropdown/HM-filterDropdown.vue new file mode 100644 index 0000000..b3c4ffd --- /dev/null +++ b/components/HM-filterDropdown/HM-filterDropdown.vue @@ -0,0 +1,785 @@ + + + diff --git a/components/card.vue b/components/card.vue new file mode 100644 index 0000000..8c3b35f --- /dev/null +++ b/components/card.vue @@ -0,0 +1,19 @@ + + + + + diff --git a/components/uni-drawer/uni-drawer.vue b/components/uni-drawer/uni-drawer.vue new file mode 100644 index 0000000..ecf6b2f --- /dev/null +++ b/components/uni-drawer/uni-drawer.vue @@ -0,0 +1,170 @@ + + + + + diff --git a/pages/index/index.vue b/pages/index/index.vue index a468f34..3c3339b 100644 --- a/pages/index/index.vue +++ b/pages/index/index.vue @@ -1,56 +1,308 @@ - diff --git a/static/img/goods/p1.jpg b/static/img/goods/p1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0b48e5ac5e474259f84fcaea06e82fe9f5b03d78 GIT binary patch literal 11530 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 literal 0 HcmV?d00001 diff --git a/static/img/goods/p2.jpg b/static/img/goods/p2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9720648b72f46e1671e5b1434005687c4a1beeb9 GIT binary patch literal 16688 zcmb4qcQjmI)b{8`?+FnlMh`&{y$piUM~xPulhL~nZM3MP_c|E8_aunkjb5X-Xi}T!@oGOu`vFN_x}qv z77i{R1|~iLNbs*;n+$;Q4;B;aU$8hhgv9^UF|n`#IOMn#%y|6xl(JMWw9JD9ToUqu z)GW~2E*h|F@FXp$plPZg+=7w>Ubm;)lZ%NbNUk<50?K;l40;2}H+u zC($3)scAs35s6P&gS&q}E&_OkEAPx8h6ZiB|d+}3D#hzr@l3BiKY+nE~Xr&>U z9*~8p)a{Jt`)3qxZhe2gl$qzo-u`3I?=IN!S)e%cmiSDz09z*7sk2S3zOKiPgVt<#T+YK4r#!wTxX|Zmu6N^Q=nCE1*w4E7eag-{miOLREK#}lv@hM4TU*0k zQq*7Wcf);Gx?LDW_%kaU=Gs_1CeNdOi(X$9qhaxacd~2i(cw5l)lM!lc)A}UNk}0y zJPO){9c9UiDY~TzkB_2)EZGc&Dw%TRQ#3A&+rzmvbGI7$+(w<{F*{2m4JU zv=qBawtyY8w0L|vdo$0WqylhKH&w&YJ0&hgtXKsHa~CsSG9?Oe?|if3Y#=L0i@*w` ztpY@Xw0prx2^vCVX;kTq5Cd&a0g+NDLKDd>BG9U@fwya9F)Bx4gXf4TA=ozI&IjaT zmCLF$XY%{O^0Yc@%3-;m&a9meyDM@!VPvm8980OsOg1|}r7W#McspHnfPB?ErnjN? zm{rCZcjGhtZN{zenp6&5Aj81$PDkHqBYHXMy}VKNsiV2}#gwo<8>^Gbl|J;HZE_X} zAfOvfnTvEjwAC+kHEH`1YokQF)kghG07-_v`BBgW&2`5zMY&Ss>2$+e)Kr31f zHB?ktqvv)mqiU)BSO1bue%Kej)<(jho+DS=UxM}T#ImXOVtrMut!rr)Ue>=*){Grm zh3H*Pw#ow8xjMHtMd&jwN^~ijB~eOhoVdpJ@4Oc1bb-#QjB82iG;Ib4-R`IPT4W<-z2Q3r} zY|63fY~W#!FDkVp3t)+Yrco#RqKgSI3V8-<<}({ae!w$by~IT$If*NcoGUxcg z{@m#n3Jp)~vW7jFB65t+j+9LcbL8R}fMW{#D56zfJxQ5!)p;7^a)!=l{#QrXN$k<( zwe&8DXQ*<6nODM>OlV1S3R0V&)E2bu#H)337vt*FUuVAWKLQ||;|-9{i_er&>0am* z)96RDyFlvuLF8R8%32=*iw2toN-QE1`661DOwT6O5!VFRPL72gZ z{T4WDuuFp{JNx&Zdk19wiuaw%pL~+T?QTCkmGK`0KlewPn{yA#D@8Xbk%r}{ru$cx zU)2%YLq-!7bKx)R4C_}xbwE!E(IFXYxk#W^Hx;<4+)j_!BO(OH96N#QH*igd!zlC| zoc?a97e9F;7eX~O=QIQtsL=+qIy7%#;21`{rI=c712_g;={n=+C~$tnlS`s~RK66`L<)b`eH3zijRJ zXKOh(Fmrqi^e{E!lS=R^X+g;!FC2_Lp!(q?MNNmp>^eVdjkekg8*wwIN8js;ZY)Jv zFK~9IBps$CZ*8MP!=Jf`ir1+=RRwAt$LO50b>#(b8NhfdeO z&>Y^qWNtw^B8rgs>PBzRFa{;2#a|N`0U#+CsXfHsOT|u%=KXW_j?iqV7R9LnH|4R= z?tH#sN5OQ`wz-t4o>UAKIQO>H2@97IfgIAsvs}zkI$}kcvXssmeS{3{*S>wbxk2+j z*S@Xkw?7oKlT#hKX~nUWGM$9NVcN(IdoQ2mrdJ}nwQBLl@nCeYZgkaw&iB~n;ER{e z&u`7tr&Dz=dK_P;YqK`Z#x3spHenWc5pg%FuTYx{{PwTecZiLC$a28<72dTKs7A%O zsoo_OCl}=ndxX8u-SLs_FB0?S>^l$U<2aI!XE{-r%*JXzP?B_Sbw4nEnUT9?46Hqd+4$U)5+qiJU z=J&9zCMxp^S#tVC|0L=ep&gm^qRj>H@4vU{w|3G<*#zfwHYo(3pM6lk*wuz(S784} zP)K3rBHcNc&_!og_^g`tlHEY#XPY5C%j$`L%pQV_c@X&yUtK=>G}Mx~8uG(7z_f@4 zv9~I*!X?jSlm-U1I+bvj?30ZSt3JzF zm6WXrHA-4ei8)GEYwf2+nKA2qpK;5;NoZcd!H4Y(DtBS$43$Khhgx$*?p_XhPG~!p zw#^c%KR?>M)?hh%Q9;KwyDnKOUk%GEez&B8Z@Q!j&sW1YOqwXxL>pgulMe8-oZ2;FdmDfa)nMyasqQu2`)k|8Itd};a04xKs zs-d9gd56lEpoFunxfo<~X}!gFn8_qcAzrM?X$L?=Qkty{vP-e1>~qdu`+k&?f()BQ zTapUldwl%@6j`Ja4+#{JEJx4lJ`wKT!o*RpAt96D4<+yHq!8gS&NSbTGZ8#4JrFyb zJx-Fe`Rb5~JRrE_Y5O?Xo375PwA$nxdMcvmevWWJF~2oe6;sRi&CYlK{BCz8Z(q?P zCx1r3$?E&G(k3$ILf4 zohS`tLq&3{6~JF7dev9@ba9r`Vnxf94~jaxDbV5(r6Vhs z^_m99W%So=ZWn+{AeSXL0+cMYcdhJUojqmpvDpL17C4(4$6xZ{K=Js*Ppq=C=bcVE zF|xY`TH&OD^}LfBdxQ-Tnbhxo+FDS!+(46qHuV3(29F~+dZLq7uQ$CArq)^t6QlB? z7WtG%mEV9dz!1z&Eux6SIkCc@UDRPICaTCUX4#Zrh!IF^5t>F|cj}9|1bCuMZSFj&kN2 zQW7g{_Ud$TimBk9&CjPRjIrl3U`mWX(f`~kC7t8rllaO&&R#|@+HuiJ@M?_qD+<5y zd`+%t^RP6s3hw9M3v;*no}Kp9Q-3?b~{ECp#5}g<oONXw2;OQDCt>ZcC zipdW@Ghx%H`9!iI@RA1;aTybi=N1RKw#>9(*r`qKz}6?QL&_A)qJ4^GhfRXuJEosr za)J#E|KF$zPB-Y^1lt)VO@k?gj?YQ@9qn$EeXdR2g=k({Uw>up79b0~&B9a`0T3a$ znp*_zxcc}y`m#%83gUhx+6Ra=zRhUa&vZLR78$=c(&&fTizs=hmEOFQu#C2ut!-PI zlFsO!9Ft|>FPL94*9_495y!#wNBz65I157d@2^kk$w8nzA0c3nu4)(On|E=ku5_8T z>Z}6Z5Iu?_c9P8xNf;7;6&d0qfoI1fsnuuDuub(d|70W{sAJKP%ajTq$T`$(lNg`% zsjde30h}Gs>m>g+nTnrBVV2ov)4DUi2F0zcSY3avKKmaJi_L01qXn633Zz zINvT9BU%KE5?B@`!aIt#IhUhB+|Lk=IMJLUl6Sk3`vlHeb4$<5C|?|Tx;IV5>p$P5 zd)?FLX|d{>HGo~pu;y!qo@{oIEs|xTrCb^`N9nYLyGS55Z?)N$L{kjlPW}Rjv;$|( zWkKqp_COt(fj>5L)U4OBuN(}q$tj1U;yFB2B9F8+6LN4oL@K^)GVXi1Jp%Mw9&%vY z;};*ICRMFAQa2=rt8V$xjwuImBvMqDrgi%}xii|u7aKe|@|lg5tz3rW#INc?I>uq=q}w30mP{7UTTqj6$t7hQF6T)!i~8KA)OcHSZm#U-}i-t}8}LD|!g;JNUo^ zl0+_CYYxG6xVm9_NhOkrog4XeOHnb$EG==%Y(Bj(<@->E)6XB;1wora`BtV&;3rML z|51zycyI<;S$WLuIAc%7QpfT}m-Unxc%I@p@V+8d7lGGrVW#(F4yj&C%8%HqgBzx- z)u`qcz%Rv7p2{Y?sg89xrds@5AN;sNH$H!WdUvB=CwBF-Y_E1)O)p~1&hv~UCJgLv zJjq}1lO`S$PXJiIru)M{7!c_}O;@c}HX~rqfEbc#4oc>PF^d=~V=?TuU&T86yBG?q zIfU~~wn&#$k1c}+|=VU zt9gzFu~sJJD$_C{z{w5tte~vTMsN~~hK%DV=gv`N^b{AVk7eDP3Ris2ch6d$f?{2w z_R38CV8xXtVtXh%c_z>=4Z5a2k zCA*trP&+NllqmgQ4ro}5>Cxc#r<6Qu1F<@(kRghVNS8X(Ul zFu$vRf?1V7$R;H7KsQ6jniyOq z`cLrH(@~?6x8@RR`>w+B-xewiBlGu6ubgb$?{}>O!jPN9!}uF$iMU4q%D~02#nt^L zZuN=T(N2TRySb*{T3rHN)cA%8nxS9H zq2572vvJk65=Fthm2TBDr;oZPzx}Js!o<5)ocQ-M}W&s z<%waftCrqnGUc7%CkNpnzgz{h_bpEKNB)Ycc}7x{K38HF^@^!Kn3v9Xlg*^JZ@VG* z?!X8F9oxc+CjC?A-CyvXK%V^>ykv=2UFw$>66f0_#*X$K+eBXB9%Ncw5d`3qB$4M) z$o@XFAGLYxgYN+WHlnnlgrc#u;!eIF>3Q{NIuS68^x*fft8gwCU8gNbqVJANy zW(FiCCk9Fa#zjk^iIE=zR$dBsTeMTF35P#7h3;`ef|#(^wz96D?tbN>6my?SxEM}& z#y67OFlFaL#F-?lxtPgIT$IcKXCT3#XW*h_yIE9{EX``c5&omy{)Mzs`D0)_Wp<%> zOP}lpoSVNwdt?9CCq^ljVDV!fi>pDoNRDndxFZ){R-%$N_NG(#i)XIryBH3UtE+f) z7N^X7yy7?Itzf^+3~)L{{UB16pvF++d3kB8(lkpWzC2PSpKwia->AL#bKGkByr$Pf z`DCPF;!lDA?ea%}F0k_DHCS(F<6G7ru+q#UAm0d?a>2prWV=AKwK>_h>|gXi0IZ0! z^>!nrWw1X~h$G#`8x|yT2xLSSD%xuum*~3ZEN+Hhr=+_YXx?&Zvz%5SdoMVp8$O*$ z3pAJ$SL%ku=Fr9!9KkxU3}=OoIy8%TAU;Ak0@G2tT;C3|Z;oEC|I%A2cxBZiqhpKB z;9o3DzR*9yGhKeyXtWXpUk+|de3OhNnvAoL6W!Cc3KBuKeNp)KJdA7koz`+#Pda_B z$yi;;xqVp?dLC~b;C-Mwlk+_7PoxwbsV?_Hy{U~t6%b3h@#BMa?Gd?fNe53RU+?@e z7yCp{lKal#!bKM8#{46IptnwX$@}QS=xWx(E@xcVz0}1t(x-^l&M)!`e!kx*y$%6e z3ZI3`LURr9YAwwkFq46i!nT{T3Gnn8$Ts~KP7N+YvIKJFq^Pmp~W2JRd z-m_#*sB>zT$m&pww%pQTVbUhP)TIr=FC&(YpI zVZb|a+SZZy;AXTWg(Y3VLp4Uz`u78#&+tB%`Bd7gp1tktn~1aHH+fHm^!ARJ!QDV7Bszg`=Zewo`LWYcLVJy!(+Dl^*`Suq>c&nuZK!6U$eRIy75rl4R%L%%Eo6vY9N32;|U%AyiHz5$bZ18&5B?e5GxT$&80c9B}~4s_f{1r_2fB-agv9lD8EL^ ztwNv)9U?{LtXwMgU1J#NrK(i1l^HcN{B@#SKT=*ddLmvAHTa=jCOA8;41P9<9yvE@q?HjMUIN+@H~$vtCbdeK3- z6f0Dy?YY!*eaQGie?8&svRHN&q1U&};W8b7Xy6mt{^P*6J}%n7!is;3VhSzt9SEnj z9QavU4Yut&e2RFrvLQUbe7pmlo#CtzXkfNCbaoXHnn(Ge%Ragr3w|w7!Npvs+op?U zqEKYrg5AD3Ole0+94?OJ>x9+S!>uP>T*7_~Z{g8r>K zEEcpXUT2==(Krw#%YUdhQkmaK!$_tUPWD5hDOSB#Rtv(=`#kpG^5cxYHW}Vd{olG?S{Tpo`rmJp&?9>gkNXf-rI7Yb~hN(6X`3sk&ni5fO(pR zR={{3WE|l1Ff;`PV9iXkLT&DCP#8QYrfl~Y7}^q7b*hb5+QxR#G!Wx>;GeueViDTc zAr~<85TIZ$D=k(Ta?Y@djkOn`oZ}nKqG>FBN1AaU`HFcVTW|_pgbCtZ9`NQcJAq*8 zKOl6K-Vz{v$+xc)eh|AR1vOv!jQnLte&y5OT79~G z0h`9Z`q%Oxd++$Zb#RcXSi&FbESy0_9HcFefTk8dhGO=wB;ae3Rf5;boKMNuDwjO`WH5 z!y$D~GhDHVlmv_$godns$}RKw)?sIc{mawkXBJq!tEhc~QS@_$N_f*rPLlwJ|B910 z8AMT;&rVSOGUs60M176o8be_51MWo={!1|ozJ2;a-4K}3WW%=-m-^Lb;LM*P#407> zEsF$*Ie{9GNEY!+z~w zk#P}RSlI6ez?pj#7W}^McfU?+;L||o#?Ay{Vs$HWX0HQZs z5ur1ckTU@W7pts;B$qu+55@2?RHM&Svp7xc6pgMa&)~ERr3>K~&fYfk3(f%hETEy1 zk_KCaA4>RZ_NkwWolsgB+r}XJErsho&n^l&+Q0&>UvwweA}itr%jL(r2N9 z@v@+;F!ZhG!qj()F%Q%2X`a`|Tm#_L$W1>Vl92E-Z{p1Jdn1USX49-)nH!$VYRzQ^12=KiT!UAvp6 z_SJmr+UfNeP^b+wu@ZS}-x#&#tdTePc|1SDP|AB-=m zoSwYrDLm1-*VwxviGsb`*~qJ!n<_d8>b;n!{}D+4$|6ICBrE~@srqcTg4MSNL{4TV z(Z$Mb@)}V1H+^tcCU{QmWnSHiRSf9$_qF@;+5`twUaaspFr}ccr ziGH5zXMUJz7r>L*JnI2zVRI&E{1HNA#Y7$@KmvMI@Fi*D=}N|3QN;UkA~xM`KV3|O zh83AKLr*?BjkGoQ1Bbp7P{rs}Hv%WnOXob*>~oHaQyEm$=W%_XAs^oRI#dcxWfW@5 zB@il>S^9nCo{H||UHS>@EEw|Un!o!p=1Q|j!>7oiI%m6sf5}kBPR!0Q@##$J3-Xpb z|D%cczEHoa-M-hmc-rs7&Z6FJ?V{%$`ASk2q49)P^$jkF!syZ&n2XEn&PTv!ofBHD zk4|C*8ISW0Cri$L>F{jLTO>V3Q*+o<*}%}?gRHjlx9M}VZN z@*C6*2k_aW*+nJvNv+T=h2DgVGEDG2;jc#aSMvOw2{<0cDRNiW^XwS2)6stg z@W*#ef9amDnGLPQT}LlIb5%^JDiH{WYSyIuZpGfUuU&Q)k#OeTwaE8-UXQc!x%4yj zt>&HUer6zv6&7t|@ju4?o@KFaJlLRS;cVlQW}mua*8)ea5Z13{u_zMz}@oo(KE8+IEGlX?nWj(nE^nyERVaQGGGh>TXkZ zi(BK11nleh8z~OOPfrYu=pEPxZ~CY!E?!xX&OHK{|LUzD^%wWA7d`@vzGo1d5+9k% z$Cy3%Yt&yOC5h*kfBvVV9S6G?iincFY`-beUpt&x3bQ1HRvoZe;nv_N%%6^MNAya{7}{;Zkq7 zj2vZ>vHfp3SoCFzGmU4`SwLgmc%h#__jWUt%Lhks2@?&qPCl;HDkROfo63h60 zg@=zYvYsxs7att#aaFg0R;=_;QvO+xWq z%y{=|ZE(`DQIk>8OVamJE3AOeOT-VlSX>R`m!vtSDAGF(Ms$FtKjjI;5qCR}=Nhx7 zVMXvh;~?bsd7dzwu{Wv|b8+nXYT=~eW>lue=ln~(6p>zIlp!5izSzBj|C@kW#HZno z6xjUpA$n8OM?kCGbk(H6xUY|ObnRPUi|G!TKr2{4>8LUEP~^r3xp`Tv(xpUwTB?~_ zV7N9~!%Vr(&)>*V%6bJ|`{T*}BX!B>*S&m(6O(m* zKb!w1P-n=SlF3wWlX%apNVw_Ql z5w zzj$Bo>FOwZG<{;3=8Y)@PoIOS?ERZ`$KTIykuuZ#5;Y#gxeoT?vG{<`h+QO(`0RI5 zcFqfT4*W4v!u<(n>7z?t%Ppt_Ep2}$HT(sHg4~uSs+WmvMM`s#6;Cdm<<&Lc?L zwJMsVC!QICU?_7<@`(IWG{| z$4?o01k@d9oR^K-^G^O4;qIj?)XRNQ;8snj-q`#jwn3DZ0Ml{i46z3_yz5&Zze+TH zas4p`HYDsG!DHumF40v+zi9e2+$e=DSvzZ8Q&{}3yZSLVOKiZw72HlnOhW=n{lV^2 zbdEiuLdQ$5t>8p0-|)GU`tUTv;>LtFEupyZCOwipF=wWyy``m4x3Z{HmNroeph%6_ zSf7^ZUP!)Rt$V%tEv(~AGNHAn$W_Og1DwmuOq7pRCxZ$9uo(JE6HYfn7JbAo%ttHm zLag&{Iv8)q9zTJ8T9wR)7qUm6%dG$jZ)Ys?&GZbTysOl3SR#`;8ZR!W@}~D8Eqakf z1UtE*z2z+%vqSJGukD0#Xv2W1{%Rc2k*T;mwj#$<4ClFOg9(4oG0N($08ZCfW%k+h z7kbgb6gP9$)y6dYwwQ_GnexURgYG4gp6qQlXR(kY!SNnzge`+}6kZqTGs z=Wh@GOf>h(c9!a8nMB&~$yOW9OKRQ>k`U>ab5aWNHpbU{sW`1gjEg+a$Ts3S%Mp0= z(WKwLaXNV4=lewcq}eWnGKplr@a-XrV8XphCqH^;FoTLr4E1#QwU<3ZZt}Nwyi2qi zV%K6XrJ_{!Bmbr}x%=|aH@p1<3<^T|IX4usd-}ni?lRKPjS81Q)W?>17DgNV!FwZC zuW#k8@hDm1SVt-wn%`hXn0w|*DV4y0Zw#s`kgo*coR=8gb+UlnwfuxL>eWX8aj_Gp zj@P#dm4Qu=2-fm%o-Mo=O^#hI|L4P4d&H9=2!r?V^eem zGYqU{j`>$T9Z5#!FacA|#b*oW%NmRXemo`4cll~7X0Ge6e+Z^F38EI-%Ad_T`nb^R zPh2IridNTFBT&@Y-^GsSXo1&p=+G{;J@v2PC#7H-vqyjc_a!*^5r72_ZpoBYG|fHO zHL7^#$tBr0S<1rR1f4pTbB{azp|Pnq^AYW|8m23_Lh7|z@Z??fiiK;TLR&dvNYO-w1is)0RS zr0yB&*hYQJjQt>?nZ_vzOf3c5d=uJvN6_y%O?`3ncTY2K__ByYw^|E?60_oeW)4ki zK-pUn04n?we#SuqlGkrFbVq9h=ey5j4}viyM7Dc!aegk0@Ll(8la&(dJ^}z2O*cG* zXIrWm4M@(VV7D;={|)in_VxGD3rmtI@G-}?%#1UG1|BxiYQ0m#4~2blT+?mr}XY`eb-}x$vf1owir2 zs7<;wKklC^@Xs!Qr06{?8?uK~t}d+Xo=@Y^V$B^F_m1Z4{*e_GDN(w&i8vbNn<#e= zA0j}9zQyJsc?4Mb_ka4tDa{3{-zqu1baxofaFx`Fr68zu)+_8}PNjShQih@afMGLB z0k3x=5w|;Io^pZgzRLI-3o`eUXVp2g-l%tDbm}IAG1rW!){aeN5nRhUM_+5IlG@s|)PJ$mDZU9H-F zSg~Aq@48&!ztb2b*dB5Jm4@=9#SQQJQvX7fVag^PM1M0mvGchh{&TkFq#_z2j0bHpjZ0T~?lf?zbXXi~wA`^S|~wRI7dy`AQX)8{Ab7XEjo} zeGNJ$)h`7vGx$__9ZVN)8N!tH-c)pa^T)&bqfe7*-Ev6r6-!l%Jv~kr+fRLkdA@Kw z0SE&dQb6~aNd20tE8R^Xd5!`Cs`P?tj)Ks^}ee8?UzWuM_etJ{*fC=nIgP7EKg2B+a%q4SbASD&??|H>lm zF3ZX{Ng6Voq16`B!4=+Su!V+qvad>a*Uot!hh)#EhfvEipns^1A2XDXz{;|%wYPv5?`7im{>)9M4za!! zs^D>PLEAk7+>Q)mSW9WOw4DYlM$MOFDK?zF2kxhS>1%uNsq=G{M1>I&aWQ|@->mCg zhy7v*no|Rvo>NeCXWbleJ21ixpMCTIalR@OVW;sO-h57opFHu5C6~Itr6}YPusjvz znOl1Q2PEWhc6Y8YaF82q7eu_&CRCEgqcmuY8o=QCllDofnGv~SlM-tw61$` z%&*3f#V78`KJ^ab)RTKPFHgRQsd~-F#}}2@K??`oPKP9OFEd=pG$qm>_;1eYlDa9p z|E6`vo4apX7hWYsY4N?Qd4=a=QWa;MPctulV6pCYY0BIf`YqI7!NR+HgC@h;fa-S% z^tirJ?zn>Ik~C1AjP%y#w5+APb0EnQ#qg=Og1$t;e})sn=s`f$xB4^H*3tqyrvDe% zIp)79muWshdwZUI>oC_kkoB|rMNwEJrwr=^H8aPPVv&P0y~bq5+{#ZosJ^q!UcW`n zK7a_X%`B$EdBsU@_({u90(GutG6jaT`bE?9FtXF$+DZ%gN$M zQcm-}IakC6fy|vLbeRKBbPMCG*VA!;n26CiA(l;9^~$qyFIPCAAnNRhX8zk0XXzGe zf7n`R)9ZN@MCq>n-4TlaQtXy!ibk*MYO>%hdm8qhNa7lmO2t>%xFX+C&Z`Fh6HUdm zg7c`5=pH5}npsay$)P}6diL4o>Efa0SFiI8Dl?2e&LX77Q2p|T$IoRZ38!h=b=r-Y z$)PDDThuK{slEPvW5gLvcd)ci zdt}TKf&R;4y=d{#Q~!Wf{#-*}=v>#)Evq-_FRbB%Hr|Q5T$Ed_k}TrpuQ{3Jz}1o)@i3em11$mvuGLKWK)6nN->q`~|7|gyedCi0u5@ zA4j4SNnzdSY&@eXHL?z2(1HZY<#uG1BBYo;aZ8FF*}8}&a;xkm0&KB)V2fcqR*rLbWsZGNy2~_$3{%S^H z?tLDgeEI|R!0#I}b>zo6tnJypZ1-ixW>T$221exKzet@up;cLC%L&rV5#w9-SeCdP5%Dp`T(*+~UQ04yq=Rkm=k zqNxM+&U9}C_F?=VIgIqeD*(e^oX&fk{;<=o#!MN&hopo(u*z>9X4KSS50whP4@XqK zk`fUjX!K}%Nl5VW_p9Fvi7?8YVm@n@z~&ufcXr-Qg!9c8J&fl~Q3XU4uk{_5Mv0w& zOMW_dbKpcSUp)+f{`GrT z9#q&)PT-aT2GC`qDM>fiMH!nSU=!hxO-2(rY6q(~o+=J)-h8^DFmqFCp0+04_KQPxrVgPE1aU}?Bz zD*(-{Kzfb2lWpRZ>p9WP4XeC*n#uf~huhzZ6H8(%P{S$NJ0nk|`||3T$k}Brzsa9R zY_5d4i`(463cx+=O{P)#q5PE(OVlr|aaf|jjh11rI6*}&2-1PTxBjn9k+HZyyh4IW^F?&8(w-< z#4QuUgiwiUK|G4eeov@#09GT6)FC<)SF{qY*-T+!b`pIMa6wm3RT})Sa$2=%Nrij0 zFmxN+G6%c2Oyv{Yf`!p<(;H0*^hfV_gVi-v#(2)OhsG$J6NWlc zC1eLc4onO-CtJu_m6fnJh7xZET2gX??52cwtCW56iW=fan&&z=EC4+0xe*moJARTL%hC|l-8iL8D4ZQM*dX^Ly#-K3Gp-)@+b`a+Jdwq`?Tqs0Z{ z;-kg*HMC?ZDu@XvJCgKAl(D-Q93kKDxTwD0<)4!OJazZVc=x2#Uh33^(U)WO+zx8z>U?hSW`Nn?KA({+MCTm>OiheE#{3zJrPk8i(I zA!W^zaONaCRJD>)lFH|1JS>X{DyX3qtAGmy)o{3Us)YQt6Qsq=HGx>QwDS#q6oO?l z=MNaYMoioW=NlY|&ez$+UY4bq*`;Evb8Jb2Y7qG^MD>|pQI&@Lqk?qJl!Xx|Iw>_d zIQ$TE3)g9Ican0q=b9dSEVl){piWpAV&zA)`|(CDa(6wJ0fJ_L0gdS2I-~ua-@}&@hYTi0Wd2oEtsy1Gw~{xqp2S7ItobXg z)AgVc5XJ`48zHQJDvI%>r1mDm`8FhOkdx}>)71U<&Tu)iBk9T9k1Vs6B__bEl4!vn{L}6(WpAq`VTYiNJWJ zZcQ+~-6ZeXJ-wwso`xomSN^!hI&BkE6zJs`F4Cu_IU6^Fck-3~xGIDgN1xDR3?Dd@ zw1soTxLP*6C^TsBbhD(ur+F22tw^)1m}DZS?B4K;3l?DbFx06@tK3gO%P8h-#fi-> zw~FMN*a-zi?7%sxS#od)%)yr=IZYmk*8W;tk9}+c zdQy1O^`M)zpvARrSh^A9_I6O|nwRV0{QXfGFZkeB<4`3aJ@^p28Fe>Iq^&`d;p ztKx}}50mlK^#x_^Z0fjKT}J*a$vtG<^Y`iB3CFG(ReEG&HA89QKjvJE>V%th?4U#3 z?VW!_xPrpTYM>2BWj)!a700#ZIdWSK!k2X*Mpn~(|7U)+3rGcWs$2n!SR4@U8}@8*$$LNCjKDMcEU`8_?!AhlN*E zV4HLjy|XP#yu_?^X_BA<*EL0D5DSi_jOH3d{Ka@cads*0#M+Y5}`J4zEOt9 zH>$;U%g>mk*v|H{aBPTufXCRDOE1?5Cg6`zVe zjIv>`?X*?#`>> zq^3&9avAmLUPolp%_liR|CNnp=^*8cRdu|4q}A>6|LqNA&9dZ_|Kx0MR@y@j>sSz3 z%?t40(_-e{ZYelPI-p6#RF|tC#?$Z&e9OEoV-{qScf4>KCdFk3LMRh^pY9>wHn6wS4)vmhXtgLbwoBcSF`LgX46b9RE!N=k0#Dn+l~3Bxk@0+9_Ce=v zF>B^?ctHSJlcf4g6#cTM)ZX5|iaTw+5}_B1ar?LV*$22Nf36j87urWaB1HQyj-I`A zx?U8O>|p+D$amwN-Nj=85NYrVD1bVBj2+q_6ywy!Z20wMhj8j~{E7k4rAREtAF3ps zP?a4c%UT}SV27Yvs{*N5{RkCJJQG@q*Ut{7x#0q_%1>g*CuJbkm6>+;<*}8)r5ssV zj7VOxG?Dz&gcSff1-omTX_I9tLD!t%bR+#!;7Vs808c^-L--}a2}um9lxyxzYE)-U zJB}5tG^Br+PEnyC2-X=w zNKru|)Hy%qpCab9L$TWFCq-XSF3~JFlGQ<Kin%|= z|HP9Pi-ZOy>`-M9O*3oXYrF}y^{67Q{1qk9`CRqW6AJMyb`~!ujqcWF_+4QrzN}8dPQ_FA+rbY8XVr5t=S zI^$W&u_CZd_v)T|U-mDMI(rVom_tMX=6hVzO#9>tu@T=6L>?~T7Sou2Vb zFI9I{BY}a~_Io|i)TD0-%v|fn_cOm>Wx8%}g|>L@&<<^7gE6f4gPK}LV-96NV=oNO zqf}!}%}bDr9t6eK3~@yuWd7)s8kWKpK=Jq&rO@zYg4d@TD6#Ulkpo+4dK>J0w+E5s3>I7_AG7a-##fq%&{$xE z0E697j+4v~Ru*$WT;!3aJGhFq;|$ppHUJdq;<~-M`H;#=TWH`NF-XF} z8Bm-L(QFCHc^&%*;39+jr~HiApdr)L9>5a9R)PZYSjk)L{8&eWr}xNrgg=+waT@%k zBDVG?aJmky{Mb@9?%o|Vx)-ii+=6T^f<-!?x2AO!{wbu6T#}mq%kAcwyc7WH*$w}e z!+}^q&f;}tMkjs7<4UYM8prWoyf#KNo_J6E%X;r5D*bEDzTY>5TPbE0TtL(#m*4iD|-y@0}xxwV?qnN=pRiv8wTA YuELq$xVT#(BouAOZ|6{4kb(;T+2bhA5&!@I literal 0 HcmV?d00001 diff --git a/static/img/goods/p3.jpg b/static/img/goods/p3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..59f79beeb4c5ad998225b6e4f2815e384a07aa58 GIT binary patch literal 15369 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 literal 0 HcmV?d00001 diff --git a/static/img/goods/p5.jpg b/static/img/goods/p5.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ed4256eeecea304597264312375ca974ea97478d GIT binary patch literal 30322 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 literal 0 HcmV?d00001 diff --git a/static/img/goods/p6.jpg b/static/img/goods/p6.jpg new file mode 100644 index 0000000000000000000000000000000000000000..12427ec414dbf4316a95f12ec807877067336acd GIT binary patch literal 6395 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 K6dFo&KmA`IG#d#3 literal 0 HcmV?d00001 diff --git a/static/img/goods/p7.jpg b/static/img/goods/p7.jpg new file mode 100644 index 0000000000000000000000000000000000000000..095a8bc083b0f6410a3ee7fafc5cc9b8f9fc03ce GIT binary patch literal 20570 zcmb@t1yEdV(gppt{UaSKhR<#+*wg{2jZQCp_e(Fn;a=v%p`a#|xkkBbzS)KC0X zOOFNk8;pM&{cHPQdhs6qeJSzeuT3o62ZXpd0K9*B^|$qtzgEdu1s=*$Pzed^KrCF{ zLXzw7*kCE2$>oa11Ybbkgs%SjGY=sAtMzZ=Cjegx z68s)&^k}oO7U8X|zW!ZD%hm~J9(F(Kk?=jBz*ZPvx2Z=ywad5E1b3ShCFk}bTFs&4 zos_ltJHka0WwWVv?mvKS-DkaY5q`pgOWV6-YfZE32?Ii&x?zd|*hVIA*#u^4TtHHI zs7xuk1-|sKa)EE=DGxUfpABE17Wo>2CaQl;w|xSvV+-NUCWacbtZ#2dWb{6Uv}tr4 z463MCD;o5Xt!wi2I6%#^o2Tbg*^3rmeI6;h*UTUJ1DNI4I&KM?(2lZsXk35CWo+4G z=+gUMKTOazE`lflq^XpYn&>TT<@b`=shzPh0ncWSM6uj!Y$6e^g z9{|1gozTZrR723k3f&kaI4uGh>kiz4mneGFH|7^{M`PbXIN0t?S{)`36IpWVd9`~m!j z{_+3jzH+k}Jw{(rbJaXh^=lZhuR)o#Y89L1ka?law1IsP@KbFec?S;R*{=y3x}Rdh zjn+^bv-kDI!%)W#;}}R3?hd<;M9M}61WR;brC3%JXZIJcw6-sMoOl1^$0Kh2-{O8R z{{YO}r2Cfs05mM^$2RBkE`C?`w=yWHEM}jETQM*d+JSXPL>!xA&fcTZhta!6FP7iQ zy$U9KedShcbGO9Ep81B~7ccR#c(I zKjG2}Hnr|1o!PR)1I(|C8Qi z`8oTieZJ4Le)YH&O35yZX}%GHSri-}1x<#^vTQ-Jpv8t!YX#yDHd-0+PP1h{5GtP8 z)(zSotxTcqNT-zUI_5zY*YsTHX{t`LhoAgazP0!iz7Gu$XYf<<^ks4i8l37 z45$K$``+1tWktW-6%u;xxX}MANEsjh1__jS9~_V_0$e)pdaq)r`&*`yA~{L9HC~Xo zpYi?3a?T^Yy|NFj(jZRK8j04vrIxH*$738zu}eEsRQ-ZBq8hxQ_em9|M+f?J+~be9 zeK8>`GBPGpVX6!Eh;_`-$-=#t$-8cr&3$#6#?X5LZnPc7dfdyIw!7bSLAT?G0g1Z(f zsvu8;@fDH3eN>tDSr9sCQTyYG$A$C#XSbmEj{9u0!HKz#H@JiMB0sO;-4Tb7a^mT2 zBg&h0_Nl=k%p}{?Z1#dmdSm=%oj_9As0;CEaZ*6`h{;;o`QvEVqeFd+HjSN7wWrw4 zyIt5&p*GfIVVWIni@qV%M=VYRVmRhI{~8`zao+!mKkC1C(r5oUGKIO+*QV_9RDB&{ z319vo&5f0j0YmE_L3QG>4doD3J_WXT22_xO24i zW6%+reVa^a3YUXac1JSH)v)3`=B ztQdR}!tE`U|E0nBzdE>X@U?iy%Y+X_|6kN9UkYQ_36m#~ioR5Bdm>GYXsBGX5afa{QYgDq^l z;<_Apza(SFXNgbrsGELRNfG}t3rk$SPzQH=itK5xAt4z10D1-k@J*?u=;`?6%r52b zT)X}P>_@M-;pj4A4*Y@Y5o!Ck?gc)o{mQAv&aT;k6ssQLXaCIgTnnCmXZjGohhI0n zy4NWTzNdYC=lOX`A^%VpXXDA%qkc22RrLPY%tV6&^q>m%k-{z$cH}K;wvZa#$U{*$ zw68mapi054?c69#Yo8#@@PUz|N4=ocv?pVdusq+#%v?4u#u>H^U5D~_N0(aqD02Ql z+-sR<%i`0HW3WQmbnc&2s@87oU5x3$mYK=|8Whb85V<5ONT|+NRchf6T*rcItMOjD z$<8kfLJYS?nv2G4I5~D3Gic> zaW0>NJ`7*89?ql~5AU}YPbyG z!b*+5Y+u$jeoK4ty9})NfK?zIt2ICG;p@jr?hs&xxc@!%1g^>?dV(f6lA6w>FYAO2 z@gOP6Mv;K{8NjM#M)H+X*RS?Avzi4=vN5E<6Qwsn92=m~oF2YTZ;W{f9R8Ru7yyv0FV2zlbTAy_$vW|XwSuOsY(b2_?8zgLA%b;n(p zuc#?`yN-s5&SvHOYffwdsL7ZVvmbt)#rt;GBtV5#xgA+1L0DguScs@#vMFn7m3C!o zvBr3BzODwL805<6>$2xl+$73iUPcLVfnjhKKhLPJ8TRvwJ>vz09;Bxi$$a~I${Qi* z_i-fCI`a>p)|+?UO=#TU*>J(e{(YFH#&=?_O6~_kHKIvW+dgreptv@YTY5v~boZK0 zwUQ2(5hNM|ZDOY>Ps#BrFqG4-1RAA*rV#`E1;#hx=6lQ3ZtKUK$x3$nc04~Ef<&mR zMCcajzsr*L8KeBA1>mZ`j&b(gqg^&(OsKC;A%eA*d^`^%>*(6cuH%wg7#!+uY@}%W zHSkNQrWXy}B9FAO0qLZ{1@}2SJJgZhzWe9CS&2SM`Cm9hv0Z5}D&7UHq=$(5{N zFG8lml4s}}4J4-~xD#Iee$uVN16h=+MgZ_R&~f1;(c&blxC_74@COBI^eW;??BudO zK#k?_aTO&}DGO64J#@Hez6mAO8b4>u=xH6-)j*JibCD2GI`Y*Ne>Zr(OqzQo8sB}- zNVz!Z>cN%i#GO<)^d0n^`uR5eI043_|CwOXAJ5oUxRt;!romdwxpRJ;JZj2m+CVML zoR*9(Xp-?*T9N+4FU{zh$N;D4TeDQ-+yrn4Jlnnjk(48GeZ1BeGgB-ITUUrajF?K~i{2+-kla224C`mUaLiQnr2RPN4*=7G z??hUxPPZvwKa@a_(!@iaM}9Wf7ZA);C!^&LY0Yfmdq??BIP+|>l(kMo(O~Zl8LSX+ zzOqo%aIh@`-EblHV3bB>v%meM-RRG=4vVQQRE70bhd7Deu_T3=x%RK*82Kh&ARv!f8i()2|8cnxNJ&N=BTb0uie%CVi?6~>+9nkWWpW@Hml<yCB1cJn>P z_3yYA$6MD(Xdc?Q&Qe=G28OX?g|Q&PU($QhU$QAEr!_GWz!pk&!c+5P1@K__^3^5` zj_X{c5~jyPs7dxhvtbMX_2L{J>4H^ypvPpv77#i zvF9g-3|j$>r#N|SA*QMj2%?Y@DA6>L@Gae)iW<8z$D({Qie2YT2av##Tfb5~c)wRx z@+CD@<+(H?D<&uIWtYNzvU7$1$L8ISu^x?GY(MmV2RTjzQS91(GrcVt2-JsP`HkT9 z{d`-KpYWk8r#SK66LPDA5jJfozw9r4aMa?HXJnVzQ;}j7xkQ{keNVg-$7)4L2`sB? zj0;B~jp{0fclNGZ6mRU1S0(DkYK?)0>$!7jbi%3^pph64H2*xI1TkTc=p$E5G3CgQ z$uydlH}^yWRt&2-Q;Sjx9!bAKuKXHT?!D+fyY-C&SdH26YD1MnpW+ zO(8JS>50QAe)$8SSTzyY^CU<^^QSNJgzI4{qT3zHkE%4JEaNzh_%py%^NAx>jrnMH zT8+T9Mr6lKHIM3r{?=*iXfui)tIWb6b1#7>tfelc!3VSXv=NubPheoTXPI*1f0s)IB~+n-fJ@8zLL>WoHPk=?pi(59w(pp z8kZ{3sjf>b6PblO^?XGcIO{hQtN9#lULtnK+OjYqZij(1%&vdFse_g2J zb1ZSwociwiRVXFsIZIl88_gI_e|k9({!H9Oys&vynrv(G4}dt^;*os#6bM@7O`lpplbX_nloql0x_jKwbN}G-O-tL06)u%$p9|0 z$}6nAfNF4V$57U=TOm8LWx9nvFewt^SBUE_i@-nGwBW*f_iGyYoe_0pC|^Auo`#&F z5IyYTv`bx-gdA8$CQqE^kD;3YBK;D`;S(2DbVLW^ zkN~?zIl(={>u)NH`j4X1bSpVlQY`D|WjPp%0#+YB38>F-3dZ?;Jf4`62CFADzR#PHXuWb6E@(A1~Ezt7R@9DM#8P0_)|wDR@JNmv3Y2&KJ~BljbU&03 zkS9=E4!L_R5$_L}X zW)UvbnJo}s44=buT#kM%b}zPk0`%*xM#9&*zk}iZYg8YJ6$;;tNVTcqDJg}^cuHNU z442`=?zmm997^3cd}D`V=i7-@mt9W*lSKGRB&w)qFuIfJlt)#S5t`8Mu|{9rw?>rM zy;ti?F`R8Q4j&naC%Q^ew{nK)#pG=jjjBJD8nwlF(e&E=U4mfgk6GcZzlM8C%3uJx? zv7W@3@wpEbPR!@9_EW6II4U}cuOW)^A+WV*oN}u?g$p!5*Q@42tI=}G!QLV^Zg~Eq z=h818UAwQX7B7&>33DbIZXD0-zG^~BkWVi^8Om_EUF;XBfVGnlr2uijtH|Pfnye|F z-{@)6a@yhZ?WCAv1zJ9(XW`9b);tDKIChb%-yo|ZOD@~%2?BnJG>fzM0Y;m5EgH8_ zByyMPx@GvrDd!5MW@>l2$s~W$;oQA!EA`UvZ|11~Pv-a!M)cdip-+^3NKpN#&_R=M&y&vRcm?XbO|zH_PbnNKZ#e2-D-!zsf}GABQluz^&)-@!%u8vVCX3i| zNkSqe5{!H-RQ2+Yey54M3+eU;)@G5Y*!b(&dCY35eSv`0$U2@JZ9lgw4>(EptHZep4pMc1!{b}Tv&Z4{x&tqOxLQFH`VLFSGiD#NZ8dVO}Qn)%=1B z8I(*N!eqN1?Q!9)oAgDGEpSQ7sbaKQC7^LwGySHb7Q_m64znrT37_S;Ea4&)!>+9C zqWzLHWLq!JqLziEMHbsXg6MLHm)cSNu9kjv4)kutA&KK@U)91rzQc~_lK6LJA5eT& z4zZUB&ZOY+Z2qbZD{a!SPN!KcR@H&?vvZ`ViVjNpdobI~>gQGTyw7fdbXN5r#1;~d zmlMjlF%KrDJ!rxeM$`oPSMYFg_`N88S9>ZeUtc86sOkVx&B^v1m$_a0{Hi7@cvAR& z)F{HcMeF4`W%N&}@DtsBy=-jB=b0a>zFx8LRtIl8bMs*5P<unAY%gv|Vbu?ZZ8vwFqD^fhCM)ZpGN63>sZbQ{O^BU&WB75hkG%#@6 z#Mi`kDX>3_vUJ=w8I6TP*JI)KX0Rh!dun)(e?Cx#hGm$t_;!gWa8%7Eg;J)8u{Cbe zkh~v3${+O=^SVb*+C}tpCgiitr3}S3_bXHHol`6O1TD=agtzjxy5&6N;`APr zpl9t7*$3-E8h-r#>c|e*-MdL?52%e=pIizpMdEy`hL)5O)9HQC zt5JdL&sRj0R=vt_el$f{NW##As$Br>{~p$1pDTHy5*+=^=rXFZH`T#3%}hTLn$XN4 z=h*_;KWG&J@u)rK0cnf=+Rt+|Xv8Si*iLZ!i?@_~DeO*+^&{y`Pl}91RF!Wt!S_`A zUft6riq3g;mrT)Ec$d=fKxCe5y7K4};l$-9uL^Et;NLWC7CSLUmwictzENY+ zr&AXlOQNrS7kpc049u3fB-|w;r={#%nleH!ejA^0RD)|zAXKU1j_ZtMfn*zzv;Afx z9KU_SsurqIZlmbkj0YZb3Fc`WM&oueS0p945>bgCmsUI}T=vp$bC6{0+Sw2W7qnXx ziG7TU(!u%+&p0;x7vn}_K#3xQm4;viCs79^_^ftqL9g$y{a_7CPjeeoA@^kExt{BK zezwBfq_Kbxdr!N5Kb^#c!gYBngDYd|;Lo06v8U6fPn;6O=qm^YZz;c1!K=PofIMBa zjiUWckg8FlnrW%1Mz$eNLEy&PNGT=f9$bn?E7wVoULA%j=T|2hCesWj21b@ZLt%qe z^0sb+Vlr{_`jTs84YduY_3XC6#UXu%(|y9LKZfVlUxw2^^s zZYn&mtRg0c-Y4kOp*P5I{x`LVA`rM15r@J#JHaj!2!7zT(*f1((0v{7@2m~(tN5Yn z9%_5*JU1%q9U>vQ>&K= zVXH?aso*wc$s-z>MNZNxu-}A!ac8_153D+tT0jSKPj>a&sh#K3=)LK)cqX3yWjq3E zRPH3!H%9vfA*JbB2i9~SEnSJ6Gh2|>ti-bdBVTZ=Eg0h>5Bu0Mnm**|J5I#!PV|^x4NBty?ycQ!>qk$0e`1a~4%Nm4k@$SkgiRvPRCYZ6Qq9 zMR;1$?0t#dbJ{$JYc?8rJJ-Gu0(F`d8=z*dqoO0jIWWyb5?bn^Vf!m>&qz3CbpAJf z)?+viRHxhxqh!8pG~w~o8s3UoM-@gn@(Fke{<|2g9$ zgF9=iUlV@-1bbg6F$2Fjx8FjNkZ*?+Y793>H&D9+E>JETLor#fIq7`~gRX4%e z5&iIS(*R|*k{*Jo+Pz7@H+3s?#QIVg+F8vl(^0RuY{Ht9E|Ipe5fVb2!Im9z1O}27 z{W1-TEZ*y4`U7yPpN#eF>e*ExKHB=!c(D5jz`Sn)av_=iEFD-nOrT&O#PO2OU)9E3 zBCE}$GUd^I(+WXUzqUSwt)9AXy;k64Uj zbzIWfL7V850VsamdaQ)U2FuHIsAA+T&N*Q9QMxzFJ?2)Z*MSL`Jy8u~T7SSsnN)zV zyI5OYm%`s5b`sbs$@MrM4J&@xDd|5NU6LIox^4&8RFp6EOBJH3`zan%uB*w)*%>{t zZ>*T`Z7pRT^;ziSa_eE4fwxZgtK1u^)c%blJy&RTqBD+Af^xjm; z07wSbmfV-Rwbzdr(Favy3Lx<=vgSy81;a23UrTO@b_%&r*w0RC$`#-9=>o}A4`IvhekAZyj@Hm;cB{=7d|Dx*s zIBnk20T=;tpLsXzTDeXiZz%V&U;!*}&5}oS%pYNx;VXZejxzrG@taPdNt-#8Ln zYA9Z9EA?)c!?yhofZ9OSa8UY?g6A zgmSD&qPp*u18{OQ?Q-$Z%?p;h~d}=bkYs@)f(*8zM2( z__(~qy@E$p${3QhG(As3ge zq%ab$%Q9NUqXAAj^K62qu_;%K?>|Pwz8^=5d|@!oDnCcd`<{MNam)_}6sC_GTD-Pr zd$2pbsFx>4w%_r?1xfD>vg29wO@X=LbD_l~U&Kq>cdMvrARDh(a1uLA&w;8Vddw;< zQyTF2!w%kf?g{^xxK+ZhwjMf5L{(^((?)QkYirl9iJ3otf z6^0nLVqvQ?Vio}eQNb5^viAuE75-YyduFl1Z;Ul_D<3vFx0iMZGmno+ z)tEfNH?bcS+DgC3H&}y~4b(%ElG&uc308V+wi0NH{N^Zt@z(Fu>vN)HTQRUKsYYZA zkhqvFclr6Fl-Z{e1w`LDke2PW#Ptk=f>e3c@w&@vY^>7gS zbeCWno0>V(~k|@WZBf-H^y0miK7$U^TRJVirl1Z$Nbxnf3=dtb^`BK{R8%ti+KJo70YqUzhPWyaP)t=gwmS^@W5 zG6X=W#E8B!GFz@m*_|wWN$FIq}YViMlKPat1q9Nr!OKJ22aU@8-*qNcxCUG(@08MZz9uWZzeqghB{g_vKv69;1au={4}_)~bgEY&Im@Bhe@-nmoMCfa6xkv%inq{cum?0h(z!g+nShGfhn@;0p!dcF02!P%p5yJDZTtr2*qXzU#Q_ z!=&_>fnozB?A(9-fk{5uzhN zQSt|nm7VXmeIBYJWf;nKkwwxo&j;eD7OIdl{>Jt z@VS#JO_*c!kYQiie?H+6Znk+4I&P!XYJ%<%J}W(Rq!ing*8*{*ywiw2BuvdyeD!p# zYo;$ya2BEH+YNj8_De3UXU`-xP-pz~cH8DDaOPKIC}k57N3KXhN2)2m-}uqT-4nY@ z;a;6qWc??3X9?EW?Cd=X?F=e}yfc%8p)#Ko4;QxH<63JXPbndA#b7KpqFv%Udb3%t zg{pQKq%ZM#c`yB?Iri@oKZnd@Y2sl^V?cc_rg zp}YI-58#}XI`QM%3IzDe=)No4;_F8qB}u)rkry{zrtS)fa|BoL`w9r@o$l1Mf-WT? zTL0zXkp53rTx3vs2>`9C=hk=lneM6Z#L9w47Fo5UWm=Z}ZyC6wH?_q>5 zn?#%SB!|R@ZC%~Qnkw+o;||$h*xDkfcNd?Rj=QP+d@Gwy9MDRKj&v}LZ!O|1pEC1( zh;th{smxMCrv_@)s!x07bV)t=O&uYW0cIH~^%&F#Sb{I+2CQjq z_=1M3Dwhy&x3>a%A3z;_lWcryu@k16sypOl z`2%ymcsQ=$(>0tFj}0=QuOo2lLn0c?a?~9X-7#{@(%s@owkn9v4liLDubm2ed=r4J zO|7@4%xu{U{h~NsK*h_>S6YePM%3iz*{^2w)|>X!9_##+;Cb&@|1ofd8uUFHa3fq| z2StzDC1aj|M$4=tm<{dt>`)&${s5NC5YAVue+dM8x$?Jd26#KUjwPSKc{WYVst zs-LNRIuF;W-NZmmLnNU>TE%J6&G&piv6xM}@+dt$y*Q;(>ff8}|Hj9EUH%sz@BCkU zJaT9Ex~1pF=`XFW=cgO>Z)~UXqNSN%^V>?B>9~6rs_&<#;vE-NgPLX3OotA^(i`I; z`6D-Dcf!t5Q{qJ=JGY)UQ08pl(?H=<9BQ^tM)=(7xWWBET#$+$mKv*K4|cFzmSIw* z6`=6N8_dwqIHRqWvaLKN!C!=N zmBi+piS~k5{8S}7+7k$U@>G$PK3q{fgA|3jFu+pP>P03WjZX99eioFT$N$qr6fWOqnJ~E1VeRHGg(%H*e@bmxbqybiR38}U-LedkoX-20SuIX^aRP5r1m2|tkCMMrh*LX~1xvnIC*eldoU}sW^8}mtwS@itqIm3g%yZ|Rk z)z7%|B6_DDk}O-R4<+_+trlG&><+Aj4(#oa*jXHv9e9zjJ;~ z&b29%gn<~P>Y)GtIj3ZUT6(G9*BFc%cYou9he_P>UQ3#MkVc@SF6tX!AMSQR8;1Jv zC(^*w9WV_ug;fE6w!Nab;2y~oTu7kFO%^ufi7;CF3A?Vy(mxa_h%5l<&Wwq>q4bvw zOO#c#^Sm2T^rEKW0^mAMim5X%gJ6Y^O4&tIIU`{?-*Bcwc;5`{&%4CQJZZdW>GRW}Y6x(}0(!-ku#060@N9n#(n^VM ztfmbmoI~8*Vd?X+C-2%2bsyl{$*D!(% zDlx}TNsWlcB)L$(wgItz^=-NsZqSXInwl!`e+Pd5_@BY=%8Lq;f77uBhyNXM*rPv; zx2GR&z#}WSb>wy5z$d2%CpFz}xG-yZGOoFee!5sUe%(?bSB8FG*6=lDNw#GoGrn~l z&5i8}j@}{_r{stN920zLy2i;NmXxC(wQgj1qh@D4$&AY?Pr&TMWtR7Wcm92?PpY?p z5oxLdW*|Jg6l8YpjhGM2nE0f!_q;|r{+p<~VYVeHE4`w{<=!*kfb~W9W812yO?)5C zl{QIlY*1%T8}G1Jkzhn5k7{siEG@nR`IGkgg-5&F#1L?f)Wx(?2>dc9X>SBmMVS>> zm2b%G#wD;(7#GaAgG`(>Gqcz&5m&Tm4=s-M=(kdq{p7@P0TfA$gUd*bF_&vfUSlJ< zgc_@2U>j5F8M#ROUCrmGjTBSRq@b$UMsa}xT*7z>Ng{G?Rg2aqOY;Rgip0>BAh+wV zk`>}?p6Ag0nt{N_xID59e+y`cr9Xz&*8PIGABej|zRr;`BBHX!iKD=Ul_916f?)5Y z0d7KH)P$LY`57*<-6+Myn@b%jFpI)AOaN!TfceF0NM;(;LZ$f$I{{v%qyARd&0%|5 zVnW@h9qF2eg4LvXts0!6CcQ#u(l-dQ2bMb6Hk_eb)iEMlj#aZiHRN zi;||F=_;b0_mbIQ7SxqJjzkk}H6n`x$xWc|F0bJ8vvwVn+3s-)ttCSAU(!L-i!h%8 zYPq)VOQlzRnU1{^D5DehUPU%JFlD%M*6VU+5@J|mX+Y2J{AlAw^26fyPlk%KWRqcCru6mouKFRsnl`9{W_hGE|0Bu}i1A^8P@Vwc*wk1?FQCrb>jp z^ID)NedY>TYRGUFQSO4fI&=H=n+Tc-`#ja1dk;%fbYwxYVj{jnLv@e%pbIRwSQBa4 z?S4X-_mgL%7Nt(WYs)6R$<&{z+B91IG?S6#i&48SRp@b+Hcgb_N$$32{egsC3shT- zR;rHA0&t@#a4^wzrxl``((^3Yd@^5YsY=-LYjvj-k+XtF;Du7t%Jl0jT~yYkQ3Ild ziY&`m&I^Mi^(XtP6iO@^E2Lkx0lvDHVYgZXg`l-Fi;+k+8qEg<=X}rc= zCxy4o@OmVa23_=9n9c^sNSi92qs$kwMQhEYhP_-_aRpDGd<%4{WAZr%W0HReevPei zRsDYNxDpw3F&Z%MTGX2+UpUDWqnV|q_59FDQUsTSi%TLH(S-2xZU=WBZx)sLBs+~` zzF7B~#fx1e0UV6SE676nv$MeL!Z+Cv9I!cgl9oOroiMnGEoh^W>o+$ot>vtgZKl zSgqYB)$55^D<*@@crg=l7Q8=G*5O^Pdu@8~?zw21)iG`(vu-6ML&J2E<-wT^xTC+y!>zHE? zMiVtaBAa`lTk+ZP)qyATvX=bi?hzgtf21Xq9VO*t$!|`pZIeHMh)L45K(Wzb{>bzQ zlm#ROBAY}KeZ0SMOYGfzz^|b#b=xfS2k^eEl9I4I+Y!3dKmQ`h9t06;XW7W?8m3f0-_wx}>(1OifR_c3GUz&2 zjZE392(0b^OMcmd-rcqOwsq6D<5D5k--ZGZLson6HtlY~!1YIHT0Hik_0H$oH)5pD zLs1n9kyuina?44gOx{6Zl)_m<2% z!I#!L4>~p7Gtvq=_i*;8kdM6@Q?byP6pmo|)&HqW=rZr$Q1FHcK9@N7*!Y z^0zj!tDK@Ov`)t$QKYP!7zh0c;#DQHl89Zwd_U`>_6HD4m3Xyi_6H#8bl_~;P_Mbt zmM}KAFMiRO)J?P0dRBY~B>{gVUhe1+ZSa(jHA%Len#-)Gle_5mp<>`D4<(~$j=}B; zIi?D`tNoSn_g`#2=Hu3n_rBz7y?!CL2CGej-M&A_D}TUR;os$W-Kr=*4NXcpE+M}m zA3u7%zm{CFxRp%Sc-S!W(1ls96{qp^-A$70JAC(7okvnQq=6ZqR?d#arwE{qK#5S@ zmYve{7OW#P`CrG(MC8WP@o#6_ctp-x`_vi->)}Vzv`yl}9eOf`RC$BkdV-IDqU_}p zG^M(D0^#GEch8Dx4F;q!wX#<>E1vQ3UA(-ZGkeT(jpKTyKrG%pUzDZ&AHc=CTiJ2& z17>$iRdCu?CKBflpm)sBv*dL~UJp~eY@NNQV!w*(^y(N>QrWoX14QI!5bbU^x7N>H>Y-K_RI zEfjuI=|%vRkzvsH@-cBAvEEPVu|67J>v%h3818?*jR^kk1_)ZfCJWVKG zW?!Rk`679{0GZdel^U{MDsRdV>>PZY3|5KD`erBJvJ1aDHVwe%9N2l--P7PiA;)~7 z!~ywuN@w>^jwQ-pakXimM1%Nd$?{$P0DK#Rr6W6gRxat;VH_g)RId0E621MTVz)eu|PN3@%CRg%v!i0V&G* z_-kaksiEb>_{`G?Y`V~9)f0{kt>62r+c6q^2z77_{d>{{Ua7Ucb`HNY6Wvu3^7Qp! zm+Vei8NEM%lzoyE*24>MNP%U0>0&7zFuRmIU#F6MC~T_A@)y;?xv-NOiuEHMtDb~;nQJvja#8`DOM1Kb+C(fC#<|)rM@IJWBsqSlA6m)lSgB+6 z0@C$%=-}#uBkt56z>t*|e39$N{g?)IH1$-QbxD+m(YLAx%VbRH5(C{tYkTIZn;n=Lcu zAbAUIym>UE;>Ul{*(@Q`qx%p=iDBF%%6EwMe&G(uVOHH4l7uDapOCy0V^;BQ`j!te zPG>Ys$<%A)F|y7mt`=uwHLs__O9 z4l0x$A39qq3TYm+4mA zVh{YIQT&bFy*TuXeOu-Iw@v(0rJ%mn+)ShKZ?RP}{G=_UioEJe&qqqZRCoD=I??mW zRunq<0Ccr0)xxE4=9v%`8wW}BF1OOCA zEvdw%L~TOVoD+;CM?MKY2Gv9CdBa+@yIiYMBwh0UPpd5may!)Gwjd=58{KX2$W~q6 zkhGAl=*wfN)FIi*sb^dKXSQyO`b>sslnD!~K3In2m8onYOKCeBNjTstg?s|MJhrg%3QjT1ubkUTaE@Yl?3fdcPI@j9Xc*yHDk?P zw3ge#jdn7`ACLr)2^qUghM)=8$w#&)V$L32H;s`AHM`Dj9_5Qtn>4peijfTwT`eR# zC8e#lgR4sRC~hj+03AslX`PffSq7&_fnB3r6$5iuWVHb(uhMDnF-l6*+e>Y=t!kR_ zSQ+Ku6sySK6520l9vEBImEM%=@y4lk&kmJCrBfJ%JSIhD)hXq>j#nfgDP@$nwF8j6 zbn02BaWjMvuUiiLi(aA5JUzDQbc$4ZyETX@g)t2*xVKQ$Clcb6RurE2{*NOguCj1h zKoJ`B_jmTKCknqRJck;Q20l_V`G^@|gPTD;oAe{C_FUoptHbK;V)&1Ay-}u9u1bqi z;Y&j?fP*;@;xWqQuY0d8WR!;nHsEI?L)A_KaN4Bz5dKD8{cEp>w({z-qt@7qA*W>^ z0Aq)cQb{XT(}a+cm32KdX?FIKa*e}SR0|^Grd6xVH%epI+@i`5mnn0foh9^o%V7m6 zU#jPr0Z|*$Fg1gTy`^Jc94+E9D;4S03jNB(E{95pDNi(pDKT9I`R+Ip86LFhad=7T zmeJ+Xx3!yasnJIa?19om8dBE**)x)jN@8DCCd`~u+p|)6@^2i0oFGG&{c%C`#|ur>9%V3 zeLDGw-7C zr^1m2L5`z@yq4ceO4}!<;gQs58iqJibI|BiJJxp?o?=uQJR4D}%4Ekx#^Xyc)6V9l zu%v<{VM{o|R5u)BI>f1W1pYKtDeqpii}tx$;q_UnJw}R@Fq$h_Doai@+Lo0UmZWWT zuW>2BNC!#+(!T4Vilan`5)9>_Jyi%;BlQ2%)RI|`-v8mio1fYx@*;O5wtks#72}7w+_%i?;HSn zsN^IZYOqGHTea>7a1PJ3>Jc2cn7C+(Y6C8$$%gDgzg|;~gSow+FL@w+FMfz>Gz+ei z+8Sj)hrDb8p>v_ijmaim9vrpMpflZu&oM*QT)S$aH_M?hPu4y5hC2ch#h164iCVzAF<8<&VtD`=f9yN;t= zivIvTH1;WKW<$}{E(>iSq%H3iG)O_-q6j`A*Ix~98=|!t+D(y7uRnCgshSl{tC3H7 z*lL*_8`^bgL0De$WhNMw*kn1CSZ3xbGC~ zD5{W}jrmHa7_*E2b)I(FN zQ!I@4igx7q5CF+1%S?atnc*hg;^eJk8UFzE{ZIb@@YH{9-)4Q)aob#9hBD)>0D6Bs7jtOO5U!wFNC8W5noMmsH{cBiI$&uaCF&5{-LT>go1mAxx-00O0KJwO102=UiCZ0kO`e%G0{ZHVZRRg~L{i4?DD3mj&0fdgKR3bQKgp~8AE2DpV-pTswAEBeQ!rgZiw z?}1LIJhZ5{9ZK4H%NrHHya?zppD@dMmDxLo+&Q5MR4j-sZVC=yasf%hboJ6!lf(vI2s}Ie6r}cL9TvKpLz4h$%tqySy7)Bt%>895fgZn^|U}u(O=CwOY@Jid^h2d;B!^)i5lpEfW9l05hc*#k|W3u3?XF%gNsT*qjxp~iL=8Y6f@OR6D|K9V{BN`|9O)0Wig z1zv*e%bKxQ^``0wA1ONyLfb6MQWUWKFd1Jr`a*-38z&3#1l4Gw)|ZeXBl%g^HRV>V zJ1sho#9SRSsVyXGGBFTN_?_Zh=+zk#dlX!>_Y_NTuSh(va99c>_~%PRGc6f5&tUab zCNx`izjDH;fJP4}xTLmz^rt_5maqcYT@P(f*K;)eM|(DZm0v9zq5DFrs=R23kmn)B zQiZ&SSwP2N{A=HAO!OMf`IBX zl2(?iZAUjCR>G~4jdO~lXHK2d9_47$IE7oKQ(@B?8_@}b#Y&X>nOg~Y$Ae^NZr$ri zBOOCvcok*RvBk=zUK6lgp};M;w2+t9w6w)nfdHtw z!)J5xmgh6SRMjhp6`8P`gCw|HOAWB;M7L0jTaNDprE5D!MQ+-AxEkL70BSV> zZl>H#C4kBxDhgdxmsGy;TuPKiaHQ>Zcx_n;J4ij$fV8xJqsH{jiq7BxZk_5#?1jc_ z8-o`$$yL6ep457!HHfjyNNSLx;$AB`0E`TI>d33MKV`*K5mr<==5ueVQY9N?7n1Uj z5L^rTL1hU_O0%2*Gk`R-wNYp*Rc_g<9phZuYL^EX84w0SIv3cTvb!(9W?X17YB8Cp zIJagt&9kvGR==jF0O+!;^(xMM^{;Psxa^;3q2}#MM5-zzt9!zqYY6<+dsVX;`}DN5 zumy?4+XNAf@OAlz^uELGb=g9lT9b0qsWPI~=7J>8V%81Gcpn|^3@KUj$?NB=PWG_u zlKdLQG3q3x#JC+(^=1vR+@9jGmAo_ahoI`L_-Scqz!TzihG!f8?u|EY+_MhXy_FMh zw`q!W?~xfo8*ZEVGnlDLR1}aJ&fEn6M^6!*XOr7Avn0BeKCdU`rzX-;@?gGbE8Q46 zkcR>=tN^5>1MUM$OGW^r#LK^|{r>>CZ`XGH>pQ)+yEi_kl>4=p6(N%u;=6dLy2;L4 zR!?~yPjvL^dUe-`owU0%z>xH~DXT|*Lv1qitlOmvakkP@+7v;_N>WHjJpkx1G_8q+p zJx+vF>hT=$9=@&hj==7U71 z=0Y4oR5^Qm2=F8w9Z#fKl|u^9+YG1URR!ZLA^ zdI6=Sq-s2Z2|1&H+2CMcX#xQN0y2!U%OyW{kL@ABo*-~oaO;PzRZ}5}kQW`7>57ih m8DN}^#E>uu!1L15($oNjUEOxky6Bn|Ng$ceGbhubfB)IvxG_}# literal 0 HcmV?d00001 diff --git a/static/img/goods/p8.jpg b/static/img/goods/p8.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7ca5682dfa22c003c0f435d5d7f1bf77b15adfe6 GIT binary patch literal 20865 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 literal 0 HcmV?d00001 diff --git a/static/img/goods/p9.jpg b/static/img/goods/p9.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0114a08ea6ae1510c9aba860e1f9eb89f3caf19a GIT binary patch literal 24643 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 RilSWXDF4T+_s_rc{{uXhryBqO literal 0 HcmV?d00001 diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map index 468c1e9..cba9d3b 100644 --- a/unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map +++ b/unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///C:/Users/Administrator/Desktop/gulu-vue/main.js","webpack:///C:/Users/Administrator/Desktop/gulu-vue/App.vue?888e","webpack:///C:/Users/Administrator/Desktop/gulu-vue/App.vue?3262","webpack:///C:/Users/Administrator/Desktop/gulu-vue/App.vue","webpack:///C:/Users/Administrator/Desktop/gulu-vue/App.vue?9752","webpack:///C:/Users/Administrator/Desktop/gulu-vue/App.vue?593a"],"names":["Vue","config","productionTip","App","mpType","app","$mount","onLaunch","console","log","onShow","onHide"],"mappings":";;;;;;;;;iDAAA,wCAAmB,iDAA4B;AAC/C,uE;;AAEAA,aAAIC,MAAJ,CAAWC,aAAX,GAA2B,KAA3B;;AAEAC,aAAIC,MAAJ,GAAa,KAAb;;AAEA,IAAMC,GAAG,GAAG,IAAIL,YAAJ;AACLG,YADK,EAAZ;;AAGA,UAAAE,GAAG,EAACC,MAAJ,G;;;;;;;;;;;;;;;;;;;;ACVA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACuD;AACL;AACa;;;AAG/D;AACqK;AACrK,gBAAgB,+KAAU;AAC1B,EAAE,yEAAM;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACe,gF;;;;;;;;;;;ACvBf;AAAA;AAAA;AAAA;AAA6lB,CAAgB,unBAAG,EAAC,C;;;;;;;;;;;;ACClmB;AACdC,UAAQ,EAAE,oBAAW;AACpBC,WAAO,CAACC,GAAR,CAAY,YAAZ;AACA,GAHa;AAIdC,QAAM,EAAE,kBAAW;AAClBF,WAAO,CAACC,GAAR,CAAY,UAAZ;AACA,GANa;AAOdE,QAAM,EAAE,kBAAW;AAClBH,WAAO,CAACC,GAAR,CAAY,UAAZ;AACA,GATa,E;;;;;;;;;;;ACDf;AAAA;AAAA;AAAA;AAA+2B,CAAgB,g3BAAG,EAAC,C;;;;;;;;;;ACAn4B;AACA,OAAO,KAAU,EAAE,kBAKd","file":"common/main.js","sourcesContent":["import 'uni-pages';import '@dcloudio/uni-stat';import Vue from 'vue'\r\nimport App from './App'\r\n\r\nVue.config.productionTip = false\r\n\r\nApp.mpType = 'app'\r\n\r\nconst app = new Vue({\r\n ...App\r\n})\r\napp.$mount()","var render, staticRenderFns, recyclableRender, components\nvar renderjs\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\runtime\\\\componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null,\n false,\n components,\n renderjs\n)\n\ncomponent.options.__file = \"C:/Users/Administrator/Desktop/gulu-vue/App.vue\"\nexport default component.exports","import mod from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\babel-loader\\\\lib\\\\index.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--12-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\script.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\babel-loader\\\\lib\\\\index.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--12-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\script.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./App.vue?vue&type=script&lang=js&\"","\nexport default {\n\tonLaunch: function() {\n\t\tconsole.log('App Launch')\n\t},\n\tonShow: function() {\n\t\tconsole.log('App Show')\n\t},\n\tonHide: function() {\n\t\tconsole.log('App Hide')\n\t}\n}\n","import mod from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\mini-css-extract-plugin\\\\dist\\\\loader.js??ref--6-oneOf-1-0!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\css-loader\\\\dist\\\\cjs.js??ref--6-oneOf-1-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\loaders\\\\stylePostLoader.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--6-oneOf-1-2!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\postcss-loader\\\\src\\\\index.js??ref--6-oneOf-1-3!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./App.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\mini-css-extract-plugin\\\\dist\\\\loader.js??ref--6-oneOf-1-0!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\css-loader\\\\dist\\\\cjs.js??ref--6-oneOf-1-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\loaders\\\\stylePostLoader.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--6-oneOf-1-2!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\postcss-loader\\\\src\\\\index.js??ref--6-oneOf-1-3!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./App.vue?vue&type=style&index=0&lang=css&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1587797864420\n var cssReload = require(\"D:/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/hmr/hotModuleReplacement.js\")(module.id, {\"hmr\":true,\"publicPath\":\"../../\",\"locals\":false});\n module.hot.dispose(cssReload);\n module.hot.accept(undefined, cssReload);\n }\n "],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///C:/Users/Administrator/Desktop/gulu-vue/main.js","webpack:///C:/Users/Administrator/Desktop/gulu-vue/App.vue?888e","webpack:///C:/Users/Administrator/Desktop/gulu-vue/App.vue?3262","webpack:///C:/Users/Administrator/Desktop/gulu-vue/App.vue","webpack:///C:/Users/Administrator/Desktop/gulu-vue/App.vue?9752","webpack:///C:/Users/Administrator/Desktop/gulu-vue/App.vue?593a"],"names":["Vue","config","productionTip","App","mpType","app","$mount","onLaunch","console","log","onShow","onHide"],"mappings":";;;;;;;;;iDAAA,wCAAmB,iDAA4B;AAC/C,uE;;AAEAA,aAAIC,MAAJ,CAAWC,aAAX,GAA2B,KAA3B;;AAEAC,aAAIC,MAAJ,GAAa,KAAb;;AAEA,IAAMC,GAAG,GAAG,IAAIL,YAAJ;AACLG,YADK,EAAZ;;AAGA,UAAAE,GAAG,EAACC,MAAJ,G;;;;;;;;;;;;;;;;;;;;ACVA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACuD;AACL;AACa;;;AAG/D;AACqK;AACrK,gBAAgB,+KAAU;AAC1B,EAAE,yEAAM;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACe,gF;;;;;;;;;;;ACvBf;AAAA;AAAA;AAAA;AAA6lB,CAAgB,unBAAG,EAAC,C;;;;;;;;;;;;ACClmB;AACdC,UAAQ,EAAE,oBAAW;AACpBC,WAAO,CAACC,GAAR,CAAY,YAAZ;AACA,GAHa;AAIdC,QAAM,EAAE,kBAAW;AAClBF,WAAO,CAACC,GAAR,CAAY,UAAZ;AACA,GANa;AAOdE,QAAM,EAAE,kBAAW;AAClBH,WAAO,CAACC,GAAR,CAAY,UAAZ;AACA,GATa,E;;;;;;;;;;;ACDf;AAAA;AAAA;AAAA;AAA+2B,CAAgB,g3BAAG,EAAC,C;;;;;;;;;;ACAn4B;AACA,OAAO,KAAU,EAAE,kBAKd","file":"common/main.js","sourcesContent":["import 'uni-pages';import '@dcloudio/uni-stat';import Vue from 'vue'\r\nimport App from './App'\r\n\r\nVue.config.productionTip = false\r\n\r\nApp.mpType = 'app'\r\n\r\nconst app = new Vue({\r\n ...App\r\n})\r\napp.$mount()","var render, staticRenderFns, recyclableRender, components\nvar renderjs\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\runtime\\\\componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null,\n false,\n components,\n renderjs\n)\n\ncomponent.options.__file = \"C:/Users/Administrator/Desktop/gulu-vue/App.vue\"\nexport default component.exports","import mod from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\babel-loader\\\\lib\\\\index.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--12-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\script.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\babel-loader\\\\lib\\\\index.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--12-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\script.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./App.vue?vue&type=script&lang=js&\"","\nexport default {\n\tonLaunch: function() {\n\t\tconsole.log('App Launch')\n\t},\n\tonShow: function() {\n\t\tconsole.log('App Show')\n\t},\n\tonHide: function() {\n\t\tconsole.log('App Hide')\n\t}\n}\n","import mod from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\mini-css-extract-plugin\\\\dist\\\\loader.js??ref--6-oneOf-1-0!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\css-loader\\\\dist\\\\cjs.js??ref--6-oneOf-1-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\loaders\\\\stylePostLoader.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--6-oneOf-1-2!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\postcss-loader\\\\src\\\\index.js??ref--6-oneOf-1-3!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./App.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\mini-css-extract-plugin\\\\dist\\\\loader.js??ref--6-oneOf-1-0!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\css-loader\\\\dist\\\\cjs.js??ref--6-oneOf-1-1!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\loaders\\\\stylePostLoader.js!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\webpack-preprocess-loader\\\\index.js??ref--6-oneOf-1-2!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\postcss-loader\\\\src\\\\index.js??ref--6-oneOf-1-3!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\vue-cli-plugin-uni\\\\packages\\\\vue-loader\\\\lib\\\\index.js??vue-loader-options!D:\\\\HBuilderX\\\\plugins\\\\uniapp-cli\\\\node_modules\\\\@dcloudio\\\\webpack-uni-mp-loader\\\\lib\\\\style.js!./App.vue?vue&type=style&index=0&lang=css&\"","// extracted by mini-css-extract-plugin\n if(module.hot) {\n // 1588056462167\n var cssReload = require(\"D:/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/hmr/hotModuleReplacement.js\")(module.id, {\"hmr\":true,\"publicPath\":\"../../\",\"locals\":false});\n module.hot.dispose(cssReload);\n module.hot.accept(undefined, cssReload);\n }\n "],"sourceRoot":""} \ No newline at end of file diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map index 12fe2c8..c5ee022 100644 --- a/unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map +++ b/unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap"],"names":[],"mappings":";QAAA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA,QAAQ,oBAAoB;QAC5B;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA,iBAAiB,4BAA4B;QAC7C;QACA;QACA,kBAAkB,2BAA2B;QAC7C;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;;QAEA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;QAEA;QACA;QACA;QACA;QACA,gBAAgB,uBAAuB;QACvC;;;QAGA;QACA","file":"common/runtime.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"common/runtime\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \tvar jsonpArray = global[\"webpackJsonp\"] = global[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///webpack/bootstrap"],"names":[],"mappings":";QAAA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA,QAAQ,oBAAoB;QAC5B;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA,iBAAiB,4BAA4B;QAC7C;QACA;QACA,kBAAkB,2BAA2B;QAC7C;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;;QAEA;;QAEA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;QAEA;QACA;QACA;QACA;;;QAGA;QACA,oBAAoB;QACpB;QACA;QACA;QACA,uBAAuB,wKAAwK;QAC/L;QACA;QACA,mBAAmB,6BAA6B;QAChD;QACA;QACA;QACA;QACA;QACA,mBAAmB,8BAA8B;QACjD;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA,KAAK;QACL;QACA,KAAK;QACL;;QAEA;;QAEA;QACA,iCAAiC;;QAEjC;QACA;QACA;QACA,KAAK;QACL;QACA;QACA;QACA,MAAM;QACN;;QAEA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,wBAAwB,kCAAkC;QAC1D,MAAM;QACN;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;QAEA;QACA,0CAA0C,oBAAoB,WAAW;;QAEzE;QACA;QACA;QACA;QACA,gBAAgB,uBAAuB;QACvC;;;QAGA;QACA","file":"common/runtime.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"common/runtime\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"common/runtime\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"\" + chunkId + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"components/HM-filterDropdown/HM-filterDropdown\":1,\"components/uni-drawer/uni-drawer\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"\" + ({\"components/HM-filterDropdown/HM-filterDropdown\":\"components/HM-filterDropdown/HM-filterDropdown\",\"components/uni-drawer/uni-drawer\":\"components/uni-drawer/uni-drawer\"}[chunkId]||chunkId) + \".wxss\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\tvar error = new Error('Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')');\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = global[\"webpackJsonp\"] = global[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""} \ No newline at end of file diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map index 6e290e5..f46c6c7 100644 --- a/unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map +++ b/unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///./node_modules/@dcloudio/uni-mp-weixin/dist/index.js","webpack:///./node_modules/@dcloudio/vue-cli-plugin-uni/packages/mp-vue/dist/mp.runtime.esm.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/@dcloudio/uni-stat/dist/index.js","webpack:///C:/Users/Administrator/Desktop/gulu-vue/pages.json","webpack:///./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js"],"names":["_toString","Object","prototype","toString","hasOwnProperty","isFn","fn","isStr","str","isPlainObject","obj","call","hasOwn","key","noop","cached","cache","create","cachedFn","hit","camelizeRE","camelize","replace","_","c","toUpperCase","HOOKS","globalInterceptors","scopedInterceptors","mergeHook","parentVal","childVal","res","concat","Array","isArray","dedupeHooks","hooks","i","length","indexOf","push","removeHook","hook","index","splice","mergeInterceptorHook","interceptor","option","keys","forEach","removeInterceptorHook","addInterceptor","method","removeInterceptor","wrapperHook","data","isPromise","then","queue","promise","Promise","resolve","callback","wrapperOptions","options","name","oldCallback","callbackInterceptor","wrapperReturnValue","returnValue","returnValueHooks","getApiInterceptorHooks","slice","scopedInterceptor","invokeApi","api","params","invoke","promiseInterceptor","catch","SYNC_API_RE","CONTEXT_API_RE","CONTEXT_API_RE_EXC","ASYNC_API","CALLBACK_API_RE","isContextApi","test","isSyncApi","isCallbackApi","handlePromise","err","shouldPromise","finally","constructor","value","reason","promisify","promiseApi","success","fail","complete","reject","assign","EPS","BASE_DEVICE_WIDTH","isIOS","deviceWidth","deviceDPR","checkDeviceWidth","wx","getSystemInfoSync","platform","pixelRatio","windowWidth","upx2px","number","newDeviceWidth","Number","result","Math","floor","interceptors","baseApi","freeze","__proto__","previewImage","args","fromArgs","currentIndex","parseInt","current","isNaN","urls","len","filter","item","indicator","loop","addSafeAreaInsets","safeArea","safeAreaInsets","top","left","right","bottom","windowHeight","protocols","getSystemInfo","todos","canIUses","CALLBACKS","processCallback","methodName","processReturnValue","processArgs","argsOption","keepFromArgs","toArgs","keyOption","console","warn","keepReturnValue","wrapper","protocol","error","arg1","arg2","apply","todoApis","TODOS","createTodoApi","todoApi","errMsg","providers","oauth","share","payment","getProvider","service","provider","extraApi","getEmitter","getUniEmitter","Emitter","Vue","ctx","$on","arguments","$off","$once","$emit","eventApi","MPPage","Page","MPComponent","Component","customizeRE","customize","initTriggerEvent","mpInstance","canIUse","oldTriggerEvent","triggerEvent","event","initHook","oldHook","PAGE_EVENT_HOOKS","initMocks","vm","mocks","$mp","mpType","mock","hasHook","vueOptions","default","extendOptions","super","mixins","find","mixin","initHooks","mpOptions","$vm","__call_hook","initVueComponent","VueComponent","extend","initSlots","vueSlots","$slots","slotName","$scopedSlots","initVueIds","vueIds","split","_$vueId","_$vuePid","initData","context","methods","e","process","VUE_APP_DEBUG","JSON","parse","stringify","__lifecycle_hooks__","PROP_TYPES","String","Boolean","createObserver","observer","newVal","oldVal","initBehaviors","initBehavior","vueBehaviors","behaviors","vueExtends","extends","vueMixins","vueProps","props","behavior","type","Date","properties","initProperties","vueMixin","parsePropType","defaultValue","file","isBehavior","vueId","setData","opts","wrapper$1","mp","stopPropagation","preventDefault","target","detail","markerId","getExtraValue","dataPathsArray","dataPathArray","dataPath","propPath","valuePath","vFor","__get_value","isInteger","vForItem","vForKey","processEventExtra","extra","extraObj","getObjByArray","arr","element","processEventArgs","isCustom","isCustomMPEvent","currentTarget","dataset","comType","__args__","ret","arg","ONCE","CUSTOM","isMatchEventType","eventType","optType","handleEvent","eventOpts","eventOpt","eventsArray","charAt","isOnce","eventArray","handlerCtx","$options","generic","$parent","handler","Error","once","parseBaseApp","initRefs","store","$store","mpHost","beforeCreate","$scope","appOptions","onLaunch","app","globalData","_isMounted","findVmByVueId","vuePid","$children","childVm","parentVm","Behavior","isPage","route","initRelation","defineProperty","get","$refs","components","selectAllComponents","component","ref","forComponents","handleLink","parent","parseApp","createApp","App","parseBaseComponent","vueComponentOptions","multipleSlots","addGlobalClass","componentOptions","__file","lifetimes","attached","propsData","$mount","ready","detached","$destroy","pageLifetimes","show","hide","resize","size","__l","__e","wxsCallMethods","callMethod","parseComponent","hooks$1","parseBasePage","vuePageOptions","pageOptions","onLoad","query","parsePage","createPage","createComponent","canIUseApi","apiName","uni","Proxy","set","uni$1","STAT_VERSION","version","STAT_URL","STAT_H5_URL","PAGE_PVER_TIME","APP_PVER_TIME","OPERATING_TIME","UUID_KEY","UUID_VALUE","getUuid","uuid","getPlatformName","plus","runtime","getDCloudId","getStorageSync","now","random","setStorageSync","getSgin","statData","sortArr","sort","sgin","sginStr","sign","substr","getSplicing","getTime","platformList","getPackName","packName","getAccountInfoSync","miniProgram","appId","getVersion","getChannel","platformName","channel","getScene","scene","getLaunchOptionsSync","First__Visit__Time__KEY","Last__Visit__Time__KEY","getFirstVisitTime","timeStorge","time","removeStorageSync","getLastVisitTime","PAGE_RESIDENCE_TIME","First_Page_residence_time","Last_Page_residence_time","setPageResidenceTime","getPageResidenceTime","TOTAL__VISIT__COUNT","getTotalVisitCount","count","GetEncodeURIComponentOptions","prop","encodeURIComponent","Set__First__Time","Set__Last__Time","getFirstTime","getLastTime","getResidenceTime","residenceTime","overtime","getRoute","pages","getCurrentPages","page","_self","is","getPageRoute","self","_query","getPageTypes","calibration","eventName","PagesJson","require","statConfig","resultOptions","Util","_retry","_platform","_navigationBarTitle","config","report","lt","_operatingTime","_reportingRequestData","__prevent_triggering","__licationHide","__licationShow","_lastPageRoute","ut","mpn","ak","appid","usv","v","ch","cn","pn","ct","t","tt","p","brand","md","model","sv","system","mpsdk","SDKVersion","mpv","lang","language","pr","ww","wh","sw","screenWidth","sh","screenHeight","path","sc","_sendReportRequest","_sendHideRequest","urlref","urlref_ts","routepath","titleNView","titleText","navigationBarTitleText","_sendPageRequest","url","_sendEventRequest","fvts","lvts","tvc","getProperty","getNetworkInfo","opt","request","e_n","e_v","getNetworkType","net","networkType","getLocation","wgtinfo","geocode","address","country","province","city","lat","latitude","lng","longitude","title","ttn","ttpj","ttc","requestData","uniStatData","firstArr","contentArr","lastArr","rd","elm","newData","optionsData","requests","imageRequest","setTimeout","_sendRequest","image","Image","src","Stat","instance","addInterceptorInit","interceptLogin","interceptShare","interceptRequestPayment","_login","_share","_payment","_pageShow","_applicationShow","_pageHide","_applicationHide","em","info","emVal","message","stack","stat","getInstance","isHide","lifecycle","onReady","load","onShareAppMessage","oldShareAppMessage","onShow","onHide","onUnload","onError","main"],"mappings":"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ACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,iBAAiB;AAClC;AACA;AACA;AACA,sBAAsB,+BAA+B;AACrD,sBAAsB,iBAAiB;AACvC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,kDAAkD,iCAAiC,EAAE;AACrF,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAiB,gBAAgB;AACjC;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,6BAA6B,cAAc;;AAE3C;;AAEA;AACA;AACA;AACA,6BAA6B,UAAU;;AAEvC;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,gBAAgB;AACjC,kCAAkC;AAClC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB,aAAoB;;AAErC;AACA;AACA;AACA,YAAY,aAAoB;;AAEhC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,qBAAqB;AACxC,iBAAiB;AACjB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,GAAG;AACR;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;;AAEA;;AAEA;AACA;AACA,oCAAoC;AACpC;;AAEA,IAAI,IAAqC;AACzC;AACA;AACA,iCAAiC;AACjC,uCAAuC,wBAAwB,EAAE;AACjE,0BAA0B;;AAE1B;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,wBAAwB,YAAY;AACpC,kBAAkB,YAAY;AAC9B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA,wCAAwC,EAAE;AAC1C;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA,+BAA+B,oBAAoB,EAAE;AACrD;AACA,kCAAkC,OAAO;AACzC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B,SAAS,qBAAqB;;AAExD;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,2BAA2B;AAC9C;AACA;AACA;AACA,GAAG;AACH,CAAC;;AAED;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,iBAAiB;AAClC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,mCAAmC,OAAO;AAC1C;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,OAAO;AACzC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iDAAiD,OAAO;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI,IAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;;AAEA;AACA;AACA;;AAEA,iBAAiB,iBAAiB;AAClC;AACA;AACA,2BAA2B;AAC3B;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,uBAAuB;AACzD,iCAAiC,sBAAsB;AACvD;AACA,kBAAkB;AAClB,MAAM,IAAqC;AAC3C;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,aAAoB;AACtC;AACA;AACA,mBAAmB;AACnB;AACA;AACA,iBAAiB,uBAAuB;AACxC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,OAAO,UAAU,IAAqC;AACtD;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,GAAG,UAAU,IAAqC;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA,mBAAmB,mBAAmB;AACtC,+BAA+B;AAC/B;AACA,GAAG;AACH;AACA;AACA;AACA,kBAAkB,YAAY;AAC9B,WAAW;AACX;AACA,GAAG,UAAU,IAAqC;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAqC;AAC3C;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,OAAO;AACrD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B;AAC3B;AACA,oCAAoC;AACpC;AACA,qCAAqC;AACrC;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,IAEQ;AACZ;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,2BAA2B;AAC9C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,6CAA6C,SAAS;AACtD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA,6CAA6C,qCAAqC,EAAE;AACpF;;AAEA;AACA;AACA;;AAEA,oCAAoC,yCAAyC,EAAE;AAC/E;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,kBAAkB;AAC3C;AACA;AACA,4BAA4B;AAC5B,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,sDAAsD,EAAE;AACtF;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,iBAAiB,mBAAmB;AACpC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,kBAAkB;AAClC;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;;AAEA;;AAEA;;AAEA,IAAI,IAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,iCAAiC;AACnE,cAAc,6BAA6B;AAC3C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,kCAAkC,iCAAiC;AACnE,cAAc,6BAA6B;AAC3C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,yBAAyB;AAC1C,GAAG;AACH;AACA;AACA,iBAAiB,+BAA+B;AAChD;AACA;;AAEA;AACA;;AAEA,IAAI,IAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,uBAAuB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,uCAAuC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB,mBAAmB;AACxC;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,IAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,qBAAqB;AACtC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,aAAa,qBAAqB;AAClC;AACA,+CAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,IAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO,MAAM,EAEN;AACP,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,mBAAmB,iBAAiB;AACpC;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,UAAU,IAAqC;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,OAAO;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,kEAAkE;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA,sBAAsB,mBAAmB;AACzC;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,OAAO;AACtC,uCAAuC;AACvC;AACA,GAAG;AACH;AACA,eAAe,SAAS;AACxB,sCAAsC;AACtC;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,2DAA2D;AAC3D;AACA;AACA,KAAK;AACL;AACA;AACA,kCAAkC,OAAO;AACzC;AACA,6CAA6C;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA,4CAA4C,eAAe;AAC3D,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,kDAAkD;AAClD,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA,6CAA6C;AAC7C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,iBAAiB;AACpC;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA,KAAK;AACL,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB,iBAAiB,gBAAgB;AACjC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,iBAAiB,mBAAmB;AACpC;AACA;AACA;AACA,KAAK,UAAU,KAAqC;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,qCAAqC,gEAAgE;AACrG;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,4BAA4B,+BAA+B;AAC3D,4BAA4B,+BAA+B;AAC3D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA,mBAAmB,mBAAmB;AACtC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAqC;AAC3C,kDAAkD;AAClD;AACA;AACA,mCAAmC;AACnC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,sEAAsE;;AAEtE;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK,uFAAuF;AAC5F;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0CAA0C;AAC1C,iBAAiB,yBAAyB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG,+BAA+B;AAClC,mCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,oBAAoB,oBAAoB;AACxC,sBAAsB,4BAA4B;AAClD;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,OAAO;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,mBAAmB;AACnB,yBAAyB;AACzB;AACA,qDAAqD;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,6CAA6C;AAC9E;AACA;AACA,6CAA6C,4CAA4C;;AAEzF;AACA;AACA;;AAEA;AACA,MAAM,IAAqC;AAC3C;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL,GAAG,MAAM,EAGN;AACH;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,KAAK,2CAA2C,8BAA8B,EAAE;;AAEhF;AACA,wCAAwC,OAAO;AAC/C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;;AAEL;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gBAAgB,KAAqC;AACrD;AACA,oBAAoB,SAAI;AACxB;AACA;AACA,WAAW;AACX;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,mBAAmB,qBAAqB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C;AAC/C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,uCAAuC,OAAO;AAC9C;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,SAAS;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,OAAO;AAC5C;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAqC;AAC3C;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0BAA0B;;AAE1B,kBAAkB;AAClB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,mBAAmB,qBAAqB;AACxC;AACA,0CAA0C;AAC1C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,MAAM,IAAqC;AAC3C;AACA;AACA;;AAEA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,mBAAmB,yBAAyB;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,yBAAyB;AAC5C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,OAAO;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,0BAA0B;AACpD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,oBAAoB,EAAE;;AAEpD;AACA;AACA,iBAAiB,sBAAsB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB,kBAAkB;AACnC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,UAAU,KAAqC;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;;AAIA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,oBAAoB;AACpB;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA,oBAAoB,KAAqC;AACzD;AACA,MAAM,SAAE;AACR;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,mBAAmB,2BAA2B;AAC9C,qBAAqB,+BAA+B;AACpD;AACA;AACA,GAAG;AACH,yBAAyB;AACzB;AACA,sBAAsB,iCAAiC;AACvD;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK,MAAM,EAEN;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,KAAqC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA,8BAA8B;;AAE9B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK,UAAU,IAAqC;AACpD;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,qBAAqB,oBAAoB;AACzC;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA,8BAA8B;AAC9B,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA,KAAK,MAAM,EAEN;AACL;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC;AACzC;AACA,sCAAsC;AACtC,8C;;AAEA;AACA,QAAQ,KAAqC;AAC7C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,eAAe;AACrC;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAM,KAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sEAAsE;AACtE;AACA;AACA;;AAEA;AACA,QAAQ,KAAqC;AAC7C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iCAAiC;;AAEjC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,YAAY,KAAqC;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;;;;AAIA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA,0CAA0C,2BAA2B,EAAE;AACvE,KAAK;AACL;AACA,0CAA0C,4BAA4B,EAAE;AACxE,KAAK;AACL,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,+BAA+B,eAAe;AAC9C,MAAM,IAAqC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,0BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA;AACA,0BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,qBAAqB;AACrB;AACA;AACA,yBAAyB;AACzB;AACA;AACA,6BAA6B;AAC7B;AACA;AACA,iBAAiB;AACjB;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,SAAS;AACT;AACA;AACA,aAAa;AACb;AACA;AACA,iBAAiB;AACjB;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,YAAY,gFAAW;AACvB;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,mBAAmB;AAC1C;AACA;AACA;AACA;;AAEA;AACA,0CAA0C,gCAAgC,EAAE;AAC5E;;AAEA;AACA;AACA;AACA;AACA,WAAW,gFAAW;AACtB;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,WAAW,gFAAW;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B,0CAA0C;;AAE1C;AACA;AACA;AACA,GAAG;AACH;AACA,sCAAsC;AACtC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,8CAA8C;AAC9C;AACA,KAAK;AACL;AACA;AACA,UAAU,gFAAW;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAqC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,mCAAmC,OAAO;AAC1C;AACA,gBAAgB,YAAY;AAC5B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,gBAAgB,YAAY;AAC5B;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,OAAO;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD,qDAAqD,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;;;;;;sGCh3BW,EAAC,SAAQ,EAAC,qBAAoB,EAAC,0BAAyB,MAA1B,EAArB,EAAuD,mBAAkB,EAAC,0BAAyB,KAA1B,EAAzE,EAA0G,mBAAkB,EAAC,0BAAyB,IAA1B,EAA5H,EAAT,EAAsK,eAAc,EAAC,0BAAyB,OAA1B,EAAkC,0BAAyB,SAA3D,EAAqE,gCAA+B,SAApG,EAA8G,mBAAkB,SAAhI,EAApL,E;;;;;;;;;;;sGAAA,EAAC,SAAQ,EAAT,E;;;;;;;;;;;;;;;;ACAf;AAAA;AAAA;;AAEA;AACA;AACA;;AAEe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,qBAAqB;AACrB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA","file":"common/vendor.js","sourcesContent":["import Vue from 'vue';\r\n\r\nconst _toString = Object.prototype.toString;\r\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\r\n\r\nfunction isFn (fn) {\r\n return typeof fn === 'function'\r\n}\r\n\r\nfunction isStr (str) {\r\n return typeof str === 'string'\r\n}\r\n\r\nfunction isPlainObject (obj) {\r\n return _toString.call(obj) === '[object Object]'\r\n}\r\n\r\nfunction hasOwn (obj, key) {\r\n return hasOwnProperty.call(obj, key)\r\n}\r\n\r\nfunction noop () {}\r\n\r\n/**\r\n * Create a cached version of a pure function.\r\n */\r\nfunction cached (fn) {\r\n const cache = Object.create(null);\r\n return function cachedFn (str) {\r\n const hit = cache[str];\r\n return hit || (cache[str] = fn(str))\r\n }\r\n}\r\n\r\n/**\r\n * Camelize a hyphen-delimited string.\r\n */\r\nconst camelizeRE = /-(\\w)/g;\r\nconst camelize = cached((str) => {\r\n return str.replace(camelizeRE, (_, c) => c ? c.toUpperCase() : '')\r\n});\r\n\r\nconst HOOKS = [\r\n 'invoke',\r\n 'success',\r\n 'fail',\r\n 'complete',\r\n 'returnValue'\r\n];\r\n\r\nconst globalInterceptors = {};\r\nconst scopedInterceptors = {};\r\n\r\nfunction mergeHook (parentVal, childVal) {\r\n const res = childVal\r\n ? parentVal\r\n ? parentVal.concat(childVal)\r\n : Array.isArray(childVal)\r\n ? childVal : [childVal]\r\n : parentVal;\r\n return res\r\n ? dedupeHooks(res)\r\n : res\r\n}\r\n\r\nfunction dedupeHooks (hooks) {\r\n const res = [];\r\n for (let i = 0; i < hooks.length; i++) {\r\n if (res.indexOf(hooks[i]) === -1) {\r\n res.push(hooks[i]);\r\n }\r\n }\r\n return res\r\n}\r\n\r\nfunction removeHook (hooks, hook) {\r\n const index = hooks.indexOf(hook);\r\n if (index !== -1) {\r\n hooks.splice(index, 1);\r\n }\r\n}\r\n\r\nfunction mergeInterceptorHook (interceptor, option) {\r\n Object.keys(option).forEach(hook => {\r\n if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {\r\n interceptor[hook] = mergeHook(interceptor[hook], option[hook]);\r\n }\r\n });\r\n}\r\n\r\nfunction removeInterceptorHook (interceptor, option) {\r\n if (!interceptor || !option) {\r\n return\r\n }\r\n Object.keys(option).forEach(hook => {\r\n if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {\r\n removeHook(interceptor[hook], option[hook]);\r\n }\r\n });\r\n}\r\n\r\nfunction addInterceptor (method, option) {\r\n if (typeof method === 'string' && isPlainObject(option)) {\r\n mergeInterceptorHook(scopedInterceptors[method] || (scopedInterceptors[method] = {}), option);\r\n } else if (isPlainObject(method)) {\r\n mergeInterceptorHook(globalInterceptors, method);\r\n }\r\n}\r\n\r\nfunction removeInterceptor (method, option) {\r\n if (typeof method === 'string') {\r\n if (isPlainObject(option)) {\r\n removeInterceptorHook(scopedInterceptors[method], option);\r\n } else {\r\n delete scopedInterceptors[method];\r\n }\r\n } else if (isPlainObject(method)) {\r\n removeInterceptorHook(globalInterceptors, method);\r\n }\r\n}\r\n\r\nfunction wrapperHook (hook) {\r\n return function (data) {\r\n return hook(data) || data\r\n }\r\n}\r\n\r\nfunction isPromise (obj) {\r\n return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function'\r\n}\r\n\r\nfunction queue (hooks, data) {\r\n let promise = false;\r\n for (let i = 0; i < hooks.length; i++) {\r\n const hook = hooks[i];\r\n if (promise) {\r\n promise = Promise.then(wrapperHook(hook));\r\n } else {\r\n const res = hook(data);\r\n if (isPromise(res)) {\r\n promise = Promise.resolve(res);\r\n }\r\n if (res === false) {\r\n return {\r\n then () {}\r\n }\r\n }\r\n }\r\n }\r\n return promise || {\r\n then (callback) {\r\n return callback(data)\r\n }\r\n }\r\n}\r\n\r\nfunction wrapperOptions (interceptor, options = {}) {\r\n ['success', 'fail', 'complete'].forEach(name => {\r\n if (Array.isArray(interceptor[name])) {\r\n const oldCallback = options[name];\r\n options[name] = function callbackInterceptor (res) {\r\n queue(interceptor[name], res).then((res) => {\r\n /* eslint-disable no-mixed-operators */\r\n return isFn(oldCallback) && oldCallback(res) || res\r\n });\r\n };\r\n }\r\n });\r\n return options\r\n}\r\n\r\nfunction wrapperReturnValue (method, returnValue) {\r\n const returnValueHooks = [];\r\n if (Array.isArray(globalInterceptors.returnValue)) {\r\n returnValueHooks.push(...globalInterceptors.returnValue);\r\n }\r\n const interceptor = scopedInterceptors[method];\r\n if (interceptor && Array.isArray(interceptor.returnValue)) {\r\n returnValueHooks.push(...interceptor.returnValue);\r\n }\r\n returnValueHooks.forEach(hook => {\r\n returnValue = hook(returnValue) || returnValue;\r\n });\r\n return returnValue\r\n}\r\n\r\nfunction getApiInterceptorHooks (method) {\r\n const interceptor = Object.create(null);\r\n Object.keys(globalInterceptors).forEach(hook => {\r\n if (hook !== 'returnValue') {\r\n interceptor[hook] = globalInterceptors[hook].slice();\r\n }\r\n });\r\n const scopedInterceptor = scopedInterceptors[method];\r\n if (scopedInterceptor) {\r\n Object.keys(scopedInterceptor).forEach(hook => {\r\n if (hook !== 'returnValue') {\r\n interceptor[hook] = (interceptor[hook] || []).concat(scopedInterceptor[hook]);\r\n }\r\n });\r\n }\r\n return interceptor\r\n}\r\n\r\nfunction invokeApi (method, api, options, ...params) {\r\n const interceptor = getApiInterceptorHooks(method);\r\n if (interceptor && Object.keys(interceptor).length) {\r\n if (Array.isArray(interceptor.invoke)) {\r\n const res = queue(interceptor.invoke, options);\r\n return res.then((options) => {\r\n return api(wrapperOptions(interceptor, options), ...params)\r\n })\r\n } else {\r\n return api(wrapperOptions(interceptor, options), ...params)\r\n }\r\n }\r\n return api(options, ...params)\r\n}\r\n\r\nconst promiseInterceptor = {\r\n returnValue (res) {\r\n if (!isPromise(res)) {\r\n return res\r\n }\r\n return res.then(res => {\r\n return res[1]\r\n }).catch(res => {\r\n return res[0]\r\n })\r\n }\r\n};\r\n\r\nconst SYNC_API_RE =\r\n /^\\$|sendNativeEvent|restoreGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/;\r\n\r\nconst CONTEXT_API_RE = /^create|Manager$/;\r\n\r\n// Context例外情况\r\nconst CONTEXT_API_RE_EXC = ['createBLEConnection'];\r\n\r\n// 同步例外情况\r\nconst ASYNC_API = ['createBLEConnection'];\r\n\r\nconst CALLBACK_API_RE = /^on|^off/;\r\n\r\nfunction isContextApi (name) {\r\n return CONTEXT_API_RE.test(name) && CONTEXT_API_RE_EXC.indexOf(name) === -1\r\n}\r\nfunction isSyncApi (name) {\r\n return SYNC_API_RE.test(name) && ASYNC_API.indexOf(name) === -1\r\n}\r\n\r\nfunction isCallbackApi (name) {\r\n return CALLBACK_API_RE.test(name) && name !== 'onPush'\r\n}\r\n\r\nfunction handlePromise (promise) {\r\n return promise.then(data => {\r\n return [null, data]\r\n })\r\n .catch(err => [err])\r\n}\r\n\r\nfunction shouldPromise (name) {\r\n if (\r\n isContextApi(name) ||\r\n isSyncApi(name) ||\r\n isCallbackApi(name)\r\n ) {\r\n return false\r\n }\r\n return true\r\n}\r\n\r\n/* eslint-disable no-extend-native */\r\nif (!Promise.prototype.finally) {\r\n Promise.prototype.finally = function (callback) {\r\n const promise = this.constructor;\r\n return this.then(\r\n value => promise.resolve(callback()).then(() => value),\r\n reason => promise.resolve(callback()).then(() => {\r\n throw reason\r\n })\r\n )\r\n };\r\n}\r\n\r\nfunction promisify (name, api) {\r\n if (!shouldPromise(name)) {\r\n return api\r\n }\r\n return function promiseApi (options = {}, ...params) {\r\n if (isFn(options.success) || isFn(options.fail) || isFn(options.complete)) {\r\n return wrapperReturnValue(name, invokeApi(name, api, options, ...params))\r\n }\r\n return wrapperReturnValue(name, handlePromise(new Promise((resolve, reject) => {\r\n invokeApi(name, api, Object.assign({}, options, {\r\n success: resolve,\r\n fail: reject\r\n }), ...params);\r\n })))\r\n }\r\n}\r\n\r\nconst EPS = 1e-4;\r\nconst BASE_DEVICE_WIDTH = 750;\r\nlet isIOS = false;\r\nlet deviceWidth = 0;\r\nlet deviceDPR = 0;\r\n\r\nfunction checkDeviceWidth () {\r\n const {\r\n platform,\r\n pixelRatio,\r\n windowWidth\r\n } = wx.getSystemInfoSync(); // uni=>wx runtime 编译目标是 uni 对象,内部不允许直接使用 uni\r\n\r\n deviceWidth = windowWidth;\r\n deviceDPR = pixelRatio;\r\n isIOS = platform === 'ios';\r\n}\r\n\r\nfunction upx2px (number, newDeviceWidth) {\r\n if (deviceWidth === 0) {\r\n checkDeviceWidth();\r\n }\r\n\r\n number = Number(number);\r\n if (number === 0) {\r\n return 0\r\n }\r\n let result = (number / BASE_DEVICE_WIDTH) * (newDeviceWidth || deviceWidth);\r\n if (result < 0) {\r\n result = -result;\r\n }\r\n result = Math.floor(result + EPS);\r\n if (result === 0) {\r\n if (deviceDPR === 1 || !isIOS) {\r\n return 1\r\n } else {\r\n return 0.5\r\n }\r\n }\r\n return number < 0 ? -result : result\r\n}\r\n\r\nconst interceptors = {\r\n promiseInterceptor\r\n};\r\n\r\nvar baseApi = /*#__PURE__*/Object.freeze({\r\n __proto__: null,\r\n upx2px: upx2px,\r\n addInterceptor: addInterceptor,\r\n removeInterceptor: removeInterceptor,\r\n interceptors: interceptors\r\n});\r\n\r\nvar previewImage = {\r\n args (fromArgs) {\r\n let currentIndex = parseInt(fromArgs.current);\r\n if (isNaN(currentIndex)) {\r\n return\r\n }\r\n const urls = fromArgs.urls;\r\n if (!Array.isArray(urls)) {\r\n return\r\n }\r\n const len = urls.length;\r\n if (!len) {\r\n return\r\n }\r\n if (currentIndex < 0) {\r\n currentIndex = 0;\r\n } else if (currentIndex >= len) {\r\n currentIndex = len - 1;\r\n }\r\n if (currentIndex > 0) {\r\n fromArgs.current = urls[currentIndex];\r\n fromArgs.urls = urls.filter(\r\n (item, index) => index < currentIndex ? item !== urls[currentIndex] : true\r\n );\r\n } else {\r\n fromArgs.current = urls[0];\r\n }\r\n return {\r\n indicator: false,\r\n loop: false\r\n }\r\n }\r\n};\r\n\r\nfunction addSafeAreaInsets (result) {\r\n if (result.safeArea) {\r\n const safeArea = result.safeArea;\r\n result.safeAreaInsets = {\r\n top: safeArea.top,\r\n left: safeArea.left,\r\n right: result.windowWidth - safeArea.right,\r\n bottom: result.windowHeight - safeArea.bottom\r\n };\r\n }\r\n}\r\nconst protocols = {\r\n previewImage,\r\n getSystemInfo: {\r\n returnValue: addSafeAreaInsets\r\n },\r\n getSystemInfoSync: {\r\n returnValue: addSafeAreaInsets\r\n }\r\n};\r\nconst todos = [\r\n 'vibrate'\r\n];\r\nconst canIUses = [];\r\n\r\nconst CALLBACKS = ['success', 'fail', 'cancel', 'complete'];\r\n\r\nfunction processCallback (methodName, method, returnValue) {\r\n return function (res) {\r\n return method(processReturnValue(methodName, res, returnValue))\r\n }\r\n}\r\n\r\nfunction processArgs (methodName, fromArgs, argsOption = {}, returnValue = {}, keepFromArgs = false) {\r\n if (isPlainObject(fromArgs)) { // 一般 api 的参数解析\r\n const toArgs = keepFromArgs === true ? fromArgs : {}; // returnValue 为 false 时,说明是格式化返回值,直接在返回值对象上修改赋值\r\n if (isFn(argsOption)) {\r\n argsOption = argsOption(fromArgs, toArgs) || {};\r\n }\r\n for (const key in fromArgs) {\r\n if (hasOwn(argsOption, key)) {\r\n let keyOption = argsOption[key];\r\n if (isFn(keyOption)) {\r\n keyOption = keyOption(fromArgs[key], fromArgs, toArgs);\r\n }\r\n if (!keyOption) { // 不支持的参数\r\n console.warn(`微信小程序 ${methodName}暂不支持${key}`);\r\n } else if (isStr(keyOption)) { // 重写参数 key\r\n toArgs[keyOption] = fromArgs[key];\r\n } else if (isPlainObject(keyOption)) { // {name:newName,value:value}可重新指定参数 key:value\r\n toArgs[keyOption.name ? keyOption.name : key] = keyOption.value;\r\n }\r\n } else if (CALLBACKS.indexOf(key) !== -1) {\r\n toArgs[key] = processCallback(methodName, fromArgs[key], returnValue);\r\n } else {\r\n if (!keepFromArgs) {\r\n toArgs[key] = fromArgs[key];\r\n }\r\n }\r\n }\r\n return toArgs\r\n } else if (isFn(fromArgs)) {\r\n fromArgs = processCallback(methodName, fromArgs, returnValue);\r\n }\r\n return fromArgs\r\n}\r\n\r\nfunction processReturnValue (methodName, res, returnValue, keepReturnValue = false) {\r\n if (isFn(protocols.returnValue)) { // 处理通用 returnValue\r\n res = protocols.returnValue(methodName, res);\r\n }\r\n return processArgs(methodName, res, returnValue, {}, keepReturnValue)\r\n}\r\n\r\nfunction wrapper (methodName, method) {\r\n if (hasOwn(protocols, methodName)) {\r\n const protocol = protocols[methodName];\r\n if (!protocol) { // 暂不支持的 api\r\n return function () {\r\n console.error(`微信小程序 暂不支持${methodName}`);\r\n }\r\n }\r\n return function (arg1, arg2) { // 目前 api 最多两个参数\r\n let options = protocol;\r\n if (isFn(protocol)) {\r\n options = protocol(arg1);\r\n }\r\n\r\n arg1 = processArgs(methodName, arg1, options.args, options.returnValue);\r\n\r\n const args = [arg1];\r\n if (typeof arg2 !== 'undefined') {\r\n args.push(arg2);\r\n }\r\n const returnValue = wx[options.name || methodName].apply(wx, args);\r\n if (isSyncApi(methodName)) { // 同步 api\r\n return processReturnValue(methodName, returnValue, options.returnValue, isContextApi(methodName))\r\n }\r\n return returnValue\r\n }\r\n }\r\n return method\r\n}\r\n\r\nconst todoApis = Object.create(null);\r\n\r\nconst TODOS = [\r\n 'onTabBarMidButtonTap',\r\n 'subscribePush',\r\n 'unsubscribePush',\r\n 'onPush',\r\n 'offPush',\r\n 'share'\r\n];\r\n\r\nfunction createTodoApi (name) {\r\n return function todoApi ({\r\n fail,\r\n complete\r\n }) {\r\n const res = {\r\n errMsg: `${name}:fail:暂不支持 ${name} 方法`\r\n };\r\n isFn(fail) && fail(res);\r\n isFn(complete) && complete(res);\r\n }\r\n}\r\n\r\nTODOS.forEach(function (name) {\r\n todoApis[name] = createTodoApi(name);\r\n});\r\n\r\nvar providers = {\r\n oauth: ['weixin'],\r\n share: ['weixin'],\r\n payment: ['wxpay'],\r\n push: ['weixin']\r\n};\r\n\r\nfunction getProvider ({\r\n service,\r\n success,\r\n fail,\r\n complete\r\n}) {\r\n let res = false;\r\n if (providers[service]) {\r\n res = {\r\n errMsg: 'getProvider:ok',\r\n service,\r\n provider: providers[service]\r\n };\r\n isFn(success) && success(res);\r\n } else {\r\n res = {\r\n errMsg: 'getProvider:fail:服务[' + service + ']不存在'\r\n };\r\n isFn(fail) && fail(res);\r\n }\r\n isFn(complete) && complete(res);\r\n}\r\n\r\nvar extraApi = /*#__PURE__*/Object.freeze({\r\n __proto__: null,\r\n getProvider: getProvider\r\n});\r\n\r\nconst getEmitter = (function () {\r\n if (typeof getUniEmitter === 'function') {\r\n /* eslint-disable no-undef */\r\n return getUniEmitter\r\n }\r\n let Emitter;\r\n return function getUniEmitter () {\r\n if (!Emitter) {\r\n Emitter = new Vue();\r\n }\r\n return Emitter\r\n }\r\n})();\r\n\r\nfunction apply (ctx, method, args) {\r\n return ctx[method].apply(ctx, args)\r\n}\r\n\r\nfunction $on () {\r\n return apply(getEmitter(), '$on', [...arguments])\r\n}\r\nfunction $off () {\r\n return apply(getEmitter(), '$off', [...arguments])\r\n}\r\nfunction $once () {\r\n return apply(getEmitter(), '$once', [...arguments])\r\n}\r\nfunction $emit () {\r\n return apply(getEmitter(), '$emit', [...arguments])\r\n}\r\n\r\nvar eventApi = /*#__PURE__*/Object.freeze({\r\n __proto__: null,\r\n $on: $on,\r\n $off: $off,\r\n $once: $once,\r\n $emit: $emit\r\n});\r\n\r\nvar api = /*#__PURE__*/Object.freeze({\r\n __proto__: null\r\n});\r\n\r\nconst MPPage = Page;\r\nconst MPComponent = Component;\r\n\r\nconst customizeRE = /:/g;\r\n\r\nconst customize = cached((str) => {\r\n return camelize(str.replace(customizeRE, '-'))\r\n});\r\n\r\nfunction initTriggerEvent (mpInstance) {\r\n {\r\n if (!wx.canIUse('nextTick')) {\r\n return\r\n }\r\n }\r\n const oldTriggerEvent = mpInstance.triggerEvent;\r\n mpInstance.triggerEvent = function (event, ...args) {\r\n return oldTriggerEvent.apply(mpInstance, [customize(event), ...args])\r\n };\r\n}\r\n\r\nfunction initHook (name, options) {\r\n const oldHook = options[name];\r\n if (!oldHook) {\r\n options[name] = function () {\r\n initTriggerEvent(this);\r\n };\r\n } else {\r\n options[name] = function (...args) {\r\n initTriggerEvent(this);\r\n return oldHook.apply(this, args)\r\n };\r\n }\r\n}\r\n\r\nPage = function (options = {}) {\r\n initHook('onLoad', options);\r\n return MPPage(options)\r\n};\r\n\r\nComponent = function (options = {}) {\r\n initHook('created', options);\r\n return MPComponent(options)\r\n};\r\n\r\nconst PAGE_EVENT_HOOKS = [\r\n 'onPullDownRefresh',\r\n 'onReachBottom',\r\n 'onShareAppMessage',\r\n 'onPageScroll',\r\n 'onResize',\r\n 'onTabItemTap'\r\n];\r\n\r\nfunction initMocks (vm, mocks) {\r\n const mpInstance = vm.$mp[vm.mpType];\r\n mocks.forEach(mock => {\r\n if (hasOwn(mpInstance, mock)) {\r\n vm[mock] = mpInstance[mock];\r\n }\r\n });\r\n}\r\n\r\nfunction hasHook (hook, vueOptions) {\r\n if (!vueOptions) {\r\n return true\r\n }\r\n\r\n if (Vue.options && Array.isArray(Vue.options[hook])) {\r\n return true\r\n }\r\n\r\n vueOptions = vueOptions.default || vueOptions;\r\n\r\n if (isFn(vueOptions)) {\r\n if (isFn(vueOptions.extendOptions[hook])) {\r\n return true\r\n }\r\n if (vueOptions.super &&\r\n vueOptions.super.options &&\r\n Array.isArray(vueOptions.super.options[hook])) {\r\n return true\r\n }\r\n return false\r\n }\r\n\r\n if (isFn(vueOptions[hook])) {\r\n return true\r\n }\r\n const mixins = vueOptions.mixins;\r\n if (Array.isArray(mixins)) {\r\n return !!mixins.find(mixin => hasHook(hook, mixin))\r\n }\r\n}\r\n\r\nfunction initHooks (mpOptions, hooks, vueOptions) {\r\n hooks.forEach(hook => {\r\n if (hasHook(hook, vueOptions)) {\r\n mpOptions[hook] = function (args) {\r\n return this.$vm && this.$vm.__call_hook(hook, args)\r\n };\r\n }\r\n });\r\n}\r\n\r\nfunction initVueComponent (Vue, vueOptions) {\r\n vueOptions = vueOptions.default || vueOptions;\r\n let VueComponent;\r\n if (isFn(vueOptions)) {\r\n VueComponent = vueOptions;\r\n vueOptions = VueComponent.extendOptions;\r\n } else {\r\n VueComponent = Vue.extend(vueOptions);\r\n }\r\n return [VueComponent, vueOptions]\r\n}\r\n\r\nfunction initSlots (vm, vueSlots) {\r\n if (Array.isArray(vueSlots) && vueSlots.length) {\r\n const $slots = Object.create(null);\r\n vueSlots.forEach(slotName => {\r\n $slots[slotName] = true;\r\n });\r\n vm.$scopedSlots = vm.$slots = $slots;\r\n }\r\n}\r\n\r\nfunction initVueIds (vueIds, mpInstance) {\r\n vueIds = (vueIds || '').split(',');\r\n const len = vueIds.length;\r\n\r\n if (len === 1) {\r\n mpInstance._$vueId = vueIds[0];\r\n } else if (len === 2) {\r\n mpInstance._$vueId = vueIds[0];\r\n mpInstance._$vuePid = vueIds[1];\r\n }\r\n}\r\n\r\nfunction initData (vueOptions, context) {\r\n let data = vueOptions.data || {};\r\n const methods = vueOptions.methods || {};\r\n\r\n if (typeof data === 'function') {\r\n try {\r\n data = data.call(context); // 支持 Vue.prototype 上挂的数据\r\n } catch (e) {\r\n if (process.env.VUE_APP_DEBUG) {\r\n console.warn('根据 Vue 的 data 函数初始化小程序 data 失败,请尽量确保 data 函数中不访问 vm 对象,否则可能影响首次数据渲染速度。', data);\r\n }\r\n }\r\n } else {\r\n try {\r\n // 对 data 格式化\r\n data = JSON.parse(JSON.stringify(data));\r\n } catch (e) {}\r\n }\r\n\r\n if (!isPlainObject(data)) {\r\n data = {};\r\n }\r\n\r\n Object.keys(methods).forEach(methodName => {\r\n if (context.__lifecycle_hooks__.indexOf(methodName) === -1 && !hasOwn(data, methodName)) {\r\n data[methodName] = methods[methodName];\r\n }\r\n });\r\n\r\n return data\r\n}\r\n\r\nconst PROP_TYPES = [String, Number, Boolean, Object, Array, null];\r\n\r\nfunction createObserver (name) {\r\n return function observer (newVal, oldVal) {\r\n if (this.$vm) {\r\n this.$vm[name] = newVal; // 为了触发其他非 render watcher\r\n }\r\n }\r\n}\r\n\r\nfunction initBehaviors (vueOptions, initBehavior) {\r\n const vueBehaviors = vueOptions.behaviors;\r\n const vueExtends = vueOptions.extends;\r\n const vueMixins = vueOptions.mixins;\r\n\r\n let vueProps = vueOptions.props;\r\n\r\n if (!vueProps) {\r\n vueOptions.props = vueProps = [];\r\n }\r\n\r\n const behaviors = [];\r\n if (Array.isArray(vueBehaviors)) {\r\n vueBehaviors.forEach(behavior => {\r\n behaviors.push(behavior.replace('uni://', `${\"wx\"}://`));\r\n if (behavior === 'uni://form-field') {\r\n if (Array.isArray(vueProps)) {\r\n vueProps.push('name');\r\n vueProps.push('value');\r\n } else {\r\n vueProps.name = {\r\n type: String,\r\n default: ''\r\n };\r\n vueProps.value = {\r\n type: [String, Number, Boolean, Array, Object, Date],\r\n default: ''\r\n };\r\n }\r\n }\r\n });\r\n }\r\n if (isPlainObject(vueExtends) && vueExtends.props) {\r\n behaviors.push(\r\n initBehavior({\r\n properties: initProperties(vueExtends.props, true)\r\n })\r\n );\r\n }\r\n if (Array.isArray(vueMixins)) {\r\n vueMixins.forEach(vueMixin => {\r\n if (isPlainObject(vueMixin) && vueMixin.props) {\r\n behaviors.push(\r\n initBehavior({\r\n properties: initProperties(vueMixin.props, true)\r\n })\r\n );\r\n }\r\n });\r\n }\r\n return behaviors\r\n}\r\n\r\nfunction parsePropType (key, type, defaultValue, file) {\r\n // [String]=>String\r\n if (Array.isArray(type) && type.length === 1) {\r\n return type[0]\r\n }\r\n return type\r\n}\r\n\r\nfunction initProperties (props, isBehavior = false, file = '') {\r\n const properties = {};\r\n if (!isBehavior) {\r\n properties.vueId = {\r\n type: String,\r\n value: ''\r\n };\r\n properties.vueSlots = { // 小程序不能直接定义 $slots 的 props,所以通过 vueSlots 转换到 $slots\r\n type: null,\r\n value: [],\r\n observer: function (newVal, oldVal) {\r\n const $slots = Object.create(null);\r\n newVal.forEach(slotName => {\r\n $slots[slotName] = true;\r\n });\r\n this.setData({\r\n $slots\r\n });\r\n }\r\n };\r\n }\r\n if (Array.isArray(props)) { // ['title']\r\n props.forEach(key => {\r\n properties[key] = {\r\n type: null,\r\n observer: createObserver(key)\r\n };\r\n });\r\n } else if (isPlainObject(props)) { // {title:{type:String,default:''},content:String}\r\n Object.keys(props).forEach(key => {\r\n const opts = props[key];\r\n if (isPlainObject(opts)) { // title:{type:String,default:''}\r\n let value = opts.default;\r\n if (isFn(value)) {\r\n value = value();\r\n }\r\n\r\n opts.type = parsePropType(key, opts.type);\r\n\r\n properties[key] = {\r\n type: PROP_TYPES.indexOf(opts.type) !== -1 ? opts.type : null,\r\n value,\r\n observer: createObserver(key)\r\n };\r\n } else { // content:String\r\n const type = parsePropType(key, opts);\r\n properties[key] = {\r\n type: PROP_TYPES.indexOf(type) !== -1 ? type : null,\r\n observer: createObserver(key)\r\n };\r\n }\r\n });\r\n }\r\n return properties\r\n}\r\n\r\nfunction wrapper$1 (event) {\r\n // TODO 又得兼容 mpvue 的 mp 对象\r\n try {\r\n event.mp = JSON.parse(JSON.stringify(event));\r\n } catch (e) {}\r\n\r\n event.stopPropagation = noop;\r\n event.preventDefault = noop;\r\n\r\n event.target = event.target || {};\r\n\r\n if (!hasOwn(event, 'detail') || !event.detail) {\r\n event.detail = {};\r\n }\r\n\r\n if (!('markerId' in event.detail) && 'markerId' in event) {\r\n event.detail.markerId = event.markerId;\r\n }\r\n\r\n if (isPlainObject(event.detail)) {\r\n event.target = Object.assign({}, event.target, event.detail);\r\n }\r\n\r\n return event\r\n}\r\n\r\nfunction getExtraValue (vm, dataPathsArray) {\r\n let context = vm;\r\n dataPathsArray.forEach(dataPathArray => {\r\n const dataPath = dataPathArray[0];\r\n const value = dataPathArray[2];\r\n if (dataPath || typeof value !== 'undefined') { // ['','',index,'disable']\r\n const propPath = dataPathArray[1];\r\n const valuePath = dataPathArray[3];\r\n\r\n const vFor = dataPath ? vm.__get_value(dataPath, context) : context;\r\n\r\n if (Number.isInteger(vFor)) {\r\n context = value;\r\n } else if (!propPath) {\r\n context = vFor[value];\r\n } else {\r\n if (Array.isArray(vFor)) {\r\n context = vFor.find(vForItem => {\r\n return vm.__get_value(propPath, vForItem) === value\r\n });\r\n } else if (isPlainObject(vFor)) {\r\n context = Object.keys(vFor).find(vForKey => {\r\n return vm.__get_value(propPath, vFor[vForKey]) === value\r\n });\r\n } else {\r\n console.error('v-for 暂不支持循环数据:', vFor);\r\n }\r\n }\r\n\r\n if (valuePath) {\r\n context = vm.__get_value(valuePath, context);\r\n }\r\n }\r\n });\r\n return context\r\n}\r\n\r\nfunction processEventExtra (vm, extra, event) {\r\n const extraObj = {};\r\n\r\n if (Array.isArray(extra) && extra.length) {\r\n /**\r\n *[\r\n * ['data.items', 'data.id', item.data.id],\r\n * ['metas', 'id', meta.id]\r\n *],\r\n *[\r\n * ['data.items', 'data.id', item.data.id],\r\n * ['metas', 'id', meta.id]\r\n *],\r\n *'test'\r\n */\r\n extra.forEach((dataPath, index) => {\r\n if (typeof dataPath === 'string') {\r\n if (!dataPath) { // model,prop.sync\r\n extraObj['$' + index] = vm;\r\n } else {\r\n if (dataPath === '$event') { // $event\r\n extraObj['$' + index] = event;\r\n } else if (dataPath.indexOf('$event.') === 0) { // $event.target.value\r\n extraObj['$' + index] = vm.__get_value(dataPath.replace('$event.', ''), event);\r\n } else {\r\n extraObj['$' + index] = vm.__get_value(dataPath);\r\n }\r\n }\r\n } else {\r\n extraObj['$' + index] = getExtraValue(vm, dataPath);\r\n }\r\n });\r\n }\r\n\r\n return extraObj\r\n}\r\n\r\nfunction getObjByArray (arr) {\r\n const obj = {};\r\n for (let i = 1; i < arr.length; i++) {\r\n const element = arr[i];\r\n obj[element[0]] = element[1];\r\n }\r\n return obj\r\n}\r\n\r\nfunction processEventArgs (vm, event, args = [], extra = [], isCustom, methodName) {\r\n let isCustomMPEvent = false; // wxcomponent 组件,传递原始 event 对象\r\n if (isCustom) { // 自定义事件\r\n isCustomMPEvent = event.currentTarget &&\r\n event.currentTarget.dataset &&\r\n event.currentTarget.dataset.comType === 'wx';\r\n if (!args.length) { // 无参数,直接传入 event 或 detail 数组\r\n if (isCustomMPEvent) {\r\n return [event]\r\n }\r\n return event.detail.__args__ || event.detail\r\n }\r\n }\r\n\r\n const extraObj = processEventExtra(vm, extra, event);\r\n\r\n const ret = [];\r\n args.forEach(arg => {\r\n if (arg === '$event') {\r\n if (methodName === '__set_model' && !isCustom) { // input v-model value\r\n ret.push(event.target.value);\r\n } else {\r\n if (isCustom && !isCustomMPEvent) {\r\n ret.push(event.detail.__args__[0]);\r\n } else { // wxcomponent 组件或内置组件\r\n ret.push(event);\r\n }\r\n }\r\n } else {\r\n if (Array.isArray(arg) && arg[0] === 'o') {\r\n ret.push(getObjByArray(arg));\r\n } else if (typeof arg === 'string' && hasOwn(extraObj, arg)) {\r\n ret.push(extraObj[arg]);\r\n } else {\r\n ret.push(arg);\r\n }\r\n }\r\n });\r\n\r\n return ret\r\n}\r\n\r\nconst ONCE = '~';\r\nconst CUSTOM = '^';\r\n\r\nfunction isMatchEventType (eventType, optType) {\r\n return (eventType === optType) ||\r\n (\r\n optType === 'regionchange' &&\r\n (\r\n eventType === 'begin' ||\r\n eventType === 'end'\r\n )\r\n )\r\n}\r\n\r\nfunction handleEvent (event) {\r\n event = wrapper$1(event);\r\n\r\n // [['tap',[['handle',[1,2,a]],['handle1',[1,2,a]]]]]\r\n const dataset = (event.currentTarget || event.target).dataset;\r\n if (!dataset) {\r\n return console.warn('事件信息不存在')\r\n }\r\n const eventOpts = dataset.eventOpts || dataset['event-opts']; // 支付宝 web-view 组件 dataset 非驼峰\r\n if (!eventOpts) {\r\n return console.warn('事件信息不存在')\r\n }\r\n\r\n // [['handle',[1,2,a]],['handle1',[1,2,a]]]\r\n const eventType = event.type;\r\n\r\n const ret = [];\r\n\r\n eventOpts.forEach(eventOpt => {\r\n let type = eventOpt[0];\r\n const eventsArray = eventOpt[1];\r\n\r\n const isCustom = type.charAt(0) === CUSTOM;\r\n type = isCustom ? type.slice(1) : type;\r\n const isOnce = type.charAt(0) === ONCE;\r\n type = isOnce ? type.slice(1) : type;\r\n\r\n if (eventsArray && isMatchEventType(eventType, type)) {\r\n eventsArray.forEach(eventArray => {\r\n const methodName = eventArray[0];\r\n if (methodName) {\r\n let handlerCtx = this.$vm;\r\n if (\r\n handlerCtx.$options.generic &&\r\n handlerCtx.$parent &&\r\n handlerCtx.$parent.$parent\r\n ) { // mp-weixin,mp-toutiao 抽象节点模拟 scoped slots\r\n handlerCtx = handlerCtx.$parent.$parent;\r\n }\r\n if (methodName === '$emit') {\r\n handlerCtx.$emit.apply(handlerCtx,\r\n processEventArgs(\r\n this.$vm,\r\n event,\r\n eventArray[1],\r\n eventArray[2],\r\n isCustom,\r\n methodName\r\n ));\r\n return\r\n }\r\n const handler = handlerCtx[methodName];\r\n if (!isFn(handler)) {\r\n throw new Error(` _vm.${methodName} is not a function`)\r\n }\r\n if (isOnce) {\r\n if (handler.once) {\r\n return\r\n }\r\n handler.once = true;\r\n }\r\n ret.push(handler.apply(handlerCtx, processEventArgs(\r\n this.$vm,\r\n event,\r\n eventArray[1],\r\n eventArray[2],\r\n isCustom,\r\n methodName\r\n )));\r\n }\r\n });\r\n }\r\n });\r\n\r\n if (\r\n eventType === 'input' &&\r\n ret.length === 1 &&\r\n typeof ret[0] !== 'undefined'\r\n ) {\r\n return ret[0]\r\n }\r\n}\r\n\r\nconst hooks = [\r\n 'onShow',\r\n 'onHide',\r\n 'onError',\r\n 'onPageNotFound'\r\n];\r\n\r\nfunction parseBaseApp (vm, {\r\n mocks,\r\n initRefs\r\n}) {\r\n if (vm.$options.store) {\r\n Vue.prototype.$store = vm.$options.store;\r\n }\r\n\r\n Vue.prototype.mpHost = \"mp-weixin\";\r\n\r\n Vue.mixin({\r\n beforeCreate () {\r\n if (!this.$options.mpType) {\r\n return\r\n }\r\n\r\n this.mpType = this.$options.mpType;\r\n\r\n this.$mp = {\r\n data: {},\r\n [this.mpType]: this.$options.mpInstance\r\n };\r\n\r\n this.$scope = this.$options.mpInstance;\r\n\r\n delete this.$options.mpType;\r\n delete this.$options.mpInstance;\r\n\r\n if (this.mpType !== 'app') {\r\n initRefs(this);\r\n initMocks(this, mocks);\r\n }\r\n }\r\n });\r\n\r\n const appOptions = {\r\n onLaunch (args) {\r\n if (this.$vm) { // 已经初始化过了,主要是为了百度,百度 onShow 在 onLaunch 之前\r\n return\r\n }\r\n {\r\n if (!wx.canIUse('nextTick')) { // 事实 上2.2.3 即可,简单使用 2.3.0 的 nextTick 判断\r\n console.error('当前微信基础库版本过低,请将 微信开发者工具-详情-项目设置-调试基础库版本 更换为`2.3.0`以上');\r\n }\r\n }\r\n\r\n this.$vm = vm;\r\n\r\n this.$vm.$mp = {\r\n app: this\r\n };\r\n\r\n this.$vm.$scope = this;\r\n // vm 上也挂载 globalData\r\n this.$vm.globalData = this.globalData;\r\n\r\n this.$vm._isMounted = true;\r\n this.$vm.__call_hook('mounted', args);\r\n\r\n this.$vm.__call_hook('onLaunch', args);\r\n }\r\n };\r\n\r\n // 兼容旧版本 globalData\r\n appOptions.globalData = vm.$options.globalData || {};\r\n // 将 methods 中的方法挂在 getApp() 中\r\n const methods = vm.$options.methods;\r\n if (methods) {\r\n Object.keys(methods).forEach(name => {\r\n appOptions[name] = methods[name];\r\n });\r\n }\r\n\r\n initHooks(appOptions, hooks);\r\n\r\n return appOptions\r\n}\r\n\r\nconst mocks = ['__route__', '__wxExparserNodeId__', '__wxWebviewId__'];\r\n\r\nfunction findVmByVueId (vm, vuePid) {\r\n const $children = vm.$children;\r\n // 优先查找直属(反向查找:https://github.com/dcloudio/uni-app/issues/1200)\r\n for (let i = $children.length - 1; i >= 0; i--) {\r\n const childVm = $children[i];\r\n if (childVm.$scope._$vueId === vuePid) {\r\n return childVm\r\n }\r\n }\r\n // 反向递归查找\r\n let parentVm;\r\n for (let i = $children.length - 1; i >= 0; i--) {\r\n parentVm = findVmByVueId($children[i], vuePid);\r\n if (parentVm) {\r\n return parentVm\r\n }\r\n }\r\n}\r\n\r\nfunction initBehavior (options) {\r\n return Behavior(options)\r\n}\r\n\r\nfunction isPage () {\r\n return !!this.route\r\n}\r\n\r\nfunction initRelation (detail) {\r\n this.triggerEvent('__l', detail);\r\n}\r\n\r\nfunction initRefs (vm) {\r\n const mpInstance = vm.$scope;\r\n Object.defineProperty(vm, '$refs', {\r\n get () {\r\n const $refs = {};\r\n const components = mpInstance.selectAllComponents('.vue-ref');\r\n components.forEach(component => {\r\n const ref = component.dataset.ref;\r\n $refs[ref] = component.$vm || component;\r\n });\r\n const forComponents = mpInstance.selectAllComponents('.vue-ref-in-for');\r\n forComponents.forEach(component => {\r\n const ref = component.dataset.ref;\r\n if (!$refs[ref]) {\r\n $refs[ref] = [];\r\n }\r\n $refs[ref].push(component.$vm || component);\r\n });\r\n return $refs\r\n }\r\n });\r\n}\r\n\r\nfunction handleLink (event) {\r\n const {\r\n vuePid,\r\n vueOptions\r\n } = event.detail || event.value; // detail 是微信,value 是百度(dipatch)\r\n\r\n let parentVm;\r\n\r\n if (vuePid) {\r\n parentVm = findVmByVueId(this.$vm, vuePid);\r\n }\r\n\r\n if (!parentVm) {\r\n parentVm = this.$vm;\r\n }\r\n\r\n vueOptions.parent = parentVm;\r\n}\r\n\r\nfunction parseApp (vm) {\r\n return parseBaseApp(vm, {\r\n mocks,\r\n initRefs\r\n })\r\n}\r\n\r\nfunction createApp (vm) {\r\n App(parseApp(vm));\r\n return vm\r\n}\r\n\r\nfunction parseBaseComponent (vueComponentOptions, {\r\n isPage,\r\n initRelation\r\n} = {}) {\r\n const [VueComponent, vueOptions] = initVueComponent(Vue, vueComponentOptions);\r\n\r\n const options = {\r\n multipleSlots: true,\r\n addGlobalClass: true,\r\n ...(vueOptions.options || {})\r\n };\r\n\r\n {\r\n // 微信 multipleSlots 部分情况有 bug,导致内容顺序错乱 如 u-list,提供覆盖选项\r\n if (vueOptions['mp-weixin'] && vueOptions['mp-weixin'].options) {\r\n Object.assign(options, vueOptions['mp-weixin'].options);\r\n }\r\n }\r\n\r\n const componentOptions = {\r\n options,\r\n data: initData(vueOptions, Vue.prototype),\r\n behaviors: initBehaviors(vueOptions, initBehavior),\r\n properties: initProperties(vueOptions.props, false, vueOptions.__file),\r\n lifetimes: {\r\n attached () {\r\n const properties = this.properties;\r\n\r\n const options = {\r\n mpType: isPage.call(this) ? 'page' : 'component',\r\n mpInstance: this,\r\n propsData: properties\r\n };\r\n\r\n initVueIds(properties.vueId, this);\r\n\r\n // 处理父子关系\r\n initRelation.call(this, {\r\n vuePid: this._$vuePid,\r\n vueOptions: options\r\n });\r\n\r\n // 初始化 vue 实例\r\n this.$vm = new VueComponent(options);\r\n\r\n // 处理$slots,$scopedSlots(暂不支持动态变化$slots)\r\n initSlots(this.$vm, properties.vueSlots);\r\n\r\n // 触发首次 setData\r\n this.$vm.$mount();\r\n },\r\n ready () {\r\n // 当组件 props 默认值为 true,初始化时传入 false 会导致 created,ready 触发, 但 attached 不触发\r\n // https://developers.weixin.qq.com/community/develop/doc/00066ae2844cc0f8eb883e2a557800\r\n if (this.$vm) {\r\n this.$vm._isMounted = true;\r\n this.$vm.__call_hook('mounted');\r\n this.$vm.__call_hook('onReady');\r\n }\r\n },\r\n detached () {\r\n this.$vm && this.$vm.$destroy();\r\n }\r\n },\r\n pageLifetimes: {\r\n show (args) {\r\n this.$vm && this.$vm.__call_hook('onPageShow', args);\r\n },\r\n hide () {\r\n this.$vm && this.$vm.__call_hook('onPageHide');\r\n },\r\n resize (size) {\r\n this.$vm && this.$vm.__call_hook('onPageResize', size);\r\n }\r\n },\r\n methods: {\r\n __l: handleLink,\r\n __e: handleEvent\r\n }\r\n };\r\n\r\n if (Array.isArray(vueOptions.wxsCallMethods)) {\r\n vueOptions.wxsCallMethods.forEach(callMethod => {\r\n componentOptions.methods[callMethod] = function (args) {\r\n return this.$vm[callMethod](args)\r\n };\r\n });\r\n }\r\n\r\n if (isPage) {\r\n return componentOptions\r\n }\r\n return [componentOptions, VueComponent]\r\n}\r\n\r\nfunction parseComponent (vueComponentOptions) {\r\n return parseBaseComponent(vueComponentOptions, {\r\n isPage,\r\n initRelation\r\n })\r\n}\r\n\r\nconst hooks$1 = [\r\n 'onShow',\r\n 'onHide',\r\n 'onUnload'\r\n];\r\n\r\nhooks$1.push(...PAGE_EVENT_HOOKS);\r\n\r\nfunction parseBasePage (vuePageOptions, {\r\n isPage,\r\n initRelation\r\n}) {\r\n const pageOptions = parseComponent(vuePageOptions);\r\n\r\n initHooks(pageOptions.methods, hooks$1, vuePageOptions);\r\n\r\n pageOptions.methods.onLoad = function (args) {\r\n this.$vm.$mp.query = args; // 兼容 mpvue\r\n this.$vm.__call_hook('onLoad', args);\r\n };\r\n\r\n return pageOptions\r\n}\r\n\r\nfunction parsePage (vuePageOptions) {\r\n return parseBasePage(vuePageOptions, {\r\n isPage,\r\n initRelation\r\n })\r\n}\r\n\r\nfunction createPage (vuePageOptions) {\r\n {\r\n return Component(parsePage(vuePageOptions))\r\n }\r\n}\r\n\r\nfunction createComponent (vueOptions) {\r\n {\r\n return Component(parseComponent(vueOptions))\r\n }\r\n}\r\n\r\ntodos.forEach(todoApi => {\r\n protocols[todoApi] = false;\r\n});\r\n\r\ncanIUses.forEach(canIUseApi => {\r\n const apiName = protocols[canIUseApi] && protocols[canIUseApi].name ? protocols[canIUseApi].name\r\n : canIUseApi;\r\n if (!wx.canIUse(apiName)) {\r\n protocols[canIUseApi] = false;\r\n }\r\n});\r\n\r\nlet uni = {};\r\n\r\nif (typeof Proxy !== 'undefined' && \"mp-weixin\" !== 'app-plus') {\r\n uni = new Proxy({}, {\r\n get (target, name) {\r\n if (target[name]) {\r\n return target[name]\r\n }\r\n if (baseApi[name]) {\r\n return baseApi[name]\r\n }\r\n if (api[name]) {\r\n return promisify(name, api[name])\r\n }\r\n {\r\n if (extraApi[name]) {\r\n return promisify(name, extraApi[name])\r\n }\r\n if (todoApis[name]) {\r\n return promisify(name, todoApis[name])\r\n }\r\n }\r\n if (eventApi[name]) {\r\n return eventApi[name]\r\n }\r\n if (!hasOwn(wx, name) && !hasOwn(protocols, name)) {\r\n return\r\n }\r\n return promisify(name, wrapper(name, wx[name]))\r\n },\r\n set (target, name, value) {\r\n target[name] = value;\r\n return true\r\n }\r\n });\r\n} else {\r\n Object.keys(baseApi).forEach(name => {\r\n uni[name] = baseApi[name];\r\n });\r\n\r\n {\r\n Object.keys(todoApis).forEach(name => {\r\n uni[name] = promisify(name, todoApis[name]);\r\n });\r\n Object.keys(extraApi).forEach(name => {\r\n uni[name] = promisify(name, todoApis[name]);\r\n });\r\n }\r\n\r\n Object.keys(eventApi).forEach(name => {\r\n uni[name] = eventApi[name];\r\n });\r\n\r\n Object.keys(api).forEach(name => {\r\n uni[name] = promisify(name, api[name]);\r\n });\r\n\r\n Object.keys(wx).forEach(name => {\r\n if (hasOwn(wx, name) || hasOwn(protocols, name)) {\r\n uni[name] = promisify(name, wrapper(name, wx[name]));\r\n }\r\n });\r\n}\r\n\r\nwx.createApp = createApp;\r\nwx.createPage = createPage;\r\nwx.createComponent = createComponent;\r\n\r\nvar uni$1 = uni;\r\n\r\nexport default uni$1;\r\nexport { createApp, createComponent, createPage };\r\n","/*!\n * Vue.js v2.6.11\n * (c) 2014-2020 Evan You\n * Released under the MIT License.\n */\n/* */\n\nvar emptyObject = Object.freeze({});\n\n// These helpers produce better VM code in JS engines due to their\n// explicitness and function inlining.\nfunction isUndef (v) {\n return v === undefined || v === null\n}\n\nfunction isDef (v) {\n return v !== undefined && v !== null\n}\n\nfunction isTrue (v) {\n return v === true\n}\n\nfunction isFalse (v) {\n return v === false\n}\n\n/**\n * Check if value is primitive.\n */\nfunction isPrimitive (value) {\n return (\n typeof value === 'string' ||\n typeof value === 'number' ||\n // $flow-disable-line\n typeof value === 'symbol' ||\n typeof value === 'boolean'\n )\n}\n\n/**\n * Quick object check - this is primarily used to tell\n * Objects from primitive values when we know the value\n * is a JSON-compliant type.\n */\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\n/**\n * Get the raw type string of a value, e.g., [object Object].\n */\nvar _toString = Object.prototype.toString;\n\nfunction toRawType (value) {\n return _toString.call(value).slice(8, -1)\n}\n\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nfunction isPlainObject (obj) {\n return _toString.call(obj) === '[object Object]'\n}\n\nfunction isRegExp (v) {\n return _toString.call(v) === '[object RegExp]'\n}\n\n/**\n * Check if val is a valid array index.\n */\nfunction isValidArrayIndex (val) {\n var n = parseFloat(String(val));\n return n >= 0 && Math.floor(n) === n && isFinite(val)\n}\n\nfunction isPromise (val) {\n return (\n isDef(val) &&\n typeof val.then === 'function' &&\n typeof val.catch === 'function'\n )\n}\n\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction toString (val) {\n return val == null\n ? ''\n : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString)\n ? JSON.stringify(val, null, 2)\n : String(val)\n}\n\n/**\n * Convert an input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber (val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n\n}\n\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap (\n str,\n expectsLowerCase\n) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase\n ? function (val) { return map[val.toLowerCase()]; }\n : function (val) { return map[val]; }\n}\n\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n\n/**\n * Check if an attribute is a reserved attribute.\n */\nvar isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');\n\n/**\n * Remove an item from an array.\n */\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\n/**\n * Check whether an object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n var cache = Object.create(null);\n return (function cachedFn (str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str))\n })\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })\n});\n\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n});\n\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /\\B([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str.replace(hyphenateRE, '-$1').toLowerCase()\n});\n\n/**\n * Simple bind polyfill for environments that do not support it,\n * e.g., PhantomJS 1.x. Technically, we don't need this anymore\n * since native bind is now performant enough in most browsers.\n * But removing it would mean breaking code that was able to run in\n * PhantomJS 1.x, so this must be kept for backward compatibility.\n */\n\n/* istanbul ignore next */\nfunction polyfillBind (fn, ctx) {\n function boundFn (a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx)\n }\n\n boundFn._length = fn.length;\n return boundFn\n}\n\nfunction nativeBind (fn, ctx) {\n return fn.bind(ctx)\n}\n\nvar bind = Function.prototype.bind\n ? nativeBind\n : polyfillBind;\n\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray (list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret\n}\n\n/**\n * Mix properties into target object.\n */\nfunction extend (to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to\n}\n\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject (arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res\n}\n\n/* eslint-disable no-unused-vars */\n\n/**\n * Perform no operation.\n * Stubbing args to make Flow happy without leaving useless transpiled code\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).\n */\nfunction noop (a, b, c) {}\n\n/**\n * Always return false.\n */\nvar no = function (a, b, c) { return false; };\n\n/* eslint-enable no-unused-vars */\n\n/**\n * Return the same value.\n */\nvar identity = function (_) { return _; };\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (a instanceof Date && b instanceof Date) {\n return a.getTime() === b.getTime()\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\n/**\n * Return the first index at which a loosely equal value can be\n * found in the array (if value is a plain object, the array must\n * contain an object of the same shape), or -1 if it is not present.\n */\nfunction looseIndexOf (arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val)) { return i }\n }\n return -1\n}\n\n/**\n * Ensure a function is called only once.\n */\nfunction once (fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn.apply(this, arguments);\n }\n }\n}\n\nvar ASSET_TYPES = [\n 'component',\n 'directive',\n 'filter'\n];\n\nvar LIFECYCLE_HOOKS = [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated',\n 'errorCaptured',\n 'serverPrefetch'\n];\n\n/* */\n\n\n\nvar config = ({\n /**\n * Option merge strategies (used in core/util/options)\n */\n // $flow-disable-line\n optionMergeStrategies: Object.create(null),\n\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n\n /**\n * Show production mode tip message on boot?\n */\n productionTip: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to enable devtools\n */\n devtools: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to record perf\n */\n performance: false,\n\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n\n /**\n * Custom user key aliases for v-on\n */\n // $flow-disable-line\n keyCodes: Object.create(null),\n\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: no,\n\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n\n /**\n * Perform updates asynchronously. Intended to be used by Vue Test Utils\n * This will significantly reduce performance if set to false.\n */\n async: true,\n\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: LIFECYCLE_HOOKS\n});\n\n/* */\n\n/**\n * unicode letters used for parsing html tags, component names and property paths.\n * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname\n * skipping \\u10000-\\uEFFFF due to it freezing up PhantomJS\n */\nvar unicodeRegExp = /a-zA-Z\\u00B7\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u203F-\\u2040\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD/;\n\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved (str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5F\n}\n\n/**\n * Define a property.\n */\nfunction def (obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n\n/**\n * Parse simple path.\n */\nvar bailRE = new RegExp((\"[^\" + (unicodeRegExp.source) + \".$_\\\\d]\"));\nfunction parsePath (path) {\n if (bailRE.test(path)) {\n return\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj) { return }\n obj = obj[segments[i]];\n }\n return obj\n }\n}\n\n/* */\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;\nvar weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nvar isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');\nvar isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');\nvar isChrome = UA && /chrome\\/\\d+/.test(UA) && !isEdge;\nvar isPhantomJS = UA && /phantomjs/.test(UA);\nvar isFF = UA && UA.match(/firefox\\/(\\d+)/);\n\n// Firefox has a \"watch\" function on Object.prototype...\nvar nativeWatch = ({}).watch;\nif (inBrowser) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', ({\n get: function get () {\n }\n })); // https://github.com/facebook/flow/issues/285\n window.addEventListener('test-passive', null, opts);\n } catch (e) {}\n}\n\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && !inWeex && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer = global['process'] && global['process'].env.VUE_ENV === 'server';\n } else {\n _isServer = false;\n }\n }\n return _isServer\n};\n\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\n/* istanbul ignore next */\nfunction isNative (Ctor) {\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString())\n}\n\nvar hasSymbol =\n typeof Symbol !== 'undefined' && isNative(Symbol) &&\n typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);\n\nvar _Set;\n/* istanbul ignore if */ // $flow-disable-line\nif (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n} else {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = /*@__PURE__*/(function () {\n function Set () {\n this.set = Object.create(null);\n }\n Set.prototype.has = function has (key) {\n return this.set[key] === true\n };\n Set.prototype.add = function add (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function clear () {\n this.set = Object.create(null);\n };\n\n return Set;\n }());\n}\n\n/* */\n\nvar warn = noop;\nvar tip = noop;\nvar generateComponentTrace = (noop); // work around flow check\nvar formatComponentName = (noop);\n\nif (process.env.NODE_ENV !== 'production') {\n var hasConsole = typeof console !== 'undefined';\n var classifyRE = /(?:^|[-_])(\\w)/g;\n var classify = function (str) { return str\n .replace(classifyRE, function (c) { return c.toUpperCase(); })\n .replace(/[-_]/g, ''); };\n\n warn = function (msg, vm) {\n var trace = vm ? generateComponentTrace(vm) : '';\n\n if (config.warnHandler) {\n config.warnHandler.call(null, msg, vm, trace);\n } else if (hasConsole && (!config.silent)) {\n console.error((\"[Vue warn]: \" + msg + trace));\n }\n };\n\n tip = function (msg, vm) {\n if (hasConsole && (!config.silent)) {\n console.warn(\"[Vue tip]: \" + msg + (\n vm ? generateComponentTrace(vm) : ''\n ));\n }\n };\n\n formatComponentName = function (vm, includeFile) {\n {\n if(vm.$scope && vm.$scope.is){\n return vm.$scope.is\n }\n }\n if (vm.$root === vm) {\n return ''\n }\n var options = typeof vm === 'function' && vm.cid != null\n ? vm.options\n : vm._isVue\n ? vm.$options || vm.constructor.options\n : vm;\n var name = options.name || options._componentTag;\n var file = options.__file;\n if (!name && file) {\n var match = file.match(/([^/\\\\]+)\\.vue$/);\n name = match && match[1];\n }\n\n return (\n (name ? (\"<\" + (classify(name)) + \">\") : \"\") +\n (file && includeFile !== false ? (\" at \" + file) : '')\n )\n };\n\n var repeat = function (str, n) {\n var res = '';\n while (n) {\n if (n % 2 === 1) { res += str; }\n if (n > 1) { str += str; }\n n >>= 1;\n }\n return res\n };\n\n generateComponentTrace = function (vm) {\n if (vm._isVue && vm.$parent) {\n var tree = [];\n var currentRecursiveSequence = 0;\n while (vm) {\n if (tree.length > 0) {\n var last = tree[tree.length - 1];\n if (last.constructor === vm.constructor) {\n currentRecursiveSequence++;\n vm = vm.$parent;\n continue\n } else if (currentRecursiveSequence > 0) {\n tree[tree.length - 1] = [last, currentRecursiveSequence];\n currentRecursiveSequence = 0;\n }\n }\n tree.push(vm);\n vm = vm.$parent;\n }\n return '\\n\\nfound in\\n\\n' + tree\n .map(function (vm, i) { return (\"\" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)\n ? ((formatComponentName(vm[0])) + \"... (\" + (vm[1]) + \" recursive calls)\")\n : formatComponentName(vm))); })\n .join('\\n')\n } else {\n return (\"\\n\\n(found in \" + (formatComponentName(vm)) + \")\")\n }\n };\n}\n\n/* */\n\nvar uid = 0;\n\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n */\nvar Dep = function Dep () {\n // fixed by xxxxxx (nvue vuex)\n /* eslint-disable no-undef */\n if(typeof SharedObject !== 'undefined'){\n this.id = SharedObject.uid++;\n } else {\n this.id = uid++;\n }\n this.subs = [];\n};\n\nDep.prototype.addSub = function addSub (sub) {\n this.subs.push(sub);\n};\n\nDep.prototype.removeSub = function removeSub (sub) {\n remove(this.subs, sub);\n};\n\nDep.prototype.depend = function depend () {\n if (Dep.SharedObject.target) {\n Dep.SharedObject.target.addDep(this);\n }\n};\n\nDep.prototype.notify = function notify () {\n // stabilize the subscriber list first\n var subs = this.subs.slice();\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n // subs aren't sorted in scheduler if not running async\n // we need to sort them now to make sure they fire in correct\n // order\n subs.sort(function (a, b) { return a.id - b.id; });\n }\n for (var i = 0, l = subs.length; i < l; i++) {\n subs[i].update();\n }\n};\n\n// The current target watcher being evaluated.\n// This is globally unique because only one watcher\n// can be evaluated at a time.\n// fixed by xxxxxx (nvue shared vuex)\n/* eslint-disable no-undef */\nDep.SharedObject = typeof SharedObject !== 'undefined' ? SharedObject : {};\nDep.SharedObject.target = null;\nDep.SharedObject.targetStack = [];\n\nfunction pushTarget (target) {\n Dep.SharedObject.targetStack.push(target);\n Dep.SharedObject.target = target;\n}\n\nfunction popTarget () {\n Dep.SharedObject.targetStack.pop();\n Dep.SharedObject.target = Dep.SharedObject.targetStack[Dep.SharedObject.targetStack.length - 1];\n}\n\n/* */\n\nvar VNode = function VNode (\n tag,\n data,\n children,\n text,\n elm,\n context,\n componentOptions,\n asyncFactory\n) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.fnContext = undefined;\n this.fnOptions = undefined;\n this.fnScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n};\n\nvar prototypeAccessors = { child: { configurable: true } };\n\n// DEPRECATED: alias for componentInstance for backwards compat.\n/* istanbul ignore next */\nprototypeAccessors.child.get = function () {\n return this.componentInstance\n};\n\nObject.defineProperties( VNode.prototype, prototypeAccessors );\n\nvar createEmptyVNode = function (text) {\n if ( text === void 0 ) text = '';\n\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node\n};\n\nfunction createTextVNode (val) {\n return new VNode(undefined, undefined, undefined, String(val))\n}\n\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode (vnode) {\n var cloned = new VNode(\n vnode.tag,\n vnode.data,\n // #7975\n // clone children array to avoid mutating original in case of cloning\n // a child.\n vnode.children && vnode.children.slice(),\n vnode.text,\n vnode.elm,\n vnode.context,\n vnode.componentOptions,\n vnode.asyncFactory\n );\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.fnContext = vnode.fnContext;\n cloned.fnOptions = vnode.fnOptions;\n cloned.fnScopeId = vnode.fnScopeId;\n cloned.asyncMeta = vnode.asyncMeta;\n cloned.isCloned = true;\n return cloned\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\n\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);\n\nvar methodsToPatch = [\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n];\n\n/**\n * Intercept mutating methods and emit events\n */\nmethodsToPatch.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break\n case 'splice':\n inserted = args.slice(2);\n break\n }\n if (inserted) { ob.observeArray(inserted); }\n // notify change\n ob.dep.notify();\n return result\n });\n});\n\n/* */\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\n\n/**\n * In some cases we may want to disable observation inside a component's\n * update computation.\n */\nvar shouldObserve = true;\n\nfunction toggleObserving (value) {\n shouldObserve = value;\n}\n\n/**\n * Observer class that is attached to each observed\n * object. Once attached, the observer converts the target\n * object's property keys into getter/setters that\n * collect dependencies and dispatch updates.\n */\nvar Observer = function Observer (value) {\n this.value = value;\n this.dep = new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (Array.isArray(value)) {\n if (hasProto) {\n {// fixed by xxxxxx 微信小程序使用 plugins 之后,数组方法被直接挂载到了数组对象上,需要执行 copyAugment 逻辑\n if(value.push !== value.__proto__.push){\n copyAugment(value, arrayMethods, arrayKeys);\n } else {\n protoAugment(value, arrayMethods);\n }\n }\n } else {\n copyAugment(value, arrayMethods, arrayKeys);\n }\n this.observeArray(value);\n } else {\n this.walk(value);\n }\n};\n\n/**\n * Walk through all properties and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\nObserver.prototype.walk = function walk (obj) {\n var keys = Object.keys(obj);\n for (var i = 0; i < keys.length; i++) {\n defineReactive$$1(obj, keys[i]);\n }\n};\n\n/**\n * Observe a list of Array items.\n */\nObserver.prototype.observeArray = function observeArray (items) {\n for (var i = 0, l = items.length; i < l; i++) {\n observe(items[i]);\n }\n};\n\n// helpers\n\n/**\n * Augment a target Object or Array by intercepting\n * the prototype chain using __proto__\n */\nfunction protoAugment (target, src) {\n /* eslint-disable no-proto */\n target.__proto__ = src;\n /* eslint-enable no-proto */\n}\n\n/**\n * Augment a target Object or Array by defining\n * hidden properties.\n */\n/* istanbul ignore next */\nfunction copyAugment (target, src, keys) {\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n def(target, key, src[key]);\n }\n}\n\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe (value, asRootData) {\n if (!isObject(value) || value instanceof VNode) {\n return\n }\n var ob;\n if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n ob = value.__ob__;\n } else if (\n shouldObserve &&\n !isServerRendering() &&\n (Array.isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value._isVue\n ) {\n ob = new Observer(value);\n }\n if (asRootData && ob) {\n ob.vmCount++;\n }\n return ob\n}\n\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive$$1 (\n obj,\n key,\n val,\n customSetter,\n shallow\n) {\n var dep = new Dep();\n\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return\n }\n\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n var setter = property && property.set;\n if ((!getter || setter) && arguments.length === 2) {\n val = obj[key];\n }\n\n var childOb = !shallow && observe(val);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter () {\n var value = getter ? getter.call(obj) : val;\n if (Dep.SharedObject.target) { // fixed by xxxxxx\n dep.depend();\n if (childOb) {\n childOb.dep.depend();\n if (Array.isArray(value)) {\n dependArray(value);\n }\n }\n }\n return value\n },\n set: function reactiveSetter (newVal) {\n var value = getter ? getter.call(obj) : val;\n /* eslint-disable no-self-compare */\n if (newVal === value || (newVal !== newVal && value !== value)) {\n return\n }\n /* eslint-enable no-self-compare */\n if (process.env.NODE_ENV !== 'production' && customSetter) {\n customSetter();\n }\n // #7981: for accessor properties without setter\n if (getter && !setter) { return }\n if (setter) {\n setter.call(obj, newVal);\n } else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal);\n dep.notify();\n }\n });\n}\n\n/**\n * Set a property on an object. Adds the new property and\n * triggers change notification if the property doesn't\n * already exist.\n */\nfunction set (target, key, val) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot set reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n return val\n }\n if (key in target && !(key in Object.prototype)) {\n target[key] = val;\n return val\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.'\n );\n return val\n }\n if (!ob) {\n target[key] = val;\n return val\n }\n defineReactive$$1(ob.value, key, val);\n ob.dep.notify();\n return val\n}\n\n/**\n * Delete a property and trigger change if necessary.\n */\nfunction del (target, key) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot delete reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.'\n );\n return\n }\n if (!hasOwn(target, key)) {\n return\n }\n delete target[key];\n if (!ob) {\n return\n }\n ob.dep.notify();\n}\n\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray (value) {\n for (var e = (void 0), i = 0, l = value.length; i < l; i++) {\n e = value[i];\n e && e.__ob__ && e.__ob__.dep.depend();\n if (Array.isArray(e)) {\n dependArray(e);\n }\n }\n}\n\n/* */\n\n/**\n * Option overwriting strategies are functions that handle\n * how to merge a parent option value and a child option\n * value into the final value.\n */\nvar strats = config.optionMergeStrategies;\n\n/**\n * Options with restrictions\n */\nif (process.env.NODE_ENV !== 'production') {\n strats.el = strats.propsData = function (parent, child, vm, key) {\n if (!vm) {\n warn(\n \"option \\\"\" + key + \"\\\" can only be used during instance \" +\n 'creation with the `new` keyword.'\n );\n }\n return defaultStrat(parent, child)\n };\n}\n\n/**\n * Helper that recursively merges two data objects together.\n */\nfunction mergeData (to, from) {\n if (!from) { return to }\n var key, toVal, fromVal;\n\n var keys = hasSymbol\n ? Reflect.ownKeys(from)\n : Object.keys(from);\n\n for (var i = 0; i < keys.length; i++) {\n key = keys[i];\n // in case the object is already observed...\n if (key === '__ob__') { continue }\n toVal = to[key];\n fromVal = from[key];\n if (!hasOwn(to, key)) {\n set(to, key, fromVal);\n } else if (\n toVal !== fromVal &&\n isPlainObject(toVal) &&\n isPlainObject(fromVal)\n ) {\n mergeData(toVal, fromVal);\n }\n }\n return to\n}\n\n/**\n * Data\n */\nfunction mergeDataOrFn (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n // in a Vue.extend merge, both should be functions\n if (!childVal) {\n return parentVal\n }\n if (!parentVal) {\n return childVal\n }\n // when parentVal & childVal are both present,\n // we need to return a function that returns the\n // merged result of both functions... no need to\n // check if parentVal is a function here because\n // it has to be a function to pass previous merges.\n return function mergedDataFn () {\n return mergeData(\n typeof childVal === 'function' ? childVal.call(this, this) : childVal,\n typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal\n )\n }\n } else {\n return function mergedInstanceDataFn () {\n // instance merge\n var instanceData = typeof childVal === 'function'\n ? childVal.call(vm, vm)\n : childVal;\n var defaultData = typeof parentVal === 'function'\n ? parentVal.call(vm, vm)\n : parentVal;\n if (instanceData) {\n return mergeData(instanceData, defaultData)\n } else {\n return defaultData\n }\n }\n }\n}\n\nstrats.data = function (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n if (childVal && typeof childVal !== 'function') {\n process.env.NODE_ENV !== 'production' && warn(\n 'The \"data\" option should be a function ' +\n 'that returns a per-instance value in component ' +\n 'definitions.',\n vm\n );\n\n return parentVal\n }\n return mergeDataOrFn(parentVal, childVal)\n }\n\n return mergeDataOrFn(parentVal, childVal, vm)\n};\n\n/**\n * Hooks and props are merged as arrays.\n */\nfunction mergeHook (\n parentVal,\n childVal\n) {\n var res = childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal\n : [childVal]\n : parentVal;\n return res\n ? dedupeHooks(res)\n : res\n}\n\nfunction dedupeHooks (hooks) {\n var res = [];\n for (var i = 0; i < hooks.length; i++) {\n if (res.indexOf(hooks[i]) === -1) {\n res.push(hooks[i]);\n }\n }\n return res\n}\n\nLIFECYCLE_HOOKS.forEach(function (hook) {\n strats[hook] = mergeHook;\n});\n\n/**\n * Assets\n *\n * When a vm is present (instance creation), we need to do\n * a three-way merge between constructor options, instance\n * options and parent options.\n */\nfunction mergeAssets (\n parentVal,\n childVal,\n vm,\n key\n) {\n var res = Object.create(parentVal || null);\n if (childVal) {\n process.env.NODE_ENV !== 'production' && assertObjectType(key, childVal, vm);\n return extend(res, childVal)\n } else {\n return res\n }\n}\n\nASSET_TYPES.forEach(function (type) {\n strats[type + 's'] = mergeAssets;\n});\n\n/**\n * Watchers.\n *\n * Watchers hashes should not overwrite one\n * another, so we merge them as arrays.\n */\nstrats.watch = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n // work around Firefox's Object.prototype.watch...\n if (parentVal === nativeWatch) { parentVal = undefined; }\n if (childVal === nativeWatch) { childVal = undefined; }\n /* istanbul ignore if */\n if (!childVal) { return Object.create(parentVal || null) }\n if (process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = {};\n extend(ret, parentVal);\n for (var key$1 in childVal) {\n var parent = ret[key$1];\n var child = childVal[key$1];\n if (parent && !Array.isArray(parent)) {\n parent = [parent];\n }\n ret[key$1] = parent\n ? parent.concat(child)\n : Array.isArray(child) ? child : [child];\n }\n return ret\n};\n\n/**\n * Other object hashes.\n */\nstrats.props =\nstrats.methods =\nstrats.inject =\nstrats.computed = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n if (childVal && process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = Object.create(null);\n extend(ret, parentVal);\n if (childVal) { extend(ret, childVal); }\n return ret\n};\nstrats.provide = mergeDataOrFn;\n\n/**\n * Default strategy.\n */\nvar defaultStrat = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n};\n\n/**\n * Validate component names\n */\nfunction checkComponents (options) {\n for (var key in options.components) {\n validateComponentName(key);\n }\n}\n\nfunction validateComponentName (name) {\n if (!new RegExp((\"^[a-zA-Z][\\\\-\\\\.0-9_\" + (unicodeRegExp.source) + \"]*$\")).test(name)) {\n warn(\n 'Invalid component name: \"' + name + '\". Component names ' +\n 'should conform to valid custom element name in html5 specification.'\n );\n }\n if (isBuiltInTag(name) || config.isReservedTag(name)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + name\n );\n }\n}\n\n/**\n * Ensure all props option syntax are normalized into the\n * Object-based format.\n */\nfunction normalizeProps (options, vm) {\n var props = options.props;\n if (!props) { return }\n var res = {};\n var i, val, name;\n if (Array.isArray(props)) {\n i = props.length;\n while (i--) {\n val = props[i];\n if (typeof val === 'string') {\n name = camelize(val);\n res[name] = { type: null };\n } else if (process.env.NODE_ENV !== 'production') {\n warn('props must be strings when using array syntax.');\n }\n }\n } else if (isPlainObject(props)) {\n for (var key in props) {\n val = props[key];\n name = camelize(key);\n res[name] = isPlainObject(val)\n ? val\n : { type: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"props\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(props)) + \".\",\n vm\n );\n }\n options.props = res;\n}\n\n/**\n * Normalize all injections into Object-based format\n */\nfunction normalizeInject (options, vm) {\n var inject = options.inject;\n if (!inject) { return }\n var normalized = options.inject = {};\n if (Array.isArray(inject)) {\n for (var i = 0; i < inject.length; i++) {\n normalized[inject[i]] = { from: inject[i] };\n }\n } else if (isPlainObject(inject)) {\n for (var key in inject) {\n var val = inject[key];\n normalized[key] = isPlainObject(val)\n ? extend({ from: key }, val)\n : { from: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"inject\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(inject)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Normalize raw function directives into object format.\n */\nfunction normalizeDirectives (options) {\n var dirs = options.directives;\n if (dirs) {\n for (var key in dirs) {\n var def$$1 = dirs[key];\n if (typeof def$$1 === 'function') {\n dirs[key] = { bind: def$$1, update: def$$1 };\n }\n }\n }\n}\n\nfunction assertObjectType (name, value, vm) {\n if (!isPlainObject(value)) {\n warn(\n \"Invalid value for option \\\"\" + name + \"\\\": expected an Object, \" +\n \"but got \" + (toRawType(value)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Merge two option objects into a new one.\n * Core utility used in both instantiation and inheritance.\n */\nfunction mergeOptions (\n parent,\n child,\n vm\n) {\n if (process.env.NODE_ENV !== 'production') {\n checkComponents(child);\n }\n\n if (typeof child === 'function') {\n child = child.options;\n }\n\n normalizeProps(child, vm);\n normalizeInject(child, vm);\n normalizeDirectives(child);\n\n // Apply extends and mixins on the child options,\n // but only if it is a raw options object that isn't\n // the result of another mergeOptions call.\n // Only merged options has the _base property.\n if (!child._base) {\n if (child.extends) {\n parent = mergeOptions(parent, child.extends, vm);\n }\n if (child.mixins) {\n for (var i = 0, l = child.mixins.length; i < l; i++) {\n parent = mergeOptions(parent, child.mixins[i], vm);\n }\n }\n }\n\n var options = {};\n var key;\n for (key in parent) {\n mergeField(key);\n }\n for (key in child) {\n if (!hasOwn(parent, key)) {\n mergeField(key);\n }\n }\n function mergeField (key) {\n var strat = strats[key] || defaultStrat;\n options[key] = strat(parent[key], child[key], vm, key);\n }\n return options\n}\n\n/**\n * Resolve an asset.\n * This function is used because child instances need access\n * to assets defined in its ancestor chain.\n */\nfunction resolveAsset (\n options,\n type,\n id,\n warnMissing\n) {\n /* istanbul ignore if */\n if (typeof id !== 'string') {\n return\n }\n var assets = options[type];\n // check local registration variations first\n if (hasOwn(assets, id)) { return assets[id] }\n var camelizedId = camelize(id);\n if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }\n var PascalCaseId = capitalize(camelizedId);\n if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }\n // fallback to prototype chain\n var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];\n if (process.env.NODE_ENV !== 'production' && warnMissing && !res) {\n warn(\n 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,\n options\n );\n }\n return res\n}\n\n/* */\n\n\n\nfunction validateProp (\n key,\n propOptions,\n propsData,\n vm\n) {\n var prop = propOptions[key];\n var absent = !hasOwn(propsData, key);\n var value = propsData[key];\n // boolean casting\n var booleanIndex = getTypeIndex(Boolean, prop.type);\n if (booleanIndex > -1) {\n if (absent && !hasOwn(prop, 'default')) {\n value = false;\n } else if (value === '' || value === hyphenate(key)) {\n // only cast empty string / same name to boolean if\n // boolean has higher priority\n var stringIndex = getTypeIndex(String, prop.type);\n if (stringIndex < 0 || booleanIndex < stringIndex) {\n value = true;\n }\n }\n }\n // check default value\n if (value === undefined) {\n value = getPropDefaultValue(vm, prop, key);\n // since the default value is a fresh copy,\n // make sure to observe it.\n var prevShouldObserve = shouldObserve;\n toggleObserving(true);\n observe(value);\n toggleObserving(prevShouldObserve);\n }\n if (\n process.env.NODE_ENV !== 'production' &&\n // skip validation for weex recycle-list child component props\n !(false)\n ) {\n assertProp(prop, key, value, vm, absent);\n }\n return value\n}\n\n/**\n * Get the default value of a prop.\n */\nfunction getPropDefaultValue (vm, prop, key) {\n // no default, return undefined\n if (!hasOwn(prop, 'default')) {\n return undefined\n }\n var def = prop.default;\n // warn against non-factory defaults for Object & Array\n if (process.env.NODE_ENV !== 'production' && isObject(def)) {\n warn(\n 'Invalid default value for prop \"' + key + '\": ' +\n 'Props with type Object/Array must use a factory function ' +\n 'to return the default value.',\n vm\n );\n }\n // the raw prop value was also undefined from previous render,\n // return previous default value to avoid unnecessary watcher trigger\n if (vm && vm.$options.propsData &&\n vm.$options.propsData[key] === undefined &&\n vm._props[key] !== undefined\n ) {\n return vm._props[key]\n }\n // call factory function for non-Function types\n // a value is Function if its prototype is function even across different execution context\n return typeof def === 'function' && getType(prop.type) !== 'Function'\n ? def.call(vm)\n : def\n}\n\n/**\n * Assert whether a prop is valid.\n */\nfunction assertProp (\n prop,\n name,\n value,\n vm,\n absent\n) {\n if (prop.required && absent) {\n warn(\n 'Missing required prop: \"' + name + '\"',\n vm\n );\n return\n }\n if (value == null && !prop.required) {\n return\n }\n var type = prop.type;\n var valid = !type || type === true;\n var expectedTypes = [];\n if (type) {\n if (!Array.isArray(type)) {\n type = [type];\n }\n for (var i = 0; i < type.length && !valid; i++) {\n var assertedType = assertType(value, type[i]);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n\n if (!valid) {\n warn(\n getInvalidTypeMessage(name, value, expectedTypes),\n vm\n );\n return\n }\n var validator = prop.validator;\n if (validator) {\n if (!validator(value)) {\n warn(\n 'Invalid prop: custom validator check failed for prop \"' + name + '\".',\n vm\n );\n }\n }\n}\n\nvar simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;\n\nfunction assertType (value, type) {\n var valid;\n var expectedType = getType(type);\n if (simpleCheckRE.test(expectedType)) {\n var t = typeof value;\n valid = t === expectedType.toLowerCase();\n // for primitive wrapper objects\n if (!valid && t === 'object') {\n valid = value instanceof type;\n }\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value);\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value);\n } else {\n valid = value instanceof type;\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\n/**\n * Use function string name to check built-in types,\n * because a simple equality check will fail when running\n * across different vms / iframes.\n */\nfunction getType (fn) {\n var match = fn && fn.toString().match(/^\\s*function (\\w+)/);\n return match ? match[1] : ''\n}\n\nfunction isSameType (a, b) {\n return getType(a) === getType(b)\n}\n\nfunction getTypeIndex (type, expectedTypes) {\n if (!Array.isArray(expectedTypes)) {\n return isSameType(expectedTypes, type) ? 0 : -1\n }\n for (var i = 0, len = expectedTypes.length; i < len; i++) {\n if (isSameType(expectedTypes[i], type)) {\n return i\n }\n }\n return -1\n}\n\nfunction getInvalidTypeMessage (name, value, expectedTypes) {\n var message = \"Invalid prop: type check failed for prop \\\"\" + name + \"\\\".\" +\n \" Expected \" + (expectedTypes.map(capitalize).join(', '));\n var expectedType = expectedTypes[0];\n var receivedType = toRawType(value);\n var expectedValue = styleValue(value, expectedType);\n var receivedValue = styleValue(value, receivedType);\n // check if we need to specify expected value\n if (expectedTypes.length === 1 &&\n isExplicable(expectedType) &&\n !isBoolean(expectedType, receivedType)) {\n message += \" with value \" + expectedValue;\n }\n message += \", got \" + receivedType + \" \";\n // check if we need to specify received value\n if (isExplicable(receivedType)) {\n message += \"with value \" + receivedValue + \".\";\n }\n return message\n}\n\nfunction styleValue (value, type) {\n if (type === 'String') {\n return (\"\\\"\" + value + \"\\\"\")\n } else if (type === 'Number') {\n return (\"\" + (Number(value)))\n } else {\n return (\"\" + value)\n }\n}\n\nfunction isExplicable (value) {\n var explicitTypes = ['string', 'number', 'boolean'];\n return explicitTypes.some(function (elem) { return value.toLowerCase() === elem; })\n}\n\nfunction isBoolean () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return args.some(function (elem) { return elem.toLowerCase() === 'boolean'; })\n}\n\n/* */\n\nfunction handleError (err, vm, info) {\n // Deactivate deps tracking while processing error handler to avoid possible infinite rendering.\n // See: https://github.com/vuejs/vuex/issues/1505\n pushTarget();\n try {\n if (vm) {\n var cur = vm;\n while ((cur = cur.$parent)) {\n var hooks = cur.$options.errorCaptured;\n if (hooks) {\n for (var i = 0; i < hooks.length; i++) {\n try {\n var capture = hooks[i].call(cur, err, vm, info) === false;\n if (capture) { return }\n } catch (e) {\n globalHandleError(e, cur, 'errorCaptured hook');\n }\n }\n }\n }\n }\n globalHandleError(err, vm, info);\n } finally {\n popTarget();\n }\n}\n\nfunction invokeWithErrorHandling (\n handler,\n context,\n args,\n vm,\n info\n) {\n var res;\n try {\n res = args ? handler.apply(context, args) : handler.call(context);\n if (res && !res._isVue && isPromise(res) && !res._handled) {\n res.catch(function (e) { return handleError(e, vm, info + \" (Promise/async)\"); });\n // issue #9511\n // avoid catch triggering multiple times when nested calls\n res._handled = true;\n }\n } catch (e) {\n handleError(e, vm, info);\n }\n return res\n}\n\nfunction globalHandleError (err, vm, info) {\n if (config.errorHandler) {\n try {\n return config.errorHandler.call(null, err, vm, info)\n } catch (e) {\n // if the user intentionally throws the original error in the handler,\n // do not log it twice\n if (e !== err) {\n logError(e, null, 'config.errorHandler');\n }\n }\n }\n logError(err, vm, info);\n}\n\nfunction logError (err, vm, info) {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n }\n /* istanbul ignore else */\n if ((inBrowser || inWeex) && typeof console !== 'undefined') {\n console.error(err);\n } else {\n throw err\n }\n}\n\n/* */\n\nvar callbacks = [];\nvar pending = false;\n\nfunction flushCallbacks () {\n pending = false;\n var copies = callbacks.slice(0);\n callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n}\n\n// Here we have async deferring wrappers using microtasks.\n// In 2.5 we used (macro) tasks (in combination with microtasks).\n// However, it has subtle problems when state is changed right before repaint\n// (e.g. #6813, out-in transitions).\n// Also, using (macro) tasks in event handler would cause some weird behaviors\n// that cannot be circumvented (e.g. #7109, #7153, #7546, #7834, #8109).\n// So we now use microtasks everywhere, again.\n// A major drawback of this tradeoff is that there are some scenarios\n// where microtasks have too high a priority and fire in between supposedly\n// sequential events (e.g. #4521, #6690, which have workarounds)\n// or even between bubbling of the same event (#6566).\nvar timerFunc;\n\n// The nextTick behavior leverages the microtask queue, which can be accessed\n// via either native Promise.then or MutationObserver.\n// MutationObserver has wider support, however it is seriously bugged in\n// UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It\n// completely stops working after triggering a few times... so, if native\n// Promise is available, we will use it:\n/* istanbul ignore next, $flow-disable-line */\nif (typeof Promise !== 'undefined' && isNative(Promise)) {\n var p = Promise.resolve();\n timerFunc = function () {\n p.then(flushCallbacks);\n // In problematic UIWebViews, Promise.then doesn't completely break, but\n // it can get stuck in a weird state where callbacks are pushed into the\n // microtask queue but the queue isn't being flushed, until the browser\n // needs to do some other work, e.g. handle a timer. Therefore we can\n // \"force\" the microtask queue to be flushed by adding an empty timer.\n if (isIOS) { setTimeout(noop); }\n };\n} else if (!isIE && typeof MutationObserver !== 'undefined' && (\n isNative(MutationObserver) ||\n // PhantomJS and iOS 7.x\n MutationObserver.toString() === '[object MutationObserverConstructor]'\n)) {\n // Use MutationObserver where native Promise is not available,\n // e.g. PhantomJS, iOS7, Android 4.4\n // (#6466 MutationObserver is unreliable in IE11)\n var counter = 1;\n var observer = new MutationObserver(flushCallbacks);\n var textNode = document.createTextNode(String(counter));\n observer.observe(textNode, {\n characterData: true\n });\n timerFunc = function () {\n counter = (counter + 1) % 2;\n textNode.data = String(counter);\n };\n} else if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {\n // Fallback to setImmediate.\n // Technically it leverages the (macro) task queue,\n // but it is still a better choice than setTimeout.\n timerFunc = function () {\n setImmediate(flushCallbacks);\n };\n} else {\n // Fallback to setTimeout.\n timerFunc = function () {\n setTimeout(flushCallbacks, 0);\n };\n}\n\nfunction nextTick (cb, ctx) {\n var _resolve;\n callbacks.push(function () {\n if (cb) {\n try {\n cb.call(ctx);\n } catch (e) {\n handleError(e, ctx, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(ctx);\n }\n });\n if (!pending) {\n pending = true;\n timerFunc();\n }\n // $flow-disable-line\n if (!cb && typeof Promise !== 'undefined') {\n return new Promise(function (resolve) {\n _resolve = resolve;\n })\n }\n}\n\n/* */\n\n/* not type checking this file because flow doesn't play well with Proxy */\n\nvar initProxy;\n\nif (process.env.NODE_ENV !== 'production') {\n var allowedGlobals = makeMap(\n 'Infinity,undefined,NaN,isFinite,isNaN,' +\n 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +\n 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +\n 'require' // for Webpack/Browserify\n );\n\n var warnNonPresent = function (target, key) {\n warn(\n \"Property or method \\\"\" + key + \"\\\" is not defined on the instance but \" +\n 'referenced during render. Make sure that this property is reactive, ' +\n 'either in the data option, or for class-based components, by ' +\n 'initializing the property. ' +\n 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',\n target\n );\n };\n\n var warnReservedPrefix = function (target, key) {\n warn(\n \"Property \\\"\" + key + \"\\\" must be accessed with \\\"$data.\" + key + \"\\\" because \" +\n 'properties starting with \"$\" or \"_\" are not proxied in the Vue instance to ' +\n 'prevent conflicts with Vue internals. ' +\n 'See: https://vuejs.org/v2/api/#data',\n target\n );\n };\n\n var hasProxy =\n typeof Proxy !== 'undefined' && isNative(Proxy);\n\n if (hasProxy) {\n var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');\n config.keyCodes = new Proxy(config.keyCodes, {\n set: function set (target, key, value) {\n if (isBuiltInModifier(key)) {\n warn((\"Avoid overwriting built-in modifier in config.keyCodes: .\" + key));\n return false\n } else {\n target[key] = value;\n return true\n }\n }\n });\n }\n\n var hasHandler = {\n has: function has (target, key) {\n var has = key in target;\n var isAllowed = allowedGlobals(key) ||\n (typeof key === 'string' && key.charAt(0) === '_' && !(key in target.$data));\n if (!has && !isAllowed) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return has || !isAllowed\n }\n };\n\n var getHandler = {\n get: function get (target, key) {\n if (typeof key === 'string' && !(key in target)) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return target[key]\n }\n };\n\n initProxy = function initProxy (vm) {\n if (hasProxy) {\n // determine which proxy handler to use\n var options = vm.$options;\n var handlers = options.render && options.render._withStripped\n ? getHandler\n : hasHandler;\n vm._renderProxy = new Proxy(vm, handlers);\n } else {\n vm._renderProxy = vm;\n }\n };\n}\n\n/* */\n\nvar seenObjects = new _Set();\n\n/**\n * Recursively traverse an object to evoke all converted\n * getters, so that every nested property inside the object\n * is collected as a \"deep\" dependency.\n */\nfunction traverse (val) {\n _traverse(val, seenObjects);\n seenObjects.clear();\n}\n\nfunction _traverse (val, seen) {\n var i, keys;\n var isA = Array.isArray(val);\n if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {\n return\n }\n if (val.__ob__) {\n var depId = val.__ob__.dep.id;\n if (seen.has(depId)) {\n return\n }\n seen.add(depId);\n }\n if (isA) {\n i = val.length;\n while (i--) { _traverse(val[i], seen); }\n } else {\n keys = Object.keys(val);\n i = keys.length;\n while (i--) { _traverse(val[keys[i]], seen); }\n }\n}\n\nvar mark;\nvar measure;\n\nif (process.env.NODE_ENV !== 'production') {\n var perf = inBrowser && window.performance;\n /* istanbul ignore if */\n if (\n perf &&\n perf.mark &&\n perf.measure &&\n perf.clearMarks &&\n perf.clearMeasures\n ) {\n mark = function (tag) { return perf.mark(tag); };\n measure = function (name, startTag, endTag) {\n perf.measure(name, startTag, endTag);\n perf.clearMarks(startTag);\n perf.clearMarks(endTag);\n // perf.clearMeasures(name)\n };\n }\n}\n\n/* */\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once$$1 ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once$$1,\n capture: capture,\n passive: passive\n }\n});\n\nfunction createFnInvoker (fns, vm) {\n function invoker () {\n var arguments$1 = arguments;\n\n var fns = invoker.fns;\n if (Array.isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n invokeWithErrorHandling(cloned[i], null, arguments$1, vm, \"v-on handler\");\n }\n } else {\n // return handler return value for single handlers\n return invokeWithErrorHandling(fns, null, arguments, vm, \"v-on handler\")\n }\n }\n invoker.fns = fns;\n return invoker\n}\n\nfunction updateListeners (\n on,\n oldOn,\n add,\n remove$$1,\n createOnceHandler,\n vm\n) {\n var name, def$$1, cur, old, event;\n for (name in on) {\n def$$1 = cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n if (isUndef(cur)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Invalid handler for event \\\"\" + (event.name) + \"\\\": got \" + String(cur),\n vm\n );\n } else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur, vm);\n }\n if (isTrue(event.once)) {\n cur = on[name] = createOnceHandler(event.name, cur, event.capture);\n }\n add(event.name, cur, event.capture, event.passive, event.params);\n } else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove$$1(event.name, oldOn[name], event.capture);\n }\n }\n}\n\n/* */\n\n/* */\n\n// fixed by xxxxxx (mp properties)\r\nfunction extractPropertiesFromVNodeData(data, Ctor, res, context) {\r\n var propOptions = Ctor.options.mpOptions && Ctor.options.mpOptions.properties;\r\n if (isUndef(propOptions)) {\r\n return res\r\n }\n var externalClasses = Ctor.options.mpOptions.externalClasses || [];\r\n var attrs = data.attrs;\n var props = data.props;\r\n if (isDef(attrs) || isDef(props)) {\r\n for (var key in propOptions) {\r\n var altKey = hyphenate(key);\n var result = checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n // externalClass\n if (\n result &&\n res[key] &&\n externalClasses.indexOf(altKey) !== -1 &&\n context[camelize(res[key])]\n ) {\n // 赋值 externalClass 真正的值(模板里 externalClass 的值可能是字符串)\n res[key] = context[camelize(res[key])];\n }\r\n }\r\n }\r\n return res\r\n}\n\nfunction extractPropsFromVNodeData (\n data,\n Ctor,\n tag,\n context// fixed by xxxxxx\n) {\n // we are only extracting raw values here.\n // validation and default values are handled in the child\n // component itself.\n var propOptions = Ctor.options.props;\n if (isUndef(propOptions)) {\n // fixed by xxxxxx\n return extractPropertiesFromVNodeData(data, Ctor, {}, context)\n }\n var res = {};\n var attrs = data.attrs;\n var props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n if (process.env.NODE_ENV !== 'production') {\n var keyInLowerCase = key.toLowerCase();\n if (\n key !== keyInLowerCase &&\n attrs && hasOwn(attrs, keyInLowerCase)\n ) {\n tip(\n \"Prop \\\"\" + keyInLowerCase + \"\\\" is passed to component \" +\n (formatComponentName(tag || Ctor)) + \", but the declared prop name is\" +\n \" \\\"\" + key + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and camelCased \" +\n \"props need to use their kebab-case equivalents when using in-DOM \" +\n \"templates. You should probably use \\\"\" + altKey + \"\\\" instead of \\\"\" + key + \"\\\".\"\n );\n }\n }\n checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n }\n }\n // fixed by xxxxxx\n return extractPropertiesFromVNodeData(data, Ctor, res, context)\n}\n\nfunction checkProp (\n res,\n hash,\n key,\n altKey,\n preserve\n) {\n if (isDef(hash)) {\n if (hasOwn(hash, key)) {\n res[key] = hash[key];\n if (!preserve) {\n delete hash[key];\n }\n return true\n } else if (hasOwn(hash, altKey)) {\n res[key] = hash[altKey];\n if (!preserve) {\n delete hash[altKey];\n }\n return true\n }\n }\n return false\n}\n\n/* */\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array. There are\n// two cases where extra normalization is needed:\n\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren (children) {\n for (var i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return Array.prototype.concat.apply([], children)\n }\n }\n return children\n}\n\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g.