Browse Source

Merge branch 'master' of http://192.168.100.32:3000/wulianwei/iot-wap

# Conflicts:
#	src/pages/device/list/Index.vue
#	vite.config.ts
龙三郎 10 months ago
parent
commit
5fb315d762
100 changed files with 1311 additions and 22 deletions
  1. 2 0
      components.d.ts
  2. 0 0
      dist/assets/Changepassword-9201a319.js
  3. 0 1
      dist/assets/CusNavigation-1ef7a672.js
  4. 1 0
      dist/assets/CusNavigation-8f3731b1.js
  5. 0 0
      dist/assets/Detail-380ede91.js
  6. 0 0
      dist/assets/Index-010ec3c5.js
  7. 0 0
      dist/assets/Index-13cd2c35.js
  8. 0 0
      dist/assets/Index-14fddf8a.js
  9. 0 0
      dist/assets/Index-1eca79ca.js
  10. 0 1
      dist/assets/Index-24e1c8be.css
  11. 0 0
      dist/assets/Index-360116de.js
  12. 0 0
      dist/assets/Index-4496ac18.js
  13. 0 0
      dist/assets/Index-48d86b68.js
  14. 0 0
      dist/assets/Index-493c866c.js
  15. 0 0
      dist/assets/Index-4cfaf7fa.js
  16. 0 0
      dist/assets/Index-550babf6.js
  17. 0 0
      dist/assets/Index-6567e1df.css
  18. 0 0
      dist/assets/Index-74043c2c.js
  19. 0 0
      dist/assets/Index-743ab9cc.js
  20. 0 0
      dist/assets/Index-751ab4bc.js
  21. 1 0
      dist/assets/Index-811d9d75.css
  22. 0 0
      dist/assets/Index-81f661b7.js
  23. 0 0
      dist/assets/Index-832b6f68.js
  24. 0 0
      dist/assets/Index-89b15007.js
  25. 0 0
      dist/assets/Index-8b5645e9.css
  26. 0 0
      dist/assets/Index-8ed35175.js
  27. 0 0
      dist/assets/Index-9eb27ccb.js
  28. 0 0
      dist/assets/Index-a32d139e.js
  29. 0 0
      dist/assets/Index-a490b68d.js
  30. 1 0
      dist/assets/Index-b0031692.css
  31. 0 1
      dist/assets/Index-c0bf3eca.css
  32. 0 0
      dist/assets/Index-c5db820c.js
  33. 0 0
      dist/assets/Index-cb2d80ea.js
  34. 0 0
      dist/assets/Index-cc92c522.js
  35. 0 0
      dist/assets/Index-d1d50953.css
  36. 0 0
      dist/assets/Index-d4e08dcd.js
  37. 0 0
      dist/assets/Index-e30851b5.js
  38. 0 1
      dist/assets/Index-e70bda9b.css
  39. 0 0
      dist/assets/Index-e990dacf.js
  40. 0 0
      dist/assets/Index-f5d3ef2b.js
  41. 0 0
      dist/assets/Index-fb1048e8.js
  42. 0 0
      dist/assets/Index-fbdf4781.js
  43. 0 0
      dist/assets/Index3-ca50b31a.js
  44. 0 0
      dist/assets/Location-186698c4.js
  45. 0 0
      dist/assets/Log-99a4c36a.js
  46. 0 0
      dist/assets/Log-f395349f.js
  47. 0 0
      dist/assets/axios-9cbf0d09.js
  48. 1 1
      dist/assets/constant-7967f80c.js
  49. 0 0
      dist/assets/function-call-3dad8a93.js
  50. 0 0
      dist/assets/function-call-d61169bc.js
  51. 0 0
      dist/assets/index-0381e541.js
  52. 1 1
      dist/assets/index-039c74ed.js
  53. 1 0
      dist/assets/index-05a06ecb.js
  54. 0 1
      dist/assets/index-05f5fd44.js
  55. 0 0
      dist/assets/index-0810be85.js
  56. 0 0
      dist/assets/index-16aedc47.js
  57. 1 1
      dist/assets/index-188028a1.js
  58. 1 0
      dist/assets/index-2b121e0e.js
  59. 1 0
      dist/assets/index-2c804440.js
  60. 1 0
      dist/assets/index-2dad9477.js
  61. 0 0
      dist/assets/index-3075fd64.js
  62. 0 0
      dist/assets/index-3d03cdd5.css
  63. 0 0
      dist/assets/index-4573f484.js
  64. 1 0
      dist/assets/index-45b71b48.js
  65. 0 0
      dist/assets/index-6c308dfb.css
  66. 0 0
      dist/assets/index-6fcd315c.js
  67. 0 0
      dist/assets/index-711f9c4a.js
  68. 0 0
      dist/assets/index-737d02e6.css
  69. 0 1
      dist/assets/index-7a118a65.js
  70. 0 0
      dist/assets/index-7ae81f2b.js
  71. 1 1
      dist/assets/index-7f1716d6.css
  72. 1 0
      dist/assets/index-8387a057.css
  73. 0 0
      dist/assets/index-8a3aec41.js
  74. 1 1
      dist/assets/index-8a614103.js
  75. 0 0
      dist/assets/index-96a19f26.css
  76. 0 0
      dist/assets/index-a4e4d9e7.js
  77. 0 1
      dist/assets/index-aa6d4c28.js
  78. 0 0
      dist/assets/index-b168d9ca.css
  79. 0 0
      dist/assets/index-c7f19549.js
  80. 1 1
      dist/assets/index-d90777ed.js
  81. 0 0
      dist/assets/index-d9fea0f3.js
  82. 0 0
      dist/assets/index-e293aa83.js
  83. 0 1
      dist/assets/index-ec91a5eb.js
  84. 1 1
      dist/assets/mount-component-060eea4b.js
  85. 1 1
      dist/assets/on-popup-reopen-b90101a6.js
  86. 1 1
      dist/assets/request-c816a98c.js
  87. 1 1
      dist/assets/use-placeholder-e354374c.js
  88. 1 1
      dist/assets/use-route-64216f9c.js
  89. 0 1
      dist/assets/use-scope-id-0701971a.js
  90. 1 0
      dist/assets/use-scope-id-c38e64b2.js
  91. 0 0
      dist/assets/util-284a4125.js
  92. 0 0
      dist/assets/util-673f56c5.css
  93. 0 0
      dist/assets/util-7f925456.css
  94. 0 0
      dist/assets/util-e37e61f7.js
  95. 0 0
      dist/assets/vue-qrcode-reader-40aaedb2.js
  96. 2 2
      dist/index.html
  97. BIN
      dist/static/images/icon-wifi.png
  98. 2 0
      package.json
  99. 1284 0
      pnpm-lock.yaml
  100. BIN
      public/static/images/icon-wifi.png

+ 2 - 0
components.d.ts

@@ -12,6 +12,7 @@ declare module 'vue' {
     Pump: typeof import('./src/components/products/Pump.vue')['default']
     RouterLink: typeof import('vue-router')['RouterLink']
     RouterView: typeof import('vue-router')['RouterView']
+    VanActionSheet: typeof import('vant/es')['ActionSheet']
     VanBackTop: typeof import('vant/es')['BackTop']
     VanButton: typeof import('vant/es')['Button']
     VanCell: typeof import('vant/es')['Cell']
@@ -27,6 +28,7 @@ declare module 'vue' {
     VanLoading: typeof import('vant/es')['Loading']
     VanNavBar: typeof import('vant/es')['NavBar']
     VanOverlay: typeof import('vant/es')['Overlay']
+    VanPicker: typeof import('vant/es')['Picker']
     VanPopup: typeof import('vant/es')['Popup']
     VanPullRefresh: typeof import('vant/es')['PullRefresh']
     VanStepper: typeof import('vant/es')['Stepper']

File diff suppressed because it is too large
+ 0 - 0
dist/assets/Changepassword-9201a319.js


+ 0 - 1
dist/assets/CusNavigation-1ef7a672.js

@@ -1 +0,0 @@
-import{d as k,r as v,u as x,j as n,b as i,c as t,f as _,W as c,e as p,E as d,x as w,F as C,_ as P}from"./index-39566d8e.js";import{P as B}from"./index-6fcd315c.js";import{I as N}from"./index-c7f19549.js";const S={style:{height:"38px",padding:"10px",display:"flex","align-items":"center","border-bottom":"1px solid #f0f0f0"}},z={style:{"font-weight":"bold","font-size":"1.1rem",color:"#191A1A"}},A={style:{"flex-grow":"1"}},I=k({__name:"CusNavigation",props:{title:{type:String,default:void 0},gobackabled:{type:Boolean,default:!1},searchabled:{type:Boolean,default:!1},plusabled:{type:Boolean,default:!1}},setup(s,{expose:h}){const a=v(!1),l=v(!1),y=x(),b=o=>{console.log(o),y.go(-1)},f=()=>{a.value=!1},m=()=>{l.value=!1};return h({closeSearchPopup:f,closePlusPopup:m,closeAllPopup:()=>{f(),m()}}),(o,e)=>{const g=B,r=N;return n(),i(C,null,[t(g,{show:a.value,"onUpdate:show":e[0]||(e[0]=u=>a.value=u),position:"top","close-on-click-overlay":!0},{default:_(()=>[c(o.$slots,"search",{},void 0,!0)]),_:3},8,["show"]),t(g,{show:l.value,"onUpdate:show":e[1]||(e[1]=u=>l.value=u),position:"top"},{default:_(()=>[c(o.$slots,"plus",{},void 0,!0)]),_:3},8,["show"]),p("div",S,[s.gobackabled?(n(),i("div",{key:0,style:{"line-height":"0px"},class:"cus-goback",onClick:b},[t(r,{name:"static/images/icon-back.png",size:"1.7rem"})])):d("",!0),p("div",z,[p("span",null,w(s.title),1)]),p("div",A,[c(o.$slots,"default",{},void 0,!0)]),s.searchabled?(n(),i("div",{key:1,style:{"line-height":"0px","margin-left":"10px"},onClick:e[2]||(e[2]=()=>{a.value=!0})},[t(r,{name:"static/images/icon-search-black.png",size:"2rem"})])):d("",!0),s.plusabled?(n(),i("div",{key:2,style:{"line-height":"0px","margin-left":"10px"},onClick:e[3]||(e[3]=()=>{l.value=!0})},[t(r,{name:"static/images/icon-more.png",size:"1.5rem"})])):d("",!0)])],64)}}});const U=P(I,[["__scopeId","data-v-d5272661"]]);export{U as _};

+ 1 - 0
dist/assets/CusNavigation-8f3731b1.js

@@ -0,0 +1 @@
+import{d as k,r as v,u as x,j as n,b as i,c as t,f as h,R as c,e as r,E as d,x as w,F as C,_ as P}from"./index-16aedc47.js";import{P as B}from"./index-0810be85.js";import{I as N}from"./index-3075fd64.js";const S={style:{height:"38px",padding:"10px",display:"flex","align-items":"center","border-bottom":"1px solid #f0f0f0"}},z={style:{"font-weight":"bold","font-size":"1.1rem",color:"#191A1A"}},A={style:{"flex-grow":"1"}},I=k({__name:"CusNavigation",props:{title:{type:String,default:void 0},gobackabled:{type:Boolean,default:!1},searchabled:{type:Boolean,default:!1},plusabled:{type:Boolean,default:!1}},setup(s,{expose:y}){const a=v(!1),l=v(!1),_=x(),b=o=>{console.log(o),_.go(-1)},f=()=>{a.value=!1},m=()=>{l.value=!1};return y({closeSearchPopup:f,closePlusPopup:m,closeAllPopup:()=>{f(),m()}}),(o,e)=>{const g=B,p=N;return n(),i(C,null,[t(g,{show:a.value,"onUpdate:show":e[0]||(e[0]=u=>a.value=u),position:"top","close-on-click-overlay":!0},{default:h(()=>[c(o.$slots,"search",{},void 0,!0)]),_:3},8,["show"]),t(g,{show:l.value,"onUpdate:show":e[1]||(e[1]=u=>l.value=u),position:"top"},{default:h(()=>[c(o.$slots,"plus",{},void 0,!0)]),_:3},8,["show"]),r("div",S,[s.gobackabled?(n(),i("div",{key:0,style:{"line-height":"0px"},class:"cus-goback",onClick:b},[t(p,{name:"static/images/icon-back.png",size:"1.7rem"})])):d("",!0),r("div",z,[r("span",null,w(s.title),1)]),r("div",A,[c(o.$slots,"default",{},void 0,!0)]),s.searchabled?(n(),i("div",{key:1,style:{"line-height":"0px","margin-left":"10px"},onClick:e[2]||(e[2]=()=>{a.value=!0})},[t(p,{name:"static/images/icon-search-black.png",size:"2rem"})])):d("",!0),s.plusabled?(n(),i("div",{key:2,style:{"line-height":"0px","margin-left":"10px"},onClick:e[3]||(e[3]=()=>{l.value=!0})},[t(p,{name:"static/images/icon-more.png",size:"1.5rem"})])):d("",!0)])],64)}}});const R=P(I,[["__scopeId","data-v-d5272661"]]);export{R as C};

File diff suppressed because it is too large
+ 0 - 0
dist/assets/Detail-380ede91.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-010ec3c5.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-13cd2c35.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-14fddf8a.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-1eca79ca.js


+ 0 - 1
dist/assets/Index-24e1c8be.css

@@ -1 +0,0 @@
-.van-tabbar--fixed[data-v-b71e9502]{left:auto;max-width:475px}.cell-list .van-cell[data-v-b71e9502]{padding:14px 16px}

File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-360116de.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-4496ac18.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-48d86b68.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-493c866c.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-4cfaf7fa.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-550babf6.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-6567e1df.css


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-74043c2c.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-743ab9cc.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-751ab4bc.js


+ 1 - 0
dist/assets/Index-811d9d75.css

@@ -0,0 +1 @@
+.van-tabbar--fixed[data-v-af53cd04]{left:auto;max-width:475px}.cell-list .van-cell[data-v-af53cd04]{padding:14px 16px}

File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-81f661b7.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-832b6f68.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-89b15007.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-8b5645e9.css


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-8ed35175.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-9eb27ccb.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-a32d139e.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-a490b68d.js


+ 1 - 0
dist/assets/Index-b0031692.css

@@ -0,0 +1 @@
+.van-tabbar--fixed[data-v-70c59bc9]{left:auto;max-width:475px}

+ 0 - 1
dist/assets/Index-c0bf3eca.css

@@ -1 +0,0 @@
-.van-tabbar--fixed[data-v-0337b64a]{left:auto;max-width:475px}

File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-c5db820c.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-cb2d80ea.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-cc92c522.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-d1d50953.css


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-d4e08dcd.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-e30851b5.js


+ 0 - 1
dist/assets/Index-e70bda9b.css

@@ -1 +0,0 @@
-:root,:host{--van-tabbar-height: 50px;--van-tabbar-z-index: 1;--van-tabbar-background: var(--van-background-2)}.van-tabbar{z-index:var(--van-tabbar-z-index);display:flex;box-sizing:content-box;width:100%;height:var(--van-tabbar-height);background:var(--van-tabbar-background)}.van-tabbar--fixed{position:fixed;bottom:0;left:0}:root,:host{--van-tabbar-item-font-size: var(--van-font-size-sm);--van-tabbar-item-text-color: var(--van-text-color);--van-tabbar-item-active-color: var(--van-primary-color);--van-tabbar-item-active-background: var(--van-background-2);--van-tabbar-item-line-height: 1;--van-tabbar-item-icon-size: 22px;--van-tabbar-item-icon-margin-bottom: var(--van-padding-base)}.van-tabbar-item{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;color:var(--van-tabbar-item-text-color);font-size:var(--van-tabbar-item-font-size);line-height:var(--van-tabbar-item-line-height);cursor:pointer}.van-tabbar-item__icon{margin-bottom:var(--van-tabbar-item-icon-margin-bottom);font-size:var(--van-tabbar-item-icon-size)}.van-tabbar-item__icon .van-icon{display:block}.van-tabbar-item__icon .van-badge{margin-top:var(--van-padding-base)}.van-tabbar-item__icon img{display:block;height:20px}.van-tabbar-item--active{color:var(--van-tabbar-item-active-color);background-color:var(--van-tabbar-item-active-background)}.van-tabbar--fixed[data-v-fcfab483]{left:auto;max-width:475px;height:60px!important}[data-v-fcfab483] .van-tabbar-item__icon{margin-bottom:5px}; .van-tabbar[data-v-fcfab483]{height:55px!important}

File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-e990dacf.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-f5d3ef2b.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-fb1048e8.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index-fbdf4781.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Index3-ca50b31a.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Location-186698c4.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Log-99a4c36a.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/Log-f395349f.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/axios-9cbf0d09.js


+ 1 - 1
dist/assets/constant-eba5e2d8.js → dist/assets/constant-7967f80c.js

@@ -1 +1 @@
-const o="van-hairline",s=`${o}--top`,t=`${o}--left`,O=`${o}--bottom`,R=`${o}--surround`,T=`${o}--top-bottom`,a=`${o}-unset--top-bottom`,n="van-haptics-feedback",E=Symbol("van-form"),_=500,c=5;export{T as B,E as F,n as H,_ as L,c as T,t as a,s as b,a as c,O as d,R as e};
+const o="van-hairline",s=`${o}--top`,t=`${o}--left`,O=`${o}--bottom`,R=`${o}--surround`,T=`${o}--top-bottom`,a=`${o}-unset--top-bottom`,n="van-haptics-feedback",E=Symbol("van-form"),_=500,c=5;export{T as B,E as F,n as H,_ as L,c as T,O as a,t as b,s as c,a as d,R as e};

File diff suppressed because it is too large
+ 0 - 0
dist/assets/function-call-3dad8a93.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/function-call-d61169bc.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/index-0381e541.js


+ 1 - 1
dist/assets/index-7f91f4e2.js → dist/assets/index-039c74ed.js

@@ -1 +1 @@
-import{c as V,u as y,n as A,t as h,v as T,w as C}from"./index-c7f19549.js";import{u as M}from"./use-scope-id-0701971a.js";import{F as N}from"./constant-eba5e2d8.js";import{d as _,c as q}from"./index-39566d8e.js";const[x,I]=V("form"),O={colon:Boolean,disabled:Boolean,readonly:Boolean,required:[Boolean,String],showError:Boolean,labelWidth:A,labelAlign:String,inputAlign:String,scrollToError:Boolean,validateFirst:Boolean,submitOnEnter:h,showErrorMessage:h,errorMessageAlign:String,validateTrigger:{type:[String,Array],default:"onBlur"}};var j=_({name:x,props:O,emits:["submit","failed"],setup(i,{emit:s,slots:u}){const{children:a,linkChildren:v}=y(N),l=e=>e?a.filter(t=>e.includes(t.name)):a,p=e=>new Promise((t,n)=>{const r=[];l(e).reduce((w,E)=>w.then(()=>{if(!r.length)return E.validate().then(g=>{g&&r.push(g)})}),Promise.resolve()).then(()=>{r.length?n(r):t()})}),b=e=>new Promise((t,n)=>{const r=l(e);Promise.all(r.map(o=>o.validate())).then(o=>{o=o.filter(Boolean),o.length?n(o):t()})}),B=e=>{const t=a.find(n=>n.name===e);return t?new Promise((n,r)=>{t.validate().then(o=>{o?r(o):n()})}):Promise.reject()},c=e=>typeof e=="string"?B(e):i.validateFirst?p(e):b(e),S=e=>{typeof e=="string"&&(e=[e]),l(e).forEach(n=>{n.resetValidation()})},F=()=>a.reduce((e,t)=>(e[t.name]=t.getValidationStatus(),e),{}),d=(e,t)=>{a.some(n=>n.name===e?(n.$el.scrollIntoView(t),!0):!1)},f=()=>a.reduce((e,t)=>(t.name!==void 0&&(e[t.name]=t.formValue.value),e),{}),m=()=>{const e=f();c().then(()=>s("submit",e)).catch(t=>{s("failed",{values:e,errors:t}),i.scrollToError&&t[0].name&&d(t[0].name)})},P=e=>{T(e),m()};return v({props:i}),M({submit:m,validate:c,getValues:f,scrollToField:d,resetValidation:S,getValidationStatus:F}),()=>{var e;return q("form",{class:I(),onSubmit:P},[(e=u.default)==null?void 0:e.call(u)])}}});const W=C(j);export{W as F};
+import{c as V,u as y,n as A,t as h,p as T,w as C}from"./index-3075fd64.js";import{u as M}from"./use-scope-id-c38e64b2.js";import{F as N}from"./constant-7967f80c.js";import{d as _,c as q}from"./index-16aedc47.js";const[x,I]=V("form"),O={colon:Boolean,disabled:Boolean,readonly:Boolean,required:[Boolean,String],showError:Boolean,labelWidth:A,labelAlign:String,inputAlign:String,scrollToError:Boolean,validateFirst:Boolean,submitOnEnter:h,showErrorMessage:h,errorMessageAlign:String,validateTrigger:{type:[String,Array],default:"onBlur"}};var j=_({name:x,props:O,emits:["submit","failed"],setup(i,{emit:s,slots:u}){const{children:a,linkChildren:p}=y(N),l=e=>e?a.filter(t=>e.includes(t.name)):a,v=e=>new Promise((t,n)=>{const r=[];l(e).reduce((w,E)=>w.then(()=>{if(!r.length)return E.validate().then(g=>{g&&r.push(g)})}),Promise.resolve()).then(()=>{r.length?n(r):t()})}),b=e=>new Promise((t,n)=>{const r=l(e);Promise.all(r.map(o=>o.validate())).then(o=>{o=o.filter(Boolean),o.length?n(o):t()})}),B=e=>{const t=a.find(n=>n.name===e);return t?new Promise((n,r)=>{t.validate().then(o=>{o?r(o):n()})}):Promise.reject()},c=e=>typeof e=="string"?B(e):i.validateFirst?v(e):b(e),S=e=>{typeof e=="string"&&(e=[e]),l(e).forEach(n=>{n.resetValidation()})},F=()=>a.reduce((e,t)=>(e[t.name]=t.getValidationStatus(),e),{}),d=(e,t)=>{a.some(n=>n.name===e?(n.$el.scrollIntoView(t),!0):!1)},f=()=>a.reduce((e,t)=>(t.name!==void 0&&(e[t.name]=t.formValue.value),e),{}),m=()=>{const e=f();c().then(()=>s("submit",e)).catch(t=>{s("failed",{values:e,errors:t}),i.scrollToError&&t[0].name&&d(t[0].name)})},P=e=>{T(e),m()};return p({props:i}),M({submit:m,validate:c,getValues:f,scrollToField:d,resetValidation:S,getValidationStatus:F}),()=>{var e;return q("form",{class:I(),onSubmit:P},[(e=u.default)==null?void 0:e.call(u)])}}});const W=C(j);export{W as F};

+ 1 - 0
dist/assets/index-05a06ecb.js

@@ -0,0 +1 @@
+import{d as S,c as t,N as k}from"./index-16aedc47.js";import{c as x,t as y,y as B,I,w as P}from"./index-3075fd64.js";import{H as T}from"./constant-7967f80c.js";const[h,r]=x("tag"),p={size:String,mark:Boolean,show:y,type:B("default"),color:String,plain:Boolean,round:Boolean,textColor:String,closeable:Boolean};var v=S({name:h,props:p,emits:["close"],setup(o,{slots:n,emit:s}){const c=e=>{e.stopPropagation(),s("close",e)},i=()=>o.plain?{color:o.textColor||o.color,borderColor:o.color}:{color:o.textColor,background:o.color},d=()=>{var e;const{type:m,mark:u,plain:f,round:g,size:a,closeable:C}=o,l={mark:u,plain:f,round:g};a&&(l[a]=a);const b=C&&t(I,{name:"cross",class:[r("close"),T],onClick:c},null);return t("span",{style:i(),class:r([l,m])},[(e=n.default)==null?void 0:e.call(n),b])};return()=>t(k,{name:o.closeable?"van-fade":void 0},{default:()=>[o.show?d():null]})}});const z=P(v);export{z as T};

+ 0 - 1
dist/assets/index-05f5fd44.js

@@ -1 +0,0 @@
-import{a as m}from"./axios-9cbf0d09.js";import{q as f,V as u}from"./index-39566d8e.js";import{s as l}from"./function-call-3dad8a93.js";const a=f(),i=m.create({baseURL:"/forward-service",timeout:1e4}),h=function(c,r,s){const{url:o,data:e}=c;i.post(o,e,{headers:{token:a.token}}).then(t=>{const n=t.data;n.code==0?r&&r(n):n.code==3?a.isLogin=!1:s&&s(n.msg)},t=>{s&&s(t.message)}).catch(t=>{console.log(t)})},k=function(c){const{url:r,data:s}=c;return i.post(r,s,{headers:{token:a.token}}).then(o=>{const e=o.data;if(e.code==0)return Promise.resolve(e);if(e.code==3)console.log(e),a.isLogin=!1,l({message:e.msg,onClose:()=>{u()}});else return Promise.reject(e.msg)},o=>Promise.reject(o.message))};export{h as a,k as p};

File diff suppressed because it is too large
+ 0 - 0
dist/assets/index-0810be85.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/index-16aedc47.js


+ 1 - 1
dist/assets/index-5061b905.js → dist/assets/index-188028a1.js

@@ -1 +1 @@
-import{r as y,u as L}from"./use-route-e84ecad1.js";import{c as D,e as I,d as B,n as o,t as V,b as u,r as s,I as b,w as _}from"./index-c7f19549.js";import{d as q,c as a}from"./index-39566d8e.js";const[z,r]=D("cell"),A={tag:B("div"),icon:String,size:String,title:o,value:o,label:o,center:Boolean,isLink:Boolean,border:V,iconPrefix:String,valueClass:u,labelClass:u,titleClass:u,titleStyle:null,arrowDirection:String,required:{type:[Boolean,String],default:null},clickable:{type:Boolean,default:null}},N=I({},A,y);var R=q({name:z,props:N,setup(e,{slots:l}){const v=L(),m=()=>{if(l.label||s(e.label))return a("div",{class:[r("label"),e.labelClass]},[l.label?l.label():e.label])},g=()=>{var n;if(l.title||s(e.title)){const t=(n=l.title)==null?void 0:n.call(l);return Array.isArray(t)&&t.length===0?void 0:a("div",{class:[r("title"),e.titleClass],style:e.titleStyle},[t||a("span",null,[e.title]),m()])}},h=()=>{const n=l.value||l.default;if(n||s(e.value))return a("div",{class:[r("value"),e.valueClass]},[n?n():a("span",null,[e.value])])},w=()=>{if(l.icon)return l.icon();if(e.icon)return a(b,{name:e.icon,class:r("left-icon"),classPrefix:e.iconPrefix},null)},C=()=>{if(l["right-icon"])return l["right-icon"]();if(e.isLink){const n=e.arrowDirection&&e.arrowDirection!=="right"?`arrow-${e.arrowDirection}`:"arrow";return a(b,{name:n,class:r("right-icon")},null)}};return()=>{var n;const{tag:t,size:i,center:P,border:S,isLink:k,required:x}=e,c=(n=e.clickable)!=null?n:k,d={center:P,required:!!x,clickable:c,borderless:!S};return i&&(d[i]=!!i),a(t,{class:r(d),role:c?"button":void 0,tabindex:c?0:void 0,onClick:v},{default:()=>{var f;return[w(),g(),h(),C(),(f=l.extra)==null?void 0:f.call(l)]}})}}});const E=_(R);export{E as C,A as c};
+import{r as y,u as L}from"./use-route-64216f9c.js";import{c as D,e as I,y as B,n as o,t as V,F as u,j as s,I as b,w as _}from"./index-3075fd64.js";import{d as q,c as a}from"./index-16aedc47.js";const[z,r]=D("cell"),A={tag:B("div"),icon:String,size:String,title:o,value:o,label:o,center:Boolean,isLink:Boolean,border:V,iconPrefix:String,valueClass:u,labelClass:u,titleClass:u,titleStyle:null,arrowDirection:String,required:{type:[Boolean,String],default:null},clickable:{type:Boolean,default:null}},N=I({},A,y);var R=q({name:z,props:N,setup(e,{slots:l}){const v=L(),m=()=>{if(l.label||s(e.label))return a("div",{class:[r("label"),e.labelClass]},[l.label?l.label():e.label])},g=()=>{var n;if(l.title||s(e.title)){const t=(n=l.title)==null?void 0:n.call(l);return Array.isArray(t)&&t.length===0?void 0:a("div",{class:[r("title"),e.titleClass],style:e.titleStyle},[t||a("span",null,[e.title]),m()])}},h=()=>{const n=l.value||l.default;if(n||s(e.value))return a("div",{class:[r("value"),e.valueClass]},[n?n():a("span",null,[e.value])])},w=()=>{if(l.icon)return l.icon();if(e.icon)return a(b,{name:e.icon,class:r("left-icon"),classPrefix:e.iconPrefix},null)},C=()=>{if(l["right-icon"])return l["right-icon"]();if(e.isLink){const n=e.arrowDirection&&e.arrowDirection!=="right"?`arrow-${e.arrowDirection}`:"arrow";return a(b,{name:n,class:r("right-icon")},null)}};return()=>{var n;const{tag:t,size:i,center:P,border:S,isLink:k,required:x}=e,c=(n=e.clickable)!=null?n:k,d={center:P,required:!!x,clickable:c,borderless:!S};return i&&(d[i]=!!i),a(t,{class:r(d),role:c?"button":void 0,tabindex:c?0:void 0,onClick:v},{default:()=>{var f;return[w(),g(),h(),C(),(f=l.extra)==null?void 0:f.call(l)]}})}}});const $=_(R);export{$ as C,A as c};

+ 1 - 0
dist/assets/index-2b121e0e.js

@@ -0,0 +1 @@
+import{c as u,e as d,d as m,n as c,y,b as f,w as S}from"./index-3075fd64.js";import{c as a,d as p,a as x}from"./index-16aedc47.js";const[g,r]=u("loading"),v=Array(12).fill(null).map((e,n)=>a("i",{class:r("line",String(n+1))},null)),z=a("svg",{class:r("circular"),viewBox:"25 25 50 50"},[a("circle",{cx:"50",cy:"50",r:"20",fill:"none"},null)]),I={size:c,type:y("circular"),color:String,vertical:Boolean,textSize:c,textColor:String};var C=p({name:g,props:I,setup(e,{slots:n}){const l=x(()=>d({color:e.color},m(e.size))),i=()=>{const t=e.type==="spinner"?v:z;return a("span",{class:r("spinner",e.type),style:l.value},[n.icon?n.icon():t])},o=()=>{var t;if(n.default)return a("span",{class:r("text"),style:{fontSize:f(e.textSize),color:(t=e.textColor)!=null?t:e.color}},[n.default()])};return()=>{const{type:t,vertical:s}=e;return a("div",{class:r([t,{vertical:s}]),"aria-live":"polite","aria-busy":!0},[i(),o()])}}});const P=S(C);export{P as L};

+ 1 - 0
dist/assets/index-2c804440.js

@@ -0,0 +1 @@
+import{c as T,n as f,m as w,e as x,g as y,b as h,C,I,J as P,U as S,L as B,w as A}from"./index-3075fd64.js";import{d as D,r as d,a as N,o as j,s as z,X as L,w as O,c as u,m as R,T as U,A as _}from"./index-16aedc47.js";function q(e,c){let o=null,i=0;return function(...n){if(o)return;const a=Date.now()-i,l=()=>{i=Date.now(),o=!1,e.apply(this,n)};a>=c?l():o=setTimeout(l,c)}}const[E,m]=T("back-top"),J={right:f,bottom:f,zIndex:f,target:[String,Object],offset:w(200),immediate:Boolean,teleport:{type:[String,Object],default:"body"}};var M=D({name:E,inheritAttrs:!1,props:J,emits:["click"],setup(e,{emit:c,slots:o,attrs:i}){let n=!1;const a=d(!1),l=d(),s=d(),b=N(()=>x(y(e.zIndex),{right:h(e.right),bottom:h(e.bottom)})),k=t=>{var r;c("click",t),(r=s.value)==null||r.scrollTo({top:0,behavior:e.immediate?"auto":"smooth"})},v=()=>{a.value=s.value?B(s.value)>=+e.offset:!1},p=()=>{const{target:t}=e;if(typeof t=="string"){const r=document.querySelector(t);if(r)return r}else return t},g=()=>{P&&_(()=>{s.value=e.target?p():S(l.value),v()})};return C("scroll",q(v,100),{target:s}),j(g),z(()=>{n&&(a.value=!0,n=!1)}),L(()=>{a.value&&e.teleport&&(a.value=!1,n=!0)}),O(()=>e.target,g),()=>{const t=u("div",R({ref:e.teleport?void 0:l,class:m({active:a.value}),style:b.value,onClick:k},i),[o.default?o.default():u(I,{name:"back-top",class:m("icon")},null)]);return e.teleport?[u("div",{ref:l,class:m("placeholder")},null),u(U,{to:e.teleport},{default:()=>[t]})]:t}}});const Z=A(M);export{Z as B};

+ 1 - 0
dist/assets/index-2dad9477.js

@@ -0,0 +1 @@
+import{c as A,m as L,n as D,j as R,A as M,C as O,D as _,p as j,q,w as z}from"./index-3075fd64.js";import{u as F}from"./index-0810be85.js";import{u as V}from"./use-scope-id-c38e64b2.js";import{d as X,r as v,B as $,a as x,c as p}from"./index-16aedc47.js";import{c as G}from"./on-popup-reopen-b90101a6.js";const[J,C]=A("swipe-cell"),K={name:L(""),disabled:Boolean,leftWidth:D,rightWidth:D,beforeClose:Function,stopPropagation:Boolean};var Q=X({name:J,props:K,emits:["open","close","click"],setup(t,{emit:r,slots:f}){let n,c,u,l;const d=v(),k=v(),w=v(),o=$({offset:0,dragging:!1}),i=F(),T=e=>e.value?_(e).width:0,g=x(()=>R(t.leftWidth)?+t.leftWidth:T(k)),h=x(()=>R(t.rightWidth)?+t.rightWidth:T(w)),W=e=>{o.offset=e==="left"?g.value:-h.value,n||(n=!0,r("open",{name:t.name,position:e}))},m=e=>{o.offset=0,n&&(n=!1,r("close",{name:t.name,position:e}))},y=e=>{const a=Math.abs(o.offset),s=.15,I=n?1-s:s,B=e==="left"?g.value:h.value;B&&a>B*I?W(e):m(e)},H=e=>{t.disabled||(u=o.offset,i.start(e))},N=e=>{if(t.disabled)return;const{deltaX:a}=i;i.move(e),i.isHorizontal()&&(c=!0,o.dragging=!0,(!n||a.value*u<0)&&j(e,t.stopPropagation),o.offset=q(a.value+u,-h.value,g.value))},b=()=>{o.dragging&&(o.dragging=!1,y(o.offset>0?"left":"right"),setTimeout(()=>{c=!1},0))},P=(e="outside")=>{l||(r("click",e),n&&!c&&(l=!0,G(t.beforeClose,{args:[{name:t.name,position:e}],done:()=>{l=!1,m(e)},canceled:()=>l=!1,error:()=>l=!1})))},S=(e,a)=>s=>{a&&s.stopPropagation(),P(e)},E=(e,a)=>{const s=f[e];if(s)return p("div",{ref:a,class:C(e),onClick:S(e,!0)},[s()])};return V({open:W,close:m}),M(d,()=>P("outside"),{eventName:"touchstart"}),O("touchmove",N,{target:d}),()=>{var e;const a={transform:`translate3d(${o.offset}px, 0, 0)`,transitionDuration:o.dragging?"0s":".6s"};return p("div",{ref:d,class:C(),onClick:S("cell",c),onTouchstartPassive:H,onTouchend:b,onTouchcancel:b},[p("div",{class:C("wrapper"),style:a},[E("left",k),(e=f.default)==null?void 0:e.call(f),E("right",w)])])}}});const oe=z(Q);export{oe as S};

File diff suppressed because it is too large
+ 0 - 0
dist/assets/index-3075fd64.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/index-3d03cdd5.css


File diff suppressed because it is too large
+ 0 - 0
dist/assets/index-4573f484.js


+ 1 - 0
dist/assets/index-45b71b48.js

@@ -0,0 +1 @@
+import{a as l}from"./axios-9cbf0d09.js";import{q as u,S as c}from"./index-16aedc47.js";import{a as g,s as m}from"./function-call-d61169bc.js";import{w as p}from"./index-3075fd64.js";p(g);const a=u(),f=l.create({baseURL:"/forward-service",timeout:1e4}),C=function(i,n,s){const{url:o,data:e}=i;f.post(o,e,{headers:{token:a.token}}).then(t=>{const r=t.data;r.code==0?n&&n(r):r.code==3?(a.isLogin=!1,m({message:r.msg,onClose:()=>{c()}})):s&&s(r.msg)},t=>{s&&s(t.message)}).catch(t=>{console.log(t)})},I=function(i){const{url:n,data:s}=i;return f.post(n,s,{headers:{token:a.token}}).then(o=>{const e=o.data;if(e.code==0)return Promise.resolve(e);if(e.code==3)console.log(e),a.isLogin=!1,m({message:e.msg,onClose:()=>{c()}});else return Promise.reject(e.msg)},o=>Promise.reject(o.message))};export{C as a,I as p};

File diff suppressed because it is too large
+ 0 - 0
dist/assets/index-6c308dfb.css


File diff suppressed because it is too large
+ 0 - 0
dist/assets/index-6fcd315c.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/index-711f9c4a.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/index-737d02e6.css


+ 0 - 1
dist/assets/index-7a118a65.js

@@ -1 +0,0 @@
-import{c as L,m as M,n as B,r as R,J as O,C as _,K as z,v as A,y as F,w as J}from"./index-c7f19549.js";import{u as K}from"./index-6fcd315c.js";import{u as V}from"./use-scope-id-0701971a.js";import{d as X,r as v,B as $,a as x,c as p}from"./index-39566d8e.js";import{c as j}from"./on-popup-reopen-6ab1b7d4.js";const[q,C]=L("swipe-cell"),G={name:M(""),disabled:Boolean,leftWidth:B,rightWidth:B,beforeClose:Function,stopPropagation:Boolean};var Q=X({name:q,props:G,emits:["open","close","click"],setup(t,{emit:i,slots:f}){let n,c,u,l;const d=v(),k=v(),w=v(),o=$({offset:0,dragging:!1}),r=K(),T=e=>e.value?z(e).width:0,g=x(()=>R(t.leftWidth)?+t.leftWidth:T(k)),h=x(()=>R(t.rightWidth)?+t.rightWidth:T(w)),W=e=>{o.offset=e==="left"?g.value:-h.value,n||(n=!0,i("open",{name:t.name,position:e}))},m=e=>{o.offset=0,n&&(n=!1,i("close",{name:t.name,position:e}))},D=e=>{const a=Math.abs(o.offset),s=.15,I=n?1-s:s,y=e==="left"?g.value:h.value;y&&a>y*I?W(e):m(e)},H=e=>{t.disabled||(u=o.offset,r.start(e))},N=e=>{if(t.disabled)return;const{deltaX:a}=r;r.move(e),r.isHorizontal()&&(c=!0,o.dragging=!0,(!n||a.value*u<0)&&A(e,t.stopPropagation),o.offset=F(a.value+u,-h.value,g.value))},b=()=>{o.dragging&&(o.dragging=!1,D(o.offset>0?"left":"right"),setTimeout(()=>{c=!1},0))},P=(e="outside")=>{l||(i("click",e),n&&!c&&(l=!0,j(t.beforeClose,{args:[{name:t.name,position:e}],done:()=>{l=!1,m(e)},canceled:()=>l=!1,error:()=>l=!1})))},S=(e,a)=>s=>{a&&s.stopPropagation(),P(e)},E=(e,a)=>{const s=f[e];if(s)return p("div",{ref:a,class:C(e),onClick:S(e,!0)},[s()])};return V({open:W,close:m}),O(d,()=>P("outside"),{eventName:"touchstart"}),_("touchmove",N,{target:d}),()=>{var e;const a={transform:`translate3d(${o.offset}px, 0, 0)`,transitionDuration:o.dragging?"0s":".6s"};return p("div",{ref:d,class:C(),onClick:S("cell",c),onTouchstartPassive:H,onTouchend:b,onTouchcancel:b},[p("div",{class:C("wrapper"),style:a},[E("left",k),(e=f.default)==null?void 0:e.call(f),E("right",w)])])}}});const oe=J(Q);export{oe as S};

File diff suppressed because it is too large
+ 0 - 0
dist/assets/index-7ae81f2b.js


+ 1 - 1
dist/assets/index-b44321da.css → dist/assets/index-7f1716d6.css

@@ -1 +1 @@
-:root,:host{--van-back-top-size: 40px;--van-back-top-right: 30px;--van-back-top-bottom: 40px;--van-back-top-z-index: 100;--van-back-top-icon-size: 20px;--van-back-top-text-color: #fff;--van-back-top-background: var(--van-blue)}.van-back-top{position:fixed;display:flex;align-items:center;justify-content:center;width:var(--van-back-top-size);height:var(--van-back-top-size);right:var(--van-back-top-right);bottom:var(--van-back-top-bottom);z-index:var(--van-back-top-z-index);cursor:pointer;color:var(--van-back-top-text-color);border-radius:var(--van-radius-max);box-shadow:0 2px 8px #0000001f;transform:scale(0);transition:var(--van-duration-base) cubic-bezier(.25,.8,.5,1);background-color:var(--van-back-top-background)}.van-back-top:active{opacity:var(--van-active-opacity)}.van-back-top__placeholder{display:none}.van-back-top--active{transform:scale(1)}.van-back-top__icon{font-size:var(--van-back-top-icon-size);font-weight:var(--van-font-bold)}:root,:host{--van-pull-refresh-head-height: 50px;--van-pull-refresh-head-font-size: var(--van-font-size-md);--van-pull-refresh-head-text-color: var(--van-text-color-2);--van-pull-refresh-loading-icon-size: 16px}.van-pull-refresh{overflow:hidden}.van-pull-refresh__track{position:relative;height:100%;transition-property:transform}.van-pull-refresh__head{position:absolute;left:0;width:100%;height:var(--van-pull-refresh-head-height);overflow:hidden;color:var(--van-pull-refresh-head-text-color);font-size:var(--van-pull-refresh-head-font-size);line-height:var(--van-pull-refresh-head-height);text-align:center;transform:translateY(-100%)}.van-pull-refresh__loading .van-loading__spinner{width:var(--van-pull-refresh-loading-icon-size);height:var(--van-pull-refresh-loading-icon-size)}
+:root,:host{--van-back-top-size: 40px;--van-back-top-right: 30px;--van-back-top-bottom: 40px;--van-back-top-z-index: 100;--van-back-top-icon-size: 20px;--van-back-top-text-color: #fff;--van-back-top-background: var(--van-blue)}.van-back-top{position:fixed;display:flex;align-items:center;justify-content:center;width:var(--van-back-top-size);height:var(--van-back-top-size);right:var(--van-back-top-right);bottom:var(--van-back-top-bottom);z-index:var(--van-back-top-z-index);cursor:pointer;color:var(--van-back-top-text-color);border-radius:var(--van-radius-max);box-shadow:0 2px 8px #0000001f;transform:scale(0);transition:var(--van-duration-base) cubic-bezier(.25,.8,.5,1);background-color:var(--van-back-top-background)}.van-back-top:active{opacity:var(--van-active-opacity)}.van-back-top__placeholder{display:none}.van-back-top--active{transform:scale(1)}.van-back-top__icon{font-size:var(--van-back-top-icon-size);font-weight:var(--van-font-bold)}

+ 1 - 0
dist/assets/index-8387a057.css

@@ -0,0 +1 @@
+:root,:host{--van-pull-refresh-head-height: 50px;--van-pull-refresh-head-font-size: var(--van-font-size-md);--van-pull-refresh-head-text-color: var(--van-text-color-2);--van-pull-refresh-loading-icon-size: 16px}.van-pull-refresh{overflow:hidden}.van-pull-refresh__track{position:relative;height:100%;transition-property:transform}.van-pull-refresh__head{position:absolute;left:0;width:100%;height:var(--van-pull-refresh-head-height);overflow:hidden;color:var(--van-pull-refresh-head-text-color);font-size:var(--van-pull-refresh-head-font-size);line-height:var(--van-pull-refresh-head-height);text-align:center;transform:translateY(-100%)}.van-pull-refresh__loading .van-loading__spinner{width:var(--van-pull-refresh-loading-icon-size);height:var(--van-pull-refresh-loading-icon-size)}

File diff suppressed because it is too large
+ 0 - 0
dist/assets/index-8a3aec41.js


+ 1 - 1
dist/assets/index-f92c8a8a.js → dist/assets/index-8a614103.js

@@ -1 +1 @@
-import{r as z,u as I}from"./use-route-e84ecad1.js";import{c as R,e as p,d as l,n as C,I as w,v as D,w as L}from"./index-c7f19549.js";import{L as N}from"./index-aa6d4c28.js";import{e as q}from"./constant-eba5e2d8.js";import{d as O,c as o}from"./index-39566d8e.js";const[U,a]=R("button"),_=p({},z,{tag:l("button"),text:String,icon:String,type:l("default"),size:l("normal"),color:String,block:Boolean,plain:Boolean,round:Boolean,square:Boolean,loading:Boolean,hairline:Boolean,disabled:Boolean,iconPrefix:String,nativeType:l("button"),loadingSize:C,loadingText:String,loadingType:String,iconPosition:l("left")});var E=O({name:U,props:_,emits:["click"],setup(n,{emit:g,slots:t}){const f=I(),m=()=>t.loading?t.loading():o(N,{size:n.loadingSize,type:n.loadingType,class:a("loading")},null),c=()=>{if(n.loading)return m();if(t.icon)return o("div",{class:a("icon")},[t.icon()]);if(n.icon)return o(w,{name:n.icon,class:a("icon"),classPrefix:n.iconPrefix},null)},b=()=>{let e;if(n.loading?e=n.loadingText:e=t.default?t.default():n.text,e)return o("span",{class:a("text")},[e])},x=()=>{const{color:e,plain:r}=n;if(e){const i={color:r?e:"white"};return r||(i.background=e),e.includes("gradient")?i.border=0:i.borderColor=e,i}},y=e=>{n.loading?D(e):n.disabled||(g("click",e),f())};return()=>{const{tag:e,type:r,size:i,block:S,round:B,plain:P,square:k,loading:T,disabled:s,hairline:d,nativeType:v,iconPosition:u}=n,h=[a([r,i,{plain:P,block:S,round:B,square:k,loading:T,disabled:s,hairline:d}]),{[q]:d}];return o(e,{type:v,class:h,style:x(),disabled:s,onClick:y},{default:()=>[o("div",{class:a("content")},[u==="left"&&c(),b(),u==="right"&&c()])]})}}});const H=L(E);export{H as B};
+import{r as v,u as z}from"./use-route-64216f9c.js";import{c as I,e as R,y as l,n as C,I as w,p as D,w as L}from"./index-3075fd64.js";import{L as N}from"./index-2b121e0e.js";import{e as q}from"./constant-7967f80c.js";import{d as O,c as o}from"./index-16aedc47.js";const[U,a]=I("button"),_=R({},v,{tag:l("button"),text:String,icon:String,type:l("default"),size:l("normal"),color:String,block:Boolean,plain:Boolean,round:Boolean,square:Boolean,loading:Boolean,hairline:Boolean,disabled:Boolean,iconPrefix:String,nativeType:l("button"),loadingSize:C,loadingText:String,loadingType:String,iconPosition:l("left")});var E=O({name:U,props:_,emits:["click"],setup(n,{emit:g,slots:t}){const f=z(),m=()=>t.loading?t.loading():o(N,{size:n.loadingSize,type:n.loadingType,class:a("loading")},null),c=()=>{if(n.loading)return m();if(t.icon)return o("div",{class:a("icon")},[t.icon()]);if(n.icon)return o(w,{name:n.icon,class:a("icon"),classPrefix:n.iconPrefix},null)},b=()=>{let e;if(n.loading?e=n.loadingText:e=t.default?t.default():n.text,e)return o("span",{class:a("text")},[e])},x=()=>{const{color:e,plain:r}=n;if(e){const i={color:r?e:"white"};return r||(i.background=e),e.includes("gradient")?i.border=0:i.borderColor=e,i}},y=e=>{n.loading?D(e):n.disabled||(g("click",e),f())};return()=>{const{tag:e,type:r,size:i,block:S,round:B,plain:P,square:k,loading:T,disabled:s,hairline:d,nativeType:h,iconPosition:u}=n,p=[a([r,i,{plain:P,block:S,round:B,square:k,loading:T,disabled:s,hairline:d}]),{[q]:d}];return o(e,{type:h,class:p,style:x(),disabled:s,onClick:y},{default:()=>[o("div",{class:a("content")},[u==="left"&&c(),b(),u==="right"&&c()])]})}}});const H=L(E);export{H as B};

File diff suppressed because it is too large
+ 0 - 0
dist/assets/index-96a19f26.css


File diff suppressed because it is too large
+ 0 - 0
dist/assets/index-a4e4d9e7.js


+ 0 - 1
dist/assets/index-aa6d4c28.js

@@ -1 +0,0 @@
-import{c as u,e as d,l as f,n as l,d as m,f as y,w as S}from"./index-c7f19549.js";import{c as a,d as p,a as x}from"./index-39566d8e.js";const[g,r]=u("loading"),v=Array(12).fill(null).map((e,n)=>a("i",{class:r("line",String(n+1))},null)),z=a("svg",{class:r("circular"),viewBox:"25 25 50 50"},[a("circle",{cx:"50",cy:"50",r:"20",fill:"none"},null)]),I={size:l,type:m("circular"),color:String,vertical:Boolean,textSize:l,textColor:String};var C=p({name:g,props:I,setup(e,{slots:n}){const c=x(()=>d({color:e.color},f(e.size))),i=()=>{const t=e.type==="spinner"?v:z;return a("span",{class:r("spinner",e.type),style:c.value},[n.icon?n.icon():t])},o=()=>{var t;if(n.default)return a("span",{class:r("text"),style:{fontSize:y(e.textSize),color:(t=e.textColor)!=null?t:e.color}},[n.default()])};return()=>{const{type:t,vertical:s}=e;return a("div",{class:r([t,{vertical:s}]),"aria-live":"polite","aria-busy":!0},[i(),o()])}}});const _=S(C);export{_ as L};

File diff suppressed because it is too large
+ 0 - 0
dist/assets/index-b168d9ca.css


File diff suppressed because it is too large
+ 0 - 0
dist/assets/index-c7f19549.js


+ 1 - 1
dist/assets/index-c8d35c92.js → dist/assets/index-d90777ed.js

@@ -1 +1 @@
-import{a as s}from"./use-scope-id-0701971a.js";import{c,t as d,w as m}from"./index-c7f19549.js";import{d as u,c as r,F as f,m as p}from"./index-39566d8e.js";import{B as v}from"./constant-eba5e2d8.js";const[g,a]=c("cell-group"),B={title:String,inset:Boolean,border:d};var O=u({name:g,inheritAttrs:!1,props:B,setup(e,{slots:t,attrs:l}){const n=()=>{var i;return r("div",p({class:[a({inset:e.inset}),{[v]:e.border&&!e.inset}]},l,s()),[(i=t.default)==null?void 0:i.call(t)])},o=()=>r("div",{class:a("title",{inset:e.inset})},[t.title?t.title():e.title]);return()=>e.title||t.title?r(f,null,[o(),n()]):n()}});const h=m(O);export{h as C};
+import{a as s}from"./use-scope-id-c38e64b2.js";import{c,t as d,w as m}from"./index-3075fd64.js";import{d as u,c as r,F as f,m as p}from"./index-16aedc47.js";import{B as v}from"./constant-7967f80c.js";const[g,a]=c("cell-group"),B={title:String,inset:Boolean,border:d};var O=u({name:g,inheritAttrs:!1,props:B,setup(e,{slots:t,attrs:l}){const n=()=>{var i;return r("div",p({class:[a({inset:e.inset}),{[v]:e.border&&!e.inset}]},l,s()),[(i=t.default)==null?void 0:i.call(t)])},o=()=>r("div",{class:a("title",{inset:e.inset})},[t.title?t.title():e.title]);return()=>e.title||t.title?r(f,null,[o(),n()]):n()}});const h=m(O);export{h as C};

File diff suppressed because it is too large
+ 0 - 0
dist/assets/index-d9fea0f3.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/index-e293aa83.js


+ 0 - 1
dist/assets/index-ec91a5eb.js

@@ -1 +0,0 @@
-import{d as P,c as t,P as S}from"./index-39566d8e.js";import{c as k,t as x,d as B,I,w as T}from"./index-c7f19549.js";import{H as h}from"./constant-eba5e2d8.js";const[p,r]=k("tag"),v={size:String,mark:Boolean,show:x,type:B("default"),color:String,plain:Boolean,round:Boolean,textColor:String,closeable:Boolean};var w=P({name:p,props:v,emits:["close"],setup(o,{slots:n,emit:s}){const c=e=>{e.stopPropagation(),s("close",e)},i=()=>o.plain?{color:o.textColor||o.color,borderColor:o.color}:{color:o.textColor,background:o.color},d=()=>{var e;const{type:m,mark:u,plain:f,round:g,size:a,closeable:C}=o,l={mark:u,plain:f,round:g};a&&(l[a]=a);const b=C&&t(I,{name:"cross",class:[r("close"),h],onClick:c},null);return t("span",{style:i(),class:r([l,m])},[(e=n.default)==null?void 0:e.call(n),b])};return()=>t(S,{name:o.closeable?"van-fade":void 0},{default:()=>[o.show?d():null]})}});const A=T(w);export{A as T};

+ 1 - 1
dist/assets/mount-component-03a575a1.js → dist/assets/mount-component-060eea4b.js

@@ -1 +1 @@
-import{Y as r,B as u}from"./index-39566d8e.js";import{e as a}from"./index-c7f19549.js";import{u as m}from"./use-scope-id-0701971a.js";function d(){const e=u({show:!1}),t=n=>{e.show=n},o=n=>{a(e,n,{transitionAppear:!0}),t(!0)},s=()=>t(!1);return m({open:o,close:s,toggle:t}),{open:o,close:s,state:e,toggle:t}}function f(e){const t=r(e),o=document.createElement("div");return document.body.appendChild(o),{instance:t.mount(o),unmount(){t.unmount(),document.body.removeChild(o)}}}export{f as m,d as u};
+import{Y as r,B as u}from"./index-16aedc47.js";import{e as a}from"./index-3075fd64.js";import{u as m}from"./use-scope-id-c38e64b2.js";function d(){const e=u({show:!1}),t=n=>{e.show=n},o=n=>{a(e,n,{transitionAppear:!0}),t(!0)},s=()=>t(!1);return m({open:o,close:s,toggle:t}),{open:o,close:s,state:e,toggle:t}}function f(e){const t=r(e),o=document.createElement("div");return document.body.appendChild(o),{instance:t.mount(o),unmount(){t.unmount(),document.body.removeChild(o)}}}export{f as m,d as u};

+ 1 - 1
dist/assets/on-popup-reopen-6ab1b7d4.js → dist/assets/on-popup-reopen-b90101a6.js

@@ -1 +1 @@
-import{Q as a,h as n}from"./index-c7f19549.js";import{Z as e,w as r}from"./index-39566d8e.js";function c(s,{args:t=[],done:o,canceled:i,error:p}){if(s){const f=s.apply(null,t);a(f)?f.then(l=>{l?o():i&&i()}).catch(p||n):f?o():i&&i()}else o()}const u=Symbol();function h(s){const t=e(u,null);t&&r(t,o=>{o&&s()})}export{u as P,c,h as o};
+import{R as a,M as n}from"./index-3075fd64.js";import{Z as e,w as r}from"./index-16aedc47.js";function c(s,{args:t=[],done:o,canceled:i,error:p}){if(s){const f=s.apply(null,t);a(f)?f.then(l=>{l?o():i&&i()}).catch(p||n):f?o():i&&i()}else o()}const u=Symbol();function h(s){const t=e(u,null);t&&r(t,o=>{o&&s()})}export{u as P,c,h as o};

+ 1 - 1
dist/assets/request-51b9e198.js → dist/assets/request-c816a98c.js

@@ -1 +1 @@
-import{a as s}from"./axios-9cbf0d09.js";import{M as n}from"./index-39566d8e.js";const c=n("localStore",{state:()=>({username:"",password:"",rememberPassword:!0,token:""}),persist:{enabled:!0,encryptionKey:"nfgj",storage:localStorage}}),a="https://www.huifutiancai.com/huishou-service",r=c(),t=s.create({baseURL:a,timeout:5e3});t.interceptors.request.use(function(e){return r.token&&(e.headers.accessToken=r.token),e},function(e){return Promise.reject(e)});t.interceptors.response.use(function(e){return e},function(e){return Promise.reject(e)});const p=function(e,o){return t.post(e,o)};export{p,c as u};
+import{a as s}from"./axios-9cbf0d09.js";import{J as n}from"./index-16aedc47.js";const c=n("localStore",{state:()=>({username:"",password:"",rememberPassword:!0,token:""}),persist:{enabled:!0,encryptionKey:"nfgj",storage:localStorage}}),a="https://www.huifutiancai.com/huishou-service",r=c(),t=s.create({baseURL:a,timeout:5e3});t.interceptors.request.use(function(e){return r.token&&(e.headers.accessToken=r.token),e},function(e){return Promise.reject(e)});t.interceptors.response.use(function(e){return e},function(e){return Promise.reject(e)});const p=function(e,o){return t.post(e,o)};export{p,c as u};

+ 1 - 1
dist/assets/use-placeholder-cb73dc7b.js → dist/assets/use-placeholder-e354374c.js

@@ -1 +1 @@
-import{N as r,L as h,K as n}from"./index-c7f19549.js";import{o as u}from"./on-popup-reopen-6ab1b7d4.js";import{r as c,o as l,A as a,w as d,c as p}from"./index-39566d8e.js";const f=(o,s)=>{const t=c(),e=()=>{t.value=n(o).height};return l(()=>{if(a(e),s)for(let i=1;i<=3;i++)setTimeout(e,100*i)}),u(()=>a(e)),d([r,h],e),t};function v(o,s){const t=f(o,!0);return e=>p("div",{class:s("placeholder"),style:{height:t.value?`${t.value}px`:void 0}},[e()])}export{v as u};
+import{K as r,E as h,D as n}from"./index-3075fd64.js";import{o as u}from"./on-popup-reopen-b90101a6.js";import{r as c,o as l,A as a,w as d,c as p}from"./index-16aedc47.js";const f=(o,s)=>{const t=c(),e=()=>{t.value=n(o).height};return l(()=>{if(a(e),s)for(let i=1;i<=3;i++)setTimeout(e,100*i)}),u(()=>a(e)),d([r,h],e),t};function v(o,s){const t=f(o,!0);return e=>p("div",{class:s("placeholder"),style:{height:t.value?`${t.value}px`:void 0}},[e()])}export{v as u};

+ 1 - 1
dist/assets/use-route-e84ecad1.js → dist/assets/use-route-64216f9c.js

@@ -1 +1 @@
-import{g as n}from"./index-39566d8e.js";const a={to:[String,Object],url:String,replace:Boolean};function c({to:e,url:o,replace:t,$router:r}){e&&r?r[t?"replace":"push"](e):o&&(t?location.replace(o):location.href=o)}function i(){const e=n().proxy;return()=>c(e)}export{a as r,i as u};
+import{g as n}from"./index-16aedc47.js";const a={to:[String,Object],url:String,replace:Boolean};function c({to:e,url:o,replace:t,$router:r}){e&&r?r[t?"replace":"push"](e):o&&(t?location.replace(o):location.href=o)}function i(){const e=n().proxy;return()=>c(e)}export{a as r,i as u};

+ 0 - 1
dist/assets/use-scope-id-0701971a.js

@@ -1 +0,0 @@
-import{e as s}from"./index-c7f19549.js";import{g as o}from"./index-39566d8e.js";function a(n){const e=o();e&&s(e.proxy,n)}const c=()=>{var n;const{scopeId:e}=((n=o())==null?void 0:n.vnode)||{};return e?{[e]:""}:null};export{c as a,a as u};

+ 1 - 0
dist/assets/use-scope-id-c38e64b2.js

@@ -0,0 +1 @@
+import{e as s}from"./index-3075fd64.js";import{g as o}from"./index-16aedc47.js";function a(n){const e=o();e&&s(e.proxy,n)}const c=()=>{var n;const{scopeId:e}=((n=o())==null?void 0:n.vnode)||{};return e?{[e]:""}:null};export{c as a,a as u};

File diff suppressed because it is too large
+ 0 - 0
dist/assets/util-284a4125.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/util-673f56c5.css


File diff suppressed because it is too large
+ 0 - 0
dist/assets/util-7f925456.css


File diff suppressed because it is too large
+ 0 - 0
dist/assets/util-e37e61f7.js


File diff suppressed because it is too large
+ 0 - 0
dist/assets/vue-qrcode-reader-40aaedb2.js


+ 2 - 2
dist/index.html

@@ -7,8 +7,8 @@
     <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" />
     <title>驼人物联网平台</title>
     <script type="text/javascript" src="//api.map.baidu.com/api?type=webgl&v=1.0&ak=r6wmhUcG2BBUmqP4OjRlxLOMbQ3F1Ptn"></script>
-    <script type="module" crossorigin src="/wap/assets/index-39566d8e.js"></script>
-    <link rel="stylesheet" href="/wap/assets/index-6c308dfb.css">
+    <script type="module" crossorigin src="/wap/assets/index-16aedc47.js"></script>
+    <link rel="stylesheet" href="/wap/assets/index-737d02e6.css">
   </head>
   <body>
     <div id="app"></div>

BIN
dist/static/images/icon-wifi.png


+ 2 - 0
package.json

@@ -15,6 +15,7 @@
     "jsqr": "^1.4.0",
     "pinia": "^2.1.6",
     "pinia-use-persist": "^0.0.21",
+    "uuid": "^10.0.0",
     "vant": "^4.6.8",
     "vue": "^3.3.4",
     "vue-qrcode-reader": "^5.5.7",
@@ -22,6 +23,7 @@
   },
   "devDependencies": {
     "@types/node": "^20.6.3",
+    "@types/uuid": "^10.0.0",
     "@vitejs/plugin-basic-ssl": "^1.1.0",
     "@vitejs/plugin-vue": "^4.2.3",
     "typescript": "^5.0.2",

+ 1284 - 0
pnpm-lock.yaml

@@ -0,0 +1,1284 @@
+lockfileVersion: '9.0'
+
+settings:
+  autoInstallPeers: true
+  excludeLinksFromLockfile: false
+
+importers:
+
+  .:
+    dependencies:
+      '@vant/area-data':
+        specifier: ^1.5.0
+        version: 1.5.2
+      axios:
+        specifier: ^1.5.0
+        version: 1.7.7
+      html5-qrcode:
+        specifier: ^2.3.8
+        version: 2.3.8
+      jsqr:
+        specifier: ^1.4.0
+        version: 1.4.0
+      pinia:
+        specifier: ^2.1.6
+        version: 2.2.2(typescript@5.6.2)(vue@3.5.4(typescript@5.6.2))
+      pinia-use-persist:
+        specifier: ^0.0.21
+        version: 0.0.21(crypto-js@4.2.0)(pinia@2.2.2(typescript@5.6.2)(vue@3.5.4(typescript@5.6.2)))
+      uuid:
+        specifier: ^10.0.0
+        version: 10.0.0
+      vant:
+        specifier: ^4.6.8
+        version: 4.9.5(vue@3.5.4(typescript@5.6.2))
+      vue:
+        specifier: ^3.3.4
+        version: 3.5.4(typescript@5.6.2)
+      vue-qrcode-reader:
+        specifier: ^5.5.7
+        version: 5.5.8
+      vue-router:
+        specifier: '4'
+        version: 4.4.4(vue@3.5.4(typescript@5.6.2))
+    devDependencies:
+      '@types/node':
+        specifier: ^20.6.3
+        version: 20.16.5
+      '@types/uuid':
+        specifier: ^10.0.0
+        version: 10.0.0
+      '@vitejs/plugin-basic-ssl':
+        specifier: ^1.1.0
+        version: 1.1.0(vite@4.5.3(@types/node@20.16.5))
+      '@vitejs/plugin-vue':
+        specifier: ^4.2.3
+        version: 4.6.2(vite@4.5.3(@types/node@20.16.5))(vue@3.5.4(typescript@5.6.2))
+      typescript:
+        specifier: ^5.0.2
+        version: 5.6.2
+      unplugin-vue-components:
+        specifier: ^0.25.2
+        version: 0.25.2(@babel/parser@7.25.6)(rollup@3.29.4)(vue@3.5.4(typescript@5.6.2))
+      vite:
+        specifier: ^4.4.5
+        version: 4.5.3(@types/node@20.16.5)
+      vue-tsc:
+        specifier: ^2.0.26
+        version: 2.1.6(typescript@5.6.2)
+
+packages:
+
+  '@antfu/utils@0.7.10':
+    resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==, tarball: https://registry.npmmirror.com/@antfu/utils/-/utils-0.7.10.tgz}
+
+  '@babel/helper-string-parser@7.24.8':
+    resolution: {integrity: sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==, tarball: https://registry.npmmirror.com/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz}
+    engines: {node: '>=6.9.0'}
+
+  '@babel/helper-validator-identifier@7.24.7':
+    resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==, tarball: https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz}
+    engines: {node: '>=6.9.0'}
+
+  '@babel/parser@7.25.6':
+    resolution: {integrity: sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==, tarball: https://registry.npmmirror.com/@babel/parser/-/parser-7.25.6.tgz}
+    engines: {node: '>=6.0.0'}
+    hasBin: true
+
+  '@babel/types@7.25.6':
+    resolution: {integrity: sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==, tarball: https://registry.npmmirror.com/@babel/types/-/types-7.25.6.tgz}
+    engines: {node: '>=6.9.0'}
+
+  '@esbuild/android-arm64@0.18.20':
+    resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==, tarball: https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [arm64]
+    os: [android]
+
+  '@esbuild/android-arm@0.18.20':
+    resolution: {integrity: sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==, tarball: https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [arm]
+    os: [android]
+
+  '@esbuild/android-x64@0.18.20':
+    resolution: {integrity: sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==, tarball: https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [x64]
+    os: [android]
+
+  '@esbuild/darwin-arm64@0.18.20':
+    resolution: {integrity: sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==, tarball: https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [arm64]
+    os: [darwin]
+
+  '@esbuild/darwin-x64@0.18.20':
+    resolution: {integrity: sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==, tarball: https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [x64]
+    os: [darwin]
+
+  '@esbuild/freebsd-arm64@0.18.20':
+    resolution: {integrity: sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==, tarball: https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [arm64]
+    os: [freebsd]
+
+  '@esbuild/freebsd-x64@0.18.20':
+    resolution: {integrity: sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==, tarball: https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [x64]
+    os: [freebsd]
+
+  '@esbuild/linux-arm64@0.18.20':
+    resolution: {integrity: sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==, tarball: https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [arm64]
+    os: [linux]
+
+  '@esbuild/linux-arm@0.18.20':
+    resolution: {integrity: sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==, tarball: https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [arm]
+    os: [linux]
+
+  '@esbuild/linux-ia32@0.18.20':
+    resolution: {integrity: sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==, tarball: https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [ia32]
+    os: [linux]
+
+  '@esbuild/linux-loong64@0.18.20':
+    resolution: {integrity: sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==, tarball: https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [loong64]
+    os: [linux]
+
+  '@esbuild/linux-mips64el@0.18.20':
+    resolution: {integrity: sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==, tarball: https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [mips64el]
+    os: [linux]
+
+  '@esbuild/linux-ppc64@0.18.20':
+    resolution: {integrity: sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==, tarball: https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [ppc64]
+    os: [linux]
+
+  '@esbuild/linux-riscv64@0.18.20':
+    resolution: {integrity: sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==, tarball: https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [riscv64]
+    os: [linux]
+
+  '@esbuild/linux-s390x@0.18.20':
+    resolution: {integrity: sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==, tarball: https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [s390x]
+    os: [linux]
+
+  '@esbuild/linux-x64@0.18.20':
+    resolution: {integrity: sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==, tarball: https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [x64]
+    os: [linux]
+
+  '@esbuild/netbsd-x64@0.18.20':
+    resolution: {integrity: sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==, tarball: https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [x64]
+    os: [netbsd]
+
+  '@esbuild/openbsd-x64@0.18.20':
+    resolution: {integrity: sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==, tarball: https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [x64]
+    os: [openbsd]
+
+  '@esbuild/sunos-x64@0.18.20':
+    resolution: {integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==, tarball: https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [x64]
+    os: [sunos]
+
+  '@esbuild/win32-arm64@0.18.20':
+    resolution: {integrity: sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==, tarball: https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [arm64]
+    os: [win32]
+
+  '@esbuild/win32-ia32@0.18.20':
+    resolution: {integrity: sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==, tarball: https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [ia32]
+    os: [win32]
+
+  '@esbuild/win32-x64@0.18.20':
+    resolution: {integrity: sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==, tarball: https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz}
+    engines: {node: '>=12'}
+    cpu: [x64]
+    os: [win32]
+
+  '@jridgewell/sourcemap-codec@1.5.0':
+    resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==, tarball: https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz}
+
+  '@nodelib/fs.scandir@2.1.5':
+    resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==, tarball: https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz}
+    engines: {node: '>= 8'}
+
+  '@nodelib/fs.stat@2.0.5':
+    resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==, tarball: https://registry.npmmirror.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz}
+    engines: {node: '>= 8'}
+
+  '@nodelib/fs.walk@1.2.8':
+    resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==, tarball: https://registry.npmmirror.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz}
+    engines: {node: '>= 8'}
+
+  '@rollup/pluginutils@5.1.0':
+    resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==, tarball: https://registry.npmmirror.com/@rollup/pluginutils/-/pluginutils-5.1.0.tgz}
+    engines: {node: '>=14.0.0'}
+    peerDependencies:
+      rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
+    peerDependenciesMeta:
+      rollup:
+        optional: true
+
+  '@types/dom-webcodecs@0.1.11':
+    resolution: {integrity: sha512-yPEZ3z7EohrmOxbk/QTAa0yonMFkNkjnVXqbGb7D4rMr+F1dGQ8ZUFxXkyLLJuiICPejZ0AZE9Rrk9wUCczx4A==, tarball: https://registry.npmmirror.com/@types/dom-webcodecs/-/dom-webcodecs-0.1.11.tgz}
+
+  '@types/emscripten@1.39.13':
+    resolution: {integrity: sha512-cFq+fO/isvhvmuP/+Sl4K4jtU6E23DoivtbO4r50e3odaxAiVdbfSYRDdJ4gCdxx+3aRjhphS5ZMwIH4hFy/Cw==, tarball: https://registry.npmmirror.com/@types/emscripten/-/emscripten-1.39.13.tgz}
+
+  '@types/estree@1.0.5':
+    resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==, tarball: https://registry.npmmirror.com/@types/estree/-/estree-1.0.5.tgz}
+
+  '@types/node@20.16.5':
+    resolution: {integrity: sha512-VwYCweNo3ERajwy0IUlqqcyZ8/A7Zwa9ZP3MnENWcB11AejO+tLy3pu850goUW2FC/IJMdZUfKpX/yxL1gymCA==, tarball: https://registry.npmmirror.com/@types/node/-/node-20.16.5.tgz}
+
+  '@types/uuid@10.0.0':
+    resolution: {integrity: sha512-7gqG38EyHgyP1S+7+xomFtL+ZNHcKv6DwNaCZmJmo1vgMugyF3TCnXVg4t1uk89mLNwnLtnY3TpOpCOyp1/xHQ==, tarball: https://registry.npmmirror.com/@types/uuid/-/uuid-10.0.0.tgz}
+
+  '@vant/area-data@1.5.2':
+    resolution: {integrity: sha512-Gtxgt6Rjgopt6234ANpO0bBsSwtjZ23lBlVDHIy8Mi2NJqyoj1vgVWY0dri8/2LCZAWzQ6EnwRrUVViUZ0cvMA==, tarball: https://registry.npmmirror.com/@vant/area-data/-/area-data-1.5.2.tgz}
+
+  '@vant/popperjs@1.3.0':
+    resolution: {integrity: sha512-hB+czUG+aHtjhaEmCJDuXOep0YTZjdlRR+4MSmIFnkCQIxJaXLQdSsR90XWvAI2yvKUI7TCGqR8pQg2RtvkMHw==, tarball: https://registry.npmmirror.com/@vant/popperjs/-/popperjs-1.3.0.tgz}
+
+  '@vant/use@1.6.0':
+    resolution: {integrity: sha512-PHHxeAASgiOpSmMjceweIrv2AxDZIkWXyaczksMoWvKV2YAYEhoizRuk/xFnKF+emUIi46TsQ+rvlm/t2BBCfA==, tarball: https://registry.npmmirror.com/@vant/use/-/use-1.6.0.tgz}
+    peerDependencies:
+      vue: ^3.0.0
+
+  '@vitejs/plugin-basic-ssl@1.1.0':
+    resolution: {integrity: sha512-wO4Dk/rm8u7RNhOf95ZzcEmC9rYOncYgvq4z3duaJrCgjN8BxAnDVyndanfcJZ0O6XZzHz6Q0hTimxTg8Y9g/A==, tarball: https://registry.npmmirror.com/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-1.1.0.tgz}
+    engines: {node: '>=14.6.0'}
+    peerDependencies:
+      vite: ^3.0.0 || ^4.0.0 || ^5.0.0
+
+  '@vitejs/plugin-vue@4.6.2':
+    resolution: {integrity: sha512-kqf7SGFoG+80aZG6Pf+gsZIVvGSCKE98JbiWqcCV9cThtg91Jav0yvYFC9Zb+jKetNGF6ZKeoaxgZfND21fWKw==, tarball: https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-4.6.2.tgz}
+    engines: {node: ^14.18.0 || >=16.0.0}
+    peerDependencies:
+      vite: ^4.0.0 || ^5.0.0
+      vue: ^3.2.25
+
+  '@volar/language-core@2.4.4':
+    resolution: {integrity: sha512-kO9k4kTLfxpg+6lq7/KAIv3m2d62IHuCL6GbVgYZTpfKvIGoAIlDxK7pFcB/eczN2+ydg/vnyaeZ6SGyZrJw2w==, tarball: https://registry.npmmirror.com/@volar/language-core/-/language-core-2.4.4.tgz}
+
+  '@volar/source-map@2.4.4':
+    resolution: {integrity: sha512-xG3PZqOP2haG8XG4Pg3PD1UGDAdqZg24Ru8c/qYjYAnmcj6GBR64mstx+bZux5QOyRaJK+/lNM/RnpvBD3489g==, tarball: https://registry.npmmirror.com/@volar/source-map/-/source-map-2.4.4.tgz}
+
+  '@volar/typescript@2.4.4':
+    resolution: {integrity: sha512-QQMQRVj0fVHJ3XdRKiS1LclhG0VBXdFYlyuHRQF/xLk2PuJuHNWP26MDZNvEVCvnyUQuUQhIAfylwY5TGPgc6w==, tarball: https://registry.npmmirror.com/@volar/typescript/-/typescript-2.4.4.tgz}
+
+  '@vue/compiler-core@3.5.4':
+    resolution: {integrity: sha512-oNwn+BAt3n9dK9uAYvI+XGlutwuTq/wfj4xCBaZCqwwVIGtD7D6ViihEbyYZrDHIHTDE3Q6oL3/hqmAyFEy9DQ==, tarball: https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.5.4.tgz}
+
+  '@vue/compiler-dom@3.5.4':
+    resolution: {integrity: sha512-yP9RRs4BDLOLfldn6ah+AGCNovGjMbL9uHvhDHf5wan4dAHLnFGOkqtfE7PPe4HTXIqE7l/NILdYw53bo1C8jw==, tarball: https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.5.4.tgz}
+
+  '@vue/compiler-sfc@3.5.4':
+    resolution: {integrity: sha512-P+yiPhL+NYH7m0ZgCq7AQR2q7OIE+mpAEgtkqEeH9oHSdIRvUO+4X6MPvblJIWcoe4YC5a2Gdf/RsoyP8FFiPQ==, tarball: https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.5.4.tgz}
+
+  '@vue/compiler-ssr@3.5.4':
+    resolution: {integrity: sha512-acESdTXsxPnYr2C4Blv0ggx5zIFMgOzZmYU2UgvIff9POdRGbRNBHRyzHAnizcItvpgerSKQbllUc9USp3V7eg==, tarball: https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.5.4.tgz}
+
+  '@vue/compiler-vue2@2.7.16':
+    resolution: {integrity: sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==, tarball: https://registry.npmmirror.com/@vue/compiler-vue2/-/compiler-vue2-2.7.16.tgz}
+
+  '@vue/devtools-api@6.6.4':
+    resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==, tarball: https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.6.4.tgz}
+
+  '@vue/language-core@2.1.6':
+    resolution: {integrity: sha512-MW569cSky9R/ooKMh6xa2g1D0AtRKbL56k83dzus/bx//RDJk24RHWkMzbAlXjMdDNyxAaagKPRquBIxkxlCkg==, tarball: https://registry.npmmirror.com/@vue/language-core/-/language-core-2.1.6.tgz}
+    peerDependencies:
+      typescript: '*'
+    peerDependenciesMeta:
+      typescript:
+        optional: true
+
+  '@vue/reactivity@3.5.4':
+    resolution: {integrity: sha512-HKKbEuP7tYSGCq4e4nK6ZW6l5hyG66OUetefBp4budUyjvAYsnQDf+bgFzg2RAgnH0CInyqXwD9y47jwJEHrQw==, tarball: https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.5.4.tgz}
+
+  '@vue/runtime-core@3.5.4':
+    resolution: {integrity: sha512-f3ek2sTA0AFu0n+w+kCtz567Euqqa3eHewvo4klwS7mWfSj/A+UmYTwsnUFo35KeyAFY60JgrCGvEBsu1n/3LA==, tarball: https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.5.4.tgz}
+
+  '@vue/runtime-dom@3.5.4':
+    resolution: {integrity: sha512-ofyc0w6rbD5KtjhP1i9hGOKdxGpvmuB1jprP7Djlj0X7R5J/oLwuNuE98GJ8WW31Hu2VxQHtk/LYTAlW8xrJdw==, tarball: https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.5.4.tgz}
+
+  '@vue/server-renderer@3.5.4':
+    resolution: {integrity: sha512-FbjV6DJLgKRetMYFBA1UXCroCiED/Ckr53/ba9wivyd7D/Xw9fpo0T6zXzCnxQwyvkyrL7y6plgYhWhNjGxY5g==, tarball: https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.5.4.tgz}
+    peerDependencies:
+      vue: 3.5.4
+
+  '@vue/shared@3.5.4':
+    resolution: {integrity: sha512-L2MCDD8l7yC62Te5UUyPVpmexhL9ipVnYRw9CsWfm/BGRL5FwDX4a25bcJ/OJSD3+Hx+k/a8LDKcG2AFdJV3BA==, tarball: https://registry.npmmirror.com/@vue/shared/-/shared-3.5.4.tgz}
+
+  acorn@8.12.1:
+    resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==, tarball: https://registry.npmmirror.com/acorn/-/acorn-8.12.1.tgz}
+    engines: {node: '>=0.4.0'}
+    hasBin: true
+
+  anymatch@3.1.3:
+    resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==, tarball: https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz}
+    engines: {node: '>= 8'}
+
+  asynckit@0.4.0:
+    resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==, tarball: https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz}
+
+  axios@1.7.7:
+    resolution: {integrity: sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==, tarball: https://registry.npmmirror.com/axios/-/axios-1.7.7.tgz}
+
+  balanced-match@1.0.2:
+    resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==, tarball: https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz}
+
+  barcode-detector@2.2.2:
+    resolution: {integrity: sha512-JcSekql+EV93evfzF9zBr+Y6aRfkR+QFvgyzbwQ0dbymZXoAI9+WgT7H1E429f+3RKNncHz2CW98VQtaaKpmfQ==, tarball: https://registry.npmmirror.com/barcode-detector/-/barcode-detector-2.2.2.tgz}
+
+  binary-extensions@2.3.0:
+    resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==, tarball: https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.3.0.tgz}
+    engines: {node: '>=8'}
+
+  brace-expansion@2.0.1:
+    resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==, tarball: https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.0.1.tgz}
+
+  braces@3.0.3:
+    resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==, tarball: https://registry.npmmirror.com/braces/-/braces-3.0.3.tgz}
+    engines: {node: '>=8'}
+
+  chokidar@3.6.0:
+    resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==, tarball: https://registry.npmmirror.com/chokidar/-/chokidar-3.6.0.tgz}
+    engines: {node: '>= 8.10.0'}
+
+  combined-stream@1.0.8:
+    resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==, tarball: https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz}
+    engines: {node: '>= 0.8'}
+
+  computeds@0.0.1:
+    resolution: {integrity: sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==, tarball: https://registry.npmmirror.com/computeds/-/computeds-0.0.1.tgz}
+
+  crypto-js@4.2.0:
+    resolution: {integrity: sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==, tarball: https://registry.npmmirror.com/crypto-js/-/crypto-js-4.2.0.tgz}
+
+  csstype@3.1.3:
+    resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==, tarball: https://registry.npmmirror.com/csstype/-/csstype-3.1.3.tgz}
+
+  de-indent@1.0.2:
+    resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==, tarball: https://registry.npmmirror.com/de-indent/-/de-indent-1.0.2.tgz}
+
+  debug@4.3.7:
+    resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==, tarball: https://registry.npmmirror.com/debug/-/debug-4.3.7.tgz}
+    engines: {node: '>=6.0'}
+    peerDependencies:
+      supports-color: '*'
+    peerDependenciesMeta:
+      supports-color:
+        optional: true
+
+  delayed-stream@1.0.0:
+    resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==, tarball: https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz}
+    engines: {node: '>=0.4.0'}
+
+  entities@4.5.0:
+    resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==, tarball: https://registry.npmmirror.com/entities/-/entities-4.5.0.tgz}
+    engines: {node: '>=0.12'}
+
+  esbuild@0.18.20:
+    resolution: {integrity: sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==, tarball: https://registry.npmmirror.com/esbuild/-/esbuild-0.18.20.tgz}
+    engines: {node: '>=12'}
+    hasBin: true
+
+  estree-walker@2.0.2:
+    resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==, tarball: https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz}
+
+  fast-glob@3.3.2:
+    resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==, tarball: https://registry.npmmirror.com/fast-glob/-/fast-glob-3.3.2.tgz}
+    engines: {node: '>=8.6.0'}
+
+  fastq@1.17.1:
+    resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==, tarball: https://registry.npmmirror.com/fastq/-/fastq-1.17.1.tgz}
+
+  fill-range@7.1.1:
+    resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==, tarball: https://registry.npmmirror.com/fill-range/-/fill-range-7.1.1.tgz}
+    engines: {node: '>=8'}
+
+  follow-redirects@1.15.9:
+    resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==, tarball: https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.9.tgz}
+    engines: {node: '>=4.0'}
+    peerDependencies:
+      debug: '*'
+    peerDependenciesMeta:
+      debug:
+        optional: true
+
+  form-data@4.0.0:
+    resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==, tarball: https://registry.npmmirror.com/form-data/-/form-data-4.0.0.tgz}
+    engines: {node: '>= 6'}
+
+  fsevents@2.3.3:
+    resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==, tarball: https://registry.npmmirror.com/fsevents/-/fsevents-2.3.3.tgz}
+    engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
+    os: [darwin]
+
+  function-bind@1.1.2:
+    resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==, tarball: https://registry.npmmirror.com/function-bind/-/function-bind-1.1.2.tgz}
+
+  glob-parent@5.1.2:
+    resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==, tarball: https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz}
+    engines: {node: '>= 6'}
+
+  hasown@2.0.2:
+    resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==, tarball: https://registry.npmmirror.com/hasown/-/hasown-2.0.2.tgz}
+    engines: {node: '>= 0.4'}
+
+  he@1.2.0:
+    resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==, tarball: https://registry.npmmirror.com/he/-/he-1.2.0.tgz}
+    hasBin: true
+
+  html5-qrcode@2.3.8:
+    resolution: {integrity: sha512-jsr4vafJhwoLVEDW3n1KvPnCCXWaQfRng0/EEYk1vNcQGcG/htAdhJX0be8YyqMoSz7+hZvOZSTAepsabiuhiQ==, tarball: https://registry.npmmirror.com/html5-qrcode/-/html5-qrcode-2.3.8.tgz}
+
+  is-binary-path@2.1.0:
+    resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==, tarball: https://registry.npmmirror.com/is-binary-path/-/is-binary-path-2.1.0.tgz}
+    engines: {node: '>=8'}
+
+  is-core-module@2.15.1:
+    resolution: {integrity: sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==, tarball: https://registry.npmmirror.com/is-core-module/-/is-core-module-2.15.1.tgz}
+    engines: {node: '>= 0.4'}
+
+  is-extglob@2.1.1:
+    resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==, tarball: https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz}
+    engines: {node: '>=0.10.0'}
+
+  is-glob@4.0.3:
+    resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==, tarball: https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz}
+    engines: {node: '>=0.10.0'}
+
+  is-number@7.0.0:
+    resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==, tarball: https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz}
+    engines: {node: '>=0.12.0'}
+
+  jsqr@1.4.0:
+    resolution: {integrity: sha512-dxLob7q65Xg2DvstYkRpkYtmKm2sPJ9oFhrhmudT1dZvNFFTlroai3AWSpLey/w5vMcLBXRgOJsbXpdN9HzU/A==, tarball: https://registry.npmmirror.com/jsqr/-/jsqr-1.4.0.tgz}
+
+  local-pkg@0.4.3:
+    resolution: {integrity: sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==, tarball: https://registry.npmmirror.com/local-pkg/-/local-pkg-0.4.3.tgz}
+    engines: {node: '>=14'}
+
+  magic-string@0.30.11:
+    resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==, tarball: https://registry.npmmirror.com/magic-string/-/magic-string-0.30.11.tgz}
+
+  merge2@1.4.1:
+    resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==, tarball: https://registry.npmmirror.com/merge2/-/merge2-1.4.1.tgz}
+    engines: {node: '>= 8'}
+
+  micromatch@4.0.8:
+    resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==, tarball: https://registry.npmmirror.com/micromatch/-/micromatch-4.0.8.tgz}
+    engines: {node: '>=8.6'}
+
+  mime-db@1.52.0:
+    resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==, tarball: https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz}
+    engines: {node: '>= 0.6'}
+
+  mime-types@2.1.35:
+    resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==, tarball: https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz}
+    engines: {node: '>= 0.6'}
+
+  minimatch@9.0.5:
+    resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==, tarball: https://registry.npmmirror.com/minimatch/-/minimatch-9.0.5.tgz}
+    engines: {node: '>=16 || 14 >=14.17'}
+
+  ms@2.1.3:
+    resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==, tarball: https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz}
+
+  muggle-string@0.4.1:
+    resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==, tarball: https://registry.npmmirror.com/muggle-string/-/muggle-string-0.4.1.tgz}
+
+  nanoid@3.3.7:
+    resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==, tarball: https://registry.npmmirror.com/nanoid/-/nanoid-3.3.7.tgz}
+    engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
+    hasBin: true
+
+  normalize-path@3.0.0:
+    resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==, tarball: https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz}
+    engines: {node: '>=0.10.0'}
+
+  path-browserify@1.0.1:
+    resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==, tarball: https://registry.npmmirror.com/path-browserify/-/path-browserify-1.0.1.tgz}
+
+  path-parse@1.0.7:
+    resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==, tarball: https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz}
+
+  picocolors@1.1.0:
+    resolution: {integrity: sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==, tarball: https://registry.npmmirror.com/picocolors/-/picocolors-1.1.0.tgz}
+
+  picomatch@2.3.1:
+    resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==, tarball: https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz}
+    engines: {node: '>=8.6'}
+
+  pinia-use-persist@0.0.21:
+    resolution: {integrity: sha512-l48Tiq536tnImvqz898iGIG6YfP0Fp8hj2skdNkFv5fTdf4iFC9/g28bMi17JR/aUQZZkg8fm6maZAGNP2BICg==, tarball: https://registry.npmmirror.com/pinia-use-persist/-/pinia-use-persist-0.0.21.tgz}
+    peerDependencies:
+      crypto-js: ^4.1.1
+      pinia: ^2.0.14
+
+  pinia@2.2.2:
+    resolution: {integrity: sha512-ja2XqFWZC36mupU4z1ZzxeTApV7DOw44cV4dhQ9sGwun+N89v/XP7+j7q6TanS1u1tdbK4r+1BUx7heMaIdagA==, tarball: https://registry.npmmirror.com/pinia/-/pinia-2.2.2.tgz}
+    peerDependencies:
+      '@vue/composition-api': ^1.4.0
+      typescript: '>=4.4.4'
+      vue: ^2.6.14 || ^3.3.0
+    peerDependenciesMeta:
+      '@vue/composition-api':
+        optional: true
+      typescript:
+        optional: true
+
+  postcss@8.4.45:
+    resolution: {integrity: sha512-7KTLTdzdZZYscUc65XmjFiB73vBhBfbPztCYdUNvlaso9PrzjzcmjqBPR0lNGkcVlcO4BjiO5rK/qNz+XAen1Q==, tarball: https://registry.npmmirror.com/postcss/-/postcss-8.4.45.tgz}
+    engines: {node: ^10 || ^12 || >=14}
+
+  proxy-from-env@1.1.0:
+    resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==, tarball: https://registry.npmmirror.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz}
+
+  queue-microtask@1.2.3:
+    resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==, tarball: https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz}
+
+  readdirp@3.6.0:
+    resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==, tarball: https://registry.npmmirror.com/readdirp/-/readdirp-3.6.0.tgz}
+    engines: {node: '>=8.10.0'}
+
+  resolve@1.22.8:
+    resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==, tarball: https://registry.npmmirror.com/resolve/-/resolve-1.22.8.tgz}
+    hasBin: true
+
+  reusify@1.0.4:
+    resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==, tarball: https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz}
+    engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
+
+  rollup@3.29.4:
+    resolution: {integrity: sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==, tarball: https://registry.npmmirror.com/rollup/-/rollup-3.29.4.tgz}
+    engines: {node: '>=14.18.0', npm: '>=8.0.0'}
+    hasBin: true
+
+  run-parallel@1.2.0:
+    resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==, tarball: https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz}
+
+  sdp@3.2.0:
+    resolution: {integrity: sha512-d7wDPgDV3DDiqulJjKiV2865wKsJ34YI+NDREbm+FySq6WuKOikwyNQcm+doLAZ1O6ltdO0SeKle2xMpN3Brgw==, tarball: https://registry.npmmirror.com/sdp/-/sdp-3.2.0.tgz}
+
+  semver@7.6.3:
+    resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==, tarball: https://registry.npmmirror.com/semver/-/semver-7.6.3.tgz}
+    engines: {node: '>=10'}
+    hasBin: true
+
+  source-map-js@1.2.1:
+    resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==, tarball: https://registry.npmmirror.com/source-map-js/-/source-map-js-1.2.1.tgz}
+    engines: {node: '>=0.10.0'}
+
+  supports-preserve-symlinks-flag@1.0.0:
+    resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==, tarball: https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz}
+    engines: {node: '>= 0.4'}
+
+  to-fast-properties@2.0.0:
+    resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==, tarball: https://registry.npmmirror.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz}
+    engines: {node: '>=4'}
+
+  to-regex-range@5.0.1:
+    resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==, tarball: https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz}
+    engines: {node: '>=8.0'}
+
+  typescript@5.6.2:
+    resolution: {integrity: sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==, tarball: https://registry.npmmirror.com/typescript/-/typescript-5.6.2.tgz}
+    engines: {node: '>=14.17'}
+    hasBin: true
+
+  undici-types@6.19.8:
+    resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==, tarball: https://registry.npmmirror.com/undici-types/-/undici-types-6.19.8.tgz}
+
+  unplugin-vue-components@0.25.2:
+    resolution: {integrity: sha512-OVmLFqILH6w+eM8fyt/d/eoJT9A6WO51NZLf1vC5c1FZ4rmq2bbGxTy8WP2Jm7xwFdukaIdv819+UI7RClPyCA==, tarball: https://registry.npmmirror.com/unplugin-vue-components/-/unplugin-vue-components-0.25.2.tgz}
+    engines: {node: '>=14'}
+    peerDependencies:
+      '@babel/parser': ^7.15.8
+      '@nuxt/kit': ^3.2.2
+      vue: 2 || 3
+    peerDependenciesMeta:
+      '@babel/parser':
+        optional: true
+      '@nuxt/kit':
+        optional: true
+
+  unplugin@1.14.1:
+    resolution: {integrity: sha512-lBlHbfSFPToDYp9pjXlUEFVxYLaue9f9T1HC+4OHlmj+HnMDdz9oZY+erXfoCe/5V/7gKUSY2jpXPb9S7f0f/w==, tarball: https://registry.npmmirror.com/unplugin/-/unplugin-1.14.1.tgz}
+    engines: {node: '>=14.0.0'}
+    peerDependencies:
+      webpack-sources: ^3
+    peerDependenciesMeta:
+      webpack-sources:
+        optional: true
+
+  uuid@10.0.0:
+    resolution: {integrity: sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==, tarball: https://registry.npmmirror.com/uuid/-/uuid-10.0.0.tgz}
+    hasBin: true
+
+  vant@4.9.5:
+    resolution: {integrity: sha512-9w9Ygv2jRPYPhqzi3Ci1V54JiO06TSMqZEVt41X2H+hO2cy1cgUJik5+/hhW2wdKMtjWqACFzyLs8NOGzBNpmw==, tarball: https://registry.npmmirror.com/vant/-/vant-4.9.5.tgz}
+    peerDependencies:
+      vue: ^3.0.0
+
+  vite@4.5.3:
+    resolution: {integrity: sha512-kQL23kMeX92v3ph7IauVkXkikdDRsYMGTVl5KY2E9OY4ONLvkHf04MDTbnfo6NKxZiDLWzVpP5oTa8hQD8U3dg==, tarball: https://registry.npmmirror.com/vite/-/vite-4.5.3.tgz}
+    engines: {node: ^14.18.0 || >=16.0.0}
+    hasBin: true
+    peerDependencies:
+      '@types/node': '>= 14'
+      less: '*'
+      lightningcss: ^1.21.0
+      sass: '*'
+      stylus: '*'
+      sugarss: '*'
+      terser: ^5.4.0
+    peerDependenciesMeta:
+      '@types/node':
+        optional: true
+      less:
+        optional: true
+      lightningcss:
+        optional: true
+      sass:
+        optional: true
+      stylus:
+        optional: true
+      sugarss:
+        optional: true
+      terser:
+        optional: true
+
+  vscode-uri@3.0.8:
+    resolution: {integrity: sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==, tarball: https://registry.npmmirror.com/vscode-uri/-/vscode-uri-3.0.8.tgz}
+
+  vue-demi@0.14.10:
+    resolution: {integrity: sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==, tarball: https://registry.npmmirror.com/vue-demi/-/vue-demi-0.14.10.tgz}
+    engines: {node: '>=12'}
+    hasBin: true
+    peerDependencies:
+      '@vue/composition-api': ^1.0.0-rc.1
+      vue: ^3.0.0-0 || ^2.6.0
+    peerDependenciesMeta:
+      '@vue/composition-api':
+        optional: true
+
+  vue-qrcode-reader@5.5.8:
+    resolution: {integrity: sha512-pZStGd/+afFMJ51IOwJzG7Lm3+gsuwl9oaM8R3/eMarUHFrgbs0AVvuyDXLIaISV/A2eMOHDlkc3sZSQ6jbZrQ==, tarball: https://registry.npmmirror.com/vue-qrcode-reader/-/vue-qrcode-reader-5.5.8.tgz}
+    engines: {node: '>=18.0.0'}
+
+  vue-router@4.4.4:
+    resolution: {integrity: sha512-3MlnDqwRwZwCQVbtVfpsU+nrNymNjnXSsQtXName5925NVC1+326VVfYH9vSrA0N13teGEo8z5x7gbRnGjCDiQ==, tarball: https://registry.npmmirror.com/vue-router/-/vue-router-4.4.4.tgz}
+    peerDependencies:
+      vue: ^3.2.0
+
+  vue-tsc@2.1.6:
+    resolution: {integrity: sha512-f98dyZp5FOukcYmbFpuSCJ4Z0vHSOSmxGttZJCsFeX0M4w/Rsq0s4uKXjcSRsZqsRgQa6z7SfuO+y0HVICE57Q==, tarball: https://registry.npmmirror.com/vue-tsc/-/vue-tsc-2.1.6.tgz}
+    hasBin: true
+    peerDependencies:
+      typescript: '>=5.0.0'
+
+  vue@3.5.4:
+    resolution: {integrity: sha512-3yAj2gkmiY+i7+22A1PWM+kjOVXjU74UPINcTiN7grIVPyFFI0lpGwHlV/4xydDmobaBn7/xmi+YG8HeSlCTcg==, tarball: https://registry.npmmirror.com/vue/-/vue-3.5.4.tgz}
+    peerDependencies:
+      typescript: '*'
+    peerDependenciesMeta:
+      typescript:
+        optional: true
+
+  webpack-virtual-modules@0.6.2:
+    resolution: {integrity: sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==, tarball: https://registry.npmmirror.com/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz}
+
+  webrtc-adapter@8.2.3:
+    resolution: {integrity: sha512-gnmRz++suzmvxtp3ehQts6s2JtAGPuDPjA1F3a9ckNpG1kYdYuHWYpazoAnL9FS5/B21tKlhkorbdCXat0+4xQ==, tarball: https://registry.npmmirror.com/webrtc-adapter/-/webrtc-adapter-8.2.3.tgz}
+    engines: {node: '>=6.0.0', npm: '>=3.10.0'}
+
+  zxing-wasm@1.1.3:
+    resolution: {integrity: sha512-MYm9k/5YVs4ZOTIFwlRjfFKD0crhefgbnt1+6TEpmKUDFp3E2uwqGSKwQOd2hOIsta/7Usq4hnpNRYTLoljnfA==, tarball: https://registry.npmmirror.com/zxing-wasm/-/zxing-wasm-1.1.3.tgz}
+
+snapshots:
+
+  '@antfu/utils@0.7.10': {}
+
+  '@babel/helper-string-parser@7.24.8': {}
+
+  '@babel/helper-validator-identifier@7.24.7': {}
+
+  '@babel/parser@7.25.6':
+    dependencies:
+      '@babel/types': 7.25.6
+
+  '@babel/types@7.25.6':
+    dependencies:
+      '@babel/helper-string-parser': 7.24.8
+      '@babel/helper-validator-identifier': 7.24.7
+      to-fast-properties: 2.0.0
+
+  '@esbuild/android-arm64@0.18.20':
+    optional: true
+
+  '@esbuild/android-arm@0.18.20':
+    optional: true
+
+  '@esbuild/android-x64@0.18.20':
+    optional: true
+
+  '@esbuild/darwin-arm64@0.18.20':
+    optional: true
+
+  '@esbuild/darwin-x64@0.18.20':
+    optional: true
+
+  '@esbuild/freebsd-arm64@0.18.20':
+    optional: true
+
+  '@esbuild/freebsd-x64@0.18.20':
+    optional: true
+
+  '@esbuild/linux-arm64@0.18.20':
+    optional: true
+
+  '@esbuild/linux-arm@0.18.20':
+    optional: true
+
+  '@esbuild/linux-ia32@0.18.20':
+    optional: true
+
+  '@esbuild/linux-loong64@0.18.20':
+    optional: true
+
+  '@esbuild/linux-mips64el@0.18.20':
+    optional: true
+
+  '@esbuild/linux-ppc64@0.18.20':
+    optional: true
+
+  '@esbuild/linux-riscv64@0.18.20':
+    optional: true
+
+  '@esbuild/linux-s390x@0.18.20':
+    optional: true
+
+  '@esbuild/linux-x64@0.18.20':
+    optional: true
+
+  '@esbuild/netbsd-x64@0.18.20':
+    optional: true
+
+  '@esbuild/openbsd-x64@0.18.20':
+    optional: true
+
+  '@esbuild/sunos-x64@0.18.20':
+    optional: true
+
+  '@esbuild/win32-arm64@0.18.20':
+    optional: true
+
+  '@esbuild/win32-ia32@0.18.20':
+    optional: true
+
+  '@esbuild/win32-x64@0.18.20':
+    optional: true
+
+  '@jridgewell/sourcemap-codec@1.5.0': {}
+
+  '@nodelib/fs.scandir@2.1.5':
+    dependencies:
+      '@nodelib/fs.stat': 2.0.5
+      run-parallel: 1.2.0
+
+  '@nodelib/fs.stat@2.0.5': {}
+
+  '@nodelib/fs.walk@1.2.8':
+    dependencies:
+      '@nodelib/fs.scandir': 2.1.5
+      fastq: 1.17.1
+
+  '@rollup/pluginutils@5.1.0(rollup@3.29.4)':
+    dependencies:
+      '@types/estree': 1.0.5
+      estree-walker: 2.0.2
+      picomatch: 2.3.1
+    optionalDependencies:
+      rollup: 3.29.4
+
+  '@types/dom-webcodecs@0.1.11': {}
+
+  '@types/emscripten@1.39.13': {}
+
+  '@types/estree@1.0.5': {}
+
+  '@types/node@20.16.5':
+    dependencies:
+      undici-types: 6.19.8
+
+  '@types/uuid@10.0.0': {}
+
+  '@vant/area-data@1.5.2': {}
+
+  '@vant/popperjs@1.3.0': {}
+
+  '@vant/use@1.6.0(vue@3.5.4(typescript@5.6.2))':
+    dependencies:
+      vue: 3.5.4(typescript@5.6.2)
+
+  '@vitejs/plugin-basic-ssl@1.1.0(vite@4.5.3(@types/node@20.16.5))':
+    dependencies:
+      vite: 4.5.3(@types/node@20.16.5)
+
+  '@vitejs/plugin-vue@4.6.2(vite@4.5.3(@types/node@20.16.5))(vue@3.5.4(typescript@5.6.2))':
+    dependencies:
+      vite: 4.5.3(@types/node@20.16.5)
+      vue: 3.5.4(typescript@5.6.2)
+
+  '@volar/language-core@2.4.4':
+    dependencies:
+      '@volar/source-map': 2.4.4
+
+  '@volar/source-map@2.4.4': {}
+
+  '@volar/typescript@2.4.4':
+    dependencies:
+      '@volar/language-core': 2.4.4
+      path-browserify: 1.0.1
+      vscode-uri: 3.0.8
+
+  '@vue/compiler-core@3.5.4':
+    dependencies:
+      '@babel/parser': 7.25.6
+      '@vue/shared': 3.5.4
+      entities: 4.5.0
+      estree-walker: 2.0.2
+      source-map-js: 1.2.1
+
+  '@vue/compiler-dom@3.5.4':
+    dependencies:
+      '@vue/compiler-core': 3.5.4
+      '@vue/shared': 3.5.4
+
+  '@vue/compiler-sfc@3.5.4':
+    dependencies:
+      '@babel/parser': 7.25.6
+      '@vue/compiler-core': 3.5.4
+      '@vue/compiler-dom': 3.5.4
+      '@vue/compiler-ssr': 3.5.4
+      '@vue/shared': 3.5.4
+      estree-walker: 2.0.2
+      magic-string: 0.30.11
+      postcss: 8.4.45
+      source-map-js: 1.2.1
+
+  '@vue/compiler-ssr@3.5.4':
+    dependencies:
+      '@vue/compiler-dom': 3.5.4
+      '@vue/shared': 3.5.4
+
+  '@vue/compiler-vue2@2.7.16':
+    dependencies:
+      de-indent: 1.0.2
+      he: 1.2.0
+
+  '@vue/devtools-api@6.6.4': {}
+
+  '@vue/language-core@2.1.6(typescript@5.6.2)':
+    dependencies:
+      '@volar/language-core': 2.4.4
+      '@vue/compiler-dom': 3.5.4
+      '@vue/compiler-vue2': 2.7.16
+      '@vue/shared': 3.5.4
+      computeds: 0.0.1
+      minimatch: 9.0.5
+      muggle-string: 0.4.1
+      path-browserify: 1.0.1
+    optionalDependencies:
+      typescript: 5.6.2
+
+  '@vue/reactivity@3.5.4':
+    dependencies:
+      '@vue/shared': 3.5.4
+
+  '@vue/runtime-core@3.5.4':
+    dependencies:
+      '@vue/reactivity': 3.5.4
+      '@vue/shared': 3.5.4
+
+  '@vue/runtime-dom@3.5.4':
+    dependencies:
+      '@vue/reactivity': 3.5.4
+      '@vue/runtime-core': 3.5.4
+      '@vue/shared': 3.5.4
+      csstype: 3.1.3
+
+  '@vue/server-renderer@3.5.4(vue@3.5.4(typescript@5.6.2))':
+    dependencies:
+      '@vue/compiler-ssr': 3.5.4
+      '@vue/shared': 3.5.4
+      vue: 3.5.4(typescript@5.6.2)
+
+  '@vue/shared@3.5.4': {}
+
+  acorn@8.12.1: {}
+
+  anymatch@3.1.3:
+    dependencies:
+      normalize-path: 3.0.0
+      picomatch: 2.3.1
+
+  asynckit@0.4.0: {}
+
+  axios@1.7.7:
+    dependencies:
+      follow-redirects: 1.15.9
+      form-data: 4.0.0
+      proxy-from-env: 1.1.0
+    transitivePeerDependencies:
+      - debug
+
+  balanced-match@1.0.2: {}
+
+  barcode-detector@2.2.2:
+    dependencies:
+      '@types/dom-webcodecs': 0.1.11
+      zxing-wasm: 1.1.3
+
+  binary-extensions@2.3.0: {}
+
+  brace-expansion@2.0.1:
+    dependencies:
+      balanced-match: 1.0.2
+
+  braces@3.0.3:
+    dependencies:
+      fill-range: 7.1.1
+
+  chokidar@3.6.0:
+    dependencies:
+      anymatch: 3.1.3
+      braces: 3.0.3
+      glob-parent: 5.1.2
+      is-binary-path: 2.1.0
+      is-glob: 4.0.3
+      normalize-path: 3.0.0
+      readdirp: 3.6.0
+    optionalDependencies:
+      fsevents: 2.3.3
+
+  combined-stream@1.0.8:
+    dependencies:
+      delayed-stream: 1.0.0
+
+  computeds@0.0.1: {}
+
+  crypto-js@4.2.0: {}
+
+  csstype@3.1.3: {}
+
+  de-indent@1.0.2: {}
+
+  debug@4.3.7:
+    dependencies:
+      ms: 2.1.3
+
+  delayed-stream@1.0.0: {}
+
+  entities@4.5.0: {}
+
+  esbuild@0.18.20:
+    optionalDependencies:
+      '@esbuild/android-arm': 0.18.20
+      '@esbuild/android-arm64': 0.18.20
+      '@esbuild/android-x64': 0.18.20
+      '@esbuild/darwin-arm64': 0.18.20
+      '@esbuild/darwin-x64': 0.18.20
+      '@esbuild/freebsd-arm64': 0.18.20
+      '@esbuild/freebsd-x64': 0.18.20
+      '@esbuild/linux-arm': 0.18.20
+      '@esbuild/linux-arm64': 0.18.20
+      '@esbuild/linux-ia32': 0.18.20
+      '@esbuild/linux-loong64': 0.18.20
+      '@esbuild/linux-mips64el': 0.18.20
+      '@esbuild/linux-ppc64': 0.18.20
+      '@esbuild/linux-riscv64': 0.18.20
+      '@esbuild/linux-s390x': 0.18.20
+      '@esbuild/linux-x64': 0.18.20
+      '@esbuild/netbsd-x64': 0.18.20
+      '@esbuild/openbsd-x64': 0.18.20
+      '@esbuild/sunos-x64': 0.18.20
+      '@esbuild/win32-arm64': 0.18.20
+      '@esbuild/win32-ia32': 0.18.20
+      '@esbuild/win32-x64': 0.18.20
+
+  estree-walker@2.0.2: {}
+
+  fast-glob@3.3.2:
+    dependencies:
+      '@nodelib/fs.stat': 2.0.5
+      '@nodelib/fs.walk': 1.2.8
+      glob-parent: 5.1.2
+      merge2: 1.4.1
+      micromatch: 4.0.8
+
+  fastq@1.17.1:
+    dependencies:
+      reusify: 1.0.4
+
+  fill-range@7.1.1:
+    dependencies:
+      to-regex-range: 5.0.1
+
+  follow-redirects@1.15.9: {}
+
+  form-data@4.0.0:
+    dependencies:
+      asynckit: 0.4.0
+      combined-stream: 1.0.8
+      mime-types: 2.1.35
+
+  fsevents@2.3.3:
+    optional: true
+
+  function-bind@1.1.2: {}
+
+  glob-parent@5.1.2:
+    dependencies:
+      is-glob: 4.0.3
+
+  hasown@2.0.2:
+    dependencies:
+      function-bind: 1.1.2
+
+  he@1.2.0: {}
+
+  html5-qrcode@2.3.8: {}
+
+  is-binary-path@2.1.0:
+    dependencies:
+      binary-extensions: 2.3.0
+
+  is-core-module@2.15.1:
+    dependencies:
+      hasown: 2.0.2
+
+  is-extglob@2.1.1: {}
+
+  is-glob@4.0.3:
+    dependencies:
+      is-extglob: 2.1.1
+
+  is-number@7.0.0: {}
+
+  jsqr@1.4.0: {}
+
+  local-pkg@0.4.3: {}
+
+  magic-string@0.30.11:
+    dependencies:
+      '@jridgewell/sourcemap-codec': 1.5.0
+
+  merge2@1.4.1: {}
+
+  micromatch@4.0.8:
+    dependencies:
+      braces: 3.0.3
+      picomatch: 2.3.1
+
+  mime-db@1.52.0: {}
+
+  mime-types@2.1.35:
+    dependencies:
+      mime-db: 1.52.0
+
+  minimatch@9.0.5:
+    dependencies:
+      brace-expansion: 2.0.1
+
+  ms@2.1.3: {}
+
+  muggle-string@0.4.1: {}
+
+  nanoid@3.3.7: {}
+
+  normalize-path@3.0.0: {}
+
+  path-browserify@1.0.1: {}
+
+  path-parse@1.0.7: {}
+
+  picocolors@1.1.0: {}
+
+  picomatch@2.3.1: {}
+
+  pinia-use-persist@0.0.21(crypto-js@4.2.0)(pinia@2.2.2(typescript@5.6.2)(vue@3.5.4(typescript@5.6.2))):
+    dependencies:
+      crypto-js: 4.2.0
+      pinia: 2.2.2(typescript@5.6.2)(vue@3.5.4(typescript@5.6.2))
+
+  pinia@2.2.2(typescript@5.6.2)(vue@3.5.4(typescript@5.6.2)):
+    dependencies:
+      '@vue/devtools-api': 6.6.4
+      vue: 3.5.4(typescript@5.6.2)
+      vue-demi: 0.14.10(vue@3.5.4(typescript@5.6.2))
+    optionalDependencies:
+      typescript: 5.6.2
+
+  postcss@8.4.45:
+    dependencies:
+      nanoid: 3.3.7
+      picocolors: 1.1.0
+      source-map-js: 1.2.1
+
+  proxy-from-env@1.1.0: {}
+
+  queue-microtask@1.2.3: {}
+
+  readdirp@3.6.0:
+    dependencies:
+      picomatch: 2.3.1
+
+  resolve@1.22.8:
+    dependencies:
+      is-core-module: 2.15.1
+      path-parse: 1.0.7
+      supports-preserve-symlinks-flag: 1.0.0
+
+  reusify@1.0.4: {}
+
+  rollup@3.29.4:
+    optionalDependencies:
+      fsevents: 2.3.3
+
+  run-parallel@1.2.0:
+    dependencies:
+      queue-microtask: 1.2.3
+
+  sdp@3.2.0: {}
+
+  semver@7.6.3: {}
+
+  source-map-js@1.2.1: {}
+
+  supports-preserve-symlinks-flag@1.0.0: {}
+
+  to-fast-properties@2.0.0: {}
+
+  to-regex-range@5.0.1:
+    dependencies:
+      is-number: 7.0.0
+
+  typescript@5.6.2: {}
+
+  undici-types@6.19.8: {}
+
+  unplugin-vue-components@0.25.2(@babel/parser@7.25.6)(rollup@3.29.4)(vue@3.5.4(typescript@5.6.2)):
+    dependencies:
+      '@antfu/utils': 0.7.10
+      '@rollup/pluginutils': 5.1.0(rollup@3.29.4)
+      chokidar: 3.6.0
+      debug: 4.3.7
+      fast-glob: 3.3.2
+      local-pkg: 0.4.3
+      magic-string: 0.30.11
+      minimatch: 9.0.5
+      resolve: 1.22.8
+      unplugin: 1.14.1
+      vue: 3.5.4(typescript@5.6.2)
+    optionalDependencies:
+      '@babel/parser': 7.25.6
+    transitivePeerDependencies:
+      - rollup
+      - supports-color
+      - webpack-sources
+
+  unplugin@1.14.1:
+    dependencies:
+      acorn: 8.12.1
+      webpack-virtual-modules: 0.6.2
+
+  uuid@10.0.0: {}
+
+  vant@4.9.5(vue@3.5.4(typescript@5.6.2)):
+    dependencies:
+      '@vant/popperjs': 1.3.0
+      '@vant/use': 1.6.0(vue@3.5.4(typescript@5.6.2))
+      '@vue/shared': 3.5.4
+      vue: 3.5.4(typescript@5.6.2)
+
+  vite@4.5.3(@types/node@20.16.5):
+    dependencies:
+      esbuild: 0.18.20
+      postcss: 8.4.45
+      rollup: 3.29.4
+    optionalDependencies:
+      '@types/node': 20.16.5
+      fsevents: 2.3.3
+
+  vscode-uri@3.0.8: {}
+
+  vue-demi@0.14.10(vue@3.5.4(typescript@5.6.2)):
+    dependencies:
+      vue: 3.5.4(typescript@5.6.2)
+
+  vue-qrcode-reader@5.5.8:
+    dependencies:
+      barcode-detector: 2.2.2
+      webrtc-adapter: 8.2.3
+
+  vue-router@4.4.4(vue@3.5.4(typescript@5.6.2)):
+    dependencies:
+      '@vue/devtools-api': 6.6.4
+      vue: 3.5.4(typescript@5.6.2)
+
+  vue-tsc@2.1.6(typescript@5.6.2):
+    dependencies:
+      '@volar/typescript': 2.4.4
+      '@vue/language-core': 2.1.6(typescript@5.6.2)
+      semver: 7.6.3
+      typescript: 5.6.2
+
+  vue@3.5.4(typescript@5.6.2):
+    dependencies:
+      '@vue/compiler-dom': 3.5.4
+      '@vue/compiler-sfc': 3.5.4
+      '@vue/runtime-dom': 3.5.4
+      '@vue/server-renderer': 3.5.4(vue@3.5.4(typescript@5.6.2))
+      '@vue/shared': 3.5.4
+    optionalDependencies:
+      typescript: 5.6.2
+
+  webpack-virtual-modules@0.6.2: {}
+
+  webrtc-adapter@8.2.3:
+    dependencies:
+      sdp: 3.2.0
+
+  zxing-wasm@1.1.3:
+    dependencies:
+      '@types/emscripten': 1.39.13

BIN
public/static/images/icon-wifi.png


Some files were not shown because too many files changed in this diff